/* Refonte G5 « Atelier » : base commune à toutes les pages redessinées.
 * Les styles propres à chaque bloc restent en ligne dans les gabarits (fidélité à la maquette) ;
 * ce fichier porte les jetons, les polices, les survols et les règles responsives. */

@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 700;font-stretch:75% 100%;font-display:swap;src:url(/assets/fonts/g5/instrument-sans-v2.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/g5/newsreader-v2.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/g5/newsreader-italic-v2.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/g5/newsreader-600.woff2) format('woff2')}

/* Polices de repli calibrées : même encombrement que les polices du site avant leur
   chargement, pour éviter tout décalage de mise en page (CLS) au moment du remplacement. */
@font-face{font-family:'NR Times';src:local('Times New Roman'),local('Times'),local('Liberation Serif'),local('Tinos');size-adjust:100.1%;ascent-override:73.4%;descent-override:26.5%;line-gap-override:0%}
@font-face{font-family:'NR Noto';src:local('Noto Serif'),local('NotoSerif-Regular');size-adjust:88%;ascent-override:83.5%;descent-override:30.1%;line-gap-override:0%}
@font-face{font-family:'NR DejaVu';src:local('DejaVu Serif');size-adjust:79.6%;ascent-override:92.3%;descent-override:33.3%;line-gap-override:0%}
@font-face{font-family:'IS Arial';src:local('Arial'),local('Helvetica'),local('Liberation Sans'),local('Arimo');size-adjust:103.9%;ascent-override:93.4%;descent-override:24.1%;line-gap-override:0%}
@font-face{font-family:'IS Roboto';src:local('Roboto'),local('Roboto-Regular');size-adjust:105%;ascent-override:92.4%;descent-override:23.8%;line-gap-override:0%}
@font-face{font-family:'IS DejaVu';src:local('DejaVu Sans');size-adjust:91.2%;ascent-override:106.4%;descent-override:27.5%;line-gap-override:0%}
[data-g5] [style*="Newsreader"]{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif!important}
[data-g5] [style*="'Instrument Sans'"]{font-family:'Instrument Sans','IS Arial','IS Roboto','IS DejaVu',system-ui,sans-serif!important}
html,body{margin:0;background:#f4f5f2;color:#0f1417;overflow-x:clip;-webkit-font-smoothing:antialiased}
/* Pas de flash gris au toucher : chaque élément tactile a son propre retour (:active) */
html{-webkit-tap-highlight-color:transparent}
html:has([data-g5][data-theme="dark"]),html:has([data-g5][data-theme="dark"]) body{background:#0B0C10}
*{box-sizing:border-box}
::selection{background:#097a85;color:#fff}
a{color:inherit;text-decoration:none}
:where(a:hover){color:inherit}
input,select,textarea,button{font:inherit;color:inherit}
summary::-webkit-details-marker{display:none}
img{max-width:100%}
@keyframes xk-eq{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
@keyframes xk-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--acc) 45%, transparent)}100%{box-shadow:0 0 0 26px color-mix(in srgb, var(--acc) 0%, transparent)}}

/* Jetons (repris de xk-g5.js, posés ici pour éviter tout flash avant le JS) */
[data-g5]{--bg:#f4f5f2;--ink:#0f1417;--muted:#58626a;--line:rgba(15,20,23,.12);--card:#ffffff;--soft:#eaedeb;--acc:#097a85;--onacc:#ffffff;--deep:#0f1417;--deepInk:#eef1ef;--deepMuted:#a3adb2;--deepLine:#2a343b;position:relative;font-family:'Instrument Sans','IS Arial','IS Roboto','IS DejaVu',system-ui,sans-serif;background:var(--bg);color:var(--ink);transition:background-color .4s}
[data-g5][data-theme="dark"]{--bg:#0B0C10;--ink:#eef1ef;--muted:#9aa3a8;--line:rgba(255,255,255,.09);--card:#151922;--soft:#11151b;--acc:#66FCF1;--onacc:#0B0C10;--deep:#1F2833;--deepLine:#33404c}

/* Jetons de finition : rayons, ombres en deux couches (contact + ambiance), bordure semi-transparente
   qui s'adapte au fond. Les doublons [data-g5][data-xk5] passent devant la copie des jetons injectée par xk-g5.js. */
:root{--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-pill:999px;--sh-1:0 1px 2px rgba(10,20,25,.06),0 16px 40px rgba(10,20,25,.10);--sh-2:0 1px 2px rgba(10,20,25,.08),0 30px 70px rgba(10,20,25,.10)}
[data-g5][data-xk5]{--line:rgba(15,20,23,.12)}
[data-g5][data-xk5][data-theme="dark"]{--line:rgba(255,255,255,.09)!important}

/* Accessibilité : lien d'évitement et focus clavier visibles */
.g5-skip{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 16px;border-radius:var(--r-pill);background:var(--ink);color:var(--bg);font-size:.875rem}
.g5-skip:focus{top:12px}
[data-g5] a:focus-visible,[data-g5] button:focus-visible,[data-g5] summary:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:6px}

/* Survols (attributs style-hover de la maquette) — !important car les styles de base sont en ligne */
.h-inv,.h-bacc,.h-lift-acc,.h-bink,.h-acc,.h-deep,.h-ink,.h-zoom,.h-lift{transition:color .25s,background-color .25s,border-color .25s,transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s}
@media (hover:hover) and (pointer:fine){
.h-inv:hover{background:var(--ink)!important;color:var(--bg)!important}
.h-bacc:hover{border-color:var(--acc)!important}
.h-lift-acc:hover{border-color:var(--acc)!important;transform:translateY(-4px)!important}
.h-bink:hover{border-color:var(--ink)!important}
.h-acc:hover{color:var(--acc)!important}
.h-deep:hover{color:var(--deepInk)!important}
.h-ink:hover{color:var(--ink)!important}
.h-zoom:hover{transform:scale(1.04)!important}
.h-lift:hover{transform:translateY(-4px)!important;box-shadow:var(--sh-1)!important}
}
.f-acc:focus{border-bottom-color:var(--acc)!important}
.f-acc::placeholder{color:color-mix(in srgb, var(--deepMuted) 70%, transparent)}

/* Bascules responsives (remplacent les sc-if de la maquette) */
.g5-wide{display:none!important}
.g5-nav{display:none!important}
.g5-xwide{display:none!important}
@media (min-width:900px){.g5-wide{display:block!important}.g5-narrow{display:none!important}}
@media (min-width:1240px){.g5-nav{display:flex!important}.g5-burger{display:none!important}}
@media (min-width:1240px){.g5-xwide{display:inline!important}}

/* Menu mobile (sous 1120 px) */
.g5-burger{width:40px;height:40px;border-radius:var(--r-pill);border:1px solid var(--line);background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer}
.g5-burger,.g5-menu-x,.g5-pills a,.g5-pills button{transition:transform .12s ease-out}
.g5-burger:active,.g5-menu-x:active,.g5-pills a:active,.g5-pills button:active{transform:scale(.97)}
.g5-burger span{display:block;width:16px;height:1.5px;background:currentColor;box-shadow:0 -5px 0 currentColor,0 5px 0 currentColor;transition:transform .3s}
.g5-menu{position:fixed;inset:64px 0 0 0;z-index:59;display:flex;flex-direction:column;gap:4px;padding:28px clamp(18px,4vw,56px);background:var(--bg);opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .3s,transform .45s cubic-bezier(.16,1,.3,1)}
.g5-menu a{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-size:clamp(2rem,8vw,3rem);line-height:1.15;letter-spacing:-.02em;padding:6px 0;border-bottom:1px solid var(--line)}
[data-menu-open="1"] .g5-menu{opacity:1;transform:none;pointer-events:auto}
@media (min-width:1240px){.g5-menu{display:none}}
@media (max-width:520px){.g5-cta-head{display:none!important}}

/* Clients : damier 4 colonnes, 2 sous 760 px */
.g5-logos{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:760px){.g5-logos{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Avis : 2 colonnes visibles, 88 % sous 760 px */
.g5-slider{grid-auto-columns:88%}
@media (min-width:760px){.g5-slider{grid-auto-columns:calc((100% - 16px) / 2)}}

/* Lien de navigation de la page courante */
[data-g5] nav a[aria-current="page"]{color:var(--acc)}

/* Emplacement d'image à fournir (captures d'apps) */
.g5-slot{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;text-align:center;color:var(--muted);font-size:.8125rem;background:repeating-linear-gradient(135deg,var(--soft) 0 14px,color-mix(in srgb, var(--soft) 60%, var(--card)) 14px 28px)}
.g5-slot strong{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-weight:400;font-size:1.6rem;color:var(--ink)}

/* Formulaire : messages d'état */
[data-form-msg]{margin:0;font-size:1.05rem}
[data-form-msg][hidden]{display:none}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* Survol impossible au doigt : l'indice « Survolez pour parcourir » est masqué */
@media (hover: none){[data-g5] [data-real-hint]{display:none!important}}

/* Bandeau d'explication de la loupe (première visite) */
[data-hint-pill]{position:fixed;z-index:88;left:50%;bottom:76px;display:flex;align-items:center;gap:12px;width:max-content;max-width:min(560px,calc(100vw - 32px));padding:10px 18px 10px 10px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:var(--sh-1);font-size:.84375rem;line-height:1.4;color:var(--ink);opacity:0;transform:translate(-50%,14px);pointer-events:none;transition:opacity .45s,transform .6s cubic-bezier(.16,1,.3,1)}
[data-hint-pill][data-on]{opacity:1;transform:translate(-50%,0)}
@media (max-width:759px){[data-hint-pill]{top:74px;bottom:auto;border-radius:var(--r-xl);transform:translate(-50%,-14px)}}
.g5-touch{display:none}
@media (pointer:coarse){.g5-touch{display:inline}.g5-fine{display:none}}

/* ── Construction (accueil) ─────────────────────────────────────────── */
.g5-bmob{display:none}
@media (max-width:759px){
  .g5-build{height:440vh!important}
  .g5-bsticky{flex-direction:column!important;gap:10px!important;padding:10px 16px 12px!important;height:calc(100svh - 64px)!important}
  .g5-bdesk{display:none!important}
  .g5-bmob{display:block}
  .g5-bcap{gap:8px 12px!important;padding:12px 14px!important;border-radius:var(--r-md)!important}
  .g5-bcap-meta{display:none!important}
  .g5-bcap-steps{flex:1 1 100%!important;height:auto!important;display:grid!important}
  .g5-bcap-steps>div{position:relative!important;inset:auto!important;grid-area:1/1;align-content:flex-start!important;gap:6px!important}
  .g5-bcap-steps h2{font-size:1.6rem!important;gap:10px!important}
  .g5-bcap-steps p{flex:1 1 100%!important;font-size:.92rem!important;line-height:1.45!important}
  .g5-bcap-dots{flex:1 1 100%!important;min-width:0!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
  .g5-bcap-dots>div{flex:1 1 auto;font-size:.75rem!important;gap:3px!important}
  .g5-bcap-dots a{font-size:.8125rem!important;margin-left:0!important;padding:6px 8px!important}
  .g5-bcap-dots a [data-roll]{white-space:nowrap}
  .g5-cta-note{left:50%!important;bottom:calc(100% + 18px)!important;width:250px!important;transform:translateX(-50%);align-items:center!important;text-align:center}
  .g5-cta-note>span{padding-left:0!important;font-size:1.1875rem!important}
  .g5-cta-note svg{display:none}
}
@media (max-width:759px) and (max-height:700px){.g5-bcap-steps p{font-size:.85rem!important}}

/* ── Chiffres (accueil) ─────────────────────────────────────────────── */
.g5-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:1023px){.g5-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:479px){.g5-stats{grid-template-columns:minmax(0,1fr);gap:14px}}
.g5-stat{position:relative;display:flex;flex-direction:column;gap:14px;padding:22px 22px 24px;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);overflow:hidden;transition:border-color .3s,transform .5s cubic-bezier(.16,1,.3,1)}
.g5-stat::after{content:"";position:absolute;right:-40px;top:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--acc) 16%,transparent),transparent 70%);opacity:.0;transition:opacity .5s}
@media (hover:hover) and (pointer:fine){
.g5-stat:hover{border-color:color-mix(in srgb,var(--acc) 55%,var(--line))}
.g5-stat:hover::after{opacity:1}
}
.g5-stat-top{display:flex;align-items:center;gap:12px}
.g5-stat-ico{flex:none;width:52px;height:52px;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;color:var(--acc);background:color-mix(in srgb,var(--acc) 10%,transparent)}
.g5-stat-ico svg{width:34px;height:34px;overflow:visible}
.g5-stat-k{font-size:.90625rem;font-weight:500;line-height:1.25}
.g5-stat-n,.g5-hero-kpi strong,[data-count],[data-build-pct]{font-variant-numeric:tabular-nums}
.g5-stat-n{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-size:clamp(3.2rem,5.4vw,5.2rem);line-height:.9;letter-spacing:-.03em}
.g5-stat-d{font-size:.8125rem;color:var(--muted)}
/* Icône centrée, puis le grand chiffre, puis le libellé et la précision */
.g5-stat{align-items:center;text-align:center}
.g5-stat-top{display:contents}
.g5-stat-ico{order:0;background:none!important;color:var(--ink)!important;width:auto!important;height:auto!important;border-radius:0!important}
.g5-stat-ico svg{width:40px;height:40px}
.g5-stat-n{order:1;margin:6px 0 2px}
.g5-stat-k{order:2}
.g5-stat-d{order:3;margin-top:-6px}
/* Tracé des icônes à l'apparition, puis petite animation jouée deux fois avant le repos */
.g5-stat .d{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .6s cubic-bezier(.65,0,.35,1)}
.g5-stat[data-in] .d{stroke-dashoffset:0}
.g5-stat .tw,.g5-stat .cur{opacity:0;transition:opacity .4s 1.2s}
.g5-stat[data-in] .tw,.g5-stat[data-in] .cur{opacity:1}
.g5-stat[data-in] .tw{animation:g5-tw 2.4s ease-in-out 1.6s 2;transform-box:fill-box;transform-origin:center}
.g5-stat[data-in] .tw2{animation-delay:2.4s}
.g5-stat[data-in] .bob{animation:g5-bob 3s ease-in-out 1.6s 2}
.g5-stat[data-in] .cur{animation:g5-cur 2.8s cubic-bezier(.16,1,.3,1) 1.6s 2}
.g5-stat[data-in] .swing{animation:g5-swing 3.2s ease-in-out 1.6s 2;transform-origin:24px 8px}
@media (hover:hover) and (pointer:fine){
.g5-stat:hover .g5-stat-ico svg{animation:g5-pop .6s cubic-bezier(.16,1,.3,1)}
}
@keyframes g5-tw{0%,100%{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(.4) rotate(45deg);opacity:.35}}
@keyframes g5-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes g5-cur{0%,60%,100%{transform:translate(0,0)}20%{transform:translate(-4px,-5px)}35%{transform:translate(0,0) scale(.9)}}
@keyframes g5-swing{0%,100%{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(4deg)}}
@keyframes g5-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}

/* ── Clients : damier conservé sur 2 colonnes (logos blancs sur cases noires) ── */
[data-logo]{min-width:0}
[data-logo] img{max-height:56%;object-fit:contain}
@media (max-width:759px){
  .g5-logos>*{order:var(--o,0)}
  .g5-logos>:nth-child(1){--o:1}.g5-logos>:nth-child(2){--o:2}.g5-logos>:nth-child(3){--o:4}.g5-logos>:nth-child(4){--o:3}
  .g5-logos>:nth-child(5){--o:6}.g5-logos>:nth-child(6){--o:5}.g5-logos>:nth-child(7){--o:7}.g5-logos>:nth-child(8){--o:8}
  .g5-logos>:nth-child(9){--o:9}.g5-logos>:nth-child(10){--o:10}.g5-logos>:nth-child(11){--o:12}.g5-logos>:nth-child(12){--o:11}
  .g5-logos [data-logo]{height:118px!important;padding:12px!important}
  .g5-logos [data-lname]{display:none!important}
}

/* ── Réalisations : cartes qui s'empilent au défilement ─────────────── */
.g5-works{display:flex;flex-direction:column;gap:clamp(24px,4vh,48px)}
.g5-work{position:sticky;top:calc(84px + var(--i) * 14px);--c:0}
.g5-work-in{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.5fr);min-height:min(560px,calc(100svh - 150px));border-radius:var(--r-xl);overflow:hidden;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh-2);transform-origin:50% 0;transform:scale(calc(1 - var(--c) * .05));filter:brightness(calc(1 - var(--c) * .12));transition:border-color .3s}
@media (hover:hover) and (pointer:fine){
.g5-work-in:hover{border-color:color-mix(in srgb,var(--acc) 45%,var(--line))}
}
.g5-work-txt{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:clamp(22px,3vw,40px);background:var(--soft)}
.g5-work-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.78125rem;color:var(--muted)}
.g5-work h3{margin:0;font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-weight:400;font-size:clamp(2rem,3.6vw,3.4rem);line-height:1;letter-spacing:-.025em}
.g5-work p{margin:0;max-width:40ch;color:var(--muted);line-height:1.55;font-size:clamp(.98rem,1.1vw,1.08rem)}
.g5-work-tags{display:flex;flex-wrap:wrap;gap:6px}
.g5-work-tags span{padding:5px 11px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card);font-size:.78125rem}
.g5-work-cta{margin-top:auto}
.g5-work-shot{position:relative;display:block;overflow:hidden;background:var(--bg)}
.g5-work-bar{position:absolute;left:0;right:0;top:0;z-index:1;height:34px;display:flex;align-items:center;gap:6px;padding:0 14px;background:color-mix(in srgb,var(--card) 92%,transparent);border-bottom:1px solid var(--line);font-size:.71875rem;color:var(--muted)}
.g5-work-bar i{width:9px;height:9px;border-radius:50%;background:var(--line)}
.g5-work-bar span{margin-left:10px;padding:3px 12px;border-radius:var(--r-pill);background:var(--soft)}
.g5-work-shot img{position:absolute;left:0;right:0;top:34px;width:100%;height:calc(100% - 34px);object-fit:cover;object-position:50% 0;transition:transform .5s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
.g5-work-in:hover .g5-work-shot img{transform:scale(1.035)}
}
@media (max-width:899px){
  .g5-work{top:calc(76px + var(--i) * 10px)}
  .g5-work-in{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);min-height:0;height:min(640px,calc(100svh - 100px))}
  .g5-work-txt{gap:10px;padding:20px 20px 18px}
  .g5-work p{font-size:.95rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .g5-work-cta{margin-top:4px}
  .g5-work-shot{min-height:200px}
}
@media (max-width:899px) and (max-height:700px){.g5-work-tags{display:none}}

/* ── Avis : cartes plus grandes, défilement automatique ─────────────── */
.g5-revs{grid-template-rows:repeat(2,auto)}
.g5-rev{margin:0;scroll-snap-align:start;display:flex;flex-direction:column;gap:12px;padding:16px 16px 14px;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);transform-origin:50% 50%;transition:border-color .3s,box-shadow .4s}
@media (hover:hover) and (pointer:fine){
.g5-rev:hover{border-color:color-mix(in srgb,var(--acc) 50%,var(--line));box-shadow:var(--sh-1)}
}
.g5-rev figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.8125rem}
.g5-rev-stars{color:#f2b01e;letter-spacing:.12em;font-size:.875rem}
.g5-rev-who{color:var(--muted);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.g5-rev-img{display:flex;align-items:center;justify-content:center;height:clamp(170px,24vh,230px);padding:10px;border-radius:var(--r-md);background:#ffffff}
.g5-rev-img img{display:block;max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;pointer-events:none}
@media (max-width:759px){.g5-revs{grid-auto-columns:100%!important}.g5-rev-img{height:auto;min-height:150px}}

/* ── Contact (accueil) : le formulaire ressort sur une carte claire ─── */
.g5-contact{position:relative;overflow:hidden;display:flex;flex-wrap:wrap;gap:48px 64px;padding:clamp(90px,11vw,160px) clamp(18px,4vw,56px);background:var(--deep);color:var(--deepInk)}
.g5-contact-orb{position:absolute;right:-12vw;top:-14vw;width:46vw;height:46vw;max-width:720px;max-height:720px;border-radius:50%;background:radial-gradient(circle at 40% 60%,color-mix(in srgb,var(--acc) 70%,transparent),color-mix(in srgb,var(--acc) 0%,transparent) 68%);opacity:.45;filter:blur(10px);pointer-events:none;animation:g5-orb 14s ease-in-out infinite alternate}
@keyframes g5-orb{to{transform:translate(-6vw,4vw) scale(1.08)}}
.g5-contact-intro{position:relative;flex:1 1 320px;display:flex;flex-direction:column;gap:18px}
.g5-contact-points{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:.9375rem}
.g5-contact-points li{display:flex;align-items:center;gap:10px}
.g5-contact-points li::before{content:"";flex:none;width:18px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--acc) 22%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.3l2.6 2.5L12 5.3' fill='none' stroke='%2366fcf1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.g5-form{position:relative;flex:1.4 1 520px;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;padding:clamp(22px,3vw,40px);border-radius:var(--r-xl);background:var(--card);color:var(--ink);border:1px solid color-mix(in srgb,var(--acc) 35%,transparent);box-shadow:0 0 0 8px color-mix(in srgb,var(--acc) 8%,transparent),0 40px 90px rgba(0,0,0,.35)}
.g5-form-head{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;padding-bottom:6px}
.g5-form-head strong{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-weight:400;font-size:clamp(1.6rem,2.4vw,2.1rem);letter-spacing:-.02em}
.g5-form-head span{font-size:.78125rem;color:var(--muted)}
.g5-f{display:flex;flex-direction:column;gap:7px;font-size:.8125rem;font-weight:500;color:var(--ink);min-width:0}
.g5-f-full{grid-column:1/-1}
.g5-f input,.g5-f select,.g5-f textarea{width:100%;padding:13px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:1rem;font-weight:400;outline:none;transition:border-color .25s,box-shadow .25s,background-color .25s}
.g5-f textarea{resize:vertical;min-height:120px}
.g5-f input::placeholder,.g5-f textarea::placeholder{color:color-mix(in srgb,var(--muted) 75%,transparent)}
.g5-f input:hover,.g5-f select:hover,.g5-f textarea:hover{border-color:color-mix(in srgb,var(--ink) 35%,var(--line))}
.g5-f input:focus,.g5-f select:focus,.g5-f textarea:focus{border-color:var(--acc);box-shadow:0 0 0 4px color-mix(in srgb,var(--acc) 18%,transparent);background:var(--card)}
.g5-form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;padding-top:6px}
.g5-form-note{font-size:.78125rem;color:var(--muted)}
.g5-form [data-form-err]{color:var(--danger)!important}
.g5-f :user-invalid{border-color:var(--danger)}
[data-btn]:disabled{opacity:.55;cursor:progress}
@media (max-width:599px){.g5-form{grid-template-columns:minmax(0,1fr);border-radius:var(--r-xl)}.g5-form-foot [data-btn]{width:100%;justify-content:center}}

/* Bulle « secrets trouvés » : compacte au téléphone pour ne rien masquer */
@media (max-width:759px){
  [data-sp-toggle]{padding:8px 11px!important;gap:6px!important;font-size:.75rem!important}
  [data-sp-toggle]>span:last-child{display:none}
}
@media (max-width:759px){
  .g5-rev{transform:none!important;opacity:1!important}
  .g5-rev-img{padding:6px}
  .g5-rev-img img{width:100%;max-height:none}
}
@media (max-width:479px) and (min-width:340px){
  .g5-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .g5-stat{padding:16px 14px 16px;gap:10px;border-radius:var(--r-lg)}
  .g5-stat-top{flex-direction:column;align-items:flex-start;gap:8px}
  .g5-stat-ico{width:40px;height:40px;border-radius:var(--r-md)}
  .g5-stat-ico svg{width:26px;height:26px}
  .g5-stat-k{font-size:.8125rem}
  .g5-stat-n{font-size:2.7rem}
  .g5-stat-d{font-size:.75rem}
}

/* Avis en texte (avis Malt) */
.g5-rev{gap:14px;padding:22px 22px 20px;min-height:clamp(220px,30vh,280px)}
.g5-rev-src{font-size:.75rem;color:var(--muted)}
.g5-rev-q{margin:0;flex:1;font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-size:clamp(1.08rem,1.35vw,1.3rem);line-height:1.38;letter-spacing:-.005em;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.g5-rev-q-lg{font-size:clamp(1.45rem,2vw,1.9rem);line-height:1.18;letter-spacing:-.015em}
.g5-rev .g5-rev-who{text-align:left;white-space:normal;font-size:.84375rem;color:var(--muted)}
.g5-rev .g5-rev-who strong{color:var(--ink);font-weight:600}
@media (max-width:759px){.g5-rev{min-height:0}.g5-rev-q{-webkit-line-clamp:9}}
.g5-revs{grid-template-rows:auto}
.g5-rev{min-height:clamp(260px,34vh,330px)}
.g5-rev-q-lg{display:flex;align-items:center}

/* Pas de sélection de texte sur l'accueil seulement : le clic long y sert à la loupe (comme sur metic.studio).
   Ailleurs (pages marquées data-nosecrets), texte sélectionnable et appui long natif (ouvrir dans un onglet, copier le lien). */
[data-g5]:not([data-nosecrets]){-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
[data-g5] input,[data-g5] textarea,[data-g5] select{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
[data-g5] img{-webkit-user-drag:none}

/* Secrets au téléphone : fond plein, pour ne pas se superposer au texte de la page */
@media (max-width:759px){
  [data-g5] [data-secret]{background:var(--bg);padding:16px 18px;border-radius:var(--r-lg);box-shadow:0 0 0 1px var(--line)}
  [data-g5] #contact [data-secret]{background:var(--deep)}
  [data-g5] .g5-hero-secret{background:none;padding:0;border-radius:0;box-shadow:none}
}

/* Avis : captures d'origine dans des cartes, 2 lignes sur ordinateur, 1 au téléphone */
.g5-revs-shot{grid-template-rows:repeat(2,auto)}
.g5-rev-shot{min-height:0!important;padding:14px 14px 12px!important;gap:10px!important}
.g5-rev-shot .g5-rev-img{height:clamp(190px,26vh,250px);padding:8px}
.g5-rev-shot .g5-rev-img img{transition:transform .5s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
.g5-rev-shot:hover .g5-rev-img img{transform:scale(1.03)}
}
@media (max-width:759px){.g5-revs-shot{grid-template-rows:auto}.g5-rev-shot .g5-rev-img{height:auto;min-height:0}}
.g5-rev-shot .g5-rev-who{text-align:right!important;white-space:nowrap!important;color:var(--muted)!important}

/* Fin de la construction : repères d'éditeur autour du bouton, puis le bouton apparaît */
.g5-guide{position:absolute;pointer-events:none;background:color-mix(in srgb,var(--acc) 70%,transparent)}
.g5-gh{left:-100vw;right:-100vw;height:1px;transform-origin:50% 50%}
.g5-gv{top:-100vh;bottom:-100vh;width:1px;transform-origin:50% 50%}
.g5-gc{position:absolute;width:8px;height:8px;border:1px solid var(--acc);background:var(--bg);pointer-events:none;z-index:2}
.g5-glab{position:absolute;left:0;top:calc(100% + 10px);font:500 .6875rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--acc);white-space:nowrap;pointer-events:none}

/* Solutions au téléphone : éventail que l'on fait glisser, avec les images */
.g5-fanm{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(-1 * clamp(18px,4vw,56px));padding:30px calc(11vw + clamp(18px,4vw,56px)) 34px;perspective:1100px}
.g5-fanm::-webkit-scrollbar{display:none}
.g5-fanm-card{flex:0 0 70vw;max-width:320px;scroll-snap-align:center;display:flex;flex-direction:column;border-radius:var(--r-lg);overflow:hidden;background:var(--card);border:1px solid var(--line);box-shadow:0 20px 44px rgba(10,20,25,.14);transform-origin:50% 120%;transition:transform .18s ease-out,box-shadow .5s;will-change:transform}
.g5-fanm-img{position:relative;display:block;aspect-ratio:4/3.4;overflow:hidden;background:var(--soft)}
.g5-fanm-img img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.g5-fanm-txt{display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px}
.g5-fanm-txt strong{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-weight:400;font-size:1.45rem;line-height:1.05;letter-spacing:-.02em}
.g5-fanm-txt>span:last-child{font-size:.875rem;line-height:1.45;color:var(--muted)}
.g5-fanm-dots{display:flex;justify-content:center;gap:6px;margin-top:-10px}
.g5-fanm-dots i{width:6px;height:6px;border-radius:var(--r-pill);background:var(--line);transition:width .4s cubic-bezier(.16,1,.3,1),background-color .3s}
.g5-fanm-dots i[data-on]{width:20px;background:var(--acc)}
.g5-tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:.6cqh;padding:1.4cqh 0;border:1px solid #eaedeb;border-radius:5px}
.g5-tile b{font-size:4.2cqw;line-height:1;font-weight:400;color:#111111}
.g5-tile i{position:absolute;inset:-1px;border:1.5px solid var(--acc);border-radius:5px;background:color-mix(in srgb,var(--acc) 8%,transparent)}
.g5-chip{position:absolute;display:flex;align-items:center;gap:1.6cqw;padding:1.1cqh 2.8cqw;border-radius:6px;background:#ffffff;border:1.5px solid var(--acc);box-shadow:0 14px 28px rgba(15,25,30,.22);font-size:3.2cqw;font-weight:600;white-space:nowrap;color:#111111}
.g5-chip b{color:var(--acc);font-weight:600}

/* ── Réalisations : spirale 3D pilotée au défilement ────────────────── */
.g5-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.g5-helix-sec{position:relative;height:440vh;background:#07090c;color:#eef1ef}
.g5-helix-stage{position:sticky;top:64px;height:calc(100svh - 64px);overflow:hidden;perspective:1500px;perspective-origin:50% 45%}
.g5-helix-waves{position:absolute;inset:-10%;width:120%;height:120%;pointer-events:none;opacity:.9}
.g5-helix-waves path{fill:none;stroke:color-mix(in srgb,var(--acc) 75%,#3a7bff);stroke-width:1.6;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--acc) 70%,transparent)) drop-shadow(0 0 28px color-mix(in srgb,var(--acc) 50%,transparent));opacity:.55;animation:g5-wave 16s ease-in-out infinite alternate}
.g5-helix-waves path:nth-child(2){animation-duration:21s;opacity:.35}
.g5-helix-waves path:nth-child(3){animation-duration:26s;opacity:.25}
@keyframes g5-wave{to{transform:translate(-60px,40px) scaleY(1.12)}}
.g5-helix-title{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.g5-helix-title span{grid-area:1/1;font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-style:italic;font-weight:300;font-size:clamp(4rem,13vw,12rem);letter-spacing:-.03em;line-height:1;color:#f4f5f2;transition:opacity .6s,transform .9s cubic-bezier(.16,1,.3,1)}
.g5-helix-title [data-helix-t2]{opacity:0;transform:translateY(30px)}
.g5-helix-sec[data-end] [data-helix-t1]{opacity:0;transform:translateY(-30px)}
.g5-helix-sec[data-end] [data-helix-t2]{opacity:1;transform:none}
.g5-helix-ring{position:absolute;left:50%;top:50%;width:0;height:0;transform-style:preserve-3d}
.g5-helix-card{position:absolute;left:0;top:0;width:var(--cw,clamp(240px,24vw,380px));aspect-ratio:16/10;margin:calc(var(--cw,clamp(240px,24vw,380px)) * -.3125) 0 0 calc(var(--cw,clamp(240px,24vw,380px)) * -.5);border-radius:var(--r-lg);overflow:hidden;background:#11151b;box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.08);transform-style:preserve-3d;will-change:transform,opacity;cursor:pointer}
.g5-helix-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;pointer-events:none}
.g5-helix-lab{position:absolute;left:10px;right:10px;bottom:10px;display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:var(--r-md);background:rgba(7,9,12,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.75rem;color:#a3adb2;opacity:0;transform:translateY(8px);transition:opacity .35s,transform .5s cubic-bezier(.16,1,.3,1)}
.g5-helix-lab strong{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-weight:400;font-size:1.15rem;color:#f4f5f2}
.g5-helix-card:hover .g5-helix-lab,.g5-helix-card:focus-visible .g5-helix-lab{opacity:1;transform:none}
.g5-helix-foot{position:absolute;left:clamp(18px,4vw,56px);right:clamp(18px,4vw,56px);bottom:clamp(16px,3vh,32px);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:.8125rem;color:#a3adb2;z-index:5}
.g5-helix-all{background:#f4f5f2!important;color:#0f1417!important}
.g5-helix-sec [data-secret]{color:#eef1ef}
@media (max-width:759px){
  .g5-helix-sec{height:380vh}
  .g5-helix-card{--cw:64vw}
  .g5-helix-lab{opacity:1;transform:none;padding:7px 10px}
  .g5-helix-foot>span{display:none}
  .g5-helix-foot{justify-content:center}
}
/* Mouvement réduit : grille simple */
.g5-helix-sec[data-static]{height:auto}
.g5-helix-sec[data-static] .g5-helix-stage{position:relative;top:0;height:auto;padding:110px clamp(18px,4vw,56px) 120px;perspective:none}
.g5-helix-sec[data-static] .g5-helix-title{position:relative;margin-bottom:40px}
.g5-helix-sec[data-static] .g5-helix-ring{position:relative;left:auto;top:auto;width:auto;height:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.g5-helix-sec[data-static] .g5-helix-card{position:relative;margin:0;width:auto;transform:none!important;opacity:1!important}
.g5-helix-sec[data-static] .g5-helix-lab{opacity:1;transform:none}
.g5-helix-foot>span{display:none}
.g5-helix-foot{justify-content:flex-end}
@media (max-width:759px){.g5-helix-foot{justify-content:center;bottom:64px}}
[data-a-cta]{gap:max(3cqh,34px)!important}

/* Avis (accueil) : les captures seules, sans habillage en double */
.g5-pics{grid-template-rows:repeat(2,auto)}
.g5-pic{margin:0;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;height:clamp(180px,25vh,240px);padding:12px;border-radius:var(--r-lg);background:#ffffff;border:1px solid var(--line);transform-origin:50% 50%;transition:border-color .3s,box-shadow .4s}
@media (hover:hover) and (pointer:fine){
.g5-pic:hover{border-color:color-mix(in srgb,var(--acc) 50%,var(--line));box-shadow:var(--sh-1)}
}
.g5-pic img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;pointer-events:none;transition:transform .5s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
.g5-pic:hover img{transform:scale(1.03)}
}
@media (max-width:759px){.g5-pics{grid-template-rows:auto;grid-auto-columns:100%!important}.g5-pic{height:auto;min-height:0;padding:8px;transform:none!important;opacity:1!important}.g5-pic img{width:100%;max-height:none}}
@media (max-width:759px){
  .g5-code-slot{position:static!important;min-height:0!important;margin:0!important}
  .g5-contact-intro [data-secret="code"]{top:auto!important;bottom:-8px!important;left:0!important;width:100%!important;box-shadow:0 0 0 1px var(--deepLine)}
}

/* Solutions au téléphone : pile verticale (remplace l'éventail horizontal) */
.g5-fanm{display:flex!important;flex-direction:column;gap:18px;overflow:visible!important;margin:0!important;padding:0 0 10px!important;perspective:none!important;scroll-snap-type:none!important}
.g5-fanm-card{position:sticky;top:calc(80px + var(--i) * 12px);flex:none!important;max-width:none!important;width:100%;transform-origin:50% 0;transform:scale(calc(1 - var(--c,0) * .06));filter:brightness(calc(1 - var(--c,0) * .1));transition:none!important}
.g5-fanm-img{aspect-ratio:16/9}
.g5-fanm-txt{padding:14px 16px 16px}
.g5-fanm-dots{display:none}

/* Spirale : thème clair du site, cartes verticales, rotation plus serrée */
.g5-helix-sec{background:var(--bg);color:var(--ink);border-top:1px solid var(--line)}
.g5-helix-waves path{stroke:var(--acc);stroke-width:1.2;filter:none;opacity:.22}
.g5-helix-waves path:nth-child(2){opacity:.14}
.g5-helix-waves path:nth-child(3){opacity:.1}
.g5-helix-title span{color:var(--ink);font-weight:400;font-size:clamp(4rem,12vw,11rem)}
.g5-helix-title [data-helix-t1]::after,.g5-helix-title [data-helix-t2]::after{content:".";color:var(--acc);font-style:normal}
.g5-helix-card{--cw:clamp(170px,15.5vw,250px);aspect-ratio:3/4;margin:calc(var(--cw) * -.6667) 0 0 calc(var(--cw) * -.5);background:var(--card);box-shadow:0 26px 60px rgba(10,20,25,.18),0 0 0 1px var(--line)}
.g5-helix-lab{background:color-mix(in srgb,var(--card) 92%,transparent);color:var(--muted);box-shadow:0 0 0 1px var(--line)}
.g5-helix-lab strong{color:var(--ink)}
.g5-helix-all{background:var(--ink)!important;color:var(--bg)!important}
.g5-helix-sec [data-secret]{color:var(--ink)}
@media (max-width:759px){.g5-helix-card{--cw:44vw}.g5-helix-lab strong{font-size:.95rem}.g5-helix-lab{font-size:.6875rem}}
@media (max-width:759px){.g5-helix-lab{opacity:0;transform:translateY(8px)}.g5-helix-card[data-front] .g5-helix-lab{opacity:1;transform:none}}

/* ── Autres pages : ajustements téléphone ───────────────────────────── */
@media (max-width:759px){
  /* Portfolio : filtres qui défilent à l'horizontale, grille sur 2 colonnes */
  .g5-chips{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent);margin:0 calc(-1 * clamp(18px,4vw,56px));padding:2px clamp(18px,4vw,56px)}
  .g5-chips::-webkit-scrollbar{display:none}
  .g5-chips>span:first-child{flex:none;width:auto!important;margin-right:4px}
  .g5-chips [data-chip]{flex:none;white-space:nowrap}
  .g5-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 12px!important}
  .g5-pgrid h3,.g5-pgrid [data-card] h3{font-size:1.15rem!important}
  .g5-pgrid [data-card] p,.g5-pgrid [data-card]>div>span{font-size:.75rem!important}
  /* Chiffres et étapes sur 2 colonnes */
  .g5-2col{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .g5-steps>*{min-height:0!important;padding:18px 16px!important}
}
@media (max-width:759px){.g5-pgrid [data-card]{gap:8px!important}.g5-pgrid [data-card]>div:last-child>span:nth-child(3){display:none}.g5-pgrid [data-card] [data-arr]{display:none}}
@media (max-width:759px){.g5-steps h3,.g5-steps strong{font-size:1.3rem!important;overflow-wrap:anywhere}.g5-steps p{font-size:.8125rem!important}}

/* Spirale v3 : cartes plus grandes et espacées, perspective plus marquée */
.g5-helix-stage{perspective:1100px;perspective-origin:50% 40%}
.g5-helix-card{--cw:clamp(250px,24vw,400px);overflow:visible;background:transparent;box-shadow:none}
.g5-helix-card img{border-radius:var(--r-lg);background:var(--card);box-shadow:0 30px 70px rgba(10,20,25,.2),0 0 0 1px var(--line)}
.g5-helix-title span{font-style:normal;font-weight:400;letter-spacing:-.03em;font-size:clamp(4.4rem,13vw,12.5rem);color:color-mix(in srgb,var(--ink) 16%,transparent)}
.g5-helix-title span::after{content:none!important}
.g5-helix-title i{font-style:normal;color:color-mix(in srgb,var(--acc) 55%,transparent)}
.g5-helix-lab{display:none!important}
/* Cadre d'inspection posé sur la carte (il suit la perspective) */
.g5-helix-frame{position:absolute;inset:-6px;border:1px solid var(--acc);border-radius:4px;pointer-events:none;opacity:0;transition:opacity .25s}
.g5-helix-frame i{position:absolute;width:7px;height:7px;background:var(--bg);border:1px solid var(--acc)}
.g5-helix-frame i:nth-child(1){left:-4px;top:-4px}.g5-helix-frame i:nth-child(2){right:-4px;top:-4px}.g5-helix-frame i:nth-child(3){left:-4px;bottom:-4px}.g5-helix-frame i:nth-child(4){right:-4px;bottom:-4px}
.g5-helix-frame b{position:absolute;left:-1px;bottom:calc(100% + 6px);padding:3px 7px;border-radius:2px;background:var(--acc);color:var(--onacc);font:500 .6875rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap}
.g5-helix-frame em{font-style:normal;opacity:.75;margin-left:6px}
.g5-helix-card:hover .g5-helix-frame,.g5-helix-card:focus-visible .g5-helix-frame{opacity:1}
@media (max-width:759px){.g5-helix-card{--cw:58vw}.g5-helix-card[data-front] .g5-helix-frame{opacity:1}.g5-helix-frame b{font-size:.625rem;max-width:58vw;overflow:hidden;text-overflow:ellipsis}}

/* Services : sur ordinateur, la capture prend la hauteur du texte voisin */
@media (min-width:1000px){
  .g5-svc-media{align-self:stretch;grid-template-rows:minmax(0,1fr)}
  .g5-svc-media>[data-reveal]{height:100%}
  .g5-svc-media [data-real-frame]{aspect-ratio:auto!important;height:100%!important;min-height:460px}
}

/* Avis (accueil) : marges intérieures pour que les bords ne soient jamais coupés */
.g5-pics{padding:10px clamp(18px,4vw,56px) 14px!important;margin:0 calc(-1 * clamp(18px,4vw,56px))!important;scroll-padding-inline:clamp(18px,4vw,56px)}
.g5-pics{grid-auto-columns:calc((100% - 2 * clamp(18px,4vw,56px) - 16px) / 2)!important}
@media (max-width:759px){.g5-pics{grid-auto-columns:calc(100% - 2 * clamp(18px,4vw,56px))!important}}

/* Code promo : indice écrit normalement, seule la saisie passe en majuscules */
[data-promo]::placeholder{text-transform:none}

/* Visionneuse au téléphone : image sur toute la largeur, flèches en bas */
@media (max-width:759px){
  [data-lbbox]{padding:64px 10px 96px!important}
  [data-lbbox] figure img{padding:6px!important;border-radius:var(--r-md)!important;max-height:calc(100svh - 190px)!important}
  [data-lbbox] [data-lbp],[data-lbbox] [data-lbnx]{top:auto!important;bottom:22px!important;margin-top:0!important}
  [data-lbbox] [data-lbp]{left:calc(50% - 60px)!important}
  [data-lbbox] [data-lbnx]{right:calc(50% - 60px)!important}
}

/* Spirale v4 (au plus près de visuvate) : grandes cartes 5:4 légèrement courbées */
.g5-helix-stage{perspective:1300px;perspective-origin:50% 50%}
.g5-helix-card{--cw:clamp(300px,33vw,560px);--ch:calc(var(--cw) * .8);width:var(--cw);height:var(--ch);aspect-ratio:auto;margin:calc(var(--ch) / -2) 0 0 calc(var(--cw) / -2);transform-style:preserve-3d;background:none;box-shadow:none;border-radius:0;overflow:visible}
.g5-helix-card>img{display:none}
.g5-hs{--n:8;--d:4.5deg;--t:calc((var(--j) - 3.5) * var(--d));--w:calc(var(--cw) / var(--n));--rc:calc(var(--w) / .0785398);position:absolute;top:0;left:calc(50% - var(--w) / 2);width:calc(var(--w) + 1.5px);height:100%;opacity:var(--o,1);background:var(--img) calc(var(--j) * var(--w) * -1) 0 / var(--cw) auto no-repeat,var(--card);transform:translateX(calc(var(--rc) * sin(var(--t)))) translateZ(calc(var(--rc) * (cos(var(--t)) - 1))) rotateY(var(--t));box-shadow:0 0 0 .5px color-mix(in srgb,var(--line) 70%,transparent)}
.g5-hs:first-child{border-radius:16px 0 0 16px}
.g5-hs:nth-child(8){border-radius:0 16px 16px 0}
.g5-helix-frame{inset:-8px;opacity:0}
.g5-helix-title span{font-size:clamp(4.4rem,14vw,13rem)}
@media (max-width:759px){.g5-helix-card{--cw:74vw}}
.g5-hs{box-shadow:none;width:calc(var(--w) + 2px)}

/* Spirale WebGL (xk-coil.js) */
.g5-coil{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:2}
.g5-helix-title{z-index:1}
.g5-coil-frame{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;opacity:0;transition:opacity .2s;overflow:visible}
.g5-coil-frame polygon{fill:none;stroke:var(--acc);stroke-width:1.2}
.g5-coil-frame rect{fill:var(--bg);stroke:var(--acc);stroke-width:1}
.g5-coil-label{position:absolute;left:0;top:0;z-index:4;pointer-events:none;opacity:0;transition:opacity .2s;padding:3px 7px;border-radius:2px;background:var(--acc);color:var(--onacc);font:500 .6875rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap}
.g5-helix-foot{z-index:5}
.g5-helix-sec[data-gl] .g5-coil-list{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.g5-helix-sec[data-static]{height:auto!important}
.g5-helix-sec[data-static] .g5-coil,.g5-helix-sec[data-static] .g5-coil-frame,.g5-helix-sec[data-static] .g5-coil-label{display:none}
.g5-helix-sec[data-static] .g5-coil-list{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.g5-coil-list a{display:flex;flex-direction:column;gap:8px}
.g5-coil-list img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 0;border-radius:var(--r-md);border:1px solid var(--line);background:var(--soft)}
@media (pointer:coarse){.g5-coil-frame,.g5-coil-label{display:none}}

/* Solutions au téléphone : jeu de cartes (remplace la pile verticale) */
@media (max-width:899px){
  .g5-deck{height:calc(6 * 48svh + min(62svh,480px));position:relative}
  .g5-deck .g5-fanm{position:sticky!important;top:84px;height:min(62svh,480px);display:block!important;padding:0!important}
  .g5-deck .g5-fanm-card{position:absolute!important;left:50%;top:8px;width:min(84vw,380px)!important;margin-left:calc(min(84vw,380px) / -2);transform-origin:50% 90%;filter:none!important;transition:none!important;box-shadow:0 24px 50px rgba(10,20,25,.18)}
  .g5-deck .g5-fanm-img{aspect-ratio:4/3.2}
}
/* overflow:hidden empêchait le paquet de cartes de rester à l'écran (position sticky) */
#services{overflow:clip!important}

/* Zones tactiles d'au moins 44 px au doigt (logo, fil d'Ariane, lien du pied de page) */
@media (pointer:coarse){
  [data-g5] header>a:first-child{display:inline-flex;align-items:center;min-height:44px}
  [data-g5] nav[aria-label="Fil d'Ariane"] a,[data-g5] .g5-art-crumbs a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;margin:-14px -4px}
  [data-g5] footer a.h-deep{display:inline-flex;align-items:center;min-height:44px}
}

/* Jeu de cartes v2 : occupe toute la hauteur d'écran, cartes centrées, légende fixe */
@media (max-width:899px){
  .g5-deck{height:calc(6 * 46svh + 100svh - 64px)!important}
  .g5-deck .g5-fanm{top:64px!important;height:calc(100svh - 64px)!important}
  .g5-deck .g5-fanm-card{top:max(64px,calc(50% - 205px))!important;will-change:transform,opacity;box-shadow:0 14px 30px rgba(10,20,25,.14)!important;contain:layout paint}
  .g5-deck-cap{position:absolute;left:0;right:0;top:18px;display:flex;justify-content:space-between;align-items:baseline;font-size:.8125rem;color:var(--muted)}
  .g5-deck-cap b{font-weight:600;color:var(--acc)}
}
/* Bandeau d'explication : en haut, sous le menu, sur toutes les tailles (il masquait les boutons du haut de page) */
[data-hint-pill]{top:80px;bottom:auto;transform:translate(-50%,-14px)}
[data-hint-pill][data-on]{transform:translate(-50%,0)}
/* Au doigt, les sons ne sont pas joués : bouton du son masqué (gardé sur ordinateur) */
@media (pointer:coarse){[data-g5] [data-sound-toggle]{display:none!important}}

/* ── Menu mobile façon metic.studio : panneau plein écran, ouverture en balayage ── */
.g5-menu{position:fixed!important;inset:0!important;z-index:70!important;display:flex!important;flex-direction:column;gap:0!important;padding:16px clamp(18px,5vw,40px) calc(22px + env(safe-area-inset-bottom))!important;background:var(--deep)!important;color:var(--deepInk);opacity:1!important;transform:none!important;pointer-events:none;clip-path:circle(0px at var(--mx,calc(100% - 40px)) var(--my,32px));transition:clip-path .3s cubic-bezier(.23,1,.32,1);overflow-y:auto}
[data-menu-open="1"] .g5-menu{pointer-events:auto;clip-path:circle(150% at var(--mx,calc(100% - 40px)) var(--my,32px));transition:clip-path .5s cubic-bezier(.32,.72,0,1)}
.g5-menu a{font-family:inherit;font-size:inherit;line-height:inherit;letter-spacing:inherit;padding:0;border:0}
.g5-menu-top{display:flex;justify-content:space-between;align-items:center;min-height:48px}
.g5-menu-logo{font-weight:600;font-size:1.125rem;letter-spacing:-.02em}
.g5-menu-x{width:44px;height:44px;border-radius:var(--r-pill);border:1px solid var(--deepLine);background:transparent;color:var(--deepInk);font-size:1rem;cursor:pointer}
.g5-menu-links{display:flex;flex-direction:column;margin:clamp(28px,7vh,56px) 0 auto}
.g5-ml{display:block;overflow:hidden}
.g5-ml a{display:block;font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif!important;font-size:clamp(2.6rem,12vw,3.6rem)!important;line-height:1.08!important;letter-spacing:-.03em!important;color:color-mix(in srgb,var(--deepInk) 78%,transparent);transform:translateY(105%);transition:transform 0s linear .3s,color .25s}
.g5-ml a[aria-current="page"],.g5-ml a:active{color:var(--acc)}
[data-menu-open="1"] .g5-ml a{transform:none;transition:transform .5s cubic-bezier(.16,1,.3,1) calc(.06s + var(--i) * .035s),color .25s}
.g5-menu-foot{display:flex;flex-direction:column;gap:14px;margin-top:32px;padding-top:22px;border-top:1px solid var(--deepLine);opacity:0;transform:translateY(16px);transition:opacity 0s linear .3s,transform 0s linear .3s}
[data-menu-open="1"] .g5-menu-foot{opacity:1;transform:none;transition:opacity .35s cubic-bezier(.23,1,.32,1) .2s,transform .45s cubic-bezier(.16,1,.3,1) .2s}
.g5-menu-cta{display:inline-flex;align-items:center;gap:14px;font-size:1.25rem!important;font-weight:500;min-height:48px}
.g5-menu-cta span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--acc);color:var(--onacc);font-size:1rem}
.g5-menu-mail{color:var(--deepMuted);min-height:32px;display:inline-flex;align-items:center}
.g5-menu-sec{display:flex;align-items:center;gap:8px;font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--deepMuted)}
.g5-menu-sec i{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--acc);flex:none}
.g5-menu-sec strong{color:var(--deepInk);font-weight:500}
.g5-menu-sw{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:6px}
.g5-pills{display:inline-flex;padding:4px;border-radius:var(--r-pill);border:1px solid var(--deepLine)}
.g5-pills a,.g5-pills button{display:inline-flex;align-items:center;min-height:36px;padding:0 14px!important;border-radius:var(--r-pill);border:0;background:transparent;color:var(--deepMuted);font-size:.875rem!important;cursor:pointer}
.g5-pills [aria-current="true"],.g5-pills [aria-pressed="true"]{background:var(--deepInk);color:var(--deep)}
.g5-menu-legal{font-size:.8125rem!important;color:var(--deepMuted);min-height:36px;display:inline-flex;align-items:center}
@media (min-width:1240px){.g5-menu{display:none!important}}

/* ── Accueil : bandeau de confiance en bas du premier écran ─────────── */
.g5-trust{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 32px;padding-top:18px;border-top:1px solid var(--line)}
.g5-trust-me{display:flex;align-items:center;gap:12px;font-size:.8125rem;line-height:1.35}
.g5-trust-me img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:50% 18%;box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--line)}
.g5-trust-me>span{display:flex;flex-direction:column}
.g5-trust-me>span>span{color:var(--muted)}
.g5-trust-logos{display:flex;align-items:center;gap:clamp(18px,2.4vw,34px);flex-wrap:wrap}
.g5-trust-logos img{height:22px;width:auto;opacity:.55;transition:opacity .3s}
@media (hover:hover) and (pointer:fine){
.g5-trust-logos img:hover{opacity:.9}
}
.g5-trust-logos span{font-size:.78125rem;color:var(--muted);white-space:nowrap}
.g5-trust-rev{display:flex;align-items:center;gap:10px;font-size:.8125rem;color:var(--muted)}
.g5-trust-rev strong{color:var(--ink);font-weight:600}
.g5-trust-stars{color:#f2b01e;letter-spacing:.08em;font-size:.9375rem}
@media (max-width:759px){
  .g5-trust{gap:14px}
  .g5-trust-logos{order:3;width:100%;flex-wrap:nowrap;overflow:hidden;gap:22px;-webkit-mask:linear-gradient(90deg,#000 80%,transparent)}
  .g5-trust-logos img{height:18px;flex:none}
}
/* Croquis discret : indique qu'un secret se cache ici (révélé à la loupe) */
.g5-sketch{position:absolute;z-index:1;top:calc(12% + 24px);width:150px;height:150px;border-radius:50%;object-fit:cover;object-position:50% 20%;opacity:.13;pointer-events:none;transform:translateX(100%)}
.g5-sketch{right:7%;transform:translateX(calc(-300px + 150px))}
[data-g5][data-theme="dark"] .g5-sketch{filter:invert(1)}
@media (max-width:759px){.g5-sketch{right:auto;left:50%;top:137px;width:120px;height:120px;transform:translateX(-50%)}}
[data-menu-open="1"] [data-sp-toggle],[data-menu-open="1"] [data-sp]{opacity:0!important;pointer-events:none!important}

/* Accent pour petits textes : même teinte, un peu plus soutenue (contraste ≥ 4,5:1) */
[data-g5]{--acc-t:#086d77;--danger:#b3261e}
[data-g5][data-theme="dark"]{--acc-t:#66FCF1;--danger:#ffb4ab}
.g5-deck-cap b{color:var(--acc-t)!important}

/* Haut de page : apparition en CSS dès l'affichage (sans attendre le JavaScript,
   pour un affichage du contenu principal le plus tôt possible) */
@keyframes g5-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
[data-g5] [data-reveal][data-now]{animation:g5-up .7s cubic-bezier(.16,1,.3,1) both}
[data-g5] [data-reveal][data-now][data-delay="80"]{animation-delay:.08s}
[data-g5] [data-reveal][data-now][data-delay="90"]{animation-delay:.09s}
[data-g5] [data-reveal][data-now][data-delay="120"]{animation-delay:.12s}
[data-g5] [data-reveal][data-now][data-delay="160"]{animation-delay:.16s}
[data-g5] [data-reveal][data-now][data-delay="180"]{animation-delay:.18s}
[data-g5] [data-reveal][data-now][data-delay="200"]{animation-delay:.2s}
[data-g5] [data-reveal][data-now][data-delay="220"]{animation-delay:.22s}
[data-g5] [data-reveal][data-now][data-delay="240"]{animation-delay:.24s}
[data-g5] [data-reveal][data-now][data-delay="260"]{animation-delay:.26s}
[data-g5] [data-reveal][data-now][data-delay="280"]{animation-delay:.28s}
[data-g5] [data-reveal][data-now][data-delay="360"]{animation-delay:.36s}

/* ── Styles des modules (repris de xk-g5.js, xk-secrets2.js, xk-inspect.js) : présents dès le
   premier affichage pour éviter le décalage de mise en page avant l'exécution du JavaScript ── */
/* xk-g5.js */
[data-xk5]{--bg:#f4f5f2;--ink:#0f1417;--muted:#58626a;--line:rgba(15,20,23,.12);--card:#ffffff;--soft:#eaedeb;--acc:#097a85;--onacc:#ffffff;--deep:#0f1417;--deepInk:#eef1ef;--deepMuted:#a3adb2;--deepLine:#2a343b;background:var(--bg);color:var(--ink)}
[data-xk5][data-theme="dark"]{--bg:#0B0C10!important;--ink:#eef1ef!important;--muted:#9aa3a8!important;--line:rgba(255,255,255,.09)!important;--card:#151922!important;--soft:#11151b!important;--acc:#66FCF1!important;--onacc:#0B0C10!important;--deep:#1F2833!important;--deepLine:#33404c!important}
[data-btn]{position:relative;display:inline-flex;align-items:center;height:52px;padding:0 24px 0 40px;border-radius:var(--r-pill);background:var(--ink);color:var(--bg);font-weight:500;overflow:hidden;isolation:isolate;white-space:nowrap;border:0;cursor:pointer;transition:color .35s,transform .12s ease-out,translate .5s cubic-bezier(.16,1,.3,1)}
[data-btn]::before{content:"";position:absolute;left:22px;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--acc);z-index:-1;transition:transform .7s cubic-bezier(.16,1,.3,1)}
[data-btn]::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(180px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.28),transparent 60%);transition:opacity .35s}
@media (hover:hover) and (pointer:fine){
[data-btn]:hover::before{transform:scale(var(--fill,90))}
[data-btn]:hover::after{opacity:1}
[data-btn]:hover [data-arr]{transform:rotate(45deg)}
[data-btn]:hover{color:var(--onacc)}
}
/* Au doigt : après un tap, le bouton se remplit comme au survol, puis revient à son état normal (g5-boot.js, data-tap) */
[data-btn][data-tap]::before{transform:scale(var(--fill,90))}
[data-btn][data-tap]{color:var(--onacc)}
[data-btn][data-tap] [data-arr]{transform:rotate(45deg)}
[data-btn]:active{transform:scale(.97)}
[data-btn="ghost"]{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
[data-btn="sm"]{height:40px;padding:0 18px 0 34px;font-size:.875rem}
[data-btn="sm"]::before{left:18px}
[data-btn="light"]{background:var(--deepInk);color:var(--deep)}
/* Boutons : texte sur deux lignes si besoin (traductions longues, texte agrandi), même aspect à la
   taille normale. Préfixe [data-g5] : ces règles doivent passer après la copie injectée par xk-g5.js. */
[data-g5] [data-btn]{white-space:normal;height:auto;min-height:52px;max-width:100%;flex-shrink:0;padding-block:12px;text-align:center}
[data-g5] [data-btn="sm"]{min-height:40px;padding-block:8px}
[data-g5] [data-btn] [data-roll]{height:auto;line-height:1.3}
[data-g5] [data-btn] [data-roll]>span[aria-hidden]{display:none}
[data-roll]{display:flex;flex-direction:column;height:1.3em;line-height:1.3em;overflow:hidden}
[data-roll]>span{transition:transform .55s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
[data-corner]:hover [data-roll]>span{transform:translateY(-100%)}
}
/* Boutons : pas de bascule du texte au survol (le remplissage et la flèche restent) */
[data-btn] [data-roll]>span{transform:none!important}
[data-corner]{position:relative;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;font-weight:500;cursor:pointer;background:none;border:0}
[data-corner]::before,[data-corner]::after{content:"";position:absolute;width:9px;height:9px;opacity:0;border:0 solid var(--acc);transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .25s}
[data-corner]::before{left:0;top:0;border-left-width:1.5px;border-top-width:1.5px;transform:translate(7px,7px)}
[data-corner]::after{right:0;bottom:0;border-right-width:1.5px;border-bottom-width:1.5px;transform:translate(-7px,-7px)}
@media (hover:hover) and (pointer:fine){
[data-corner]:hover::before,[data-corner]:hover::after{opacity:1;transform:none}
}
[data-arr]{display:inline-block;transition:transform .4s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
[data-corner]:hover [data-arr]{transform:translate(2px,-2px)}
}
[data-sound="off"] [data-eq]>span{animation-play-state:paused!important;transform:scaleY(.2)!important}
[data-slider]{scrollbar-width:none}
[data-slider]::-webkit-scrollbar{display:none}
[data-w]{display:inline-block;white-space:nowrap}
[data-logos]>*{transition:opacity .45s,filter .45s}
@media (hover:hover) and (pointer:fine){
[data-logos]:hover>*:not(:hover){opacity:.4;filter:grayscale(1)}
}
[data-logo]{position:relative;overflow:hidden}
[data-logo] img{transition:transform .5s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
[data-logo]:hover img{transform:scale(1.16)}
}
[data-logo] [data-lname]{position:absolute;left:0;right:0;bottom:0;padding:10px 14px;font-size:.78125rem;display:flex;justify-content:space-between;gap:8px;transform:translateY(105%);transition:transform .55s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
[data-logo]:hover [data-lname]{transform:none}
}
[data-hov]{transition:border-color .25s,background-color .25s,transform .12s ease-out}
@media (hover:hover) and (pointer:fine){
[data-hov]:hover{border-color:var(--ink)!important;background-color:var(--soft)!important}
}
[data-hov]:active{transform:scale(.97)}
[data-real="hover"] [data-real-img]{transition:object-position 7s cubic-bezier(.45,0,.55,1)}
@media (hover:hover) and (pointer:fine){
[data-real="hover"] [data-real-frame]:hover [data-real-img]{object-position:50% 100%!important}
}
[data-real-hint]{display:none}
[data-real="hover"] [data-real-hint]{display:flex}
@media (hover:hover) and (pointer:fine){
[data-real="hover"] [data-real-frame]:hover [data-real-hint]{opacity:0}
}
[data-card]{transition:opacity .4s,transform .12s ease-out}
[data-card]:active{transform:scale(.97)}
[data-card][data-off]{display:none!important}
[data-card] img{transition:transform .5s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
[data-card]:hover img{transform:scale(1.05)}
}
[data-card] [data-arr]{transition:transform .4s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
[data-card]:hover [data-arr]{transform:translate(3px,-3px)}
}
[data-chip]{padding:9px 15px;border-radius:var(--r-pill);border:1px solid var(--line);background:transparent;color:var(--ink);font-size:.875rem;cursor:pointer;transition:background-color .25s,color .25s,border-color .25s,transform .12s ease-out}
[data-chip]:active{transform:scale(.97)}
/* Questions fréquentes : léger enfoncement à la pression */
[data-g5] details>summary{transition:color .25s,transform .12s ease-out}
[data-g5] details>summary:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){
[data-chip]:hover{border-color:var(--ink)}
}
[data-chip][aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
/* Flèches : ↗ = lien externe ou sortie du site, → = page interne (data-arr="in"), rien sur un bouton d'envoi.
   La flèche interne glisse vers la droite au survol au lieu de tourner ou de monter. */
@media (hover:hover) and (pointer:fine){
[data-g5] a:hover [data-arr="in"]{transform:translateX(3px)}
}
[data-more-hidden][data-shown]{display:flex!important}
[data-lb]{cursor:zoom-in}
[data-c]{display:inline-block}

/* xk-secrets2.js */
/* Message (toast) : invisible tant qu'il est caché, sinon son ombre dépassait sous le bas de l'écran.
   xk-secrets2.js l'affiche en posant transform:translate(-50%,0) en ligne, puis le cache avec translate(-50%,180%). */
[data-toast]{opacity:0;visibility:hidden;transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .2s,visibility 0s .4s}
[data-toast][data-on]{opacity:1;visibility:visible;transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .2s,visibility 0s}
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}
html[data-vt="off"]::view-transition-old(root){z-index:3}
html[data-vt-run] *,html[data-vt-run] *::before,html[data-vt-run] *::after{transition:none!important}
[data-sp-open="1"] [data-sp]{opacity:1!important;transform:none!important;pointer-events:auto!important}
[data-sp-li]{display:grid;grid-template-columns:14px minmax(0,1fr);gap:12px;align-items:start;line-height:1.45}
[data-sp-li] i{width:11px;height:11px;margin-top:5px;border-radius:50%;border:1.5px solid var(--muted)}
[data-sp-li][data-on] i{border-color:var(--acc);background:var(--acc)}
[data-sp-li]:not([data-on]) span{color:var(--muted)}
[data-lens-info]{position:absolute;left:50%;top:22%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:3px;font:500 .65625rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s}
[data-lens-info] b{font-weight:600;padding:3px 6px;border-radius:3px;background:var(--acc);color:var(--onacc)}
[data-lens-info] span{padding:3px 6px;border-radius:3px;background:rgba(15,20,23,.86);color:#eef1ef;display:flex;align-items:center;gap:6px}
[data-lens-info] i{display:inline-block;width:9px;height:9px;border-radius:2px;border:1px solid rgba(255,255,255,.5)}

/* xk-inspect.js */
[data-insp-box]{position:fixed;left:0;top:0;z-index:89;pointer-events:none;border:1px solid var(--acc);opacity:0;transition:opacity .18s,width .16s cubic-bezier(.16,1,.3,1),height .16s cubic-bezier(.16,1,.3,1),transform .16s cubic-bezier(.16,1,.3,1)}
[data-insp-box][data-on]{opacity:1}
[data-insp-box] i{position:absolute;width:5px;height:5px;background:var(--bg);border:1px solid var(--acc)}
[data-insp-box] i:nth-child(1){left:-3px;top:-3px}[data-insp-box] i:nth-child(2){right:-3px;top:-3px}
[data-insp-box] i:nth-child(3){left:-3px;bottom:-3px}[data-insp-box] i:nth-child(4){right:-3px;bottom:-3px}
[data-insp-box] b{position:absolute;left:-1px;bottom:calc(100% + 4px);padding:2px 6px;border-radius:2px;background:var(--acc);color:var(--onacc);font:500 .65625rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap}
[data-insp-box][data-below] b{bottom:auto;top:calc(100% + 4px)}
[data-lens-on] [data-insp-box]{opacity:0!important}

/* Titres aux lettres mobiles : même largeur avant et après le découpage en lettres
   (sans crénage ni ligatures), donc aucun retour à la ligne différent ni décalage */
[data-tfx2]{font-kerning:none;font-variant-ligatures:none;font-feature-settings:"kern" 0,"liga" 0,"clig" 0}
/* Panneau des secrets : positionné au-dessus de la bulle, hors du flux (son remplissage
   au chargement agrandissait le bloc et décalait la bulle : décalage de mise en page) */
[data-g5] [data-sp]{position:absolute;left:0;bottom:calc(100% + 10px)}
/* Sur les fonds sombres en mode clair, l'accent des petits textes est éclairci pour rester lisible */
[data-g5]:not([data-theme="dark"]) [style*="background:var(--deep)"],[data-g5]:not([data-theme="dark"]) [style*="var(--acc) 7%, var(--deep)"],[data-g5]:not([data-theme="dark"]) [style*="var(--deepInk) 6%, var(--deep)"]{--acc:#3fb7c1;--acc-t:#3fb7c1;--onacc:#0f1417}

/* Bandeau de confiance v2 : remonté (la bulle des secrets reste dessous), logos en couleur, avis plus visibles */
.g5-trust{margin-bottom:36px;padding-top:22px;gap:18px 36px}
.g5-trust-me img{width:48px;height:48px}
.g5-trust-logos{gap:clamp(20px,2.6vw,38px)}
.g5-trust-logos img{height:34px;width:auto;opacity:1;filter:none}
.g5-trust-logos img.g5-tl-tall{height:54px}
/* Mode sombre : bandeau bleu-vert comme sur l'ancien site, logos dans leurs couleurs (versions claires des logos blancs) */
[data-g5][data-theme="dark"] .g5-trust-logos img{filter:none;background:none;padding:0;border-radius:0}
.g5-trust-logos img[data-lg="d"]{display:none}
[data-g5][data-theme="dark"] .g5-trust-logos img[data-lg="l"]{display:none}
[data-g5][data-theme="dark"] .g5-trust-logos img[data-lg="d"]{display:block}
[data-g5][data-theme="dark"] .g5-marq{background:#0a7f8a;padding-block:22px;-webkit-mask:none;mask:none}
[data-g5][data-theme="dark"] .g5-trust{border-top-color:transparent}
.g5-trust-rev{gap:12px;padding:8px 16px 8px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card)}
.g5-trust-stars{font-size:1.125rem}
.g5-trust-score{display:flex;align-items:center;gap:10px;line-height:1.25;font-size:.78125rem;color:var(--muted)}
.g5-trust-score strong{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-weight:400;font-size:2rem;line-height:1;color:var(--ink)}
@media (max-width:759px){
  .g5-trust{margin-bottom:36px}
  .g5-trust-logos{order:3;width:100%;flex-wrap:wrap!important;overflow:visible;gap:14px 22px;-webkit-mask:none;mask:none;justify-content:flex-start}
  .g5-trust-logos img{height:26px}
  .g5-trust-logos img.g5-tl-tall{height:42px}
  .g5-trust-rev{width:100%;justify-content:center}
}
/* Logo (piste 3) : initiales dans le cadre d'éditeur, puis le nom */
.g5-logo{flex:none;display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-weight:600;font-size:1.0625rem;letter-spacing:-.02em;color:var(--ink)}
.g5-logo-mark{width:34px;height:34px;flex:none;overflow:visible}
.g5-logo-mark path{transition:transform .45s cubic-bezier(.16,1,.3,1)}
@media (hover:hover) and (pointer:fine){
.g5-logo:hover .g5-logo-mark path:nth-child(1){transform:translate(-2px,-2px)}.g5-logo:hover .g5-logo-mark path:nth-child(2){transform:translate(2px,-2px)}
.g5-logo:hover .g5-logo-mark path:nth-child(3){transform:translate(-2px,2px)}.g5-logo:hover .g5-logo-mark path:nth-child(4){transform:translate(2px,2px)}
}
.g5-menu .g5-logo{color:var(--deepInk)}
@media (max-width:380px){.g5-logo>span{display:none}}
/* Réalisations au téléphone : section plus longue et crans de défilement (une réalisation par geste) */
[data-coil-snap]{position:absolute;left:0;width:1px;height:1px;scroll-snap-align:start;pointer-events:none}
@media (max-width:759px){html.g5-snap{scroll-snap-type:y proximity}.g5-helix-sec{height:calc(100svh + 4 * 70svh)!important}}
.g5-trust{flex-wrap:nowrap}
.g5-trust-rev{margin-bottom:6px;text-align:left}
@media (max-width:1100px){.g5-trust{flex-wrap:wrap}}
@media (max-width:759px){.g5-trust-rev{width:auto;align-self:flex-start;margin:6px 0 4px}}
/* Menu mobile allégé : tient sur un seul écran d'iPhone */
.g5-menu{padding-top:12px!important;overflow:hidden}
.g5-menu-links{margin:clamp(18px,4vh,40px) 0 auto}
.g5-ml a{font-size:clamp(2.3rem,10.5vw,3.2rem)!important;line-height:1.06!important}
.g5-menu-foot{gap:12px;margin-top:20px;padding-top:18px}
[data-g5]:not([data-theme="dark"]) .g5-menu{--acc:#3fb7c1;--onacc:#0f1417}
.g5-rev-total{display:flex;align-items:center;gap:clamp(18px,2vw,28px);padding:calc(clamp(20px,2.4vw,30px) - 3px) clamp(26px,3vw,40px) calc(clamp(20px,2.4vw,30px) + 3px);border-radius:var(--r-xl);border:1px solid var(--line);background:var(--card);font-size:.875rem;line-height:1.45;color:var(--muted)}
.g5-rev-n{display:block;font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-size:clamp(3.6rem,6vw,5.4rem);line-height:1;transform:translateY(.17em);letter-spacing:-.04em;color:var(--ink)}
.g5-rev-total b,.g5-trust-score b{color:var(--ink);font-weight:500;font-size:.9375rem}
.g5-rev-total a{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}
.g5-rev-total a:hover{color:var(--acc-t)}
.g5-trust-score strong{font-size:2.6rem!important;letter-spacing:-.03em}
/* Sélecteur de langue au bureau : FR · EN · ES en texte (comme le menu mobile), langue courante marquée */
.g5-langs{display:none;align-items:center;gap:6px;height:40px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--line);font-size:.8125rem;font-weight:500;letter-spacing:.02em}
@media (min-width:1240px){.g5-langs{display:flex}}
.g5-langs a{display:inline-flex;align-items:center;min-height:32px;padding:0 2px;color:var(--muted);transition:color .2s}
.g5-langs>span{color:var(--muted);opacity:.6}
@media (hover:hover) and (pointer:fine){
.g5-langs a:hover{color:var(--ink)}
}
.g5-langs a[aria-current]{color:var(--ink);font-weight:600}
.g5-also{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;padding:22px clamp(18px,4vw,56px);border-top:1px solid var(--line);font-size:.875rem;color:var(--muted)}
.g5-also>span{font-size:.78125rem;letter-spacing:.04em;text-transform:uppercase;color:var(--acc-t);margin-right:6px}
.g5-also a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;transition:color .2s,text-decoration-color .2s}
.g5-also a:hover{color:var(--acc-t);text-decoration-color:currentColor}
.g5-also i{font-style:normal;color:var(--line)}
.g5-head-l,.g5-head-c,.g5-head-r{display:flex;align-items:center;gap:8px;min-width:0}
.g5-head-l{justify-self:start;gap:14px}
.g5-head-c{justify-self:center;gap:10px}
.g5-head-r{justify-self:end}
@media (max-width:1239px){
  .g5-head{grid-template-columns:1fr auto auto!important}
  .g5-head-c{justify-self:end}
}
@media (min-width:1240px){
  .g5-head-c{position:relative}
  .g5-head-c [data-dark-toggle]{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%)}
}
.callout-icon:empty,.g5l-ico:empty{display:none!important}
/* Indication « faites défiler » (xk-hint.js) */
.g5-hint{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:58;display:flex;align-items:center;gap:10px;padding:8px 14px 8px 10px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);color:var(--ink);font-size:.78125rem;letter-spacing:.02em;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,8px);transition:opacity .6s ease,transform .6s cubic-bezier(.16,1,.3,1)}
.g5-hint.is-on{opacity:.92;transform:translate(-50%,0)}
.g5-hint-ico{position:relative;width:16px;height:24px;border:1.5px solid currentColor;border-radius:9px;opacity:.75}
.g5-hint-ico i{position:absolute;left:50%;top:5px;width:2px;height:5px;margin-left:-1px;border-radius:1px;background:var(--acc);animation:g5-hint-wheel 1.6s cubic-bezier(.45,0,.55,1) infinite}
@keyframes g5-hint-wheel{0%{transform:translateY(0);opacity:0}25%{opacity:1}70%{transform:translateY(8px);opacity:0}100%{opacity:0}}
@media (hover:none){.g5-hint-ico{border:0;width:14px;height:20px}.g5-hint-ico i{width:9px;height:9px;margin-left:-4.5px;top:4px;border:solid var(--acc);border-width:0 2px 2px 0;background:none;border-radius:0;animation:g5-hint-swipe 1.6s cubic-bezier(.45,0,.55,1) infinite}}
@keyframes g5-hint-swipe{0%{transform:translateY(-6px) rotate(45deg);opacity:0}30%{opacity:1}80%{transform:translateY(3px) rotate(45deg);opacity:0}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.g5-hint{transition:opacity .3s}.g5-hint-ico i{animation:none;opacity:1}}
.g5-foot-seo{display:flex;flex-direction:column;gap:10px;font-size:.8125rem;color:var(--deepMuted)}
.g5-foot-seo p{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;line-height:1.6}
.g5-foot-seo span{min-width:92px;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--deepMuted);opacity:.8}
.g5-foot-seo a{color:var(--deepInk);opacity:.82;transition:opacity .2s,color .2s}
.g5-foot-seo a:hover{opacity:1;color:#3fb7c1}
.g5-foot-seo i{font-style:normal;opacity:.4}
/* Conteneur global : les fonds (couleurs, bandeaux, photos plein cadre) vont d'un bord à l'autre,
   le contenu reste centré dans 1440 px. Exceptions : sections dont le sujet est une image plein écran. */
[data-g5]{--g5-max:1440px;--g5-gut:clamp(18px,4vw,56px);--g5-padx:max(var(--g5-gut),calc((100% - var(--g5-max)) / 2))}
[data-g5] main > section:not(#kitesurf):not(.g5-helix-sec):not([data-bleed]),
[data-g5] #kitesurf > div:first-child,
[data-g5] main > .g5l-hero,[data-g5] main > .g5l-sec,[data-g5] main > .g5l-cta,
[data-g5] main > p.g5-also,
[data-g5] > header.g5-head,
[data-g5] footer[data-screen-label="Footer"]{padding-left:var(--g5-padx)!important;padding-right:var(--g5-padx)!important}
[data-g5] .g5-ap-proof{max-width:none;margin-inline:0;box-sizing:border-box}
/* Secrets : uniquement sur la page d'accueil (seule page où il y a quelque chose à trouver) */
[data-g5] h1,[data-g5] h2{text-wrap:balance}
[data-g5] p{text-wrap:pretty}
[data-nosecrets] [data-sp-toggle],[data-nosecrets] [data-sp],[data-nosecrets] [data-lens-count],[data-nosecrets] .g5-foot-secrets{display:none!important}
/* Services : le texte n'est épinglé qu'à côté des visuels ; empilé (mobile, tablette), il défile normalement */
@media (max-width:980px){.g5-svc-text{position:static!important}}

/* Cartes services : visuels en appareil (iPhone, iMac) affichés en entier, jamais recadrés */
img.g5-svc-fit,.g5-fanm-img img.g5-svc-fit{object-fit:contain!important;object-position:50% 50%!important;padding:4%;box-sizing:border-box}

/* Hero : portrait avec les avis, secret au kite derrière le portrait, chiffres clés en grand */
/* Grille : titre et texte à gauche ; à droite, une colonne de la largeur du portrait (portrait, chiffres, aide alignés sur son bord droit) */
.g5-hero-grid{--g5-ph:clamp(220px,27vw,420px);display:grid;grid-template-columns:max-content var(--g5-ph);justify-content:start;column-gap:clamp(56px,10vw,175px);row-gap:44px;align-items:center}
.g5-hero-col{grid-column:2;grid-row:1 / span 2;align-self:center;display:flex;flex-direction:column;gap:22px}
.g5-hero-txt{grid-column:1;grid-row:2;align-self:end}
.g5-hero-h1{width:max-content;max-width:100%}
.g5-h1l{display:block;white-space:nowrap}
.g5-hero-me{position:relative;margin:0;width:100%;display:flex;flex-direction:column;gap:12px}
.g5-hero-ph{position:relative;display:block;aspect-ratio:1;border-radius:var(--r-xl);background:#0b0d0f;box-shadow:0 30px 60px rgba(10,20,25,.16)}
.g5-hero-ph>img{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--r-xl)}
/* La loupe inverse ce qu'elle survole (backdrop-filter) : le secret est pré-inversé pour apparaître en couleurs normales */
/* Secret : la photo de kite remplace le portrait et son texte remplace les avis (même colonne) */
.g5-hero-secret{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;gap:12px;pointer-events:none;filter:invert(1) hue-rotate(180deg)}
.g5-hero-sph{display:block;aspect-ratio:1;overflow:hidden;border-radius:var(--r-xl);background:#0b0d0f}
.g5-hero-sph img{display:block;width:100%;height:100%;object-fit:cover;object-position:42% 40%}
.g5-hero-sph{position:relative}
.g5-hero-sc{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:5px;padding:56px 18px 16px;background:linear-gradient(rgba(6,14,16,0),rgba(6,14,16,.82));color:#fff;font-size:.84375rem;line-height:1.38}
.g5-hero-sc span{font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:#7fd6dd}
.g5-hero-sc strong{font-weight:500;max-width:40ch}
.g5-hero-rev{display:flex;flex-direction:column;gap:4px;font-size:.75rem;line-height:1.35;color:var(--muted)}
.g5-hero-rev .g5-trust-stars{font-size:.9375rem;line-height:1}
.g5-hero-rev-l{display:flex;align-items:center;gap:8px;white-space:nowrap}
.g5-hero-rev b{color:var(--ink);font-weight:600}
.g5-hero-kpis{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px clamp(18px,2.2vw,30px)}
.g5-hero-kpi{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.g5-hero-kpi strong{font-family:'Newsreader','NR Times','NR Noto','NR DejaVu',serif;font-weight:400;font-size:clamp(1.6rem,2vw,2.1rem);line-height:.92;letter-spacing:-.03em;color:var(--ink)}
.g5-hero-kpi span{font-size:.78125rem;color:var(--muted)}
@media (max-width:759px){
  .g5-hero-kpi{align-items:flex-start}
}

.g5-hero-hint{font-size:.78125rem}

/* Bandeau de logos : défilement continu sur toute la largeur */
.g5-trust{display:block}
.g5-marq{width:auto!important;margin:0 calc(-1 * clamp(18px,4vw,56px));overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.g5-marq-track{display:flex;flex:none;width:max-content!important;max-width:none!important;animation:g5-marq 60s linear infinite}
@media (hover:hover) and (pointer:fine){
.g5-marq:hover .g5-marq-track{animation-play-state:paused}
}
.g5-marq-set{flex:none;display:flex;align-items:center;gap:clamp(48px,6vw,96px);padding-right:clamp(48px,6vw,96px)}
.g5-marq-set img{flex:none}
@keyframes g5-marq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.g5-marq-track{animation:none}}

/* Hero sous 1000 px : hauteur naturelle (pas de grands vides), une colonne, portrait et chiffres côte à côte */
@media (max-width:999px){
  .g5-hero{min-height:0!important;justify-content:flex-start!important;gap:clamp(28px,5vw,44px)!important}
  .g5-hero-grid{grid-template-columns:minmax(0,1fr);row-gap:clamp(28px,5vw,40px)}
  .g5-hero-col,.g5-hero-txt{grid-column:1;grid-row:auto}
  .g5-hero-h1{width:auto;font-size:calc(clamp(2.9rem,12.5vw,7.6rem) * var(--hk,1))!important}
  .g5-h1l{white-space:normal}
  .g5-hero-col{flex-direction:row;align-items:flex-end;gap:clamp(18px,4vw,40px)}
  .g5-hero-me{width:min(320px,46vw);flex:none}
  .g5-hero-kpis{flex:1;min-width:0;flex-direction:column;gap:16px}
  .g5-hero-kpi strong{font-size:clamp(1.6rem,5vw,2.4rem)}
}

/* Chiffres et avis sur une seule ligne dans toutes les langues (libellés sur deux lignes si besoin) */
@media (min-width:1000px){
  .g5-hero-kpis{flex-wrap:nowrap;gap:12px clamp(14px,1.6vw,26px)}
  .g5-hero-kpi{flex:0 1 auto;min-width:0}
  .g5-hero-kpi span{max-width:11ch;line-height:1.3}
  .g5-hero-rev{flex:0 1 auto;min-width:0}
  .g5-hero-rev-l{white-space:nowrap;flex-wrap:nowrap}
}

/* Bandeau de logos : même écart au-dessus (ligne) et en dessous (bas du hero) */
.g5-trust{margin-bottom:0!important;padding-top:clamp(24px,3vw,40px)!important}

/* Avis : passages forts en gras et plus grands */
.g5-rv-hl{font-weight:600;font-size:1.14em;color:var(--ink);letter-spacing:-.01em}

/* Page avis : captures sur deux colonnes (lisibles), longues captures Google à hauteur limitée */
.g5-caps{columns:2;column-gap:16px}
@media (max-width:759px){.g5-caps{columns:1}}
.g5-cap{display:block;break-inside:avoid;margin:0 0 16px;padding:14px;border-radius:var(--r-lg);background:#ffffff;border:1px solid var(--line);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.g5-cap img{display:block;width:100%;height:auto;border-radius:6px}

/* Accueil, novembre 2026 */
/* Bureau : le hero s'arrête un peu au-dessus du bas de l'écran, pour que la bulle des secrets ne recouvre pas les logos */
@media (min-width:1000px){.g5-hero{min-height:calc(100svh - 64px - 76px)!important;gap:26px!important}.g5-hero-grid{row-gap:30px}}
/* Bandeau de logos : même écart au-dessus (ligne) et en dessous (bas du hero) */
.g5-hero{padding-bottom:clamp(24px,3vw,40px)!important}
/* Téléphone : hero allégé (pas de phrases d'en-tête, un seul bouton), portrait à 75 %, chiffres et avis sur une ligne dessous */
@media (max-width:759px){
  .g5-hero-top{display:none!important}
  .g5-hero-col{flex-direction:column!important;align-items:stretch!important;gap:16px!important}
  .g5-hero-me{width:75%!important}
  .g5-hero-kpis{flex:none!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:flex-start!important;justify-content:space-between;gap:12px!important}
  .g5-hero-kpi{flex:0 1 auto;min-width:0}
  .g5-hero-kpi strong{font-size:1.7rem!important}
  .g5-hero-kpi span{font-size:.75rem;line-height:1.25;max-width:10ch}
  .g5-hero-rev{flex:0 1 auto;min-width:0;font-size:.75rem}
  .g5-hero-rev-l{white-space:nowrap;gap:5px}
  .g5-hero-rev .g5-trust-stars{font-size:.71875rem;letter-spacing:0}
  .g5-hero-btn2{display:none!important}
}
/* Texte agrandi dans le navigateur (la largeur d'écran exprimée en em passe sous 20) : chiffres et avis passent à la ligne
   au lieu de se télescoper. À la taille normale, ils restent sur une ligne jusqu'à 320 px. */
@media (max-width:759px) and (max-width:19.98em){.g5-hero-kpis{flex-wrap:wrap!important;row-gap:14px!important}}

/* Bulle d'explication de la loupe : quand elle est affichée, elle capte le toucher (un tap la ferme, sans cliquer ce qui est dessous) */
[data-hint-pill][data-on]{pointer-events:auto;cursor:pointer}

/* Construction en mode sombre : la maquette d'éditeur garde ses fonds clairs (codés en dur),
   donc ses textes gardent aussi les couleurs claires du thème (sinon gris clair sur blanc). */
[data-g5][data-theme="dark"] .g5-bdesk,[data-g5][data-theme="dark"] .g5-bmob,[data-g5][data-theme="dark"] [data-a-cta]{--bg:#f4f5f2;--ink:#0f1417;--muted:#58626a;--line:rgba(15,20,23,.12);--card:#ffffff;--soft:#eaedeb;--acc:#097a85;--acc-t:#086d77;--onacc:#ffffff;color:var(--ink)}

/* Construction, dernière étape au téléphone : la maquette s'estompe sous un voile clair (comme sur
   ordinateur) au lieu de devenir transparente ; en mode sombre, le fond sombre de la page ne passe
   plus derrière « C'est ici que tout commence » et le bouton final. */
.g5-bmob{isolation:isolate}
.g5-bmob::after{content:"";position:absolute;inset:0;z-index:60;pointer-events:none;background:#f4f5f2;opacity:calc(var(--s8) * .82)}
