/*
 * ViewerFirst — design system « plateforme » (v1.9.0), chargé en dernier sur toutes les pages publiques.
 * Les anciens jetons (obsidian, smoke, hairline, snow, ash-mist, signal-blue, glacier-beam) sont redéfinis ici :
 * toutes les feuilles des pages en profitent sans être réécrites. Surfaces en couches, bleu signal plus vif,
 * titres pleins, boutons de 48 px, cartes à coins arrondis, en-tête « verre », pied de page en colonnes.
 */

/* ---------------------------------------------------------------- Jetons */
:root{
 --bg:#05070b;--surface-1:#0b0e14;--surface-2:#11151e;--surface-3:#181d29;--line:rgba(255,255,255,.08);--line-strong:rgba(255,255,255,.16);
 --text:#f3f5f9;--text-2:#a5adbb;--text-3:#6c7484;
 --accent:#2f7cf6;--accent-hi:#5aa7ff;--accent-soft:rgba(47,124,246,.14);--accent-grad:linear-gradient(135deg,#1e6cf0 0%,#4a9dff 100%);
 --live:#ff3b47;--ok:#2fc58a;
 --radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:999px;
 --shadow-1:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.28);--shadow-2:0 24px 64px rgba(0,0,0,.5);--glow:0 10px 30px rgba(47,124,246,.35);
 --header-h:72px;--section-gap:clamp(72px,9vw,120px);--page-max-width:1320px;--card-padding:28px;
 /* anciens noms → nouveaux jetons */
 --obsidian:var(--bg);--smoke:var(--surface-1);--hairline:#1c212d;--snow:var(--text);--ash-mist:var(--text-2);--iron-veil:var(--text-3);--faded-print:var(--text-3);
 --eclipse-indigo:#0b0e14;--card-muted:#5d6472;--signal-blue:var(--accent);--glacier-beam:var(--accent-hi);--focus-ring:var(--accent-hi);--focus-ring-on-card:var(--accent-hi);
}
html[data-theme="light"]{
 --bg:#ffffff;--surface-1:#f5f7fb;--surface-2:#ffffff;--surface-3:#eef1f6;--line:rgba(10,20,40,.09);--line-strong:rgba(10,20,40,.18);
 --text:#0a0e17;--text-2:#4a5262;--text-3:#6e7686;--accent:#1d63db;--accent-hi:#1d63db;--accent-soft:rgba(29,99,219,.1);
 --shadow-1:0 1px 2px rgba(10,20,40,.06),0 8px 24px rgba(10,20,40,.08);--shadow-2:0 24px 64px rgba(10,20,40,.14);--glow:0 10px 30px rgba(29,99,219,.25);
 --obsidian:var(--bg);--smoke:var(--surface-1);--hairline:#e4e8ef;--snow:var(--text);--ash-mist:var(--text-2);--iron-veil:var(--text-3);--faded-print:var(--text-3);
 --signal-blue:var(--accent);--glacier-beam:var(--accent-hi);--focus-ring:var(--accent)
}
body{background:var(--bg);color:var(--text);font-feature-settings:"cv11","ss01";text-rendering:optimizeLegibility}
html[data-theme="light"] body{background:var(--bg);color:var(--text)}
::selection{background:var(--accent);color:#fff}

/* ---------------------------------------------------------------- Typographie */
:root .vf-display{font-size:clamp(44px,6.2vw,84px);line-height:1;font-weight:800;letter-spacing:-.035em}
:root .vf-heading-lg{font-size:clamp(30px,3.6vw,44px);line-height:1.08;font-weight:700;letter-spacing:-.025em}
:root .vf-heading{font-size:clamp(28px,3.4vw,44px);line-height:1.08;font-weight:700;letter-spacing:-.025em}
:root .vf-heading-sm{font-size:clamp(20px,2vw,24px);line-height:1.25;font-weight:600;letter-spacing:-.01em}
:root .vf-subheading{font-size:18px;line-height:1.3;font-weight:600;letter-spacing:-.01em}
:root .vf-plan-name{font-size:18px;line-height:1.3;font-weight:600}
.vf-body-lg{font-size:17px;line-height:1.6}
.vf-body{font-size:15px;line-height:1.55}
.vf-small{font-size:13px;line-height:1.45}
.vf-cta{font-size:15px;line-height:1;font-weight:600;letter-spacing:0}
.vf-price{font-size:40px;line-height:1;font-weight:800;letter-spacing:-.03em}
.vf-eyebrow{font-size:12px;line-height:1.3;font-weight:700;letter-spacing:.14em;color:var(--accent-hi)}
.vf-section-heading .vf-eyebrow,.vf-page-head .vf-eyebrow,.hero2__text .vf-eyebrow,.final__inner .vf-eyebrow,.how .vf-section-heading .vf-eyebrow,.why .vf-section-heading .vf-eyebrow,.pricing .vf-section-heading .vf-eyebrow,.sports .vf-section-heading .vf-eyebrow,.vod .vf-section-heading .vf-eyebrow,.devices .vf-section-heading .vf-eyebrow,.faq .vf-section-heading .vf-eyebrow,.aff .vf-section-heading .vf-eyebrow,.vit .vf-section-heading .vf-eyebrow{color:var(--accent-hi)}

/* ---------------------------------------------------------------- Boutons et liens */
.vf-btn{min-height:48px;padding:0 24px;border-radius:var(--radius-md);font-weight:600;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}
.vf-btn--primary{background:var(--accent-grad);color:#fff;padding:0 24px;box-shadow:var(--glow)}
.vf-btn--primary:hover{opacity:1;transform:translateY(-1px);box-shadow:0 14px 36px rgba(47,124,246,.5)}
.vf-btn--primary:active{transform:none}
.vf-btn--ghost{background:rgba(255,255,255,.06);color:var(--text);border-color:var(--line-strong);padding:0 24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.vf-btn--ghost:hover{background:rgba(255,255,255,.14);color:var(--text);border-color:rgba(255,255,255,.28)}
html[data-theme="light"] .vf-btn--ghost{background:#fff;border-color:var(--line-strong)}
html[data-theme="light"] .vf-btn--ghost:hover{background:var(--surface-3);color:var(--text)}
.vf-link:hover{color:var(--accent-hi)}
.vf-link--accent{color:var(--accent-hi);font-weight:600}
.arrow-link svg{transition:transform .15s ease}
.arrow-link:hover svg{transform:translateX(3px)}
.nudge{animation:none}

/* ---------------------------------------------------------------- Mise en page commune */
.wrap{--gutter:clamp(20px,4.5vw,64px)}
.vf-section-heading{padding-block:var(--section-gap) clamp(32px,4vw,48px);gap:14px;max-width:820px;margin-inline:auto}
.vf-section-heading.sh-left{margin-inline:0;text-align:left;justify-items:start}
.vf-section-heading p:not(.vf-eyebrow){color:var(--text-2);font-size:17px;line-height:1.6;max-width:60ch}
.vf-section-heading:not(.sh-left) p:not(.vf-eyebrow){margin-inline:auto}

/* ---------------------------------------------------------------- En-tête « verre » */
.site-header{position:fixed;inset:0 0 auto;z-index:50;transition:background-color .25s ease,border-color .25s ease,-webkit-backdrop-filter .25s ease,backdrop-filter .25s ease;border-bottom:1px solid transparent}
.site-header::before{content:"";position:absolute;inset:0 0 -40px;background:linear-gradient(180deg,rgba(5,7,11,.7),rgba(5,7,11,0));pointer-events:none;transition:opacity .25s ease}
.site-header.is-scrolled{background:rgba(5,7,11,.72);-webkit-backdrop-filter:saturate(160%) blur(18px);backdrop-filter:saturate(160%) blur(18px);border-bottom-color:var(--line)}
.site-header.is-scrolled::before{opacity:0}
html[data-theme="light"] .site-header::before{background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(255,255,255,0))}
html[data-theme="light"] .site-header.is-scrolled{background:rgba(255,255,255,.8)}
.site-header .wrap{position:relative}
.vf-header{min-height:var(--header-h);padding-block:12px}
.brand svg{height:28px;width:auto}
.menu{gap:20px}
.menu ul{gap:4px}
.menu ul a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:var(--radius-full);color:var(--text-2);font-size:15px;font-weight:500;transition:color .15s ease,background-color .15s ease}
.menu ul a:hover{color:var(--text);background:rgba(255,255,255,.07)}
html[data-theme="light"] .menu ul a:hover{background:var(--surface-3)}
.menu .is-current,.menu ul a.is-current{color:var(--text);background:rgba(255,255,255,.1)}
html[data-theme="light"] .menu ul a.is-current{background:var(--surface-3)}
.menu .vf-btn.menu__cta{min-height:42px;padding:0 20px;font-size:14px}
.lang-dd>summary{min-height:40px;padding:0 10px;border-radius:var(--radius-full);color:var(--text-2);font-weight:500}
.lang-dd>summary:hover{background:rgba(255,255,255,.07);color:var(--text)}
.lang-dd .dd-menu{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:8px}
.lang-dd .dd-menu a{border-radius:var(--radius-sm)}
.lang-dd .dd-menu a:hover,.lang-dd .dd-menu a[aria-current]{background:var(--surface-3)}
.theme-toggle{border-radius:var(--radius-full)}
.menu-toggle{width:44px;height:44px;border-radius:var(--radius-full);background:rgba(255,255,255,.06)}
@media (max-width:960px){
 .menu{position:fixed;top:var(--vf-header-h,var(--header-h));left:0;right:0;bottom:0;overflow-y:auto;gap:24px;background:var(--bg);border-top:1px solid var(--line);border-bottom:0;padding:24px max(20px,env(safe-area-inset-right,0px)) max(32px,env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px))}
 .menu ul{gap:0}
 .menu ul li+li{border-top:1px solid var(--line)}
 .menu ul a{display:flex;min-height:60px;padding:0 4px;border-radius:0;font-size:22px;font-weight:600;color:var(--text);letter-spacing:-.01em}
 .menu ul a:hover,.menu ul a.is-current{background:none;color:var(--accent-hi)}
 .menu .vf-btn.menu__cta{align-self:stretch;min-height:52px;font-size:16px}
 html.menu-open .site-header{background:var(--bg);border-bottom-color:var(--line)}
 html.menu-open{overflow:hidden}
}

/* ---------------------------------------------------------------- Accueil : grand écran d'ouverture */
.hero2{min-height:min(100svh,940px);display:flex;align-items:center;padding-top:calc(var(--header-h) + 56px);padding-bottom:96px;background:radial-gradient(1200px 600px at 78% 30%,rgba(47,124,246,.22),transparent 60%),radial-gradient(800px 500px at 10% 100%,rgba(90,167,255,.08),transparent 60%),var(--bg)}
html[data-theme="light"] .hero2{background:radial-gradient(1200px 600px at 78% 30%,rgba(29,99,219,.12),transparent 60%),var(--bg)}
.hero2::after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(180deg,transparent,var(--bg));pointer-events:none;z-index:0}
.hero2__inner{width:100%}
.hero2__text{gap:20px;max-width:640px}
.hero2__text .vf-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-full);background:rgba(255,255,255,.04);color:var(--text);letter-spacing:.12em}
.hero2__text .vf-eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--live);box-shadow:0 0 0 4px rgba(255,59,71,.2);animation:vf-pulse 2s ease-in-out infinite}
@keyframes vf-pulse{50%{box-shadow:0 0 0 7px rgba(255,59,71,0)}}
:root .hero2__title{font-size:clamp(44px,6.2vw,84px);line-height:.98;font-weight:800;letter-spacing:-.04em;white-space:normal;text-wrap:balance;padding-block:0;background:linear-gradient(180deg,var(--text) 60%,rgba(243,245,249,.82));-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="light"] .hero2__title{background:none;color:var(--text)}
:root .hero2__hook{font-size:clamp(20px,2.2vw,26px);font-weight:500;color:var(--text);letter-spacing:-.01em}
.hero2__lead{font-size:18px;line-height:1.6;max-width:52ch}
.hero2__actions{gap:12px;margin-top:12px}
.hero2__actions .vf-btn{min-height:54px;padding:0 30px;font-size:16px}
.hero2__note{color:var(--text-3);font-size:14px}
@media (min-width:961px){:root .hero2__title{font-size:clamp(48px,5.4vw,84px)}.hero2__text{max-width:min(640px,48vw)}}
.hwall{top:0;bottom:0;width:52%;border-radius:0;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%,#000 100%),linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(90deg,transparent 0,#000 30%);opacity:.9}
.hwall__inner{gap:16px;transform:rotate(-10deg) scale(1.05)}
.hwall__col{gap:16px;animation:vf-drift 40s linear infinite alternate}
.hwall__col:nth-child(even){animation-direction:alternate-reverse}
@keyframes vf-drift{to{transform:translateY(-80px)}}
.hposter{border-radius:var(--radius-md);box-shadow:var(--shadow-1)}
@media (max-width:960px){
 .hero2{min-height:0;display:flex;flex-direction:column;align-items:stretch;padding-top:calc(var(--header-h) + 40px);padding-bottom:0}
 .hero2__title{line-height:1.02}
 .hwall{width:auto;height:340px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}
 .hero2__actions .vf-btn{flex:1 1 180px}
}
@media (prefers-reduced-motion:reduce){.hwall__col,.hero2__text .vf-eyebrow::before{animation:none}}

/* Bandeau de chiffres réels */
.figs{position:relative;z-index:1;margin-top:-40px}
.figs__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:rgba(17,21,30,.72);border:1px solid var(--line-strong);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-2);overflow:hidden}
html[data-theme="light"] .figs__list{background:#fff}
.figs__item{display:grid;gap:6px;padding:28px 24px;text-align:center}
.figs__item+.figs__item{border-left:1px solid var(--line)}
.figs__num{font-size:clamp(28px,3.4vw,44px);font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.figs__label{color:var(--text-2)}
@media (max-width:760px){.figs{margin-top:24px}.figs__list{grid-template-columns:repeat(2,minmax(0,1fr))}.figs__item:nth-child(3){border-left:0}.figs__item:nth-child(n+3){border-top:1px solid var(--line)}.figs__item{padding:22px 12px}}

/* Pourquoi ViewerFirst : cartes */
.why__grid{gap:16px}
:root .why__item{padding:28px;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--surface-2),var(--surface-1));gap:14px;transition:border-color .2s ease,transform .2s ease}
:root .why__item:hover{border-color:var(--line-strong);transform:translateY(-2px)}
:root .why__ic{display:block;width:48px;height:48px;padding:12px;border-radius:var(--radius-md);background:var(--accent-soft);stroke:var(--accent-hi);stroke-width:1.7}
:root .why__item p{color:var(--text-2);line-height:1.6}
@media (max-width:560px){.why__grid{grid-template-columns:minmax(0,1fr);gap:12px}:root .why__item{grid-template-columns:48px minmax(0,1fr);column-gap:16px;padding:20px}:root .why__ic{grid-row:span 2}}

/* Sport en direct : grandes vignettes */
.sports,.vod,.devices,.how,.why,.faq{padding-bottom:0}
.vf-tiles{gap:16px}
.vf-tile--media{position:relative;border:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-2);aspect-ratio:3/4;isolation:isolate}
.vf-tile--media img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;transition:transform .5s ease}
.vf-tile--media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.85));z-index:0}
.vf-tile--media:hover img{transform:scale(1.06)}
.vf-tile--media .vf-tile__name{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:16px;font-size:17px;font-weight:700;color:#fff}
.mq{margin-top:40px;border:1px solid var(--line);border-radius:var(--radius-full);padding-block:16px;background:var(--surface-1)}
.mq__set li{font-weight:600;color:var(--text-2);font-size:13px}
.how__cta{margin-top:32px}

/* Films et séries */
.vod{border-top:0}
.vrail{margin-block:0;gap:20px}
.vf-carousel-head{justify-content:space-between;text-align:left}
.vf-carousel-head__titles{order:-1;margin-right:auto}
.vf-carousel-head__titles .vf-eyebrow{color:var(--accent-hi)}
.vf-carousel-head .vf-heading-lg{font-size:24px;font-weight:700}
.vf-arrow{width:44px;height:44px;border:1px solid var(--line-strong);background:var(--surface-1);color:var(--text)}
.vf-arrow:hover{background:var(--surface-3)}
.prail{gap:14px;grid-auto-columns:calc((100% - 5 * 14px) / 6)}
.pslot__img{border-radius:var(--radius-md);transition:transform .3s ease,box-shadow .3s ease}
.pslot:hover .pslot__img{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-2)}

/* Tarifs : cartes sombres, la meilleure offre mise en avant */
.pricing{background:none;padding-bottom:0;position:relative}
.pricing__body{gap:28px}
.vf-toggle{border:1px solid var(--line-strong);background:var(--surface-1);padding:5px}
.vf-toggle__opt{min-height:42px;padding:0 22px;color:var(--text-2);font-weight:600;transition:background-color .2s ease,color .2s ease}
.vf-toggle__opt[aria-pressed="true"]{background:var(--text);color:var(--bg)}
.launch-note{display:inline-block;padding:6px 12px;border-radius:var(--radius-full);background:var(--accent-soft);color:var(--accent-hi);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:11px}
.vf-pricing{gap:16px;align-items:stretch}
.vf-card{background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--card-padding);gap:18px;box-shadow:none;transition:border-color .2s ease,transform .2s ease}
.vf-card:hover{border-color:var(--line-strong)}
.vf-card[data-months="12"]{border-color:transparent;background:linear-gradient(var(--surface-2),var(--surface-2)) padding-box,var(--accent-grad) border-box;border:1.5px solid transparent;box-shadow:0 20px 60px rgba(47,124,246,.18)}
.vf-card__flag{padding:5px 10px;border-radius:var(--radius-full);background:var(--accent-grad);color:#fff;font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.vf-card__per{color:var(--text-2);font-size:15px;font-weight:500}
.vf-card__note,.vf-card .vf-card__screens{color:var(--text-2)}
.vf-card .vf-card__screens{border-top-color:var(--line)}
.vf-card__save{color:var(--ok);font-weight:600}
.vf-savings{color:var(--accent-hi)}
.vf-card .vf-features{border-top:1px solid var(--line);padding-top:18px;gap:10px}
.vf-feature{color:var(--text-2)}
.vf-feature svg{stroke:var(--accent-hi);width:16px;height:16px}
.vf-card__foot{justify-content:stretch}
.vf-card__foot .vf-btn{width:100%}
.vf-card:not([data-months="12"]) .vf-card__foot .vf-btn--primary{background:rgba(255,255,255,.08);box-shadow:none;border:1px solid var(--line-strong);color:var(--text)}
.vf-card:not([data-months="12"]) .vf-card__foot .vf-btn--primary:hover{background:rgba(255,255,255,.16)}
html[data-theme="light"] .vf-card:not([data-months="12"]) .vf-card__foot .vf-btn--primary{background:var(--surface-3);color:var(--text)}
html[data-theme="light"] .vf-card{box-shadow:var(--shadow-1)}
.pay__badge{border-radius:var(--radius-sm);border:1px solid var(--line)}
.pricing__fine{margin-top:-12px}
@media (max-width:560px){.vf-pricing .vf-card{display:flex}.vf-card__foot .vf-btn{width:100%}}

/* Mode d'emploi : 3 étapes */
.steps{gap:16px;counter-reset:none}
.step{padding:32px;border:1px solid var(--line);border-top:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-1);gap:14px}
.step__num{font-size:15px;font-weight:800;line-height:1;color:#fff;width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-full);background:var(--accent-grad);box-shadow:var(--glow)}
.step .vf-body-lg{color:var(--text-2);font-size:16px}
@media (max-width:560px){.step{grid-template-columns:44px minmax(0,1fr);padding:20px}.step__num{font-size:14px}}

/* Appareils */
.devices__grid--logos,.devices__row{border:0;gap:12px}
.devices__row li{border:0}
.devices__row .device{justify-content:center;min-height:96px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-1);transition:border-color .2s ease,background-color .2s ease}
.devices__row .device:hover{border-color:var(--line-strong);background:var(--surface-2)}
html[data-theme="light"] .devices__row .device img{filter:invert(1)}

/* Questions : titre à gauche, réponses à droite */
.faq--split .wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(32px,6vw,96px);align-items:start}
.faq--split .vf-section-heading{position:sticky;top:calc(var(--header-h) + 24px);padding-bottom:0}
.faq--split .faq__list,.faq--split .faq__more{grid-column:2}
.faq--split .faq__list{margin:var(--section-gap) 0 0;max-width:none}
.faq--split .faq__more{text-align:left}
@media (max-width:900px){.faq--split .wrap{display:block}.faq--split .vf-section-heading{position:static}.faq--split .faq__list{margin-top:0}}
.faq__list{border-top:0;display:grid;gap:10px}
.faq__item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-1);padding-inline:20px;transition:border-color .2s ease,background-color .2s ease}
.faq__item[open]{background:var(--surface-2);border-color:var(--line-strong)}
.faq__item summary{font-size:16px;font-weight:600;padding-block:18px}
.faq__item p{line-height:1.65;padding-bottom:20px}

/* Appel final */
.final{border-top:0;padding-block:var(--section-gap) 0}
.final__inner{position:relative;overflow:hidden;padding:clamp(48px,7vw,96px) 24px;border-radius:var(--radius-xl);background:radial-gradient(600px 300px at 50% 0%,rgba(90,167,255,.35),transparent 70%),linear-gradient(135deg,#0d2a5c 0%,#0a1630 60%,#081022 100%);border:1px solid rgba(90,167,255,.25);gap:24px}
html[data-theme="light"] .final__inner{background:radial-gradient(600px 300px at 50% 0%,rgba(90,167,255,.4),transparent 70%),linear-gradient(135deg,#1d63db,#0f3f9a);color:#fff}
.final__title{font-size:clamp(30px,4.4vw,56px);font-weight:800;letter-spacing:-.03em;line-height:1.05;color:#fff;max-width:18ch}
.final .vf-btn--ghost{color:#fff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08)}
.final .vf-btn--ghost:hover{background:#fff;color:#0a1630}

/* Programme partenaires */
.aff{background:none;border-top:0;padding-block:24px var(--section-gap)}
.aff-band{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-1)}

/* Avis */
.reviews-strip,.rv-strip{border-radius:var(--radius-lg)}

/* ---------------------------------------------------------------- Pages intérieures */
.vf-page{padding-top:calc(var(--header-h) + clamp(48px,7vw,96px))}
.vf-page-head h1{font-size:clamp(36px,5vw,64px);font-weight:800;letter-spacing:-.035em;line-height:1.02}
.vf-page-head .vf-lead{font-size:18px;line-height:1.6}
.vf-panel{border-radius:var(--radius-lg);border-color:var(--line);background:var(--surface-1)}
.vf-band--smoke{background:var(--surface-1)}

/* ---------------------------------------------------------------- Pied de page */
.foot{margin-top:var(--section-gap);padding-block:72px 32px;border-top:1px solid var(--line);background:linear-gradient(180deg,var(--surface-1),var(--bg))}
.foot--slim{margin-top:0;padding-block:28px}
.foot__top{grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(0,1fr));gap:40px 32px}
.foot__brand{gap:20px;max-width:34ch}
.foot__brand .vf-body{color:var(--text-2)}
.foot__social{display:flex;gap:10px}
.foot__social a{width:42px;height:42px;display:grid;place-items:center;border-radius:var(--radius-full);border:1px solid var(--line-strong);color:var(--text);background:rgba(255,255,255,.04);transition:background-color .2s ease,border-color .2s ease,color .2s ease}
.foot__social a:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.foot__social svg{width:18px;height:18px}
.foot__col{gap:14px}
.foot__col .vf-eyebrow{color:var(--text);font-size:12px;letter-spacing:.12em}
.foot__col ul{display:grid;gap:10px}
.foot__col .vf-link{color:var(--text-2);font-size:14px}
.foot__col .vf-link:hover{color:var(--text)}
.foot__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line)}
.foot__bottom .vf-small{color:var(--text-3);max-width:70ch}
.foot .lang-foot{border-top:0;padding-top:0;margin-top:20px;gap:8px}
.foot .lang-foot a{padding:6px 12px;border:1px solid var(--line);border-radius:var(--radius-full);color:var(--text-2)}
.foot .lang-foot a[aria-current]{border-color:var(--line-strong);color:var(--text);background:rgba(255,255,255,.06)}
@media (max-width:1060px){.foot__top{grid-template-columns:repeat(4,minmax(0,1fr))}.foot__brand{grid-column:1/-1;max-width:none}}
@media (max-width:640px){.foot__top{grid-template-columns:repeat(2,minmax(0,1fr))}.foot{padding-top:56px}}

/* Bouton « Contact us » flottant */
.fab{border-radius:var(--radius-full);background:var(--accent-grad);color:#fff;box-shadow:var(--glow)}
.chooser{border-radius:var(--radius-lg);background:var(--surface-2);border:1px solid var(--line-strong);box-shadow:var(--shadow-2)}

@media (prefers-reduced-motion:reduce){.vf-btn,.vf-tile--media img,.pslot__img,.why__item,.site-header{transition:none}.vf-btn--primary:hover,.why__item:hover{transform:none}}

/* Titres de section alignés à gauche : surtitre sur sa ligne, titre à gauche, texte à droite (grand écran) */
:root .vf-section-heading.sh-left{max-width:none}
:root .vf-section-heading.sh-left>.vf-eyebrow{grid-column:1/-1;justify-self:start}
:root .vf-section-heading.sh-left .vf-heading{font-size:clamp(28px,3.4vw,44px)}
@media (min-width:961px){:root .vf-section-heading.sh-left>p:not(.vf-eyebrow){padding-bottom:6px;color:var(--text-2)}}
:root .steps .step__num{color:#fff;font-weight:800}
:root .vf-section-heading .vf-heading{font-size:clamp(30px,3.6vw,48px)}

/* Commande sur fond blanc : nouveaux jetons en version claire (les anciens sont déjà inversés dans vf-checkout.css) */
body.sn-checkout{--bg:#ffffff;--surface-1:#f6f7f9;--surface-2:#ffffff;--surface-3:#eef1f6;--line:rgba(10,20,40,.09);--line-strong:rgba(10,20,40,.18);--text:#0b0c10;--text-2:#3f434b;--text-3:#5f636b;--accent:#1d63db;--accent-hi:#1d63db;--accent-soft:rgba(29,99,219,.1)}
body.sn-checkout .site-header::before{display:none}
body.sn-checkout .site-header,body.sn-checkout .site-header.is-scrolled{background:rgba(255,255,255,.9);border-bottom-color:var(--line)}
body.sn-checkout .foot{background:var(--surface-1)}

/* Accueil avec le téléviseur des extraits en direct (vitrine) : pas de fondu sur le bas de l'écran */
.hero2--screens::after{display:none}
.hs-tv{filter:drop-shadow(0 30px 60px rgba(0,0,0,.55))}
