
/*═══════════════════════════════════════════════════════
  AMLI MOTORS
  Typographie : Instrument Sans / Instrument Serif italic
  Palette : noir · argent · or · rouge
═══════════════════════════════════════════════════════*/
:root{
  /* ── Thème clair (corps du site) ── */
  --ink:#FBFAF7;        /* fond principal   */
  --ink-2:#F3F1EB;      /* fond secondaire  */
  --ink-3:#EAE7DF;      /* fond au survol   */
  --paper:#16130F;      /* texte principal  */
  --silver:#2C2822;
  --grey:#5F5A51;       /* texte secondaire */
  --grey-2:#8A857B;     /* texte tertiaire  */
  --line:rgba(22,19,15,.15);
  --line-2:rgba(150,105,10,.42);
  --gold:#A9760A;       /* or lisible sur clair */
  --gold-lt:#8A5F05;    /* or foncé, pour le texte */
  --gold-dk:#C79A2C;
  --gold-dim:rgba(169,118,10,.10);
  --on-gold:#16130F;
  --red:#C40D19;
  --btn:#16130F;        /* bouton principal sur clair */
  --btn-fg:#FFFFFF;
  --btn-h:#C1870F;
  --btn-hfg:#16130F;
  --f:'Instrument Sans',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  --fs:'Instrument Serif',Georgia,serif;
  --e:cubic-bezier(.16,1,.3,1);
}

/* ── Thème sombre (bandeau d'accueil, bandeau défilant, pied de page) ── */
.dark{
  --ink:#080706;
  --ink-2:#0F0E0C;
  --ink-3:#171512;
  --paper:#F7F5F1;
  --silver:#C9CCD0;
  --grey:#A5A099;
  --grey-2:#7A756D;
  --line:rgba(255,255,255,.12);
  --line-2:rgba(240,197,116,.34);
  --gold:#D2941B;
  --gold-lt:#F2C77A;
  --gold-dk:#A8781A;
  --gold-dim:rgba(210,148,27,.12);
  --on-gold:#16130F;
  --red:#E1121F;
  --btn:#F2C77A;
  --btn-fg:#16130F;
  --btn-h:#FFFFFF;
  --btn-hfg:#16130F;
  background:var(--ink);color:var(--paper);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  background:var(--ink);color:var(--paper);font-family:var(--f);
  font-size:16px;line-height:1.55;font-weight:400;overflow-x:hidden;
  -webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;
}
body.lock{overflow:hidden}
button,input,select,textarea{font:inherit;color:inherit;border:none;background:none;outline:none}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
::selection{background:#F2C77A;color:#16130F}
.wrap{width:100%;max-width:1460px;margin:0 auto;padding:0 clamp(20px,4vw,72px)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;z-index:99999;background:var(--gold);color:var(--ink);padding:10px 18px;border-radius:4px}

/* ── Type scale ─────────────────────────────── */
.h1,.h2,.h3{font-weight:600;letter-spacing:-.035em;line-height:1.0}
.h1{font-size:clamp(40px,6.4vw,92px);line-height:.98;letter-spacing:-.042em}
.h2{font-size:clamp(30px,4.2vw,60px);line-height:1.02}
.h3{font-size:clamp(23px,2.6vw,36px);line-height:1.06}
.it{font-family:var(--fs);font-style:italic;font-weight:400;letter-spacing:-.015em}
.gold{color:var(--gold-lt)}
.lbl{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--grey);display:inline-flex;align-items:center;gap:12px}
.lbl::before{content:'';width:28px;height:1px;background:var(--gold)}
.lead{font-size:clamp(15.5px,1.2vw,18px);color:var(--grey);max-width:58ch;line-height:1.68}
.lead b{color:var(--paper);font-weight:600}
.mono{font-variant-numeric:tabular-nums;font-feature-settings:'tnum'}

/* ── Logo ───────────────────────────────────── */
.lm{display:block;flex-shrink:0;height:auto}
.brand{display:flex;align-items:center;gap:12px}
.wm .a{font-size:19px;font-weight:700;letter-spacing:.19em;color:currentColor;display:block;line-height:1}
.wm .m{display:flex;align-items:center;gap:7px;margin-top:4px}
.wm .m i{display:block;height:1px;flex:1;min-width:10px;background:var(--gold-dk)}
.wm .m span{font-size:8.5px;font-weight:600;letter-spacing:.28em;color:var(--gold);text-transform:uppercase}
.swiss{width:12px;height:12px;background:var(--red);border-radius:2px;display:inline-grid;place-items:center;flex-shrink:0}
.swiss::before{content:'';width:7px;height:7px;background:
  linear-gradient(#fff,#fff) center/7px 2.3px no-repeat,
  linear-gradient(#fff,#fff) center/2.3px 7px no-repeat}
.tagline{font-size:9.5px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--grey-2);margin-top:10px}

/*═══ PRELOADER ═══*/
#pre{display:none}
.js #pre{position:fixed;inset:0;z-index:9999;background:var(--ink);display:grid;place-items:center;transition:clip-path .95s var(--e) .2s;clip-path:inset(0 0 0 0)}
#pre.out{clip-path:inset(0 0 100% 0)}
.pre-in{text-align:center;width:min(86vw,380px)}
.pre-in .lm{margin:0 auto 24px;opacity:0;transform:translateY(14px);animation:fin .9s var(--e) .1s forwards}
@keyframes fin{to{opacity:1;transform:none}}
.pre-wm{font-size:clamp(26px,5vw,40px);font-weight:700;letter-spacing:.2em;opacity:0;animation:fin .9s var(--e) .3s forwards}
.pre-bar{height:1px;background:rgba(255,255,255,.1);margin:28px 0 12px;overflow:hidden}
.pre-bar i{display:block;height:100%;width:0;background:var(--gold)}
.pre-num{font-size:9.5px;font-weight:500;letter-spacing:.26em;color:var(--grey-2);text-transform:uppercase}

/*═══ PROGRESS ═══*/
#prog{position:fixed;top:0;left:0;right:0;height:2px;z-index:8000;pointer-events:none}
#prog i{display:block;height:100%;background:#C1870F;transform:scaleX(0);transform-origin:0 50%;will-change:transform}

/*═══ NAV ═══*/
nav{position:fixed;top:0;left:0;right:0;z-index:7000;padding:clamp(14px,1.7vw,22px) 0;transition:padding .5s var(--e),background .5s var(--e),border-color .5s}
nav{color:#F7F5F1}
nav.solid{background:rgba(251,250,247,.90);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(22,19,15,.14);padding:11px 0;color:#16130F}
nav.solid .nav-l a{color:#5F5A51}
nav.solid .nav-l a span:last-child{color:#8A5F05}
nav.solid .btn{background-color:#16130F;color:#fff;border-color:#16130F}
nav.solid .btn:hover{background-color:#C1870F;border-color:#C1870F;color:#16130F}
nav.solid .burger{color:#14110D;background:rgba(20,17,13,.05);border-color:rgba(20,17,13,.16)}
nav.solid .burger:hover{background:#14110D;color:#FFFFFF;border-color:#14110D}
.lm-l{display:none}
nav.solid .lm-d{display:none}
nav.solid .lm-l{display:block}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-l{display:flex;gap:2px}
.nav-cta{display:none}
.nav-l a{position:relative;padding:9px 14px;font-size:12.5px;font-weight:500;letter-spacing:-.005em;overflow:hidden;height:33px;display:block;color:var(--silver)}
.nav-l a span{display:block;transition:transform .45s var(--e)}
.nav-l a span:last-child{position:absolute;top:100%;left:14px;color:var(--gold-lt)}
.nav-l a:hover span{transform:translateY(-100%)}
.nav-r{display:flex;gap:10px;align-items:center}

/* ── Boutons : aplats pleins, libellé lisible en permanence ── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:15px 28px;border-radius:3px;
  font-size:13.5px;font-weight:600;letter-spacing:-.005em;line-height:1;
  background-color:var(--btn);color:var(--btn-fg);border:1px solid var(--btn);
  transition:background-color .28s ease,border-color .28s ease,color .28s ease,box-shadow .28s ease,transform .55s var(--e);
}
.btn:hover{background-color:var(--btn-h);border-color:var(--btn-h);color:var(--btn-hfg);box-shadow:0 8px 24px -10px rgba(22,19,15,.45)}
.btn:active{transform:scale(.98)}
.btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
/* Variante secondaire */
.btn-o{background-color:transparent;color:var(--paper);border-color:var(--line-2);box-shadow:none}
.btn-o:hover{background-color:var(--paper);border-color:var(--paper);color:var(--ink);box-shadow:none}
.btn-sm{padding:12px 20px;font-size:12.5px}
.btn svg{transition:transform .35s var(--e);flex-shrink:0}
.btn:hover svg{transform:translateX(3px)}
.mg.tracking{transition:background-color .28s ease,border-color .28s ease,color .28s ease,box-shadow .28s ease,transform 0s}
.burger{
  display:none;width:44px;height:44px;border-radius:50%;place-items:center;
  color:#FFFFFF;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.20);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  transition:background .3s var(--e),border-color .3s var(--e),color .3s var(--e);
}
.burger:hover{background:rgba(255,255,255,.17);border-color:rgba(255,255,255,.38)}
.burger i{display:block;width:17px;height:1.6px;border-radius:2px;background:currentColor;position:relative;transition:background .2s ease}
.burger i::before,.burger i::after{content:'';position:absolute;left:0;width:17px;height:1.6px;border-radius:2px;background:currentColor;transition:transform .35s var(--e),top .3s var(--e)}
.burger i::before{top:-5.5px}
.burger i::after{top:5.5px}
.burger.open i{background:transparent}
.burger.open i::before{top:0;transform:rotate(45deg)}
.burger.open i::after{top:0;transform:rotate(-45deg)}

/*═══ HERO ═══*/
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:120px 0 0;overflow:hidden}
#hcv{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.hero-fade{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(102deg,var(--ink) 4%,rgba(8,7,6,.90) 30%,rgba(8,7,6,.42) 58%,rgba(8,7,6,.12) 78%,transparent 92%),linear-gradient(0deg,var(--ink) 1%,transparent 28%),radial-gradient(ellipse 120% 80% at 50% 50%,transparent 55%,rgba(8,7,6,.55) 100%)}
.hero-in{position:relative;z-index:3;flex:1;display:flex;flex-direction:column;justify-content:center;padding-bottom:36px}
.hero-mark{margin-bottom:clamp(18px,2.4vw,32px)}
.js .hero-mark{opacity:0;transform:translateY(16px)}
.ready .hero-mark{animation:fin .9s var(--e) .1s forwards}
.hero-h{margin-bottom:clamp(22px,3vw,38px);max-width:15ch}
.hero-h .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hero-h .ln>span{display:block}
.js .hero-h .ln>span{transform:translateY(102%);opacity:0}
.ready .hero-h .ln>span{animation:up 1s var(--e) forwards}
.ready .hero-h .ln:nth-child(1)>span{animation-delay:.26s}
.ready .hero-h .ln:nth-child(2)>span{animation-delay:.34s}
@keyframes up{to{transform:none;opacity:1}}
.hero-btm{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;flex-wrap:wrap}
.hero-cta{display:flex;gap:10px;flex-wrap:wrap}
.scroll-hint{display:flex;align-items:center;gap:11px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--grey-2)}
.scroll-hint i{display:block;width:1px;height:42px;background:linear-gradient(var(--gold),transparent);position:relative;overflow:hidden}
.scroll-hint i::after{content:'';position:absolute;top:-42px;left:0;width:1px;height:42px;background:var(--gold-lt);animation:slide 2.2s cubic-bezier(.65,0,.35,1) infinite}
@keyframes slide{to{top:42px}}

/*═══ TICKER ═══*/
.tick{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;overflow:hidden;background:var(--ink-2);position:relative;z-index:3}
.tick-t{display:flex;width:max-content;animation:mq 42s linear infinite;will-change:transform}
.tick:hover .tick-t{animation-play-state:paused}
@keyframes mq{to{transform:translate3d(-50%,0,0)}}
.tick-i{display:flex;align-items:center;gap:22px;padding:0 22px;font-size:13px;font-weight:500;letter-spacing:.01em;white-space:nowrap;color:var(--silver)}
.tick-i i{display:block;width:3px;height:3px;background:var(--gold);border-radius:50%}

/*═══ SECTION ═══*/
.sec{padding:clamp(76px,9.5vw,146px) 0;position:relative}
.sec-h{margin-bottom:clamp(40px,5.4vw,78px);max-width:72ch}
.sec-h .lbl{margin-bottom:22px}
.sec-h .h2{margin-bottom:24px}
.rvw .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.05em}
.rvw .w>i{display:inline-block;font-style:inherit;font-family:inherit;transition:transform .9s var(--e)}
.js .rvw .w>i{transform:translateY(105%)}
.rvw.in .w>i{transform:none}
.rv{transition:opacity .9s var(--e),transform .9s var(--e)}
.js .rv{opacity:0;transform:translateY(28px)}
.rv.in{opacity:1;transform:none}

/*═══ MANIFESTO ═══*/
.mani{padding:clamp(84px,12vw,170px) 0;border-top:1px solid var(--line)}
.mani-t{font-size:clamp(24px,3.6vw,54px);line-height:1.14;letter-spacing:-.035em;font-weight:600;max-width:21ch}
.mani-t .w>i{color:var(--grey-2);transition:transform .85s var(--e),color .6s ease}
.mani-t.in .w>i{color:var(--paper)}
.mani-t em{color:var(--gold-lt)}
.mani-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:clamp(46px,6vw,84px)}
.mg{background:var(--ink);padding:clamp(26px,3vw,42px)}
.mg-n{font-size:clamp(40px,4.8vw,68px);line-height:1;letter-spacing:-.05em;font-weight:600;color:var(--gold-lt);margin-bottom:16px}
.mg-t{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.mg-d{font-size:14px;color:var(--grey);line-height:1.62}

/*═══ PROCESS HORIZONTAL ═══*/
.hz{height:440vh;position:relative}
.hz-stick{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.hz-head{padding:0 clamp(20px,4vw,72px);margin-bottom:clamp(24px,3.6vw,48px);display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap}
.hz-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:2px}
.hz-tab{padding:9px 18px;border-radius:1px;font-size:12.5px;font-weight:500;color:var(--grey);transition:.4s var(--e)}
.hz-tab.on{background:#16130F;color:#fff;font-weight:600}
.hz-tab:not(.on):hover{color:var(--gold-lt)}
.hz-track{display:flex;gap:clamp(14px,1.8vw,26px);padding:0 clamp(20px,4vw,72px);will-change:transform}
.pnl{flex:0 0 clamp(276px,31vw,440px);border:1px solid var(--line);padding:clamp(26px,2.5vw,38px);background:var(--ink-2);position:relative;overflow:hidden;min-height:clamp(330px,44vh,450px);display:flex;flex-direction:column;transition:border-color .45s,background .45s}
.pnl:hover{border-color:var(--line-2);background:var(--ink-3)}
.pnl-n{font-size:12px;font-weight:600;letter-spacing:.2em;color:var(--gold);margin-bottom:auto}
.pnl h4{font-size:clamp(19px,1.6vw,25px);font-weight:600;letter-spacing:-.025em;margin:22px 0 13px;line-height:1.1}
.pnl p{font-size:14.5px;color:var(--grey);line-height:1.68}
.hz-bar{margin-top:clamp(22px,2.6vw,40px);padding:0 clamp(20px,4vw,72px);display:flex;align-items:center;gap:16px}
.hz-bar .track{flex:1;height:1px;background:var(--line)}
.hz-bar .track i{display:block;height:100%;background:var(--gold);transform-origin:0;transform:scaleX(0);will-change:transform}
.hz-bar span{font-size:10.5px;font-weight:500;letter-spacing:.2em;color:var(--grey-2)}

/*═══ STOCK ═══*/
.filt{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:clamp(26px,3vw,42px)}
.srch{position:relative;flex:1;min-width:220px}
.srch input{width:100%;padding:13px 16px 13px 42px;background:var(--ink-2);border:1px solid var(--line);border-radius:2px;font-size:14px;transition:border-color .35s}
.srch input:focus{border-color:var(--gold)}
.srch svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);opacity:.38}
.sel{padding:13px 34px 13px 15px;background:var(--ink-2);border:1px solid var(--line);border-radius:2px;font-size:13px;font-weight:500;cursor:pointer;appearance:none;transition:border-color .35s,color .35s;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%238B8781' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center}
.sel:hover,.sel:focus{border-color:var(--gold);color:var(--gold-lt)}
.sel option{background:var(--ink-3);color:var(--paper)}
.fmeta{margin-left:auto;display:flex;align-items:center;gap:16px;font-size:12.5px;color:var(--grey)}
.fmeta button{color:var(--gold-lt);font-size:12.5px;font-weight:600}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,22px)}
.card{position:relative;background:var(--ink-2);border:1px solid var(--line);overflow:hidden;transition:border-color .45s,box-shadow .5s var(--e);animation:pop .6s var(--e) both;contain:layout paint}
@keyframes pop{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.card:hover{border-color:var(--line-2);box-shadow:0 26px 60px -22px rgba(0,0,0,.9)}
.card-v{position:relative;aspect-ratio:16/10;overflow:hidden;display:grid;place-items:center}
.card-v .car{width:80%;transition:transform .8s var(--e)}
.card:hover .card-v .car{transform:scale(1.06) translateY(-3px)}
.card-mesh{position:absolute;inset:0;opacity:.3;background-image:linear-gradient(rgba(242,199,122,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(242,199,122,.13) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:radial-gradient(ellipse 68% 68% at 50% 60%,#000,transparent 74%);mask-image:radial-gradient(ellipse 68% 68% at 50% 60%,#000,transparent 74%)}
.card-tag{position:absolute;top:12px;left:12px;padding:5px 10px;font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;background:#F2C77A;color:#16130F;z-index:2;border-radius:1px}
.card-tag.b{background:var(--red);color:#fff}
.card-yr{position:absolute;top:12px;right:14px;font-size:12px;font-weight:600;letter-spacing:.06em;color:rgba(255,255,255,.62);z-index:2}
.card-b{padding:clamp(18px,1.9vw,26px)}
.card-b h4{font-size:clamp(17px,1.4vw,21px);font-weight:600;letter-spacing:-.025em;line-height:1.15;margin-bottom:5px}
.card-b .ver{font-size:12.5px;color:var(--grey-2);margin-bottom:18px;line-height:1.4}
.specs{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:20px}
.specs span{font-size:11px;font-weight:500;padding:5px 9px;border:1px solid var(--line);color:var(--grey);border-radius:1px}
.pr{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.pr-m{font-size:clamp(22px,1.9vw,28px);font-weight:600;line-height:1;letter-spacing:-.035em}
.pr-s{font-size:11.5px;color:var(--grey-2);margin-top:7px}
.pr-s b{color:var(--gold-lt);font-weight:600}
.pr-go{width:40px;height:40px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;flex-shrink:0;transition:.45s var(--e);color:var(--gold-lt)}
.card:hover .pr-go{background:#16130F;border-color:#16130F;color:#fff;transform:rotate(-45deg)}
.none{grid-column:1/-1;text-align:center;padding:80px 20px;border:1px dashed var(--line)}
.none b{font-size:17px;font-weight:600;display:block;margin-bottom:6px}
.none span{color:var(--grey);font-size:14px}

/*═══ SIMULATEUR ═══*/
.sim{border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;background:var(--ink-2)}
.sim-l{padding:clamp(28px,3.6vw,58px);border-right:1px solid var(--line)}
.sim-r{padding:clamp(28px,3.6vw,58px);background:var(--ink);position:relative;overflow:hidden}
.sim-r::before{content:'';position:absolute;width:460px;height:460px;background:radial-gradient(circle,rgba(210,148,27,.14),transparent 68%);top:-220px;right:-160px}
.sim-r>*{position:relative}
.fld{margin-bottom:30px}
.fld label{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--grey);margin-bottom:14px}
.numin{position:relative;border-bottom:1px solid var(--line-2);transition:border-color .35s}
.numin:focus-within{border-color:var(--gold)}
.numin input{width:100%;padding:6px 40px 12px 0;font-size:clamp(32px,3.6vw,50px);font-weight:600;letter-spacing:-.045em}
.numin span{position:absolute;right:0;bottom:14px;font-size:22px;font-weight:500;color:var(--gold-dk)}
input[type=range]{width:100%;height:3px;-webkit-appearance:none;appearance:none;cursor:pointer;background:linear-gradient(90deg,var(--gold) var(--p,26%),rgba(22,19,15,.16) var(--p,26%))}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--gold);cursor:grab;box-shadow:0 0 0 5px rgba(210,148,27,.15)}
input[type=range]::-moz-range-thumb{width:18px;height:18px;border:none;border-radius:50%;background:var(--gold)}
.rng-lbl{display:flex;justify-content:space-between;margin-top:11px;font-size:11px;color:var(--grey-2)}
.srow{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line);gap:16px}
.srow span{font-size:13.5px;color:var(--grey)}
.srow b{font-size:21px;font-weight:600;letter-spacing:-.03em;white-space:nowrap}
.stot{margin-top:32px}
.stot span{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:12px}
.stot b{font-size:clamp(42px,5.2vw,74px);line-height:.92;letter-spacing:-.05em;font-weight:600;display:block}
.svs{margin-top:30px;padding:20px;border:1px solid var(--line);font-size:13.5px;color:var(--grey);line-height:1.65}
.svs b{color:var(--paper);font-weight:600}
.svs .sv{display:block;margin-top:9px;font-size:15px;font-weight:600;color:var(--gold-lt)}

/*═══ TARIFS ═══*/
.tar{display:grid;grid-template-columns:.82fr 1.18fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.tc{background:var(--ink-2);padding:clamp(28px,3.2vw,48px);display:flex;flex-direction:column}
.tc .tg{align-self:flex-start;padding:6px 12px;font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;background:#16130F;color:#fff;margin-bottom:30px;border-radius:1px}
.tc .tg.o{background:transparent;border:1px solid var(--line-2);color:var(--gold-lt)}
.tzero{font-size:clamp(80px,11vw,160px);line-height:.82;letter-spacing:-.07em;font-weight:600;margin-bottom:20px;color:var(--paper)}
.tc h3{font-size:clamp(19px,1.7vw,25px);font-weight:600;letter-spacing:-.03em;margin-bottom:11px}
.tc>p{color:var(--grey);font-size:14.5px;margin-bottom:28px;line-height:1.62}
.tlist{list-style:none;margin-top:auto}
.tlist li{display:flex;gap:13px;font-size:13.5px;color:var(--grey);padding:12px 0;border-top:1px solid var(--line);align-items:center}
.tlist li::before{content:'';width:4px;height:4px;background:var(--gold);border-radius:50%;flex-shrink:0}
.ttab{width:100%;border-collapse:collapse}
.ttab th{text-align:left;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--grey-2);padding-bottom:15px;font-weight:600}
.ttab th:last-child,.ttab td:last-child{text-align:right}
.ttab td{padding:16px 0;border-top:1px solid var(--line);font-size:14px;color:var(--grey);transition:color .3s}
.ttab tr:hover td{color:var(--paper)}
.ttab td:last-child{font-size:20px;font-weight:600;letter-spacing:-.03em;color:var(--paper)}
.ttab tr:hover td:last-child{color:var(--gold-lt)}
.tnote{margin-top:28px;padding:20px;border:1px solid var(--line);font-size:13px;color:var(--grey);line-height:1.72}
.tnote b{color:var(--gold-lt);display:block;margin-bottom:8px;font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}

/*═══ GARANTIES ═══*/
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.tr{background:var(--ink);padding:clamp(26px,2.8vw,40px);position:relative;overflow:hidden;transition:background .5s var(--e)}
.tr:hover{background:var(--ink-3)}
.tr::before{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:0;transition:transform .6s var(--e)}
.tr:hover::before{transform:scaleX(1)}
.tr-i{width:44px;height:44px;border:1px solid var(--line-2);border-radius:2px;display:grid;place-items:center;margin-bottom:24px;transition:.5s var(--e)}
.tr:hover .tr-i{border-color:var(--gold);background:var(--gold-dim)}
.tr h4{font-size:15.5px;font-weight:600;letter-spacing:-.02em;margin-bottom:11px}
.tr p{font-size:13.5px;color:var(--grey);line-height:1.68}

/*═══ FORM ═══*/
.form{display:grid;grid-template-columns:.9fr 1.1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.form-l{background:var(--ink-2);padding:clamp(28px,3.6vw,56px)}
.form-r{background:var(--ink);padding:clamp(28px,3.6vw,56px)}
.fsteps{list-style:none;margin-top:34px;border-top:1px solid var(--line)}
.fsteps li{display:flex;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}
.fsteps b{font-size:11.5px;font-weight:600;color:var(--gold);letter-spacing:.12em;flex-shrink:0;padding-top:3px}
.fsteps strong{display:block;font-size:14.5px;font-weight:600;letter-spacing:-.015em;margin-bottom:5px}
.fsteps span{font-size:13.5px;color:var(--grey);line-height:1.6}
.pbar{display:flex;gap:5px;margin-bottom:34px}
.pbar i{height:2px;flex:1;background:rgba(22,19,15,.14);position:relative;overflow:hidden}
.pbar i::after{content:'';position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:0;transition:transform .6s var(--e)}
.pbar i.on::after{transform:scaleX(1)}
.stp{display:none}
.stp.on{display:block;animation:pop .5s var(--e) both}
.stp h4{font-size:clamp(21px,2vw,29px);font-weight:600;letter-spacing:-.035em;margin-bottom:8px}
.stp>p{font-size:13.5px;color:var(--grey-2);margin-bottom:30px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.in{margin-bottom:22px}
.in label{display:block;font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--grey-2);margin-bottom:10px}
.in input,.in select,.in textarea{width:100%;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px;transition:border-color .35s}
.in input:focus,.in select:focus,.in textarea:focus{border-color:var(--gold)}
.in select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%238B8781' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center}
.in select option{background:var(--ink-3)}
.in textarea{resize:vertical;min-height:64px}
.cons{display:flex;gap:11px;align-items:flex-start;font-size:12.5px;color:var(--grey-2);line-height:1.6;margin-top:4px}
.cons input{width:15px;height:15px;flex-shrink:0;margin-top:2px;accent-color:var(--gold)}
.cons a{color:var(--gold-lt);text-decoration:underline}
.fnav{display:flex;gap:9px;margin-top:32px}
.done{display:none;text-align:center;padding:52px 0}
.done.on{display:block;animation:pop .55s var(--e) both}
.done .ck{width:70px;height:70px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;margin:0 auto 26px;background:var(--gold-dim)}
.done h4{font-size:clamp(22px,2.3vw,32px);font-weight:600;letter-spacing:-.035em;margin-bottom:13px}
.done p{color:var(--grey);font-size:14.5px;max-width:40ch;margin:0 auto;line-height:1.68}

/*═══ FAQ ═══*/
.faq{border-top:1px solid var(--line)}
.qa{border-bottom:1px solid var(--line);position:relative}
.qa::before{content:'';position:absolute;inset:0;background:var(--ink-2);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--e);z-index:0}
.qa:hover::before{transform:scaleY(1);transform-origin:top}
.qa>*{position:relative;z-index:1}
.qh{width:100%;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:clamp(22px,2.4vw,32px) clamp(0px,1.8vw,24px);text-align:left}
.qh h5{font-size:clamp(15.5px,1.35vw,20px);font-weight:600;letter-spacing:-.025em;line-height:1.3;transition:color .35s}
.qa:hover .qh h5,.qa.open .qh h5{color:var(--gold-lt)}
.qi{width:34px;height:34px;border:1px solid var(--line-2);border-radius:50%;display:grid;place-items:center;flex-shrink:0;transition:.5s var(--e);position:relative;color:var(--gold-lt)}
.qi::before,.qi::after{content:'';position:absolute;background:currentColor;transition:.4s var(--e)}
.qi::before{width:11px;height:1px}
.qi::after{width:1px;height:11px}
.qa.open .qi{background:#16130F;border-color:#16130F;color:#fff;transform:rotate(135deg)}
.qa.open .qi::after{opacity:0}
.qb{max-height:0;overflow:hidden;transition:max-height .55s var(--e)}
.qb p{padding:0 clamp(0px,1.8vw,24px) clamp(24px,2.4vw,34px);color:var(--grey);font-size:14.5px;line-height:1.78;max-width:78ch}

/*═══ CTA ═══*/
.cta{position:relative;padding:clamp(76px,10vw,150px) 0;text-align:center;border-top:1px solid var(--line)}
.cta .lm{margin:0 auto clamp(22px,2.6vw,34px)}
.cta .h2{margin-bottom:22px}
.cta .lead{margin:0 auto 36px}
.cta-b{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

/*═══ FOOTER ═══*/
footer{border-top:1px solid var(--line);background:var(--ink-2);padding:clamp(48px,5.6vw,80px) 0 28px;content-visibility:auto;contain-intrinsic-size:auto 520px}
.fg{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:clamp(28px,3.6vw,52px);padding-bottom:clamp(38px,4.6vw,64px)}
.fb p{font-size:13.5px;color:var(--grey);margin:18px 0 22px;max-width:32ch;line-height:1.7}
.fsoc{display:flex;gap:7px}
.fsoc a{width:38px;height:38px;border:1px solid var(--line);border-radius:2px;display:grid;place-items:center;color:var(--grey);transition:.45s var(--e)}
.fsoc a:hover{border-color:var(--gold);color:var(--gold-lt);transform:translateY(-2px)}
.fc h5{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dk);margin-bottom:20px}
.fc a{display:block;font-size:13.5px;color:var(--grey);padding:7px 0;transition:.35s var(--e);width:fit-content}
.fc a:hover{color:var(--gold-lt);transform:translateX(5px)}
.fbot{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:11.5px;color:var(--grey-2)}
.fbot div{display:flex;gap:14px;flex-wrap:wrap;align-items:center}


/*═══ DOUBLE PARCOURS ═══*/
.paths{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.path{background:var(--ink);padding:clamp(32px,4.4vw,64px);position:relative;overflow:hidden;transition:background .5s var(--e);display:flex;flex-direction:column;min-height:clamp(300px,32vw,390px)}
.path:hover{background:var(--ink-3)}
.path-n{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}
.path h3{font-size:clamp(23px,2.7vw,38px);font-weight:600;letter-spacing:-.035em;line-height:1.06;margin-bottom:14px;position:relative}
.path>p{font-size:15px;color:var(--grey);line-height:1.65;margin-bottom:24px;max-width:38ch;position:relative}
.path ul{list-style:none;margin-bottom:28px;position:relative}
.path li{font-size:13.5px;color:var(--grey);padding:9px 0;border-top:1px solid var(--line);display:flex;gap:11px;align-items:center}
.path li::before{content:'';width:4px;height:4px;background:var(--gold);border-radius:50%;flex-shrink:0}
.path .btn{align-self:flex-start;margin-top:auto;position:relative}
.path-bg{position:absolute;right:-30px;bottom:-20px;width:50%;opacity:.09;pointer-events:none;transition:.7s var(--e)}
.path:hover .path-bg{opacity:.12;transform:translateX(-12px)}

/*═══ COMPTEURS ═══*/
.kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.kpi>div{background:var(--ink-2);padding:24px clamp(18px,2vw,32px)}
.kpi b{display:block;font-size:clamp(24px,2.8vw,38px);font-weight:600;letter-spacing:-.04em;color:var(--gold-lt);line-height:1;margin-bottom:7px}
.kpi span{font-size:12.5px;color:var(--grey)}

/*═══ REPRISE ═══*/
.reprise{display:grid;grid-template-columns:1.05fr .95fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.rep-l{background:var(--ink-2);padding:clamp(28px,3.4vw,52px)}
.rep-r{background:var(--ink);padding:clamp(28px,3.4vw,52px)}
.flow{list-style:none;counter-reset:f}
.flow li{position:relative;padding:0 0 26px 44px;counter-increment:f}
.flow li::before{content:counter(f,decimal-leading-zero);position:absolute;left:0;top:-2px;width:28px;height:28px;border:1px solid var(--line-2);border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:600;color:var(--gold)}
.flow li::after{content:'';position:absolute;left:14px;top:30px;bottom:4px;width:1px;background:var(--line)}
.flow li:last-child{padding-bottom:0}
.flow li:last-child::after{display:none}
.flow strong{display:block;font-size:14.5px;font-weight:600;margin-bottom:5px;letter-spacing:-.015em}
.flow span{font-size:13.5px;color:var(--grey);line-height:1.62}

/*═══ FINANCEMENT ═══*/
.fin{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.fin-l{background:var(--ink-2);padding:clamp(28px,3.4vw,52px)}
.fin-r{background:var(--ink);padding:clamp(28px,3.4vw,52px);display:flex;flex-direction:column;justify-content:center}
.fin-out span{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:12px}
.fin-out b{font-size:clamp(40px,5vw,70px);font-weight:600;letter-spacing:-.05em;line-height:.94;display:block}
.fin-out i{font-style:normal;font-size:14.5px;color:var(--grey);display:block;margin-top:10px}
.fin-rows{margin-top:28px;border-top:1px solid var(--line)}
.fin-rows>div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--grey)}
.fin-rows>div b{color:var(--paper);font-weight:600}
.fin-note{margin-top:20px;font-size:12px;color:var(--grey-2);line-height:1.62}

/*═══ ZONE ═══*/
.cantons{display:flex;flex-wrap:wrap;gap:8px}
.cantons span{font-size:13px;padding:9px 16px;border:1px solid var(--line);border-radius:100px;color:var(--grey)}
.cantons span.on{border-color:var(--gold);color:var(--gold-lt);background:var(--gold-dim)}

/*═══ CONSEILS ═══*/
.arts{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,22px)}
.art{background:var(--ink-2);border:1px solid var(--line);padding:clamp(24px,2.6vw,36px);display:flex;flex-direction:column;transition:.45s var(--e)}
.art:hover{border-color:var(--line-2);background:var(--ink-3);transform:translateY(-4px)}
.art .cat{font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.art h4{font-size:18.5px;font-weight:600;letter-spacing:-.025em;line-height:1.28;margin-bottom:12px}
.art p{font-size:13.5px;color:var(--grey);line-height:1.65;margin-bottom:22px}
.art .go{margin-top:auto;font-size:12.5px;font-weight:600;color:var(--gold-lt);display:flex;align-items:center;gap:8px}
.art .go svg{transition:.4s var(--e)}
.art:hover .go svg{transform:translateX(4px)}

/*═══ FICHE VÉHICULE (panneau) ═══*/
.mdl{position:fixed;inset:0;z-index:9600;display:none}
.mdl.on{display:block}
.mdl-bd{position:absolute;inset:0;background:rgba(3,3,3,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade .3s ease both}
@keyframes fade{from{opacity:0}to{opacity:1}}
.mdl-pn{position:absolute;top:0;right:0;bottom:0;width:min(100%,880px);background:var(--ink);border-left:1px solid var(--line);overflow-y:auto;overscroll-behavior:contain;animation:slidein .5s var(--e) both}
@keyframes slidein{from{transform:translateX(46px);opacity:0}to{transform:none;opacity:1}}
.mdl-x{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px clamp(20px,3vw,34px);background:rgba(251,250,247,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.mdl-x b{font-size:13px;font-weight:600}
.mdl-x button{width:36px;height:36px;border:1px solid var(--line-2);border-radius:50%;display:grid;place-items:center;color:var(--gold-lt);transition:.3s;flex-shrink:0}
.mdl-x button:hover{background:#16130F;border-color:#16130F;color:#fff}
.gal-main{aspect-ratio:16/10;display:grid;place-items:center;position:relative;overflow:hidden}
.gal-main svg{width:78%}
.gal-cap,.gal-nb{position:absolute;bottom:14px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.82);background:rgba(6,6,5,.68);padding:6px 12px;border-radius:2px}
.gal-cap{left:14px}.gal-nb{right:14px;letter-spacing:.04em;text-transform:none}
.thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line)}
.thumbs button{aspect-ratio:4/3;display:grid;place-items:center;position:relative;opacity:.4;transition:opacity .3s;overflow:hidden}
.thumbs button svg{width:74%}
.thumbs button:hover,.thumbs button.on{opacity:1}
.thumbs button.on::after{content:'';position:absolute;inset:0;border:1.5px solid var(--gold)}
.mdl-b{padding:clamp(22px,3vw,36px)}
.mdl-b h3{font-size:clamp(21px,2.3vw,30px);font-weight:600;letter-spacing:-.035em;margin-bottom:5px}
.mdl-b .ver{font-size:14px;color:var(--grey-2);margin-bottom:22px}
.mdl-price{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-end;justify-content:space-between;padding:20px;border:1px solid var(--line-2);background:var(--gold-dim);margin-bottom:26px}
.mdl-price .big{font-size:clamp(26px,3vw,38px);font-weight:600;letter-spacing:-.04em;line-height:1}
.mdl-price small{display:block;font-size:12.5px;color:var(--grey);margin-top:8px}
.mdl-price .mth{text-align:right;font-size:13px;color:var(--grey)}
.mdl-price .mth b{display:block;font-size:20px;color:var(--gold-lt);font-weight:600;letter-spacing:-.03em;margin-bottom:3px}
.mdl-h5{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 16px}
.dl{display:grid;grid-template-columns:repeat(2,1fr);gap:0 26px;margin-bottom:26px}
.dl>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.dl span{color:var(--grey)}
.dl b{font-weight:600}
.eq{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:26px}
.eq span{font-size:12px;padding:7px 12px;border:1px solid var(--line);color:var(--grey);border-radius:2px}
.chk{border:1px solid var(--line);padding:20px;margin-bottom:26px}
.chk ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.chk li{font-size:13px;color:var(--grey);display:flex;gap:9px;align-items:flex-start;line-height:1.5}
.chk li svg{flex-shrink:0;margin-top:3px}
.mdl-cta{display:flex;gap:9px;flex-wrap:wrap}
.mdl-cta .btn{flex:1;min-width:180px}

@media(max-width:1100px){
  .paths,.reprise,.fin{grid-template-columns:1fr}
  .kpi{grid-template-columns:1fr 1fr}
  .arts{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .arts,.dl,.chk ul{grid-template-columns:1fr}
  .thumbs{grid-template-columns:repeat(3,1fr)}
  .mdl-pn{width:100%;border-left:none}
}


/*═══ FORMES : rayons souples, ombres portées, grilles aérées ═══*/
:root{--r-s:12px;--r-m:20px;--r-l:28px;--pill:999px;
 --sh-1:0 1px 2px rgba(20,17,13,.04),0 6px 18px -12px rgba(20,17,13,.18);
 --sh-2:0 2px 6px rgba(20,17,13,.05),0 22px 48px -24px rgba(20,17,13,.32)}
.dark{--sh-1:0 10px 30px -18px rgba(0,0,0,.9);--sh-2:0 26px 60px -26px rgba(0,0,0,.95)}

.mani-grid,.kpi,.paths,.tar,.trust,.form,.reprise,.fin,.thumbs{background:none;border:none;gap:clamp(12px,1.3vw,18px)}
.kpi,.paths{padding:0 clamp(20px,4vw,72px)}
.paths{margin-top:clamp(40px,5vw,72px)}
.kpi{margin:clamp(12px,1.3vw,18px) 0 clamp(48px,6vw,90px);border-bottom:none}
.mg,.kpi>div,.path,.tc,.tr,.form-l,.form-r,.rep-l,.rep-r,.fin-l,.fin-r,.art,.card,.pnl,.chk{
  border:1px solid var(--line);background:var(--ink-2);box-shadow:var(--sh-1)}
.mg,.tr,.art,.card,.chk{border-radius:var(--r-m)}
.kpi>div{border-radius:var(--r-s)}
.path,.tc,.form-l,.form-r,.rep-l,.rep-r,.fin-l,.fin-r,.pnl{border-radius:var(--r-l)}
.card{overflow:hidden;transition:transform .5s var(--e),box-shadow .5s var(--e),border-color .4s}
.card:hover{box-shadow:var(--sh-2);transform:translateY(-6px)}
.art:hover,.tr:hover,.path:hover{box-shadow:var(--sh-2)}
.tr::before{display:none}
.tr-i{border-radius:14px}
.form-r,.fin-r,.rep-r{background:var(--ink)}

.srch input,.sel,.specs span,.eq span,.card-tag,.tc .tg,.cantons span,.srch input,.sel{background:var(--ink-2);box-shadow:var(--sh-1)}
.mdl-price{border-radius:var(--r-m)}
.mdl-pn{border-radius:var(--r-l) 0 0 var(--r-l);box-shadow:-30px 0 70px -30px rgba(0,0,0,.5)}
.gal-main{border-radius:var(--r-l) 0 0 0}
.thumbs{padding:0 clamp(20px,3vw,34px) 4px}
.thumbs button{border-radius:var(--r-s);overflow:hidden;border:1px solid var(--line)}
@media(max-width:760px){.mdl-pn,.gal-main{border-radius:0}}

/*═══ BOUTONS ═══*/
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:16px 32px;border-radius:var(--pill);
  font-size:14px;font-weight:600;letter-spacing:-.005em;line-height:1;
  background:#14110D;color:#FFFFFF;border:1px solid #14110D;
  box-shadow:0 10px 26px -14px rgba(20,17,13,.65);
  transition:background .26s ease,border-color .26s ease,color .26s ease,box-shadow .3s var(--e),transform .5s var(--e);
}
.btn:hover{background:#C1870F;border-color:#C1870F;color:#14110D;box-shadow:0 14px 34px -14px rgba(193,135,15,.75)}
.btn:active{transform:scale(.975)}
.btn:focus-visible{outline:2px solid #C1870F;outline-offset:3px}
.btn-o{background:#FFFFFF;color:#14110D;border-color:rgba(20,17,13,.2);box-shadow:0 6px 18px -12px rgba(20,17,13,.4)}
.btn-o:hover{background:#14110D;color:#FFFFFF;border-color:#14110D;box-shadow:0 12px 30px -14px rgba(20,17,13,.6)}
.dark .btn{background:#F2C77A;color:#14110D;border-color:#F2C77A;box-shadow:0 12px 30px -14px rgba(242,199,122,.55)}
.dark .btn:hover{background:#FFFFFF;border-color:#FFFFFF;color:#14110D}
.dark .btn-o{background:rgba(255,255,255,.06);color:#FFFFFF;border-color:rgba(255,255,255,.34);box-shadow:none}
.dark .btn-o:hover{background:#FFFFFF;color:#14110D;border-color:#FFFFFF}
.btn-sm{padding:12px 22px;font-size:13px}
.btn svg{transition:transform .35s var(--e);flex-shrink:0}
.btn:hover svg{transform:translateX(3px)}
nav.solid .btn{background:#14110D;color:#fff;border-color:#14110D}
nav.solid .btn:hover{background:#C1870F;border-color:#C1870F;color:#14110D}

/*═══ ARRIÈRE-PLAN D'ACCUEIL ═══*/
.hero-photo{position:absolute;inset:0;z-index:1;background-size:cover;background-position:center right;
  filter:grayscale(.18) contrast(1.06) brightness(.82);animation:kenburns 26s ease-in-out infinite alternate}
@keyframes kenburns{from{transform:scale(1.04)}to{transform:scale(1.14) translateX(-2%)}}
@media(prefers-reduced-motion:reduce){.hero-photo{animation:none}}

/*═══ RESPONSIVE ═══*/
@media(max-width:1100px){
  .grid,.trust,.mani-grid{grid-template-columns:repeat(2,1fr)}
  .sim,.tar,.form{grid-template-columns:1fr}
  .sim-l{border-right:none;border-bottom:1px solid var(--line)}
  .fg{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .burger{display:grid}
  .nav-r .btn{display:none}
  .nav-l{
    display:flex;flex-direction:column;gap:2px;
    position:fixed;inset:68px 12px auto 12px;
    background:rgba(11,10,8,.97);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
    border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:12px;
    box-shadow:0 30px 64px -22px rgba(0,0,0,.75);
    opacity:0;visibility:hidden;transform:translateY(-12px);
    transition:opacity .3s var(--e),transform .35s var(--e),visibility .35s;
  }
  .nav-l.open{opacity:1;visibility:visible;transform:none}
  .nav-l a{height:auto;padding:14px 16px;font-size:15.5px;border-radius:12px;color:#F2F0EC;letter-spacing:0}
  .nav-l a span:last-child{display:none}
  .nav-l a:active{background:rgba(255,255,255,.09)}
  .nav-cta{display:block!important;margin-top:8px;background:#F2C77A;color:#14110D!important;
    text-align:center;font-weight:600}
  .grid,.trust,.mani-grid,.two,.fg{grid-template-columns:1fr}
  .hz{height:380vh}.pnl{flex:0 0 78vw;min-height:auto}
  .fmeta{margin-left:0;width:100%;justify-content:space-between}
  .hero{min-height:90svh;padding-top:104px}
  .hero-h{max-width:none}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .rv,.rvw .w>i{opacity:1!important;transform:none!important}
}

/*═══════════════════════════════════════════════
  PAGES INTÉRIEURES
═══════════════════════════════════════════════*/
.phero{position:relative;padding:clamp(118px,13vw,172px) 0 clamp(44px,5.4vw,76px);overflow:hidden}
.phero>*{position:relative;z-index:1}
.pglow{position:absolute;inset:0;z-index:0;pointer-events:none;background:
  radial-gradient(ellipse 55% 75% at 84% 4%,rgba(193,135,15,.17),transparent 68%),
  radial-gradient(ellipse 45% 60% at 4% 0%,rgba(193,135,15,.09),transparent 70%)}
.phero .lbl{margin-bottom:18px}
.phero h1{font-size:clamp(33px,5.2vw,70px);font-weight:600;letter-spacing:-.042em;line-height:1.02;margin-bottom:20px;max-width:22ch}
.phero .lead{max-width:62ch}
.crumb{display:flex;gap:9px;align-items:center;font-size:12.5px;color:var(--grey-2);margin-bottom:22px}
.crumb a{color:var(--grey)}
.crumb a:hover{color:var(--gold-lt)}
.crumb i{font-style:normal;opacity:.45}

.nav-l a[aria-current="page"]{color:var(--gold-lt)}
nav.solid .nav-l a[aria-current="page"]{color:#8A5F05;font-weight:600}

.steps4{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.3vw,18px)}
.step4{border:1px solid var(--line);background:var(--ink-2);border-radius:var(--r-l);
  padding:clamp(24px,2.6vw,36px);box-shadow:var(--sh-1);display:flex;flex-direction:column;
  transition:box-shadow .45s var(--e),transform .45s var(--e)}
.step4:hover{box-shadow:var(--sh-2);transform:translateY(-4px)}
.step4 .n{font-size:11.5px;font-weight:600;letter-spacing:.2em;color:var(--gold);margin-bottom:auto;padding-bottom:28px}
.step4 h3{font-size:19px;font-weight:600;letter-spacing:-.025em;line-height:1.22;margin-bottom:12px}
.step4 p{font-size:14px;color:var(--grey);line-height:1.66}

.two-col{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(12px,1.3vw,18px)}
.panel{border:1px solid var(--line);background:var(--ink-2);border-radius:var(--r-l);
  padding:clamp(26px,3.2vw,50px);box-shadow:var(--sh-1)}
.panel.alt{background:var(--ink)}
.panel h3{font-size:clamp(19px,1.7vw,25px);font-weight:600;letter-spacing:-.03em;margin-bottom:12px}
.panel>p{color:var(--grey);font-size:14.5px;line-height:1.66;margin-bottom:24px}

.feat{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(12px,1.3vw,18px)}
.big-cta{border:1px solid var(--line-2);border-radius:var(--r-l);padding:clamp(32px,4vw,64px);
  text-align:center;background:
   radial-gradient(ellipse 70% 120% at 50% 0%,rgba(193,135,15,.13),transparent 70%),var(--ink-2);
  box-shadow:var(--sh-1)}
.big-cta h2{font-size:clamp(26px,3.4vw,46px);font-weight:600;letter-spacing:-.038em;line-height:1.06;margin-bottom:18px}
.big-cta .lead{margin:0 auto 32px}
.big-cta .cta-b{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

@media(max-width:1000px){.steps4,.feat{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}}
@media(max-width:640px){.steps4,.feat{grid-template-columns:1fr}}

/*═══════════════════════════════════════════════
  SÉLECTEURS VISUELS — le client clique, il ne tape pas
═══════════════════════════════════════════════*/
.pick{display:grid;gap:10px}
.pick-6{grid-template-columns:repeat(6,1fr)}
.pick-4{grid-template-columns:repeat(4,1fr)}
.pick-3{grid-template-columns:repeat(3,1fr)}
.pick-2{grid-template-columns:repeat(2,1fr)}
.tile{border:1px solid var(--line);background:var(--ink-2);border-radius:16px;padding:18px 12px;
  display:flex;flex-direction:column;align-items:center;gap:10px;cursor:pointer;text-align:center;
  transition:transform .3s var(--e),border-color .25s,background .25s,box-shadow .3s var(--e);color:inherit}
.tile:hover{border-color:var(--line-2);transform:translateY(-3px);box-shadow:var(--sh-1)}
.tile.on{border-color:#C1870F;background:rgba(193,135,15,.10);box-shadow:0 0 0 1px #C1870F inset}
.tile .mono{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;
  background:var(--ink-3);font-size:13.5px;font-weight:700;letter-spacing:-.02em;transition:.25s}
.tile.on .mono{background:#C1870F;color:#FFF}
.tile .ico{width:40px;height:40px;display:grid;place-items:center;color:var(--grey);transition:.25s}
.tile.on .ico{color:#C1870F}
.tile b{font-size:13px;font-weight:600;line-height:1.25}
.tile em{font-style:normal;font-size:11.5px;color:var(--grey-2);line-height:1.3}
.tile.wide{flex-direction:row;text-align:left;gap:14px;padding:16px 18px}
.tile.wide .txt{display:flex;flex-direction:column;gap:3px}

.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip-b{padding:11px 18px;border:1px solid var(--line);border-radius:999px;background:var(--ink-2);
  font-size:13.5px;font-weight:500;cursor:pointer;transition:.25s var(--e);color:inherit}
.chip-b:hover{border-color:var(--line-2);transform:translateY(-1px)}
.chip-b.on{background:#14110D;color:#FFF;border-color:#14110D}

.kmbox{border:1px solid var(--line);background:var(--ink-2);border-radius:16px;padding:22px}
.kmval{font-size:clamp(30px,3.4vw,46px);font-weight:600;letter-spacing:-.045em;line-height:1;margin-bottom:18px}
.kmval em{font-style:normal;font-size:16px;color:var(--grey);font-weight:400;margin-left:6px}

.wiz-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px;flex-wrap:wrap}
.wiz-step{font-size:11.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.wiz-back{font-size:13px;color:var(--grey);display:inline-flex;align-items:center;gap:7px}
.wiz-back:hover{color:var(--gold-lt)}
.wiz-q{font-size:clamp(21px,2.2vw,30px);font-weight:600;letter-spacing:-.035em;margin-bottom:6px}
.wiz-h{font-size:13.5px;color:var(--grey-2);margin-bottom:26px}

.summary{position:sticky;top:92px}
.sum-row{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13.5px;align-items:baseline}
.sum-row>span{color:var(--grey);white-space:nowrap}
.sum-row>b{font-weight:600;text-align:right}
.sum-row.void>b{color:var(--grey-2);font-weight:400}
.sum-est{margin-top:26px;padding:22px;border:1px solid var(--line-2);border-radius:16px;background:rgba(193,135,15,.08)}
.sum-est span{font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:10px}
.sum-est b{font-size:clamp(22px,2.4vw,30px);font-weight:600;letter-spacing:-.04em;display:block;line-height:1.1}
.sum-est small{display:block;margin-top:10px;font-size:12px;color:var(--grey);line-height:1.55}

/*═══ BANDE CARROSSERIES ═══*/
.bodies{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(10px,1.1vw,16px)}
.body-t{border:1px solid var(--line);background:var(--ink-2);border-radius:18px;
  padding:14px 12px 20px;display:flex;flex-direction:column;align-items:center;gap:4px;
  text-align:center;box-shadow:var(--sh-1);
  transition:transform .4s var(--e),border-color .3s,box-shadow .4s var(--e),background .3s}
.body-t:hover{transform:translateY(-6px);border-color:var(--line-2);box-shadow:var(--sh-2);background:var(--ink)}
.body-v{display:block;width:100%;aspect-ratio:3/1;display:grid;place-items:center;margin-bottom:8px}
.body-t img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--e)}
.body-t:hover img{transform:scale(1.07)}
.body-t b{font-size:13.5px;font-weight:600;letter-spacing:-.01em}
.body-t em{font-style:normal;font-size:11.5px;color:var(--grey-2);line-height:1.35}
@media(max-width:1200px){.bodies{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.bodies{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.bodies{grid-template-columns:repeat(2,1fr)}}

/*═══ BLOC ILLUSTRÉ ═══*/
.illus{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.3vw,18px)}
.ill{border:1px solid var(--line);background:var(--ink-2);border-radius:var(--r-l);overflow:hidden;
  box-shadow:var(--sh-1);transition:transform .45s var(--e),box-shadow .45s var(--e)}
.ill:hover{transform:translateY(-5px);box-shadow:var(--sh-2)}
.ill-v{aspect-ratio:16/9;display:grid;place-items:center;position:relative;overflow:hidden}
.ill-v svg{width:58%;height:auto}
.ill-b{padding:clamp(20px,2.2vw,30px)}
.ill-b b{display:block;font-size:17px;font-weight:600;letter-spacing:-.025em;margin-bottom:9px}
.ill-b p{font-size:13.5px;color:var(--grey);line-height:1.66}
@media(max-width:900px){.illus{grid-template-columns:1fr}}


/*═══ IDENTITÉ DES MARQUES ═══*/
.mono{position:relative;overflow:hidden;width:46px;height:46px;border-radius:13px;
  display:grid;place-items:center;flex-shrink:0;background:#FFF;border:1px solid var(--line);
  transition:transform .25s var(--e),box-shadow .25s var(--e)}
.mono img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:7px}
.mono b{font-size:14.5px;font-weight:700;letter-spacing:-.03em;opacity:0;line-height:1}
/* repli : pastille aux couleurs de la marque */
.mono.txt{background:var(--bc,#2C2822);border-color:transparent;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 2px 6px -2px rgba(20,17,13,.3)}
.mono.txt img{display:none}
.mono.txt b{opacity:1;color:var(--bf,#FFF)}
.mono.sm{width:38px;height:38px;border-radius:11px}
.mono.sm img{padding:5px}
.mono.sm b{font-size:12px}
.tile:hover .mono{transform:scale(1.06)}
.tile.on .mono{box-shadow:0 0 0 2px #C1870F,0 4px 12px -4px rgba(193,135,15,.5)}
.card-h{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}
.card-h h4{margin-bottom:3px}
.card-h .ver{margin-bottom:0}
@media(prefers-color-scheme:dark){.mono img{filter:none}}

/*═══════════════════════════════════════════════
  PAGES DE TEXTE (légal, conseils)
═══════════════════════════════════════════════*/
.prose{max-width:78ch}
.prose h2{font-size:clamp(20px,2vw,27px);font-weight:600;letter-spacing:-.03em;
  margin:clamp(38px,4vw,56px) 0 16px;padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--line)}
.prose h2:first-child{margin-top:0;padding-top:0;border-top:none}
.prose h3{font-size:16.5px;font-weight:600;letter-spacing:-.02em;margin:26px 0 10px}
.prose p{font-size:15px;color:var(--grey);line-height:1.75;margin-bottom:16px}
.prose p strong,.prose li strong{color:var(--paper);font-weight:600}
.prose ul,.prose ol{margin:0 0 18px 0;padding-left:0;list-style:none}
.prose li{font-size:15px;color:var(--grey);line-height:1.72;padding:7px 0 7px 24px;position:relative}
.prose li::before{content:'';position:absolute;left:4px;top:17px;width:5px;height:5px;
  border-radius:50%;background:var(--gold)}
.prose ol{counter-reset:o}
.prose ol li{counter-increment:o}
.prose ol li::before{content:counter(o);left:0;top:6px;width:auto;height:auto;background:none;
  color:var(--gold);font-weight:600;font-size:13px;font-variant-numeric:tabular-nums}
.prose a{color:var(--gold-lt);text-decoration:underline;text-underline-offset:3px}
.prose table{width:100%;border-collapse:collapse;margin:8px 0 22px}
.prose th{text-align:left;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--grey-2);padding-bottom:12px;font-weight:600}
.prose td{padding:13px 0;border-top:1px solid var(--line);font-size:14.5px;color:var(--grey);vertical-align:top}
.prose td:first-child{width:38%;color:var(--paper);font-weight:500;padding-right:20px}
.maj{display:inline-flex;align-items:center;gap:9px;padding:9px 16px;border:1px solid var(--line);
  border-radius:999px;font-size:12.5px;color:var(--grey-2);margin-bottom:clamp(28px,3.4vw,44px)}
.maj i{font-style:normal;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.avert{border:1px solid var(--line-2);background:var(--gold-dim);border-radius:var(--r-m);
  padding:22px 26px;margin:8px 0 30px}
.avert b{display:block;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-lt);margin-bottom:10px}
.avert p{font-size:14px;color:var(--grey);line-height:1.7;margin:0}
.toc{border:1px solid var(--line);background:var(--ink-2);border-radius:var(--r-m);
  padding:24px 28px;margin-bottom:clamp(32px,4vw,52px);box-shadow:var(--sh-1)}
.toc b{display:block;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px}
.toc ol{list-style:none;counter-reset:t;columns:2;column-gap:36px}
.toc li{counter-increment:t;padding:6px 0}
.toc a{font-size:14px;color:var(--grey);display:flex;gap:11px;transition:color .3s}
.toc a::before{content:counter(t,decimal-leading-zero);color:var(--gold-dk);font-variant-numeric:tabular-nums;font-size:12px;padding-top:2px}
.toc a:hover{color:var(--gold-lt)}
@media(max-width:760px){.toc ol{columns:1}.prose td:first-child{width:auto;display:block;padding-bottom:4px}
  .prose td{display:block;border-top:none}.prose tr{display:block;border-top:1px solid var(--line);padding:12px 0}}
