/* Identité de la carte A Concept : noir mat, blanc et reflets de vernis sélectif. */
:root{--paper:#0b0b0b;--ink:#f6f6f6;--muted:#c7c7c7;--line:#505050;--accent:#e8e8e8;--accent-dark:#ffffff;--night:#090909;color-scheme:dark}
body{background:var(--paper);color:var(--ink)}
h1,h2,h3,.project-panel h3,.project-signature>span,.image-note strong{font-family:var(--sans);font-style:normal}
h1,h2{font-weight:400;letter-spacing:-.045em}h1 em,h2 em{font-style:normal;color:#d2d2d2}
.header{background:rgba(9,9,9,.97);border-bottom-color:#ffffff20}
.brand{gap:13px}.brand img{width:92px;height:89px;margin-block:-17px;object-fit:contain;border-radius:0;clip-path:polygon(5% 69.5%,32% 17%,44% 17%,94% 43%,94% 57%,72% 70%)}
.brand-copy strong{font-size:17px;letter-spacing:.13em}.brand-copy>span{display:block;max-width:190px;font-size:9px;line-height:1.6;color:#cecece;letter-spacing:.025em}
.header-inner{min-height:100px}.navigation{gap:25px}.navigation>a:not(.button):hover{color:#ffffff}
.button-dark,.button-accent{background:#e9e9e9;color:#0e0e0e;border-color:#e9e9e9}.button-dark:hover,.button-accent:hover{background:#ffffff;border-color:#ffffff}.text-link:hover{color:#ffffff}.skip-link{background:#ffffff;color:#0e0e0e}
.hero-copy{position:relative;isolation:isolate}.hero-copy:before,.hero-copy:after{content:"";position:absolute;pointer-events:none;z-index:-1;background:#1a1a1a4a;clip-path:polygon(0 0,38% 0,100% 100%,62% 100%)}
.hero-copy:before{inset:-22px 5% 5% -35px}.hero-copy:after{left:20%;right:0;top:65%;bottom:-13px;opacity:.42}
.hero h1{font-size:clamp(55px,6vw,81px);line-height:1.08;margin-top:29px}.hero .eyebrow{width:fit-content;border:1px solid #929292;padding:9px 12px;font-size:8px;letter-spacing:.105em;gap:8px}.accent-line{width:17px;background:#e0e0e0}
.hero-intro{color:#d0d0d0;font-size:14px}.hero-bottom p{color:#cfcfcf}.small-cross{color:#ebebeb}.hero-image-frame{outline:1px solid #ffffff1c}.image-topline{color:#ffffff}.image-note strong{font-size:18px;font-weight:400;letter-spacing:-.02em}.image-note .note-icon{border-color:#dbdbdbaa}
.trades-ribbon{background:#0a0a0a;border-color:#5e5e5e66}.trades-ribbon span{letter-spacing:.1em;font-size:12px;text-transform:uppercase}.trades-ribbon span[aria-hidden]{color:#d4d4d4}
.section-heading>.eyebrow{color:#d4d4d4}.service-title{font-size:25px}.service-number{color:#cdcdcd}.service-title small,.service-body{color:#c7c7c7}.service-toggle{border-color:#737373}.service[open] .service-toggle{color:#ffffff;border-color:#b3b3b3}
.projects{background:#080808;border-top:1px solid #ffffff17;border-bottom:1px solid #ffffff17}.project-intro>.eyebrow,.project-intro>p:not(.eyebrow),.project-panel>p{color:#c8c8c8}.project-intro h2 em{color:#e9e9e9}.project-signature img{clip-path:polygon(5% 69.5%,32% 17%,44% 17%,94% 43%,94% 57%,72% 70%)}.project-signature>span{color:#d9d9d9;font-size:16px}.project-index{color:#c5c5c5}.project-tabs button{color:#bbbbbb;min-height:44px}.project-tabs button[aria-selected=true]:after{background:#e2e2e2}.project-panel h3{font-size:31px;line-height:1.3}.project-tags span{color:#d6d6d6;border-color:#89898966}.light-link:hover{color:#ffffff}
.method-note{border-color:var(--line)}.method-note>span{color:#e2e2e2}.method-note strong{color:#f3f3f3}
.contact{background:#0e0e0e;border-top:1px solid #ffffff17}.contact-copy .eyebrow{color:#e2e2e2}.contact-person{display:flex;flex-direction:column;gap:4px;margin-top:28px}.contact-person strong{font-size:17px;font-weight:500;letter-spacing:.07em}.contact-person>span{font-size:10px;color:#c3c3c3}
.contact-phone,.contact-email{display:block;max-width:360px;border-bottom:1px solid #6e6e6e80;padding-block:17px;margin:0;border-top:0}.contact-phone{margin-top:17px;border-top:1px solid #6e6e6e80}.contact-phone>span,.contact-email>span{font-size:10px;color:#cdcdcd}.contact-phone strong,.contact-email strong{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:22px;line-height:1.6;font-weight:400;letter-spacing:.01em;margin-top:4px}.contact-phone strong>span,.contact-email strong>span{font-size:24px;color:#dedede}.contact-address{font:12px/1.8 var(--sans);color:#cccccc;margin-top:22px}.contact-footnote{color:#bababa;font-size:10px}
.quote-form{background:#111111;border:1px solid #60606066}.quote-form h3{font-family:var(--sans);font-size:25px;letter-spacing:-.03em}.choice-row span{border-color:#80808088;color:#ececec}.choice-row input:checked+span{background:#e7e7e7;color:#282828;border-color:#e7e7e7}.field input,.field textarea{background:#0b0b0b;color:#f7f7f7;border-color:#86868699}.field input::placeholder,.field textarea::placeholder{color:#c1c1c1}.needs-grid input{accent-color:#e3e3e3}.form-privacy,.form-intro{color:#cbcbcb}.form-submit{color:#0e0e0e}.form-privacy a:hover{color:#ffffff}
.footer{background:#070707}.footer-brand img{width:96px;height:93px;margin-block:-17px}.footer-brand .brand-copy>span{color:#c7c7c7;max-width:260px}.footer-contact>span{color:#dfdfdf}.footer-bottom{color:#c7c7c7}.footer-contact:hover{color:#ffffff}
.email-dialog{background:#121212;color:#f4f4f4}.email-dialog>p{color:#cccccc}.email-dialog h2{font-family:var(--sans);font-size:36px}.email-dialog .dialog-status{color:#dfdfdf}.email-preview{background:#0b0b0b;color:#efefef;border-color:#767676}.copy-button{border-color:#828282}.copy-button:hover{background:#202020}.email-dialog .copy-feedback,.email-dialog .email-fallback{color:#d5d5d5}
.legal-main p,.legal-main li,.legal-main address{color:#cecece}.legal-main h1{font-size:50px}.legal-main h2{font-family:var(--sans);font-size:25px}.legal-main .eyebrow{color:#dbdbdb}
@media(min-width:1500px){.hero h1{font-size:89px}}
@media(max-width:1100px){.brand img{width:80px;height:78px;margin-block:-15px}.brand-copy strong{font-size:15px}.brand-copy>span{font-size:8px;max-width:160px}.navigation{gap:18px}.hero h1{font-size:clamp(51px,6vw,68px)}.hero .eyebrow{font-size:7px;padding:8px}.hero-intro{font-size:13px}.hero-actions{gap:15px}.hero-actions .text-link{font-size:10px;gap:10px}.contact-email strong{font-size:20px}.project-panel h3{font-size:29px}}
@media(max-width:800px){.header-inner{min-height:78px}.brand img{width:81px;height:79px;margin-block:-15px}.brand-copy>span{max-width:180px}.menu-lines{border-color:#e8e8e8}.menu-lines:after{border-color:#e8e8e8}.navigation.is-open{background:#0d0d0d;border-color:#656565;box-shadow:0 16px 25px #00000022}.hero h1{font-size:clamp(46px,6.8vw,59px)}.hero .eyebrow{font-size:6px;padding:8px 6px;letter-spacing:.035em;gap:6px}.hero .accent-line{width:9px}.hero-intro{font-size:13px}.hero-actions .button{font-size:10px;gap:18px}.hero-actions .text-link{font-size:11px}.trades-ribbon span{font-size:10px}.service-title{font-size:23px}.quote-form h3{font-size:28px}.contact-copy h2{font-size:44px}.contact-phone,.contact-email{max-width:390px}.contact-phone strong,.contact-email strong{font-size:23px}.contact-address{font-size:12px}.contact-footnote{display:block}.footer-brand img{width:87px;height:85px}.project-panel h3{font-size:28px}}
@media(max-width:560px){.header-inner{min-height:78px;gap:10px}.brand{gap:7px}.brand img{width:76px;height:74px;margin-block:-13px}.brand-copy strong{font-size:13px}.brand-copy>span{font-size:7px;max-width:150px}.menu-toggle{padding-left:5px;gap:7px}.navigation.is-open{top:78px}.hero h1{font-size:clamp(49px,12.8vw,68px);line-height:1.11;margin-top:23px}.hero .eyebrow{font-size:7px;padding:9px;letter-spacing:.07em;gap:8px}.hero .accent-line{width:16px}.hero-intro{font-size:15px}.hero-actions{column-gap:20px;row-gap:12px}.hero-actions .button{font-size:11px;padding:14px 15px;gap:18px}.hero-actions .text-link{font-size:11px}.hero-copy:before{inset:-10px 14% 0 -18px}.hero-copy:after{bottom:-12px}.trades-ribbon>.wrap{gap:10px}.trades-ribbon span{font-size:8px;letter-spacing:.08em}.trades-ribbon span[aria-hidden]{font-size:9px}.service-title{font-size:20px}.service-body{font-size:14px}.project-panel h3{font-size:30px}.project-signature>span{font-size:15px}.contact-person{margin-top:24px}.contact-person strong{font-size:18px}.contact-phone strong,.contact-email strong{font-size:22px}.contact-copy h2{font-size:39px}.quote-form h3{font-size:25px}.contact-footnote{font-size:9px;line-height:1.9}.footer-brand img{width:83px;height:81px;margin-block:-15px}.footer-brand .brand-copy>span{font-size:8px;max-width:200px}.footer-brand .brand-copy strong{font-size:13px}.legal-main h1{font-size:40px}.legal-main h2{font-size:25px}}

/* Le fond reste mat ; seules les formes géométriques portent le reflet. */
.hero-copy:before{background:linear-gradient(115deg,#050505 0%,#0b0b0b 33%,#262626 48%,#111111 61%,#050505 85%);opacity:.78}
.hero-copy:after{background:linear-gradient(115deg,#030303 12%,#202020 45%,#0a0a0a 64%,#050505 86%);opacity:.72}
.project-explorer{position:relative;isolation:isolate}
.project-explorer:before{content:"";position:absolute;inset:45px 0 15px 20%;z-index:-1;pointer-events:none;clip-path:polygon(0 0,22% 0,100% 100%,77% 100%);background:linear-gradient(120deg,#050505 25%,#1c1c1c 47%,#080808 67%);opacity:.45}

/* Le logo porte déjà le nom de marque ; aucun doublon textuel dans l’en-tête. */
.header .brand img{width:116px;height:112px;margin-block:-20px}
.contact-email{margin-top:17px;border-top:1px solid #6e6e6e80}
@media(max-width:800px){.header .brand img{width:100px;height:97px;margin-block:-18px}}

/* La provenance du visuel reste lisible sur ordinateur, tablette et mobile. */
.hero-figure figcaption .illustration-disclosure{display:block;font-size:9px;line-height:1.6;letter-spacing:.01em}

/* Les secteurs sont visibles dès l’accueil et près des coordonnées. */
.intervention-area{margin-top:22px;max-width:388px;color:#f2f2f2;font-size:13px;line-height:1.8}
.intervention-area>span{display:block;margin-bottom:3px;color:#bcbcbc;font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.intervention-area>strong{font-weight:500}

/* Le cadrage conserve le A complet et suit les proportions du fichier original. */
.header .brand img,.footer-brand img,.project-signature img{height:auto}

/* Accents champagne et ambiances colorées, sur la base noire mate de la carte. */
:root{--accent:#dbc09c;--accent-dark:#f0ddc2;--line:#534a40;--night:#12100f}
h1 em,h2 em,.project-intro h2 em{color:#dbc09c}
.navigation>a:not(.button):hover,.text-link:hover,.light-link:hover{color:var(--accent)}
.button-dark,.button-accent{background:var(--accent);border-color:var(--accent);color:#17120d}
.button-dark:hover,.button-accent:hover{background:var(--accent-dark);border-color:var(--accent-dark)}
.skip-link{background:var(--accent);color:#17120d}
.hero .eyebrow{border-color:#8e7961}.accent-line{background:var(--accent)}
.hero-image-frame{outline-color:#c7ab843d}.image-note .note-icon{border-color:#e8cba9aa;color:#f1dfc7}
.trades-ribbon{background:#15120f;border-color:#69533a66}.trades-ribbon span[aria-hidden]{color:var(--accent)}
.section-heading>.eyebrow,.service-number,.project-intro>.eyebrow,.project-index,.contact-copy .eyebrow{color:#d2b993}
.service[open] .service-toggle{color:var(--accent);border-color:var(--accent)}
.projects{background:#12100f}.project-tabs button[aria-selected=true]:after{background:var(--accent)}
.project-tags span{color:#d7c7b4;border-color:#7b66508a}
.method-note>span,.contact-email strong>span,.footer-contact>span{color:var(--accent)}
.contact{background:#100f0e}.quote-form{background:#181511;border-color:#5c4e3e}
.choice-row input:checked+span{background:var(--accent);border-color:var(--accent);color:#17120d}
.field input,.field textarea{background:#0c0b0a;border-color:#766653}.needs-grid input{accent-color:var(--accent)}
.intervention-area>strong{color:#e6ceb0}
.ambiance-block{margin-top:54px}
.ambiance-block>.eyebrow{color:var(--accent);margin-bottom:22px}
.ambiance-gallery{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.ambiance-card{min-width:0}
.ambiance-photo{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:#29241f}
.ambiance-photo img{display:block;width:100%;height:100%;object-fit:cover}
.ambiance-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 52%,#000b)}
.ambiance-label{position:absolute;left:22px;right:22px;bottom:20px;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;font-size:22px;line-height:1.4;letter-spacing:-.02em}
.ambiance-label>span[aria-hidden]{color:#f1dfc7;font-size:26px}
.ambiance-card figcaption{display:block;color:#bfb8af;font-size:10px;line-height:1.7;letter-spacing:0;margin-top:10px}
@media(max-width:800px){.ambiance-gallery{gap:18px}.ambiance-label{left:16px;right:16px;bottom:16px;font-size:18px}.ambiance-block{margin-top:40px}}
@media(max-width:560px){.ambiance-gallery{grid-template-columns:1fr;gap:28px}.ambiance-label{font-size:22px}.ambiance-card figcaption{font-size:10px}}
