/* woods360 — charte « Sombre et tech » (novembre 2026)
   Polices auto-hébergées (@fontsource) :
   - @fontsource-variable/geist 5.3.0 (titres)
   - @fontsource-variable/inter 5.2.8 (texte)
   - @fontsource-variable/geist-mono 5.3.0 (repères, avec parcimonie)
   Licence SIL Open Font License 1.1. */

@font-face{font-family:"Geist";font-style:normal;font-display:swap;font-weight:100 900;src:url("fonts/geist-wght.woff2") format("woff2-variations"),url("fonts/geist-wght.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-display:swap;font-weight:100 900;src:url("fonts/inter-wght.woff2") format("woff2-variations"),url("fonts/inter-wght.woff2") format("woff2")}
@font-face{font-family:"Geist Mono";font-style:normal;font-display:swap;font-weight:100 900;src:url("fonts/geist-mono-wght.woff2") format("woff2-variations"),url("fonts/geist-mono-wght.woff2") format("woff2")}

:root{
  /* Thème sombre (par défaut) */
  --fond:#0A0F1A; --fond-rgb:10 15 26; --fond-2:#0F1B2D;
  --surface:#0D1422; --surface-rgb:13 20 34; --surface-2:#111A2B;
  --app-haut:#121B2D; --app-bas:#0C1322; --visuel-fond:#0B111D; --pied:#080C15;
  --enc:255 255 255;
  --texte:#F5F7FA; --texte-2:#A9B3C2; --texte-3:#8E99AB; --titre:#FFFFFF; --texte-chapo:#C3CBD7;
  --degrade-a:#FFFFFF; --degrade-b:#AEB9C9;
  --jaune:#FFD23F; --jaune-deco:#FFD23F; --jaune-survol:#FFDC66; --jaune-t:#FFD23F; --jaune-rgb:255 210 63; --sur-jaune:#0A0F1A;
  --bleu:#5B8CFF; --bleu-texte:#8FB0FF; --bleu-rgb:91 140 255;
  --vert:#5FD39A; --vert-rgb:95 211 154;
  --ombre-rgb:0 0 0; --ombre-k:1;
  --btn-clair-survol:#FFFFFF;
  --halo-j:.10; --halo-b:.10;
  --logo-filtre:brightness(0) invert(1); --logo-opacite:.6;
  --ligne:rgb(var(--enc) / .08); --ligne-2:rgb(var(--enc) / .14);
  --carte:var(--surface); --carte-2:var(--surface-2);
  --f-titre:"Geist","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-texte:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"Geist Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --marge:clamp(20px,4vw,40px);
  --max:1200px;
  --section:clamp(80px,8.5vw,120px);
  --r:16px;
  --r-s:10px;
  --ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:dark;
}
/* Thème clair : blanc cassé chaud, texte quasi noir, ambre pour le texte « jaune » (contraste AA) */
:root[data-theme="clair"]{
  --fond:#FAF8F3; --fond-rgb:250 248 243; --fond-2:#F3EFE6;
  --surface:#FFFFFF; --surface-rgb:255 255 255; --surface-2:#FFFDF9;
  --app-haut:#FFFFFF; --app-bas:#FAF8F4; --visuel-fond:#F6F3EC; --pied:#F1EDE4;
  --enc:22 26 34;
  --texte:#161A22; --texte-2:#454C5A; --texte-3:#585F6E; --titre:#0C0F15; --texte-chapo:#363D4A;
  --degrade-a:#0E1219; --degrade-b:#424A59;
  --jaune:#FFD23F; --jaune-deco:#E0A400; --jaune-survol:#FFC814; --jaune-t:#8A5B00; --jaune-rgb:214 160 0; --sur-jaune:#0A0F1A;
  --bleu:#3D6BEA; --bleu-texte:#2A53C4; --bleu-rgb:61 107 234;
  --vert:#11744A; --vert-rgb:24 150 92;
  --ombre-rgb:40 34 20; --ombre-k:.2;
  --btn-clair-survol:#000000;
  --halo-j:.16; --halo-b:.06;
  --logo-filtre:brightness(0); --logo-opacite:.62;
  --ligne:rgb(var(--enc) / .10); --ligne-2:rgb(var(--enc) / .17);
  color-scheme:light;
}

/* Thème clair : cartes sur fond blanc plutôt que voiles translucides */
:root[data-theme="clair"] .carte,:root[data-theme="clair"] .mini{background:var(--surface)}
:root[data-theme="clair"] .tarif--phare{background:radial-gradient(120% 70% at 50% 0%,rgb(var(--jaune-rgb) / .14),transparent 60%),var(--surface)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--fond)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--fond);color:var(--texte);font-family:var(--f-texte);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;font-feature-settings:"cv11","ss01"}
@supports (overflow:clip){body{overflow-x:clip}}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
img,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit}
::selection{background:var(--jaune);color:var(--sur-jaune)}
:focus-visible{outline:2px solid var(--jaune-t);outline-offset:3px;border-radius:4px}
[id]{scroll-margin-top:88px}

.sprite{position:absolute;width:0;height:0;overflow:hidden}
.ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:var(--jaune);color:var(--sur-jaune);padding:12px 16px;border-radius:8px;text-decoration:none;font-weight:600}
.skip:focus{top:12px}
.mono{font-family:var(--f-mono);font-size:13px;letter-spacing:.02em;font-weight:500}
.wrap{width:100%;max-width:calc(var(--max) + 2 * var(--marge));margin-inline:auto;padding-inline:var(--marge)}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;border-radius:999px;font-family:var(--f-texte);font-weight:600;font-size:15px;line-height:1.2;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s,box-shadow .25s,transform .2s var(--ease);white-space:nowrap}
.btn .ic{width:18px;height:18px;transition:transform .2s var(--ease)}
.btn:hover .ic{transform:translateX(3px)}
.btn--grand{min-height:52px;padding:0 24px;font-size:16px}
.btn--petit{min-height:44px;padding:0 16px;font-size:14px}
.btn--jaune{background:var(--jaune);color:var(--sur-jaune);box-shadow:0 0 0 1px rgb(var(--jaune-rgb) / .4),0 8px 32px -6px rgb(var(--jaune-rgb) / .45),inset 0 1px 0 rgb(255 255 255 / .5)}
.btn--jaune:hover{background:var(--jaune-survol);box-shadow:0 0 0 1px rgb(var(--jaune-rgb) / .6),0 12px 44px -6px rgb(var(--jaune-rgb) / .6),inset 0 1px 0 rgb(255 255 255 / .5)}
.btn--contour{background:rgb(var(--enc) / .04);color:var(--texte);border-color:var(--ligne-2)}
.btn--contour:hover{background:rgb(var(--enc) / .08);border-color:rgb(var(--enc) / .28)}
.btn--clair{background:var(--texte);color:var(--fond)}
.btn--clair:hover{background:var(--btn-clair-survol)}
.lien-fleche{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--texte);font-weight:500;text-decoration:none;border-bottom:0}
.lien-fleche .ic{width:18px;height:18px;color:var(--jaune-t);transition:transform .2s var(--ease)}
.lien-fleche:hover .ic{transform:translateX(3px)}
.lien-fleche:hover{color:var(--titre);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgb(var(--enc) / .35)}

/* En-tête */
.header{position:sticky;top:0;z-index:50;background:rgb(var(--fond-rgb) / .72);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--ligne)}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px}
.logo{display:inline-flex;align-items:center;min-height:44px}
.logo img{height:22px;width:auto}
/* Logo : variante claire (texte foncé) et sombre (texte blanc), selon le thème */
.logo-clair{display:none!important}
:root[data-theme="clair"] .logo-sombre{display:none!important}
:root[data-theme="clair"] .logo-clair{display:block!important}
/* Bascule clair / sombre (visible seulement si le script de thème a tourné) */
.theme-btn{display:none;place-items:center;width:44px;height:44px;flex:none;border-radius:10px;border:1px solid var(--ligne-2);background:transparent;color:var(--texte);cursor:pointer;transition:background-color .2s,border-color .2s}
.js .theme-btn{display:grid}
.theme-btn:hover{background:rgb(var(--enc) / .06);border-color:rgb(var(--enc) / .28)}
.theme-btn .ic{width:19px;height:19px}
.theme-btn .ic-lune{display:none}
:root[data-theme="clair"] .theme-btn .ic-lune{display:block}
:root[data-theme="clair"] .theme-btn .ic-soleil{display:none}
@media (max-width:419px){.header__contact{display:none}.logo img{height:20px}}
.menu__contact{border-top:1px solid var(--ligne);margin-top:6px;padding-top:6px}
@media (min-width:420px){.menu__contact{display:none!important}}
.nav{display:none;gap:4px}
.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:8px;color:var(--texte-2);text-decoration:none;font-size:14px;font-weight:500;transition:color .15s,background-color .15s}
.nav a:hover,.nav a[aria-current]{color:var(--texte);background:rgb(var(--enc) / .05)}
.header__actions{display:flex;align-items:center;gap:8px}
.menu{position:relative}
.menu summary{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;border:1px solid var(--ligne-2);cursor:pointer;list-style:none;color:var(--texte)}
.menu summary::-webkit-details-marker{display:none}
.menu__panneau{position:absolute;right:0;top:calc(100% + 10px);min-width:220px;display:grid;padding:8px;border-radius:14px;background:rgb(var(--surface-rgb) / .98);border:1px solid var(--ligne-2);box-shadow:0 24px 60px -12px rgb(var(--ombre-rgb) / calc(.7 * var(--ombre-k)))}
.menu__panneau a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:8px;color:var(--texte);text-decoration:none;font-weight:500}
.menu__panneau a:hover{background:rgb(var(--enc) / .06)}
@media (min-width:960px){.nav{display:flex}.menu{display:none}}

/* Titres */
.titre-section{font-family:var(--f-titre);font-weight:600;font-size:clamp(2rem,4.4vw,3.5rem);line-height:1.04;letter-spacing:-.04em;color:var(--texte);text-wrap:balance}
.titre-page{font-family:var(--f-titre);font-weight:600;font-size:clamp(2.4rem,5.6vw,4.5rem);line-height:1.02;letter-spacing:-.045em;text-wrap:balance;background:linear-gradient(180deg,var(--degrade-a) 35%,var(--degrade-b));-webkit-background-clip:text;background-clip:text;color:transparent}
.sous-titre{font-family:var(--f-titre);font-weight:600;font-size:22px;line-height:1.25;letter-spacing:-.02em}
.tete{margin-bottom:clamp(40px,5vw,64px)}
.tete > *{max-width:780px}
.tete--centre{text-align:center}
.tete--centre > *{margin-inline:auto}
.tete__label{color:var(--jaune-t);margin-bottom:16px;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.tete__lead{margin-top:20px;color:var(--texte-2);font-size:18px;line-height:1.6;max-width:40em}
.tete--centre .tete__lead{margin-inline:auto}
.tete__lead a{color:var(--texte);text-underline-offset:4px;text-decoration-color:var(--jaune-t)}
.tete--lien{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}

.section{position:relative;padding-block:var(--section)}
.section--serree{padding-block:clamp(48px,6vw,80px)}
.section--teinte{background:linear-gradient(180deg,var(--fond) 0%,var(--fond-2) 18%,var(--fond-2) 82%,var(--fond) 100%)}

.coches{display:grid;gap:10px}
.coches li{display:flex;gap:10px;align-items:flex-start;color:var(--texte-2);font-size:15px;line-height:1.5}
.coches .ic{width:18px;height:18px;margin-top:2px;color:var(--jaune-t);stroke-width:2.2}

/* Hero */
.hero{position:relative;padding-top:clamp(48px,7vw,88px);overflow:hidden;isolation:isolate}
.hero__fond{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(55% 45% at 50% -5%,rgb(var(--jaune-rgb) / var(--halo-j)),transparent 70%),
    radial-gradient(45% 40% at 85% 40%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 72%),
    radial-gradient(40% 35% at 12% 55%,rgb(var(--jaune-rgb) / calc(var(--halo-j) * .55)),transparent 72%),
    var(--fond)}
.hero__texte{text-align:center;display:flex;flex-direction:column;align-items:center}
.surtitre{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 10px;border-radius:999px;border:1px solid var(--ligne-2);background:rgb(var(--enc) / .03);color:var(--texte-2);font-size:13px;font-weight:500;margin-bottom:24px}
.surtitre__point{width:8px;height:8px;border-radius:50%;background:var(--jaune);box-shadow:0 0 0 4px rgb(var(--jaune-rgb) / .15),0 0 12px var(--jaune)}
.hero__titre{font-family:var(--f-titre);font-weight:600;font-size:clamp(2.5rem,6.6vw,5.4rem);line-height:.98;letter-spacing:-.05em;max-width:13.5em;text-wrap:balance;background:linear-gradient(180deg,var(--degrade-a) 30%,var(--degrade-b) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.06em}
.hero__lead{margin-top:24px;max-width:38em;font-size:clamp(17px,1.6vw,19px);line-height:1.6;color:var(--texte-2);text-wrap:pretty}
.hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px}
.faits{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 32px;margin-top:28px;font-size:14px}
.faits div{display:flex;gap:8px;align-items:baseline}
.faits dt{color:var(--texte-3)}
.faits dd{color:var(--texte);font-weight:600;font-variant-numeric:tabular-nums}

/* Scène 3D : carrousel de trois maquettes (Applications · Sites · Automatisation) */
.scene{position:relative;margin-top:clamp(40px,4.5vw,56px);perspective:1800px;perspective-origin:50% 0;padding-bottom:clamp(48px,6vw,96px)}
.scene__halo{position:absolute;left:50%;top:10%;width:min(1100px,96%);height:70%;transform:translateX(-50%);z-index:-1;pointer-events:none;filter:blur(60px);
  background:radial-gradient(45% 55% at 30% 50%,rgb(var(--jaune-rgb) / calc(var(--halo-j) * 1.6)),transparent 70%),radial-gradient(40% 50% at 72% 45%,rgb(var(--bleu-rgb) / calc(var(--halo-b) * 1.8)),transparent 70%)}
.vitrine{position:relative;max-width:1120px;margin-inline:auto}
.vitrine__nav{display:none;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:clamp(20px,2.4vw,28px)}
.js .vitrine__nav{display:flex}
.vitrine__onglets{display:inline-flex;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--ligne-2);background:rgb(var(--surface-rgb) / .7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.vitrine__onglet{position:relative;min-height:40px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:var(--texte-2);font-size:14px;font-weight:500;cursor:pointer;overflow:hidden;transition:color .2s,background-color .2s}
.vitrine__onglet:hover{color:var(--texte)}
.vitrine__onglet[aria-selected="true"]{background:var(--texte);color:var(--fond)}
.vitrine__onglet:focus-visible{outline-offset:2px}
.vitrine__jauge{position:absolute;left:16px;right:16px;bottom:5px;height:2px;border-radius:2px;background:var(--jaune);transform:scaleX(0);transform-origin:left;opacity:0}
.vitrine__pause{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--ligne-2);background:rgb(var(--surface-rgb) / .7);color:var(--texte-2);cursor:pointer}
.vitrine__pause[hidden]{display:none}
.vitrine__pause:hover{color:var(--texte);border-color:rgb(var(--enc) / .3)}
.vitrine__pause .ic{width:16px;height:16px}
.vitrine__pause .ic-lecture{display:none}
.vitrine__pause[aria-pressed="true"] .ic-pause{display:none}
.vitrine__pause[aria-pressed="true"] .ic-lecture{display:block;fill:currentColor}
.vitrine__plan{--tilt:14deg;transform:rotateX(var(--tilt)) scale(var(--echelle,.98));transform-origin:50% 0;transform-style:preserve-3d;display:grid;gap:40px}
.js .vitrine__plan{gap:0}
.js .vitrine__panneau{grid-area:1 / 1;display:flex;flex-direction:column}
.js .vitrine__panneau > .app{flex:1;display:flex;flex-direction:column}
.js .vitrine__panneau > .app > :last-child{flex:1}
.vitrine__panneau{position:relative;min-width:0}
.js .vitrine__panneau:not(.est-actif){opacity:0;visibility:hidden;pointer-events:none}
@media (prefers-reduced-motion:no-preference){
  .js .vitrine__panneau{transition:opacity .7s var(--ease),transform .8s var(--ease),visibility 0s linear 0s}
  .js .vitrine__panneau:not(.est-actif){transform:translateY(18px) scale(.985);transition:opacity .5s var(--ease),transform .6s var(--ease),visibility 0s linear .6s}
  .vitrine--auto .vitrine__onglet[aria-selected="true"] .vitrine__jauge{opacity:.9;animation:jauge var(--duree,6s) linear forwards}
  .vitrine--suspendu .vitrine__onglet[aria-selected="true"] .vitrine__jauge{animation-play-state:paused}
  @keyframes jauge{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  .anim .vitrine__plan{transition:transform .1s linear}
}
.vitrine__onglet[aria-selected="true"] .vitrine__jauge{background:var(--jaune)}
.app{position:relative;border-radius:14px;background:linear-gradient(180deg,var(--app-haut),var(--app-bas));border:1px solid rgb(var(--enc) / .12);
  box-shadow:0 0 0 1px rgb(var(--ombre-rgb) / calc(.6 * var(--ombre-k))),inset 0 1px 0 rgb(255 255 255 / .08),0 50px 120px -30px rgb(var(--ombre-rgb) / calc(.9 * var(--ombre-k))),0 30px 60px -30px rgb(var(--bleu-rgb) / calc(var(--halo-b) * 3));
  overflow:hidden;font-size:13px;line-height:1.4;color:var(--texte)}
.app::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:2;
  background:linear-gradient(180deg,rgb(var(--enc) / .3),rgb(var(--enc) / 0) 30%,rgb(var(--jaune-rgb) / 0) 70%,rgb(var(--jaune-rgb) / .35));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.app__barre{display:flex;align-items:center;gap:16px;height:40px;padding:0 14px;border-bottom:1px solid var(--ligne);background:rgb(var(--enc) / .02)}
.app__feux{display:flex;gap:7px}
.app__feux i{width:11px;height:11px;border-radius:50%;background:rgb(var(--enc) / .14)}
.app__url{flex:1;max-width:340px;margin-inline:auto;text-align:center;padding:4px 12px;border-radius:7px;background:rgb(var(--enc) / .04);color:var(--texte-3);font-family:var(--f-mono);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.app__corps{display:grid;grid-template-columns:190px minmax(0,1fr) 300px;min-height:420px}
.app__menu{padding:16px 10px;border-right:1px solid var(--ligne);display:grid;align-content:start;gap:2px}
.app__menu p{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:var(--texte-2)}
.app__menu .ic{width:16px;height:16px}
.app__menu p.app__marque{padding:6px 10px 10px;margin-bottom:10px;border-bottom:1px solid var(--ligne);border-radius:0}
.app__menu p.actif{background:rgb(var(--enc) / .06);color:var(--texte)}
.app__menu b{margin-left:auto;font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--jaune);color:var(--sur-jaune)}
.app__principal{padding:20px 22px;min-width:0}
.app__tete{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}
.app__tete p{font-family:var(--f-titre);font-size:18px;font-weight:600;letter-spacing:-.02em}
.app__tete span{color:var(--texte-3);font-size:12px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.kpis p{position:relative;padding:12px 14px;border-radius:10px;border:1px solid var(--ligne);background:rgb(var(--enc) / .025);overflow:hidden}
.kpis span{display:block;color:var(--texte-3);font-size:12px}
.kpis b{display:block;font-family:var(--f-titre);font-size:26px;font-weight:600;letter-spacing:-.03em;margin-top:2px}
.spark{position:absolute;right:10px;bottom:12px;width:56px;height:22px;color:var(--bleu)}
.spark::before{content:"";position:absolute;inset:0;border-radius:3px;
  background:linear-gradient(180deg,currentColor,transparent);opacity:.18;clip-path:polygon(0 80%,20% 60%,40% 70%,60% 35%,80% 45%,100% 10%,100% 100%,0 100%)}
.spark::after{content:"";position:absolute;inset:0;background:currentColor;clip-path:polygon(0 80%,20% 60%,40% 70%,60% 35%,80% 45%,100% 10%,100% 16%,80% 51%,60% 41%,40% 76%,20% 66%,0 86%)}
.spark--2{color:var(--vert)}
.spark--3{color:var(--jaune-t)}
.spark--3::before,.spark--3::after{transform:scaleY(-1)}
.table{border:1px solid var(--ligne);border-radius:10px;overflow:hidden}
.table p{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid var(--ligne)}
.table p span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.table p span:nth-child(2){color:var(--texte-2)}
.table .table__tete{border-top:0;background:rgb(var(--enc) / .025);color:var(--texte-3);font-size:12px}
.table .table__tete span:nth-child(2){color:var(--texte-3)}
.table p.sel{background:linear-gradient(90deg,rgb(var(--jaune-rgb) / .09),transparent 70%);box-shadow:inset 2px 0 0 var(--jaune-deco)}
.st{justify-self:end;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:999px;border:1px solid var(--ligne-2);color:var(--texte-2)}
.st--ok{color:var(--vert);border-color:rgb(var(--vert-rgb) / .35);background:rgb(var(--vert-rgb) / .08)}
.st--info{color:var(--jaune-t);border-color:rgb(var(--jaune-rgb) / .4);background:rgb(var(--jaune-rgb) / .08)}
.st--att{color:var(--bleu-texte);border-color:rgb(var(--bleu-rgb) / .35);background:rgb(var(--bleu-rgb) / .1)}
.app__ia{border-left:1px solid var(--ligne);padding:16px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,rgb(var(--bleu-rgb) / .05),transparent 60%)}
.app__ia-tete{display:flex;align-items:center;gap:8px;font-weight:600;padding-bottom:10px;border-bottom:1px solid var(--ligne)}
.app__ia-tete .ic{width:16px;height:16px;color:var(--bleu-texte)}
.bulle{padding:10px 12px;border-radius:12px;font-size:12.5px;line-height:1.5;max-width:92%}
.bulle--client{align-self:flex-end;background:rgb(var(--enc) / .07);border-bottom-right-radius:4px;color:var(--texte)}
.bulle--ia{background:rgb(var(--bleu-rgb) / .1);border:1px solid rgb(var(--bleu-rgb) / .22);border-bottom-left-radius:4px;color:var(--texte)}
.bulle--ia b{display:block;font-size:11px;font-weight:600;color:var(--bleu-texte);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}
.bulle--action{display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgb(var(--jaune-rgb) / .07);border-color:rgb(var(--jaune-rgb) / .3);max-width:100%}
.bulle--action em{font-style:normal;font-weight:600;font-size:12px;background:var(--jaune);color:var(--sur-jaune);padding:4px 10px;border-radius:999px}
.app__saisie{margin-top:auto;padding:10px 12px;border-radius:10px;border:1px solid var(--ligne-2);color:var(--texte-3);font-size:12.5px}
.notif__ic{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:rgb(var(--vert-rgb) / .14);color:var(--vert)}
.notif__ic .ic{width:18px;height:18px;stroke-width:2.4}
.notif b{display:block;font-weight:600}
.notif span{color:var(--texte-2)}
.app__marque img{height:18px;width:auto}
.notif{position:absolute;right:clamp(12px,3vw,40px);bottom:-22px;z-index:3;display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:14px;background:rgb(var(--surface-rgb) / .92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--ligne-2);box-shadow:0 20px 50px -10px rgb(var(--ombre-rgb) / calc(.7 * var(--ombre-k)));font-size:13px;line-height:1.35}
.notif__ic--j{background:rgb(var(--jaune-rgb) / .16);color:var(--jaune-t)}
.notif--site{right:auto;left:clamp(12px,3vw,40px)}

.scene__legende{margin-top:44px;text-align:center;color:var(--texte-3);font-size:12px}

/* Correctifs : onglets du carrousel sur petit écran, barre mobile et pied de page, cibles tactiles */
@media (max-width:420px){
  .vitrine__nav{min-width:0;max-width:100%}
  .vitrine__onglets{flex:0 1 auto;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  .vitrine__onglets::-webkit-scrollbar{display:none}
  .vitrine__onglet{flex:none;scroll-snap-align:center}
  .vitrine__onglets{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
}

/* Maquette b : site vitrine générique */
.sv{padding:0 0 22px;min-height:420px}
.sv__nav{display:flex;align-items:center;gap:20px;padding:14px 24px;border-bottom:1px solid var(--ligne)}
.sv__marque{display:flex;align-items:center;gap:10px;font-family:var(--f-titre);font-weight:600;font-size:14px;letter-spacing:-.01em}
.sv__mono{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--texte);color:var(--fond);font-style:normal;font-size:11px;font-weight:700;letter-spacing:.02em}
.sv__liens{display:flex;gap:18px;margin-left:auto;color:var(--texte-2);font-size:12.5px}
.sv__cta{padding:7px 14px;border-radius:999px;background:var(--jaune);color:var(--sur-jaune);font-weight:600;font-size:12px}
.sv__hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:center;padding:26px 24px 22px}
.sv__texte{display:flex;flex-direction:column;align-items:flex-start}
.sv__badge{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:999px;border:1px solid var(--ligne-2);color:var(--texte-2);font-size:11.5px}
.sv__badge i{width:7px;height:7px;border-radius:50%;background:var(--vert)}
.sv__titre{display:block;margin:14px 0 10px;font-family:var(--f-titre);font-weight:600;font-size:clamp(22px,2.5vw,32px);line-height:1.08;letter-spacing:-.035em;color:var(--titre)}
.sv__sous{color:var(--texte-2);font-size:13px;max-width:30em}
.sv__btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.sv__btn{padding:9px 16px;border-radius:999px;border:1px solid var(--ligne-2);font-weight:600;font-size:12.5px;color:var(--texte)}
.sv__btn--j{background:var(--jaune);border-color:transparent;color:var(--sur-jaune)}
.sv__atouts{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:18px;color:var(--texte-3);font-size:11.5px}
.sv__atouts span{display:inline-flex;align-items:center;gap:6px}
.sv__atouts span::before{content:"";width:12px;height:12px;border-radius:50%;background:rgb(var(--vert-rgb) / .18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2318965C' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'/%3E%3C/svg%3E") center/70% no-repeat}
.sv__visuel{position:relative;width:100%;max-width:380px;justify-self:end}
.sv__demande{position:absolute;left:-18px;bottom:16px;display:block;padding:10px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--ligne-2);box-shadow:0 16px 40px -12px rgb(var(--ombre-rgb) / calc(.6 * var(--ombre-k)));font-size:11.5px;color:var(--texte-2)}
.sv__demande b{display:block;color:var(--texte);font-size:12.5px}
.sv__lieu{position:absolute;right:12px;top:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--ligne-2);font-size:11.5px;font-weight:600}
.sv__lieu .ic{width:14px;height:14px;color:var(--jaune-t)}
.sv__services{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 24px}
.sv__service{display:block;padding:14px;border-radius:12px;border:1px solid var(--ligne);background:rgb(var(--enc) / .02)}
.sv__service .ic{width:18px;height:18px;color:var(--jaune-t);margin-bottom:10px}
.sv__service b{display:block;font-size:13px;margin-bottom:8px}
.sv__service i{display:block;height:6px;border-radius:3px;background:rgb(var(--enc) / .08);margin-top:6px}
.sv__service i + i{width:65%}

/* Carrousel « Sites » : formulaire de demande de devis à la place de l'illustration (DEC-0009) */
.sv__form{display:grid;gap:8px;padding:16px;border-radius:14px;border:1px solid var(--ligne-2);background:var(--surface);box-shadow:0 16px 40px -16px rgb(var(--ombre-rgb) / calc(.6 * var(--ombre-k)))}
.sv__form-titre{font-family:var(--f-titre);font-weight:600;font-size:14px;letter-spacing:-.01em;margin-bottom:4px}
.sv__champ{display:grid;gap:2px;padding:8px 10px;border-radius:8px;border:1px solid var(--ligne);background:rgb(var(--enc) / .02)}
.sv__champ i{font-style:normal;color:var(--texte-3);font-size:11px}
.sv__champ b{font-weight:500;font-size:12.5px;color:var(--texte)}
.sv__envoyer{margin-top:4px;padding:9px;border-radius:999px;background:var(--jaune);color:var(--sur-jaune);font-weight:600;font-size:12px;text-align:center}
.sv__visuel .sv__demande{left:auto;right:-16px;top:-22px;bottom:auto}
@media (max-width:720px){.sv__visuel .sv__demande{right:8px;top:-20px}}

/* Maquette c : éditeur de flux d'automatisation */
.wf{display:flex;flex-direction:column;min-height:420px}
.wf__outils{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--ligne);font-size:12.5px}
.wf__nom{font-weight:600}
.wf__actif{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;border:1px solid rgb(var(--vert-rgb) / .35);background:rgb(var(--vert-rgb) / .08);color:var(--vert);font-size:11.5px;font-weight:600}
.wf__actif i{width:6px;height:6px;border-radius:50%;background:currentColor}
.wf__droite{margin-left:auto;display:flex;gap:4px;padding:3px;border-radius:9px;background:rgb(var(--enc) / .05)}
.wf__onglet{padding:4px 10px;border-radius:7px;color:var(--texte-3);font-size:11.5px}
.wf__onglet--on{background:var(--surface);color:var(--texte);box-shadow:0 1px 2px rgb(var(--ombre-rgb) / calc(.3 * var(--ombre-k)))}
.wf__toile{flex:1;display:grid;place-items:center;padding:20px 18px 28px;background:radial-gradient(60% 70% at 50% 50%,rgb(var(--jaune-rgb) / calc(var(--halo-j) * .35)),transparent 75%)}
.wf__svg{width:100%;height:auto;overflow:visible}
.wf__svg--v{display:none;max-width:380px}
.wf-lien{fill:none;stroke:rgb(var(--enc) / .28);stroke-width:2}
.wf-lien--off{stroke-dasharray:5 6;stroke:rgb(var(--enc) / .18)}
.wf-point{fill:none;stroke:var(--jaune);stroke-width:7;stroke-linecap:round;stroke-dasharray:0 100;opacity:0}
.wf-etiq rect{fill:var(--surface);stroke:var(--ligne-2)}
.wf-etiq text{fill:var(--texte-2);font-family:var(--f-mono);font-size:11px;text-anchor:middle}
.wf__svg--v .wf-etiq text{font-size:8.5px}
.wf-boite{fill:var(--surface-2);stroke:rgb(var(--enc) / .16);stroke-width:1.5}
.wf-noeud--ia .wf-boite{stroke:rgb(var(--jaune-rgb) / .55)}
.wf-ic-fond{fill:rgb(var(--enc) / .06)}
.wf-noeud--declencheur .wf-ic-fond{fill:rgb(var(--bleu-rgb) / .16)}
.wf-noeud--ia .wf-ic-fond{fill:rgb(var(--jaune-rgb) / .2)}
.wf-ic{fill:none;stroke:var(--texte-2);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.wf-noeud--declencheur .wf-ic{stroke:var(--bleu-texte)}
.wf-noeud--ia .wf-ic{stroke:var(--jaune-t);fill:rgb(var(--jaune-rgb) / .35)}
.wf-t{fill:var(--texte);font-family:var(--f-texte);font-size:14.5px;font-weight:600}
.wf-s{fill:var(--texte-3);font-family:var(--f-texte);font-size:12px}
.wf__svg--v .wf-t{font-size:13px}.wf__svg--v .wf-s{font-size:11px}
.wf-poignee{fill:var(--surface);stroke:rgb(var(--enc) / .4);stroke-width:1.5}
.wf-ok circle{fill:var(--vert)}
.wf-ok path{fill:none;stroke:var(--surface);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.wf-noeud--attente{opacity:.6}
.wf-noeud--attente .wf-boite{stroke-dasharray:5 5}
@media (prefers-reduced-motion:no-preference){
  .anim .wf-point{animation:wfpoint 3s linear infinite}
  .anim .wf-point--2{animation-delay:.9s}
  .anim .wf-point--3{animation-delay:1.8s}
  @keyframes wfpoint{0%{stroke-dashoffset:0;opacity:0}6%{opacity:1}30%{opacity:1}36%{stroke-dashoffset:-100;opacity:0}100%{stroke-dashoffset:-100;opacity:0}}
}

@media (max-width:1080px){.app__corps{grid-template-columns:minmax(0,1fr) 280px}.app__menu{display:none}.sv__liens{display:none}}
@media (max-width:720px){
  .vitrine__plan{--tilt:10deg}
  .sv__form{max-width:none}
  .app{font-size:12px}
  .app__corps{grid-template-columns:minmax(0,1fr);min-height:0}
  .app__ia{display:none}
  .app__principal{padding:14px}
  .kpis{gap:6px}.kpis p{padding:10px}.kpis b{font-size:20px}.spark{display:none}
  .table p{padding:9px 10px;grid-template-columns:minmax(0,1fr) auto}
  .table p span:nth-child(2){display:none}
  .table .cache-s{display:none}
  .notif{right:10px;bottom:-18px;padding:10px 12px 10px 10px;font-size:12px}
  .notif--site{left:10px;right:auto}
  .sv{min-height:0;padding-bottom:16px}
  .sv__nav{padding:12px 14px;gap:10px}.sv__cta{margin-left:auto;font-size:11px;padding:6px 10px}
  .sv__hero{grid-template-columns:minmax(0,1fr);padding:18px 14px;gap:0}
  .sv__visuel{justify-self:stretch;max-width:none;margin-top:18px}
    .sv__demande{left:8px;bottom:8px;padding:8px 10px}
  .sv__titre{font-size:22px}
  .sv__services{padding:0 14px;gap:6px}.sv__service{padding:10px}.sv__service b{font-size:12px}
  .wf{min-height:0}
  .wf__droite{display:none}
  .wf__toile{padding:14px 8px 26px}
  .wf__svg--h{display:none}.wf__svg--v{display:block}
}
@media (max-width:560px){.vitrine__nav{gap:6px;flex-wrap:nowrap}.vitrine__onglet{padding:0 11px;font-size:13px;min-height:36px}.vitrine__jauge{left:11px;right:11px;bottom:4px}.vitrine__pause{width:38px;height:38px;flex:none}}
@media (max-width:359px){.vitrine__nav{flex-wrap:wrap}}
@media (max-width:400px){.sv__cta{display:none}.sv__atouts span:nth-child(3){display:none}}

/* Bandeau des outils */
.outils{padding-block:24px 8px;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne);background:rgb(var(--enc) / .012)}
.outils__tete{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}
.outils__titre{font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--texte-3)}
.defile__pause{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;padding:0 14px;border:1px solid var(--ligne-2);border-radius:999px;background:transparent;color:var(--texte-2);font-size:13px;font-weight:500;cursor:pointer}
.defile__pause:hover{color:var(--texte);border-color:rgb(var(--enc) / .3)}
.defile__pause[hidden]{display:none}
.defile__pause .ic{width:14px;height:14px}
.defile{display:flex;overflow:hidden;padding-block:16px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.defile:focus-visible{outline-offset:-3px}
.defile__piste{display:flex;flex:none;align-items:center;gap:56px;padding-right:56px;min-width:100%;justify-content:space-around}
.logo-outil{display:flex;align-items:center;gap:10px;min-height:44px;white-space:nowrap}
.logo-outil__img{height:26px;width:auto;max-width:none;filter:var(--logo-filtre);opacity:var(--logo-opacite);transition:opacity .2s}
.logo-outil--symbole .logo-outil__img{height:28px}
.logo-outil__img[src$="google-workspace-mot.png"]{height:22px}
.logo-outil__img[src$="chatgpt-mono.png"]{height:26px}
.logo-outil:hover .logo-outil__img{opacity:1}
.logo-outil__nom{font-family:var(--f-titre);font-weight:600;font-size:21px;letter-spacing:-.02em;line-height:28px;color:var(--texte-2);transition:color .2s}
.logo-outil:hover .logo-outil__nom{color:var(--titre)}
@media (prefers-reduced-motion:no-preference){
  .defile__piste{animation:defile 48s linear infinite}
  .defile:hover .defile__piste,.defile:focus-within .defile__piste,.defile:focus .defile__piste,.defile--pause .defile__piste{animation-play-state:paused}
  @keyframes defile{from{transform:translateX(0)}to{transform:translateX(-100%)}}
}
@media (prefers-reduced-motion:reduce){
  .defile{-webkit-mask-image:none;mask-image:none;padding-inline:var(--marge);max-width:calc(var(--max) + 2 * var(--marge));margin-inline:auto}
  .defile__piste{flex-wrap:wrap;flex:1;justify-content:center;gap:12px 40px;padding-right:0;min-width:0}
  .defile__piste[aria-hidden="true"],.defile__pause{display:none!important}
}

/* Trois temps */
.etapes{padding-block:clamp(64px,8vw,104px) 0}
.etapes__titre{font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--texte-3);margin-bottom:24px}
.etapes__liste{display:grid;gap:1px;background:var(--ligne);border:1px solid var(--ligne);border-radius:var(--r);overflow:hidden}
.etapes__liste li{background:var(--fond);padding:28px}
.etapes__liste .mono{color:var(--jaune-t)}
.etapes__liste h3{font-family:var(--f-titre);font-weight:600;font-size:22px;letter-spacing:-.02em;margin:14px 0 8px}
.etapes__liste p{color:var(--texte-2);font-size:15px}
@media (min-width:760px){.etapes__liste{grid-template-columns:repeat(3,1fr)}}

/* Lumière qui suit la souris */
.carte,.lum{position:relative;isolation:isolate}
.carte::before,.lum::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;transition:opacity .35s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgb(var(--enc) / .06),transparent 45%)}
.carte::after,.lum::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;opacity:0;transition:opacity .35s;
  background:radial-gradient(300px circle at var(--mx,50%) var(--my,0%),rgb(var(--jaune-rgb) / .55),rgb(var(--bleu-rgb) / .25) 40%,transparent 70%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.carte:hover::before,.carte:hover::after,.lum:hover::before,.lum:hover::after{opacity:1}

/* Offres : disposition bento */
.bento{display:grid;gap:16px}
.carte{display:grid;gap:28px;align-content:start;padding:clamp(24px,3vw,36px);border-radius:20px;background:linear-gradient(180deg,rgb(var(--enc) / .035),rgb(var(--enc) / .012));border:1px solid var(--ligne);overflow:hidden}
.carte__num{color:var(--jaune-t);margin-bottom:16px}
.carte h3{font-family:var(--f-titre);font-weight:600;font-size:clamp(24px,2.4vw,30px);line-height:1.1;letter-spacing:-.03em;margin-bottom:12px}
.carte__texte > p:not(.carte__num){color:var(--texte-2);margin-bottom:20px;max-width:34em}
.carte__visuel{position:relative;border-radius:14px;border:1px solid var(--ligne);background:radial-gradient(120% 90% at 50% 0%,rgb(var(--bleu-rgb) / .10),transparent 60%),var(--visuel-fond);padding:20px;overflow:hidden;font-size:12.5px;line-height:1.4;min-height:240px}
.carte__prix{display:flex;flex-wrap:wrap;gap:12px 32px;padding-top:20px;border-top:1px solid var(--ligne);align-self:end}
.carte__prix dt{color:var(--texte-3);font-size:13px}
.carte__prix dd{font-family:var(--f-titre);font-weight:600;font-size:18px;letter-spacing:-.01em;color:var(--texte)}
/* Offres : cinq cartes (quatre offres et l'accompagnement transversal) */
.bento--5 .carte{grid-template-rows:auto auto auto 1fr;gap:22px}
.carte__texte > p.carte__probleme,.carte__probleme{font-family:var(--f-titre);font-weight:500;color:var(--jaune-t);font-size:14.5px;line-height:1.35;margin:-6px 0 10px}
.carte__pied{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;padding-top:20px;border-top:1px solid var(--ligne);align-self:end}
.carte__pied .carte__prix{padding-top:0;border-top:0}
.a-definir{color:var(--texte-3)!important;font-style:italic;font-weight:500!important}
.badge-nouveau{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;background:var(--jaune);color:var(--sur-jaune);font-family:var(--f-texte);font-size:11px;font-weight:600;letter-spacing:0;text-transform:none;vertical-align:1px}
.approche{display:grid;gap:10px}
.approche__choix{display:inline-flex;justify-self:start;padding:4px;gap:4px;border-radius:999px;border:1px solid var(--ligne-2);background:rgb(var(--enc) / .03)}
.approche__btn{min-height:36px;padding:0 14px;border-radius:999px;border:0;background:transparent;color:var(--texte-2);font:600 13px/1 var(--f-texte);cursor:pointer;transition:background-color .2s var(--ease),color .2s var(--ease)}
.approche__btn:hover{color:var(--texte)}
.approche__btn[aria-pressed="true"]{background:var(--texte);color:var(--fond)}
.approche__texte{color:var(--texte-2);font-size:14px;line-height:1.55;margin:0}
.approche__texte b{color:var(--texte);font-weight:600}
.js .approche__texte b{display:none}
@media (min-width:1000px){
  .bento{grid-template-columns:repeat(12,minmax(0,1fr))}
  .carte--sites,.carte--auto{grid-column:1 / 7}
  .carte--apps,.carte--ia{grid-column:7 / 13}
  .carte--acc{grid-column:1 / 13;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;column-gap:48px}
  .carte--acc .carte__pied{grid-column:1 / -1}
}
.offres__legende{margin-top:12px;color:var(--texte-3);font-size:12px}

/* mini-visuel : site vitrine sur téléphone + résultat de recherche locale */
.mv-site{display:flex;align-items:center;justify-content:center;gap:18px;min-height:290px}
.mini-tel{width:168px;padding:14px 12px;border-radius:22px;background:var(--surface-2);border:1px solid rgb(var(--enc) / .16);box-shadow:0 24px 50px -10px rgb(var(--ombre-rgb) / calc(.8 * var(--ombre-k)))}
.mini-tel::before{content:"";display:block;width:40px;height:4px;border-radius:4px;background:rgb(var(--enc) / .18);margin:0 auto 12px}
.mini-tel__marque{display:flex;align-items:center;gap:7px;font-weight:600;font-size:11.5px;margin-bottom:12px}
.mini-tel__marque .sv__mono{width:22px;height:22px;font-size:9px;border-radius:6px}
.mini-tel__titre{font-family:var(--f-titre);font-weight:600;font-size:15px;line-height:1.15;letter-spacing:-.02em;margin-bottom:12px}
.mini-tel__btn{display:block;text-align:center;padding:7px;border-radius:8px;border:1px solid var(--ligne-2);font-weight:600;font-size:11px;margin-bottom:6px}
.mini-tel__btn--j{background:var(--jaune);border-color:transparent;color:var(--sur-jaune)}
.mini-tel__lieu{display:flex;align-items:center;gap:5px;color:var(--texte-3);font-size:10.5px;margin-top:8px}
.mini-tel__lieu .ic{width:12px;height:12px;color:var(--jaune-t)}
.mini-google{flex:1;max-width:210px;display:grid;gap:8px}
.mini-google__req{padding:8px 12px;border-radius:999px;border:1px solid var(--ligne-2);background:rgb(var(--enc) / .03);color:var(--texte-2);font-size:11.5px}
.mini-google__res{display:grid;gap:2px;padding:10px 12px;border-radius:10px;border:1px solid rgb(var(--jaune-rgb) / .45);background:rgb(var(--jaune-rgb) / .07);font-size:11.5px}
.mini-google__res span{color:var(--texte-3);font-size:10.5px}
.mini-google__res--ghost{border-color:var(--ligne);background:rgb(var(--enc) / .02)}
.mini-google__res--ghost b,.mini-google__res--ghost span{display:block;height:8px;border-radius:4px;background:rgb(var(--enc) / .08);width:70%}
.mini-google__res--ghost span{width:45%;margin-top:4px}
@media (max-width:420px){.mini-google{display:none}}
/* mini-visuel : conversation seule */
.mv-conv{display:flex;align-items:center;padding:20px}
.mv-conv .conv{width:100%}
/* mini-visuel : conversation IA (carte 02) */
.conv{display:grid;gap:8px;padding-bottom:18px;border-bottom:1px dashed var(--ligne-2)}
.conv__tete{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--texte-3);margin-bottom:2px}
.conv__tete .ic{width:14px;height:14px;color:var(--bleu-texte)}
.conv .bulle{font-size:12px}
.conv .bulle--client{justify-self:end}
.conv .bulle--ia{justify-self:start}
.conv__ecrit{justify-self:start;display:inline-flex;gap:4px;align-items:center;align-self:flex-start;padding:9px 12px;border-radius:12px;background:rgb(var(--bleu-rgb) / .1);border:1px solid rgb(var(--bleu-rgb) / .22)}
.conv__ecrit i{width:5px;height:5px;border-radius:50%;background:var(--bleu-texte);opacity:.5}
@media (prefers-reduced-motion:no-preference){
  .anim .conv__ecrit i{animation:point 1.2s ease-in-out infinite}
  .anim .conv__ecrit i:nth-child(2){animation-delay:.15s}.anim .conv__ecrit i:nth-child(3){animation-delay:.3s}
  @keyframes point{0%,60%,100%{opacity:.35;transform:none}30%{opacity:1;transform:translateY(-2px)}}
}

/* mini-visuel : planning + téléphone */
.mv-planning{display:flex;align-items:flex-end;min-height:290px}
.planning{width:62%;border-radius:10px;border:1px solid var(--ligne);background:rgb(var(--enc) / .03);padding:12px}
.planning__tete{display:flex;justify-content:space-between;margin-bottom:10px}
.planning__tete span{color:var(--texte-3)}
.planning__jours{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
.planning .j{color:var(--texte-3);font-size:11px;padding-left:2px}
.ev{display:block;padding:7px 8px;border-radius:6px;background:rgb(var(--enc) / .05);border-left:2px solid rgb(var(--enc) / .2);font-size:11.5px;line-height:1.3;color:var(--texte)}
.ev--j{background:rgb(var(--jaune-rgb) / .1);border-left-color:var(--jaune-deco)}
.ev--b{background:rgb(var(--bleu-rgb) / .12);border-left-color:var(--bleu)}
.tel{position:absolute;right:16px;top:18px;width:150px;padding:14px 12px 12px;border-radius:22px;background:var(--surface-2);border:1px solid rgb(var(--enc) / .16);box-shadow:0 24px 50px -10px rgb(var(--ombre-rgb) / calc(.8 * var(--ombre-k))),0 0 0 4px rgb(var(--enc) / .03)}
.tel::before{content:"";display:block;width:40px;height:4px;border-radius:4px;background:rgb(var(--enc) / .18);margin:0 auto 12px}
.tel__titre{font-weight:600;font-size:13px}
.tel__sous{color:var(--texte-3);font-size:11px;margin-bottom:10px}
.tel__liste{display:grid;gap:6px;margin-bottom:12px}
.tel__liste li{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--texte-2)}
.tel__liste li::before{content:"";width:12px;height:12px;border-radius:4px;border:1.5px solid rgb(var(--enc) / .3);flex:none}
.tel__liste li.fait{color:var(--texte)}
.tel__liste li.fait::before{border-color:var(--jaune);background:var(--jaune) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A0F1A' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/80% no-repeat}
.tel__btn{display:block;text-align:center;padding:7px;border-radius:8px;background:var(--jaune);color:var(--sur-jaune);font-weight:600;font-size:11px}
/* mini-visuel : flux d'automatisation */
.mv-flux{display:flex;flex-direction:column;justify-content:center;gap:20px;padding:20px}
.flux{position:relative;display:grid;gap:14px;width:100%}
.flux::before{content:"";position:absolute;left:19px;top:20px;bottom:20px;width:2px;background:linear-gradient(180deg,rgb(var(--enc) / .12),rgb(var(--enc) / .12));border-radius:2px}
.flux::after{content:"";position:absolute;left:19px;top:20px;width:2px;height:40px;border-radius:2px;background:linear-gradient(180deg,transparent,var(--jaune),transparent);opacity:.9}
.flux li{position:relative;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 0}
.flux__ic{position:relative;z-index:1;display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--surface-2);border:1px solid var(--ligne-2);color:var(--texte-2);flex:none}
.flux__ic .ic{width:18px;height:18px}
.flux li p{flex:1;min-width:0;padding:10px 12px;border-radius:10px;background:rgb(var(--enc) / .03);border:1px solid var(--ligne)}
.flux li b{display:block;font-weight:600;font-size:13px}
.flux li p span{color:var(--texte-3);font-size:12px}
.flux li em{min-width:3.4em;text-align:right;font-style:normal;font-family:var(--f-mono);font-size:11px;color:var(--texte-3)}
.flux__ia .flux__ic{background:rgb(var(--jaune-rgb) / .12);border-color:rgb(var(--jaune-rgb) / .5);color:var(--jaune-t);box-shadow:0 0 24px -4px rgb(var(--jaune-rgb) / .5)}
.flux__ia p{border-color:rgb(var(--jaune-rgb) / .25)!important;background:rgb(var(--jaune-rgb) / .05)!important}
@media (prefers-reduced-motion:no-preference){
  .anim .flux::after{animation:influx 3.2s var(--ease) infinite}
  @keyframes influx{0%{transform:translateY(0);opacity:0}15%{opacity:1}85%{opacity:1}100%{transform:translateY(calc(var(--flux-h,260px) - 40px));opacity:0}}
}
/* mini-visuel : suivi */
.mv-suivi{display:flex;align-items:center}
.suivi{width:100%;border-radius:10px;border:1px solid var(--ligne);background:rgb(var(--enc) / .03);overflow:hidden}
.suivi__tete{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--ligne)}
.suivi li{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border-top:1px solid var(--ligne);color:var(--texte-2)}
.suivi li:first-child{border-top:0}
.suivi em{font-style:normal;font-family:var(--f-mono);font-size:11.5px;color:var(--vert)}
.suivi li.encours{color:var(--texte);background:rgb(var(--jaune-rgb) / .05)}
.suivi li.encours em{color:var(--jaune-t)}
@media (max-width:520px){.mv-planning{flex-direction:column;align-items:stretch;min-height:0}.planning{width:100%}.tel{position:relative;right:auto;top:auto;width:190px;margin:-34px 4px 0 auto}}

/* Par où commencer ? : aide au choix (P2-01) */
.guide{display:grid;gap:28px;padding:clamp(24px,4vw,44px);border-radius:22px;border:1px solid var(--ligne);background:linear-gradient(180deg,rgb(var(--enc) / .035),rgb(var(--enc) / .012))}
.guide__titre{font-family:var(--f-titre);font-weight:600;font-size:clamp(24px,3vw,34px);line-height:1.1;letter-spacing:-.03em;color:var(--titre);max-width:22em}
.guide__choix{display:flex;flex-wrap:wrap;gap:10px}
.guide__btn{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:999px;border:1px solid var(--ligne-2);background:rgb(var(--enc) / .03);color:var(--texte);font-size:14.5px;font-weight:500;text-decoration:none;transition:background-color .2s var(--ease),border-color .2s var(--ease)}
.guide__btn:hover{border-color:rgb(var(--jaune-rgb) / .6)}
.guide__btn[aria-pressed="true"]{background:var(--texte);color:var(--fond);border-color:var(--texte)}
.guide__reponse{display:grid;gap:14px;padding:20px 22px;border-radius:16px;border:1px solid rgb(var(--jaune-rgb) / .45);background:rgb(var(--jaune-rgb) / .06)}
.guide__offre{font-family:var(--f-titre);font-weight:600;font-size:22px;letter-spacing:-.02em;color:var(--titre)}
.guide__pourquoi{color:var(--texte-2);max-width:46em}
.guide__prix{color:var(--texte-3);font-size:14px}
.guide__prix b{color:var(--texte);font-weight:600}
.guide__actions{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center}
@media (min-width:1000px){.guide{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:48px;align-items:start}.guide__reponse{grid-column:2}}

/* Méthode : frise (verticale sur mobile, horizontale sur grand écran).
   Chaque étape trace le segment qui va du centre de son rond au centre du rond suivant :
   la ligne commence et finit exactement au centre du premier et du dernier rond. */
.methode{display:grid;gap:clamp(40px,5vw,64px)}
.methode__tete{display:grid;gap:32px;align-items:end}
.methode__tete .tete{margin-bottom:0}
.delais{padding:20px;border-radius:var(--r);border:1px solid var(--ligne);background:rgb(var(--surface-rgb) / .6)}
.delais__titre{font-size:13px;color:var(--texte-3);margin-bottom:12px}
.delais dl{display:grid;gap:10px}
.delais dl div{display:flex;justify-content:space-between;gap:16px;padding-top:10px;border-top:1px solid var(--ligne)}
.delais dl div:first-child{border-top:0;padding-top:0}
.delais dt{color:var(--texte-2)}
.delais dd{color:var(--texte);font-weight:500;font-variant-numeric:tabular-nums}
.frise{--rond:44px;--haut:14px;--gap:14px;--decal:24px;display:grid;gap:var(--gap)}
.frise__etape{--p:1;position:relative;display:grid;grid-template-columns:var(--rond) minmax(0,1fr);column-gap:16px;align-items:start}
.frise__etape:not(:last-child)::before,.frise__etape:not(:last-child)::after{content:"";position:absolute;left:calc(var(--rond) / 2 - 1px);top:calc(var(--haut) + var(--rond) / 2);width:2px;height:calc(100% + var(--gap));border-radius:2px}
.frise__etape:not(:last-child)::before{background:var(--ligne-2)}
.frise__etape:not(:last-child)::after{background:var(--jaune-deco);transform-origin:top;transform:scaleY(var(--p))}
.anim .frise__etape{--p:0}
.frise__point{position:relative;z-index:1;display:grid;place-items:center;width:var(--rond);height:var(--rond);margin-top:var(--haut);border-radius:50%;background:var(--surface);border:2px solid var(--jaune-deco);color:var(--jaune-t);font-size:13px;font-weight:600;letter-spacing:0;font-variant-numeric:tabular-nums;box-shadow:0 0 0 5px rgb(var(--jaune-rgb) / .12);transition:border-color .35s,color .35s,box-shadow .35s}
.anim .frise__etape:not(.atteinte) .frise__point{border-color:var(--ligne-2);color:var(--texte-3);box-shadow:0 0 0 5px transparent}
.frise__carte{padding:var(--decal);border-radius:var(--r);border:1px solid var(--ligne);background:var(--surface)}
.frise__temps{color:var(--jaune-t);margin-bottom:10px}
.frise h3{font-family:var(--f-titre);font-weight:600;font-size:22px;letter-spacing:-.025em;margin-bottom:6px}
.frise__carte p:not(.frise__temps){color:var(--texte-2);font-size:15px}
@media (min-width:960px){
  .methode__tete{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:64px}
  .frise{--gap:16px;--decal:26px;grid-template-columns:repeat(4,minmax(0,1fr))}
  .frise__etape{display:flex;flex-direction:column}
  .frise__point{margin:0 0 22px var(--decal)}
  .frise__etape:not(:last-child)::before,.frise__etape:not(:last-child)::after{left:calc(var(--decal) + var(--rond) / 2);top:calc(var(--rond) / 2 - 1px);width:calc(100% + var(--gap));height:2px}
  .frise__etape:not(:last-child)::after{transform-origin:left;transform:scaleX(var(--p))}
  .frise__carte{flex:1}
}

/* Pourquoi */
.pourquoi{display:grid;gap:48px}
.engagements .sous-titre,.facon .sous-titre{margin-bottom:20px}
.engagements ol{counter-reset:eng;border-top:1px solid var(--ligne)}
.engagements li{counter-increment:eng;display:grid;grid-template-columns:40px 1fr;column-gap:12px;padding:20px 0;border-bottom:1px solid var(--ligne)}
.engagements li::before{content:counter(eng,decimal-leading-zero);grid-row:1 / 3;font-family:var(--f-mono);font-size:13px;color:var(--jaune-t);padding-top:3px}
.engagements h4{font-family:var(--f-titre);font-weight:600;font-size:19px;letter-spacing:-.015em}
.engagements p{color:var(--texte-2);font-size:15px;margin-top:4px}
.facon__liste{display:grid;gap:12px}
.mini{padding:22px;border-radius:var(--r);border:1px solid var(--ligne);background:linear-gradient(180deg,rgb(var(--enc) / .03),rgb(var(--enc) / .01))}
.mini dt{font-family:var(--f-titre);font-weight:600;font-size:17px;letter-spacing:-.01em;margin-bottom:6px}
.mini dd{color:var(--texte-2);font-size:15px;margin:0}
@media (min-width:640px){.facon__liste{grid-template-columns:1fr 1fr}.mini--large{grid-column:1 / -1}}
@media (min-width:1000px){.pourquoi{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px}}

/* Exemples */
.exemples{display:grid;gap:16px}
.exemple{display:flex;flex-direction:column;padding:28px;border-radius:var(--r);border:1px solid var(--ligne);background:var(--carte)}
.exemple__secteur{color:var(--bleu-texte);margin-bottom:20px}
.exemple h3{font-family:var(--f-titre);font-weight:600;font-size:21px;line-height:1.2;letter-spacing:-.02em;margin-bottom:10px}
.exemple p:not(.exemple__secteur):not(.exemple__offres){color:var(--texte-2);font-size:15px}
.exemple__offres{margin-top:auto;padding-top:20px;font-size:13px;color:var(--texte-3)}
@media (min-width:700px){.exemples{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1040px){.exemples{grid-template-columns:repeat(3,1fr)}}

@media (min-width:1040px){.exemple:last-child:nth-child(3n+1){grid-column:1 / -1}}

/* Tarifs */
.tarifs{display:grid;gap:16px}
.tarif{position:relative;padding:28px;border-radius:var(--r);border:1px solid var(--ligne);background:var(--carte)}
.tarif h3{font-family:var(--f-titre);font-weight:600;font-size:19px;letter-spacing:-.015em}
.tarif__prix{font-family:var(--f-titre);font-weight:600;font-size:clamp(28px,3vw,34px);letter-spacing:-.035em;margin:12px 0 10px;color:var(--texte)}
.tarif__ht,.tarif__de{font-family:var(--f-texte);font-size:14px;font-weight:500;letter-spacing:0;color:var(--texte-2)}
.tarif__desc{color:var(--texte-2);font-size:15px}
.tarifs__liste{display:grid;gap:16px}
.tarif--phare{padding:clamp(28px,3.4vw,44px);border-radius:22px;border:1px solid rgb(var(--jaune-rgb) / .55);background:radial-gradient(120% 70% at 50% 0%,rgb(var(--jaune-rgb) / .14),transparent 60%),linear-gradient(180deg,var(--surface-2),var(--surface));
  box-shadow:0 0 0 1px rgb(var(--jaune-rgb) / .15),0 0 60px -10px rgb(var(--jaune-rgb) / .35),inset 0 1px 0 rgb(255 255 255 / .08);display:flex;flex-direction:column}
.tarif__tag{align-self:flex-start;color:var(--jaune-t);padding:5px 12px;border-radius:999px;border:1px solid rgb(var(--jaune-rgb) / .45);background:rgb(var(--jaune-rgb) / .08);margin-bottom:24px;font-size:12px}
.tarif--phare h3{font-size:26px;letter-spacing:-.025em}
.tarif--phare .tarif__prix{font-size:clamp(48px,6vw,72px);letter-spacing:-.05em;line-height:1;margin:16px 0 28px}
.tarif--phare .coches{margin-bottom:32px}
.tarif--phare .btn{margin-top:auto;align-self:stretch}
.note-legale{grid-column:1 / -1;color:var(--texte-3);font-size:13px;text-align:center;margin-top:8px}
@media (min-width:720px){.tarifs__liste{grid-template-columns:1fr 1fr}}
@media (min-width:1040px){.tarifs{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}

/* Tarifs : tuile pleine largeur */
@media (min-width:720px){.tarif--large{grid-column:1 / -1}}
.tarif__prix.a-definir{font-size:20px}

/* Blog (accueil et liste) */
.derniers{display:grid;gap:16px}
.une{display:grid;border-radius:20px;border:1px solid var(--ligne);background:var(--carte);overflow:hidden}
.une__visuel{position:relative;display:grid;place-items:center;min-height:220px;overflow:hidden;border-bottom:1px solid var(--ligne);
  background:radial-gradient(60% 80% at 25% 20%,rgb(var(--jaune-rgb) / calc(var(--halo-j) * 1.3)),transparent 70%),radial-gradient(50% 70% at 85% 90%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 70%),var(--visuel-fond)}
.halo{display:none}
.une__corps{padding:28px;display:flex;flex-direction:column}
.meta-art{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--texte-3);margin-bottom:12px}
.meta-art__cat{color:var(--jaune-t);font-family:var(--f-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;padding-top:1px}
.une__titre,.ligne-art__titre{font-family:var(--f-titre);font-weight:600;letter-spacing:-.025em;line-height:1.2}
.une__titre{font-size:clamp(22px,2.4vw,28px)}
.ligne-art__titre{font-size:20px}
.une__titre a,.ligne-art__titre a{text-decoration:none}
.une__titre a::after,.ligne-art__titre a::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:1}
.une__titre a:hover,.ligne-art__titre a:hover{text-decoration:underline;text-decoration-color:var(--jaune-t);text-underline-offset:4px}
.une__resume{color:var(--texte-2);margin-top:12px}
.une__bas{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:20px;font-size:13px;color:var(--texte-3)}
.lire{display:inline-flex;align-items:center;gap:6px;color:var(--texte);font-weight:500}
.lire .ic{width:16px;height:16px;color:var(--jaune-t)}
.liste-art{display:grid;gap:12px}
.ligne-art{padding:24px;border-radius:var(--r);border:1px solid var(--ligne);background:var(--carte);display:grid;gap:4px}
.ligne-art__texte p{color:var(--texte-2);font-size:15px;margin-top:8px}
.ligne-art__date{font-size:13px;color:var(--texte-3);margin-top:8px}
@media (min-width:1000px){
  .derniers{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
  .une{grid-template-rows:auto 1fr}
}
.blog-tete{padding-block:clamp(56px,8vw,104px) clamp(40px,5vw,64px);position:relative;overflow:hidden;isolation:isolate}
.blog-tete::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 70% at 20% 0%,rgb(var(--jaune-rgb) / var(--halo-j)),transparent 70%),radial-gradient(40% 60% at 90% 0%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 70%)}
.blog-tete .disposition{display:grid;gap:24px;align-items:end}
.blog-tete__lead{color:var(--texte-2);font-size:18px;max-width:34em}
@media (min-width:1000px){.blog-tete .disposition{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px}}
.blog-liste{padding-bottom:var(--section)}
.une-large{margin-bottom:16px}
@media (min-width:860px){.une-large .une{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.une-large .une__visuel{border-bottom:0;border-right:1px solid var(--ligne);min-height:340px}.une-large .une__corps{padding:40px}}
@media (min-width:860px){.blog-liste .liste-art{grid-template-columns:1fr 1fr}}

/* FAQ */
.faq{display:grid;gap:40px}
.faq__liste{border-top:1px solid var(--ligne)}
.faq__liste details{border-bottom:1px solid var(--ligne)}
.faq__liste summary{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:64px;padding:18px 0;cursor:pointer;list-style:none;font-family:var(--f-titre);font-weight:500;font-size:18px;letter-spacing:-.01em;color:var(--texte)}
.faq__liste summary::-webkit-details-marker{display:none}
.faq__liste summary .ic{width:18px;height:18px;color:var(--texte-2);transition:transform .25s var(--ease),color .2s}
.faq__liste details[open] summary .ic{transform:rotate(45deg);color:var(--jaune-t)}
.faq__liste summary:hover{color:var(--titre)}
.faq__liste details p{color:var(--texte-2);padding:0 40px 24px 0;max-width:62ch}
@media (min-width:1000px){.faq{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px}.faq__tete{position:sticky;top:120px;align-self:start}}

/* Cadrage */
.cadrage{position:relative;display:grid;gap:40px;padding:clamp(28px,5vw,64px);border-radius:28px;border:1px solid var(--ligne-2);overflow:hidden;isolation:isolate;
  background:radial-gradient(70% 90% at 0% 0%,rgb(var(--jaune-rgb) / .12),transparent 60%),radial-gradient(60% 80% at 100% 100%,rgb(var(--bleu-rgb) / .16),transparent 60%),var(--surface)}
.cadrage__texte > p:not(.tete__label){color:var(--texte-2);font-size:17px;margin:20px 0 32px;max-width:36em}
.cadrage__points{display:grid;gap:12px;counter-reset:pt;align-content:center}
.cadrage__points li{counter-increment:pt;padding:20px 22px 20px 64px;position:relative;border-radius:var(--r);border:1px solid var(--ligne);background:rgb(var(--fond-rgb) / .55)}
.cadrage__points li::before{content:counter(pt,decimal-leading-zero);position:absolute;left:22px;top:22px;font-family:var(--f-mono);font-size:13px;color:var(--jaune-t)}
.cadrage__points h3{font-family:var(--f-titre);font-weight:600;font-size:18px;letter-spacing:-.01em}
.cadrage__points p{color:var(--texte-2);font-size:15px;margin-top:4px}
@media (min-width:1000px){.cadrage{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px}}

/* Contact */
.contact{overflow:hidden;isolation:isolate;border-top:1px solid var(--ligne)}
.contact__fond{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(50% 45% at 50% 0%,rgb(var(--jaune-rgb) / calc(var(--halo-j) * 1.2)),transparent 70%),radial-gradient(60% 60% at 50% 100%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 70%)}
.contact__info{text-align:center;display:flex;flex-direction:column;align-items:center}
.contact__titre{font-family:var(--f-titre);font-weight:600;font-size:clamp(2.6rem,7vw,5.5rem);line-height:1;letter-spacing:-.05em;background:linear-gradient(180deg,var(--degrade-a) 30%,var(--degrade-b));-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.06em}
.contact__lead{color:var(--texte-2);font-size:18px;max-width:34em;margin:24px 0 36px}
.contact__mail{font-size:17px;min-height:56px;padding:0 28px;max-width:100%}
.contact__adresse{margin-top:20px;color:var(--texte-2);font-size:15px;overflow-wrap:anywhere}
.contact__adresse strong{color:var(--texte);font-weight:600;user-select:all}
.contact__faits{margin-top:12px;color:var(--texte-3)}
.contact__aide{margin-top:clamp(48px,6vw,80px);display:grid;gap:32px;padding:clamp(24px,4vw,40px);border-radius:22px;border:1px solid var(--ligne);background:rgb(var(--surface-rgb) / .7)}
.contact__aide h3{font-family:var(--f-titre);font-weight:600;font-size:22px;letter-spacing:-.02em;margin-bottom:8px}
.contact__aide-tete > p:not(.contact__note){color:var(--texte-2)}
.contact__note{margin-top:12px}
.contact__liste{display:grid;gap:12px}
.contact__liste li{padding:18px 20px;border-radius:14px;border:1px solid var(--ligne);background:rgb(var(--enc) / .02)}
.contact__liste b{display:block;font-weight:600;margin-bottom:4px}
.contact__liste span{color:var(--texte-2);font-size:15px}
@media (min-width:720px){.contact__liste{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.contact__aide{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:48px}}
@media (max-width:420px){.contact__mail{white-space:normal;text-align:center;font-size:16px;padding:12px 20px}}

/* Contact : préparer son e-mail */
.compo[hidden]{display:none}
.compo{margin:36px auto 0;max-width:640px;display:grid;gap:16px;text-align:left;padding:22px;border-radius:18px;border:1px solid var(--ligne);background:rgb(var(--surface-rgb) / .6)}
.compo__titre{font-weight:600;color:var(--texte)}
.compo__groupe{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.compo__groupe legend{width:100%;margin-bottom:8px;color:var(--texte-3);font-size:13px}
.compo__puce{position:relative;cursor:pointer}
.compo__puce input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.compo__puce span{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border-radius:999px;border:1px solid var(--ligne-2);color:var(--texte-2);font-size:14px;font-weight:500}
.compo__puce input:checked + span{background:var(--texte);color:var(--fond);border-color:var(--texte)}
.compo__puce input:focus-visible + span{outline:2px solid var(--jaune-t);outline-offset:3px}
.compo__envoi{justify-self:start}
.compo__note{color:var(--texte-3);font-size:13px}
.copier{margin-left:8px;min-height:32px;padding:4px 12px;border-radius:999px;border:1px solid var(--ligne-2);background:transparent;color:var(--texte);font:600 13px var(--f-texte);cursor:pointer;vertical-align:1px}
.copier:hover{border-color:var(--texte-2)}
.copier__etat{margin-left:8px;color:var(--vert);font-size:13px}
.copier{min-height:44px;padding:0 14px}
.compo__puce span{min-height:44px}

/* Barre d'action mobile */
.barre-mobile{display:none}
@media (max-width:719px){
  .barre-mobile:not([hidden]){display:flex;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:40;gap:8px;padding:8px;border-radius:999px;background:rgb(var(--surface-rgb) / .9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--ligne-2);box-shadow:0 18px 40px -12px rgb(var(--ombre-rgb) / calc(.8 * var(--ombre-k)))}
  .barre-mobile .btn{flex:1;min-height:44px}
  html{scroll-padding-bottom:88px}
}

/* Pied de page */
.footer{border-top:1px solid var(--ligne);padding-top:64px;background:var(--pied)}
.footer__cols{display:grid;gap:40px;padding-bottom:48px}
.footer__marque p{color:var(--texte-2);font-size:15px;margin-top:16px;max-width:28em}
.footer__col h2{font-family:var(--f-mono);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--texte-3);margin-bottom:12px}
.footer__col li{color:var(--texte-2);font-size:15px}
.footer__col li:not(:has(a)){padding-block:12px}
.footer__col a{display:inline-flex;align-items:center;min-height:44px;color:var(--texte-2);text-decoration:none}
.footer__col a:hover{color:var(--texte)}
.footer__bas{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;padding-block:24px 32px;color:var(--texte-3);font-size:13px}
.footer__bas::before{content:"";position:absolute;top:0;left:var(--marge);right:var(--marge);height:1px;background:var(--ligne)}
.footer--simple .footer__bas::before{display:none}
.footer--simple{padding-top:0}
.footer--simple nav{display:flex;flex-wrap:wrap;gap:0 16px}
.footer--simple nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--texte-2);text-decoration:none}
.footer--simple nav a:hover,.footer--simple nav a[aria-current]{color:var(--texte)}
@media (min-width:760px){.footer__cols{grid-template-columns:2fr 1fr 1fr 1fr}}

@media (max-width:719px){.footer{padding-bottom:96px}}

/* Pages légales */
.page{padding-block:clamp(48px,7vw,96px) var(--section);position:relative;isolation:isolate}
.page::before{content:"";position:absolute;inset:0 0 auto;height:420px;z-index:-1;background:radial-gradient(50% 80% at 20% 0%,rgb(var(--jaune-rgb) / var(--halo-j)),transparent 70%),radial-gradient(40% 60% at 90% 0%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 70%)}
.page__texte{max-width:68ch}
.page h1{margin-bottom:12px}
.page .maj{color:var(--texte-3);font-size:14px;padding-bottom:28px;margin-bottom:12px;border-bottom:1px solid var(--ligne)}
.page h2{font-family:var(--f-titre);font-weight:600;font-size:22px;letter-spacing:-.02em;margin:44px 0 12px}
.page p,.page li{color:var(--texte-2);font-size:17px;line-height:1.75}
.page ul{display:grid;gap:4px;padding-left:20px;list-style:disc;margin-top:12px}
.page p + p{margin-top:12px}
.page ul li::marker{color:var(--jaune-deco)}
.page a{color:var(--texte);text-underline-offset:4px;text-decoration-color:rgb(var(--jaune-rgb) / .7)}
.page a:hover{text-decoration-color:var(--jaune-t)}

/* Page 404 */
.ecran{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:64px var(--marge);position:relative;overflow:hidden;isolation:isolate;text-align:center}
.ecran::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 40% at 50% 30%,rgb(var(--jaune-rgb) / var(--halo-j)),transparent 70%),radial-gradient(30% 30% at 50% 75%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 70%)}
.ecran__carte{width:100%;max-width:640px;display:flex;flex-direction:column;align-items:center}
.ecran__logo{margin-bottom:56px}
.ecran__logo img{width:177px;height:auto}
.ecran__code{color:var(--jaune-t);margin-bottom:20px;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.ecran h1{margin-bottom:20px}
.ecran p:not(.ecran__code){color:var(--texte-2);font-size:18px}
.ecran .btn{margin-top:36px}

.ecran__liens{margin-top:20px;color:var(--texte-3)}.ecran__liens a{color:var(--texte);text-underline-offset:4px}

/* Articles */
.ariane{margin-bottom:20px}
.ariane ol{display:flex;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--texte-3)}
.ariane li{display:inline-flex;align-items:center;min-width:0}
.ariane li + li::before{content:"/";margin:0 10px;color:var(--texte-3)}
.ariane a{display:inline-flex;align-items:center;min-height:44px;color:var(--texte-2);text-decoration:none}
.ariane a:hover{color:var(--texte);text-decoration:underline;text-underline-offset:3px}
.ariane [aria-current]{color:var(--texte);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(52ch,60vw)}
@media (max-width:599px){.art-tete .ariane li:last-child{display:none}}
.art-tete{padding-block:clamp(32px,5vw,72px) 0;position:relative;isolation:isolate}
.art-tete::before{content:"";position:absolute;inset:0 0 auto;height:520px;z-index:-1;background:radial-gradient(50% 80% at 25% 0%,rgb(var(--jaune-rgb) / var(--halo-j)),transparent 70%),radial-gradient(40% 60% at 90% 0%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 70%)}
.art-tete .disposition{display:grid;gap:28px;max-width:calc(760px + 2 * var(--marge))}
.art-tete__cat{color:var(--jaune-t);text-transform:uppercase;letter-spacing:.1em;font-size:12px;margin-bottom:16px}
.titre-article{font-family:var(--f-titre);font-weight:600;font-size:clamp(2.1rem,4.6vw,3.6rem);line-height:1.06;letter-spacing:-.04em;text-wrap:balance;color:var(--titre)}
.art-chapo{margin-top:24px;font-size:clamp(18px,1.8vw,20px);line-height:1.65;color:var(--texte-chapo);max-width:62ch}
.art-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding-block:16px;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne);font-size:14px;color:var(--texte-3)}
.art-meta p:first-child{color:var(--texte);font-weight:600}
.partage{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-left:auto}
.partage[hidden]{display:none}
.partage .ic{width:16px;height:16px}
.partage__repli{min-height:44px;padding:0 12px;border-radius:8px;border:1px solid var(--ligne-2);background:var(--carte);color:var(--texte);font:inherit;width:min(100%,320px)}
.partage__etat{color:var(--texte-2);font-size:13px}
.art-visuel{position:relative;max-width:880px;margin:40px auto 0;border-radius:20px;border:1px solid var(--ligne);overflow:hidden;isolation:isolate;padding:clamp(24px,5vw,56px) clamp(16px,4vw,40px);display:grid;place-items:center;min-height:280px;
  background:radial-gradient(60% 80% at 25% 20%,rgb(var(--jaune-rgb) / calc(var(--halo-j) * 1.3)),transparent 70%),radial-gradient(50% 70% at 85% 90%,rgb(var(--bleu-rgb) / var(--halo-b)),transparent 70%),var(--visuel-fond)}

/* Illustrations des articles (SVG en ligne, couleurs du thème) */
.illu{display:block;width:100%;height:auto;color:var(--texte-2);overflow:visible}
.illu .t{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.illu .tf{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;opacity:.55}
.illu .p{fill:var(--surface);stroke:currentColor;stroke-width:2;stroke-linejoin:round}
.illu .p2{fill:rgb(var(--enc) / .06)}
.illu .a{fill:var(--jaune)}
.illu .at{fill:none;stroke:var(--jaune-t);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.illu .ad{fill:none;stroke:var(--jaune-t);stroke-width:2;stroke-linecap:round;stroke-dasharray:4 6}
.illu .b{fill:rgb(var(--bleu-rgb) / .16)}
.illu .bt{fill:none;stroke:var(--bleu-texte);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.illu .sj{fill:none;stroke:var(--sur-jaune);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.illu .txt{fill:currentColor;font-family:var(--f-mono);font-size:13px;font-weight:600}
.illu .txt--grand{font-family:var(--f-titre);font-size:40px;fill:var(--jaune-t)}
.illu .txts{fill:var(--sur-jaune);font-family:var(--f-mono);font-size:12px;font-weight:700}
.illu .pt{fill:currentColor;opacity:.4}
.illu .pc{fill:var(--surface)}
.illu .pc2{fill:var(--surface);stroke:currentColor;stroke-width:2}
.une__visuel .illu{position:relative;width:min(78%,360px);margin-block:24px}
.art-visuel .illu{width:min(100%,520px)}
.ligne-art__vignette{display:grid;place-items:center;width:100%;height:120px;margin-bottom:12px;border-radius:12px;border:1px solid var(--ligne);overflow:hidden;
  background:radial-gradient(70% 90% at 20% 10%,rgb(var(--jaune-rgb) / var(--halo-j)),transparent 70%),var(--visuel-fond)}
.ligne-art__vignette .illu{width:auto;height:96px}
.avertissement{padding:14px 18px;border-radius:12px;border:1px solid var(--ligne-2);background:rgb(var(--enc) / .03);font-size:15px;color:var(--texte-2)}

.art-corps{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;padding-block:clamp(48px,6vw,80px) 0}
.art-corps.wrap{max-width:calc(760px + 2 * var(--marge))}
.prose{min-width:0}
.prose{font-size:18px;line-height:1.78;color:var(--texte-chapo);max-width:68ch}
.prose > * + *{margin-top:1.15em}
.prose > h2:first-child{margin-top:0}
.prose h2{font-family:var(--f-titre);font-weight:600;font-size:clamp(24px,2.6vw,30px);line-height:1.2;letter-spacing:-.03em;color:var(--titre);margin-top:2.2em}
.prose h3{font-family:var(--f-titre);font-weight:600;font-size:21px;line-height:1.3;letter-spacing:-.015em;color:var(--titre);margin-top:1.8em}
.prose strong{color:var(--titre);font-weight:600}
.prose a{color:var(--titre);text-decoration:underline;text-decoration-color:rgb(var(--jaune-rgb) / .7);text-underline-offset:4px;text-decoration-thickness:1px}
.prose a:hover{text-decoration-color:var(--jaune-t);text-decoration-thickness:2px}
.prose ul{list-style:none;padding-left:0;display:grid;gap:.5em}
.prose ul > li{position:relative;padding-left:1.4em}
.prose ul > li::before{content:"";position:absolute;left:.2em;top:.72em;width:6px;height:6px;border-radius:2px;background:var(--jaune-deco)}
.prose ol{list-style:decimal;padding-left:1.4em;display:grid;gap:.5em}
.prose ol > li::marker{color:var(--jaune-t);font-family:var(--f-mono);font-size:.85em}
.a-retenir{margin-block:2em!important;padding:24px 28px;border-radius:var(--r);background:linear-gradient(180deg,rgb(var(--jaune-rgb) / .07),rgb(var(--jaune-rgb) / .02));border:1px solid rgb(var(--jaune-rgb) / .3)}
.a-retenir > p:first-child{font-family:var(--f-titre);font-weight:600;font-size:20px;letter-spacing:-.015em;color:var(--titre);margin-bottom:12px}
.a-retenir > * + *{margin-top:.8em}
.encadre{padding:18px 22px;border-left:2px solid var(--bleu);background:rgb(var(--bleu-rgb) / .08);border-radius:0 12px 12px 0;font-size:16px;line-height:1.65}
.modele{padding:24px;border:1px solid var(--ligne-2);border-radius:var(--r);background:var(--carte);font-size:16px;line-height:1.65}
.modele ol{margin-top:10px}
.table-defile{overflow-x:auto;border:1px solid var(--ligne);border-radius:12px;background:var(--carte)}
.table-defile table{min-width:560px;width:100%;border-collapse:collapse;font-size:15px;line-height:1.5}
.table-defile th,.table-defile td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--ligne)}
.table-defile th{color:var(--titre);font-weight:600;background:rgb(var(--enc) / .03)}
.table-defile tr:last-child td{border-bottom:0}
.sources{margin-top:3em!important;padding-top:28px;border-top:1px solid var(--ligne);font-size:15px;line-height:1.6}
.sources h2{font-size:18px;margin-top:0;margin-bottom:12px}
.sources ul{gap:6px}
.sources > p{color:var(--texte-3);margin-top:12px}
.art-cta{padding:clamp(24px,4vw,36px);border-radius:20px;border:1px solid rgb(var(--jaune-rgb) / .35);background:radial-gradient(90% 90% at 0% 0%,rgb(var(--jaune-rgb) / .1),transparent 60%),var(--carte)}
.art-cta h2{font-family:var(--f-titre);font-weight:600;font-size:26px;letter-spacing:-.025em}
.art-cta p{color:var(--texte-2);margin:10px 0 24px;max-width:46ch}
.art-cta .btn{max-width:100%;white-space:normal;text-align:center}
.art-lies{padding-block:clamp(64px,8vw,112px)}
.art-lies .sous-titre{margin-bottom:24px;font-size:28px;letter-spacing:-.03em}
@media (min-width:860px){.art-lies .liste-art{grid-template-columns:repeat(3,1fr)}}

/* Apparition au défilement (uniquement si le script tourne et que le mouvement est accepté) */
@media (prefers-reduced-motion:no-preference){
  .anim .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
  .anim .reveal.vu{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
