@property --mx{syntax:"<length-percentage>";inherits:true;initial-value:50%;}
@property --my{syntax:"<length-percentage>";inherits:true;initial-value:-30%;}

:root,[data-theme="dark"]{
  color-scheme:dark;
  --ease-expo:cubic-bezier(0.16,1,0.3,1);
  --bg:#04060a;--bg-2:#0b1019;
  --hv-ink-2:rgb(244 246 251 / .74);--hv-ink-3:rgb(244 246 251 / .58);
  --accent-rgb:79 139 255;
  --surface-top:rgb(21 26 37 / .9);--surface-bottom:rgb(13 17 26 / .9);
  --surface-border:rgb(255 255 255 / .065);--surface-hilite:rgb(255 255 255 / .06);
  --surface-shadow:0 26px 60px -32px rgb(0 0 0 / .95),0 1px 2px rgb(0 0 0 / .45);
  --s2-bg:rgb(255 255 255 / .035);--s2-border:rgb(255 255 255 / .06);
  --track:rgb(0 0 0 / .34);--track-shadow:inset 0 1px 2px rgb(0 0 0 / .55),inset 0 0 0 1px rgb(255 255 255 / .045);
  --glass-top:rgb(255 255 255 / .15);--glass-bottom:rgb(255 255 255 / .05);--glass-tint:rgb(12 16 26 / .36);
  --glass-border:rgb(255 255 255 / .1);--glass-rim-a:rgb(255 255 255 / .55);--glass-rim-b:rgb(255 255 255 / .04);
  --glass-hilite:rgb(255 255 255 / .18);
  --glass-shadow:0 22px 50px -18px rgb(0 0 0 / .75),0 2px 8px rgb(0 0 0 / .35);
  --lift-shadow:0 34px 70px -30px rgb(0 0 0 / .95),0 1px 2px rgb(0 0 0 / .45);
  --pill-shadow:0 8px 20px -10px rgb(0 0 0 / .7);--btn-hover-drop:0 16px 34px -12px rgb(0 0 0 / .8);
  --btn-top:rgb(255 255 255 / .2);--btn-bottom:rgb(255 255 255 / .05);--btn-edge:rgb(255 255 255 / .5);
  --btn-inner-shade:rgb(0 0 0 / .28);--btn-drop:0 10px 28px -10px rgb(0 0 0 / .75);--spec:rgb(255 255 255 / .42);
  --aurora-1:rgb(79 139 255 / .3);--aurora-2:rgb(56 170 255 / .14);--aurora-3:rgb(99 102 241 / .16);
  --court:rgb(160 190 255 / .09);--noise-opacity:.035;--backdrop:rgb(2 4 8 / .62);
  --ink:var(--bg);--ink-2:var(--bg-2);
  --surface:#111620;--surface-2:rgb(255 255 255 / .045);--surface-3:rgb(255 255 255 / .085);
  --paper:#f4f6fb;--slate-light:var(--hv-ink-2);--slate:var(--hv-ink-3);
  --crimson:#4f8bff;--crimson-deep:#2a5fd6;--accent:#4f8bff;--accent-fill:#2a5fd6;
  --gold:#8fb4ff;--gold-soft:rgb(79 139 255 / .1);--success:#4fd1a5;--success-soft:rgb(79 209 165 / .12);
  --line:rgb(255 255 255 / .08);--line-strong:rgb(255 255 255 / .14);
  --r-sm:12px;--r-md:16px;--r-lg:24px;--r-xl:28px;--r-pill:999px;
  --shadow-card:var(--surface-shadow);--shadow-float:var(--lift-shadow);--shadow-pop:var(--lift-shadow);
  --font-display:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",system-ui,sans-serif;
  --font-ui:var(--font-display);--font-cond:var(--font-display);--font-mono:var(--font-display);
}
[data-theme="light"]{
  color-scheme:light;
  --bg:#e9edf4;--bg-2:#f8f9fc;
  --hv-ink-2:rgb(10 14 22 / .72);--hv-ink-3:rgb(10 14 22 / .6);--accent-rgb:31 86 224;
  --surface-top:rgb(255 255 255 / .95);--surface-bottom:rgb(252 253 255 / .93);
  --surface-border:rgb(10 14 22 / .06);--surface-hilite:rgb(255 255 255 / 1);
  --surface-shadow:0 22px 50px -30px rgb(20 35 70 / .35),0 1px 2px rgb(20 35 70 / .07);
  --s2-bg:rgb(10 14 22 / .03);--s2-border:rgb(10 14 22 / .05);
  --track:rgb(10 14 22 / .06);--track-shadow:inset 0 1px 2px rgb(10 14 22 / .1),inset 0 0 0 1px rgb(10 14 22 / .03);
  --glass-top:rgb(255 255 255 / .72);--glass-bottom:rgb(255 255 255 / .42);--glass-tint:rgb(255 255 255 / .22);
  --glass-border:rgb(255 255 255 / .85);--glass-rim-a:rgb(255 255 255 / 1);--glass-rim-b:rgb(255 255 255 / .3);
  --glass-hilite:rgb(255 255 255 / .9);
  --glass-shadow:0 20px 44px -20px rgb(20 35 70 / .35),0 2px 8px rgb(20 35 70 / .08),0 0 0 1px rgb(20 35 70 / .05);
  --lift-shadow:0 30px 60px -30px rgb(20 35 70 / .4),0 1px 2px rgb(20 35 70 / .08);
  --pill-shadow:0 8px 18px -10px rgb(20 35 70 / .35),0 0 0 1px rgb(20 35 70 / .06);
  --btn-hover-drop:0 14px 28px -12px rgb(20 35 70 / .4),0 0 0 1px rgb(20 35 70 / .07);
  --btn-top:rgb(255 255 255 / .95);--btn-bottom:rgb(255 255 255 / .6);--btn-edge:rgb(255 255 255 / 1);
  --btn-inner-shade:rgb(20 35 70 / .1);--btn-drop:0 10px 24px -12px rgb(20 35 70 / .35),0 0 0 1px rgb(20 35 70 / .07);
  --spec:rgb(255 255 255 / .9);
  --aurora-1:rgb(37 99 255 / .2);--aurora-2:rgb(56 170 255 / .14);--aurora-3:rgb(99 102 241 / .12);
  --court:rgb(37 60 120 / .1);--noise-opacity:.02;--backdrop:rgb(30 40 60 / .32);
  --surface:#fff;--surface-2:rgb(10 14 22 / .035);--surface-3:rgb(10 14 22 / .07);--paper:#0a0e16;
  --crimson:#1f56e0;--crimson-deep:#1f56e0;--accent:#1f56e0;--accent-fill:#1f56e0;
  --gold:#1f56e0;--gold-soft:rgb(31 86 224 / .08);--success:#0e6e4f;--success-soft:rgb(14 110 79 / .1);
  --line:rgb(10 14 22 / .08);--line-strong:rgb(10 14 22 / .13);
}

body{
  background:var(--bg);color:var(--paper);font-family:var(--font-ui);font-size:16px;
  font-feature-settings:"cv11","ss01","tnum";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  -webkit-tap-highlight-color:transparent;
}
body::before{display:none;}
::selection{background:rgb(var(--accent-rgb) / .35);color:inherit;}
a{color:var(--accent);}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:12px;}

.hv-ambient{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.hv-ambient .hv-base{position:absolute;inset:0;background:radial-gradient(140% 90% at 50% -20%,var(--bg-2),var(--bg) 62%);}
.hv-ambient .aurora{position:absolute;border-radius:50%;}
.hv-ambient .a1{left:50%;top:-45vmax;width:105vmax;height:105vmax;margin-left:-52.5vmax;background:radial-gradient(closest-side,var(--aurora-1),transparent);--drift:26s;}
.hv-ambient .a2{right:-30vmax;top:5vh;width:70vmax;height:70vmax;background:radial-gradient(closest-side,var(--aurora-2),transparent);--drift:34s;}
.hv-ambient .a3{bottom:-40vmax;left:-25vmax;width:80vmax;height:80vmax;background:radial-gradient(closest-side,var(--aurora-3),transparent);--drift:30s;}
.hv-ambient .hv-court-wrap{position:absolute;bottom:-18vh;left:50%;width:150vmax;max-width:2200px;transform:translateX(-50%);perspective:900px;}
.hv-ambient .hv-court{aspect-ratio:2/1;transform-origin:bottom;transform:rotateX(64deg);-webkit-mask-image:linear-gradient(to top,#000 35%,transparent);mask-image:linear-gradient(to top,#000 35%,transparent);}
.hv-ambient .hv-court svg{width:100%;height:100%;display:block;}
.hv-ambient .hv-noise{position:absolute;inset:0;mix-blend-mode:overlay;opacity:var(--noise-opacity);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='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
@media (hover:hover) and (min-width:1024px){.hv-ambient .aurora{animation:hv-drift var(--drift,28s) ease-in-out infinite;}}
@keyframes hv-drift{0%,100%{transform:translate3d(0,0,0) scale(1);}33%{transform:translate3d(6%,-4%,0) scale(1.08);}66%{transform:translate3d(-5%,3%,0) scale(.95);}}

main,footer,.hero,.faits{position:relative;z-index:1;}
header{position:sticky;top:0;z-index:40;background:transparent;border-bottom:none;padding:max(10px,env(safe-area-inset-top)) 12px 0;}
.barre{
  max-width:1100px;margin:0 auto;padding:8px 8px 8px 14px;border-radius:999px;border:1px solid transparent;
  transition:background .5s var(--ease-expo),box-shadow .5s var(--ease-expo),border-color .5s var(--ease-expo);
}
header.hv-scrolled .barre{
  background:linear-gradient(180deg,var(--glass-top),var(--glass-bottom)),var(--glass-tint);
  -webkit-backdrop-filter:blur(16px) saturate(190%) brightness(1.05);backdrop-filter:blur(16px) saturate(190%) brightness(1.05);
  border-color:var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-hilite);
}
.marque{display:flex;align-items:center;gap:11px;font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:-.035em;color:var(--paper);text-decoration:none;white-space:nowrap;}
.marque .vis,.pied-nom .vis{color:#4f8bff;}
.hv-mark{
  display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;color:#fff;background-color:#2a5fd6;
  background-image:linear-gradient(180deg,rgb(255 255 255 / .3) 0%,transparent 32%),linear-gradient(180deg,#3f6fda,#2a5fd6 60%,#2452b8);
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .65),inset 0 -2px 8px rgb(0 0 0 / .22),inset 0 0 0 1px rgb(255 255 255 / .14),0 12px 32px -10px rgb(79 139 255 / .9),0 0 0 1px rgb(79 139 255 / .5);
}
.hv-mark svg{width:80%;height:80%;display:block;filter:drop-shadow(0 1px 1px rgb(0 0 0 / .2));}
.hv-mark svg .hv-a,.hv-mark svg .hv-b{transform-box:view-box;transform-origin:32px 32px;}
@media (hover:hover){
  .marque:hover .hv-mark svg .hv-a,.pied-marque:hover .hv-mark svg .hv-a{animation:hv-focus .9s var(--ease-expo);}
  .marque:hover .hv-mark svg .hv-b,.pied-marque:hover .hv-mark svg .hv-b{animation:hv-iris .9s var(--ease-expo);}
}
@keyframes hv-focus{from{transform:rotate(-220deg);}to{transform:none;}}
@keyframes hv-iris{from{transform:rotate(-70deg) scale(.92);}to{transform:none;}}
.pied-marque .hv-mark{width:34px;height:34px;border-radius:11px;}

.bouton,.lien-connexion,.retour,.hv-theme-btn{
  position:relative;isolation:isolate;overflow:hidden;border:none;border-radius:999px;font-family:inherit;font-weight:600;letter-spacing:-.01em;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer;
  transition:transform 520ms cubic-bezier(.3,1.2,.45,1),box-shadow 550ms var(--ease-expo),background-color 300ms var(--ease-expo),color 300ms var(--ease-expo),filter 420ms var(--ease-expo);
}
.bouton::before,.lien-connexion::before,.retour::before,.hv-theme-btn::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;
  background:radial-gradient(140px circle at var(--mx) var(--my),var(--spec),transparent 62%);opacity:.35;transition:opacity 400ms var(--ease-expo);
}
.bouton::after,.lien-connexion::after,.retour::after,.hv-theme-btn::after{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(155deg,var(--glass-rim-a),var(--glass-rim-b) 34%,var(--glass-rim-b) 66%,rgb(255 255 255 / .22));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
}
@media (hover:hover){
  .bouton:hover::before,.lien-connexion:hover::before,.retour:hover::before,.hv-theme-btn:hover::before{opacity:1;}
  .bouton:hover,.lien-connexion:hover,.retour:hover,.hv-theme-btn:hover{transform:translateY(-1px);}
}
@media (hover:none){.bouton::before,.lien-connexion::before,.retour::before,.hv-theme-btn::before{opacity:.7;background:radial-gradient(140px circle at 30% -25%,var(--spec),transparent 62%);}}
.lien-connexion,.retour,.bouton.secondaire,.hv-theme-btn{
  color:var(--paper);
  background:linear-gradient(180deg,var(--btn-top) 0%,var(--btn-bottom) 55%,rgb(255 255 255 / .02) 100%),var(--glass-tint);
  box-shadow:inset 0 1px 0 var(--btn-edge),inset 0 -1px 0 rgb(255 255 255 / .08),inset 0 -10px 18px -8px var(--btn-inner-shade),var(--btn-drop);
}
@media (hover:hover){
  .lien-connexion:hover,.retour:hover,.bouton.secondaire:hover{
    color:var(--paper);filter:none;
    background:linear-gradient(180deg,var(--btn-top) 0%,var(--btn-bottom) 55%,rgb(255 255 255 / .02) 100%),var(--glass-tint);
    box-shadow:inset 0 1px 0 var(--btn-edge),inset 0 -1px 0 rgb(255 255 255 / .12),inset 0 -10px 18px -8px var(--btn-inner-shade),var(--btn-hover-drop);
  }
}
.bouton{
  min-height:46px;padding:0 24px;font-size:15px;color:#fff;background-color:var(--accent-fill);
  background-image:linear-gradient(180deg,rgb(255 255 255 / .3) 0%,transparent 32%),linear-gradient(180deg,color-mix(in srgb,var(--accent-fill) 90%,white),var(--accent-fill) 60%,color-mix(in srgb,var(--accent-fill) 86%,black));
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .65),inset 0 -2px 8px rgb(0 0 0 / .22),inset 0 0 0 1px rgb(255 255 255 / .14),0 12px 32px -10px rgb(var(--accent-rgb) / .9),0 0 0 1px rgb(var(--accent-rgb) / .5);
  text-shadow:0 1px 1px rgb(0 0 0 / .18);
}
.bouton.secondaire{background-color:transparent;text-shadow:none;}
@media (hover:hover){.bouton:not(.secondaire):hover{filter:brightness(1.08) saturate(1.05);}}
.bouton:disabled{pointer-events:none;opacity:.45;filter:none;}
.lien-connexion,.retour{min-height:38px;padding:0 16px;font-size:14px;color:var(--paper);}
.hv-theme-btn{width:38px;height:38px;padding:0;}
.hv-theme-btn svg{width:16px;height:16px;}
.hv-theme-btn .hv-moon{display:none;}
[data-theme="light"] .hv-theme-btn .hv-sun{display:none;}
[data-theme="light"] .hv-theme-btn .hv-moon{display:block;}
.barre-actions,.barre > div:last-child{display:flex;align-items:center;gap:10px;}
.choix-langue{
  font:inherit;font-size:13px;font-weight:600;color:var(--paper);border:none;border-radius:999px;padding:8px 12px;opacity:1;cursor:pointer;
  background:var(--track);box-shadow:var(--track-shadow);
}
.choix-langue option{color:#0a0e16;background:#fff;}

.bandeau-club{background:transparent;border-bottom:none;padding:12px 12px 0;position:relative;z-index:2;}
.bandeau-club .dedans{
  max-width:1100px;margin:0 auto;border-radius:22px;padding:10px 12px 10px 20px;
  background:linear-gradient(180deg,var(--surface-top),var(--surface-bottom));border:1px solid var(--surface-border);box-shadow:var(--surface-shadow),inset 0 1px 0 var(--surface-hilite);
}
.bandeau-club .bouton{min-height:38px;padding:0 18px;font-size:14px;}
.bandeau-club .changer{border-bottom:none;color:var(--hv-ink-2);}

.hero{background:transparent;border-bottom:none;overflow:visible;}
.hero-grille{padding:72px 24px 56px;gap:56px;}
.surtitre{
  display:inline-flex;font-size:11px;letter-spacing:.08em;font-weight:600;color:var(--hv-ink-2);margin-bottom:22px;
  border:1px solid var(--glass-border);border-radius:999px;padding:7px 14px;
  background:linear-gradient(180deg,var(--glass-top),var(--glass-bottom)),var(--glass-tint);box-shadow:inset 0 1px 0 var(--glass-hilite);
}
.hero h1{font-weight:650;font-size:clamp(38px,6.2vw,66px);line-height:1.02;letter-spacing:-.05em;margin:0 0 20px;}
.hero h1 .accent{color:var(--accent);}
.chapeau{font-size:18px;color:var(--hv-ink-2);line-height:1.6;}
.sous-actions{color:var(--hv-ink-3);}
.sous-actions b{color:var(--hv-ink-2);}

.apercu-cadre{
  background:linear-gradient(180deg,var(--surface-top),var(--surface-bottom));border:1px solid var(--surface-border);border-radius:34px;
  box-shadow:var(--lift-shadow),inset 0 1px 0 var(--surface-hilite);transform:rotate(-1.5deg);animation:hv-flotte 7s ease-in-out infinite;
}
@keyframes hv-flotte{0%,100%{transform:translateY(0) rotate(-1.5deg);}50%{transform:translateY(-10px) rotate(-1deg);}}
.apercu-barre{background:transparent;border-bottom:1px solid var(--line);padding:14px 16px;}
.apercu-barre .hv-mark{width:30px;height:30px;border-radius:10px;}
.apercu-nom{font-weight:600;letter-spacing:-.02em;}
.apercu-sous{letter-spacing:.06em;}
.apercu-titre{font-weight:600;}
.apercu-stat{background:var(--s2-bg);border:1px solid var(--s2-border);border-radius:16px;}
.apercu-stat .n{font-weight:650;}
.apercu-stat .n.vert{color:var(--accent);}
.apercu-nav{background:linear-gradient(180deg,var(--glass-top),var(--glass-bottom)),var(--glass-tint);border-top:1px solid var(--glass-border);}
.apercu-ligne .coche{background:var(--accent-fill);color:#fff;}
@media (max-width:940px){.apercu-cadre{transform:none;animation:none;}}

.faits{background:transparent;border-bottom:none;padding:0 12px;}
.faits-grille{
  max-width:1100px;border-radius:var(--r-xl);padding:26px 30px;
  background:linear-gradient(180deg,var(--surface-top),var(--surface-bottom));border:1px solid var(--surface-border);box-shadow:var(--surface-shadow),inset 0 1px 0 var(--surface-hilite);
}
.fait .chiffre{font-weight:650;font-size:38px;letter-spacing:-.05em;}
.fait .texte{color:var(--hv-ink-2);}

main{padding:0 0 20px;}
section{padding:72px 0;border-bottom:none;}
.titre-section .eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--hv-ink-3);}
.titre-section h2{font-weight:650;letter-spacing:-.045em;}
.titre-section p{color:var(--hv-ink-2);}

.carte,.etapes li,.encart .bloc,.questions details,.final-boite{
  background:linear-gradient(180deg,var(--surface-top),var(--surface-bottom));border:1px solid var(--surface-border);border-radius:var(--r-xl);
  box-shadow:var(--surface-shadow),inset 0 1px 0 var(--surface-hilite);
}
.carte{padding:26px 24px;transition:transform .5s var(--ease-expo),box-shadow .5s var(--ease-expo);}
@media (hover:hover){.carte:hover{transform:translateY(-4px);box-shadow:var(--lift-shadow),inset 0 1px 0 var(--surface-hilite);}}
.carte .puce{
  width:44px;height:44px;border-radius:15px;color:var(--accent);
  background:linear-gradient(180deg,var(--btn-top),var(--btn-bottom)),var(--glass-tint);
  box-shadow:inset 0 1px 0 var(--btn-edge),inset 0 -8px 14px -8px var(--btn-inner-shade),var(--pill-shadow);
}
.carte h3,.encart h3{font-weight:600;letter-spacing:-.025em;}
.carte p,.carte ul,.etapes span,.encart li,.questions .reponse{color:var(--hv-ink-2);}
.etapes li{padding:24px 22px;}
.etapes .num{
  border-radius:50%;width:32px;height:32px;color:#fff;background-color:var(--accent-fill);
  background-image:linear-gradient(180deg,rgb(255 255 255 / .3) 0%,transparent 40%);
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .55),0 8px 18px -8px rgb(var(--accent-rgb) / .9);
}
.encart .bloc{padding:24px;}
.encart .bloc.oui{border-left:1px solid var(--surface-border);}
.encart .bloc.non{border-left:1px solid var(--surface-border);}
.encart .non li::before{color:var(--hv-ink-3);}
.questions details{margin-bottom:10px;}
.questions summary{border-radius:var(--r-xl);font-weight:600;}
.questions summary:hover{background:var(--surface-2);}
.questions summary::after{color:var(--accent);transition:transform .5s cubic-bezier(.34,1.56,.64,1);}
.questions details[open] .reponse{animation:hv-rise .5s var(--ease-expo);}
.final-boite{padding:52px 38px;position:relative;}
.final-boite::before{
  content:"";position:absolute;right:-90px;top:-130px;width:360px;height:360px;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgb(var(--accent-rgb) / .22),transparent);
}
.final-boite h2{font-weight:650;letter-spacing:-.045em;}
.final-boite p{color:var(--hv-ink-2);}
.final-boite .hvi-cta{width:min(340px,80%);margin:0 auto 26px;color:var(--paper);}
.final-boite .hvi-cta svg{width:100%;height:auto;display:block;overflow:visible;}

footer{border-top:none;background:transparent;margin-top:40px;}
.pied{padding:26px 24px 40px;}
.pied-marque{align-items:center;}
.pied-nom{font-weight:700;letter-spacing:-.035em;font-size:16px;}
.pied-sous{color:var(--hv-ink-3);}
.pied-liens a{color:var(--hv-ink-2);font-weight:500;}
.pied-liens a:hover{color:var(--paper);text-decoration:none;}

.voile{background:var(--backdrop);-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);}
.voile.ouvert{animation:hv-fondu .3s var(--ease-expo);}
.fenetre{
  background:linear-gradient(180deg,var(--surface-top),var(--surface-bottom)),var(--bg);border:1px solid var(--surface-border);border-radius:28px;
  box-shadow:var(--lift-shadow),inset 0 1px 0 var(--surface-hilite);animation:hv-fenetre .55s cubic-bezier(.22,1.15,.36,1);
}
.fenetre h3{font-weight:600;letter-spacing:-.03em;}
.fenetre > p{color:var(--hv-ink-2);}
.champ label{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--hv-ink-3);}
.champ input{background:var(--track);border:1px solid transparent;border-radius:14px;box-shadow:var(--track-shadow);}
.champ input:focus{border-color:rgb(var(--accent-rgb) / .6);box-shadow:var(--track-shadow),0 0 0 4px rgb(var(--accent-rgb) / .3);}
.rgpd,.code-club{background:var(--s2-bg);border:1px solid var(--s2-border);border-radius:18px;}
.code-club .lien{color:var(--accent);}
.message.erreur{color:#ff6b6b;}
[data-theme="light"] .message.erreur{color:#b42323;}
@keyframes hv-fondu{from{opacity:0;}to{opacity:1;}}
@keyframes hv-fenetre{from{opacity:0;transform:translateY(14px) scale(.98);}to{opacity:1;transform:none;}}
@keyframes hv-rise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
@media (max-width:640px){
  .voile{align-items:flex-end;padding:0;}
  .fenetre{max-width:100%;border-radius:28px 28px 0 0;border-bottom:none;padding-bottom:calc(22px + env(safe-area-inset-bottom));animation:hv-feuille .5s cubic-bezier(.22,1,.36,1);}
  .fenetre input,.champ input{font-size:16px;}
}
@keyframes hv-feuille{from{transform:translateY(100%);}to{transform:none;}}

main > h2{font-weight:650;font-size:22px;letter-spacing:-.035em;border-bottom:none;padding-bottom:0;margin:48px 0 12px;}
main > h2::after{display:none;}
main > h1{font-weight:650;letter-spacing:-.05em;}
main > p,main > ul,main li{color:var(--hv-ink-2);}
main strong,main b{color:var(--paper);}
.maj{color:var(--hv-ink-3);}
.surtitre + h1,main > .surtitre{margin-bottom:12px;}
.encadre{background:var(--s2-bg);border:1px solid var(--s2-border);border-left:1px solid var(--s2-border);border-radius:20px;padding:20px 22px;}
.a-completer{background:rgb(245 180 84 / .12);border:1px solid rgb(245 180 84 / .35);border-left:1px solid rgb(245 180 84 / .35);border-radius:18px;color:var(--paper);}
.a-completer b{color:var(--paper);}

.hv-rev{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease-expo),transform .9s var(--ease-expo);transition-delay:calc(var(--i,0) * 70ms);}
.hv-rev.hv-vu{opacity:1;transform:none;}
[data-hv-entree]{animation:hv-rise 1s var(--ease-expo) backwards;animation-delay:calc(var(--k,0) * 80ms + 120ms);}
html.hv-splash-on [data-hv-entree]{animation-play-state:paused;}
html.hv-splash-on body > *:not(#hv-splash){visibility:hidden;}

#hv-splash{
  --hvs-bg:#04060a;--hvs-encre:#f4f6fb;position:fixed;inset:0;z-index:100000;display:grid;place-items:center;
  background:radial-gradient(120% 80% at 50% -10%,#0b1019,var(--hvs-bg) 62%);color:var(--hvs-encre);
  transition:opacity .55s cubic-bezier(.4,0,.2,1),visibility 0s linear .55s;
}
#hv-splash.clair{--hvs-bg:#e9edf4;--hvs-encre:#0a0e16;background:radial-gradient(120% 80% at 50% -10%,#f8f9fc,var(--hvs-bg) 62%);}
#hv-splash.sort{opacity:0;visibility:hidden;pointer-events:none;}
#hv-splash::before{
  content:"";position:absolute;left:50%;top:42%;width:78vmax;height:78vmax;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(closest-side,rgb(79 139 255 / .26),transparent);opacity:0;animation:hvs-lueur 2.2s cubic-bezier(.16,1,.3,1) .1s forwards;
}
.hvs-boite{position:relative;display:flex;flex-direction:column;align-items:center;gap:26px;transition:transform .7s cubic-bezier(.4,0,.2,1);}
#hv-splash.sort .hvs-boite{transform:scale(1.06);}
.hvs-boite > svg{width:128px;height:128px;overflow:visible;}
.hvs-mot{display:flex;font-size:34px;font-weight:700;letter-spacing:-.04em;line-height:1;font-family:Inter,-apple-system,"Segoe UI",sans-serif;}
.hvs-mot span{display:inline-block;opacity:0;transform:translateY(.55em);animation:hvs-lettre .8s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(1.3s + var(--i) * 32ms);}
.hvs-mot .v{color:#4f8bff;}
@keyframes hvs-lettre{to{opacity:1;transform:none;}}
@keyframes hvs-lueur{0%{opacity:0;transform:translate(-50%,-50%) scale(.5);}60%{opacity:1;}100%{opacity:.9;transform:translate(-50%,-50%) scale(1);}}

@media (max-width:600px){
  header{padding-left:8px;padding-right:8px;}
  .barre{padding:6px 6px 6px 10px;}
  .marque{font-size:16px;gap:9px;}
  .hv-mark{width:32px;height:32px;border-radius:11px;}
  .hero-grille{padding:40px 16px 36px;gap:40px;}
  .faits-grille{padding:22px 20px;}
  section{padding:48px 0;}
  .bandeau-club{padding:10px 8px 0;}
}
@media (prefers-reduced-motion:reduce){
  #hv-splash{display:none;}
  html.hv-splash-on body > *:not(#hv-splash){visibility:visible;}
  .hv-rev{opacity:1;transform:none;transition:none;}
  .apercu-cadre{animation:none;}
}

.hvi .hvi-r{stroke-dasharray:100;stroke-dashoffset:100;animation:hvi-ring 1.1s cubic-bezier(.16,1,.3,1) .05s forwards}
.hvi .hvi-a{opacity:0;animation:hvi-arc 1.5s cubic-bezier(.22,1,.36,1) .85s forwards;transform-box:view-box;transform-origin:32px 32px}
.hvi .hvi-b{transform-box:view-box;transform-origin:32px 32px;transform:scale(.45) rotate(-150deg);opacity:0;animation:hvi-ball 1.15s cubic-bezier(.34,1.25,.4,1) .3s forwards}
.hvi .hvi-s{stroke-dasharray:1 1.6;stroke-dashoffset:-1;animation:hvi-seam .55s cubic-bezier(.65,0,.35,1) forwards}
.hvi .hvi-s0{animation-delay:.85s}.hvi .hvi-s1{animation-delay:.95s}.hvi .hvi-s2{animation-delay:1.05s}
.hvi .hvi-p{transform-box:view-box;transform-origin:31px 33px;transform:scale(0);animation:hvi-pup .55s cubic-bezier(.34,1.7,.5,1) 1.25s forwards}
.hvi .hvi-pl{transform-box:view-box;transform-origin:31px 33px;opacity:0;animation:hvi-pulse 1s cubic-bezier(.16,1,.3,1) 1.3s forwards}
.hvi .hvi-mot{clip-path:inset(0 100% 0 0);animation:hvi-mot 1s cubic-bezier(.16,1,.3,1) 1.35s forwards}
.hvi .hvi-mot text{transform:translateX(-26px);animation:hvi-mots 1s cubic-bezier(.16,1,.3,1) 1.35s forwards}
@keyframes hvi-ring{to{stroke-dashoffset:0}}
@keyframes hvi-arc{0%{opacity:0;transform:rotate(-200deg)}18%{opacity:1}100%{opacity:1;transform:rotate(0)}}
@keyframes hvi-ball{0%{opacity:0;transform:scale(.45) rotate(-150deg)}30%{opacity:1}100%{opacity:1;transform:none}}
@keyframes hvi-seam{to{stroke-dashoffset:0}}
@keyframes hvi-pup{to{transform:scale(1)}}
@keyframes hvi-pulse{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(6.5)}}
@keyframes hvi-mot{to{clip-path:inset(0 0 0 0)}}
@keyframes hvi-mots{to{transform:none}}
.hvi:not(.go) *{animation-play-state:paused !important;}
.bouton:active,.lien-connexion:active,.retour:active,.hv-theme-btn:active{
  transform:scale(1.045);
  filter:brightness(1.12) saturate(1.1) drop-shadow(0 8px 16px rgb(var(--accent-rgb) / .32));
  transition:transform 280ms cubic-bezier(.2,.9,.3,1.25),filter 240ms var(--ease-expo),box-shadow 240ms var(--ease-expo),background-color 300ms var(--ease-expo),color 300ms var(--ease-expo);
}
.bouton:active::before,.lien-connexion:active::before,.retour:active::before,.hv-theme-btn:active::before{opacity:1;}
[data-theme="light"] .bouton:active,[data-theme="light"] .lien-connexion:active,[data-theme="light"] .retour:active,[data-theme="light"] .hv-theme-btn:active{
  filter:brightness(1.03) saturate(1.12) drop-shadow(0 8px 16px rgb(var(--accent-rgb) / .26));
}
@media (prefers-reduced-motion:reduce){
  .bouton:active,.lien-connexion:active,.retour:active,.hv-theme-btn:active{transform:none;}
}
.case-nouveautes{display:flex;align-items:flex-start;gap:10px;margin:2px 0 14px;font-size:13.5px;line-height:1.45;color:var(--slate);cursor:pointer;}
.case-nouveautes input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--accent);cursor:pointer;}

/* ===== Telephone et tablette ===== */
body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);}
@media (pointer:coarse){
  .lien-connexion,.hv-theme-btn,.retour{min-height:44px;}
  .hv-theme-btn{min-width:44px;}
  .pied-liens a,#bandeauClubChanger,.sous-actions a{display:inline-flex;align-items:center;min-height:44px;}
  .bouton,.bandeau-club .bouton{min-height:48px;}
}
@media (max-width:420px){
  .actions{flex-direction:column;}
  .actions .bouton{width:100%;}
}
