/* Greenkub — LP Maison. Design system Greenkub, univers maison (jaune). */
:root{--rule:var(--gk-mediumgrey);--ink:var(--gk-black);--muted:var(--gk-grey);--gut:80px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;padding:0 0 88px;background:var(--gk-white);font-family:var(--gk-font-body,Avenir),sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:var(--gk-green);text-decoration:none}
a:hover{color:var(--gk-black)}
img{display:block;max-width:100%}
[data-ds]{display:inline-block}
[data-ds] div{cursor:pointer;transition:background-color .16s ease,color .16s ease,border-color .16s ease}

/* type */
.t-xl{font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:80px;line-height:.98;letter-spacing:-.015em;margin:0;text-wrap:balance}
.t-lg{font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:48px;line-height:1.04;letter-spacing:-.01em;margin:0;text-wrap:pretty}
.t-md{font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:32px;line-height:1.06;margin:0}
.t-sm{font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:24px;line-height:1.12;margin:0}
.cap{font-family:var(--gk-font-title,Raleway);font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase;margin:0}
.body{font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:400;font-size:16px;line-height:1.6;margin:0}
.lead{font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:400;font-size:20px;line-height:1.5;margin:0}
.num{font-family:var(--gk-font-title,Raleway);font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:.9;margin:0}
.muted{color:var(--muted)}
.green{color:var(--gk-green)}
.hl{background:var(--gk-yellow);color:var(--gk-black);padding:.03em .2em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.eyebrow{font-family:var(--gk-font-title,Raleway);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 24px;color:var(--gk-green);display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:32px;height:3px;background:var(--gk-green)}
.eyebrow.y{color:var(--gk-yellow)}
.eyebrow.y::before{background:var(--gk-yellow)}

/* layout */
.sec{padding:120px var(--gut)}
.sec.tight{padding-top:88px;padding-bottom:88px}
.sec.grey{background:var(--gk-lightgrey)}
.sec.dark{background:var(--gk-black);color:var(--gk-white)}
.sec.dark .t-lg,.sec.dark .t-md,.sec.dark .num{color:var(--gk-white)}
.wrap{max-width:1280px;margin:0 auto}
.bleed{position:relative;background:var(--gk-lightgrey);overflow:hidden}
.bleed>img,.bleed>image-slot,.bleed>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto}
.hd-row{display:flex;align-items:flex-end;justify-content:space-between;gap:56px;flex-wrap:wrap}

/* CTA */
.cta-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.cta-row.center{justify-content:center}
.cta-band{display:flex;justify-content:center;gap:16px;margin-top:72px;flex-wrap:wrap}
.cta-p>div{background-color:var(--gk-green)!important;box-shadow:none!important}
.cta-p>div:hover{filter:brightness(.93)}
.cta-sec>div{border-color:var(--gk-green)!important;box-shadow:none!important}
.cta-sec>div>span{color:var(--gk-green)!important}
.cta-sec>div:hover{background-color:var(--gk-green)!important}
.cta-sec>div:hover>span{color:var(--gk-white)!important}
.cta-white>div{border-color:#fff!important;box-shadow:none!important}
.cta-white>div>span{color:#fff!important}
.cta-white>div:hover{background-color:rgba(255,255,255,.14)!important}
.cta-sm>div{height:44px!important;padding:8px 20px!important}
.cta-sm>div>span{font-size:16px!important}
.lnk{display:inline-flex;align-items:center;gap:8px;font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:800;font-size:16px;color:var(--gk-green);border-bottom:2px solid var(--gk-green);padding-bottom:4px}
.lnk:hover{color:var(--gk-black);border-bottom-color:var(--gk-black)}

/* header */
.hd{position:absolute;left:24px;right:24px;top:24px;height:64px;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-radius:16px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 24px;z-index:60;box-shadow:var(--gk-shadow-float)}
.hd img{height:32px}
.hd-r{display:flex;align-items:center;gap:12px}
.hd-tel{font-family:var(--gk-font-title,Raleway);font-weight:700;font-size:15px;color:var(--gk-black);font-variant-numeric:tabular-nums}
.hd-tel:hover{color:var(--gk-green)}

/* barre CTA collante — masquée jusqu'à ce qu'on ait scrollé */
.sticky{position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-top:1px solid var(--rule);padding:16px var(--gut);display:flex;align-items:center;justify-content:flex-end;gap:16px;z-index:60;transform:translateY(100%);transition:transform .3s ease;pointer-events:none}
.sticky.show{transform:translateY(0);pointer-events:auto}
.sticky p{margin:0;margin-right:auto;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:18px}

/* hero */
.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;background:#3a3a3a;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.48) 45%,rgba(0,0,0,.1) 100%)}
.hero-in{position:relative;padding:0 var(--gut) 120px;max-width:900px}
.hero-in .lead{color:rgba(255,255,255,.8);margin-top:28px;max-width:620px}

/* bande de chiffres */
.stats{background:var(--gk-lightgrey);display:grid;grid-template-columns:repeat(4,1fr);gap:40px;padding:64px var(--gut)}
.stats .num{font-size:38px}
.stats .num em{font-style:normal;font-size:.62em}
.stats .cap{margin-top:16px;font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:400;font-size:14px;letter-spacing:0;text-transform:none;color:var(--gk-darkgrey)}

/* manifeste illustré */
.mani{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px var(--gut)}
.mani .ill{width:150px;height:110px;position:relative;margin-bottom:40px}
.mani .ill image-slot{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
.mani p{max-width:760px;text-wrap:balance}

/* image encadrée jaune */
.framed{background:var(--gk-yellow);padding:12px}
.framed>div{position:relative;height:520px;overflow:hidden;background:var(--gk-lightgrey)}
.framed image-slot,.framed img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto}

/* mosaïque */
.mos-hd{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.mos-g{margin-top:56px;display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:16px}
.mos-c{display:grid;gap:16px}
.mos-c1{grid-template-rows:280px 400px}
.mos-c2{grid-template-rows:696px}
.mos-c3{grid-template-rows:340px 340px}
.mos-card{position:relative;border-radius:8px;overflow:hidden;background:var(--gk-lightgrey)}
.mos-card::after{content:"";position:absolute;left:0;right:0;top:0;height:180px;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,0));z-index:1;pointer-events:none}
.mos-card .lbl{position:absolute;left:24px;top:22px;right:24px;z-index:2;margin:0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:22px;line-height:1.2;color:var(--gk-white);text-wrap:pretty}
.mos-card .lbl span{display:block;font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:400;font-size:14px;margin-top:6px;color:rgba(255,255,255,.85)}
.mos-card>image-slot{position:absolute;inset:0;width:auto;height:auto;aspect-ratio:auto}
.mos-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mos-solid{background:var(--gk-green);border-radius:8px;padding:28px;display:flex;flex-direction:column;justify-content:space-between}
.mos-solid p{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:28px;line-height:1.1;color:var(--gk-white)}
.mos-solid a{font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:800;font-size:15px;color:var(--gk-white);border-bottom:2px solid rgba(255,255,255,.5);padding-bottom:4px;align-self:flex-start}
.mos-solid a:hover{color:var(--gk-white);border-bottom-color:var(--gk-white)}

/* 3 raisons */
.why{margin-top:72px;display:grid;grid-template-columns:repeat(3,1fr);gap:48px;position:relative}
.why::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--rule)}
.why-i{padding-top:36px;position:relative}
.why-i::before{content:"";position:absolute;left:0;top:-4px;width:9px;height:9px;border-radius:50%;background:var(--gk-green)}
.why-i .n{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:13px;letter-spacing:.1em;color:var(--gk-green)}
.why-i h3{margin:20px 0 0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:26px;line-height:1.12;max-width:280px}
.why-i p{margin:14px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:16px;line-height:1.55;color:var(--gk-darkgrey)}

/* modèles */
.mdl-g{margin-top:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px 32px}
.mdl-c{display:flex;flex-direction:column}
.mdl-ph{position:relative;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:var(--gk-lightgrey)}
.mdl-ph img{width:100%;height:100%;object-fit:cover}
.mdl-ph .badge{position:absolute;left:16px;top:16px;background:var(--gk-yellow);color:var(--gk-black);border-radius:80px;padding:7px 14px;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.mdl-c .kicker{margin:20px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:13px;color:var(--muted)}
.mdl-c .s{margin:10px 0 0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:44px;line-height:1;font-variant-numeric:tabular-nums}
.mdl-c ul{margin:18px 0 0;padding:0;list-style:none;display:flex;flex-direction:column}
.mdl-c li{padding:11px 0;border-top:1px solid var(--rule);font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px;color:var(--gk-darkgrey)}
.mdl-c .p{margin:24px 0 0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:22px;line-height:1;font-variant-numeric:tabular-nums;border-bottom:6px solid var(--gk-yellow);padding-bottom:6px;align-self:flex-start}
.mdl-c .go{margin-top:auto;padding-top:24px}

/* split image + liste */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.duo.rev>div:first-child{order:2}
.duo-ph{position:relative;height:600px;border-radius:8px;overflow:hidden;background:var(--gk-lightgrey)}
.duo-ph img,.duo-ph image-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto}
.chk{margin:40px 0 0;padding:0;list-style:none;display:flex;flex-direction:column}
.chk li{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-top:1px solid var(--rule);font-family:var(--gk-font-body,Avenir),sans-serif;font-size:18px;line-height:1.35}
.chk li:last-child{border-bottom:1px solid var(--rule)}
.chk li i{flex:none;width:20px;height:20px;margin-top:2px;color:var(--gk-green)}

/* satisfaction */
.sat-g{margin-top:64px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.sat-i{padding:40px;border-left:1px solid var(--rule)}
.sat-i:first-child{padding-left:0;border-left:0}
.sat-i .cap{color:var(--muted)}
.sat-i .v{margin:24px 0 0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:52px;line-height:.95;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:12px}
.sat-i .v img{height:26px;width:auto}
.sat-i p{margin:20px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:14px;line-height:1.5;color:var(--gk-darkgrey)}
.sat-i .marks{display:flex;align-items:center;gap:14px;margin-top:20px;flex-wrap:wrap}
.sat-i .marks img{height:22px;width:auto}
.pct-g{margin-top:56px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.pct-i{border-top:6px solid var(--gk-green);padding-top:24px}
.pct-i .cap{display:flex;align-items:center;gap:10px;color:var(--gk-darkgrey)}
.pct-i .cap img{height:22px;width:22px}
.pct-i .num{margin-top:24px;font-size:64px}
.pct-i p{margin:16px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px;line-height:1.5;color:var(--gk-darkgrey);max-width:260px}
.kw{margin-top:56px;display:flex;flex-wrap:wrap;gap:12px}
.kw span{background:var(--gk-white);border:1px solid var(--rule);border-radius:80px;padding:10px 18px;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px}
.kw span b{color:var(--gk-green)}
.testi-g{margin-top:56px;display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.testi{background:var(--gk-white);border-radius:8px;padding:32px;display:flex;flex-direction:column}
.testi .q{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:40px;line-height:.6;color:var(--gk-yellow)}
.testi h4{margin:20px 0 0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:20px;line-height:1.2}
.testi p{margin:16px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px;line-height:1.6;color:var(--gk-darkgrey)}
.testi .who{margin-top:auto;padding-top:28px;display:flex;align-items:center;gap:14px}
.testi .av{width:44px;height:44px;border-radius:50%;background:var(--gk-green-10);color:var(--gk-green);display:flex;align-items:center;justify-content:center;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:14px;flex:none}
.testi .who b{display:block;font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:800;font-size:15px}
.testi .who span span{display:block;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:13px;color:var(--muted)}
.testi .who img{height:18px;margin-left:auto}
.src{margin:56px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:13px;line-height:1.55;color:var(--muted);max-width:900px}
.src b{color:var(--gk-darkgrey)}

/* 3 étapes avec image */
.step3{margin-top:72px;display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.step3-i .ph{position:relative;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:var(--gk-lightgrey)}
.step3-i .ph img{width:100%;height:100%;object-fit:cover}
.step3-i h3{margin:24px 0 0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:26px;line-height:1.1;display:flex;align-items:baseline;gap:14px}
.step3-i h3 em{font-style:normal;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:14px;letter-spacing:.08em;color:var(--gk-green)}
.step3-i p{margin:14px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:16px;line-height:1.55;color:var(--gk-darkgrey)}

/* expertise */
.exp-g{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:56px}
.exp-i{display:flex;flex-direction:column;gap:20px}
.exp-i img{height:40px;width:40px}
.exp-i .num{font-size:60px}
.exp-i p{margin:0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px;line-height:1.5;color:var(--gk-darkgrey)}

/* bandeau image + phrase */
.claim{position:relative;min-height:70vh;display:flex;align-items:center;justify-content:center;text-align:center;background:#3a3a3a;overflow:hidden;padding:120px var(--gut)}
.claim>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.claim::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.42)}
.claim p{position:relative;color:#fff;max-width:900px;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:60px;line-height:1.05;margin:0;text-wrap:balance}

/* révolution */
.rev-g{margin-top:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.rev-i{border-top:1px solid rgba(255,255,255,.24);padding-top:28px}
.rev-i h3{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:34px;line-height:1;color:var(--gk-yellow)}
.rev-i p{margin:18px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:16px;line-height:1.55;color:rgba(255,255,255,.72)}
.vid{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#000;margin-top:56px}
.vid video,.vid image-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto}

/* intérieurs */
.tabs{margin-top:40px;display:flex;gap:12px;flex-wrap:wrap}
.tab{font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:500;font-size:16px;padding:14px 24px;border-radius:80px;border:2px solid var(--gk-green);background:transparent;color:var(--gk-black);cursor:pointer;transition:background-color .16s ease,color .16s ease}
.tab:hover{background:var(--gk-green-10)}
.tab[aria-selected="true"]{background:var(--gk-green);color:#fff}
.tab-p{margin-top:32px;position:relative;height:620px;border-radius:8px;overflow:hidden;background:var(--gk-lightgrey);display:none}
.tab-p.on{display:block}
.tab-p image-slot{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}

/* garanties */
.gar-g{margin-top:64px;display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.gar-i{background:var(--gk-white);border-radius:8px;padding:32px;display:flex;flex-direction:column;gap:20px}
.gar-i img{height:40px;width:40px}
.gar-i h3{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:20px;line-height:1.2}
.gar-i .v{margin:auto 0 0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:28px;line-height:1;border-bottom:6px solid var(--gk-yellow);padding-bottom:6px;align-self:flex-start}

/* procédé */
.proc-g{margin-top:56px;display:grid;grid-template-columns:repeat(3,1fr);gap:48px 40px}
.proc-i{display:flex;flex-direction:column;border-top:1px solid var(--rule);padding-top:28px}
.proc-i img{height:32px;width:32px;margin-bottom:20px}
.proc-i h3{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:22px;line-height:1.15}
.proc-i p{margin:14px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px;line-height:1.6;color:var(--gk-darkgrey)}
.proc-i .tag{margin-top:20px;align-self:flex-start;background:var(--gk-green-10);color:var(--gk-green);border-radius:80px;padding:7px 14px;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.eq{margin-top:80px;display:grid;grid-template-columns:auto 1fr;gap:64px;align-items:center;border-top:1px solid var(--rule);padding-top:56px}
.eq-v{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:80px;line-height:1;white-space:nowrap}
.eq-v span{color:var(--gk-green)}
.eq-v em{display:block;font-style:normal;font-family:var(--gk-font-body,Avenir),sans-serif;font-weight:400;font-size:15px;color:var(--muted);margin-top:16px}
.eq p{margin:0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:17px;line-height:1.65;color:var(--gk-darkgrey);max-width:640px}

/* parcours — grille de cartes, titre dans la première cellule */
.jrn{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.jrn-t{display:flex;flex-direction:column;justify-content:flex-start;padding:24px 40px 24px 0}
.jrn-c{position:relative;background:var(--gk-lightgrey);border-radius:16px;padding:32px;display:flex;flex-direction:column}
.jrn-c .n{position:relative;z-index:2;width:52px;height:52px;flex:none;border-radius:12px;background:var(--gk-green);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 0 28px;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:20px;font-variant-numeric:tabular-nums}
.jrn-c .ill{position:relative;height:220px;margin:8px 0 28px}
.jrn-c .ill image-slot{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;--is-bg:transparent}
.jrn-c h3{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:24px;line-height:1.15}
.jrn-c p{margin:16px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px;line-height:1.6;color:var(--gk-darkgrey)}
.jrn-c .tag{margin-top:20px;align-self:flex-start;background:var(--gk-yellow);color:var(--gk-black);border-radius:80px;padding:8px 16px;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:12px;letter-spacing:.04em;white-space:nowrap}
/* filets de liaison verts */
.jrn-c::before{content:"";position:absolute;top:58px;right:-24px;width:24px;height:1px;background:var(--gk-green);z-index:1}
.jrn-c:nth-child(3n)::before{display:none}

/* comparatif */
.cmp{margin-top:64px;border-top:1px solid var(--ink)}
.cmp-h{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:28px 0;border-bottom:1px solid var(--ink)}
.cmp-h>div:last-child{display:flex;align-items:center;gap:14px}
.cmp-h img{height:24px;width:auto}
.cmp-h .cap{color:var(--muted)}
.cmp-h .lb{font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:20px;line-height:1.15;margin:0}
.cmp-h .lb.g{color:var(--gk-green)}
.cmp-r{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:26px 0;border-bottom:1px solid var(--rule)}
.cmp-r>div{display:flex;gap:14px;align-items:flex-start}
.cmp-r i{flex:none;width:20px;height:20px;margin-top:3px;color:var(--muted)}
.cmp-r>div:last-child i{color:var(--gk-green)}
.cmp-r b{display:block;font-family:var(--gk-font-title,Raleway);font-weight:800;font-size:19px;line-height:1.2}
.cmp-r .c span{display:block;margin-top:8px;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:15px;line-height:1.45;color:var(--gk-darkgrey)}
.cmp-r>div:first-child b,.cmp-r>div:first-child .c span{color:var(--muted)}

/* financement */
.fin{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.fin-p{background:var(--gk-lightgrey);border-radius:8px;padding:40px}
.fin-p .h{margin:0 0 8px;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:14px;color:var(--muted)}
.fin-p .big{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:40px;line-height:1;font-variant-numeric:tabular-nums;border-bottom:6px solid var(--gk-yellow);padding-bottom:8px;display:inline-block}
.fin-r{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid var(--rule);font-family:var(--gk-font-body,Avenir),sans-serif;font-size:16px}
.fin-r:first-of-type{margin-top:32px;border-top:1px solid var(--rule)}
.fin-r b{font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:22px;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}
.fin-note{margin:24px 0 0;font-family:var(--gk-font-body,Avenir),sans-serif;font-size:12px;line-height:1.55;color:var(--muted)}

/* terrain */
.ter{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.ter-ph{position:relative;height:520px;border-radius:8px;overflow:hidden;background:var(--gk-lightgrey)}
.ter-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ter-tx{display:flex;flex-direction:column;justify-content:center}

/* FAQ */
.faq-l{margin-top:48px;display:flex;flex-direction:column;gap:12px;max-width:925px}
.faq-l>div{width:100%}
.faq-l>div>div{width:100%!important}

/* CTA final */
.final{text-align:center}
.final .lead{margin-top:20px;color:rgba(255,255,255,.7)}
.final .cta-row{margin-top:40px}
.final .tel{margin-top:32px;display:inline-flex;align-items:center;gap:12px;color:#fff;font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:26px;font-variant-numeric:tabular-nums}
.final .tel img{height:22px;width:22px}
.final .tel:hover{color:var(--gk-yellow)}

/* marquee + clôture */
.mq{overflow:hidden;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:22px 0;background:var(--gk-white)}
.mq-t{display:flex;gap:48px;white-space:nowrap;animation:mq 26s linear infinite}
.mq-t a{font-family:var(--gk-font-title,Raleway);font-weight:900;font-size:22px;letter-spacing:-.01em;color:var(--gk-black)}
.mq-t a:hover{color:var(--gk-green)}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* footer */
.ft{background:var(--gk-black);color:rgba(255,255,255,.6);padding:56px var(--gut);display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.ft ul{margin:0;padding:0;list-style:none;display:flex;gap:32px;flex-wrap:wrap}
.ft a{color:rgba(255,255,255,.6);font-family:var(--gk-font-title,Raleway);font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase}
.ft a:hover{color:#fff}
.ft p{margin:0;font-family:var(--gk-font-title,Raleway);font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase}

/* ---------- responsive ---------- */
@media (max-width:1100px){
.t-xl{font-size:56px}.t-lg{font-size:38px}.claim p{font-size:42px}
.why,.mdl-g,.step3,.exp-g,.rev-g,.proc-g,.testi-g,.pct-g{grid-template-columns:1fr 1fr}
.stats{grid-template-columns:1fr 1fr;gap:32px 40px}
.mani{padding:88px var(--gut)}
.framed>div{height:420px}
.gar-g,.sat-g{grid-template-columns:1fr 1fr}
.sat-i{border-left:1px solid var(--rule);border-top:1px solid var(--rule)}
.sat-i:nth-child(odd){padding-left:0;border-left:0}
.sat-i:nth-child(-n+2){border-top:0}
.duo,.fin,.ter{grid-template-columns:1fr;gap:40px}
.duo.rev>div:first-child{order:0}
.duo-ph{height:420px}
.eq{grid-template-columns:1fr;gap:32px}
.jrn{grid-template-columns:1fr 1fr}
.jrn-t{grid-column:1/-1;padding:0 0 8px}
.jrn-c:nth-child(3n)::before{display:block}
.jrn-c:nth-child(2n+1)::before{display:none}
.jrn-c .ill{height:190px}
}
@media (max-width:720px){
:root{--gut:16px}
body{padding-bottom:76px}
.t-xl{font-size:38px}.t-lg{font-size:28px}.t-md{font-size:22px}.t-sm{font-size:19px}
.lead{font-size:16px}
.sec{padding:64px var(--gut)}
.sec.tight{padding-top:48px;padding-bottom:48px}
.hd{left:8px;right:8px;top:8px;height:56px;padding:0 8px 0 14px}
.hd-tel{display:none}
.hd img{height:24px}
.hd .cta-sm>div{height:38px!important;padding:8px 14px!important}
.hd .cta-sm>div>span{font-size:14px!important}
/* hero */
.hero{min-height:92vh}
.hero>img{object-position:60% center}
.hero-scrim{background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.82) 100%)}
.hero-in{padding:0 var(--gut) 72px;max-width:none}
.hero-in .lead{margin-top:20px;max-width:none}
.hero-in .cta-row{margin-top:32px}
/* chiffres */
.stats{grid-template-columns:1fr 1fr;gap:28px 20px;padding:40px var(--gut)}
.stats .num{font-size:28px}
.stats .cap{margin-top:10px;font-size:13px}
/* manifeste + image encadrée */
.mani{padding:64px var(--gut)}
.framed{padding:8px}
.framed>div{height:220px}
/* mosaïque */
.mos-hd{flex-direction:column;align-items:flex-start;gap:16px}
.mos-g{grid-template-columns:1fr;margin-top:28px;gap:12px}
.mos-c{gap:12px}
.mos-c1,.mos-c2,.mos-c3{grid-template-rows:auto}
.mos-card{height:300px}
.mos-card .lbl{left:20px;top:18px;right:20px;font-size:20px}
.mos-solid{min-height:180px;padding:24px}
.mos-solid p{font-size:24px}
/* modèles */
.hd-row{gap:20px}
.mdl-g{grid-template-columns:1fr;gap:32px;margin-top:40px}
.mdl-c .s{font-size:34px}
.mdl-c .p{font-size:20px}
/* tarifs */
.duo,.fin,.ter{grid-template-columns:1fr;gap:32px}
.duo-ph{height:280px}
.chk{margin-top:28px}
.chk li{font-size:16px;padding:16px 0}
/* image atelier pleine page */
.bleed[style*="100vh"]{height:64vh!important}
.bleed[style*="60vh"]{height:44vh!important}
/* témoignages */
.testi-g{grid-template-columns:1fr;gap:16px;margin-top:0}
.testi{padding:24px}
.src{margin-top:40px}
/* construction repensée */
.step3{grid-template-columns:1fr;gap:32px;margin-top:40px}
.step3-i h3{font-size:22px}
/* parcours */
.jrn{grid-template-columns:1fr;gap:12px}
.jrn-c::before{display:none!important}
.jrn-t{padding:0 0 12px}
.jrn-c{padding:24px}
.jrn-c .n{width:44px;height:44px;font-size:18px;margin-bottom:20px}
.jrn-c h3{font-size:20px}
/* comparatif */
.cmp{margin-top:40px}
.cmp-h,.cmp-r{grid-template-columns:1fr;gap:16px}
.cmp-h{padding:20px 0}
.cmp-r{padding:20px 0}
.cmp-r b{font-size:17px}
/* CTA */
.cta-band{margin-top:40px;flex-direction:column;align-items:stretch}
.cta-band>div,.cta-band>div>div{width:100%!important}
.cta-row{flex-direction:column;align-items:stretch}
.cta-row>div,.cta-row>div>div{width:100%!important}
.mdl-ft{flex-direction:column;align-items:stretch;gap:12px}
.mdl-ft>div,.mdl-ft>div>div{width:100%!important}
/* barre collante : deux CTA seuls */
.sticky{padding:10px var(--gut);gap:8px;justify-content:stretch}
.sticky p{display:none}
.sticky>div{flex:1 1 0}
.sticky>div>div{width:100%!important;height:48px!important;padding:8px 10px!important}
.sticky>div>div>span{font-size:14px!important}
.faq-l{margin-top:32px}
.eq{grid-template-columns:1fr;gap:24px;margin-top:56px;padding-top:40px}
.eq-v{font-size:48px}
.ft{padding:40px var(--gut);flex-direction:column;align-items:flex-start;gap:20px}
}
