:root{--navy:#102633;--navy2:#173847;--ink:#172028;--paper:#f4f1eb;--white:#fff;--muted:#69757b;--copper:#b97745;--copper2:#dda873;--line:rgba(23,32,40,.12);--shadow:0 24px 70px rgba(16,38,51,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Manrope",system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.topbar{background:#081923;color:#dfe7ea;font-size:.78rem}.topbar__inner{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.topbar a{color:var(--copper2);font-weight:800}.site-header{position:sticky;top:0;z-index:50;background:rgba(248,246,242,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(16,38,51,.08)}.nav-wrap{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand img{width:300px;height:78px;object-fit:contain;object-position:left center}.main-nav{display:flex;align-items:center;gap:28px;font-size:.88rem;font-weight:800}.main-nav>a:not(.btn){position:relative}.main-nav>a:not(.btn):after{content:"";position:absolute;left:0;right:100%;height:2px;bottom:-7px;background:var(--copper);transition:.25s}.main-nav>a:hover:after{right:0}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{display:block;width:26px;height:2px;background:var(--ink);margin:5px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;border:1px solid transparent;font-weight:900;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn--small{padding:10px 17px}.btn--copper{background:linear-gradient(135deg,var(--copper),var(--copper2));color:#17120e;box-shadow:0 10px 25px rgba(185,119,69,.22)}.btn--ghost{border-color:rgba(255,255,255,.55);color:#fff;background:rgba(255,255,255,.05)}.btn--ghost:hover{background:#fff;color:var(--navy)}.btn--dark{background:var(--navy);color:#fff}.btn--full{width:100%;border-radius:14px}.hero{min-height:760px;position:relative;display:flex;align-items:center;color:#fff;background:linear-gradient(135deg,#0b1c26,#153544);overflow:hidden}.roof-grid{position:absolute;inset:0;background:linear-gradient(150deg,transparent 0 45%,rgba(255,255,255,.04) 45.1% 47%,transparent 47.1%),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 2px,transparent 2px 46px),repeating-linear-gradient(90deg,rgba(255,255,255,.02) 0 2px,transparent 2px 72px);transform:scale(1.2) rotate(-6deg);transform-origin:center}.hero:after{content:"";position:absolute;width:680px;height:680px;border:1px solid rgba(221,168,115,.14);border-radius:50%;right:-190px;top:-150px;box-shadow:0 0 0 90px rgba(221,168,115,.025),0 0 0 180px rgba(221,168,115,.018)}.hero__shade{position:absolute;inset:0;background:radial-gradient(circle at 72% 28%,rgba(221,168,115,.11),transparent 28%),linear-gradient(90deg,rgba(7,19,26,.94),rgba(12,35,47,.68) 60%,rgba(12,35,47,.34))}.hero__content{position:relative;z-index:2;padding:100px 0 130px}.eyebrow,.kicker{display:block;font-size:.7rem;font-weight:900;letter-spacing:.2em;color:var(--copper);text-transform:uppercase}.hero h1,.section h2,.cta-band h2{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;line-height:.88}.hero h1{font-size:clamp(5rem,9vw,8.3rem);margin:16px 0 28px;max-width:850px}.hero h1 span{color:var(--copper2)}.hero__content>p{max-width:660px;font-size:1.08rem;color:#cbd7dc}.hero__actions{display:flex;gap:12px;margin-top:32px}.hero__proof{display:grid;grid-template-columns:repeat(3,1fr);max-width:720px;gap:22px;margin-top:58px}.hero__proof div{border-left:1px solid rgba(255,255,255,.14);padding-left:18px}.hero__proof strong{display:block;font-family:"Barlow Condensed";font-size:1.7rem;color:var(--copper2);text-transform:uppercase}.hero__proof span{font-size:.73rem;color:#aebdc4}.hero__scroll{position:absolute;z-index:2;bottom:30px;left:50%;transform:translateX(-50%);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#9aabb3}.hero__scroll span{color:var(--copper2);margin-left:7px}.trust-strip{background:#071923;color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid article{padding:28px 24px;border-right:1px solid rgba(255,255,255,.08)}.trust-grid article:last-child{border-right:0}.trust-grid article>span{font-family:"Barlow Condensed";color:var(--copper);font-size:1.25rem;font-weight:900}.trust-grid strong,.trust-grid small{display:block}.trust-grid strong{font-family:"Barlow Condensed";font-size:1.55rem;text-transform:uppercase}.trust-grid small{font-size:.71rem;color:#91a0a7}.section{padding:110px 0}.section--paper{background:var(--paper)}.section-head{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:55px}.section-head h2,.expertise-copy h2,.zone-grid h2,.contact-copy h2{font-family:"Barlow Condensed";font-size:clamp(3.4rem,6vw,5.8rem);text-transform:uppercase;line-height:.9;margin:8px 0 0}.section-head p{color:var(--muted);max-width:520px}.services-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:16px}.service-card{background:#fff;border:1px solid rgba(16,38,51,.07);border-radius:22px;padding:30px;min-height:305px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(16,38,51,.035)}.service-card--feature{grid-row:span 2;padding:0;overflow:hidden;min-height:626px;color:#fff;background:var(--navy)}.slate-visual{height:64%;position:relative;background:linear-gradient(155deg,rgba(255,255,255,.02),rgba(0,0,0,.18)),repeating-linear-gradient(0deg,#27404e 0 32px,#1b3341 32px 35px),repeating-linear-gradient(90deg,transparent 0 70px,rgba(255,255,255,.05) 70px 72px);display:flex;align-items:flex-end;padding:25px}.slate-visual:after{content:"";position:absolute;left:10%;right:10%;bottom:20%;height:5px;background:var(--copper);transform:rotate(-7deg)}.slate-visual span{position:relative;z-index:2;font-family:"Barlow Condensed";font-size:4rem;font-weight:900;letter-spacing:.03em;color:rgba(255,255,255,.13)}.service-card__content{padding:28px 30px}.service-card__content>span,.num{font-family:"Barlow Condensed";font-size:1.3rem;color:var(--copper);font-weight:900}.service-card h3{font-family:"Barlow Condensed";font-size:2.25rem;text-transform:uppercase;line-height:.95;margin:20px 0 12px}.service-card--feature h3{font-size:3rem;margin:7px 0 10px}.service-card p{margin:0;color:var(--muted);font-size:.86rem}.service-card--feature p{color:#bcc9cf}.service-card i{width:46px;height:3px;background:var(--copper);margin-top:auto}.section--navy{background:var(--navy);color:#fff}.expertise-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.roof-card{height:640px;border-radius:26px;overflow:hidden;position:relative;background:linear-gradient(180deg,#c7d3d9 0 34%,#e7e1d7 34% 100%);box-shadow:0 30px 70px rgba(0,0,0,.28)}.roof-plane{position:absolute;left:-5%;right:-5%;bottom:9%;height:58%;background:repeating-linear-gradient(0deg,#253946 0 24px,#1d313d 24px 27px);clip-path:polygon(0 100%,19% 24%,50% 0,82% 24%,100% 100%)}.ridge{position:absolute;left:48%;top:0;width:7%;height:100%;background:linear-gradient(90deg,#101f28,#415763);transform:skewX(-5deg)}.chimney{position:absolute;right:23%;top:20%;width:54px;height:140px;background:#e2e4e1;border-top:10px solid #24313a}.roof-caption{position:absolute;left:25px;right:25px;bottom:25px;background:rgba(7,19,26,.8);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px);padding:16px 18px;border-radius:14px}.roof-caption span{display:block;color:var(--copper2);font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;font-weight:900}.roof-caption strong{font-family:"Barlow Condensed";font-size:1.7rem;text-transform:uppercase}.expertise-copy>p{color:#afbdc4}.kicker--copper{color:var(--copper2)}.steps{margin:30px 0}.steps>div{display:grid;grid-template-columns:52px 1fr;gap:14px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1)}.steps span{font-family:"Barlow Condensed";font-size:1.6rem;font-weight:900;color:var(--copper2)}.steps p{margin:0;color:#aab8be;font-size:.83rem}.steps strong{color:#fff}.text-link{display:inline-flex;gap:10px;align-items:center;font-weight:900}.text-link span{color:var(--copper2);font-size:1.25rem}.materials-section{background:#fff}.section-head.compact{margin-bottom:40px}.materials-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.materials-grid article{padding:26px;border:1px solid var(--line);border-radius:20px}.materials-grid h3{font-family:"Barlow Condensed";font-size:2rem;text-transform:uppercase;margin:18px 0 8px}.materials-grid p{font-size:.82rem;color:var(--muted)}.material-icon{height:115px;border-radius:14px;overflow:hidden}.material-icon.slate{background:repeating-linear-gradient(0deg,#223945 0 24px,#152b36 24px 27px)}.material-icon.zinc{background:linear-gradient(120deg,#7f969f,#d3dbde 46%,#788f99)}.material-icon.tile{background:repeating-linear-gradient(90deg,#a85e3e 0 27px,#c97a56 27px 42px)}.material-icon.steel{background:repeating-linear-gradient(90deg,#54646b 0 18px,#89989e 18px 30px)}.zone-section{background:#eae4db}.zone-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.zone-grid p{color:var(--muted);max-width:580px}.city-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.city-pills span{background:#fff;border:1px solid var(--line);padding:8px 13px;border-radius:999px;font-size:.73rem;font-weight:800}.map-art{height:520px;border-radius:28px;background:radial-gradient(circle at center,#1d3b4a,#0f2835 70%);position:relative;overflow:hidden;box-shadow:var(--shadow)}.map-art:before{content:"";position:absolute;inset:0;background:linear-gradient(35deg,transparent 40%,rgba(255,255,255,.035) 41% 42%,transparent 43%),linear-gradient(-35deg,transparent 38%,rgba(255,255,255,.025) 39% 40%,transparent 41%)}.ring{position:absolute;border:1px solid rgba(221,168,115,.22);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.ring-1{width:170px;height:170px}.ring-2{width:300px;height:300px}.ring-3{width:440px;height:440px}.pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:95px;height:95px;background:var(--copper);border-radius:50% 50% 50% 10%;rotate:-45deg;display:grid;place-items:center;box-shadow:0 15px 40px rgba(0,0,0,.3)}.pin b,.pin small{rotate:45deg;position:absolute}.pin b{font-family:"Barlow Condensed";font-size:2.4rem;top:18px}.pin small{font-size:.56rem;font-weight:900;bottom:18px;letter-spacing:.1em}.cta-band{background:var(--copper);padding:44px 0}.cta-band__inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-band span{font-size:.7rem;font-weight:900;letter-spacing:.18em}.cta-band h2{font-size:3.6rem;margin:3px 0 0}.contact-section{background:#081923;color:#fff;position:relative;overflow:hidden}.contact-section:before{content:"";position:absolute;width:600px;height:600px;border:1px solid rgba(221,168,115,.1);border-radius:50%;left:-220px;top:-180px;box-shadow:0 0 0 90px rgba(221,168,115,.02),0 0 0 180px rgba(221,168,115,.015)}.contact-grid{position:relative;display:grid;grid-template-columns:1fr .9fr;gap:80px;align-items:center}.contact-copy>p{color:#aab8bf}.contact-details{margin-top:35px}.contact-details>a,.contact-details>div{display:flex;flex-direction:column;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.1)}.contact-details span{color:var(--copper2);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;font-weight:900}.contact-details strong{font-size:1.08rem;margin-top:3px}.contact-panel{background:#fff;color:var(--ink);padding:38px;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.contact-panel img{width:310px;max-height:88px;object-fit:contain;object-position:left;margin-bottom:24px}.contact-panel h3{font-family:"Barlow Condensed";font-size:3rem;text-transform:uppercase;margin:0 0 12px}.contact-panel p{color:var(--muted);font-size:.88rem}.contact-panel small{display:block;text-align:center;margin-top:12px;color:#78858b;font-size:.7rem}.site-footer{background:#050f15;color:#91a0a7;padding:55px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr .6fr .8fr;gap:60px}.footer-logo{width:320px;filter:brightness(1.15)}.footer-grid p{max-width:450px;font-size:.82rem}.footer-grid>div:nth-child(n+2){display:flex;flex-direction:column;gap:8px;font-size:.82rem}.footer-grid h4{font-family:"Barlow Condensed";font-size:1.25rem;text-transform:uppercase;color:var(--copper2);margin:0 0 10px}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.07);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.7rem;color:#66757c}.floating-call{position:fixed;right:18px;bottom:18px;z-index:70;background:var(--copper);color:#17120e;border-radius:999px;padding:12px 17px;box-shadow:0 15px 35px rgba(0,0,0,.22);display:none;align-items:center;gap:8px;font-size:.84rem}
@media(max-width:980px){.main-nav{display:none;position:absolute;left:20px;right:20px;top:84px;background:#fff;border-radius:18px;padding:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:5px}.main-nav.is-open{display:flex}.main-nav a{padding:9px}.menu-toggle{display:block}.hero{min-height:690px}.hero__proof{grid-template-columns:1fr 1fr}.hero__proof div:last-child{display:none}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid article:nth-child(2){border-right:0}.section-head,.expertise-grid,.zone-grid,.contact-grid{grid-template-columns:1fr;gap:38px}.services-grid{grid-template-columns:1fr 1fr}.service-card--feature{grid-column:1/-1;grid-row:auto;min-height:500px}.materials-grid{grid-template-columns:1fr 1fr}.roof-card,.map-art{height:520px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:680px){.container{width:min(100% - 28px,1180px)}.topbar__inner{justify-content:center}.topbar__inner span{display:none}.nav-wrap{min-height:74px}.brand img{width:220px;height:60px}.main-nav{top:68px}.hero{min-height:650px}.hero__content{padding:72px 0 100px}.hero h1{font-size:clamp(4.2rem,18vw,6.2rem)}.hero__content>p{font-size:.95rem}.hero__actions{flex-direction:column}.hero__actions .btn{width:100%}.hero__proof{grid-template-columns:1fr}.hero__proof div:nth-child(n+2){display:none}.hero__scroll{display:none}.trust-grid{grid-template-columns:1fr}.trust-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.section{padding:78px 0}.section-head{margin-bottom:34px}.section-head h2,.expertise-copy h2,.zone-grid h2,.contact-copy h2{font-size:clamp(3rem,14vw,4.7rem)}.services-grid,.materials-grid{grid-template-columns:1fr}.service-card--feature{grid-column:auto;min-height:450px}.service-card{min-height:260px}.roof-card,.map-art{height:410px}.cta-band__inner{flex-direction:column;align-items:flex-start}.cta-band h2{font-size:2.8rem}.contact-panel{padding:25px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.floating-call{display:flex}}


/* --- Photos de chantier --- */
.hero{background-image:linear-gradient(90deg,rgba(5,18,25,.92),rgba(8,25,34,.58),rgba(8,25,34,.18)),url("assets/toiture-facade-renovee.png");background-size:cover;background-position:center 44%;}
.roof-grid{display:none}
.hero__shade{background:linear-gradient(180deg,rgba(5,16,23,.06),rgba(5,16,23,.34))}
.service-photo{height:64%;position:relative;overflow:hidden;background:#152b36}
.service-photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.9) contrast(1.04)}
.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(8,25,35,.84))}
.service-photo span{position:absolute;left:25px;bottom:18px;z-index:2;font-family:"Barlow Condensed";font-size:4rem;font-weight:900;letter-spacing:.03em;color:rgba(255,255,255,.82)}
.roof-card--photo{background:#0e2734}
.roof-card--photo>img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.gallery-section{background:#f1ece4}
.gallery-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:290px 290px;gap:14px}
.gallery-item{margin:0;position:relative;overflow:hidden;border-radius:20px;background:#102633;box-shadow:0 12px 34px rgba(16,38,51,.08)}
.gallery-item--large{grid-row:1/3}
.gallery-item--wide{grid-column:2/4}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.gallery-item:hover img{transform:scale(1.035)}
.gallery-item figcaption{position:absolute;left:14px;bottom:14px;background:rgba(6,20,28,.82);backdrop-filter:blur(7px);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:7px 12px;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:980px){.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:260px 260px 260px}.gallery-item--large{grid-row:1/3}.gallery-item--wide{grid-column:1/3}.hero{background-position:58% center}}
@media(max-width:680px){.gallery-grid{grid-template-columns:1fr;grid-template-rows:none}.gallery-item,.gallery-item--large,.gallery-item--wide{grid-column:auto;grid-row:auto;height:270px}.hero{background-position:61% center}.service-photo span{font-size:3rem}}


/* --- Nouvelles sections et galerie enrichie --- */
.before-after-section{background:#fff}
.before-after-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:68px;align-items:center}
.before-after-visual img{width:100%;border-radius:26px;box-shadow:0 24px 64px rgba(16,38,51,.12)}
.before-after-copy h2{font-family:"Barlow Condensed",sans-serif;font-size:clamp(3.2rem,5.7vw,5.4rem);text-transform:uppercase;line-height:.92;margin:10px 0 18px}
.before-after-copy p{color:var(--muted);max-width:540px}
.tick-list{list-style:none;padding:0;margin:28px 0 0}
.tick-list li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid var(--line);font-weight:700}
.tick-list li:before{content:"✓";position:absolute;left:0;top:12px;color:var(--copper);font-weight:900}
.gallery-grid--rich{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:250px;gap:14px}
.gallery-grid--rich .gallery-item{height:auto}
.gallery-grid--rich .gallery-item--tall{grid-row:span 2}
.gallery-grid--rich .gallery-item--wide{grid-column:span 2}
@media(max-width:980px){.before-after-grid{grid-template-columns:1fr;gap:36px}.gallery-grid--rich{grid-template-columns:1fr 1fr;grid-auto-rows:240px}.gallery-grid--rich .gallery-item--wide{grid-column:span 2}.gallery-grid--rich .gallery-item--tall{grid-row:span 2}}
@media(max-width:680px){.before-after-copy h2{font-size:clamp(3rem,14vw,4.7rem)}.gallery-grid--rich{grid-template-columns:1fr;grid-auto-rows:auto}.gallery-grid--rich .gallery-item,.gallery-grid--rich .gallery-item--wide,.gallery-grid--rich .gallery-item--tall{grid-column:auto;grid-row:auto;height:270px}}
