/* DylanBTP — photographies de chantier / septembre 2026. */
:root{--ink:#0c0c0c;--panel:#191919;--paper:#f2f2ee;--yellow:#ffd21f;--yellow2:#ffe36a;--muted:#b8b8b1;--line:#363636}
body{background:var(--ink);color:#fff;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}::selection{background:var(--yellow);color:var(--ink)}
.wrap{width:min(1400px,calc(100% - 96px))}section{padding:104px 0}html{scroll-padding-top:138px}h1,h2,h3{text-wrap:balance}h2{letter-spacing:-.02em}p{max-width:65ch}.reveal{opacity:1;transform:none}
.topbar{background:#0c0c0cf5;border-bottom:1px solid #ffffff20;backdrop-filter:blur(14px)}.utility{border-color:#ffffff16}.utility .wrap{min-height:32px;font-size:.875rem}.utilityPlace{color:#bbb}.utilityLinks{gap:24px}.nav{height:86px;gap:25px}.brandLogo{display:inline-flex;flex:0 0 auto;align-items:center;line-height:0}.nav .brandLogo img{width:150px;height:auto}.footer .brandLogo img{width:190px;height:auto}.navlinks{gap:25px;font-size:.875rem}.navlinks a:not(.navcta){padding:10px 0}.navlinks a[aria-current=page]{color:var(--yellow)}
.navcta,.btn{border-radius:0;min-height:50px;padding:15px 23px;font-size:.875rem;gap:22px}.btn{border:1px solid transparent}.btn.dark{background:var(--ink);color:#fff}.btn.ghost{border-color:#8b8b85;background:transparent;color:#fff}.btn:hover,.navcta:hover{transform:translateY(-2px)}.textLink{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid currentColor;padding:12px 0;font-weight:700;font-size:.9375rem}.eyebrow{font:700 .875rem/1.5 Inter,system-ui,sans-serif;letter-spacing:.12em}.eyebrow:before{width:22px;height:3px}.sectionHead{grid-template-columns:1.2fr .8fr;gap:70px;margin-bottom:44px}.sectionHead .eyebrow{margin-bottom:18px}.sectionHead h2{font-size:clamp(3rem,5vw,5.2rem);line-height:.98}.sectionHead p{font-size:1rem;line-height:1.75}
/* Accueil : composition photographique, logo original et photos réelles. */
.hero{display:block;position:relative;isolation:isolate;background:var(--ink);padding:164px 0 0;min-height:0;overflow:hidden}.hero:before,.hero:after{display:none}.heroGrid{display:grid;grid-template-columns:1fr .95fr;align-items:center;gap:48px}.heroContent{width:auto;max-width:none;margin:0;padding:0 0 55px;z-index:2}.hero .eyebrow{font-size:.8rem;letter-spacing:.07em;color:#d1d1c9}.heroKicker{margin:36px 0 0;color:var(--yellow);font-size:.875rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.hero h1{font-size:clamp(4.4rem,7.7vw,8.2rem);line-height:.89;letter-spacing:-.03em;margin:21px 0 30px;max-width:none;text-wrap:initial}.heroAccent{color:var(--yellow)}.hero .lead{font-size:1.0625rem;max-width:450px;color:#c6c6be;line-height:1.7}.hero .actions{align-items:center;gap:24px;margin-top:30px}.heroGalleryLink{display:inline-flex;align-items:center;gap:22px;font-size:.875rem;font-weight:700;padding:14px 0;border-bottom:1px solid #72726a}.heroVideoLink{display:inline-flex;align-items:center;gap:12px;margin-top:24px;color:#bbb;font-size:.875rem}.heroVideoLink span{display:grid;place-items:center;border:1px solid #666;width:30px;height:30px;border-radius:50%;font-size:.6rem;color:var(--yellow)}.heroVideoLink:hover{color:#fff}
.heroVisual{position:relative;padding:0 0 68px 24px;min-width:0}.heroMainPhoto{margin:0;position:relative;height:580px;overflow:hidden}.heroMainPhoto>img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.heroMainPhoto:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#000b);pointer-events:none}.heroMainPhoto figcaption{position:absolute;z-index:1;bottom:30px;right:26px;left:36%;text-align:right}.heroMainPhoto figcaption span{display:block;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow)}.heroMainPhoto figcaption strong{font:700 1.8rem/1.08 "Barlow Condensed",sans-serif;text-transform:uppercase;display:block;margin-top:8px}.heroInset{position:absolute;left:-36px;bottom:20px;width:51%;margin:0;border:8px solid var(--ink);background:var(--yellow);box-shadow:0 12px 45px #0005}.heroInset img{width:100%;height:180px;object-fit:cover}.heroInset figcaption{padding:10px 12px;font-size:.75rem;font-weight:800;color:var(--ink)}.heroSideLabel{position:absolute;right:-29px;top:0;writing-mode:vertical-rl;color:#777;font-size:.75rem;letter-spacing:.13em;text-transform:uppercase}.heroBottom{position:relative;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #343434;padding:24px 0;color:#aaa;font-size:.875rem}.heroBottom>a{display:flex;gap:35px;color:var(--yellow);font-weight:700}
.proofbar{background:var(--yellow);color:var(--ink)}.proofgrid{grid-template-columns:repeat(4,1fr)}.proofitem{padding:23px 25px;border-right:1px solid #0003}.proofitem:first-child{padding-left:0}.proofitem strong{font:700 1.45rem/1.1 "Barlow Condensed",sans-serif}.proofitem span{display:block;margin-top:6px;font-size:.875rem;font-weight:500}
/* Prestations illustrées. */
.services{background:var(--paper);color:var(--ink)}.services .eyebrow,.intro .eyebrow,.transform .eyebrow,.pageLight .eyebrow{color:#625115}.services .sectionHead p{color:#62625d}.serviceGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;border:0}.card{position:relative;isolation:isolate;overflow:hidden;min-height:375px;padding:28px;border:0;color:#fff;background:#191919;display:flex;flex-direction:column;justify-content:space-between;box-shadow:none}.card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0002 10%,#0005 40%,#000e 100%)}.card:hover{background:#191919;transform:none;box-shadow:none}.servicePhoto{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover .servicePhoto{transform:scale(1.04)}.num{color:#fff;font:600 .875rem Inter,sans-serif;background:#0006;border:1px solid #fff5;display:inline-block;padding:5px 10px}.card h3{font-size:2.35rem;margin:0 0 12px;line-height:1}.card p{font-size:.9375rem;line-height:1.6;color:#e2e2dc;max-width:36ch}.serviceIcon{display:none}.activityLinks{gap:0;border-top:1px solid #c8c8c0;margin-top:34px}.activityLink{border:0;background:transparent;padding:27px 24px}.activityLink:first-child{border-right:1px solid #c8c8c0;padding-left:0}.activityLink strong{font-size:2rem}.activityLink span{font-size:.9375rem;color:#666}.activityLink:hover{background:#e8e8e0;box-shadow:none}.activityLink b{font-weight:400}
/* Réalisations : sélection mise en avant, galerie complète et filtres. */
.projects{background:#111}.projects .eyebrow{color:var(--yellow)}.filters{border-top:1px solid #3d3d3d;padding-top:24px;gap:9px;margin-bottom:28px}.filter{font-size:.875rem;padding:11px 16px;font-weight:600;border-color:#555;color:#ddd}.projectGrid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:250px;gap:16px;grid-auto-flow:row dense}.project img{filter:none;transition:transform .45s}.project:hover img{filter:none;transform:scale(1.035)}.project:after{inset:48% 0 0;background:linear-gradient(transparent,#000d)}.project.large{grid-column:span 2;grid-row:span 2}.project.wide{grid-column:span 2}.project figcaption{left:24px;right:24px;bottom:24px}.projectGrid .project strong{font-size:1.65rem;letter-spacing:0}.projectGrid .project small{font-size:.875rem;letter-spacing:0;color:#ddd}.project figcaption:after{content:"+";position:absolute;right:0;bottom:0;display:grid;place-items:center;width:30px;height:30px;background:var(--yellow);color:#111;font-size:1.2rem}.projectGrid .project strong{padding-right:34px;display:block}.galleryControls{padding-top:26px;border-top:1px solid #333;margin-top:28px}.galleryControls p{font-size:.9375rem}.sourceLinks{margin-top:32px}.sourceLinks .btn{min-height:44px;padding:10px 17px}
/* Les vidéos démarrent uniquement à la demande du visiteur. */
.videoSection{background:var(--yellow);color:var(--ink)}.videoSection .eyebrow{color:#302800}.videoSection .sectionHead>p{color:#423900}.videoGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start;max-width:1080px;margin:auto}.videoCard{min-width:0;margin:0}.videoCard video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#111;border:1px solid #0005;box-shadow:10px 10px 0 #0001}.videoCard video:focus-visible{outline-color:#111}.videoCaption{padding:24px 0 0}.videoCaption>span{font-size:.875rem;color:#423900}.videoCaption h3{font-size:1.8rem;line-height:1.1;margin:8px 0}.videoCaption p{font-size:.9375rem;line-height:1.5;margin:0;color:#423900}
.intro{background:#fff;color:var(--ink)}.introGrid{grid-template-columns:.85fr 1.15fr;gap:100px}.introPhoto{margin:0;padding:0 30px 26px 0;max-width:480px}.introPhoto:before{content:"";position:absolute;inset:40px 0 0 40px;background:var(--yellow)}.introPhoto img{position:relative;width:100%;height:470px;object-fit:cover}.introPhoto figcaption{position:relative;background:var(--ink);color:#fff;padding:17px 20px;font-size:.875rem}.introCopy h2{font-size:clamp(3rem,4.5vw,4.6rem);margin:22px 0 28px;line-height:1}.introCopy p{color:#60605a;font-size:1rem}.introCopy .btn{margin-top:15px}
.transform{background:#e8e8e3;color:var(--ink)}.compareGrid{gap:80px}.compare{aspect-ratio:1.2;touch-action:pan-y}.transformCopy h2{font-size:clamp(3rem,4.5vw,4.6rem)}.transformCopy p{color:#62625c}.ticks li{font-size:.9375rem;border-color:#c6c6bd}.tag{font-size:.875rem}.method{background:#191919}.steps{gap:0;border-top:1px solid #494949}.step{background:transparent;border:0;border-right:1px solid #494949;padding:32px 38px 0}.step:first-child{padding-left:0}.step:last-child{border:0}.step b{font:700 3.7rem/1 "Barlow Condensed",sans-serif;color:var(--yellow)}.step h3{font-size:2.2rem;margin:24px 0 15px}.step p{font-size:1rem;color:#bdbdb7}
.socialSection{background:var(--paper);color:var(--ink)}.socialSection .eyebrow{color:#625115}.socialSection .sectionHead p{color:#62625d}.socialGrid{gap:28px}.socialCard{background:#fff;color:#111;border:1px solid #d4d4cc}.socialCard img{height:250px;object-fit:cover}.socialCardBody{padding:26px}.socialCard h3{font-size:2.1rem}.socialCard p{font-size:1rem;color:#64645e}.socialCard .linkLabel{color:#181818;font-size:.9375rem}.socialNote{color:#62625d;font-size:.875rem}
/* Contact et pages complémentaires. */
.contact{background:var(--yellow);color:var(--ink)}.contactBox{padding:0;background:transparent;border:0;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.contact .eyebrow{color:#423900}.contact h2{font-size:clamp(3.3rem,5vw,5.3rem);line-height:.98;margin:20px 0 25px}.contactAside>p{color:#423900}.contactLinks a{font-size:1rem}.contactLinks a:hover{color:#625115}.checklist li{font-size:.9375rem;border-color:#0003}.checklist li:before{color:#222}.form{background:var(--ink);padding:36px;gap:20px;color:#fff}.field input,.field select,.field textarea{background:#222;border-color:#555;min-height:52px;border-radius:0;font-size:16px;padding:15px}.field label{font-size:.875rem;color:#e0e0da}.field textarea{min-height:150px}.form .btn{width:100%}.formNote,.status{font-size:.875rem;color:#bebeb6;line-height:1.6}.status a{color:var(--yellow)}
.localSection{background:var(--ink);color:#fff}.localGrid{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:100px}.localStamp{display:flex;align-items:center;justify-content:center;flex-direction:column;aspect-ratio:1;border:1px solid #444;background:#181818}.localStamp strong{font:800 clamp(8rem,16vw,16rem)/1 "Barlow Condensed",sans-serif;color:var(--yellow);letter-spacing:-.04em}.localStamp span{font-size:.75rem;letter-spacing:.18em;color:#c5c5bc}.localCopy .eyebrow{color:var(--yellow)}.localCopy h2{font-size:clamp(3rem,4.7vw,4.9rem);margin:20px 0 28px}.localCopy p{color:#bdbdb5}.localCopy .textLink{color:var(--yellow);margin-top:14px}.faqSection{background:var(--paper);color:var(--ink)}.faqGrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faqGrid h2{font-size:clamp(3rem,4.7vw,4.9rem);margin:20px 0 26px}.faqSection .eyebrow{color:#625115}.faqGrid>div>p{color:#66665e;font-size:1rem;max-width:32ch}.faqList{border-top:1px solid #aaa}.faqList details{border-bottom:1px solid #c7c7be}.faqList summary{position:relative;cursor:pointer;padding:25px 40px 25px 0;list-style:none;font-weight:600;font-size:1rem;line-height:1.5}.faqList summary::-webkit-details-marker{display:none}.faqList summary:after{content:"+";position:absolute;right:8px;top:19px;font-size:1.7rem;font-weight:400}.faqList details[open] summary:after{content:"−"}.faqList details p{font-size:1rem;color:#60605a;margin:0 30px 24px 0}
.closingCta{background:var(--yellow);color:var(--ink);padding:65px 0}.closingCta .eyebrow{color:#302800}.closingCta .wrap>a{font:800 clamp(4rem,10vw,10rem)/1.1 "Barlow Condensed",sans-serif;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0 34px;border-bottom:1px solid #0004;letter-spacing:-.02em}.closingCta .wrap>div{display:flex;justify-content:space-between;gap:25px;padding-top:22px;font-size:.9375rem}.closingPhone{font-weight:800}.footer{background:var(--ink);padding:68px 0 32px}.footerGrid{grid-template-columns:1.3fr 1fr 1fr;gap:65px}.footerGrid nav,.footerGrid p{font-size:.9375rem;color:#bdbdb4}.footerGrid h3{font-size:1rem;color:#fff}.footerBottom{color:#a8a8a0;font-size:.875rem;border-color:#444}.mobileBar{display:none}
.pageHero{background:#141414;padding:182px 0 80px}.pageHero h1{font-size:clamp(3.5rem,6.3vw,6.6rem);line-height:.96}.pageHero .lead{color:#d0d0c8}.breadcrumbs{font-size:.875rem;color:#bbb}.pageHeroSplit{gap:65px}.pageHeroSplit img{height:450px;object-fit:cover}.pageLight{background:var(--paper)}.detailGrid{gap:34px}.detailCard{border-top:2px solid #b6a154}.detailCard h3{font-size:2.2rem}.detailCta{background:var(--yellow)}.electricPanel{background:#242424;border-color:var(--yellow)}.electricPanel strong{color:var(--yellow)}.electricPanel li{border-color:#555}.mapFrame{background:#e2e2d9}.lightbox[open]{display:grid;padding:72px 30px 30px;place-items:center}.lightboxClose{position:fixed;top:16px;right:20px;color:#111;background:var(--yellow);font-size:2rem}.lightbox img{margin:auto;max-height:78vh}.lightbox p{color:#ddd}
@media(max-width:1180px){.wrap{width:calc(100% - 64px)}.navlinks{gap:16px}.navcta{padding:13px 16px}.heroGrid{gap:32px;grid-template-columns:1.05fr .95fr}.hero h1{font-size:clamp(4.4rem,7.9vw,7rem)}.heroMainPhoto{height:550px}.hero .actions{gap:14px}.heroInset{left:-16px;width:57%}.heroInset img{height:155px}.sectionHead,.introGrid,.compareGrid,.contactBox,.faqGrid,.localGrid{gap:50px}.card{padding:24px;min-height:350px}.projectGrid{grid-auto-rows:215px}.heroBottom{font-size:.8rem}.form{padding:28px}}
@media(max-width:900px){html{scroll-padding-top:96px}.utility{display:none}.nav{height:80px}.topbar{background:#0c0c0c}.navlinks{top:80px;background:#111}.navlinks.open{padding:20px 28px 26px;gap:0}.navlinks a:not(.navcta){padding:14px 0;font-size:1rem}.menuButton{display:block;min-height:44px;min-width:70px;border-color:#777;font-size:.875rem}.nav .brandLogo img{width:138px}.hero{padding-top:120px}.heroGrid{grid-template-columns:1fr 1fr;gap:24px}.heroContent{padding-bottom:30px}.hero h1{font-size:clamp(3.7rem,8.2vw,5.2rem)}.hero .eyebrow{font-size:.75rem;letter-spacing:0}.heroKicker{margin-top:28px;font-size:.8rem;letter-spacing:.07em}.hero .lead{font-size:1rem}.hero .actions{align-items:flex-start;flex-direction:column;gap:8px}.hero .actions .btn{font-size:.875rem;padding:14px 18px}.heroMainPhoto{height:550px}.heroInset{width:80%;left:0}.heroInset img{height:145px}.heroMainPhoto figcaption{display:none}.heroSideLabel{right:-24px}.heroBottom{font-size:.8rem}.proofitem{padding:22px 15px}.proofitem strong{font-size:1.25rem}.proofitem span{font-size:.8rem}.sectionHead{gap:35px}.sectionHead h2{font-size:3.5rem}.serviceGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{min-height:360px}.projectGrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.videoGrid{gap:20px}.videoCaption h3{font-size:1.55rem}.introGrid{grid-template-columns:1fr 1fr;gap:40px}.introPhoto img{height:390px}.introCopy h2{font-size:3.3rem}.contactBox{grid-template-columns:1fr;gap:35px}.contactAside{max-width:650px}.form{max-width:none}.compareGrid{grid-template-columns:1fr;gap:40px}.steps{grid-template-columns:repeat(3,minmax(0,1fr))}.step{padding:28px 22px 0}.socialCard img{height:200px}.socialCardBody{padding:20px}.localGrid,.faqGrid{gap:40px}.footerGrid{gap:30px}.pageHero{padding-top:125px}.pageHeroSplit{grid-template-columns:1fr 1fr;gap:35px}.pageHeroSplit img{height:360px}.mobileBar{display:flex;background:#111;z-index:55;border-color:#444;padding:9px 14px calc(9px + env(safe-area-inset-bottom));gap:10px}.mobileBar a{font-size:.875rem;padding:13px 10px}.mobileBar .call{background:var(--yellow);color:#111}.mobileBar .wa{color:#fff;background:#262626;border:1px solid #666}.footer{padding-bottom:120px}}
@media(max-width:620px){.wrap{width:calc(100% - 40px)}section{padding:68px 0}.nav{height:76px}.navlinks{top:76px}.nav .brandLogo img{width:126px}.hero{padding:112px 0 0}.heroGrid{grid-template-columns:1fr;gap:25px}.heroContent{padding:0}.hero .eyebrow{font-size:.75rem;letter-spacing:.01em;gap:9px}.hero .eyebrow:before{width:16px}.heroKicker{margin-top:25px;font-size:.8rem}.hero h1{font-size:clamp(3.1rem,15.5vw,6rem);line-height:.9;margin:17px 0 23px}.hero .lead{font-size:1rem;max-width:34ch;margin:0}.hero .actions{margin-top:25px;flex-direction:row;align-items:center;gap:15px}.hero .actions .btn{width:auto;min-height:50px}.heroGalleryLink{font-size:.875rem;padding:10px 0}.heroVideoLink{margin-top:20px;font-size:.875rem}.heroVisual{padding:0 0 65px 26px;margin-top:10px}.heroMainPhoto{height:390px}.heroMainPhoto>img{object-position:center 37%}.heroInset{width:60%;left:0;bottom:0;border-width:6px}.heroInset img{height:135px}.heroInset figcaption{font-size:.65rem;padding:9px}.heroSideLabel{right:-17px;font-size:.65rem}.heroBottom{margin-top:30px;padding:18px 0;font-size:.75rem;gap:20px}.heroBottom>span{max-width:24ch}.heroBottom>a{gap:10px;white-space:nowrap}.proofgrid{grid-template-columns:1fr 1fr}.proofitem,.proofitem:first-child{padding:19px 10px;border-bottom:1px solid #0003}.proofitem:nth-child(2n){border-right:0}.proofitem:nth-child(n+3){border-bottom:0}.proofitem strong{font-size:1.35rem}.proofitem span{font-size:.8rem}.sectionHead{grid-template-columns:1fr;gap:22px;margin-bottom:32px}.sectionHead h2{font-size:clamp(2.9rem,12vw,3.7rem)}.sectionHead p{font-size:1rem}.eyebrow{font-size:.8rem;letter-spacing:.07em}.serviceGrid{grid-template-columns:1fr;gap:18px}.card{min-height:370px;padding:25px}.card h3{font-size:2.4rem}.card p{font-size:1rem}.activityLinks{grid-template-columns:1fr}.activityLink,.activityLink:first-child{padding:23px 0;border-right:0;border-bottom:1px solid #c8c8c0}.activityLink strong{font-size:1.8rem}.activityLink span{font-size:.875rem}.filters{gap:7px;padding-top:20px}.filter{font-size:.875rem;padding:10px 11px}.projectGrid{grid-auto-rows:195px;gap:12px}.project.large{grid-row:span 2}.project figcaption{left:15px;right:15px;bottom:16px}.projectGrid .project strong{font-size:1.3rem;line-height:1.1}.projectGrid .project small{font-size:.8rem}.project figcaption:after{width:24px;height:24px;font-size:1rem}.galleryControls .btn{width:100%}.sourceLinks{gap:8px}.sourceLinks .btn{padding:10px 12px;font-size:.8rem}.videoGrid{grid-template-columns:1fr;gap:40px;max-width:370px}.videoCaption h3{font-size:1.8rem}.introGrid,.localGrid,.faqGrid,.pageHeroSplit,.zoneGrid{grid-template-columns:1fr;gap:38px}.introPhoto{max-width:420px;padding:0 22px 22px 0}.introPhoto img{height:390px}.introCopy h2,.transformCopy h2{font-size:3.4rem}.compare{aspect-ratio:1}.steps{grid-template-columns:1fr}.step,.step:first-child{padding:28px 0;border-right:0;border-bottom:1px solid #555}.step h3{margin-top:15px}.step b{font-size:3rem}.socialGrid{grid-template-columns:1fr;gap:20px}.socialCard{display:grid;grid-template-columns:100px minmax(0,1fr)}.socialCard img{width:100px;height:100%;min-height:190px;object-fit:cover}.socialCardBody{padding:20px 18px}.socialCard h3{font-size:1.9rem}.socialCard p{font-size:.9375rem;margin:10px 0 18px}.socialCard .linkLabel{font-size:.875rem}.contactBox{gap:30px}.contact h2{font-size:3.5rem}.form{padding:25px 20px;grid-template-columns:1fr;gap:18px}.field.full{grid-column:1}.field label{font-size:.875rem}.formNote{font-size:.875rem}.localStamp{width:240px;margin:auto}.localStamp strong{font-size:11rem}.localStamp span{font-size:.75rem}.localCopy h2,.faqGrid h2{font-size:3.4rem}.faqList summary{font-size:1rem;padding-block:22px}.closingCta .wrap>a{font-size:clamp(3rem,14vw,5rem);padding-bottom:23px}.closingCta .wrap>div{flex-wrap:wrap;font-size:.875rem;gap:12px}.footerGrid{grid-template-columns:1fr;gap:34px}.footerBottom{font-size:.8rem;gap:10px}.pageHero{padding-top:120px;padding-bottom:55px}.pageHero h1{font-size:3.6rem}.pageHero .lead{font-size:1rem}.pageHeroSplit img{height:340px}.detailGrid{grid-template-columns:1fr}.detailCta .wrap{align-items:flex-start;gap:20px}.electricPanel{padding:25px}.mapPlaceholder{padding:26px 20px}.lightbox[open]{padding:70px 15px 25px}.lightbox img{max-width:calc(100vw - 30px)}}
@media(prefers-reduced-motion:no-preference){.heroContent{animation:enterText .65s ease-out both}.heroVisual{animation:enterPhoto .85s ease-out both}@keyframes enterText{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes enterPhoto{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

@media(max-width:620px){.project:not(.large):not(.wide) figcaption:after{display:none}.projectGrid .project:not(.large):not(.wide) strong{padding-right:0;font-size:1.15rem;overflow-wrap:break-word}}

/* Accueil : priorité aux travaux électriques. */
.electricityHero .heroGrid {
  padding-bottom: 44px;
}
.electricityHero .heroContent {
  padding-bottom: 0;
}
.electricityHero h1 {
  font-size: clamp(3rem, 8.1vw, 8rem);
}
.electricityHero .heroBottom a:first-child {
  color: #ddd;
}
.electricityHero .heroBottom a:hover,
.electricityHero .heroGalleryLink:hover {
  color: var(--yellow);
}
.electricityVisual {
  margin: 0;
  padding: clamp(18px, 3vw, 36px);
  border: 1px solid #535034;
  background:
    linear-gradient(#ffd21f12 1px, transparent 1px),
    linear-gradient(90deg, #ffd21f12 1px, transparent 1px),
    radial-gradient(ellipse at center, #3a310d, #14130e 72%);
  background-size: 24px 24px, 24px 24px, 100% 100%;
}
.electricityVisualLabel {
  margin: 0;
  color: var(--yellow);
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.electricityDiagram {
  display: block;
  width: 100%;
  height: auto;
  margin: 8px 0 14px;
  color: var(--yellow);
}
.electricityVisualList {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  justify-content: space-between;
  margin: 0;
  padding: 14px 0 0;
  border-top: 1px solid #77704a;
  list-style: none;
  color: #f2f2ee;
  font-size: .875rem;
}
@media (max-width: 620px) {
  .electricityHero h1 {
    font-size: clamp(2.75rem, 11.6vw, 4.5rem);
  }
  .electricityHero .actions {
    flex-wrap: wrap;
    gap: 8px 18px;
  }
  .electricityHero .heroGrid {
    padding-bottom: 0;
  }
  .electricityHero .heroBottom {
    flex-wrap: wrap;
    gap: 8px 20px;
  }
  .electricityVisualList {
    gap: 6px 12px;
    font-size: .8125rem;
  }
}

.electricGallery {
  background: #111;
}
.electricGallery .sectionHead > p,
.electricPhotoIntro p {
  color: #c6c6be;
}
.electricGalleryLink,
.electricGalleryHomeLink {
  color: var(--yellow);
}
.electricGalleryLink {
  margin-top: 12px;
}
.electricGalleryHomeLink {
  display: inline-block;
  margin-top: 6px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: .2em;
}
.electricPhotoSeries {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
  gap: 32px;
  padding: 32px 0;
  border-top: 1px solid #3d3d3d;
}
.electricPhotoSeries:last-child {
  padding-bottom: 0;
}
.electricPhotoIntro h3 {
  margin: 0;
  font-size: clamp(1.85rem, 2.7vw, 2.8rem);
}
.electricPhotoIntro p {
  margin: 10px 0 0;
  font-size: .9375rem;
}
.electricPhotoGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.electricPhoto {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: #1c1c1c;
  border: 1px solid #3d3d3d;
}
.electricPhoto:hover {
  border-color: var(--yellow);
}
.electricPhoto img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.electricPhoto:only-child {
  grid-column: span 2;
  width: min(100%, 540px);
}
.electricPhoto:only-child img {
  aspect-ratio: 16 / 9;
}
.electricPhotoCaption {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  padding: 12px;
  font-size: .875rem;
  line-height: 1.4;
}
.electricPhotoCaption > span {
  flex: 0 0 20px;
  color: var(--yellow);
  font-size: 1.125rem;
  line-height: 1;
  text-align: right;
}
@media (max-width: 1024px) {
  .electricPhotoGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .electricPhotoSeries {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 24px 0;
  }
  .electricPhotoGrid {
    gap: 10px;
  }
  .electricPhotoCaption {
    padding: 9px;
    font-size: .8125rem;
  }
}
