/* ATLA — pierre, lumière et matière. */
:root{--bg:#181916;--panel:#22231f;--ink:#eeeae1;--muted:#b3b0a3;--red:#6e7254;--blue:#6e7254;--line:#eeeae12b;--gutter:clamp(24px,5vw,88px)}
body{background:var(--bg);color:var(--ink)}::selection{background:#d8d6c5;color:#eeeae1}
.l-header,.l-header.is-scrolled{height:84px;background:#181916ed;border-color:var(--line);color:var(--ink);backdrop-filter:blur(16px)}
.l-logo img{filter:brightness(0)}.l-header nav a{font-size:13px}.l-header-action{background:#eeeae1;color:#191a17;border:1px solid #eeeae1;padding:15px 22px}.l-header-action:hover{background:#535446;color:white}.l-menu-button{border-color:#eeeae155}.l-mobile-nav{background:#181916;color:#eeeae1;top:74px;max-height:calc(100svh - 74px);overflow:auto}.l-progress{background:#77795f}
.l-hero{margin-top:84px;height:calc(100svh - 84px);min-height:640px;max-height:1000px;background:#181916;overflow:hidden;display:grid;grid-template-columns:48% 52%;align-items:center}
.l-hero-photo{inset:24px 24px 24px 48%;z-index:0}.l-hero-photo img{object-position:50% 50%;filter:none}.l-hero:after,.l-hero-grid{display:none}.l-hero-copy{position:relative;padding:65px 4vw 110px var(--gutter);z-index:1;width:auto}.l-kicker{font-size:9px;letter-spacing:.15em;color:#b7b3a4}.l-dot{background:#77795f;box-shadow:none}.l-hero h1{font-size:clamp(48px,5.4vw,86px);line-height:1.06;letter-spacing:-.06em;margin:38px 0 45px}.l-hero h1>span{color:#c4b797}.l-hero-actions{align-items:start;flex-direction:column;gap:15px}.l-button{background:#eeeae1;color:#191a17;border-color:#eeeae1;padding:18px 24px;min-height:54px}.l-button:hover{background:#535446;color:white;transform:translateY(-2px)}.l-text-link{border-color:#74746a;color:inherit}.l-hero-bottom{left:var(--gutter);right:auto;bottom:40px;max-width:40%;color:#aaa89a;font-size:8px;flex-wrap:wrap;gap:18px}.l-scroll{display:none}
.l-trust{background:#22231f;color:#b7b7a7;padding-top:22px;padding-bottom:22px}.l-trust img{filter:grayscale(1) brightness(.35)}.l-section{padding-top:95px;padding-bottom:95px}.l-section-label{margin-bottom:44px;color:#aeac9e}.l-section-label>span:first-child{color:#d1c7ad}.l-section h2{font-size:clamp(38px,4.5vw,68px)}.l-caption{color:#b3b0a3}.l-muted{color:#bab39f}
.l-project-grid{grid-template-columns:1.35fr 1fr;gap:45px 32px}.l-project-wide{grid-column:auto;grid-row:span 2}.l-project-wide .l-project-image{aspect-ratio:.8}.l-project:not(.l-project-wide) .l-project-image{aspect-ratio:1.9}.l-project-image img{filter:none}.l-project-caption{padding:20px 0;align-items:start;flex-direction:column;gap:8px}.l-project-caption h3{font-size:25px}.l-project-caption>span{color:#b3b0a3}.l-intro,.l-method{background:#22231f;color:#eeeae1}.l-intro-detail p,.l-method-grid p{color:#bbb8aa}.l-intro .l-section-label,.l-method .l-section-label{color:#b5b2a4}.l-intro .l-section-label>span:first-child,.l-method .l-section-label>span:first-child{color:#d1c7ad}.l-intro-grid{gap:7vw}.l-intro h2{font-size:clamp(36px,4.3vw,66px)}
.l-services{background:#292b24;color:#181916;--line:#ffffff30;--muted:#c4c5b6}.l-services .l-section-label,.l-services .l-section-label>span:first-child,.l-service-row>span{color:#babc9f}.l-services .l-muted{color:#b2b69b}.l-services-title img{filter:none;width:80%;height:280px}.l-feature{color:white;height:650px}.l-feature:after{background:linear-gradient(0deg,#161910b3,transparent 90%)}.l-feature .l-kicker{color:white}.l-button-light{background:#181916;color:#eeeae1;border-color:#181916}.l-method-grid h3{margin-top:28px}.l-method-grid article>span{color:#c8c0aa}
.l-journal{background:#181916}.l-journal-grid>a{border-color:var(--line);min-height:190px;padding:30px}.l-journal-grid>a:hover{background:#22231f;border-color:#77795f}.l-journal-grid h3{font-size:32px}.l-journal-grid>a>span:first-child{color:#c9bea5}.atla-faq-home{background:#181916}.atla-faq details{border-color:#eeeae130!important}.atla-faq .faq-answer p{color:#bbb8aa}.atla-faq summary{color:#eeeae1}.atla-faq h2{font-size:clamp(36px,4.5vw,62px)!important}
.l-contact{background:#252621}.l-contact-grid{gap:7vw}.l-contact .request-form input,.l-contact .request-form textarea,.l-contact .request-form select{background:#191a17;color:#eeeae1;border-color:#eeeae140}.l-contact .request-form .form-help,.l-contact .request-form .field-hint,.l-contact .request-form #files-help,.l-contact .request-form .form-consent,.l-contact-info>p,.l-regions p{color:#bab8aa}.l-contact .request-files{background:#2b2c26;border-color:#eeeae140}.l-contact .file-choices label{background:#191a17;border-color:#eeeae140;color:#eeeae1}.l-contact input::placeholder,.l-contact textarea::placeholder{color:#a7a495}.l-contact .request-form .form-submit{background:#eeeae1;color:#fff}.l-contact .request-form input[type=checkbox]{accent-color:#c9bea5}.l-email{border-color:#eeeae155}.l-footer{background:#252720;color:#eeeede;--line:#ffffff30}.l-footer .l-logo img{filter:brightness(0) invert(1)}.l-footer-top p,.l-footer-bottom{color:#b4b7a4}.l-footer-label{color:#c2c6a8}.l-footer-wordmark{max-height:260px;object-fit:contain}.l-mobile-cta{background:#eeeae1;color:#fff}
/* All destination pages share the warm palette. */
.content-page .breadcrumbs,.service-lead,.hero-description,.article-body p,.steps li,.choice-list li,.directory-item p,.editorial-callout p,.guide-grid p:not(.eyebrow),.page-cta>p:not(.eyebrow),.project-feature p:not(.eyebrow),.static-gallery figcaption,.privacy-document p,.privacy-document li,.legal-page .legal-content p,.legal-page .legal-content li{color:#bdb9ab!important}.article-layout,.expertise-directory>a,.guide-grid>a,.service-note{background:#22231f}.service-note>p{color:#ded8c9}.editorial-callout,.page-cta{background:#272922}.expertise-directory>a:hover,.guide-grid>a:hover,.category-chips a:hover{background:#32352b}.solid-link{background:#eeeae1;color:#fff;border-color:#eeeae1}.solid-link:hover{background:#535446;color:white}.category-chips a{border-color:#eeeae140}.content-page .eyebrow,.directory-index,.directory-arrow,.article-nav>a:hover,.article-nav .category-back,.directory-item:hover h3,.expertise-directory>a>span:last-child,.expertise-directory>a:hover h3,.guide-grid>a>span{color:#d1c7ad}.content-page .atla-faq .faq-answer p{color:#bbb8aa}.l-lightbox{background:#252720;color:#fff}
@media(max-width:800px){.l-header,.l-header.is-scrolled{height:74px}.l-hero{margin-top:74px;display:flex;flex-direction:column;height:auto;min-height:0;max-height:none;padding:0 0 22px}.l-hero-copy{width:100%;padding:42px 24px 30px;order:0}.l-hero h1{font-size:clamp(43px,8.3vw,66px);margin:25px 0 28px;line-height:1.05}.l-hero h1>span br{display:none}.l-hero h1>span br:after{content:' '}.l-hero-photo{position:relative;inset:auto;order:1;width:calc(100% - 48px);height:390px}.l-hero-photo img{object-position:center 52%}.l-hero-bottom{position:static;max-width:none;order:2;width:100%;padding:20px 24px 0;font-size:8px;justify-content:space-between}.l-hero-actions{flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap}.l-hero-actions .l-text-link{font-size:12px}.l-kicker{font-size:8px}.l-section{padding:65px 24px}.l-project-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.l-project-wide{grid-column:1/-1;grid-row:auto}.l-project-wide .l-project-image{aspect-ratio:1.4}.l-project:not(.l-project-wide) .l-project-image{aspect-ratio:1}.l-project-caption h3{font-size:21px}.l-feature{height:560px}.l-feature h2{font-size:58px}.l-contact-info h2{font-size:46px}.l-hero-actions .l-button{font-size:12px}.l-footer{padding-bottom:100px}}
@media(max-width:480px){.l-hero h1{font-size:46px}.l-hero h1>span{display:block;max-width:320px}.l-hero-actions{gap:13px}.l-hero-photo{height:310px}.l-project-grid{grid-template-columns:1fr}.l-project-wide{grid-column:auto}.l-project-wide .l-project-image,.l-project:not(.l-project-wide) .l-project-image{aspect-ratio:1.15}.l-trust>span:first-child{display:none}.l-trust>a{width:auto;border:0;padding:0;margin-left:auto}.l-trust a span{display:none}.l-trust{gap:12px}.l-section h2{font-size:39px}.l-hero-actions .l-text-link{font-size:11px}.l-button{padding:16px 18px}.l-hero-copy{padding-top:34px}.l-footer-top{grid-template-columns:1fr}.l-footer-top>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:800px){.l-hero h1>span br{display:block}.l-hero h1>span br:after{content:none}.l-hero h1{font-size:clamp(40px,10.7vw,66px)}}
/* Direction sombre : charbon chaud, ivoire et pierre. */
.l-logo img{filter:brightness(0) invert(1)}
.l-header-action,.l-button,.l-contact .request-form .form-submit,.l-mobile-cta,.solid-link{background:#d4c5a6;color:#1b1c18;border-color:#d4c5a6}
.l-header-action:hover,.l-button:hover,.solid-link:hover{background:#ece2cd;color:#171814}
.l-trust img{filter:grayscale(1) brightness(0) invert(1);opacity:.8}
.l-hero{background:radial-gradient(ellipse at 30% 50%,#31312955,transparent 65%),#181916}
.l-hero-photo{box-shadow:0 24px 70px #0004}.l-hero-photo img{animation:atelier-photo 1.9s cubic-bezier(.16,1,.3,1) both}
.l-hero .l-kicker{animation:atelier-rise .9s .1s both}.l-hero h1{animation:atelier-rise 1.1s .2s both}.l-hero-actions{animation:atelier-rise 1.1s .38s both}.l-hero-bottom{animation:atelier-rise 1.1s .5s both}
.l-button,.l-header-action,.solid-link{transition:transform .45s var(--ease),background .3s,box-shadow .45s}.l-button:hover,.l-header-action:hover,.solid-link:hover{transform:translateY(-4px);box-shadow:0 10px 32px #0003}
.l-text-link{background:linear-gradient(#d4c5a6,#d4c5a6) left bottom/0 1px no-repeat;transition:background-size .5s var(--ease),color .3s}.l-text-link:hover{background-size:100% 1px;color:#e3d4b5}
.motion-enabled [data-reveal]{transition:opacity 1s var(--ease),transform 1.15s var(--ease)}.motion-enabled [data-reveal].awaiting{transform:translateY(48px);opacity:0}
.l-project-image img{transition:transform 1.3s var(--ease),filter .6s}.l-project:hover img{transform:scale(1.065)}.l-project-caption h3{transition:transform .5s var(--ease),color .4s}.l-project:hover h3{transform:translateX(8px);color:#d4c5a6}
.l-service-row{transition:padding .5s var(--ease),background .4s}.l-service-row:hover{background:#ffffff05;padding-left:18px}.l-journal-grid>a{transition:transform .6s var(--ease),background .4s}.l-journal-grid>a:hover{transform:translateY(-6px)}
.l-mobile-nav:not([hidden]){animation:atelier-menu .35s var(--ease) both}.l-mobile-nav a{transition:padding-left .3s}.l-mobile-nav a:hover{padding-left:8px}
@keyframes atelier-rise{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@keyframes atelier-photo{from{opacity:.2;transform:scale(1.12);clip-path:inset(4% 0 4% 0)}to{opacity:1;transform:scale(1);clip-path:inset(0)}}
@keyframes atelier-menu{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@supports(animation-timeline:view()){@media(min-width:801px) and (prefers-reduced-motion:no-preference){.l-feature>img{animation:atelier-depth linear both;animation-timeline:view();animation-range:entry 0% exit 100%}.l-services-title img{animation:atelier-depth linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes atelier-depth{from{transform:scale(1.12) translateY(-3%)}to{transform:scale(1.12) translateY(3%)}}}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-enabled [data-reveal].awaiting{opacity:1;transform:none}}
/* Accueil immersif : photographie aérienne originale, sans retouche. */
.l-hero{display:flex;align-items:center;margin-top:0;height:100svh;min-height:720px;max-height:1200px;padding:0;background:#181916;isolation:isolate}
.l-hero-photo{position:absolute;inset:0;width:100%;height:100%;z-index:-2;box-shadow:none}
.l-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 57%;animation:aerial-entry .85s cubic-bezier(.16,1,.3,1) both}
.l-hero:after{display:block;content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#10120fea 0%,#10120fa8 32%,#10120f22 72%),linear-gradient(0deg,#10120fbb,transparent 35%);pointer-events:none}
.l-hero-copy{padding:140px var(--gutter) 125px;width:100%;max-width:960px}.l-hero h1{font-size:clamp(52px,6vw,92px);color:#f6f3ec}.l-hero h1>span{color:#ded1b5}.l-hero .l-kicker,.l-hero-bottom{color:#e0ded4}.l-hero-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:32px;max-width:none;width:auto;padding:0;justify-content:space-between}.l-hero .l-text-link{color:#f6f3ec}.l-hero .l-kicker{animation:atelier-rise .5s .06s both}.l-hero h1{animation:atelier-rise .65s .1s both}.l-hero-actions{animation:atelier-rise .65s .2s both}.l-hero-bottom{animation:atelier-rise .6s .25s both}
@keyframes aerial-entry{from{opacity:.35;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}
@media(max-width:800px){.l-hero{height:100svh;min-height:730px;max-height:none;display:flex;flex-direction:row;padding:0}.l-hero-photo{position:absolute;inset:0;width:100%;height:100%}.l-hero-photo img{object-position:54% 60%}.l-hero:after{background:linear-gradient(0deg,#10120fe6 0%,#10120f77 48%,#10120f55 100%)}.l-hero-copy{padding:130px 24px 155px;align-self:end;max-width:none}.l-hero h1{font-size:clamp(42px,9vw,66px);margin:25px 0 30px}.l-hero-bottom{left:24px;right:24px;bottom:94px;gap:10px;font-size:8px;justify-content:start;flex-direction:column;align-items:start}.l-hero-actions{gap:18px}.l-hero .l-kicker{font-size:8px}.l-hero .l-button{padding:17px 20px}.l-hero-actions .l-text-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){.l-hero-photo img,.l-hero h1,.l-hero .l-kicker,.l-hero-actions,.l-hero-bottom{animation:none!important}}
/* Contraste explicite sur les surfaces sombres, y compris les styles hérités. */
.l-services{color:#f2eee5}.l-services h2,.l-service-row h3{color:#f2eee5}.l-service-row p{color:#cbc8ba}
.l-intro,.l-method,.l-journal,.l-contact,.content-page,.legal-page{color:#eeeae1}
.l-section-label,.l-caption,.l-project-caption>span,.l-hero-bottom{color:#c5c1b2}
.l-intro-detail p,.l-method-grid p,.l-regions p,.l-contact-info>p{color:#c7c3b5}
.l-contact .request-form label,.l-contact .request-files legend{color:#eeeae1}
.l-contact .request-form input,.l-contact .request-form textarea,.l-contact .request-form select{color:#f2eee5;background:#191a17;color-scheme:dark}
.l-contact .file-choices label{color:#eeeae1;background:#303129}
.l-contact .request-form .form-help,.l-contact .request-form .field-hint,.l-contact .request-form #files-help,.l-contact .request-form .form-consent{color:#c7c3b5}
.atla-faq summary,.atla-faq h2{color:#eeeae1!important}.atla-faq .faq-answer p,.atla-faq .faq-answer li{color:#c7c3b5!important}
.content-page .service-note,.content-page .expertise-directory>a,.content-page .guide-grid>a,.content-page .page-cta,.content-page .editorial-callout{color:#eeeae1}
.content-page h1,.content-page h2,.content-page h3,.legal-content h1,.legal-content h2{color:#eeeae1}
.request-success{background:#252621;color:#eeeae1}.request-success h3,.request-success p{color:#eeeae1}
.l-footer a,.l-footer-top p,.l-footer-bottom{color:#d0cdbf}.l-lightbox button{color:#eeeae1}
