/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/polices/inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/polices/inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/polices/inter-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/polices/inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/polices/montserrat-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/polices/montserrat-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/polices/oswald-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/polices/oswald-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/polices/oswald-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/polices/oswald-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/polices/oswald-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/polices/oswald-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

body{margin:0}
:root{--ink:#0C0B09;--ink-2:#1A1815;--ivory:#F8F5EE;--white:#FFFFFF;--gold:#D2A645;--gold-hover:#E2BD62;--gold-deep:#85621A;--sand-50:#F0EBE1;--sand-100:#E4DCCC;--line:#D8D1C4;--text-2:rgba(12,11,9,.78);--ease:cubic-bezier(.22,1,.36,1);--f-display:'Oswald','Arial Narrow','Roboto Condensed',sans-serif;--f-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--f-brand:'Montserrat','Arial Black',sans-serif;--pad:90px;--section-y:96px;--fs-h2:88px;--fs-stat:76px;--fs-h3:42px;--fs-h4:30px;--fs-lead:32px;--fs-statement:32px;--fs-value:34px;--fs-quote:24px;--fs-menu:20px;--fs-label:20px;--fs-link:18px;--fs-eyebrow:16px;--fs-body-l:20px;--fs-body:17px}
@media (max-width:1199px){:root{--pad:32px;--section-y:72px;--fs-h2:64px;--fs-stat:60px;--fs-h3:34px;--fs-h4:26px;--fs-lead:28px;--fs-statement:26px;--fs-value:30px;--fs-quote:22px;--fs-menu:19px;--fs-label:19px;--fs-link:17px;--fs-eyebrow:15px;--fs-body-l:19px;--fs-body:16px}}
@media (max-width:809px){:root{--pad:20px;--section-y:56px;--fs-h2:44px;--fs-stat:52px;--fs-h3:28px;--fs-h4:22px;--fs-lead:22px;--fs-statement:22px;--fs-value:26px;--fs-quote:20px;--fs-menu:18px;--fs-label:17px;--fs-link:17px;--fs-eyebrow:13px;--fs-body-l:17px;--fs-body:16px}}
*,*::before,*::after{box-sizing:border-box}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{background:#F8F5EE;color:#0C0B09;font-family:'Inter',system-ui,sans-serif;font-size:17px;line-height:1.5;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit}
.dk{background:var(--ivory);color:var(--ink);font-family:var(--f-body);font-size:var(--fs-body);line-height:1.5;overflow-x:clip}
.dk img{max-width:100%;display:block}
.dk button{font:inherit;color:inherit}
.dk figure{margin:0}
.dk :focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.skip-link{position:absolute;left:16px;top:-120px;z-index:100;background:var(--gold);color:var(--ink);padding:12px 18px;border-radius:8px;font:500 16px/1 var(--f-body);text-decoration:none}
.skip-link:focus{top:16px}
.wrap{width:100%;max-width:calc(1600px + 2*var(--pad));margin-inline:auto;padding-inline:var(--pad)}
.section{padding-block:var(--section-y)}
.dk main,.dk .footer{position:relative;z-index:1;display:block}
.dk main>section{background:var(--ivory);position:relative}
.icon{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.h2,.h3,.h4,.eyebrow,.statement,.hero__title{font-family:var(--f-display);font-weight:500;text-transform:uppercase;letter-spacing:0}
.h2{font-size:var(--fs-h2);line-height:1.04;margin:0;text-wrap:balance}
.h3{font-size:var(--fs-h3);line-height:1.15;margin:0}
.h4{font-size:var(--fs-h4);line-height:1.2;margin:0}
.body-l{font-size:var(--fs-body-l);line-height:1.45;color:var(--text-2);margin:0;text-wrap:pretty}
.body{font-size:var(--fs-body);line-height:1.5;color:var(--text-2);margin:0}
.eyebrow{font-size:var(--fs-eyebrow);line-height:1.2;letter-spacing:.16em;color:var(--gold);margin:0}
.mute-50{color:rgba(255,255,255,.5)}
.mute-40{color:rgba(255,255,255,.42)}
.section-head{display:flex;flex-direction:column;gap:12px}
.section-head--center{text-align:center;align-items:center;max-width:940px;margin-inline:auto}
.section-head--center .body-l{max-width:760px}
.sep{height:1px;background:var(--line);flex-shrink:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;height:56px;padding:16px 32px;border-radius:8px;font:500 var(--fs-menu)/1 var(--f-display);text-transform:uppercase;letter-spacing:.04em;color:var(--ink);background:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);text-decoration:none;white-space:nowrap;cursor:pointer;border:0;transition:background .2s ease,box-shadow .2s ease}
.btn:hover{background:var(--gold-hover);box-shadow:inset 0 0 0 1px var(--gold-hover)}
.btn .icon{transition:transform .4s var(--ease)}
.btn:hover .icon:last-child{transform:translateX(4px)}
.btn--outline{background:transparent;color:var(--white);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.btn--outline:hover{background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.btn--outline .icon{width:20px;height:20px}
.btn-row{display:flex;flex-wrap:wrap;gap:16px}
.link-arrow{position:relative;display:inline-flex;align-items:center;gap:12px;padding-bottom:4px;font:500 var(--fs-link)/1 var(--f-display);text-transform:uppercase;letter-spacing:.04em;color:var(--ink);text-decoration:none;transition:gap .35s var(--ease)}
.link-arrow::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor}
.link-arrow .icon{width:20px;height:20px}
.link-arrow:hover{gap:18px}
.tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.tags li{padding:8px 20px;border-radius:99px;background:rgba(12,11,9,.08);font:500 16px/1.5 var(--f-body);color:var(--ink);white-space:nowrap}
.hero{position:sticky;top:0;z-index:0;height:765px;background:var(--ink);color:var(--white);overflow:hidden;display:block}
.hero__stage{position:absolute;inset:0;will-change:transform}
.vane-wall{position:absolute;inset:0;overflow:hidden;background:#0C0B09 url(/images/renovation-interieur-paris-1.webp) center/cover no-repeat}
.vane-wall.is-built{background-image:none}
.vane{position:absolute;top:0;height:100%;transform-style:preserve-3d}
.prism{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.65,0,.35,1);transition-delay:var(--delay,0s)}
.face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background-color:transparent;background-repeat:no-repeat}
.face::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.55));box-shadow:inset 1px 0 0 rgba(255,255,255,.22);opacity:var(--shade,0);transition:opacity .8s ease var(--delay,0s)}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(12,11,9,.6) 0%,rgba(12,11,9,0) 55%),rgba(12,11,9,.48)}
.hero__inner{position:relative;z-index:1;height:100%;max-width:calc(1600px + 2*var(--pad));margin-inline:auto;display:flex;flex-direction:column;justify-content:space-between;padding:22px var(--pad) 40px}
.hero__top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.hero__logo{display:block;flex-shrink:0}
.hero__logo img{width:250px;height:auto}
.nav{display:flex;gap:28px;padding-top:14px}
.nav__link{font:500 var(--fs-menu)/1 var(--f-display);text-transform:uppercase;letter-spacing:.04em;color:rgba(255,255,255,.72);text-decoration:none;transition:color .2s ease}
.nav__link:hover{color:var(--white)}
.nav__link.is-current{color:var(--gold)}
.menu-btn{display:none;place-items:center;width:44px;height:44px;padding:0;cursor:pointer;border:0;border-radius:8px;color:var(--white);background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.hero__bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.hero__thumb{width:360px;aspect-ratio:360/220;border-radius:12px;overflow:hidden;flex-shrink:0}
.hero__thumb img{width:100%;height:100%;object-fit:cover}
.hero__text{max-width:761px;padding-left:40px;display:flex;flex-direction:column;gap:72px}
.hero__copy{display:flex;flex-direction:column;gap:14px}
.hero__title{font-size:var(--fs-lead);line-height:1.36;margin:0;color:var(--white);text-wrap:pretty}
.menu{position:fixed;inset:0;z-index:50;overflow-y:auto;display:none;flex-direction:column;gap:40px;padding:20px 20px 28px;background:var(--ink);color:var(--white);opacity:0;transition:opacity .2s ease}
.menu.is-shown{display:flex}
.menu.is-open{opacity:1;transition-duration:.3s}
.menu__top{display:flex;justify-content:space-between;align-items:center}
.menu__top .menu-btn{display:grid}
.menu__brand{font:500 24px/1 var(--f-display);letter-spacing:.04em;text-decoration:none;color:var(--white)}
.menu__nav{display:flex;flex-direction:column;gap:14px}
.menu__nav a{font:500 40px/1.1 var(--f-display);text-transform:uppercase;color:var(--white);text-decoration:none}
.menu__nav a.is-current{color:var(--gold)}
.menu__contact{margin-top:auto;display:flex;flex-direction:column;gap:8px}
.menu__contact a{color:rgba(255,255,255,.8);font-size:18px;text-decoration:none}
.about__wrap{display:flex;flex-direction:column;gap:96px}
.about__intro{display:flex;gap:40px;justify-content:space-between}
.about__left{flex:0 0 482px;display:flex;flex-direction:column;gap:28px}
.about__label{margin:0;font:500 var(--fs-label)/1.1 var(--f-display);text-transform:uppercase;letter-spacing:.04em}
.about__emblem{width:100%;max-width:362px;aspect-ratio:362/300;border-radius:16px;background:var(--ink);display:grid;place-items:center}
.about__emblem img{width:76%;height:auto}
.about__right{flex:0 1 723px;display:flex;flex-direction:column;gap:48px;align-items:flex-start}
.statement{font-size:var(--fs-statement);line-height:1.26;margin:0;color:var(--ink)}
.about__images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.about__images figure{border-radius:12px;overflow:hidden;aspect-ratio:375/197}
.about__images img{width:100%;height:100%;object-fit:cover}
.services__wrap{display:flex;flex-direction:column;gap:64px}
.svc-list{border-top:1px solid var(--line)}
.svc{display:grid;grid-template-columns:80px minmax(0,480px) minmax(0,1fr);column-gap:40px;padding:32px 0;border-bottom:1px solid var(--line);cursor:pointer}
.svc__num,.svc__title{font:500 var(--fs-h4)/1.2 var(--f-display);text-transform:uppercase;margin:0}
.svc__main{display:flex;flex-direction:column;gap:6px}
.svc__btn{display:inline-flex;align-items:center;gap:14px;padding:0;border:0;background:none;font:inherit;text-transform:inherit;text-align:left;cursor:pointer}
.svc__icon{width:30px;height:30px;fill:none;stroke:var(--gold-deep);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.svc__desc{margin:0;max-width:466px;color:var(--text-2);font-size:var(--fs-body);line-height:1.5}
.svc__main .collapse .link-arrow{margin-top:28px}
.svc__side{display:flex;flex-direction:column;align-items:flex-end;min-width:0}
.svc__side .collapse{width:100%}
.svc__imgs{display:grid;grid-template-columns:repeat(4,minmax(0,150px));justify-content:end;gap:12px;padding-top:24px}
.svc__imgs img{width:100%;height:auto;aspect-ratio:150/158;object-fit:cover;border-radius:8px}
.collapse{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .6s ease,opacity .3s ease}
.collapse>div{min-height:0;overflow:hidden}
.is-open>.collapse,.is-open .collapse{grid-template-rows:1fr;opacity:1;transition:grid-template-rows .6s ease,opacity .6s ease .15s}
.dk main>section.process{background:var(--ink);color:var(--white);overflow:hidden}
.process__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.process__overlay{position:absolute;inset:0;background:rgba(12,11,9,.64)}
.process__wrap{position:relative;display:flex;flex-direction:column;gap:72px}
.process .body-l{color:rgba(255,255,255,.8);max-width:640px}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.step{min-height:460px;padding:32px;border-radius:16px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;background:rgba(12,11,9,.38);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px)}
.step__top{display:flex;flex-direction:column;gap:20px}
.step__icon{width:60px;height:60px;fill:none;stroke:var(--gold);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.step__title{margin:0;display:flex;flex-direction:column;gap:8px;font:500 var(--fs-h4)/1.2 var(--f-display);text-transform:uppercase;color:var(--white)}
.step__num{font-size:15px;letter-spacing:.16em;color:var(--gold)}
.step__text{margin:0;color:rgba(255,255,255,.8);font-size:var(--fs-body);line-height:1.5}
.expertise__wrap{display:flex;align-items:center;justify-content:space-between;gap:80px}
.expertise__left{flex:0 1 637px;display:flex;flex-direction:column;gap:64px}
.exp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:24px}
.exp-item{display:flex;align-items:center;padding:0;border:0;background:none;cursor:pointer;text-align:left;font:500 var(--fs-h3)/1.15 var(--f-display);text-transform:uppercase;color:var(--ink);opacity:.45;transition:opacity .4s ease}
.exp-item:hover,.exp-item.is-active{opacity:1}
.exp-item__arrow{display:inline-flex;width:0;overflow:hidden;flex-shrink:0;transition:width .5s var(--ease);color:var(--gold-deep)}
.exp-item__arrow .icon{width:44px;height:44px;stroke-width:1.8}
.exp-item.is-active .exp-item__arrow{width:60px}
.exp-card{display:grid;padding:32px;border-radius:12px;background:rgba(12,11,9,.06)}
.exp-card__item{grid-area:1/1;display:flex;flex-direction:column;gap:64px;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .5s ease,transform .5s var(--ease),visibility 0s linear .5s}
.exp-card__item.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .5s ease,transform .5s var(--ease),visibility 0s}
.exp-card__phases{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
.exp-card__phases>div{display:flex;flex-direction:column;gap:12px}
.exp-card__phases p{margin:0;color:var(--text-2);font-size:var(--fs-body);line-height:1.45}
.exp-card__tag{font:500 20px/1 var(--f-display);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;color:var(--gold-deep)}
.expertise__media{position:relative;flex:0 1 528px;aspect-ratio:528/673;border-radius:16px;overflow:hidden;background:var(--sand-100)}
.expertise__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease}
.expertise__media img.is-active{opacity:1}
.works__wrap{display:flex;flex-direction:column;gap:84px}
.works__head{display:flex;flex-direction:column;gap:48px}
.works__head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.works__title{max-width:1010px}
.work{display:flex;align-items:flex-end;justify-content:space-between;gap:64px}
.work--reverse{flex-direction:row-reverse}
.work__card{flex:0 1 725px;padding:16px 16px 0;border-radius:16px;overflow:hidden;background:var(--sand-100)}
.work__img{border-radius:12px;overflow:hidden;aspect-ratio:693/523}
.work__img img{width:100%;height:100%;object-fit:cover}
.work__title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:24px 4px}
.work__title .tags li{background:rgba(12,11,9,.09)}
.fiche{flex:0 1 456px;margin:0;display:flex;flex-direction:column}
.fiche>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0;border-bottom:1px solid var(--line)}
.fiche dt{font-size:var(--fs-body-l);line-height:1.4;color:var(--text-2);white-space:nowrap}
.fiche dd{margin:0;text-align:right;font:500 var(--fs-label)/1.25 var(--f-display);text-transform:uppercase;letter-spacing:.02em}
.dk main>section.pledges{background:var(--ink);color:var(--white)}
.pledges .body-l{color:rgba(255,255,255,.8)}
.pledges__wrap{display:flex;flex-direction:column;gap:64px}
.slider{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.slider__media{flex:0 1 713px;position:relative}
.slider__imgs{position:relative;aspect-ratio:713/414}
.slider__imgs img{position:absolute;object-fit:cover;background:var(--ink-2);transition:left .8s var(--ease),top .8s var(--ease),width .8s var(--ease),height .8s var(--ease),opacity .6s ease}
.slot-main{left:57.22%;top:0;width:42.78%;height:100%;z-index:3;opacity:1}
.slot-p1{left:28.61%;top:0;width:25.8%;height:44.9%;z-index:2;opacity:1}
.slot-p2{left:0;top:0;width:25.8%;height:44.9%;z-index:1;opacity:1}
.slot-out{left:0;top:0;width:25.8%;height:44.9%;z-index:0;opacity:0}
.slot-prev{left:57.22%;top:0;width:42.78%;height:100%;z-index:4;opacity:0;pointer-events:none}
.slider__figs{position:absolute;left:0;bottom:0;width:54%;display:grid}
.slider__fig-set{grid-area:1/1;display:flex;justify-content:flex-end;gap:40px;padding-right:24px;text-align:right;opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s var(--ease)}
.slider__fig-set.is-active{opacity:1;transform:none}
.slider__fig-set p{margin:0;color:rgba(255,255,255,.8);font-size:var(--fs-body)}
.slider__fig-set .fig{margin-top:12px;font:500 var(--fs-value)/1.2 var(--f-display);text-transform:uppercase;color:var(--white)}
.slider__content{flex:0 1 512px;padding-left:24px;display:flex;flex-direction:column;gap:40px}
.slider__quote-icon{width:48px;height:48px;fill:var(--gold)}
.slider__quotes,.slider__authors{display:grid}
.slider__quote,.slider__author{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .6s ease,transform .6s var(--ease),visibility 0s linear .6s}
.slider__quote.is-active,.slider__author.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .6s ease,transform .6s var(--ease),visibility 0s}
.slider__quote p{margin:0;font:500 var(--fs-quote)/1.42 var(--f-display);text-transform:uppercase;color:var(--white)}
.slider__foot{display:flex;justify-content:space-between;align-items:center;gap:24px}
.slider__author{display:flex;align-items:center;gap:20px}
.slider__badge{width:64px;height:64px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;color:var(--gold);background:rgba(210,166,69,.1);box-shadow:inset 0 0 0 1px rgba(210,166,69,.4)}
.slider__badge .icon{width:28px;height:28px;stroke-width:1.6}
.slider__name{margin:0;font:500 var(--fs-menu)/1.15 var(--f-display);text-transform:uppercase;letter-spacing:.02em;color:rgba(255,255,255,.88)}
.slider__role{margin:4px 0 0;font-size:var(--fs-body);color:rgba(255,255,255,.7)}
.slider__arrows{display:flex;gap:8px;flex-shrink:0}
.arrow-btn{width:44px;height:36px;padding:6px 10px;border:0;border-radius:6px;cursor:pointer;display:grid;place-items:center;color:var(--white);background:rgba(255,255,255,.1);transition:background .2s ease}
.arrow-btn:hover{background:rgba(255,255,255,.18)}
.arrow-btn--prev .icon{transform:scaleX(-1)}
.arrow-btn--next{background:var(--gold);color:var(--ink)}
.arrow-btn--next:hover{background:var(--gold-hover)}
.dk main>section.stats{padding-block:64px}
.stats__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.stat{min-height:177px;padding:32px;border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;background:var(--sand-50);box-shadow:inset 0 0 0 1px var(--sand-100)}
.stat__num{margin:0;font:500 var(--fs-stat)/.95 var(--f-display);color:var(--ink)}
.stat__label{margin:0;font-size:var(--fs-body-l);line-height:1.35;color:var(--text-2)}
.news__wrap{display:flex;flex-direction:column;gap:64px}
.news__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.post{display:flex;flex-direction:column}
.post__img{border-radius:12px;overflow:hidden;aspect-ratio:402/306}
.post__img img{width:100%;height:100%;object-fit:cover}
.post__body{flex:1;display:flex;flex-direction:column;gap:10px;padding:24px 4px}
.post__meta{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 4px 0}
.faq__wrap{display:flex;justify-content:space-between;gap:64px}
.faq__left{flex:0 1 454px;display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.cta-card{max-width:337px;padding:20px;border-radius:12px;display:flex;flex-direction:column;gap:20px;align-items:flex-start;background:var(--sand-50);box-shadow:inset 0 0 0 1px var(--sand-100)}
.cta-card p{margin:0;color:#36332D;font-size:var(--fs-body);line-height:1.5}
.cta-card__thumbs{display:flex}
.cta-card__thumbs img{width:40px;height:40px;object-fit:cover;border-radius:6px;box-shadow:0 0 0 2px var(--sand-50)}
.cta-card__thumbs img+img{margin-left:-4px}
.faq__list{flex:0 1 820px;border-top:1px solid var(--line)}
.faq-item{padding:32px 0;border-bottom:1px solid var(--line)}
.faq-item__q{margin:0;font:500 var(--fs-h4)/1.2 var(--f-display);text-transform:uppercase}
.faq-item__q button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:0;border:0;background:none;cursor:pointer;text-align:left;font:inherit;text-transform:inherit}
.toggle{width:44px;height:36px;border-radius:6px;flex-shrink:0;display:grid;place-items:center;background:var(--sand-50);box-shadow:inset 0 0 0 1px var(--sand-100);transition:background .3s ease,box-shadow .3s ease}
.toggle .icon{width:20px;height:20px;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.faq-item.is-open .toggle{background:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.faq-item.is-open .toggle .icon{transform:rotate(45deg)}
.faq-item .collapse p{padding-top:18px;max-width:660px}
.footer{background:var(--ink);color:var(--ivory)}
.footer__wrap{padding-top:96px;padding-bottom:40px;display:flex;flex-direction:column}
.footer__info{display:grid;grid-template-columns:404fr 436fr 404fr;border-top:1px solid rgba(248,245,238,.14);border-bottom:1px solid rgba(248,245,238,.14)}
.footer__col{padding:32px 32px 64px}
.footer__col+.footer__col{border-left:1px solid rgba(248,245,238,.14)}
.footer__about{padding-left:0;display:flex;flex-direction:column;gap:40px}
.footer__text{margin:0;max-width:420px;color:rgba(248,245,238,.72)}
.footer__cta{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.footer__lead{margin:0;max-width:320px;font-size:var(--fs-body-l);line-height:1.4}
.footer__contact{display:flex;flex-direction:column;gap:40px}
.footer__group{display:flex;flex-direction:column;gap:10px}
.footer__label{margin:0 0 4px;color:rgba(248,245,238,.6)}
.footer__big{display:inline-flex;align-items:center;gap:12px;width:fit-content;font-size:var(--fs-body-l);line-height:1.4;color:var(--ivory);text-decoration:none;transition:color .2s ease}
.footer__big .icon{width:20px;height:20px;color:var(--gold)}
.footer__big:hover{color:var(--gold)}
.footer__nav{padding-right:0;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.footer__nav ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.footer__nav a{font-size:var(--fs-body-l);line-height:1.4;color:var(--ivory);text-decoration:none;transition:color .2s ease}
.footer__nav a:hover,.footer__nav a.is-current{color:var(--gold)}
.footer__brand{display:flex;align-items:flex-end;gap:32px;padding:32px 0}
.footer__photo{flex:0 0 241px;aspect-ratio:1;border-radius:12px;overflow:hidden}
.footer__photo img{width:100%;height:100%;object-fit:cover}
.footer__mark{flex:1;min-width:0;container-type:inline-size}
.wordmark{margin:0;font:800 11.1cqi/.86 var(--f-brand);letter-spacing:-.01em;white-space:nowrap;text-transform:uppercase}
.wm-gold,.wm-silver{-webkit-background-clip:text;background-clip:text;color:transparent}
.wm-gold{background-image:linear-gradient(180deg,#F4DC92 0%,#D9AE4E 45%,#A57A25 100%)}
.wm-silver{background-image:linear-gradient(180deg,#FFFFFF 0%,#DADADA 45%,#9A9A9A 100%)}
.footer__bottom{display:flex;justify-content:space-between;gap:16px;padding-top:24px;border-top:1px solid rgba(248,245,238,.14);color:rgba(248,245,238,.62)}
.footer__bottom p{margin:0}
.dk-js [data-reveal]{opacity:0;transform:translateY(40px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--d,0s)}
.dk-js [data-reveal="img"]{transform:scale(.94);transition-duration:.9s}
.dk-js [data-reveal="card"]{transform:translateX(160px);transition-duration:.9s}
.dk-js [data-reveal="title"]{transition-duration:.9s}
.dk-js [data-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.dk-js [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}.collapse,.prism,.slider__imgs img,.exp-card__item,.slider__quote,.slider__author{transition:none!important}}
@media (max-width:1199px){
.hero{height:700px}
.hero__inner{padding:20px var(--pad) 32px}
.hero__logo img{width:200px}
.nav{gap:16px}
.hero__bottom{flex-direction:column;align-items:stretch}
.hero__thumb{display:none}
.hero__text{max-width:none;padding-left:0;gap:48px}
.about__wrap{gap:64px}
.about__intro{flex-direction:column;gap:48px}
.about__left{flex:none}
.about__right{flex:none}
.about__images figure{aspect-ratio:1.322}
.svc{grid-template-columns:72px minmax(0,1fr);padding:24px 0}
.svc__side{grid-column:2;align-items:flex-start;margin-top:16px}
.svc__imgs{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
.svc__imgs img{aspect-ratio:.91}
.process__wrap{gap:56px}
.steps{grid-template-columns:repeat(2,minmax(0,1fr))}
.step{min-height:360px}
.expertise__wrap{flex-direction:column;align-items:stretch;gap:48px}
.expertise__left{flex:none}
.expertise__media{flex:none;width:100%;aspect-ratio:1.554}
.works__wrap{gap:56px}
.works__head-row{flex-direction:column;align-items:flex-start;gap:24px}
.work,.work--reverse{flex-direction:column;align-items:stretch;gap:24px}
.work__card,.fiche{flex:none}
.work__img{aspect-ratio:1.552}
.slider{flex-direction:column;align-items:stretch;gap:40px}
.slider__media{flex:none;display:flex;flex-direction:column;gap:32px}
.slider__figs{position:static;width:auto}
.slider__fig-set{justify-content:flex-start;text-align:left;padding-right:0}
.slider__content{flex:none;padding-left:0}
.dk main>section.stats{padding:48px 0}
.stats__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.news__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}
.post__img{aspect-ratio:1.037}
.faq__wrap{flex-direction:column;gap:40px}
.faq__left,.faq__list{flex:none}
.footer__wrap{padding-top:72px;padding-bottom:32px}
.footer__info{grid-template-columns:1fr}
.footer__col{padding:32px 0}
.footer__col+.footer__col{border-left:0;border-top:1px solid rgba(248,245,238,.14)}
.footer__contact{flex-direction:row;flex-wrap:wrap;gap:64px}
.footer__photo{flex-basis:180px}
}
@media (max-width:809px){
.hero{height:640px}
.hero__inner{padding:20px var(--pad) 24px}
.hero__logo img{width:150px}
.nav{display:none}
.menu-btn{display:grid}
.hero__text{gap:40px}
.btn-row{gap:12px}
.btn{padding:16px 24px}
.about__wrap{gap:48px}
.about__right{gap:32px}
.about__images{grid-template-columns:1fr;gap:16px}
.about__images figure{aspect-ratio:1.591}
.services__wrap{gap:40px}
.svc{grid-template-columns:minmax(0,1fr);padding:20px 0;row-gap:8px}
.svc__num{font-size:15px;letter-spacing:.16em;color:var(--gold-deep)}
.svc__side{grid-column:1;margin-top:8px}
.svc__imgs{gap:8px;padding-top:16px}
.svc__imgs img{aspect-ratio:.74}
.process__wrap{gap:40px}
.steps{grid-template-columns:1fr}
.step{min-height:0;padding:24px;gap:40px}
.exp-list{gap:16px}
.exp-item.is-active .exp-item__arrow{width:44px}
.exp-item__arrow .icon{width:32px;height:32px}
.exp-card{padding:24px}
.exp-card__item{gap:32px}
.exp-card__phases{flex-direction:column;align-items:flex-start;gap:20px}
.expertise__media{aspect-ratio:1.094}
.work__img{aspect-ratio:1.223}
.work__title{flex-direction:column;align-items:flex-start;gap:12px}
.fiche dt{white-space:normal}
.slider__fig-set{gap:40px}
.slider__foot{flex-wrap:wrap}
.dk main>section.stats{padding:40px 0}
.stats__grid{gap:12px}
.stat{min-height:150px;padding:24px}
.news__grid{grid-template-columns:1fr;gap:40px}
.post__img{aspect-ratio:1.458}
.faq-item{padding:24px 0}
.footer__wrap{padding-top:56px;padding-bottom:24px}
.footer__contact{flex-direction:column;gap:32px}
.footer__nav{grid-template-columns:1fr 1fr}
.footer__brand{gap:16px;padding:24px 0}
.footer__photo{flex-basis:84px}
.footer__bottom{flex-direction:column;gap:8px}
}
/* Ajouts au style de la maquette : planche d'icônes, lien des mentions légales du pied de page, pages
   simples (mentions légales, 404) qui reprennent les couleurs et polices de l'accueil. */
.sprite{position:absolute}
.footer__bottom a{color:inherit;text-underline-offset:3px}
.footer__bottom a:hover{color:var(--gold)}
.page-simple{min-height:100vh;display:flex;flex-direction:column}
.page-simple__tete{background:var(--ink);padding-block:20px}
.page-simple__tete .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}
.page-simple__tete img{width:150px;height:auto}
.page-simple__tete .link-arrow{color:var(--white)}
.dk .page-simple__corps{flex:1;padding-block:var(--section-y);display:flex;flex-direction:column;gap:32px;max-width:calc(900px + 2*var(--pad))}
.page-simple__corps section{display:flex;flex-direction:column;gap:12px}
.page-simple__corps a{color:var(--gold-deep);text-underline-offset:3px}
.page-simple__pied{background:var(--ink);color:rgba(248,245,238,.62);padding-block:24px}
.page-simple__pied p{margin:0}
.page-simple__pied a{color:inherit}

/* ---- Pages intérieures (prestations, villes, conseils) : en-tête sombre sur photo, texte long ---- */
.dk .hero--page{position:relative;height:auto;min-height:640px}
/* Le contenu de l'en-tête fixe sa hauteur : la scène n'est plus en position absolue, seuls la photo et
   le voile le sont. */
.hero--page .hero__stage{position:relative;min-height:inherit}
.hero--page .hero__inner{height:auto;min-height:640px;gap:64px}
.hero--page__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero--page .hero__text{padding-left:0;max-width:880px;gap:40px}
.ariane ol{display:flex;flex-wrap:wrap;gap:6px 10px;list-style:none;margin:0 0 6px;padding:0;font-size:15px;color:rgba(255,255,255,.7)}
.ariane li+li::before{content:"/";margin-right:10px;color:rgba(255,255,255,.4)}
.ariane a{color:rgba(255,255,255,.85);text-underline-offset:3px}
.ariane [aria-current]{color:var(--gold)}
.page__titre{font:500 calc(var(--fs-h2) * .78)/1.06 var(--f-display);text-transform:uppercase;margin:0;color:var(--white);text-wrap:balance}
.page__chapeau{margin:0;max-width:760px;font-size:var(--fs-body-l);line-height:1.5;color:rgba(255,255,255,.82)}
.prose-section{background:var(--ivory)}
.dk main>section.prose-section--sable{background:var(--sand-50)}
.prose{display:flex;flex-direction:column;gap:20px;max-width:calc(900px + 2*var(--pad))}
.prose>.h3{margin-bottom:4px}
.prose>.h4{margin-top:12px}
.prose p,.prose li{font-size:var(--fs-body-l);line-height:1.6;color:var(--text-2)}
.prose p{margin:0}
.prose ul,.prose ol{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:8px}
.prose a{color:var(--gold-deep);text-underline-offset:3px}
.prose strong{color:var(--ink);font-weight:500}
.etapes{list-style:none;padding:0!important;gap:16px!important}
.etapes li{display:flex;gap:20px;align-items:flex-start;padding:20px;border-radius:12px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line)}
.etapes__num{font:500 28px/1 var(--f-display);color:var(--gold-deep);min-width:40px}
.etapes__titre{font:500 var(--fs-h4)/1.2 var(--f-display)!important;text-transform:uppercase;color:var(--ink)!important;margin-bottom:6px!important}
.cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.carte{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:12px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);text-decoration:none}
.carte p{margin:0;font-size:var(--fs-body);line-height:1.5;color:var(--text-2)}
.carte .cartes__titre{font:500 var(--fs-h4)/1.2 var(--f-display);text-transform:uppercase;color:var(--ink)}
.carte--lien{transition:box-shadow .2s ease,transform .3s var(--ease)}
.carte--lien:hover{box-shadow:inset 0 0 0 2px var(--gold);transform:translateY(-2px)}
.carte__suite{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font:500 var(--fs-link)/1 var(--f-display);text-transform:uppercase;letter-spacing:.04em;color:var(--gold-deep)}
.carte__suite .icon{width:18px;height:18px}
.encadre{padding:24px 28px;border-left:4px solid var(--gold);border-radius:0 12px 12px 0;background:var(--white)}
.encadre p{margin:0}
.encadre__titre{font:500 var(--fs-h4)/1.2 var(--f-display)!important;text-transform:uppercase;color:var(--ink)!important;margin-bottom:8px!important}
.tableau{overflow-x:auto;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line);background:var(--white)}
.tableau table{width:100%;border-collapse:collapse;font-size:var(--fs-body)}
.tableau th,.tableau td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.tableau thead th{font:500 16px/1.2 var(--f-display);text-transform:uppercase;letter-spacing:.04em;background:var(--sand-50)}
.tableau tbody th{font-weight:500;color:var(--ink)}
.figure{margin:8px 0}
.figure img{width:auto;max-width:100%;height:auto;border-radius:12px}
.figure figcaption{margin-top:8px;font-size:14px;color:var(--text-2)}
.source{font-size:14px!important;color:rgba(12,11,9,.6)!important}
.appel{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:28px;border-radius:12px;background:var(--ink)}
.appel p{margin:0;max-width:560px;color:var(--ivory)!important;font-size:var(--fs-body-l)}
.connexes .wrap{display:flex;flex-direction:column;gap:32px}
@media (max-width:809px){
  .dk .hero--page,.hero--page .hero__inner{min-height:560px}
  .hero--page .hero__inner{gap:40px}
  .etapes li{padding:16px;gap:14px}
  .appel{padding:22px}
}

/* ---- Liens de l'accueil vers les pages (accordéon des métiers, expertises, conseils) ---- */
.svc__liens{display:flex;flex-wrap:wrap;gap:12px 32px}
.svc__main .collapse .svc__liens{margin-top:28px}
.svc__main .collapse .svc__liens .link-arrow{margin-top:0}
a.exp-card__tag{text-decoration:none;white-space:normal;text-align:right;transition:color .2s ease}
a.exp-card__tag:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.post__lien{color:inherit;text-decoration:none}
.post__lien:hover{color:var(--gold-deep)}

/* ---- Formulaire de devis (avant le pied de page de chaque page) ---- */
.dk main>section.devis{background:var(--ink);color:var(--ivory)}
.devis .h2{color:var(--white)}
.devis .body-l{color:rgba(248,245,238,.72)}
.devis__wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start}
.devis__intro{display:flex;flex-direction:column;gap:16px}
.devis__direct{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.devis__form{display:flex;flex-direction:column;gap:20px;padding:32px;border-radius:16px;background:var(--ink-2);box-shadow:inset 0 0 0 1px rgba(248,245,238,.12)}
.devis__grille{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.champ{display:flex;flex-direction:column;gap:8px;font-size:15px;color:rgba(248,245,238,.8)}
.champ--large{grid-column:1/-1}
.champ abbr{text-decoration:none;color:var(--gold)}
.champ input,.champ select,.champ textarea{width:100%;min-height:50px;padding:12px 14px;border:0;border-radius:8px;font:400 16px/1.4 var(--f-body);color:var(--ink);background:var(--ivory);box-shadow:inset 0 0 0 1px var(--line)}
.champ textarea{resize:vertical;min-height:120px}
.champ input:focus,.champ select:focus,.champ textarea:focus{outline:2px solid var(--gold);outline-offset:1px}
.devis__piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.devis__mention{margin:0;font-size:14px;color:rgba(248,245,238,.6)}
.devis__mention a{color:inherit;text-underline-offset:3px}
.devis__form .btn{align-self:flex-start}
.devis__form .btn[aria-busy="true"]{opacity:.7;cursor:progress}
.devis__statut{margin:0;min-height:1.4em;font-size:16px;color:#f3c7a2}
.devis__statut.is-ok{color:var(--gold)}
@media (max-width:1199px){.devis__wrap{grid-template-columns:1fr;gap:40px}}
@media (max-width:809px){.devis__form{padding:20px}.devis__grille{grid-template-columns:1fr}}
@media (max-width:809px){.vane-wall{background-image:url(/images/renovation-interieur-paris-1-960.webp)}.vane-wall.is-built{background-image:none}}
