/* ============================================================
   ALMA STUDIO — v4.21 Accessibilité (contraste AA, focus, microcopy)
   Base 4.20 + tokens muted/faint AA dark/light
   ============================================================ */

/* ---------- Tokens ---------- */
:root{
  --bg:#05060d;
  --bg-2:#080a16;
  --bg-3:#0c0e1f;
  --ink:#010201;
  --glass:rgba(255,255,255,.035);
  --glass-2:rgba(255,255,255,.055);
  --line:rgba(255,255,255,.08);
  --line-2:rgba(255,255,255,.14);

  --text:rgba(244,244,252,.96);
  /* A11y AA : muted / faint sur fond #05060d (cibles ≥4.5:1 corps, ≥3:1 UI) */
  --muted:rgba(226,228,245,.88);
  --faint:rgba(226,228,245,.74);

  /* Aurora accent spectrum — cyan dominant (logo + Notre méthode) */
  --cyan-light:#8af2ee;
  --cyan:#22d3ee;
  --cyan-2:#22d3ee;
  --cyan-deep:#5282e8;
  --blue:#3d8bf0;
  --blue-mid:#5282e8;
  --violet:#5b7ef0;
  --violet-deep:#2563eb;
  --magenta:#3d8bf0;
  --pink:#8af2ee;
  --plan-left:#76ebed; /* card offre colonne gauche */

  --grad-aurora:linear-gradient(118deg,#8af2ee 0%,#22d3ee 38%,#2563eb 68%,#1e3a6e 100%);
  --grad-soft:linear-gradient(118deg,rgba(138,242,238,.95) 0%,rgba(34,211,238,.92) 45%,rgba(37,99,235,.88) 100%);
  --grad-text:linear-gradient(92deg,#ffffff 0%,#e8fffe 10%,#8af2ee 32%,#22d3ee 55%,#2563eb 78%,#1e3a6e 100%);
  --aurora-grad:linear-gradient(90deg,#8af2ee 0%,#22d3ee 25%,#2563eb 50%,#22d3ee 75%,#8af2ee 100%);
  --aurora-flow-dur:calc(10s / 1.15);
  --nav-aurora-dur:calc(8s / 1.15);
  /* Titres hero h1 — échelle unifiée (présence desktop + 2 lignes FAQ/Blog) */
  --hero-h1:clamp(2.55rem,6.4vw,4.75rem);

  --scroll-anchor-gap:0;

  --radius:22px;
  --radius-lg:30px;
  --radius-sm:14px;

  --display:'Sora',system-ui,sans-serif;
  --body:'Inter',system-ui,sans-serif;

  --shadow:0 24px 70px -30px rgba(0,0,0,.85);
  --maxw:1200px;
  --nav-h:72px;
  --section-py:clamp(37.5px,5.25vw,75px);
  --section-py-top:var(--section-py);
  --section-py-bottom:var(--section-py-top);
  --section-py-head:clamp(84px,11.2vw,126px);
  --section-py-xl:clamp(4.2rem,9.8vw,7.7rem);
  /* Espacement interne sections (eyebrow / titre / lead) = 50 % du padding section */
  --sec-stack:clamp(18.75px,2.625vw,37.5px);
  --sec-after-head:clamp(1.57rem,3.675vw,2.625rem);
  --sec-block:clamp(.98rem,2.1vw,1.4rem);
  --sec-block-lg:clamp(1.47rem,3.15vw,2.1rem);
  --sec-grid-gap:clamp(.56rem,1.26vw,.98rem);
  --sec-grid-gap-md:1.12rem;
  --sec-grid-gap-sm:.84rem;

  /* Palette cartes / heroes — rendu dark figé en light mode */
  --card-text:rgba(244,244,252,.96);
  --card-muted:rgba(226,228,245,.88);
  --card-faint:rgba(226,228,245,.74);
  --card-line:rgba(255,255,255,.08);
  --card-line-2:rgba(255,255,255,.14);
  --card-glass:rgba(255,255,255,.035);
  --card-surface:#0c0e1f;
  --card-surface-2:#080a16;
  --hero-bg:#05060d;
}

*{box-sizing:border-box}
html{
  scroll-behavior:auto;-webkit-text-size-adjust:100%;scrollbar-gutter:stable;
  scroll-padding-top:calc(var(--nav-h) + var(--scroll-anchor-gap));
  overflow-x:clip;
  overflow-y:auto; /* seul scrollport vertical — évite la double barre */
  scrollbar-width:auto;
  scrollbar-color:#22d3ee rgba(8,12,28,.38)
}
/* iOS / Chrome mobile : ne PAS utiliser 100dvh sur les heroes.
   dvh suit la barre bas (précédent / onglets) → la page s’étire/rétrécit = “téléport”.
   svh / lvh seuls ne suffisent pas sur tous les WebKit : --vh-lock (px) est figé
   au chargement / changement de largeur (voir alma-theme-init.js).
   overflow-x:clip sur html casse le pan horizontal des carrousels (orbite) sur iOS. */
@media(hover:none),(max-width:860px){
  html{
    scrollbar-gutter:auto;
    overscroll-behavior-y:none;
    overscroll-behavior-x:none;
    /* clip = pas de scrollbar page ; le rail orbit gère son pan en interne */
    overflow-x:clip;
    --vh-lock:100lvh;
  }
  body{
    overscroll-behavior-y:none;
    overscroll-behavior-x:none;
    max-width:100%;
    overflow-x:clip
  }
  /* Contenir le débordement hors orbit — overflow-x:clip sur la section
     force overflow-y:auto (spec) et coupe les traits ::before en haut sur mobile */
  main > :is(section,.propulser,.sc-section,.sx-section,.ticker,.stat-strip):not(.orbit-section){
    max-width:100%;
    overflow:visible
  }
  main > :is(section,.propulser,.sc-section,.sx-section):not(.orbit-section) > .wrap{
    max-width:100%;
    overflow-x:clip
  }
  .orbit-section,
  .orbit-section.orbit-section--snap{
    max-width:100%;
    overflow-x:clip
  }
  /* Heroes : hauteur figée → plus de « zoom » cover quand la barre bas toggle */
  .hero,
  .page-contact .cnt-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-secteurs .sc-hero,
  .page-agence .hero,
  .page-agence .agence-hero,
  .page-partenariat .ptn-hero,
  .page-faq .hero,
  .page-blog .hero,
  .page-services .hero,
  .page-secteur .sct-hero{
    min-height:var(--vh-lock);
  }
  .page-index .hero{
    padding-top:calc(var(--nav-h) + 20px);
    padding-bottom:20px;
    /* iPhone 15 : contenu (titres + morph + lead + CTA) peut dépasser 1 écran —
       ne pas clipper, laisser le hero grandir au-delà de --vh-lock */
    overflow:visible;
    height:auto;
    min-height:var(--vh-lock);
  }
  .page-index .hero #nebula-canvas{
    position:absolute;inset:0;width:100%;height:100%;
    min-height:100%;
  }
  .hero{
    padding-top:calc(var(--nav-h) + 28px);
    padding-bottom:28px
  }
  .page-contact .cnt-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-partenariat .ptn-hero,
  .page-agence .hero,
  .page-faq .hero,
  .page-blog .hero,
  .page-services .hero{
    --cnt-hero-gap:40px;
    --tx-hero-gap:40px;
    --rlz-hero-gap:40px;
    --ptn-hero-gap:40px;
    --agence-hero-gap:36px;
    padding-block:calc(var(--nav-h) + 40px) 40px
  }
  .page-secteurs .sc-hero,
  .page-secteurs .hero.sc-hero{
    --sc-hero-gap:28px;
    --sc-hero-gap-bottom:40px;
    min-height:var(--vh-lock);
    height:auto;
    display:flex;flex-direction:column;
    align-items:center;justify-content:center;
    text-align:center;
    padding-block:calc(var(--nav-h) + 28px) 40px;
    padding-inline:clamp(20px,5vw,32px);box-sizing:border-box
  }
  .page-secteurs .sc-hero > .wrap{
    width:100%;max-width:100%;margin:0 auto;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    padding-inline:0
  }
  .page-secteurs .sc-hero-head{
    width:100%;max-width:36rem;margin:0 auto;text-align:center;
    padding-inline:0;display:flex;flex-direction:column;align-items:center
  }
  .page-secteurs .sc-hero-head h1,
  .page-secteurs .sc-hero-head .display,
  .page-secteurs .sc-hero-head .lead,
  .page-secteurs .sc-hero-head .pill{text-align:center;margin-left:auto;margin-right:auto}
  .page-secteurs .sc-hero-head .display.d1{margin-top:1.1rem}
  .page-secteurs .hero .hero-cta-row{justify-content:center;width:100%}
  /* Orbit mobile = snap horizontal (pas sticky 3D) — appliqué dès le CSS, sans attendre JS */
  .orbit-section,
  .orbit-section.orbit-section--snap{height:auto!important;margin-bottom:0}
  .orbit-section .orbit-pin,
  .orbit-section--snap .orbit-pin{
    position:relative!important;height:auto!important;min-height:0!important;
    padding-block:var(--section-py-top) var(--section-py-bottom);
    overflow:visible
  }
  .orbit-section .orbit-stage,
  .orbit-section--snap .orbit-stage{
    height:auto!important;min-height:0;perspective:none;overflow:hidden;
    padding-block:.55rem;
    width:100%;max-width:100%;min-width:0;box-sizing:border-box
  }
  .orbit-section .orbit-rail,
  .orbit-section--snap .orbit-rail{
    position:relative!important;inset:auto;display:flex;align-items:stretch;
    justify-content:flex-start;gap:.85rem;
    overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;
    /* padding = (rail - card) / 2 — 100% du parent, pas 100vw (évite décentrage) */
    --orbit-card-w:min(92vw,400px);
    padding:0.85rem max(0.85rem, calc((100% - var(--orbit-card-w)) / 2));
    scroll-padding-inline:max(0.85rem, calc((100% - var(--orbit-card-w)) / 2));
    -webkit-overflow-scrolling:touch;scroll-behavior:auto;
    overscroll-behavior-x:contain;touch-action:pan-x;
    pointer-events:auto;mask-image:none;-webkit-mask-image:none;
    transform-style:flat;cursor:grab;
    z-index:2;
    /* Critique : min-width:0 sinon le flex s’étire au contenu → scroll mort */
    width:100%;max-width:100%;min-width:0;box-sizing:border-box;
    scrollbar-width:none;-ms-overflow-style:none
  }
  .orbit-section .orbit-rail::-webkit-scrollbar,
  .orbit-section--snap .orbit-rail::-webkit-scrollbar{display:none;width:0;height:0}
  .orbit-section .orbit-rail.is-dragging,
  .orbit-section--snap .orbit-rail.is-dragging{cursor:grabbing;scroll-snap-type:none}
  .orbit-section .orbit-card,
  .orbit-section--snap .orbit-card{
    position:relative!important;left:auto!important;top:auto!important;
    transform:none!important;will-change:auto;visibility:visible!important;
    /* largeur en vw (pas 100% flex) — évite l’explosion de largeur / page vide */
    flex:0 0 min(92vw,400px);
    width:min(92vw,400px);
    max-width:min(92vw,400px);
    box-sizing:border-box;padding:0;
    scroll-snap-align:center;scroll-snap-stop:always;
    pointer-events:auto;touch-action:pan-x;backface-visibility:visible;
    opacity:1!important
  }
  .orbit-section .orbit-card.is-center::after,
  .orbit-section--snap .orbit-card.is-center::after{
    width:115%;height:120%;
    filter:blur(22px);opacity:.7
  }
  .orbit-section .orbit-card .alma-sw,
  .orbit-section .orbit-card .rlz-preview-wrap,
  .orbit-section--snap .orbit-card .alma-sw,
  .orbit-section--snap .orbit-card .rlz-preview-wrap{
    touch-action:pan-x;pointer-events:none
  }
  /* iframe ne doit jamais capturer le geste (sinon swipe mort sur iOS) */
  .orbit-section .rlz-preview-iframe,
  .orbit-section--snap .rlz-preview-iframe{
    pointer-events:none!important
  }
  .orbit-section .alma-sw__chrome,
  .orbit-section .alma-sw__open,
  .orbit-section--snap .alma-sw__chrome,
  .orbit-section--snap .alma-sw__open{
    pointer-events:auto;touch-action:manipulation
  }
  /* Poster plein écran : le wrap parent est pointer-events:none (swipe) — réactiver le bouton */
  .orbit-section .rlz-orbit-poster,
  .orbit-section--snap .rlz-orbit-poster{
    pointer-events:auto!important;touch-action:manipulation;position:relative;z-index:8
  }
  /* Full-bleed sans 100vw (évite scroll latéral page) — annule le padding .wrap */
  .orbit-section .orbit-pin,
  .orbit-section--snap .orbit-pin,
  .orbit-section .orbit-pin > .wrap,
  .orbit-section--snap .orbit-pin > .wrap{
    min-width:0;max-width:100%;box-sizing:border-box
  }
  .orbit-section .orbit-body,
  .orbit-section--snap .orbit-body{
    width:calc(100% + 2 * clamp(20px,5vw,40px));
    max-width:100vw;
    min-width:0;
    margin-inline:calc(-1 * clamp(20px,5vw,40px));
    overflow-x:clip;overflow-y:visible;box-sizing:border-box
  }
  .orbit-section,
  .orbit-section.orbit-section--snap{
    height:auto!important;
    max-width:100%;
    overflow-x:clip;
    overflow-y:visible
  }
  .rlz-fs__panel{height:min(96%,var(--vh-lock));max-height:var(--vh-lock)}
  /* Plus aucun padding/gap hero en svh/vh sur mobile (sinon reflow barre bas) */
  .page-faq .hero,
  .page-blog .hero{
    padding-block:calc(var(--nav-h) + 40px) 40px
  }
}
/* Scrollbar native (4.14) — la custom décrochait le WebGL nébula au scroll */
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{
  background:rgba(8,12,28,.38);
  border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(34,211,238,.1),inset 0 0 0 1px rgba(61,139,240,.06)
}
::-webkit-scrollbar-corner{background:transparent}
::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,
    #8af2ee 0%,
    #22d3ee 12%,
    #28ccea 28%,
    #35b3e6 44%,
    #3d8bf0 58%,
    #22d3ee 72%,
    #5282e8 86%,
    #8af2ee 100%);
  border-radius:999px;
  border:2px solid rgba(8,12,28,.38);
  box-shadow:0 0 11px rgba(34,211,238,.34),0 0 13px rgba(61,139,240,.22),inset 0 1px 0 rgba(255,255,255,.28)
}
::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,
    #a5f3fc 0%,
    #8af2ee 10%,
    #22d3ee 28%,
    #42aee6 46%,
    #3d8bf0 62%,
    #22d3ee 78%,
    #6cecf4 92%,
    #c8faf8 100%);
  border-color:rgba(34,211,238,.18);
  box-shadow:0 0 14px rgba(34,211,238,.42),0 0 16px rgba(61,139,240,.28),inset 0 1px 0 rgba(255,255,255,.34)
}
::-webkit-scrollbar-thumb:active{
  background:linear-gradient(180deg,
    #5282e8 0%,
    #22d3ee 35%,
    #3d8bf0 65%,
    #8af2ee 100%);
  box-shadow:0 0 12px rgba(34,211,238,.4),0 0 14px rgba(61,139,240,.32),inset 0 1px 0 rgba(255,255,255,.3)
}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--body);
  font-size:16px;
  line-height:1.6;
  letter-spacing:.005em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  /* clip (pas hidden) : overflow-x:hidden force overflow-y:auto → 2e scrollbar */
  overflow-x:clip;
  overflow-y:visible;
  max-width:100%
}
/* Mobile : overflow visible pour pan orbit iOS (pas de clip sur html/body) */
@media(hover:none),(max-width:860px){
  html,body{overflow-x:clip!important;max-width:100%}
}
a{color:inherit;text-decoration:none}
/* Liens texte : léger grossissement au hover (main uniquement → hors nav / drawer / footer) */
main a:not([class*="btn"]):not(.poda):not(.brand):not(.soc):not(.card):not([class*="card"]):not(.orbit-card__link):not(.alma-sw__open):not(.tx-btn){
  display:inline-block;
  transform-origin:center;
  transition:transform .22s cubic-bezier(.22,1,.36,1),color .22s ease,border-color .22s ease,text-decoration-color .22s ease,box-shadow .22s ease
}
main a:not([class*="btn"]):not(.poda):not(.brand):not(.soc):not(.card):not([class*="card"]):not(.orbit-card__link):not(.alma-sw__open):not(.tx-btn):hover,
main a:not([class*="btn"]):not(.poda):not(.brand):not(.soc):not(.card):not([class*="card"]):not(.orbit-card__link):not(.alma-sw__open):not(.tx-btn):focus-visible{
  transform:scale(1.045)
}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}
::selection{background:rgba(34,211,238,.35);color:#fff}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- A11y v4.21 — anneau focus Alma unifié (dark + light) ---------- */
:where(
  a,button,summary,input,select,textarea,
  [tabindex]:not([tabindex="-1"])
):focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:2px
}
[data-theme="light"] :where(
  a,button,summary,input,select,textarea,
  [tabindex]:not([tabindex="-1"])
):focus-visible{
  outline-color:var(--accent-deep,#1e3a6e)
}
.bg-field{position:fixed;inset:0;z-index:-2;background:var(--bg)}
.bg-grid{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(1100px 700px at 50% 0%,#000 0%,transparent 75%);
          mask-image:radial-gradient(1100px 700px at 50% 0%,#000 0%,transparent 75%);
}
.bg-noise{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.03;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* ---------- Layout ---------- */
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}
section{position:relative}
.section{padding-top:var(--section-py-top);padding-bottom:var(--section-py-bottom)}
.section[id],main[id],[id].wrap{scroll-margin-top:calc(var(--nav-h) + var(--scroll-anchor-gap))}
.section--page-head{padding-top:var(--section-py-head);padding-bottom:var(--section-py-head)}
/* Séparateur entre sections — fondu classique (avant expérimentations mask/border) */
main > :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker,.stat-strip){position:relative}
main > :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker,.stat-strip) + :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker,.stat-strip)::before,
main > .section + .section::before{
  content:'';position:absolute;top:0;left:5%;right:5%;
  height:1px;background:linear-gradient(90deg,transparent,var(--line-2),transparent);
  pointer-events:none;z-index:2
}
/* Évite double trait sous stat-strip (déjà border-block) */
main > .stat-strip + :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker)::before,
main > :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker) + .stat-strip::before{
  content:none;display:none
}
/* Trait collé sous les heroes (hors accueil) — demandé : collé + light plus présent */
body:not(.page-index) main > :is(
  .hero,.cnt-hero,.tx-hero,.rlz-hero,.ptn-hero,.sc-hero,.agence-hero,.sct-hero,.post-hero
){
  position:relative
}
body:not(.page-index) main > :is(
  .hero,.cnt-hero,.tx-hero,.rlz-hero,.ptn-hero,.sc-hero,.agence-hero,.sct-hero,.post-hero
)::after{
  content:'';position:absolute;left:5%;right:5%;bottom:0;z-index:3;pointer-events:none;
  height:1px;background:linear-gradient(90deg,transparent,var(--line-2),transparent)
}
/* Évite le double trait (hero::after + section suivante::before) */
body:not(.page-index) main > :is(
  .hero,.cnt-hero,.tx-hero,.rlz-hero,.ptn-hero,.sc-hero,.agence-hero,.sct-hero,.post-hero
) + :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker,.stat-strip)::before{
  content:none;display:none
}
/* Light : traits sections discrets ; heroes un peu plus marqués / plus larges */
[data-theme="light"] main > :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker,.stat-strip) + :is(section,.propulser,.sc-section,.orbit-section,.sx-section,.ticker,.stat-strip)::before,
[data-theme="light"] main > .section + .section::before,
[data-theme="light"] .divider{
  background:linear-gradient(90deg,transparent,rgba(108,78,168,.12),transparent)
}
[data-theme="light"] body:not(.page-index) main > :is(
  .hero,.cnt-hero,.tx-hero,.rlz-hero,.ptn-hero,.sc-hero,.agence-hero,.sct-hero,.post-hero
)::after{
  left:2%;right:2%;
  background:linear-gradient(90deg,transparent,rgba(108,78,168,.26),transparent)
}
.center{text-align:center}
.stack{display:flex;flex-direction:column;gap:var(--sec-stack)}
.stack--block{gap:var(--sec-block)}
/* Rhythm intra-section — titre / lead / contenu */
:is(.section,.propulser,.sc-section,.sx-section) > .wrap,
.orbit-section .orbit-pin > .wrap{
  display:flex;flex-direction:column;gap:var(--sec-after-head)
}
.sec-head{
  display:flex;flex-direction:column;gap:var(--sec-stack);margin-bottom:0
}
.sec-head .eyebrow,.sec-head .display,.sec-head .lead,.sec-head h2,.sec-head h3{margin:0}
.sec-head + :is(
  .propulser-grid,.bento-grid,.glow-grid,.feat-grid,.price-grid,.sector-grid,
  .cs-stage,.sc-outer,.sx-grid,.steps-grid,.comm-grid,.profiles-grid,
  .opts-grid,.faq-tabs,.faq-list,.faq-group,.rlz-vault,.rlz-showcase-grid,.two-col,
  .card,.cmp-wrap,.cnt-layout,.cta-shift,.infomaniak-encart
){margin-top:0}
:is(.section,.propulser,.sc-section,.sx-section) > .wrap > :is(
  .glow-grid,.feat-grid,.propulser-grid,.bento-grid,.price-grid,.sector-grid,
  .sc-outer,.opts-grid,.faq-tabs,.faq-list,.faq-group,.rlz-vault,.rlz-showcase-grid,
  .sec-foot,.sec-foot--lg,.sc-cta,.orbit-cta,.cta-shift,.two-col,.cnt-layout,
  .infomaniak-encart,.cs-stage,.cmp-wrap,.orbit-body
){margin-top:0;margin-bottom:0}
.card-stack{display:flex;flex-direction:column;gap:var(--sec-stack);align-items:center;text-align:center}
.card-stack .eyebrow,.card-stack h2,.card-stack h3,.card-stack p,.card-stack > div{margin:0}

/* ---------- Typography ---------- */
.display{
  display:block;font-family:var(--display);font-weight:200;letter-spacing:-.02em;
  /* Interligne unique — assez haut pour jambages (g/y/p) sans padding sur .aurora-text
     (le padding inline gonflait certaines line-boxes → écarts irréguliers entre lignes) */
  line-height:1.2;
  overflow:visible
}
:is(h1,h2,h3,h4).display br{display:block}
h1.display{font-size:var(--hero-h1)}
h2.display{font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.2}
.eyebrow{display:inline-flex;align-items:center;gap:.6em;font-family:var(--display);
  font-weight:500;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--grad-aurora)}
.eyebrow.solo::before{display:none}
.grad-text{
  background:var(--grad-text);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent
}
.aurora-text:not(.aurora-flow){
  background:var(--grad-text);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  /* Pas de padding vertical : il élargit la line-box des lignes aurora seulement */
  box-decoration-break:clone;-webkit-box-decoration-break:clone
}
/* Heroes empilés (d1 + d2 aurora) — même densite qu'un titre 2 lignes, sans air autour du degradé */
:is(
  .ptn-hero-head,
  .tx-hero-head,
  .cnt-hero-head,
  .rlz-hero-head,
  .svc-hero-head,
  .page-secteurs .sc-hero-head,
  .page-faq .tx-hero-head,
  .page-blog .tx-hero-head,
  .page-agence .agence-hero
) h1,
.page-index .hero h1{
  display:flex;flex-direction:column;align-items:center;gap:0
}
:is(
  .ptn-hero-head,
  .tx-hero-head,
  .cnt-hero-head,
  .rlz-hero-head,
  .svc-hero-head,
  .page-secteurs .sc-hero-head,
  .page-faq .tx-hero-head,
  .page-blog .tx-hero-head,
  .page-agence .agence-hero,
  .page-index .hero h1
) .display.d1,
:is(
  .ptn-hero-head,
  .tx-hero-head,
  .cnt-hero-head,
  .rlz-hero-head,
  .svc-hero-head,
  .page-secteurs .sc-hero-head,
  .page-faq .tx-hero-head,
  .page-blog .tx-hero-head,
  .page-agence .agence-hero,
  .page-index .hero h1
) .display.d2{
  line-height:1.12;margin-bottom:0
}
:is(
  .ptn-hero-head,
  .tx-hero-head,
  .cnt-hero-head,
  .rlz-hero-head,
  .svc-hero-head,
  .page-secteurs .sc-hero-head,
  .page-faq .tx-hero-head,
  .page-blog .tx-hero-head,
  .page-agence .agence-hero,
  .page-index .hero h1
) .display.d2{
  margin-top:.06em
}
:is(
  .ptn-hero-head,
  .tx-hero-head,
  .cnt-hero-head,
  .rlz-hero-head,
  .svc-hero-head,
  .page-secteurs .sc-hero-head,
  .page-faq .tx-hero-head,
  .page-blog .tx-hero-head,
  .page-agence .agence-hero,
  .page-index .hero h1
) .display.d2 .aurora-text{
  display:inline;margin:0;padding:0;line-height:inherit;vertical-align:baseline
}
.lead{font-size:clamp(1rem,1.4vw,1.18rem);color:var(--muted);max-width:60ch;text-wrap:pretty}
.nobr{white-space:nowrap}
.kicker{font-family:var(--display);font-weight:300;letter-spacing:.04em}
.muted{color:var(--muted)}
.faint{color:var(--faint)}
/* Jambages titres heroes — line-height géré par chaque .*-hero-head (1.08 empilé) */
.breadcrumb{display:flex;gap:.6rem;align-items:center;font-size:.78rem;color:var(--faint);margin-bottom:1.4rem;letter-spacing:.04em}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--cyan)}

/* ---------- Anti-FOUC boutons poda ----------
   Masque le plain btn jusqu’à l’upgrade JS (.btn-poda).
   Le hero CTA est déjà en markup poda (pas de flash). */
a.btn-primary:not(.btn-poda):not(.btn-block):not(.btn-logo):not(.rlz-row-cta),
a.btn-ghost:not(.btn-poda):not(.btn-block):not(.btn-logo),
a.btn-cyan:not(.btn-poda):not(.btn-block){visibility:hidden}

/* ---------- Buttons (+ ripple) ---------- */
.btn{position:relative;display:inline-flex;align-items:center;gap:.55em;
  font-family:var(--display);font-weight:500;font-size:.92rem;letter-spacing:.01em;
  padding:.85em 1.6em;border-radius:999px;border:1px solid transparent;
  overflow:hidden;isolation:isolate;transition:transform .25s,box-shadow .35s,border-color .3s,background .3s}
.btn svg{width:18px;height:18px}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(34,211,238,.35)}
.btn-primary{color:#06121a;background:linear-gradient(180deg,#8af2ee 0%,#22d3ee 48%,#5282e8 100%);
  box-shadow:0 8px 22px -12px rgba(34,211,238,.4),inset 0 1px 0 rgba(255,255,255,.35)}
.btn-primary:hover{filter:brightness(1.06);box-shadow:0 10px 26px -12px rgba(34,211,238,.48),inset 0 1px 0 rgba(255,255,255,.4)}
.btn-ghost{color:rgba(160,185,220,.82);background:rgba(5,8,28,.52);border-color:rgba(34,211,238,.28);backdrop-filter:blur(8px);box-shadow:0 0 0 1px rgba(34,211,238,.06)}
.btn-ghost:hover{border-color:rgba(61,139,240,.42);background:linear-gradient(118deg,rgba(8,10,22,.88) 0%,rgba(34,211,238,.10) 42%,rgba(61,139,240,.08) 100%);color:#fff;box-shadow:0 0 0 1px rgba(34,211,238,.12),0 6px 18px rgba(34,211,238,.14),0 0 20px rgba(61,139,240,.1)}
.btn-cyan{color:#06121a;background:linear-gradient(180deg,#7af0ee,#22d3ee);font-weight:600;
  box-shadow:0 8px 22px -14px rgba(34,211,238,.45)}
.btn-cyan:hover{filter:brightness(1.06);box-shadow:0 10px 26px -14px rgba(34,211,238,.55)}

/* ── CTA slide buttons — même format nav + CTA fin de page ── */
.btn.btn-logo,.btn.cta-shift-btn,.btn.tx-btn,
.btn-logo,.cta-shift-btn,.tx-btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;
  min-height:2.8rem;padding:.72em 1.35em .72em 1.1em;border-radius:11px!important;
  font-family:var(--display);font-size:.76rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  text-decoration:none;background:rgba(5,6,13,.55);
  transition:color .35s,border-color .35s,box-shadow .35s,transform .35s;
  isolation:isolate
}
.btn-logo::before,.cta-shift-btn::before,.tx-btn::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  transition:width .34s cubic-bezier(.4,0,.2,1),opacity .3s ease;z-index:0
}
@media(hover:hover){
  .btn-logo:hover::before,.btn-logo.active::before,.btn-logo:focus-visible::before,
  .cta-shift-btn:hover::before,.cta-shift-btn.is-active::before,
  .tx-btn:hover::before,.tx-btn.is-active::before,
  .nav-cta .btn-logo:hover::before,.nav-cta .btn-logo.active::before{
    transition:width .72s cubic-bezier(.28,.88,.32,1),opacity .58s cubic-bezier(.28,.88,.32,1)
  }
}
.btn-logo .btn-logo-label,.cta-shift-btn span,.tx-btn span{position:relative;z-index:1}
.tx-btn__ico{width:14px;height:14px;flex-shrink:0;opacity:.85;position:relative;z-index:1}
.btn-sm.btn-logo,.btn-sm.cta-shift-btn{min-height:2.55rem;padding:.62em 1.15em .62em .95em;font-size:.72rem}
/* Cyan — Échangeons / primaire */
.btn-logo--cyan,.tx-btn--beam{
  color:#22d3ee;
  border:1px solid color-mix(in srgb,#22d3ee 38%,var(--line));
  box-shadow:0 4px 14px -8px rgba(34,211,238,.2),0 0 8px rgba(34,211,238,.06);
  text-shadow:0 0 12px rgba(34,211,238,.22)
}
.cta-shift-btn--primary{
  color:#4ebef8;
  border:1px solid #5eeaff;
  box-shadow:0 4px 14px -8px rgba(61,139,240,.22),0 0 8px rgba(34,211,238,.08);
  text-shadow:0 0 12px rgba(34,211,238,.24)
}
.btn-logo--cyan::before,.cta-shift-btn--primary::before,.tx-btn--beam::before{background:#22d3ee}
.btn-logo--cyan:hover,.btn-logo--cyan.active,.btn-logo--cyan:focus-visible,
.tx-btn--beam:hover,.tx-btn--beam.is-active{
  color:#fff;border-color:#22d3ee;transform:translateY(-2px);background:transparent;
  box-shadow:0 6px 18px -8px rgba(34,211,238,.32);text-shadow:none;
  transition:color .52s ease .14s,border-color .42s ease,box-shadow .42s ease,transform .35s cubic-bezier(.22,1,.36,1)
}
.cta-shift-btn--primary:hover,.cta-shift-btn--primary.is-active{
  color:#fff;border-color:#5eeaff;transform:translateY(-2px);background:transparent;
  box-shadow:0 6px 18px -8px rgba(34,211,238,.32);text-shadow:none;
  transition:color .52s ease .14s,border-color .42s ease,box-shadow .42s ease,transform .35s cubic-bezier(.22,1,.36,1)
}
.btn-logo--cyan:hover::before,.btn-logo--cyan.active::before,.btn-logo--cyan:focus-visible::before,
.cta-shift-btn--primary:hover::before,.cta-shift-btn--primary.is-active::before,
.tx-btn--beam:hover::before,.tx-btn--beam.is-active::before{width:100%;opacity:1}
/* Clic mobile : fill immédiat (évite l’anim coupée par la navigation) */
.cta-shift-btn.is-active::before,
.cta-shift-btn:active::before,
.tx-btn.is-active::before,
.tx-btn:active::before,
.btn-logo.is-pressing::before,
.btn-logo:active::before{
  width:100%!important;opacity:1!important;transition:none!important
}
.cta-shift-btn.is-active,
.cta-shift-btn:active,
.tx-btn.is-active,
.tx-btn:active{
  color:#fff!important;text-shadow:none!important;background:transparent!important;
  transition:none!important
}
.cta-shift-btn.is-active span,
.cta-shift-btn:active span,
.tx-btn.is-active span,
.tx-btn:active span{
  color:#fff!important;-webkit-text-fill-color:#fff!important
}
/* Bleu profond — Devenir partenaire (nav) */
.btn-logo--violet{
  color:#5282e8;
  border:1px solid color-mix(in srgb,#5282e8 52%,var(--line));
  box-shadow:0 4px 14px -8px rgba(82,130,232,.22),0 0 8px rgba(61,139,240,.06);
  text-shadow:0 0 10px rgba(82,130,232,.2)
}
.btn-logo--violet::before{background:linear-gradient(118deg,#8ec5ff 0%,#3d8bf0 52%,#3d8bf0 100%)}
.btn-logo--violet:hover,.btn-logo--violet.active,.btn-logo--violet:focus-visible{
  color:#fff;border-color:#5282e8;transform:translateY(-2px);background:transparent;
  box-shadow:0 6px 18px -8px rgba(82,130,232,.34);text-shadow:none;
  transition:color .52s ease .14s,border-color .42s ease,box-shadow .42s ease,transform .35s cubic-bezier(.22,1,.36,1)
}
/* Cyan-bleu — CTA bas de page (bouton droit) */
.cta-shift-btn--ghost,.tx-btn--line{
  color:#5eeaff;
  border:1px solid color-mix(in srgb,#3d8bf0 48%,var(--line));
  box-shadow:0 4px 14px -8px rgba(61,139,240,.22),0 0 8px rgba(34,211,238,.08);
  text-shadow:0 0 12px rgba(34,211,238,.24)
}
.cta-shift-btn--ghost::before,.tx-btn--line::before{background:linear-gradient(118deg,#22d3ee,#3d8bf0)}
.cta-shift-btn--ghost:hover,.cta-shift-btn--ghost.is-active,
.tx-btn--line:hover,.tx-btn--line.is-active{
  color:#fff;border-color:#3d8bf0;transform:translateY(-2px);background:transparent;
  box-shadow:0 6px 18px -8px rgba(61,139,240,.32);text-shadow:none;
  transition:color .52s ease .14s,border-color .42s ease,box-shadow .42s ease,transform .35s cubic-bezier(.22,1,.36,1)
}
.btn-logo--violet:hover::before,.btn-logo--violet.active::before,.btn-logo--violet:focus-visible::before,
.cta-shift-btn--ghost:hover::before,.cta-shift-btn--ghost.is-active::before,
.tx-btn--line:hover::before,.tx-btn--line.is-active::before{width:100%;opacity:1}
.cta-shift-btn--ghost.is-active,
.cta-shift-btn--ghost:active,
.tx-btn--line.is-active,
.tx-btn--line:active{
  color:#fff!important;border-color:#3d8bf0!important;text-shadow:none!important
}
.cta-shift-btn--primary.is-active,
.cta-shift-btn--primary:active{
  color:#fff!important;border-color:#5eeaff!important;text-shadow:none!important
}
.btn.btn-lg{padding:1.05em 2em;font-size:1rem}
.btn.btn-sm{padding:.65em 1.2em;font-size:.84rem}
.btn-block{display:flex;width:100%;justify-content:center}
.ripple{position:absolute;border-radius:50%;transform:scale(0);pointer-events:none;
  background:rgba(255,255,255,.45);animation:ripple .65s ease-out forwards;z-index:1}
@keyframes ripple{to{transform:scale(2.6);opacity:0}}

/* ---------- Glass card ---------- */
.card{position:relative;background:var(--glass);border:1px solid var(--line);
  border-radius:var(--radius);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:var(--shadow)}
.card-pad{padding:clamp(1.4rem,2.4vw,2.2rem)}
.card-stack--host{
  background:linear-gradient(135deg,rgba(12,14,31,.96),rgba(10,18,36,.98));
  border-color:rgba(34,211,238,.24);
  max-width:860px;margin-inline:auto
}

/* GlowCard — cursor-tracked aurora border (ported from GlowCard.tsx) */
.glow-grid{display:grid;gap:var(--sec-grid-gap)}
/* service-card grids: explicit columns (not auto-fit) so an odd item count never
   leaves a ragged, off-center last row — odd 7th item spans full width instead */
.glow-grid.feat-grid{grid-template-columns:repeat(3,1fr)}
.glow-grid.feat-grid .svc-wide{grid-column:1/-1;display:flex;align-items:center;gap:var(--sec-grid-gap-md);flex-wrap:wrap}
.glow-grid.feat-grid .svc-wide .svc-num{flex-shrink:0}
.glow-grid.feat-grid .svc-wide .svc-body{flex:1;min-width:240px}
@media(max-width:980px){.glow-grid.feat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.glow-grid.feat-grid{grid-template-columns:1fr}
  .glow-grid.feat-grid .svc-wide{flex-direction:column;align-items:flex-start}}
.glow-grid.compliance-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){.glow-grid.compliance-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.glow-grid.compliance-grid{grid-template-columns:1fr}}
.reduc-text{display:none}
.reduc-text.is-open{display:block}
.reduc-toggle{margin:.4rem auto 0;padding:0;display:block;background:none;border:none;cursor:pointer;
  font-family:var(--body);font-size:.85rem;color:var(--cyan);letter-spacing:.02em;
  border-bottom:1px solid rgba(34,211,238,.35)}
.reduc-toggle:hover{color:var(--cyan-light);border-color:rgba(138,242,238,.5)}
/* GlowCard — viewport-tracked aurora spotlight (original look, ported from GlowCard.tsx) */
[data-glow]{
  --base:188;--spread:28;--radius:22;--border:1.5;--size:240;
  --backdrop:rgba(255,255,255,.035);
  --bg-spot-opacity:.10;--border-spot-opacity:.9;--border-light-opacity:1;
  --border-size:calc(var(--border) * 1px);
  --spotlight-size:calc(var(--size) * 1px);
  --hue:calc(var(--base) + (var(--xp,0) * var(--spread)));
  position:relative;border-radius:calc(var(--radius)*1px);
  padding:clamp(1.4rem,2.2vw,2rem);
  border:var(--border-size) solid rgba(255,255,255,.10);
  background-color:var(--backdrop);
  background-image:radial-gradient(var(--spotlight-size) var(--spotlight-size) at
     calc(var(--x,0)*1px) calc(var(--y,0)*1px),
     hsl(var(--hue) 85% 65% / var(--bg-spot-opacity)),transparent);
  background-size:calc(100% + (2*var(--border-size))) calc(100% + (2*var(--border-size)));
  background-position:50% 50%;background-attachment:fixed;
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:var(--shadow);touch-action:pan-y}
[data-glow]::before,[data-glow]::after{
  pointer-events:none;content:"";position:absolute;inset:calc(var(--border-size)*-1);
  border:var(--border-size) solid transparent;border-radius:calc(var(--radius)*1px);
  background-attachment:fixed;background-repeat:no-repeat;background-position:50% 50%;
  background-size:calc(100% + (2*var(--border-size))) calc(100% + (2*var(--border-size)));
  -webkit-mask:linear-gradient(transparent,transparent),linear-gradient(#fff,#fff);
          mask:linear-gradient(transparent,transparent),linear-gradient(#fff,#fff);
  -webkit-mask-clip:padding-box,border-box;mask-clip:padding-box,border-box;
  -webkit-mask-composite:source-in;mask-composite:intersect}
[data-glow]::before{
  background-image:radial-gradient(calc(var(--spotlight-size)*.75) calc(var(--spotlight-size)*.75) at
    calc(var(--x,0)*1px) calc(var(--y,0)*1px),
    hsl(var(--hue) 90% 62% / var(--border-spot-opacity)),transparent 100%);
  filter:brightness(1.6)}
[data-glow]::after{
  background-image:radial-gradient(calc(var(--spotlight-size)*.5) calc(var(--spotlight-size)*.5) at
    calc(var(--x,0)*1px) calc(var(--y,0)*1px),
    hsl(0 0% 100% / var(--border-light-opacity)),transparent 100%)}

/* ---------- CTA conic (poda glow) ---------- */
.poda{position:relative;z-index:0;display:flex;align-items:center;justify-content:center;isolation:isolate}
.poda .glow{position:absolute;z-index:0;overflow:hidden;height:100%;width:100%;border-radius:14px}
.poda .glow::before{content:"";position:absolute;z-index:-2;width:600px;height:600px;
  background-repeat:no-repeat;top:50%;left:50%;transform:translate(-50%,-50%) rotate(60deg);
  transition:all 2s}
.poda .g-outer{max-height:70px;max-width:320px;filter:blur(3px)}
.poda .g-outer::before{width:900px;height:900px;
  background-image:conic-gradient(#000,#5282e8 5%,#000 38%,#000 50%,#22d3ee 60%,#000 87%)}
.poda .g-mid{max-height:66px;max-width:318px;filter:blur(3px)}
.poda .g-mid::before{transform:translate(-50%,-50%) rotate(82deg);
  background-image:conic-gradient(rgba(0,0,0,0),#0e7490,rgba(0,0,0,0) 10%,rgba(0,0,0,0) 50%,#1d4ed8,rgba(0,0,0,0) 60%)}
.poda .g-bright{max-height:63px;max-width:312px;border-radius:12px;filter:blur(2px)}
.poda .g-bright::before{transform:translate(-50%,-50%) rotate(83deg);filter:brightness(1.4);
  background-image:conic-gradient(rgba(0,0,0,0) 0%,#8af2ee,rgba(0,0,0,0) 8%,rgba(0,0,0,0) 50%,#5eeaff,rgba(0,0,0,0) 58%)}
.poda .g-thin{max-height:59px;max-width:308px;filter:blur(.5px)}
.poda .g-thin::before{transform:translate(-50%,-50%) rotate(70deg);filter:brightness(1.3);
  background-image:conic-gradient(#1c191c,#5282e8 5%,#1c191c 14%,#1c191c 50%,#22d3ee 60%,#1c191c 64%)}
.poda:hover .glow::before,.poda:focus-within .glow::before,.btn-poda:focus-visible .glow::before{transform:translate(-50%,-50%) rotate(-110deg)}
.poda:focus-within .glow::before{transform:translate(-50%,-50%) rotate(430deg);transition-duration:4s}

/* ---------- CTA conic (hero — inspiré search-filter + glow poda) ---------- */
.hero-cta-row{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:.2rem}
.hero-cta-note{margin:clamp(1rem,2.5vw,1.4rem) auto 0;font-size:.76rem;color:var(--faint);letter-spacing:.02em;text-align:center;max-width:36ch;line-height:1.5}
.btn-poda{
  position:relative;z-index:0;display:inline-flex;align-items:center;justify-content:center;
  text-decoration:none;border-radius:12px;-webkit-tap-highlight-color:transparent;
  isolation:isolate;overflow:visible;
  transition:transform .35s cubic-bezier(.22,1,.36,1)
}
button.btn-poda{
  padding:0;margin:0;border:none;background:transparent;background-color:transparent;color:inherit;
  appearance:none;-webkit-appearance:none;cursor:pointer;font:inherit;line-height:normal;
  box-shadow:none;overflow:visible;min-width:0;min-height:0
}
.cnt-form-submit-row button.btn-poda,
.cnt-rgpd-bar button.btn-poda{
  display:inline-flex;align-items:stretch;justify-content:center;width:auto
}
.btn-poda:hover{transform:translateY(-2px)}
.btn-poda:active{transform:translateY(0)}
.btn-poda .glow{z-index:0;border-radius:12px}
.btn-poda .g-outer{max-height:58px;max-width:100%;width:calc(100% + 6px);filter:blur(3px)}
.btn-poda .g-mid{max-height:55px;max-width:100%;width:calc(100% + 4px);filter:blur(3px)}
.btn-poda .g-bright{max-height:52px;max-width:100%;width:calc(100% + 2px);border-radius:12px;filter:blur(2px)}
.btn-poda .g-thin{max-height:50px;max-width:100%;width:100%;filter:blur(.5px)}
.btn-poda-face{
  position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:.45em;
  min-height:50px;padding:0 1.85rem;border-radius:12px;
  font-family:var(--display);font-weight:600;font-size:1rem;letter-spacing:.01em;
  color:#fff;white-space:nowrap;
  background:linear-gradient(180deg,#161329 0%,#000 52%,#1d1b4b 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 18px rgba(0,0,0,.28),0 4px 12px rgba(0,0,0,.2);
  transition:border-color .35s,box-shadow .35s,color .3s
}
.btn-poda:hover .btn-poda-face,.btn-poda:focus-visible .btn-poda-face{
  border-color:rgba(34,211,238,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 20px rgba(34,211,238,.2),0 0 28px rgba(61,139,240,.1),0 4px 14px rgba(0,0,0,.22)
}
.btn-poda--primary .btn-poda-face{
  background:linear-gradient(180deg,#0f1f28 0%,#050a0e 48%,#0c2430 100%);
  border-color:rgba(34,211,238,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 16px rgba(34,211,238,.14),0 0 22px rgba(61,139,240,.08),0 3px 10px rgba(0,0,0,.22)
}
.btn-poda--primary:hover .btn-poda-face,.btn-poda--primary:focus-visible .btn-poda-face{
  border-color:rgba(34,211,238,.52);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 22px rgba(34,211,238,.22),0 0 32px rgba(61,139,240,.12),0 4px 14px rgba(0,0,0,.22)
}
.btn-poda--ghost .btn-poda-face{color:#e8e8f4;background:linear-gradient(180deg,#12101f 0%,#030205 52%,#15122c 100%)}
.btn-poda-arrow{display:inline-block;opacity:.85}
.btn-poda:focus-visible{outline:2px solid rgba(34,211,238,.4);outline-offset:4px}

/* Section CTAs (sec-foot / sc-cta / orbit) — halo dark plus marqué (proche light) */
.sec-foot .btn-poda .btn-poda-face,
.sec-foot--lg .btn-poda .btn-poda-face,
.sc-cta .btn-poda .btn-poda-face,
.orbit-cta .btn-poda .btn-poda-face{
  border-color:rgba(34,211,238,.32);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 20px rgba(34,211,238,.32),0 0 36px rgba(61,139,240,.18),0 0 48px rgba(34,211,238,.1),0 3px 12px rgba(0,0,0,.28)
}
.sec-foot .btn-poda:hover .btn-poda-face,
.sec-foot .btn-poda:focus-visible .btn-poda-face,
.sec-foot--lg .btn-poda:hover .btn-poda-face,
.sec-foot--lg .btn-poda:focus-visible .btn-poda-face,
.sc-cta .btn-poda:hover .btn-poda-face,
.sc-cta .btn-poda:focus-visible .btn-poda-face,
.orbit-cta .btn-poda:hover .btn-poda-face,
.orbit-cta .btn-poda:focus-visible .btn-poda-face{
  border-color:rgba(34,211,238,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 26px rgba(34,211,238,.42),0 0 44px rgba(61,139,240,.24),0 0 56px rgba(94,234,255,.14),0 4px 14px rgba(0,0,0,.26)
}
.sec-foot .btn-poda .g-outer,
.sec-foot--lg .btn-poda .g-outer,
.sc-cta .btn-poda .g-outer,
.orbit-cta .btn-poda .g-outer{filter:blur(3px) brightness(1.28) saturate(1.2)}
.sec-foot .btn-poda .g-mid,
.sec-foot--lg .btn-poda .g-mid,
.sc-cta .btn-poda .g-mid,
.orbit-cta .btn-poda .g-mid{filter:blur(2.5px) brightness(1.22) saturate(1.15)}
.sec-foot .btn-poda .g-bright,
.sec-foot--lg .btn-poda .g-bright,
.sc-cta .btn-poda .g-bright,
.orbit-cta .btn-poda .g-bright{filter:blur(1.5px) brightness(1.35) saturate(1.2)}
.sec-foot .btn-poda .g-thin,
.sec-foot--lg .btn-poda .g-thin,
.sc-cta .btn-poda .g-thin,
.orbit-cta .btn-poda .g-thin{filter:blur(.45px) brightness(1.25) saturate(1.15)}
.sec-foot .btn-poda .g-outer::before,
.sec-foot--lg .btn-poda .g-outer::before,
.sc-cta .btn-poda .g-outer::before,
.orbit-cta .btn-poda .g-outer::before{
  background-image:conic-gradient(#000,#5282e8 4%,#5eeaff 8%,#000 36%,#000 48%,#22d3ee 58%,#8af2ee 64%,#000 86%)
}
.sec-foot .btn-poda .g-bright::before,
.sec-foot--lg .btn-poda .g-bright::before,
.sc-cta .btn-poda .g-bright::before,
.orbit-cta .btn-poda .g-bright::before{
  background-image:conic-gradient(rgba(0,0,0,0) 0%,#8af2ee,rgba(0,0,0,0) 7%,rgba(0,0,0,0) 48%,#5eeaff,rgba(0,0,0,0) 56%);
  filter:brightness(1.5)
}
@media(max-width:520px){
  .btn-poda-face{font-size:.92rem;padding:0 1.35rem;min-height:48px}
}
@media(prefers-reduced-motion:reduce){
  .btn-poda{transition:none}
  .btn-poda:hover .glow::before,.btn-poda:focus-visible .glow::before{transition:none!important}
}

/* ---------- Navigation — Aurora Glide (plein en permanence) ---------- */
.nav{
  position:fixed;inset:0 0 auto 0;z-index:600;overflow:visible;
  /* Modèle pages internes : hauteur = padding .82rem + contenu (pas le bandeau critique accueil) */
  min-height:var(--nav-h);box-sizing:border-box;
  /* Opaque + sans blur : le canvas nebula ne peut plus faire scintiller le bord haut */
  background:#05081c;
  border-bottom:1px solid rgba(34,211,238,.12);
  box-shadow:0 12px 40px rgba(0,0,0,.38);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  transition:background .45s cubic-bezier(.22,1,.36,1),border-color .45s,box-shadow .45s
}
/* Pas de ::before / glow 1px cyan : provoquait une bande clignotante en haut de nav */
.nav::before{content:none;display:none}
.nav.is-scrolled{
  background:#05081c;
  border-bottom-color:rgba(34,211,238,.14);
  box-shadow:0 14px 44px rgba(0,0,0,.42)
}
.brand-name{text-shadow:0 1px 10px rgba(0,0,0,.55)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;overflow:visible;
  width:100%;max-width:var(--maxw);margin-inline:auto;
  padding:.82rem clamp(20px,5vw,40px);box-sizing:border-box}
.brand{display:flex;align-items:center;gap:.7rem}
.brand-mark{width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;
  /* Halo centré — même intensité desktop / mobile */
  filter:drop-shadow(0 0 7px rgba(34,211,238,.48)) drop-shadow(0 0 20px rgba(34,211,238,.32))}
.brand-mark svg{display:block}
.brand-name{font-family:var(--display);font-weight:300;letter-spacing:.06em;font-size:1.05rem;white-space:nowrap;
  display:inline-flex;align-items:baseline;gap:0;overflow:visible}
.brand-name b{font-weight:600;margin-left:.28em}
.nav-links{
  display:flex;align-items:center;gap:.1rem;list-style:none;margin:0;padding:.22rem .35rem;overflow:visible;
  position:relative;border-radius:14px;
  background:rgba(5,8,28,.45);
  border:1px solid rgba(255,255,255,.04);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 4px 24px rgba(0,0,0,.18);
  backdrop-filter:blur(14px) saturate(1.15);
  -webkit-backdrop-filter:blur(14px) saturate(1.15)
}
.nav-glide{
  position:absolute;bottom:.28rem;height:2px;border-radius:999px;pointer-events:none;z-index:0;
  background:linear-gradient(90deg,var(--cyan-light),var(--cyan),var(--blue));
  box-shadow:0 0 14px rgba(34,211,238,.55),0 0 28px rgba(61,139,240,.22);
  transition:left .42s cubic-bezier(.22,1,.36,1),width .42s cubic-bezier(.22,1,.36,1),opacity .3s;
  opacity:0
}
.nav-links:not(.is-ready) .nav-glide{transition:none}
.nav-links.is-ready.has-glide .nav-glide{opacity:1}
.nav-links li{position:relative;z-index:1}
.nav-links a{
  display:inline-flex;align-items:center;gap:.35em;padding:.55rem .88rem;border-radius:10px;
  /* Propriétés explicites (pas de shorthand) : écrase le critical accueil
     font:500 .82rem/1 system-ui qui laissait line-height:1 + system-ui */
  font-family:var(--body);font-size:.86rem;font-weight:500;line-height:1.25;
  color:var(--muted);border:1px solid transparent;position:relative;
  background:transparent;overflow:visible;white-space:nowrap;
  transition:color .32s cubic-bezier(.22,1,.36,1),text-shadow .32s
}
.nav-links a::before{display:none}
@media(hover:hover){
  .nav-links a:hover{
    color:#fff;text-shadow:0 0 20px rgba(34,211,238,.25);
    border-color:transparent;background:transparent;box-shadow:none
  }
}
.nav-links a.active{
  color:#fff;
  background:transparent;border-color:transparent;
  box-shadow:none;text-shadow:0 0 18px rgba(34,211,238,.2)
}
.nav-links a.active::after{display:none}
.nav-links a:focus-visible{
  outline:2px solid rgba(34,211,238,.45);outline-offset:2px
}
.nav-links a:active,.nav-cta .btn-logo:active{transform:none}
/* État page courante : pas de lift (reste aligné avec l'autre CTA + toggle) */
.nav-cta .btn-logo.active,
.nav-cta .btn-logo.active:hover,
.nav-cta .btn-logo.active:focus-visible,
.drawer-cta .btn-logo.active,
.drawer-cta .btn-logo.active:hover,
.drawer-cta .btn-logo.active:focus-visible{transform:none}
.nav-cta{display:flex;align-items:center;gap:.45rem;overflow:visible}
/* Slot fixe 2.3rem avant burger — le toggle y est monté pendant le parse */
.nav-cta{padding-inline-end:0}
.nav-cta .nav-burger{order:3}
.nav-cta .theme-toggle.btn-desktop{order:2;flex:0 0 2.3rem}
.nav-cta .btn-logo{order:1}
.nav-cta:not(:has(.theme-toggle.btn-desktop))::after{
  content:"";order:2;flex:0 0 2.3rem;width:2.3rem;height:2.3rem;pointer-events:none
}
.nav-cta .btn{backdrop-filter:none;-webkit-backdrop-filter:none;isolation:isolate}
/* Nav CTA — compacts, dégradés aurora */
.nav-cta .btn-logo{
  white-space:nowrap;min-height:2.3rem;padding:.48em .95em .48em .82em;
  font-size:.67rem;letter-spacing:.075em;border-radius:8px!important;
  box-shadow:none;text-shadow:none
}
.nav-cta .btn-logo--cyan,
.drawer-cta .btn-logo--cyan{
  border:1px solid transparent;
  background:
    linear-gradient(rgba(5,8,28,.78),rgba(5,8,28,.78)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  box-shadow:0 4px 16px -6px rgba(34,211,238,.28),0 0 10px rgba(61,139,240,.08)
}
.nav-cta .btn-logo--violet,
.drawer-cta .btn-logo--violet{
  border:1px solid transparent;
  background:
    linear-gradient(rgba(5,8,28,.78),rgba(5,8,28,.78)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#7dd3fc 35%,#3d8bf0 70%,#5a6bc4 100%) border-box;
  box-shadow:0 4px 16px -6px rgba(82,130,232,.32),0 0 10px rgba(61,139,240,.12)
}
.nav-cta .btn-logo--cyan .btn-logo-label,
.drawer-cta .btn-logo--cyan .btn-logo-label{
  background:linear-gradient(118deg,#8af2ee 0%,#22d3ee 42%,#2563eb 75%,#1e3a6e 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  padding-inline:.04em;overflow:visible
}
@keyframes echangeons-blink{0%,100%{opacity:1}50%{opacity:.68}}
.nav-cta .btn-logo--cyan .btn-logo-label,
.drawer-cta .btn-logo--cyan .btn-logo-label,
.nav-cta .btn-logo--violet .btn-logo-label,
.drawer-cta .btn-logo--violet .btn-logo-label{
  animation:echangeons-blink 3.6s ease-in-out infinite
}
@media(prefers-reduced-motion:reduce){
  .nav-cta .btn-logo--cyan .btn-logo-label,
  .drawer-cta .btn-logo--cyan .btn-logo-label,
  .nav-cta .btn-logo--violet .btn-logo-label,
  .drawer-cta .btn-logo--violet .btn-logo-label{animation:none}
}
.nav-cta .btn-logo--violet .btn-logo-label,
.drawer-cta .btn-logo--violet .btn-logo-label{
  background:linear-gradient(118deg,#8ec5ff 0%,#3d8bf0 45%,#2563eb 78%,#1e3a6e 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  padding-inline:.04em;overflow:visible
}
.nav-cta .btn-logo--cyan::before,
.drawer-cta .btn-logo--cyan::before{background:linear-gradient(118deg,#8af2ee 0%,#22d3ee 52%,#5282e8 100%)}
.nav-cta .btn-logo--violet::before,
.drawer-cta .btn-logo--violet::before{background:linear-gradient(118deg,#8ec5ff 0%,#3d8bf0 52%,#3d8bf0 100%)}
/* Drawer = même DA nav : barre 3px idle → fill 100% en .active (mobile inclus) */
.drawer-cta .btn-logo::before{
  width:3px;opacity:1;left:0;top:0;bottom:0
}
.nav-cta .btn-logo--cyan.active .btn-logo-label,
.nav-cta .btn-logo--violet.active .btn-logo-label,
.drawer-cta .btn-logo--cyan.active .btn-logo-label,
.drawer-cta .btn-logo--violet.active .btn-logo-label{
  background:none;-webkit-background-clip:unset;background-clip:unset;
  -webkit-text-fill-color:#fff;color:#fff;animation:none
}
/* Active / fill — hors @media(hover) pour que mobile reçoive le plein dégradé */
.nav-cta .btn-logo--cyan.active,
.drawer-cta .btn-logo--cyan.active{
  border-color:transparent;
  background:linear-gradient(rgba(5,8,28,.15),rgba(5,8,28,.15)) padding-box,
    linear-gradient(118deg,#8af2ee,#22d3ee,#5282e8) border-box;
  box-shadow:0 6px 22px -5px rgba(34,211,238,.45),0 0 16px rgba(61,139,240,.12);
  color:#fff
}
.nav-cta .btn-logo--violet.active,
.drawer-cta .btn-logo--violet.active{
  border-color:transparent;
  background:linear-gradient(rgba(5,8,28,.15),rgba(5,8,28,.15)) padding-box,
    linear-gradient(118deg,#8ec5ff 0%,#3d8bf0 52%,#3d8bf0 100%) border-box;
  box-shadow:0 6px 22px -5px rgba(82,130,232,.45),0 0 14px rgba(61,139,240,.18);
  color:#fff
}
.nav-cta .btn-logo.active::before,
.drawer-cta .btn-logo.active::before{
  width:100%!important;opacity:1!important;transition:none
}
@media(hover:hover){
  .nav-cta .btn-logo--cyan:hover,
  .drawer-cta .btn-logo--cyan:hover{
    border-color:transparent;
    background:linear-gradient(rgba(5,8,28,.15),rgba(5,8,28,.15)) padding-box,
      linear-gradient(118deg,#8af2ee,#22d3ee,#5282e8) border-box;
    box-shadow:0 6px 22px -5px rgba(34,211,238,.45),0 0 16px rgba(61,139,240,.12)
  }
  .nav-cta .btn-logo--violet:hover,
  .drawer-cta .btn-logo--violet:hover{
    border-color:transparent;
    background:linear-gradient(rgba(5,8,28,.15),rgba(5,8,28,.15)) padding-box,
      linear-gradient(118deg,#8ec5ff 0%,#3d8bf0 52%,#3d8bf0 100%) border-box;
    box-shadow:0 6px 22px -5px rgba(82,130,232,.45),0 0 14px rgba(61,139,240,.18)
  }
  .nav-cta .btn-logo:hover .btn-logo-label,
  .drawer-cta .btn-logo:hover .btn-logo-label{
    background:none;-webkit-background-clip:unset;background-clip:unset;
    -webkit-text-fill-color:#fff;color:#fff;
    transition:color .5s ease .12s,-webkit-text-fill-color .5s ease .12s
  }
  .nav-cta .btn-logo:hover::before,
  .drawer-cta .btn-logo:hover::before{width:100%;opacity:1}
}
/* Focus clavier uniquement — sans annuler le hover */
.nav-cta .btn-logo:focus-visible,
.drawer-cta .btn-logo:focus-visible{
  outline:2px solid rgba(34,211,238,.4);outline-offset:2px
}
.nav-burger{
  display:none;width:2.3rem;height:2.3rem;border-radius:8px;padding:0;
  border:1px solid transparent;cursor:pointer;flex-shrink:0;
  flex-direction:column;align-items:center;justify-content:center;gap:0;
  backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);
  background:
    linear-gradient(rgba(5,8,28,.92),rgba(5,8,28,.92)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  color:#fff;
  box-shadow:0 2px 10px -4px rgba(34,211,238,.22);
  transition:color .32s,box-shadow .32s,background .32s,transform .28s
}
.nav-burger:hover,.nav-burger:focus-visible{
  color:#fff;
  transform:translateY(-1px);
  background:
    linear-gradient(rgba(5,8,28,.94),rgba(5,8,28,.94)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  box-shadow:0 0 0 1px rgba(34,211,238,.3),0 4px 14px -6px rgba(34,211,238,.3)
}
.nav-burger:active{transform:scale(.96)}
.nav-burger span{
  display:block;width:15px;height:0;margin:0;padding:0;
  border:0;border-top:1px solid #fff;border-radius:0;
  background:none;flex:none;box-sizing:border-box;
  transition:transform .3s,opacity .3s,border-color .32s
}
.nav-burger span + span{margin-top:4px}


/* mobile drawer — aurora fixe + nav scrollable (CTA toujours visibles) */
.drawer{
  position:fixed;top:0;left:0;right:0;z-index:700;background:#05060d;
  width:100%;
  height:var(--vh-lock,100%);
  max-height:var(--vh-lock,100%);
  display:flex;flex-direction:column;
  transform:translateX(100%);
  transition:transform .3s cubic-bezier(.22,1,.36,1),visibility .3s;
  visibility:hidden;overflow:hidden;
  touch-action:manipulation;
  overscroll-behavior:none;
  box-sizing:border-box
}
.drawer.open{
  transform:translateX(0);visibility:visible;
  overflow:hidden
}
.drawer-aurora-bg{
  position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.45
}
.drawer.drawer--css-aurora .drawer-aurora-bg,
.drawer.drawer--css-aurora canvas.drawer-aurora-bg{
  display:none!important
}
/* Fond mobile hamburger — rubans aurora DA Alma (léger, graphique) */
.drawer.drawer--css-aurora{
  background:#05060d
}
.drawer.drawer--css-aurora::before{
  content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url('../img/drawer-aurora-dark.webp?v=4.20.69') center center / cover no-repeat;
  opacity:.78;
  filter:none;
  mix-blend-mode:normal
}
.drawer.drawer--css-aurora::after{
  content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(5,6,13,.45) 0%,transparent 22%,transparent 78%,rgba(5,6,13,.55) 100%),
    radial-gradient(ellipse 80% 50% at 50% 40%, transparent 40%, rgba(5,6,13,.25) 100%);
  opacity:1
}
[data-theme="light"] .drawer.drawer--css-aurora{
  background:#f4f8fb
}
[data-theme="light"] .drawer.drawer--css-aurora::before{
  background:url('../img/drawer-aurora-light.webp?v=4.20.69') center center / cover no-repeat;
  opacity:.88;
  filter:none;
  mix-blend-mode:normal
}
[data-theme="light"] .drawer.drawer--css-aurora::after{
  background:
    linear-gradient(180deg,rgba(255,255,255,.5) 0%,transparent 18%,transparent 82%,rgba(244,248,251,.55) 100%);
  opacity:1
}
.drawer.drawer--css-aurora .drawer-head,
.drawer.drawer--css-aurora .drawer-cta{
  background:rgba(5,6,13,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)
}
[data-theme="light"] .drawer.drawer--css-aurora .drawer-head,
[data-theme="light"] .drawer.drawer--css-aurora .drawer-cta{
  background:rgba(255,255,255,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)
}
.drawer-head{
  display:flex;align-items:center;justify-content:flex-start;flex-shrink:0;
  height:var(--nav-h);min-height:var(--nav-h);box-sizing:border-box;
  padding:0 clamp(20px,5vw,40px);
  border-bottom:1px solid rgba(255,255,255,.06);position:relative;z-index:3;gap:.7rem;
  background:rgba(5,6,13,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.drawer-head .theme-toggle--drawer{display:none}
.drawer-brand{
  display:flex;align-items:center;gap:.7rem;margin-right:auto;
  font-family:var(--display);font-weight:300;letter-spacing:.06em;font-size:1.05rem;
  color:var(--muted);white-space:nowrap;line-height:1
}
.drawer-brand b{color:#fff;font-weight:600;margin-left:.28em}
.drawer-brand-text{display:inline-flex;align-items:baseline;gap:0}
.drawer-brand-mark{
  width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;line-height:0;
  margin-right:0
}
.drawer-brand-mark svg{display:block;width:38px;height:38px}
.drawer-close{
  display:inline-grid;place-items:center;width:2.3rem;height:2.3rem;padding:0;
  border-radius:8px;border:1px solid transparent;flex-shrink:0;cursor:pointer;
  backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);
  background:
    linear-gradient(rgba(5,8,28,.92),rgba(5,8,28,.92)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  color:#fff;font-size:1.05rem;line-height:1;
  box-shadow:0 2px 10px -4px rgba(34,211,238,.22);
  transition:color .32s,box-shadow .32s,background .32s,transform .28s
}
.drawer-close:hover,.drawer-close:focus-visible{
  color:#fff;
  transform:translateY(-1px);
  background:
    linear-gradient(rgba(5,8,28,.94),rgba(5,8,28,.94)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  box-shadow:0 0 0 1px rgba(34,211,238,.3),0 4px 14px -6px rgba(34,211,238,.3)
}
.drawer-close:active{transform:scale(.96)}
.drawer-nav{
  flex:1 1 auto;
  min-height:0;
  overflow-x:hidden;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  touch-action:pan-y;
  padding:1.35rem clamp(20px,5vw,40px) .2rem;
  display:flex;flex-direction:column;
  position:relative;z-index:1
}
.drawer-nav a{
  font-family:var(--display);font-weight:300;font-size:1.22rem;
  padding:.8rem 0 .8rem .75rem;
  border-bottom:1px solid rgba(255,255,255,.05);color:var(--muted);
  border-left:2px solid transparent;
  transition:color .2s,border-color .2s,padding-left .2s,background .25s
}
.drawer-nav a:hover{
  color:#fff;
  border-left-color:rgba(34,211,238,.55);
  padding-left:1rem;
  background:linear-gradient(90deg,rgba(34,211,238,.1) 0%,rgba(61,139,240,.04) 42%,transparent 88%)
}
.drawer-nav a.active{
  color:#fff;
  font-weight:500;
  border-left-color:var(--cyan);
  padding-left:1rem;
  background:linear-gradient(90deg,rgba(34,211,238,.16) 0%,rgba(34,211,238,.08) 42%,rgba(61,139,240,.04) 62%,transparent 100%)
}
.drawer-nav a.active:hover{
  border-left-color:#8af2ee;
  background:linear-gradient(90deg,rgba(34,211,238,.2) 0%,rgba(34,211,238,.1) 42%,rgba(61,139,240,.06) 62%,transparent 100%)
}
.drawer-cta{
  flex:0 0 auto;display:flex;flex-direction:column;gap:.55rem;
  padding:.85rem clamp(20px,5vw,40px) calc(env(safe-area-inset-bottom,0px) + .85rem);
  margin-top:0;
  position:relative;z-index:2;
  border-top:1px solid rgba(255,255,255,.06);
  background:rgba(5,6,13,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.drawer-cta .btn-logo{
  min-height:2.3rem;padding:.48em .95em;font-size:.67rem;letter-spacing:.075em;border-radius:8px!important;
  box-shadow:none;text-shadow:none;justify-content:center;width:100%
}
[data-theme="light"] .drawer-head,
[data-theme="light"] .drawer-cta{
  background:linear-gradient(165deg,#ffffff 0%,#f3fafb 100%)
}
[data-theme="light"] .drawer-cta{
  border-top-color:rgba(14,90,114,.12)
}
html.drawer-open,
body.drawer-open{
  overflow:hidden!important;
  overscroll-behavior:none
}
body.drawer-open{
  position:fixed;
  width:100%;
  left:0;right:0
}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:var(--vh-lock,100svh);display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:calc(var(--nav-h) + clamp(32px,6svh,64px));padding-bottom:clamp(32px,5svh,60px);overflow:hidden}
.page-index .hero{padding-top:calc(var(--nav-h) + clamp(16px,3.2svh,32px));padding-bottom:clamp(16px,2.8svh,36px)}
/* Aligné 4.14 : canvas derrière le contenu (z-index:0), wrap au-dessus */
#nebula-canvas{
  position:absolute;inset:0;width:100%;height:100%;
  z-index:0;pointer-events:none;display:block
}
.page-index .hero .display{text-shadow:0 2px 28px rgba(5,8,28,.88),0 0 48px rgba(5,8,28,.55)}
.page-index .hero .lead,.page-index .hero .pill,.page-index .hero .prf-text,.page-index .hero .btn,.page-index .hero .btn-poda-face{text-shadow:0 1px 16px rgba(5,8,28,.75)}
.page-index .hero h1{margin:0}
.page-index .hero h1 .display{font-size:var(--hero-h1);line-height:1.12}
.page-index .hero h1 .display:first-child{margin:clamp(1.45rem,2.8vw,1.75rem) 0 0}
.page-index .hero h1 .display:nth-child(2){margin:.06em 0 0}
.page-index .hero .display.hero-title-main{
  font-size:clamp(1.5rem,3.1vw,2.3rem);font-weight:200;letter-spacing:-.015em;line-height:1.12;
  margin:clamp(.65rem,1.2vw,.9rem) 0 0;color:rgba(255,255,255,.9)
}
/* Morph centré entre H1 et le texte suivant (écarts haut/bas égaux) */
.page-index .hero .word-morph-wrap{margin:clamp(1.15rem,2.2vw,1.5rem) 0}
.page-index .hero .word-morph-wrap::before{display:none}
.page-index .hero .word-morph{
  margin:0;font-size:clamp(1.15rem,2.35vw,1.75rem);font-weight:400;letter-spacing:-.015em;line-height:1.12;
  color:rgba(255,255,255,.9);
  text-shadow:none;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility
}
.page-index .hero .word-morph .wm-line{
  font-family:var(--display);font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;
  color:inherit;text-shadow:inherit
}
.page-index .hero .hero-proof{margin-top:0!important}
.page-index .hero .lead{margin-top:clamp(1.05rem,1.9vw,1.25rem)}
.page-index .hero .hero-cta-row{margin-top:clamp(1.15rem,2.4vw,1.5rem)!important}
.orbit-cta .btn-poda-face{text-shadow:0 1px 12px rgba(5,8,28,.65)}
.hero .hero-cta-row{margin-top:clamp(1.4rem,3vw,1.85rem)}
.orbit-cta.hero-cta-row{margin-top:0}
.agence-hero-bg{position:absolute;inset:0;background:url('../img/creation-site-internet-agence-web-digitale.webp') center center/contain no-repeat;z-index:0;opacity:1}
.ptn-hero-bg{position:absolute;inset:0;background:url('../img/creation-site-internet-partenariat-agence-web.webp') center 40%/cover no-repeat;z-index:0;opacity:1}
.ptn-hero .ptn-hero-bg{background-size:cover;background-position:center 40%;opacity:1}
.page-partenariat .ptn-hero-bg,.page-partenariat .ptn-hero .ptn-hero-bg{inset:0;top:0;bottom:0;left:0;right:0;height:auto;background-size:cover;background-position:center 40%;opacity:1}
.page-partenariat .ptn-hero .agence-hero-overlay{inset:0;top:0;bottom:0;height:auto}
.cnt-hero-bg{position:absolute;inset:0;background:url('../img/contact-echange-digital-icones-communication.webp') center 52%/cover no-repeat;z-index:0;opacity:1}
.page-contact .cnt-hero{
  --cnt-hero-gap:clamp(48px,8svh,80px);
  min-height:var(--vh-lock,100svh);
  padding-block:calc(var(--nav-h) + var(--cnt-hero-gap)) var(--cnt-hero-gap);
  padding-inline:clamp(32px,6vw,52px);
}
.page-contact .cnt-hero > .wrap{padding-inline:clamp(32px,6vw,52px)}
.page-contact .cnt-hero .cnt-hero-bg{background-position:center 52%;background-size:cover;opacity:1}
.page-contact .cnt-hero .agence-hero-overlay{
  inset:0;z-index:1;
  background:linear-gradient(to bottom,rgba(5,8,28,.35) 0%,rgba(5,8,28,.1) 40%,rgba(5,8,28,.7) 85%,rgba(5,8,28,1) 100%),radial-gradient(ellipse at 50% 50%,rgba(61,139,240,.12) 0%,transparent 70%)
}
@media(prefers-reduced-motion:reduce){
  .drawer-nav a{transition:none!important}
}
.cnt-hero-head{max-width:820px;margin:0 auto;text-align:center;padding-inline:clamp(32px,6vw,52px)}
.cnt-hero-head .pill{margin-bottom:0}
.cnt-hero-head h1{margin:0}
.cnt-hero-head .display{font-size:var(--hero-h1);line-height:1.12;text-shadow:0 2px 28px rgba(5,8,28,.85),0 0 60px rgba(5,8,28,.6)}
.cnt-hero-head .display.d1{margin:2.85rem auto 0;max-width:22ch}
.cnt-hero-head .display.d2{margin:.06em auto 0;max-width:28ch;line-height:1.12}
.cnt-hero-lead{max-width:70ch;margin:2.1rem auto 0!important;line-height:1.55;text-align:center}
.page-contact .cnt-hero .hero-cta-row{margin-top:2.85rem}
.page-contact .cnt-hero .hero-cta-note{margin-top:1rem}
@media(max-width:768px){
  .page-contact .cnt-hero{--cnt-hero-gap:clamp(40px,7svh,64px);padding-inline:clamp(20px,5vw,32px)}
  .page-contact .cnt-hero > .wrap,.cnt-hero-head{padding-inline:clamp(20px,5vw,32px)}
  .cnt-hero-head .display.d1{margin-top:2.4rem;max-width:18ch}
  .cnt-hero-head .display.d2{max-width:24ch}
  .cnt-hero-lead{margin-top:1.75rem!important}
  .page-contact .cnt-hero .hero-cta-row{margin-top:2.4rem}
}
.tx-hero-bg{position:absolute;inset:0;background:url('../img/tarifs-site-internet-croissance-euros-graphique.webp') center 42%/cover no-repeat;z-index:0}
.page-tarifs .tx-hero{
  --tx-hero-gap:clamp(48px,8svh,80px);
  min-height:var(--vh-lock,100svh);
  padding-block:calc(var(--nav-h) + var(--tx-hero-gap)) var(--tx-hero-gap);
  padding-inline:clamp(32px,6vw,52px);
}
.page-tarifs .tx-hero > .wrap{padding-inline:clamp(32px,6vw,52px)}
.page-tarifs .tx-hero .tx-hero-bg{background-position:center 42%;background-size:cover;opacity:1}
.page-tarifs .tx-hero .agence-hero-overlay{
  inset:0;
  background:linear-gradient(to bottom,rgba(5,8,28,.35) 0%,rgba(5,8,28,.1) 40%,rgba(5,8,28,.7) 85%,rgba(5,8,28,1) 100%),radial-gradient(ellipse at 50% 50%,rgba(61,139,240,.12) 0%,transparent 70%)
}
.tx-hero-head{max-width:820px;margin:0 auto;text-align:center;padding-inline:clamp(32px,6vw,52px)}
.tx-hero-head .pill{margin-bottom:0}
.tx-hero-head h1{margin:0}
.tx-hero-head .display{font-size:var(--hero-h1);line-height:1.12;text-shadow:0 2px 28px rgba(5,8,28,.85),0 0 60px rgba(5,8,28,.6)}
.tx-hero-head .display.d1{margin:2.85rem auto 0;max-width:24ch}
.tx-hero-head .display.d2{margin:.06em auto 0;max-width:28ch;line-height:1.12}
.tx-hero-lead{max-width:70ch;margin:2.1rem auto 0!important;line-height:1.55;text-align:center}
@media(max-width:768px){
  .page-tarifs .tx-hero-lead{max-width:36ch}
}
.tx-hero-mention{max-width:54ch;margin:.75rem auto 0!important;font-size:.8rem;color:var(--faint);text-align:center;letter-spacing:.01em}
.tx-hero-badges{display:flex;gap:.55rem;justify-content:center;flex-wrap:wrap;margin-top:2.85rem}
.tx-hero-badges .alma-pill,
.tx-sticky-nav .alma-pill{text-decoration:none}
.tx-sticky-nav{
  position:fixed;top:var(--nav-h);left:0;right:0;z-index:90;
  display:flex;align-items:center;justify-content:center;gap:.4rem;
  padding-top:.85rem;padding-bottom:.85rem;padding-left:clamp(1rem,4vw,3rem);padding-right:clamp(1rem,4vw,3rem);
  background:rgba(5,8,28,.82);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(34,211,238,.14);
  transform:translateY(-14px);opacity:0;pointer-events:none;
  transition:transform .35s ease,opacity .35s ease
}
.tx-sticky-nav.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
.tx-nav-track{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem;width:100%;min-width:0}
.tx-nav-arrow{
  display:none;flex-shrink:0;width:26px;height:26px;border-radius:50%;padding:0;
  border:1px solid rgba(34,211,238,.28);background:rgba(5,8,28,.45);
  color:var(--cyan);cursor:pointer;align-items:center;justify-content:center;
  font-size:.9rem;line-height:1;
  backdrop-filter:blur(12px) saturate(1.15);
  -webkit-backdrop-filter:blur(12px) saturate(1.15);
  transition:border-color .2s,color .2s,background .2s
}
.tx-nav-arrow:hover{border-color:rgba(34,211,238,.6);color:#fff}
.tx-nav-arrow:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}
[data-theme="light"] .tx-nav-arrow{
  background:rgba(255,255,255,.42);border-color:rgba(2,132,199,.3);color:#0284c7;
  backdrop-filter:blur(14px) saturate(1.2);
  -webkit-backdrop-filter:blur(14px) saturate(1.2)
}
[data-theme="light"] .tx-nav-arrow:hover{border-color:rgba(2,132,199,.55);color:var(--accent-deep);background:rgba(255,255,255,.58)}
.page-tarifs #creation,
.page-tarifs #suivi,
.page-tarifs #options,
.page-tarifs #opt-audit-seo,
.page-tarifs #opt-audit-compliance,
.page-tarifs #packs,
.page-tarifs #comparatif,
.page-tarifs #services{
  scroll-margin-top:calc(var(--nav-h) + 64px)
}
.tx-compare-wrap{margin:1.15rem 0 0;font-size:1.05rem}
.tx-compare-link{
  color:var(--muted);text-decoration:underline;text-underline-offset:.22em;
  text-decoration-thickness:1px;text-decoration-color:rgba(34,211,238,.28);
  transition:color .25s ease,text-decoration-color .25s ease
}
.tx-compare-arrow{margin-left:.15em}
/* Flèche → : oscillation aller-retour au hover (liens, boutons, cards) */
@keyframes alma-arrow-nudge{
  0%,100%{transform:translateX(0)}
  50%{transform:translateX(.28em)}
}
@keyframes alma-arrow-nudge-left{
  0%,100%{transform:translateX(0)}
  50%{transform:translateX(-.28em)}
}
@keyframes alma-arrow-nudge-centered{
  0%,100%{transform:translate(0,-50%)}
  50%{transform:translate(.28em,-50%)}
}
.alma-arrow,
.alma-arrow--left,
.tx-compare-arrow,
.btn-poda-arrow{
  display:inline-block
}
@media(hover:hover){
  .tx-compare-link:hover{
    color:var(--cyan);
    text-decoration-color:rgba(34,211,238,.75)
  }
  .tx-compare-link:hover .tx-compare-arrow{color:var(--cyan)}
  a:hover .alma-arrow:not(.alma-arrow--left),
  a:hover .tx-compare-arrow,
  button:hover .alma-arrow:not(.alma-arrow--left),
  button:hover .btn-poda-arrow,
  .btn:hover .alma-arrow:not(.alma-arrow--left),
  .btn:hover .btn-poda-arrow,
  .btn-poda:hover .btn-poda-arrow,
  .btn-poda:focus-visible .btn-poda-arrow,
  .tx-compare-link:hover .tx-compare-arrow,
  .blog-card__link:hover .alma-arrow:not(.alma-arrow--left),
  [role="button"]:hover .alma-arrow:not(.alma-arrow--left){
    animation:alma-arrow-nudge .9s ease-in-out infinite
  }
  a:hover .alma-arrow--left,
  button:hover .alma-arrow--left,
  .btn:hover .alma-arrow--left{
    animation:alma-arrow-nudge-left .9s ease-in-out infinite
  }
  .sx-card:hover .sx-arrow{
    opacity:1;
    animation:alma-arrow-nudge-centered .9s ease-in-out infinite
  }
}
.tx-compare-link:focus-visible{
  outline:2px solid rgba(34,211,238,.45);outline-offset:3px;border-radius:2px
}
[data-theme="light"] .tx-compare-link{color:rgba(12,40,52,.72);text-decoration-color:rgba(14,90,114,.28)}
@media(hover:hover){
  [data-theme="light"] .tx-compare-link:hover{
    color:var(--accent-deep);
    text-decoration-color:rgba(2,132,199,.55)
  }
  [data-theme="light"] .tx-compare-link:hover .tx-compare-arrow{color:var(--accent-deep)}
}
@media(prefers-reduced-motion:reduce){
  a:hover .alma-arrow:not(.alma-arrow--left),
  a:hover .tx-compare-arrow,
  button:hover .alma-arrow:not(.alma-arrow--left),
  button:hover .btn-poda-arrow,
  .btn:hover .alma-arrow:not(.alma-arrow--left),
  .btn:hover .btn-poda-arrow,
  .btn-poda:hover .btn-poda-arrow,
  .btn-poda:focus-visible .btn-poda-arrow,
  .tx-compare-link:hover .tx-compare-arrow,
  .blog-card__link:hover .alma-arrow:not(.alma-arrow--left),
  [role="button"]:hover .alma-arrow:not(.alma-arrow--left),
  .sx-card:hover .sx-arrow{
    animation:none;
    transform:translateX(.28em)
  }
  a:hover .alma-arrow--left,
  button:hover .alma-arrow--left,
  .btn:hover .alma-arrow--left{
    animation:none;
    transform:translateX(-.28em)
  }
  .sx-card:hover .sx-arrow{transform:translate(.28em,-50%)}
}
@media(max-width:640px){
  .tx-sticky-nav{
    position:fixed;padding:.7rem 0;
    gap:0
  }
  .tx-nav-track{
    justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;
    width:100%;max-width:none!important;
    padding:.85rem 2.6rem;margin:0;
    position:relative;z-index:0
  }
  .tx-nav-track::-webkit-scrollbar{display:none}
  .tx-sticky-nav .alma-pill{white-space:nowrap;flex:0 0 auto}
  .tx-nav-arrow{
    display:flex;position:absolute;top:50%;transform:translateY(-50%);
    z-index:2;width:30px;height:30px;
    background:rgba(5,8,28,.48);
    backdrop-filter:blur(14px) saturate(1.2);
    -webkit-backdrop-filter:blur(14px) saturate(1.2);
    box-shadow:0 0 0 1px rgba(34,211,238,.18),0 4px 14px rgba(5,8,28,.28)
  }
  .tx-nav-arrow--prev{left:.35rem}
  .tx-nav-arrow--next{right:.35rem}
  [data-theme="light"] .tx-nav-arrow{
    background:rgba(236,242,250,.5);
    backdrop-filter:blur(16px) saturate(1.25);
    -webkit-backdrop-filter:blur(16px) saturate(1.25);
    box-shadow:0 0 0 1px rgba(2,132,199,.22),0 4px 14px rgba(14,90,114,.1)
  }
}
/* Hero tags + nav tarifs — glass dark (uniquement thème sombre) */
html:not([data-theme="light"]) .hero .pill,
html:not([data-theme="light"]) .tx-hero-head .pill,
html:not([data-theme="light"]) .rlz-hero-head .pill,
html:not([data-theme="light"]) .cnt-hero-head .pill,
html:not([data-theme="light"]) .agence-hero .pill,
html:not([data-theme="light"]) .ptn-hero .pill,
html:not([data-theme="light"]) .sc-hero-head .pill,
html:not([data-theme="light"]) .tx-hero-badges .alma-pill,
html:not([data-theme="light"]) .tx-sticky-nav .alma-pill{
  border:1px solid rgba(34,211,238,.2);
  background:rgba(5,8,28,.52);
  color:rgba(226,228,245,.78);
  box-shadow:none;
  backdrop-filter:blur(8px)
}
@media(hover:hover){
  html:not([data-theme="light"]) .tx-hero-badges .alma-pill:hover,
  html:not([data-theme="light"]) .tx-sticky-nav .alma-pill:hover{
    border-color:rgba(34,211,238,.48);
    color:#fff;
    background:linear-gradient(118deg,rgba(10,14,32,.9) 0%,rgba(34,211,238,.12) 42%,rgba(61,139,240,.08) 100%);
    box-shadow:0 0 0 1px rgba(34,211,238,.14),0 5px 14px rgba(34,211,238,.12);
    transform:translateY(-1px)
  }
}
html:not([data-theme="light"]) .tx-sticky-nav .alma-pill.on,
html:not([data-theme="light"]) .tx-hero-badges .alma-pill.on{
  border-color:rgba(34,211,238,.65);
  color:#fff;
  font-weight:600;
  background:linear-gradient(118deg,rgba(10,14,32,.96) 0%,rgba(34,211,238,.22) 42%,rgba(61,139,240,.14) 100%);
  box-shadow:0 0 0 1px rgba(34,211,238,.28),0 6px 16px rgba(34,211,238,.2),inset 0 1px 0 rgba(255,255,255,.08)
}
.rlz-hero-bg{position:absolute;inset:0;background:url('../img/portfolio-sites-web-realisations-vitrine.webp') center bottom/cover no-repeat;z-index:0;opacity:1}
.page-realisations .rlz-hero{
  --rlz-hero-gap:clamp(48px,8svh,80px);
  min-height:var(--vh-lock,100svh);
  padding-block:calc(var(--nav-h) + var(--rlz-hero-gap)) var(--rlz-hero-gap);
  padding-inline:clamp(32px,6vw,52px);
}
.page-realisations .rlz-hero > .wrap{padding-inline:clamp(32px,6vw,52px)}
.page-realisations .rlz-hero .rlz-hero-bg{background-position:center bottom;background-size:cover;opacity:1}
.page-realisations .rlz-hero .agence-hero-overlay{
  inset:0;
  background:linear-gradient(to bottom,rgba(5,8,28,.35) 0%,rgba(5,8,28,.1) 40%,rgba(5,8,28,.7) 85%,rgba(5,8,28,1) 100%),radial-gradient(ellipse at 50% 50%,rgba(61,139,240,.12) 0%,transparent 70%)
}
.rlz-hero-head{max-width:820px;margin:0 auto;text-align:center;padding-inline:clamp(32px,6vw,52px)}
.rlz-hero-head .pill{margin-bottom:0}
.rlz-hero-head h1{margin:0}
.rlz-hero-head .display{font-size:var(--hero-h1);line-height:1.12;text-shadow:0 2px 28px rgba(5,8,28,.85),0 0 60px rgba(5,8,28,.6)}
.rlz-hero-head .display.d1{margin:2.85rem auto 0;max-width:24ch}
.rlz-hero-head .display.d2{margin:.06em auto 0;max-width:30ch;line-height:1.12}
.rlz-hero-lead{max-width:70ch;margin:2.1rem auto 0!important;line-height:1.55;text-align:center}

/* ── Secteurs — hero étiquettes métiers animées (v3.6) ── */
.page-secteurs .hero.sc-hero{
  --sc-hero-gap:clamp(48px,8svh,80px);
  flex-direction:column;justify-content:center;overflow:hidden;
  min-height:var(--vh-lock,100svh);
  padding-block:calc(var(--nav-h) + var(--sc-hero-gap)) var(--sc-hero-gap);
  padding-inline:clamp(32px,6vw,52px)
}
.page-secteurs .sc-hero > .wrap{
  position:relative;z-index:2;width:100%;padding-inline:clamp(32px,6vw,52px)
}
.page-secteurs .hero-jobs{
  position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden
}
.page-secteurs .hj-tag{
  position:absolute;
  padding:5px 13px;border-radius:5px;
  font-family:var(--display);
  font-size:clamp(.58rem,.8vw,.75rem);
  font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  white-space:nowrap;user-select:none;pointer-events:none
}
.page-secteurs .hj-tag.hj-cyan{
  background:rgba(34,211,238,.07);
  border:1px solid rgba(34,211,238,.38);
  color:#22d3ee;
  box-shadow:0 0 14px rgba(34,211,238,.1),inset 0 0 6px rgba(34,211,238,.05)
}
.page-secteurs .hj-tag.hj-violet{
  background:rgba(61,139,240,.07);
  border:1px solid rgba(61,139,240,.38);
  color:#7eb6ff;
  box-shadow:0 0 14px rgba(61,139,240,.1),inset 0 0 6px rgba(61,139,240,.05)
}
.page-secteurs .hj-tag.hj-rose{
  background:rgba(61,139,240,.07);
  border:1px solid rgba(61,139,240,.32);
  color:#7eb6ff;
  box-shadow:0 0 12px rgba(61,139,240,.08),inset 0 0 5px rgba(61,139,240,.04)
}
.page-secteurs .hj-inner{
  display:inline-block;
  opacity:0;transform:translateY(6px);
  transition:opacity .45s ease,transform .45s ease
}
.page-secteurs .hj-tag.hj-on .hj-inner{opacity:1;transform:translateY(0)}
.sc-hero-head{max-width:820px;margin:0 auto;text-align:center;padding-inline:clamp(32px,6vw,52px)}
.sc-hero-head .pill{margin-bottom:0;text-shadow:0 2px 18px rgba(5,8,28,.82)}
.sc-hero-head h1{margin:0}
.page-secteurs .sc-hero-head .display{
  font-size:var(--hero-h1);line-height:1.12;
  text-shadow:0 2px 28px rgba(5,8,28,.88),0 0 60px rgba(5,8,28,.6);
  width:fit-content;max-width:100%;margin-inline:auto;text-align:center
}
.page-secteurs .sc-hero-head .display.d1{
  margin:2.85rem auto 0
}
.page-secteurs .sc-hero-head .display.d2{
  margin:.06em auto 0;line-height:1.12
}
@media(min-width:769px){
  .page-secteurs .sc-hero-head .display.d1,
  .page-secteurs .sc-hero-head .display.d2{white-space:nowrap}
}
.sc-hero-lead{
  max-width:70ch;margin:2.1rem auto 0!important;line-height:1.55;text-align:center;
  text-shadow:0 2px 18px rgba(5,8,28,.82)
}
.page-secteurs .hero .hero-cta-row{
  position:relative;z-index:2;margin-top:2.85rem;isolation:isolate;
  display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center
}
@media(max-width:700px){
  .page-secteurs .hj-tag{font-size:.52rem;padding:4px 9px}
}
@media(prefers-reduced-motion:reduce){
  .page-secteurs .hj-inner{opacity:1!important;transform:none!important;transition:none}
}
/* Mobile / tablette : hero secteurs centré (plus de flex-start collé en haut) */
@media(max-width:768px){
  .page-secteurs .hero.sc-hero{
    --sc-hero-gap:28px;
    --sc-hero-gap-bottom:40px;
    justify-content:center;align-items:center;
    min-height:var(--vh-lock,100svh);
    padding-block:calc(var(--nav-h) + 28px) 40px;
    padding-inline:clamp(20px,5vw,32px);box-sizing:border-box
  }
  .page-secteurs .sc-hero > .wrap{
    width:100%;padding-inline:0;
    display:flex;flex-direction:column;align-items:center
  }
  .sc-hero-head{
    width:100%;max-width:36rem;margin:0 auto;text-align:center;
    padding-inline:0;display:flex;flex-direction:column;align-items:center
  }
  .page-secteurs .sc-hero-head .display{
    width:auto;max-width:100%;margin-inline:auto;text-align:center
  }
  .page-secteurs .sc-hero-head .display.d1{margin-top:1rem}
  .page-secteurs .sc-hero-head .display.d2{margin-top:.06em}
  .sc-hero-lead{
    margin-top:1.35rem!important;
    max-width:min(38ch,92vw);
    font-size:clamp(.9rem,3.1vw,.98rem);
    line-height:1.55;text-align:center
  }
  .page-secteurs .hero .hero-cta-row{margin-top:1.75rem;justify-content:center}
}
@media(max-width:520px){
  .page-secteurs .hero.sc-hero{
    --sc-hero-gap:24px;
    --sc-hero-gap-bottom:36px;
    padding-block:calc(var(--nav-h) + 24px) 36px
  }
}

/* ── Hero scènes — image de fond simple ── */
.hero-scene{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.hero-scene__base{
  position:absolute;left:50%;top:50%;width:100%;height:100%;z-index:0;
  background-repeat:no-repeat;
  background-image:var(--hs-img);background-position:var(--hs-pos);background-size:cover;
  transform:translate(-50%,-50%);transform-origin:center center;
  backface-visibility:hidden
}
.hero .wrap,.hero .agence-hero-content,.hero .ptn-hero-head,.hero .tx-hero-head,.hero .cnt-hero-head,.hero .rlz-hero-head,.hero .sc-hero-head{position:relative;z-index:2}
.hero .agence-hero-overlay{z-index:1}
.hero-scene--agence{--hs-img:url('../img/double-visage-numerique-agence-web-large.webp');--hs-pos:center 18%}
.hero-scene--tarifs{--hs-img:url('../img/tarifs-site-internet-croissance-euros-graphique.webp');--hs-pos:center 42%}
.hero-scene--rlz{--hs-img:url('../img/portfolio-sites-web-realisations-vitrine.webp');--hs-pos:center bottom}
.hero-scene--contact{--hs-img:url('../img/contact-echange-digital-icones-communication.webp');--hs-pos:center 52%}
.hero-scene--ptn{--hs-img:url('../img/creation-site-internet-partenariat-agence-web.webp');--hs-pos:center 40%}
.hero-scene--secteurs{--hs-img:url('../img/creation-site-internet-par-secteur-activite.webp');--hs-pos:center 48%}
.hero-scene--faq{--hs-img:url('../img/faq-questions-reponses-digital-hero.webp');--hs-pos:center 46%}
.hero-scene--blog{--hs-img:url('../img/blog-conseils-web-editorial-hero.webp');--hs-pos:center 44%}
.page-agence .hero-scene--agence{--hs-pos:center 18%}
.page-tarifs .hero-scene--tarifs{--hs-pos:center 42%}
.page-realisations .hero-scene--rlz{--hs-pos:center bottom}
.page-contact .hero-scene--contact{--hs-pos:center 52%}
.page-partenariat .hero-scene--ptn{--hs-pos:center 40%}
.page-secteurs .hero-scene--secteurs{--hs-pos:center 46%}
.page-faq .hero-scene--faq{--hs-pos:center 46%}
.page-blog .hero-scene--blog{--hs-pos:center 44%}
@media(min-width:1100px){.page-agence .hero-scene--agence{--hs-pos:center 15%}}
@media(max-width:720px){
  .page-agence .hero-scene--agence{--hs-pos:center 12%}
  .page-tarifs .hero-scene--tarifs{--hs-pos:center 38%}
  .page-partenariat .hero-scene--ptn{--hs-pos:center 42%}
  .page-secteurs .hero-scene--secteurs{--hs-pos:center 52%}
}

@media(max-width:768px){
  .page-tarifs .tx-hero,.page-realisations .rlz-hero{--tx-hero-gap:clamp(40px,7svh,64px);padding-inline:clamp(20px,5vw,32px)}
  .page-tarifs .tx-hero > .wrap,.tx-hero-head,.page-realisations .rlz-hero > .wrap,.rlz-hero-head{padding-inline:clamp(20px,5vw,32px)}
  .tx-hero-head .display.d1,.rlz-hero-head .display.d1{margin-top:2.4rem}
  .tx-hero-lead,.rlz-hero-lead{margin-top:1.75rem!important}
  .tx-hero-badges{margin-top:2.4rem!important}
}
@media(max-width:720px){
  .page-tarifs .tx-hero .tx-hero-bg{background-position:center 38%}
}
.page-agence .hero{
  --agence-hero-gap:clamp(40px,7svh,72px);
  min-height:var(--vh-lock,100svh);
  padding-block:calc(var(--nav-h) + var(--agence-hero-gap)) var(--agence-hero-gap);
}
.page-agence .agence-hero{
  flex-direction:column;
  justify-content:center;
  overflow:hidden;
  isolation:isolate;
  min-height:var(--vh-lock,100svh);
}
.page-partenariat .ptn-hero{
  --ptn-hero-gap:clamp(48px,8svh,80px);
  min-height:var(--vh-lock,100svh);
  padding-block:calc(var(--nav-h) + var(--ptn-hero-gap)) var(--ptn-hero-gap);
  padding-inline:clamp(32px,6vw,52px);
}
@media(max-width:768px){
  .page-partenariat .ptn-hero{
    --ptn-hero-gap:clamp(40px,7svh,64px);
    padding-inline:clamp(20px,5vw,32px)
  }
}
@media(max-width:520px){
  .page-partenariat .ptn-hero{--ptn-hero-gap:clamp(40px,7svh,64px)}
}
.page-partenariat .ptn-hero > .wrap{padding-inline:clamp(32px,6vw,52px)}
.page-services .hero,
.page-faq .hero,
.page-blog .hero{
  min-height:var(--vh-lock,100svh);
  padding-block:calc(var(--nav-h) + clamp(48px,8svh,80px)) clamp(48px,8svh,80px);
}
.page-faq .hero .tx-hero-head,
.page-blog .hero .tx-hero-head{
  max-width:min(1100px,96vw);margin:0 auto;text-align:center;
  padding-inline:clamp(20px,4vw,40px)
}
.page-faq .tx-hero-head h1,
.page-blog .tx-hero-head h1{
  display:block;width:100%;margin:0;text-align:center
}
/* 2 lignes nowrap, même logique que Secteurs / Partenaire */
.page-faq .tx-hero-head .display,
.page-blog .tx-hero-head .display{
  font-size:var(--hero-h1);
  line-height:1.12;
  display:block;
  width:fit-content;
  max-width:100%;
  margin-inline:auto;
  text-align:center;
  text-shadow:0 2px 28px rgba(5,8,28,.85),0 0 60px rgba(5,8,28,.6)
}
.page-faq .tx-hero-head .display.d1,
.page-blog .tx-hero-head .display.d1{margin:2.85rem auto 0}
.page-faq .tx-hero-head .display.d2,
.page-blog .tx-hero-head .display.d2{margin:.06em auto 0;line-height:1.12}
.page-faq .tx-hero-head .display .aurora-text,
.page-blog .tx-hero-head .display .aurora-text{display:inline}
.page-faq .tx-hero-lead,
.page-blog .tx-hero-lead{
  max-width:70ch;text-align:center;
  margin:2.1rem auto 0!important
}
@media(min-width:481px){
  .page-faq .tx-hero-head .display.d1,
  .page-faq .tx-hero-head .display.d2,
  .page-blog .tx-hero-head .display.d1,
  .page-blog .tx-hero-head .display.d2{white-space:nowrap}
}
@media(max-width:720px){
  .page-faq .tx-hero-head .display.d1,
  .page-blog .tx-hero-head .display.d1{margin-top:2.4rem}
  .page-faq .tx-hero-lead,
  .page-blog .tx-hero-lead{max-width:min(48ch,92vw);margin-top:1.75rem!important}
}
@media(max-width:480px){
  .page-faq .tx-hero-head .display.d1,
  .page-faq .tx-hero-head .display.d2,
  .page-blog .tx-hero-head .display.d1,
  .page-blog .tx-hero-head .display.d2{
    white-space:normal;width:auto;max-width:100%;margin-inline:auto
  }
}
.page-agence .agence-hero-bg{
  position:absolute;left:50%;top:50%;width:108%;height:108%;z-index:0;
  background:url('../img/double-visage-numerique-agence-web-large.webp') center 18%/cover no-repeat;
  transform:translate(-50%,-50%)
}
.hero-scene .hero-scene__base,
.hero-scene .agence-hero-bg,
.hero-scene .tx-hero-bg,
.hero-scene .rlz-hero-bg,
.hero-scene .cnt-hero-bg,
.hero-scene .ptn-hero-bg,
.hero-scene .faq-hero-bg,
.hero-scene .blog-hero-bg,
.page-agence .hero-scene .agence-hero-bg,
.page-tarifs .hero-scene .tx-hero-bg,
.page-realisations .hero-scene .rlz-hero-bg,
.page-contact .hero-scene .cnt-hero-bg,
.page-partenariat .hero-scene .ptn-hero-bg,
.page-faq .hero-scene .faq-hero-bg,
.page-blog .hero-scene .blog-hero-bg{
  inset:auto;left:50%;top:50%;width:108%;height:108%;
  background-image:var(--hs-img);
  background-position:var(--hs-pos);
  background-size:cover;
  background-repeat:no-repeat
}
/* FAQ / Blog : image <img> full-bleed (fiable iOS / prod) */
.page-faq .hero-scene .faq-hero-bg,
.page-blog .hero-scene .blog-hero-bg{
  inset:0!important;
  left:0!important;top:0!important;right:0!important;bottom:0!important;
  width:100%!important;height:100%!important;
  transform:none!important;
  background:none!important;
  background-image:none!important;
  opacity:1!important;
  filter:none!important;
  z-index:0;
  overflow:hidden
}
.page-faq .faq-hero-bg .hero-scene__img,
.page-blog .blog-hero-bg .hero-scene__img{
  position:absolute;inset:0;width:100%;height:100%;
  display:block;object-fit:cover;object-position:center 46%;
  pointer-events:none
}
.page-blog .blog-hero-bg .hero-scene__img{object-position:center 44%}
.page-faq .hero,
.page-blog .hero,
.page-faq .hero-scene,
.page-blog .hero-scene{
  overflow:hidden;max-width:100%
}
.page-faq .hero .agence-hero-overlay,
.page-blog .hero .agence-hero-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(to bottom,rgba(5,8,28,.28) 0%,rgba(5,8,28,.06) 38%,rgba(5,8,28,.55) 78%,rgba(5,8,28,.92) 100%),
    radial-gradient(ellipse at 50% 48%,rgba(61,139,240,.1) 0%,transparent 68%)
}
.page-agence .agence-hero-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(to bottom,rgba(5,8,28,.35) 0%,rgba(5,8,28,.1) 40%,rgba(5,8,28,.7) 85%,rgba(5,8,28,1) 100%),radial-gradient(ellipse at 50% 50%,rgba(61,139,240,.12) 0%,transparent 70%)
}
.page-agence .agence-hero-content{position:relative;z-index:2}
.page-agence .agence-hero .display{font-size:var(--hero-h1);line-height:1.12}
.page-agence .agence-hero .display.d1{margin:2.85rem auto 0}
.page-agence .agence-hero .display.d2{margin:.06em auto 0}
.page-agence .agence-hero .lead{
  max-width:70ch;margin:2.1rem auto 0;text-align:center
}
.page-agence .agence-hero .agence-hero-cta{
  margin-top:2.85rem;display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center
}
@media(max-width:768px){
  .page-agence .agence-hero .display.d1{margin-top:2.4rem}
  .page-agence .agence-hero .lead{margin-top:1.75rem}
  .page-agence .agence-hero .agence-hero-cta{margin-top:2.4rem}
}
.page-agence .agence-hero .display,
.page-agence .agence-hero .lead,
.page-agence .agence-hero .pill,
.page-agence .agence-hero .btn,
.page-agence .agence-hero .btn-poda-face{text-shadow:0 2px 22px rgba(5,8,28,.88),0 0 40px rgba(5,8,28,.5)}
@media(min-width:1100px){
  .page-agence .agence-hero-bg{background-position:center 15%}
}
@media(max-width:720px){
  .page-agence .agence-hero-bg{background-position:center 12%}
}
.agence-hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(5,8,28,.35) 0%,rgba(5,8,28,.1) 40%,rgba(5,8,28,.7) 85%,rgba(5,8,28,1) 100%),radial-gradient(ellipse at 50% 50%,rgba(61,139,240,.12) 0%,transparent 70%)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,4rem);align-items:center;width:100%}
.word-morph-wrap{position:relative;margin:0;max-width:100%}
.word-morph-wrap::before{content:"";position:absolute;left:-3%;top:50%;width:64%;height:120%;
  transform:translateY(-50%);z-index:0;pointer-events:none;filter:blur(42px);opacity:.85;
  background:radial-gradient(closest-side,rgba(34,211,238,.55),rgba(61,139,240,.24) 58%,transparent);
  animation:auroraShift 9s ease-in-out infinite alternate}
@keyframes auroraShift{0%{transform:translateY(-50%) translateX(0)}100%{transform:translateY(-50%) translateX(14%)}}
.word-morph{position:relative;z-index:1;margin:0}
.word-morph .wm-viewport{
  position:relative;display:block;overflow:hidden;
  height:1.14em;min-height:1.14em
}
.word-morph .wm-line{
  position:absolute;left:0;right:0;top:0;display:block;width:100%;
  white-space:nowrap;user-select:none;
  opacity:0;
  transition:transform .65s cubic-bezier(.45,.05,.2,1),opacity .55s ease;
  will-change:transform,opacity
}
.word-morph .wm-line.wm-active{transform:translateY(0);opacity:1}
.word-morph .wm-line.wm-prev{transform:translateY(-108%);opacity:0}
.word-morph .wm-line.wm-next{transform:translateY(108%);opacity:0}
.pill{display:inline-flex;align-items:center;gap:.6em;padding:.5em 1em;border-radius:999px;
  border:1px solid rgba(34,211,238,.28);background:rgba(5,8,28,.52);font-size:.78rem;color:rgba(160,185,220,.78);
  letter-spacing:.04em;backdrop-filter:blur(8px);
  box-shadow:0 0 0 1px rgba(34,211,238,.06)}
/* Blog articles — stack cohérent : retour → tag → titre (jamais côte à côte) */
.post-hero .wrap{display:flex;flex-direction:column;align-items:flex-start}
.post-hero .breadcrumb{width:100%}
.post-hero .post-back{
  display:inline-flex;align-items:center;gap:.5em;width:auto;max-width:100%;
  margin:0 0 1rem;align-self:flex-start
}
.post-hero .pill{
  display:inline-flex;margin:0;align-self:flex-start;flex:0 0 auto
}
.post-hero h1,
.post-hero .display{margin-top:1.1rem;width:100%}
.post-hero .post-lead{margin-top:1.3rem;width:100%}
.post-hero .post-meta{margin-top:1.3rem;width:100%}
@media(max-width:860px){
  .post-hero .post-back{margin-bottom:.85rem}
  .post-hero h1,
  .post-hero .display{margin-top:1rem}
}
.pill .dot{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan);animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.4}}

/* hero proof strip */
.hero-proof{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;margin:1.4rem 0 0}
.hero-proof .prf-star{color:var(--cyan);letter-spacing:.12em;font-size:.78rem}
.hero-proof .prf-text{font-size:.78rem;color:var(--muted)}
.hero-proof .prf-text strong{color:var(--text);font-weight:600}

/* ---------- Ticker ---------- */
.ticker{
  position:relative;overflow:hidden;
  border-block:1px solid var(--line);
  padding:1rem 0;
  isolation:isolate
}
/* Fondus latéraux — bandeau plus « ruban » qu’encart */
.ticker::before,
.ticker::after{
  content:"";position:absolute;top:0;bottom:0;width:clamp(28px,6vw,56px);
  z-index:2;pointer-events:none
}
.ticker::before{left:0;background:linear-gradient(90deg,var(--bg),transparent)}
.ticker::after{right:0;background:linear-gradient(270deg,var(--bg),transparent)}
.ticker-track{
  display:flex;align-items:center;gap:1.85rem;width:max-content;
  transform:translate3d(0,0,0)
}
.ticker-loop{display:flex;align-items:center;gap:1.85rem;flex-shrink:0}
.ticker span{
  flex-shrink:0;font-family:var(--display);font-weight:400;
  font-size:.86rem;letter-spacing:.14em;line-height:1.2;
  text-transform:uppercase;color:rgba(176,196,228,.72);
  display:inline-flex;align-items:center;gap:1.85rem;
  white-space:nowrap;-webkit-font-smoothing:antialiased
}
.ticker span::after{
  content:"✦";flex-shrink:0;line-height:1;
  font-size:.78em;letter-spacing:0;
  color:#22d3ee;opacity:.9;
  filter:drop-shadow(0 0 6px rgba(34,211,238,.35))
}

/* ---------- Section heading ---------- */
.sec-head.center{align-items:center;text-align:center}
.sec-head .lead{margin:0}
.sec-head .promo-line{margin-top:var(--sec-block)}
.sec-foot{margin-top:0;text-align:center;overflow:visible}
.sec-foot--lg{margin-top:0;overflow:visible}
.sc-cta{text-align:center;margin-top:0;overflow:visible;padding-bottom:0}
.sec-foot a:not(.btn):not(.poda),.sec-foot--lg a:not(.btn):not(.poda),
.sec-foot-link{
  color:var(--cyan);font-size:.85rem;
  text-decoration:underline;text-decoration-color:rgba(34,211,238,.45);
  text-underline-offset:3px;text-decoration-thickness:1px;
  border-bottom:none!important;box-shadow:none;
  transition:color .2s ease,text-decoration-color .2s ease
}
.sec-foot a:not(.btn):not(.poda):hover,.sec-foot a:not(.btn):not(.poda):focus-visible,
.sec-foot--lg a:not(.btn):not(.poda):hover,.sec-foot--lg a:not(.btn):not(.poda):focus-visible,
.sec-foot-link:hover,.sec-foot-link:focus-visible{
  color:var(--cyan-light);text-decoration-color:var(--cyan-light);border-bottom:none!important
}
/* Light : violacé fixe (footer-mail) ; hover = même traitement que .tx-compare-link */
[data-theme="light"] .sec-foot a:not(.btn):not(.poda),
[data-theme="light"] .sec-foot--lg a:not(.btn):not(.poda),
[data-theme="light"] .sec-foot-link{
  color:var(--accent-deep);
  text-decoration-color:rgba(30,58,110,.4);
  font-weight:500
}
@media(hover:hover){
  [data-theme="light"] .sec-foot a:not(.btn):not(.poda):hover,
  [data-theme="light"] .sec-foot--lg a:not(.btn):not(.poda):hover,
  [data-theme="light"] .sec-foot-link:hover{
    color:#0369a1;
    text-decoration-color:rgba(3,105,161,.55)
  }
}
[data-theme="light"] .sec-foot a:not(.btn):not(.poda):focus-visible,
[data-theme="light"] .sec-foot--lg a:not(.btn):not(.poda):focus-visible,
[data-theme="light"] .sec-foot-link:focus-visible{
  color:#0369a1;
  text-decoration-color:rgba(3,105,161,.55)
}

/* ---------- Feature / service cards ---------- */
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--sec-grid-gap-sm)}
.svc-num{font-family:var(--display);font-weight:200;font-size:.95rem;color:var(--cyan);letter-spacing:.1em}
.svc-title{font-family:var(--display);font-weight:400;font-size:1.25rem;margin:var(--sec-stack) 0 calc(var(--sec-stack) * .75)}
.svc-desc{font-size:.92rem;color:var(--muted)}
.feat-card-center{text-align:center}
.card-icon{display:flex;justify-content:center;margin-bottom:var(--sec-grid-gap-sm)}
.card-icon svg{
  animation:icon-float 3.2s ease-in-out infinite;
  animation-delay:var(--fi-delay,0s);
  filter:drop-shadow(0 0 12px rgba(34,211,238,.5)) drop-shadow(0 0 4px rgba(61,139,240,.25))
}
@keyframes icon-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.svc-ico{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;
  background:rgba(34,211,238,.12);border:1px solid rgba(34,211,238,.28);color:#8af2ee}
.svc-ico svg{width:22px;height:22px}
.tag-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:var(--sec-block)}
.tag,
.cs-tag,
.rlz-showcase-chips span{
  display:inline-flex;align-items:center;justify-content:center;
  font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;
  padding:.32em .75em;border-radius:999px;
  border:1px solid rgba(34,211,238,.2);
  background:rgba(5,8,28,.52);
  color:rgba(160,185,220,.72);
  box-shadow:none;cursor:default;
  transition:border-color .25s,background .25s,color .25s,box-shadow .25s
}
.cs-tag{
  font-size:.72rem;letter-spacing:.04em;text-transform:none;
  color:rgba(160,185,220,.82);padding:.2rem .7rem;white-space:nowrap
}
.icon-orb{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-size:1.15rem;
  background:rgba(34,211,238,.12);border:1px solid rgba(34,211,238,.28);color:#8af2ee}
.mini-feats{list-style:none;margin:var(--sec-block) 0 0;padding:0;display:flex;flex-direction:column;gap:calc(var(--sec-stack) * 1.1)}
.mini-feats li{display:flex;gap:.5rem;align-items:flex-start;font-size:.82rem;color:rgba(244,244,252,.82)}
.mini-feats li::before{content:"✓";color:var(--cyan);font-weight:700;flex-shrink:0}

/* ---------- Sector cards ---------- */
/* ── BENTO GRID ── */
.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sec-grid-gap-sm);margin-top:var(--sec-block-lg);align-items:stretch}
.bento-card{
  --bento-gap:1.1rem;
  background:rgba(10,15,40,.65);border:1px solid rgba(61,139,240,.18);border-radius:20px;
  padding:1.35rem 1.4rem 1.4rem;
  transition:border-color .3s,box-shadow .3s,background .35s,transform .35s;position:relative;overflow:hidden;
  display:flex;flex-direction:column;gap:var(--bento-gap);height:100%;min-height:0
}
/* Voile hover type propulser (léger, plein card) */
.bento-card::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;
  background:linear-gradient(140deg,rgba(34,211,238,.08) 0%,rgba(61,139,240,.05) 100%);
  opacity:0;transition:opacity .35s
}
.bento-card:hover::after{opacity:1}
.bento-card > *{position:relative;z-index:1}
.bento-card:hover{
  border-color:rgba(34,211,238,.55);
  background:linear-gradient(118deg,rgba(8,10,22,.55) 0%,rgba(34,211,238,.07) 42%,rgba(61,139,240,.05) 100%);
  box-shadow:0 0 0 1px rgba(34,211,238,.16),0 6px 18px rgba(34,211,238,.12),0 0 28px rgba(61,139,240,.1)
}
.bento-lg{grid-column:span 2}
.bento-badge{
  width:44px;height:44px;
  background:linear-gradient(135deg,rgba(61,139,240,.3),rgba(34,211,238,.15));
  border:1px solid rgba(61,139,240,.5);border-radius:12px;
  display:flex;align-items:center;justify-content:center;color:var(--cyan);flex-shrink:0;margin:0
}
.bento-body{display:flex;flex-direction:column;gap:var(--bento-gap);flex:0 0 auto}
/* léger air en plus entre fenêtre code et bloc texte ; jauges → badge plus serré */
.bento-code-win + .bento-body{margin-top:.22rem}
.bento-perf + .bento-body{margin-top:calc(var(--bento-gap) * -.35)}
.bento-card h3{
  font-family:var(--display);font-weight:400;font-size:1.05rem;margin:0;color:#e4e4f0;
  line-height:1.15;letter-spacing:-.01em;
  /* légère compensation du leading asymétrique (sans trop serrer) */
  margin-bottom:-.1em;
  text-box-trim:trim-both;text-box-edge:cap alphabetic
}
.bento-card p{
  color:rgba(180,180,210,.72);font-size:.875rem;line-height:1.6;margin:0;
  text-box-trim:trim-start;text-box-edge:cap alphabetic
}
@supports (text-box-trim:trim-both){
  .bento-card h3{margin-bottom:0}
}
/* code window — compact, barres entières (pas de crop) */
.bento-code-win{
  background:rgba(5,8,28,.75);border:1px solid rgba(61,139,240,.2);border-radius:10px;
  padding:.55rem .75rem .6rem;flex:0 0 auto;min-height:0;overflow:visible
}
.bento-win-dots{display:flex;gap:.35rem;margin-bottom:.4rem}
.bento-win-dots span{width:7px;height:7px;border-radius:50%}
.bento-win-dots span:nth-child(1){background:rgba(61,139,240,.6)}
.bento-win-dots span:nth-child(2){background:rgba(34,211,238,.5)}
.bento-win-dots span:nth-child(3){background:rgba(167,139,250,.5)}
.bcl{height:5px;border-radius:100px;background:var(--c,rgba(61,139,240,.45));width:var(--w,70%);margin-bottom:.28rem}
/* 5 barres visibles — hauteur maîtrisée sans couper */
.bento-code-win .bcl:nth-child(6){margin-bottom:0}
.bento-code-win .bcl:nth-child(n+7){display:none}
/* perf circles */
.bento-perf{
  display:flex;gap:.75rem;justify-content:center;align-items:center;
  flex:0 0 auto;flex-wrap:nowrap;padding:0;min-height:0
}
.bp-item{display:flex;flex-direction:column;align-items:center;gap:.32rem}
.bp-ring{width:56px;height:56px;position:relative}
.bp-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.bp-ring circle{fill:none;stroke-width:4.5;stroke-linecap:round}
.bp-track{stroke:rgba(255,255,255,.07)}
.bp-fill{stroke-dasharray:176;stroke-dashoffset:176;stroke:var(--c,#3d8bf0);filter:drop-shadow(0 0 4px var(--c,#3d8bf0))}
.bp-val{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:600;color:#fff;font-family:var(--display)}
.bp-lbl{font-size:.58rem;color:rgba(180,180,210,.6);text-align:center;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:900px){.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-lg{grid-column:span 2}}
@media(max-width:540px){
  .bento-grid{grid-template-columns:1fr}.bento-lg{grid-column:span 1}
  .bento-perf{
    display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;
    justify-items:center;align-items:start;width:100%;max-width:17rem;margin-inline:auto
  }
  .bp-ring{width:52px;height:52px}
}

.sector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--sec-grid-gap-sm)}
.sector{position:relative;overflow:hidden;min-height:200px;display:flex;flex-direction:column;justify-content:flex-end}
.sector .num{position:absolute;top:1.2rem;right:1.4rem;font-family:var(--display);font-weight:200;font-size:2.4rem;color:var(--faint)}
.sector .sec-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;margin-bottom:auto;
  background:rgba(34,211,238,.1);border:1px solid rgba(34,211,238,.25);color:var(--cyan)}
.sector .sec-ico svg{width:22px;height:22px}
.sector h3{font-family:var(--display);font-weight:400;font-size:1.25rem;margin:var(--sec-block) 0 calc(var(--sec-stack) * 1.1)}
.sector p{font-size:.88rem;color:var(--muted);margin:0}
.sector .arrow{margin-top:var(--sec-block);color:var(--cyan);font-size:.85rem;display:inline-flex;align-items:center;gap:.4em}
.sector .arrow .alma-arrow,
.sector .arrow > span{display:inline-block}
@media(hover:hover){
  .sector:hover .arrow .alma-arrow,
  .sector:hover .arrow > span:last-child{
    animation:alma-arrow-nudge .9s ease-in-out infinite
  }
}

/* ---------- Tarifs — bloc Infomaniak responsive ---------- */
.card.tx-host-wrap{
  max-width:900px;
  margin-inline:auto;
  background:linear-gradient(135deg,rgba(34,211,238,.06) 0%,rgba(61,139,240,.08) 50%,rgba(61,219,217,.05) 100%);
  border-color:rgba(34,211,238,.22)
}
.tx-host-card{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-start;justify-content:space-between;background:transparent}
.tx-host-main,.tx-host-aside{flex:1 1 100%;min-width:0}
.tx-host-aside{display:flex;flex-direction:column;gap:.8rem}
.tx-host-aside > div{
  display:grid!important;
  grid-template-columns:1.35rem 1fr;
  gap:.7rem;
  align-items:start
}
.tx-host-aside > div > span:first-child{
  width:1.35rem;
  text-align:center;
  font-size:1.1rem;
  line-height:1.3
}
.tx-host-main .eyebrow{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.45}
.tx-host-title{font-family:var(--display);font-weight:300;font-size:clamp(1.15rem,4vw,1.4rem);margin:0 0 .8rem}

.promo-line{text-align:center;margin:var(--sec-block) auto .14rem;font-size:.88rem;color:var(--muted);
  display:inline-flex;align-items:center;gap:.5em;
  background:rgba(34,211,238,.06);border:1px solid rgba(34,211,238,.2);
  padding:.5em 1.2em;border-radius:999px;
  box-shadow:0 0 20px rgba(34,211,238,.1)}
.promo-line strong{color:var(--cyan);font-weight:500}
.promo-ico{flex-shrink:0;filter:drop-shadow(0 0 4px rgba(34,211,238,.35))}
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--sec-grid-gap-sm);align-items:stretch}
.plan{display:flex;flex-direction:column;padding:1.8rem 1.6rem;position:relative;min-width:0;
  transition:border-color .35s,box-shadow .35s,background .35s,transform .35s cubic-bezier(.22,1,.36,1)}
/* Contours tier — clair · cyan · profond (cyan bas atténué vs card 3) */
.price-grid .card.plan:nth-child(3n+1){
  border-color:rgba(118,235,237,.28);
  background:
    linear-gradient(148deg,transparent 0%,transparent 58%,rgba(118,235,237,.06) 80%,rgba(118,235,237,.12) 100%),
    linear-gradient(168deg,#12162a 0%,#101828 58%,#0c121c 100%);
  box-shadow:0 0 0 1px rgba(118,235,237,.08),0 24px 64px -42px rgba(118,235,237,.1)
}
.price-grid .card.plan:nth-child(3n+2){
  border-color:rgba(34,211,238,.32);
  background:
    linear-gradient(148deg,transparent 0%,transparent 58%,rgba(34,211,238,.07) 80%,rgba(34,211,238,.14) 100%),
    linear-gradient(168deg,#10182a 0%,#0c1524 58%,#0a121c 100%);
  box-shadow:0 0 0 1px rgba(34,211,238,.1),0 28px 72px -38px rgba(34,211,238,.12)
}
.price-grid .card.plan:nth-child(3n+3){
  border-color:rgba(82,130,232,.34);
  background:
    linear-gradient(148deg,transparent 0%,transparent 42%,rgba(61,88,200,.14) 72%,rgba(40,60,140,.26) 100%),
    linear-gradient(168deg,#0e1428 0%,#0a1020 48%,#070c18 100%);
  box-shadow:0 0 0 1px rgba(82,130,232,.12),0 24px 64px -42px rgba(82,130,232,.18)
}
.plan-badge{position:absolute;top:-14px;right:22px;padding:.35em .9em;border-radius:999px;font-size:.72rem;
  font-weight:600;background:linear-gradient(180deg,#7af0ee,#22d3ee);color:#06121a}
.plan-name{font-family:var(--display);font-weight:300;font-size:1.5rem;color:var(--text)}
.price-grid .card.plan:nth-child(3n+1) .plan-name{color:#76ebed;text-shadow:0 0 14px rgba(118,235,237,.32)}
.price-grid .card.plan:nth-child(3n+2) .plan-name{color:var(--cyan);text-shadow:0 0 14px rgba(34,211,238,.36)}
.price-grid .card.plan:nth-child(3n+3) .plan-name{color:var(--cyan-deep);text-shadow:0 0 14px rgba(82,130,232,.34)}
.plan-desc{font-size:.9rem;color:var(--muted);margin-top:.35rem;min-height:2.6em;line-height:1.45}
.plan-price{display:flex;flex-direction:column;justify-content:flex-end;gap:.4rem;margin:var(--sec-block) 0;min-height:82px}
.plan-price .amt{font-family:var(--display);font-weight:200;font-size:clamp(2.2rem,4.2vw,2.7rem);line-height:1;white-space:nowrap}
.plan-price .amt.grad-text{
  display:inline-block;
  align-self:flex-start; /* shrink-to-text : sinon flex stretch = dégradé calé sur la card */
  width:max-content;
  max-width:100%;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  background-size:100% 100%;background-repeat:no-repeat
}
/* Prix — clair → accent → profondeur ; stops sur toute la largeur (lisible même sur « 29 € ») */
.price-grid .card.plan:nth-child(3n+1) .plan-price .amt.grad-text{
  background-image:linear-gradient(92deg,#eafefd 0%,#b8f7f5 18%,#8af0ee 36%,#76ebed 55%,#3ec9d0 78%,#1a9eab 100%)
}
.price-grid .card.plan:nth-child(3n+2) .plan-price .amt.grad-text{
  background-image:linear-gradient(92deg,#e8fffe 0%,#a5f6fb 18%,#5eeaf5 36%,#22d3ee 55%,#14b8c4 78%,#0e7490 100%)
}
.price-grid .card.plan:nth-child(3n+3) .plan-price .amt.grad-text{
  background-image:linear-gradient(92deg,#eef2ff 0%,#c4d4fa 16%,#8eacf2 34%,#5282e8 52%,#3d5fcf 76%,#1e3a6e 100%)
}
/* Petits montants (sans « Dès ») — parcours colorimétrique plus dense */
.price-grid .card.plan:nth-child(3n+1) .plan-price .amt.grad-text.amt--short{
  background-image:linear-gradient(92deg,#f2fffe 0%,#9af3f1 28%,#76ebed 52%,#2eb8c0 78%,#148a96 100%)
}
.price-grid .card.plan:nth-child(3n+2) .plan-price .amt.grad-text.amt--short{
  background-image:linear-gradient(92deg,#f0fffe 0%,#7aeff6 28%,#22d3ee 52%,#14b8c4 78%,#0e7490 100%)
}
.price-grid .card.plan:nth-child(3n+3) .plan-price .amt.grad-text.amt--short{
  background-image:linear-gradient(92deg,#f4f7ff 0%,#a8bef5 26%,#5282e8 50%,#3b5bdb 74%,#1e3a6e 100%)
}
.plan-price .per{
  font-size:.8rem;font-weight:400;letter-spacing:.02em;
  color:var(--muted)
}
.plan-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);margin-bottom:var(--sec-grid-gap-sm)}
.plan-feats{list-style:none;margin:0 0 1.6rem;padding:0;display:flex;flex-direction:column;gap:.6rem;font-size:.88rem;color:rgba(244,244,252,.85)}
.plan-feats li{display:flex;gap:.6rem;align-items:flex-start}
.plan-feats li.off{color:var(--faint)}
.price-grid .card.plan:nth-child(3n+1) .check{color:var(--plan-left)}
.price-grid .card.plan:nth-child(3n+2) .check{color:var(--cyan)}
.price-grid .card.plan:nth-child(3n+3) .check{color:var(--cyan-deep)}
.check{flex-shrink:0;width:18px;height:18px;margin-top:.1rem;color:var(--cyan)}
.off-x{color:var(--faint)!important}
/* Plan feature inline accordions — same visual as FAQ */
.plan-feats{list-style:none;margin:0 0 1.2rem;padding:0}
li.plan-feat-item{display:block}
.plan-feat-item{border-bottom:1px solid var(--line-2)}
.plan-feat-item:last-child{border-bottom:none}
.plan-feat-q{display:flex;align-items:center;gap:.8rem;cursor:pointer;
  padding:.65rem 0;font-size:.87rem;color:rgba(244,244,252,.85);user-select:none;
  font-family:var(--display);font-weight:400;transition:color .2s}
.plan-feat-q:hover{color:#fff}
.plan-feat-label{
  flex:1 1 auto;min-width:0;text-align:left;
  overflow-wrap:anywhere;word-break:break-word;line-height:1.4
}
/* Title always sits immediately after the check icon, at a fixed position,
   whether or not a row has a trailing "+" toggle — avoids justify-content:
   space-between redistributing the title differently between 2-child (off)
   and 3-child (on) rows. */
.price-grid .card.plan:nth-child(3n+1) .plan-feat-q .pm{color:var(--plan-left);border-color:rgba(118,235,237,.22)}
.price-grid .card.plan:nth-child(3n+2) .plan-feat-q .pm{color:var(--cyan);border-color:rgba(34,211,238,.24)}
.price-grid .card.plan:nth-child(3n+3) .plan-feat-q .pm{color:var(--cyan-deep);border-color:rgba(82,130,232,.24)}
.plan-feat-q .pm,.faq-q .pm,.opt-tog{
  flex-shrink:0;width:22px;height:22px;min-width:22px;min-height:22px;border-radius:7px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line-2);
  color:var(--cyan);font-weight:400;
  padding:0;box-sizing:border-box;position:relative;
  /* Masque le « + » HTML : glyphe SVG centré ; ouverture = rotate 45° du cadre */
  font-size:0;line-height:0;overflow:hidden;
  -webkit-text-fill-color:transparent;text-indent:0;
  transform-origin:center center;
  transition:transform .3s,background .2s,border-color .2s
}
.plan-feat-q .pm::before,.faq-q .pm::before,.opt-tog::before{
  content:"";position:absolute;inset:0;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square' d='M2.5 6h7M6 2.5v7'/%3E%3C/svg%3E") center/10px 10px no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square' d='M2.5 6h7M6 2.5v7'/%3E%3C/svg%3E") center/10px 10px no-repeat
}
.plan-feat-q .pm::after,.faq-q .pm::after,.opt-tog::after{content:none;display:none}
.plan-feat-item.open .plan-feat-q .pm,
.faq-item.open .faq-q .pm,
.opt.open .opt-tog{
  transform:rotate(45deg)
}
.plan-feat-q .pm{margin-left:auto;border-radius:7px}
.faq-q .pm{
  border:1px solid rgba(34,211,238,.18);
  background:rgba(34,211,238,.04);border-radius:6px
}
.opt-tog{
  position:relative;align-self:flex-end;z-index:2;
  border:1px solid rgba(34,211,238,.2);border-radius:6px;
  color:var(--opt-accent);background:rgba(34,211,238,.04)
}
.plan-feat-a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;
  color:var(--muted);font-size:.82rem;line-height:1.7;padding:0}
.plan-feat-item.open .plan-feat-a{max-height:300px;padding-bottom:.85rem}
.plan-feat-item.off .plan-feat-q{color:var(--faint);cursor:default}
.plan-feat-item.off .plan-feat-q .pm{display:none}
.plan .btn{margin-top:auto}
/* CTA tarifs — couleur par tier, halo uniquement au hover */
.price-grid .card.plan .btn-cyan{
  min-height:46px;padding:.68em 1.25em;font-size:.92rem;font-weight:600;
  box-shadow:none;filter:none;border:1px solid transparent;
  transition:box-shadow .3s,filter .3s,transform .3s,border-color .3s
}
.price-grid .card.plan:nth-child(3n+1) .btn-cyan{
  color:#042028;
  background:linear-gradient(180deg,#98f5f6 0%,#76ebed 100%);
  border-color:rgba(118,235,237,.35)
}
.price-grid .card.plan:nth-child(3n+2) .btn-cyan{
  color:#042028;
  background:linear-gradient(180deg,#5eeaf5 0%,#22d3ee 100%);
  border-color:rgba(34,211,238,.28)
}
.price-grid .card.plan:nth-child(3n+3) .btn-cyan{
  color:#06121a;
  background:linear-gradient(180deg,#93b4f5 0%,#5282e8 100%);
  border-color:rgba(82,130,232,.32)
}
/* Faces poda — #76EBED plat (pas de stop bas assombri / teinte verte) */
.price-grid .card.plan:nth-child(3n+1) .btn-poda .btn-poda-face{
  color:#042028!important;
  background:linear-gradient(180deg,#98f5f6 0%,#76ebed 100%)!important;
  border-color:rgba(118,235,237,.4)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 22px -10px rgba(118,235,237,.38)!important;
  text-shadow:none!important;
  filter:none!important
}
.price-grid .card.plan:nth-child(3n+1) .btn-poda:hover .btn-poda-face,
.price-grid .card.plan:nth-child(3n+1) .btn-poda:focus-visible .btn-poda-face{
  filter:none!important;
  background:linear-gradient(180deg,#a8f7f8 0%,#86eef0 100%)!important;
  border-color:rgba(118,235,237,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 12px 28px -10px rgba(118,235,237,.48)!important
}
@media(hover:hover){
  .price-grid .card.plan:nth-child(3n+1):hover{
    border-color:rgba(118,235,237,.38);
    box-shadow:0 0 0 1px rgba(118,235,237,.12),0 20px 52px rgba(118,235,237,.1)
  }
  .price-grid .card.plan:nth-child(3n+2):hover{
    border-color:rgba(34,211,238,.42);
    box-shadow:0 0 0 1px rgba(34,211,238,.14),0 22px 56px rgba(34,211,238,.12)
  }
  .price-grid .card.plan:nth-child(3n+3):hover{
    border-color:rgba(82,130,232,.48);
    box-shadow:0 0 0 1px rgba(82,130,232,.16),0 20px 52px rgba(82,130,232,.14)
  }
  .price-grid .card.plan:nth-child(3n+1) .btn-cyan:hover{
    filter:none;
    background:linear-gradient(180deg,#a8f7f8 0%,#86eef0 100%);
    box-shadow:0 12px 28px -10px rgba(118,235,237,.5);
    transform:translateY(-1px)
  }
  .price-grid .card.plan:nth-child(3n+2) .btn-cyan:hover{
    filter:brightness(1.05);
    box-shadow:0 12px 28px -10px rgba(34,211,238,.58);
    transform:translateY(-1px)
  }
  .price-grid .card.plan:nth-child(3n+3) .btn-cyan:hover{
    filter:brightness(1.05);
    box-shadow:0 12px 28px -10px rgba(82,130,232,.52);
    transform:translateY(-1px)
  }
}

/* ---------- Options à la carte (accordéon) ---------- */
.opts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sec-grid-gap-sm);align-items:stretch}
@media(max-width:1024px){.opts-grid{grid-template-columns:repeat(2,1fr)}}
.opt{
  display:flex;flex-direction:column;align-items:stretch;gap:.65rem;
  cursor:default;width:100%;height:100%;
  --opt-accent:#5eeaff
}
.opt.has-sub{cursor:pointer}
.opt-row{
  display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;width:100%;
  flex:1 1 auto;min-height:5.35rem
}
.opt-head{
  flex:1;min-width:0;display:flex;flex-direction:column;gap:.45rem
}
.opt-title-row{display:flex;align-items:flex-start;gap:.75rem}
.opt-head h3{
  font-family:var(--display);font-weight:500;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--opt-accent);margin:0;flex:1;min-width:0;line-height:1.35
}
@media(hover:hover){
  .opt.has-sub:hover .opt-tog{border-color:rgba(34,211,238,.38);background:rgba(34,211,238,.08)}
}
.opt-head p{font-size:.86rem;color:var(--muted);margin:0;line-height:1.55}
.opt-aside{text-align:right;flex-shrink:0;padding-top:0;align-self:flex-start}
.opt-price{
  font-family:var(--display);font-weight:200;font-size:1.4rem;white-space:nowrap;line-height:1.2;
  color:var(--opt-accent)
}
.opt-period{font-size:.7rem;color:var(--faint);display:block;margin-top:.2rem}
.opt-sub{width:100%;max-height:0;overflow:hidden;transition:max-height .4s ease,margin .4s ease,padding .4s ease;margin-top:0;padding-top:0}
.opt.open .opt-sub{max-height:480px;margin-top:.15rem;padding-top:.15rem}
.opt-sub-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1.2rem;padding:.85rem 0;border-top:1px solid var(--line)}
.opt-sub-item:first-child{padding-top:.55rem}
.opt-sub-item > div:first-child{flex:1;min-width:0}
.opt-sub-title{font-size:.86rem;color:var(--text)}
.opt-sub-desc{font-size:.78rem;color:var(--faint);margin-top:.2rem;line-height:1.55}
.opt-sub-price{
  font-family:var(--display);font-weight:300;white-space:nowrap;flex-shrink:0;padding-top:.1rem;
  color:var(--opt-accent)
}
/* Options light — fond violacé terne ; spotlight fort sur contour, léger en fill (comme dark) */
[data-theme="light"] .opt{--opt-accent:#3d6fd8}
[data-theme="light"] .opt-head p{color:var(--faint)}
[data-theme="light"] .opt-period{color:var(--faint)}
[data-theme="light"] .opt-sub-item{border-top-color:rgba(70,80,140,.14)}
[data-theme="light"] .opt-sub-title{color:rgba(7,19,28,.88)}
[data-theme="light"] .opt-sub-desc{color:var(--muted)}
[data-theme="light"] .opt-tog{
  border-color:rgba(61,111,216,.32);
  background:rgba(61,111,216,.07);
  color:var(--opt-accent)
}
@media(hover:hover){
  [data-theme="light"] .opt.has-sub:hover .opt-tog{
    border-color:rgba(61,111,216,.5);
    background:rgba(61,111,216,.12)
  }
}
[data-theme="light"] .opts-grid > [data-glow].opt{
  --size:240;
  --bg-spot-opacity:.11;
  --border-spot-opacity:1;
  --border-light-opacity:1;
  --backdrop:#e8e8f2;
  background-color:#e8e8f2!important;
  background-image:
    radial-gradient(var(--spotlight-size) var(--spotlight-size) at
      calc(var(--x,0)*1px) calc(var(--y,0)*1px),
      hsl(var(--hue) 70% 52% / var(--bg-spot-opacity)),transparent),
    linear-gradient(155deg,#eeedf6 0%,#e8e8f2 42%,#dddde9 100%)!important;
  background-size:calc(100% + (2*var(--border-size))) calc(100% + (2*var(--border-size))),auto!important;
  background-position:50% 50%,0 0!important;
  background-attachment:fixed,scroll!important;
  border-color:rgba(90,100,170,.28)!important;
  box-shadow:0 16px 40px -26px rgba(61,70,140,.2),0 0 0 1px rgba(255,255,255,.55) inset!important;
  backdrop-filter:none;-webkit-backdrop-filter:none
}
[data-theme="light"] .opts-grid > [data-glow].opt::before{
  opacity:1!important;
  filter:brightness(1.65)!important;
  background-attachment:fixed!important;
  background-image:radial-gradient(calc(var(--spotlight-size)*.75) calc(var(--spotlight-size)*.75) at
    calc(var(--x,0)*1px) calc(var(--y,0)*1px),
    hsl(var(--hue) 85% 48% / var(--border-spot-opacity)),transparent 100%)!important
}
[data-theme="light"] .opts-grid > [data-glow].opt::after{
  opacity:1!important;
  filter:none!important;
  background-attachment:fixed!important;
  background-image:radial-gradient(calc(var(--spotlight-size)*.5) calc(var(--spotlight-size)*.5) at
    calc(var(--x,0)*1px) calc(var(--y,0)*1px),
    hsl(0 0% 100% / var(--border-light-opacity)),transparent 100%)!important
}
/* Glow curseur options — bleu/violet uniquement (dark + light), toutes cards */
.opts-grid > [data-glow].opt{
  --base:232;--spread:14;
  --hue:calc(var(--base) + (var(--lt,0) * var(--spread)))
}
@media(hover:hover){
  /* Options : aucun effet hover card (bordure/ombre/opacité inchangés) */
  [data-theme="light"] .opts-grid > [data-glow].opt:hover,
  [data-theme="light"] .opts-grid > [data-glow].opt.open{
    --bg-spot-opacity:.11;
    --border-spot-opacity:1;
    --border-light-opacity:1;
    border-color:rgba(90,100,170,.28)!important;
    box-shadow:0 16px 40px -26px rgba(61,70,140,.2),0 0 0 1px rgba(255,255,255,.55) inset!important
  }
  [data-glow]:not(.opt):hover,
  .card:hover:not(.plan):not(.card--glow-fixed),
  .blog-card:hover,
  .propulser-card:hover{
    border-color:rgba(34,211,238,.55)!important;
    box-shadow:0 0 0 1px rgba(34,211,238,.16),0 12px 36px rgba(34,211,238,.12),0 0 24px rgba(61,139,240,.1)!important
  }
}
/* Encards devis / abo sur devis (tarifs) — contour hover figé (cyan dark / bleu-violet light) */
.page-tarifs .card.card--glow-fixed{
  border-color:rgba(34,211,238,.55);
  box-shadow:0 0 0 1px rgba(34,211,238,.16),0 12px 36px rgba(34,211,238,.12),0 0 24px rgba(61,139,240,.1)
}

/* ---------- Formules intégrales (même modèle que conception web / hébergement & suivi) ---------- */
.plan-price--pack{min-height:96px;gap:.28rem}
.plan-was{font-size:.8rem;color:var(--faint);text-decoration:line-through;letter-spacing:.02em}
.packs-note{
  font-size:.8rem;color:var(--faint);text-align:center;
  margin:0;padding:0
}

/* ---------- Comparison table ---------- */
.cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--glass);backdrop-filter:blur(10px)}
.cmp-table{width:100%;border-collapse:collapse;min-width:640px}
.cmp-table th,.cmp-table td{padding:.95rem 1.1rem;text-align:left;border-bottom:1px solid var(--line);font-size:.88rem}
.cmp-table thead th{font-family:var(--display);font-weight:500;font-size:.78rem;letter-spacing:.06em;color:var(--text);text-align:center}
.cmp-table thead th:first-child{text-align:left}
.cmp-table thead th:nth-child(2){color:var(--cyan-light)}
.cmp-table thead th:nth-child(3){color:var(--cyan)}
.cmp-table thead th:nth-child(4){color:var(--cyan-deep)}
.cmp-table thead th.hl{color:var(--cyan)}
.cmp-table tbody td:nth-child(2){background:rgba(138,242,238,.025)}
.cmp-table tbody td:nth-child(3){background:rgba(34,211,238,.045)}
.cmp-table tbody td:nth-child(4){background:rgba(82,130,232,.04)}
.cmp-table td.hl{background:rgba(34,211,238,.06)}
.cmp-table td:not(:first-child){text-align:center}
.cmp-table tbody tr:last-child td{border-bottom:none}
.cmp-table tbody td:nth-child(2) .ok{color:var(--cyan-light)}
.cmp-table tbody td:nth-child(3) .ok{color:var(--cyan)}
.cmp-table tbody td:nth-child(4) .ok{color:var(--cyan-deep)}
.cmp-table .ok{font-weight:600}
.cmp-table .ko{color:var(--faint)}
.cmp-table .mid{color:var(--cyan)}
.cmp-table td:first-child{color:var(--muted)}

/* ---------- Alma pills — sélections FAQ / filtres / tags (sobre, équilibré) ---------- */
.alma-pill,
.faq-tab,
.rlz-vault-filters button,
.rlz-row-tags span{
  display:inline-flex;align-items:center;justify-content:center;
  padding:.48rem 1.05rem;border-radius:999px;
  border:1px solid rgba(34,211,238,.2);
  background:rgba(5,8,28,.52);
  color:rgba(160,185,220,.72);
  font-family:var(--display);font-size:.82rem;font-weight:500;letter-spacing:.01em;
  cursor:pointer;transition:border-color .25s,background .25s,color .25s,box-shadow .25s,transform .25s;
  box-shadow:none
}
.rlz-row-tags span{cursor:default;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;padding:.32em .75em}
@media(hover:hover){
  .alma-pill:hover,
  .faq-tab:hover,
  .rlz-vault-filters button:hover{
    border-color:rgba(34,211,238,.48);
    color:#fff;
    background:linear-gradient(118deg,rgba(10,14,32,.9) 0%,rgba(34,211,238,.12) 42%,rgba(61,139,240,.08) 100%);
    box-shadow:0 0 0 1px rgba(34,211,238,.14),0 5px 14px rgba(34,211,238,.12);
    transform:translateY(-1px)
  }
}
.alma-pill.on,
.faq-tab.on,
.rlz-vault-filters button.on{
  border-color:rgba(34,211,238,.62);
  color:#fff;
  font-weight:600;
  background:linear-gradient(118deg,rgba(10,14,32,.96) 0%,rgba(34,211,238,.2) 42%,rgba(61,139,240,.14) 100%);
  box-shadow:0 0 0 1px rgba(34,211,238,.26),0 6px 18px rgba(34,211,238,.2),0 0 22px rgba(61,139,240,.14),inset 0 1px 0 rgba(255,255,255,.08)
}
@media(hover:hover){
  .alma-pill.on:hover,
  .faq-tab.on:hover,
  .rlz-vault-filters button.on:hover{
    border-color:rgba(34,211,238,.68);
    color:#fff;
    background:linear-gradient(118deg,rgba(12,14,31,.95) 0%,rgba(34,211,238,.22) 42%,rgba(61,139,240,.18) 100%);
    box-shadow:0 0 0 1px rgba(34,211,238,.26),0 8px 22px rgba(34,211,238,.26),0 0 28px rgba(61,139,240,.18),inset 0 1px 0 rgba(255,255,255,.06)
  }
}
/* Filtres réalisations : pas de translateY au survol, le décalage fait disparaître le trait
   du haut de la bordure (clip du conteneur scrollable en mobile, artefact de rendu en desktop) */
.rlz-vault-filters button:hover,
.rlz-vault-filters button.on:hover{transform:none}

/* ---------- FAQ ---------- */
.faq-tabs{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:var(--sec-block-lg)}
.faq-tab{padding:.48rem 1.05rem}
.faq-tab:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.faq-list{display:flex;flex-direction:column;gap:.55rem;max-width:820px;margin-inline:auto}
.faq-item{
  border:1px solid var(--line);border-radius:14px;
  background:rgba(255,255,255,.022);
  overflow:hidden;
  transition:border-color .28s,box-shadow .28s,background .28s
}
@media(hover:hover){
  .faq-item:hover{
    border-color:rgba(61,139,240,.42);
    background:linear-gradient(118deg,rgba(8,10,22,.55) 0%,rgba(34,211,238,.08) 42%,rgba(61,139,240,.06) 100%);
    box-shadow:0 0 0 1px rgba(34,211,238,.12),0 6px 18px rgba(34,211,238,.12),0 0 20px rgba(61,139,240,.08)
  }
  .faq-item:hover .faq-q{color:rgba(244,244,252,.98)}
  .faq-item.open:hover{
    border-color:rgba(34,211,238,.68);
    background:linear-gradient(118deg,rgba(12,14,31,.88) 0%,rgba(34,211,238,.2) 42%,rgba(61,139,240,.14) 100%);
    box-shadow:0 0 0 1px rgba(34,211,238,.26),0 8px 22px rgba(34,211,238,.24),0 0 28px rgba(61,139,240,.16)
  }
}
.faq-item.open{
  border-color:rgba(34,211,238,.55);
  background:linear-gradient(118deg,rgba(12,14,31,.82) 0%,rgba(34,211,238,.14) 42%,rgba(61,139,240,.10) 100%);
  box-shadow:0 0 0 1px rgba(34,211,238,.2),0 6px 18px rgba(34,211,238,.2),0 0 24px rgba(61,139,240,.12)
}
.faq-item.open .faq-q{color:rgba(244,244,252,.98)}
.faq-q{
  display:flex;align-items:center;justify-content:space-between;gap:.85rem;
  padding:.82rem 1.15rem;cursor:pointer;
  font-family:var(--display);font-weight:400;font-size:.94rem;line-height:1.45;
  transition:color .22s
}
@media(hover:hover){
  .faq-item:hover .faq-q .pm{
    border-color:rgba(34,211,238,.34);
    background:rgba(34,211,238,.08)
  }
}
.faq-item.open .pm{transform:rotate(45deg);border-color:rgba(34,211,238,.42)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease;color:var(--muted);font-size:.88rem;line-height:1.72}
.faq-a div{padding:0 1.15rem 1rem}
.faq-a a{color:var(--cyan);text-decoration:underline;text-decoration-color:rgba(34,211,238,.4);text-underline-offset:2px;transition:color .2s ease,text-decoration-color .2s ease}
.faq-a a:hover,.faq-a a:focus-visible{color:var(--cyan-light);text-decoration-color:var(--cyan-light)}
.faq-group{display:none}
.faq-group.on{display:block}

/* ---------- Contact form ---------- */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field{display:flex;flex-direction:column;gap:.4rem}
.field.full{grid-column:1/-1}
.field label{font-size:.78rem;color:var(--muted);letter-spacing:.04em}
.field input,.field select,.field textarea{background:rgba(255,255,255,.04);border:1px solid var(--line);
  border-radius:12px;padding:.85rem 1rem;color:var(--text);font-family:inherit;font-size:.95rem;transition:border-color .25s,background .25s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:rgba(34,211,238,.55);background:rgba(34,211,238,.06)}
.field textarea{resize:vertical;min-height:130px}
.field select option{background:#0c0e1f}

/* contact info list */
.info-list{display:flex;flex-direction:column;gap:1.2rem}
.info-row{display:flex;gap:.9rem;align-items:center}
.info-row .ic{width:42px;min-width:42px;height:42px;border-radius:11px;flex-shrink:0;display:grid;place-items:center;
  background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.2);color:var(--cyan)}
.info-row>span:last-child{display:flex;flex-direction:column;gap:.1rem}
.info-row .k{font-size:.62rem;color:var(--faint);letter-spacing:.1em;text-transform:uppercase;line-height:1.2}
.info-row .v{font-size:.9rem;color:var(--text);line-height:1.4}

/* ─── Contact Layout v2 ─── */
.cnt-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
.cnt-items{display:flex;flex-direction:column;gap:.9rem}
.cnt-item{display:flex;flex-direction:column;gap:.15rem;padding:.7rem 0;border-bottom:1px solid var(--line-2)}
.cnt-item:last-child{border:none}
.cnt-lbl{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.cnt-val{font-size:.92rem;color:var(--text)}
/* Form inside contact */
.cnt-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.cnt-field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}
.cnt-lbl-form{font-size:.72rem;color:var(--muted);letter-spacing:.05em}
.cnt-lbl-form .req{color:var(--cyan);font-weight:600}
.cnt-lbl-form .opt{font-weight:300;color:var(--faint);font-size:.65rem}
.cnt-lbl-form--section{
  font-family:var(--display);font-size:.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--faint);margin:0 0 .75rem
}
.cnt-lbl-form--col{
  font-family:var(--display);font-size:.64rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--cyan);margin-bottom:.35rem
}
.cnt-field-box{
  margin-bottom:0;padding:1rem 1.05rem;
  background:rgba(255,255,255,.025);border:1px solid var(--line);
  border-radius:12px;gap:.55rem
}
.cnt-field-box .cnt-inp{background:rgba(0,0,0,.22);border-color:rgba(255,255,255,.08)}
.cnt-field-box .cnt-inp:focus{border-color:rgba(34,211,238,.45);background:rgba(34,211,238,.05)}
.cnt-field-full{grid-column:1/-1}
.cnt-field-box .cnt-ta{min-height:140px}
.cnt-inp{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:10px;
  padding:.75rem 1rem;font-size:.88rem;color:var(--text);font-family:inherit;transition:border-color .25s,background .25s}
.cnt-inp:focus{outline:none;border-color:rgba(34,211,238,.5);background:rgba(34,211,238,.04)}
.cnt-ta{resize:vertical;min-height:130px}
.cnt-sel{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}
.cnt-sel option,.cnt-sel optgroup{background:#0c0e1f;color:var(--text)}
.cnt-checks{display:flex;flex-direction:column;gap:.5rem;padding:.5rem 0}
.cnt-checks-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.cnt-check-lbl{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.84rem;color:var(--muted);line-height:1.55;
  padding:.55rem .7rem;border-radius:10px;transition:background .2s,color .2s,border-color .2s,box-shadow .2s;
  border:1px solid rgba(34,211,238,.16);background:rgba(255,255,255,.02)}
.cnt-check-lbl:hover{background:rgba(34,211,238,.09);border-color:rgba(34,211,238,.38);color:var(--text);
  box-shadow:0 0 0 1px rgba(34,211,238,.1),0 0 18px rgba(34,211,238,.08)}
/* Custom aurora checkbox */
.cnt-chk{
  -webkit-appearance:none;appearance:none;
  width:18px;min-width:18px;height:18px;
  border:1.5px solid rgba(34,211,238,.32);border-radius:5px;
  background:rgba(34,211,238,.06);cursor:pointer;
  flex-shrink:0;margin-top:.18rem;
  transition:border-color .2s,background .25s,box-shadow .25s}
.cnt-check-lbl:hover .cnt-chk{border-color:rgba(34,211,238,.62);background:rgba(34,211,238,.12)}
.cnt-chk:checked{
  border-color:transparent;
  background:linear-gradient(135deg,#22d3ee 0%,#3d8bf0 100%);
  box-shadow:0 0 20px -5px rgba(34,211,238,.55);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4 9l3.5 3.5L14 5.5' stroke='%2305060d' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E"),linear-gradient(135deg,#22d3ee 0%,#3d8bf0 100%);
  background-repeat:no-repeat,no-repeat;background-position:center,center;background-size:13px,100% 100%;
  animation:chkPop .22s cubic-bezier(0.34,1.56,0.64,1) forwards}
.cnt-check-lbl:has(.cnt-chk:checked){
  color:var(--text);
  border-color:rgba(34,211,238,.55);
  background:rgba(34,211,238,.12);
  box-shadow:0 0 0 1px rgba(34,211,238,.18),0 0 22px rgba(34,211,238,.12)
}
/* Ensure :checked always wins over :hover specificity conflict */
.cnt-check-lbl:hover .cnt-chk:checked,
.cnt-check-lbl .cnt-chk:checked{
  border-color:transparent;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4 9l3.5 3.5L14 5.5' stroke='%2305060d' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E"),linear-gradient(135deg,#22d3ee 0%,#3d8bf0 100%);
  background-repeat:no-repeat,no-repeat;background-position:center,center;background-size:13px,100% 100%;
  box-shadow:0 0 20px -5px rgba(34,211,238,.55)
}
@keyframes chkPop{0%{transform:scale(.65)}60%{transform:scale(1.12)}100%{transform:scale(1)}}
.cnt-plan-name{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--aurora-a);font-weight:500;font-family:var(--mono)}
.cnt-check-lbl em{font-style:normal;font-size:.7rem;color:var(--faint);margin-left:.25rem}
/* Palette picker */
.cnt-palette-box{
  padding:1.15rem 1.25rem;background:rgba(255,255,255,.03);
  border:1px solid var(--line);border-radius:14px
}
.cnt-pal-pickers{display:flex;gap:1.4rem;flex-wrap:wrap}
.cnt-pal-wrap{display:flex;flex-direction:column;align-items:center;gap:.3rem;flex:1;min-width:72px}
.cnt-pal-swatch{width:58px;height:58px;border-radius:14px;cursor:pointer;position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.1);
  transition:transform .2s,box-shadow .2s;box-shadow:0 4px 16px -6px rgba(0,0,0,.4)}
.cnt-pal-swatch:hover{transform:scale(1.06);box-shadow:0 8px 24px -6px rgba(0,0,0,.5)}
.cnt-pal-label{font-size:.48rem;color:#fff;position:absolute;bottom:3px;letter-spacing:.04em;opacity:.85;pointer-events:none;font-family:var(--mono)}
.cnt-pal-inp{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;border:none}
.cnt-pal-lbl{font-size:.6rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.cnt-pal-hex{font-size:.6rem;color:var(--faint);font-family:var(--mono)}
.cnt-pal-bar{width:100%;height:5px;border-radius:3px;margin-top:.15rem;transition:background .3s}
/* RGPD */
.cnt-rgpd{padding:.9rem 1rem;background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:10px;margin-bottom:1.2rem}
.cnt-rgpd-row{
  display:flex;align-items:center;gap:.75rem;
  -webkit-tap-highlight-color:transparent
}
.cnt-rgpd-copy{
  flex:1;min-width:0;font-size:.82rem;color:var(--muted);
  line-height:1.65;pointer-events:none;user-select:none;
  transition:color .38s cubic-bezier(.22,1,.36,1),text-shadow .08s
}
.cnt-rgpd-link{color:var(--cyan);text-decoration:none;pointer-events:auto}
.cnt-rgpd-link:hover{text-decoration:underline}
.cnt-rgpd-row.is-rgpd-on .cnt-rgpd-copy{color:rgba(244,244,252,.92)}
.cnt-rgpd-toggle{
  position:relative;display:inline-flex;flex-shrink:0;
  padding:0;border:none;background:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent
}
.cnt-rgpd-toggle .nft-track{
  position:relative;display:flex;align-items:center;
  width:56px;height:30px;padding:3px;border-radius:999px;box-sizing:border-box;
  background:linear-gradient(135deg,rgba(18,14,28,.94) 0%,rgba(28,10,38,.9) 100%);
  border:2px solid rgba(34,211,238,.22);
  box-shadow:inset 0 0 0 1px rgba(61,139,240,.12),inset 0 0 10px rgba(0,0,0,.35);
  transition:border-color 380ms cubic-bezier(.22,1,.36,1),box-shadow 380ms cubic-bezier(.22,1,.36,1),background 380ms cubic-bezier(.22,1,.36,1);
  overflow:hidden
}
.cnt-rgpd-toggle .nft-tube{
  position:absolute;inset:3px;border-radius:999px;pointer-events:none;opacity:0;
  background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,transparent 38%,rgba(34,211,238,.08) 52%,rgba(61,139,240,.1) 100%);
  box-shadow:none;transition:opacity 80ms ease
}
.cnt-rgpd-toggle .nft-thumb{
  position:relative;z-index:1;flex-shrink:0;
  width:20px;height:20px;margin-left:0;border-radius:50%;box-sizing:border-box;
  background:linear-gradient(160deg,rgba(72,58,90,.95) 0%,rgba(54,38,72,.95) 100%);
  border:1px solid rgba(61,139,240,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:margin-left 380ms cubic-bezier(.22,1,.36,1),background 380ms cubic-bezier(.22,1,.36,1),box-shadow 380ms cubic-bezier(.22,1,.36,1)
}
.cnt-rgpd-toggle .nft-glow-outer{
  position:absolute;inset:-10px;border-radius:999px;pointer-events:none;opacity:0;
  background:radial-gradient(ellipse at 35% 50%,rgba(34,211,238,.22) 0%,rgba(61,139,240,.16) 42%,transparent 72%);
  filter:blur(8px);transition:opacity 200ms ease
}
.cnt-rgpd-toggle.nft-effect--cyan{
  --nft-c-neon:#22d3ee;--nft-c-glow:#8af2ee;
  --nft-c-border:rgba(34,211,238,.22);--nft-c-dim:rgba(34,211,238,.35);
  --nft-c-on:rgba(10,20,32,.88);--nft-c-text:rgba(244,244,252,.94)
}
.cnt-rgpd-toggle.is-on .nft-track{
  background:linear-gradient(135deg,rgba(8,18,30,.92) 0%,rgba(32,10,42,.88) 100%);
  border-color:rgba(34,211,238,.58);
  box-shadow:0 0 0 1px rgba(61,139,240,.22),0 0 10px rgba(61,139,240,.12),inset 0 0 12px rgba(61,139,240,.1)
}
.cnt-rgpd-toggle.is-on .nft-thumb{
  margin-left:auto;
  background:linear-gradient(145deg,#22d3ee 0%,#5ee4e8 46%,#3d8bf0 100%);
  border-color:rgba(61,139,240,.28);
  box-shadow:0 0 10px rgba(34,211,238,.44),0 0 16px rgba(61,139,240,.3),inset 0 0 4px rgba(255,255,255,.12)
}
.cnt-rgpd-toggle.is-lit .nft-tube{
  opacity:1;
  box-shadow:0 0 4px var(--nft-c-neon),0 0 11px var(--nft-c-glow),0 0 20px rgba(61,139,240,.22),inset 0 0 8px rgba(255,255,255,.1)
}
.cnt-rgpd-toggle.is-lit .nft-glow-outer{opacity:1}
.cnt-rgpd-toggle.is-lit + .cnt-rgpd-copy,
.cnt-rgpd-row.is-rgpd-on .cnt-rgpd-copy{
  color:var(--nft-c-text);
  text-shadow:
    0 0 3px rgba(34,211,238,.5),
    0 0 9px rgba(138,242,238,.38),
    0 0 14px rgba(61,139,240,.24),
    0 0 22px rgba(61,139,240,.12)
}
.cnt-rgpd-toggle.is-flicker .nft-tube{
  opacity:calc(.3 + var(--nft-flick,1) * .7);
  box-shadow:0 0 calc(4px * var(--nft-flick,1)) var(--nft-c-neon),0 0 calc(14px * var(--nft-flick,1)) var(--nft-c-glow),0 0 calc(11px * var(--nft-flick,1)) rgba(61,139,240,.2)
}
.cnt-rgpd-toggle:focus-visible .nft-track{
  outline:2px solid rgba(34,211,238,.55);outline-offset:3px
}
@media(prefers-reduced-motion:reduce){
  .cnt-rgpd-toggle .nft-thumb,.cnt-rgpd-toggle .nft-tube,.cnt-rgpd-toggle .nft-track{transition:none!important}
}
/* ─── Contact page — layout horizontal ─── */
.page-contact .cnt-section{padding-top:clamp(2.5rem,5vw,3.5rem)}
.cnt-info-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:clamp(1.8rem,3.5vw,2.5rem)}
.cnt-info-bar .card-pad{padding:1.4rem 1.5rem}
.cnt-info-bar h3{font-family:var(--display);font-weight:300;font-size:1.05rem;margin:0 0 .55rem}
.cnt-info-bar p{font-size:.84rem;line-height:1.65;margin:0}
.cnt-info-bar .info-list{gap:.85rem}
.cnt-form-shell{
  position:relative;border-radius:var(--radius-lg,16px);
  border:1px solid var(--line);
  /* Opaque dès le haut — pas de wash transparent qui lave le titre */
  background:linear-gradient(165deg,#12152a 0%,#0c0e1f 42%,#080a16 100%);
  box-shadow:0 18px 56px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.04)
}
.cnt-form-shell::after{
  content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;z-index:0;
  background:var(--grad-aurora);-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:.14
}
.cnt-form-shell > *{position:relative;z-index:1}
.cnt-form-head{margin-bottom:1.6rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line-2)}
.cnt-form-head .eyebrow{color:var(--cyan);letter-spacing:.1em}
.cnt-form-head h2{font-family:var(--display);font-weight:300;font-size:clamp(1.25rem,2.2vw,1.5rem);margin:0 0 .35rem;color:var(--text)}
.cnt-form-head p{font-size:.84rem;color:var(--muted);margin:0;line-height:1.7;max-width:72ch}
.cnt-form-essential{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.25rem}
/* Accordéon préférences */
.cnt-accordion{
  margin-top:.25rem;border:1px solid var(--line);border-radius:14px;
  background:rgba(255,255,255,.02);overflow:hidden
}
.cnt-accordion-trigger{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1rem 1.15rem;cursor:pointer;list-style:none;
  transition:background .22s,border-color .22s
}
.cnt-accordion-trigger::-webkit-details-marker{display:none}
.cnt-accordion-trigger::marker{content:''}
.cnt-accordion-text{display:flex;flex-direction:column;gap:.2rem;min-width:0;text-align:left}
.cnt-accordion-label{
  font-family:var(--display);font-weight:400;font-size:.78rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--text)
}
.cnt-accordion-fac{font-weight:300;text-transform:none;letter-spacing:.04em;color:var(--muted);font-size:.72rem}
.cnt-accordion[open]{border-color:rgba(34,211,238,.28);box-shadow:0 0 0 1px rgba(34,211,238,.08)}
.cnt-accordion[open] .cnt-accordion-label{color:var(--cyan)}
.cnt-accordion-hint{font-size:.78rem;color:var(--muted);line-height:1.45}
.cnt-accordion-icon{
  flex-shrink:0;width:28px;height:28px;border-radius:8px;
  border:1px solid var(--line-2);position:relative;
  transform-origin:center center;
  transition:transform .3s,border-color .25s,background .25s
}
.cnt-accordion-icon::before{
  content:'';position:absolute;inset:0;
  background:var(--cyan);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square' d='M2.5 6h7M6 2.5v7'/%3E%3C/svg%3E") center/10px 10px no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square' d='M2.5 6h7M6 2.5v7'/%3E%3C/svg%3E") center/10px 10px no-repeat
}
.cnt-accordion-icon::after{content:none;display:none}
.cnt-accordion[open] .cnt-accordion-icon{
  transform:rotate(45deg);
  border-color:rgba(34,211,238,.35);background:rgba(34,211,238,.06)
}
.cnt-accordion-trigger:hover{background:rgba(61,139,240,.05)}
.cnt-accordion-trigger:focus-visible{outline:2px solid rgba(34,211,238,.4);outline-offset:-2px}
.cnt-accordion-panel{
  display:flex;flex-direction:column;gap:1rem;
  padding:0 1.15rem 1.25rem;border-top:1px solid var(--line-2)
}
.cnt-accordion:not([open]) .cnt-accordion-panel{display:none}
.cnt-accordion[open] .cnt-accordion-panel{padding-top:1.15rem}
.cnt-accordion-panel > .cnt-field{margin-bottom:0}
.cnt-palette-intro{font-size:.82rem;color:var(--muted);margin:0 0 1rem;line-height:1.7}
/* Préférences visuelles — sélecteurs premium */
.cnt-visual-prefs{
  margin-top:0;margin-bottom:0;padding-top:0
}
.cnt-visual-prefs > .cnt-lbl-form--col{
  display:block;margin-top:0;margin-bottom:.35rem
}
.cnt-vis-grid{
  display:grid;grid-template-columns:1fr;gap:1rem;
  padding-top:.5rem
}
.cnt-vis-field{margin-bottom:0;gap:.4rem;min-width:0}
.cnt-vis-picker{
  position:relative;display:flex;align-items:center;gap:.7rem;
  min-height:48px;padding:.72rem .9rem;border-radius:12px;cursor:pointer;
  background:linear-gradient(165deg,rgba(61,139,240,.05) 0%,rgba(0,0,0,.32) 55%,rgba(7,11,22,.92) 100%);
  border:1px solid var(--line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 6px 22px rgba(0,0,0,.22);
  transition:border-color .28s,background .28s,box-shadow .28s,transform .28s
}
.cnt-vis-picker:hover{
  border-color:rgba(34,211,238,.38);
  background:linear-gradient(165deg,rgba(34,211,238,.06) 0%,rgba(61,139,240,.04) 100%,rgba(7,11,22,.94) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 28px rgba(0,0,0,.28),0 0 20px rgba(34,211,238,.06)
}
.cnt-vis-picker:focus-within{
  border-color:rgba(34,211,238,.5);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 0 1px rgba(34,211,238,.14),0 0 28px color-mix(in srgb,var(--vis-color,var(--cyan)) 18%,transparent)
}
.cnt-vis-dot{
  width:24px;height:24px;border-radius:50%;flex-shrink:0;
  border:2px solid rgba(255,255,255,.2);
  box-shadow:0 0 0 1px rgba(0,0,0,.35),0 0 16px color-mix(in srgb,var(--vis-color,var(--cyan)) 42%,transparent);
  transition:background .25s,box-shadow .25s,transform .25s
}
.cnt-vis-picker:hover .cnt-vis-dot{transform:scale(1.06)}
.cnt-vis-hex{
  flex:1;font-family:var(--mono);font-size:.76rem;color:var(--text);
  letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.cnt-vis-inp{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;border:none;padding:0}
.cnt-form-feedback{
  margin-top:1.25rem;padding:1.15rem 1.35rem;border-radius:12px;
  font-size:.88rem;line-height:1.65
}
.cnt-form-feedback--success{
  background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.22);
  border-left:3px solid var(--cyan);color:var(--text)
}
.cnt-form-feedback--error{
  background:rgba(248,113,113,.06);border:1px solid rgba(248,113,113,.22);
  color:#fca5a5
}
.cnt-inp--invalid{border-color:rgba(248,113,113,.55)!important;background:rgba(248,113,113,.06)!important}
.cnt-inp--invalid:focus{border-color:rgba(248,113,113,.7)!important;background:rgba(248,113,113,.08)!important}
.cnt-form-feedback--error a{color:#fecaca;text-decoration:underline}
.cnt-form-feedback--error a:hover{color:#fff}
.cnt-form-block{margin-bottom:0}
.cnt-form-grid{display:grid;gap:1rem;margin-bottom:0}
.cnt-form-grid--core{grid-template-columns:repeat(2,1fr)}
.cnt-form-grid--identity{grid-template-columns:repeat(2,1fr)}
.cnt-form-grid--plans{grid-template-columns:repeat(3,1fr);align-items:start}
.cnt-form-grid--palette{grid-template-columns:1fr;max-width:420px}
.cnt-form-grid .cnt-field{margin-bottom:0}
.cnt-form-grid--plans .cnt-checks{gap:.4rem}
.cnt-form-grid--plans .cnt-check-lbl{font-size:.8rem;padding:.4rem .55rem}
.cnt-checks-grid--4{grid-template-columns:repeat(4,1fr)}
.cnt-checks-grid--opts{grid-template-columns:repeat(4,1fr)}
.cnt-form-footer{
  margin-top:1.5rem;padding-top:1.5rem;
  border-top:1px solid var(--line-2)
}
.cnt-rgpd-bar{
  display:flex;flex-wrap:wrap;align-items:center;gap:1.15rem 1.5rem;
  padding:1.15rem 1.25rem;border-radius:14px;
  background:rgba(255,255,255,.03);border:1px solid var(--line)
}
.cnt-rgpd-bar--info{align-items:flex-start}
.cnt-rgpd-note{
  flex:1;min-width:min(100%,240px);margin:0;
  font-size:.78rem;line-height:1.55;color:var(--muted)
}
.cnt-rgpd-bar .cnt-rgpd-row{flex:1;min-width:min(100%,240px);margin:0}
.cnt-rgpd-bar .cnt-submit-btn{margin-left:auto;flex-shrink:0}
.btn-poda--submit .btn-poda-face,
.hero .btn-poda.btn-poda--primary .btn-poda-face,
.hero-cta-row .btn-poda.btn-poda--primary .btn-poda-face,
.rlz-conv-banner .btn-poda.btn-poda--primary .btn-poda-face,
.rlz-row-foot .btn-poda.btn-poda--primary .btn-poda-face{
  min-height:46px;padding:0 1.45rem;font-size:.92rem;
  background:linear-gradient(180deg,#0f1f28 0%,#050a0e 48%,#0c2430 100%);
  border-color:rgba(34,211,238,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 16px rgba(34,211,238,.12),0 0 22px rgba(61,139,240,.06),0 3px 10px rgba(0,0,0,.22)
}
.rlz-row-foot .btn-poda.btn-poda--ghost .btn-poda-face{
  min-height:46px;padding:0 1.25rem;font-size:.92rem
}
.btn-poda--submit:hover .btn-poda-face,.btn-poda--submit:focus-visible .btn-poda-face,
.hero .btn-poda.btn-poda--primary:hover .btn-poda-face,.hero .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
.hero-cta-row .btn-poda.btn-poda--primary:hover .btn-poda-face,.hero-cta-row .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
.rlz-conv-banner .btn-poda.btn-poda--primary:hover .btn-poda-face,.rlz-conv-banner .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
.rlz-row-foot .btn-poda.btn-poda--primary:hover .btn-poda-face,.rlz-row-foot .btn-poda.btn-poda--primary:focus-visible .btn-poda-face{
  border-color:rgba(34,211,238,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 20px rgba(34,211,238,.18),0 0 28px rgba(34,211,238,.08),0 4px 12px rgba(0,0,0,.2)
}
.btn-poda--submit .g-outer,
.hero .btn-poda.btn-poda--primary .g-outer,
.rlz-conv-banner .btn-poda.btn-poda--primary .g-outer,
.rlz-row-foot .btn-poda.btn-poda--primary .g-outer{filter:blur(3px);max-height:52px}
.btn-poda--submit .g-mid,
.hero .btn-poda.btn-poda--primary .g-mid,
.rlz-conv-banner .btn-poda.btn-poda--primary .g-mid,
.rlz-row-foot .btn-poda.btn-poda--primary .g-mid{filter:blur(3px);max-height:50px}
.btn-poda--submit .g-bright,
.hero .btn-poda.btn-poda--primary .g-bright,
.rlz-conv-banner .btn-poda.btn-poda--primary .g-bright,
.rlz-row-foot .btn-poda.btn-poda--primary .g-bright{filter:blur(2px);max-height:48px}
.btn-poda--submit .g-thin,
.hero .btn-poda.btn-poda--primary .g-thin,
.rlz-conv-banner .btn-poda.btn-poda--primary .g-thin,
.rlz-row-foot .btn-poda.btn-poda--primary .g-thin{max-height:46px}
.hero .btn-poda.btn-poda--primary,
.rlz-conv-banner .btn-poda.btn-poda--primary,
.rlz-row-foot .btn-poda.btn-poda--primary{display:inline-flex;width:auto;max-width:100%}
.rlz-row-foot .rlz-row-actions .btn-poda.btn-poda--primary,
.rlz-row-foot .rlz-row-actions .btn-poda.btn-poda--ghost{display:flex;flex:1;min-width:min(100%,9.5rem);width:auto}
.rlz-row-foot .rlz-row-actions .btn-poda .btn-poda-face{width:100%;justify-content:center}
.rlz-conv-banner .btn-poda.btn-poda--primary .btn-poda-face{min-width:min(100%,15rem);justify-content:center}
.btn-poda--submit.btn-lg .btn-poda-face,
.hero .btn-poda.btn-lg .btn-poda-face,
.rlz-conv-banner .btn-poda.btn-lg .btn-poda-face,
.rlz-row-foot .btn-poda.btn-lg .btn-poda-face{
  min-height:46px;padding-inline:1.45rem;font-size:.92rem
}
.cnt-form-submit-row{margin-top:0;justify-content:flex-start}
.cnt-form-submit-row .btn-poda{flex-shrink:0;width:auto;max-width:100%}
/* Partenaire — formulaire largeur contact (surtout mobile) */
.page-partenariat .partner-form.cnt-form-shell{
  max-width:min(860px,100%);margin:2rem auto 0;text-align:left
}
.page-partenariat .partner-form{
  display:flex;flex-direction:column;gap:1rem
}
.page-partenariat .partner-form .field.cnt-field{margin-bottom:0}
.page-partenariat .partner-form-footer{
  margin-top:.5rem;padding-top:0;border-top:none;
  display:flex;flex-direction:column;align-items:center;gap:.85rem
}
.page-partenariat .partner-form-submit.btn-poda{
  display:inline-flex;width:auto;max-width:100%
}
.page-partenariat .partner-form-submit .btn-poda-face{
  flex:none;width:auto;min-width:min(100%,19rem);justify-content:center;min-height:46px
}
.page-partenariat .partner-form-note{
  margin:0;text-align:center;font-size:.82rem;color:var(--muted);line-height:1.65
}
@media(max-width:860px){
  .page-partenariat .partner-form .cnt-form-grid--core{grid-template-columns:1fr}
  /* Mobile : retirer l’encart .cta-block — titre sur fond page, formulaire type contact */
  .page-partenariat #rejoindre .cta-block{
    background:transparent!important;
    border:none!important;
    border-radius:0!important;
    box-shadow:none!important;
    padding:0!important;
    margin:0!important;
    text-align:left
  }
  .page-partenariat #rejoindre .cta-block .eyebrow{
    margin-bottom:.85rem!important;display:inline-flex!important
  }
  .page-partenariat #rejoindre .cta-block .display{
    max-width:none;margin:0 0 1rem;text-align:left;font-size:clamp(1.65rem,6vw,2.2rem)
  }
  .page-partenariat #rejoindre .cta-block .lead{
    max-width:none;margin:0 0 1.5rem;text-align:left
  }
  .page-partenariat .partner-form.cnt-form-shell{
    margin:0;max-width:100%;width:100%
  }
}
@media(min-width:720px){
  .cnt-form-submit-row{justify-content:flex-end}
}
@media(min-width:640px){
  .cnt-vis-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1100px){
  .cnt-form-grid--plans{grid-template-columns:1fr 1fr}
  .cnt-checks-grid--4,.cnt-checks-grid--opts{grid-template-columns:repeat(2,1fr)}
  .cnt-info-bar{grid-template-columns:1fr}
}
@media(max-width:560px){
  .cnt-checks-grid--4,.cnt-checks-grid--opts{grid-template-columns:1fr}
  .cnt-rgpd-bar{
    flex-direction:column;align-items:stretch;gap:1rem;
    padding:1rem
  }
  .cnt-rgpd-bar .cnt-rgpd-row{min-width:0;width:100%}
  .cnt-rgpd-bar .cnt-submit-btn{
    margin-left:0;width:100%;max-width:100%;display:flex
  }
  .cnt-rgpd-bar .btn-poda--submit .btn-poda-face{
    width:100%;min-width:0;justify-content:center;
    white-space:normal;padding-inline:1rem;font-size:.88rem
  }
  .cnt-rgpd-bar .btn-poda-arrow{display:none}
  .page-partenariat .partner-form{
    gap:1.45rem
  }
  .page-partenariat .partner-form.cnt-form-shell{
    max-width:none;width:100%;margin-inline:0
  }
  .page-partenariat .partner-form.card-pad{
    padding:1.55rem clamp(1.05rem,4.2vw,1.45rem)
  }
  .page-partenariat .partner-form .cnt-field-box{
    padding:1.15rem 1.15rem
  }
  .page-partenariat .partner-form .cnt-ta{
    min-height:160px
  }
  .page-partenariat .partner-form-submit{
    width:100%;max-width:100%;display:flex
  }
  .page-partenariat .partner-form-submit .btn-poda-face{
    width:100%;min-width:0;justify-content:center;
    white-space:normal;padding-inline:1rem;font-size:.88rem
  }
  .page-partenariat .partner-form-submit .btn-poda-arrow{display:none}
  .plan-feat-q{font-size:.82rem;gap:.55rem;align-items:flex-start}
  .plan-feat-q .check{margin-top:.12rem}
  .plan-feat-q .pm{margin-top:0;align-self:flex-start}
}
@media(max-width:860px){
  .cnt-layout{grid-template-columns:1fr}
  .cnt-form-row{grid-template-columns:1fr}
  .cnt-checks-grid{grid-template-columns:1fr}
  .cnt-form-grid--core,.cnt-form-grid--identity{grid-template-columns:1fr}
  .cnt-form-grid--plans{grid-template-columns:1fr}
}

/* ---------- Stat strip ---------- */
.stat-strip{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}
.stat-cell{padding:clamp(1.5rem,3vw,2.2rem) clamp(1rem,2vw,1.8rem);border-right:1px solid var(--line);
  text-align:center;transition:background .25s}
.stat-cell:hover{background:rgba(34,211,238,.05)}
[data-theme="light"] .stat-cell:hover{background:rgba(90,107,196,.09)}
.stat-cell:last-child{border-right:none}
.stat-cell .n{
  font-family:var(--display);font-weight:200;font-size:clamp(1.3rem,2.4vw,1.9rem);
  letter-spacing:-.02em;line-height:1.2;
  /* shrink-to-text : dégradé calé sur le libellé (pas la card) — sans max-width qui clippe les glyphes */
  display:inline-block;width:fit-content;max-width:100%;margin-inline:auto;
  padding-inline:.04em; /* évite rognage 1re/dernière lettre sous background-clip (WebKit) */
  box-sizing:content-box;
  background-image:linear-gradient(92deg,#ffffff 0%,#e8fffe 10%,#8af2ee 32%,#22d3ee 55%,#2563eb 78%,#1e3a6e 100%);
  background-size:100% 100%;background-repeat:no-repeat;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-text-fill-color:transparent;
  box-decoration-break:clone;-webkit-box-decoration-break:clone
}
/* Desktop : <br> masqué mais espace conservé (espace avant <br> dans le HTML) */
.stat-cell .n br{display:none}
.stat-cell .l{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:.5rem}
@media(max-width:560px){
  .stat-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .stat-cell{padding:1.15rem .7rem;min-width:0;overflow:visible}
  .stat-cell .n{
    font-size:clamp(1.05rem,5.2vw,1.45rem);
    overflow:visible;overflow-wrap:normal;word-break:normal;
    max-width:none
  }
  .stat-cell .n br{display:inline}
  .stat-cell .l{font-size:.68rem;letter-spacing:.1em;line-height:1.35;overflow-wrap:anywhere}
  .stat-cell:nth-child(2){border-right:none}
  .stat-cell:nth-child(1),.stat-cell:nth-child(2){border-bottom:1px solid var(--line)}
}
[data-theme="light"] .stat-cell .n{
  background-image:linear-gradient(92deg,#05060d 0%,#1e3a6e 28%,#2563eb 52%,#22d3ee 78%,#8af2ee 100%)
}

/* ---------- Sector accent panel ---------- */
.sa-visual{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:1.1rem;text-align:center;min-height:300px;border-radius:var(--radius-lg);overflow:hidden;
  border:1px solid var(--line);background:var(--bg-2);padding:2.4rem 2rem}
.sa-visual::before{content:"";position:absolute;inset:0;z-index:0;
  background:radial-gradient(85% 85% at 50% 100%,var(--sa-glow,rgba(61,139,240,.22)),transparent 65%)}
.sa-icon{position:relative;z-index:1;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;
  font-size:1.6rem;color:var(--text);border:1px solid var(--line-2);background:var(--glass);
  box-shadow:0 0 30px -8px var(--sa-glow,rgba(61,139,240,.4))}
.sa-num{position:absolute;bottom:-.4rem;right:.5rem;font-family:var(--display);font-weight:100;
  font-size:clamp(5rem,11vw,8rem);letter-spacing:-.05em;line-height:1;
  background:var(--grad-aurora);-webkit-background-clip:text;background-clip:text;color:transparent;
  opacity:.22;pointer-events:none;user-select:none;z-index:0}
.sa-tags{position:relative;z-index:1;display:flex;gap:.45rem;flex-wrap:wrap;justify-content:center;max-width:320px}
.sa-tags .tag{margin:0}
.sa-metric{position:relative;z-index:1;margin-top:.4rem;padding:.7rem 1.1rem;border-radius:14px;
  border:1px solid var(--line);background:rgba(255,255,255,.03);min-width:200px}
.sa-metric .k{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan)}
.sa-metric .v{font-family:var(--display);font-weight:300;font-size:1.05rem;color:var(--text);margin-top:.2rem}
@media(max-width:760px){.sa-visual{min-height:220px}}

.ss-feats{list-style:none;margin:var(--sec-block-lg) 0 0;padding:0;display:flex;flex-direction:column;gap:calc(var(--sec-stack) * 1.45)}
.ss-feats li{display:flex;gap:.6rem;font-size:.88rem;color:var(--muted)}
.ss-feats li::before{content:"✦";color:var(--cyan);flex-shrink:0}
.ss-feats li strong{color:var(--text);font-weight:600}

/* ---------- CTA Shift — modèle universel (prism + parallaxe douce) ---------- */
@keyframes cta-shift-aurora{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:.88;transform:scale(1.04)}}
@keyframes cta-shift-glow{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:.72;transform:scale(1.06)}}
.cta-shift{width:100%;max-width:920px;margin:0 auto;padding-inline:clamp(.5rem,2vw,1rem)}
.cta-shift__panel{
  --cs-mx:0;--cs-my:0;--cs-tilt:0;
  position:relative;overflow:hidden;text-align:center;
  padding:clamp(2.5rem,5.2vw,3.35rem) clamp(1.6rem,4vw,2.6rem);
  border-radius:22px;
  border:1px solid color-mix(in srgb,var(--cyan-2) 14%,var(--line));
  background:linear-gradient(168deg,rgba(10,15,28,.94) 0%,rgba(7,9,18,.9) 48%,rgba(10,12,24,.96) 100%);
  box-shadow:
    0 24px 60px rgba(0,0,0,.44),
    0 0 0 1px rgba(34,211,238,.1),
    inset 0 0 0 1px rgba(255,255,255,.035),
    inset 0 1px 0 rgba(34,211,238,.05);
  transition:border-color .45s,box-shadow .45s
}
.cta-shift__panel::before{
  content:'';position:absolute;inset:10px;border-radius:14px;pointer-events:none;
  border:1px solid rgba(34,211,238,.14);
  box-shadow:inset 0 0 28px rgba(34,211,238,.05);
  opacity:.9;z-index:1
}
.cta-shift__panel::after{
  content:'';position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;pointer-events:none;z-index:1;
  background:conic-gradient(from 210deg at 50% 50%,rgba(34,211,238,.45),rgba(61,139,240,.32),rgba(22,165,207,.26),rgba(138,242,238,.22),rgba(34,211,238,.28));
  -webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:.34
}
.cta-shift__bg{
  position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:inherit;
  transform:translate(calc(var(--cs-mx) * -12px),calc(var(--cs-my) * -9px)) scale(calc(1 + var(--cs-tilt) * .04));
  transition:transform .5s cubic-bezier(.22,1,.36,1);will-change:transform
}
.cta-shift__bg::before{
  content:'';position:absolute;inset:-8%;border-radius:inherit;
  background:
    radial-gradient(ellipse 50% 42% at 18% 28%,rgba(34,211,238,.12),transparent 72%),
    radial-gradient(ellipse 46% 38% at 82% 72%,rgba(61,139,240,.09),transparent 74%),
    radial-gradient(ellipse 55% 45% at 52% 12%,rgba(34,211,238,.12),transparent 70%);
  animation:cta-shift-aurora 20s ease-in-out infinite
}
.cta-shift__orb{
  position:absolute;width:38%;height:38%;border-radius:50%;filter:blur(44px);mix-blend-mode:screen;opacity:.82;
  transition:transform .45s cubic-bezier(.22,1,.36,1);will-change:transform
}
.cta-shift__orb--1{
  top:4%;left:6%;background:rgba(34,211,238,.18);
  transform:translate(calc(var(--cs-mx) * 28px),calc(var(--cs-my) * 20px))
}
.cta-shift__orb--2{
  bottom:-2%;right:4%;background:rgba(61,139,240,.14);
  transform:translate(calc(var(--cs-mx) * -22px),calc(var(--cs-my) * -16px))
}
.cta-shift__frame{position:absolute;inset:0;pointer-events:none;z-index:2;border-radius:inherit}
.cta-shift__notch{
  position:absolute;width:22px;height:22px;border:2px solid transparent;opacity:.7;
  transition:opacity .4s
}
.cta-shift__notch--tl{top:14px;left:14px;border-top-color:rgba(34,211,238,.6);border-left-color:rgba(34,211,238,.6)}
.cta-shift__notch--tr{top:14px;right:14px;border-top-color:rgba(34,211,238,.5);border-right-color:rgba(34,211,238,.5)}
.cta-shift__notch--bl{bottom:14px;left:14px;border-bottom-color:rgba(61,139,240,.5);border-left-color:rgba(61,139,240,.5)}
.cta-shift__notch--br{bottom:14px;right:14px;border-bottom-color:rgba(22,165,207,.42);border-right-color:rgba(22,165,207,.42)}
.cta-shift__glow{
  position:absolute;inset:8% 12%;border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(ellipse at calc(50% + var(--cs-mx) * 18%) calc(40% + var(--cs-my) * 14%),rgba(34,211,238,.12),rgba(61,139,240,.05) 50%,transparent 74%);
  filter:blur(28px);animation:cta-shift-glow 12s ease-in-out infinite;
  transition:background .45s ease
}
.cta-shift__inner{position:relative;z-index:3}
.cta-shift__inner .eyebrow{margin-bottom:.85rem}
h2.cta-shift__title{
  margin:.25rem auto 1rem;
  font-size:clamp(1.45rem,3.2vw,2.05rem);
  font-weight:200;
  line-height:1.2;
  text-align:center;
  text-wrap:balance
}
.cta-shift__lead{
  color:var(--muted);font-size:clamp(.92rem,1.4vw,1rem);line-height:1.78;
  max-width:52ch;margin:0 auto 1.85rem
}
.cta-shift__actions{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap}
.cta-shift__actions.hero-cta-row{margin-top:clamp(1rem,2.5vw,1.4rem);justify-content:center}
@media(hover:hover){
  .cta-shift__panel:hover{
    border-color:color-mix(in srgb,var(--cyan-2) 28%,var(--line));
    box-shadow:0 28px 64px rgba(0,0,0,.48),0 0 48px rgba(34,211,238,.12),inset 0 0 0 1px rgba(34,211,238,.06)
  }
  .cta-shift__panel:hover::after{opacity:.5}
  .cta-shift__panel:hover .cta-shift__notch{opacity:.92}
  .cta-shift-btn:hover{transform:translateY(-2px)}
  .cta-shift-btn:hover::before,.cta-shift-btn.is-active::before{width:100%;opacity:1}
}
@media(max-width:560px){
  .cta-shift__notch{width:18px;height:18px}
  .cta-shift__actions{flex-direction:column;align-items:stretch;max-width:20rem;margin-inline:auto}
  .cta-shift-btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .cta-shift__bg,.cta-shift__orb,.cta-shift__bg::before,.cta-shift__glow{animation:none;transition:none;transform:none!important}
  .cta-shift-btn:hover{transform:none}
}

/* ===== CARD STACK ===== */
.cs-stage{position:relative;height:clamp(360px,48vw,440px);perspective:1100px;overflow:visible;margin:0}
/* Desktop : laisser déborder les cartes voisines (pas de coupe wrap) */
.section:has(#csStage),
.section:has(#csStage) > .wrap{overflow:visible}
.cs-card{position:absolute;left:50%;top:50%;width:clamp(290px,46vw,500px);height:clamp(300px,38vw,360px);border-radius:20px;background:#0c1128;border:1px solid rgba(61,139,240,.18);transform:translate(-50%,-50%);transition:transform .48s cubic-bezier(.22,1,.36,1),opacity .3s,box-shadow .3s;will-change:transform;overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.45)}
.cs-card.cs-active{box-shadow:0 24px 64px rgba(0,0,0,.6),0 0 0 1px rgba(61,139,240,.35)}
.cs-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s cubic-bezier(.22,1,.36,1);opacity:.45}
.cs-card.cs-active .cs-img{transform:scale(1.04)}
.cs-overlay{position:absolute;inset:0;background:linear-gradient(170deg,rgba(5,8,28,.62) 0%,rgba(5,8,28,.82) 55%,rgba(5,8,28,.97) 100%)}
/* spotlight lumière souris */
.cs-spot{position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit;background:radial-gradient(500px at var(--mx,50%) var(--my,50%),rgba(61,139,240,.18) 0%,rgba(34,211,238,.06) 40%,transparent 70%);opacity:0;transition:opacity .35s}
.cs-card:hover .cs-spot{opacity:1}
.cs-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:0;padding-block:clamp(.22rem,.45vw,.38rem);padding-inline:clamp(1.4rem,2.5vw,2rem);box-sizing:border-box}
.cs-badge{width:48px;height:48px;background:linear-gradient(135deg,rgba(61,139,240,.35),rgba(34,211,238,.18));border:1px solid rgba(61,139,240,.55);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--cyan);flex-shrink:0;margin:0;backdrop-filter:blur(6px);box-shadow:0 0 16px rgba(61,139,240,.25)}
.cs-badge svg{width:22px;height:22px}
.cs-card-title{font-family:var(--display);font-size:clamp(1.05rem,1.8vw,1.35rem);font-weight:600;color:#fff;margin:clamp(.896rem,1.575vw,1.134rem) 0 0;line-height:1.25;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.cs-card-desc{font-size:clamp(.78rem,.92vw,.86rem);color:rgba(255,255,255,.68);line-height:1.65;margin:clamp(.665rem,1.155vw,.826rem) 0 0;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.cs-tags{
  display:flex;flex-direction:column;align-items:center;gap:.4rem;
  margin:clamp(.896rem,1.575vw,1.134rem) 0 0;width:100%;max-width:100%
}
.cs-tags-row{
  display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;
  gap:.4rem;max-width:100%
}
.cs-tags-row .cs-tag{flex:0 1 auto;min-width:0}
.cs-nav{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-top:0}
.cs-dots{display:flex;gap:.45rem;align-items:center}
.cs-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.22);border:none;cursor:pointer;padding:0;transition:background .2s,transform .2s}
.cs-dot.cs-on{background:#5a6bc4;box-shadow:0 0 10px rgba(90,107,196,.4);transform:scale(1.35)}
.cs-arrow{width:34px;height:34px;border-radius:50%;border:1px solid rgba(34,211,238,.28);background:rgba(5,8,28,.55);color:rgba(160,185,220,.78);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s,background .2s,box-shadow .2s;box-shadow:0 0 0 1px rgba(34,211,238,.06)}
.cs-arrow:hover{border-color:rgba(61,139,240,.42);color:#fff;background:linear-gradient(118deg,rgba(8,10,22,.88) 0%,rgba(34,211,238,.10) 42%,rgba(61,139,240,.08) 100%);box-shadow:0 0 0 1px rgba(34,211,238,.12),0 0 16px rgba(34,211,238,.12)}
@media(max-width:560px){
  /* Carrousel : clip X sans padding bot extra (rythme = --section-py) */
  .section:has(#csStage) > .wrap{
    overflow-x:clip;overflow-y:visible;padding-bottom:0
  }
  .section:has(#csStage) .sec-foot,
  .section:has(#csStage) .cs-nav{
    position:relative;z-index:2;overflow:visible;padding-bottom:0
  }
  .cs-stage{
    height:400px;overflow:visible;perspective:900px;touch-action:pan-y;
    margin-inline:auto;max-width:100%
  }
  .cs-card{
    height:340px;width:min(300px,88vw);will-change:auto;
    left:50%;top:50%;border-radius:18px;
    transform:translate(-50%,-50%)
  }
  .cs-card.cs-active{box-shadow:0 16px 40px rgba(0,0,0,.5),0 0 0 1px rgba(61,139,240,.35)}
  .cs-card-title{margin-top:.595rem;font-size:1.05rem}
  .cs-card-desc{margin-top:.42rem;font-size:.8rem;line-height:1.55}
  .cs-tags{margin-top:.56rem}
  .cs-tag{font-size:.62rem;padding:.18rem .55rem;letter-spacing:.03em}
}
@media(max-width:430px){
  .cs-stage{height:380px}
  .cs-card{height:320px;width:min(292px,90vw)}
  .cs-tag{font-size:.58rem;padding:.16rem .48rem}
}
/* ========================== */

/* ---------- Reveal on scroll — désactivé (évite sauts layout hero / nav au chargement) ---------- */
html.js .reveal,
html.js .reveal.in{
  opacity:1;transform:none;filter:none;transition:none
}

/* ---------- Misc ---------- */
.divider{height:1px;background:linear-gradient(90deg,transparent,var(--line-2),transparent);margin-block:clamp(3rem,7vw,5rem)}
.badge-soft{display:inline-flex;align-items:center;gap:.5em;padding:.4em .9em;border-radius:999px;
  font-size:.76rem;border:1px solid var(--line);background:var(--glass);color:var(--muted)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.98rem,2.45vw,1.96rem);align-items:center}
.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:calc(var(--sec-stack) * 1.45)}
.checklist li{display:flex;gap:.7rem;font-size:.95rem;color:rgba(244,244,252,.85)}
.checklist .check{margin-top:.15rem}

/* ---------- Aurora text — dégradé animé (heroes + « Alma » uniquement) ---------- */
.aurora-text.aurora-flow,
.aurora-flow{
  background-image:var(--aurora-grad);
  background-size:200% 100%;
  background-repeat:repeat;
  background-position:0% 50%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
  animation:auroraFlow var(--aurora-flow-dur) linear infinite;
}
/* Hero h1 : titre coloré seul → bloc pleine largeur = un dégradé sur toutes les lignes */
h1.display>.aurora-text.aurora-flow:only-child{
  display:block;
  width:100%;
  max-width:100%;
}
/* Titres partiels (texte + span coloré) : inline */
h2 .aurora-text.aurora-flow,
h1.display .aurora-text.aurora-flow:not(:only-child){
  display:inline;
  width:auto;
  max-width:none;
}
@keyframes auroraFlow{
  0%{background-position:200% 50%}
  100%{background-position:0% 50%}
}

/* ---------- Floating hero orbs ---------- */
.hero{isolation:isolate}
.hero .wrap{position:relative;z-index:1}
.hero-orbs{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.hero-orb{position:absolute;border-radius:50%;filter:blur(64px);opacity:.5;will-change:transform}
.hero-orb.a{width:420px;height:420px;background:radial-gradient(circle,rgba(34,211,238,.5),transparent 70%);top:-130px;left:-70px;animation:floatA 17s ease-in-out infinite}
.hero-orb.b{width:360px;height:360px;background:radial-gradient(circle,rgba(61,139,240,.38),transparent 70%);top:-40px;right:-60px;animation:floatB 21s ease-in-out infinite}
.hero-orb.c{width:300px;height:300px;background:radial-gradient(circle,rgba(138,242,238,.32),transparent 70%);bottom:-150px;left:34%;animation:floatC 19s ease-in-out infinite}
@keyframes floatA{50%{transform:translate(60px,42px)}}
@keyframes floatB{50%{transform:translate(-52px,30px)}}
@keyframes floatC{50%{transform:translate(40px,-34px)}}

/* ---------- 3D tilt + magnetic ---------- */
[data-tilt]{transition:transform .25s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}

/* ---------- Alma Showcase — unified site preview frame ---------- */
.alma-sw{
  --sw-accent:var(--cyan);
  --sw-img:none;
  border-radius:14px;border:1px solid rgba(34,211,238,.28);
  background:rgba(10,15,28,.72);
  overflow:hidden;
  box-shadow:0 0 0 1px rgba(34,211,238,.08),0 14px 44px rgba(34,211,238,.1),inset 0 1px 0 rgba(255,255,255,.04);
  transition:border-color .4s,box-shadow .4s,transform .4s cubic-bezier(.22,1,.36,1)
}
.alma-sw--live{display:flex;flex-direction:column}
.alma-sw__chrome{
  display:flex;align-items:center;gap:6px;padding:.5rem .7rem;
  border-bottom:1px solid var(--line-2);background:rgba(5,8,28,.88)
}
.alma-sw__chrome i{width:8px;height:8px;border-radius:50%;font-style:normal;flex-shrink:0}
.alma-sw__chrome i:nth-child(1){background:#ff5f57}
.alma-sw__chrome i:nth-child(2){background:#febc2e}
.alma-sw__chrome i:nth-child(3){background:#28c840}
.alma-sw__url{
  flex:1;margin-left:.35rem;font-family:ui-monospace,Consolas,monospace;font-size:.62rem;
  color:rgba(226,228,245,.82);letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.alma-sw__live{
  font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:var(--sw-accent);
  padding:.18em .5em;border-radius:4px;border:1px solid color-mix(in srgb,var(--sw-accent) 50%,transparent);
  background:color-mix(in srgb,var(--sw-accent) 12%,transparent)
}
.alma-sw__screen{position:relative;aspect-ratio:16/10;background:#080a14;overflow:hidden}
.alma-sw--live .alma-sw__hero,.alma-sw--live .alma-sw__ui{display:none}
.alma-sw__hero{
  position:absolute;inset:0;background:var(--sw-img) center/cover no-repeat;
  transform:scale(1.02);transition:transform .6s cubic-bezier(.22,1,.36,1)
}
.alma-sw__hero::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(5,8,28,.15) 0%,rgba(5,8,28,.55) 55%,rgba(5,8,28,.88) 100%),
              radial-gradient(ellipse 80% 60% at 70% 10%,color-mix(in srgb,var(--sw-accent) 22%,transparent),transparent 60%)
}
.alma-sw__ui{
  position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;padding:.65rem .7rem .55rem;gap:.4rem
}
.alma-sw__nav{display:flex;gap:.35rem;align-items:center}
.alma-sw__nav span{height:4px;border-radius:3px;background:rgba(255,255,255,.12)}
.alma-sw__nav span:nth-child(1){width:18%;background:var(--sw-accent);opacity:.75}
.alma-sw__nav span:nth-child(2){width:12%}
.alma-sw__nav span:nth-child(3){width:10%}
.alma-sw__nav span:nth-child(4){width:8%;margin-left:auto;opacity:.35}
.alma-sw__hero-block{
  flex:1;min-height:38%;border-radius:8px;margin-top:.2rem;
  border:1px solid color-mix(in srgb,var(--sw-accent) 25%,transparent);
  background:linear-gradient(135deg,color-mix(in srgb,var(--sw-accent) 18%,transparent),rgba(5,8,28,.4));
  box-shadow:inset 0 0 24px color-mix(in srgb,var(--sw-accent) 12%,transparent)
}
.alma-sw__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;margin-top:auto}
.alma-sw__cards span{
  height:22px;border-radius:5px;background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.05)
}
.alma-sw__cards span:first-child{border-color:color-mix(in srgb,var(--sw-accent) 30%,transparent);background:color-mix(in srgb,var(--sw-accent) 10%,transparent)}
@media(hover:hover){
  .alma-sw:hover{border-color:rgba(34,211,238,.5);
    box-shadow:0 0 0 1px rgba(34,211,238,.18),0 18px 48px rgba(34,211,238,.14),0 0 28px rgba(61,139,240,.1)}
  .alma-sw:hover .alma-sw__hero{transform:scale(1.06)}
}

/* ---------- Orbit carousel (homepage) ---------- */
.orbit-section{position:relative;height:calc(var(--vh-lock,100svh) + 900px);margin-bottom:0}
.orbit-section--snap{height:auto}
.orbit-pin{
  position:sticky;top:0;min-height:var(--vh-lock,100svh);height:auto;
  display:flex;align-items:center;justify-content:center;
  overflow:visible;
  /* Même rythme vertical que .section / .sc-section */
  padding-top:var(--section-py-top);
  padding-bottom:var(--section-py-bottom)
}
/* Plus de wash plein fond — halo discret derrière les cards uniquement */
.orbit-pin::before{content:none;display:none}
.orbit-head{position:relative;z-index:2;text-align:center;align-items:center}
.orbit-head .display,.orbit-head .sub,.orbit-head .lead{margin:0;max-width:52ch}
.orbit-section .orbit-pin > .wrap{--orbit-rail-gap:clamp(.55rem,1.2vw,.95rem)}
.orbit-body{display:flex;flex-direction:column;align-items:center;width:100%;gap:var(--orbit-rail-gap)}
.orbit-foot{
  display:flex;flex-direction:column;align-items:center;gap:.4rem;width:100%;
  margin-top:0;flex-shrink:0;min-height:5.5rem
}
.orbit-stage{
  position:relative;z-index:2;height:clamp(240px,36vw,340px);perspective:1400px;
  perspective-origin:50% 50%;overflow:visible;width:100%
}
.orbit-stage.is-over-center{cursor:pointer}
/* Halo retiré du stage (rectangle clipé) — glow doux sur la card centrée */
.orbit-stage::before{content:none;display:none}
.orbit-rail{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  transform-style:preserve-3d;z-index:1
}
.orbit-card{
  position:absolute;width:min(72vw,420px);flex-shrink:0;
  transform:translateX(var(--oc-tx,0)) translateZ(var(--oc-tz,0)) rotateY(var(--oc-rz,0deg)) scale(var(--oc-sc,1));
  transform-origin:center center;
  transform-style:preserve-3d;transition:opacity .12s linear;
  will-change:transform,opacity;pointer-events:none;
  backface-visibility:hidden;-webkit-backface-visibility:hidden
}
.orbit-card.is-center{pointer-events:auto;z-index:3;cursor:pointer}
/* Triggers plein écran — curseur + hover uniquement sur la card centrée */
.orbit-card.is-center .rlz-orbit-poster,
.orbit-card.is-center .alma-sw__open,
.orbit-card.is-center .alma-sw__chrome{
  pointer-events:auto;position:relative;z-index:8;touch-action:manipulation;cursor:pointer
}
.orbit-card:not(.is-center),
.orbit-card:not(.is-center) .rlz-orbit-poster,
.orbit-card:not(.is-center) .alma-sw__open{
  cursor:default
}
.orbit-card .rlz-preview-wrap--poster,
.orbit-card.is-center .rlz-preview-wrap--poster{
  pointer-events:none
}
.orbit-card.is-center .rlz-preview-wrap--poster .rlz-orbit-poster{
  pointer-events:auto;cursor:pointer
}
/* Hover JS (.is-fs-hot) : le :hover CSS rate en 3D pendant le scrub */
.orbit-card.is-center .alma-sw__open:hover,
.orbit-card.is-center .alma-sw__open:focus-visible,
.orbit-card.is-center .alma-sw__open.is-fs-hot{
  color:var(--cyan-2);border-color:rgba(34,211,238,.45);background:rgba(34,211,238,.08)
}
.orbit-card.is-center.is-fs-over,
.orbit-card.is-center.is-fs-over .rlz-orbit-poster,
.orbit-card.is-center.is-fs-over .alma-sw__open{
  cursor:pointer
}
/* Halo léger circulaire autour de la card active (pas un rectangle coupé) */
.orbit-card.is-center::after{
  content:'';position:absolute;left:50%;top:50%;z-index:-1;pointer-events:none;
  width:118%;height:118%;transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(ellipse 52% 48% at 50% 50%,
    rgba(34,211,238,.32) 0%,
    rgba(61,139,240,.14) 32%,
    transparent 66%);
  filter:blur(26px);opacity:.9
}
[data-theme="light"] .orbit-card.is-center::after{
  background:radial-gradient(ellipse 52% 48% at 50% 50%,
    rgba(61,139,240,.26) 0%,
    rgba(34,211,238,.12) 34%,
    transparent 66%);
  filter:blur(24px);opacity:.8
}
.orbit-card__link{display:block;color:inherit;text-decoration:none}
.orbit-card:not(.is-center) .alma-sw--live{pointer-events:none}
.orbit-card:not(.is-center) .rlz-preview-wrap,
.orbit-card:not(.is-center) .rlz-preview-iframe{pointer-events:none}
/* Poster mode : wrap ne capture pas (laisse le bouton / fallback stage) */
.orbit-card.is-center .rlz-preview-wrap:not(.rlz-preview-wrap--poster),
.orbit-card.is-center .rlz-preview-iframe{pointer-events:auto}
.orbit-card.is-center .rlz-preview-wrap--poster{pointer-events:none}
.orbit-section.orbit-section--snap{height:auto!important;overflow-x:clip;overflow-y:visible}
.orbit-section--snap .orbit-pin{
  position:relative!important;height:auto!important;min-height:0!important;
  padding-block:var(--section-py-top) var(--section-py-bottom);
  overflow:visible;min-width:0;max-width:100%
}
.orbit-section--snap .orbit-stage{
  height:auto!important;perspective:none;overflow:hidden;padding-block:.55rem;
  width:100%;max-width:100%;min-width:0;box-sizing:border-box
}
.orbit-section--snap .orbit-rail{
  position:relative!important;inset:auto;display:flex;align-items:stretch;
  justify-content:flex-start;gap:.85rem;
  overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;
  --orbit-card-w:min(92vw,400px);
  padding:0.85rem max(0.85rem, calc((100% - var(--orbit-card-w)) / 2));
  scroll-padding-inline:max(0.85rem, calc((100% - var(--orbit-card-w)) / 2));
  -webkit-overflow-scrolling:touch;
  scroll-behavior:auto;overscroll-behavior-x:contain;
  touch-action:pan-x pinch-zoom;pointer-events:auto;
  mask-image:none;-webkit-mask-image:none;
  transform-style:flat;cursor:grab;
  width:100%;max-width:100%;min-width:0;box-sizing:border-box;
  scrollbar-width:none;-ms-overflow-style:none
}
.orbit-section--snap .orbit-rail::-webkit-scrollbar{display:none;width:0;height:0}
.orbit-section--snap .orbit-rail.is-dragging{cursor:grabbing;scroll-snap-type:none}
.orbit-section--snap .orbit-card{
  position:relative!important;left:auto!important;top:auto!important;
  transform:none!important;opacity:1!important;will-change:auto;visibility:visible!important;
  flex:0 0 min(92vw,400px);
  width:min(92vw,400px);
  max-width:min(92vw,400px);
  box-sizing:border-box;padding:0;
  scroll-snap-align:center;scroll-snap-stop:always;
  pointer-events:auto;touch-action:pan-x
}
.orbit-section--snap .orbit-card .alma-sw,
.orbit-section--snap .orbit-card .rlz-preview-wrap{
  touch-action:pan-x;pointer-events:none
}
.orbit-section--snap .orbit-card:not(.is-center) .rlz-preview-iframe{
  visibility:hidden;pointer-events:none
}
/* Chrome / plein écran toujours cliquables ; iframe ne vole pas le swipe */
.orbit-section--snap .alma-sw__chrome,
.orbit-section--snap .alma-sw__open{
  pointer-events:auto;position:relative;z-index:6;touch-action:manipulation;cursor:pointer
}
.orbit-section--snap .rlz-orbit-poster{
  pointer-events:auto!important;position:relative;z-index:8;touch-action:manipulation;cursor:pointer
}
.orbit-section--snap .orbit-card,
.orbit-section--snap .orbit-card .rlz-orbit-poster,
.orbit-section--snap .orbit-card .alma-sw__open{
  cursor:pointer
}
@media(max-width:860px){
  .orbit-card .rlz-preview-wrap,
  .orbit-card .rlz-preview-iframe,
  .orbit-card.is-center .rlz-preview-wrap,
  .orbit-card.is-center .rlz-preview-iframe{pointer-events:none}
  .orbit-section .alma-sw__chrome,
  .orbit-section .alma-sw__open,
  .orbit-section--snap .alma-sw__chrome,
  .orbit-section--snap .alma-sw__open{pointer-events:auto;position:relative;z-index:6;touch-action:manipulation}
  .orbit-section .rlz-orbit-poster,
  .orbit-section--snap .rlz-orbit-poster{pointer-events:auto!important;position:relative;z-index:8;touch-action:manipulation}
  .orbit-section .orbit-card .alma-sw,
  .orbit-section .orbit-card .rlz-preview-wrap{touch-action:pan-x;pointer-events:none}
  .orbit-section .orbit-card:not(.is-center) .rlz-preview-iframe{visibility:hidden;pointer-events:none}
}

/* ---------- Live iframe previews (réalisations + orbit) ---------- */
.rlz-preview-wrap{
  width:100%;overflow:hidden;position:relative;background:#080a14;
  height:var(--rlz-preview-h,auto);flex:1;min-height:clamp(160px,28vw,320px);cursor:default
}
.rlz-preview-wrap.is-focused{outline:1px solid rgba(34,211,238,.35);outline-offset:-1px}
.rlz-preview-scaler{overflow:hidden;position:relative;line-height:0;width:100%;height:100%}
.rlz-preview-wrap--orbit{--rlz-preview-h:auto;min-height:clamp(140px,22vw,260px)}
.alma-sw__screen.rlz-preview-wrap{aspect-ratio:16/10;flex:none;height:auto;min-height:clamp(160px,28vw,320px)}
.orbit-card .alma-sw__screen.rlz-preview-wrap--orbit{aspect-ratio:16/10;flex:none;height:auto;min-height:0}

/* Orbit accueil — posters image (pas d'iframe) ; plein écran via ↗ / clic */
.rlz-preview-wrap--poster{
  cursor:pointer;padding:0;overflow:hidden;position:relative;
  background:#0a0e18
}
.rlz-orbit-poster{
  position:absolute;inset:0;z-index:2;display:block;border:0;padding:0;margin:0;
  width:100%;height:100%;cursor:default;appearance:none;-webkit-appearance:none;
  background:#0a0e18;overflow:hidden
}
.rlz-orbit-poster:focus-visible{
  outline:2px solid var(--cyan,#22d3ee);outline-offset:-2px
}
.rlz-orbit-poster__img{
  position:absolute;inset:0;display:block;
  width:100%;height:100%;max-width:none;min-width:100%;min-height:100%;
  object-fit:cover;object-position:top center;
  transform:scale(1.02);transform-origin:center top;
  filter:none
}
.orbit-card.is-center .rlz-orbit-poster__img{filter:none}
.orbit-card{
  overflow:hidden;isolation:isolate;border-radius:12px
}
.orbit-card .alma-sw{
  overflow:hidden;border-radius:inherit;height:100%
}
.rlz-orbit-hit{
  position:absolute;inset:0;z-index:4;border:0;padding:0;margin:0;
  background:transparent;cursor:pointer;appearance:none;-webkit-appearance:none
}
.rlz-orbit-hit:focus-visible{
  outline:2px solid var(--cyan,#22d3ee);outline-offset:-2px
}

.rlz-preview-iframe{
  display:block;border:none;transform-origin:top left;
  pointer-events:auto;background:#fff;max-width:none
}
.rlz-preview-loading{
  position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;
  background:#080a14;font-family:var(--display);font-size:.62rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--faint);transition:opacity .35s
}
.rlz-preview-loading.gone{opacity:0;pointer-events:none}
.rlz-preview-loading.is-idle{
  text-transform:none;letter-spacing:.06em;font-size:.72rem;font-weight:500;
  color:rgba(180,210,230,.55);background:linear-gradient(160deg,#080a14 0%,#0e1524 55%,#0a1220 100%)
}
.rlz-preview-loading.is-hint{
  text-transform:none;letter-spacing:.04em;font-size:.58rem;line-height:1.55;
  padding:.75rem;text-align:center;flex-direction:column
}
.rlz-preview-clone-ph{
  display:block;width:100%;height:100%;min-height:inherit;
  background:#080a14;pointer-events:none
}
.orbit-card[data-orbit-clone] .rlz-orbit-poster{
  background:linear-gradient(160deg,#0a0e1a 0%,#101828 100%)
}
.orbit-card[data-orbit-clone] .rlz-orbit-poster__img{
  opacity:0
}
.alma-sw__open{
  font-size:.55rem;letter-spacing:.06em;text-transform:uppercase;color:rgba(226,228,245,.78);
  padding:.28em .55em;border-radius:4px;border:1px solid var(--line);
  background:transparent;cursor:default;font-family:inherit;
  transition:border-color .2s,color .2s,background .2s;flex-shrink:0;white-space:nowrap
}
.alma-sw__open::after{content:' Plein écran'}
.page-realisations .alma-sw__open::after{content:' Immersif'}
@media(min-width:640px){
  .alma-sw__open{font-size:.48rem;padding:.32em .65em}
}
@media(max-width:860px){
  /* Plus long, pas plus haut — zone tactile horizontale */
  .alma-sw__open{
    min-height:0;min-width:6.25rem;height:auto;
    padding:.32em .95em;font-size:.52rem;letter-spacing:.05em;
    border-radius:5px;line-height:1.25
  }
  .alma-sw__chrome{gap:6px;padding:.42rem .7rem;min-height:0}
}
.alma-sw__open:hover{color:var(--cyan-2);border-color:rgba(34,211,238,.45);background:rgba(34,211,238,.08)}
/* Flèches chrome preview : jamais (nav = .orbit-nav sous les cards) */
.alma-sw__step{display:none!important}

/* Nav carrousel sous les cards (mobile) */
.orbit-nav{
  display:none;align-items:center;justify-content:center;gap:1.6rem;
  width:100%;margin:.45rem 0 .15rem;padding:0;position:relative;z-index:12;
  pointer-events:auto
}
.orbit-nav[hidden]{display:none!important}
.orbit-nav__btn{
  display:inline-grid;place-items:center;
  width:2.55rem;height:2.55rem;padding:0;margin:0;border-radius:999px;cursor:pointer;
  border:1px solid rgba(34,211,238,.35);background:rgba(5,8,28,.55);
  color:#8af2ee;line-height:0;
  box-shadow:0 0 0 1px rgba(34,211,238,.1),0 6px 18px rgba(0,0,0,.2);
  transition:border-color .25s,background .25s,color .25s,transform .2s;
  pointer-events:auto;position:relative;z-index:13;-webkit-tap-highlight-color:transparent
}
.orbit-nav__btn svg{display:block;width:1.1rem;height:1.1rem;flex-shrink:0}
.orbit-nav__btn:hover,.orbit-nav__btn:focus-visible{
  border-color:rgba(34,211,238,.65);color:#fff;background:rgba(34,211,238,.16)
}
.orbit-nav__btn:active{transform:scale(.96)}
@media(max-width:860px),(hover:none){
  .orbit-section--snap .orbit-nav,
  .orbit-section .orbit-nav{display:flex}
  .orbit-section .orbit-pin > .wrap{--orbit-rail-gap:.7rem;gap:clamp(1.15rem,3.2vw,1.55rem)}
  .orbit-section .orbit-body{gap:.7rem}
  .orbit-section .orbit-foot{gap:.55rem;margin-top:.25rem}
  .orbit-section .orbit-nav{margin-top:.4rem;margin-bottom:.1rem;gap:1.6rem}
  .orbit-section .orbit-stage{padding-block:.7rem}
  .orbit-section .orbit-meta__sector{margin:0}
  .orbit-section .orbit-meta__title{margin:.28rem 0 .35rem}
  .orbit-section .orbit-meta__row{gap:.55rem}
  .orbit-section .orbit-cta{margin-top:.55rem}
}
[data-theme="light"] .orbit-nav__btn{
  border-color:rgba(61,139,240,.35);background:#fff;color:#0a2844;
  box-shadow:0 4px 14px rgba(14,90,114,.12)
}
[data-theme="light"] .orbit-nav__btn:hover,
[data-theme="light"] .orbit-nav__btn:focus-visible{
  border-color:rgba(61,139,240,.6);color:#051320;background:#f3fafb
}

/* ---------- Plein écran démos ---------- */
.rlz-fs{
  position:fixed;inset:0;z-index:10050;display:flex;align-items:stretch;justify-content:center;
  opacity:0;pointer-events:none;transition:opacity .28s ease
}
.rlz-fs.is-open{opacity:1;pointer-events:auto}
body.rlz-fs-open{overflow:hidden}
.rlz-fs__backdrop{position:absolute;inset:0;background:rgba(4,6,14,.88);backdrop-filter:blur(8px);touch-action:none}
.rlz-fs__panel{
  position:relative;z-index:1;display:flex;flex-direction:column;width:min(96vw,1280px);
  height:min(96svh,100%);max-height:96svh;margin:auto;border-radius:14px;border:1px solid rgba(34,211,238,.48);
  background:#05060e;box-shadow:0 0 0 1px rgba(34,211,238,.16),0 24px 80px rgba(0,0,0,.55),0 0 40px rgba(34,211,238,.14),0 0 28px rgba(61,139,240,.1);
  overflow:hidden
}
.rlz-fs__head{
  display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.65rem;
  padding:.65rem .85rem;border-bottom:1px solid var(--line);background:rgba(5,8,28,.95);
  flex-shrink:0
}
.rlz-fs__info{min-width:0;text-align:center;padding-inline:.25rem}
.rlz-fs__url{
  display:block;font-family:ui-monospace,Consolas,monospace;font-size:.56rem;
  letter-spacing:.06em;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.rlz-fs__title{
  margin:.2rem 0 0;font-family:var(--display);font-size:clamp(.95rem,2vw,1.15rem);
  font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.rlz-fs__counter{display:block;margin-top:.2rem;font-size:.58rem;color:var(--muted);letter-spacing:.08em}
.rlz-fs__nav,.rlz-fs__close{
  flex-shrink:0;width:36px;height:36px;border-radius:8px;border:1px solid rgba(34,211,238,.28);
  background:rgba(5,8,28,.7);color:var(--text);font-size:1.2rem;line-height:1;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:0 0 0 1px rgba(34,211,238,.06);
  transition:border-color .2s,color .2s,background .2s,box-shadow .2s
}
.rlz-fs__nav:hover,.rlz-fs__close:hover{
  color:var(--cyan-2);border-color:rgba(34,211,238,.55);background:rgba(34,211,238,.1);
  box-shadow:0 0 0 1px rgba(34,211,238,.14),0 0 16px rgba(34,211,238,.14),0 0 18px rgba(61,139,240,.1)
}
.rlz-fs__nav:disabled{opacity:.28;cursor:not-allowed;pointer-events:none}
.rlz-fs__close{font-size:.85rem;letter-spacing:0}
.rlz-fs__body{
  flex:1 1 auto;min-height:0;background:#fff;overflow:hidden;
  -webkit-overflow-scrolling:touch
}
.rlz-fs__iframe{
  display:block;width:100%;height:100%;min-height:0;border:none;background:#fff;
  /* Laisse le scroll/touch à la démo (pas au parent) */
  touch-action:auto;-webkit-overflow-scrolling:touch
}
@media(max-width:720px){
  .rlz-fs__panel{
    width:100%;height:100%;max-height:100%;
    height:100dvh;max-height:100dvh;border-radius:0;margin:0
  }
  .rlz-fs__iframe{min-height:0;height:100%}
  /* Une seule rangée : ‹ | titre | › | ✕ — flèches alignées entre elles */
  .rlz-fs__head{
    grid-template-columns:auto minmax(0,1fr) auto auto;
    grid-template-areas:"prev info next close";
    gap:.4rem;align-items:center;
    padding:.55rem .65rem;
    padding-top:max(.55rem,env(safe-area-inset-top))
  }
  .rlz-fs__nav--prev{grid-area:prev}
  .rlz-fs__info{grid-area:info;grid-column:auto;grid-row:auto;text-align:center}
  .rlz-fs__nav--next{grid-area:next;grid-column:auto;grid-row:auto;justify-self:auto}
  .rlz-fs__close{grid-area:close;grid-column:auto;grid-row:auto}
}
.orbit-card.is-center .alma-sw{
  border-color:rgba(34,211,238,.5);
  box-shadow:
    0 0 0 1px rgba(34,211,238,.16),
    0 14px 32px rgba(0,0,0,.28),
    0 0 22px rgba(34,211,238,.22)
}
.orbit-card.is-center .alma-sw__chrome{position:relative;z-index:4}
.orbit-progress{
  position:relative;z-index:2;height:2px;border-radius:999px;background:rgba(255,255,255,.08);
  width:100%;max-width:280px;margin:0;overflow:hidden
}
.orbit-progress span{
  display:block;height:100%;width:0;border-radius:inherit;
  background:linear-gradient(90deg,var(--cyan-light),var(--cyan),var(--blue));box-shadow:0 0 12px rgba(34,211,238,.5);
  transition:width .12s linear
}
.orbit-meta{
  position:relative;z-index:2;text-align:center;min-height:0;margin:0
}
.orbit-meta__sector{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin:0}
.orbit-meta__index{display:block;font-size:.68rem;letter-spacing:.04em;color:var(--muted);margin:0 0 .2rem}
.orbit-meta__title{font-family:var(--display);font-weight:400;font-size:clamp(1.1rem,2.2vw,1.45rem);margin:.15rem 0 .25rem}
.orbit-meta__row{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}
.orbit-meta__badge,.orbit-meta__status{
  font-size:.64rem;padding:.22em .7em;border-radius:999px;letter-spacing:.04em
}
.orbit-meta__badge{border:1px solid rgba(34,211,238,.2);color:rgba(160,185,220,.72);background:rgba(5,8,28,.52);box-shadow:none}
.orbit-meta__status{
  border:1px solid rgba(34,211,238,.55);color:#fff;font-weight:600;
  background:linear-gradient(118deg,rgba(12,14,31,.92) 0%,rgba(34,211,238,.18) 42%,rgba(61,139,240,.14) 100%);
  box-shadow:0 0 0 1px rgba(34,211,238,.2),0 6px 18px rgba(34,211,238,.22),0 0 24px rgba(61,139,240,.14)
}
.orbit-cta{position:relative;z-index:2;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:0;padding-bottom:0}
.btn-poda.btn-block{display:flex;width:100%}
.btn-poda.btn-block .btn-poda-face{width:100%}
.btn-poda.btn-lg .btn-poda-face{min-height:54px;padding-inline:2.1rem;font-size:1.05rem}
.btn-poda.btn-sm .btn-poda-face{min-height:44px;padding-inline:1.35rem;font-size:.88rem}

/* ---------- Réalisations — conversion grid ---------- */
.rlz-vault{margin-top:0}
.rlz-vault-filters{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:var(--sec-block-lg)}
.rlz-vault-filters button{padding:.48rem 1.05rem}
.rlz-conv-banner{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem 1.75rem;
  padding:1.35rem 1.5rem 1.45rem;border-radius:16px;margin-block:var(--sec-block-lg);
  border:1px solid rgba(34,211,238,.48);
  background:linear-gradient(118deg,rgba(34,211,238,.06) 0%,rgba(22,165,207,.04) 100%);
  box-shadow:0 0 0 1px rgba(34,211,238,.16),0 6px 18px rgba(34,211,238,.12),0 0 22px rgba(61,139,240,.1)
}
.rlz-conv-banner p{margin:0;font-size:.88rem;color:var(--muted);line-height:1.68;flex:1;min-width:min(100%,280px)}
.rlz-conv-banner strong{color:rgba(244,244,252,.92);font-weight:500}
.rlz-conv-banner .btn{flex-shrink:0;margin:0}
/* Bouton poda encart — dark : ink + cyan/bleu aurora (cohérent FAQ/CTA) */
.rlz-conv-banner .btn-poda.btn-poda--primary .btn-poda-face,
.rlz-row-foot .btn-poda.btn-poda--primary .btn-poda-face{
  background:linear-gradient(180deg,#12182a 0%,#05060d 48%,#0c1424 100%);
  border-color:rgba(34,211,238,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 18px rgba(34,211,238,.2),0 0 28px rgba(61,139,240,.12),0 3px 10px rgba(0,0,0,.28)
}
.rlz-conv-banner .btn-poda.btn-poda--primary:hover .btn-poda-face,
.rlz-conv-banner .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
.rlz-row-foot .btn-poda.btn-poda--primary:hover .btn-poda-face,
.rlz-row-foot .btn-poda.btn-poda--primary:focus-visible .btn-poda-face{
  border-color:rgba(34,211,238,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 24px rgba(34,211,238,.32),0 0 36px rgba(61,139,240,.16),0 4px 12px rgba(0,0,0,.24)
}
.rlz-conv-banner .btn-poda.btn-poda--primary .g-outer::before,
.rlz-row-foot .btn-poda.btn-poda--primary .g-outer::before{
  background-image:conic-gradient(#000,#3d8bf0 5%,#000 38%,#000 50%,#22d3ee 60%,#000 87%)
}
.rlz-conv-banner .btn-poda.btn-poda--primary .g-mid::before,
.rlz-row-foot .btn-poda.btn-poda--primary .g-mid::before{
  background-image:conic-gradient(rgba(0,0,0,0),#22d3ee,rgba(0,0,0,0) 10%,rgba(0,0,0,0) 50%,#3d8bf0,rgba(0,0,0,0) 60%)
}
.rlz-conv-banner .btn-poda.btn-poda--primary .g-bright::before,
.rlz-row-foot .btn-poda.btn-poda--primary .g-bright::before{
  background-image:conic-gradient(rgba(0,0,0,0) 0%,#8af2ee,rgba(0,0,0,0) 8%,rgba(0,0,0,0) 50%,#5eeaff,rgba(0,0,0,0) 58%)
}
.rlz-conv-banner .btn-poda.btn-poda--primary .g-thin::before,
.rlz-row-foot .btn-poda.btn-poda--primary .g-thin::before{
  background-image:conic-gradient(#05060d,#3d8bf0 5%,#05060d 14%,#05060d 50%,#22d3ee 60%,#05060d 64%)
}
.rlz-row-foot .btn-poda.btn-poda--ghost .btn-poda-face{
  border-color:rgba(34,211,238,.32);
  box-shadow:0 0 0 1px rgba(34,211,238,.08),0 0 14px rgba(34,211,238,.08)
}
.rlz-row-foot .btn-poda.btn-poda--ghost:hover .btn-poda-face,
.rlz-row-foot .btn-poda.btn-poda--ghost:focus-visible .btn-poda-face{
  border-color:rgba(34,211,238,.55);
  box-shadow:0 0 0 1px rgba(34,211,238,.14),0 0 18px rgba(34,211,238,.14),0 0 20px rgba(61,139,240,.1)
}
.rlz-showcase-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.4rem);align-items:stretch
}
.rlz-showcase-item{
  display:flex;flex-direction:column;gap:.85rem;
  border-radius:16px;border:1px solid rgba(34,211,238,.28);padding:1rem;
  background:rgba(10,15,28,.55);
  box-shadow:0 0 0 1px rgba(34,211,238,.06);
  transition:border-color .35s,box-shadow .35s,transform .35s,background .35s
}
.rlz-showcase-item--feat{grid-column:span 2}
.rlz-showcase-item--cta{
  grid-column:span 1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;border-style:dashed;border-color:rgba(34,211,238,.4);padding:2rem 1.5rem;
  box-shadow:0 0 0 1px rgba(34,211,238,.06),0 0 18px rgba(34,211,238,.06)
}
.rlz-showcase-body{flex:1;display:flex;flex-direction:column;gap:.5rem}
.rlz-showcase-body h3{font-family:var(--display);font-weight:400;font-size:1.08rem;margin:0;line-height:1.25}
.rlz-showcase-body p{font-size:.82rem;color:var(--muted);margin:0;line-height:1.6;flex:1}
.rlz-showcase-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.15rem}
.rlz-showcase-chips span{
  font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;padding:.2em .55em;border-radius:999px;
  border:1px solid rgba(34,211,238,.2);color:rgba(160,185,220,.72);background:rgba(5,8,28,.52)
}
.rlz-showcase-foot{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;margin-top:.35rem}
.rlz-showcase-plan{
  font-size:.64rem;padding:.22em .65em;border-radius:999px;
  border:1px solid rgba(34,211,238,.38);color:var(--cyan);background:rgba(34,211,238,.08);
  box-shadow:0 0 0 1px rgba(34,211,238,.08)
}
.rlz-showcase-link{
  font-family:var(--display);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--cyan);text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;
  transition:color .25s,gap .25s
}
.rlz-showcase-link:hover{color:#fff;gap:.55rem}
.rlz-showcase-item.is-hidden{display:none}
.rlz-showcase-item--cta .rlz-soon-icon{
  width:3.2rem;height:3.2rem;border-radius:12px;display:grid;place-items:center;
  font-size:1.6rem;font-weight:300;color:var(--cyan);margin-bottom:.5rem;
  border:1px dashed rgba(34,211,238,.45);background:rgba(34,211,238,.06);
  box-shadow:0 0 16px rgba(34,211,238,.1)
}
@media(hover:hover){
  .rlz-showcase-item:not(.rlz-showcase-item--cta):hover{
    border-color:rgba(34,211,238,.55);
    background:linear-gradient(118deg,rgba(8,10,22,.55) 0%,rgba(34,211,238,.08) 42%,rgba(61,139,240,.06) 100%);
    box-shadow:0 0 0 1px rgba(34,211,238,.18),0 16px 44px rgba(34,211,238,.12),0 0 28px rgba(61,139,240,.1);
    transform:translateY(-3px)
  }
}
@media(max-width:980px){
  .rlz-showcase-grid{grid-template-columns:repeat(2,1fr)}
  .rlz-showcase-item--feat{grid-column:span 2}
}
@media(max-width:720px){
  .rlz-vault-filters{
    flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;
    -webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;
    padding-block:.35rem .4rem;margin-inline:calc(-1 * clamp(.35rem,2vw,.85rem));
    padding-inline:clamp(.35rem,2vw,.85rem);
    scrollbar-width:none
  }
  .rlz-vault-filters::-webkit-scrollbar{display:none}
  .rlz-vault-filters button{flex-shrink:0;scroll-snap-align:start;min-height:44px;padding-inline:1rem}
}
@media(max-width:560px){
  .rlz-showcase-grid{grid-template-columns:1fr;gap:1rem}
  .rlz-showcase-item--feat{grid-column:span 1}
  .rlz-showcase-item{padding:.85rem;gap:.75rem}
  .rlz-showcase-body p{display:none}
  .rlz-showcase-body h3{font-size:1rem}
  .rlz-showcase-foot{width:100%;margin-top:.15rem}
  .rlz-showcase-link{
    min-height:44px;padding:.5rem 0;margin:-.5rem 0;
    align-items:center;margin-left:auto
  }
  .rlz-showcase-item--cta{padding:1.75rem 1.25rem}
  .rlz-showcase-item--cta .btn{width:100%;max-width:20rem;min-height:48px;display:inline-flex;align-items:center;justify-content:center}
  .rlz-conv-banner{flex-direction:column;align-items:center;text-align:center}
  .rlz-conv-banner p{min-width:0}
  .rlz-conv-banner .btn{width:100%;max-width:20rem;min-height:48px;text-align:center}
  .alma-sw__url{font-size:.52rem}
}

/* ---------- Footer ---------- */
.footer{position:relative;margin-top:4rem;overflow:hidden;
  background:transparent}
.footer-hills{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;display:block}
.footer > .wrap{position:relative;z-index:2;background:transparent;pointer-events:auto}
.footer-inner{display:grid;grid-template-columns:1fr 2fr;gap:3rem;padding-block:clamp(3rem,6vw,4.5rem)}
.footer-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.6rem}
.footer-cols > div{min-width:0}
.footer-mail{color:var(--cyan);letter-spacing:.02em;font-size:.88rem}
.footer h4,.footer .footer-col-title{font-family:var(--display);font-weight:500;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;margin:0 0 1rem}
.footer-cols > div:nth-child(1) h4,
.footer-cols > div:nth-child(2) h4,
.footer-cols > div:nth-child(3) h4,
.footer-cols > div:nth-child(4) h4,
.footer-cols > div:nth-child(1) .footer-col-title,
.footer-cols > div:nth-child(2) .footer-col-title,
.footer-cols > div:nth-child(3) .footer-col-title,
.footer-cols > div:nth-child(4) .footer-col-title{color:var(--cyan);text-shadow:0 0 14px rgba(34,211,238,.4)}
.footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}
/* ── Footer nav links — Wave hover (wlnk-) ── */
.footer ul{overflow:visible}
.footer ul li{overflow:visible}
.footer ul a{
  position:relative;display:inline-block;font-size:.85rem;white-space:nowrap;
  color:var(--muted);width:fit-content;overflow:visible;
  transition:color .32s ease,text-shadow .32s ease;
  -webkit-tap-highlight-color:transparent
}
@media(hover:hover){
  .footer-cols > div:nth-child(1) ul a:hover{
    color:#eefcfc;
    text-shadow:0 0 10px rgba(138,242,238,.32),0 0 20px rgba(138,242,238,.1)
  }
  .footer-cols > div:nth-child(2) ul a:hover{
    color:#eefcfd;
    text-shadow:0 0 10px rgba(34,211,238,.28),0 0 22px rgba(34,211,238,.1)
  }
  .footer-cols > div:nth-child(3) ul a:hover{
    color:#e8f4f8;
    text-shadow:0 0 10px rgba(82,130,232,.34),0 0 20px rgba(82,130,232,.12)
  }
  .footer-cols > div:nth-child(4) ul a:hover{
    color:#f0eaff;
    text-shadow:0 0 10px rgba(167,139,250,.34),0 0 20px rgba(167,139,250,.12)
  }
  .footer-bottom a:hover,
  .footer-bottom a:focus-visible{
    color:rgba(244,244,252,.96);
    text-shadow:0 0 8px rgba(34,211,238,.22)
  }
  .footer-bottom .alma-consent-manage-link:hover,
  .footer-bottom .alma-consent-manage-link:focus-visible{
    color:#8af2ee;
    text-shadow:0 0 10px rgba(34,211,238,.35)
  }
}
.footer ul a:focus-visible{
  color:#eefcfd;
  text-shadow:0 0 10px rgba(34,211,238,.28);
  outline:none
}
.footer ul a.wlnk--tapped{
  color:#eefcfd;
  text-shadow:0 0 10px rgba(34,211,238,.28)
}
.footer ul a .wlnk-canvas{
  position:absolute;left:0;top:100%;
  transform:translateY(-5px);
  pointer-events:none;display:block;
  filter:blur(.15px)
}
@media(prefers-reduced-motion:reduce){.footer ul a .wlnk-canvas{display:none}}
.footer-bottom{border-top:1px solid var(--line);padding:1.4rem 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  font-size:.8rem;color:var(--faint)}
.footer-bottom a,
.footer-bottom .alma-consent-manage-link{
  transition:color .28s ease,text-shadow .28s ease
}
.footer-bottom .alma-consent-manage-link{
  color:#22d3ee;cursor:pointer;background:none;border:none;padding:0;
  font:inherit;text-decoration:underline;text-underline-offset:.15em
}
/* ---------- Social icons — "Mystic Soul" hover ---------- */
.social{display:flex;gap:.7rem;align-items:center}
.soc{
  --soc-color:#3d8bf0;
  position:relative;width:46px;height:46px;border-radius:14px;flex-shrink:0;
  display:grid;place-items:center;
  border:1px solid var(--line);
  color:var(--muted);
  text-decoration:none;
  transition:transform .4s cubic-bezier(.2,.7,.2,1),color .35s,border-color .35s,box-shadow .4s
}
/* Fond de base via pseudo-élément pour ne pas bloquer le blur */
.soc::before{
  content:"";position:absolute;inset:0;border-radius:13px;z-index:0;
  background:var(--glass);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  transition:background .4s,opacity .4s
}
/* Remplissage couleur de marque au survol */
.soc::after{
  content:"";position:absolute;inset:0;border-radius:13px;z-index:1;opacity:0;
  background:var(--soc-bg,var(--soc-color));
  transition:opacity .35s
}
.soc svg{
  width:21px;height:21px;position:relative;z-index:3;
  transition:transform .4s cubic-bezier(.2,.7,.2,1)
}
/* Hover / focus */
.soc:hover,.soc:focus-visible{
  color:#fff;border-color:transparent;transform:translateY(-5px);outline:none;
  box-shadow:0 12px 28px -6px var(--soc-color),0 0 0 1px rgba(255,255,255,.08) inset
}
.soc:hover::before,.soc:focus-visible::before{background:transparent}
.soc:hover::after,.soc:focus-visible::after{opacity:1}
.soc:hover svg,.soc:focus-visible svg{transform:scale(1.14) rotate(-4deg)}
/* Glow halo derrière le bouton */
.soc:hover{filter:drop-shadow(0 0 10px var(--soc-color))}
/* Couleurs officielles par réseau */
.soc-insta{--soc-color:#d62976;--soc-bg:linear-gradient(45deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5)}
.soc-pin{--soc-color:#e60023;--soc-bg:#e60023}
.soc-in{--soc-color:#0a66c2;--soc-bg:#0a66c2}
.soc-fb{--soc-color:#1877f2;--soc-bg:#1877f2}
/* Nav CTA — même ADN que le logo Alma (fond #0a0f1c, contour dégradé cyan, rx 12) */
.soc.soc-cta{
  --soc-color:#22d3ee;
  width:auto;min-width:5.4rem;height:40px;padding:0 1.35rem;
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--display);font-size:.8rem;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;
  border-radius:12px;border:none;
  background:#0a0f1c;
  color:#22d3ee;
  box-shadow:0 6px 18px -6px rgba(34,211,238,.38);
  transition:box-shadow .4s,color .35s
}

/* ═══════════════════════════════════════════════════════════
   MYSTIC SOUL — canvas wrapper + restyled icon buttons
   ═══════════════════════════════════════════════════════════ */

/* Wrapper: explicit size, NO overflow clip, NO isolation */
.ms-icon-wrapper{
  position:relative;
  display:inline-flex;align-items:center;justify-content:center;
  width:46px;height:46px;
  overflow:visible
}
/* Nav CTA wrapper — contour dégradé logo + même hauteur que .brand-mark (40px) */
.ms-icon-wrapper--cta{
  width:auto;height:40px;min-width:5.4rem;
  padding:1.5px;
  border-radius:12px;
  background:linear-gradient(135deg,#8af2ee 0%,#22d3ee 52%,#5282e8 100%);
  box-shadow:0 6px 18px -6px rgba(34,211,238,.38);
  transition:box-shadow .45s,transform .45s cubic-bezier(.34,1.56,.64,1)
}
@keyframes msBreathCta{
  0%,100%{box-shadow:0 0 0 1px rgba(138,242,238,.35),0 0 16px rgba(34,211,238,.42),0 0 36px rgba(22,165,207,.12),inset 0 0 14px rgba(34,211,238,.08)}
  50%    {box-shadow:0 0 0 1px rgba(138,242,238,.55),0 0 26px rgba(34,211,238,.58),0 0 52px rgba(22,165,207,.18),inset 0 0 22px rgba(34,211,238,.12)}
}
/* Flame canvas: deepest layer, no blend mode */
.ms-flame-canvas{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  z-index:1;pointer-events:none;overflow:visible
}
/* Wave canvas: screen-blend against dark footer background */
.ms-wave-canvas{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  z-index:2;mix-blend-mode:screen;pointer-events:none;overflow:visible
}

/* ── Restyle .soc to match original dark icon-btn ── */
.ms-icon-wrapper .soc{
  /* Fill wrapper exactly and stay centred over canvases */
  position:absolute!important;inset:0!important;
  z-index:3;
  width:auto!important;height:auto!important;
  /* Dark opaque bg — lets flame show through when transparent on hover */
  background:rgba(6,8,22,.96)!important;
  border-color:rgba(0,180,255,.12)!important;
  color:rgba(130,185,220,.55)!important;
  /* Reset conflicting soc effects */
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
  transition:background .55s,border-color .55s,color .45s,
             transform .45s cubic-bezier(.34,1.56,.64,1)!important
}
/* Disable backdrop-filter — it clips canvas pixels to the button shape */
.ms-icon-wrapper .soc::before{
  background:linear-gradient(175deg,rgba(0,190,255,.10) 0%,rgba(0,220,255,.04) 55%,transparent 100%)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  opacity:0;transition:opacity .55s
}
/* Remove brand colour fill completely */
.ms-icon-wrapper .soc::after{ display:none!important }

/* ── Hover: semi-transparent so flame shows through ── */
@keyframes msBreath{
  0%,100%{box-shadow:0 0 0 1px rgba(0,200,255,.22),0 0 14px rgba(0,200,255,.30),0 0 38px rgba(0,160,255,.08),inset 0 0 12px rgba(0,180,255,.06)}
  50%    {box-shadow:0 0 0 1px rgba(0,220,255,.42),0 0 24px rgba(0,220,255,.50),0 0 58px rgba(0,180,255,.14),inset 0 0 20px rgba(0,200,255,.11)}
}
.ms-icon-wrapper:hover .soc,
.ms-icon-wrapper:focus-within .soc{
  background:rgba(3,7,16,.30)!important;
  border-color:rgba(0,210,255,.40)!important;
  color:rgba(200,248,255,.95)!important;
  transform:scale(1.05)!important;
  filter:none!important;
  animation:msBreath 2.6s ease-in-out infinite!important
}
.ms-icon-wrapper:hover .soc::before,
.ms-icon-wrapper:focus-within .soc::before{opacity:1}

/* SVG scale on hover matches original — no rotation, no brand colour */
.ms-icon-wrapper:hover .soc svg,
.ms-icon-wrapper:focus-within .soc svg{
  transform:scale(1.09)!important;
  fill:rgba(200,248,255,.95)     /* fallback for non-currentColor browsers */
}

/* Fallback avant init JS Mystic Soul */
.soc.soc-cta:hover,
.soc.soc-cta:focus-visible{
  transform:translateY(-1px);color:#8af2ee;filter:none;
  box-shadow:0 10px 28px -6px rgba(34,211,238,.5)
}
.soc.soc-cta:hover::before,
.soc.soc-cta:focus-visible::before{background:#0a0f1c;opacity:1}
.soc.soc-cta:hover::after{display:none}

/* ── Nav CTA — surcharge après styles Mystic Soul génériques ── */
.ms-icon-wrapper.ms-icon-wrapper--cta .soc{
  font-family:var(--display)!important;
  font-size:.8rem!important;font-weight:600!important;
  letter-spacing:.11em!important;text-transform:uppercase!important;
  white-space:nowrap!important;
  border-radius:10.5px!important;border:none!important;
  background:linear-gradient(92deg,#ffffff 0%,#8af2ee 28%,#22d3ee 55%,#2563eb 78%,#1e3a6e 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important
}
.ms-icon-wrapper.ms-icon-wrapper--cta .soc::before{
  background:#0a0f1c!important;opacity:1!important;
  border-radius:10.5px!important
}
.ms-icon-wrapper.ms-icon-wrapper--cta:hover,
.ms-icon-wrapper.ms-icon-wrapper--cta:focus-within{
  box-shadow:0 10px 28px -6px rgba(34,211,238,.55);
  transform:translateY(-1px)
}
.ms-icon-wrapper.ms-icon-wrapper--cta:hover .soc,
.ms-icon-wrapper.ms-icon-wrapper--cta:focus-within .soc{
  background:linear-gradient(92deg,#e8fffe 0%,#8af2ee 32%,#22d3ee 55%,#2563eb 78%,#1e3a6e 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  border-color:transparent!important;
  transform:scale(1.03)!important;
  animation:msBreathCta 2.6s ease-in-out infinite!important
}
.ms-icon-wrapper.ms-icon-wrapper--cta:hover .soc::before,
.ms-icon-wrapper.ms-icon-wrapper--cta:focus-within .soc::before{
  background:rgba(10,15,28,.32)!important;opacity:1!important
}

/* Ensure social row never clips the canvas overflow */
.social{overflow:visible!important}
.newsletter-form{display:flex;gap:.5rem;flex-wrap:wrap}
.newsletter-form input{flex:1;min-width:160px;background:rgba(255,255,255,.04);border:1px solid var(--line);
  border-radius:999px;padding:.7rem 1.1rem;color:var(--text);font-family:inherit;font-size:.86rem}
.newsletter-form input:focus{outline:none;border-color:rgba(34,211,238,.55)}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
  .footer-inner{grid-template-columns:1fr;gap:2rem}
  .manifesto{grid-template-columns:1fr}
}
@media(max-width:860px){
  .footer-cols{grid-template-columns:repeat(2,1fr)}
  :root{--nav-h:68px}
  .nav-links{display:none}
  .nav-burger{display:flex}
  .nav .nav-cta a.btn-desktop{display:none}
  .nav .nav-cta .theme-toggle.btn-desktop{
    display:inline-grid
  }
  .drawer-head .theme-toggle--drawer{display:inline-grid}
  .drawer{backdrop-filter:none;-webkit-backdrop-filter:none}
  .hero-grid{grid-template-columns:1fr}
  .two-col{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .stat-grid{grid-template-columns:1fr 1fr}
  .step{grid-template-columns:auto 1fr;row-gap:.4rem}
  .step .when{grid-column:2}
  /* mobile: drop backdrop blur (heaviest GPU cost) + tilt, keep the glass look via opacity */
  .card,[data-glow],.stat,.nav-links,.pill,.btn-ghost{backdrop-filter:none;-webkit-backdrop-filter:none}
  .card:not(.plan),[data-glow]:not(.plan):not(.opt){background:rgba(18,20,34,.62)}
  .price-grid .card.plan{backdrop-filter:none;-webkit-backdrop-filter:none}
  [data-tilt]{transform:none!important}
  .price-grid{grid-template-columns:1fr}
  .opts-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  :root{--hero-h1:clamp(2.05rem,8vw,2.85rem)}
}
@media(max-width:560px){
  :root{--hero-h1:clamp(1.85rem,7.6vw,2.45rem)}
  .word-morph-wrap{padding-inline:.25rem;overflow:visible;max-width:min(100%,100%);margin-inline:auto}
  .page-index .hero .word-morph{
    font-size:clamp(1rem,4.2vw,1.28rem);line-height:1.22;letter-spacing:-.015em
  }
  .page-index .hero .word-morph .wm-line{
    white-space:normal;text-align:center;overflow-wrap:anywhere;word-break:normal;hyphens:manual;
    top:50%;left:0;right:0;padding-inline:2px
  }
  .page-index .hero .word-morph .wm-line.wm-active{transform:translateY(-50%);opacity:1}
  .page-index .hero .word-morph .wm-line.wm-prev{transform:translateY(calc(-50% - 110%));opacity:0}
  .page-index .hero .word-morph .wm-line.wm-next{transform:translateY(calc(-50% + 110%));opacity:0}
  .page-index .hero .word-morph .wm-viewport{
    height:auto;min-height:2.75em;display:flex;align-items:center;justify-content:center
  }
  .page-index .hero .lead{
    font-size:clamp(.92rem,3.7vw,1.05rem);line-height:1.55;max-width:36ch
  }
  .page-index .hero .hero-proof .prf-text{font-size:.72rem;line-height:1.45}
  /* Titres section : saut avant aurora dans le même flux inline
     (= même interligne que wrap natif ; display:block+margin créait un écart plus large) */
  h2.display br,
  .cta-shift__title br,
  h1.display br{display:none}
  :is(h2.display, .cta-shift__title) .aurora-text{
    display:inline;margin:0;padding:0;line-height:inherit;overflow:visible
  }
  :is(h2.display, .cta-shift__title) .aurora-text::before{
    content:"\A";white-space:pre
  }
  /* Heroes empilés d2 : pas de saut ::before (déjà sur sa propre ligne) */
  :is(
    .ptn-hero-head,
    .tx-hero-head,
    .cnt-hero-head,
    .rlz-hero-head,
    .svc-hero-head,
    .page-secteurs .sc-hero-head,
    .page-faq .tx-hero-head,
    .page-blog .tx-hero-head,
    .page-agence .agence-hero,
    .page-index .hero h1
  ) .display.d2 .aurora-text::before{content:none}
  h1.display,h2.display,.display{
    line-height:1.2;overflow:visible
  }
  /* Heroes empilés : interligne serré sur d1/d2 — ne pas annuler le margin-top du d1 (espace pill) */
  :is(
    .ptn-hero-head,
    .tx-hero-head,
    .cnt-hero-head,
    .rlz-hero-head,
    .svc-hero-head,
    .page-secteurs .sc-hero-head,
    .page-faq .tx-hero-head,
    .page-blog .tx-hero-head,
    .page-agence .agence-hero,
    .page-index .hero h1
  ) .display.d1,
  :is(
    .ptn-hero-head,
    .tx-hero-head,
    .cnt-hero-head,
    .rlz-hero-head,
    .svc-hero-head,
    .page-secteurs .sc-hero-head,
    .page-faq .tx-hero-head,
    .page-blog .tx-hero-head,
    .page-agence .agence-hero,
    .page-index .hero h1
  ) .display.d2{
    line-height:1.12
  }
  :is(
    .ptn-hero-head,
    .tx-hero-head,
    .cnt-hero-head,
    .rlz-hero-head,
    .svc-hero-head,
    .page-secteurs .sc-hero-head,
    .page-faq .tx-hero-head,
    .page-blog .tx-hero-head,
    .page-agence .agence-hero,
    .page-index .hero h1
  ) .display.d2{
    margin-top:.06em
  }
  h1.display{font-size:var(--hero-h1)}
  .page-index .hero h1 .display{font-size:var(--hero-h1);line-height:1.12}
  .sec-head,.sec-head .display{overflow:visible}
  .orbital-host{min-height:520px}
  .orb-card{width:min(248px,80vw)}
  .tcard{width:min(330px,84vw)}
  .manifesto-stats{grid-template-columns:1fr}
  .plan-price .amt{white-space:normal;font-size:clamp(1.75rem,7.5vw,2.3rem)}
  .opt-row{flex-wrap:wrap;gap:.65rem}
  .opt-aside{text-align:left;width:100%}
  .opt-price{white-space:normal;font-size:1.25rem}
  .opt-sub-price{white-space:normal}
  .sa-metric{min-width:0;width:100%;max-width:100%}
  .newsletter-form{flex-direction:column}
  .newsletter-form input{min-width:0;width:100%}
  .glow-grid.feat-grid .svc-wide .svc-body{min-width:0}
  .card-pad{padding:1.35rem 1.15rem}
  .tx-host-aside{width:100%}
  .page-contact .cnt-hero > .wrap,
  .page-tarifs .tx-hero > .wrap,
  .page-realisations .rlz-hero > .wrap{padding-inline:clamp(20px,5vw,32px)}
  .page-partenariat .ptn-hero > .wrap{padding-inline:clamp(20px,5vw,32px)}
  .hero-cta-row,.hero-proof{justify-content:center}
  .lead{max-width:100%}
}
@media(max-width:430px){
  /* iPhone 15 / 15 Pro / Plus (393–430) — phrase morph longue */
  .page-index .hero .word-morph{font-size:clamp(.92rem,3.9vw,1.08rem)}
  .page-index .hero .word-morph .wm-viewport{min-height:2.85em}
  .page-index .hero .word-morph-wrap{margin:.85rem 0;max-width:100%}
  .page-index .hero .hero-proof{margin-top:0!important}
  .page-index .hero .lead{margin-top:.85rem}
  .page-index .hero .hero-cta-row{margin-top:1rem!important}
  .page-index .hero h1 .display:first-child{margin-top:1.1rem}
  .page-index .hero h1 .display:nth-child(2){margin-bottom:0}
}
@media(max-width:390px){
  .page-index .hero .word-morph{font-size:clamp(.88rem,3.8vw,1.02rem)}
  .page-index .hero .word-morph .wm-viewport{min-height:3em}
}
/* ===== SECTION PROPULSER ===== */
.propulser{padding-top:var(--section-py-top);padding-bottom:var(--section-py-bottom)}
.propulser-head{display:flex;flex-direction:column;gap:var(--sec-stack);text-align:center;margin-bottom:0}
.propulser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sec-grid-gap-md)}
.propulser-grid--quad{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.9rem,1.35vw,1.2rem)}
.propulser-grid--quad .propulser-card:nth-child(4) .propulser-icon{animation-delay:2.7s}
.wrap--propulser-quad{max-width:min(1440px,96vw);padding-inline:clamp(14px,2.5vw,28px)}
.propulser-grid--quad .propulser-card{padding:2.5rem clamp(1.25rem,1.6vw,1.75rem) 2.3rem}
.propulser-grid--quad .propulser-desc{max-width:none}
.propulser-grid--quad .propulser-slogan{margin-bottom:var(--sec-block)}
.propulser-card{position:relative;background:rgba(15,18,35,.7);border:1px solid var(--line);border-radius:var(--r);padding:2.6rem 2rem 2.4rem;text-align:center;transition:transform .4s cubic-bezier(.22,1,.36,1),border-color .4s,box-shadow .4s,background .4s;overflow:hidden;backdrop-filter:blur(8px)}
.propulser-card::before{content:"";position:absolute;inset:0;background:linear-gradient(140deg,rgba(34,211,238,.08) 0%,rgba(61,139,240,.05) 100%);opacity:0;transition:opacity .4s;pointer-events:none;z-index:0}
.propulser-card > *{position:relative;z-index:1}
.propulser-card:hover{transform:translateY(-12px);border-color:rgba(34,211,238,.45);box-shadow:0 24px 64px rgba(34,211,238,.16),0 0 0 1px rgba(61,139,240,.14),inset 0 1px 0 rgba(255,255,255,.05)}
.propulser-card:hover::before{opacity:1}
.propulser-eyebrow{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan);margin-bottom:var(--sec-block);display:block;opacity:.8}
.propulser-title{font-family:var(--display);font-weight:500;font-size:1.22rem;color:var(--text);margin:0 0 .32rem}
.propulser-slogan{font-size:.88rem;color:var(--muted);margin:0 0 var(--sec-block-lg);line-height:1.55}
.propulser-icon{width:110px;height:110px;margin:0 auto var(--sec-block-lg);display:flex;align-items:center;justify-content:center;animation:float-icon 4.5s ease-in-out infinite;position:relative}
.propulser-icon::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,rgba(34,211,238,.2),transparent 70%);filter:blur(6px);z-index:0}
.propulser-icon svg{position:relative;z-index:1}
.propulser-card:nth-child(2) .propulser-icon{animation-delay:.9s}
.propulser-card:nth-child(3) .propulser-icon{animation-delay:1.8s}
.propulser-desc{font-size:.87rem;color:var(--muted);line-height:1.8;max-width:30ch;margin:0 auto}
@keyframes float-icon{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media(max-width:1280px){
  .propulser-grid--quad{grid-template-columns:repeat(2,1fr);gap:var(--sec-grid-gap-md)}
  .wrap--propulser-quad{max-width:var(--maxw);padding-inline:clamp(20px,5vw,40px)}
  .propulser-grid--quad .propulser-card{padding:2.6rem 2rem 2.4rem}
  .propulser-grid--quad .propulser-desc{max-width:30ch}
}
@media(max-width:980px){
  .propulser-grid{grid-template-columns:1fr;max-width:min(460px,100%);margin-inline:auto}
  .propulser-grid--quad{grid-template-columns:1fr}
}
/* ============================= */

/* ===== SECTOR CAROUSEL ===== */
.sc-section{padding-top:var(--section-py-top);padding-bottom:var(--section-py-bottom)}
.sx-section{padding-top:var(--section-py-top);padding-bottom:var(--section-py-bottom)}
.sc-outer{position:relative;overflow:hidden;border-radius:2rem;display:flex;flex-direction:column;min-height:580px;border:1px solid var(--line)}
@media(min-width:1024px){.sc-outer{flex-direction:row;aspect-ratio:16/9;min-height:unset;border-radius:2.5rem}}
/* ── Left panel ── */
.sc-left{width:100%;min-height:280px;position:relative;z-index:2;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:3rem 1.5rem;background:linear-gradient(140deg,rgba(34,211,238,.14) 0%,rgba(10,15,28,.95) 55%,rgba(61,139,240,.08) 100%)}
@media(min-width:1024px){.sc-left{width:38%;min-height:unset;border-right:1px solid var(--line)}}
.sc-left::before,.sc-left::after{content:"";position:absolute;left:0;right:0;height:90px;z-index:10;pointer-events:none}
.sc-left::before{top:0;background:linear-gradient(to bottom,#0a0f1c 0%,transparent 100%)}
.sc-left::after{bottom:0;background:linear-gradient(to top,#0a0f1c 0%,transparent 100%)}
.sc-list{position:relative;width:100%;height:64px}
.sc-item{position:absolute;left:50%;transform:translateX(-50%) translateY(0);display:inline-flex;align-items:center;gap:.9rem;padding:.8rem 1.6rem;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:transparent;cursor:pointer;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .5s,background .3s,border-color .3s;white-space:nowrap;user-select:none;-webkit-appearance:none;appearance:none;font-family:inherit}
.sc-item:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.sc-item.is-active{background:#fff;border-color:#fff;z-index:5}
.sc-item .sc-ico{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);transition:color .3s;flex-shrink:0}
.sc-item.is-active .sc-ico{color:#22d3ee}
.sc-item .sc-lbl{font-family:var(--display);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.72);transition:color .3s}
.sc-item.is-active .sc-lbl{color:#06121a;font-weight:500}
.sc-item:not(.is-active):hover{border-color:rgba(255,255,255,.3)}
.sc-item:not(.is-active):hover .sc-lbl{color:rgba(255,255,255,.8)}
.sc-item:not(.is-active):hover .sc-ico{color:rgba(255,255,255,.7)}
/* ── Right panel ── */
.sc-right{flex:1;min-height:380px;position:relative;background:var(--bg-2);display:flex;align-items:center;justify-content:center;padding:2rem;overflow:hidden}
.sc-cards{position:relative;width:100%;max-width:340px;aspect-ratio:4/5}
@media(min-width:1024px){.sc-cards{max-width:100%;height:100%;aspect-ratio:unset}}
.sc-card{position:absolute;inset:0;border-radius:1.5rem;overflow:hidden;border:none;box-shadow:0 0 0 1px rgba(255,255,255,.04);background:var(--bg);transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .55s ease,filter .55s;transform-origin:center;text-decoration:none;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
a.sc-card:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;z-index:25}
.sc-card img{width:100%;height:100%;object-fit:cover;transition:filter .55s ease}
.sc-card.is-active{z-index:20;opacity:1;transform:translateX(0) scale(1) rotate(0deg)}
.sc-card.is-prev{z-index:10;opacity:.38;transform:translateX(-18%) scale(.86) rotate(-3deg)}
.sc-card.is-next{z-index:10;opacity:.38;transform:translateX(18%) scale(.86) rotate(3deg)}
.sc-card.is-hidden{z-index:0;opacity:0;transform:scale(.7);pointer-events:none}
.sc-card:not(.is-active) img{filter:grayscale(1) brightness(.55) blur(1px)}
.sc-overlay{position:absolute;inset-x:0;bottom:0;padding:2rem 1.8rem 2.2rem;background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.35) 55%,transparent 100%);transition:opacity .4s}
.sc-card:not(.is-active) .sc-overlay{opacity:0;pointer-events:none}
.sc-badge{display:inline-flex;align-items:center;gap:.35rem;background:rgba(15,18,35,.9);border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:.22rem .75rem;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.8);margin-bottom:.7rem}
.sc-badge-dot{width:6px;height:6px;border-radius:50%;background:#22d3ee;box-shadow:0 0 8px #22d3ee}
.sc-copy{display:block}
.sc-desc{color:#fff;font-size:1rem;font-weight:300;line-height:1.5;text-shadow:0 2px 8px rgba(0,0,0,.5);margin:0}
.sc-go{
  display:inline-block;margin-top:.7rem;
  font-family:var(--display);font-size:.78rem;font-weight:500;letter-spacing:.04em;
  color:var(--cyan);text-shadow:0 1px 6px rgba(0,0,0,.45);
  transition:transform .25s ease
}
.sc-card.is-active:hover .sc-go,
.sc-card.is-active:focus-visible .sc-go{transform:translateX(4px);color:var(--cyan)}
.sc-cta{text-align:center;margin-top:0;overflow:visible;padding-bottom:0}
@media(max-width:1023px){
  .sc-cards{max-width:280px}
  /* Mobile : tag en haut (pastille centrée), texte + CTA en bas */
  .sc-overlay{
    inset:0;
    display:flex;flex-direction:column;justify-content:space-between;align-items:center;
    padding:1.15rem 1.15rem 1.35rem;
    background:
      linear-gradient(to bottom,rgba(0,0,0,.55) 0%,transparent 32%),
      linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.35) 40%,transparent 68%)
  }
  .sc-badge{
    margin:0 auto;align-self:center;
    width:fit-content;max-width:100%;box-sizing:border-box;
    display:inline-flex;justify-content:center;align-items:center;gap:.45rem;
    white-space:nowrap;text-align:center;
    letter-spacing:.12em;font-size:.68rem;line-height:1.25;
    padding:.55rem 1.15rem
  }
  .sc-copy{align-self:stretch;width:100%}
  .sc-desc{margin:0;text-align:left}
  .sc-go{margin-top:.55rem}
}
@media(max-width:860px){
  .sc-section > .wrap{gap:clamp(1.1rem,3.5vw,1.6rem)}
  .sc-left{
    min-height:240px;padding:2.75rem 1rem;
    scrollbar-width:none;-ms-overflow-style:none
  }
  .sc-left::-webkit-scrollbar{display:none;width:0;height:0}
  .sc-outer{scrollbar-width:none;-ms-overflow-style:none}
  .sc-outer::-webkit-scrollbar{display:none;width:0;height:0}
  .sc-list{width:100%}
  /* Pastilles centrées, largeur = texte, une seule ligne */
  .sc-item{
    width:auto;max-width:none;
    box-sizing:border-box;
    justify-content:center;
    align-items:center;
    padding:.72rem 1.25rem;
    white-space:nowrap;
    gap:.7rem
  }
  .sc-item .sc-lbl{
    font-size:.68rem;letter-spacing:.1em;line-height:1.2;
    flex:none;min-width:0;text-align:center;
    overflow:visible;white-space:nowrap
  }
  .sc-item .sc-ico{width:18px;height:18px;flex-shrink:0}
}
@media(max-width:380px){
  .sc-item{padding:.62rem 1rem;gap:.55rem}
  .sc-item .sc-lbl{font-size:.6rem;letter-spacing:.07em}
  .sc-badge{white-space:normal;padding:.5rem 1rem;font-size:.62rem;letter-spacing:.08em}
}
/* ============================ */

/* ---------- Legal pages ---------- */
.legal-page{
  padding-top:calc(var(--nav-h) + clamp(28px,6svh,56px));
  padding-bottom:var(--section-py-bottom);
}
.legal-page > .wrap{gap:0}
.legal-page__doc{width:100%;max-width:74ch}
.legal-page__head{
  display:flex;flex-direction:column;gap:var(--sec-stack);
  margin:0;padding-bottom:var(--sec-after-head);
  border-bottom:1px solid var(--line-2)
}
.legal-page__head .display{
  margin:0;font-size:clamp(2rem,4.6vw,2.8rem);font-weight:200
}
.legal-page__head .lead{margin:0;max-width:none}
.legal-page__body{padding-top:var(--sec-after-head)}
.legal-page__body h2{
  font-family:var(--display);font-weight:400;
  font-size:clamp(1.3rem,2.4vw,1.7rem);
  margin:0 0 var(--sec-stack);padding:0;border:none;color:var(--text)
}
/* Trait entre sections (au-dessus du titre suivant), jamais entre titre et contenu */
.legal-page__body h2:not(:first-child){
  margin-top:var(--sec-after-head);
  padding-top:var(--sec-after-head);
  border-top:1px solid var(--line-2)
}
.legal-page__body h2 + :is(p,ul,table){margin-top:0}
.legal-page__body p{color:var(--muted);line-height:1.85;font-size:1rem;margin:0 0 1.1rem}
.legal-page__body p strong{color:var(--text);font-weight:600}
.legal-page__body ul{
  margin:0 0 1.3rem;padding-left:0;list-style:none;
  display:flex;flex-direction:column;gap:.6rem
}
.legal-page__body ul li{
  position:relative;padding-left:1.7rem;color:var(--muted);line-height:1.75
}
.legal-page__body ul li::before{
  content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;
  border-radius:50%;background:var(--grad-soft)
}
.legal-page__body a{color:var(--cyan-2);text-decoration:underline;text-underline-offset:3px}
.legal-page__body a:hover{color:#fff;text-decoration-color:var(--cyan)}
[data-theme="light"] .legal-page__body a:hover{color:#000}
.legal-page__body table{width:100%;border-collapse:collapse;font-size:.92rem;margin:0 0 1.5rem}
.legal-page__body th,.legal-page__body td{
  border:1px solid var(--line-2);padding:.6rem .8rem;text-align:left;color:var(--muted)
}
.legal-page__body th{color:var(--text);font-weight:600;background:rgba(34,211,238,.06)}

/* ---------- Light mode 4.11b — "Glace diurne" (alternative radicale) ----------
   Inversion de 4.11 : page glacier, cartes porcelaine, heroes clairs,
   textes encre, accents cyan Alma — pas de cards sombres. */
[data-theme="light"]{
  color-scheme:light;
  --bg:#e8eef4;
  --bg-2:#dde6ef;
  --bg-3:#d2dce8;
  --ink:#07131c;
  --glass:rgba(255,255,255,.72);
  --glass-2:rgba(255,255,255,.88);
  --line:rgba(14,90,114,.12);
  --line-2:rgba(14,90,114,.22);
  --text:rgba(7,19,28,.94);
  /* A11y AA light : muted / faint sur fond glacier */
  --muted:rgba(12,40,52,.88);
  --faint:rgba(14,55,70,.76);
  --shadow:0 20px 50px -28px rgba(14,90,114,.28);
  /* Texte figé light : noir→cyan (v4.13) — aurora animé inchangé */
  --grad-text:linear-gradient(92deg,#05060d 0%,#0a1628 14%,#1e3a6e 32%,#2563eb 52%,#22d3ee 78%,#8af2ee 100%);
  --aurora-grad:linear-gradient(90deg,#8af2ee 0%,#22d3ee 25%,#2563eb 50%,#22d3ee 75%,#8af2ee 100%);
  --grad-aurora:linear-gradient(118deg,#1e3a6e 0%,#2563eb 32%,#22d3ee 62%,#8af2ee 100%);
  --grad-soft:linear-gradient(118deg,rgba(30,58,110,.95) 0%,rgba(37,99,235,.92) 45%,rgba(34,211,238,.88) 100%);
  --card-text:rgba(7,19,28,.94);
  --card-muted:rgba(12,40,52,.88);
  --card-faint:rgba(14,55,70,.76);
  --card-line:rgba(14,90,114,.14);
  --card-line-2:rgba(14,90,114,.24);
  --card-glass:rgba(255,255,255,.78);
  --card-surface:#ffffff;
  --card-surface-2:#f3fafb;
  --hero-bg:linear-gradient(165deg,#dce6f0 0%,#e8eef4 42%,#f2f6fa 100%);
  --accent-ink:#0a3a48;
  --accent-deep:#1e3a6e;
  --accent-blue:#2563eb;
  --accent-violet:#3d8bf0;
  --accent-soft:#8af2ee;
  --cyan:#22d3ee;
  --cyan-2:#22d3ee;
  --cyan-light:#8af2ee;
  --cyan-deep:#5282e8;
  background:var(--bg);
  color:var(--text)
}
html[data-theme="light"]{
  scrollbar-color:#22d3ee rgba(14,90,114,.1)
}
[data-theme="light"] ::-webkit-scrollbar-track{
  background:rgba(14,90,114,.06);
  box-shadow:inset 0 0 0 1px rgba(14,90,114,.05)
}
[data-theme="light"] ::-webkit-scrollbar-thumb{
  border-color:rgba(255,255,255,.5);
  background:linear-gradient(180deg,#8af2ee,#22d3ee 40%,#3d8bf0)
}
[data-theme="light"] ::selection{background:rgba(34,211,238,.22);color:var(--text)}
[data-theme="light"] .bg-field{
  background:
    radial-gradient(ellipse 70% 50% at 15% 10%,rgba(34,211,238,.14),transparent 55%),
    radial-gradient(ellipse 60% 45% at 88% 18%,rgba(61,139,240,.12),transparent 50%),
    radial-gradient(ellipse 50% 40% at 50% 100%,rgba(82,130,232,.1),transparent 55%),
    var(--bg)
}
[data-theme="light"] .bg-grid{
  opacity:.4;
  /* Traits horizontaux plus discrets : évite le « double » avec les séparateurs de section */
  background-image:linear-gradient(rgba(14,90,114,.028) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(14,90,114,.055) 1px,transparent 1px)
}
[data-theme="light"] .bg-noise{opacity:.018;mix-blend-mode:multiply}
[data-theme="light"] .brand-name{text-shadow:none;color:var(--text)}
[data-theme="light"] .brand-mark{
  filter:drop-shadow(0 0 5px rgba(34,211,238,.35)) drop-shadow(0 0 14px rgba(61,139,240,.22))
}
/* Nav — esprit 4.11c : texte noir + soulignement aurora dark */
[data-theme="light"] .nav{
  background:#f4fbfd;
  border-bottom-color:rgba(14,90,114,.1);
  /* Ombre courte : ne plus « laver » le trait de section juste sous la nav */
  box-shadow:0 6px 20px rgba(14,90,114,.05);
  backdrop-filter:none;-webkit-backdrop-filter:none
}
[data-theme="light"] .nav.is-scrolled{
  background:#ffffff;
  border-bottom-color:rgba(14,90,114,.14);
  box-shadow:0 8px 24px rgba(14,90,114,.06)
}
[data-theme="light"] .nav-links{
  background:rgba(255,255,255,.65);
  border-color:rgba(14,90,114,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 18px rgba(14,90,114,.06)
}
[data-theme="light"] .nav-glide{
  background:linear-gradient(90deg,#8af2ee,#22d3ee,#2563eb);
  box-shadow:0 0 14px rgba(34,211,238,.5),0 0 28px rgba(37,99,235,.2)
}
@media(hover:hover){
  [data-theme="light"] .nav-links a:hover{
    color:var(--text);
    text-shadow:none
  }
}
[data-theme="light"] .nav-links a{
  font-weight:600;color:var(--muted)
}
[data-theme="light"] .nav-links a.active{
  color:var(--text);
  text-shadow:none
}
/* Light : noir sur blanc — +50 de graisse (eyebrow 500→550, lead 400→450). Pas les titres. */
[data-theme="light"] .eyebrow{font-weight:550}
[data-theme="light"] .lead{font-weight:450}
/* Sous-titres sec-head (souvent weight 300 en display) : +50 aussi */
[data-theme="light"] .sec-head .lead{font-weight:450}
[data-theme="light"] .soul-content .sec-head .lead{font-weight:350}
[data-theme="light"] .nav-burger{
  border:1px solid transparent;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  color:#0a2844;
  box-shadow:0 2px 10px -4px rgba(61,139,240,.22)
}
[data-theme="light"] .nav-burger:hover,
[data-theme="light"] .nav-burger:focus-visible{
  color:#051320;
  transform:translateY(-1px);
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  box-shadow:0 0 0 1px rgba(61,139,240,.28),0 4px 14px -6px rgba(61,139,240,.28);
  outline:none
}
[data-theme="light"] .nav-burger span{
  background:none;border-top-color:#0a2844
}
[data-theme="light"] .theme-toggle{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  border:1px solid transparent;
  color:#0a2844;
  box-shadow:0 2px 10px -4px rgba(61,139,240,.22)
}
[data-theme="light"] .theme-toggle:hover,
[data-theme="light"] .theme-toggle:focus-visible{
  color:#051320;
  transform:translateY(-1px);
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  border-color:transparent;
  box-shadow:0 0 0 1px rgba(61,139,240,.28),0 4px 14px -6px rgba(61,139,240,.28)
}
[data-theme="light"] .theme-toggle:hover svg,
[data-theme="light"] .theme-toggle:focus-visible svg{
  transform:rotate(18deg) scale(1.06);
  filter:none
}
[data-theme="light"] .nav-cta .btn-logo--cyan{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  box-shadow:0 4px 18px -6px rgba(34,211,238,.28)
}
[data-theme="light"] .nav-cta .btn-logo--violet{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  box-shadow:0 4px 18px -6px rgba(61,139,240,.3)
}
[data-theme="light"] .drawer{
  background:linear-gradient(165deg,#ffffff 0%,#f3fafb 48%,#eaf6f8 100%);
  --muted:rgba(12,40,52,.88);
  --faint:rgba(14,55,70,.76);
  --text:rgba(7,19,28,.94);
  --glass:rgba(255,255,255,.88);
  --line:rgba(14,90,114,.14);
  --line-2:rgba(14,90,114,.24)
}
[data-theme="light"] .drawer-aurora-bg{
  opacity:.18;filter:saturate(1.35) brightness(1.55) contrast(1.05)
}
[data-theme="light"] .drawer-head{border-bottom-color:var(--line);background:linear-gradient(165deg,#ffffff 0%,#f3fafb 100%)}
[data-theme="light"] .drawer-brand{color:var(--muted)}
[data-theme="light"] .drawer-brand b{color:var(--text)}
[data-theme="light"] .drawer-close{
  border:1px solid transparent;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  color:#0a2844;
  box-shadow:0 2px 10px -4px rgba(61,139,240,.22)
}
[data-theme="light"] .drawer-close:hover,
[data-theme="light"] .drawer-close:focus-visible{
  color:#051320;
  transform:translateY(-1px);
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  box-shadow:0 0 0 1px rgba(61,139,240,.28),0 4px 14px -6px rgba(61,139,240,.28);
  outline:none
}
[data-theme="light"] .drawer-nav a{
  color:rgba(12,40,52,.62);border-bottom-color:rgba(14,90,114,.1)
}
[data-theme="light"] .drawer-nav a:hover{
  color:var(--accent-deep);
  border-left-color:rgba(37,99,235,.45);
  background:linear-gradient(90deg,rgba(240,243,252,.95) 0%,transparent 88%)
}
[data-theme="light"] .drawer-nav a.active{
  color:#0a2844;
  font-weight:500;
  border-left-color:#3d8bf0;
  /* Couleurs light d’origine, plus transparentes (effet réservé à l’item actif) */
  background:linear-gradient(90deg,rgba(222,230,255,.42) 0%,rgba(228,250,252,.22) 55%,transparent 100%)
}
[data-theme="light"] .drawer-nav a.active:hover{
  color:#07131c;
  border-left-color:#2563eb;
  background:linear-gradient(90deg,rgba(214,224,255,.52) 0%,rgba(220,246,250,.28) 55%,transparent 100%)
}
[data-theme="light"] .drawer-cta .btn-logo--cyan{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  box-shadow:0 4px 18px -6px rgba(34,211,238,.28)
}
[data-theme="light"] .drawer-cta .btn-logo--violet{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
  box-shadow:0 4px 18px -6px rgba(61,139,240,.3)
}
[data-theme="light"] .nav-cta .btn-logo--cyan .btn-logo-label,
[data-theme="light"] .drawer-cta .btn-logo--cyan .btn-logo-label{
  background:linear-gradient(118deg,#8af2ee 0%,#22d3ee 42%,#5282e8 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent
}
[data-theme="light"] .nav-cta .btn-logo--violet .btn-logo-label,
[data-theme="light"] .drawer-cta .btn-logo--violet .btn-logo-label{
  background:linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 52%,#5a6bc4 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent
}
[data-theme="light"] .nav-cta .btn-logo--cyan::before,
[data-theme="light"] .drawer-cta .btn-logo--cyan::before{background:linear-gradient(118deg,#8af2ee,#22d3ee,#5282e8)}
[data-theme="light"] .nav-cta .btn-logo--violet::before,
[data-theme="light"] .drawer-cta .btn-logo--violet::before{background:linear-gradient(118deg,#7dd3fc,#3d8bf0,#5a6bc4)}
[data-theme="light"] .nav-cta .btn-logo--cyan.active .btn-logo-label,
[data-theme="light"] .nav-cta .btn-logo--violet.active .btn-logo-label,
[data-theme="light"] .drawer-cta .btn-logo--cyan.active .btn-logo-label,
[data-theme="light"] .drawer-cta .btn-logo--violet.active .btn-logo-label{
  background:none!important;-webkit-background-clip:unset!important;background-clip:unset!important;
  -webkit-text-fill-color:#fff!important;color:#fff!important;animation:none
}
@media(hover:hover){
  [data-theme="light"] .nav-cta .btn-logo--cyan:hover,
  [data-theme="light"] .nav-cta .btn-logo--cyan.active,
  [data-theme="light"] .drawer-cta .btn-logo--cyan:hover,
  [data-theme="light"] .drawer-cta .btn-logo--cyan.active{
    background:
      linear-gradient(#fff,#fff) padding-box,
      linear-gradient(118deg,#8af2ee,#22d3ee,#5282e8) border-box;
    box-shadow:0 8px 26px -6px rgba(34,211,238,.5)
  }
  [data-theme="light"] .nav-cta .btn-logo--violet:hover,
  [data-theme="light"] .nav-cta .btn-logo--violet.active,
  [data-theme="light"] .drawer-cta .btn-logo--violet:hover,
  [data-theme="light"] .drawer-cta .btn-logo--violet.active{
    background:
      linear-gradient(#fff,#fff) padding-box,
      linear-gradient(118deg,#7dd3fc,#3d8bf0,#5a6bc4) border-box;
    box-shadow:0 8px 26px -6px rgba(61,139,240,.48)
  }
  [data-theme="light"] .nav-cta .btn-logo:hover .btn-logo-label,
  [data-theme="light"] .nav-cta .btn-logo.active .btn-logo-label,
  [data-theme="light"] .drawer-cta .btn-logo:hover .btn-logo-label,
  [data-theme="light"] .drawer-cta .btn-logo.active .btn-logo-label{
    background:none!important;-webkit-background-clip:unset!important;background-clip:unset!important;
    -webkit-text-fill-color:#fff!important;color:#fff!important
  }
}

/* Heroes — clairs (brume glacier), textes encre — hors pages photo */
[data-theme="light"] .hero:not(:has(.hero-scene)){
  --bg:transparent;
  --bg-2:var(--bg-2);
  --bg-3:var(--bg-3);
  --text:rgba(7,19,28,.94);
  --muted:rgba(12,40,52,.88);
  --faint:rgba(14,55,70,.76);
  --line:rgba(14,90,114,.14);
  --line-2:rgba(14,90,114,.24);
  --glass:rgba(255,255,255,.55);
  color:var(--text);
  background:linear-gradient(165deg,#ffffff 0%,#f3fafb 42%,#eaf6f8 100%)
}
[data-theme="light"] .page-index .hero{
  background:#ffffff
}
[data-theme="light"] .hero:not(:has(.hero-scene)) .display{color:rgba(7,19,28,.94);text-shadow:0 1px 0 rgba(255,255,255,.6)}
[data-theme="light"] .hero:not(:has(.hero-scene)) .lead,
[data-theme="light"] .hero:not(:has(.hero-scene)) .pill,
[data-theme="light"] .hero:not(:has(.hero-scene)) .eyebrow,
[data-theme="light"] .hero:not(:has(.hero-scene)) .prf-text{color:var(--muted);text-shadow:none}
[data-theme="light"] .page-index .hero .display,
[data-theme="light"] .page-index .hero .lead,
[data-theme="light"] .page-index .hero .pill,
[data-theme="light"] .page-index .hero .prf-text,
[data-theme="light"] .page-index .hero .btn,
[data-theme="light"] .page-index .hero .btn-poda-face,
[data-theme="light"] .orbit-cta .btn-poda-face,
[data-theme="light"] .sc-hero-head .pill{
  text-shadow:none
}
[data-theme="light"] .hero:not(:has(.hero-scene)) .pill{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(30,58,110,.18)!important;
  color:#4d58a8!important;
  box-shadow:0 2px 10px rgba(14,90,114,.08)!important;
  text-shadow:none!important
}
[data-theme="light"] .hero:not(:has(.hero-scene)) .pill .dot,
[data-theme="light"] .page-index .hero .pill .dot,
[data-theme="light"] .sc-hero-head .pill .dot{
  background:#3d8bf0!important;
  box-shadow:0 0 10px rgba(61,139,240,.45)!important
}
[data-theme="light"] .sc-hero-head .pill,
[data-theme="light"] .svc-hero-head .pill,
[data-theme="light"] .page-services .hero .pill,
[data-theme="light"] .page-secteurs .hero .pill,
[data-theme="light"] .page-faq .hero .pill,
[data-theme="light"] .page-blog .hero .pill{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(30,58,110,.18)!important;
  color:#4d58a8!important;
  box-shadow:0 2px 10px rgba(14,90,114,.08)!important;
  text-shadow:none!important
}
[data-theme="light"] .page-index .hero .word-morph{color:rgba(7,19,28,.9);text-shadow:none}
[data-theme="light"] .hero:not(:has(.hero-scene)) .aurora-text:not(.aurora-flow){
  background:var(--grad-text);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent
}
[data-theme="light"] :is(.page-index .hero, .page-services .hero, .page-secteurs .hero, .page-faq .hero, .page-blog .hero) .aurora-text{
  text-shadow:none
}
[data-theme="light"] .page-index .hero .display.hero-title-main{color:rgba(7,19,28,.82)}

/* Heroes photo — rendu dark identique (studio, tarifs, réalisations, contact, partenaire) */
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
){
  --text:rgba(244,244,252,.96);
  --muted:rgba(226,228,245,.88);
  --faint:rgba(226,228,245,.74);
  --line:rgba(255,255,255,.1);
  --line-2:rgba(255,255,255,.18);
  --glass:rgba(255,255,255,.05);
  --grad-text:linear-gradient(92deg,#ffffff 0%,#e8fffe 10%,#8af2ee 32%,#22d3ee 55%,#2563eb 78%,#1e3a6e 100%);
  --aurora-grad:linear-gradient(90deg,#8af2ee 0%,#22d3ee 25%,#2563eb 50%,#22d3ee 75%,#8af2ee 100%);
  color:var(--text);
  background:#05060d!important
}
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) :is(.display,h1 .display){
  color:rgba(255,255,255,.96)!important;
  text-shadow:0 2px 22px rgba(5,8,28,.88),0 0 40px rgba(5,8,28,.5)!important
}
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) :is(.lead,.pill,.eyebrow,.prf-text,.hero-cta-note,.tx-hero-mention){
  color:rgba(210,214,235,.78)!important;
  text-shadow:0 1px 16px rgba(5,8,28,.75)!important
}
/* Badge (pill) — même DA accueil light sur tous les héros (y compris photo) */
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) .pill{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(30,58,110,.18)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.08)!important;
  color:#4d58a8!important;
  text-shadow:none!important
}
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) .pill .dot{
  background:#3d8bf0!important;
  box-shadow:0 0 10px rgba(61,139,240,.45)!important
}
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) .aurora-text:not(.aurora-flow){
  background-image:var(--grad-text)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;color:transparent!important
}
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) .aurora-text.aurora-flow{
  background-image:var(--aurora-grad)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;color:transparent!important
}
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) :is(.btn,.btn-poda-face){
  text-shadow:none!important
}
[data-theme="light"] :is(
  .page-agence .agence-hero,
  .page-tarifs .tx-hero,
  .page-realisations .rlz-hero,
  .page-contact .cnt-hero,
  .page-partenariat .ptn-hero,
  .page-secteur .sct-hero,
  .hero:has(.hero-scene)
) .btn-ghost{
  color:#4d58a8!important;
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(30,58,110,.18)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important;
  text-shadow:none!important;
  backdrop-filter:none!important
}
[data-theme="light"] .hero-scene__base,
[data-theme="light"] .agence-hero-bg,
[data-theme="light"] .ptn-hero-bg,
[data-theme="light"] .cnt-hero-bg,
[data-theme="light"] .rlz-hero-bg,
[data-theme="light"] .tx-hero-bg,
[data-theme="light"] .faq-hero-bg,
[data-theme="light"] .blog-hero-bg{
  opacity:1!important;
  filter:none!important
}
/* Overlay cinématique — même rendu dark / light */
.hero-scene__base,
.agence-hero-bg,
.ptn-hero-bg,
.cnt-hero-bg,
.rlz-hero-bg,
.tx-hero-bg,
.faq-hero-bg,
.blog-hero-bg{
  opacity:1;
  filter:none
}
[data-theme="light"] .agence-hero-overlay,
[data-theme="light"] .page-agence .agence-hero-overlay,
[data-theme="light"] .page-contact .cnt-hero .agence-hero-overlay,
[data-theme="light"] .page-partenariat .ptn-hero .agence-hero-overlay,
[data-theme="light"] .page-realisations .rlz-hero .agence-hero-overlay,
[data-theme="light"] .page-tarifs .tx-hero .agence-hero-overlay,
[data-theme="light"] .page-secteurs .hero .agence-hero-overlay,
[data-theme="light"] .page-secteur .sct-hero .agence-hero-overlay,
[data-theme="light"] .page-faq .hero .agence-hero-overlay,
[data-theme="light"] .page-blog .hero .agence-hero-overlay{
  background:
    linear-gradient(to bottom,rgba(5,8,28,.28) 0%,rgba(5,8,28,.06) 38%,rgba(5,8,28,.55) 78%,rgba(5,8,28,.92) 100%),
    radial-gradient(ellipse at 50% 48%,rgba(61,139,240,.1) 0%,transparent 68%)!important;
  opacity:1
}
/* Primary legacy (non-poda) — face violet + halo cyan (DA réalisations) */
[data-theme="light"] .btn-primary{
  background:linear-gradient(180deg,#2a3a6e 0%,#1a2448 48%,#3d58b0 100%);
  color:#fff;
  border-color:rgba(110,231,255,.5);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 14px rgba(94,234,255,.28),0 0 22px rgba(126,182,255,.14),0 3px 10px rgba(61,88,176,.14)
}
[data-theme="light"] .btn-primary:hover{
  filter:brightness(1.06);
  border-color:rgba(126,231,255,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 18px rgba(110,231,255,.36),0 0 28px rgba(126,182,255,.18),0 4px 12px rgba(61,88,176,.16)
}

/* Cartes — porcelaine */
[data-theme="light"] :is(
  .card,[data-glow],.plan,.propulser-card,.bento-card,.faq-item,
  .cta-shift,.cta-shift__panel,.infomaniak-encart,.cmp-wrap,.sector,.alma-sw,
  .tx-host-card,.promo-line,.opt,.proc-z-card,.sc-outer,.sa-visual,
  .cnt-form-shell,.step-card,.profile-card,.comm-card,.cta-block,.rlz-row,.rlz-row-info
){
  --text:var(--card-text);
  --muted:var(--card-muted);
  --faint:var(--card-faint);
  --line:var(--card-line);
  --line-2:var(--card-line-2);
  --glass:var(--card-glass);
  color:var(--card-text)
}
[data-theme="light"] .card,
[data-theme="light"] [data-glow]:not(.opt),
[data-theme="light"] .propulser-card,
[data-theme="light"] .bento-card,
[data-theme="light"] .faq-item,
[data-theme="light"] .sector,
[data-theme="light"] .proc-z-card,
[data-theme="light"] .sa-visual,
[data-theme="light"] .step-card,
[data-theme="light"] .profile-card,
[data-theme="light"] .cta-block{
  background:var(--card-surface)!important;
  background-image:none!important;
  border-color:var(--card-line)!important;
  backdrop-filter:none;-webkit-backdrop-filter:none;
  box-shadow:0 18px 48px -24px rgba(14,90,114,.22),0 0 0 1px rgba(255,255,255,.8) inset
}
/* Expertises : garder la DA dark (image + overlay) aussi en light */
[data-theme="light"] .cs-card{
  background:#0c1128!important;
  background-image:none!important;
  border-color:rgba(61,139,240,.22)!important;
  box-shadow:0 8px 40px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.06) inset
}
[data-theme="light"] [data-glow]:not(.opt)::before,
[data-theme="light"] [data-glow]:not(.opt)::after{
  opacity:.45;
  filter:none
}
/* Light — hovers cards : fonds légèrement lumineux, zones colorées uniques par famille */
@media(hover:hover){
  /* Socle ombre / bordure (commun, léger) */
  [data-theme="light"] .card:hover:not(.plan):not(.card--glow-fixed):not(.card-stack):not(.card-stack--host):not(.tx-host-wrap),
  [data-theme="light"] .propulser-card:hover,
  [data-theme="light"] .bento-card:hover,
  [data-theme="light"] .sector:hover,
  [data-theme="light"] .profile-card:hover,
  [data-theme="light"] .step-card:hover,
  [data-theme="light"] [data-glow]:not(.opt):hover{
    border-color:rgba(37,99,235,.42)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.12),0 22px 52px -20px rgba(37,99,235,.2),0 0 24px rgba(34,211,238,.1)!important
  }

  /* Nos convictions — même léger brillant que Notre méthode */
  [data-theme="light"] .bento-card:hover{
    background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.96) 42%,rgba(236,250,252,.92) 100%)!important;
    border-color:rgba(90,107,196,.62)!important;
    box-shadow:0 0 0 1px rgba(90,107,196,.16),0 22px 52px -20px rgba(90,107,196,.2),0 0 28px rgba(94,234,255,.12),0 0 0 1px rgba(255,255,255,.85) inset!important
  }
  [data-theme="light"] .bento-card:hover::after{opacity:0}

  /* Index / services [data-glow] — voile diagonal cyan → bleu */
  [data-theme="light"] [data-glow]:not(.opt):hover{
    background:
      linear-gradient(128deg,rgba(34,211,238,.12) 0%,transparent 38%,rgba(61,139,240,.1) 72%,transparent 100%),
      linear-gradient(#fff,#fff)!important
  }

  /* Cards génériques (ex. blog « Ce que vous y trouverez ») — wash homogène */
  [data-theme="light"] .card:hover:not(.plan):not(.card--glow-fixed):not(.card-stack):not(.card-stack--host):not(.tx-host-wrap){
    background:linear-gradient(155deg,#ffffff 0%,rgba(236,250,252,.98) 48%,rgba(240,243,252,.97) 100%)!important
  }

  /* Secteurs grille (.sector) — lame verticale à droite */
  [data-theme="light"] .sector:hover{
    background:
      linear-gradient(270deg,rgba(34,211,238,.16) 0%,transparent 46%),
      radial-gradient(ellipse 60% 50% at 20% 100%,rgba(90,107,196,.1),transparent 55%),
      linear-gradient(#fff,#fff)!important
  }

  /* Partenariat — étapes : brume indigo depuis le haut */
  [data-theme="light"] .step-card:hover{
    background:
      radial-gradient(ellipse 120% 85% at 50% -35%,rgba(90,107,196,.2),transparent 58%),
      linear-gradient(#fff,#fff)!important;
    border-color:rgba(90,107,196,.45)!important
  }

  /* Partenariat — profils : coin haut-droit cyan + bas-gauche violet */
  [data-theme="light"] .profile-card:hover{
    background:linear-gradient(#fff,#fff)!important;
    border-color:rgba(34,211,238,.45)!important
  }
  [data-theme="light"] .profile-card:hover::before{opacity:1}
}
/* Mobile touch : halo + contour propulser (hors @media hover — sinon sticky hover sans glow) */
@media(hover:none){
  .propulser-card:active,
  .propulser-card:focus-visible{
    transform:translateY(-8px);
    border-color:rgba(34,211,238,.55)!important;
    box-shadow:0 0 0 1px rgba(34,211,238,.16),0 12px 36px rgba(34,211,238,.12),0 0 24px rgba(61,139,240,.1)!important
  }
  .propulser-card:active::before,
  .propulser-card:focus-visible::before{opacity:1}
  [data-theme="light"] .propulser-card:active,
  [data-theme="light"] .propulser-card:focus-visible,
  [data-theme="light"] .propulser-card:hover{
    border-color:rgba(37,99,235,.42)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.12),0 22px 52px -20px rgba(37,99,235,.2),0 0 24px rgba(34,211,238,.1)!important;
    background:
      linear-gradient(128deg,rgba(34,211,238,.12) 0%,transparent 38%,rgba(61,139,240,.1) 72%,transparent 100%),
      var(--card-surface)!important
  }
  [data-theme="light"] .propulser-card:active::before,
  [data-theme="light"] .propulser-card:focus-visible::before,
  [data-theme="light"] .propulser-card:hover::before{opacity:1}
}
/* Profils light — calque ::before */
[data-theme="light"] .profile-card::before{
  background:
    radial-gradient(ellipse 75% 55% at 100% 0%,rgba(34,211,238,.18),transparent 55%),
    radial-gradient(ellipse 65% 50% at 0% 100%,rgba(90,107,196,.14),transparent 52%)
}
/* Synergies partenaires — icônes adaptées DA light (indigo, plus de cyan néon) */
[data-theme="light"] .profile-icon{
  background:linear-gradient(135deg,rgba(90,107,196,.14),rgba(61,139,240,.08));
  border-color:rgba(90,107,196,.28);
  color:#4d58a8
}
[data-theme="light"] .profile-icon svg{stroke:#4d58a8}
[data-theme="light"] .bento-card::after{
  background:linear-gradient(140deg,rgba(90,107,196,.1) 0%,rgba(139,120,220,.06) 40%,rgba(61,139,240,.05) 70%,rgba(34,211,238,.04) 100%)
}
[data-theme="light"] .page-tarifs .card.card--glow-fixed{
  border-color:rgba(37,99,235,.42)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.12),0 22px 52px -20px rgba(37,99,235,.2),0 0 24px rgba(34,211,238,.1)!important
}
[data-theme="light"] .card.card-stack--host,
[data-theme="light"] .card.card-stack,
[data-theme="light"] .infomaniak-encart,
[data-theme="light"] .card.tx-host-wrap,
[data-theme="light"] .promo-line{
  background:linear-gradient(145deg,#ffffff 0%,rgba(240,243,252,.98) 55%,rgba(236,250,252,.95) 100%)!important;
  border-color:rgba(37,99,235,.28)!important;
  color:var(--card-text)
}
[data-theme="light"] .tx-host-card{background:transparent!important;background-image:none!important}
[data-theme="light"] .promo-line{color:var(--card-muted)}
[data-theme="light"] .bento-card h3,
[data-theme="light"] .proc-z-card h3,
[data-theme="light"] .step-title,
[data-theme="light"] .profile-name,
[data-theme="light"] .comm-label,
[data-theme="light"] .cta-block .display{color:var(--card-text)}
[data-theme="light"] .bento-card p,
[data-theme="light"] .proc-z-card p,
[data-theme="light"] .step-desc,
[data-theme="light"] .profile-note,
[data-theme="light"] .comm-note,
[data-theme="light"] .cta-block .lead{color:var(--card-muted)}
[data-theme="light"] .comm-example{color:var(--card-faint)}
/* Commissions — effet highlight sur les 3 cards */
[data-theme="light"] .comm-card,
[data-theme="light"] .comm-card.highlight{
  background:linear-gradient(145deg,#ffffff 0%,rgba(232,238,255,.98) 50%,rgba(228,250,252,.95) 100%)!important;
  border-color:rgba(37,99,235,.45)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.12),0 6px 18px rgba(37,99,235,.1)!important
}
@media(hover:hover){
  [data-theme="light"] .comm-card:hover{
    border-color:rgba(37,99,235,.58)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.18),0 10px 28px rgba(37,99,235,.16),0 0 24px rgba(34,211,238,.1)!important
  }
}
[data-theme="light"] .comm-badge{
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(30,58,110,.16)!important;
  color:#4d58a8!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important
}
[data-theme="light"] .faq-item.open{
  background:linear-gradient(118deg,#ffffff 0%,rgba(232,238,255,.98) 42%,rgba(228,250,252,.95) 100%)!important;
  border-color:rgba(37,99,235,.52)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.18),0 6px 18px rgba(37,99,235,.16),0 0 24px rgba(34,211,238,.12)!important
}
[data-theme="light"] .faq-item.open .faq-q{color:var(--accent-deep)}
@media(hover:hover){
  [data-theme="light"] .faq-item:hover{
    border-color:rgba(37,99,235,.42)!important;
    background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.96) 42%,rgba(236,250,252,.92) 100%)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.12),0 6px 18px rgba(37,99,235,.12),0 0 20px rgba(34,211,238,.08)!important
  }
  [data-theme="light"] .faq-item:hover .faq-q{color:var(--accent-deep)}
  [data-theme="light"] .faq-item.open:hover{
    border-color:rgba(37,99,235,.62)!important;
    background:linear-gradient(118deg,#ffffff 0%,rgba(232,238,255,1) 42%,rgba(228,250,252,.98) 100%)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.24),0 8px 22px rgba(37,99,235,.2),0 0 28px rgba(34,211,238,.14)!important
  }
}
[data-theme="light"] .plan-feat-q{color:rgba(7,19,28,.82)}
[data-theme="light"] .plan-feat-q:hover{color:var(--accent-deep)}
[data-theme="light"] .plan-feats{color:rgba(12,40,52,.7)}
[data-theme="light"] .cta-shift__panel{
  background:linear-gradient(118deg,#ffffff 0%,rgba(244,247,252,.96) 48%,rgba(240,248,250,.92) 100%)!important;
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.08),0 4px 14px rgba(37,99,235,.08),0 12px 36px -22px rgba(14,90,114,.12)!important
}
[data-theme="light"] .cta-shift__panel::before{
  border-color:rgba(37,99,235,.12);
  box-shadow:inset 0 0 20px rgba(37,99,235,.03)
}
[data-theme="light"] .cta-shift__panel::after{
  background:conic-gradient(from 210deg at 50% 50%,rgba(37,99,235,.22),rgba(34,211,238,.14),rgba(37,99,235,.12),rgba(138,242,238,.1),rgba(37,99,235,.16));
  opacity:.14
}
/* Coins inversés : cyan à gauche, bleu (#2563eb) à droite — contraste sur zone cyan */
[data-theme="light"] .cta-shift__notch--tl{
  border-top-color:rgba(34,211,238,.42);border-left-color:rgba(34,211,238,.42)
}
[data-theme="light"] .cta-shift__notch--tr{
  border-top-color:rgba(37,99,235,.42);border-right-color:rgba(37,99,235,.42)
}
[data-theme="light"] .cta-shift__notch--bl{
  border-bottom-color:rgba(34,211,238,.34);border-left-color:rgba(34,211,238,.34)
}
[data-theme="light"] .cta-shift__notch--br{
  border-bottom-color:rgba(37,99,235,.38);border-right-color:rgba(37,99,235,.38)
}
[data-theme="light"] .cta-shift__bg::before{
  background:
    radial-gradient(ellipse 50% 42% at 18% 28%,rgba(37,99,235,.05),transparent 72%),
    radial-gradient(ellipse 46% 38% at 82% 72%,rgba(34,211,238,.04),transparent 74%),
    radial-gradient(ellipse 55% 45% at 52% 12%,rgba(37,99,235,.04),transparent 70%)
}
[data-theme="light"] .cta-shift__orb--1{background:rgba(37,99,235,.07);mix-blend-mode:multiply}
[data-theme="light"] .cta-shift__orb--2{background:rgba(34,211,238,.06);mix-blend-mode:multiply}
[data-theme="light"] .cta-shift__glow{
  background:radial-gradient(ellipse at calc(50% + var(--cs-mx) * 18%) calc(40% + var(--cs-my) * 14%),rgba(37,99,235,.05),rgba(34,211,238,.025) 50%,transparent 74%)
}
@media(hover:hover){
  [data-theme="light"] .cta-shift__panel:hover{
    border-color:rgba(37,99,235,.4)!important;
    background:linear-gradient(118deg,#ffffff 0%,rgba(244,247,252,.98) 48%,rgba(240,248,250,.95) 100%)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.12),0 6px 18px rgba(37,99,235,.1),0 16px 40px -22px rgba(14,90,114,.14)!important
  }
  [data-theme="light"] .cta-shift__panel:hover::after{opacity:.22}
}
/* Boutons CTA light — textes plus lumineux ; hover droit plus clair */
[data-theme="light"] .cta-shift-btn--primary{
  color:#7eb6ff;
  border-color:#5eeaff;
  box-shadow:0 4px 14px -8px rgba(61,139,240,.22),0 0 8px rgba(94,234,255,.12);
  text-shadow:0 0 12px rgba(126,182,255,.3)
}
[data-theme="light"] .cta-shift-btn--ghost{
  color:#6ee7ff;
  border-color:#5a6bc4;
  box-shadow:0 4px 14px -8px rgba(90,107,196,.2),0 0 8px rgba(110,231,255,.12);
  text-shadow:0 0 12px rgba(110,231,255,.32)
}
[data-theme="light"] .cta-shift-btn--primary::before{background:linear-gradient(118deg,#5eeaff,#7eb6ff)}
[data-theme="light"] .cta-shift-btn--ghost::before{background:linear-gradient(118deg,#6ee7ff,#7eb6ff 55%,#5a6bc4)}
[data-theme="light"] .cta-shift-btn--primary:hover,
[data-theme="light"] .cta-shift-btn--primary.is-active{
  color:#fff;
  border-color:#5eeaff;
  box-shadow:0 6px 18px -8px rgba(94,234,255,.36);
  text-shadow:none
}
[data-theme="light"] .cta-shift-btn--ghost:hover,
[data-theme="light"] .cta-shift-btn--ghost.is-active{
  color:#fff;
  border-color:#6ee7ff;
  box-shadow:0 6px 18px -8px rgba(110,231,255,.34);
  text-shadow:none
}
[data-theme="light"] .cta-shift__title .aurora-text{
  background-image:var(--grad-text)!important;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent
}
[data-theme="light"] .sc-outer{
  background:var(--card-surface-2);
  border-color:var(--card-line)
}
[data-theme="light"] .sc-left{
  background:linear-gradient(140deg,rgba(34,211,238,.08) 0%,rgba(255,255,255,.97) 36%,rgba(244,246,252,.96) 62%,rgba(90,107,196,.1) 100%)
}
[data-theme="light"] .sc-left::before{background:linear-gradient(to bottom,#eef3f8 0%,transparent 100%)}
[data-theme="light"] .sc-left::after{background:linear-gradient(to top,#e8eef6 0%,transparent 100%)}
[data-theme="light"] .sc-right{background:#f4f7fb}
[data-theme="light"] .sc-item.is-active{background:#0a0f1c;border-color:#0a0f1c}
[data-theme="light"] .sc-item.is-active .sc-lbl{color:#fff}
[data-theme="light"] .sc-item.is-active .sc-ico{color:#22d3ee}
/* Notre méthode — cards light : porcelaine v4.14 + contours lumineux violet (FAQ) */
[data-theme="light"] .proc-z-step.pz-on .proc-z-card{
  background:#ffffff!important;
  border-color:rgba(90,107,196,.42)!important;
  box-shadow:0 18px 48px -24px rgba(14,90,114,.22),0 0 0 1px rgba(255,255,255,.8) inset,0 0 24px rgba(90,107,196,.12)!important
}
@media(hover:hover){
  [data-theme="light"] .proc-z-step.pz-on .proc-z-card:hover{
    background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.96) 42%,rgba(236,250,252,.92) 100%)!important;
    border-color:rgba(90,107,196,.62)!important;
    box-shadow:0 0 0 1px rgba(90,107,196,.16),0 22px 52px -20px rgba(90,107,196,.2),0 0 28px rgba(94,234,255,.12),0 0 0 1px rgba(255,255,255,.85) inset!important
  }
}
/* Mobile light : effet hover desktop appliqué aux cards actives (pas de hover tactile) */
@media(hover:none) and (max-width:721px){
  [data-theme="light"] .proc-z-step.pz-on .proc-z-card{
    background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.96) 42%,rgba(236,250,252,.92) 100%)!important;
    border-color:rgba(90,107,196,.62)!important;
    box-shadow:0 0 0 1px rgba(90,107,196,.16),0 22px 52px -20px rgba(90,107,196,.2),0 0 28px rgba(94,234,255,.12),0 0 0 1px rgba(255,255,255,.85) inset!important
  }
}
[data-theme="light"] .manifeste-visual{
  background:linear-gradient(160deg,#e6f6f8,#ffffff)!important
}
[data-theme="light"] .alma-sw{
  background:#ffffff!important;
  border-color:rgba(37,99,235,.32);
  box-shadow:0 0 0 1px rgba(37,99,235,.1),0 14px 40px rgba(37,99,235,.08),0 0 20px rgba(34,211,238,.06)
}
[data-theme="light"] .alma-sw__chrome{
  background:linear-gradient(180deg,#3d4a7a 0%,#2a3558 48%,#24304f 100%);
  border-bottom-color:rgba(110,231,255,.22)
}
[data-theme="light"] .alma-sw__url{
  color:rgba(226,228,245,.82)
}
[data-theme="light"] .alma-sw__live{
  color:#8af2ee;
  border-color:rgba(110,231,255,.42);
  background:rgba(5,8,28,.35);
  box-shadow:0 0 0 1px rgba(94,234,255,.1)
}
[data-theme="light"] .alma-sw__open,
[data-theme="light"] .alma-sw__step{
  color:rgba(226,232,255,.88);
  border-color:rgba(126,182,255,.38);
  background:rgba(5,8,28,.28);
  box-shadow:0 0 0 1px rgba(94,234,255,.08)
}
@media(hover:hover){
  [data-theme="light"] .alma-sw__open:hover,
  [data-theme="light"] .alma-sw__open.is-fs-hot,
  [data-theme="light"] .alma-sw__step:hover{
    color:#fff;
    border-color:rgba(110,231,255,.62);
    background:rgba(94,234,255,.14);
    box-shadow:0 0 0 1px rgba(110,231,255,.16),0 0 14px rgba(94,234,255,.18)
  }
}
/* Réalisations — Plein écran / Immersif : teinte violacée (≠ CTA cyan) */
[data-theme="light"] .page-realisations .alma-sw__open{
  color:rgba(220,214,255,.92);
  border-color:rgba(139,120,220,.48);
  background:rgba(90,107,196,.32);
  box-shadow:0 0 0 1px rgba(139,120,220,.14)
}
@media(hover:hover){
  [data-theme="light"] .page-realisations .alma-sw__open:hover{
    color:#fff;
    border-color:rgba(167,139,250,.72);
    background:rgba(90,107,196,.52);
    box-shadow:0 0 0 1px rgba(139,120,220,.22),0 0 16px rgba(90,107,196,.4)
  }
}
[data-theme="light"] .rlz-preview-loading{
  background:#f4f7fb;
  color:#4d58a8
}
[data-theme="light"] .rlz-preview-loading.is-idle{
  color:rgba(77,88,168,.62);
  background:linear-gradient(160deg,#f4f7fb 0%,#e8eef8 55%,#f0f4fa 100%)
}
@media(hover:hover){
  [data-theme="light"] .alma-sw:hover{
    border-color:rgba(37,99,235,.48);
    box-shadow:0 0 0 1px rgba(37,99,235,.16),0 18px 48px rgba(37,99,235,.12),0 0 24px rgba(34,211,238,.1)
  }
}

/* Footer glacier */
[data-theme="light"] .footer{
  background:transparent;
  border-top:none;
  color:var(--text)
}
[data-theme="light"] .footer-hills{
  /* Pas de filter / mix-blend : cause du clignotement au scroll (Chrome + iOS).
     Le look light est géré dans le shader (uLight). */
  opacity:.92;
  filter:none;
  mix-blend-mode:normal
}
[data-theme="light"] .footer .muted{
  color:rgba(7,19,28,.78)!important
}
[data-theme="light"] .footer .faint{
  color:rgba(7,19,28,.62)!important
}
[data-theme="light"] .footer-cols > div:nth-child(1) h4,
[data-theme="light"] .footer-cols > div:nth-child(2) h4,
[data-theme="light"] .footer-cols > div:nth-child(3) h4,
[data-theme="light"] .footer-cols > div:nth-child(4) h4,
[data-theme="light"] .footer-cols > div:nth-child(1) .footer-col-title,
[data-theme="light"] .footer-cols > div:nth-child(2) .footer-col-title,
[data-theme="light"] .footer-cols > div:nth-child(3) .footer-col-title,
[data-theme="light"] .footer-cols > div:nth-child(4) .footer-col-title{
  color:var(--accent-deep);
  text-shadow:none
}
[data-theme="light"] .footer-mail{
  color:var(--accent-deep);
  font-weight:500
}
[data-theme="light"] .footer-mail:hover,
[data-theme="light"] a.footer-mail:hover{color:#0369a1}
[data-theme="light"] .footer ul a{
  color:rgba(7,19,28,.88)
}
[data-theme="light"] .footer-bottom{
  color:rgba(7,19,28,.72);
  border-top-color:rgba(7,19,28,.12)
}
[data-theme="light"] .footer-bottom a{
  color:rgba(7,19,28,.72)
}
[data-theme="light"] .footer-bottom .alma-consent-manage-link{
  color:#22d3ee!important
}
@media(hover:hover){
  [data-theme="light"] .footer-cols > div:nth-child(1) ul a:hover,
  [data-theme="light"] .footer-cols > div:nth-child(2) ul a:hover,
  [data-theme="light"] .footer-cols > div:nth-child(3) ul a:hover,
  [data-theme="light"] .footer-cols > div:nth-child(4) ul a:hover,
  [data-theme="light"] .footer ul a:hover,
  [data-theme="light"] .footer ul a:focus-visible,
  [data-theme="light"] .footer ul a.wlnk--tapped{
    color:#01080f!important;
    text-shadow:none!important
  }
  [data-theme="light"] .footer-bottom a:hover,
  [data-theme="light"] .footer-bottom a:focus-visible{
    color:#01080f!important;
    text-shadow:none!important
  }
  [data-theme="light"] .footer-bottom .alma-consent-manage-link:hover,
  [data-theme="light"] .footer-bottom .alma-consent-manage-link:focus-visible{
    color:#0a2844!important;
    text-shadow:none!important
  }
}

/* Footer social — light : porcelaine + halo bleu (réf. hills footer) */
[data-theme="light"] .social .ms-icon-wrapper .soc{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(30,58,110,.16)!important;
  color:#4d58a8!important
}
[data-theme="light"] .social .ms-icon-wrapper .soc::before{
  background:linear-gradient(175deg,rgba(37,99,235,.14) 0%,rgba(34,211,238,.07) 55%,transparent 100%)!important
}
[data-theme="light"] .social .ms-wave-canvas{
  mix-blend-mode:multiply;
  opacity:.95
}
@keyframes msBreathLight{
  0%,100%{box-shadow:0 0 0 1px rgba(37,99,235,.26),0 0 14px rgba(34,211,238,.22),0 0 34px rgba(30,58,110,.10),inset 0 0 12px rgba(37,99,235,.05)}
  50%    {box-shadow:0 0 0 1px rgba(37,99,235,.46),0 0 24px rgba(34,211,238,.38),0 0 52px rgba(30,58,110,.16),inset 0 0 18px rgba(37,99,235,.10)}
}
[data-theme="light"] .social .ms-icon-wrapper:hover .soc,
[data-theme="light"] .social .ms-icon-wrapper:focus-within .soc{
  background:rgba(255,255,255,.28)!important;
  border-color:rgba(37,99,235,.48)!important;
  color:var(--accent-deep)!important;
  animation:msBreathLight 2.6s ease-in-out infinite!important
}
/* Ticker light — texte violet lisible ; puces cyan pour le contraste */
[data-theme="light"] .ticker{
  background:linear-gradient(180deg,rgba(255,255,255,.5) 0%,rgba(90,107,196,.06) 100%);
  border-block-color:rgba(77,88,168,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7)
}
[data-theme="light"] .ticker span{
  color:rgba(45,54,110,.78)!important;
  font-weight:500;
  letter-spacing:.14em
}
[data-theme="light"] .ticker span::after{
  color:#22d3ee!important;
  opacity:1;
  filter:drop-shadow(0 0 5px rgba(34,211,238,.28))
}
/* Nos expertises — pastille active = footer / réseaux light */
[data-theme="light"] .cs-dot{
  background:rgba(77,88,168,.22)
}
[data-theme="light"] .cs-dot.cs-on{
  background:#4d58a8!important;
  box-shadow:0 0 12px rgba(77,88,168,.45)!important
}
[data-theme="light"] .checklist li{color:var(--muted)}
[data-theme="light"] .word-morph{color:var(--text)}

/* Pills / filtres / tags light — repos porcelaine ; hover = sélection allégée ; .on = sélection marquée */
[data-theme="light"] .alma-pill,
[data-theme="light"] .faq-tab,
[data-theme="light"] .rlz-vault-filters button,
[data-theme="light"] .tag,
[data-theme="light"] .cs-tag,
[data-theme="light"] .rlz-row-tags span,
[data-theme="light"] .rlz-showcase-chips span,
[data-theme="light"] .pill,
[data-theme="light"] .blog-filters .btn,
[data-theme="light"] .blog-filters .btn-ghost,
[data-theme="light"] .blog-filters .btn-primary{
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(30,58,110,.16)!important;
  color:#4d58a8!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important;
  backdrop-filter:none!important
}
[data-theme="light"] .pill .dot{
  background:#3d8bf0;box-shadow:0 0 10px rgba(61,139,240,.45)
}
@media(hover:hover){
  [data-theme="light"] .alma-pill:hover,
  [data-theme="light"] .faq-tab:hover,
  [data-theme="light"] .rlz-vault-filters button:hover,
  [data-theme="light"] .blog-filters .btn:hover,
  [data-theme="light"] .blog-filters .btn-ghost:hover{
    border-color:rgba(37,99,235,.42)!important;
    color:var(--accent-deep)!important;
    background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.97) 42%,rgba(236,250,252,.94) 100%)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.12),0 5px 14px rgba(37,99,235,.1),0 0 16px rgba(34,211,238,.08)!important;
    transform:translateY(-1px)
  }
}
[data-theme="light"] .alma-pill.on,
[data-theme="light"] .faq-tab.on,
[data-theme="light"] .rlz-vault-filters button.on,
[data-theme="light"] .blog-filters .btn.on,
[data-theme="light"] .blog-filters .btn-primary,
[data-theme="light"] .btn.btn-ghost.on{
  border-color:rgba(37,99,235,.6)!important;
  color:var(--accent-deep)!important;
  font-weight:600;
  background:linear-gradient(118deg,#ffffff 0%,rgba(222,230,255,.98) 40%,rgba(214,246,250,.96) 100%)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.22),0 7px 20px rgba(37,99,235,.18),0 0 26px rgba(34,211,238,.14),inset 0 1px 0 rgba(255,255,255,.9)!important
}
@media(hover:hover){
  [data-theme="light"] .alma-pill.on:hover,
  [data-theme="light"] .faq-tab.on:hover,
  [data-theme="light"] .rlz-vault-filters button.on:hover,
  [data-theme="light"] .blog-filters .btn.on:hover,
  [data-theme="light"] .btn.btn-ghost.on:hover{
    border-color:rgba(37,99,235,.72)!important;
    color:#0a2844!important;
    background:linear-gradient(118deg,#ffffff 0%,rgba(214,224,255,1) 40%,rgba(204,242,248,.98) 100%)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.28),0 8px 22px rgba(37,99,235,.2),0 0 30px rgba(34,211,238,.16),inset 0 1px 0 rgba(255,255,255,.95)!important
  }
}
/* Nav tarifs sticky + badges hero — mêmes états tags light */
[data-theme="light"] .tx-sticky-nav{
  background:rgba(232,236,244,.92);
  border-bottom-color:rgba(7,19,28,.1);
  box-shadow:0 10px 28px -18px rgba(7,19,28,.18);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)
}
[data-theme="light"] .tx-sticky-nav .alma-pill,
[data-theme="light"] .tx-hero-badges .alma-pill{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(30,58,110,.16)!important;
  color:#4d58a8!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important;
  text-shadow:none!important;
  backdrop-filter:none!important;
  /* Pas de transition background : évite le flash glass sombre / ancien hover au mouseleave */
  transition:border-color .2s,color .2s,box-shadow .2s,transform .2s
}
@media(hover:hover){
  [data-theme="light"] .tx-sticky-nav .alma-pill:hover,
  [data-theme="light"] .tx-hero-badges .alma-pill:hover{
    border-color:rgba(37,99,235,.42)!important;
    color:var(--accent-deep)!important;
    background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.97) 42%,rgba(236,250,252,.94) 100%)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.12),0 5px 14px rgba(37,99,235,.1),0 0 16px rgba(34,211,238,.08)!important;
    transform:translateY(-1px)
  }
}
[data-theme="light"] .tx-sticky-nav .alma-pill.on{
  border-color:rgba(37,99,235,.6)!important;
  color:var(--accent-deep)!important;
  font-weight:600;
  background:linear-gradient(118deg,#ffffff 0%,rgba(222,230,255,.98) 40%,rgba(214,246,250,.96) 100%)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.22),0 7px 20px rgba(37,99,235,.18),0 0 26px rgba(34,211,238,.14),inset 0 1px 0 rgba(255,255,255,.9)!important;
  text-shadow:none!important
}
@media(hover:hover){
  [data-theme="light"] .tx-sticky-nav .alma-pill.on:hover{
    border-color:rgba(37,99,235,.72)!important;
    color:#0a2844!important;
    background:linear-gradient(118deg,#ffffff 0%,rgba(214,224,255,1) 40%,rgba(204,242,248,.98) 100%)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.28),0 8px 22px rgba(37,99,235,.2),0 0 30px rgba(34,211,238,.16),inset 0 1px 0 rgba(255,255,255,.95)!important
  }
}

/* Orbit badges — tags DA (repos = pill, status = sélection FAQ — jamais fill cyan) */
[data-theme="light"] .orbit-meta__sector{color:#4d58a8!important;letter-spacing:.14em}
[data-theme="light"] .orbit-meta__badge{
  color:#4d58a8!important;
  border-color:rgba(30,58,110,.16)!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important
}
[data-theme="light"] .orbit-meta__status{
  border-color:rgba(37,99,235,.6)!important;
  color:var(--accent-deep)!important;
  font-weight:600;
  background:linear-gradient(118deg,#ffffff 0%,rgba(222,230,255,.98) 40%,rgba(214,246,250,.96) 100%)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.22),0 7px 20px rgba(37,99,235,.18),0 0 26px rgba(34,211,238,.14),inset 0 1px 0 rgba(255,255,255,.9)!important
}
[data-theme="light"] .orbit-card.is-center .alma-sw{
  border-color:rgba(37,99,235,.45);
  box-shadow:
    0 0 0 1px rgba(37,99,235,.14),
    0 14px 32px rgba(37,99,235,.1),
    0 0 20px rgba(61,139,240,.16)
}

/* Réalisations — encart conversion (DA CTA light) */
[data-theme="light"] .rlz-conv-banner{
  background:linear-gradient(118deg,#ffffff 0%,rgba(232,238,255,.98) 42%,rgba(228,250,252,.95) 100%);
  border-color:rgba(37,99,235,.48);
  box-shadow:0 0 0 1px rgba(37,99,235,.16),0 6px 18px rgba(37,99,235,.12),0 0 22px rgba(34,211,238,.1)
}
[data-theme="light"] .rlz-conv-banner p{
  color:rgba(12,40,52,.7)
}
[data-theme="light"] .rlz-conv-banner strong{
  color:#5a6bc4;
  font-weight:600;
  text-shadow:0 0 12px rgba(94,234,255,.22)
}
/* Bouton poda — face bleu violacé FAQ/CTA + halo cyan plus marqué */
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .btn-poda-face{
  background:linear-gradient(180deg,#2a3a6e 0%,#1a2448 48%,#3d58b0 100%)!important;
  border-color:rgba(110,231,255,.62)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 22px rgba(94,234,255,.48),0 0 36px rgba(126,182,255,.28),0 0 48px rgba(90,107,196,.18),0 3px 10px rgba(61,88,176,.22)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary:focus-visible .btn-poda-face{
  border-color:rgba(126,231,255,.8)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 28px rgba(110,231,255,.58),0 0 44px rgba(126,182,255,.36),0 0 56px rgba(90,107,196,.22),0 4px 14px rgba(61,88,176,.24)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-outer,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-outer{
  filter:blur(3px) brightness(1.35)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-outer::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-outer::before{
  background-image:conic-gradient(#000,#5a6bc4 4%,#5eeaff 8%,#000 36%,#000 48%,#6ee7ff 58%,#7eb6ff 64%,#000 86%)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-mid,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-mid{
  filter:blur(2.5px) brightness(1.3)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-mid::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-mid::before{
  background-image:conic-gradient(rgba(0,0,0,0),#5eeaff,rgba(0,0,0,0) 8%,rgba(0,0,0,0) 48%,#7eb6ff,rgba(0,0,0,0) 58%)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-bright,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-bright{
  filter:blur(1.5px) brightness(1.45)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-bright::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-bright::before{
  background-image:conic-gradient(rgba(0,0,0,0) 0%,#8af2ee,rgba(0,0,0,0) 7%,rgba(0,0,0,0) 48%,#6ee7ff,rgba(0,0,0,0) 56%)!important;
  filter:brightness(1.55)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-thin,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-thin{
  filter:blur(.4px) brightness(1.35)!important
}
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-thin::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-thin::before{
  background-image:conic-gradient(#1c191c,#5eeaff 4%,#7eb6ff 8%,#1c191c 16%,#1c191c 48%,#6ee7ff 56%,#5a6bc4 62%,#1c191c 68%)!important;
  filter:brightness(1.4)!important
}
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--ghost .btn-poda-face{
  border-color:rgba(90,107,196,.42)!important;
  color:#4d58a8!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 0 0 1px rgba(90,107,196,.1),0 0 14px rgba(110,231,255,.12)!important
}
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--ghost:hover .btn-poda-face,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--ghost:focus-visible .btn-poda-face{
  border-color:rgba(90,107,196,.58)!important;
  color:var(--accent-deep)!important;
  box-shadow:0 0 0 1px rgba(90,107,196,.16),0 0 18px rgba(110,231,255,.18),0 0 20px rgba(126,182,255,.12)!important
}
[data-theme="light"] .rlz-row{
  border-color:rgba(37,99,235,.32);
  background:#fff;
  box-shadow:0 0 0 1px rgba(37,99,235,.08),0 4px 16px rgba(14,90,114,.06)
}
@media(hover:hover){
  [data-theme="light"] .rlz-row:hover{
    border-color:rgba(37,99,235,.52);
    background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.98) 42%,rgba(236,250,252,.94) 100%);
    box-shadow:0 0 0 1px rgba(37,99,235,.16),0 6px 18px rgba(37,99,235,.12),0 0 22px rgba(34,211,238,.1)
  }
}
[data-theme="light"] .rlz-row-preview,
[data-theme="light"] .rlz-row-info{
  background:transparent!important;
  border-color:rgba(37,99,235,.16)!important
}
[data-theme="light"] .rlz-row-title{color:var(--card-text)!important}
[data-theme="light"] .rlz-row-desc{color:var(--card-muted)!important}
[data-theme="light"] .rlz-row-desc strong{color:#5a6bc4!important}
[data-theme="light"] .rlz-row-tags span{
  background:rgba(255,255,255,.92);
  border-color:rgba(30,58,110,.16);
  color:#4d58a8;
  box-shadow:0 2px 10px rgba(14,90,114,.06)
}
[data-theme="light"] .rlz-row-ext{
  border-color:rgba(37,99,235,.28);
  background:rgba(255,255,255,.9);
  color:#4d58a8;
  box-shadow:0 0 0 1px rgba(37,99,235,.06)
}
[data-theme="light"] .rlz-row-ext:hover{
  border-color:rgba(37,99,235,.48);
  color:var(--accent-deep);
  background:#fff;
  box-shadow:0 0 0 1px rgba(37,99,235,.12),0 0 14px rgba(34,211,238,.12)
}
/* Plein écran light — variante bleu-violet (≠ cyan dark, ≠ CTA navy + halo) */
[data-theme="light"] .rlz-row-actions .btn-primary{
  color:#fff!important;
  background:linear-gradient(180deg,#7eb6ff 0%,#5a6bc4 48%,#3d58b0 100%)!important;
  border:1px solid rgba(90,107,196,.35)!important;
  box-shadow:0 8px 20px -12px rgba(61,88,176,.42),inset 0 1px 0 rgba(255,255,255,.28)!important;
  filter:none!important
}
[data-theme="light"] .rlz-row-actions .btn-primary:hover{
  color:#fff!important;
  border-color:rgba(90,107,196,.5)!important;
  background:linear-gradient(180deg,#8fc0ff 0%,#6a7bd4 48%,#4664c0 100%)!important;
  box-shadow:0 10px 24px -10px rgba(61,88,176,.52),inset 0 1px 0 rgba(255,255,255,.32)!important;
  filter:none!important
}
[data-theme="light"] .rlz-row-actions .btn-ghost{
  color:#4d58a8!important;
  border:1px solid rgba(30,58,110,.16)!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important;
  backdrop-filter:none!important
}
@media(hover:hover){
  [data-theme="light"] .rlz-row-actions .btn-ghost:hover{
    border-color:color-mix(in srgb,var(--accent-deep) 42%,transparent)!important;
    color:var(--accent-deep)!important;
    background:#fff!important;
    box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-deep) 14%,transparent),0 6px 20px color-mix(in srgb,var(--accent-deep) 10%,transparent)!important;
    transform:translateY(-1px)
  }
}

/* Showcase — light DA */
[data-theme="light"] .rlz-showcase-item{
  background:linear-gradient(118deg,#ffffff 0%,rgba(248,250,255,.98) 100%);
  border-color:rgba(37,99,235,.28);
  box-shadow:0 0 0 1px rgba(37,99,235,.08),0 4px 16px rgba(14,90,114,.06)
}
[data-theme="light"] .rlz-showcase-item--cta{
  border-color:rgba(37,99,235,.4);
  background:linear-gradient(118deg,#ffffff 0%,rgba(232,238,255,.92) 42%,rgba(228,250,252,.9) 100%);
  box-shadow:0 0 0 1px rgba(37,99,235,.1),0 0 18px rgba(34,211,238,.08)
}
[data-theme="light"] .rlz-showcase-body h3{color:var(--card-text)}
[data-theme="light"] .rlz-showcase-chips span{
  border-color:rgba(30,58,110,.16);color:#4d58a8;background:rgba(255,255,255,.9)
}
[data-theme="light"] .rlz-showcase-plan{
  border-color:rgba(37,99,235,.32);color:var(--accent-deep);
  background:rgba(232,238,255,.7);box-shadow:0 0 0 1px rgba(37,99,235,.08)
}
[data-theme="light"] .rlz-showcase-link{color:var(--accent-deep)}
[data-theme="light"] .rlz-showcase-link:hover{color:#1e3a6e}
@media(hover:hover){
  [data-theme="light"] .rlz-showcase-item:not(.rlz-showcase-item--cta):hover{
    border-color:rgba(37,99,235,.52);
    background:linear-gradient(118deg,#ffffff 0%,rgba(232,238,255,.98) 42%,rgba(228,250,252,.95) 100%);
    box-shadow:0 0 0 1px rgba(37,99,235,.16),0 16px 44px rgba(37,99,235,.12),0 0 28px rgba(34,211,238,.1)
  }
}

/* Plein écran — light */
[data-theme="light"] .rlz-fs__panel{
  border-color:rgba(37,99,235,.48);
  background:#fff;
  box-shadow:0 0 0 1px rgba(37,99,235,.16),0 24px 80px rgba(14,90,114,.18),0 0 36px rgba(34,211,238,.1)
}
[data-theme="light"] .rlz-fs__head{
  background:rgba(248,250,255,.96);
  border-bottom-color:rgba(37,99,235,.16)
}
[data-theme="light"] .rlz-fs__title{color:var(--card-text)}
[data-theme="light"] .rlz-fs__nav,
[data-theme="light"] .rlz-fs__close{
  border-color:rgba(37,99,235,.28);
  background:rgba(255,255,255,.92);
  color:#4d58a8;
  box-shadow:0 0 0 1px rgba(37,99,235,.06)
}
[data-theme="light"] .rlz-fs__nav:hover,
[data-theme="light"] .rlz-fs__close:hover{
  color:var(--accent-deep);
  border-color:rgba(37,99,235,.5);
  background:#fff;
  box-shadow:0 0 0 1px rgba(37,99,235,.14),0 0 16px rgba(34,211,238,.14)
}

/* Soul / process */
[data-theme="light"] .soul-content .sec-head .lead{color:var(--accent-ink);font-weight:350}
[data-theme="light"] .soul-section-bg{
  opacity:.7;
  background:
    radial-gradient(ellipse 55% 45% at 12% 40%,rgba(94,234,212,.2),transparent 68%),
    radial-gradient(ellipse 55% 45% at 88% 60%,rgba(61,139,240,.12),transparent 68%)
}
[data-theme="light"] .proc-z-line{background:rgba(90,107,196,.16)}
[data-theme="light"] .proc-z-fill{
  box-shadow:0 0 14px rgba(90,107,196,.3),0 0 8px rgba(61,139,240,.2)
}
[data-theme="light"] .proc-z-fork{
  filter:brightness(.95) saturate(1.1) drop-shadow(0 0 6px rgba(90,107,196,.28))
}
/* Nodes — dédoublement / contours lumineux dark → light violet */
[data-theme="light"] .proc-z-node{
  background:#ffffff!important;
  border-color:rgba(90,107,196,.42)!important;
  color:#4d58a8!important;
  box-shadow:
    0 0 16px rgba(90,107,196,.2),
    5px -4px 0 -2px rgba(90,107,196,.28),
    -4px 4px 0 -2px rgba(77,88,168,.26),
    inset 0 0 12px rgba(90,107,196,.08)!important
}
[data-theme="light"] .proc-z-node::before{
  border-color:rgba(90,107,196,.36)!important;
  opacity:.8
}
[data-theme="light"] .proc-z-step.pz-on .proc-z-node{
  border-color:rgba(90,107,196,.88)!important;
  color:#5a6bc4!important;
  box-shadow:
    0 0 24px rgba(90,107,196,.38),
    5px -5px 0 -2px rgba(90,107,196,.4),
    -4px 4px 0 -2px rgba(77,88,168,.36),
    inset 0 0 18px rgba(90,107,196,.1)!important
}
[data-theme="light"] .proc-z-icon{
  border-color:rgba(90,107,196,.36)!important;
  background:rgba(90,107,196,.08)!important;
  color:#5a6bc4!important;
  box-shadow:0 0 16px rgba(90,107,196,.12)!important
}
[data-theme="light"] .proc-z-badge{
  border-color:rgba(90,107,196,.32)!important;
  color:#4d58a8!important;
  background:rgba(90,107,196,.06)!important
}
[data-theme="light"] .proc-z-card h3{color:var(--card-text)!important}
[data-theme="light"] .proc-z-card p{color:var(--card-muted)!important}
@media(max-width:721px){
  [data-theme="light"] .proc-z-card,
  [data-theme="light"] .proc-z-step.pz-on .proc-z-card{
    background:#ffffff!important
  }
}

/* Services / feats */
[data-theme="light"] .sa-visual .tag{
  color:#4d58a8!important;
  border-color:rgba(30,58,110,.16)!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important
}
[data-theme="light"] .cs-arrow{
  color:#4d58a8!important;
  border-color:rgba(30,58,110,.18)!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 1px 4px rgba(14,90,114,.06)!important
}
@media(hover:hover){
  [data-theme="light"] .cs-arrow:hover{
    color:var(--accent-deep)!important;
    border-color:color-mix(in srgb,var(--accent-deep) 42%,transparent)!important;
    background:#fff!important;
    box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-deep) 14%,transparent),0 4px 14px color-mix(in srgb,var(--accent-deep) 10%,transparent)!important
  }
}
[data-theme="light"] .sa-visual .sa-metric{
  background:rgba(234,246,248,.8);
  border-color:var(--card-line)
}
[data-theme="light"] .ss-feats li{color:var(--muted)}
[data-theme="light"] .ss-feats li strong{color:var(--text)}
[data-theme="light"] .feat-desc{color:var(--faint)}
[data-theme="light"] .infomaniak-encart p{color:var(--card-muted)}
[data-theme="light"] .infomaniak-encart strong{color:var(--card-text)}

/* Comparatif — table claire */
[data-theme="light"] .cmp-wrap{
  background:#ffffff!important;
  border-color:rgba(14,90,114,.14);
  box-shadow:0 18px 48px -24px rgba(14,90,114,.2)
}
[data-theme="light"] .cmp-table thead th{color:var(--card-text)}
[data-theme="light"] .cmp-table thead th:nth-child(2){color:#8af2ee;text-shadow:0 0 12px rgba(138,242,238,.26)}
[data-theme="light"] .cmp-table thead th:nth-child(3),
[data-theme="light"] .cmp-table thead th.hl{color:#22d3ee}
[data-theme="light"] .cmp-table thead th:nth-child(4){color:#5282e8;text-shadow:0 0 12px rgba(82,130,232,.24)}
[data-theme="light"] .cmp-table td:first-child{color:var(--card-muted)}
[data-theme="light"] .cmp-table td{color:var(--card-text);border-bottom-color:rgba(14,90,114,.1)}
[data-theme="light"] .cmp-table .ko{color:var(--card-faint)}
[data-theme="light"] .cmp-table .mid{color:#22d3ee}
[data-theme="light"] .cmp-table tbody td:nth-child(2){background:linear-gradient(168deg,#ffffff 0%,#f7fffe 48%,#ecfeff 100%)}
[data-theme="light"] .cmp-table tbody td:nth-child(3),
[data-theme="light"] .cmp-table td.hl{background:linear-gradient(168deg,#f4fbfd 0%,#e8f7fb 50%,#dff4f8 100%)}
[data-theme="light"] .cmp-table tbody td:nth-child(4){background:linear-gradient(168deg,#f0f5fc 0%,#e4ecf8 48%,#dbe4f5 100%)}

/* Contact / partenaire — formulaire light
   Shell gris-bleu (teinte précédente) · labels texte · field-boxes clairs */
[data-theme="light"] .cnt-form-shell{
  background:linear-gradient(165deg,#e8eef6 0%,#dfe7f2 48%,#d5e0ee 100%)!important;
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:0 24px 60px -26px rgba(30,58,110,.28),0 0 0 1px rgba(255,255,255,.7) inset!important
}
[data-theme="light"] .cnt-form-shell::after{opacity:.45}
[data-theme="light"] .cnt-form-head{
  border-bottom-color:rgba(30,58,110,.16)!important
}
[data-theme="light"] .cnt-form-head .eyebrow{color:var(--accent-deep)!important}
[data-theme="light"] .cnt-form-head h2{color:var(--card-text)}
[data-theme="light"] .cnt-form-head p{color:var(--card-muted)}
/* Labels / hints : texte seul, jamais de fond « surligné » */
[data-theme="light"] .cnt-lbl-form,
[data-theme="light"] .cnt-accordion-hint,
[data-theme="light"] .cnt-accordion-fac{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important
}
[data-theme="light"] .cnt-lbl-form{color:var(--accent-deep)!important}
[data-theme="light"] .cnt-lbl-form .req{color:#2563eb!important}
[data-theme="light"] .cnt-lbl-form--col{color:var(--accent-deep)!important}
[data-theme="light"] .cnt-accordion-hint,
[data-theme="light"] .cnt-accordion-fac,
[data-theme="light"] .cnt-pal-lbl,
[data-theme="light"] .cnt-palette-intro{color:var(--faint)!important}
[data-theme="light"] .cnt-field-box{
  background:rgba(255,255,255,.55)!important;
  border-color:rgba(30,58,110,.12)!important;
  box-shadow:none!important
}
[data-theme="light"] .cnt-field-box:focus-within{
  border-color:rgba(37,99,235,.35)!important;
  background:rgba(255,255,255,.85)!important
}
/* Offres préférences — DA light (cards FAQ, sans glow néon) */
[data-theme="light"] .cnt-check-lbl{
  border-color:rgba(30,58,110,.14)!important;
  background:#ffffff!important;
  color:rgba(12,40,52,.72)!important;
  box-shadow:0 1px 2px rgba(30,58,110,.04)!important
}
[data-theme="light"] .cnt-check-lbl:hover{
  border-color:rgba(37,99,235,.42)!important;
  background:linear-gradient(118deg,#ffffff 0%,rgba(240,243,252,.96) 42%,rgba(236,250,252,.92) 100%)!important;
  color:var(--accent-deep)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.1),0 6px 16px rgba(37,99,235,.08)!important
}
[data-theme="light"] .cnt-check-lbl:has(.cnt-chk:checked){
  border-color:rgba(37,99,235,.48)!important;
  background:linear-gradient(118deg,#ffffff 0%,rgba(232,238,255,.98) 42%,rgba(228,250,252,.95) 100%)!important;
  color:var(--accent-deep)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.14),0 6px 16px rgba(37,99,235,.1)!important
}
[data-theme="light"] .cnt-chk{
  border-color:rgba(30,58,110,.28)!important;
  background:#fff!important;
  box-shadow:none!important
}
[data-theme="light"] .cnt-check-lbl:hover .cnt-chk{
  border-color:rgba(37,99,235,.5)!important;
  background:rgba(37,99,235,.06)!important
}
[data-theme="light"] .cnt-chk:checked,
[data-theme="light"] .cnt-check-lbl:hover .cnt-chk:checked,
[data-theme="light"] .cnt-check-lbl .cnt-chk:checked{
  border-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4 9l3.5 3.5L14 5.5' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E"),linear-gradient(135deg,#2563eb 0%,#3d8bf0 55%,#22d3ee 100%)!important;
  background-repeat:no-repeat,no-repeat!important;
  background-position:center,center!important;
  background-size:13px,100% 100%!important;
  box-shadow:0 2px 8px rgba(37,99,235,.25)!important
}
[data-theme="light"] .cnt-accordion[open] .cnt-accordion-label{color:var(--accent-deep)!important}
[data-theme="light"] .cnt-accordion-label{color:var(--card-text)!important;background:transparent!important}
[data-theme="light"] .cnt-inp{
  color:var(--card-text);
  border-color:rgba(30,58,110,.18)!important;
  background:#ffffff!important;
  box-shadow:0 1px 2px rgba(30,58,110,.04)
}
[data-theme="light"] .cnt-inp::placeholder{color:var(--faint)}
[data-theme="light"] .cnt-field-box .cnt-inp{
  background:#ffffff!important;
  border-color:rgba(30,58,110,.18)!important
}
[data-theme="light"] .cnt-field-box .cnt-inp:focus{
  border-color:rgba(37,99,235,.5)!important;
  background:#ffffff!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.16)!important
}
[data-theme="light"] .cnt-sel option,
[data-theme="light"] .cnt-sel optgroup{
  background:#ffffff;color:var(--card-text)
}
[data-theme="light"] .cnt-accordion{
  background:rgba(255,255,255,.65)!important;
  border-color:rgba(30,58,110,.14)!important;
  box-shadow:none!important
}
[data-theme="light"] .cnt-accordion[open]{
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.06)!important
}
[data-theme="light"] .cnt-accordion-trigger:hover{background:rgba(37,99,235,.04)!important}
[data-theme="light"] .cnt-accordion-icon{
  border-color:rgba(30,58,110,.16)!important;
  background:rgba(255,255,255,.8)!important
}
[data-theme="light"] .cnt-accordion-icon::before{background:#2563eb!important}
[data-theme="light"] .cnt-accordion[open] .cnt-accordion-icon{
  border-color:rgba(37,99,235,.3)!important;
  background:rgba(37,99,235,.06)!important
}
[data-theme="light"] .cnt-accordion-panel{border-top-color:rgba(30,58,110,.1)!important}
[data-theme="light"] .cnt-rgpd,
[data-theme="light"] .cnt-rgpd-bar{
  background:rgba(255,255,255,.7)!important;
  border-color:rgba(30,58,110,.12)!important
}
[data-theme="light"] .cnt-rgpd-copy,
[data-theme="light"] .cnt-rgpd-note{color:rgba(12,40,52,.65)}
[data-theme="light"] .page-partenariat .partner-form-note{color:var(--faint)!important}
[data-theme="light"] .cnt-vis-picker{
  background:#ffffff!important;
  border-color:rgba(14,90,114,.16)!important;
  box-shadow:0 4px 14px rgba(14,90,114,.06),inset 0 1px 0 #fff!important
}
[data-theme="light"] .cnt-vis-picker:hover{
  background:#f7fcfd!important;
  border-color:rgba(37,99,235,.35)!important;
  box-shadow:0 6px 18px rgba(37,99,235,.1)!important
}
[data-theme="light"] .cnt-vis-dot{
  border-color:rgba(14,90,114,.15)!important;
  box-shadow:0 0 0 1px rgba(14,90,114,.08),0 0 12px color-mix(in srgb,var(--vis-color,var(--cyan)) 28%,transparent)!important
}
[data-theme="light"] .cnt-vis-hex{color:var(--card-text)!important}
[data-theme="light"] .cnt-info-bar h3{color:var(--card-text)}
[data-theme="light"] .cnt-info-bar p{color:var(--card-muted)}
[data-theme="light"] .legal-page__body a:hover{color:var(--accent-deep)}
[data-theme="light"] .packs-note{color:var(--faint)}

/* Réalisations — preview sans vignette noir */
[data-theme="light"] .rlz-row-preview{
  background:linear-gradient(118deg,#f4f7ff 0%,#eef8fb 100%)!important
}
[data-theme="light"] .rlz-row-preview::after{
  background:linear-gradient(to right,rgba(244,247,255,0) 0%,rgba(244,247,255,.12) 100%)!important;
  opacity:.35
}
[data-theme="light"] .rlz-row-preview .alma-sw--live{
  background:#ffffff!important;
  border-color:rgba(37,99,235,.32)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.1),0 12px 32px rgba(37,99,235,.1),0 0 20px rgba(34,211,238,.06),inset 0 1px 0 #fff!important
}
[data-theme="light"] .alma-sw__screen{
  background:#f4f7fb!important
}

/* Services cards — impact light */
[data-theme="light"] .sa-visual{
  background:linear-gradient(165deg,#ffffff 0%,rgba(240,243,252,.98) 55%,rgba(228,250,252,.95) 100%)!important;
  border-color:rgba(37,99,235,.32)!important;
  box-shadow:0 22px 50px -20px rgba(37,99,235,.18),0 0 0 1px rgba(255,255,255,.9) inset,0 0 40px -12px var(--sa-glow,rgba(34,211,238,.3))!important
}
[data-theme="light"] .sa-visual::before{
  background:radial-gradient(90% 80% at 50% 100%,var(--sa-glow,rgba(61,139,240,.22)),transparent 68%)!important;
  opacity:1
}
[data-theme="light"] .sa-visual::after{
  background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(37,99,235,.035) 3px,rgba(37,99,235,.035) 4px)!important
}
[data-theme="light"] .sa-icon{
  background:#ffffff!important;
  border-color:rgba(37,99,235,.35)!important;
  color:var(--accent-deep)!important;
  box-shadow:0 0 28px -6px var(--sa-glow,rgba(34,211,238,.45))!important
}
[data-theme="light"] .sa-num{
  opacity:.32!important
}
[data-theme="light"] .sa-orbit{
  border-color:rgba(37,99,235,.28)!important
}
[data-theme="light"] .sa-o1{border-color:rgba(61,139,240,.4)!important}
[data-theme="light"] .sa-o2{border-color:rgba(34,211,238,.35)!important}
[data-theme="light"] .sa-o3{border-color:rgba(61,139,240,.18)!important}
[data-theme="light"] .sa-code,
[data-theme="light"] .sa-cal,
[data-theme="light"] .sa-cart{
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:0 8px 24px rgba(37,99,235,.1)!important
}
[data-theme="light"] .sa-cal-grid span{
  background:rgba(14,90,114,.08)!important;
  color:var(--faint)!important
}
[data-theme="light"] .sa-cal-grid span.on{
  background:rgba(34,211,238,.22)!important;
  color:#0e7490!important
}
[data-theme="light"] .sa-cart-lbl,
[data-theme="light"] .sa-up-row{
  color:var(--muted)!important
}
[data-theme="light"] .sa-up-bar{
  background:rgba(14,90,114,.12)!important
}
[data-theme="light"] .sa-pal span{
  box-shadow:0 3px 10px rgba(14,90,114,.25)!important
}
[data-theme="light"] .ss-feats li::before{color:#22d3ee!important}
[data-theme="light"] .feat-desc{color:var(--muted)!important}

/* Poda glow — anneaux cyan visibles sur fond clair (repos ≈ dark mode) */
[data-theme="light"] .poda .g-outer::before{
  background-image:conic-gradient(transparent,#5282e8 4%,#3d8bf0 7%,transparent 36%,transparent 48%,#22d3ee 58%,#5282e8 62%,transparent 88%)!important;
  filter:brightness(1.15) saturate(1.25)
}
[data-theme="light"] .poda .g-mid::before{
  background-image:conic-gradient(transparent,#22d3ee 6%,#0e7490 10%,transparent 18%,transparent 48%,#1d4ed8 56%,#22d3ee 62%,transparent 70%)!important;
  filter:brightness(1.1) saturate(1.2)
}
[data-theme="light"] .poda .g-bright::before{
  background-image:conic-gradient(transparent 0%,#8af2ee 6%,#22d3ee 12%,transparent 20%,transparent 48%,#5eeaff 56%,#8af2ee 62%,transparent 70%)!important;
  filter:brightness(1.2) saturate(1.15)
}
[data-theme="light"] .poda .g-thin::before{
  background-image:conic-gradient(transparent,#5282e8 4%,transparent 12%,transparent 48%,#22d3ee 58%,transparent 66%)!important;
  filter:brightness(1.15)
}
[data-theme="light"] :is(
  .btn-poda.btn-poda--primary,
  .btn-poda--submit
) .btn-poda-face,
[data-theme="light"] .hero .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .hero-cta-row .btn-poda.btn-poda--primary .btn-poda-face{
  border-color:rgba(34,211,238,.38)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 16px rgba(34,211,238,.22),0 0 24px rgba(61,139,240,.12),0 3px 10px rgba(14,90,114,.12)!important
}
[data-theme="light"] :is(
  .btn-poda.btn-poda--primary,
  .btn-poda--submit
):hover .btn-poda-face,
[data-theme="light"] :is(
  .btn-poda.btn-poda--primary,
  .btn-poda--submit
):focus-visible .btn-poda-face,
[data-theme="light"] .hero .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .hero .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
[data-theme="light"] .hero-cta-row .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .hero-cta-row .btn-poda.btn-poda--primary:focus-visible .btn-poda-face{
  border-color:rgba(34,211,238,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 20px rgba(34,211,238,.28),0 0 30px rgba(61,139,240,.16),0 4px 12px rgba(14,90,114,.14)!important
}
/* Réalisations + CTAs site — poda light : face violet/cyan (prioritaire) */
[data-theme="light"] .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .btn-poda--submit .btn-poda-face,
[data-theme="light"] .orbit-cta .btn-poda .btn-poda-face,
[data-theme="light"] .orbit-cta.hero-cta-row .btn-poda .btn-poda-face,
[data-theme="light"] .sec-foot .btn-poda .btn-poda-face,
[data-theme="light"] .sec-foot--lg .btn-poda .btn-poda-face,
[data-theme="light"] .sc-cta .btn-poda .btn-poda-face,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .card > .btn-poda .btn-poda-face,
[data-theme="light"] .card .btn-poda.btn-poda--primary .btn-poda-face{
  background:linear-gradient(180deg,#2a3a6e 0%,#1a2448 48%,#3d58b0 100%)!important;
  border-color:rgba(110,231,255,.62)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 22px rgba(94,234,255,.48),0 0 36px rgba(126,182,255,.28),0 0 48px rgba(90,107,196,.18),0 3px 10px rgba(61,88,176,.22)!important
}
/* btn-cyan hors grilles tarifaires (ex. encart devis) — même DA si pas encore upgradé poda */
[data-theme="light"] .btn-cyan:not(.btn-block){
  color:#fff!important;
  background:linear-gradient(180deg,#2a3a6e 0%,#1a2448 48%,#3d58b0 100%)!important;
  border:1px solid rgba(110,231,255,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 22px rgba(94,234,255,.48),0 0 36px rgba(126,182,255,.28),0 3px 10px rgba(61,88,176,.22)!important;
  filter:none!important
}
[data-theme="light"] .btn-cyan:not(.btn-block):hover{
  filter:brightness(1.06)!important;
  border-color:rgba(126,231,255,.8)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 28px rgba(110,231,255,.58),0 0 44px rgba(126,182,255,.36),0 4px 14px rgba(61,88,176,.24)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
[data-theme="light"] .btn-poda--submit:hover .btn-poda-face,
[data-theme="light"] .btn-poda--submit:focus-visible .btn-poda-face,
[data-theme="light"] .orbit-cta .btn-poda:hover .btn-poda-face,
[data-theme="light"] .orbit-cta .btn-poda:focus-visible .btn-poda-face,
[data-theme="light"] .orbit-cta.hero-cta-row .btn-poda:hover .btn-poda-face,
[data-theme="light"] .orbit-cta.hero-cta-row .btn-poda:focus-visible .btn-poda-face,
[data-theme="light"] .sec-foot .btn-poda:hover .btn-poda-face,
[data-theme="light"] .sec-foot--lg .btn-poda:hover .btn-poda-face,
[data-theme="light"] .sc-cta .btn-poda:hover .btn-poda-face,
[data-theme="light"] .sc-cta .btn-poda:focus-visible .btn-poda-face,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary:focus-visible .btn-poda-face,
[data-theme="light"] .card > .btn-poda:hover .btn-poda-face,
[data-theme="light"] .card .btn-poda.btn-poda--primary:hover .btn-poda-face,
[data-theme="light"] .card .btn-poda.btn-poda--primary:focus-visible .btn-poda-face{
  border-color:rgba(126,231,255,.8)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 28px rgba(110,231,255,.58),0 0 44px rgba(126,182,255,.36),0 0 56px rgba(90,107,196,.22),0 4px 14px rgba(61,88,176,.24)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-outer,
[data-theme="light"] .btn-poda--submit .g-outer,
[data-theme="light"] .orbit-cta .btn-poda .g-outer,
[data-theme="light"] .sec-foot .btn-poda .g-outer,
[data-theme="light"] .sec-foot--lg .btn-poda .g-outer,
[data-theme="light"] .sc-cta .btn-poda .g-outer,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-outer,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-outer{
  filter:blur(3px) brightness(1.35)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-outer::before,
[data-theme="light"] .btn-poda--submit .g-outer::before,
[data-theme="light"] .orbit-cta .btn-poda .g-outer::before,
[data-theme="light"] .sec-foot .btn-poda .g-outer::before,
[data-theme="light"] .sec-foot--lg .btn-poda .g-outer::before,
[data-theme="light"] .sc-cta .btn-poda .g-outer::before,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-outer::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-outer::before{
  background-image:conic-gradient(#000,#5a6bc4 4%,#5eeaff 8%,#000 36%,#000 48%,#6ee7ff 58%,#7eb6ff 64%,#000 86%)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-mid,
[data-theme="light"] .orbit-cta .btn-poda .g-mid,
[data-theme="light"] .sec-foot .btn-poda .g-mid,
[data-theme="light"] .sc-cta .btn-poda .g-mid,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-mid,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-mid{
  filter:blur(2.5px) brightness(1.3)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-mid::before,
[data-theme="light"] .orbit-cta .btn-poda .g-mid::before,
[data-theme="light"] .sec-foot .btn-poda .g-mid::before,
[data-theme="light"] .sc-cta .btn-poda .g-mid::before,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-mid::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-mid::before{
  background-image:conic-gradient(rgba(0,0,0,0),#5eeaff,rgba(0,0,0,0) 8%,rgba(0,0,0,0) 48%,#7eb6ff,rgba(0,0,0,0) 58%)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-bright,
[data-theme="light"] .orbit-cta .btn-poda .g-bright,
[data-theme="light"] .sec-foot .btn-poda .g-bright,
[data-theme="light"] .sc-cta .btn-poda .g-bright,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-bright,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-bright{
  filter:blur(1.5px) brightness(1.45)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-bright::before,
[data-theme="light"] .orbit-cta .btn-poda .g-bright::before,
[data-theme="light"] .sec-foot .btn-poda .g-bright::before,
[data-theme="light"] .sc-cta .btn-poda .g-bright::before,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-bright::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-bright::before{
  background-image:conic-gradient(rgba(0,0,0,0) 0%,#8af2ee,rgba(0,0,0,0) 7%,rgba(0,0,0,0) 48%,#6ee7ff,rgba(0,0,0,0) 56%)!important;
  filter:brightness(1.55)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-thin,
[data-theme="light"] .orbit-cta .btn-poda .g-thin,
[data-theme="light"] .sec-foot .btn-poda .g-thin,
[data-theme="light"] .sc-cta .btn-poda .g-thin,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-thin,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-thin{
  filter:blur(.4px) brightness(1.35)!important
}
[data-theme="light"] .btn-poda.btn-poda--primary .g-thin::before,
[data-theme="light"] .orbit-cta .btn-poda .g-thin::before,
[data-theme="light"] .sec-foot .btn-poda .g-thin::before,
[data-theme="light"] .sc-cta .btn-poda .g-thin::before,
[data-theme="light"] .rlz-conv-banner .btn-poda.btn-poda--primary .g-thin::before,
[data-theme="light"] .rlz-row-foot .btn-poda.btn-poda--primary .g-thin::before{
  background-image:conic-gradient(#1c191c,#5eeaff 4%,#7eb6ff 8%,#1c191c 16%,#1c191c 48%,#6ee7ff 56%,#5a6bc4 62%,#1c191c 68%)!important;
  filter:brightness(1.4)!important
}

/* Hero CTA light — DA accueil (face navy + halo cyan) sur TOUS les héros */
[data-theme="light"] .hero .btn-primary,
[data-theme="light"] .hero-cta-row .btn-primary,
[data-theme="light"] .svc-hero-cta .btn-primary,
[data-theme="light"] .ptn-hero-cta .btn-primary,
[data-theme="light"] .hero:has(.hero-scene) .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .page-agence .agence-hero .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .page-agence .agence-hero .btn-primary,
[data-theme="light"] .page-tarifs .tx-hero .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .page-tarifs .tx-hero .btn-primary,
[data-theme="light"] .page-realisations .rlz-hero .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .page-realisations .rlz-hero .btn-primary,
[data-theme="light"] .page-contact .cnt-hero .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .page-contact .cnt-hero .btn-primary,
[data-theme="light"] .page-partenariat .ptn-hero .btn-poda.btn-poda--primary .btn-poda-face,
[data-theme="light"] .page-partenariat .ptn-hero .btn-primary,
[data-theme="light"] .page-secteur .sct-hero .btn-primary,
[data-theme="light"] .page-services .hero .btn-primary,
[data-theme="light"] .page-secteurs .hero .btn-primary,
[data-theme="light"] .page-faq .hero .btn-primary,
[data-theme="light"] .page-blog .hero .btn-primary,
[data-theme="light"] .page-index .hero .btn-primary{
  background:linear-gradient(180deg,#2a3a6e 0%,#1a2448 48%,#3d58b0 100%)!important;
  border-color:rgba(110,231,255,.62)!important;
  color:#fff!important;
  text-shadow:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 22px rgba(94,234,255,.48),0 0 36px rgba(126,182,255,.28),0 0 48px rgba(90,107,196,.18),0 3px 10px rgba(61,88,176,.22)!important
}
[data-theme="light"] .hero .btn-primary:hover,
[data-theme="light"] .hero-cta-row .btn-primary:hover,
[data-theme="light"] .svc-hero-cta .btn-primary:hover,
[data-theme="light"] .ptn-hero-cta .btn-primary:hover,
[data-theme="light"] .page-agence .agence-hero .btn-primary:hover,
[data-theme="light"] .page-tarifs .tx-hero .btn-primary:hover,
[data-theme="light"] .page-realisations .rlz-hero .btn-primary:hover,
[data-theme="light"] .page-contact .cnt-hero .btn-primary:hover,
[data-theme="light"] .page-partenariat .ptn-hero .btn-primary:hover,
[data-theme="light"] .page-secteur .sct-hero .btn-primary:hover,
[data-theme="light"] .page-services .hero .btn-primary:hover,
[data-theme="light"] .page-secteurs .hero .btn-primary:hover,
[data-theme="light"] .page-index .hero .btn-primary:hover{
  filter:brightness(1.06);
  border-color:rgba(126,231,255,.8)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 28px rgba(110,231,255,.58),0 0 44px rgba(126,182,255,.36),0 4px 14px rgba(61,88,176,.24)!important
}
/* Hero ghost secondaire — porcelaine (à côté d'un primary) */
[data-theme="light"] .hero:has(.hero-scene) .btn-ghost,
[data-theme="light"] .page-agence .agence-hero .btn-ghost,
[data-theme="light"] .page-tarifs .tx-hero .btn-ghost,
[data-theme="light"] .page-realisations .rlz-hero .btn-ghost,
[data-theme="light"] .page-contact .cnt-hero .btn-ghost,
[data-theme="light"] .page-partenariat .ptn-hero .btn-ghost,
[data-theme="light"] .page-secteur .sct-hero .btn-ghost{
  color:#4d58a8!important;
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(30,58,110,.18)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important;
  text-shadow:none!important;
  backdrop-filter:none!important
}

/* ---- 4.11b polish : lisibilité + heroes + tarifs + nav ---- */
[data-theme="light"] .footer-hills{
  opacity:.94;
  filter:none;
  mix-blend-mode:normal
}

/* Heroes — images d'origine (remap light abandonné : DA préservée) */
[data-theme="light"] .page-index .hero{
  background:#ffffff
}
[data-theme="light"] #nebula-canvas{
  opacity:1;
  mix-blend-mode:normal
}

/* Tarifs — card hébergement : texte net (sans halo) */
[data-theme="light"] .card:has(.tx-host-card),
[data-theme="light"] .tx-host-card,
[data-theme="light"] .tx-host-card *{
  text-shadow:none!important
}

/* Secteurs carousel — light : fond sobre/blanc + nuances bleu-violacé */
[data-theme="light"] .sc-left{
  background:linear-gradient(140deg,rgba(34,211,238,.1) 0%,rgba(255,255,255,.98) 38%,rgba(242,244,252,.97) 64%,rgba(90,107,196,.12) 100%)!important
}
[data-theme="light"] .sc-left::before{background:linear-gradient(to bottom,#eef3f8 0%,transparent 100%)!important}
[data-theme="light"] .sc-left::after{background:linear-gradient(to top,#e8eef6 0%,transparent 100%)!important}
[data-theme="light"] .sc-item.is-active{
  background:#0a0f1c!important;border-color:#0a0f1c!important
}
[data-theme="light"] .sc-item.is-active .sc-lbl{color:#fff!important;font-weight:500}
[data-theme="light"] .sc-item.is-active .sc-ico{color:#22d3ee!important}
[data-theme="light"] .sc-item:not(.is-active){
  border-color:rgba(14,90,114,.14)!important;
  background:rgba(255,255,255,.62)!important
}
[data-theme="light"] .sc-item:not(.is-active) .sc-ico{color:#4d58a8!important}
[data-theme="light"] .sc-item .sc-lbl{color:rgba(7,19,28,.72)!important}
[data-theme="light"] .sc-item:not(.is-active):hover .sc-lbl{color:rgba(7,19,28,.9)!important}
[data-theme="light"] .sc-item:not(.is-active):hover .sc-ico{color:#2563eb!important}
[data-theme="light"] .sc-right{
  background:linear-gradient(160deg,#eef2f8 0%,#f7f9fc 100%)!important
}
[data-theme="light"] .sc-card{
  border:none!important;
  box-shadow:0 12px 36px -18px rgba(14,90,114,.22)!important
}
[data-theme="light"] .sc-card .sc-overlay,
[data-theme="light"] .sc-right .sc-overlay{
  background:linear-gradient(to top,rgba(5,8,28,.92) 0%,rgba(5,8,28,.38) 55%,transparent 100%)!important
}
@media(max-width:1023px){
  [data-theme="light"] .sc-card .sc-overlay,
  [data-theme="light"] .sc-right .sc-overlay{
    background:
      linear-gradient(to bottom,rgba(5,8,28,.5) 0%,transparent 32%),
      linear-gradient(to top,rgba(5,8,28,.9) 0%,rgba(5,8,28,.32) 40%,transparent 68%)!important
  }
}
[data-theme="light"] .sc-desc{
  color:#fff!important;
  text-shadow:0 2px 8px rgba(0,0,0,.45)!important
}
[data-theme="light"] .sc-go,
[data-theme="light"] .sc-card.is-active:hover .sc-go,
[data-theme="light"] .sc-card.is-active:focus-visible .sc-go{
  color:var(--cyan)!important;
  text-shadow:0 1px 6px rgba(0,0,0,.4)!important
}
[data-theme="light"] .sc-badge{
  background:rgba(15,18,35,.88)!important;
  border-color:rgba(255,255,255,.18)!important;
  color:rgba(255,255,255,.88)!important
}
[data-theme="light"] .sc-badge-dot{
  background:#22d3ee!important;
  box-shadow:0 0 8px rgba(34,211,238,.55)!important
}
[data-theme="light"] .sc-card:not(.is-active) img{
  filter:grayscale(.45) brightness(.7) saturate(.85)!important
}
[data-theme="light"] .sc-pill,
[data-theme="light"] .sc-card .pill{
  background:rgba(255,255,255,.95)!important;
  color:#4d58a8!important;
  border-color:rgba(30,58,110,.18)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important
}

/* Blog / secteurs — light tags & card hovers */
[data-theme="light"] .blog-card{
  background:#fff!important;
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:0 0 0 1px rgba(37,99,235,.08),0 4px 16px rgba(14,90,114,.06)!important
}
@media(hover:hover){
  /* Blog — arc bas-droit cyan (≠ bande gauche des .card) */
  [data-theme="light"] .blog-card:hover{
    border-color:rgba(37,99,235,.52)!important;
    background:
      radial-gradient(ellipse 85% 70% at 100% 100%,rgba(34,211,238,.16),transparent 55%),
      radial-gradient(ellipse 50% 40% at 0% 0%,rgba(90,107,196,.08),transparent 50%),
      linear-gradient(#fff,#fff)!important;
    box-shadow:0 0 0 1px rgba(37,99,235,.16),0 12px 36px rgba(37,99,235,.12),0 0 24px rgba(34,211,238,.1)!important
  }
}

/* Manifeste code + perf rings — contraste encre */
[data-theme="light"] .manifeste-visual{
  background:#ffffff!important;
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:0 18px 50px -22px rgba(37,99,235,.16),inset 0 1px 0 #fff!important
}
[data-theme="light"] .msplit-left{
  background:linear-gradient(160deg,#f7fcfd 0%,#eef8fa 100%)
}
[data-theme="light"] .msplit-code{
  color:rgba(7,19,28,.82)!important
}
[data-theme="light"] .msplit-code .c-kw{color:#0a5c6a!important}
[data-theme="light"] .msplit-code .c-str{color:#4c3fd4!important}
[data-theme="light"] .msplit-code .c-fn{color:#0c8aa8!important}
[data-theme="light"] .msplit-code .c-cm{color:var(--faint)!important}
[data-theme="light"] .msplit-divider{
  background:linear-gradient(to bottom,transparent,rgba(37,99,235,.4) 31%,rgba(61,139,240,.4) 71%,transparent)!important
}
[data-theme="light"] .bp-lbl{
  color:rgba(7,19,28,.72)!important
}
[data-theme="light"] .bp-val{
  color:rgba(7,19,28,.92)!important
}
[data-theme="light"] .bp-track{
  stroke:rgba(14,90,114,.18)!important
}
[data-theme="light"] .bento-card .bp-lbl{color:rgba(7,19,28,.72)!important}
[data-theme="light"] .bp-fill{
  filter:drop-shadow(0 0 4px var(--c,#22d3ee))!important
}

/* Tarifs — prix encre→cyan/bleu bien visible ; cards clair→foncé */
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1){
  background:
    linear-gradient(148deg,transparent 0%,transparent 55%,rgba(118,235,237,.07) 78%,rgba(118,235,237,.14) 100%),
    linear-gradient(168deg,#ffffff 0%,#f5fffe 48%,#eef9fa 100%)!important;
  border-color:rgba(118,235,237,.45)!important;
  box-shadow:0 18px 48px -24px rgba(118,235,237,.14),0 0 0 1px rgba(255,255,255,.9) inset!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+2){
  background:
    linear-gradient(148deg,transparent 0%,transparent 55%,rgba(34,211,238,.07) 78%,rgba(14,165,201,.14) 100%),
    linear-gradient(168deg,#f4fbfd 0%,#e8f7fb 50%,#e4f3f6 100%)!important;
  border-color:rgba(34,211,238,.36)!important;
  box-shadow:0 18px 48px -24px rgba(37,99,235,.14),0 0 0 1px rgba(255,255,255,.85) inset!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+3){
  background:
    linear-gradient(148deg,transparent 0%,transparent 45%,rgba(82,130,232,.12) 70%,rgba(61,88,200,.24) 100%),
    linear-gradient(168deg,#f0f5fc 0%,#e4ecf8 48%,#dbe4f5 100%)!important;
  border-color:rgba(82,130,232,.38)!important;
  box-shadow:0 18px 48px -24px rgba(61,139,240,.22),0 0 0 1px rgba(255,255,255,.85) inset!important
}
/* Prix light — encre → mid → accent ; stops complets (pas de plateau après 42 %) */
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .plan-price .amt.grad-text{
  background-image:linear-gradient(92deg,#062428 0%,#0d4f56 14%,#1a7a82 28%,#2eb0b6 46%,#5adfe2 68%,#76ebed 100%)!important;
  filter:drop-shadow(0 1px 0 rgba(10,40,68,.1))
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+2) .plan-price .amt.grad-text{
  background-image:linear-gradient(92deg,#061820 0%,#0a3a52 14%,#0e7490 28%,#14a3bc 46%,#1abfd4 68%,#22d3ee 100%)!important;
  filter:drop-shadow(0 1px 0 rgba(10,40,68,.1))
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+3) .plan-price .amt.grad-text{
  background-image:linear-gradient(92deg,#080c22 0%,#1a2f6e 14%,#2d4fad 28%,#3d6ad4 46%,#5282e8 68%,#93b4f5 100%)!important;
  filter:drop-shadow(0 1px 0 rgba(10,40,68,.1))
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .plan-price .amt.grad-text.amt--short{
  background-image:linear-gradient(92deg,#062428 0%,#146870 22%,#2aa8b0 48%,#5adfe2 74%,#76ebed 100%)!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+2) .plan-price .amt.grad-text.amt--short{
  background-image:linear-gradient(92deg,#061820 0%,#0e6490 22%,#14b8d4 48%,#1abfd4 74%,#22d3ee 100%)!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+3) .plan-price .amt.grad-text.amt--short{
  background-image:linear-gradient(92deg,#080c22 0%,#2a4aab 22%,#3d6ad4 48%,#5282e8 72%,#93b4f5 100%)!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .plan-name{
  color:#76ebed!important;text-shadow:0 0 14px rgba(118,235,237,.32)
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+2) .plan-name{
  color:#22d3ee;text-shadow:0 0 14px rgba(34,211,238,.36)
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+3) .plan-name{
  color:#5282e8;text-shadow:0 0 14px rgba(82,130,232,.34)
}
[data-theme="light"] .plan-feat-q{color:rgba(7,19,28,.84)!important}
[data-theme="light"] .plan-feat-q:hover{color:#0a3a48!important}
[data-theme="light"] .plan-feats{color:rgba(12,40,52,.8)!important}
[data-theme="light"] .plan-feats li.off,
[data-theme="light"] .plan-feat-item.off .plan-feat-q{color:var(--faint)!important}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .check{color:#76ebed!important}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .plan-feat-q .pm{color:#76ebed!important;border-color:rgba(118,235,237,.28)!important}
/* Bouton gauche — #76EBED plat, texte blanc en light (pas de stop bas vert) */
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .btn-cyan,
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .btn-poda .btn-poda-face{
  color:#fff!important;
  background:linear-gradient(180deg,#98f5f6 0%,#76ebed 100%)!important;
  border-color:rgba(118,235,237,.4)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 22px -10px rgba(118,235,237,.38)!important;
  text-shadow:none!important;
  filter:none!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .btn-poda:hover .btn-poda-face,
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .btn-poda:focus-visible .btn-poda-face,
[data-theme="light"] .price-grid .card.plan:nth-child(3n+1) .btn-cyan:hover{
  filter:none!important;
  background:linear-gradient(180deg,#a8f7f8 0%,#86eef0 100%)!important;
  border-color:rgba(118,235,237,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 12px 28px -10px rgba(118,235,237,.48)!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+2) .btn-cyan{
  color:#fff!important;
  background:linear-gradient(180deg,#5eeaf5 0%,#22d3ee 100%)!important;
  border-color:rgba(34,211,238,.32)!important;
  box-shadow:0 8px 24px -10px rgba(34,211,238,.42),inset 0 1px 0 rgba(255,255,255,.4)!important
}
[data-theme="light"] .price-grid .card.plan:nth-child(3n+3) .btn-cyan{
  color:#fff!important;
  background:linear-gradient(180deg,#93b4f5 0%,#5282e8 100%)!important;
  border-color:rgba(82,130,232,.35)!important;
  box-shadow:0 8px 24px -10px rgba(82,130,232,.4),inset 0 1px 0 rgba(255,255,255,.35)!important
}
@media(hover:hover){
  [data-theme="light"] .price-grid .card.plan .btn-cyan:hover{
    filter:brightness(1.05);
    transform:translateY(-1px)
  }
  /* Hover léger : wash bas de card (cyan atténué vs card 3) */
  [data-theme="light"] .price-grid .card.plan:nth-child(3n+1):hover{
    border-color:rgba(118,235,237,.52)!important;
    background:
      linear-gradient(148deg,transparent 0%,transparent 58%,rgba(118,235,237,.06) 78%,rgba(118,235,237,.12) 100%),
      linear-gradient(168deg,#ffffff 0%,#f5fffe 48%,#eef9fa 100%)!important;
    box-shadow:0 0 0 1px rgba(118,235,237,.12),0 18px 44px -22px rgba(118,235,237,.16)!important
  }
  [data-theme="light"] .price-grid .card.plan:nth-child(3n+2):hover{
    border-color:rgba(34,211,238,.48)!important;
    background:
      linear-gradient(148deg,transparent 0%,transparent 58%,rgba(34,211,238,.06) 78%,rgba(14,165,201,.12) 100%),
      linear-gradient(168deg,#f4fbfd 0%,#e8f7fb 50%,#e4f3f6 100%)!important;
    box-shadow:0 0 0 1px rgba(34,211,238,.12),0 18px 44px -22px rgba(34,211,238,.16)!important
  }
  [data-theme="light"] .price-grid .card.plan:nth-child(3n+3):hover{
    border-color:rgba(82,130,232,.52)!important;
    background:
      linear-gradient(148deg,transparent 0%,transparent 48%,rgba(82,130,232,.1) 72%,rgba(61,88,200,.2) 100%),
      linear-gradient(168deg,#f0f5fc 0%,#e4ecf8 48%,#dbe4f5 100%)!important;
    box-shadow:0 0 0 1px rgba(82,130,232,.14),0 18px 44px -22px rgba(82,130,232,.22)!important
  }
}
[data-theme="light"] .plan-divider{
  background:linear-gradient(90deg,transparent,rgba(14,90,114,.18),transparent)!important
}
[data-theme="light"] .plan-desc{color:var(--faint);font-size:.9rem;font-weight:400}
[data-theme="light"] .plan-price .per{
  color:var(--faint);
  border:none;
  background:transparent;
  padding:0;
  font-weight:400;
  font-size:.8rem
}
[data-theme="light"] .btn-ghost{
  color:#4d58a8!important;
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(30,58,110,.18)!important;
  box-shadow:0 2px 10px rgba(14,90,114,.06)!important;
  backdrop-filter:none!important
}
[data-theme="light"] .btn-ghost:hover{
  color:var(--accent-deep)!important;
  background:#fff!important;
  border-color:color-mix(in srgb,var(--accent-deep) 42%,transparent)!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-deep) 14%,transparent),0 6px 20px color-mix(in srgb,var(--accent-deep) 10%,transparent)!important
}
/* Lignes réalisations — ghost = hover tags light (prioritaire) */
@media(hover:hover){
  [data-theme="light"] .rlz-row-actions .btn-ghost:hover{
    border-color:color-mix(in srgb,var(--accent-deep) 42%,transparent)!important;
    color:var(--accent-deep)!important;
    background:#fff!important;
    box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-deep) 14%,transparent),0 6px 20px color-mix(in srgb,var(--accent-deep) 10%,transparent)!important;
    transform:translateY(-1px)
  }
}

/* Toggle thème — même recette gradient 1px que le burger */
.theme-toggle{
  display:inline-grid;place-items:center;width:2.3rem;height:2.3rem;padding:0;
  border-radius:8px;border:1px solid transparent;cursor:pointer;flex-shrink:0;
  position:relative;
  background:
    linear-gradient(rgba(5,8,28,.96),rgba(5,8,28,.96)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  color:#5eeaff;
  box-shadow:0 2px 12px -4px rgba(34,211,238,.34),0 0 14px rgba(34,211,238,.12);
  transition:color .32s,box-shadow .32s,background .32s,border-color .32s,transform .28s
}
.theme-toggle:hover,.theme-toggle:focus-visible{
  color:#8af2ee;
  transform:translateY(-1px);
  background:
    linear-gradient(rgba(5,8,28,.98),rgba(5,8,28,.98)) padding-box,
    linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
  box-shadow:0 0 0 1px rgba(34,211,238,.22),0 4px 16px -6px rgba(34,211,238,.4),0 0 18px rgba(34,211,238,.16);
  outline:none
}
.theme-toggle:active{transform:scale(.96)}
.theme-toggle svg{width:15px;height:15px;display:block;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.theme-toggle:hover svg,.theme-toggle:focus-visible svg{
  transform:rotate(-12deg) scale(1.06)
}
.theme-toggle svg.theme-toggle__sun{display:none}
.theme-toggle svg.theme-toggle__moon{display:block}
html[data-theme="light"] .theme-toggle svg.theme-toggle__sun{display:block}
html[data-theme="light"] .theme-toggle svg.theme-toggle__moon{display:none}
.theme-toggle--drawer{width:2.3rem;height:2.3rem}

/* Mobile : pas de hover sticky ; :active = effet desktop ; bordure 1px = burger */
@media(hover:none),(max-width:860px){
  .theme-toggle{border-width:1px}
  [data-theme="light"] .theme-toggle{border-width:1px}
  .theme-toggle:hover,
  .theme-toggle:hover svg{
    color:#5eeaff;
    transform:none;
    background:
      linear-gradient(rgba(5,8,28,.96),rgba(5,8,28,.96)) padding-box,
      linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
    box-shadow:0 2px 12px -4px rgba(34,211,238,.34),0 0 14px rgba(34,211,238,.12);
    filter:none
  }
  .theme-toggle:active{
    color:#8af2ee;
    transform:scale(.96);
    background:
      linear-gradient(rgba(5,8,28,.98),rgba(5,8,28,.98)) padding-box,
      linear-gradient(118deg,#8af2ee 0%,#22d3ee 40%,#3d8bf0 70%,#5282e8 100%) border-box;
    box-shadow:0 0 0 1px rgba(34,211,238,.22),0 4px 16px -6px rgba(34,211,238,.4),0 0 18px rgba(34,211,238,.16)
  }
  .theme-toggle:active svg{transform:rotate(-12deg) scale(1.06)}
  [data-theme="light"] .theme-toggle:hover,
  [data-theme="light"] .theme-toggle:hover svg{
    color:#0a2844;transform:none;
    background:
      linear-gradient(#fff,#fff) padding-box,
      linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
    box-shadow:0 2px 10px -4px rgba(61,139,240,.22);filter:none
  }
  [data-theme="light"] .theme-toggle:active{
    color:#051320;transform:scale(.96);
    background:
      linear-gradient(#fff,#fff) padding-box,
      linear-gradient(118deg,#7dd3fc 0%,#3d8bf0 45%,#6b7ad4 75%,#5a6bc4 100%) border-box;
    border-color:transparent;
    box-shadow:0 0 0 1px rgba(61,139,240,.14),0 4px 14px -6px rgba(61,139,240,.28)
  }
  [data-theme="light"] .theme-toggle:active svg{transform:rotate(18deg) scale(1.06)}
}

@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;transition-duration:.001ms!important}
  .reveal{opacity:1;transform:none;filter:none}
  .word-morph .wm-line{transition:none!important}
  .aurora-text.aurora-flow,.aurora-flow{
    animation:none!important;
    background-image:var(--aurora-grad)!important;
    background-size:100% 100%!important;
    background-position:0% 50%!important;
  }
}

/* Filtres réalisations (mobile) : le conteneur défile horizontalement (overflow-x:auto),
   ce qui rogne aussi verticalement (overflow-y devient auto malgré lui). Tout box-shadow
   (halo flouté ou simple liseré) déborde de ce cadre et se fait couper en haut/bas. On
   retire l'ombre : la couleur de bordure et le dégradé de fond suffisent à distinguer le
   survol et l'état sélectionné, sans aucun risque de coupure ni de redimensionnement. */
@media(max-width:720px){
  .rlz-vault-filters button.on,
  .rlz-vault-filters button:hover,
  .rlz-vault-filters button.on:hover,
  [data-theme="light"] .rlz-vault-filters button.on,
  [data-theme="light"] .rlz-vault-filters button:hover,
  [data-theme="light"] .rlz-vault-filters button.on:hover{box-shadow:none!important}
}
