/* polices hébergées sur le site (plus rapide et sans service tiers) */
@font-face{font-family:"Archivo";font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/archivo-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Bebas Neue";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/bebas-neue-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400 500;font-display:swap;src:url(fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{
  color-scheme: dark;
  --ink:#0F0E0D; --orange:#E85D2F; --blue:#2F6DE8; --paper:#EDE8E1;
  --bg:#0F0E0D; --surface:#171513; --surface-2:#221F1C;
  --text:#EDE8E1; --muted:#A39B91; --line:rgba(237,232,225,.13); --line-strong:rgba(237,232,225,.34);
  --accent:#E85D2F; --on-accent:#0F0E0D; --accent-soft:rgba(232,93,47,.14);
  --pain:#1A1816; --pain-text:#8E877E;
  --f-display:"Bebas Neue", Impact, "Arial Narrow", sans-serif;
  --f-body:"Archivo", "Helvetica Neue", Arial, sans-serif;
  --f-mono:"JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
  --gutter:clamp(16px,4vw,56px);
  --maxw:1320px;
  --ease:cubic-bezier(.2,.7,.1,1);
}
body[data-view="pro"]{
  --bg:#123A8C; --surface:#16449F; --surface-2:#1B4DB0;
  --text:#FFFFFF; --muted:#B9CCF5; --line:rgba(255,255,255,.16); --line-strong:rgba(255,255,255,.42);
  --accent:#FFFFFF; --on-accent:#123A8C; --accent-soft:rgba(255,255,255,.12);
  --pain:#0E2F73; --pain-text:#8FA9DD;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.6 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.mono{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1,h2,h3{font-family:var(--f-display);font-weight:400;margin:0;text-wrap:balance;letter-spacing:.005em}
p{margin:0}
em{font-style:normal;color:var(--accent)}
body[data-view="pro"] em{color:var(--accent);text-decoration:underline;text-decoration-thickness:.06em;text-underline-offset:.12em}

/* buttons */
.btn{--h:54px;display:inline-flex;align-items:center;justify-content:center;gap:12px;height:var(--h);padding-inline:26px;border-radius:999px;font:600 16px/1 var(--f-body);text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .35s var(--ease),background-color .3s,color .3s,border-color .3s;white-space:nowrap}
.btn svg{width:18px;height:18px;transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn-primary{background:var(--accent);color:var(--on-accent)}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ghost{border-color:var(--line-strong);color:var(--text);background:transparent}
.btn-ghost:hover{border-color:var(--text)}
.btn-sm{--h:42px;padding-inline:18px;font-size:14px}
.link{font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line-strong)}
.link:hover{text-decoration-color:var(--accent)}

/* cote */
.cote{display:flex;align-items:center;gap:12px;color:var(--accent);font:500 11.5px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;border-inline:1px solid currentColor;padding-block:7px}
.cote::before,.cote::after{content:"";flex:1;height:1px;background:currentColor;opacity:.8}
.cote span{white-space:nowrap}

/* logo */
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.logo-mark{width:38px;height:38px;flex:none}
.logo-type{display:flex;flex-direction:column;font:400 19px/.84 var(--f-display);letter-spacing:.06em}

/* =================== SPLASH =================== */
.pre{position:fixed;inset:0;z-index:200;background:#0F0E0D;display:grid;place-items:center;animation:preOut .5s .95s var(--ease) forwards;pointer-events:none}
.pre svg{width:120px;height:120px;color:#EDE8E1}
.pre path{stroke-dasharray:120;stroke-dashoffset:120;animation:draw .8s var(--ease) forwards}
.pre path.m{animation-delay:.35s}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes preOut{to{opacity:0;visibility:hidden}}
.splash{position:relative;display:flex;min-height:100svh;overflow:hidden;background:#0F0E0D}
.half{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:18px;padding:clamp(28px,5vw,72px);padding-bottom:clamp(40px,7vw,96px);text-decoration:none;overflow:hidden;transition:flex-grow .8s var(--ease)}
.half.b2c{background:#0F0E0D;color:#EDE8E1}
.half.pro{background:#2F6DE8;color:#FFFFFF}
.half .art{position:absolute;inset:0;z-index:0;pointer-events:none;transition:opacity .6s,transform 1.2s var(--ease)}
.half.b2c .art{opacity:.55}
.half.b2c .art svg{position:absolute;right:-8%;top:8%;width:90%;height:auto}
.half.pro .art{background:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px) 0 0/40px 40px;opacity:.6}
.half .content{position:relative;z-index:1;display:flex;flex-direction:column;gap:18px;max-width:560px}
.half .who{font:500 12px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.half.b2c .who{color:#E85D2F}
.half .who::before{content:"";width:28px;height:1px;background:currentColor}
.half h2{font-size:clamp(56px,7vw,124px);line-height:.86}
.half p{max-width:26em;font-size:clamp(16px,1.3vw,19px);opacity:.86}
.half .go{display:inline-flex;align-items:center;gap:12px;height:56px;padding-inline:26px;border-radius:999px;font:600 16px/1 var(--f-body);width:max-content;transition:transform .35s var(--ease)}
.half.b2c .go{background:#E85D2F;color:#0F0E0D}
.half.pro .go{background:#FFFFFF;color:#123A8C}
.half .go svg{width:18px;height:18px;transition:transform .35s var(--ease)}
.half:hover .go svg{transform:translateX(5px)}
.half:focus-visible{outline:3px solid #E85D2F;outline-offset:-6px}
@media (hover:hover) and (min-width:761px){
  .splash:hover .half{flex-grow:.8}
  .splash .half:hover{flex-grow:1.35}
  .half:hover .art{transform:scale(1.04)}
}
.splash.go-b2c .half.b2c,.splash.go-pro .half.pro{flex-grow:60 !important}
.splash.go-b2c .half.pro .content,.splash.go-pro .half.b2c .content{opacity:0;transition:opacity .2s}
.seam{flex:0 0 0;position:relative;z-index:3}
.seam::before{content:"";position:absolute;top:0;bottom:0;left:0;width:1px;transform:translateX(-50%);background:linear-gradient(#E85D2F,#E85D2F) center/1px 100% no-repeat}
.seam-box{position:absolute;top:clamp(28px,6vh,64px);left:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;background:#0F0E0D;border:1px solid #E85D2F;border-radius:14px;padding:16px 20px;color:#EDE8E1;width:max-content;max-width:80vw}
.seam-box .seam-h{font:500 11.5px/1.3 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#E85D2F;text-align:center}
.seam-box .logo{color:#EDE8E1}
.splash.go-b2c .seam,.splash.go-pro .seam{opacity:0;transition:opacity .2s}
@media (max-width:760px){
  .splash{flex-direction:column}
  .half{justify-content:flex-end;padding-top:40px}
  .half.b2c{padding-top:150px}
  .seam{order:0}
  .half.b2c{order:-1}
  .seam::before{top:0;bottom:auto;left:0;right:auto;width:100vw;height:1px;transform:translateY(-50%)}
  .seam-box{position:fixed;top:14px;left:50%;transform:translateX(-50%);padding:10px 14px;flex-direction:row;gap:12px}
  .seam-box .seam-h{text-align:left;max-width:15em}
  #v-accueil:not(.overlay) .splash{position:relative}
  #v-accueil:not(.overlay) .seam{position:static}
  #v-accueil:not(.overlay) .seam::before{display:none}
  #v-accueil:not(.overlay) .half.pro{box-shadow:inset 0 1px #E85D2F}
  #v-accueil:not(.overlay) .seam-box{position:absolute;top:14px;z-index:3}
  .half h2{font-size:clamp(46px,14vw,72px)}
  .half p{font-size:15px}
}

/* =================== NAV =================== */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;gap:24px;height:72px}
.nav-links{display:flex;gap:24px;margin-inline-start:auto;font-size:14.5px;font-weight:500}
.nav-links a{text-decoration:none;color:var(--muted);transition:color .2s}
.nav-links a:hover{color:var(--text)}
.switch{font-size:13.5px;color:var(--muted);text-decoration:none;border-inline-start:1px solid var(--line);padding-inline-start:20px;white-space:nowrap}
.switch:hover{color:var(--text)}
.switch b{color:var(--text);font-weight:600}
@media (max-width:1120px){.nav-links{display:none}.switch{margin-inline-start:auto;border:0;padding:0}}
@media (max-width:600px){.nav .btn{display:none}.switch{font-size:12.5px}}

/* =================== SECTIONS =================== */
.sec{padding-block:clamp(88px,11vw,168px);border-bottom:1px solid var(--line)}
.sec-head{display:grid;grid-template-columns:minmax(160px,1fr) 3.4fr;gap:24px 40px;align-items:start;margin-bottom:clamp(48px,6vw,88px)}
.planche{color:var(--muted);padding-top:14px;display:flex;flex-direction:column;gap:6px}
.planche b{color:var(--accent);font-weight:500}
.h2{font-size:clamp(46px,6.2vw,100px);line-height:.9}
.lede{margin-top:22px;max-width:40em;color:var(--muted);font-size:clamp(17px,1.3vw,19px)}
@media (max-width:760px){.sec-head{grid-template-columns:1fr}.planche{padding-top:0;flex-direction:row;gap:12px}}

/* =================== HERO FILM (B2C) =================== */
.vhero{position:relative;min-height:clamp(640px,90svh,960px);display:flex;flex-direction:column;justify-content:center;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line)}
.film{position:absolute;inset:0;z-index:-2;background:radial-gradient(70% 80% at 70% 55%,#1c1916,#0B0A09 75%)}
.film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.film .stage{position:absolute;right:1.5%;top:50%;transform:translateY(-44%);width:min(52%,820px);aspect-ratio:1.2}
.film svg.anim{width:100%;height:100%;overflow:visible;transition:filter 1.4s var(--ease)}
.film[data-scene="a"] svg.anim,.film[data-scene="b"] svg.anim,.film[data-scene="c"] svg.anim{filter:saturate(.25) brightness(.78) contrast(.95)}
.film[data-scene="d"] svg.anim{filter:saturate(.85)}
.film .tint{position:absolute;inset:0;pointer-events:none;transition:background 1.6s var(--ease),opacity 1.6s}
.film[data-scene="a"] .tint,.film[data-scene="b"] .tint,.film[data-scene="c"] .tint{background:radial-gradient(60% 60% at 70% 45%,rgba(90,130,190,.22),transparent 70%)}
.film[data-scene="f"] .tint{background:radial-gradient(55% 60% at 68% 50%,rgba(255,170,90,.22),transparent 70%)}
.lay{opacity:0;transition:opacity 1s var(--ease)}
[data-scene="a"] .s-a,[data-scene="b"] .s-b,[data-scene="c"] .s-c,[data-scene="d"] .s-d,[data-scene="e1"] .s-e1,[data-scene="e2"] .s-e2,[data-scene="e3"] .s-e3,[data-scene="f"] .s-f{opacity:1}
.ov{position:absolute;opacity:0;transform:translateY(14px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
[data-scene="a"] .ov.s-a,[data-scene="b"] .ov.s-b,[data-scene="c"] .ov.s-c,[data-scene="d"] .ov.s-d,[data-scene="e1"] .ov.s-e1,[data-scene="e2"] .ov.s-e2,[data-scene="e3"] .ov.s-e3,[data-scene="f"] .ov.s-f{opacity:1;transform:none}
.mphone{left:5%;bottom:-5%;width:148px;height:300px;border-radius:26px;background:#0A0908;border:1px solid rgba(237,232,225,.3);padding:7px;box-shadow:0 30px 60px -20px rgba(0,0,0,.8),0 0 60px -10px rgba(232,93,47,.35)}
.mphone .scrn{position:relative;height:100%;border-radius:20px;background:#141210;overflow:hidden;color:#EDE8E1}
.mphone .sv{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px;text-align:center;opacity:0;transition:opacity .6s}
[data-scene="b"] .sv.s-b,[data-scene="c"] .sv.s-c,[data-scene="d"] .sv.s-d{opacity:1}
.mphone .sv .t{font:400 22px/.95 var(--f-display);letter-spacing:.03em}
.mphone .sv .k{font:500 8.5px/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#A39B91}
.mphone .sv .b{font:600 10px/1 var(--f-body);background:#E85D2F;color:#0F0E0D;padding:8px 11px;border-radius:999px}
.mphone .sv .big{font:400 34px/.9 var(--f-display);color:#E85D2F}
.mphone .bar{width:80%;height:3px;border-radius:3px;background:#2d2925;overflow:hidden}
.mphone .bar i{display:block;height:100%;background:#E85D2F;width:0}
[data-scene="c"] .mphone .bar i{animation:barfill 6.5s linear forwards}
@keyframes barfill{to{width:100%}}
.toasts{position:absolute;right:0;top:-4%;display:flex;flex-direction:column;align-items:flex-end}
.tt{max-height:0;opacity:0;overflow:hidden;margin-bottom:0;transform:translateY(-8px);transition:max-height .6s var(--ease),opacity .6s var(--ease),transform .6s var(--ease),margin .6s var(--ease)}
[data-scene="e1"] .tt.s-e1,[data-scene="e2"] .tt.s-e2,[data-scene="e3"] .tt.s-e3,[data-scene="f"] .tt.s-f{max-height:90px;opacity:1;transform:none;margin-bottom:8px}
.toast{display:flex;align-items:center;gap:10px;background:rgba(20,18,16,.92);border:1px solid rgba(237,232,225,.18);border-radius:12px;padding:9px 12px 9px 9px;font:600 13px/1.2 var(--f-body);color:#EDE8E1;box-shadow:0 20px 40px -20px rgba(0,0,0,.8)}
.toast .av{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#2d2925;font:400 14px/1 var(--f-display);letter-spacing:.04em}
.toast small{display:block;font:500 9.5px/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#E85D2F}
.toast.final{padding:14px 18px 14px 14px;font-size:15px;border-color:#E85D2F}
.toast.final .av{background:#E85D2F;color:#0F0E0D;width:34px;height:34px}
.pricetag{right:2%;top:0;background:#EDE8E1;color:#0F0E0D;border-radius:10px;padding:10px 14px;font:500 10px/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.pricetag b{display:block;font:400 30px/1 var(--f-display);letter-spacing:.02em}
.vhero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bg) 16%,color-mix(in srgb,var(--bg) 72%,transparent) 40%,transparent 62%);pointer-events:none}
.hero-inner{display:flex;flex-direction:column;gap:26px;padding-block:72px 128px}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--muted)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 60%,transparent)}70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}
.hero-title{font-size:clamp(66px,9.6vw,164px);line-height:.86;max-width:11ch}
.hero-sub{max-width:33em;font-size:clamp(17px,1.35vw,19.5px);color:var(--muted)}
.hero-sub strong{color:var(--text);font-weight:600}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center}
.micro{color:var(--muted);font-size:11.5px}
.filmbar{position:absolute;left:0;right:0;bottom:22px;display:flex;align-items:center;gap:16px}
.pausebtn{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--line-strong);background:rgba(15,14,13,.6);color:var(--text);display:grid;place-items:center;cursor:pointer}
.pausebtn svg{width:14px;height:14px}
.segs{flex:1;display:flex;gap:6px;max-width:420px}
.segs i{flex:1;height:3px;border-radius:3px;background:var(--line-strong);position:relative;overflow:hidden}
.segs i b{position:absolute;inset:0;width:0;background:var(--accent)}
.capt{font:500 11px/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-inline-start:auto;text-align:right}
.capt b{color:var(--text);font-weight:500}
@media (max-width:900px){
  .vhero{min-height:0;justify-content:flex-start}
  .film{position:relative;inset:auto;height:min(112vw,620px);z-index:0}
  .film .stage{left:50%;right:auto;top:48%;transform:translate(-50%,-50%);width:94%}
  .vhero::before{display:none}
  .mphone{width:104px;height:212px;left:0;bottom:-6%;border-radius:20px}
  .mphone .sv .t{font-size:17px}.mphone .sv .big{font-size:20px}.mphone .sv{padding:8px}
  .toasts{right:0;top:-8%}
  .toast{font-size:11.5px;padding:7px 10px 7px 7px}
  .toast .av{width:24px;height:24px;font-size:12px}
  .pricetag{top:-6%;right:0}
  .pricetag b{font-size:22px}
  .hero-inner{padding-block:8px 36px}
  .filmbar{position:static;padding-block:0 28px;flex-wrap:wrap}
  .capt{margin-inline-start:0;text-align:left;width:100%}
}

/* =================== PRO HERO =================== */
.phero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:
  linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px) 0 0/48px 48px,
  linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px) 0 0/48px 48px,#2F6DE8}
.phero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center;min-height:clamp(620px,86svh,900px);padding-block:64px}
.phero .hero-sub{color:#E3ECFF}
.phero .eyebrow,.phero .micro{color:#DDE7FF}
.phero .btn-primary{background:#FFFFFF;color:#123A8C}
.phero .btn-ghost{border-color:rgba(255,255,255,.6)}
.feed{position:relative;display:flex;flex-direction:column;gap:14px;margin-bottom:14px}
.jc{background:#0F0E0D;color:#EDE8E1;border-radius:16px;padding:18px 20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);transition:transform .8s var(--ease),opacity .8s var(--ease)}
.jc:nth-child(2){opacity:.72;transform:scale(.96)}
.jc:nth-child(3){opacity:.42;transform:scale(.92)}
.jc.enter{animation:jcin .8s var(--ease)}
@keyframes jcin{from{transform:translateY(-30px) scale(.98)}}
.jc .top{display:flex;justify-content:space-between;font:500 10.5px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#A39B91}
.jc .top span:first-child{color:#E85D2F;display:flex;align-items:center;gap:7px}
.jc .top span:first-child::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.jc .ttl{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.jc .ttl b{font:400 28px/1 var(--f-display);letter-spacing:.02em;font-weight:400}
.jc .ttl span{font:400 28px/1 var(--f-display);letter-spacing:.02em;white-space:nowrap}
.jc .chk{display:flex;flex-wrap:wrap;gap:6px}
.jc .chk span{font:500 10px/1 var(--f-mono);letter-spacing:.05em;text-transform:uppercase;border:1px solid #3a352f;border-radius:999px;padding:7px 9px;color:#EDE8E1}
.jc .chk span::before{content:"✓ ";color:#E85D2F}
.jc .act{display:flex;gap:8px}
.jc .act span{flex:1;text-align:center;border-radius:999px;padding:10px;font:600 13px/1 var(--f-body);border:1px solid #3a352f}
.jc .act span.ok{background:#2F6DE8;border-color:#2F6DE8;color:#fff}
.feed-note{font:500 10.5px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#DDE7FF;text-align:right}
@media (max-width:900px){.phero-grid{grid-template-columns:1fr;min-height:0}.feed{height:auto}}

/* =================== PAINS / SOLUTIONS =================== */
.pairs{display:flex;flex-direction:column;gap:14px}
.pair{position:relative;display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;border:1px solid var(--line)}
.pain,.sol{padding:clamp(24px,3.2vw,48px);display:flex;flex-direction:column;gap:14px}
.pain{background:var(--pain);color:var(--pain-text)}
.sol{background:var(--surface);position:relative}
.side{font:500 11px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.pain .side{color:var(--pain-text)}
.sol .side{color:var(--accent)}
.pain .topic{font:400 30px/1 var(--f-display);letter-spacing:.03em;color:var(--pain-text)}
.pain q{font:500 clamp(22px,2.2vw,32px)/1.18 var(--f-body);letter-spacing:-.01em;color:#C9C2B8;quotes:"« " " »";text-wrap:balance}
body[data-view="pro"] .pain q{color:#D4E0FA}
.pain p{max-width:32em;font-size:16px}
.sol h3{font-size:clamp(34px,3.4vw,54px);line-height:.92;color:var(--text)}
.sol p{color:var(--muted);max-width:34em}
.sol .tagx{margin-top:auto;width:max-content;font:500 11px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;padding:9px 12px;border-radius:999px;background:var(--accent);color:var(--on-accent)}
.pair .link-cote{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:120px;height:40px;pointer-events:none}
.pair .link-cote line{stroke:var(--accent);stroke-width:1.5}
.pair .link-cote .ln{stroke-dasharray:100;stroke-dashoffset:0}
.pair.play .link-cote .ln{animation:dash 1s var(--ease) both}
@keyframes dash{from{stroke-dashoffset:100}}
.pair.play .sol{animation:solIn .9s var(--ease) both}
@keyframes solIn{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.pair .num{position:absolute;right:18px;top:16px;font:400 60px/1 var(--f-display);color:transparent;-webkit-text-stroke:1px var(--line-strong)}
@media (max-width:860px){.pair{grid-template-columns:1fr}.pair .link-cote{top:auto;bottom:auto;display:none}.pair.play .sol{animation:none}}

/* =================== STEPS (static) =================== */
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.st{border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.st .vis{position:relative;aspect-ratio:4/3;background:
  linear-gradient(var(--line) 1px,transparent 1px) 0 0/22px 22px,
  linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/22px 22px,var(--surface);display:grid;place-items:center;padding:14px;overflow:hidden}
.st .vis svg{width:100%;height:100%}
.st .txt{padding:22px 24px 28px;display:flex;flex-direction:column;gap:10px}
.st .n{font:400 64px/.8 var(--f-display);color:transparent;-webkit-text-stroke:1px var(--accent)}
.st h3{font-size:36px;line-height:.95}
.st p{color:var(--muted);font-size:16px}
.mini3{display:flex;flex-direction:column;gap:8px;width:86%}
.mini3 div{display:flex;align-items:center;gap:10px;background:#0F0E0D;color:#EDE8E1;border-radius:10px;padding:9px 11px;font:600 13px/1.2 var(--f-body)}
.mini3 div .av{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#2d2925;font:400 13px/1 var(--f-display)}
.mini3 div small{margin-inline-start:auto;font:400 18px/1 var(--f-display);letter-spacing:.02em}
.mini3 div .stars{font:500 10px/1 var(--f-mono);color:#E85D2F}
.vis .vtag{position:absolute;left:14px;top:12px;font:500 10px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
@media (max-width:900px){.steps3{grid-template-columns:1fr}}

/* =================== OFFERS =================== */
.proj{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:18px;color:var(--muted)}
.proj b{color:var(--text);font-weight:500}
.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.offer{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:26px;display:flex;flex-direction:column;gap:20px;transition:transform .5s var(--ease),border-color .4s}
.offer:hover{transform:translateY(-6px);border-color:var(--line-strong)}
.o-head{display:flex;align-items:center;gap:14px}
.o-av{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font:400 22px/1 var(--f-display);letter-spacing:.04em;background:var(--surface-2);border:1px solid var(--line-strong)}
.o-name{font-weight:600;font-size:18px;line-height:1.2}
.o-trade{font:500 11px/1.4 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.o-stats{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line)}
.o-stats > div{padding:16px 0;display:flex;flex-direction:column;gap:6px}
.o-stats > div + div{padding-inline-start:18px;border-inline-start:1px solid var(--line)}
.o-big{font:400 52px/.85 var(--f-display);letter-spacing:.01em;font-variant-numeric:tabular-nums}
.o-lab{font:500 10.5px/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.stars{display:flex;gap:2px;color:var(--accent)}
.stars svg{width:14px;height:14px}
.o-skills{display:flex;flex-direction:column;gap:8px}
.o-skills ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.o-skills li{font-size:13.5px;font-weight:500;border:1px solid var(--line-strong);border-radius:999px;padding:7px 11px}
.o-price{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;background:var(--bg);border:1px dashed var(--line-strong)}
.o-price span{display:flex;align-items:center;gap:8px;font:500 10.5px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.o-price b{font:400 30px/1 var(--f-display);letter-spacing:.02em;font-weight:400;white-space:nowrap}
.same{margin-top:18px}
.offers-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:36px}
.offers-foot p{color:var(--muted);font-size:13.5px}
@media (max-width:980px){.offers{grid-template-columns:1fr}.same{display:none}}

/* =================== ESCROW (scroll) =================== */
.esc-scroll{height:260vh;position:relative}
.esc-sticky{position:sticky;top:calc(72px + env(safe-area-inset-top,0px));min-height:calc(100svh - 72px);display:flex;flex-direction:column;justify-content:center;padding-block:40px}
.escrow{border:1px solid var(--line);border-radius:12px;padding:clamp(20px,3vw,40px);background:var(--surface)}
.flow{display:grid;grid-template-columns:1fr auto 1.3fr auto 1fr;gap:16px;align-items:center}
.node{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:10px;border:1px solid var(--line)}
.node .k{font:500 11px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}
.node .v{font:400 clamp(34px,3.6vw,52px)/1 var(--f-display);letter-spacing:.01em;font-variant-numeric:tabular-nums}
.node.vault{border-color:var(--accent);background:var(--accent-soft)}
.node.vault .k{color:var(--accent)}
.arrow{width:48px;height:12px;color:var(--muted)}
.miles{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);position:relative}
.miles::before{content:"";position:absolute;left:8px;right:8px;top:8px;height:2px;background:var(--line)}
.miles .bar{position:absolute;left:8px;top:8px;height:2px;background:var(--accent);transition:width .6s var(--ease)}
.miles li{position:relative;display:flex;flex-direction:column;gap:10px;padding-inline-end:8px}
.miles li::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--surface);border:2px solid var(--line-strong);position:relative;z-index:1;transition:all .4s}
.miles li.done::before{background:var(--accent);border-color:var(--accent)}
.miles li.cur::before{border-color:var(--accent);box-shadow:0 0 0 6px var(--accent-soft)}
.miles .n{font:400 20px/1 var(--f-display);letter-spacing:.03em}
.miles .p{font:500 11px/1.3 var(--f-mono);color:var(--muted)}
.esc-msg{margin-top:26px;min-height:3.2em;color:var(--muted);max-width:52em}
.esc-msg strong{color:var(--text)}
.esc-hint{margin-top:14px;color:var(--muted);font-size:11px}
@media (max-width:860px){.flow{grid-template-columns:1fr}.arrow{transform:rotate(90deg);justify-self:center}.miles{grid-template-columns:repeat(3,1fr);row-gap:20px}.miles::before,.miles .bar{display:none}.esc-scroll{height:auto}.esc-sticky{position:static;min-height:0;padding-block:0}}

/* =================== WAYS / FAQ / FORMS / FOOTER =================== */
.ways{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}
.way{border:1px solid var(--line);border-radius:12px;padding:clamp(24px,3vw,44px);display:flex;flex-direction:column;gap:18px;transition:border-color .4s,transform .5s var(--ease)}
.way:hover{transform:translateY(-4px);border-color:var(--line-strong)}
.way.main{border-color:var(--accent)}
.way .k{display:flex;justify-content:space-between;color:var(--muted)}
.way h3{font-size:clamp(48px,5vw,80px);line-height:.88}
.way ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}
.way li{padding:12px 0;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:baseline}
.way li::before{content:"";flex:none;width:14px;height:1px;background:var(--accent);transform:translateY(-4px)}
.way .price{margin-top:auto;font:400 30px/1 var(--f-display);letter-spacing:.03em}
.way .price small{display:block;font:500 11px/1.4 var(--f-mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-top:6px}
@media (max-width:860px){.ways{grid-template-columns:1fr}}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:26px 0;font:400 clamp(26px,2.6vw,38px)/1.05 var(--f-display);letter-spacing:.02em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:300 32px/1 var(--f-body);color:var(--accent);transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 28px;max-width:46em;color:var(--muted)}
.access{position:relative;overflow:hidden;padding-block:clamp(96px,12vw,180px);border-bottom:1px solid var(--line)}
.access::before{content:"";position:absolute;left:0;right:0;height:140px;top:-140px;background:linear-gradient(transparent,var(--accent-soft) 80%,var(--accent) 100%);opacity:.6;animation:scanline 8s linear infinite;pointer-events:none}
@keyframes scanline{to{top:100%}}
.access-grid{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:48px clamp(40px,6vw,96px);align-items:start}
.access h2{font-size:clamp(58px,7.6vw,128px);line-height:.86;margin-top:22px}
.wl,.wl-done{border:1px solid var(--line-strong);border-radius:14px;padding:clamp(20px,3vw,34px);background:color-mix(in srgb,var(--bg) 90%,transparent);display:flex;flex-direction:column;gap:18px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field label,.field legend{font:500 11.5px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0}
.field input,.field select{width:100%;height:52px;border-radius:10px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);padding-inline:16px;font:500 16px/1 var(--f-body)}
.field input::placeholder{color:var(--muted);opacity:.75}
.field input:focus,.field select:focus{outline:none;border-color:var(--accent)}
.field input[aria-invalid="true"]{border-color:#FF8A65}
fieldset.field{border:0;margin:0;padding:0}
.radios{display:flex;gap:8px}
.radios label{position:relative;flex:1;text-align:center;padding:14px;border-radius:10px;border:1px solid var(--line-strong);cursor:pointer;font:600 14px/1 var(--f-body);color:var(--muted);text-transform:none;letter-spacing:0}
.radios input{position:absolute;opacity:0;inset:0;cursor:pointer}
.radios label:has(input:checked){border-color:var(--accent);color:var(--text);background:var(--accent-soft)}
.radios label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;color:var(--muted);line-height:1.45;cursor:pointer}
.consent input{accent-color:var(--accent);width:18px;height:18px;flex:none;margin-top:1px}
.form-err{color:#FF9B7A;font-size:14px;min-height:1.2em}
body[data-view="pro"] .form-err{color:#FFD2C2}
.wl-done h3{font-size:44px;line-height:.95}
.wl-done p{color:var(--muted)}
.demo-note{font:500 11px/1.5 var(--f-mono);letter-spacing:.04em;color:var(--muted);border-top:1px dashed var(--line-strong);padding-top:14px}
@media (max-width:900px){.access-grid{grid-template-columns:1fr}}
@media (max-width:520px){.row2{grid-template-columns:1fr}}
.foot{padding-block:48px 40px}
.cart{display:grid;grid-template-columns:1.4fr repeat(4,1fr);border:1px solid var(--line-strong)}
.cart > div{padding:16px 18px;border-inline-start:1px solid var(--line-strong);display:flex;flex-direction:column;gap:8px;min-width:0}
.cart > div:first-child{border-inline-start:0;flex-direction:row;align-items:center;gap:12px}
.cart .k{font:500 10.5px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cart .v{font:400 22px/1.05 var(--f-display);letter-spacing:.03em}
.cart nav{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px}
.cart nav a{text-decoration:none;color:var(--muted)}
.cart nav a:hover{color:var(--text)}
.cart .cart-links{grid-column:1/-1;border-inline-start:0;border-top:1px solid var(--line-strong)}
.legal{margin-top:18px;font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
.giant{font:400 clamp(90px,22vw,340px)/.78 var(--f-display);letter-spacing:.01em;color:transparent;-webkit-text-stroke:1px var(--line-strong);margin-top:40px;white-space:nowrap;overflow:hidden;user-select:none}
@media (max-width:860px){.cart{grid-template-columns:1fr 1fr}.cart > div{border-inline-start:0;border-top:1px solid var(--line-strong)}.cart > div:first-child{grid-column:1/-1;border-top:0}.cart > div:nth-child(odd):not(:first-child){border-inline-start:1px solid var(--line-strong)}}

/* =================== PRO specifics =================== */
.how{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.how > div{padding:28px 28px 0 0;display:flex;flex-direction:column;gap:12px}
.how > div + div{padding-inline-start:28px;border-inline-start:1px solid var(--line)}
.how .n{font:400 80px/.8 var(--f-display);color:transparent;-webkit-text-stroke:1px var(--text)}
.how h3{font-size:38px;line-height:.95}
.how p{color:var(--muted)}
@media (max-width:860px){.how{grid-template-columns:1fr}.how > div{padding:28px 0}.how > div + div{padding-inline-start:0;border-inline-start:0;border-top:1px solid var(--line)}}
.choose{display:grid;grid-template-columns:1fr 1.05fr;gap:48px clamp(40px,6vw,96px);align-items:center}
.levers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}
.levers li{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid var(--line)}
.levers .n{font:400 44px/.9 var(--f-display);color:var(--text)}
.levers h3{font-size:30px;line-height:1}
.levers p{color:var(--muted);font-size:16px;margin-top:6px}
.annot{position:relative}
.annot .pin{position:absolute;width:30px;height:30px;border-radius:50%;background:#FFFFFF;color:#123A8C;display:grid;place-items:center;font:400 18px/1 var(--f-display);box-shadow:0 0 0 6px rgba(255,255,255,.2)}
.annot .offer{background:#0F0E0D;color:#EDE8E1;border-color:#0F0E0D;--muted:#A39B91;--line:rgba(237,232,225,.13);--line-strong:rgba(237,232,225,.34);--accent:#E85D2F;--bg:#171513;--surface-2:#221F1C}
.annot .offer:hover{transform:none}
.annot .o-price{opacity:.6}
@media (max-width:900px){.choose{grid-template-columns:1fr}}
.pricing{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pcard{border:1px solid var(--line);border-radius:14px;padding:clamp(24px,3vw,44px);display:flex;flex-direction:column;gap:16px;background:var(--surface)}
.pcard .huge{font:400 clamp(90px,10vw,160px)/.8 var(--f-display);letter-spacing:.01em}
.pcard .huge small{font-size:.3em;letter-spacing:.04em;color:var(--muted)}
.pcard h3{font-size:34px;line-height:1}
.pcard p{color:var(--muted)}
.calc{display:flex;flex-direction:column;gap:10px;font:400 14px/1.4 var(--f-mono)}
.calc div{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px dashed var(--line-strong);font-variant-numeric:tabular-nums}
.calc div.tot{border:0;font-size:15px;color:var(--text);font-weight:500}
.calc .hyp{font:400 12px/1.5 var(--f-body);color:var(--muted)}
.pcard.dark{background:#0F0E0D;color:#EDE8E1;border-color:#0F0E0D}
.pcard.dark p,.pcard.dark .calc .hyp{color:#A39B91}
.pcard.dark .calc div{border-color:rgba(237,232,225,.3)}
.pcard.dark .calc div.tot{color:#E85D2F}
.pcard.dark .huge{color:#E85D2F}
@media (max-width:860px){.pricing{grid-template-columns:1fr}}
.tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.tl::before{content:"";position:absolute;left:0;right:0;top:11px;height:2px;background:var(--line)}
.tl .fillbar{position:absolute;left:0;top:11px;height:2px;width:100%;background:var(--accent);transform-origin:left}
.tl.play .fillbar{animation:tlfill 2.4s var(--ease) both}
@keyframes tlfill{from{transform:scaleX(0)}}
.tl li{position:relative;padding-inline-end:24px;display:flex;flex-direction:column;gap:10px}
.tl li::before{content:"";width:24px;height:24px;border-radius:50%;background:var(--accent);position:relative;z-index:1;box-shadow:0 0 0 6px var(--bg)}
.tl .k{font:500 11px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.tl h3{font-size:30px;line-height:1}
.tl p{color:var(--muted);font-size:15.5px}
@media (max-width:860px){.tl{grid-template-columns:1fr;gap:26px}.tl::before,.tl .fillbar{display:none}}
.charte{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.charte > div{padding:28px 28px 0 0;display:flex;flex-direction:column;gap:12px}
.charte > div + div{padding-inline-start:28px;border-inline-start:1px solid var(--line)}
.charte h3{font-size:34px;line-height:1}
.charte p{color:var(--muted)}
.charte .k{font:500 11px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase}
.quote-big{margin-top:56px;font:500 clamp(26px,3vw,44px)/1.15 var(--f-body);letter-spacing:-.01em;max-width:24ch;text-wrap:balance}
@media (max-width:860px){.charte{grid-template-columns:1fr}.charte > div{padding:28px 0}.charte > div + div{padding-inline-start:0;border-inline-start:0;border-top:1px solid var(--line)}}
.founder{background:#0F0E0D;color:#EDE8E1;--text:#EDE8E1;--muted:#A39B91;--line:rgba(237,232,225,.13);--line-strong:rgba(237,232,225,.34);--surface:#171513;--accent:#FFFFFF;--on-accent:#123A8C;--accent-soft:rgba(47,109,232,.25);--bg:#0F0E0D}
.founder .planche b{color:#6F9BFF}
.founder em{color:#6F9BFF;text-decoration:none}
.founder .radios label:has(input:checked){border-color:#6F9BFF}
.perks{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.perks li{display:flex;gap:12px;align-items:baseline;color:#EDE8E1}
.perks li::before{content:"";flex:none;width:14px;height:2px;background:#6F9BFF;transform:translateY(-4px)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  html{scroll-behavior:auto}
  .access::before,.pre{display:none}
}
.annot .pin{position:static;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#6F9BFF;color:#0F0E0D;font:400 14px/1 var(--f-display);margin-inline-end:8px;vertical-align:middle;box-shadow:0 0 0 4px rgba(111,155,255,.25)}
section[id]{scroll-margin-top:72px}
@media (max-width:520px){.cote span{white-space:normal;text-align:center}}

/* =================== ITÉRATION 3 : photos réelles =================== */
.half .art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.half.b2c .art{opacity:1}
.half.b2c .art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,14,13,.96) 14%,rgba(15,14,13,.5) 55%,rgba(15,14,13,.3))}
.half.pro .art{opacity:1;background:#2F6DE8}
.half.pro .art img{filter:grayscale(1) contrast(1.05) brightness(1.1);mix-blend-mode:multiply;opacity:.85}
.half.pro .art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,58,140,.96) 14%,rgba(47,109,232,.4) 60%,rgba(47,109,232,.15))}

.kicker{font:600 13px/1.35 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:26px;height:2px;background:currentColor}
.head2{display:flex;flex-direction:column;gap:18px;margin-bottom:clamp(40px,5vw,72px)}
.head2 .h2{max-width:16ch}
.head2 .lede{margin-top:0}

.phfilm{position:relative;min-height:clamp(620px,calc(100svh - 72px),980px);display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;border-bottom:1px solid var(--line);background:#0B0A09}
.shots{position:absolute;inset:0;z-index:-2}
.shot{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.1s var(--ease);overflow:hidden}
.shot.on{opacity:1}
.shot > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%;transform:scale(1.02)}
.shot.on > img,.shot.on .frame{animation:kb 9s linear both}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.1)}}
.frame{position:absolute;left:0;top:0;width:100%;height:100%}
.frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.frame svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.phfilm-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  linear-gradient(90deg,rgba(11,10,9,.88) 0%,rgba(11,10,9,.6) 32%,rgba(11,10,9,.1) 62%,transparent 80%),
  linear-gradient(0deg,rgba(11,10,9,.92) 0%,rgba(11,10,9,.35) 38%,transparent 60%)}
.phfilm-in{display:flex;flex-direction:column;gap:20px;padding-block:110px 26px}
.phfilm .hero-title{font-size:clamp(64px,9vw,156px);max-width:10ch;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.phfilm .hero-sub{color:#D9D2C8;max-width:34em}
.phfilm .filmbar{position:static;margin-top:14px}
.chip{position:absolute;display:inline-flex;align-items:center;gap:8px;background:rgba(15,14,13,.82);color:#EDE8E1;border:1px solid rgba(237,232,225,.2);border-radius:999px;padding:9px 14px;font:500 12px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.chip b{color:#E85D2F;font-weight:500}
.shot .chip-scan{right:5%;top:16%}
.quote-card{position:absolute;right:6%;top:18%;opacity:0;transition:opacity .6s var(--ease) 2.6s;background:#EDE8E1;color:#0F0E0D;border-radius:14px;padding:16px 20px;display:flex;flex-direction:column;gap:6px;box-shadow:0 30px 60px -20px rgba(0,0,0,.6);font:500 11px/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.quote-card b{font:400 42px/1 var(--f-display);letter-spacing:.02em}
.quote-card small{font-size:10px;color:#5a534b}
.shots .toasts{position:absolute;right:var(--gutter);top:104px;display:flex;flex-direction:column;align-items:flex-end}
@media (max-width:900px){
  .phfilm{min-height:92svh}
  .phfilm-shade{background:linear-gradient(0deg,rgba(11,10,9,.96) 0%,rgba(11,10,9,.8) 42%,rgba(11,10,9,.15) 75%,rgba(11,10,9,.35) 100%)}
  .phfilm-in{padding-block:160px 24px}
  .shot .chip-scan{right:16px;top:88px}
  .quote-card{right:16px;top:88px;padding:12px 14px}
  .quote-card b{font-size:30px}
  .shots .toasts{top:88px;right:16px}
}

.pair.photo .pain{position:relative;min-height:400px;justify-content:flex-end;color:#EDE8E1;background:#1A1816;overflow:hidden;isolation:isolate}
.pair.photo .pain::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--img) center/cover;filter:saturate(.75)}
.pair.photo .pain::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(15,14,13,.95) 8%,rgba(15,14,13,.55) 55%,rgba(15,14,13,.15))}
.pair.photo .pain .side{color:rgba(237,232,225,.75);position:absolute;top:22px;left:clamp(24px,3.2vw,48px);background:rgba(15,14,13,.6);padding:7px 10px;border-radius:999px}
.pair.photo .pain .topic{color:rgba(237,232,225,.8)}
.pair.photo .pain q{color:#FFFFFF}
.pair.photo .pain p{color:rgba(237,232,225,.8)}
.pair.photo .sol{justify-content:center}

.st .ph{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--surface)}
.st .ph > img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease)}
.st:hover .ph > img{transform:scale(1.04)}
.st .ph .chip-scan{left:14px;bottom:14px}
.price-chip{position:absolute;left:14px;bottom:14px;background:#EDE8E1;color:#0F0E0D;border-radius:999px;padding:9px 14px;font:500 12px/1 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;box-shadow:0 10px 30px -10px rgba(0,0,0,.6)}
.ph-trio{display:grid;place-items:center;background:radial-gradient(70% 70% at 50% 40%,#2a2521,#171513)}
.trio{display:flex;margin-top:-24px}
.trio img{width:clamp(96px,9vw,128px);height:clamp(96px,9vw,128px);border-radius:50%;object-fit:cover;border:3px solid #171513;box-shadow:0 20px 40px -20px rgba(0,0,0,.8)}
.trio img + img{margin-inline-start:-22px}
.st .n{font:400 44px/.8 var(--f-display);color:var(--accent);-webkit-text-stroke:0}

.offer{padding:0;overflow:hidden;gap:0}
.o-photo{aspect-ratio:16/11;overflow:hidden;background:var(--surface-2)}
.o-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block;transition:transform 1s var(--ease)}
.offer:hover .o-photo img{transform:scale(1.04)}
.o-body{padding:24px 26px 26px;display:flex;flex-direction:column;gap:20px;flex:1}
.annot .o-photo{aspect-ratio:16/9}

.photo-cta{background:linear-gradient(rgba(15,14,13,.8),rgba(15,14,13,.92)),var(--img) center/cover}
.photo-cta::before{display:none}
.photo-cta .kicker{margin-bottom:0}
.foot-simple .fs-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-block:24px;border-top:1px solid var(--line)}
.foot-simple nav{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px}
.foot-simple nav a{text-decoration:none;color:var(--muted)}
.foot-simple nav a:hover{color:var(--text)}
.credits{margin-top:14px;font-size:12px;color:var(--muted)}
.credits summary{cursor:pointer}
.credits p{margin-top:8px;line-height:1.7}
.credits a{color:var(--muted)}
.shot > img.reveal{clip-path:inset(0 0 0 100%)}
.reveal-line{position:absolute;top:0;bottom:0;left:100%;width:2px;background:#E85D2F;box-shadow:0 0 24px 4px rgba(232,93,47,.6);opacity:0}
.shot.on .quote-card{opacity:1}

/* =================== ITÉRATION 5 : histoire au défilement =================== */
.story{position:relative;height:calc(100svh + 300svh);background:#0B0A09}
.story-stage{position:sticky;top:calc(72px + env(safe-area-inset-top,0px));height:calc(100svh - 72px);overflow:hidden;isolation:isolate}
.story .shots{position:absolute;inset:0;z-index:-2}
.story .shot{transition:opacity .9s var(--ease)}
.story .shot.on > img,.story .shot.on .frame{animation:none}
.story .shot > img,.story .frame{transform:scale(var(--kb,1.02));transition:transform .2s linear}
.story-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  linear-gradient(0deg,rgba(11,10,9,.94) 0%,rgba(11,10,9,.72) 26%,rgba(11,10,9,.12) 56%,transparent 70%),
  linear-gradient(90deg,rgba(11,10,9,.55) 0%,transparent 45%)}
.story-text{position:absolute;left:0;right:0;bottom:clamp(40px,7vh,84px);height:0}
.beat{position:absolute;left:var(--gutter);bottom:0;max-width:min(760px,calc(100% - 2 * var(--gutter) - 170px));display:flex;flex-direction:column;gap:14px;opacity:0;transform:translateY(26px);transition:opacity .6s var(--ease),transform .7s var(--ease);pointer-events:none}
.beat.on{opacity:1;transform:none;pointer-events:auto}
.bt-brand{font:400 22px/1 var(--f-display);letter-spacing:.06em;color:#EDE8E1;opacity:.85}
.bt-time{display:flex;align-items:center;gap:10px;color:#E85D2F;font-size:12.5px}
.bt-title{margin:0;font:600 clamp(36px,5vw,76px)/1.02 var(--f-body);letter-spacing:-.025em;color:#FFFFFF;text-wrap:balance;text-shadow:0 2px 30px rgba(0,0,0,.4)}
.bt-sub{font-size:clamp(16px,1.35vw,19px);color:#D9D2C8;max-width:40em;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.bt-sub b{color:#E85D2F;font-weight:600}
.beat .hero-ctas{margin-top:8px}
.bt-hint{margin-top:14px;color:#A39B91;text-decoration:none;font-size:11.5px}
.bt-hint .u{text-decoration:underline;text-underline-offset:3px}
.bt-hint:hover{color:#EDE8E1}
.rail{position:absolute;right:var(--gutter);top:50%;transform:translateY(-50%);list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.rail button{appearance:none;background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:10px;justify-content:flex-end;padding:5px 0;color:rgba(237,232,225,.5);font:500 11px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;width:100%}
.rail button::after{content:"";width:18px;height:2px;background:currentColor;border-radius:2px;transition:width .4s var(--ease),background-color .3s}
.rail button.on{color:#FFFFFF}
.rail button.on::after{width:34px;background:#E85D2F}
.rail button.done{color:rgba(237,232,225,.75)}
.rail button:hover{color:#FFFFFF}
.story-prog{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(237,232,225,.12)}
.story-prog i{display:block;height:100%;width:0;background:#E85D2F}
.story .quote-card{transition:opacity .5s var(--ease)}
.story .quote-card.show{opacity:1}
.story .shots .toasts{top:24px}
.story .shot .chip-scan{top:24px}
.story .quote-card{top:24px}
@media (max-width:900px){
  .rail{top:auto;bottom:auto;top:16px;left:var(--gutter);right:auto;transform:none;flex-direction:row;gap:4px}
  .rail button span{display:none}
  .rail button{padding:6px 0}
  .rail button::after{width:14px}
  .rail button.on::after{width:26px}
  .beat{max-width:calc(100% - 2 * var(--gutter))}
  .bt-title{font-size:clamp(28px,7.6vw,40px)}
  .story-shade{background:linear-gradient(0deg,rgba(11,10,9,.96) 0%,rgba(11,10,9,.8) 40%,rgba(11,10,9,.1) 72%,rgba(11,10,9,.35) 100%)}
  .story .shots .toasts,.story .shot .chip-scan,.story .quote-card{top:52px}
}

/* =================== ITÉRATION 6 : finition Awwwards =================== */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto !important}
@media (pointer:coarse){html.lenis-stopped{overflow:hidden}}
.story .shot{opacity:1;clip-path:inset(100% 0 0 0);transition:clip-path 1.05s cubic-bezier(.77,0,.18,1);z-index:0}
.story .shots[data-dir="up"] .shot{clip-path:inset(0 0 100% 0)}
.story .shot.prev{clip-path:inset(0 0 0 0) !important;z-index:1;transition:none}
.story .shot.on{clip-path:inset(0 0 0 0) !important;z-index:2}
.story .shots .toasts{z-index:5}
.bt-title{font:400 clamp(58px,8.4vw,150px)/.86 var(--f-display) !important;letter-spacing:.005em !important;text-shadow:0 4px 40px rgba(0,0,0,.35)}
.bt-title .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.04em;margin-bottom:-.04em}
.bt-title .w > span{display:inline-block;transform:translateY(105%);transition:transform .9s cubic-bezier(.2,.8,.1,1) calc(var(--d,0) * 55ms + 120ms)}
.beat.on .bt-title .w > span{transform:none}
.beat .bt-time,.beat .bt-sub,.beat .hero-ctas,.beat .bt-hint,.beat .bt-brand{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease) .35s,transform .6s var(--ease) .35s}
.beat.on .bt-time,.beat.on .bt-sub,.beat.on .hero-ctas,.beat.on .bt-hint,.beat.on .bt-brand{opacity:1;transform:none}
.beat.on .bt-time{transition-delay:.05s}
.beat{opacity:1 !important;transform:none !important;visibility:hidden;transition:visibility 0s linear .6s}
.beat.on{visibility:visible;transition:none}
.beat:not(.on) .bt-title .w > span{transform:translateY(-105%);transition-duration:.45s;transition-delay:0s}
.beat:not(.on) .bt-time,.beat:not(.on) .bt-sub,.beat:not(.on) .hero-ctas,.beat:not(.on) .bt-hint,.beat:not(.on) .bt-brand{transition-delay:0s;transition-duration:.3s}
.chap{position:absolute;left:var(--gutter);top:22px;display:flex;align-items:baseline;gap:6px;font:400 clamp(44px,5vw,76px)/.8 var(--f-display);color:transparent;-webkit-text-stroke:1px rgba(237,232,225,.7);z-index:4;pointer-events:none}
.chap small{font:500 12px/1 var(--f-mono);letter-spacing:.1em;-webkit-text-stroke:0;color:rgba(237,232,225,.7)}
.chap .num{display:inline-block;overflow:hidden;height:.82em}
.chap .num span{display:block;transition:transform .7s cubic-bezier(.77,0,.18,1)}
.cursor{position:fixed;left:0;top:0;z-index:95;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;border:1px solid rgba(237,232,225,.8);display:grid;place-items:center;font:500 10px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#EDE8E1;pointer-events:none;opacity:0;transform:scale(.4);transition:opacity .3s,transform .4s var(--ease),background-color .3s,border-color .3s;mix-blend-mode:normal}
.cursor.on{opacity:1;transform:scale(1)}
.cursor.link{transform:scale(.5);background:#E85D2F;border-color:#E85D2F;color:transparent}
@media (hover:none),(pointer:coarse){.cursor{display:none}}
@media (max-width:900px){.bt-title{font-size:clamp(48px,13vw,76px) !important}.chap{top:44px;font-size:40px}}
@media (prefers-reduced-motion:reduce){.story .shot{transition:none}.bt-title .w > span{transform:none !important}}

/* =================== ITÉRATION 7 : page particulier au niveau du Hero =================== */
.js [data-rv]{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform 1s var(--ease)}
.js [data-rv].in{opacity:1;transform:none}
[data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.06em;margin-bottom:-.06em}
[data-split] .w > span{display:inline-block;transition:transform 1s cubic-bezier(.2,.8,.1,1) calc(var(--d,0) * 45ms)}
.js [data-split]:not(.in) .w > span{transform:translateY(108%)}
.mani{padding-block:clamp(110px,16vw,240px);border-bottom:1px solid var(--line)}
.mani-txt{margin-top:28px;font:400 clamp(44px,6.4vw,112px)/.95 var(--f-display);letter-spacing:.005em;max-width:17ch}
.mani-txt .fw{color:rgba(237,232,225,.14);transition:color .35s}
.mani-txt .fw.lit{color:#EDE8E1}
.mani-txt em .fw.lit,.mani-txt .fw.acc.lit{color:#E85D2F}
.galeres{padding-bottom:clamp(60px,8vw,120px)}
.stack{display:flex;flex-direction:column;gap:0}
.scard{position:sticky;top:calc(96px + var(--i) * 22px);min-height:min(74svh,640px);margin-bottom:9vh;box-shadow:0 -30px 80px -30px rgba(0,0,0,.8);transform-origin:50% 0;background:var(--surface);will-change:transform}
.scard:last-child{margin-bottom:0}
.scard .pain{min-height:auto}
.scard-n{position:absolute;right:22px;top:14px;z-index:3;font:400 clamp(70px,8vw,130px)/.8 var(--f-display);color:transparent;-webkit-text-stroke:1px rgba(237,232,225,.35)}
.scard .sol h3{font-size:clamp(40px,4.4vw,72px)}
@media (max-width:860px){.scard{position:relative;top:auto;margin-bottom:16px;transform:none !important;min-height:0}}
.hscroll{position:relative;height:320vh;border-bottom:1px solid var(--line)}
.hs-stage{position:sticky;top:72px;height:calc(100svh - 72px);overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.hs-track{display:flex;gap:clamp(20px,3vw,48px);padding-inline:var(--gutter);will-change:transform;align-items:stretch}
.hs-intro{flex:0 0 min(560px,80vw);display:flex;flex-direction:column;justify-content:center;gap:20px}
.hs-intro .h2{font-size:clamp(64px,8vw,140px);line-height:.86}
.hs-hint{color:var(--accent)}
.hs-card{flex:0 0 min(62vw,900px);display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.hs-ph{position:relative;height:min(52svh,520px);overflow:hidden}
.hs-ph > img{position:absolute;top:0;left:-8%;width:116%;height:100%;object-fit:cover}
.hs-ph .chip-scan,.hs-ph .price-chip{left:18px;bottom:18px;top:auto}
.hs-txt{display:flex;gap:24px;align-items:flex-start;padding:26px 30px 30px}
.hs-n{font:400 clamp(60px,6vw,96px)/.8 var(--f-display);color:#E85D2F}
.hs-txt h3{font-size:clamp(36px,3.4vw,54px);line-height:.92}
.hs-txt p{color:var(--muted);margin-top:8px;max-width:36em}
.hs-bar{position:absolute;left:0;right:0;bottom:22px;display:flex;align-items:center;gap:18px;color:var(--muted)}
.hs-bar i{flex:1;height:2px;background:var(--line)}
.hs-bar b{display:block;height:100%;width:0;background:#E85D2F}
@media (max-width:900px){.hscroll{height:auto}.hs-stage{position:relative;top:auto;height:auto;padding-block:90px}.hs-track{flex-direction:column;transform:none !important}.hs-card,.hs-intro{flex:auto}.hs-ph{height:62vw}.hs-bar{display:none}}
.velo{overflow:hidden;padding-block:clamp(26px,4vw,50px);border-bottom:1px solid var(--line)}
.velo-track{display:flex;width:max-content;align-items:center;gap:clamp(20px,3vw,44px);will-change:transform}
.velo span{font:400 clamp(80px,12vw,200px)/.85 var(--f-display);white-space:nowrap}
.velo span.o{color:transparent;-webkit-text-stroke:1.5px #EDE8E1}
.velo i{font-style:normal;color:#E85D2F;font-size:clamp(30px,4vw,60px)}
.offer{transition:transform .5s var(--ease),border-color .4s,opacity .9s var(--ease)}
.js .offers .offer{opacity:0;transform:translateY(60px)}
.offers.in .offer{opacity:1;transform:none}
.offers.in .offer:nth-child(2){transition-delay:.12s}.offers.in .offer:nth-child(3){transition-delay:.24s}
.o-price b{font-variant-numeric:tabular-nums}
.o-price.lock b{color:#E85D2F}
.same{clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) .3s}
.same.in{clip-path:inset(0 0 0 0)}
.photo-cta{background-attachment:fixed}
.access h2{font-size:clamp(64px,8.6vw,150px) !important}
.bigfoot{position:relative;overflow:hidden;padding-top:clamp(80px,10vw,150px);border-top:1px solid var(--line)}
.bf-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:28px;padding-bottom:48px}
.bf-line{font:400 clamp(56px,7vw,120px)/.88 var(--f-display);max-width:12ch}
.bigfoot .fs-row{display:flex;flex-wrap:wrap;align-items:center;gap:20px 36px;padding-block:24px;border-top:1px solid var(--line)}
.bigfoot nav{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px}
.bigfoot nav a{text-decoration:none;color:var(--muted)}
.bigfoot nav a:hover{color:var(--text)}
.bf-up{margin-inline-start:auto;color:var(--muted);text-decoration:none}
.bf-up:hover{color:#E85D2F}
.bigfoot .legal{padding-bottom:10px}
.bigfoot .credits{padding-bottom:20px}
.bf-giant{display:flex;justify-content:space-between;padding-inline:var(--gutter);font:400 clamp(80px,19.2vw,355px)/.78 var(--f-display);margin-top:30px;margin-bottom:-.06em;user-select:none}
.bf-giant span{color:transparent;-webkit-text-stroke:1px rgba(237,232,225,.35);transform:translateY(var(--y,40%));transition:color .4s,-webkit-text-stroke-color .4s,transform .9s cubic-bezier(.2,.8,.1,1) calc(var(--k) * 40ms)}
.bf-giant.in span{--y:0}
.bf-giant .bf-sp{flex:0 0 .06em}
.bf-giant span:hover{color:#E85D2F;-webkit-text-stroke-color:#E85D2F}
@media (prefers-reduced-motion:reduce){.js [data-rv],.js [data-split] .w > span,.js .offers .offer{opacity:1 !important;transform:none !important}.same{clip-path:none}.bf-giant span{transform:none}}


/* ---- diaporama : transitions pilotées une par une (sans à-coups) ---- */
.story .shot,.story .shots[data-dir="up"] .shot,.story .shot.on,.story .shot.prev{opacity:1 !important;clip-path:var(--clip,inset(100% 0 0 0)) !important;z-index:var(--z,0) !important;transition:var(--tr,none) !important;will-change:clip-path}
.story .shot > img,.story .frame{transform:scale(1.03) !important;transition:none !important;animation:none !important}

/* =================== ITÉRATION 8 : page allégée =================== */
.sec.lite{padding-block:clamp(80px,9vw,140px)}
.sec.lite .head2{margin-bottom:clamp(32px,4vw,56px)}
.gal3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gcard{border-radius:14px;overflow:hidden;background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column}
.g-ph{position:relative;aspect-ratio:4/3;background:var(--img) center/cover;display:flex;align-items:flex-end;padding:20px;isolation:isolate}
.g-ph::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(15,14,13,.92) 10%,rgba(15,14,13,.2) 65%)}
.g-ph q{font:600 clamp(19px,1.6vw,23px)/1.2 var(--f-body);color:#fff;quotes:"« " " »";letter-spacing:-.01em}
.g-sol{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;border-top:2px solid #E85D2F}
.g-k{color:#E85D2F;font-size:11px}
.g-sol h3{font-size:clamp(28px,2.4vw,38px);line-height:.95}
.offers .o-skills li{font-size:12.5px;padding:6px 10px}
.offers .o-body{gap:16px;padding:20px 22px 22px}
.offers .o-photo{aspect-ratio:16/9}
.offers-note{margin-top:14px;color:var(--muted);font-size:13px}
.money{list-style:none;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.money li{border-top:1px solid var(--line)}
.money li{padding:28px 28px 0 0;display:flex;flex-direction:column;gap:10px;position:relative}
.money li + li{padding-inline-start:28px;border-inline-start:1px solid var(--line)}
.m-n{font:400 72px/.8 var(--f-display);color:#E85D2F}
.money h3{font-size:36px;line-height:1}
.money p{color:var(--muted)}
@media (max-width:860px){.gal3,.money{grid-template-columns:1fr}.money li,.money li + li{padding:24px 0 0;border-inline-start:0}}

/* =================== ITÉRATION 9 : garanties =================== */
.gtabs{display:grid;grid-template-columns:minmax(220px,1fr) 3fr;gap:clamp(20px,3vw,48px);align-items:start}
.gt-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.gt-list button{appearance:none;background:none;border:0;border-bottom:1px solid var(--line);color:var(--muted);text-align:left;cursor:pointer;display:grid;grid-template-columns:44px 1fr;align-items:center;gap:4px 10px;padding:18px 0 16px;position:relative;font:inherit}
.gt-n{font:500 12px/1 var(--f-mono);letter-spacing:.08em}
.gt-l{font:400 clamp(28px,2.6vw,40px)/1 var(--f-display);letter-spacing:.02em;transition:color .3s}
.gt-bar{grid-column:1/-1;height:2px;background:transparent;margin-top:8px;overflow:hidden}
.gt-bar i{display:block;height:100%;width:0;background:#E85D2F;transition:width .6s var(--ease)}
.gt-list button:hover .gt-l{color:var(--text)}
.gt-list button[aria-selected="true"]{color:var(--text)}
.gt-list button[aria-selected="true"] .gt-n{color:#E85D2F}
.gt-list button[aria-selected="true"] .gt-bar i{width:100%}
.gt-panels{position:relative;border-radius:16px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.gpanel{display:grid;grid-template-columns:1fr 1.1fr;min-height:440px}
.gpanel.on .gp-ph img{animation:gpIn 1s cubic-bezier(.2,.8,.1,1) both}
@keyframes gpIn{from{clip-path:inset(0 0 0 100%);transform:scale(1.06)}to{clip-path:inset(0 0 0 0);transform:none}}
.gp-ph{position:relative;overflow:hidden;background:#171513}
.gp-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gp-chip{position:absolute;left:16px;bottom:16px;background:#EDE8E1;color:#0F0E0D;border-radius:999px;padding:9px 14px;font:500 12px/1 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;box-shadow:0 10px 30px -10px rgba(0,0,0,.6)}
.gp-txt{padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;gap:20px;justify-content:center}
.gp-txt h3{font-size:clamp(34px,3vw,50px);line-height:.95}
.checks2{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.checks2 li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;line-height:1.4;color:var(--text)}
.checks2 svg{flex:none;width:22px;height:22px;margin-top:-1px}
.checks2 circle{fill:none;stroke:#E85D2F;stroke-width:1.5;opacity:.5}
.checks2 path{fill:none;stroke:#E85D2F;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:16;stroke-dashoffset:0}
.gpanel.on .checks2 li{animation:ckIn .5s var(--ease) both;animation-delay:calc(var(--k) * 90ms + 250ms)}
.gpanel.on .checks2 path{animation:ckDraw .5s var(--ease) both;animation-delay:calc(var(--k) * 90ms + 400ms)}
@keyframes ckIn{from{opacity:0;transform:translateX(12px)}}
@keyframes ckDraw{from{stroke-dashoffset:16}}
@media (max-width:900px){.gtabs{grid-template-columns:1fr}.gt-list{flex-direction:row;overflow-x:auto;border-top:0;gap:16px;scrollbar-width:none}.gt-list button{flex:none;grid-template-columns:auto;border-bottom:0;padding:8px 0}.gt-n{display:none}.gpanel{grid-template-columns:1fr;min-height:0}.gp-ph{aspect-ratio:16/10}}

/* =================== ITÉRATION 10 : galères -> solutions =================== */
.grows{display:flex;flex-direction:column;gap:18px}
.grow{position:relative;display:grid;grid-template-columns:1fr 1.15fr;min-height:clamp(320px,34vw,420px);border-radius:18px;overflow:hidden;background:#171513}
.gr-pb{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:clamp(24px,3vw,40px);isolation:isolate;color:#EDE8E1}
.gr-pb::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--img) center/cover;filter:saturate(.9);transition:filter 1.2s var(--ease),transform 1.6s var(--ease)}
.gr-pb::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(15,14,13,.94) 12%,rgba(15,14,13,.35) 70%)}
.grow.in .gr-pb::before{filter:saturate(0) brightness(.75);transform:scale(1.05)}
.gr-tag{font-size:11px;color:rgba(237,232,225,.75);position:absolute;top:clamp(20px,2.4vw,32px);left:clamp(24px,3vw,40px)}
.gr-pb q{font:600 clamp(22px,2.1vw,32px)/1.15 var(--f-body);letter-spacing:-.015em;quotes:"« " " »";max-width:17em}
.gr-pb p{color:rgba(237,232,225,.72);font-size:15px;max-width:30em}
.gr-sol{position:relative;background:#E85D2F;color:#0F0E0D;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;padding:clamp(24px,3vw,44px);clip-path:inset(0 0 0 100%);transition:clip-path 1.1s cubic-bezier(.77,0,.18,1) .15s}
.grow.in .gr-sol{clip-path:inset(0 0 0 0)}
.gr-sol .gr-tag{color:#0F0E0D;opacity:.75}
.gr-sol h3{font-size:clamp(46px,4.6vw,84px);line-height:.88;max-width:11ch}
.gr-sol p{font-size:clamp(15.5px,1.2vw,18px);line-height:1.5;max-width:32em;font-weight:500}
.gr-chip{display:inline-flex;align-items:center;gap:8px;width:max-content;background:#0F0E0D;color:#EDE8E1;border-radius:999px;padding:9px 14px 9px 10px;font-size:11.5px}
.gr-chip svg{width:16px;height:16px;fill:none;stroke:#E85D2F;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.gr-sol > *{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .7s var(--ease)}
.grow.in .gr-sol > *{opacity:1;transform:none}
.grow.in .gr-sol > :nth-child(1){transition-delay:.7s}.grow.in .gr-sol > :nth-child(2){transition-delay:.78s}.grow.in .gr-sol > :nth-child(3){transition-delay:.88s}.grow.in .gr-sol > :nth-child(4){transition-delay:.98s}
.gr-arrow{position:absolute;left:calc(100% / 2.15 * 1);top:50%;z-index:3;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:#0F0E0D;border:1px solid rgba(237,232,225,.25);display:grid;place-items:center;transform:scale(0) rotate(-90deg);transition:transform .7s cubic-bezier(.2,.9,.2,1.2) .55s}
.gr-arrow svg{width:26px;height:26px;fill:none;stroke:#E85D2F;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.grow.in .gr-arrow{transform:none}
.grow:hover .gr-arrow{transform:translateX(6px)}
@media (max-width:860px){.grow{grid-template-columns:1fr}.gr-pb{min-height:300px}.gr-arrow{left:50%;top:300px;transform:scale(0) rotate(0)}.grow.in .gr-arrow{transform:rotate(90deg)}.gr-sol{clip-path:inset(0 0 100% 0)}.gr-sol h3{font-size:clamp(42px,11vw,60px)}}
@media (prefers-reduced-motion:reduce){.gr-sol{clip-path:none}.gr-sol > *{opacity:1;transform:none}.gr-arrow{transform:none}}
.gr-sol .gr-tag{position:static}
.gr-sol{justify-content:center}
@media (max-width:860px){.gr-sol{padding-top:52px}}

/* =================== ITÉRATION 11 : garanties au défilement =================== */
.gscroll{position:relative;border-bottom:1px solid var(--line)}
@media (min-width:901px) and (min-height:621px){
  .gscroll{height:calc(100svh + 5 * 60svh)}
  .gs-stage{position:sticky;top:72px;height:calc(100svh - 72px);display:flex;flex-direction:column;justify-content:center;gap:clamp(20px,3vh,36px);overflow:hidden}
  .gscroll .head2{margin-bottom:0;gap:10px}
  .gscroll .h2{font-size:clamp(46px,5.4vw,92px)}
  .gscroll .gpanel{min-height:min(440px,calc(100svh - 72px - 280px))}
  .gscroll .gt-bar{background:var(--line)}
  .gscroll .gt-list button[aria-selected="true"] .gt-bar i{width:var(--sp,0%);transition:none}
  .gscroll .gt-list button.done .gt-bar i{width:100%}
  .gscroll .gt-list button.done{color:var(--text)}
  .gscroll .gt-list button.done .gt-n{color:#E85D2F}
}
@media (max-width:900px),(max-height:620px){.gscroll{padding-block:clamp(80px,9vw,140px)}}
.gs-hint{color:var(--muted);font-size:11px;margin-top:6px}

/* ---- histoire : promesse et bouton permanents ---- */
.story-promise{position:absolute;left:0;right:0;bottom:0;z-index:6;padding-block:16px 19px;background:linear-gradient(0deg,rgba(11,10,9,.92),rgba(11,10,9,.65));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(237,232,225,.1)}
.sp-in{display:flex;align-items:center;justify-content:space-between;gap:16px 28px}
.sp-txt{margin:0;font-family:var(--f-body);font-weight:400;letter-spacing:0;line-height:1.4;font-size:clamp(14.5px,1.15vw,17px);color:#D9D2C8;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.sp-txt b{color:#FFFFFF;font-weight:600}
.sp-brand{font:400 18px/1 var(--f-display);letter-spacing:.06em;color:#E85D2F;text-transform:uppercase}
.story-promise .btn{flex:none}
.story-text{bottom:calc(92px + clamp(28px,5vh,56px)) !important}
.story-prog{bottom:auto !important;top:0}
@media (max-width:760px){.story-promise{padding-block:12px 14px}.sp-in{flex-direction:column;align-items:stretch;gap:10px}.sp-brand{display:none}.sp-txt{font-size:13.5px}.story-promise .btn{--h:46px;justify-content:center}.story-text{bottom:150px !important}}

/* ---- pages légales, champ piège, note garanties ---- */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.consent a{color:inherit}
.gs-note{color:var(--muted);font-size:12.5px;margin-top:14px}
.legal-doc{max-width:760px;padding-block:clamp(60px,8vw,110px) 120px;display:flex;flex-direction:column;gap:14px}
.legal-doc .h2{margin-block:6px 0}
.legal-doc .upd{color:var(--muted);font-size:13px}
.legal-doc h2{font:400 32px/1 var(--f-display);letter-spacing:.02em;margin-top:30px}
.legal-doc p,.legal-doc li{color:#D9D2C8;line-height:1.65}
.legal-doc ul{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:6px}
.legal-doc a{color:#E85D2F}
.legal-doc mark{background:rgba(232,93,47,.18);color:#FFB79C;padding:1px 5px;border-radius:4px}

/* ---- écran de choix en fenêtre + accès artisans ---- */
#v-accueil.overlay{position:fixed;inset:0;z-index:300;overflow:auto;transition:opacity .55s var(--ease)}
#v-accueil.closing{opacity:0}
html.ch-open,html.ch-open body{overflow:hidden}
.switch.pill{border:1px solid var(--line-strong);border-radius:999px;padding:10px 16px;color:var(--text);font-weight:600;display:inline-flex;align-items:center;gap:8px}
.switch.pill:hover{border-color:var(--text)}
@media (max-width:1120px){.switch.pill{margin-inline-start:auto}}

/* ---- page ville ---- */
.bx-hero{position:relative;min-height:clamp(560px,82svh,860px);display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}
.bx-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.bx-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(11,10,9,.95) 5%,rgba(11,10,9,.55) 45%,rgba(11,10,9,.15) 75%),linear-gradient(90deg,rgba(11,10,9,.6),transparent 60%)}
.bx-in{display:flex;flex-direction:column;gap:20px;padding-block:120px 64px}
.crumbs{color:#A39B91;font-size:11px}
.crumbs a{color:#D9D2C8;text-decoration:none}
.crumbs span{margin-inline:6px}
.bx-title{font-size:clamp(56px,7.4vw,128px);line-height:.88;max-width:13ch}
.bx-sub{max-width:36em;color:#D9D2C8;font-size:clamp(16px,1.3vw,19px)}
.bx-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.bx-card{border:1px solid var(--line);border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:12px;background:var(--surface)}
.bx-n{color:#E85D2F;font-size:12px}
.bx-card h3{font-size:30px;line-height:1}
.bx-card p{color:var(--muted);font-size:15px}
.bx-card a{color:#E85D2F}
.zone{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.z-k{color:#E85D2F;margin-bottom:14px}
.z-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.z-list li{border:1px solid var(--line-strong);border-radius:999px;padding:9px 14px;font-size:14.5px}
@media (max-width:1000px){.bx-cards{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.bx-cards,.zone{grid-template-columns:1fr}}

/* =================== PAGE ARTISANS v2 =================== */
.pstory{height:calc(100svh + 260svh)}
.pcards{position:absolute;right:var(--gutter);top:24px;z-index:5;width:min(360px,40vw)}
.pcard{position:absolute;right:0;top:0;width:100%;background:rgba(15,14,13,.9);color:#EDE8E1;border:1px solid rgba(237,232,225,.16);border-radius:16px;padding:18px 20px;display:flex;flex-direction:column;gap:8px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 30px 60px -30px rgba(0,0,0,.8);opacity:0;transform:translateY(-14px) scale(.98);transition:opacity .5s var(--ease),transform .6s var(--ease);pointer-events:none}
.pcard.show{opacity:1;transform:none;transition-delay:.5s}
.pc-k{font-size:10.5px;color:#6F9BFF;display:flex;align-items:center;gap:8px}
.pc-k::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pcard b{font:400 28px/1.02 var(--f-display);letter-spacing:.02em;font-weight:400}
.pc-l{font-size:13px;color:#A39B91}
.pc-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.pc-tag{display:inline-flex;align-items:center;gap:5px;font:500 10px/1 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;border:1px solid #3a352f;border-radius:999px;padding:6px 8px}
.pc-tag svg,.gr-chip svg{width:13px;height:13px;fill:none;stroke:#6F9BFF;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.pc-price{margin-top:6px;font:400 34px/1 var(--f-display);color:#FFFFFF}
.pc-line{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;padding-bottom:7px;border-bottom:1px dashed rgba(237,232,225,.18)}
.pc-line b{font:500 13.5px/1.3 var(--f-mono);letter-spacing:0}
.pc-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:2px}
.pc-total b{font-size:30px}
.pc-btn{margin-top:6px;background:#2F6DE8;color:#fff;border-radius:999px;text-align:center;padding:11px;font:600 14px/1 var(--f-body)}
.pcard.ok .pc-k{color:#5BD08A}
.pcard.ok b{color:#5BD08A}
.stars5{color:#FFC24A;letter-spacing:.1em}
.pstory .chap{color:transparent}
.pstory .rail button.on::after,.pstory .story-prog i{background:#6F9BFF}
.pstory .bt-time{color:#6F9BFF}
.pstory .sp-brand{color:#6F9BFF}
.pstory .dot{background:#6F9BFF}
body[data-view="pro"] .gr-sol{background:#FFFFFF;color:#123A8C}
body[data-view="pro"] .gr-sol .gr-tag{color:#123A8C}
body[data-view="pro"] .gr-chip{background:#123A8C;color:#fff}
body[data-view="pro"] .gr-arrow{background:#123A8C}
body[data-view="pro"] .gr-arrow svg{stroke:#fff}
body[data-view="pro"] .m-n{color:#FFFFFF}
body[data-view="pro"] .kicker{color:#9DBBFF}
body[data-view="pro"] .grow{background:#0E2F73}
.prix2{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(24px,3vw,48px);align-items:start}
.fee{background:#FFFFFF;color:#123A8C;border-radius:18px;padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;gap:14px}
.fee-big{font:400 clamp(80px,8vw,130px)/.8 var(--f-display);display:flex;align-items:baseline;gap:10px}
.fee-big small{font:500 12px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.fee-txt{font-size:17px}
.fee-calc{display:grid;grid-template-columns:1fr auto;gap:8px 16px;font-size:13px;border-top:1px dashed rgba(18,58,140,.3);padding-top:14px}
.fee-calc b{font-weight:500;text-align:right}
.fee-calc b:last-child{color:#2F6DE8;font-size:15px}
.fee-note{font-size:12.5px;opacity:.75}
.prix2 .money{grid-template-columns:1fr}
.prix2 .money li,.prix2 .money li + li{padding:22px 0 18px;border-inline-start:0}
@media (max-width:900px){.prix2{grid-template-columns:1fr}.pcards{left:var(--gutter);right:var(--gutter);width:auto;top:56px}.pcard{padding:14px 16px}.pcard b{font-size:22px}.pc-line{font-size:12px}}

body[data-view="pro"] .h2 em,body[data-view="pro"] .access h2 em,body[data-view="pro"] .bt-title em{text-decoration:none;color:#9DBBFF}
.prix2 .money{padding:0;margin:0}
@media (max-width:900px){.pstory .chap{display:none}.pcards{top:20px}.pcard .pc-line b{font-size:12px}.pcard .pc-total b{font-size:22px}.pcard.show{transition-delay:.3s}}

/* =================== ITÉRATION MOBILE =================== */
:root{--navh:72px}
@media (max-width:760px){:root{--navh:60px}}
.nav-in{height:var(--navh)}
section[id]{scroll-margin-top:var(--navh)}
.story-stage{top:calc(var(--navh) + env(safe-area-inset-top,0px));height:calc(100svh - var(--navh))}
.story-text{bottom:calc(var(--spH,92px) + clamp(22px,4.5svh,56px)) !important}
a,button,summary,label{-webkit-tap-highlight-color:transparent}
.mcta{display:none}
.odots{display:none}
@media (hover:none){
  .offer:hover,.way:hover{transform:none}
  .btn-primary:hover{transform:none}
  .grow:hover .gr-arrow{transform:none}
  .photo-cta{background-attachment:scroll}
}
@media (max-width:760px){
  /* navigation */
  .nav-in{gap:12px}
  .logo-mark{width:32px;height:32px}
  .logo-type{font-size:17px}
  .switch.pill{padding:9px 13px;font-size:12.5px;gap:6px}
  /* histoires au défilement */
  .bt-title{font-size:clamp(36px,min(12.2vw,7.2svh),64px) !important}
  .bt-sub{font-size:15px;line-height:1.45}
  .beat{gap:10px}
  .bt-hint{margin-top:4px}
  .story-promise{padding-block:10px calc(10px + env(safe-area-inset-bottom,0px))}
  .sp-mid{display:none}
  .sp-txt{font-size:13.5px;line-height:1.35}
  .story-promise .btn{--h:48px}
  .story .shot > img{object-position:var(--op,60%) 50%}
  .chap{top:34px;font-size:34px}
  .rail{top:14px}
  .pstory .rail{display:none}
  .pcards{top:12px;left:var(--gutter);right:var(--gutter);width:auto}
  .pcard{padding:12px 14px;gap:5px;border-radius:14px}
  .pcard b{font-size:21px}
  .pc-k{font-size:10px}
  .pc-l{font-size:12px}
  .pc-row{display:none}
  .pc-price{font-size:26px;margin-top:0}
  .pc-line{font-size:12px;padding-bottom:4px}
  .pcard .pc-line b{font-size:12px}
  .pcard .pc-total b{font-size:22px}
  .pc-btn{padding:9px;font-size:13px;margin-top:4px}
  /* sections */
  .sec.lite{padding-block:72px}
  .sec.lite .head2{margin-bottom:28px;gap:14px}
  .h2{font-size:clamp(40px,11.5vw,56px)}
  .lede{font-size:16px}
  .kicker{font-size:12px}
  /* galères */
  .grows{gap:14px}
  .gr-pb{min-height:250px;padding:22px}
  .grow{display:flex;flex-direction:column}
  .gr-arrow{position:relative;left:auto;top:auto;flex:none;width:54px;height:54px;margin:-27px auto}
  .gr-sol{padding:44px 22px 26px}
  .gr-sol h3{font-size:clamp(36px,10.4vw,50px)}
  .gr-sol p{font-size:15.5px}
  .gr-pb q{font-size:21px}
  /* artisans : carrousel à glisser */
  .offers{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--gutter));padding:4px var(--gutter) 8px;scroll-padding-inline:var(--gutter);scrollbar-width:none;overscroll-behavior-x:contain}
  .offers::-webkit-scrollbar{display:none}
  .offers .offer{flex:0 0 84%;scroll-snap-align:start}
  .offers .o-photo{aspect-ratio:16/10}
  .o-price{flex-wrap:wrap;gap:6px 12px;padding:12px 14px}
  .o-price b{font-size:26px}
  .o-big{font-size:44px}
  .odots{display:flex;align-items:center;gap:6px;margin-top:14px}
  .odots i{width:7px;height:7px;border-radius:50%;background:var(--line-strong);transition:width .4s var(--ease),background-color .3s}
  .odots i.on{width:22px;border-radius:4px;background:var(--accent)}
  .odots span{margin-inline-start:auto;color:var(--muted);font-size:10.5px;transition:opacity .4s}
  .odots.seen span{opacity:0}
  .same{display:flex !important;margin-top:16px}
  /* garanties */
  .gt-list{gap:22px;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent);padding-inline-end:40px}
  .gt-list button{scroll-snap-align:start;min-height:44px}
  .gt-l{font-size:26px}
  .gp-ph{aspect-ratio:16/9}
  .gp-txt{padding:20px 20px 24px;gap:16px}
  .gp-txt h3{font-size:30px}
  .checks2 li{font-size:15px}
  .gs-note{font-size:12px}
  /* FAQ */
  .faq summary{font-size:clamp(22px,6.4vw,28px);padding:20px 0;gap:16px}
  .faq details p{font-size:15.5px;padding-bottom:22px}
  /* accès + formulaires */
  .access{padding-block:80px}
  .access h2{font-size:clamp(52px,15vw,76px) !important}
  .access-grid{gap:32px}
  .wl,.wl-done{padding:20px;gap:16px}
  .consent{font-size:13px}
  .consent input{width:22px;height:22px}
  /* pied de page */
  .bigfoot{padding-top:56px}
  .bigfoot nav{gap:2px 20px}
  .bigfoot nav a{padding-block:8px}
  .bf-up{padding-block:8px}
  /* prix artisans */
  .fee{padding:22px}
  .fee-big{font-size:72px}
  .m-n{font-size:56px}
  .money h3{font-size:30px}
  /* Bordeaux : cartes à glisser */
  .bx-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--gutter));padding:4px var(--gutter) 8px;scroll-padding-inline:var(--gutter);scrollbar-width:none;gap:12px}
  .bx-cards::-webkit-scrollbar{display:none}
  .bx-card{flex:0 0 82%;scroll-snap-align:start}
  .bx-in{padding-block:96px 44px}
  .bx-title{font-size:clamp(46px,13vw,64px)}
  .z-list li{font-size:14px;padding:8px 12px}
  /* bouton d'action fixe */
  .mcta{display:flex;position:fixed;left:var(--gutter);right:var(--gutter);bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:60;--h:52px;box-shadow:0 18px 40px -12px rgba(0,0,0,.75);transform:translateY(calc(100% + 30px));transition:transform .5s var(--ease)}
  .mcta.on{transform:none}
  /* écran de choix */
  .half h2{font-size:clamp(44px,13vw,64px)}
  .half .go{height:52px}
}
@media (max-width:760px) and (max-height:700px){
  .bt-sub{font-size:14px}
  .pstory .bt-sub{display:none}
  .pc-line{padding-bottom:2px}
  .sp-txt{font-size:12.5px}
}
@media (prefers-reduced-motion:reduce){.mcta{transition:none}}

/* =================== TRANSITIONS ENTRE PAGES =================== */
html.cu-wait::after{content:"";position:fixed;inset:0;z-index:500;background:var(--cu,#0F0E0D);animation:cuSafe 0s 3s forwards}
@keyframes cuSafe{to{visibility:hidden}}
.curtain{position:fixed;inset:0;z-index:450;display:grid;place-items:center;background:var(--cu-bg,#0F0E0D);color:#EDE8E1;clip-path:inset(100% 0 0 0);visibility:hidden;pointer-events:none}
.curtain.in{visibility:visible;pointer-events:auto;clip-path:inset(0 0 0 0);transition:clip-path .7s cubic-bezier(.77,0,.18,1)}
.curtain.hold{visibility:visible;clip-path:inset(0 0 0 0);transition:none}
.curtain.out{visibility:visible;clip-path:inset(0 0 100% 0);transition:clip-path .85s cubic-bezier(.77,0,.18,1) .05s}
.cu-in{display:flex;flex-direction:column;align-items:center;gap:16px;opacity:0;transform:translateY(14px);transition:opacity .35s var(--ease),transform .5s var(--ease)}
.curtain.in .cu-in,.curtain.hold .cu-in{opacity:1;transform:none;transition-delay:.22s}
.curtain.out .cu-in{opacity:0;transform:translateY(-18px);transition-duration:.3s}
.cu-in .logo-mark{width:54px;height:54px}
.cu-l{font:400 clamp(44px,7vw,104px)/.9 var(--f-display);letter-spacing:.01em;text-align:center;padding-inline:20px}
.cu-bar{width:180px;height:2px;background:rgba(255,255,255,.2);overflow:hidden}
.cu-bar i{display:block;height:100%;background:var(--cu-acc,#E85D2F);transform:scaleX(0);transform-origin:left;transition:transform .75s var(--ease) .15s}
.curtain.in .cu-bar i,.curtain.hold .cu-bar i{transform:none}

/* =================== PAGE 404 =================== */
.e404{position:relative;min-height:calc(100svh - var(--navh));display:flex;align-items:center;overflow:hidden;isolation:isolate;padding-block:64px}
.e4-num{position:absolute;right:-1.5vw;top:50%;transform:translateY(-52%);z-index:-1;font:400 clamp(240px,40vw,620px)/.8 var(--f-display);letter-spacing:-.01em;user-select:none;pointer-events:none}
.e4-num > span:first-child{color:transparent;-webkit-text-stroke:1.5px rgba(237,232,225,.2)}
.e4-fill{position:absolute;inset:0;color:transparent;background:radial-gradient(circle,#E85D2F 1.5px,transparent 2px) 0 0/13px 13px;-webkit-background-clip:text;background-clip:text;clip-path:inset(0 100% 0 0);animation:e4scan 3.4s cubic-bezier(.65,0,.25,1) .5s infinite alternate}
.e4-line{position:absolute;top:-3%;bottom:-3%;left:0;width:2px;background:#E85D2F;box-shadow:0 0 26px 5px rgba(232,93,47,.55);animation:e4line 3.4s cubic-bezier(.65,0,.25,1) .5s infinite alternate}
@keyframes e4scan{to{clip-path:inset(0 0 0 0)}}
@keyframes e4line{to{left:100%}}
.e4-in{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.e4-title{font-size:clamp(64px,9vw,156px);line-height:.86;max-width:8ch}
.e4-cote{width:min(360px,100%)}
.e404 .lede{margin-top:0;max-width:30em}
.e4-more{color:var(--muted);font-size:11.5px}
.e4-more a{color:var(--text)}
@media (max-width:760px){
  .e404{align-items:flex-start;padding-top:36px}
  .e4-num{position:relative;right:auto;top:auto;transform:none;align-self:center;font-size:clamp(150px,52vw,240px);margin-bottom:8px}
  .e404{flex-direction:column;align-items:stretch}
  .e4-title{font-size:clamp(52px,15vw,76px)}
}
@media (prefers-reduced-motion:reduce){.e4-fill{animation:none;clip-path:none}.e4-line{display:none}.curtain,.curtain *{transition:none !important}}

/* accents des titres (É, À…) : ne pas les couper pendant la révélation mot à mot */
.bt-title .w,[data-split] .w{padding-top:.14em;margin-top:-.14em}
.bt-title{line-height:.95 !important}

/* =================== GUIDES (pages explicatives) =================== */
.ghero{position:relative;min-height:clamp(520px,80svh,840px);display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}
.ghero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.04);animation:ghZoom 2.4s var(--ease) both}
@keyframes ghZoom{from{transform:scale(1.12)}}
.ghero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(11,10,9,.96) 6%,rgba(11,10,9,.62) 46%,rgba(11,10,9,.2) 78%),linear-gradient(90deg,rgba(11,10,9,.7),transparent 70%)}
.ghero-in{display:flex;flex-direction:column;gap:20px;padding-block:120px 56px}
.g-title{font-size:clamp(54px,7.2vw,124px);line-height:.9;max-width:14ch}
.g-lead{max-width:40em;color:#D9D2C8;font-size:clamp(17px,1.35vw,20px);line-height:1.6}
.g-meta{color:#A39B91;font-size:11px}
.gbody{display:grid;grid-template-columns:240px minmax(0,760px);justify-content:center;gap:clamp(40px,6vw,96px);padding-block:clamp(56px,7vw,96px) 40px;align-items:start}
.gbody-wide{grid-template-columns:minmax(0,900px)}
.gtoc{position:sticky;top:calc(var(--navh) + 36px);display:flex;flex-direction:column;gap:22px}
.gtoc summary{list-style:none;cursor:pointer;color:#A39B91;font-size:11px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.gtoc summary::-webkit-details-marker{display:none}
.gtoc ol{list-style:none;margin:0;padding:10px 0 0;counter-reset:t;display:flex;flex-direction:column}
.gtoc li{counter-increment:t}
.gtoc ol a{display:grid;grid-template-columns:28px 1fr;gap:4px;padding:8px 0;color:#A39B91;text-decoration:none;font-size:14px;line-height:1.35;transition:color .25s}
.gtoc ol a::before{content:counter(t,decimal-leading-zero);font:500 11px/1.8 var(--f-mono);color:rgba(237,232,225,.35);transition:color .25s}
.gtoc ol a:hover,.gtoc ol a.on{color:#EDE8E1}
.gtoc ol a.on::before{color:#E85D2F}
.gtoc-cta{align-self:flex-start}
.gart{min-width:0}
.gart > section{scroll-margin-top:calc(var(--navh) + 24px)}
.tldr{border:1px solid rgba(232,93,47,.55);background:rgba(232,93,47,.06);border-radius:16px;padding:24px 28px}
.tldr-k{color:#E85D2F;font-size:11px;margin-bottom:12px}
.tldr ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.tldr li{position:relative;padding-left:24px;color:#EDE8E1;font-size:16.5px;line-height:1.5}
.tldr li::before{content:"";position:absolute;left:0;top:.72em;width:12px;height:2px;background:#E85D2F}
.tldr strong{color:#fff}
.g-h2{font-size:clamp(40px,4.2vw,64px);line-height:.92;margin:clamp(56px,7vw,88px) 0 22px}
.g-h3{font-size:30px;line-height:1;margin:56px 0 14px}
.g-p{color:#D9D2C8;font-size:clamp(16.5px,1.2vw,18px);line-height:1.72;margin:0 0 18px}
.g-p strong,.g-list strong,.g-ol strong,.g-check strong{color:#fff;font-weight:600}
.gart a:not(.btn):not(.gcard):not(.g-more):not(.fq-all){color:#EDE8E1;text-decoration:underline;text-decoration-color:#E85D2F;text-underline-offset:3px}
.g-list,.g-ol,.g-check{margin:6px 0 22px;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.g-list li,.g-ol li,.g-check li{position:relative;color:#D9D2C8;font-size:clamp(16px,1.15vw,17.5px);line-height:1.65;padding-left:34px}
.g-list li::before{content:"";position:absolute;left:4px;top:.8em;width:14px;height:2px;background:#E85D2F}
.g-ol{counter-reset:o}
.g-ol li{counter-increment:o}
.g-ol li::before{content:counter(o);position:absolute;left:0;top:.1em;width:24px;height:24px;border-radius:50%;border:1px solid #E85D2F;color:#E85D2F;display:grid;place-items:center;font:500 12px/1 var(--f-mono)}
.g-check li::before{content:"";position:absolute;left:2px;top:.35em;width:20px;height:20px;border-radius:50%;background:rgba(232,93,47,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 12.5l3.5 3.5 7.5-8' fill='none' stroke='%23E85D2F' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.g-more{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:#E85D2F;font-weight:600;font-size:15px;text-decoration:none}
.g-more span{transition:transform .3s var(--ease)}
.g-more:hover span{transform:translateX(4px)}
.gsteps{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.gsteps li{display:grid;grid-template-columns:72px 1fr;gap:12px;padding:26px 0;border-bottom:1px solid var(--line)}
.gs-n{font:400 44px/.9 var(--f-display);color:#E85D2F}
.gsteps h3{font-size:clamp(30px,2.6vw,40px);line-height:1;margin-bottom:8px}
.gsteps p{color:#D9D2C8;line-height:1.65}
.gcards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}
.gcards.g3{grid-template-columns:repeat(3,1fr)}
.gcard{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--surface);border:1px solid var(--line);text-decoration:none;color:#EDE8E1;transition:transform .5s var(--ease),border-color .3s}
.gcard img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform 1s var(--ease)}
.gcard > span{padding-inline:20px}
.gc-k{color:#E85D2F;font-size:10.5px;margin-top:18px}
.gc-t{font:400 30px/1 var(--f-display);margin-top:8px}
.gc-p{color:#A39B91;font-size:15px;line-height:1.5;margin-top:8px}
.gc-a{color:#EDE8E1;font-size:11px;margin:16px 0 20px}
@media (hover:hover){.gcard:hover{transform:translateY(-6px);border-color:var(--line-strong)}.gcard:hover img{transform:scale(1.05)}}
.gfig{margin:26px 0 22px}
.gfig-cap{color:#A39B91;font-size:10.5px;margin-bottom:10px}
.gdevis{border:1px solid var(--line-strong);border-radius:16px;overflow:hidden;background:#141210}
.gd-row{display:grid;grid-template-columns:1fr 132px 104px 116px;gap:12px;padding:13px 18px;border-bottom:1px solid var(--line);font-size:14.5px;color:#D9D2C8;align-items:center}
.gd-row span:nth-child(n+2){text-align:right;font-variant-numeric:tabular-nums}
.gd-row b{color:#E85D2F;font:500 13.5px/1 var(--f-mono)}
.gd-head{font:500 10.5px/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#A39B91;background:#1A1816}
.gd-tot{display:grid;grid-template-columns:1fr auto;gap:8px 24px;padding:16px 18px;font-variant-numeric:tabular-nums}
.gd-tot span{text-align:right;color:#A39B91;font-size:14px}
.gd-tot b{text-align:right;font-weight:500;color:#EDE8E1}
.gd-tot .gd-big{font:400 34px/1 var(--f-display);color:#E85D2F}
.g-two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:8px 0 22px}
.g-box{border:1px solid var(--line);border-radius:14px;padding:20px 22px;background:var(--surface)}
.g-box-k{font-size:10.5px;color:#A39B91;margin-bottom:12px}
.g-yes .g-box-k{color:#5BD08A}
.g-no .g-box-k{color:#E85D2F}
.g-box ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.g-box li{position:relative;padding-left:20px;color:#D9D2C8;font-size:15px;line-height:1.5}
.g-box li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:2px;background:currentColor;opacity:.5}
.glaw{position:relative;border-left:3px solid #E85D2F;background:var(--surface);border-radius:0 14px 14px 0;padding:20px 24px;margin:18px 0}
.glaw-k{color:#E85D2F;font-size:10.5px;margin-bottom:10px}
.glaw p{color:#D9D2C8;line-height:1.65;font-size:16px}
.glaw p + p{margin-top:10px}
.glaw-n{color:#A39B91 !important;font-size:14px !important}
.glaw-l{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.glaw-l li{color:#D9D2C8;font-size:15.5px;line-height:1.55}
.glaw-l strong{color:#fff}
.gtip{border:1px dashed var(--line-strong);border-radius:14px;padding:18px 22px;margin:18px 0}
.gtip-k{color:#E85D2F;font-size:10.5px;margin-bottom:8px}
.gtip p{color:#D9D2C8;line-height:1.6}
.gflow{list-style:none;margin:0;padding:6px 0;border:1px solid var(--line-strong);border-radius:16px;background:#141210}
.gflow li{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(130px,1fr) 1.4fr 110px;gap:14px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--line);font-size:14px}
.gflow li:last-child{border-bottom:0}
.gf-s{color:#EDE8E1;font-weight:600}
.gf-a{color:#A39B91}
.gf-bar{height:8px;border-radius:8px;background:rgba(237,232,225,.08);overflow:hidden}
.gf-bar i{display:block;height:100%;width:var(--w);background:#E85D2F;border-radius:8px;transform-origin:left;transition:transform 1.2s var(--ease)}
.js .gfig:not(.in) .gf-bar i{transform:scaleX(0)}
.gflow li:nth-child(2) i{transition-delay:.1s}.gflow li:nth-child(3) i{transition-delay:.2s}.gflow li:nth-child(4) i{transition-delay:.3s}.gflow li:nth-child(5) i{transition-delay:.4s}.gflow li:nth-child(6) i{transition-delay:.5s}
.gf-r{text-align:right;font:500 13px/1.2 var(--f-mono);color:#EDE8E1;font-variant-numeric:tabular-nums}
.gf-r small{display:block;color:#A39B91;font-size:10.5px}
.gf-end .gf-s,.gf-end .gf-r{color:#5BD08A}
.gfeat{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:8px}
.gfeat > div{border:1px solid var(--line);border-radius:14px;padding:22px;background:var(--surface)}
.gfeat > div:first-child{grid-column:1/-1}
.gfeat-n{color:#E85D2F;font-size:11px}
.gfeat h3{font-size:30px;line-height:1;margin:10px 0 8px}
.gfeat p{color:#D9D2C8;line-height:1.6;font-size:15.5px}
.gtime{list-style:none;margin:10px 0 0;padding:0;position:relative}
.gtime::before{content:"";position:absolute;left:112px;top:8px;bottom:8px;width:2px;background:linear-gradient(#E85D2F,rgba(232,93,47,.15))}
.gtime li{display:grid;grid-template-columns:100px 1fr;gap:40px;padding:14px 0;position:relative}
.gtime li::after{content:"";position:absolute;left:107px;top:22px;width:12px;height:12px;border-radius:50%;background:#0F0E0D;border:2px solid #E85D2F}
.gtime .gt-end::after{background:#5BD08A;border-color:#5BD08A}
.gt-d{color:#E85D2F;font-size:11px;padding-top:6px;text-align:right}
.gtime h3{font-size:28px;line-height:1;margin-bottom:6px}
.gtime p{color:#D9D2C8;line-height:1.6;font-size:15.5px}
.gctrl{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:8px}
.gctrl > div{position:relative;border:1px solid var(--line);border-radius:14px;padding:22px 22px 22px 84px;background:var(--surface)}
.gctrl > div:last-child{grid-column:1/-1}
.gctrl-n{position:absolute;left:22px;top:16px;font:400 54px/1 var(--f-display);color:#E85D2F}
.gctrl h3{font-size:28px;line-height:1;margin-bottom:8px}
.gctrl p{color:#D9D2C8;line-height:1.6;font-size:15.5px}
.gcrit{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:8px}
.gcrit > div{border-top:2px solid #E85D2F;padding:16px 4px 4px}
.gcrit h3{font-size:26px;line-height:1;margin-bottom:6px}
.gcrit p{color:#A39B91;line-height:1.55;font-size:15px}
.gfaq{margin-top:4px}
.gsrc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.gsrc li{font-size:14px;color:#A39B91}
.gsrc a::after{content:" ↗";color:#E85D2F;text-decoration:none;display:inline-block}
.gnote{margin-top:40px;padding-top:18px;border-top:1px dashed var(--line-strong);color:#A39B91;font-size:13px;line-height:1.6}
.gnext{padding-block:clamp(56px,7vw,96px);border-top:1px solid var(--line)}
.gcta{background:#E85D2F;color:#0F0E0D;padding-block:clamp(56px,7vw,96px)}
.gcta-in{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap}
.gcta .kicker{color:#0F0E0D}
.gcta-t{font-size:clamp(46px,6vw,100px);line-height:.88;margin-top:16px;max-width:13ch}
.gcta-t em{color:#fff}
.gcta-p{margin-top:14px;font-size:17px;max-width:32em}
.gcta .btn-primary{background:#0F0E0D;color:#EDE8E1}
.nav{position:sticky}
.gprog{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none}
.gprog i{display:block;height:100%;background:#E85D2F;transform:scaleX(var(--gp,0));transform-origin:left}
.nav-links a[aria-current="page"]{color:#EDE8E1}
@media (max-width:1000px){
  .gbody,.gbody-wide{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:36px}
  .gtoc{position:static}
  .gtoc-d{border:1px solid var(--line);border-radius:14px;padding:14px 18px}
  .gtoc summary{padding-bottom:0;border:0;font-size:11.5px;color:#EDE8E1;display:flex;justify-content:space-between}
  .gtoc summary::after{content:"+";color:#E85D2F;font-size:18px;line-height:.7}
  .gtoc-d[open] summary::after{content:"–"}
  .gtoc-cta{display:none}
  .gcards.g3{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .ghero{min-height:auto}
  .ghero-in{padding-block:110px 36px;gap:16px}
  .g-title{font-size:clamp(46px,13vw,68px)}
  .g-lead{font-size:16.5px}
  .tldr{padding:20px}
  .g-h2{font-size:clamp(36px,10.4vw,48px);margin-top:52px}
  .gsteps li{grid-template-columns:52px 1fr}
  .gs-n{font-size:34px}
  .gcards,.gcards.g3,.g-two,.gfeat,.gctrl{grid-template-columns:1fr}
  .gnext .gcards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--gutter));padding:4px var(--gutter) 8px;scrollbar-width:none}
  .gnext .gcards::-webkit-scrollbar{display:none}
  .gnext .gcard{flex:0 0 80%;scroll-snap-align:start}
  .gd-row{grid-template-columns:1fr auto;grid-template-areas:"p t" "q q";gap:4px 12px;padding:12px 14px;font-size:14px}
  .gd-row span:nth-child(1){grid-area:p}
  .gd-row span:nth-child(2){grid-area:q;text-align:left;color:#A39B91;font-size:12.5px}
  .gd-row span:nth-child(3){display:none}
  .gd-row span:nth-child(4){grid-area:t}
  .gd-head{display:none}
  .gd-tot .gd-big{font-size:30px}
  .gflow li{grid-template-columns:1fr auto;grid-template-areas:"s r" "a a" "b b";gap:6px 12px;padding:12px 14px}
  .gf-s{grid-area:s}.gf-a{grid-area:a;font-size:13px}.gf-bar{grid-area:b}.gf-r{grid-area:r}
  .gtime::before{left:6px}
  .gtime li{grid-template-columns:1fr;gap:4px;padding:12px 0 12px 32px}
  .gtime li::after{left:1px;top:16px}
  .gt-d{text-align:left;padding-top:0}
  .gctrl > div{padding:20px 20px 20px 70px}
  .gctrl-n{font-size:44px;left:20px}
  .gcta-in{flex-direction:column;align-items:stretch}
  .gcta .btn{justify-content:center}
}
@media (prefers-reduced-motion:reduce){.ghero-bg{animation:none}.js .gfig:not(.in) .gf-bar i{transform:none}}

a.gr-chip{text-decoration:none;transition:transform .3s var(--ease),background-color .3s}
a.gr-chip:hover{transform:translateX(3px)}
.gp-txt .g-more,.offers-note a{color:#E85D2F}
.offers-note a{font-weight:600;text-decoration:none;margin-inline-start:6px}
body[data-view="pro"] .g-more{color:#fff}

/* =================== FLÈCHES CLIQUABLES + BOUTON RETOUR =================== */
a.gr-arrow{cursor:pointer;text-decoration:none;transition:transform .7s cubic-bezier(.2,.9,.2,1.2) .55s,background-color .3s,border-color .3s}
a.gr-arrow:hover,a.gr-arrow:focus-visible{background:#E85D2F;border-color:#E85D2F;transition-delay:0s}
a.gr-arrow:hover svg,a.gr-arrow:focus-visible svg{stroke:#0F0E0D}
.grow.in a.gr-arrow:hover{transform:scale(1.12)}
body[data-view="pro"] a.gr-arrow:hover{background:#fff}
.gback{position:fixed;left:var(--gutter);bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:70;display:inline-flex;align-items:center;gap:12px;padding:8px 20px 8px 8px;border-radius:999px;background:rgba(15,14,13,.9);border:1px solid var(--line-strong);color:#EDE8E1;font:600 14px/1 var(--f-body);text-decoration:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 18px 40px -14px rgba(0,0,0,.8);transform:translateY(calc(100% + 40px));opacity:0;transition:transform .6s var(--ease),opacity .4s,border-color .3s;pointer-events:none}
.gback.on{transform:none;opacity:1;pointer-events:auto;transition-delay:.9s}
.gb-i{width:36px;height:36px;border-radius:50%;background:#E85D2F;display:grid;place-items:center;flex:none}
.gb-i svg{width:18px;height:18px;fill:none;stroke:#0F0E0D;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s var(--ease)}
.gback:hover{border-color:#E85D2F}
.gback:hover .gb-i svg{transform:translateX(-3px)}
@media (max-width:760px){.gback{bottom:calc(14px + env(safe-area-inset-bottom,0px));font-size:13.5px}}
@media (prefers-reduced-motion:reduce){.gback{transition:opacity .2s}}

/* flèches des galères : plus petites, jamais sur le texte */
.gr-arrow{width:48px;height:48px;margin:-24px 0 0 -24px}
.gr-arrow svg{width:20px;height:20px}
@media (min-width:861px){
  .gr-pb{padding-right:calc(clamp(24px,3vw,40px) + 28px)}
  .gr-sol{padding-left:max(clamp(24px,3vw,44px),52px)}
}
@media (max-width:860px){
  .grow{display:flex;flex-direction:column}
  .gr-pb{min-height:260px;padding-bottom:42px}
  .gr-arrow{position:relative;left:auto;top:auto;flex:none;width:42px;height:42px;margin:-21px auto;transform:scale(0)}
  .grow.in .gr-arrow{transform:none}
  .gr-arrow svg{width:18px;height:18px}
  .gr-sol{padding-top:40px}
}

/* =================== ACCUEIL : PREMIER ÉCRAN (promesse) =================== */
#p-top.story{height:calc(100svh + 230svh)}
#p-top .story-promise{transform:translateY(105%);transition:transform .6s var(--ease)}
#p-top .sp-on .story-promise{transform:none}
#p-top .story-stage:not(.sp-on) .story-text{bottom:clamp(30px,6svh,72px) !important}
.beat-hero{gap:18px;max-width:min(1180px,calc(100% - 2 * var(--gutter) - 170px))}
.hx-title .hx-k{display:block;margin-bottom:16px;color:#EDE8E1;font:500 12px/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase}
.hx-title .hx-k .w{overflow:visible}
.hx-title .hx-k .w > span{transition-duration:.6s}
.hx-title .hx-k .dot{display:inline-block;margin-right:10px;vertical-align:middle}
.hx-k .dot{background:#E85D2F}
.hx-title{font-size:clamp(56px,6.1vw,108px) !important;line-height:.9 !important;color:#fff}
.hx-seo{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hx-l{display:block}
.hx-acc{color:#E85D2F}
.hx-pills{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.hx-pills a{display:inline-flex;align-items:center;gap:10px;padding:10px 16px 10px 10px;border-radius:999px;background:rgba(15,14,13,.62);border:1px solid rgba(237,232,225,.2);color:#EDE8E1;text-decoration:none;font:500 14px/1.2 var(--f-body);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:border-color .3s,background-color .3s,transform .4s var(--ease)}
.hx-pills a:hover{border-color:#E85D2F;background:rgba(232,93,47,.16);transform:translateY(-2px)}
.hx-n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#E85D2F;color:#0F0E0D;font-size:10.5px;letter-spacing:0;flex:none}
.hx-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:6px}
.hx-go{appearance:none;background:none;border:0;color:#EDE8E1;font:600 15px/1 var(--f-body);cursor:pointer;padding:10px 0;border-bottom:1px solid rgba(237,232,225,.4);transition:border-color .3s}
.hx-go:hover{border-color:#E85D2F}
.hx-go span{display:inline-block;margin-left:6px;animation:hxDown 1.8s var(--ease) infinite}
@keyframes hxDown{50%{transform:translateY(4px)}}
.hx-micro{color:#A39B91;font-size:11px}
.beat-hero .hx-pills,.beat-hero .hx-ctas,.beat-hero .hx-micro{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .7s var(--ease)}
.beat-hero.on .hx-pills{opacity:1;transform:none;transition-delay:.55s}
.beat-hero.on .hx-ctas{opacity:1;transform:none;transition-delay:.7s}
.beat-hero.on .hx-micro{opacity:1;transform:none;transition-delay:.85s}
.beat-hero:not(.on) .hx-pills,.beat-hero:not(.on) .hx-ctas,.beat-hero:not(.on) .hx-micro{transition-delay:0s;transition-duration:.3s}
#p-top .story-shade{background:linear-gradient(0deg,rgba(11,10,9,.94) 0%,rgba(11,10,9,.7) 30%,rgba(11,10,9,.15) 62%,transparent 75%),linear-gradient(90deg,rgba(11,10,9,.72) 0%,rgba(11,10,9,.25) 55%,transparent 75%)}
@media (max-width:900px){
  .beat-hero{max-width:calc(100% - 2 * var(--gutter));gap:14px}
  .hx-title{font-size:clamp(40px,11.4vw,64px) !important}
  .hx-pills{flex-direction:column;align-items:flex-start;gap:6px}
  .hx-pills a{font-size:13px;padding:7px 12px 7px 7px}
  .hx-n{width:22px;height:22px;font-size:9.5px}
  .hx-ctas .btn{flex:1 1 100%;justify-content:center}
  .hx-go{font-size:14px}
}
@media (max-width:900px) and (max-height:720px){.hx-micro{display:none}.hx-title{font-size:clamp(36px,10vw,52px) !important}.hx-go{display:none}}
@media (prefers-reduced-motion:reduce){.hx-go span{animation:none}}

/* =================== CRÉDIBILITÉ : fiches d'illustration + fondateur =================== */
.o-photo{position:relative}
.o-illu{position:absolute;left:12px;top:12px;background:rgba(15,14,13,.82);color:#EDE8E1;border:1px solid rgba(237,232,225,.25);border-radius:999px;padding:6px 10px;font-size:10px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.fdr-in{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.fdr-ph{position:relative;aspect-ratio:4/5;border-radius:20px;overflow:hidden;background:radial-gradient(120% 90% at 30% 20%,#2a2521,#141210 70%);border:1px solid var(--line);display:grid;place-items:center}
.fdr-ph::before{content:"";position:absolute;inset:18px;border:1px dashed rgba(232,93,47,.45);border-radius:14px}
.fdr-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fdr-mono{font:400 clamp(110px,12vw,180px)/.8 var(--f-display);color:transparent;-webkit-text-stroke:1.5px #E85D2F;letter-spacing:.02em}
.fdr-cote{position:absolute;left:18px;right:18px;bottom:18px;display:flex;align-items:center;gap:10px;color:#E85D2F;font-size:10.5px;border-inline:1px solid currentColor;padding-block:6px}
.fdr-cote::before,.fdr-cote::after{content:"";flex:1;height:1px;background:currentColor}
.fdr-txt{display:flex;flex-direction:column;gap:22px}
.fdr-txt .h2{max-width:14ch}
.fdr-q{margin:0;font:500 clamp(19px,1.6vw,24px)/1.5 var(--f-body);color:#EDE8E1;max-width:34em;border-left:2px solid #E85D2F;padding-left:22px}
.fdr-who{display:flex;flex-direction:column;gap:4px}
.fdr-who b{font:400 30px/1 var(--f-display);letter-spacing:.03em}
.fdr-who span{color:#A39B91;font-size:14px}
.fdr-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.fdr-ctas .g-more{margin-top:0}
@media (max-width:760px){.fdr-in{grid-template-columns:1fr}.fdr-ph{aspect-ratio:16/10;max-height:260px}.fdr-mono{font-size:120px}}

/* portrait du fondateur */
figure.fdr-ph{margin:0;background:#141210}
figure.fdr-ph::before{display:none}
figure.fdr-ph img{filter:grayscale(1) contrast(1.06) brightness(.96);transition:filter .8s var(--ease),transform 1.2s var(--ease)}
@media (hover:hover){figure.fdr-ph:hover img{filter:none;transform:scale(1.03)}}
figure.fdr-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,14,13,.78) 0%,rgba(15,14,13,0) 34%);pointer-events:none}
figure.fdr-ph .fdr-cote{z-index:2}
@media (max-width:760px){figure.fdr-ph{aspect-ratio:4/5;max-height:none;max-width:420px}}

body[data-view="pro"] .fdr-q{border-left-color:#9DBBFF;color:#fff}
body[data-view="pro"] .fdr-who span{color:#B9CCF5}
body[data-view="pro"] figure.fdr-ph{background:#0E2F73}
body[data-view="pro"] .fdr-cote{color:#9DBBFF}
body[data-view="pro"] figure.fdr-ph::after{background:linear-gradient(0deg,rgba(14,47,115,.85) 0%,rgba(14,47,115,0) 34%)}

/* garanties : le titre ne passe plus jamais sous le menu */
@media (min-width:901px) and (min-height:621px){
  .gs-stage{top:var(--navh);height:calc(100svh - var(--navh));justify-content:safe center;padding-block:clamp(28px,5vh,56px) clamp(20px,3vh,36px)}
}
@media (min-width:901px) and (min-height:621px) and (max-height:920px){
  .gs-stage{gap:clamp(14px,2.4vh,24px)}
  .gscroll .h2{font-size:clamp(40px,6.6vh,76px)}
  .gscroll .head2 .lede{display:none}
  .gscroll .gpanel{min-height:calc(100svh - var(--navh) - 250px)}
  .gscroll .gp-txt{padding:22px 26px;gap:14px}
  .gscroll .gp-txt h3{font-size:clamp(26px,4vh,40px)}
  .gscroll .checks2{gap:8px}
  .gscroll .checks2 li{font-size:14.5px}
  .gscroll .gt-list button{padding:12px 0 10px}
  .gscroll .gt-l{font-size:clamp(24px,3.6vh,36px)}
  .gscroll .gs-note{display:none}
}

/* =================== FAQ (page questions fréquentes) =================== */
.fq-hero{position:relative;overflow:hidden;isolation:isolate;border-bottom:1px solid var(--line);background:radial-gradient(60% 80% at 88% 0%,rgba(232,93,47,.16),transparent 70%),#0F0E0D}
.fq-hero::before{content:"";position:absolute;inset:0;z-index:-2;background-image:radial-gradient(rgba(237,232,225,.13) 1px,transparent 1.4px);background-size:22px 22px;-webkit-mask-image:linear-gradient(200deg,#000 10%,transparent 65%);mask-image:linear-gradient(200deg,#000 10%,transparent 65%)}
.fq-hero::after{content:"?";position:absolute;z-index:-1;right:-.04em;top:50%;transform:translateY(-54%);font:400 clamp(360px,46vw,760px)/.8 var(--f-display);color:transparent;-webkit-text-stroke:1.5px rgba(232,93,47,.38);pointer-events:none;animation:fqQ 1.6s var(--ease) both}
@keyframes fqQ{from{opacity:0;transform:translateY(-46%) rotate(6deg)}}
.fq-hero-in{display:flex;flex-direction:column;gap:20px;padding-block:clamp(56px,6vw,96px) clamp(44px,5vw,72px)}
.fq-hero .g-title{max-width:none;font-size:clamp(54px,6.4vw,112px)}
.fq-hero .g-title em{display:block}
.fq-search{display:flex;align-items:center;gap:14px;max-width:720px;height:66px;margin-top:14px;padding:0 22px;border:1px solid var(--line-strong);border-radius:999px;background:rgba(23,21,19,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .25s,box-shadow .25s}
.fq-search:focus-within{border-color:#E85D2F;box-shadow:0 0 0 5px rgba(232,93,47,.16)}
.fq-search svg{width:22px;height:22px;flex:none;fill:none;stroke:#E85D2F;stroke-width:2;stroke-linecap:round}
.fq-search input{flex:1;min-width:0;height:100%;background:none;border:0;outline:0;color:#EDE8E1;font:400 17px/1 var(--f-body)}
.fq-search input::placeholder{color:#8E867C}
.fq-search input::-webkit-search-cancel-button{filter:grayscale(1) brightness(1.6)}
.fq-count{flex:none;color:#A39B91;font-size:11px;white-space:nowrap}
.fq-tabs{display:inline-flex;align-self:flex-start;gap:4px;padding:5px;border:1px solid var(--line);border-radius:999px;background:#171513;transition:opacity .3s}
.fq-tabs button{appearance:none;border:0;background:none;cursor:pointer;padding:12px 22px;border-radius:999px;color:#A39B91;font:600 15px/1 var(--f-body);transition:background .3s var(--ease),color .3s}
.fq-tabs button:hover{color:#EDE8E1}
.fq-tabs button[aria-selected="true"]{background:#E85D2F;color:#0F0E0D}
.fq-tabs button:focus-visible{outline:2px solid #EDE8E1;outline-offset:2px}
.fq-searching .fq-tabs{opacity:.45}
.fq-searching .fq-tabs button[aria-selected="true"]{background:none;color:#A39B91;box-shadow:inset 0 0 0 1px var(--line-strong)}
.fq-nav-k{color:#A39B91;font-size:11px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.fq-nav ol{position:relative}
.fq-searching .fq-nav ol{opacity:.4;pointer-events:none}
.fq-sec{scroll-margin-top:calc(var(--navh) + 24px)}
.fq-sec .g-h2{margin:clamp(52px,6vw,84px) 0 16px}
.fq-group > .fq-sec:first-of-type .g-h2{margin-top:0}
.fq-glabel{display:none;margin:0 0 18px}
.fq-searching .fq-glabel{display:flex}
.fq-searching .fq-group + .fq-group{margin-top:56px}
.fq-searching .fq-sec .g-h2{margin-top:36px;font-size:clamp(30px,3vw,40px)}
.fq-searching .fq-group > .fq-sec:first-of-type .g-h2{margin-top:0}
.fqview .faq summary{font-size:clamp(22px,2vw,30px);padding:22px 0;line-height:1.08}
.fqview .faq details{scroll-margin-top:calc(var(--navh) + 24px)}
.fqview .faq details[open] summary{color:#E85D2F}
.fqview .faq details p{color:#C9C1B6;line-height:1.65;padding-bottom:26px}
.fq-empty{border:1px dashed var(--line-strong);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.fq-empty p{font:400 clamp(26px,2.4vw,34px)/1.05 var(--f-display);letter-spacing:.02em}
.fq-all{display:inline-flex;align-items:center;gap:10px;margin-top:26px;color:var(--accent);font-weight:600;font-size:16px;text-decoration:none}
.fq-all span{transition:transform .3s var(--ease)}
.fq-all:hover span{transform:translateX(5px)}
.gart .gfaq .fq-all{color:#E85D2F}
@media (max-width:1000px){
  .fq-nav{position:sticky;top:var(--navh);z-index:6;gap:0;margin-inline:calc(var(--gutter) * -1);padding:10px var(--gutter);background:rgba(15,14,13,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
  .fq-nav-k,.fq-nav .gtoc-cta{display:none}
  .fq-nav ol{flex-direction:row;gap:8px;padding:0;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .fq-nav ol::-webkit-scrollbar{display:none}
  .fq-nav ol a{display:block;white-space:nowrap;padding:9px 15px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;color:#D9D2C8}
  .fq-nav ol a::before{display:none}
  .fq-nav ol a.on{border-color:#E85D2F;color:#EDE8E1;background:rgba(232,93,47,.14)}
  .fq-body{padding-top:0}
  .fq-list{padding-top:12px}
  .fq-sec,.fqview .faq details{scroll-margin-top:calc(var(--navh) + 76px)}
}
@media (max-width:760px){
  .fq-hero-in{padding-block:48px 36px;gap:16px}
  .fq-hero .g-title{font-size:clamp(46px,13vw,68px)}
  .fq-hero::after{font-size:78vw;right:-.1em;top:26%;-webkit-text-stroke-width:1px;opacity:.7}
  .fq-search{height:58px;padding:0 18px;gap:10px}
  .fq-search input{font-size:16px}
  .fq-tabs{align-self:stretch;display:flex}
  .fq-tabs button{flex:1;padding:12px 10px;font-size:14.5px}
  .fqview .faq summary{font-size:clamp(21px,6vw,26px);padding:19px 0}
  .fqview .faq details p{font-size:15.5px}
  .fq-empty{padding:22px}
}

/* =================== NAVIGATION UNIFIÉE (barre + sous-menu guides + menu plein écran) =================== */
.nav{--nv-acc:#E85D2F}
body[data-view="pro"] .nav{--nv-acc:#FFFFFF}
.nav-in{gap:20px}
.nav-links{gap:30px;align-self:stretch;align-items:center}
.nav-links > a,.nv-l{position:relative;display:inline-flex;align-items:center;height:100%;color:var(--muted);text-decoration:none;font-size:14.5px;font-weight:500;transition:color .25s}
.nav-links > a:hover,.nv-l:hover{color:var(--text)}
.nav-links > a::after,.nv-l::after{content:"";position:absolute;left:0;right:0;top:calc(50% + 14px);height:2px;border-radius:2px;background:var(--nv-acc);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav-links > a:hover::after,.nv-l:hover::after{transform:scaleX(1);transform-origin:left}
.nav-links > a[aria-current="page"],.nv-dd.is-on .nv-l{color:var(--text)}
.nav-links > a[aria-current="page"]::after,.nv-dd.is-on .nv-l::after{transform:scaleX(1)}
.nv-dd{position:relative;display:flex;align-items:center;gap:2px;height:100%}
.nv-dd-b{appearance:none;background:none;border:0;padding:6px;margin-right:-6px;color:var(--muted);cursor:pointer;display:grid;place-items:center;border-radius:8px;transition:color .25s}
.nv-dd-b:hover{color:var(--text)}
.nv-dd-b:focus-visible{outline:2px solid var(--nv-acc);outline-offset:1px}
.nv-dd-b svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s var(--ease)}
.nv-dd-p{position:absolute;top:calc(100% - 4px);left:-26px;width:620px;padding:12px;border:1px solid rgba(237,232,225,.13);border-radius:22px;background:#171513;box-shadow:0 40px 80px -24px rgba(0,0,0,.8);opacity:0;visibility:hidden;transform:translateY(10px) scale(.985);transform-origin:20% 0;transition:opacity .25s,transform .45s var(--ease),visibility 0s .45s}
.nv-dd-p::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.nv-dd.open .nv-dd-p{opacity:1;visibility:visible;transform:none;transition:opacity .3s,transform .5s var(--ease),visibility 0s}
.nv-dd.open .nv-dd-b svg{transform:rotate(180deg)}
@media (hover:hover) and (pointer:fine){
  .nv-dd:hover .nv-dd-p{opacity:1;visibility:visible;transform:none;transition:opacity .3s,transform .5s var(--ease),visibility 0s}
  .nv-dd:hover .nv-dd-b svg{transform:rotate(180deg)}
  .nv-dd.shut .nv-dd-p{opacity:0;visibility:hidden;transform:translateY(10px) scale(.985)}
}
.nv-dd-all{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:16px 18px;border-radius:14px;background:rgba(232,93,47,.1);text-decoration:none;color:#EDE8E1;margin-bottom:6px;transition:background .25s}
.nv-dd-all:hover{background:rgba(232,93,47,.18)}
.nv-dd-all .mono{font-size:10.5px;color:#E85D2F}
.nv-dd-all b{font:400 24px/1 var(--f-display);letter-spacing:.02em;font-weight:400}
.nv-dd-all i{font-style:normal;color:#E85D2F;transition:transform .35s var(--ease)}
.nv-dd-all:hover i{transform:translateX(5px)}
.nv-dd-g{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.nv-dd-c{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center;padding:10px;border-radius:14px;text-decoration:none;color:#EDE8E1;transition:background .25s}
.nv-dd-c:hover,.nv-dd-c[aria-current]{background:rgba(237,232,225,.06)}
.nv-dd-c img{width:64px;height:64px;border-radius:10px;object-fit:cover;filter:grayscale(.7) brightness(.9);transition:filter .45s}
.nv-dd-c:hover img,.nv-dd-c[aria-current] img{filter:none}
.nv-dd-c > span{display:flex;flex-direction:column;gap:5px;min-width:0}
.nv-dd-n{font-size:10.5px;color:#A39B91}
.nv-dd-c[aria-current] .nv-dd-n{color:#E85D2F}
.nv-dd-c b{font:400 21px/1 var(--f-display);letter-spacing:.02em;font-weight:400}
.nv-dd-c em{font-style:normal;font-size:13px;line-height:1.3;color:#A39B91}
/* bouton menu (tablette et mobile) */
.nv-burger{display:none;align-items:center;gap:10px;height:42px;padding:0 17px 0 15px;border:1px solid var(--line-strong);border-radius:999px;background:none;color:var(--text);font:600 13.5px/1 var(--f-body);cursor:pointer;flex:none;transition:border-color .25s,background .25s}
.nv-burger:hover{border-color:var(--text)}
.nv-burger:focus-visible{outline:2px solid var(--nv-acc);outline-offset:2px}
.nv-bi{position:relative;width:18px;height:10px;flex:none}
.nv-bi i{position:absolute;left:0;right:0;top:0;height:1.6px;border-radius:2px;background:currentColor;transition:transform .5s var(--ease),top .5s var(--ease)}
.nv-bi i:last-child{top:8.4px}
.nv-burger[aria-expanded="true"] .nv-bi i{top:4.2px;transform:rotate(45deg)}
.nv-burger[aria-expanded="true"] .nv-bi i:last-child{transform:rotate(-45deg)}
@media (max-width:1120px){
  .nav-links{display:none}
  .nv-burger{display:inline-flex}
}
@media (max-width:600px){
  .nav-in > .switch.pill{display:none}
  .nav .nv-cta{display:inline-flex;margin-inline-start:auto;--h:40px;padding-inline:15px;font-size:13px}
  .nv-burger{width:40px;height:40px;padding:0;justify-content:center}
  .nv-bt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}
@media (max-width:339px){
  .nav .nv-cta{display:none}
  .nv-burger{margin-inline-start:auto}
}
/* menu plein écran */
.mnav{--mx:calc(100% - var(--gutter) - 20px);--my:calc(var(--navh) / 2 + env(safe-area-inset-top,0px));position:fixed;inset:0;z-index:49;background:var(--bg);color:var(--text);overflow-y:auto;overscroll-behavior:contain;clip-path:circle(0 at var(--mx) var(--my));transition:clip-path .8s cubic-bezier(.76,0,.24,1)}
.mnav.on{clip-path:circle(150% at var(--mx) var(--my))}
.mnav::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(rgba(237,232,225,.1) 1px,transparent 1.4px);background-size:22px 22px;-webkit-mask-image:linear-gradient(160deg,transparent 30%,#000 100%);mask-image:linear-gradient(160deg,transparent 30%,#000 100%)}
.mnav-in{position:relative;min-height:100%;max-width:var(--maxw);margin-inline:auto;display:flex;flex-direction:column;gap:clamp(20px,3.4vh,32px);padding:calc(var(--navh) + env(safe-area-inset-top,0px) + clamp(20px,4vh,48px)) var(--gutter) calc(24px + env(safe-area-inset-bottom,0px))}
.mnav-k{font-size:11px;color:var(--muted);padding-bottom:14px;border-bottom:1px solid var(--line)}
.mnav-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(16px,3vh,30px)}
.mnav-l > li,.mnav-foot{opacity:0;transform:translateY(34px);transition:opacity .3s,transform .3s}
.mnav.on .mnav-l > li,.mnav.on .mnav-foot{opacity:1;transform:none;transition:opacity .6s,transform .9s var(--ease);transition-delay:calc(.22s + var(--i) * .08s)}
.mnav-a{display:flex;align-items:flex-start;gap:14px;text-decoration:none;color:var(--text)}
.mnav-n{font-size:11px;color:var(--accent);padding-top:.8em;width:18px;flex:none}
.mnav-t{font:400 clamp(48px,12.4vw,104px)/.88 var(--f-display);letter-spacing:.01em;transition:color .3s,transform .5s var(--ease)}
.mnav-a:hover .mnav-t{transform:translateX(8px)}
.mnav-a[aria-current] .mnav-t{color:var(--accent)}
.mnav-sub{list-style:none;margin:14px 0 0 32px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mnav-sub a{display:block;padding:9px 14px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;color:var(--text);text-decoration:none;transition:border-color .25s}
.mnav-sub a:hover{border-color:var(--line-strong)}
.mnav-sub a[aria-current]{border-color:var(--accent);background:var(--accent-soft)}
.mnav-foot{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-top:22px;border-top:1px solid var(--line)}
.mnav-foot .btn{flex:1 1 100%}
.mnav-foot .switch.pill{margin:0}
.mnav-m{flex-basis:100%;font-size:10.5px;color:var(--muted)}
html.mnav-open body{overflow:hidden}
html.mnav-open .nav{background:var(--bg);border-bottom-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
html.mnav-open .mcta,html.mnav-open .gback{opacity:0 !important;pointer-events:none}
@media (min-width:1121px){.mnav{display:none !important}}
@media (min-width:601px) and (max-width:1120px){.mnav-foot .btn{flex:0 1 auto}}
@media (prefers-reduced-motion:reduce){.mnav{transition:none}.mnav-l > li,.mnav-foot{transition:none !important}.nv-dd-p{transition:none}}


/* =================== COMPOSANTS DES GUIDES ARTISANS =================== */
.gquote{margin:0 0 26px;padding:26px 0 22px;border-block:1px solid var(--line)}
.gquote p{margin:0;font:400 clamp(40px,4.4vw,68px)/.95 var(--f-display);letter-spacing:.01em;color:var(--text)}
.gquote cite{display:block;margin-top:14px;font-style:normal;font-size:11px;color:var(--muted)}
.gtags{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.gtags li{padding:9px 15px;border:1px solid var(--line-strong);border-radius:999px;font-size:14px;font-weight:500}
.gfee{display:grid;grid-template-columns:1.1fr 1fr;gap:28px 40px;align-items:center;margin:8px 0 24px;padding:clamp(24px,3vw,36px);border:1px solid var(--line-strong);border-radius:22px;background:rgba(255,255,255,.05)}
.gfee-big{margin:0;font:400 clamp(96px,11vw,160px)/.8 var(--f-display);letter-spacing:-.01em}
.gfee-big small{display:block;margin-top:14px;font:500 15px/1.35 var(--f-body);letter-spacing:0;color:var(--muted)}
.gfee-no{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.gfee-no li{padding:7px 12px;border-radius:999px;background:var(--accent-soft);font-size:13px;font-weight:600}
.gfee-calc{display:grid;grid-template-columns:1fr auto;gap:14px 20px;font-size:12.5px;color:var(--muted)}
.gfee-calc b{text-align:right;font-weight:500;color:var(--text);font-size:15px}
.gfee-calc span:nth-last-child(2),.gfee-calc b:last-child{padding-top:14px;border-top:1px solid var(--line-strong)}
.gfee-calc .gfee-tot{font:400 34px/1 var(--f-display);letter-spacing:.02em}
.gcalc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,40px);margin:8px 0 10px;padding:clamp(22px,3vw,36px);border:1px solid var(--line-strong);border-radius:22px;background:rgba(255,255,255,.05)}
.gc-in{display:flex;flex-direction:column;gap:22px}
.gc-f{display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 12px;cursor:pointer}
.gc-f > span{font-size:14px;line-height:1.35;color:var(--muted)}
.gc-f output{font:400 26px/1 var(--f-display);letter-spacing:.02em;white-space:nowrap}
.gc-f input{grid-column:1 / -1}
.gcalc input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:30px;margin:0;background:transparent;cursor:pointer}
.gcalc input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(90deg,var(--accent) var(--p,50%),var(--line-strong) var(--p,50%))}
.gcalc input[type=range]::-moz-range-track{height:4px;border-radius:4px;background:linear-gradient(90deg,var(--accent) var(--p,50%),var(--line-strong) var(--p,50%))}
.gcalc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-10px;border-radius:50%;background:var(--accent);border:4px solid var(--bg);box-shadow:0 0 0 1px var(--accent);transition:transform .2s}
.gcalc input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent);border:4px solid var(--bg);box-shadow:0 0 0 1px var(--accent)}
.gcalc input[type=range]:active::-webkit-slider-thumb{transform:scale(1.2)}
.gcalc input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}
.gc-out{display:flex;flex-direction:column;gap:12px}
.gc-col{padding:20px 22px;border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;gap:6px}
.gc-col p{margin:0;font-size:10.5px;color:var(--muted)}
.gc-col b{font:400 clamp(52px,5.4vw,76px)/.9 var(--f-display);letter-spacing:.01em}
.gc-col span{font-size:14.5px;line-height:1.4;color:var(--muted)}
.gc-rv{background:var(--accent-soft);border-color:var(--accent)}
.gc-note{margin:2px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted)}
@media (max-width:760px){
  .gfee,.gcalc{grid-template-columns:1fr}
  .gquote p{font-size:clamp(34px,10vw,46px)}
}
/* sous-menu des guides côté artisans */
body[data-view="pro"] .nv-dd-p{background:#0E2F73;border-color:rgba(255,255,255,.18)}
body[data-view="pro"] .nv-dd-all{background:rgba(255,255,255,.1);color:#fff}
body[data-view="pro"] .nv-dd-all:hover{background:rgba(255,255,255,.16)}
body[data-view="pro"] .nv-dd-all .mono,body[data-view="pro"] .nv-dd-all i{color:#9DBBFF}
body[data-view="pro"] .nv-dd-c{color:#fff}
body[data-view="pro"] .nv-dd-c:hover,body[data-view="pro"] .nv-dd-c[aria-current]{background:rgba(255,255,255,.08)}
body[data-view="pro"] .nv-dd-n,body[data-view="pro"] .nv-dd-c em{color:#B9CCF5}
body[data-view="pro"] .nv-dd-c[aria-current] .nv-dd-n{color:#fff}


.gpro .gart .gfaq .fq-all{color:#9DBBFF}

.nv-dd-c em,.nv-dd-all b{text-decoration:none !important}




/* titres des guides artisans : accent bleu clair, sans soulignement (il débordait sur la ligne suivante) */
.gpro .g-title em,.gpro .g-h2 em,.gpro .gquote em{color:#9DBBFF;text-decoration:none}


.gpro .gcta-t em{text-decoration:none}




/* simulateur mis en avant */
.pcalc-lead{max-width:40em;margin-top:18px;color:var(--muted);font-size:clamp(16px,1.3vw,19px);line-height:1.6}
.pcalc .gcalc{margin-top:0}
.gc-wk{font-size:13px !important;color:var(--text) !important;opacity:.85}
.gc-cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:4px}
.gc-cta span{font-size:12.5px;color:var(--muted)}
.gc-col b{font-variant-numeric:tabular-nums}
@media (min-width:1001px){.pcalc .gcalc{grid-template-columns:1fr 1.05fr;padding:clamp(28px,3.4vw,48px)}.pcalc .gc-col b{font-size:clamp(64px,6.4vw,104px)}}
@media (max-width:760px){.gc-cta .btn{width:100%}}








@media (max-width:1320px){.nav-in .nv-cta .nv-x{display:none}}

/* tableau de prix (guides travaux) */
.gprice-w{margin:24px 0 22px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#141210}
.gprice{width:100%;border-collapse:collapse;font-size:14.5px}
.gprice caption{caption-side:top;text-align:left;padding:14px 18px 12px;color:#A39B91;font:500 10.5px/1.5 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--line)}
.gprice th,.gprice td{padding:13px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.gprice thead th{color:#A39B91;font:500 10.5px/1.4 var(--f-mono);text-transform:uppercase;letter-spacing:.04em;background:rgba(237,232,225,.03)}
.gprice tbody th{font-weight:500;color:#EDE8E1}
.gprice td{color:#D9D2C8;white-space:nowrap}
.gprice td.gp-v{color:#EDE8E1;font-weight:600}
.gprice td small{display:block;color:#A39B91;font-size:12.5px;white-space:normal;font-weight:400}
.gprice tbody tr:last-child th,.gprice tbody tr:last-child td{border-bottom:0}
.gprice tr.gp-sub th{padding-top:18px;color:#E85D2F;font:500 10.5px/1.4 var(--f-mono);text-transform:uppercase;letter-spacing:.06em;background:rgba(232,93,47,.05)}
@media (max-width:760px){
  .gprice thead{display:none}
  .gprice tr{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px 14px;border-bottom:1px solid var(--line)}
  .gprice th,.gprice td{padding:0;border:0}
  .gprice td{white-space:normal;text-align:right}
  .gprice td:nth-child(3){grid-column:1 / -1;text-align:left;color:#A39B91;font-size:13px}
  .gprice tr.gp-sub{display:block;background:rgba(232,93,47,.05)}
}
/* héros sans photo (pages sans image adaptée) */
.ghero.gh-type{min-height:clamp(460px,64svh,680px);background:radial-gradient(60% 80% at 88% 0%,rgba(232,93,47,.16),transparent 70%),#0F0E0D}
.ghero.gh-type::before{content:"";position:absolute;inset:0;z-index:-2;background-image:radial-gradient(rgba(237,232,225,.13) 1px,transparent 1.4px);background-size:22px 22px;-webkit-mask-image:linear-gradient(200deg,#000 10%,transparent 65%);mask-image:linear-gradient(200deg,#000 10%,transparent 65%)}
.ghero.gh-type::after{content:attr(data-glyph);position:absolute;z-index:-1;right:-.02em;bottom:-.12em;font:400 clamp(220px,30vw,520px)/.8 var(--f-display);color:transparent;-webkit-text-stroke:1.5px rgba(232,93,47,.34);pointer-events:none;white-space:nowrap}
@media (max-width:760px){.ghero.gh-type::after{font-size:52vw;opacity:.7}}
/* bloc fondateur dans la page À propos */
.gfounder{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start;margin:26px 0}
.gfounder img{width:100%;height:auto;border-radius:18px;filter:grayscale(1);transition:filter .6s}
.gfounder:hover img{filter:none}
.gfounder blockquote{margin:0;font:400 clamp(24px,2.4vw,32px)/1.15 var(--f-display);letter-spacing:.01em;color:#EDE8E1}
.gfounder cite{display:block;margin-top:14px;font-style:normal;color:#A39B91;font-size:14px}
@media (max-width:760px){.gfounder{grid-template-columns:1fr}.gfounder img{max-width:220px}}

/* quartiers cliquables (page Bordeaux) */
.z-list li:has(a){padding:0;transition:border-color .25s,background .25s}
.z-list li a{display:block;padding:9px 14px;color:inherit;text-decoration:none}
.z-list li:has(a):hover{border-color:#E85D2F;background:rgba(232,93,47,.1)}
@media (max-width:760px){.z-list li a{padding:8px 12px}}
.bx-gcards{margin-top:0}
.bx-price{max-width:880px}
.bx-price .gprice-w{margin-top:0}
.z-hit{animation:zHit 1.2s var(--ease)}
@keyframes zHit{0%{box-shadow:0 0 0 0 rgba(232,93,47,.6)}100%{box-shadow:0 0 0 14px rgba(232,93,47,0)}}
/* ligne « guide des prix » en bas du sous-menu Bordeaux */
.nv-dd-x{margin:6px 0 0;background:rgba(237,232,225,.05)}
.nv-dd-x[aria-current]{background:rgba(232,93,47,.18)}




/* devis qui se construit, puis verrouillé (histoire de Claire) */
.story .quote-card{width:300px;gap:8px}
.qc-l{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}
.qc-l li{display:flex;justify-content:space-between;gap:12px;font-size:12px;line-height:1.3;border-bottom:1px dashed rgba(15,14,13,.18);padding-bottom:5px;opacity:0}
.qc-l i{font-style:normal;color:#3d3832}
.qc-l em{font:500 11.5px/1.3 var(--f-mono);font-style:normal;white-space:nowrap}
.qc-t{display:flex;justify-content:space-between;align-items:baseline;margin:2px 0 0}
.qc-t span{font:500 10.5px/1 var(--f-mono);text-transform:uppercase;letter-spacing:.05em;color:#5a534b}
.qc-t b{font-variant-numeric:tabular-nums}
.qc-lock{display:flex;align-items:center;gap:8px;margin:2px 0 0;padding:8px 10px;border-radius:10px;background:#0F0E0D;color:#EDE8E1;font-size:11.5px;line-height:1.3;opacity:0;transform:translateY(6px) scale(.97);transition:opacity .4s,transform .5s var(--ease)}
.qc-lock svg{width:18px;height:18px;flex:none;fill:none;stroke:#E85D2F;stroke-width:2;stroke-linecap:round}
.qc-lock .qc-sh{transform:translateY(-3px);transition:transform .5s var(--ease) .2s}
.quote-card.locked .qc-lock{opacity:1;transform:none}
.quote-card.locked .qc-lock .qc-sh{transform:none}
.quote-card.locked{box-shadow:0 0 0 2px #E85D2F,0 30px 60px -20px rgba(0,0,0,.6)}
@media (max-width:760px){.story .quote-card{width:220px}.qc-l li{font-size:10.5px}.qc-l em{font-size:10px}.qc-l li:nth-child(n+4){display:none}}
@media (prefers-reduced-motion:reduce){.qc-l li{opacity:1 !important;transform:none !important}}


/* section claire (rythme) */
.sec.paper{--bg:#EDE8E1;--text:#0F0E0D;--muted:#5E574F;--line:rgba(15,14,13,.14);--line-strong:rgba(15,14,13,.32);--surface:#E4DED5;--accent-soft:rgba(232,93,47,.12);background:#EDE8E1;color:#0F0E0D}
.sec.paper .h2{color:#0F0E0D}
.sec.paper .kicker{color:#C9481F}
.sec.paper .h2 em{color:#E85D2F}
/* le séquestre à manipuler */
.sq{display:grid;grid-template-columns:minmax(260px,.8fr) 1.6fr;gap:clamp(24px,3vw,48px);align-items:start}
.sq-vault{position:sticky;top:calc(var(--navh) + 24px);padding:26px;border-radius:22px;background:#0F0E0D;color:#EDE8E1;display:flex;flex-direction:column;gap:14px;overflow:hidden;isolation:isolate}
.sq-vault::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(80% 60% at 100% 0%,rgba(232,93,47,.22),transparent 70%)}
.sq-k{display:flex;align-items:center;gap:8px;margin:0;font-size:11px;color:#E85D2F;text-transform:uppercase;letter-spacing:.06em}
.sq-k svg{width:18px;height:18px;fill:none;stroke:#E85D2F;stroke-width:2;stroke-linecap:round}
.sq-big{margin:0;font:400 clamp(64px,7vw,104px)/.85 var(--f-display);letter-spacing:.01em}
.sq-big b{font-weight:400;font-variant-numeric:tabular-nums}
.sq-gauge{display:block;height:6px;border-radius:6px;background:rgba(237,232,225,.14);overflow:hidden}
.sq-gauge i{display:block;height:100%;width:100%;background:#E85D2F;border-radius:6px;transition:width .9s var(--ease)}
.sq-paid{display:flex;justify-content:space-between;align-items:baseline;padding-top:12px;border-top:1px solid rgba(237,232,225,.14)}
.sq-paid span{font-size:10.5px;color:#A39B91;text-transform:uppercase;letter-spacing:.05em}
.sq-paid b{font:400 30px/1 var(--f-display);color:#5BD08A;font-variant-numeric:tabular-nums}
.sq-note{margin:0;font-size:13px;line-height:1.5;color:#A39B91}
.sq-reset{align-self:flex-start;appearance:none;background:none;border:0;border-bottom:1px solid rgba(237,232,225,.35);color:#EDE8E1;font:600 13px/1 var(--f-body);padding:6px 0;cursor:pointer}
.sq-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.sq-step{position:relative;display:grid;grid-template-columns:36px 1fr auto;grid-template-areas:"n i a" "n x x";gap:8px 14px;align-items:center;padding:16px 18px;border-radius:16px;background:#fff;border:1px solid rgba(15,14,13,.1);transition:background .4s,border-color .4s,opacity .4s,transform .4s var(--ease)}
.sq-step .sq-n{grid-area:n;font-size:11px;color:#8a8279;align-self:start;padding-top:4px}
.sq-info{grid-area:i;display:flex;flex-direction:column;gap:3px;min-width:0}
.sq-info b{font:400 24px/1 var(--f-display);letter-spacing:.02em}
.sq-info > span:not(.sq-msg){font-size:13px;color:#5E574F}
.sq-msg{font-size:13px;font-weight:600;min-height:0}
.sq-amt{grid-area:a;font-size:15px;font-weight:500;white-space:nowrap}
.sq-act{grid-area:x;display:flex;flex-wrap:wrap;gap:8px}
.sq-act button{appearance:none;border-radius:999px;padding:9px 16px;font:600 13.5px/1 var(--f-body);cursor:pointer;transition:background .25s,color .25s,opacity .25s,transform .2s}
.sq-ok{background:#0F0E0D;color:#EDE8E1;border:1px solid #0F0E0D}
.sq-ok:hover:not(:disabled){background:#E85D2F;border-color:#E85D2F;color:#0F0E0D}
.sq-ko{background:none;color:#0F0E0D;border:1px solid rgba(15,14,13,.3)}
.sq-ko:hover:not(:disabled){border-color:#0F0E0D}
.sq-act button:disabled{opacity:.28;cursor:not-allowed}
.sq-act button:active:not(:disabled){transform:scale(.97)}
.sq-step.next{border-color:#E85D2F;box-shadow:0 12px 30px -18px rgba(232,93,47,.8)}
.sq-step.done{background:#E2F3E8;border-color:#5BD08A}
.sq-step.done .sq-act{display:none}
.sq-step.done .sq-msg{color:#1F7A45}
.sq-step.done .sq-amt{color:#1F7A45}
.sq-step.ko{background:#FBE9E3;border-color:#E85D2F}
.sq-step.ko .sq-msg{color:#C9481F}
.sq-step.wait{opacity:.55}
.sq-fly{position:fixed;z-index:80;pointer-events:none;padding:6px 12px;border-radius:999px;background:#5BD08A;color:#0F0E0D;font:600 13px/1 var(--f-mono);box-shadow:0 10px 24px -10px rgba(0,0,0,.5);transition:transform .9s cubic-bezier(.6,0,.2,1),opacity .9s}
.sq-end{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;padding:26px;border-radius:22px;background:#0F0E0D;color:#EDE8E1}
.sq-end-t{margin:0;flex:1 1 100%;font:400 clamp(30px,3.4vw,48px)/1 var(--f-display);letter-spacing:.01em}
.sq-end-t em{color:#5BD08A;font-style:normal}
@media (max-width:900px){
  .sq{grid-template-columns:1fr}
  .sq-vault{position:sticky;top:calc(var(--navh) + 8px);z-index:4;padding:14px 16px;gap:8px;display:grid;grid-template-columns:1fr auto;align-items:center}
  .sq-vault .sq-k{grid-column:1 / -1}
  .sq-big{font-size:48px}
  .sq-gauge{grid-column:1 / -1}
  .sq-paid{grid-column:1 / -1;padding-top:8px}
  .sq-paid b{font-size:22px}
  .sq-note{display:none}
  .sq-reset{grid-column:2;grid-row:2;align-self:center}
  .sq-step{grid-template-columns:28px 1fr auto;padding:14px}
  .sq-info b{font-size:21px}
}
@media (prefers-reduced-motion:reduce){.sq-fly{display:none}.sq-gauge i{transition:none}}





html.ch-open .mcta,html.ch-open .gback,html.ch-top .mcta,html.ch-top .gback{display:none !important}





/* premier écran de l'histoire épuré : ni compteur ni chapitres avant le premier défilement */
.story .chap,.story .rail{transition:opacity .5s var(--ease)}
.story:not(.pstory) .story-stage:not(.sp-on) .chap,.story:not(.pstory) .story-stage:not(.sp-on) .rail,.pstory.at0 .chap,.pstory.at0 .rail{opacity:0;pointer-events:none}
/* un seul bouton d'action à la fois */
.nav .nv-cta{transition:opacity .3s,visibility .3s}
html.sp-cta .nav .nv-cta{opacity:0;visibility:hidden}
@media (max-width:760px){html.mc-on .nav .nv-cta{opacity:0;visibility:hidden}}
.bx-more{display:flex;flex-wrap:wrap;gap:6px 28px;margin-top:22px}


/* histoire artisan : ce qui bouge avec le défilement */
.pstory .shot > img{transform:scale(var(--kb,1.03)) translate3d(0,var(--ky,0),0) !important;transition:transform .25s linear !important;will-change:transform}
.pc-tag{opacity:.38;transition:opacity .35s var(--ease),border-color .35s var(--ease)}
.pc-tag svg path{stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .4s var(--ease)}
.pc-tag.ok{opacity:1;border-color:rgba(111,155,255,.55)}
.pc-tag.ok svg path{stroke-dashoffset:0}
.pc-line{transition:opacity .25s linear,transform .25s linear}
.pc-btn{transition:background-color .35s var(--ease),color .35s var(--ease)}
.pc-btn.ok{background:#5BD08A;color:#0B2415}
.pc-bar{display:block;height:4px;margin-top:4px;border-radius:4px;background:rgba(237,232,225,.12);overflow:hidden}
.pc-bar i{display:block;height:100%;background:#6F9BFF;transform:scaleX(0);transform-origin:left;transition:transform .25s linear}
.stars5 span{display:inline-block;opacity:.18;transform:scale(.7);transition:opacity .3s var(--ease),transform .3s var(--ease)}
.stars5 span.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.pstory .shot > img{transform:scale(1.03) !important;transition:none !important}}
/* contact direct avec le fondateur */
.tcard{display:grid;grid-template-columns:52px 1fr;gap:12px 14px;align-items:center;margin-top:22px;padding:14px 16px;border:1px solid rgba(237,232,225,.16);border-radius:16px;background:rgba(15,14,13,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.tcard img{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:50% 18%}
.tc-t{margin:0;font-weight:600;font-size:15px;line-height:1.3}
.tc-s{margin:3px 0 0;font-size:13.5px;line-height:1.4;color:#A39B91}
.tc-btns{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.tc-b{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(237,232,225,.28);color:inherit;text-decoration:none;font-weight:600;font-size:14px;transition:border-color .2s,color .2s,background-color .2s}
.tc-b svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.tc-b:hover{border-color:#E85D2F;color:#E85D2F}
body[data-view="pro"] .tcard{background:rgba(10,30,80,.35);border-color:rgba(255,255,255,.22)}
body[data-view="pro"] .tc-s{color:#B9CCF5}
body[data-view="pro"] .tc-b:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.08)}
@media (max-width:520px){.tc-b{flex:1 1 0;justify-content:center}}
/* guides créés depuis le back-office */
.art-list{margin-top:48px;padding-top:24px;border-top:1px solid var(--line)}
.art-list ul{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 32px}
.art-list a{display:flex;flex-direction:column;gap:4px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.art-list b{font-weight:600;font-size:16px}
.art-list span{color:var(--muted);font-size:14px;line-height:1.45}
.art-list a:hover b{color:#E85D2F}
body[data-view="pro"] .art-list a:hover b{color:#9DBBFF}
.gfig{margin:28px 0}
.gfig img{display:block;width:100%;height:auto;border-radius:14px}
/* footer 3 colonnes */
.bigfoot .fs-row:has(.fcols){align-items:flex-start;gap:28px 48px}
.bigfoot nav.fcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:28px 40px;flex:1 1 560px;font-size:14px}
.fcol-k{font:500 10.5px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text);margin:0 0 14px;opacity:.75}
.fcol ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.fcol a{text-decoration:none;color:var(--muted);transition:color .2s}
.fcol a:hover{color:var(--text)}
.bigfoot .fs-row:has(.fcols) .bf-up{align-self:flex-start}
@media (max-width:760px){
  .bigfoot nav.fcols{grid-template-columns:1fr 1fr;gap:26px 20px;flex-basis:100%}
  .bigfoot nav.fcols .fcol:last-child{grid-column:1/-1}
  .fcol ul{gap:2px}
  .fcol a{display:inline-block;padding-block:7px}
  .bigfoot .fs-row:has(.fcols) .bf-up{margin-inline-start:0}
}




.moe-lede{max-width:46ch;color:var(--muted);font-size:clamp(17px,1.4vw,20px);line-height:1.55}
.moe-grid{list-style:none;margin:0 auto;padding-block:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
.moe-grid li{border:1px solid var(--line);border-radius:18px;padding:clamp(22px,2vw,30px);display:flex;flex-direction:column;gap:12px;background:var(--surface)}
.moe-grid h3{font-size:clamp(30px,2.6vw,42px);line-height:.95;color:var(--text)}
.moe-grid p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.55}
.moe-n{color:var(--accent)}
.moe-note{margin-top:clamp(20px,2.4vw,32px);color:var(--muted);font-size:14px}
.moe-note a{color:var(--text)}
@media (max-width:1000px){.moe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.moe-grid{grid-template-columns:1fr}}
/* photos de fond chargées à l'approche (performance) */
html.lzbg :not(.bg-in)[style*="--img"]{--img:none !important}


/* Outils interactifs : étiquette « essayez », main d'aide, générateur de devis */
.try-tag{display:inline-flex;align-items:center;gap:9px;margin:0 0 4px;padding:7px 13px 7px 11px;border-radius:999px;border:1px solid currentColor;color:var(--accent);font-size:11px;letter-spacing:.05em;text-transform:uppercase;line-height:1.3;max-width:100%;align-self:flex-start}
.try-tag i{flex:none;width:8px;height:8px;border-radius:50%;background:currentColor;animation:tryDot 1.8s infinite}
@keyframes tryDot{0%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}100%{opacity:1;transform:scale(1)}}
.sec.paper .try-tag{color:#C9481F}
.sq > .try-tag{grid-column:1 / -1;justify-self:start;margin:0}
.gfig > .try-tag{margin:0 0 12px}
.gpro .gfig > .try-tag{color:#9DBBFF}
[data-try].tried .try-tag i,.gfig.tried .try-tag i{animation:none;opacity:.5}
.try-host{position:relative}
.try-hand{position:absolute;z-index:3;margin:0;width:38px;height:38px;pointer-events:none;transform-origin:30% 10%;animation:tryHand 1.5s cubic-bezier(.45,0,.2,1) infinite;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
.try-hand path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.try-hand .h1{stroke:#fff;stroke-width:5}
.try-hand .h2{stroke:#0F0E0D;stroke-width:2}
@keyframes tryHand{0%,100%{transform:translate(8px,12px) scale(1)}45%{transform:translate(0,0) scale(1)}55%{transform:translate(0,0) scale(.88)}}
.try-hand.slide{animation:trySlide 2.4s cubic-bezier(.45,0,.2,1) infinite}
@keyframes trySlide{0%,100%{transform:translate(0,4px)}50%{transform:translate(46px,4px)}}
.try-pulse{animation:tryPulse 1.5s infinite}
@keyframes tryPulse{0%{box-shadow:0 0 0 0 rgba(232,93,47,.6)}70%,100%{box-shadow:0 0 0 12px rgba(232,93,47,0)}}
.gd-q{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}
.gd-q b{min-width:58px;text-align:center}
.gd-st{appearance:none;flex:none;width:28px;height:28px;border-radius:50%;border:1px solid rgba(237,232,225,.35);background:rgba(237,232,225,.06);color:#EDE8E1;font:600 16px/1 var(--f-body);cursor:pointer;display:inline-grid;place-items:center;padding:0;transition:background .2s,border-color .2s,transform .15s}
.gd-st:hover{background:#E85D2F;border-color:#E85D2F;color:#0F0E0D}
.gd-st:active{transform:scale(.92)}
.gd-st:disabled{opacity:.3;cursor:not-allowed;background:none}
.gpro .gd-st:hover{background:#9DBBFF;border-color:#9DBBFF;color:#123A8C}
.gd-row.gd-zero{opacity:.45}
.gd-fee{display:grid;grid-template-columns:1fr auto;gap:8px 24px;padding:0 18px 16px;font-variant-numeric:tabular-nums}
.gd-fee span{text-align:right;color:#A39B91;font-size:14px}
.gd-fee b{text-align:right;font-weight:500;color:#EDE8E1;font-size:15px}
.gd-fee .gd-net{color:#5BD08A;font:400 26px/1 var(--f-display)}
.gpro .gd-fee span{color:#B9CCF5}
.gd-reset{appearance:none;background:none;border:0;border-bottom:1px solid currentColor;color:#A39B91;font:600 12.5px/1 var(--f-body);padding:4px 0;margin:0 18px 16px;cursor:pointer}
.gpro .gd-reset{color:#B9CCF5}
.gd-note{margin:0;padding:0 18px 16px;font-size:12.5px;line-height:1.5;color:#A39B91}
.gpro .gd-note{color:#B9CCF5}
@media (max-width:760px){.gd-row span.gd-qc{text-align:left}.gd-q{justify-content:flex-start}.gd-q b{min-width:50px}}
@media (prefers-reduced-motion:reduce){.try-tag i,.try-hand,.try-pulse{animation:none}}

/* Téléphone à l'horizontale et petits écrans bas : l'encadré du logo ne recouvre plus les titres */
@media (min-width:761px) and (max-height:560px){
  .half{padding-top:104px;padding-bottom:32px;gap:14px}
  .half .content{gap:12px}
  .half h2{font-size:clamp(34px,10vh,52px)}
  .seam-box{top:14px;padding:10px 14px;flex-direction:row;gap:12px}
  .seam-box .seam-h{text-align:left;max-width:15em}
}

/* Fenêtre « Écrire à Teddy » */
.cdlg{width:min(440px,calc(100vw - 32px));max-width:none;padding:28px 26px 26px;border:1px solid #E85D2F;border-radius:22px;background:#0F0E0D;color:#EDE8E1;box-shadow:0 30px 80px -20px rgba(0,0,0,.7)}
.cdlg::backdrop{background:rgba(15,14,13,.62);backdrop-filter:blur(4px)}
.cdlg[open]{animation:cdlgIn .32s var(--ease)}
@keyframes cdlgIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.cdlg-x{position:absolute;top:12px;right:14px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(237,232,225,.25);background:none;color:#EDE8E1;font:400 22px/1 var(--f-body);cursor:pointer}
.cdlg-x:hover{border-color:#E85D2F;color:#E85D2F}
.cdlg-k{margin:0 0 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#E85D2F}
.cdlg-t{margin:0 0 8px;font:400 40px/.95 var(--f-display);letter-spacing:.01em;color:#EDE8E1}
.cdlg-p{margin:0 0 18px;font-size:14.5px;line-height:1.5;color:#A39B91}
.cdlg-mail{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 10px 14px;border-radius:12px;background:rgba(237,232,225,.06);border:1px solid rgba(237,232,225,.14);margin-bottom:16px}
.cdlg-addr{font:500 14px/1.3 var(--f-mono);word-break:break-all;user-select:all}
.cdlg-copy{flex:none;appearance:none;border:1px solid rgba(237,232,225,.3);background:none;color:#EDE8E1;border-radius:999px;padding:8px 14px;font:600 13px/1 var(--f-body);cursor:pointer}
.cdlg-copy:hover{border-color:#E85D2F;color:#E85D2F}
.cdlg-go{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cdlg-b{display:flex;align-items:center;justify-content:center;height:48px;border-radius:999px;border:1px solid rgba(237,232,225,.3);color:#EDE8E1;text-decoration:none;font:600 14.5px/1 var(--f-body);transition:background .2s,border-color .2s,color .2s}
.cdlg-b:hover{border-color:#EDE8E1;background:rgba(237,232,225,.08)}
.cdlg-main{background:#E85D2F;border-color:#E85D2F;color:#0F0E0D}
.cdlg-main:hover{background:#ff7448;border-color:#ff7448;color:#0F0E0D}
.cdlg-wa[hidden]{display:none}
@media (prefers-reduced-motion:reduce){.cdlg[open]{animation:none}}

/* Fenêtre de contact côté artisans : couleurs de l'espace pro */
.cdlg.pro{background:#123A8C;border-color:#9DBBFF;color:#FFFFFF}
.cdlg.pro::backdrop{background:rgba(14,47,115,.6)}
.cdlg.pro .cdlg-k{color:#9DBBFF}
.cdlg.pro .cdlg-t{color:#FFFFFF}
.cdlg.pro .cdlg-p{color:#B9CCF5}
.cdlg.pro .cdlg-mail{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.cdlg.pro .cdlg-x,.cdlg.pro .cdlg-copy,.cdlg.pro .cdlg-b{border-color:rgba(255,255,255,.42);color:#FFFFFF}
.cdlg.pro .cdlg-x:hover,.cdlg.pro .cdlg-copy:hover{border-color:#9DBBFF;color:#9DBBFF}
.cdlg.pro .cdlg-b:hover{border-color:#FFFFFF;background:rgba(255,255,255,.12)}
.cdlg.pro .cdlg-main{background:#FFFFFF;border-color:#FFFFFF;color:#123A8C}
.cdlg.pro .cdlg-main:hover{background:#D4E0FA;border-color:#D4E0FA;color:#123A8C}

/* Barre de défilement aux couleurs de l'espace : orange côté particuliers, bleu côté artisans */
html{scrollbar-color:#E85D2F #0F0E0D}
html:has(body[data-view="pro"]){scrollbar-color:#9DBBFF #0E2F73}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:#0F0E0D}
::-webkit-scrollbar-thumb{background:#E85D2F;border-radius:999px;border:3px solid #0F0E0D}
::-webkit-scrollbar-thumb:hover{background:#ff7448}
body[data-view="pro"] ::-webkit-scrollbar-track,html:has(body[data-view="pro"])::-webkit-scrollbar-track{background:#0E2F73}
body[data-view="pro"] ::-webkit-scrollbar-thumb,html:has(body[data-view="pro"])::-webkit-scrollbar-thumb{background:#9DBBFF;border-color:#0E2F73}
/*GPRO-AUTO*/
/* thème bleu des guides artisans (généré par gen_gpro.py) */
.gpro .ghero-shade{background:linear-gradient(0deg,rgba(8,27,70,.96) 6%,rgba(8,27,70,.62) 46%,rgba(8,27,70,.2) 78%),linear-gradient(90deg,rgba(8,27,70,.7),transparent 70%)}
.gpro .g-lead{color:#DCE6FB}
.gpro .g-meta{color:#B9CCF5}
.gpro .gtoc summary{color:#B9CCF5}
.gpro .gtoc ol a{color:#B9CCF5}
.gpro .gtoc ol a::before{color:rgba(255,255,255,.35)}
.gpro .gtoc ol a:hover,.gpro .gtoc ol a.on{color:#FFFFFF}
.gpro .gtoc ol a.on::before{color:#9DBBFF}
.gpro .tldr{border:1px solid rgba(157,187,255,.55);background:rgba(157,187,255,.06)}
.gpro .tldr-k{color:#9DBBFF}
.gpro .tldr li{color:#FFFFFF}
.gpro .tldr li::before{background:#9DBBFF}
.gpro .g-p{color:#DCE6FB}
.gpro .gart a:not(.btn):not(.gcard):not(.g-more):not(.fq-all){color:#FFFFFF;text-decoration-color:#9DBBFF}
.gpro .g-list li,.gpro .g-ol li,.gpro .g-check li{color:#DCE6FB}
.gpro .g-list li::before{background:#9DBBFF}
.gpro .g-ol li::before{border:1px solid #9DBBFF;color:#9DBBFF}
.gpro .g-check li::before{background:rgba(157,187,255,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 12.5l3.5 3.5 7.5-8' fill='none' stroke='%239DBBFF' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.gpro .g-more{color:#9DBBFF}
.gpro .gs-n{color:#9DBBFF}
.gpro .gsteps p{color:#DCE6FB}
.gpro .gcard{color:#FFFFFF}
.gpro .gc-k{color:#9DBBFF}
.gpro .gc-p{color:#B9CCF5}
.gpro .gc-a{color:#FFFFFF}
.gpro .gfig-cap{color:#B9CCF5}
.gpro .gdevis{background:#0E2F73}
.gpro .gd-row{color:#DCE6FB}
.gpro .gd-row b{color:#9DBBFF}
.gpro .gd-head{color:#B9CCF5;background:#16449F}
.gpro .gd-tot span{color:#B9CCF5}
.gpro .gd-tot b{color:#FFFFFF}
.gpro .gd-tot .gd-big{color:#9DBBFF}
.gpro .g-box-k{color:#B9CCF5}
.gpro .g-no .g-box-k{color:#9DBBFF}
.gpro .g-box li{color:#DCE6FB}
.gpro .glaw{border-left:3px solid #9DBBFF}
.gpro .glaw-k{color:#9DBBFF}
.gpro .glaw p{color:#DCE6FB}
.gpro .glaw-n{color:#B9CCF5 !important}
.gpro .glaw-l li{color:#DCE6FB}
.gpro .gtip-k{color:#9DBBFF}
.gpro .gtip p{color:#DCE6FB}
.gpro .gflow{background:#0E2F73}
.gpro .gf-s{color:#FFFFFF}
.gpro .gf-a{color:#B9CCF5}
.gpro .gf-bar{background:rgba(255,255,255,.08)}
.gpro .gf-bar i{background:#9DBBFF}
.gpro .gf-r{color:#FFFFFF}
.gpro .gf-r small{color:#B9CCF5}
.gpro .gfeat-n{color:#9DBBFF}
.gpro .gfeat p{color:#DCE6FB}
.gpro .gtime::before{background:linear-gradient(#9DBBFF,rgba(157,187,255,.15))}
.gpro .gtime li::after{background:#0B2A6B;border:2px solid #9DBBFF}
.gpro .gt-d{color:#9DBBFF}
.gpro .gtime p{color:#DCE6FB}
.gpro .gctrl-n{color:#9DBBFF}
.gpro .gctrl p{color:#DCE6FB}
.gpro .gcrit > div{border-top:2px solid #9DBBFF}
.gpro .gcrit p{color:#B9CCF5}
.gpro .gsrc li{color:#B9CCF5}
.gpro .gsrc a::after{color:#9DBBFF}
.gpro .gnote{color:#B9CCF5}
.gpro .gcta{background:#9DBBFF;color:#0B2A6B}
.gpro .gcta .kicker{color:#0B2A6B}
.gpro .gcta .btn-primary{background:#0B2A6B;color:#FFFFFF}
.gpro .gprog i{background:#9DBBFF}
.gpro .nav-links a[aria-current="page"]{color:#FFFFFF}
@media (max-width:1000px){.gpro .gtoc summary{color:#FFFFFF}.gpro .gtoc summary::after{color:#9DBBFF}}
@media (max-width:760px){.gpro .gd-row span:nth-child(2){color:#B9CCF5}}
.gpro .gp-txt .g-more,.gpro .offers-note a{color:#9DBBFF}
.gpro .crumbs{color:#B9CCF5}
.gpro .crumbs a{color:#DCE6FB}
.gpro .gcta{background:#FFFFFF;color:#123A8C}
.gpro .gcta .kicker{color:#2F6DE8}
.gpro .gcta-t em{color:#2F6DE8}
.gpro .gcta .btn-primary{background:#123A8C;color:#FFFFFF}
.gpro .ghero-shade{background:linear-gradient(0deg,rgba(9,30,78,.97) 6%,rgba(12,40,100,.66) 46%,rgba(12,40,100,.22) 78%),linear-gradient(90deg,rgba(9,30,78,.72),transparent 70%)}
/*/GPRO-AUTO*/
