:root{--night:#08111F;--deep:#132742;--gold:#E6C77A;--white:#fff;--muted:#9CA8B5;--radius:28px;--ease:cubic-bezier(.2,.75,.25,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:#fff;font-family:Manrope,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1180px,calc(100% - 44px));margin:auto}.skip-link{position:fixed;left:16px;top:12px;z-index:300;background:#fff;color:var(--night);padding:10px 14px;border-radius:999px;transform:translateY(-180%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.progress{position:fixed;top:0;left:0;height:3px;background:var(--gold);z-index:220;width:0}.nav{position:fixed;left:0;right:0;top:0;z-index:200;height:88px;padding:0 max(22px,4vw);display:flex;align-items:center;gap:28px;transition:.3s var(--ease)}.nav.scrolled{height:70px;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);color:var(--night);border-bottom:1px solid rgba(8,17,31,.08)}.brand{font-size:15px;letter-spacing:.16em;font-weight:800;white-space:nowrap}.brand span{color:var(--gold)}.navlinks{margin-left:auto;display:flex;gap:28px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.navcta{font-size:11px;text-transform:uppercase;letter-spacing:.1em;border:1px solid currentColor;border-radius:999px;padding:12px 18px}.menu-toggle{width:48px;height:48px;border-radius:50%;border:0;background:#fff;color:var(--night);position:relative;cursor:pointer}.menu-toggle span,.menu-toggle:before,.menu-toggle:after{content:"";position:absolute;width:18px;height:2px;background:currentColor;left:15px;top:23px;transition:.25s}.menu-toggle:before{transform:translateY(-6px)}.menu-toggle:after{transform:translateY(6px)}.menu-open .menu-toggle span{opacity:0}.menu-open .menu-toggle:before{transform:rotate(45deg)}.menu-open .menu-toggle:after{transform:rotate(-45deg)}.menu-panel{position:fixed;inset:0;background:linear-gradient(135deg,var(--night),var(--deep));z-index:190;padding:120px 8vw 60px;display:grid;grid-template-columns:1fr 1fr;opacity:0;visibility:hidden;transform:translateY(-15px);transition:.4s var(--ease)}.menu-open{overflow:hidden}.menu-open .menu-panel{opacity:1;visibility:visible;transform:none}.menu-links{display:flex;flex-direction:column}.menu-links a{font-size:clamp(36px,5vw,72px);font-weight:800;text-transform:uppercase;line-height:1.05;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}.menu-links a:hover{color:var(--gold)}.menu-side{align-self:end;padding-left:8vw}.eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;font-weight:800;color:var(--gold);margin:0 0 20px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}h1{font-size:clamp(56px,8.2vw,132px);line-height:.86;text-transform:uppercase;margin-bottom:28px}h2{font-size:clamp(44px,6.4vw,94px);line-height:.92;text-transform:uppercase;margin-bottom:32px}h3{font-size:clamp(24px,2.4vw,38px);line-height:1.05}h1 em,h2 em{color:var(--gold);font-style:normal}.lead{font-size:clamp(17px,1.5vw,23px);line-height:1.58;color:#D7DFE7;max-width:760px}.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:var(--night)}.hero-video-slot{position:absolute;inset:0;background:linear-gradient(135deg,var(--night),var(--deep));overflow:hidden}.hero-video-slot:before{content:"";position:absolute;inset:-10%;background:radial-gradient(circle at 75% 35%,rgba(230,199,122,.16),transparent 25%),radial-gradient(circle at 42% 62%,rgba(255,255,255,.08),transparent 20%);animation:breath 9s ease-in-out infinite alternate}.hero-video-slot:after{content:"";position:absolute;right:28px;bottom:24px;color:rgba(255,255,255,.32);font-size:9px;letter-spacing:.18em}@keyframes breath{to{transform:scale(1.08) translate(-1.5%,1%)}}.hero-bg{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(8,17,31,.88),rgba(8,17,31,.46) 55%,rgba(8,17,31,.16)),linear-gradient(0deg,rgba(8,17,31,.7),transparent 48%)}.hero-copy{position:relative;z-index:3;padding:160px 0 90px}.path-marker{display:inline-flex;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:10px 15px;font-size:10px;letter-spacing:.16em;font-weight:800}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 24px;border-radius:999px;border:1px solid rgba(255,255,255,.24);font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;transition:.25s}.btn.primary{background:var(--gold);color:var(--night);border-color:var(--gold)}.btn:hover{transform:translateY(-3px)}.marquee{height:52px;background:var(--gold);color:var(--night);overflow:hidden;display:flex;align-items:center;font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:800}.marquee span{white-space:nowrap;animation:marquee 24s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.trustbar{background:#fff;color:var(--night)}.trustbar-inner{width:min(1180px,calc(100% - 44px));margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(8,17,31,.1)}.trustitem{background:#fff;padding:22px 26px}.trustitem b{display:block;font-size:18px}.trustitem span{display:block;color:#66727F;font-size:12px;line-height:1.45;margin-top:5px}.section{position:relative;padding:clamp(90px,12vw,165px) 0;overflow:hidden}.section.light,.section.paper,.section.white{background:#fff;color:var(--night)}.section.light .lead,.section.paper .lead,.section.white .lead{color:#465260}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{min-height:310px;background:#fff;color:var(--night);border-radius:var(--radius);padding:32px;box-shadow:0 18px 50px rgba(8,17,31,.1);display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;transition:.35s}.section:not(.light):not(.paper):not(.white) .card{background:#0E1C2D;color:#fff;border:1px solid rgba(255,255,255,.08);box-shadow:none}.card:hover{transform:translateY(-7px)}.card .num{position:absolute;left:30px;top:28px;color:var(--gold);font-size:12px;letter-spacing:.17em;font-weight:800}.card p{line-height:1.6;color:#66717C}.section:not(.light):not(.paper):not(.white) .card p{color:#AAB4BE}.photo-slot{min-height:610px;border-radius:var(--radius);background:linear-gradient(180deg,transparent 45%,rgba(8,17,31,.85)),radial-gradient(circle at 60% 30%,rgba(230,199,122,.18),transparent 26%),linear-gradient(140deg,var(--deep),var(--night));position:relative}.photo-slot:before{content:"PHOTO LEILA · À INTÉGRER";position:absolute;left:24px;bottom:24px;font-size:10px;letter-spacing:.2em;color:rgba(255,255,255,.55)}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.14);margin-top:36px}.stat{padding:22px;background:#0E1C2D;color:#AAB4BE;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.stat b{display:block;font-size:38px;color:var(--gold)}.sticky-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start}.sticky{position:sticky;top:115px}.steps{display:flex;flex-direction:column;gap:18px}.step{background:#fff;color:var(--night);border-radius:var(--radius);padding:34px;min-height:210px;box-shadow:0 18px 50px rgba(8,17,31,.1)}.section:not(.light):not(.paper):not(.white) .step{background:#0E1C2D;color:#fff;border:1px solid rgba(255,255,255,.08);box-shadow:none}.step .num{font-size:60px;color:var(--gold);font-weight:800;display:block;margin-bottom:24px}.step strong{font-size:28px}.step p{line-height:1.6;color:#6B7580}.section:not(.light):not(.paper):not(.white) .step p{color:#AAB4BE}.compare{border-top:1px solid rgba(8,17,31,.16)}.compare-row{display:grid;grid-template-columns:1fr 80px 1fr;align-items:center;gap:20px;padding:28px 0;border-bottom:1px solid rgba(8,17,31,.16);font-size:clamp(18px,2vw,27px);font-weight:700}.arrow{text-align:center;color:var(--gold);font-size:30px}.after{color:#143A57}.podcast{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center}.podcast img{width:100%;border-radius:28px;box-shadow:0 18px 50px rgba(8,17,31,.12)}.quote{font-size:clamp(38px,5vw,72px);line-height:1.05;font-weight:800;letter-spacing:-.045em;max-width:1050px}.faq{max-width:920px}.faq button{width:100%;background:transparent;color:inherit;border:0;border-top:1px solid rgba(8,17,31,.18);text-align:left;padding:24px 42px 24px 0;font-size:20px;font-weight:800;position:relative;cursor:pointer}.faq button:after{content:"+";position:absolute;right:4px;font-size:28px;font-weight:400}.faq button.open:after{content:"–"}.answer{max-height:0;overflow:hidden;opacity:0;color:#5C6874;line-height:1.65;transition:.35s}.answer.open{max-height:260px;opacity:1;padding-bottom:26px}.offer-panel{background:linear-gradient(135deg,var(--night),var(--deep));border-radius:34px;padding:clamp(34px,6vw,70px);color:#fff;position:relative;overflow:hidden}.offer-panel:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-130px;top:-160px;background:radial-gradient(circle,rgba(230,199,122,.18),transparent 67%)}.offer-panel>*{position:relative;z-index:1}.kicker{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:800}.sticky-cta{position:fixed;right:18px;bottom:18px;z-index:120;background:var(--gold);color:var(--night);border-radius:999px;padding:16px 22px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;box-shadow:0 10px 30px rgba(8,17,31,.25)}.footer{background:#050B12;padding:50px 0;color:#A7B0BA;font-size:12px}.footergrid{display:flex;align-items:center;justify-content:space-between;gap:20px}.legal-links{display:flex;gap:16px;flex-wrap:wrap}.reveal{opacity:0;transform:translateY(30px);transition:.75s var(--ease)}.reveal.visible{opacity:1;transform:none}.section-number{position:absolute;right:2vw;top:35px;font-size:clamp(90px,15vw,220px);line-height:.8;font-weight:800;color:rgba(255,255,255,.035);letter-spacing:-.08em}.section.light .section-number,.section.paper .section-number,.section.white .section-number{color:rgba(8,17,31,.045)}
@media(max-width:900px){.navlinks,.navcta{display:none}.menu-panel{grid-template-columns:1fr}.menu-side{display:none}.grid2,.grid3,.podcast,.sticky-wrap{grid-template-columns:1fr}.sticky{position:relative;top:auto}.trustbar-inner{grid-template-columns:1fr}.photo-slot{min-height:500px}.compare-row{grid-template-columns:1fr;gap:8px}.arrow{text-align:left;transform:rotate(90deg);width:28px}}@media(max-width:600px){.container{width:min(100% - 28px,1180px)}.nav{height:74px}.hero{min-height:92svh}.hero-copy{padding-top:130px;padding-bottom:70px}h1{font-size:clamp(47px,15vw,74px)}h2{font-size:clamp(38px,11vw,60px)}.section{padding:82px 0}.card{min-height:270px;padding:26px;border-radius:22px}.offer-panel{border-radius:24px}.sticky-cta{left:14px;right:14px;text-align:center;bottom:max(14px,env(safe-area-inset-bottom))}.footergrid{flex-direction:column;align-items:flex-start}.hero-video-slot:after{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-video-slot:before,.marquee span{animation:none}.reveal{opacity:1;transform:none;transition:none}}


/* === V6 MOTION SYSTEM === */
:root{--motion-fast:.34s;--motion-mid:.72s;--motion-slow:1.05s}
body{--mouse-x:50%;--mouse-y:50%}
.hero-copy{transform-origin:left bottom}
.hero-copy.visible h1{animation:heroTitleIn 1.05s var(--ease) both}
.hero-copy.visible .eyebrow,.hero-copy.visible .path-marker{animation:heroEyebrowIn .7s var(--ease) both}
.hero-copy.visible .lead{animation:heroLeadIn .85s .12s var(--ease) both}
.hero-copy.visible .actions{animation:heroLeadIn .85s .24s var(--ease) both}
@keyframes heroTitleIn{0%{opacity:0;transform:translateY(46px) scale(.985);filter:blur(8px)}100%{opacity:1;transform:none;filter:none}}
@keyframes heroEyebrowIn{0%{opacity:0;transform:translateY(14px);letter-spacing:.38em}100%{opacity:1;transform:none}}
@keyframes heroLeadIn{0%{opacity:0;transform:translateY(22px)}100%{opacity:1;transform:none}}

.section{--section-progress:0}
.section::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),rgba(230,199,122,.055),transparent 22%);opacity:0;transition:opacity .4s}
@media (hover:hover) and (pointer:fine){.section:hover::before{opacity:1}}

.section-number{opacity:0;transform:translate3d(52px,26px,0) scale(.92);filter:blur(3px);transition:opacity 1s var(--ease),transform 1.15s var(--ease),filter 1s var(--ease)}
.section.motion-active .section-number{opacity:1;transform:none;filter:none}

.motion-title{overflow:hidden}
.motion-title .motion-line{display:block;overflow:hidden}
.motion-title .motion-line-inner{display:block;transform:translateY(115%);opacity:0;transition:transform .9s var(--ease),opacity .65s var(--ease)}
.motion-title.motion-visible .motion-line-inner{transform:none;opacity:1}
.motion-title .motion-line:nth-child(2) .motion-line-inner{transition-delay:.08s}
.motion-title .motion-line:nth-child(3) .motion-line-inner{transition-delay:.16s}
.motion-title .motion-line:nth-child(4) .motion-line-inner{transition-delay:.24s}

.card,.step,.offer-panel,.photo-slot,.podcast img{will-change:transform}
.card.reveal,.step.reveal,.offer-panel.reveal,.photo-slot.reveal,.podcast img{transform:translateY(46px) scale(.975);opacity:0;transition:opacity .8s var(--ease),transform .9s var(--ease),box-shadow .35s var(--ease)}
.card.reveal.visible,.step.reveal.visible,.offer-panel.reveal.visible,.photo-slot.reveal.visible,.podcast img.motion-visible{transform:none;opacity:1}
.grid3 .card:nth-child(2).reveal{transition-delay:.08s}.grid3 .card:nth-child(3).reveal{transition-delay:.16s}
.grid2 .card:nth-child(2).reveal{transition-delay:.1s}
.steps .step:nth-child(2).reveal{transition-delay:.05s}.steps .step:nth-child(3).reveal{transition-delay:.1s}.steps .step:nth-child(4).reveal{transition-delay:.15s}.steps .step:nth-child(5).reveal{transition-delay:.2s}

.stat b,.metric b,.step .num,.section-number,[data-count]{font-variant-numeric:tabular-nums}
.stat{position:relative;overflow:hidden}.stat::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--gold);transition:width 1s var(--ease)}.stat.counted::after{width:100%}
.stat b{display:inline-block;transform:translateY(18px);opacity:0;transition:.75s var(--ease)}.stat.counted b{transform:none;opacity:1}
.step .num{transform:translateY(18px);opacity:0;transition:.75s var(--ease)}.step.visible .num{transform:none;opacity:1}
.card .num{transform:translateY(-8px);opacity:0;transition:.65s var(--ease)}.card.visible .num{transform:none;opacity:1}

.compare-row{position:relative;overflow:hidden}
.compare-row::before{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:linear-gradient(90deg,var(--gold),rgba(230,199,122,0));transition:width .9s var(--ease)}
.compare-row.visible::before{width:100%}
.compare-row .arrow{transform:translateX(-12px);opacity:0;transition:.7s .15s var(--ease)}
.compare-row.visible .arrow{transform:none;opacity:1}
.compare-row .after{transform:translateX(14px);opacity:0;transition:.7s .22s var(--ease)}
.compare-row.visible .after{transform:none;opacity:1}

.btn{position:relative;overflow:hidden;isolation:isolate}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.28) 46%,transparent 72%);transform:translateX(-130%);transition:transform .75s var(--ease)}
.btn:hover::after{transform:translateX(130%)}
.sticky-cta{transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s}
.sticky-cta.pulse{animation:stickyPulse 1.5s var(--ease)}
@keyframes stickyPulse{0%,100%{transform:translateY(0)}40%{transform:translateY(-6px);box-shadow:0 18px 38px rgba(8,17,31,.34)}}

.marquee{position:relative}.marquee::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.12),transparent 20%,transparent 80%,rgba(255,255,255,.12));pointer-events:none}

.menu-links a{transform:translateY(20px);opacity:0;transition:transform .45s var(--ease),opacity .45s var(--ease),color .25s,padding-left .25s}
.menu-open .menu-links a{transform:none;opacity:1}.menu-open .menu-links a:nth-child(2){transition-delay:.05s}.menu-open .menu-links a:nth-child(3){transition-delay:.1s}.menu-open .menu-links a:nth-child(4){transition-delay:.15s}.menu-open .menu-links a:nth-child(5){transition-delay:.2s}

.photo-slot::after{content:"";position:absolute;inset:-20%;background:linear-gradient(120deg,transparent 42%,rgba(255,255,255,.08) 50%,transparent 58%);transform:translateX(-55%) rotate(8deg);transition:transform 1.2s var(--ease)}
.photo-slot.visible::after{transform:translateX(55%) rotate(8deg)}

.offer-panel{background-size:180% 180%;animation:offerGradient 10s ease-in-out infinite}
@keyframes offerGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

.hero-bg{will-change:transform;transition:transform .15s linear}
.hero-video-slot::after{animation:heroGlow 8s ease-in-out infinite alternate}
@keyframes heroGlow{0%{transform:translate3d(-3%,-2%,0) scale(1)}100%{transform:translate3d(3%,2%,0) scale(1.08)}}

.motion-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transform-origin:center;transition:transform 1.1s var(--ease);opacity:.45}
.motion-divider.visible{transform:scaleX(1)}

@media (hover:hover) and (pointer:fine){
 .card:hover,.step:hover{transform:translateY(-10px) scale(1.012)}
 .btn.magnetic{transition:transform .18s ease-out,box-shadow .25s}
}
@media(max-width:600px){
 .section-number{right:-3vw;top:28px}
 .card.reveal,.step.reveal,.offer-panel.reveal,.photo-slot.reveal{transform:translateY(28px) scale(.985)}
}
@media(prefers-reduced-motion:reduce){
 .hero-copy.visible h1,.hero-copy.visible .eyebrow,.hero-copy.visible .path-marker,.hero-copy.visible .lead,.hero-copy.visible .actions,
 .offer-panel,.hero-video-slot::after,.sticky-cta.pulse{animation:none!important}
 .motion-title .motion-line-inner,.section-number,.stat b,.step .num,.card .num,.compare-row .arrow,.compare-row .after{transition:none!important;transform:none!important;opacity:1!important;filter:none!important}
 .card.reveal,.step.reveal,.offer-panel.reveal,.photo-slot.reveal{transform:none!important;opacity:1!important;transition:none!important}
}


/* === V7 TYPOGRAPHY / FRENCH DIACRITICS === */
html{
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body{
  font-family:"DM Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-kerning:normal;
  font-feature-settings:"kern" 1,"liga" 1,"calt" 1;
}
h1,h2,h3,.brand,.menu-links a,.section-number,.step .num,.metric b,.stat b{
  font-family:"Sora","DM Sans",system-ui,sans-serif;
  font-kerning:normal;
  font-feature-settings:"kern" 1,"liga" 1;
}
h1,h2{
  letter-spacing:-.052em;
  text-wrap:balance;
}
h3{letter-spacing:-.035em;text-wrap:balance}
p,.lead,.answer{font-optical-sizing:auto}
.eyebrow,.path-marker,.btn,.navlinks,.navcta,.sticky-cta{
  letter-spacing:.13em;
}
.accent-safe{
  font-family:"Sora","DM Sans",sans-serif;
  font-variant-ligatures:common-ligatures;
}
@supports (text-wrap: pretty){p,.lead,.answer{text-wrap:pretty}}


/* === V7 PREMIUM COACH APPLICATION === */
.application-section{
  background:#fff;
  color:var(--night);
}
.application-shell{
  display:grid;
  grid-template-columns:minmax(0,.84fr) minmax(520px,1.16fr);
  gap:clamp(28px,5vw,74px);
  align-items:start;
}
.application-story{
  position:sticky;
  top:105px;
}
.application-photo{
  min-height:clamp(520px,68vw,760px);
  border-radius:32px;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(8,17,31,.02) 24%,rgba(8,17,31,.9) 100%),
    radial-gradient(circle at 68% 22%,rgba(230,199,122,.22),transparent 28%),
    linear-gradient(145deg,#29435f 0%,#132742 38%,#08111f 100%);
  box-shadow:0 28px 75px rgba(8,17,31,.16);
}
.application-photo::before{
  content:"PHOTO LEILA · À INTÉGRER";
  position:absolute;
  left:28px;
  bottom:28px;
  color:rgba(255,255,255,.62);
  font-size:10px;
  font-weight:700;
  letter-spacing:.2em;
}
.application-photo::after{
  content:"";
  position:absolute;
  inset:-25%;
  background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.11) 50%,transparent 58%);
  transform:translateX(-65%) rotate(5deg);
  animation:applicationShimmer 8s ease-in-out infinite;
}
@keyframes applicationShimmer{
  0%,35%{transform:translateX(-65%) rotate(5deg)}
  75%,100%{transform:translateX(65%) rotate(5deg)}
}
.application-copy{
  position:absolute;
  inset:auto 28px 34px 28px;
  z-index:2;
  max-width:510px;
}
.application-copy .eyebrow{color:var(--gold)}
.application-copy h3{
  color:#fff;
  font-size:clamp(28px,3.2vw,48px);
  margin-bottom:14px;
}
.application-copy p{
  color:rgba(255,255,255,.78);
  line-height:1.58;
  margin:0;
}
.application-points{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.application-point{
  display:flex;
  align-items:flex-start;
  gap:12px;
  font-size:14px;
  line-height:1.45;
  color:#4c5865;
}
.application-point::before{
  content:"";
  width:8px;height:8px;
  margin-top:7px;
  border-radius:50%;
  background:var(--gold);
  flex:0 0 auto;
  box-shadow:0 0 0 5px rgba(230,199,122,.13);
}
.application-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:24px;
}
.form-stage{
  position:relative;
  border:1px solid rgba(8,17,31,.09);
  border-radius:32px;
  background:#fff;
  box-shadow:0 26px 80px rgba(8,17,31,.12);
  overflow:hidden;
}
.form-stage-header{
  padding:28px 30px 22px;
  border-bottom:1px solid rgba(8,17,31,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  background:linear-gradient(180deg,#fff,#fbfcfd);
}
.form-stage-title{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
}
.form-stage-icon{
  width:46px;height:46px;
  border-radius:15px;
  display:grid;place-items:center;
  background:var(--night);
  color:var(--gold);
  font-family:"Sora",sans-serif;
  font-weight:800;
  flex:0 0 auto;
}
.form-stage-title strong{
  display:block;
  font-family:"Sora",sans-serif;
  font-size:17px;
  letter-spacing:-.025em;
}
.form-stage-title span{
  display:block;
  margin-top:3px;
  color:#71808e;
  font-size:12px;
}
.form-security{
  display:flex;
  align-items:center;
  gap:7px;
  color:#687583;
  font-size:11px;
  white-space:nowrap;
}
.form-security i{
  width:8px;height:8px;border-radius:50%;background:#46a46d;
  box-shadow:0 0 0 4px rgba(70,164,109,.12);
}
.google-form-frame{
  width:100%;
  min-height:1120px;
  border:0;
  background:#fff;
  display:block;
}
.form-stage-footer{
  padding:18px 28px 24px;
  border-top:1px solid rgba(8,17,31,.08);
  background:#fbfcfd;
  color:#6d7884;
  font-size:12px;
  line-height:1.55;
}
.form-stage-footer a{
  color:var(--night);
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}
.application-calendar{
  margin-top:26px;
  border-radius:26px;
  padding:26px 28px;
  background:linear-gradient(135deg,var(--night),var(--deep));
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  position:relative;
  overflow:hidden;
}
.application-calendar::after{
  content:"";
  position:absolute;
  width:240px;height:240px;border-radius:50%;
  right:-100px;top:-120px;
  background:radial-gradient(circle,rgba(230,199,122,.24),transparent 65%);
}
.application-calendar > *{position:relative;z-index:1}
.application-calendar h3{font-size:clamp(22px,2.2vw,34px);margin:0 0 6px}
.application-calendar p{margin:0;color:#b7c1cb;font-size:14px}
.application-calendar .btn{flex:0 0 auto}
.application-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(8,17,31,.055);
  color:#53606d;
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:16px;
}
.application-badge::before{
  content:"";
  width:7px;height:7px;border-radius:50%;
  background:var(--gold);
}
@media(max-width:1020px){
  .application-shell{grid-template-columns:1fr}
  .application-story{position:relative;top:auto}
  .application-photo{min-height:620px}
  .google-form-frame{min-height:1180px}
}
@media(max-width:620px){
  .application-photo{min-height:560px;border-radius:24px}
  .application-copy{inset:auto 22px 26px}
  .form-stage{border-radius:24px}
  .form-stage-header{padding:22px 20px}
  .form-security{display:none}
  .google-form-frame{min-height:1280px}
  .application-calendar{align-items:flex-start;flex-direction:column;padding:24px;border-radius:22px}
  .application-calendar .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .application-photo::after{animation:none}
}


/* === V8 — TYPOGRAPHY + MENTAL MAP + PREMIUM FOOTER === */
:root{
  --night:#08111F;
  --deep:#132742;
  --gold:#E6C77A;
  --white:#FFFFFF;
}
body{
  font-family:"Archivo",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-weight:400;
  letter-spacing:0;
}
h1,h2,h3,.brand,.menu-links a,.section-number,.step .num,.metric b,.stat b,
.btn,.eyebrow,.path-marker,.footer-col span{
  font-family:"Archivo",system-ui,sans-serif;
}
h1{
  font-size:clamp(58px,8.1vw,128px);
  line-height:.86;
  font-weight:900;
  letter-spacing:-.065em;
}
h2{
  font-size:clamp(43px,5.7vw,86px);
  line-height:.91;
  font-weight:900;
  letter-spacing:-.055em;
}
h3{
  font-size:clamp(24px,2.15vw,36px);
  line-height:1.02;
  font-weight:800;
  letter-spacing:-.035em;
}
.lead{
  font-family:"Archivo",system-ui,sans-serif;
  font-size:clamp(17px,1.42vw,22px);
  line-height:1.58;
  font-weight:400;
  letter-spacing:-.012em;
}
.card p,.step p,.answer,.footer-brand-block p{
  font-family:"Archivo",system-ui,sans-serif;
  font-weight:400;
  letter-spacing:-.008em;
}
.eyebrow,.path-marker{
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
}
.btn,.sticky-cta{
  font-family:"Archivo",system-ui,sans-serif;
  font-weight:800;
  letter-spacing:.08em;
}
.hero-signature{
  position:absolute;
  z-index:4;
  right:max(24px,5vw);
  bottom:clamp(34px,6vh,78px);
  font-family:"Bodoni Moda",serif;
  font-style:italic;
  font-weight:600;
  font-size:clamp(31px,3.6vw,58px);
  letter-spacing:-.04em;
  color:#fff;
  transform:rotate(-4deg);
  text-shadow:0 5px 22px rgba(0,0,0,.25);
  opacity:.94;
  pointer-events:none;
}
.hero-signature::after{
  content:"";
  display:block;
  width:62%;
  height:1px;
  background:linear-gradient(90deg,var(--gold),transparent);
  margin:2px 0 0 8%;
  transform:rotate(-2deg);
}

/* Mental Map: topographic / neural contour language, deliberately not a grid */
.mental-map-section,.menu-panel,.footer-premium{
  isolation:isolate;
}
.mental-map-section::after,.menu-panel::before,.footer-contours{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background-image:
    repeating-radial-gradient(ellipse at 78% 23%, transparent 0 38px, rgba(230,199,122,.075) 39px 40px, transparent 41px 62px),
    repeating-radial-gradient(ellipse at 16% 77%, transparent 0 54px, rgba(255,255,255,.042) 55px 56px, transparent 57px 84px),
    radial-gradient(circle at 77% 22%,rgba(230,199,122,.15) 0 2px,transparent 3px),
    radial-gradient(circle at 18% 74%,rgba(230,199,122,.12) 0 2px,transparent 3px);
  background-size:100% 100%;
  mask-image:linear-gradient(90deg,transparent,black 12%,black 88%,transparent);
  opacity:.85;
}
.mental-map-section::before,.menu-panel::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(118deg,transparent 0 64%,rgba(230,199,122,.05) 64.2% 64.35%,transparent 64.5%),
    linear-gradient(28deg,transparent 0 73%,rgba(255,255,255,.035) 73.2% 73.35%,transparent 73.5%);
}
.mental-map-section .sticky{
  position:sticky;
  top:118px;
}
.mental-map-section .steps{
  counter-reset:mentalstep;
}
.mental-map-section .step{
  border-radius:6px;
  min-height:245px;
  backdrop-filter:blur(7px);
  transition:transform .45s var(--ease),background .45s var(--ease),border-color .45s var(--ease),box-shadow .45s var(--ease);
}
.mental-map-section .step:nth-child(odd){
  background:#fff;
  color:var(--night);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:0 18px 48px rgba(0,0,0,.12);
}
.mental-map-section .step:nth-child(odd) p{color:#5c6874}
.mental-map-section .step:nth-child(even){
  background:rgba(19,39,66,.23);
  color:#fff;
  border:1px solid rgba(255,255,255,.2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.mental-map-section .step:nth-child(even) p{color:#b4c0cb}
.mental-map-section .step .num{
  font-size:clamp(70px,7vw,112px);
  line-height:.74;
  font-weight:900;
  letter-spacing:-.08em;
  color:var(--gold);
  opacity:.96;
}
.mental-map-section .step:nth-child(odd) .num{
  color:var(--night);
}
.mental-map-section .step strong{
  display:block;
  font-family:"Archivo",sans-serif;
  font-weight:900;
  font-size:clamp(24px,2.2vw,36px);
  letter-spacing:-.035em;
  text-transform:uppercase;
}

/* Make program cards less repetitive: square, transparent and numeric */
#programme.grid3,.grid3{align-items:stretch}
#programme .card,.mental-map-section .card{border-radius:6px}
.section .grid3 .card:nth-child(3n+1){border-radius:6px}
.section .grid3 .card:nth-child(3n+2){
  background:transparent;
  box-shadow:none;
  border:1px solid rgba(8,17,31,.15);
}
.section:not(.light):not(.white) .grid3 .card:nth-child(3n+2){
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.025);
}
.section .grid3 .card:nth-child(3n+3){border-radius:28px 6px 28px 6px}
.card .num{
  font-family:"Archivo",sans-serif;
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
}

/* Full-screen menu: Mental Map instead of reference-site grid */
.menu-panel{
  background:
    radial-gradient(circle at 76% 30%,rgba(230,199,122,.13),transparent 24%),
    linear-gradient(145deg,#07101b,#10243a 58%,#08111f);
}
.menu-panel::before{z-index:0;opacity:1}
.menu-panel>div{position:relative;z-index:1}
.menu-links a{
  font-weight:900;
  letter-spacing:-.05em;
}
.menu-index{
  font-family:"Archivo",sans-serif;
  font-weight:700;
  letter-spacing:.18em;
}
.menu-side{
  border-left:1px solid rgba(255,255,255,.1);
}

/* Premium footer */
.footer-premium{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 13% 20%,rgba(230,199,122,.08),transparent 22%),
    linear-gradient(145deg,#050b12 0%,#08111f 48%,#132742 100%);
  color:#fff;
  padding:0;
}
.footer-contours{
  z-index:0;
  opacity:.62;
  mask-image:linear-gradient(180deg,black,black 72%,transparent);
}
.footer-top,.footer-bottom{position:relative;z-index:1}
.footer-top{
  display:grid;
  grid-template-columns:minmax(280px,.95fr) minmax(520px,1.6fr);
  gap:clamp(50px,8vw,120px);
  padding-top:clamp(78px,10vw,130px);
  padding-bottom:68px;
}
.footer-brand-block{
  max-width:480px;
}
.footer-logo-slot{
  width:116px;
  height:116px;
  display:grid;
  place-items:center;
  border:1px dashed rgba(255,255,255,.28);
  border-radius:24px;
  color:rgba(255,255,255,.52);
  font-size:10px;
  font-weight:800;
  letter-spacing:.15em;
  margin-bottom:28px;
}
.footer-signature{
  font-family:"Bodoni Moda",serif;
  font-size:clamp(38px,4vw,58px);
  font-style:italic;
  line-height:1;
  margin-bottom:23px;
  color:#fff;
}
.footer-brand-block p{
  color:#aeb8c3;
  line-height:1.62;
  font-size:14px;
  max-width:430px;
}
.footer-mission{margin-top:14px}
.footer-socials{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:26px;
}
.footer-socials a{
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  padding:10px 14px;
  color:#fff;
  font-size:11px;
  font-weight:700;
  transition:.25s var(--ease);
}
.footer-socials a:hover{
  background:var(--gold);
  border-color:var(--gold);
  color:var(--night);
  transform:translateY(-2px);
}
.footer-columns{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px;
}
.footer-col{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.footer-col span{
  color:var(--gold);
  font-size:10px;
  letter-spacing:.17em;
  font-weight:800;
  margin-bottom:10px;
}
.footer-col a{
  color:#c3ccd5;
  font-size:13px;
  line-height:1.42;
  transition:.2s;
}
.footer-col a:hover{
  color:#fff;
  transform:translateX(4px);
}
.footer-bottom{
  min-height:78px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:22px;
  align-items:center;
  border-top:1px solid rgba(255,255,255,.1);
  color:#83909d;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.footer-bottom span:nth-child(2){color:var(--gold)}
.footer-bottom span:last-child{text-align:right}

@media(max-width:980px){
  .footer-top{grid-template-columns:1fr}
  .footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
  .menu-side{border-left:0}
}
@media(max-width:620px){
  h1{font-size:clamp(49px,14.5vw,76px)}
  h2{font-size:clamp(38px,11vw,58px)}
  .hero-signature{right:20px;bottom:90px;font-size:36px}
  .footer-columns{grid-template-columns:1fr 1fr;gap:36px 22px}
  .footer-bottom{grid-template-columns:1fr;gap:8px;padding:22px 0}
  .footer-bottom span:last-child{text-align:left}
  .mental-map-section .step .num{font-size:78px}
}

.menu-mini-links{display:flex;gap:16px;margin-top:24px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.menu-mini-links a{color:#aeb8c3}.menu-mini-links a:hover{color:var(--gold)}


/* === V9 CONTACT + CLEAN FOOTER === */
.contact-conversion{
  background:#fff;
  color:#08111F;
  position:relative;
  isolation:isolate;
}
.contact-conversion::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(circle at 8% 16%,rgba(230,199,122,.12),transparent 21%),
    radial-gradient(circle at 92% 82%,rgba(19,39,66,.08),transparent 26%);
  pointer-events:none;
}
.contact-orbit{
  position:absolute;
  width:min(760px,70vw);height:min(760px,70vw);
  right:-260px;top:-220px;border-radius:50%;
  border:1px solid rgba(19,39,66,.08);
  box-shadow:
    0 0 0 70px rgba(19,39,66,.025),
    0 0 0 140px rgba(19,39,66,.018),
    0 0 0 210px rgba(230,199,122,.014);
  pointer-events:none;
}
.contact-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:clamp(44px,7vw,96px);
  position:relative;z-index:2;
  align-items:start;
}
.contact-intro{position:sticky;top:110px}
.contact-intro h2{font-size:clamp(54px,6.6vw,104px)}
.contact-proof{display:grid;gap:1px;margin:42px 0;background:rgba(8,17,31,.12);border:1px solid rgba(8,17,31,.1)}
.contact-proof-item{background:#fff;display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:center;padding:21px 24px}
.contact-proof-item strong{font-family:"Archivo",sans-serif;font-size:31px;color:#E6C77A}
.contact-proof-item span{color:#53606c;line-height:1.5}
.contact-direct{border-top:1px solid rgba(8,17,31,.14);padding-top:20px;display:flex;justify-content:space-between;gap:20px;align-items:center}
.contact-direct span{font-size:10px;letter-spacing:.15em;font-weight:800;color:#74808c}
.contact-direct a{font-family:"Archivo",sans-serif;font-weight:800}
.contact-form-card{
  background:#08111F;color:#fff;border-radius:32px;
  overflow:hidden;box-shadow:0 32px 90px rgba(8,17,31,.18);
  position:relative;
}
.contact-form-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:
    radial-gradient(circle at 85% 0%,rgba(230,199,122,.2),transparent 30%),
    repeating-radial-gradient(ellipse at 110% -10%,transparent 0 46px,rgba(255,255,255,.035) 47px 48px);
}
.contact-form-head{display:flex;align-items:center;gap:18px;padding:28px 30px;border-bottom:1px solid rgba(255,255,255,.11);position:relative}
.contact-form-index{width:48px;height:48px;border:1px solid rgba(230,199,122,.5);display:grid;place-items:center;border-radius:14px;color:#E6C77A;font-family:"Archivo",sans-serif;font-weight:800}
.contact-form-head strong{font-family:"Archivo",sans-serif;font-size:20px;display:block}
.contact-form-head small{color:#a9b4bf;display:block;margin-top:4px}
.premium-contact-form{padding:30px;position:relative}
.premium-contact-form label{display:grid;gap:9px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#c4ced7;margin-bottom:18px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.premium-contact-form input,.premium-contact-form select,.premium-contact-form textarea{
  width:100%;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:rgba(255,255,255,.065);
  color:#fff;padding:15px 16px;font:500 16px/1.35 "Archivo",sans-serif;outline:none;
  transition:border-color .25s,background .25s,box-shadow .25s;
}
.premium-contact-form input::placeholder,.premium-contact-form textarea::placeholder{color:#7f8c99}
.premium-contact-form select{color:#dce2e8}
.premium-contact-form option{color:#08111F;background:#fff}
.premium-contact-form input:focus,.premium-contact-form select:focus,.premium-contact-form textarea:focus{border-color:#E6C77A;background:rgba(255,255,255,.095);box-shadow:0 0 0 3px rgba(230,199,122,.1)}
.premium-contact-form textarea{resize:vertical;min-height:150px}
.consent-row{grid-template-columns:auto 1fr!important;align-items:start;gap:11px!important;text-transform:none!important;letter-spacing:0!important;line-height:1.45!important;font-weight:500!important;color:#9eabb7!important}
.consent-row input{width:17px!important;height:17px!important;padding:0!important;margin-top:2px;accent-color:#E6C77A}
.contact-submit{width:100%;min-height:58px;margin-top:6px;border:0;cursor:pointer}
.contact-note{text-align:center;color:#83909d;font-size:11px;line-height:1.5;margin:13px 0 0}

.site-footer{background:#050b12;color:#fff;padding:72px 0 26px;position:relative;overflow:hidden}
.mental-map-footer::before{content:"";position:absolute;inset:0;opacity:.42;pointer-events:none;background:
radial-gradient(circle at 80% 10%,rgba(230,199,122,.12),transparent 22%),
repeating-radial-gradient(ellipse at 95% -5%,transparent 0 56px,rgba(255,255,255,.035) 57px 58px)}
.footer-top{position:relative;display:flex;justify-content:space-between;align-items:center;gap:28px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-brand{display:flex;align-items:center;gap:20px;max-width:590px}
.footer-logo-slot{width:62px;height:62px;border:1px solid rgba(230,199,122,.45);border-radius:18px;display:grid;place-items:center;font:800 20px "Archivo",sans-serif;color:#E6C77A;flex:none}
.footer-signature{font:800 clamp(27px,3vw,44px) "Archivo",sans-serif;letter-spacing:-.05em}
.footer-brand p{color:#9da9b5;line-height:1.55;margin:5px 0 0;font-size:13px}
.footer-contact-cta{display:flex;align-items:center;gap:22px;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:15px 18px 15px 22px;font-size:11px;letter-spacing:.13em;font-weight:800}
.footer-contact-cta span{width:30px;height:30px;border-radius:50%;background:#E6C77A;color:#08111F;display:grid;place-items:center}
.footer-columns{position:relative;display:grid;grid-template-columns:1.1fr 1fr 1.25fr .9fr;gap:36px;padding:48px 0}
.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-col h3{font-size:10px;letter-spacing:.18em;color:#E6C77A;margin:0 0 12px}
.footer-col a,.footer-col span{color:#aeb8c2;font-size:13px;line-height:1.4}
.footer-col a:hover{color:#fff}
.footer-disabled-link{opacity:.45;cursor:default}
.footer-bottom{position:relative;border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;gap:24px;color:#6f7b87;font-size:10px;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr}
  .contact-intro{position:relative;top:auto}
  .footer-columns{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .contact-form-card{border-radius:24px}
  .premium-contact-form{padding:22px}
  .contact-form-head{padding:22px}
  .form-row{grid-template-columns:1fr;gap:0}
  .contact-proof-item{grid-template-columns:54px 1fr;padding:18px}
  .contact-direct{align-items:flex-start;flex-direction:column}
  .footer-top{align-items:flex-start;flex-direction:column}
  .footer-contact-cta{width:100%;justify-content:space-between}
  .footer-columns{grid-template-columns:1fr;gap:28px}
  .footer-bottom{flex-direction:column}
}


/* === V10 COACH FUNNEL — NATIVE MENTALGYM FORM === */
.coach-application-premium{
  background:#fff;
  color:#08111F;
  position:relative;
  isolation:isolate;
}
.coach-form-orbit{
  position:absolute;inset:0;pointer-events:none;overflow:hidden;
  background:
    radial-gradient(circle at 12% 12%,rgba(230,199,122,.13),transparent 20%),
    radial-gradient(circle at 88% 75%,rgba(19,39,66,.08),transparent 26%),
    repeating-radial-gradient(ellipse at 106% 18%,transparent 0 64px,rgba(19,39,66,.035) 65px 66px);
}
.coach-application-layout{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);
  gap:clamp(32px,5vw,76px);
  align-items:start;
}
.coach-application-aside{position:sticky;top:104px}
.coach-application-photo{
  min-height:680px;border-radius:32px;position:relative;overflow:hidden;
  background:
    linear-gradient(180deg,rgba(8,17,31,.04) 22%,rgba(8,17,31,.9) 100%),
    radial-gradient(circle at 62% 25%,rgba(230,199,122,.18),transparent 28%),
    linear-gradient(145deg,#29435f,#132742 46%,#08111F);
  box-shadow:0 30px 80px rgba(8,17,31,.15);
}
.coach-application-photo::before{
  content:"PHOTO LEÏLA · À INTÉGRER";
  position:absolute;top:24px;left:24px;
  color:rgba(255,255,255,.5);font-size:10px;letter-spacing:.18em;font-weight:700;
}
.coach-photo-copy{position:absolute;left:28px;right:28px;bottom:32px;z-index:2}
.coach-photo-copy h3{font-size:clamp(31px,3vw,48px);color:#fff;margin-bottom:14px}
.coach-photo-copy p:not(.eyebrow){color:#c2ccd5;line-height:1.55}
.coach-form-steps{display:grid;gap:1px;margin-top:18px;background:rgba(8,17,31,.12);border:1px solid rgba(8,17,31,.1)}
.coach-form-steps>div{background:#fff;display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:center;padding:18px 20px}
.coach-form-steps span{font:800 24px "Archivo",sans-serif;color:#E6C77A}
.coach-form-steps p{margin:0;color:#56636f;font-size:14px;line-height:1.45}

.coach-form-card{
  background:#08111F;color:#fff;border-radius:32px;overflow:hidden;
  box-shadow:0 32px 90px rgba(8,17,31,.18);position:relative;
}
.coach-form-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 90% 0%,rgba(230,199,122,.18),transparent 23%),
    repeating-radial-gradient(ellipse at 110% -6%,transparent 0 54px,rgba(255,255,255,.028) 55px 56px);
}
.coach-form-header{
  position:relative;display:flex;align-items:center;gap:16px;
  padding:28px 30px;border-bottom:1px solid rgba(255,255,255,.1)
}
.coach-form-header-index{
  width:48px;height:48px;border-radius:14px;border:1px solid rgba(230,199,122,.48);
  color:#E6C77A;display:grid;place-items:center;font:800 17px "Archivo",sans-serif;
}
.coach-form-header strong{font:800 21px "Archivo",sans-serif;display:block}
.coach-form-header span{display:block;color:#97a5b2;font-size:12px;margin-top:4px}

.coach-premium-form{position:relative;padding:30px}
.coach-premium-form fieldset{border:0;padding:0;margin:0 0 38px}
.coach-premium-form legend{
  width:100%;display:flex;align-items:center;gap:13px;
  padding:0 0 16px;margin-bottom:22px;border-bottom:1px solid rgba(255,255,255,.11);
  font:800 16px "Archivo",sans-serif;color:#fff
}
.coach-premium-form legend span{
  width:34px;height:34px;border-radius:10px;background:#E6C77A;color:#08111F;
  display:grid;place-items:center;font-size:12px
}
.coach-premium-form label{
  display:grid;gap:9px;margin-bottom:18px;
  font-size:11px;letter-spacing:.075em;text-transform:uppercase;font-weight:700;color:#c3cdd6
}
.coach-premium-form input,.coach-premium-form select,.coach-premium-form textarea{
  width:100%;border:1px solid rgba(255,255,255,.14);border-radius:15px;
  background:rgba(255,255,255,.065);color:#fff;padding:15px 16px;
  font:500 16px/1.4 "Archivo",sans-serif;outline:none;
  transition:.25s border-color,.25s background,.25s box-shadow
}
.coach-premium-form input::placeholder,.coach-premium-form textarea::placeholder{color:#7f8c99}
.coach-premium-form select{color:#dce3e9}
.coach-premium-form option{background:#fff;color:#08111F}
.coach-premium-form input:focus,.coach-premium-form select:focus,.coach-premium-form textarea:focus{
  border-color:#E6C77A;background:rgba(255,255,255,.095);box-shadow:0 0 0 3px rgba(230,199,122,.1)
}
.coach-premium-form textarea{resize:vertical;min-height:130px}
.coach-choice-block{margin-bottom:20px}
.coach-choice-label{
  display:block;margin-bottom:11px;font-size:11px;letter-spacing:.075em;text-transform:uppercase;font-weight:700;color:#c3cdd6
}
.coach-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.coach-choice{
  margin:0!important;display:block!important;position:relative;cursor:pointer;
}
.coach-choice input{position:absolute;opacity:0;pointer-events:none}
.coach-choice span{
  display:flex;align-items:center;min-height:48px;padding:12px 14px;border-radius:14px;
  border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);
  color:#aeb9c3;text-transform:none;letter-spacing:0;font-size:13px;transition:.25s
}
.coach-choice input:checked+span{
  border-color:#E6C77A;background:rgba(230,199,122,.12);color:#fff;
  box-shadow:inset 0 0 0 1px rgba(230,199,122,.18)
}
.coach-consent{grid-template-columns:auto 1fr!important;gap:11px!important;text-transform:none!important;letter-spacing:0!important;line-height:1.45!important;color:#9eabb7!important}
.coach-consent input{width:17px!important;height:17px!important;margin-top:2px;padding:0!important;accent-color:#E6C77A}
.coach-submit{width:100%;min-height:60px;border:0;cursor:pointer;margin-top:4px}
.coach-form-note{text-align:center;color:#81909d;font-size:11px;line-height:1.5;margin:13px 0 0}

@media(max-width:980px){
  .coach-application-layout{grid-template-columns:1fr}
  .coach-application-aside{position:relative;top:auto}
  .coach-application-photo{min-height:600px}
}
@media(max-width:600px){
  .coach-application-photo,.coach-form-card{border-radius:24px}
  .coach-premium-form{padding:22px}
  .coach-form-header{padding:22px}
  .coach-choice-grid{grid-template-columns:1fr}
}

/* === V15 RESTORED PREMIUM FOOTER === */
.footer-legacy-premium{
  background:
    radial-gradient(circle at 82% 14%,rgba(230,199,122,.10),transparent 24%),
    linear-gradient(135deg,#08111F 0%,#0B1B2E 46%,#132742 100%);
  color:#fff;
  padding:78px 0 28px;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.footer-mental-map{
  position:absolute;inset:0;pointer-events:none;opacity:.66;
  background:
    repeating-radial-gradient(ellipse at 93% 8%,transparent 0 58px,rgba(255,255,255,.032) 59px 60px),
    repeating-radial-gradient(ellipse at 12% 120%,transparent 0 84px,rgba(230,199,122,.025) 85px 86px);
  mix-blend-mode:screen;
}
.footer-legacy-premium::before{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(120deg,transparent 0 42%,rgba(255,255,255,.028) 42.2% 42.35%,transparent 42.6%),
    radial-gradient(circle at 12% 15%,rgba(255,255,255,.025),transparent 18%);
}
.footer-legacy-top{
  position:relative;z-index:2;
  display:flex;align-items:center;justify-content:space-between;
  gap:30px;padding-bottom:46px;border-bottom:1px solid rgba(255,255,255,.1);
}
.footer-identity{display:flex;align-items:center;gap:22px;max-width:640px}
.footer-logo-slot{
  width:68px;height:68px;border-radius:18px;border:1px solid rgba(230,199,122,.42);
  background:rgba(255,255,255,.025);display:grid;place-items:center;color:#E6C77A;
  font:800 20px "Archivo",sans-serif;flex:none;
}
.footer-signature{
  font:800 clamp(30px,3.4vw,50px)/1 "Archivo",sans-serif;
  letter-spacing:-.055em;color:#fff;
}
.footer-identity p{margin:8px 0 0;color:#aab5c0;line-height:1.55;font-size:13px}
.footer-primary-cta{
  display:flex;align-items:center;gap:22px;padding:14px 16px 14px 22px;border-radius:999px;
  border:1px solid rgba(255,255,255,.2);font-size:11px;letter-spacing:.13em;font-weight:800;
  transition:.3s var(--ease);
}
.footer-primary-cta span{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#E6C77A;color:#08111F;
}
.footer-primary-cta:hover{transform:translateY(-3px);border-color:rgba(230,199,122,.55)}
.footer-legacy-grid{
  position:relative;z-index:2;display:grid;grid-template-columns:1.15fr 1fr 1.25fr .8fr;
  gap:clamp(28px,4vw,54px);padding:52px 0 48px;
}
.footer-legacy-grid .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footer-legacy-grid .footer-col h3{
  margin:0 0 12px;font:800 10px/1 "Archivo",sans-serif;letter-spacing:.19em;color:#E6C77A;
}
.footer-legacy-grid .footer-col a{
  color:#b6c0ca;font-size:13px;line-height:1.42;position:relative;transition:color .25s,transform .25s;
}
.footer-legacy-grid .footer-col a:hover{color:#fff;transform:translateX(4px)}
.footer-legacy-grid .footer-col a::after{
  content:"";position:absolute;left:0;bottom:-3px;height:1px;width:0;background:#E6C77A;transition:width .3s var(--ease);
}
.footer-legacy-grid .footer-col a:hover::after{width:100%}
.footer-legacy-bottom{
  position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.1);padding-top:22px;
  display:flex;justify-content:space-between;gap:22px;color:#71808e;font-size:10px;letter-spacing:.08em;text-transform:uppercase;
}
@media(max-width:900px){.footer-legacy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){
  .footer-legacy-top{align-items:flex-start;flex-direction:column}
  .footer-primary-cta{width:100%;justify-content:space-between}
  .footer-legacy-grid{grid-template-columns:1fr;gap:30px}
  .footer-legacy-bottom{flex-direction:column}
}



/* === V16 COMPACT PREMIUM MARQUEE === */
.marquee-v16{
  height:112px;
  min-height:112px;
  padding:0 clamp(24px,4vw,60px);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(28px,4vw,58px);
  overflow:hidden;
  background:linear-gradient(104deg,#08111F 0%,#132742 52%,#0B1726 100%);
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.marquee-window{
  overflow:hidden;
  min-width:0;
}
.marquee-track-v16{
  display:flex;
  width:max-content;
  align-items:center;
  animation:marqueeV16Loop 28s linear infinite;
  will-change:transform;
}
.marquee-track-v16 span{
  flex:0 0 auto;
  white-space:nowrap;
  padding-right:3.2rem;
  font:800 clamp(26px,2.7vw,42px)/1 "Archivo",sans-serif;
  letter-spacing:-.035em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#FFFFFF 0%,#DDE5EC 42%,#E6C77A 82%,#FFFFFF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.marquee-fixed-dot{
  position:relative;
  z-index:3;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 auto;
  font:900 44px/1 "Archivo",sans-serif;
  background:linear-gradient(135deg,#E6C77A 0%,#FFFFFF 58%,#8EA2B6 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  pointer-events:none;
}
@keyframes marqueeV16Loop{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(max-width:700px){
  .marquee-v16{
    height:92px;
    min-height:92px;
    padding:0 18px;
    gap:18px;
  }
  .marquee-track-v16 span{
    font-size:clamp(22px,6.8vw,32px);
    padding-right:2.4rem;
  }
  .marquee-fixed-dot{
    width:24px;height:24px;font-size:34px;
  }
  .marquee-track-v16{animation-duration:22s}
}
@media(prefers-reduced-motion:reduce){
  .marquee-track-v16{animation:none!important}
}


/* === V14 SPECTACULAR MOTION SYSTEM === */
:root{
  --mx:50%;
  --my:50%;
  --section-shift:0px;
}
body{perspective:1400px}

.motion-card,.motion-media,.step,.card,.contact-form-card,.application-photo,.coach-application-photo{
  transform-style:preserve-3d;
  backface-visibility:hidden;
  position:relative;
}
.motion-card::after,.step::after,.card::after,.contact-form-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:radial-gradient(circle at var(--local-x,50%) var(--local-y,50%),rgba(230,199,122,.16),transparent 28%);
  opacity:0;
  transition:opacity .35s ease;
}
@media(hover:hover) and (pointer:fine){
  .motion-card:hover::after,.step:hover::after,.card:hover::after,.contact-form-card:hover::after{opacity:1}
}

.section{
  transition:background-position .2s linear;
}
.section.motion-active>.container{
  animation:sectionBreath 1s var(--ease) both;
}
@keyframes sectionBreath{
  from{opacity:.72;transform:translateY(28px)}
  to{opacity:1;transform:none}
}

.reveal{
  filter:blur(8px);
}
.reveal.visible{
  filter:none;
}
.grid2 .reveal:nth-child(2),
.grid3 .reveal:nth-child(2){transition-delay:.08s}
.grid3 .reveal:nth-child(3){transition-delay:.16s}
.grid3 .reveal:nth-child(4){transition-delay:.24s}

.motion-float.visible{
  animation:floatIn 1s var(--ease) both;
}
@keyframes floatIn{
  0%{opacity:0;transform:translateY(44px) scale(.985);filter:blur(8px)}
  100%{opacity:1;transform:none;filter:none}
}

.motion-media{
  overflow:hidden;
}
.motion-media::before{
  content:"";
  position:absolute;
  inset:-8%;
  background:
    radial-gradient(circle at 70% 20%,rgba(230,199,122,.18),transparent 24%),
    linear-gradient(145deg,rgba(255,255,255,.04),transparent 45%);
  transform:scale(1.06);
  transition:transform 1.2s var(--ease),opacity .8s;
  opacity:.7;
  pointer-events:none;
}
.motion-media.visible::before{transform:scale(1)}
@media(hover:hover) and (pointer:fine){
  .motion-media:hover::before{transform:scale(1.08) translate3d(1.5%,-1%,0)}
}

.hero{
  isolation:isolate;
}
.hero::after{
  content:"";
  position:absolute;inset:0;pointer-events:none;z-index:1;
  background:
    radial-gradient(circle at var(--mx) var(--my),rgba(230,199,122,.08),transparent 18%),
    linear-gradient(180deg,transparent 0 68%,rgba(8,17,31,.22) 100%);
}
.hero-copy{
  will-change:transform;
}
.hero .motion-line-inner{
  transition-duration:1.05s;
}
.hero .actions .btn:nth-child(1){animation-delay:.15s}
.hero .actions .btn:nth-child(2){animation-delay:.25s}

.section-number{
  will-change:transform,opacity;
}
.section.motion-active .section-number{
  animation:numberDrift 7s ease-in-out infinite alternate;
}
@keyframes numberDrift{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-10px,8px,0)}
}

.metric,.stat{
  position:relative;
  overflow:hidden;
}
.metric::before,.stat::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 22%,rgba(255,255,255,.08) 48%,transparent 72%);
  transform:translateX(-130%);
}
.metric.counted::before,.stat.counted::before{
  animation:sweepHighlight 1.1s .1s var(--ease) both;
}
@keyframes sweepHighlight{
  to{transform:translateX(130%)}
}

.compare-row.visible{
  animation:compareLift .8s var(--ease) both;
}
@keyframes compareLift{
  from{opacity:.65;transform:translateY(18px)}
  to{opacity:1;transform:none}
}

.faq button{
  transition:padding-left .3s var(--ease),color .3s,border-color .3s;
}
@media(hover:hover) and (pointer:fine){
  .faq button:hover{padding-left:12px;color:#E6C77A;border-color:rgba(230,199,122,.35)}
}

.contact-proof-item,
.coach-form-steps>div,
.application-point{
  transition:transform .3s var(--ease),background .3s,border-color .3s;
}
@media(hover:hover) and (pointer:fine){
  .contact-proof-item:hover,
  .coach-form-steps>div:hover{transform:translateX(8px);background:#fbfcfd}
}

.footer-col a{
  position:relative;
  transition:color .25s,transform .25s;
}
.footer-col a::after{
  content:"";
  position:absolute;
  left:0;bottom:-3px;width:0;height:1px;
  background:#E6C77A;
  transition:width .3s var(--ease);
}
.footer-col a:hover{transform:translateX(4px)}
.footer-col a:hover::after{width:100%}

.menu-panel::before{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at var(--mx) var(--my),rgba(230,199,122,.09),transparent 20%),
    repeating-radial-gradient(ellipse at 88% 18%,transparent 0 62px,rgba(255,255,255,.025) 63px 64px);
  opacity:.9;
}
.menu-links a{
  position:relative;
}
.menu-links a::before{
  content:"";
  position:absolute;left:-24px;top:50%;
  width:8px;height:8px;border-radius:50%;
  background:#E6C77A;
  transform:translateY(-50%) scale(0);
  transition:transform .3s var(--ease);
}
.menu-links a:hover::before{transform:translateY(-50%) scale(1)}

.btn.magnetic{
  will-change:transform;
}
.btn.magnetic::before{
  content:"";
  position:absolute;
  width:70px;height:70px;border-radius:50%;
  background:rgba(255,255,255,.18);
  transform:translate(-50%,-50%) scale(0);
  left:var(--btn-x,50%);top:var(--btn-y,50%);
  transition:transform .35s ease;
  pointer-events:none;
}
.btn.magnetic:hover::before{transform:translate(-50%,-50%) scale(1)}

.editorial-marquee .marquee-word,
.editorial-marquee .marquee-dot{
  filter:drop-shadow(0 0 0 rgba(230,199,122,0));
  transition:filter .35s ease;
}
.editorial-marquee:hover .marquee-word,
.editorial-marquee:hover .marquee-dot{
  filter:drop-shadow(0 0 14px rgba(230,199,122,.15));
}

.site-footer{
  position:relative;
}
.site-footer::after{
  content:"";
  position:absolute;inset:auto 0 0 0;height:1px;
  background:linear-gradient(90deg,transparent,#E6C77A,transparent);
  animation:footerLine 5s linear infinite;
}
@keyframes footerLine{
  0%{transform:translateX(-100%)}
  100%{transform:translateX(100%)}
}

@media(max-width:700px){
  .reveal{filter:blur(4px)}
  .section.motion-active>.container{animation-duration:.75s}
  .section.motion-active .section-number{animation:none}
}
@media(prefers-reduced-motion:reduce){
  .section.motion-active>.container,.motion-float.visible,.section.motion-active .section-number,.site-footer::after{animation:none!important}
  .reveal{filter:none!important}
}


/* === V17 LOCK: preserve V16 compact marquee exactly === */
.marquee-v16{
  height:112px!important;
  min-height:112px!important;
  padding:0 clamp(24px,4vw,60px)!important;
}
.marquee-v16 .marquee-track-v16{
  animation:marqueeV16Loop 28s linear infinite!important;
}
.marquee-v16 .marquee-fixed-dot{
  transform:none!important;
  animation:none!important;
}
.marquee-v16 .marquee-track-v16 span{
  font-size:clamp(26px,2.7vw,42px)!important;
}
@media(max-width:700px){
  .marquee-v16{
    height:92px!important;
    min-height:92px!important;
    padding:0 18px!important;
  }
  .marquee-v16 .marquee-track-v16{
    animation-duration:22s!important;
  }
  .marquee-v16 .marquee-track-v16 span{
    font-size:clamp(22px,6.8vw,32px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .marquee-v16 .marquee-track-v16{animation:none!important}
}


/* === V18 MARQUEE CLEAN / FULL BLEED === */
.marquee-v18{
  width:100%;
  height:78px;
  min-height:78px;
  padding:0;
  margin:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  background:linear-gradient(104deg,#08111F 0%,#132742 52%,#0B1726 100%);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.marquee-v18 .marquee-track-v18{
  display:flex;
  align-items:center;
  width:max-content;
  flex-shrink:0;
  animation:marqueeV18Loop 28s linear infinite;
  will-change:transform;
}
.marquee-v18 .marquee-track-v18 span{
  display:block;
  flex:0 0 auto;
  white-space:nowrap;
  padding-right:3.5rem;
  font:800 clamp(22px,2.15vw,34px)/1 "Archivo",sans-serif;
  letter-spacing:-.03em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#FFFFFF 0%,#DDE5EC 40%,#E6C77A 76%,#FFFFFF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
@keyframes marqueeV18Loop{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

/* Explicitly hide/remove any fixed dots from older versions if still present */
.marquee-fixed-dot,
.marquee-fixed-dot-left,
.marquee-fixed-dot-right{
  display:none!important;
}

@media(max-width:700px){
  .marquee-v18{
    height:66px;
    min-height:66px;
  }
  .marquee-v18 .marquee-track-v18{
    animation-duration:22s;
  }
  .marquee-v18 .marquee-track-v18 span{
    font-size:clamp(19px,5.8vw,27px);
    padding-right:2.5rem;
  }
}
@media(prefers-reduced-motion:reduce){
  .marquee-v18 .marquee-track-v18{
    animation:none!important;
  }
}


/* === V19 TRUE INFINITE MARQUEE === */
.marquee-v19{
  width:100%;
  height:78px;
  min-height:78px;
  padding:0;
  margin:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  background:linear-gradient(104deg,#08111F 0%,#132742 52%,#0B1726 100%);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.marquee-v19 .marquee-track-v19{
  display:flex;
  align-items:center;
  flex-shrink:0;
  width:max-content;
  animation:marqueeV19Loop 32s linear infinite;
  will-change:transform;
}
.marquee-v19 .marquee-track-v19 span{
  flex:0 0 auto;
  white-space:nowrap;
  padding-right:3.5rem;
  font:800 clamp(22px,2.15vw,34px)/1 "Archivo",sans-serif;
  letter-spacing:-.03em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#FFFFFF 0%,#DDE5EC 40%,#E6C77A 76%,#FFFFFF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* With 4 identical segments, shifting exactly 25% creates a seamless handoff. */
@keyframes marqueeV19Loop{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-25%,0,0)}
}

@media(max-width:700px){
  .marquee-v19{
    height:66px;
    min-height:66px;
  }
  .marquee-v19 .marquee-track-v19{
    animation-duration:24s;
  }
  .marquee-v19 .marquee-track-v19 span{
    font-size:clamp(19px,5.8vw,27px);
    padding-right:2.5rem;
  }
}
@media(prefers-reduced-motion:reduce){
  .marquee-v19 .marquee-track-v19{animation:none!important}
}


/* === V20 ULTRA-FLUID MARQUEE === */
.marquee-v20{
  width:100%;
  height:76px;
  min-height:76px;
  padding:0;
  margin:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  background:linear-gradient(104deg,#08111F 0%,#132742 52%,#0B1726 100%);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.07);
}

.marquee-track-v20{
  display:flex;
  align-items:center;
  width:max-content;
  flex:none;
  will-change:transform;
  transform:translate3d(0,0,0);
}

.marquee-v20-segment{
  display:flex;
  align-items:center;
  flex:none;
  gap:clamp(34px,3.6vw,62px);
  padding-right:clamp(42px,4.5vw,78px);
  white-space:nowrap;
}

.marquee-v20-word{
  display:inline-block;
  flex:none;
  font:800 clamp(21px,2.05vw,33px)/1 "Archivo",sans-serif;
  letter-spacing:-.025em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#FFFFFF 0%,#DDE5EC 42%,#E6C77A 80%,#FFFFFF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.marquee-v20-dot{
  display:inline-block;
  flex:none;
  font:800 clamp(18px,1.65vw,27px)/1 "Archivo",sans-serif;
  background:linear-gradient(135deg,#FFFFFF 0%,#E6C77A 60%,#9FB0C0 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  opacity:.95;
}

@media(max-width:700px){
  .marquee-v20{
    height:64px;
    min-height:64px;
  }
  .marquee-v20-segment{
    gap:30px;
    padding-right:38px;
  }
  .marquee-v20-word{
    font-size:clamp(18px,5.6vw,26px);
  }
  .marquee-v20-dot{
    font-size:18px;
  }
}

@media(prefers-reduced-motion:reduce){
  .marquee-track-v20{
    transform:none!important;
  }
}


/* === V21 FIXED INTERNAL DOTS === */
.marquee-v21{
  width:100%;
  height:76px;
  min-height:76px;
  padding:0;
  margin:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  position:relative;
  background:linear-gradient(104deg,#08111F 0%,#132742 52%,#0B1726 100%);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.marquee-track-v21{
  display:flex;
  align-items:center;
  width:max-content;
  flex:none;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.marquee-v21-segment{
  display:flex;
  align-items:center;
  flex:none;
  gap:clamp(78px,8vw,140px);
  padding-right:clamp(78px,8vw,140px);
  white-space:nowrap;
}
.marquee-v21-word{
  display:inline-block;
  flex:none;
  font:800 clamp(21px,2.05vw,33px)/1 "Archivo",sans-serif;
  letter-spacing:-.025em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#FFFFFF 0%,#DDE5EC 42%,#E6C77A 80%,#FFFFFF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.marquee-v21-dots{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
}
.marquee-v21-fixed-dot{
  position:absolute;
  left:var(--dot-pos);
  top:50%;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  font:800 23px/1 "Archivo",sans-serif;
  background:linear-gradient(135deg,#FFFFFF 0%,#E6C77A 60%,#9FB0C0 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 0 8px rgba(8,17,31,.55));
}
@media(max-width:700px){
  .marquee-v21{
    height:64px;
    min-height:64px;
  }
  .marquee-v21-segment{
    gap:74px;
    padding-right:74px;
  }
  .marquee-v21-word{
    font-size:clamp(18px,5.6vw,26px);
  }
  .marquee-v21-fixed-dot{
    font-size:18px;
    width:20px;
    height:20px;
  }
}
@media(prefers-reduced-motion:reduce){
  .marquee-track-v21{transform:none!important}
}


/* === V22 SYNCED MOVING DOTS === */
.marquee-v22{
  width:100%;
  height:76px;
  min-height:76px;
  padding:0;
  margin:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  position:relative;
  background:linear-gradient(104deg,#08111F 0%,#132742 52%,#0B1726 100%);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.07);
}

.marquee-track-v22{
  display:flex;
  align-items:center;
  width:max-content;
  flex:none;
  will-change:transform;
  transform:translate3d(0,0,0);
}

.marquee-v22-segment{
  display:flex;
  align-items:center;
  flex:none;
  gap:clamp(34px,3.6vw,62px);
  padding-right:clamp(42px,4.5vw,78px);
  white-space:nowrap;
}

.marquee-v22-word{
  display:inline-block;
  flex:none;
  font:800 clamp(21px,2.05vw,33px)/1 "Archivo",sans-serif;
  letter-spacing:-.025em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#FFFFFF 0%,#DDE5EC 42%,#E6C77A 80%,#FFFFFF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.marquee-v22-dot{
  display:inline-block;
  flex:none;
  font:800 clamp(18px,1.65vw,27px)/1 "Archivo",sans-serif;
  background:linear-gradient(135deg,#FFFFFF 0%,#E6C77A 60%,#9FB0C0 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  opacity:.95;
  margin-inline:clamp(4px,.6vw,10px);
}

@media(max-width:700px){
  .marquee-v22{
    height:64px;
    min-height:64px;
  }
  .marquee-v22-segment{
    gap:30px;
    padding-right:38px;
  }
  .marquee-v22-word{
    font-size:clamp(18px,5.6vw,26px);
  }
  .marquee-v22-dot{
    font-size:18px;
    margin-inline:6px;
  }
}

@media(prefers-reduced-motion:reduce){
  .marquee-track-v22{transform:none!important}
}

/* Disable V21 fixed-dot layer if legacy CSS still exists */
.marquee-v21-dots,
.marquee-v21-fixed-dot{
  display:none!important;
}


/* === V23 LOCKED WORD + DOT PAIRS === */
.marquee-v23{
  width:100%;
  height:76px;
  min-height:76px;
  padding:0;
  margin:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  background:linear-gradient(104deg,#08111F 0%,#132742 52%,#0B1726 100%);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.marquee-track-v23{
  display:flex;
  align-items:center;
  width:max-content;
  flex:none;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.marquee-v23-rail{
  display:flex;
  align-items:center;
  flex:none;
  white-space:nowrap;
}
.marquee-v23-token{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  white-space:nowrap;
  gap:clamp(38px,4vw,66px);
  margin-right:clamp(38px,4vw,66px);
}
.marquee-v23-word{
  display:inline-block;
  flex:0 0 auto;
  font:800 clamp(21px,2.05vw,33px)/1 "Archivo",sans-serif;
  letter-spacing:-.025em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#FFFFFF 0%,#DDE5EC 42%,#E6C77A 80%,#FFFFFF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.marquee-v23-dot{
  display:inline-block;
  flex:0 0 auto;
  font:800 clamp(18px,1.65vw,27px)/1 "Archivo",sans-serif;
  background:linear-gradient(135deg,#FFFFFF 0%,#E6C77A 60%,#9FB0C0 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  opacity:.95;
}
@media(max-width:700px){
  .marquee-v23{
    height:64px;
    min-height:64px;
  }
  .marquee-v23-token{
    gap:30px;
    margin-right:30px;
  }
  .marquee-v23-word{
    font-size:clamp(18px,5.6vw,26px);
  }
  .marquee-v23-dot{
    font-size:18px;
  }
}
@media(prefers-reduced-motion:reduce){
  .marquee-track-v23{transform:none!important}
}


/* === V24 CRITICAL MARQUEE ENGINE FIX ===
   Legacy rule ".marquee span { animation: marquee ... }" was animating each word/dot
   independently while the full track was also moved by requestAnimationFrame.
   V24 guarantees ONE motion source only: the track itself.
*/
.marquee-v23 span,
.marquee-v23 .marquee-v23-token,
.marquee-v23 .marquee-v23-word,
.marquee-v23 .marquee-v23-dot{
  animation:none!important;
  transform:none;
}

.marquee-v23 .marquee-v23-token{
  position:relative;
  isolation:isolate;
}

.marquee-v23 .marquee-v23-word,
.marquee-v23 .marquee-v23-dot{
  will-change:auto;
}

/* Only this element is allowed to move */
.marquee-v23 .marquee-track-v23{
  animation:none!important;
  transition:none!important;
  will-change:transform;
}

/* Stable layout so word + separator can never overlap */
.marquee-v23-token{
  display:inline-grid!important;
  grid-template-columns:max-content max-content;
  align-items:center;
  column-gap:clamp(38px,4vw,66px)!important;
  margin-right:clamp(38px,4vw,66px)!important;
}

.marquee-v23-word,
.marquee-v23-dot{
  position:static!important;
  translate:none!important;
  rotate:none!important;
  scale:none!important;
}

@media(max-width:700px){
  .marquee-v23-token{
    column-gap:30px!important;
    margin-right:30px!important;
  }
}


/* =========================================================
   V25 — MENTAL MAP HOME SYSTEM
   Selective backgrounds only. Footer deliberately untouched.
   ========================================================= */
.home-map{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.home-map > .container{
  position:relative;
  z-index:3;
}
.home-map::before,
.home-map::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
}

/* 01 — Parcours: very subtle white/mineral cartography.
   Feels architectural but leaves the cards and copy dominant. */
.home-map-soft::before{
  width:min(760px,65vw);
  aspect-ratio:1;
  right:-180px;
  top:-210px;
  border-radius:50%;
  opacity:.58;
  background:
    repeating-radial-gradient(
      ellipse at 50% 50%,
      transparent 0 42px,
      rgba(8,17,31,.045) 43px 44px,
      transparent 45px 72px
    );
  transform:rotate(-11deg) scaleY(.72);
}
.home-map-soft::after{
  inset:0;
  opacity:.32;
  background:
    linear-gradient(90deg,transparent 0 15%,rgba(8,17,31,.035) 15.08% 15.16%,transparent 15.24% 100%),
    linear-gradient(0deg,transparent 0 76%,rgba(230,199,122,.07) 76.08% 76.16%,transparent 76.24% 100%);
}
.home-map-soft .card{
  backdrop-filter:blur(1px);
}

/* 02 — Leïla: deeper "mental coordinates" environment.
   Asymmetric concentric paths + subtle axis mark around statistics. */
.home-map-deep::before{
  width:min(940px,78vw);
  aspect-ratio:1.18;
  left:-330px;
  bottom:-390px;
  opacity:.65;
  background:
    repeating-radial-gradient(
      ellipse at 54% 43%,
      transparent 0 54px,
      rgba(230,199,122,.055) 55px 56px,
      transparent 57px 91px
    );
  transform:rotate(15deg);
}
.home-map-deep::after{
  width:520px;
  height:520px;
  right:-170px;
  top:-155px;
  opacity:.28;
  background:
    linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.12) 50%,transparent 50.2%),
    linear-gradient(0deg,transparent 49.8%,rgba(255,255,255,.08) 50%,transparent 50.2%),
    radial-gradient(circle at center,rgba(230,199,122,.16) 0 3px,transparent 4px);
  border:1px solid rgba(255,255,255,.035);
  border-radius:50%;
}
.home-map-deep .stats{
  position:relative;
  z-index:2;
  box-shadow:0 22px 55px rgba(0,0,0,.08);
}

/* 03 — Podcast: almost invisible rhythm. We keep the white breathing room. */
.home-map-air::before{
  width:640px;
  height:440px;
  left:-175px;
  bottom:-220px;
  opacity:.38;
  background:
    repeating-radial-gradient(
      ellipse at 35% 55%,
      transparent 0 50px,
      rgba(19,39,66,.045) 51px 52px,
      transparent 53px 82px
    );
  transform:rotate(-8deg);
}
.home-map-air::after{
  width:360px;
  height:1px;
  right:6vw;
  top:25%;
  background:linear-gradient(90deg,transparent,rgba(230,199,122,.22),transparent);
  transform:rotate(-18deg);
  opacity:.65;
}

/* 04 — Quote: stronger signature moment before the contact form. */
.home-map-focus::before{
  inset:-18%;
  opacity:.72;
  background:
    repeating-radial-gradient(
      ellipse at 82% 48%,
      transparent 0 66px,
      rgba(255,255,255,.038) 67px 68px,
      transparent 69px 112px
    );
  transform:rotate(7deg);
}
.home-map-focus::after{
  width:min(620px,58vw);
  height:min(620px,58vw);
  left:-220px;
  top:-250px;
  border-radius:50%;
  background:
    radial-gradient(circle at center,rgba(230,199,122,.11) 0 2px,transparent 3px),
    linear-gradient(90deg,transparent 49.8%,rgba(230,199,122,.06) 50%,transparent 50.2%),
    linear-gradient(0deg,transparent 49.8%,rgba(255,255,255,.045) 50%,transparent 50.2%);
  border:1px solid rgba(230,199,122,.035);
}
.home-map-focus .quote{
  position:relative;
  z-index:2;
}

/* Very slow ambient life: sophisticated, not decorative noise. */
@media (prefers-reduced-motion:no-preference){
  .home-map-deep::before{
    animation:mentalMapDrift 18s ease-in-out infinite alternate;
  }
  .home-map-focus::before{
    animation:mentalMapDriftWide 24s ease-in-out infinite alternate;
  }
}
@keyframes mentalMapDrift{
  from{transform:rotate(15deg) translate3d(0,0,0)}
  to{transform:rotate(17deg) translate3d(18px,-12px,0)}
}
@keyframes mentalMapDriftWide{
  from{transform:rotate(7deg) translate3d(0,0,0) scale(1)}
  to{transform:rotate(9deg) translate3d(-18px,12px,0) scale(1.025)}
}

@media(max-width:700px){
  .home-map-soft::before{
    width:620px;right:-390px;top:-130px;opacity:.42;
  }
  .home-map-soft::after{opacity:.18}
  .home-map-deep::before{
    width:720px;left:-430px;bottom:-310px;opacity:.5;
  }
  .home-map-deep::after{
    width:360px;height:360px;right:-240px;top:40px;
  }
  .home-map-air::before{
    width:520px;left:-310px;bottom:-190px;opacity:.28;
  }
  .home-map-focus::before{
    inset:-10% -70%;opacity:.55;
  }
  .home-map-focus::after{
    width:420px;height:420px;left:-310px;top:-100px;
  }
}


/* === V28 BALANCED STATS — V25 layout preserved === */
.stats{
  position:relative;
}
.stats .stat{
  overflow:hidden;
  transition:background .35s var(--ease),transform .35s var(--ease),border-color .35s var(--ease);
}
.stats .stat::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at 80% 18%,rgba(230,199,122,.08),transparent 26%),
    linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.035) 48.2% 48.35%,transparent 48.6%);
  transition:opacity .35s ease;
}
.stats .stat::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:0;
  height:2px;
  background:linear-gradient(90deg,#E6C77A,rgba(230,199,122,.05));
  transition:width .8s var(--ease);
}
.stats .stat.stat-visible::after{
  width:100%;
}
.stat-count{
  position:relative;
  z-index:2;
  display:inline-block;
  transform-origin:center bottom;
  color:#E6C77A;
  will-change:transform,opacity,filter;
}
.stat.stat-visible .stat-count{
  animation:statCountIn .72s var(--ease) both;
}
@keyframes statCountIn{
  0%{opacity:0;transform:translateY(22px) scale(.92);filter:blur(5px)}
  70%{opacity:1;transform:translateY(-2px) scale(1.02);filter:none}
  100%{opacity:1;transform:none;filter:none}
}
@media(hover:hover) and (pointer:fine){
  .stats .stat:hover{
    transform:translateY(-5px);
    background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
    border-color:rgba(230,199,122,.18);
  }
  .stats .stat:hover::before{opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .stat.stat-visible .stat-count{animation:none!important}
}


/* === V29 PROFESSIONAL BALANCED STATS === */
.stats-pro{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  background:transparent!important;
  border:0!important;
  margin-top:48px!important;
}

.stat-pro{
  min-height:220px!important;
  padding:24px 26px 26px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.032),rgba(255,255,255,.012)),
    rgba(8,17,31,.52)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  position:relative!important;
  overflow:hidden!important;
  box-shadow:0 18px 48px rgba(0,0,0,.10)!important;
}

.stat-pro::before{
  content:"";
  position:absolute;
  width:260px;height:260px;
  right:-120px;top:-130px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.035);
  box-shadow:
    0 0 0 44px rgba(255,255,255,.018),
    0 0 0 88px rgba(230,199,122,.012);
  pointer-events:none;
}

.stat-pro::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:2px;
  background:linear-gradient(90deg,#E6C77A,rgba(230,199,122,.04));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .8s var(--ease);
}

.stat-pro.stat-visible::after{
  transform:scaleX(1);
}

.stat-pro-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  position:relative;
  z-index:2;
}

.stat-pro-kicker{
  font:800 10px/1 "Archivo",sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#8E9AA7;
}

.stat-pro-index{
  font:700 10px/1 "Archivo",sans-serif;
  letter-spacing:.12em;
  color:rgba(255,255,255,.28);
}

.stat-pro-main{
  position:relative;
  z-index:2;
}

.stat-pro-numberline{
  display:flex;
  align-items:flex-end;
  gap:12px;
  flex-wrap:wrap;
}

.stat-pro .stat-count{
  display:block;
  font:900 clamp(54px,5.5vw,82px)/.82 "Archivo",sans-serif!important;
  letter-spacing:-.07em!important;
  color:#E6C77A!important;
  margin:0!important;
}

.stat-pro-unit{
  display:block;
  padding-bottom:7px;
  font:800 clamp(17px,1.8vw,25px)/1 "Archivo",sans-serif;
  letter-spacing:.015em;
  text-transform:uppercase;
  color:#FFFFFF;
}

.stat-pro p{
  margin:14px 0 0!important;
  max-width:100%;
  font:600 clamp(16px,1.4vw,20px)/1.35 "Archivo",sans-serif!important;
  color:#AEB8C3!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
}

.stat-pro.stat-visible .stat-count{
  animation:statCountProIn .7s var(--ease) both;
}

@keyframes statCountProIn{
  0%{opacity:0;transform:translateY(18px) scale(.95);filter:blur(4px)}
  70%{opacity:1;transform:translateY(-1px) scale(1.015);filter:none}
  100%{opacity:1;transform:none;filter:none}
}

@media(hover:hover) and (pointer:fine){
  .stat-pro{
    transition:transform .35s var(--ease),border-color .35s,background .35s,box-shadow .35s;
  }
  .stat-pro:hover{
    transform:translateY(-6px);
    border-color:rgba(230,199,122,.22)!important;
    background:
      radial-gradient(circle at 88% 10%,rgba(230,199,122,.07),transparent 24%),
      linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.015)),
      rgba(8,17,31,.58)!important;
    box-shadow:0 24px 62px rgba(0,0,0,.16)!important;
  }
}

@media(max-width:800px){
  .stats-pro{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .stat-pro{
    min-height:190px!important;
    padding:22px!important;
  }
  .stat-pro .stat-count{
    font-size:clamp(52px,16vw,78px)!important;
  }
  .stat-pro-unit{
    font-size:clamp(16px,5vw,22px);
  }
}

@media(prefers-reduced-motion:reduce){
  .stat-pro.stat-visible .stat-count{animation:none!important}
  .stat-pro::after{transform:scaleX(1)!important;transition:none!important}
}


/* === V30 CLEAN 4-CARD STATS LOCK === */
.stats-pro{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.stats-pro > .stat-pro{
  min-width:0!important;
  width:100%!important;
  height:100%!important;
}
.stats-pro > .stat-pro:nth-child(n+5){
  display:none!important;
}
.stat-pro-main{
  width:100%;
}
.stat-pro-numberline{
  display:flex;
  align-items:flex-end;
  flex-wrap:nowrap!important;
  min-width:0;
}
.stat-pro-unit{
  white-space:nowrap;
}
@media(max-width:800px){
  .stats-pro{
    grid-template-columns:1fr!important;
  }
}


/* === V31 CONTACT CONVERSION STORY === */
.contact-intro-premium{
  position:sticky;
  top:104px;
}
.contact-intro-premium .lead{
  max-width:620px;
  color:#596674!important;
}
.conversion-signal{
  margin-top:36px;
  padding:0;
  border:1px solid rgba(8,17,31,.1);
  border-radius:24px;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 8%,rgba(230,199,122,.11),transparent 25%),
    #fff;
  box-shadow:0 20px 55px rgba(8,17,31,.07);
}
.conversion-signal-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 20px;
  border-bottom:1px solid rgba(8,17,31,.08);
}
.conversion-signal-index{
  font:900 30px/1 "Archivo",sans-serif;
  color:#E6C77A;
  letter-spacing:-.05em;
}
.conversion-signal-title{
  text-align:right;
  font:800 10px/1.2 "Archivo",sans-serif;
  letter-spacing:.14em;
  color:#697581;
}
.conversion-signal>p{
  margin:0;
  padding:22px 22px 18px;
  font:600 clamp(18px,1.55vw,22px)/1.48 "Archivo",sans-serif;
  color:#253241;
}
.conversion-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:0 22px 22px;
}
.conversion-chips span{
  padding:9px 11px;
  border-radius:999px;
  border:1px solid rgba(8,17,31,.1);
  background:#f9fafb;
  font:800 9px/1 "Archivo",sans-serif;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:#65717d;
}
.conversion-proof-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:14px;
}
.conversion-proof-grid article{
  min-height:150px;
  padding:20px;
  border-radius:20px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 10%,rgba(230,199,122,.08),transparent 28%),
    linear-gradient(145deg,#132742,#08111F);
  color:white;
  border:1px solid rgba(255,255,255,.05);
}
.conversion-proof-grid article::after{
  content:"";
  position:absolute;
  width:120px;
  height:120px;
  right:-62px;
  bottom:-64px;
  border-radius:50%;
  border:1px solid rgba(230,199,122,.12);
  box-shadow:0 0 0 24px rgba(230,199,122,.02);
}
.conversion-proof-number{
  display:block;
  margin-bottom:24px;
  font:900 23px/1 "Archivo",sans-serif;
  color:#E6C77A;
}
.conversion-proof-grid strong{
  display:block;
  margin-bottom:9px;
  font:800 12px/1.2 "Archivo",sans-serif;
  letter-spacing:.08em;
}
.conversion-proof-grid p{
  margin:0;
  font-size:13px;
  line-height:1.5;
  color:#b8c2cc;
}
.conversion-quote{
  margin:14px 0 0;
  padding:24px 24px 24px 62px;
  border-radius:20px;
  position:relative;
  background:
    linear-gradient(135deg,rgba(230,199,122,.13),rgba(230,199,122,.03)),
    #ffffff;
  border:1px solid rgba(230,199,122,.28);
}
.conversion-quote-mark{
  position:absolute;
  left:20px;
  top:12px;
  font:900 52px/1 "Archivo",sans-serif;
  color:#E6C77A;
}
.conversion-quote p{
  margin:0;
  font:800 clamp(17px,1.4vw,21px)/1.45 "Archivo",sans-serif;
  color:#132742;
}
.conversion-direct{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  margin-top:18px;
  padding-top:20px;
  border-top:1px solid rgba(8,17,31,.12);
}
.conversion-direct div span{
  display:block;
  margin-bottom:5px;
  font:800 9px/1 "Archivo",sans-serif;
  letter-spacing:.14em;
  color:#7b8793;
}
.conversion-direct div strong{
  font:800 16px/1.3 "Archivo",sans-serif;
  color:#08111F;
}
.conversion-direct a{
  flex:0 0 auto;
  padding:12px 16px;
  border-radius:999px;
  background:#08111F;
  color:white;
  font:800 10px/1 "Archivo",sans-serif;
  letter-spacing:.09em;
  transition:.3s var(--ease);
}
.conversion-direct a:hover{
  transform:translateY(-3px);
  background:#132742;
}

@media(hover:hover) and (pointer:fine){
  .conversion-signal,
  .conversion-proof-grid article,
  .conversion-quote{
    transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s;
  }
  .conversion-signal:hover,
  .conversion-proof-grid article:hover,
  .conversion-quote:hover{
    transform:translateY(-5px);
  }
  .conversion-proof-grid article:hover{
    box-shadow:0 20px 46px rgba(8,17,31,.15);
    border-color:rgba(230,199,122,.18);
  }
}
@media(max-width:900px){
  .contact-intro-premium{position:relative;top:auto}
}
@media(max-width:600px){
  .conversion-proof-grid{grid-template-columns:1fr}
  .conversion-direct{align-items:flex-start;flex-direction:column}
  .conversion-direct a{width:100%;text-align:center}
}


/* === V36 GYMNASTES MENTAL MAP === */
.gym-map{position:relative;isolation:isolate;overflow:hidden}
.gym-map>.container,.gym-map>.hero-copy,.gym-map>.hero-inner{position:relative;z-index:3}
.gym-map::before,.gym-map::after{content:"";position:absolute;pointer-events:none;z-index:0}

/* Hero: soft concentric mental-wave field */
.gym-map-hero::before{
  inset:-12%;
  opacity:.58;
  background:repeating-radial-gradient(ellipse at 82% 36%,transparent 0 58px,rgba(255,255,255,.035) 59px 60px,transparent 61px 96px);
  transform:rotate(8deg)
}
.gym-map-hero::after{
  width:min(520px,44vw);aspect-ratio:1;right:-90px;bottom:-170px;border-radius:50%;opacity:.45;
  background:
    radial-gradient(circle at center,rgba(230,199,122,.13) 0 3px,transparent 4px),
    linear-gradient(90deg,transparent 49.75%,rgba(230,199,122,.07) 50%,transparent 50.25%),
    linear-gradient(0deg,transparent 49.75%,rgba(255,255,255,.05) 50%,transparent 50.25%);
  border:1px solid rgba(255,255,255,.035)
}

/* First-step dark section */
.gym-map-focus::before{
  width:min(940px,78vw);aspect-ratio:1.12;left:-360px;top:-280px;opacity:.68;
  background:repeating-radial-gradient(ellipse at 48% 52%,transparent 0 52px,rgba(230,199,122,.052) 53px 54px,transparent 55px 88px);
  transform:rotate(-14deg)
}
.gym-map-focus::after{
  width:430px;height:430px;right:-190px;bottom:-160px;opacity:.28;border-radius:50%;
  background:
    linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.10) 50%,transparent 50.2%),
    linear-gradient(0deg,transparent 49.8%,rgba(255,255,255,.06) 50%,transparent 50.2%),
    radial-gradient(circle at center,rgba(230,199,122,.14) 0 3px,transparent 4px);
  border:1px solid rgba(255,255,255,.035)
}

/* Light diagnostic section */
.gym-map-light::before{
  width:760px;height:520px;left:-220px;bottom:-240px;opacity:.38;
  background:repeating-radial-gradient(ellipse at 36% 58%,transparent 0 48px,rgba(19,39,66,.045) 49px 50px,transparent 51px 80px);
  transform:rotate(-9deg)
}
.gym-map-light::after{
  inset:0;opacity:.22;
  background:
    linear-gradient(90deg,transparent 0 18%,rgba(8,17,31,.035) 18.1% 18.18%,transparent 18.28% 100%),
    linear-gradient(0deg,transparent 0 72%,rgba(230,199,122,.07) 72.08% 72.16%,transparent 72.26% 100%)
}

/* Additional dark content section */
.gym-map-deep::before{
  inset:-16%;opacity:.55;
  background:repeating-radial-gradient(ellipse at 88% 46%,transparent 0 64px,rgba(255,255,255,.034) 65px 66px,transparent 67px 106px);
  transform:rotate(6deg)
}
.gym-map-deep::after{
  width:min(620px,52vw);aspect-ratio:1;left:-230px;top:-260px;border-radius:50%;opacity:.3;
  background:
    radial-gradient(circle at center,rgba(230,199,122,.11) 0 2px,transparent 3px),
    linear-gradient(90deg,transparent 49.8%,rgba(230,199,122,.055) 50%,transparent 50.2%),
    linear-gradient(0deg,transparent 49.8%,rgba(255,255,255,.04) 50%,transparent 50.2%);
  border:1px solid rgba(230,199,122,.035)
}

@media(prefers-reduced-motion:no-preference){
  .gym-map-hero::before{animation:gymMapHeroDrift 22s ease-in-out infinite alternate}
  .gym-map-focus::before,.gym-map-deep::before{animation:gymMapDrift 20s ease-in-out infinite alternate}
}
@keyframes gymMapHeroDrift{from{transform:rotate(8deg)}to{transform:rotate(10deg) translate3d(-18px,12px,0)}}
@keyframes gymMapDrift{from{transform:rotate(-14deg)}to{transform:rotate(-12deg) translate3d(18px,-10px,0)}}

.gym-map .card,.gym-map .step,.gym-map .offer-panel,.gym-map .btn{position:relative;z-index:2}

@media(max-width:700px){
  .gym-map-hero::before{inset:-5% -55%;opacity:.48}
  .gym-map-hero::after{width:360px;right:-230px;bottom:-100px}
  .gym-map-focus::before{width:700px;left:-470px;top:-170px;opacity:.52}
  .gym-map-focus::after{width:320px;right:-220px;bottom:-90px}
  .gym-map-light::before{width:560px;left:-350px;bottom:-170px;opacity:.28}
  .gym-map-light::after{opacity:.14}
  .gym-map-deep::before{inset:-10% -70%;opacity:.45}
}


/* =========================================================
   V37 — GYMNASTES / WHITE SECTION ART DIRECTION
   Selective Mental Map + complementary visual languages.
   Footer untouched.
   ========================================================= */

.gym-white-art{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.gym-white-art > .container{
  position:relative;
  z-index:3;
}
.gym-white-art::before,
.gym-white-art::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
}

/* 01 — MENTAL MAP / diagnostic section
   Clear white container, premium embossed topography. */
.gym-white-map::before{
  width:min(820px,70vw);
  aspect-ratio:1.25;
  right:-230px;
  top:-210px;
  opacity:.46;
  background:
    repeating-radial-gradient(
      ellipse at 54% 48%,
      transparent 0 44px,
      rgba(19,39,66,.055) 45px 46px,
      transparent 47px 76px
    );
  transform:rotate(10deg);
}
.gym-white-map::after{
  width:420px;
  height:420px;
  left:-180px;
  bottom:-210px;
  border-radius:50%;
  opacity:.28;
  background:
    radial-gradient(circle at center,rgba(230,199,122,.15) 0 2px,transparent 3px),
    linear-gradient(90deg,transparent 49.8%,rgba(19,39,66,.05) 50%,transparent 50.2%),
    linear-gradient(0deg,transparent 49.8%,rgba(230,199,122,.07) 50%,transparent 50.2%);
  border:1px solid rgba(19,39,66,.045);
}

/* 02 — TRAJECTORY / movement and progression
   Original diagonal path language, not another map. */
.gym-white-trajectory::before{
  inset:-10% -4%;
  opacity:.58;
  background:
    linear-gradient(118deg,
      transparent 0 18%,
      rgba(19,39,66,.042) 18.08% 18.18%,
      transparent 18.28% 35%,
      rgba(230,199,122,.075) 35.08% 35.18%,
      transparent 35.28% 52%,
      rgba(19,39,66,.035) 52.08% 52.18%,
      transparent 52.28% 100%);
}
.gym-white-trajectory::after{
  width:520px;
  height:230px;
  right:4vw;
  bottom:-80px;
  border-top:1px solid rgba(19,39,66,.08);
  border-radius:50% 50% 0 0;
  transform:rotate(-7deg);
  box-shadow:
    0 -34px 0 -33px rgba(230,199,122,.16),
    0 -70px 0 -69px rgba(19,39,66,.06);
  opacity:.72;
}

/* 03 — FOCUS AXIS / concentration
   Crosshair and focal halo, clean and minimal. */
.gym-white-focus::before{
  width:520px;
  height:520px;
  left:-180px;
  top:-210px;
  border-radius:50%;
  opacity:.34;
  background:
    radial-gradient(circle at center,rgba(230,199,122,.16) 0 3px,transparent 4px),
    linear-gradient(90deg,transparent 49.8%,rgba(19,39,66,.055) 50%,transparent 50.2%),
    linear-gradient(0deg,transparent 49.8%,rgba(19,39,66,.045) 50%,transparent 50.2%);
  border:1px solid rgba(19,39,66,.045);
  box-shadow:
    0 0 0 56px rgba(19,39,66,.012),
    0 0 0 112px rgba(230,199,122,.012);
}
.gym-white-focus::after{
  width:260px;
  height:1px;
  right:8vw;
  top:22%;
  opacity:.65;
  background:linear-gradient(90deg,transparent,rgba(230,199,122,.32),transparent);
  transform:rotate(-18deg);
}

/* 04 — PERFORMANCE ARC / controlled energy
   Elegant arcs + dot markers, visual link to rhythmic motion. */
.gym-white-arc::before{
  width:680px;
  height:420px;
  right:-250px;
  bottom:-170px;
  border-radius:50%;
  opacity:.42;
  background:
    radial-gradient(ellipse at center,
      transparent 0 42%,
      rgba(19,39,66,.055) 42.4% 42.8%,
      transparent 43.2% 58%,
      rgba(230,199,122,.085) 58.4% 58.8%,
      transparent 59.2%);
  transform:rotate(8deg);
}
.gym-white-arc::after{
  width:8px;
  height:8px;
  left:12%;
  top:24%;
  border-radius:50%;
  background:#E6C77A;
  box-shadow:
    130px 52px 0 rgba(19,39,66,.20),
    270px -8px 0 rgba(230,199,122,.55),
    410px 64px 0 rgba(19,39,66,.14);
  opacity:.72;
}

/* Keep interactive blocks visually above backgrounds */
.gym-white-art .card,
.gym-white-art .step,
.gym-white-art .offer-panel,
.gym-white-art .btn,
.gym-white-art .compare,
.gym-white-art .faq{
  position:relative;
  z-index:2;
}

/* Ultra-subtle ambient movement, only on art layers */
@media(prefers-reduced-motion:no-preference){
  .gym-white-map::before{
    animation:whiteMapDrift 22s ease-in-out infinite alternate;
  }
  .gym-white-trajectory::after{
    animation:trajectoryBreathe 18s ease-in-out infinite alternate;
  }
  .gym-white-arc::before{
    animation:arcDrift 20s ease-in-out infinite alternate;
  }
}
@keyframes whiteMapDrift{
  from{transform:rotate(10deg) translate3d(0,0,0)}
  to{transform:rotate(12deg) translate3d(-12px,8px,0)}
}
@keyframes trajectoryBreathe{
  from{transform:rotate(-7deg) translate3d(0,0,0)}
  to{transform:rotate(-5deg) translate3d(-16px,-6px,0)}
}
@keyframes arcDrift{
  from{transform:rotate(8deg) translate3d(0,0,0)}
  to{transform:rotate(10deg) translate3d(10px,-8px,0)}
}

@media(max-width:700px){
  .gym-white-map::before{
    width:620px;
    right:-420px;
    top:-120px;
    opacity:.34;
  }
  .gym-white-map::after{
    width:300px;
    height:300px;
    left:-220px;
    bottom:-100px;
  }

  .gym-white-trajectory::before{
    inset:-5% -50%;
    opacity:.40;
  }
  .gym-white-trajectory::after{
    width:360px;
    right:-190px;
    bottom:-50px;
  }

  .gym-white-focus::before{
    width:340px;
    height:340px;
    left:-240px;
    top:-80px;
    opacity:.26;
  }

  .gym-white-arc::before{
    width:460px;
    height:300px;
    right:-330px;
    bottom:-100px;
    opacity:.34;
  }
  .gym-white-arc::after{
    left:7%;
    top:16%;
    opacity:.48;
  }
}


/* =========================================================
   V38 — HOME ENTRY GATEWAY
   3 premium conversion cards replacing the old trustbar.
   ========================================================= */
.entry-gateway{
  background:#FFFFFF;
  padding:34px 0 42px;
  position:relative;
  overflow:hidden;
}
.entry-gateway::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 0%,rgba(230,199,122,.08),transparent 23%),
    radial-gradient(circle at 88% 100%,rgba(19,39,66,.05),transparent 28%);
}
.entry-gateway-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr .86fr;
  gap:16px;
}
.entry-card{
  min-height:310px;
  border-radius:24px;
  padding:22px 24px 22px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  isolation:isolate;
  border:1px solid rgba(8,17,31,.08);
  box-shadow:0 18px 48px rgba(8,17,31,.07);
  transition:transform .42s var(--ease),box-shadow .42s var(--ease),border-color .35s;
}
.entry-card-bg{
  position:absolute;
  inset:0;
  z-index:-2;
}
.entry-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(circle at var(--local-x,50%) var(--local-y,50%),rgba(230,199,122,.16),transparent 30%);
  transition:opacity .35s ease;
}
.entry-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.entry-index{
  font:900 34px/1 "Archivo",sans-serif;
  letter-spacing:-.06em;
  color:#E6C77A;
}
.entry-label{
  font:800 9px/1 "Archivo",sans-serif;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:rgba(255,255,255,.52);
}
.entry-card-main{
  position:relative;
  z-index:2;
  max-width:90%;
}
.entry-card h3{
  margin:0 0 12px;
  font:900 clamp(28px,2.6vw,42px)/.95 "Archivo",sans-serif;
  letter-spacing:-.055em;
}
.entry-card p{
  margin:0;
  max-width:430px;
  font:600 clamp(15px,1.25vw,18px)/1.45 "Archivo",sans-serif;
}
.entry-card-meta{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  border-top:1px solid rgba(255,255,255,.11);
  padding-top:16px;
  position:relative;
  z-index:2;
}
.entry-card-meta>span:first-child{
  font:800 9px/1.3 "Archivo",sans-serif;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.entry-arrow{
  width:34px;
  height:34px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:50%;
  transition:transform .35s var(--ease),background .35s,color .35s;
}
.entry-watermark{
  position:absolute;
  right:-12px;
  bottom:36px;
  font:900 clamp(56px,6vw,92px)/.85 "Archivo",sans-serif;
  letter-spacing:-.07em;
  opacity:.035;
  white-space:nowrap;
  pointer-events:none;
  z-index:0;
}

/* GYMNASTES — night + mental contour */
.entry-card-gym{
  color:#fff;
  background:linear-gradient(145deg,#08111F,#10233B);
}
.entry-card-gym .entry-card-bg{
  background:
    repeating-radial-gradient(ellipse at 92% 16%,transparent 0 42px,rgba(255,255,255,.032) 43px 44px,transparent 45px 70px),
    radial-gradient(circle at 12% 90%,rgba(230,199,122,.08),transparent 25%);
}
.entry-card-gym p,
.entry-card-gym .entry-card-meta>span:first-child{color:#AEB8C3}
.entry-card-gym .entry-arrow{background:#E6C77A;color:#08111F}

/* COACH — deep blue + trajectory system */
.entry-card-coach{
  color:#fff;
  background:linear-gradient(145deg,#132742,#0B1829);
}
.entry-card-coach .entry-card-bg{
  background:
    linear-gradient(118deg,transparent 0 28%,rgba(230,199,122,.06) 28.1% 28.22%,transparent 28.34% 55%,rgba(255,255,255,.035) 55.1% 55.22%,transparent 55.34%),
    radial-gradient(circle at 90% 90%,rgba(230,199,122,.06),transparent 28%);
}
.entry-card-coach p,
.entry-card-coach .entry-card-meta>span:first-child{color:#B7C1CB}
.entry-card-coach .entry-arrow{background:rgba(255,255,255,.08);color:#E6C77A;border:1px solid rgba(230,199,122,.24)}

/* CALL — white premium with target mark */
.entry-card-call{
  color:#08111F;
  background:
    radial-gradient(circle at 88% 14%,rgba(230,199,122,.14),transparent 27%),
    linear-gradient(145deg,#FFFFFF,#F7F9FB);
  border-color:rgba(8,17,31,.11);
}
.entry-card-call .entry-label{color:#74808C}
.entry-card-call .entry-card-bg{
  background:
    radial-gradient(circle at 84% 22%,transparent 0 54px,rgba(19,39,66,.045) 55px 56px,transparent 57px 86px),
    linear-gradient(90deg,transparent 49.8%,rgba(19,39,66,.035) 50%,transparent 50.2%);
  opacity:.9;
}
.entry-card-call p,
.entry-card-call .entry-card-meta>span:first-child{color:#63707D}
.entry-card-call .entry-card-meta{border-top-color:rgba(8,17,31,.10)}
.entry-card-call .entry-arrow{background:#08111F;color:#fff}
.entry-card-call .entry-watermark{color:#132742;opacity:.035}
.entry-time{
  display:flex;
  align-items:flex-start;
  gap:4px;
  margin-bottom:8px;
  font:900 clamp(56px,5.6vw,86px)/.8 "Archivo",sans-serif;
  letter-spacing:-.08em;
  color:#E6C77A;
}
.entry-time span{
  font-size:.42em;
  line-height:1;
  margin-top:2px;
}

@media(hover:hover) and (pointer:fine){
  .entry-card:hover{
    transform:translateY(-9px);
    box-shadow:0 28px 68px rgba(8,17,31,.14);
    border-color:rgba(230,199,122,.24);
  }
  .entry-card:hover::after{opacity:1}
  .entry-card:hover .entry-arrow{transform:translate(4px,-4px) rotate(3deg)}
  .entry-card-gym:hover .entry-arrow{background:#fff}
  .entry-card-coach:hover .entry-arrow{background:#E6C77A;color:#08111F}
  .entry-card-call:hover .entry-arrow{background:#132742}
}

/* staggered entry */
.entry-card{
  opacity:0;
  transform:translateY(30px);
}
.entry-gateway.is-visible .entry-card{
  opacity:1;
  transform:none;
  transition:
    opacity .75s var(--ease),
    transform .8s var(--ease),
    box-shadow .42s var(--ease),
    border-color .35s;
}
.entry-gateway.is-visible .entry-card:nth-child(2){transition-delay:.09s}
.entry-gateway.is-visible .entry-card:nth-child(3){transition-delay:.18s}

@media(max-width:980px){
  .entry-gateway-grid{
    grid-template-columns:1fr 1fr;
  }
  .entry-card-call{
    grid-column:1 / -1;
    min-height:240px;
  }
}
@media(max-width:680px){
  .entry-gateway{
    padding:22px 0 30px;
  }
  .entry-gateway-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  .entry-card,
  .entry-card-call{
    grid-column:auto;
    min-height:230px;
    padding:20px;
    border-radius:20px;
  }
  .entry-card-main{max-width:100%}
  .entry-watermark{
    font-size:58px;
    bottom:44px;
  }
}
@media(prefers-reduced-motion:reduce){
  .entry-card{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}


/* === V39 COMPACT PREMIUM ENTRY CARDS === */
.entry-gateway-compact{
  background:#fff;
  padding:24px 0 28px;
  position:relative;
  overflow:hidden;
}
.entry-gateway-compact::before{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 10% 0%,rgba(230,199,122,.07),transparent 22%),
    radial-gradient(circle at 90% 100%,rgba(19,39,66,.04),transparent 28%);
}
.entry-compact-grid{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr .86fr;
  gap:12px;
}
.entry-compact-card{
  min-height:150px;
  padding:20px 20px 18px;
  border-radius:18px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:16px;
  align-items:start;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(8,17,31,.08);
  background:#fff;
  box-shadow:0 12px 28px rgba(8,17,31,.055);
  transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s;
}
.entry-compact-card::before{
  content:"";
  position:absolute;inset:0;pointer-events:none;opacity:.8;
}
.entry-compact-gym::before{
  background:
    repeating-radial-gradient(ellipse at 92% 14%,transparent 0 32px,rgba(19,39,66,.035) 33px 34px,transparent 35px 54px),
    radial-gradient(circle at 8% 100%,rgba(230,199,122,.06),transparent 24%);
}
.entry-compact-coach::before{
  background:
    linear-gradient(118deg,transparent 0 34%,rgba(19,39,66,.03) 34.1% 34.2%,transparent 34.3% 66%,rgba(230,199,122,.045) 66.1% 66.2%,transparent 66.3%);
}
.entry-compact-time::before{
  background:
    radial-gradient(circle at 84% 30%,transparent 0 38px,rgba(19,39,66,.04) 39px 40px,transparent 41px 64px),
    radial-gradient(circle at 0% 100%,rgba(230,199,122,.07),transparent 22%);
}
.entry-compact-index{
  position:relative;z-index:2;
  font:900 24px/1 "Archivo",sans-serif;
  letter-spacing:-.05em;
  color:#E6C77A;
}
.entry-compact-copy{
  position:relative;z-index:2;
}
.entry-compact-copy h3{
  margin:0 0 8px;
  font:800 clamp(21px,1.7vw,28px)/1 "Archivo",sans-serif;
  letter-spacing:-.035em;
  color:#08111F;
}
.entry-compact-copy p{
  margin:0;
  max-width:390px;
  font:500 14px/1.45 "Archivo",sans-serif;
  color:#6A7784;
}
.entry-compact-arrow{
  position:relative;z-index:2;
  width:30px;height:30px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#08111F;
  color:#fff;
  font-size:13px;
  transition:transform .3s var(--ease),background .3s;
}
.entry-compact-card::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,#E6C77A,rgba(230,199,122,.05));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .55s var(--ease);
}
@media(hover:hover) and (pointer:fine){
  .entry-compact-card:hover{
    transform:translateY(-5px);
    box-shadow:0 18px 38px rgba(8,17,31,.09);
    border-color:rgba(230,199,122,.22);
  }
  .entry-compact-card:hover::after{transform:scaleX(1)}
  .entry-compact-card:hover .entry-compact-arrow{
    transform:translate(3px,-3px);
    background:#132742;
  }
}
@media(max-width:980px){
  .entry-compact-grid{grid-template-columns:1fr 1fr}
  .entry-compact-time{grid-column:1/-1}
}
@media(max-width:680px){
  .entry-gateway-compact{padding:18px 0 22px}
  .entry-compact-grid{grid-template-columns:1fr;gap:10px}
  .entry-compact-time{grid-column:auto}
  .entry-compact-card{
    min-height:132px;
    grid-template-columns:auto 1fr auto;
    padding:18px;
    border-radius:16px;
  }
  .entry-compact-copy h3{font-size:22px}
  .entry-compact-copy p{font-size:13px}
}


/* === V40 STATIC ENTRY CARDS === */
.entry-compact-card{
  cursor:default!important;
}
.entry-compact-arrow{
  opacity:.58;
}
@media(hover:hover) and (pointer:fine){
  .entry-compact-card:hover .entry-compact-arrow{
    transform:none!important;
  }
}


/* === V41 CLEAN STATIC ENTRY CARDS === */
.entry-gateway-compact .entry-compact-card{
  grid-template-columns:auto 1fr!important;
}
.entry-gateway-compact .entry-compact-arrow{
  display:none!important;
}
@media(max-width:680px){
  .entry-gateway-compact .entry-compact-card{
    grid-template-columns:auto 1fr!important;
  }
}


/* === V42 PREMIUM ENTRY ICONS === */
.entry-compact-icon{
  position:relative;
  z-index:2;
  width:40px;
  height:40px;
  border-radius:13px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,rgba(230,199,122,.16),rgba(230,199,122,.06));
  border:1px solid rgba(230,199,122,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .35s var(--ease),background .35s,border-color .35s;
}
.entry-compact-icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:#C9A94E;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  overflow:visible;
}
.entry-compact-icon .icon-fill{
  fill:#C9A94E;
  stroke:none;
}
@media(hover:hover) and (pointer:fine){
  .entry-compact-card:hover .entry-compact-icon{
    transform:translateY(-3px) rotate(-2deg);
    background:linear-gradient(145deg,rgba(230,199,122,.22),rgba(230,199,122,.08));
    border-color:rgba(230,199,122,.42);
  }
}
@media(max-width:680px){
  .entry-compact-icon{
    width:38px;
    height:38px;
    border-radius:12px;
  }
  .entry-compact-icon svg{
    width:22px;
    height:22px;
  }
}


/* === V43 SALARIED COACH ROUTING === */
.coach-salarie-route{
  margin-top:4px;
  margin-bottom:30px;
  padding:20px;
  border-radius:18px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 0%,rgba(230,199,122,.14),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  border:1px solid rgba(230,199,122,.28);
  box-shadow:0 16px 36px rgba(0,0,0,.12);
}
.coach-salarie-route[hidden]{display:none!important}
.coach-salarie-route::after{
  content:"";
  position:absolute;
  width:170px;height:170px;
  right:-90px;bottom:-100px;
  border-radius:50%;
  border:1px solid rgba(230,199,122,.10);
  box-shadow:0 0 0 28px rgba(230,199,122,.025);
  pointer-events:none;
}
.coach-salarie-route-icon{
  width:48px;height:48px;
  border-radius:14px;
  display:grid;place-items:center;
  background:rgba(230,199,122,.12);
  border:1px solid rgba(230,199,122,.30);
}
.coach-salarie-route-icon svg{
  width:25px;height:25px;
  fill:none;
  stroke:#E6C77A;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.coach-salarie-route-copy{
  position:relative;z-index:2;
}
.coach-salarie-route-copy span{
  display:block;
  margin-bottom:6px;
  font:800 9px/1 "Archivo",sans-serif;
  letter-spacing:.14em;
  color:#E6C77A;
}
.coach-salarie-route-copy strong{
  display:block;
  font:800 16px/1.25 "Archivo",sans-serif;
  color:#fff;
}
.coach-salarie-route-copy p{
  margin:7px 0 0;
  max-width:560px;
  color:#9eabb7;
  font-size:12px;
  line-height:1.45;
}
.coach-salarie-route-cta{
  position:relative;z-index:2;
  flex:0 0 auto;
  padding:12px 15px;
  border-radius:999px;
  background:#E6C77A;
  color:#08111F;
  font:800 10px/1 "Archivo",sans-serif;
  letter-spacing:.06em;
  white-space:nowrap;
  transition:transform .3s var(--ease),box-shadow .3s;
}
.coach-salarie-route-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(230,199,122,.12);
}
.coach-salarie-route.route-visible{
  animation:coachRouteIn .45s var(--ease) both;
}
@keyframes coachRouteIn{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:none}
}
@media(max-width:760px){
  .coach-salarie-route{
    grid-template-columns:auto 1fr;
    align-items:start;
  }
  .coach-salarie-route-cta{
    grid-column:1/-1;
    width:100%;
    text-align:center;
  }
}
@media(prefers-reduced-motion:reduce){
  .coach-salarie-route.route-visible{animation:none!important}
}


/* === V45 SALARIED COACH REQUIRED ROUTE === */
.coach-salarie-submit-lock{
  margin:0 0 14px;
  padding:15px 16px;
  border-radius:14px;
  background:rgba(230,199,122,.10);
  border:1px solid rgba(230,199,122,.28);
}
.coach-salarie-submit-lock[hidden]{display:none!important}
.coach-salarie-submit-lock strong{
  display:block;
  margin-bottom:5px;
  font:800 12px/1.2 "Archivo",sans-serif;
  color:#E6C77A;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.coach-salarie-submit-lock p{
  margin:0;
  color:#AEB8C3;
  font-size:12px;
  line-height:1.45;
}
.coach-submit.is-locked{
  opacity:.38!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
  filter:grayscale(.25);
}


/* =========================================================
   V46 — COACH FORM MOTION RESTORED
   Keeps V45 mandatory Émilie routing intact.
   ========================================================= */

.coach-form-card{
  overflow:hidden;
}

.coach-premium-form fieldset{
  opacity:0;
  transform:translateY(24px);
  transition:
    opacity .72s var(--ease),
    transform .82s var(--ease);
}

.coach-premium-form fieldset.form-step-visible{
  opacity:1;
  transform:none;
}

.coach-premium-form fieldset:nth-of-type(2){
  transition-delay:.08s;
}
.coach-premium-form fieldset:nth-of-type(3){
  transition-delay:.16s;
}

/* Inputs feel alive without being flashy */
.coach-premium-form input,
.coach-premium-form select,
.coach-premium-form textarea{
  transition:
    border-color .25s ease,
    background .25s ease,
    box-shadow .25s ease,
    transform .22s ease;
}

@media(hover:hover) and (pointer:fine){
  .coach-premium-form input:hover,
  .coach-premium-form select:hover,
  .coach-premium-form textarea:hover{
    border-color:rgba(230,199,122,.28);
  }
}

.coach-premium-form input:focus,
.coach-premium-form select:focus,
.coach-premium-form textarea:focus{
  transform:translateY(-1px);
}

/* Choice pills */
.coach-choice span{
  transition:
    transform .28s var(--ease),
    border-color .28s ease,
    background .28s ease,
    color .28s ease,
    box-shadow .28s ease;
}

@media(hover:hover) and (pointer:fine){
  .coach-choice:hover span{
    transform:translateY(-2px);
    border-color:rgba(230,199,122,.26);
  }
}

/* Route panel: real expand/collapse motion */
.coach-salarie-route{
  display:grid;
  max-height:0;
  opacity:0;
  transform:translateY(-8px) scale(.992);
  margin-top:0;
  margin-bottom:0;
  padding-top:0;
  padding-bottom:0;
  border-width:0;
  overflow:hidden;
  pointer-events:none;
  transition:
    max-height .58s var(--ease),
    opacity .38s ease,
    transform .5s var(--ease),
    margin .48s var(--ease),
    padding .48s var(--ease),
    border-width .2s ease;
}

.coach-salarie-route[hidden]{
  display:grid!important;
}

.coach-salarie-route.route-open{
  max-height:440px;
  opacity:1;
  transform:none;
  margin-top:4px;
  margin-bottom:30px;
  padding:20px;
  border-width:1px;
  pointer-events:auto;
}

/* Mandatory lock animates in instead of abruptly appearing */
.coach-salarie-submit-lock{
  display:block;
  max-height:0;
  opacity:0;
  overflow:hidden;
  margin:0;
  padding-top:0;
  padding-bottom:0;
  border-width:0;
  transform:translateY(-6px);
  transition:
    max-height .48s var(--ease),
    opacity .32s ease,
    transform .42s var(--ease),
    margin .42s var(--ease),
    padding .42s var(--ease),
    border-width .2s ease;
}

.coach-salarie-submit-lock[hidden]{
  display:block!important;
}

.coach-salarie-submit-lock.lock-open{
  max-height:180px;
  opacity:1;
  transform:none;
  margin:0 0 14px;
  padding:15px 16px;
  border-width:1px;
}

/* Submit button state transition */
.coach-submit{
  transition:
    opacity .28s ease,
    filter .28s ease,
    transform .28s var(--ease),
    background .28s ease,
    box-shadow .28s ease;
}

.coach-submit.is-locked{
  transform:scale(.985);
}

/* subtle animated gold rail around form on entry */
.coach-form-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  border:1px solid transparent;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent,rgba(230,199,122,.35),transparent)
    border-box;
  -webkit-mask:
    linear-gradient(#000 0 0) padding-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:0;
  transform:translateX(-100%);
}

.coach-form-card.form-motion-active::after{
  animation:coachFormRail 1.2s var(--ease) both;
}

@keyframes coachFormRail{
  0%{opacity:0;transform:translateX(-100%)}
  35%{opacity:.8}
  100%{opacity:0;transform:translateX(100%)}
}

@media(prefers-reduced-motion:reduce){
  .coach-premium-form fieldset,
  .coach-salarie-route,
  .coach-salarie-submit-lock,
  .coach-submit{
    transition:none!important;
    transform:none!important;
  }
  .coach-form-card.form-motion-active::after{
    animation:none!important;
  }
}


/* =========================================================
   V47 — V41 FORM MOTION LANGUAGE
   Same motion vocabulary on Coach + Homepage forms.
   Keeps mandatory Émilie routing intact.
   ========================================================= */

/* Shared form cards */
.coach-form-card,
.contact-form-card{
  position:relative;
  overflow:hidden;
  transform-style:preserve-3d;
  backface-visibility:hidden;
}

/* Entry state */
.coach-form-card,
.contact-form-card{
  opacity:0;
  transform:translateY(36px) scale(.985);
  filter:blur(7px);
  transition:
    opacity .82s var(--ease),
    transform .9s var(--ease),
    filter .8s var(--ease),
    box-shadow .35s var(--ease);
}

.coach-form-card.v41-form-visible,
.contact-form-card.v41-form-visible{
  opacity:1;
  transform:none;
  filter:none;
}

/* Fieldsets / rows stagger in like V41 blocks */
.coach-premium-form fieldset,
.premium-contact-form .form-row,
.premium-contact-form > label,
.premium-contact-form .consent-row,
.premium-contact-form .contact-submit,
.premium-contact-form .contact-note{
  opacity:0;
  transform:translateY(22px);
  filter:blur(4px);
  transition:
    opacity .68s var(--ease),
    transform .76s var(--ease),
    filter .68s var(--ease);
}

.coach-form-card.v41-form-visible .coach-premium-form fieldset,
.contact-form-card.v41-form-visible .premium-contact-form .form-row,
.contact-form-card.v41-form-visible .premium-contact-form > label,
.contact-form-card.v41-form-visible .premium-contact-form .consent-row,
.contact-form-card.v41-form-visible .premium-contact-form .contact-submit,
.contact-form-card.v41-form-visible .premium-contact-form .contact-note{
  opacity:1;
  transform:none;
  filter:none;
}

.coach-form-card.v41-form-visible .coach-premium-form fieldset:nth-of-type(1){transition-delay:.08s}
.coach-form-card.v41-form-visible .coach-premium-form fieldset:nth-of-type(2){transition-delay:.16s}
.coach-form-card.v41-form-visible .coach-premium-form fieldset:nth-of-type(3){transition-delay:.24s}

.contact-form-card.v41-form-visible .premium-contact-form .form-row:nth-of-type(1){transition-delay:.08s}
.contact-form-card.v41-form-visible .premium-contact-form .form-row:nth-of-type(2){transition-delay:.14s}
.contact-form-card.v41-form-visible .premium-contact-form > label:nth-of-type(1){transition-delay:.20s}
.contact-form-card.v41-form-visible .premium-contact-form > label:nth-of-type(2){transition-delay:.26s}
.contact-form-card.v41-form-visible .premium-contact-form .consent-row{transition-delay:.32s}
.contact-form-card.v41-form-visible .premium-contact-form .contact-submit{transition-delay:.38s}
.contact-form-card.v41-form-visible .premium-contact-form .contact-note{transition-delay:.44s}

/* Inputs: V41-style subtle lift and glow */
.coach-premium-form input,
.coach-premium-form select,
.coach-premium-form textarea,
.premium-contact-form input,
.premium-contact-form select,
.premium-contact-form textarea{
  transition:
    transform .22s ease,
    border-color .25s ease,
    background .25s ease,
    box-shadow .25s ease;
  transform:translateZ(0);
}

@media(hover:hover) and (pointer:fine){
  .coach-premium-form input:hover,
  .coach-premium-form select:hover,
  .coach-premium-form textarea:hover,
  .premium-contact-form input:hover,
  .premium-contact-form select:hover,
  .premium-contact-form textarea:hover{
    transform:translateY(-2px);
    border-color:rgba(230,199,122,.30);
  }
}

.coach-premium-form input:focus,
.coach-premium-form select:focus,
.coach-premium-form textarea:focus,
.premium-contact-form input:focus,
.premium-contact-form select:focus,
.premium-contact-form textarea:focus{
  transform:translateY(-2px);
  box-shadow:0 0 0 3px rgba(230,199,122,.10),0 12px 28px rgba(8,17,31,.08);
}

/* Choice pills */
.coach-choice span{
  transition:
    transform .28s var(--ease),
    border-color .28s ease,
    background .28s ease,
    color .28s ease,
    box-shadow .28s ease;
}
@media(hover:hover) and (pointer:fine){
  .coach-choice:hover span{
    transform:translateY(-3px);
    border-color:rgba(230,199,122,.30);
    box-shadow:0 10px 22px rgba(0,0,0,.08);
  }
}

/* Shared cursor-follow light on form cards */
.coach-form-card::before,
.contact-form-card::before{
  pointer-events:none;
}
.coach-form-card::after,
.contact-form-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    radial-gradient(circle at var(--form-x,50%) var(--form-y,50%),
    rgba(230,199,122,.11),transparent 28%);
  opacity:0;
  transition:opacity .35s ease;
  z-index:0;
}
@media(hover:hover) and (pointer:fine){
  .coach-form-card:hover::after,
  .contact-form-card:hover::after{
    opacity:1;
  }
}
.coach-form-card > *,
.contact-form-card > *{
  position:relative;
  z-index:1;
}

/* Émilie route keeps same motion vocabulary */
.coach-salarie-route{
  display:grid;
  max-height:0;
  opacity:0;
  transform:translateY(14px) scale(.985);
  filter:blur(4px);
  margin-top:0;
  margin-bottom:0;
  padding-top:0;
  padding-bottom:0;
  border-width:0;
  overflow:hidden;
  pointer-events:none;
  transition:
    max-height .64s var(--ease),
    opacity .46s var(--ease),
    transform .56s var(--ease),
    filter .46s var(--ease),
    margin .5s var(--ease),
    padding .5s var(--ease),
    border-width .2s ease;
}
.coach-salarie-route[hidden]{
  display:grid!important;
}
.coach-salarie-route.route-open{
  max-height:460px;
  opacity:1;
  transform:none;
  filter:none;
  margin-top:4px;
  margin-bottom:30px;
  padding:20px;
  border-width:1px;
  pointer-events:auto;
}

/* Mandatory lock appears smoothly */
.coach-salarie-submit-lock{
  display:block;
  max-height:0;
  opacity:0;
  transform:translateY(10px);
  filter:blur(3px);
  overflow:hidden;
  margin:0;
  padding-top:0;
  padding-bottom:0;
  border-width:0;
  transition:
    max-height .5s var(--ease),
    opacity .36s var(--ease),
    transform .44s var(--ease),
    filter .36s var(--ease),
    margin .44s var(--ease),
    padding .44s var(--ease),
    border-width .2s ease;
}
.coach-salarie-submit-lock[hidden]{
  display:block!important;
}
.coach-salarie-submit-lock.lock-open{
  max-height:190px;
  opacity:1;
  transform:none;
  filter:none;
  margin:0 0 14px;
  padding:15px 16px;
  border-width:1px;
}

/* Submit button remains animated even when disabled */
.coach-submit,
.contact-submit{
  transition:
    transform .28s var(--ease),
    opacity .28s ease,
    filter .28s ease,
    box-shadow .28s ease,
    background .28s ease;
}
@media(hover:hover) and (pointer:fine){
  .coach-submit:not(.is-locked):hover,
  .contact-submit:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 30px rgba(230,199,122,.13);
  }
}
.coach-submit.is-locked{
  transform:scale(.985);
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .coach-form-card,
  .contact-form-card,
  .coach-premium-form fieldset,
  .premium-contact-form .form-row,
  .premium-contact-form > label,
  .premium-contact-form .consent-row,
  .premium-contact-form .contact-submit,
  .premium-contact-form .contact-note,
  .coach-salarie-route,
  .coach-salarie-submit-lock{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
  }
}


/* =========================================================
   V48 — EXACT V41 FORM 3D TILT
   ONLY this hover effect is added.
   ========================================================= */
.coach-form-card,
.contact-form-card{
  transform-style:preserve-3d;
  backface-visibility:hidden;
  will-change:transform;
}

@media(hover:hover) and (pointer:fine){
  .coach-form-card,
  .contact-form-card{
    transition:
      transform .34s cubic-bezier(.22,.8,.25,1),
      box-shadow .34s ease;
  }

  .coach-form-card.form-tilt-active,
  .contact-form-card.form-tilt-active{
    box-shadow:0 34px 90px rgba(8,17,31,.20);
  }
}

@media(prefers-reduced-motion:reduce){
  .coach-form-card,
  .contact-form-card{
    transform:none!important;
  }
}


/* V49 — restore ONLY the yellow cursor-follow glow */
.coach-form-card,
.contact-form-card{
  --cursor-x:50%;
  --cursor-y:50%;
}

.coach-form-card .form-cursor-glow,
.contact-form-card .form-cursor-glow{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  overflow:hidden;
}

.coach-form-card .form-cursor-glow::before,
.contact-form-card .form-cursor-glow::before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  left:var(--cursor-x);
  top:var(--cursor-y);
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(
    circle,
    rgba(230,199,122,.24) 0%,
    rgba(230,199,122,.12) 24%,
    rgba(230,199,122,.045) 48%,
    rgba(230,199,122,0) 72%
  );
  opacity:0;
  transition:opacity .22s ease;
  filter:blur(4px);
}

@media(hover:hover) and (pointer:fine){
  .coach-form-card.form-tilt-active .form-cursor-glow::before,
  .contact-form-card.form-tilt-active .form-cursor-glow::before{
    opacity:1;
  }
}

.coach-form-card > *:not(.form-cursor-glow),
.contact-form-card > *:not(.form-cursor-glow){
  position:relative;
  z-index:1;
}


/* V50 — restore ONLY V41 global block hover motion */
@media(hover:hover) and (pointer:fine){
  .motion-card:not(.coach-form-card):not(.contact-form-card),
  .card:not(.coach-form-card):not(.contact-form-card),
  .step,
  .motion-media{
    transform-style:preserve-3d;
    backface-visibility:hidden;
    will-change:transform;
    transition:
      transform .34s cubic-bezier(.22,.8,.25,1),
      box-shadow .34s ease,
      border-color .34s ease;
  }
}
@media(prefers-reduced-motion:reduce){
  .motion-card:not(.coach-form-card):not(.contact-form-card),
  .card:not(.coach-form-card):not(.contact-form-card),
  .step,
  .motion-media{
    transform:none!important;
  }
}


/* V55 — ONLY align the "Première étape" supporting sentence */
.first-step-copy{
  max-width:980px!important;
  width:72%!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-wrap:balance;
}
@media(max-width:1000px){
  .first-step-copy{
    width:82%!important;
    max-width:760px!important;
  }
}
@media(max-width:700px){
  .first-step-copy{
    width:100%!important;
    max-width:100%!important;
    text-wrap:pretty;
  }
}


/* === V56 ADDITIONS ONLY === */
.coach-axis-section{position:relative;overflow:hidden;background:radial-gradient(circle at 88% 12%,rgba(230,199,122,.08),transparent 24%),#08111F}
.coach-axis-orbit{position:absolute;width:720px;height:720px;left:-370px;bottom:-430px;border-radius:50%;border:1px solid rgba(230,199,122,.045);box-shadow:0 0 0 72px rgba(255,255,255,.012),0 0 0 144px rgba(230,199,122,.012);pointer-events:none}
.coach-axis-lead{max-width:820px}
.coach-axis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:38px}
.coach-axis-card{min-height:300px;border-radius:22px;padding:24px;position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012));border:1px solid rgba(255,255,255,.08)}
.coach-axis-card::before{content:"";position:absolute;width:210px;height:210px;right:-90px;top:-100px;border-radius:50%;border:1px solid rgba(230,199,122,.08);box-shadow:0 0 0 36px rgba(230,199,122,.018)}
.coach-axis-index{font:900 13px/1 "Archivo",sans-serif;letter-spacing:.15em;color:#E6C77A}
.coach-axis-icon{margin-top:44px;font:500 42px/1 "Archivo",sans-serif;color:#E6C77A}
.coach-axis-card h3{margin:18px 0 12px;font:900 clamp(24px,2.1vw,34px)/1 "Archivo",sans-serif;letter-spacing:-.045em}
.coach-axis-card p{margin:0;color:#aeb8c3;line-height:1.55}
.coach-axis-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}
.coach-axis-tags span{padding:7px 9px;border-radius:999px;border:1px solid rgba(230,199,122,.14);font:700 9px/1 "Archivo",sans-serif;letter-spacing:.08em;color:#d8c586}

.coach-modules-section{position:relative;overflow:hidden}
.coach-modules-head{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:end;margin-bottom:34px}
.coach-module-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.coach-module{min-height:165px;padding:20px;border-radius:18px;border:1px solid rgba(8,17,31,.09);background:radial-gradient(circle at 94% 6%,rgba(230,199,122,.09),transparent 24%),#fff;display:flex;flex-direction:column}
.coach-module>span{font:900 26px/1 "Archivo",sans-serif;color:#E6C77A;letter-spacing:-.05em}
.coach-module strong{margin-top:24px;font:800 16px/1.2 "Archivo",sans-serif;color:#08111F}
.coach-module small{margin-top:8px;color:#697682;font-size:12px;line-height:1.45}

.coach-fit-section{position:relative;overflow:hidden;background:#0A1728}
.coach-fit-section::before{content:"";position:absolute;inset:-20%;pointer-events:none;opacity:.48;background:repeating-radial-gradient(ellipse at 88% 42%,transparent 0 62px,rgba(255,255,255,.028) 63px 64px,transparent 65px 100px);transform:rotate(6deg)}
.coach-fit-section>.container{position:relative;z-index:2}
.coach-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:34px}
.coach-fit-panel{border-radius:22px;padding:26px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.coach-fit-kicker{font:800 10px/1 "Archivo",sans-serif;letter-spacing:.16em;color:#E6C77A}
.coach-fit-panel ul{margin:24px 0 0;padding:0;list-style:none}
.coach-fit-panel li{padding:15px 0 15px 26px;border-top:1px solid rgba(255,255,255,.07);color:#c1c9d1;line-height:1.45;position:relative}
.coach-fit-panel li::before{content:"✓";position:absolute;left:0;top:15px;color:#E6C77A;font-weight:900}
.coach-fit-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.coach-fit-context-grid>div{min-height:120px;padding:16px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06)}
.coach-fit-context-grid b{display:block;color:#fff;font-size:13px;margin-bottom:8px}
.coach-fit-context-grid span{color:#96a3af;font-size:12px;line-height:1.45}
.coach-trust-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:14px;border:1px solid rgba(255,255,255,.08);border-radius:18px;overflow:hidden}
.coach-trust-strip>span{padding:18px;border-right:1px solid rgba(255,255,255,.07)}
.coach-trust-strip>span:last-child{border-right:0}
.coach-trust-strip b{display:block;color:#E6C77A;font-size:13px}
.coach-trust-strip small{display:block;color:#91a0ad;margin-top:6px;line-height:1.35}

.home-human-system{position:relative;overflow:hidden}
.human-system-map{position:absolute;width:650px;height:650px;right:-320px;top:-300px;border-radius:50%;border:1px solid rgba(19,39,66,.04);box-shadow:0 0 0 66px rgba(19,39,66,.012),0 0 0 132px rgba(230,199,122,.014)}
.human-system-head{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:40px}
.human-system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px}
.human-system-card{min-height:230px;padding:22px;border-radius:20px;background:#fff;border:1px solid rgba(8,17,31,.09);box-shadow:0 16px 38px rgba(8,17,31,.055);position:relative;overflow:hidden}
.human-system-card>span{font:900 11px/1 "Archivo",sans-serif;color:#E6C77A;letter-spacing:.14em}
.human-system-icon{margin-top:34px;font-size:34px;color:#C9A94E}
.human-system-card h3{margin:15px 0 10px;font:900 clamp(20px,1.8vw,29px)/1 "Archivo",sans-serif;letter-spacing:-.04em;color:#08111F}
.human-system-card p{margin:0;color:#687581;line-height:1.5}

.home-coach-preview{position:relative;overflow:hidden;background:radial-gradient(circle at 88% 18%,rgba(230,199,122,.09),transparent 26%),#08111F}
.home-coach-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.home-coach-preview h2 em{color:#E6C77A;font-style:normal}
.home-coach-preview-rail{display:grid;gap:10px}
.home-coach-mini{min-height:115px;padding:18px 20px;border-radius:17px;display:grid;grid-template-columns:52px 1fr;align-items:center;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.home-coach-mini>span{grid-row:1/3;font:900 26px/1 "Archivo",sans-serif;color:#E6C77A}
.home-coach-mini strong{color:#fff;font:800 15px/1.2 "Archivo",sans-serif;letter-spacing:.04em}
.home-coach-mini p{margin:5px 0 0;color:#8f9daa;font-size:12px}

.public-reviews-section{position:relative;overflow:hidden;background:#F7F8FA;border-top:1px solid rgba(8,17,31,.07)}
.public-reviews-section::before{content:"";position:absolute;width:700px;height:500px;right:-300px;top:-260px;background:repeating-radial-gradient(ellipse at center,transparent 0 46px,rgba(19,39,66,.04) 47px 48px,transparent 49px 76px);transform:rotate(8deg);opacity:.55}
.public-reviews-section>.container{position:relative;z-index:2}
.public-reviews-head{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}
.public-review-rating{text-align:right;padding-bottom:8px}
.review-stars{display:block;color:#E6C77A;font-size:22px;letter-spacing:.08em}
.public-review-rating strong{display:block;margin-top:8px;font:800 10px/1 "Archivo",sans-serif;letter-spacing:.14em;color:#08111F}
.public-review-rating small{display:block;margin-top:6px;color:#7d8995}
.public-reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}
.public-review-card{min-height:270px;padding:22px;border-radius:20px;background:#fff;border:1px solid rgba(8,17,31,.08);box-shadow:0 15px 36px rgba(8,17,31,.055);display:flex;flex-direction:column;justify-content:space-between}
.public-review-source{display:flex;align-items:center;justify-content:space-between;gap:12px}
.public-review-source span{font:800 9px/1 "Archivo",sans-serif;letter-spacing:.14em;color:#7e8a96}
.public-review-source b{color:#E6C77A;letter-spacing:.05em}
.public-review-card blockquote{margin:28px 0;font:700 clamp(17px,1.35vw,21px)/1.5 "Archivo",sans-serif;color:#152334}
.public-review-card footer{padding-top:16px;border-top:1px solid rgba(8,17,31,.08)}
.public-review-card footer strong{display:block;color:#08111F}
.public-review-card footer span{display:block;color:#7b8793;font-size:11px;margin-top:5px}
.public-reviews-note{margin:18px 0 0;color:#88939d;font-size:11px;line-height:1.45}

@media(max-width:900px){
  .coach-axis-grid,.coach-module-list,.human-system-grid,.public-reviews-grid{grid-template-columns:1fr 1fr}
  .coach-modules-head,.human-system-head,.home-coach-preview-grid{grid-template-columns:1fr}
  .coach-fit-grid{grid-template-columns:1fr}
  .coach-trust-strip{grid-template-columns:1fr 1fr}
  .public-reviews-head{grid-template-columns:1fr}
  .public-review-rating{text-align:left}
}
@media(max-width:640px){
  .coach-axis-grid,.coach-module-list,.human-system-grid,.public-reviews-grid{grid-template-columns:1fr}
  .coach-fit-context-grid{grid-template-columns:1fr}
  .coach-trust-strip{grid-template-columns:1fr}
  .coach-trust-strip>span{border-right:0;border-bottom:1px solid rgba(255,255,255,.07)}
  .coach-trust-strip>span:last-child{border-bottom:0}
}


/* =========================================================
   V58 — ONLY Zone 06 + FAQ + Home Reviews
   ========================================================= */

/* --- ZONE 06 / SCENARIO LAB --- */
.coach-scenario-lab{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 10%,rgba(230,199,122,.08),transparent 23%),
    #F7F8FA;
}
.scenario-lab-grid{
  position:absolute;
  inset:0;
  opacity:.52;
  pointer-events:none;
  background:
    linear-gradient(rgba(8,17,31,.032) 1px,transparent 1px),
    linear-gradient(90deg,rgba(8,17,31,.032) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(to bottom,black,transparent 88%);
}
.scenario-lab-head{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  align-items:end;
  gap:54px;
  margin-bottom:34px;
}
.scenario-lab-intro{
  padding-bottom:8px;
}
.scenario-lab-signal{
  display:block;
  margin-bottom:14px;
  font:800 10px/1 "Archivo",sans-serif;
  letter-spacing:.16em;
  color:#C9A94E;
}
.scenario-lab-intro p{
  margin:0;
  font:600 clamp(17px,1.45vw,22px)/1.55 "Archivo",sans-serif;
  color:#566372;
}
.scenario-stage{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.scenario-card{
  min-height:370px;
  padding:22px;
  border-radius:24px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:
    linear-gradient(150deg,rgba(255,255,255,.98),rgba(248,250,252,.94));
  border:1px solid rgba(8,17,31,.10);
  box-shadow:0 16px 40px rgba(8,17,31,.06);
  clip-path:inset(0 0 0 0 round 24px);
  transition:
    transform .42s cubic-bezier(.2,.75,.2,1),
    box-shadow .42s ease,
    border-color .32s ease;
}
.scenario-card-featured{
  grid-column:span 2;
  background:
    radial-gradient(circle at 84% 18%,rgba(230,199,122,.16),transparent 27%),
    linear-gradient(145deg,#08111F,#132742);
  color:#fff;
  border-color:rgba(230,199,122,.18);
}
.scenario-card-light{
  position:absolute;
  width:420px;
  height:420px;
  left:var(--spot-x,50%);
  top:var(--spot-y,50%);
  transform:translate(-50%,-50%);
  pointer-events:none;
  border-radius:50%;
  opacity:0;
  background:radial-gradient(circle,rgba(230,199,122,.19),rgba(230,199,122,.06) 32%,transparent 68%);
  filter:blur(5px);
  transition:opacity .24s ease;
}
.scenario-card-top,
.scenario-card-body,
.scenario-card-foot{position:relative;z-index:2}
.scenario-card-top{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
}
.scenario-number{
  font:900 42px/.9 "Archivo",sans-serif;
  letter-spacing:-.06em;
  color:#E6C77A;
}
.scenario-state{
  padding:7px 9px;
  border-radius:999px;
  background:rgba(8,17,31,.045);
  border:1px solid rgba(8,17,31,.08);
  font:800 8px/1 "Archivo",sans-serif;
  letter-spacing:.13em;
  color:#667381;
}
.scenario-card-featured .scenario-state{
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.09);
  color:#bec7d0;
}
.scenario-card-body{margin-top:58px}
.scenario-moment{
  display:block;
  margin-bottom:13px;
  font:800 9px/1 "Archivo",sans-serif;
  letter-spacing:.14em;
  color:#C9A94E;
}
.scenario-card h3{
  margin:0;
  font:900 clamp(24px,2vw,34px)/1.02 "Archivo",sans-serif;
  letter-spacing:-.045em;
  color:#08111F;
}
.scenario-card-featured h3{color:#fff;font-size:clamp(30px,3vw,48px)}
.scenario-card p{
  margin:16px 0 0;
  color:#657280;
  font-size:13px;
  line-height:1.55;
  max-width:620px;
}
.scenario-card-featured p{color:#b4bec8;font-size:14px}
.scenario-card-foot{
  display:flex;gap:7px;flex-wrap:wrap;margin-top:28px;
}
.scenario-card-foot span{
  padding:7px 9px;border-radius:999px;
  border:1px solid rgba(8,17,31,.09);
  font:700 8px/1 "Archivo",sans-serif;
  letter-spacing:.08em;
  color:#677482;
}
.scenario-card-featured .scenario-card-foot span{
  border-color:rgba(230,199,122,.16);
  color:#d9c98e;
}
.scenario-lab-close{
  position:relative;z-index:2;
  margin-top:14px;
  padding:18px 20px;
  border-radius:18px;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:18px;
  background:#08111F;
  color:#fff;
}
.scenario-lab-close-index{
  font:900 24px/1 "Archivo",sans-serif;
  color:#E6C77A;
}
.scenario-lab-close p{margin:0;color:#aeb8c2;line-height:1.5}

/* unique reveal: cinematic clip-mask sweep */
.scenario-card.scenario-mask-ready{
  clip-path:inset(0 100% 0 0 round 24px);
  opacity:.55;
}
.scenario-card.scenario-mask-in{
  animation:scenarioMaskReveal .95s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes scenarioMaskReveal{
  0%{clip-path:inset(0 100% 0 0 round 24px);opacity:.55;transform:translateY(18px)}
  65%{opacity:1}
  100%{clip-path:inset(0 0 0 0 round 24px);opacity:1;transform:none}
}
@media(hover:hover) and (pointer:fine){
  .scenario-card:hover{
    transform:translateY(-9px) scale(1.012);
    border-color:rgba(230,199,122,.30);
    box-shadow:0 28px 70px rgba(8,17,31,.13);
  }
  .scenario-card:hover .scenario-card-light{opacity:1}
}

/* --- FAQ PREMIUM --- */
.faq-premium-section{
  position:relative;
  overflow:hidden;
  background:#fff;
}
.faq-orbit{
  position:absolute;
  width:580px;height:580px;
  right:-330px;top:-280px;
  border-radius:50%;
  border:1px solid rgba(19,39,66,.045);
  box-shadow:
    0 0 0 62px rgba(19,39,66,.012),
    0 0 0 124px rgba(230,199,122,.014);
}
.faq-premium-head{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:end;
  gap:46px;
  margin-bottom:32px;
}
.faq-premium-head .lead{max-width:600px}
.faq-premium{
  position:relative;z-index:2;
  border-top:1px solid rgba(8,17,31,.10);
}
.faq-item{
  border-bottom:1px solid rgba(8,17,31,.10);
}
.faq-question{
  width:100%;
  padding:22px 2px;
  display:grid;
  grid-template-columns:48px 1fr 42px;
  align-items:center;
  gap:18px;
  border:0;
  background:transparent;
  text-align:left;
  cursor:pointer;
}
.faq-num{
  font:900 20px/1 "Archivo",sans-serif;
  color:#E6C77A;
}
.faq-title{
  font:800 clamp(17px,1.5vw,22px)/1.3 "Archivo",sans-serif;
  color:#08111F;
}
.faq-toggle{
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  justify-self:end;
  background:#08111F;
  color:#fff;
  font:400 22px/1 Arial,sans-serif;
  transition:transform .38s cubic-bezier(.2,.8,.2,1),background .3s;
}
.faq-question[aria-expanded="true"] .faq-toggle{
  transform:rotate(45deg);
  background:#E6C77A;
  color:#08111F;
}
.faq-answer{
  display:grid;
  grid-template-rows:0fr;
  opacity:0;
  transition:grid-template-rows .48s cubic-bezier(.2,.8,.2,1),opacity .35s ease;
}
.faq-answer[hidden]{display:grid!important}
.faq-item.is-open .faq-answer{
  grid-template-rows:1fr;
  opacity:1;
}
.faq-answer-inner{
  min-height:0;
  overflow:hidden;
  padding:0 60px 0 66px;
  color:#657280;
  font-size:14px;
  line-height:1.65;
}
.faq-item.is-open .faq-answer-inner{
  padding-bottom:24px;
}
@media(hover:hover) and (pointer:fine){
  .faq-question:hover .faq-title{color:#132742}
  .faq-question:hover .faq-num{transform:translateX(4px)}
  .faq-num{transition:transform .28s ease}
}

/* --- HOME WALL OF LOVE --- */
.love-wall-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 12%,rgba(230,199,122,.10),transparent 25%),
    #08111F;
}
.love-wall-map{
  position:absolute;
  inset:-15%;
  opacity:.35;
  pointer-events:none;
  background:
    repeating-radial-gradient(ellipse at 84% 48%,transparent 0 56px,rgba(255,255,255,.03) 57px 58px,transparent 59px 92px);
  transform:rotate(7deg);
}
.love-wall-head{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:1fr auto;
  gap:36px;
  align-items:end;
}
.love-wall-head h2{color:#fff}
.love-wall-proof{
  max-width:390px;
  padding-bottom:8px;
}
.love-wall-proof-stars{
  display:block;
  margin-bottom:10px;
  color:#E6C77A;
  font-size:21px;
  letter-spacing:.09em;
}
.love-wall-proof strong{
  display:block;
  font:800 10px/1 "Archivo",sans-serif;
  letter-spacing:.14em;
  color:#fff;
}
.love-wall-proof p{
  margin:9px 0 0;
  color:#9ba8b5;
  font-size:13px;
  line-height:1.5;
}
.love-wall-window{
  position:relative;
  z-index:2;
  margin-top:34px;
  width:100%;
  overflow:hidden;
  padding:10px 0 14px;
  mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent);
}
.love-wall-row{
  overflow:hidden;
  padding:9px 0;
}
.love-wall-track{
  display:flex;
  width:max-content;
  gap:14px;
  will-change:transform;
}
.love-wall-row-a .love-wall-track{
  animation:loveWallLeft 78s linear infinite;
}
.love-wall-row-b .love-wall-track{
  animation:loveWallRight 86s linear infinite;
}
@keyframes loveWallLeft{to{transform:translateX(-50%)}}
@keyframes loveWallRight{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.love-card{
  width:clamp(270px,24vw,380px);
  flex:0 0 auto;
  margin:0;
  padding:10px;
  border-radius:22px;
  background:rgba(255,255,255,.965);
  box-shadow:0 18px 44px rgba(0,0,0,.22);
  transform:rotate(var(--love-tilt));
  transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s;
}
.love-card-media{
  overflow:hidden;
  border-radius:15px;
  background:#f5f5f5;
}
.love-card img{
  width:100%;
  height:auto;
  display:block;
}
.love-card figcaption{
  padding:11px 4px 3px;
  display:flex;
  justify-content:space-between;
  gap:12px;
}
.love-card figcaption span{
  font:800 8px/1 "Archivo",sans-serif;
  letter-spacing:.14em;
  color:#7a8793;
}
.love-card figcaption b{
  color:#E6C77A;
  font-size:10px;
  letter-spacing:.05em;
}
.love-wall-close{
  position:relative;z-index:2;
  margin-top:18px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:30px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.08);
}
.love-wall-close span{
  font:800 9px/1.4 "Archivo",sans-serif;
  letter-spacing:.12em;
  color:#E6C77A;
}
.love-wall-close p{
  margin:0;
  max-width:600px;
  color:#8896a4;
  font-size:11px;
  line-height:1.55;
}
@media(hover:hover) and (pointer:fine){
  .love-wall-row:hover .love-wall-track{animation-play-state:paused}
  .love-card:hover{
    transform:rotate(0deg) translateY(-10px) scale(1.025);
    box-shadow:0 32px 72px rgba(0,0,0,.32);
    z-index:4;
  }
}

@media(max-width:900px){
  .scenario-lab-head,.faq-premium-head,.love-wall-head{grid-template-columns:1fr}
  .scenario-stage{grid-template-columns:1fr 1fr}
  .scenario-card-featured{grid-column:span 2}
  .love-wall-proof{max-width:100%}
}
@media(max-width:640px){
  .scenario-stage{grid-template-columns:1fr}
  .scenario-card-featured{grid-column:auto}
  .scenario-card{min-height:330px}
  .faq-question{grid-template-columns:36px 1fr 34px;gap:10px;padding:19px 0}
  .faq-answer-inner{padding-left:46px;padding-right:18px}
  .love-wall-close{flex-direction:column}
  .love-card{width:78vw}
}
@media(prefers-reduced-motion:reduce){
  .scenario-card.scenario-mask-ready,
  .scenario-card.scenario-mask-in{
    clip-path:none!important;opacity:1!important;transform:none!important;animation:none!important;
  }
  .love-wall-track{animation:none!important}
}


/* =========================================================
   V59 — ONLY fix Scenario Lab grid balance
   ========================================================= */
@media(min-width:901px){
  .coach-scenario-lab .scenario-stage{
    grid-template-columns:repeat(12,minmax(0,1fr))!important;
    gap:12px!important;
  }

  .coach-scenario-lab .scenario-card-featured{
    grid-column:span 8!important;
  }

  .coach-scenario-lab .scenario-card:nth-child(2){
    grid-column:span 4!important;
  }

  .coach-scenario-lab .scenario-card:nth-child(n+3){
    grid-column:span 3!important;
  }

  .coach-scenario-lab .scenario-card:nth-child(n+3){
    min-height:330px!important;
  }
}

@media(min-width:641px) and (max-width:900px){
  .coach-scenario-lab .scenario-stage{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .coach-scenario-lab .scenario-card-featured{
    grid-column:1 / -1!important;
  }
}

@media(max-width:640px){
  .coach-scenario-lab .scenario-stage{
    grid-template-columns:1fr!important;
  }

  .coach-scenario-lab .scenario-card,
  .coach-scenario-lab .scenario-card-featured{
    grid-column:auto!important;
  }
}


/* =========================================================
   V60 — ONLY Zone 06 + Zone 09 rebuild
   ========================================================= */

/* ZONE 06 — guaranteed visible, no reveal dependency */
.coach-scenario-v60{position:relative;overflow:hidden;background:#fff}
.scenario-v60-bg{position:absolute;inset:0;pointer-events:none;background:
radial-gradient(circle at 8% 16%,rgba(230,199,122,.10),transparent 22%),
linear-gradient(rgba(8,17,31,.025) 1px,transparent 1px),
linear-gradient(90deg,rgba(8,17,31,.025) 1px,transparent 1px);background-size:auto,56px 56px,56px 56px;mask-image:linear-gradient(#000,transparent 94%)}
.scenario-v60-head{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:46px}
.scenario-v60-head h2{margin:0;color:#08111F}
.scenario-v60-intro span{display:block;color:#C9A94E;font:800 10px/1 Archivo,sans-serif;letter-spacing:.16em;margin-bottom:14px}
.scenario-v60-intro p{margin:0;color:#566372;font:600 clamp(16px,1.4vw,21px)/1.55 Archivo,sans-serif}
.scenario-v60-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.scenario-v60-card{min-height:330px;border:1px solid rgba(8,17,31,.10);border-radius:24px;padding:26px;display:flex;flex-direction:column;background:rgba(255,255,255,.94);box-shadow:0 18px 50px rgba(8,17,31,.055);position:relative;overflow:hidden;opacity:1!important;visibility:visible!important;transform:none}
.scenario-v60-card:before{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(8,17,31,.055);border-radius:50%;right:-90px;top:-100px;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.scenario-v60-dark{grid-column:span 2;background:linear-gradient(145deg,#08111F,#132742);color:#fff;border-color:rgba(230,199,122,.18)}
.scenario-v60-gold{background:linear-gradient(145deg,#E6C77A,#f0d994)}
.scenario-v60-top{display:flex;justify-content:space-between;align-items:center;gap:15px;position:relative;z-index:1}
.scenario-v60-top b{font:900 38px/.9 Archivo,sans-serif;color:#E6C77A;letter-spacing:-.06em}
.scenario-v60-gold .scenario-v60-top b{color:#08111F}
.scenario-v60-top span{font:800 9px/1 Archivo,sans-serif;letter-spacing:.13em;color:#788493;text-align:right}
.scenario-v60-dark .scenario-v60-top span{color:#aeb8c2}
.scenario-v60-card h3{position:relative;z-index:1;margin:auto 0 12px;font:900 clamp(25px,2.1vw,36px)/1.02 Archivo,sans-serif;letter-spacing:-.045em;color:#08111F}
.scenario-v60-dark h3{color:#fff;font-size:clamp(31px,3vw,50px)}
.scenario-v60-card p{position:relative;z-index:1;margin:0;color:#657280;font-size:13px;line-height:1.55;max-width:680px}
.scenario-v60-dark p{color:#b8c2cc;font-size:14px}
.scenario-v60-gold p{color:#263444}
.scenario-v60-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:24px;position:relative;z-index:1}
.scenario-v60-tags i{font-style:normal;font:700 8px/1 Archivo,sans-serif;letter-spacing:.08em;border:1px solid rgba(8,17,31,.10);border-radius:99px;padding:7px 9px;color:#687583}
.scenario-v60-dark .scenario-v60-tags i{border-color:rgba(230,199,122,.20);color:#d9c98e}
.scenario-v60-gold .scenario-v60-tags i{border-color:rgba(8,17,31,.18);color:#08111F}
@media(hover:hover) and (pointer:fine){
.scenario-v60-card{transition:transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .42s ease,border-color .3s ease}
.scenario-v60-card:hover{transform:translateY(-8px);box-shadow:0 30px 75px rgba(8,17,31,.13);border-color:rgba(230,199,122,.4)}
.scenario-v60-card:hover:before{transform:scale(1.35) rotate(18deg)}
}

/* ZONE 09 — impact operating system */
.coach-impact-v60{position:relative;overflow:hidden;background:#08111F;color:#fff}
.coach-impact-v60-orbit{position:absolute;width:760px;height:760px;border:1px solid rgba(230,199,122,.08);border-radius:50%;right:-260px;top:-310px;box-shadow:0 0 0 90px rgba(230,199,122,.025),0 0 0 180px rgba(230,199,122,.018);pointer-events:none}
.coach-impact-v60-head{max-width:1050px;position:relative;z-index:1}
.coach-impact-v60-head h2{color:#fff;margin-bottom:24px}
.coach-impact-v60-head>p:last-child{max-width:780px;color:#aeb8c2;font-size:clamp(17px,1.45vw,22px);line-height:1.55}
.coach-impact-v60-board{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr repeat(3,.75fr);margin-top:52px;border:1px solid rgba(255,255,255,.10);border-radius:28px;overflow:hidden;background:rgba(255,255,255,.025)}
.coach-impact-v60-core,.coach-impact-v60-pillar{padding:34px;min-height:330px}
.coach-impact-v60-core{background:linear-gradient(145deg,rgba(19,39,66,.96),rgba(8,17,31,.96));display:flex;flex-direction:column;justify-content:flex-end}
.coach-impact-v60-kicker{font:800 9px/1 Archivo,sans-serif;letter-spacing:.16em;color:#E6C77A;margin-bottom:auto}
.coach-impact-v60-core strong{font:900 clamp(30px,3vw,48px)/.98 Archivo,sans-serif;letter-spacing:-.045em}
.coach-impact-v60-core p,.coach-impact-v60-pillar p{color:#aeb8c2;line-height:1.55;margin:16px 0 0}
.coach-impact-v60-pillar{border-left:1px solid rgba(255,255,255,.09);display:flex;flex-direction:column;justify-content:flex-end;transition:background .35s ease}
.coach-impact-v60-pillar span{margin-bottom:auto;color:#E6C77A;font:900 28px/1 Archivo,sans-serif}
.coach-impact-v60-pillar h3{font:900 26px/1 Archivo,sans-serif;margin:0;color:#fff}
.coach-impact-v60-result{position:relative;z-index:1;margin-top:14px;padding:24px 28px;border:1px solid rgba(230,199,122,.18);border-radius:20px;display:grid;grid-template-columns:130px 1fr;gap:20px;align-items:center}
.coach-impact-v60-result span{color:#E6C77A;font:800 10px/1 Archivo,sans-serif;letter-spacing:.15em}
.coach-impact-v60-result p{margin:0;color:#d0d6dc;font-size:16px;line-height:1.55}
@media(hover:hover) and (pointer:fine){.coach-impact-v60-pillar:hover{background:rgba(230,199,122,.055)}}

@media(max-width:900px){
.scenario-v60-head{grid-template-columns:1fr;gap:22px}
.scenario-v60-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.scenario-v60-dark{grid-column:span 2}
.coach-impact-v60-board{grid-template-columns:1fr 1fr}
.coach-impact-v60-core{grid-column:1/-1}
.coach-impact-v60-pillar{border-top:1px solid rgba(255,255,255,.09)}
}
@media(max-width:640px){
.scenario-v60-grid{grid-template-columns:1fr}
.scenario-v60-dark{grid-column:auto}
.scenario-v60-card{min-height:300px}
.coach-impact-v60-board{grid-template-columns:1fr}
.coach-impact-v60-core{grid-column:auto}
.coach-impact-v60-pillar{border-left:0}
.coach-impact-v60-result{grid-template-columns:1fr;gap:10px}
}


/* =========================================================
   V61 — ONLY Zone 06 title structure
   ========================================================= */
.coach-scenario-v60 .scenario-v61-title{
  margin:0!important;
  max-width:980px!important;
  width:100%!important;
  font-size:clamp(62px,7.1vw,112px)!important;
  line-height:.88!important;
  letter-spacing:-.065em!important;
  text-wrap:initial!important;
}

.coach-scenario-v60 .scenario-v61-title span{
  display:block;
  white-space:nowrap;
}

.coach-scenario-v60 .scenario-v61-title span:nth-child(2){
  color:#08111F;
}

.coach-scenario-v60 .scenario-v61-title span:nth-child(3){
  color:#08111F;
}

@media(max-width:1100px){
  .coach-scenario-v60 .scenario-v61-title{
    font-size:clamp(56px,8vw,88px)!important;
    max-width:780px!important;
  }
}

@media(max-width:700px){
  .coach-scenario-v60 .scenario-v61-title{
    font-size:clamp(46px,13.2vw,72px)!important;
    line-height:.9!important;
    letter-spacing:-.06em!important;
  }

  .coach-scenario-v60 .scenario-v61-title span{
    white-space:normal;
  }
}


/* =========================================================
   V62 — ONLY HOME Social Proof Stats
   ========================================================= */

.stats-proof-v62{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}

.stats-proof-v62 .stat-proof-card{
  min-height:285px!important;
  padding:24px!important;
  border-radius:22px!important;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 8%,rgba(230,199,122,.08),transparent 26%),
    linear-gradient(145deg,#0C1727,#08111F)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.12);
}

.stats-proof-v62 .stat-proof-card::before{
  content:"";
  position:absolute;
  width:215px;
  height:215px;
  right:-96px;
  top:-104px;
  border-radius:50%;
  border:1px solid rgba(230,199,122,.07);
  box-shadow:
    0 0 0 34px rgba(230,199,122,.015),
    0 0 0 68px rgba(230,199,122,.008);
  pointer-events:none;
}

.stats-proof-v62 .stat-pro-main{
  margin-top:52px!important;
  position:relative;
  z-index:2;
}

.stats-proof-v62 .stat-count{
  font:900 clamp(72px,6vw,100px)/.8 "Archivo",sans-serif!important;
  letter-spacing:-.075em!important;
  color:#E6C77A!important;
}

.stats-proof-v62 .stat-pro-unit{
  margin-bottom:8px!important;
  font:900 clamp(21px,1.9vw,31px)/1 "Archivo",sans-serif!important;
  color:#fff!important;
  letter-spacing:-.035em!important;
}

.stats-proof-v62 .stat-proof-title{
  margin:22px 0 0!important;
  max-width:90%;
  font:800 clamp(18px,1.7vw,26px)/1.12 "Archivo",sans-serif!important;
  color:#fff!important;
  letter-spacing:-.025em!important;
}

.stats-proof-v62 .stat-proof-detail{
  display:block;
  margin-top:8px!important;
  color:#8F9DAA!important;
  font-size:11px!important;
  line-height:1.45!important;
}

.stats-proof-v62 .stat-proof-social{
  background:
    radial-gradient(circle at 84% 18%,rgba(230,199,122,.17),transparent 32%),
    linear-gradient(145deg,#132742,#08111F)!important;
  border-color:rgba(230,199,122,.16)!important;
}

.stats-proof-v62 .stat-proof-wordline{
  display:block!important;
}

.stats-proof-v62 .stat-proof-word{
  display:block;
  font:900 clamp(42px,4.4vw,70px)/.88 "Archivo",sans-serif;
  letter-spacing:-.065em;
  color:#E6C77A;
}

@media(hover:hover) and (pointer:fine){
  .stats-proof-v62 .stat-proof-card{
    transition:
      transform .38s cubic-bezier(.2,.8,.2,1),
      box-shadow .38s ease,
      border-color .32s ease;
  }

  .stats-proof-v62 .stat-proof-card:hover{
    transform:translateY(-8px);
    border-color:rgba(230,199,122,.28)!important;
    box-shadow:0 30px 72px rgba(0,0,0,.18);
  }

  .stats-proof-v62 .stat-proof-card::before{
    transition:transform .65s cubic-bezier(.2,.8,.2,1);
  }

  .stats-proof-v62 .stat-proof-card:hover::before{
    transform:scale(1.28) rotate(15deg);
  }
}

@media(max-width:700px){
  .stats-proof-v62{
    grid-template-columns:1fr!important;
  }

  .stats-proof-v62 .stat-proof-card{
    min-height:240px!important;
  }

  .stats-proof-v62 .stat-pro-main{
    margin-top:42px!important;
  }

  .stats-proof-v62 .stat-proof-title{
    max-width:100%;
  }
}





/* =========================================================
   V64 — ONLY HOME / Social Proof card 04
   Better hierarchy, no overflow, premium editorial balance
   ========================================================= */

.stats-proof-v62 .stat-proof-social-v64{
  padding:26px!important;
}

.stats-proof-v62 .stat-proof-social-v64 .stat-pro-main{
  margin-top:44px!important;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
}

.stats-proof-v62 .stat-proof-social-v64 .stat-proof-wordline{
  width:100%;
  min-width:0;
}

.stats-proof-v62 .stat-proof-social-v64 .stat-proof-word{
  display:block;
  max-width:100%;
  font:900 clamp(34px,3.25vw,54px)/.91 "Archivo",sans-serif!important;
  letter-spacing:-.055em!important;
  color:#E6C77A!important;
  overflow-wrap:normal;
  word-break:normal;
}

.stats-proof-v62 .stat-proof-social-v64 .stat-proof-title{
  margin:26px 0 0!important;
  max-width:100%!important;
  font:800 clamp(18px,1.5vw,24px)/1.12 "Archivo",sans-serif!important;
  letter-spacing:-.025em!important;
  color:#FFFFFF!important;
}

.stats-proof-v62 .stat-proof-social-v64 .stat-proof-detail{
  margin-top:14px!important;
  max-width:100%;
  color:#9AA7B6!important;
  font:600 11px/1.58 "Inter",sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase;
}

@media(max-width:700px){
  .stats-proof-v62 .stat-proof-social-v64{
    min-height:285px!important;
    padding:24px!important;
  }

  .stats-proof-v62 .stat-proof-social-v64 .stat-pro-main{
    margin-top:38px!important;
  }

  .stats-proof-v62 .stat-proof-social-v64 .stat-proof-word{
    font-size:clamp(34px,11vw,48px)!important;
  }
}


/* =========================================================
   V66 — ONLY HOME / Social Proof card 04 refinement
   ========================================================= */

.stats-proof-v62 .stat-proof-social-v66{
  padding:24px!important;
}

.stats-proof-v62 .stat-proof-social-v66 .stat-pro-main{
  margin-top:34px!important;
  min-width:0!important;
}

.stats-proof-v62 .stat-proof-social-v66 .stat-proof-word{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  font:900 clamp(28px,2.65vw,42px)/.94 "Archivo",sans-serif!important;
  letter-spacing:-.05em!important;
  color:#E6C77A!important;
  overflow:visible!important;
}

.stats-proof-v62 .stat-proof-social-v66 .stat-proof-word span{
  display:block;
  white-space:nowrap;
}

.stats-proof-v62 .stat-proof-social-v66 .stat-proof-title{
  margin:24px 0 0!important;
  max-width:100%!important;
  font:800 clamp(16px,1.35vw,21px)/1.1 "Archivo",sans-serif!important;
  letter-spacing:-.02em!important;
}

.stats-proof-v62 .stat-proof-social-v66 .stat-proof-title span{
  display:block;
}

.stats-proof-v62 .stat-proof-social-v66 .stat-proof-detail{
  display:block!important;
  margin-top:16px!important;
  max-width:100%!important;
  font:700 9px/1.55 "Archivo",sans-serif!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  color:#94A1AF!important;
}

.stats-proof-v62 .stat-proof-social-v66 .stat-proof-detail span{
  display:block;
}

@media(max-width:900px){
  .stats-proof-v62 .stat-proof-social-v66 .stat-proof-word{
    font-size:clamp(27px,4.5vw,38px)!important;
  }
}

@media(max-width:700px){
  .stats-proof-v62 .stat-proof-social-v66{
    min-height:250px!important;
  }

  .stats-proof-v62 .stat-proof-social-v66 .stat-pro-main{
    margin-top:30px!important;
  }

  .stats-proof-v62 .stat-proof-social-v66 .stat-proof-word{
    font-size:clamp(30px,9vw,42px)!important;
    line-height:.93!important;
  }

  .stats-proof-v62 .stat-proof-social-v66 .stat-proof-title{
    margin-top:20px!important;
    font-size:18px!important;
  }
}


/* =========================================================
   V67 — ONLY Zone 05 Entraîneurs
   Compact cards + clean 01–04 vertical reel
   ========================================================= */

.zone05-v67 .steps{
  gap:12px!important;
}

.zone05-v67 .step{
  min-height:190px!important;
  padding:24px 26px!important;
  border-radius:18px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  overflow:hidden!important;
}

.zone05-v67 .step strong{
  margin-top:auto!important;
  font-size:clamp(18px,1.55vw,24px)!important;
  line-height:1.05!important;
}

.zone05-v67 .step p{
  margin:8px 0 0!important;
  max-width:95%!important;
  font-size:12px!important;
  line-height:1.45!important;
}

/* Number window */
.zone05-v67 .zone05-v67-num{
  display:flex!important;
  align-items:flex-start!important;
  width:max-content!important;
  height:.92em!important;
  margin:0 0 30px!important;
  overflow:hidden!important;
  font:900 clamp(54px,5vw,80px)/.92 "Archivo",sans-serif!important;
  letter-spacing:-.075em!important;
  color:#E6C77A!important;
  font-variant-numeric:tabular-nums!important;
  position:relative!important;
  z-index:2!important;
}

.zone05-v67 .zone05-v67-zero{
  display:block!important;
  width:.58em!important;
  flex:0 0 .58em!important;
  height:.92em!important;
  line-height:.92!important;
}

.zone05-v67 .zone05-v67-window{
  display:block!important;
  position:relative!important;
  width:.58em!important;
  flex:0 0 .58em!important;
  height:.92em!important;
  overflow:hidden!important;
}

.zone05-v67 .zone05-v67-reel{
  position:absolute!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  transform:translate3d(0,0,0);
  will-change:transform;
}

.zone05-v67 .zone05-v67-reel i{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  width:100%!important;
  height:.92em!important;
  font:inherit!important;
  font-style:normal!important;
  line-height:.92!important;
}

/* Slightly reduce section height without altering its identity */
.zone05-v67 .sticky-wrap{
  align-items:start!important;
}

@media(max-width:900px){
  .zone05-v67 .step{
    min-height:170px!important;
    padding:22px!important;
  }

  .zone05-v67 .zone05-v67-num{
    font-size:58px!important;
    margin-bottom:24px!important;
  }
}

@media(max-width:640px){
  .zone05-v67 .step{
    min-height:155px!important;
  }

  .zone05-v67 .zone05-v67-num{
    font-size:52px!important;
    margin-bottom:20px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .zone05-v67 .zone05-v67-reel{
    transition:none!important;
    animation:none!important;
  }
}


/* =========================================================
   V68 — ONLY HOME card 04 / compact final fix
   ========================================================= */

.stats-proof-v62 .stat-proof-social{
  padding:22px!important;
  min-height:255px!important;
  overflow:hidden!important;
}

.stats-proof-v62 .stat-proof-social .stat-pro-main{
  margin-top:28px!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-wordline{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-word{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  font:900 clamp(26px,2.3vw,36px)/.94 "Archivo",sans-serif!important;
  letter-spacing:-.045em!important;
  color:#E6C77A!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-word span{
  display:block!important;
  white-space:nowrap!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-title{
  margin:20px 0 0!important;
  max-width:100%!important;
  font:800 clamp(15px,1.25vw,19px)/1.08 "Archivo",sans-serif!important;
  letter-spacing:-.02em!important;
  color:#fff!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-title span{
  display:block!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-detail{
  display:block!important;
  margin-top:14px!important;
  font:700 8px/1.45 "Archivo",sans-serif!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  color:#94A1AF!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-detail span{
  display:block!important;
}

@media(max-width:700px){
  .stats-proof-v62 .stat-proof-social{
    min-height:235px!important;
    padding:20px!important;
  }

  .stats-proof-v62 .stat-proof-social .stat-pro-main{
    margin-top:24px!important;
  }

  .stats-proof-v62 .stat-proof-social .stat-proof-word{
    font-size:30px!important;
  }

  .stats-proof-v62 .stat-proof-social .stat-proof-title{
    font-size:16px!important;
  }
}


/* =========================================================
   V69 — ONLY HOME card 04 / prevent cropped letter rendering
   Keep approved size and hierarchy
   ========================================================= */

.stats-proof-v62 .stat-proof-social .stat-proof-wordline{
  overflow:visible!important;
  padding-top:4px!important;
  padding-bottom:5px!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-word{
  line-height:1.02!important;
  padding-top:1px!important;
  padding-bottom:2px!important;
  overflow:visible!important;
}

.stats-proof-v62 .stat-proof-social .stat-proof-word span{
  line-height:1.02!important;
  overflow:visible!important;
}

.stats-proof-v62 .stat-proof-social .stat-pro-main{
  overflow:visible!important;
}

.stats-proof-v62 .stat-proof-social{
  overflow:hidden!important;
  padding-top:24px!important;
  padding-bottom:24px!important;
}


/* =========================================================
   V70 — FINAL REBUILD / HOME CARD 04 ONLY
   Stable structure, same behavior as other stats cards
   ========================================================= */

.stats-proof-v62 .stat-proof-social-v70{
  min-height:285px!important;
  padding:24px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 88% 12%,rgba(230,199,122,.12),transparent 28%),
    linear-gradient(145deg,#132742,#08111F)!important;
  border:1px solid rgba(230,199,122,.16)!important;
}

.stats-proof-v62 .stat-proof-social-v70 .stat-pro-top{
  position:relative!important;
  z-index:2!important;
  margin:0!important;
}

.stats-proof-v62 .stat-proof-social-main-v70{
  margin:34px 0 0!important;
  width:100%!important;
  min-width:0!important;
  display:block!important;
  overflow:visible!important;
  position:relative!important;
  z-index:2!important;
}

.stats-proof-v62 .stat-proof-social-badge-v70{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  margin:0 0 16px;
  border-radius:999px;
  border:1px solid rgba(230,199,122,.22);
  background:rgba(230,199,122,.06);
  color:#E6C77A;
  font:800 8px/1 "Archivo",sans-serif;
  letter-spacing:.14em;
}

.stats-proof-v62 .stat-proof-social-title-v70{
  margin:0!important;
  padding:0!important;
  max-width:100%!important;
  width:100%!important;
  color:#E6C77A!important;
  font:900 clamp(24px,2.15vw,34px)/1.02 "Archivo",sans-serif!important;
  letter-spacing:-.04em!important;
  text-wrap:balance!important;
  overflow:visible!important;
  word-break:normal!important;
  white-space:normal!important;
}

.stats-proof-v62 .stat-proof-social-audience-v70{
  margin:20px 0 0!important;
  padding:0!important;
  max-width:100%!important;
  color:#FFFFFF!important;
  font:800 clamp(16px,1.35vw,20px)/1.15 "Archivo",sans-serif!important;
  letter-spacing:-.02em!important;
}

.stats-proof-v62 .stat-proof-social-lines-v70{
  display:grid;
  gap:5px;
  margin-top:16px;
}

.stats-proof-v62 .stat-proof-social-lines-v70 span{
  display:block;
  color:#92A0AE;
  font:700 9px/1.35 "Archivo",sans-serif;
  letter-spacing:.11em;
  text-transform:uppercase;
}

/* Neutralize older card-04 typography overrides from V64/V66/V68/V69 */
.stats-proof-v62 .stat-proof-social-v70 .stat-proof-word,
.stats-proof-v62 .stat-proof-social-v70 .stat-proof-wordline,
.stats-proof-v62 .stat-proof-social-v70 .stat-proof-title,
.stats-proof-v62 .stat-proof-social-v70 .stat-proof-detail{
  all:unset!important;
}

@media(max-width:900px){
  .stats-proof-v62 .stat-proof-social-v70{
    min-height:260px!important;
  }

  .stats-proof-v62 .stat-proof-social-main-v70{
    margin-top:28px!important;
  }

  .stats-proof-v62 .stat-proof-social-title-v70{
    font-size:30px!important;
  }
}

@media(max-width:700px){
  .stats-proof-v62 .stat-proof-social-v70{
    min-height:245px!important;
    padding:22px!important;
  }

  .stats-proof-v62 .stat-proof-social-main-v70{
    margin-top:24px!important;
  }

  .stats-proof-v62 .stat-proof-social-title-v70{
    font-size:28px!important;
    line-height:1.04!important;
  }

  .stats-proof-v62 .stat-proof-social-audience-v70{
    margin-top:16px!important;
    font-size:17px!important;
  }

  .stats-proof-v62 .stat-proof-social-lines-v70{
    margin-top:14px!important;
  }
}


/* =========================================================
   V71 — HOME FORM ONLY / hover stability fix
   ========================================================= */

.contact-form-card{
  transform-origin:center center!important;
  transform-style:preserve-3d!important;
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
  will-change:transform;
  isolation:isolate;
  overflow:hidden!important;
}

.contact-form-card.home-form-hover-active{
  transition:box-shadow .28s ease!important;
  box-shadow:0 28px 70px rgba(8,17,31,.16)!important;
}

/* Keep glow clipped inside the form to prevent bottom-right overflow flicker */
.contact-form-card .form-cursor-glow{
  overflow:hidden!important;
  border-radius:inherit!important;
  transform:translateZ(0);
}

.contact-form-card .form-cursor-glow::before{
  width:300px!important;
  height:300px!important;
  filter:blur(6px)!important;
  opacity:0!important;
  transition:opacity .18s ease!important;
}

.contact-form-card.home-form-hover-active .form-cursor-glow::before{
  opacity:1!important;
}

/* Avoid nested controls inheriting transform rendering glitches */
.contact-form-card input,
.contact-form-card select,
.contact-form-card textarea,
.contact-form-card button{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

@media(prefers-reduced-motion:reduce){
  .contact-form-card{
    transform:none!important;
    will-change:auto!important;
  }
}


/* =========================================================
   V72 — HOME FORM ONLY / stronger stable tilt
   ========================================================= */

.contact-form-card{
  transform-origin:50% 50%!important;
}

.contact-form-card.home-form-hover-active{
  /* JS owns transform entirely; no CSS transform transition fighting RAF */
  transition:
    box-shadow .28s ease,
    border-color .28s ease!important;
}

@media(hover:hover) and (pointer:fine){
  .contact-form-card.home-form-hover-active{
    box-shadow:0 32px 78px rgba(8,17,31,.19)!important;
  }
}


/* =========================================================
   V73 — HOME FORM ONLY / fixed hover sensor
   ========================================================= */

.home-form-tilt-sensor-v73{
  position:relative;
  width:100%;
  height:auto;
  overflow:visible;
  pointer-events:auto;
}

.home-form-tilt-sensor-v73 .contact-form-card{
  transform-origin:center center!important;
  transform-style:preserve-3d!important;
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
  will-change:transform;
}

/* The sensor itself never transforms, so pointer boundaries stay stable. */
.home-form-tilt-sensor-v73{
  transform:none!important;
}

@media(prefers-reduced-motion:reduce){
  .home-form-tilt-sensor-v73 .contact-form-card{
    transform:none!important;
    will-change:auto!important;
  }
}


/* =========================================================
   V74 — ONLY HOME / Leila portrait block
   ========================================================= */

.leila-home-photo-v74{
  position:relative!important;
  overflow:hidden!important;
  background:#08111F!important;
  min-height:560px!important;
}

.leila-home-photo-v74 img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:50% 38%;
  transform:scale(1.002);
}

.leila-home-photo-v74::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(to top,rgba(8,17,31,.16),transparent 38%),
    linear-gradient(to right,rgba(8,17,31,.06),transparent 35%);
}

@media(max-width:900px){
  .leila-home-photo-v74{
    min-height:500px!important;
  }
}

@media(max-width:640px){
  .leila-home-photo-v74{
    min-height:430px!important;
  }

  .leila-home-photo-v74 img{
    object-position:50% 32%;
  }
}


/* =========================================================
   V75 — ONLY Leila home portrait / remove decorative line
   ========================================================= */

.leila-home-photo-v74::before{
  content:none!important;
  display:none!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}

.leila-home-photo-v74::after{
  content:none!important;
  display:none!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Also neutralize inherited line decorations from generic photo-slot rules */
.photo-slot.leila-home-photo-v74{
  border-image:none!important;
}

.photo-slot.leila-home-photo-v74 > *::before,
.photo-slot.leila-home-photo-v74 > *::after{
  box-shadow:none;
}


/* =========================================================
   V76 — ONLY Leila portrait: cleaner centered crop
   ========================================================= */

.leila-home-photo-v74 img{
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
}

@media(max-width:900px){
  .leila-home-photo-v74 img{
    object-position:50% 50%!important;
  }
}

@media(max-width:640px){
  .leila-home-photo-v74 img{
    object-position:50% 50%!important;
  }
}


/* =========================================================
   V77 — ONLY GYMNASTES HERO PHOTO
   Responsive editorial photo + readable typography
   ========================================================= */

.gymnastes-photo-hero-v77{
  position:relative!important;
  min-height:clamp(720px,88vh,980px)!important;
  overflow:hidden!important;
  isolation:isolate;
  background:#08111F!important;
}

.gymnastes-hero-media-v77{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}

.gymnastes-hero-media-v77 picture,
.gymnastes-hero-media-v77 img{
  display:block;
  width:100%;
  height:100%;
}

.gymnastes-hero-media-v77 img{
  object-fit:cover;
  object-position:52% 48%;
  transform:scale(1.01);
  filter:saturate(.92) contrast(1.03) brightness(.88);
}

/* Overlay designed around the existing left-aligned hero copy */
.gymnastes-hero-overlay-v77{
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      90deg,
      rgba(8,17,31,.94) 0%,
      rgba(8,17,31,.84) 28%,
      rgba(8,17,31,.56) 48%,
      rgba(8,17,31,.20) 70%,
      rgba(8,17,31,.10) 100%
    ),
    linear-gradient(
      180deg,
      rgba(8,17,31,.32) 0%,
      rgba(8,17,31,.05) 40%,
      rgba(8,17,31,.36) 100%
    );
}

.gymnastes-hero-content-v77{
  position:relative!important;
  z-index:2!important;
}

/* Ensure all hero text is legible over the photo */
.gymnastes-photo-hero-v77 h1,
.gymnastes-photo-hero-v77 h2{
  color:#fff!important;
  text-shadow:0 2px 22px rgba(8,17,31,.18);
}

.gymnastes-photo-hero-v77 .eyebrow,
.gymnastes-photo-hero-v77 .kicker{
  color:#E6C77A!important;
}

.gymnastes-photo-hero-v77 p,
.gymnastes-photo-hero-v77 .lead{
  color:rgba(244,247,250,.84)!important;
  max-width:760px;
  text-shadow:0 2px 14px rgba(8,17,31,.14);
}

.gymnastes-photo-hero-v77 .btn.primary{
  box-shadow:0 14px 30px rgba(0,0,0,.16);
}

/* Subtle cinematic breathing without moving the text */
@media(hover:hover) and (pointer:fine){
  .gymnastes-hero-media-v77 img{
    transition:transform 7s cubic-bezier(.2,.7,.2,1), filter .7s ease;
  }
  .gymnastes-photo-hero-v77:hover .gymnastes-hero-media-v77 img{
    transform:scale(1.045);
    filter:saturate(.96) contrast(1.04) brightness(.90);
  }
}

/* Tablet */
@media(max-width:1000px){
  .gymnastes-photo-hero-v77{
    min-height:780px!important;
  }

  .gymnastes-hero-media-v77 img{
    object-position:46% 50%;
  }

  .gymnastes-hero-overlay-v77{
    background:
      linear-gradient(
        90deg,
        rgba(8,17,31,.95) 0%,
        rgba(8,17,31,.84) 40%,
        rgba(8,17,31,.42) 70%,
        rgba(8,17,31,.18) 100%
      ),
      linear-gradient(
        180deg,
        rgba(8,17,31,.20) 0%,
        rgba(8,17,31,.12) 52%,
        rgba(8,17,31,.58) 100%
      );
  }
}

/* Mobile: dedicated portrait crop, text protected in lower/left area */
@media(max-width:700px){
  .gymnastes-photo-hero-v77{
    min-height:820px!important;
  }

  .gymnastes-hero-media-v77 img{
    object-position:50% 45%;
    transform:none;
    filter:saturate(.94) contrast(1.03) brightness(.83);
  }

  .gymnastes-hero-overlay-v77{
    background:
      linear-gradient(
        180deg,
        rgba(8,17,31,.22) 0%,
        rgba(8,17,31,.10) 28%,
        rgba(8,17,31,.40) 52%,
        rgba(8,17,31,.90) 76%,
        rgba(8,17,31,.98) 100%
      ),
      linear-gradient(
        90deg,
        rgba(8,17,31,.52) 0%,
        rgba(8,17,31,.20) 64%,
        transparent 100%
      );
  }

  .gymnastes-hero-content-v77{
    min-height:820px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    padding-bottom:78px!important;
  }

  .gymnastes-photo-hero-v77 h1{
    max-width:100%!important;
    font-size:clamp(48px,13vw,72px)!important;
    line-height:.92!important;
  }

  .gymnastes-photo-hero-v77 p,
  .gymnastes-photo-hero-v77 .lead{
    max-width:94%!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .gymnastes-hero-media-v77 img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V78 — GYMNASTES HERO IMAGE VISIBILITY FIX
   ONLY this hero is affected
   ========================================================= */

.gymnastes-photo-hero-v78{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:#08111F!important;
  min-height:clamp(720px,88vh,980px)!important;
}

.gymnastes-photo-hero-v78 .gymnastes-hero-bg-v78{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
}

.gymnastes-photo-hero-v78 .gymnastes-hero-bg-v78 picture,
.gymnastes-photo-hero-v78 .gymnastes-hero-bg-v78 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
}

.gymnastes-photo-hero-v78 .gymnastes-hero-bg-v78 img{
  object-fit:cover!important;
  object-position:50% 48%!important;
  opacity:1!important;
  visibility:visible!important;
  filter:brightness(.82) saturate(.94) contrast(1.04)!important;
}

.gymnastes-photo-hero-v78 .gymnastes-hero-shade-v78{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,
      rgba(8,17,31,.95) 0%,
      rgba(8,17,31,.78) 30%,
      rgba(8,17,31,.46) 52%,
      rgba(8,17,31,.18) 76%,
      rgba(8,17,31,.08) 100%
    ),
    linear-gradient(180deg,
      rgba(8,17,31,.22) 0%,
      rgba(8,17,31,.04) 48%,
      rgba(8,17,31,.34) 100%
    )!important;
}

.gymnastes-photo-hero-v78 .gymnastes-hero-content-v78{
  position:relative!important;
  z-index:3!important;
}

.gymnastes-photo-hero-v78 h1,
.gymnastes-photo-hero-v78 h2{
  color:#fff!important;
}

.gymnastes-photo-hero-v78 p,
.gymnastes-photo-hero-v78 .lead{
  color:rgba(245,247,250,.88)!important;
}

.gymnastes-photo-hero-v78 .eyebrow,
.gymnastes-photo-hero-v78 .kicker{
  color:#E6C77A!important;
}

@media(max-width:700px){
  .gymnastes-photo-hero-v78{
    min-height:820px!important;
  }

  .gymnastes-photo-hero-v78 .gymnastes-hero-bg-v78 img{
    object-position:50% 44%!important;
    filter:brightness(.76) saturate(.95) contrast(1.04)!important;
  }

  .gymnastes-photo-hero-v78 .gymnastes-hero-shade-v78{
    background:
      linear-gradient(180deg,
        rgba(8,17,31,.10) 0%,
        rgba(8,17,31,.15) 34%,
        rgba(8,17,31,.55) 58%,
        rgba(8,17,31,.92) 78%,
        rgba(8,17,31,.98) 100%
      ),
      linear-gradient(90deg,
        rgba(8,17,31,.42) 0%,
        rgba(8,17,31,.12) 70%,
        transparent 100%
      )!important;
  }

  .gymnastes-photo-hero-v78 .gymnastes-hero-content-v78{
    min-height:820px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    padding-bottom:76px!important;
  }
}


/* =========================================================
   V79 — GYMNASTES HERO = IMAGE MODE
   Old video/background layers disabled on this page only
   ========================================================= */

.gymnastes-photo-hero-v79{
  position:relative!important;
  min-height:clamp(720px,88vh,980px)!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:#08111F!important;
}

/* Kill any legacy hero overlays/pseudo-elements that belonged to video mode */
.gymnastes-photo-hero-v79::before,
.gymnastes-photo-hero-v79::after{
  content:none!important;
  display:none!important;
}

/* If a legacy slot somehow survives through other markup, hide it on this hero only */
.gymnastes-photo-hero-v79 .hero-video-slot,
.gymnastes-photo-hero-v79 .hero-bg{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* True image layer */
.gymnastes-photo-hero-v79 .gymnastes-hero-bg-v79{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

.gymnastes-photo-hero-v79 .gymnastes-hero-bg-v79 picture{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
}

.gymnastes-photo-hero-v79 .gymnastes-hero-bg-v79 img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:50% 48%!important;
  opacity:1!important;
  visibility:visible!important;
  filter:brightness(.82) saturate(.95) contrast(1.04)!important;
  transform:none!important;
}

/* Readability overlay */
.gymnastes-photo-hero-v79 .gymnastes-hero-shade-v79{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,
      rgba(8,17,31,.96) 0%,
      rgba(8,17,31,.82) 28%,
      rgba(8,17,31,.52) 50%,
      rgba(8,17,31,.20) 74%,
      rgba(8,17,31,.08) 100%
    ),
    linear-gradient(180deg,
      rgba(8,17,31,.18) 0%,
      rgba(8,17,31,.04) 50%,
      rgba(8,17,31,.34) 100%
    )!important;
}

/* Existing hero content above the image */
.gymnastes-photo-hero-v79 .gymnastes-hero-content-v79{
  position:relative!important;
  z-index:3!important;
}

.gymnastes-photo-hero-v79 h1{
  color:#fff!important;
}

.gymnastes-photo-hero-v79 h1 em{
  color:#E6C77A!important;
}

.gymnastes-photo-hero-v79 .lead{
  color:rgba(245,247,250,.88)!important;
}

/* Desktop: slight premium breathing effect without moving layout */
@media(hover:hover) and (pointer:fine){
  .gymnastes-photo-hero-v79 .gymnastes-hero-bg-v79 img{
    transition:transform 8s cubic-bezier(.2,.7,.2,1),filter .8s ease!important;
  }

  .gymnastes-photo-hero-v79:hover .gymnastes-hero-bg-v79 img{
    transform:scale(1.035)!important;
    filter:brightness(.85) saturate(.98) contrast(1.04)!important;
  }
}

/* Mobile dedicated crop */
@media(max-width:700px){
  .gymnastes-photo-hero-v79{
    min-height:820px!important;
  }

  .gymnastes-photo-hero-v79 .gymnastes-hero-bg-v79 img{
    object-position:50% 44%!important;
    filter:brightness(.78) saturate(.96) contrast(1.04)!important;
  }

  .gymnastes-photo-hero-v79 .gymnastes-hero-shade-v79{
    background:
      linear-gradient(180deg,
        rgba(8,17,31,.08) 0%,
        rgba(8,17,31,.10) 30%,
        rgba(8,17,31,.46) 54%,
        rgba(8,17,31,.90) 76%,
        rgba(8,17,31,.98) 100%
      ),
      linear-gradient(90deg,
        rgba(8,17,31,.38) 0%,
        rgba(8,17,31,.12) 72%,
        transparent 100%
      )!important;
  }

  .gymnastes-photo-hero-v79 .gymnastes-hero-content-v79{
    min-height:820px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    padding-bottom:76px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .gymnastes-photo-hero-v79 .gymnastes-hero-bg-v79 img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V80 — ONLY Gymnastes / Leila experience photo
   ========================================================= */

.leila-gym-experience-photo-v80{
  position:relative!important;
  overflow:hidden!important;
  background:#08111F!important;
  min-height:650px!important;
}

.leila-gym-experience-photo-v80 img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:50% 42%;
  transform:none!important;
}

.leila-gym-experience-photo-v80::before,
.leila-gym-experience-photo-v80::after{
  content:none!important;
  display:none!important;
}

@media(max-width:900px){
  .leila-gym-experience-photo-v80{
    min-height:560px!important;
  }

  .leila-gym-experience-photo-v80 img{
    object-position:50% 40%;
  }
}

@media(max-width:640px){
  .leila-gym-experience-photo-v80{
    min-height:500px!important;
  }

  .leila-gym-experience-photo-v80 img{
    object-position:50% 38%;
  }
}


/* V81 — shared 3D forms */
.contact-form-card,.coach-form-card{
  transform-origin:center center!important;
  transform-style:preserve-3d!important;
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
  will-change:transform;
}
.contact-form-card.form-tilt-active,.coach-form-card.form-tilt-active{
  transition:box-shadow .28s ease,border-color .28s ease!important;
  box-shadow:0 30px 72px rgba(8,17,31,.18)!important;
}


/* V81 — clean icons replacing broken counters */
.coach-pain-icon-v81{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin:0 0 32px;
  background:rgba(230,199,122,.10);
  border:1px solid rgba(230,199,122,.24);
  color:#E6C77A;
  font:800 23px/1 "Archivo",sans-serif;
  box-shadow:0 12px 26px rgba(8,17,31,.05);
}
@media(max-width:700px){
  .coach-pain-icon-v81{
    width:42px;height:42px;font-size:20px;margin-bottom:24px;
  }
}


/* =========================================================
   V82 — soft premium form depth + clean icons
   ========================================================= */

.contact-form-card.form-tilt-active,
.coach-form-card.form-tilt-active{
  box-shadow:0 20px 48px rgba(8,17,31,.11)!important;
  transition:
    box-shadow .35s ease,
    border-color .35s ease!important;
}

.coach-pain-icon-v82{
  width:46px;
  height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin:0 0 34px;
  background:rgba(230,199,122,.08);
  border:1px solid rgba(230,199,122,.22);
  color:#E6C77A;
  font:700 22px/1 "Archivo",sans-serif;
}

@media(max-width:700px){
  .coach-pain-icon-v82{
    width:42px;
    height:42px;
    margin-bottom:26px;
    font-size:20px;
  }
}


/* =========================================================
   V83 — reactive gold cursor glow, forms only
   ========================================================= */

.contact-form-card,
.coach-form-card{
  position:relative!important;
  isolation:isolate;
  --gold-x:50%;
  --gold-y:50%;
  --gold-opacity:0;
}

/* Dedicated glow layer: follows cursor everywhere */
.contact-form-card::after,
.coach-form-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  opacity:var(--gold-opacity)!important;
  background:
    radial-gradient(
      circle 190px at var(--gold-x) var(--gold-y),
      rgba(230,199,122,.26) 0%,
      rgba(230,199,122,.14) 24%,
      rgba(230,199,122,.055) 48%,
      rgba(230,199,122,0) 72%
    )!important;
  transition:opacity .16s ease!important;
  will-change:background,opacity;
}

/* Keep form contents above glow */
.contact-form-card > *,
.coach-form-card > *{
  position:relative;
  z-index:2;
}

/* Slight edge response to make the light feel alive */
.contact-form-card.gold-follow-active,
.coach-form-card.gold-follow-active{
  border-color:rgba(230,199,122,.24)!important;
}

/* Preserve soft 3D; glow itself reacts instantly */
@media(prefers-reduced-motion:reduce){
  .contact-form-card::after,
  .coach-form-card::after{
    transition:none!important;
  }
}


/* V84 — neutralize old V83 pseudo glow only */
.contact-form-card::after,
.coach-form-card::after{
  opacity:0!important;
  background:none!important;
}


/* =========================================================
   V84 — FORM GOLD LIGHT / TRUE CURSOR FOLLOW
   ========================================================= */

.contact-form-card,
.coach-form-card{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

.form-gold-cursor-v84{
  position:absolute!important;
  left:50%;
  top:50%;
  width:340px;
  height:340px;
  border-radius:50%;
  pointer-events:none!important;
  z-index:1!important;

  /*
   * Critical: the glow's CENTER is placed on the cursor,
   * instead of using background-position on a pseudo-element.
   */
  transform:translate(-50%,-50%) translateZ(0)!important;

  background:
    radial-gradient(
      circle,
      rgba(230,199,122,.30) 0%,
      rgba(230,199,122,.18) 20%,
      rgba(230,199,122,.085) 42%,
      rgba(230,199,122,.025) 58%,
      rgba(230,199,122,0) 72%
    );

  filter:blur(5px);
  opacity:0;
  will-change:left,top,opacity;
  transition:opacity .13s ease!important;
}

/* Everything functional stays above the light */
.contact-form-card > :not(.form-gold-cursor-v84),
.coach-form-card > :not(.form-gold-cursor-v84){
  position:relative;
  z-index:2;
}

/* Make the glow slightly tighter on mobile-sized forms */
@media(max-width:700px){
  .form-gold-cursor-v84{
    width:280px;
    height:280px;
  }
}

@media(prefers-reduced-motion:reduce){
  .form-gold-cursor-v84{
    transition:none!important;
  }
}


/* =========================================================
   V85 — GLOBAL ICON UPGRADE ONLY
   Premium 3D MentalGym icon treatment
   No layout/text/link changes
   ========================================================= */

/* Core 3D token */
:root{
  --mg-icon-gold:#E6C77A;
  --mg-icon-gold-hi:#F4E3A9;
  --mg-icon-gold-deep:#B58D2D;
  --mg-icon-navy:#08111F;
  --mg-icon-navy-2:#132742;
}

/* Existing circular icon surfaces */
.coach-pain-icon-v82,
.coach-pain-icon-v81,
.entry-icon,
.feature-icon,
.card-icon,
.icon-circle,
.icon-badge,
.social-icon,
.footer-social a,
.menu-social a,
[class*="icon-wrap"],
[class*="icon-circle"],
[class*="icon-badge"]{
  position:relative;
  overflow:hidden;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  background:
    radial-gradient(circle at 30% 24%,rgba(255,255,255,.72),rgba(255,255,255,.10) 18%,transparent 19%),
    linear-gradient(145deg,var(--mg-icon-gold-hi),var(--mg-icon-gold) 48%,var(--mg-icon-gold-deep))!important;
  border:1px solid rgba(255,255,255,.42)!important;
  color:var(--mg-icon-navy)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.62),
    inset 0 -4px 10px rgba(110,76,0,.18),
    0 7px 0 rgba(99,72,13,.20),
    0 13px 26px rgba(8,17,31,.16)!important;
}

/* Metallic inner ring */
.coach-pain-icon-v82::before,
.coach-pain-icon-v81::before,
.entry-icon::before,
.feature-icon::before,
.card-icon::before,
.icon-circle::before,
.icon-badge::before,
.social-icon::before,
.footer-social a::before,
.menu-social a::before,
[class*="icon-wrap"]::before,
[class*="icon-circle"]::before,
[class*="icon-badge"]::before{
  content:"";
  position:absolute;
  inset:4px;
  border-radius:inherit;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.26);
  box-shadow:inset 0 0 0 1px rgba(8,17,31,.06);
}

/* Shine / volumetric highlight */
.coach-pain-icon-v82::after,
.coach-pain-icon-v81::after,
.entry-icon::after,
.feature-icon::after,
.card-icon::after,
.icon-circle::after,
.icon-badge::after,
.social-icon::after,
.footer-social a::after,
.menu-social a::after,
[class*="icon-wrap"]::after,
[class*="icon-circle"]::after,
[class*="icon-badge"]::after{
  content:"";
  position:absolute;
  width:58%;
  height:38%;
  left:10%;
  top:7%;
  border-radius:50%;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,0));
  filter:blur(.2px);
  opacity:.68;
}

/* Keep glyphs above 3D surface */
.coach-pain-icon-v82 > *,
.coach-pain-icon-v81 > *,
.entry-icon > *,
.feature-icon > *,
.card-icon > *,
.icon-circle > *,
.icon-badge > *,
.social-icon > *,
.footer-social a > *,
.menu-social a > *,
[class*="icon-wrap"] > *,
[class*="icon-circle"] > *,
[class*="icon-badge"] > *{
  position:relative;
  z-index:2;
}

/* Inline SVG/icon glyph polish */
svg.icon,
.icon svg,
[class*="icon"] svg,
.footer-social svg,
.menu-social svg{
  position:relative;
  z-index:2;
  filter:
    drop-shadow(0 1px 0 rgba(255,255,255,.28))
    drop-shadow(0 2px 2px rgba(8,17,31,.18));
}

/* Existing arrow circles become 3D navy buttons */
.card-arrow,
.entry-arrow,
.arrow-circle,
[class*="arrow-circle"],
[class*="arrow-btn"]{
  position:relative;
  overflow:hidden;
  transform-style:preserve-3d;
  background:
    radial-gradient(circle at 30% 24%,rgba(255,255,255,.16),transparent 22%),
    linear-gradient(145deg,var(--mg-icon-navy-2),var(--mg-icon-navy))!important;
  color:#fff!important;
  border:1px solid rgba(230,199,122,.28)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -4px 10px rgba(0,0,0,.18),
    0 6px 0 rgba(2,7,14,.26),
    0 12px 22px rgba(8,17,31,.20)!important;
}

/* Small premium hover response only; no layout changes */
@media(hover:hover) and (pointer:fine){
  .coach-pain-icon-v82,
  .coach-pain-icon-v81,
  .entry-icon,
  .feature-icon,
  .card-icon,
  .icon-circle,
  .icon-badge,
  .social-icon,
  .footer-social a,
  .menu-social a,
  [class*="icon-wrap"],
  [class*="icon-circle"],
  [class*="icon-badge"],
  .card-arrow,
  .entry-arrow,
  .arrow-circle,
  [class*="arrow-circle"],
  [class*="arrow-btn"]{
    transition:
      transform .24s cubic-bezier(.2,.8,.2,1),
      box-shadow .24s ease,
      filter .24s ease!important;
  }

  .coach-pain-icon-v82:hover,
  .coach-pain-icon-v81:hover,
  .entry-icon:hover,
  .feature-icon:hover,
  .card-icon:hover,
  .icon-circle:hover,
  .icon-badge:hover,
  .social-icon:hover,
  .footer-social a:hover,
  .menu-social a:hover,
  [class*="icon-wrap"]:hover,
  [class*="icon-circle"]:hover,
  [class*="icon-badge"]:hover,
  .card-arrow:hover,
  .entry-arrow:hover,
  .arrow-circle:hover,
  [class*="arrow-circle"]:hover,
  [class*="arrow-btn"]:hover{
    transform:translateY(-2px) rotateX(5deg) rotateY(-5deg) scale(1.035)!important;
    filter:brightness(1.035);
  }
}

/* Mobile keeps dimensionality but avoids excessive depth */
@media(max-width:700px){
  .coach-pain-icon-v82,
  .coach-pain-icon-v81,
  .entry-icon,
  .feature-icon,
  .card-icon,
  .icon-circle,
  .icon-badge,
  .social-icon,
  .footer-social a,
  .menu-social a,
  [class*="icon-wrap"],
  [class*="icon-circle"],
  [class*="icon-badge"]{
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.54),
      inset 0 -3px 8px rgba(110,76,0,.14),
      0 4px 0 rgba(99,72,13,.16),
      0 9px 18px rgba(8,17,31,.12)!important;
  }
}


/* =========================================================
   V86 — ONLY HOME 3 COMPACT ENTRY ICONS
   True visible 3D, premium MentalGym
   ========================================================= */

.entry-compact-icon-3d-v86{
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  min-height:64px!important;
  border-radius:20px!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  transform-style:preserve-3d!important;

  background:
    radial-gradient(circle at 28% 20%, rgba(255,255,255,.98) 0 9%, rgba(255,255,255,.38) 10%, transparent 27%),
    linear-gradient(145deg,#FFF9E8 0%,#F5E3AA 42%,#E4C86E 68%,#C9A544 100%)!important;

  border:1px solid rgba(184,142,31,.28)!important;

  box-shadow:
    inset 0 2px 1px rgba(255,255,255,.92),
    inset 0 -7px 12px rgba(117,82,6,.16),
    0 5px 0 #B89535,
    0 9px 0 rgba(82,57,5,.12),
    0 16px 26px rgba(8,17,31,.12)!important;

  transform:translateY(-2px) rotateX(6deg) rotateY(-6deg)!important;
}

.entry-compact-icon-3d-v86::before{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:15px;
  pointer-events:none;
  z-index:0;
  background:linear-gradient(145deg,rgba(255,255,255,.50),rgba(255,255,255,.04))!important;
  border:1px solid rgba(255,255,255,.55)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.85),
    inset 0 -2px 5px rgba(91,61,3,.10);
}

.entry-compact-icon-3d-v86::after{
  content:"";
  position:absolute;
  left:10px;
  right:10px;
  top:7px;
  height:18px;
  border-radius:50%;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(255,255,255,0));
  opacity:.88;
}

.entry-compact-icon-3d-v86 svg{
  position:relative!important;
  z-index:3!important;
  width:34px!important;
  height:34px!important;
  overflow:visible!important;
  stroke:#7B5A08!important;
  stroke-width:1.8!important;
  fill:none!important;
  filter:
    drop-shadow(0 1px 0 rgba(255,255,255,.95))
    drop-shadow(0 3px 2px rgba(89,61,3,.24))!important;
  transform:translateZ(14px)!important;
}

.entry-compact-icon-3d-v86 .icon-fill{
  fill:#D5B34D!important;
  stroke:#7B5A08!important;
}

@media(hover:hover) and (pointer:fine){
  .entry-compact-icon-3d-v86{
    transition:
      transform .28s cubic-bezier(.2,.8,.2,1),
      box-shadow .28s ease,
      filter .28s ease!important;
  }

  .entry-compact-card:hover .entry-compact-icon-3d-v86{
    transform:translateY(-6px) rotateX(10deg) rotateY(-10deg) scale(1.045)!important;
    filter:brightness(1.025);
    box-shadow:
      inset 0 2px 1px rgba(255,255,255,.94),
      inset 0 -7px 12px rgba(117,82,6,.14),
      0 6px 0 #B89535,
      0 11px 0 rgba(82,57,5,.10),
      0 23px 34px rgba(8,17,31,.15)!important;
  }
}

@media(max-width:700px){
  .entry-compact-icon-3d-v86{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    min-height:56px!important;
    border-radius:18px!important;
    transform:translateY(-1px) rotateX(4deg) rotateY(-4deg)!important;
  }

  .entry-compact-icon-3d-v86 svg{
    width:30px!important;
    height:30px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .entry-compact-icon-3d-v86{
    transform:none!important;
    transition:none!important;
  }
}


/* =========================================================
   V88 — ONLY GLOBAL HEADER LOGO REPLACEMENT
   ========================================================= */

.brand-logo-v88{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  text-decoration:none!important;
}

.brand-logo-v88 img{
  display:block!important;
  width:auto!important;
  height:46px!important;
  max-width:280px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
}

@media(max-width:900px){
  .brand-logo-v88 img{
    height:40px!important;
    max-width:235px!important;
  }
}

@media(max-width:640px){
  .brand-logo-v88 img{
    height:34px!important;
    max-width:195px!important;
  }
}


/* =========================================================
   V89 — ONLY ENTRAÎNEURS HEADER LOGO
   MentalGym everywhere else / Rythmique Évolution here
   ========================================================= */

.brand-rythmique-v89 img{
  height:44px!important;
  width:auto!important;
  max-width:310px!important;
  object-fit:contain!important;
  object-position:left center!important;
}

@media(max-width:900px){
  .brand-rythmique-v89 img{
    height:38px!important;
    max-width:255px!important;
  }
}

@media(max-width:640px){
  .brand-rythmique-v89 img{
    height:32px!important;
    max-width:205px!important;
  }
}


/* =========================================================
   V90 — ONLY ENTRAÎNEURS HERO / IMAGE MODE
   ========================================================= */

.entraineurs-photo-hero-v90{
  position:relative!important;
  min-height:clamp(760px,90vh,1000px)!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:#08111F!important;
}

.entraineurs-photo-hero-v90::before,
.entraineurs-photo-hero-v90::after{
  content:none!important;
  display:none!important;
}

.entraineurs-photo-hero-v90 .hero-video-slot,
.entraineurs-photo-hero-v90 .hero-bg{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}

/* Real image layer */
.entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

.entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 picture,
.entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
}

.entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
  object-fit:cover!important;
  object-position:58% 50%!important;
  filter:brightness(.78) saturate(.92) contrast(1.05)!important;
  transform:none!important;
}

/* Strong left protection for text, lighter on subjects */
.entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,
      rgba(8,17,31,.97) 0%,
      rgba(8,17,31,.90) 24%,
      rgba(8,17,31,.70) 42%,
      rgba(8,17,31,.34) 62%,
      rgba(8,17,31,.12) 82%,
      rgba(8,17,31,.05) 100%
    ),
    linear-gradient(180deg,
      rgba(8,17,31,.20) 0%,
      rgba(8,17,31,.04) 50%,
      rgba(8,17,31,.34) 100%
    )!important;
}

/* Existing hero content remains untouched, only above image */
.entraineurs-photo-hero-v90 .entraineurs-hero-content-v90{
  position:relative!important;
  z-index:3!important;
}

.entraineurs-photo-hero-v90 h1{
  color:#fff!important;
  text-shadow:0 2px 24px rgba(8,17,31,.16);
}

.entraineurs-photo-hero-v90 h1 em{
  color:#E6C77A!important;
}

.entraineurs-photo-hero-v90 .lead{
  color:rgba(245,247,250,.90)!important;
  max-width:760px!important;
}

.entraineurs-photo-hero-v90 .path-marker,
.entraineurs-photo-hero-v90 .eyebrow{
  color:#E6C77A!important;
}

/* Subtle cinematic movement */
@media(hover:hover) and (pointer:fine){
  .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
    transition:transform 8s cubic-bezier(.2,.7,.2,1), filter .8s ease!important;
  }

  .entraineurs-photo-hero-v90:hover .entraineurs-hero-bg-v90 img{
    transform:scale(1.035)!important;
    filter:brightness(.81) saturate(.95) contrast(1.05)!important;
  }
}

/* Tablet */
@media(max-width:1000px){
  .entraineurs-photo-hero-v90{
    min-height:820px!important;
  }

  .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
    object-position:62% 50%!important;
  }

  .entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
    background:
      linear-gradient(90deg,
        rgba(8,17,31,.97) 0%,
        rgba(8,17,31,.86) 36%,
        rgba(8,17,31,.54) 58%,
        rgba(8,17,31,.18) 80%,
        rgba(8,17,31,.08) 100%
      ),
      linear-gradient(180deg,
        rgba(8,17,31,.18) 0%,
        rgba(8,17,31,.08) 52%,
        rgba(8,17,31,.48) 100%
      )!important;
  }
}

/* Mobile: dedicated portrait crop and content lower for visibility */
@media(max-width:700px){
  .entraineurs-photo-hero-v90{
    min-height:860px!important;
  }

  .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
    object-position:56% 45%!important;
    filter:brightness(.74) saturate(.94) contrast(1.05)!important;
  }

  .entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
    background:
      linear-gradient(180deg,
        rgba(8,17,31,.10) 0%,
        rgba(8,17,31,.10) 28%,
        rgba(8,17,31,.42) 50%,
        rgba(8,17,31,.90) 74%,
        rgba(8,17,31,.98) 100%
      ),
      linear-gradient(90deg,
        rgba(8,17,31,.40) 0%,
        rgba(8,17,31,.14) 70%,
        transparent 100%
      )!important;
  }

  .entraineurs-photo-hero-v90 .entraineurs-hero-content-v90{
    min-height:860px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    padding-bottom:76px!important;
  }

  .entraineurs-photo-hero-v90 h1{
    font-size:clamp(44px,12vw,68px)!important;
    line-height:.94!important;
    max-width:100%!important;
  }

  .entraineurs-photo-hero-v90 .lead{
    max-width:94%!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V92 — HERO TITLES ONLY
   Cleaner, more editorial, less oversized
   ========================================================= */

/* Home hero */
.hero:not(.path-hero) .hero-copy h1{
  font-size:clamp(64px,7.6vw,118px)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  max-width:1180px!important;
}

/* Gymnastes + Entraîneurs hero */
.path-hero .hero-copy h1{
  font-size:clamp(58px,6.8vw,104px)!important;
  line-height:.94!important;
  letter-spacing:-.05em!important;
  max-width:1260px!important;
}

/* Keep emphasized words balanced */
.path-hero .hero-copy h1 em,
.hero:not(.path-hero) .hero-copy h1 em{
  font-size:inherit!important;
  line-height:inherit!important;
}

/* Give hero copy more breathing room */
.hero .hero-copy{
  max-width:1280px!important;
}

.hero .hero-copy .lead{
  margin-top:26px!important;
  max-width:760px!important;
}

/* Tablet */
@media(max-width:1100px){
  .hero:not(.path-hero) .hero-copy h1{
    font-size:clamp(58px,8.2vw,88px)!important;
    line-height:.94!important;
  }

  .path-hero .hero-copy h1{
    font-size:clamp(54px,7.8vw,82px)!important;
    line-height:.95!important;
  }
}

/* Mobile */
@media(max-width:700px){
  .hero:not(.path-hero) .hero-copy h1{
    font-size:clamp(44px,12vw,62px)!important;
    line-height:.96!important;
    letter-spacing:-.045em!important;
  }

  .path-hero .hero-copy h1{
    font-size:clamp(42px,11.5vw,58px)!important;
    line-height:.97!important;
    letter-spacing:-.04em!important;
  }

  .hero .hero-copy .lead{
    margin-top:20px!important;
  }
}


/* V93 — ONLY "Ton terrain d'abord" photo */
.coach-terrain-photo-v93{
  position:relative!important;
  overflow:hidden!important;
  background:#08111F!important;
}
.coach-terrain-photo-v93 > img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:50% 46%!important;
  z-index:0!important;
}
.coach-terrain-photo-v93::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(8,17,31,.05) 0%,rgba(8,17,31,.20) 45%,rgba(8,17,31,.88) 100%)!important;
}
.coach-terrain-photo-v93 .coach-photo-copy{
  position:relative!important;
  z-index:2!important;
}
@media(max-width:700px){
  .coach-terrain-photo-v93 > img{
    object-position:50% 42%!important;
  }
}


/* =========================================================
   V96 — HARD FIX: "Ton terrain d'abord" photo card ONLY
   Prevent overflow, anchor copy low, preserve photo.
   ========================================================= */
.coach-application-photo.coach-terrain-photo-v93{
  position:relative!important;
  overflow:hidden!important;
  display:block!important;
  min-height:0!important;
  height:auto!important;
  aspect-ratio: 4 / 5!important;
  border-radius:48px!important;
  background:#08111F!important;
}

.coach-application-photo.coach-terrain-photo-v93 > img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:50% 48%!important;
  display:block!important;
  z-index:0!important;
  filter:brightness(.92) saturate(.96) contrast(1.02)!important;
}

.coach-application-photo.coach-terrain-photo-v93::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(
    180deg,
    rgba(8,17,31,0) 0%,
    rgba(8,17,31,.03) 38%,
    rgba(8,17,31,.22) 58%,
    rgba(8,17,31,.76) 78%,
    rgba(8,17,31,.96) 100%
  )!important;
}

.coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy{
  position:absolute!important;
  z-index:2!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:0!important;
  width:auto!important;
  max-width:none!important;
  height:auto!important;
  margin:0!important;
  padding:0 46px 46px!important;
  transform:none!important;
  display:block!important;
  overflow:visible!important;
}

.coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy .eyebrow{
  margin:0 0 16px!important;
  padding:0!important;
  font-size:14px!important;
  line-height:1.2!important;
  letter-spacing:.18em!important;
  color:#E6C77A!important;
}

.coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy h3{
  margin:0!important;
  padding:0!important;
  max-width:560px!important;
  font-size:clamp(42px,4.1vw,68px)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
  color:#fff!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-wrap:balance!important;
}

.coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy p{
  margin:22px 0 0!important;
  padding:0!important;
  max-width:610px!important;
  font-size:clamp(17px,1.45vw,22px)!important;
  line-height:1.5!important;
  color:rgba(255,255,255,.82)!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

@media(max-width:900px){
  .coach-application-photo.coach-terrain-photo-v93{
    aspect-ratio: 4 / 5.35!important;
    border-radius:38px!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy{
    padding:0 34px 36px!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy h3{
    font-size:clamp(40px,7vw,58px)!important;
    max-width:100%!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy p{
    max-width:100%!important;
  }
}

@media(max-width:640px){
  .coach-application-photo.coach-terrain-photo-v93{
    aspect-ratio: 4 / 5.7!important;
    border-radius:30px!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 > img{
    object-position:50% 44%!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy{
    padding:0 24px 28px!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy .eyebrow{
    margin-bottom:12px!important;
    font-size:11px!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy h3{
    font-size:clamp(34px,10vw,46px)!important;
    line-height:.98!important;
    letter-spacing:-.04em!important;
  }
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy p{
    margin-top:16px!important;
    font-size:16px!important;
    line-height:1.45!important;
  }
}


/* =========================================================
   V97 — ONLY ENTRAÎNEURS / "Ton terrain d'abord" title
   Smaller, cleaner, more premium
   ========================================================= */

.coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy h3{
  font-size:clamp(30px,2.9vw,46px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  max-width:520px!important;
  text-wrap:balance!important;
}

@media(max-width:900px){
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy h3{
    font-size:clamp(29px,5vw,40px)!important;
    line-height:1.03!important;
    max-width:100%!important;
  }
}

@media(max-width:640px){
  .coach-application-photo.coach-terrain-photo-v93 .coach-photo-copy h3{
    font-size:clamp(28px,8.5vw,36px)!important;
    line-height:1.04!important;
    letter-spacing:-.03em!important;
  }
}


/* =========================================================
   V98 — ENTRAÎNEURS ONLY
   "Ton terrain d'abord" rebuilt as PHOTO TOP + BLUE TEXT BOTTOM
   ========================================================= */

.coach-application-photo.coach-terrain-photo-v98{
  position:relative!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  overflow:hidden!important;
  min-height:760px!important;
  height:auto!important;
  aspect-ratio:auto!important;
  border-radius:46px!important;
  background:#08111F!important;
  padding:0!important;
}

/* REAL PHOTO AREA — no text overlay */
.coach-terrain-photo-v98 .coach-terrain-media-v98{
  position:relative!important;
  min-height:500px!important;
  overflow:hidden!important;
  background:#08111F!important;
}

.coach-terrain-photo-v98 .coach-terrain-media-v98 img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:50% 43%!important;
  filter:brightness(.96) saturate(.96) contrast(1.02)!important;
  transform:none!important;
}

/* Smooth transition between image and copy */
.coach-terrain-photo-v98 .coach-terrain-media-v98::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:120px!important;
  pointer-events:none!important;
  background:linear-gradient(
    180deg,
    rgba(8,17,31,0) 0%,
    rgba(8,17,31,.18) 42%,
    rgba(8,17,31,.72) 78%,
    #0B1A2E 100%
  )!important;
}

/* TRUE BOTTOM TEXT AREA */
.coach-terrain-photo-v98 .coach-terrain-copy-v98{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  margin:0!important;
  transform:none!important;
  display:block!important;
  padding:30px 42px 42px!important;
  background:
    linear-gradient(180deg,#0B1A2E 0%,#091525 45%,#08111F 100%)!important;
  z-index:2!important;
}

.coach-terrain-photo-v98 .coach-terrain-copy-v98 .eyebrow{
  margin:0 0 14px!important;
  padding:0!important;
  color:#E6C77A!important;
  font-size:13px!important;
  line-height:1.2!important;
  letter-spacing:.18em!important;
}

.coach-terrain-photo-v98 .coach-terrain-copy-v98 h3{
  margin:0!important;
  padding:0!important;
  max-width:560px!important;
  font-size:clamp(28px,2.5vw,40px)!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
  color:#fff!important;
  text-wrap:balance!important;
}

.coach-terrain-photo-v98 .coach-terrain-copy-v98 p{
  margin:18px 0 0!important;
  padding:0!important;
  max-width:620px!important;
  color:rgba(245,247,250,.80)!important;
  font-size:clamp(16px,1.2vw,19px)!important;
  line-height:1.5!important;
}

/* Kill previous card-only overlay rules */
.coach-terrain-photo-v98::before,
.coach-terrain-photo-v98::after{
  content:none!important;
  display:none!important;
}

/* Tablet */
@media(max-width:900px){
  .coach-application-photo.coach-terrain-photo-v98{
    min-height:700px!important;
    border-radius:38px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-media-v98{
    min-height:460px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-copy-v98{
    padding:28px 34px 34px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-copy-v98 h3{
    font-size:clamp(28px,4.7vw,36px)!important;
  }
}

/* Mobile */
@media(max-width:640px){
  .coach-application-photo.coach-terrain-photo-v98{
    min-height:0!important;
    border-radius:30px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-media-v98{
    min-height:430px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-media-v98 img{
    object-position:50% 40%!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-media-v98::after{
    height:90px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-copy-v98{
    padding:24px 24px 28px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-copy-v98 .eyebrow{
    font-size:11px!important;
    margin-bottom:12px!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-copy-v98 h3{
    font-size:clamp(26px,8vw,34px)!important;
    line-height:1.05!important;
  }

  .coach-terrain-photo-v98 .coach-terrain-copy-v98 p{
    margin-top:16px!important;
    font-size:15.5px!important;
    line-height:1.48!important;
  }
}


/* =========================================================
   V99 — ONLY THE TWO STICKY CTA BUTTONS
   Raise them slightly so footer/supporting text stays visible
   ========================================================= */

.sticky-cta{
  bottom:42px!important;
}

@media(max-width:700px){
  .sticky-cta{
    bottom:max(34px,calc(env(safe-area-inset-bottom) + 20px))!important;
  }
}


/* =========================================================
   V100 — ONLY STICKY CTA POSITION
   Raised to align with the horizontal line
   ========================================================= */

.sticky-cta{
  bottom:68px!important;
}

@media(max-width:700px){
  .sticky-cta{
    bottom:max(54px,calc(env(safe-area-inset-bottom) + 38px))!important;
  }
}


/* =========================================================
   V102 — FOOTER LOGO ONLY
   Replace LD placeholder with gold MentalGym brain
   ========================================================= */

.footer-brain-logo-v102{
  width:88px!important;
  height:88px!important;
  min-width:88px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  padding:0!important;
}

.footer-brain-logo-v102 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.20))!important;
}

@media(max-width:700px){
  .footer-brain-logo-v102{
    width:72px!important;
    height:72px!important;
    min-width:72px!important;
  }
}


/* =========================================================
   V104 — TOP NAV ONLY
   Soft premium hover illumination
   ========================================================= */

.navlinks a{
  position:relative!important;
  transition:
    color .28s ease,
    opacity .28s ease,
    text-shadow .32s ease,
    transform .28s cubic-bezier(.2,.8,.2,1)!important;
}

/* Subtle luminous underline */
.navlinks a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-8px;
  width:0;
  height:1px;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    rgba(230,199,122,0),
    rgba(230,199,122,.95),
    rgba(230,199,122,0)
  );
  box-shadow:0 0 10px rgba(230,199,122,.35);
  transform:translateX(-50%);
  opacity:0;
  transition:
    width .32s cubic-bezier(.2,.8,.2,1),
    opacity .25s ease;
  pointer-events:none;
}

@media(hover:hover) and (pointer:fine){
  .navlinks a:hover{
    color:#E6C77A!important;
    opacity:1!important;
    transform:translateY(-1px)!important;
    text-shadow:
      0 0 12px rgba(230,199,122,.18),
      0 0 22px rgba(230,199,122,.08)!important;
  }

  .navlinks a:hover::after{
    width:72%;
    opacity:1;
  }
}

/* Keep current/active page clearly identifiable without aggressive glow */
.navlinks a.active,
.navlinks a[aria-current="page"]{
  color:#E6C77A!important;
}

.navlinks a.active::after,
.navlinks a[aria-current="page"]::after{
  width:56%;
  opacity:.72;
}

/* Keyboard accessibility with the same premium cue */
.navlinks a:focus-visible{
  color:#E6C77A!important;
  outline:1px solid rgba(230,199,122,.45)!important;
  outline-offset:8px!important;
  border-radius:3px;
  text-shadow:0 0 12px rgba(230,199,122,.16)!important;
}

@media(prefers-reduced-motion:reduce){
  .navlinks a,
  .navlinks a::after{
    transition:none!important;
  }

  .navlinks a:hover{
    transform:none!important;
  }
}


/* =========================================================
   V105 — ONLY "CHOISIR MON PARCOURS" BUTTON
   Soft premium hover to match top navigation
   ========================================================= */

.navcta{
  position:relative!important;
  overflow:hidden!important;
  transition:
    background .30s ease,
    color .30s ease,
    border-color .30s ease,
    box-shadow .32s ease,
    transform .28s cubic-bezier(.2,.8,.2,1)!important;
}

.navcta::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(
      circle at 50% 50%,
      rgba(255,255,255,.22) 0%,
      rgba(255,255,255,.08) 28%,
      transparent 62%
    );
  opacity:0;
  transition:opacity .30s ease;
}

@media(hover:hover) and (pointer:fine){
  .navcta:hover{
    background:#F1D486!important;
    color:#08111F!important;
    border-color:rgba(230,199,122,.72)!important;
    transform:translateY(-2px)!important;
    box-shadow:
      0 10px 24px rgba(8,17,31,.14),
      0 0 18px rgba(230,199,122,.18)!important;
  }

  .navcta:hover::after{
    opacity:1;
  }
}

.navcta:focus-visible{
  outline:1px solid rgba(230,199,122,.55)!important;
  outline-offset:4px!important;
  box-shadow:0 0 0 4px rgba(230,199,122,.10)!important;
}

@media(prefers-reduced-motion:reduce){
  .navcta,
  .navcta::after{
    transition:none!important;
  }

  .navcta:hover{
    transform:none!important;
  }
}


/* =========================================================
   V107 — GYMNASTES ONLY / PREMIUM PHOTO ZONES
   ========================================================= */

.gym-photo-story-v107,
.gym-photo-duo-v107,
.gym-photo-banner-section-v107{
  position:relative;
  overflow:hidden;
}

/* Shared frame */
.gym-photo-frame-v107,
.gym-photo-banner-v107{
  position:relative;
  overflow:hidden;
  border-radius:38px;
  background:
    radial-gradient(circle at 78% 20%, rgba(230,199,122,.18), transparent 30%),
    linear-gradient(145deg,#203a59 0%,#132742 45%,#08111F 100%);
  border:1px solid rgba(8,17,31,.08);
  box-shadow:0 28px 70px rgba(8,17,31,.14);
  transform-style:preserve-3d;
  isolation:isolate;
}

.gym-photo-frame-v107::before,
.gym-photo-banner-v107::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(8,17,31,.02),rgba(8,17,31,.10) 55%,rgba(8,17,31,.62) 100%);
}

.gym-photo-placeholder-v107{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:10px;
  padding:34px;
  color:#fff;
}

.gym-photo-placeholder-v107 span{
  font-size:11px;
  letter-spacing:.18em;
  font-weight:800;
  color:rgba(255,255,255,.58);
}

.gym-photo-placeholder-v107 strong{
  font-family:"Archivo",sans-serif;
  font-size:clamp(22px,2.3vw,38px);
  line-height:.98;
  letter-spacing:-.03em;
  color:#fff;
  max-width:80%;
}

.gym-photo-glow-v107{
  position:absolute;
  width:240px;
  height:240px;
  border-radius:50%;
  z-index:0;
  pointer-events:none;
  background:radial-gradient(circle,rgba(230,199,122,.18),rgba(230,199,122,0) 70%);
  filter:blur(14px);
  top:-80px;
  right:-60px;
  transition:transform .8s var(--ease), opacity .6s ease;
}

/* Story 01 */
.gym-photo-story-grid-v107{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);
  gap:clamp(32px,6vw,84px);
  align-items:center;
}

.gym-photo-large-v107{
  min-height:620px;
}

.gym-photo-story-copy-v107 h2{
  margin-top:18px;
}

/* Duo */
.gym-photo-duo-head-v107{
  margin-bottom:36px;
}

.gym-photo-duo-grid-v107{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:26px;
  align-items:stretch;
}

.gym-photo-portrait-v107{
  min-height:590px;
}

.gym-photo-landscape-v107{
  min-height:590px;
}

.gym-photo-landscape-v107 .gym-photo-placeholder-v107{
  align-items:flex-start;
}

/* Banner */
.gym-photo-banner-v107{
  min-height:560px;
  background:
    radial-gradient(circle at 70% 28%, rgba(230,199,122,.18), transparent 28%),
    linear-gradient(145deg,#142C48 0%,#0D1D31 48%,#08111F 100%);
}

.gym-photo-banner-inner-v107{
  position:relative;
  z-index:2;
  min-height:560px;
  display:flex;
  align-items:flex-end;
  padding:48px;
}

.gym-photo-banner-copy-v107{
  max-width:760px;
  position:relative;
  z-index:3;
}

.gym-photo-banner-copy-v107 h2{
  color:#fff;
  margin-top:18px;
  font-size:clamp(44px,5.2vw,78px);
  line-height:.94;
  letter-spacing:-.045em;
}

.gym-photo-placeholder-banner-v107{
  align-items:flex-end;
  justify-content:flex-start;
  padding:30px;
}

/* Hover / depth */
@media(hover:hover) and (pointer:fine){
  .gym-photo-frame-v107,
  .gym-photo-banner-v107{
    transition:
      transform .55s cubic-bezier(.2,.8,.2,1),
      box-shadow .55s ease,
      border-color .45s ease;
  }

  .gym-photo-frame-v107:hover,
  .gym-photo-banner-v107:hover{
    transform:translateY(-8px) rotateX(1.5deg) rotateY(-1.5deg);
    box-shadow:0 34px 86px rgba(8,17,31,.18);
    border-color:rgba(230,199,122,.24);
  }

  .gym-photo-frame-v107:hover .gym-photo-glow-v107,
  .gym-photo-banner-v107:hover .gym-photo-glow-v107{
    transform:translate(-28px,26px) scale(1.18);
    opacity:.95;
  }
}

/* Reveal refinement */
.gym-photo-frame-v107.reveal,
.gym-photo-banner-v107.reveal{
  opacity:0;
  transform:translateY(44px) scale(.985);
  transition:
    opacity .8s var(--ease),
    transform .9s var(--ease),
    box-shadow .55s ease;
}

.gym-photo-frame-v107.reveal.visible,
.gym-photo-banner-v107.reveal.visible{
  opacity:1;
  transform:none;
}

/* Tablet */
@media(max-width:960px){
  .gym-photo-story-grid-v107{
    grid-template-columns:1fr;
  }

  .gym-photo-large-v107{
    min-height:540px;
  }

  .gym-photo-duo-grid-v107{
    grid-template-columns:1fr 1fr;
  }

  .gym-photo-portrait-v107,
  .gym-photo-landscape-v107{
    min-height:500px;
  }
}

/* Mobile */
@media(max-width:700px){
  .gym-photo-frame-v107,
  .gym-photo-banner-v107{
    border-radius:28px;
  }

  .gym-photo-story-grid-v107{
    gap:28px;
  }

  .gym-photo-large-v107{
    min-height:430px;
  }

  .gym-photo-duo-grid-v107{
    grid-template-columns:1fr;
    gap:20px;
  }

  .gym-photo-portrait-v107{
    min-height:470px;
  }

  .gym-photo-landscape-v107{
    min-height:390px;
  }

  .gym-photo-banner-v107,
  .gym-photo-banner-inner-v107{
    min-height:470px;
  }

  .gym-photo-banner-inner-v107{
    padding:28px;
  }

  .gym-photo-banner-copy-v107 h2{
    font-size:clamp(34px,10vw,50px);
  }

  .gym-photo-placeholder-v107{
    padding:24px;
  }
}

@media(prefers-reduced-motion:reduce){
  .gym-photo-frame-v107,
  .gym-photo-banner-v107,
  .gym-photo-glow-v107{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V108 — GYMNASTES ZONE 05 ONLY
   Transformation / premium redesign
   ========================================================= */

.gym-zone05-v108{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 88% 10%,rgba(230,199,122,.10),transparent 28%),
    linear-gradient(180deg,#F9FAFB 0%,#FFFFFF 100%)!important;
}

.gym-zone05-orbit-v108{
  position:absolute;
  width:780px;
  height:780px;
  right:-340px;
  top:-320px;
  border-radius:50%;
  pointer-events:none;
  border:1px solid rgba(19,39,66,.06);
  box-shadow:
    0 0 0 70px rgba(19,39,66,.022),
    0 0 0 140px rgba(19,39,66,.016);
  z-index:0;
}

.gym-zone05-v108 .container{
  position:relative;
  z-index:2;
}

.gym-zone05-head-v108{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);
  gap:clamp(36px,6vw,86px);
  align-items:end;
  margin-bottom:clamp(42px,6vw,72px);
}

.gym-zone05-head-v108 h2{
  margin-top:16px;
}

.gym-zone05-head-v108 h2 em{
  color:#C8A74D;
  font-style:normal;
}

.gym-zone05-head-v108 .lead{
  margin:0;
  max-width:620px;
  color:#596674;
}

.gym-zone05-grid-v108{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.gym-zone05-card-v108{
  position:relative;
  min-height:500px;
  padding:28px;
  border-radius:28px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  background:
    radial-gradient(circle at 86% 8%,rgba(230,199,122,.13),transparent 27%),
    linear-gradient(160deg,#142A45 0%,#0B192B 55%,#08111F 100%);
  border:1px solid rgba(230,199,122,.15);
  box-shadow:0 18px 48px rgba(8,17,31,.11);
  color:#fff;
  transform-style:preserve-3d;
}

.gym-zone05-card-v108::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg,transparent 38%,rgba(255,255,255,.055) 50%,transparent 62%);
  transform:translateX(-130%);
  transition:transform .9s cubic-bezier(.2,.8,.2,1);
}

.gym-zone05-top-v108{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:48px;
}

.gym-zone05-index-v108{
  font:800 11px/1 "Archivo",sans-serif;
  letter-spacing:.16em;
  color:rgba(255,255,255,.42);
}

.gym-zone05-icon-v108{
  width:46px;
  height:46px;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#E6C77A;
  font:800 22px/1 "Archivo",sans-serif;
  background:
    radial-gradient(circle at 30% 24%,rgba(255,255,255,.18),transparent 24%),
    linear-gradient(145deg,#1B385A,#0C1D31);
  border:1px solid rgba(230,199,122,.24);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 9px 22px rgba(0,0,0,.18);
}

.gym-zone05-before-v108 span,
.gym-zone05-after-v108 span{
  display:block;
  margin-bottom:10px;
  font:800 9px/1 "Archivo",sans-serif;
  letter-spacing:.18em;
}

.gym-zone05-before-v108 span{
  color:#7E8B99;
}

.gym-zone05-after-v108 span{
  color:#E6C77A;
}

.gym-zone05-before-v108 p,
.gym-zone05-after-v108 p{
  margin:0;
  font-family:"Archivo",sans-serif;
  letter-spacing:-.025em;
}

.gym-zone05-before-v108 p{
  font-size:clamp(18px,1.45vw,23px);
  line-height:1.25;
  color:rgba(255,255,255,.66);
}

.gym-zone05-after-v108 p{
  font-size:clamp(21px,1.75vw,28px);
  line-height:1.14;
  font-weight:800;
  color:#fff;
}

.gym-zone05-shift-v108{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:12px;
  align-items:center;
  margin:28px 0;
  color:#E6C77A;
}

.gym-zone05-shift-v108 span{
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(230,199,122,.34));
}

.gym-zone05-shift-v108 span:last-child{
  background:linear-gradient(90deg,rgba(230,199,122,.34),transparent);
}

.gym-zone05-shift-v108 b{
  font-size:18px;
  font-weight:500;
}

.gym-zone05-tag-v108{
  margin-top:auto;
  padding-top:34px;
  font:800 9px/1.2 "Archivo",sans-serif;
  letter-spacing:.15em;
  color:rgba(230,199,122,.76);
}

.gym-zone05-bottom-v108{
  margin-top:22px;
  min-height:112px;
  border-radius:24px;
  padding:26px 30px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  background:#F2F4F7;
  border:1px solid rgba(8,17,31,.06);
}

.gym-zone05-bottom-v108 span{
  font:800 10px/1.3 "Archivo",sans-serif;
  letter-spacing:.16em;
  color:#6F7A86;
}

.gym-zone05-bottom-v108 strong{
  font:900 clamp(26px,3vw,44px)/.95 "Archivo",sans-serif;
  letter-spacing:-.045em;
  color:#08111F;
}

/* Hover: calm, premium, no exaggerated tilt */
@media(hover:hover) and (pointer:fine){
  .gym-zone05-card-v108{
    transition:
      transform .42s cubic-bezier(.2,.8,.2,1),
      box-shadow .42s ease,
      border-color .42s ease;
  }

  .gym-zone05-card-v108:hover{
    transform:translateY(-7px);
    border-color:rgba(230,199,122,.30);
    box-shadow:0 28px 68px rgba(8,17,31,.16);
  }

  .gym-zone05-card-v108:hover::before{
    transform:translateX(130%);
  }

  .gym-zone05-card-v108:hover .gym-zone05-icon-v108{
    transform:translateY(-2px) scale(1.04);
  }

  .gym-zone05-icon-v108{
    transition:transform .35s cubic-bezier(.2,.8,.2,1);
  }
}

@media(max-width:1000px){
  .gym-zone05-head-v108{
    grid-template-columns:1fr;
    gap:24px;
  }

  .gym-zone05-grid-v108{
    grid-template-columns:1fr;
  }

  .gym-zone05-card-v108{
    min-height:0;
  }

  .gym-zone05-top-v108{
    margin-bottom:34px;
  }
}

@media(max-width:700px){
  .gym-zone05-card-v108{
    padding:24px;
    border-radius:24px;
  }

  .gym-zone05-bottom-v108{
    flex-direction:column;
    align-items:flex-start;
    min-height:0;
    padding:24px;
  }

  .gym-zone05-bottom-v108 strong{
    font-size:clamp(28px,9vw,38px);
  }
}

@media(prefers-reduced-motion:reduce){
  .gym-zone05-card-v108,
  .gym-zone05-card-v108::before,
  .gym-zone05-icon-v108{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V109 — GYMNASTES ONLY
   REDESIGN "DES REPÈRES QUI SE VOIENT DANS LE CORPS"
   ========================================================= */

.gym-photo-duo-v109{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 8%,rgba(230,199,122,.08),transparent 24%),
    linear-gradient(180deg,#FBFBFA 0%,#F7F8FA 100%)!important;
}

.gym-photo-duo-v109::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.32;
  background-image:
    linear-gradient(rgba(8,17,31,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(8,17,31,.04) 1px,transparent 1px);
  background-size:96px 96px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 78%);
}

.gym-photo-duo-v109 .container{
  position:relative;
  z-index:2;
}

.gym-photo-duo-head-v109{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:clamp(34px,6vw,84px);
  align-items:end;
  margin-bottom:clamp(44px,6vw,76px);
}

.gym-photo-duo-head-v109 h2{
  margin-top:16px;
  max-width:900px;
}

.gym-photo-duo-head-v109 .lead{
  margin:0;
  max-width:590px;
  color:#5E6B78;
}

.gym-photo-duo-stage-v109{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.gym-photo-scene-v109{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  background:#fff;
  border:1px solid rgba(8,17,31,.07);
  box-shadow:0 24px 64px rgba(8,17,31,.10);
}

.gym-photo-scene-media-v109{
  position:relative;
  min-height:520px;
  overflow:hidden;
  background:
    radial-gradient(circle at 70% 18%,rgba(230,199,122,.16),transparent 27%),
    linear-gradient(145deg,#203B5B 0%,#132742 48%,#08111F 100%);
}

.gym-photo-scene-media-v109::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(8,17,31,.02) 0%,rgba(8,17,31,.04) 50%,rgba(8,17,31,.74) 100%);
  z-index:1;
}

.gym-photo-placeholder-v109{
  position:absolute;
  top:28px;
  left:30px;
  z-index:4;
}

.gym-photo-placeholder-v109 span{
  font:800 10px/1 "Archivo",sans-serif;
  letter-spacing:.18em;
  color:rgba(255,255,255,.48);
}

.gym-photo-scene-badge-v109{
  position:absolute;
  left:30px;
  bottom:30px;
  z-index:4;
}

.gym-photo-scene-badge-v109 span{
  display:block;
  margin-bottom:7px;
  font:800 10px/1 "Archivo",sans-serif;
  letter-spacing:.18em;
  color:#E6C77A;
}

.gym-photo-scene-badge-v109 strong{
  display:block;
  font:900 clamp(30px,3vw,50px)/.92 "Archivo",sans-serif;
  letter-spacing:-.045em;
  color:#fff;
}

.gym-photo-scene-number-v109{
  position:absolute;
  right:-12px;
  top:-24px;
  z-index:0;
  font:900 clamp(120px,15vw,220px)/.8 "Archivo",sans-serif;
  letter-spacing:-.08em;
  color:rgba(255,255,255,.035);
  pointer-events:none;
}

.gym-photo-scene-light-v109{
  position:absolute;
  width:280px;
  height:280px;
  border-radius:50%;
  right:-90px;
  top:-80px;
  z-index:0;
  pointer-events:none;
  background:radial-gradient(circle,rgba(230,199,122,.22),rgba(230,199,122,0) 70%);
  filter:blur(12px);
}

.gym-photo-scene-copy-v109{
  padding:30px 32px 34px;
  background:#fff;
}

.gym-photo-scene-kicker-v109{
  display:block;
  margin-bottom:14px;
  font:800 9px/1 "Archivo",sans-serif;
  letter-spacing:.17em;
  color:#B89436;
}

.gym-photo-scene-copy-v109 h3{
  margin:0;
  font-size:clamp(23px,2vw,32px);
  line-height:1.06;
  color:#08111F;
  max-width:620px;
}

.gym-photo-scene-copy-v109 p{
  margin:18px 0 0;
  color:#65717D;
  font-size:16px;
  line-height:1.55;
  max-width:610px;
}

.gym-photo-duo-footer-v109{
  margin-top:24px;
  min-height:104px;
  padding:24px 30px;
  border-radius:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  background:#08111F;
  border:1px solid rgba(230,199,122,.14);
}

.gym-photo-duo-footer-v109 span{
  font:800 10px/1.3 "Archivo",sans-serif;
  letter-spacing:.16em;
  color:rgba(255,255,255,.52);
}

.gym-photo-duo-footer-v109 strong{
  font:900 clamp(24px,2.8vw,42px)/.95 "Archivo",sans-serif;
  letter-spacing:-.04em;
  color:#E6C77A;
}

/* Premium movement */
@media(hover:hover) and (pointer:fine){
  .gym-photo-scene-v109{
    transition:
      transform .44s cubic-bezier(.2,.8,.2,1),
      box-shadow .44s ease,
      border-color .44s ease;
  }

  .gym-photo-scene-v109:hover{
    transform:translateY(-8px);
    box-shadow:0 34px 84px rgba(8,17,31,.15);
    border-color:rgba(230,199,122,.24);
  }

  .gym-photo-scene-light-v109{
    transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .5s ease;
  }

  .gym-photo-scene-v109:hover .gym-photo-scene-light-v109{
    transform:translate(-28px,30px) scale(1.18);
  }
}

/* Tablet */
@media(max-width:980px){
  .gym-photo-duo-head-v109{
    grid-template-columns:1fr;
    gap:24px;
  }

  .gym-photo-duo-stage-v109{
    grid-template-columns:1fr;
  }

  .gym-photo-scene-media-v109{
    min-height:500px;
  }
}

/* Mobile */
@media(max-width:700px){
  .gym-photo-duo-v109::before{
    background-size:64px 64px;
  }

  .gym-photo-scene-v109{
    border-radius:26px;
  }

  .gym-photo-scene-media-v109{
    min-height:420px;
  }

  .gym-photo-scene-copy-v109{
    padding:24px;
  }

  .gym-photo-scene-badge-v109{
    left:24px;
    bottom:24px;
  }

  .gym-photo-placeholder-v109{
    left:24px;
    top:24px;
  }

  .gym-photo-duo-footer-v109{
    flex-direction:column;
    align-items:flex-start;
    min-height:0;
    padding:24px;
  }
}

@media(prefers-reduced-motion:reduce){
  .gym-photo-scene-v109,
  .gym-photo-scene-light-v109{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V110 — GYMNASTES PHOTO SLOT 01 ONLY
   Real gymnast photo integrated
   ========================================================= */

.gym-photo-filled-v110{
  position:relative!important;
  overflow:hidden!important;
  background:#08111F!important;
}

.gym-photo-picture-v110,
.gym-photo-picture-v110 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
}

.gym-photo-picture-v110{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
}

.gym-photo-picture-v110 img{
  object-fit:cover!important;
  object-position:50% 44%!important;
  filter:brightness(.92) saturate(.98) contrast(1.02)!important;
  transition:transform 1.2s cubic-bezier(.2,.8,.2,1), filter .6s ease!important;
}

.gym-photo-filled-v110::before{
  content:none!important;
  display:none!important;
}

.gym-photo-filled-overlay-v110{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(
      180deg,
      rgba(8,17,31,.02) 0%,
      rgba(8,17,31,.02) 52%,
      rgba(8,17,31,.30) 72%,
      rgba(8,17,31,.78) 100%
    )!important;
}

.gym-photo-filled-caption-v110{
  position:absolute!important;
  left:34px!important;
  right:34px!important;
  bottom:32px!important;
  z-index:3!important;
}

.gym-photo-filled-caption-v110 span{
  display:block!important;
  max-width:80%!important;
  font:800 clamp(18px,1.7vw,27px)/1.03 "Archivo",sans-serif!important;
  letter-spacing:-.02em!important;
  color:#fff!important;
  text-shadow:0 3px 18px rgba(8,17,31,.32)!important;
}

@media(hover:hover) and (pointer:fine){
  .gym-photo-filled-v110:hover .gym-photo-picture-v110 img{
    transform:scale(1.035)!important;
    filter:brightness(.95) saturate(1.01) contrast(1.02)!important;
  }
}

@media(max-width:700px){
  .gym-photo-picture-v110 img{
    object-position:50% 42%!important;
  }

  .gym-photo-filled-caption-v110{
    left:24px!important;
    right:24px!important;
    bottom:24px!important;
  }

  .gym-photo-filled-caption-v110 span{
    max-width:100%!important;
    font-size:20px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .gym-photo-picture-v110 img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V111 — GYMNASTES ONLY / PHOTOS 02 + 03
   Real imagery inside existing Before / After cards
   ========================================================= */

.gym-photo-scene-picture-v111{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
}

.gym-photo-scene-picture-v111 img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  transition:
    transform 1.15s cubic-bezier(.2,.8,.2,1),
    filter .55s ease!important;
}

/* Leïla portrait */
.gym-photo-scene-before-v109 .gym-photo-scene-picture-v111 img{
  object-position:50% 38%!important;
  filter:brightness(.90) saturate(.95) contrast(1.03)!important;
}

/* Gymnast result photo */
.gym-photo-scene-after-v109 .gym-photo-scene-picture-v111 img{
  object-position:50% 42%!important;
  filter:brightness(.94) saturate(.98) contrast(1.02)!important;
}

.gym-photo-scene-image-overlay-v111{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(
      180deg,
      rgba(8,17,31,.02) 0%,
      rgba(8,17,31,.04) 46%,
      rgba(8,17,31,.28) 67%,
      rgba(8,17,31,.82) 100%
    )!important;
}

/* Existing labels and badges above images */
.gym-photo-scene-v109 .gym-photo-placeholder-v109,
.gym-photo-scene-v109 .gym-photo-scene-badge-v109,
.gym-photo-scene-v109 .gym-photo-scene-number-v109,
.gym-photo-scene-v109 .gym-photo-scene-light-v109{
  z-index:4!important;
}

@media(hover:hover) and (pointer:fine){
  .gym-photo-scene-v109:hover .gym-photo-scene-picture-v111 img{
    transform:scale(1.035)!important;
  }

  .gym-photo-scene-before-v109:hover .gym-photo-scene-picture-v111 img{
    filter:brightness(.94) saturate(.98) contrast(1.03)!important;
  }

  .gym-photo-scene-after-v109:hover .gym-photo-scene-picture-v111 img{
    filter:brightness(.97) saturate(1.01) contrast(1.02)!important;
  }
}

@media(max-width:700px){
  .gym-photo-scene-before-v109 .gym-photo-scene-picture-v111 img{
    object-position:50% 34%!important;
  }

  .gym-photo-scene-after-v109 .gym-photo-scene-picture-v111 img{
    object-position:50% 40%!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .gym-photo-scene-picture-v111 img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V112 — GYMNASTES ONLY / IMMERSIVE BANNER PHOTO
   ========================================================= */

.gym-photo-banner-v107{
  position:relative!important;
  overflow:hidden!important;
  background:#08111F!important;
}

.gym-photo-banner-picture-v112{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
}

.gym-photo-banner-picture-v112 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:58% 48%!important;
  filter:brightness(.84) saturate(.94) contrast(1.04)!important;
  transition:
    transform 1.4s cubic-bezier(.2,.8,.2,1),
    filter .65s ease!important;
}

.gym-photo-banner-overlay-v112{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(
      90deg,
      rgba(8,17,31,.92) 0%,
      rgba(8,17,31,.80) 28%,
      rgba(8,17,31,.48) 50%,
      rgba(8,17,31,.16) 72%,
      rgba(8,17,31,.06) 100%
    ),
    linear-gradient(
      180deg,
      rgba(8,17,31,.08) 0%,
      rgba(8,17,31,.04) 50%,
      rgba(8,17,31,.38) 100%
    )!important;
}

.gym-photo-banner-v107 .gym-photo-banner-inner-v107{
  position:relative!important;
  z-index:3!important;
}

.gym-photo-banner-v107 .gym-photo-banner-copy-v107{
  max-width:760px!important;
}

.gym-photo-banner-v107 .gym-photo-banner-copy-v107 h2{
  color:#fff!important;
  text-shadow:0 4px 28px rgba(8,17,31,.28)!important;
}

.gym-photo-banner-v107 .gym-photo-banner-copy-v107 .eyebrow{
  color:#E6C77A!important;
}

@media(hover:hover) and (pointer:fine){
  .gym-photo-banner-v107:hover .gym-photo-banner-picture-v112 img{
    transform:scale(1.035)!important;
    filter:brightness(.88) saturate(.98) contrast(1.04)!important;
  }
}

@media(max-width:700px){
  .gym-photo-banner-picture-v112 img{
    object-position:54% 44%!important;
    filter:brightness(.78) saturate(.94) contrast(1.04)!important;
  }

  .gym-photo-banner-overlay-v112{
    background:
      linear-gradient(
        180deg,
        rgba(8,17,31,.08) 0%,
        rgba(8,17,31,.10) 30%,
        rgba(8,17,31,.52) 58%,
        rgba(8,17,31,.92) 82%,
        rgba(8,17,31,.98) 100%
      )!important;
  }

  .gym-photo-banner-v107 .gym-photo-banner-inner-v107{
    align-items:flex-end!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .gym-photo-banner-picture-v112 img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   V113 — LOCKED RESPONSIVE HARDENING
   Technical safeguards only. No design redesign.
   ========================================================= */

/* Global overflow protection */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}

img,
picture,
video,
svg,
canvas{
  max-width:100%;
}

img,
video{
  height:auto;
}

/* Prevent grid/flex children from forcing horizontal overflow */
.container > *,
.grid2 > *,
.grid3 > *,
.sticky-wrap > *,
.gym-photo-story-grid-v107 > *,
.gym-zone05-head-v108 > *,
.gym-zone05-grid-v108 > *,
.gym-photo-duo-head-v109 > *,
.gym-photo-duo-stage-v109 > *,
.footer-legacy-top > *{
  min-width:0;
}

/* The JS-created hamburger is mobile/tablet only */
.menu-toggle{
  display:none;
}

@media(max-width:900px){
  .menu-toggle{
    display:block;
    flex:0 0 48px;
    margin-left:auto;
    z-index:205;
  }

  .nav{
    gap:14px;
  }

  .nav .brand{
    min-width:0;
    max-width:calc(100% - 66px);
    overflow:hidden;
  }

  .nav .brand img{
    max-width:100%!important;
    object-fit:contain!important;
  }

  .menu-panel{
    overflow-y:auto;
    overscroll-behavior:contain;
    padding-top:104px;
    padding-bottom:max(44px,env(safe-area-inset-bottom));
  }

  .menu-links a{
    font-size:clamp(31px,8vw,54px);
    overflow-wrap:anywhere;
  }

  /* Long editorial headings stay inside viewport */
  h1,
  h2,
  h3{
    overflow-wrap:normal;
    word-break:normal;
  }

  .section-number{
    pointer-events:none;
  }
}

@media(max-width:700px){
  /* Comfortable side gutters on all premium additions */
  .gym-photo-story-v107 .container,
  .gym-zone05-v108 .container,
  .gym-photo-duo-v109 .container,
  .gym-photo-banner-section-v107 .container{
    width:min(100% - 28px,1180px);
  }

  /* Prevent recent premium headings from becoming oversized */
  .gym-zone05-head-v108 h2,
  .gym-photo-duo-head-v109 h2,
  .gym-photo-banner-copy-v107 h2{
    max-width:100%;
  }

  /* Keep mobile CTA clear of footer content */
  .sticky-cta + .site-footer{
    padding-bottom:130px;
  }

  /* Touch-friendly menu */
  .menu-toggle{
    width:44px;
    height:44px;
    flex-basis:44px;
  }

  .menu-toggle span,
  .menu-toggle:before,
  .menu-toggle:after{
    left:13px;
    top:21px;
  }
}

@media(max-width:380px){
  .container{
    width:min(100% - 24px,1180px);
  }

  .brand-logo-v88 img,
  .brand-rythmique-v89 img{
    max-width:170px!important;
    height:30px!important;
  }

  .sticky-cta{
    left:12px!important;
    right:12px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    letter-spacing:.07em!important;
    font-size:10px!important;
  }

  .gym-photo-scene-copy-v109,
  .gym-zone05-card-v108{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}

@supports not (overflow:clip){
  html,
  body{
    overflow-x:hidden;
  }
}

/* =========================================================
   V114 — HOME HERO MOBILE SIGNATURE POSITION ONLY
   Fix only the Leïla Dridi signature on the home hero in mobile.
   Move it below the CTA buttons and align it to the right,
   without touching any other section or desktop layout.
   ========================================================= */
@media (max-width:620px){
  .hero:not(.path-hero) .hero-copy{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
  }

  .hero:not(.path-hero) .hero-signature{
    position:static;
    align-self:flex-end;
    margin-top:12px;
    margin-right:2px;
    bottom:auto;
    right:auto;
    font-size:clamp(34px,9.2vw,42px);
    line-height:.92;
    text-align:right;
  }
}

/* =========================================================
   V115 — MOBILE SECTION NUMBERS VISIBILITY ONLY
   Fix only the large background section numbers on mobile
   so 01, 02, etc. are fully visible and no longer clipped.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:700px){
  .section-number{
    right:12px;
  }
}

/* =========================================================
   V116 — MOBILE WHATSAPP DIRECT CTA ARROW ONLY
   Fix only the mobile rendering of the WhatsApp direct button
   so the arrow appears as a clean typographic arrow, not as
   an iPhone emoji-style icon. Desktop remains untouched.
   ========================================================= */
@media (max-width:600px){
  .conversion-direct a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:0;
    letter-spacing:0;
  }

  .conversion-direct a::before{
    content:"WhatsApp \2197";
    font:800 10px/1 "Archivo",sans-serif;
    letter-spacing:.09em;
  }
}

/* =========================================================
   V117 — MOBILE MENU FITS ITS CONTENT ONLY
   Mobile/tablet only: the opened menu no longer stretches
   to the bottom of the viewport. It ends naturally just
   after the visible navigation information.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:900px){
  .menu-panel{
    bottom:auto;
    min-height:0;
    height:auto;
    max-height:100svh;
    padding-bottom:30px;
    overflow-y:auto;
  }
}

/* =========================================================
   V118 — MOBILE MENU PREMIUM BOTTOM SPACE ONLY
   Keep the mobile menu as a clean full-screen panel with a
   controlled empty space under the last item, like a premium
   navigation drawer. No extra downward continuation.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:600px){
  .menu-panel{
    inset:0 0 auto 0;
    bottom:auto;
    height:100svh;
    min-height:100svh;
    max-height:100svh;
    padding-bottom:max(40px,env(safe-area-inset-bottom));
    overflow:hidden;
    align-content:start;
  }
}

/* =========================================================
   V119 — GYMNASTES MOBILE ARROW ICON ONLY
   Fix only the mobile icon on the Gymnastes page card
   "COMPARAISON → REPÈRES" so it renders as a clean
   typographic arrow like desktop, not an iPhone emoji.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:700px){
  .gym-zone05-grid-v108 .gym-zone05-card-v108:nth-child(2) .gym-zone05-icon-v108{
    position:relative;
    color:transparent;
    font-size:0;
  }

  .gym-zone05-grid-v108 .gym-zone05-card-v108:nth-child(2) .gym-zone05-icon-v108::before{
    content:"\2197\FE0E";
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    color:#E6C77A;
    font:500 24px/1 "Archivo", Arial, sans-serif;
    letter-spacing:0;
    transform:translateY(-1px);
  }
}


/* =========================================================
   V120 — MOBILE PATH-PAGE STICKY CTA AFTER HERO ONLY
   Gymnastes + Entraîneurs only, mobile only.
   The bottom conversion CTA stays completely hidden while
   any part of the hero is still present. It appears only
   after the hero has been fully passed, then follows scroll.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:700px){
  .mobile-hero-sticky-v120{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(0,18px,0)!important;
    transition:
      opacity .28s ease,
      transform .34s var(--ease),
      visibility 0s linear .34s!important;
  }

  .mobile-hero-sticky-v120.is-visible-v120{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition:
      opacity .28s ease,
      transform .34s var(--ease),
      visibility 0s linear 0s!important;
  }
}

/* =========================================================
   V122 — ENTRAINEURS MOBILE ICONS ONLY
   Fix only the mobile icons in the coach axis cards so the
   arrows render like desktop typographic icons instead of
   iPhone emoji glyphs. Desktop remains untouched.
   ========================================================= */
@media (max-width:700px){
  .coach-axis-card:nth-child(2) .coach-axis-icon,
  .coach-axis-card:nth-child(3) .coach-axis-icon{
    position:relative;
    color:transparent;
    font-size:0;
  }

  .coach-axis-card:nth-child(2) .coach-axis-icon::before,
  .coach-axis-card:nth-child(3) .coach-axis-icon::before{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center start;
    color:#E6C77A;
    font-family:"Archivo", Arial, sans-serif;
    font-size:44px;
    font-weight:500;
    line-height:1;
    letter-spacing:0;
  }

  .coach-axis-card:nth-child(2) .coach-axis-icon::before{
    content:"\2194\FE0E";
  }

  .coach-axis-card:nth-child(3) .coach-axis-icon::before{
    content:"\2197\FE0E";
  }
}

/* =========================================================
   V123 — MOBILE EMILIE CTA ARROW ONLY
   Fix only the mobile CTA arrow in the salaried coach route
   so it renders like a clean desktop typographic arrow,
   not an iPhone emoji glyph. Desktop remains untouched.
   ========================================================= */
@media (max-width:760px){
  .coach-salarie-route-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:0;
    letter-spacing:0;
  }

  .coach-salarie-route-cta::before{
    content:"Prendre rendez-vous avec Émilie \2197\FE0E";
    font:800 10px/1 "Archivo",sans-serif;
    letter-spacing:.06em;
  }
}

/* =========================================================
   V124 — MOBILE MENU TRUE FULL-SCREEN LOCK ONLY
   When the mobile menu is open, the page behind it cannot
   move or become visible. The menu stays pinned to the full
   dynamic viewport and any necessary scrolling is contained
   inside the menu itself. Desktop remains untouched.
   ========================================================= */
@media (max-width:900px){
  .menu-open .menu-panel{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:none!important;
    -webkit-overflow-scrolling:touch;
    background-color:#08111F!important;
  }
}

/* =========================================================
   V125 — MOBILE HUMAN SYSTEM ICONS ONLY
   Fix only the 3 icons in the "La performance est un système
   humain" section on mobile so they render with the same
   size and structure as desktop, without iPhone emoji drift.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:640px){
  .human-system-card .human-system-icon{
    position:relative;
    width:42px;
    height:42px;
    margin-top:34px;
    display:grid;
    align-items:center;
    justify-items:start;
    color:transparent;
    font-size:0;
    line-height:1;
  }

  .human-system-card .human-system-icon::before{
    position:absolute;
    left:0;
    top:50%;
    transform:translateY(-50%);
    color:#C9A94E;
    font-family:"Archivo", Arial, sans-serif;
    font-weight:500;
    font-size:34px;
    line-height:1;
    letter-spacing:0;
  }

  .human-system-card:nth-child(1) .human-system-icon::before{
    content:"\25CE\FE0E";
  }

  .human-system-card:nth-child(2) .human-system-icon::before{
    content:"\2194\FE0E";
  }

  .human-system-card:nth-child(3) .human-system-icon::before{
    content:"\25CC\FE0E";
  }
}

/* =========================================================
   V126 — HOME MOBILE WHATSAPP ARROW HARD FIX ONLY
   Force the home mobile WhatsApp CTA to use a text-style arrow
   identical in spirit to desktop, avoiding iPhone emoji render.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:600px){
  .conversion-direct a{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:transparent!important;
    font-size:0!important;
    letter-spacing:0!important;
    text-indent:-9999px;
    overflow:hidden;
    white-space:nowrap;
  }

  .conversion-direct a::before{
    content:"WhatsApp \2197\FE0E";
    position:static;
    display:block;
    color:#fff;
    font:800 10px/1 "Archivo",sans-serif;
    letter-spacing:.09em;
    text-indent:0;
  }
}

/* =========================================================
   V127 — ENTRAINEURS MOBILE ICON POSITION ONLY
   Keep the mobile coach icons already corrected, but place
   them cleanly above the titles like desktop, with no overlap.
   Desktop remains untouched.
   ========================================================= */
@media (max-width:700px){
  .coach-axis-card:nth-child(2) .coach-axis-icon,
  .coach-axis-card:nth-child(3) .coach-axis-icon{
    width:44px;
    height:44px;
    margin-top:44px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    position:relative;
    color:transparent;
    font-size:0;
    line-height:1;
  }

  .coach-axis-card:nth-child(2) .coach-axis-icon::before,
  .coach-axis-card:nth-child(3) .coach-axis-icon::before{
    position:static;
    display:block;
    transform:none;
    inset:auto;
    color:#E6C77A;
    font-family:"Archivo", Arial, sans-serif;
    font-size:44px;
    font-weight:500;
    line-height:1;
    letter-spacing:0;
  }
}

/* =========================================================
   V132 — HOME MOBILE PARCOURS 01 LAYERING ONLY
   Mobile only, homepage #parcours only:
   keep the large 01 as a background element and guarantee
   the editorial copy stays clearly above it.
   Desktop and every other section remain untouched.
   ========================================================= */
@media (max-width:700px){
  #parcours{
    isolation:isolate;
  }

  #parcours > .section-number{
    z-index:0!important;
    pointer-events:none!important;
  }

  #parcours > .container{
    position:relative!important;
    z-index:3!important;
  }

  #parcours .eyebrow,
  #parcours h2{
    position:relative!important;
    z-index:4!important;
  }
}

/* =========================================================
   V133 — LEILA IDENTITY + CONTENT EVOLUTION
   Scope: approved September 2026 recommendations only.
   Navy remains the premium base; pink + solar yellow return
   as Leïla's personal accents without recoloring the whole site.
   ========================================================= */
:root{
  --leila-pink:#E8A6B8;
  --leila-pink-strong:#E783A3;
  --leila-pink-soft:#FAE9EF;
  --leila-sun:#F0C96F;
  --leila-cream:#FFF8F3;
  --leila-ink:#08111F;
}

/* Personal signature: warm, feminine, solar, still premium */
.hero:not(.path-hero) .hero-signature::after{
  background:linear-gradient(90deg,var(--leila-pink),var(--leila-sun),transparent);
}
.home-leila-accent-v133{
  background:
    radial-gradient(circle at 84% 18%,rgba(232,166,184,.16),transparent 25%),
    radial-gradient(circle at 18% 88%,rgba(240,201,111,.10),transparent 24%),
    #08111F;
}
.home-leila-accent-v133 .eyebrow{color:#F1B7C7}
.home-leila-accent-v133 .leila-home-photo-v74{
  box-shadow:0 28px 74px rgba(232,166,184,.13),0 20px 55px rgba(0,0,0,.16);
}
.home-leila-accent-v133 .leila-home-photo-v74::after{
  border-color:rgba(240,201,111,.38)!important;
}
.home-coach-preview{
  background:
    radial-gradient(circle at 88% 18%,rgba(232,166,184,.12),transparent 24%),
    radial-gradient(circle at 10% 92%,rgba(240,201,111,.08),transparent 24%),
    #08111F!important;
}
.home-coach-preview .eyebrow{color:#F1B7C7}
.home-coach-preview h2 em{color:var(--leila-sun)!important}

/* ---------- CLUBS ---------- */
.clubs-premium-v133{
  background:
    radial-gradient(circle at 9% 9%,rgba(232,166,184,.23),transparent 24%),
    radial-gradient(circle at 91% 91%,rgba(240,201,111,.18),transparent 24%),
    linear-gradient(180deg,#FFFDFC 0%,#FFF6F2 100%);
  color:var(--leila-ink);
  isolation:isolate;
}
.clubs-orbit-v133{
  position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.5;
  background:
    repeating-radial-gradient(ellipse at 82% 20%,transparent 0 62px,rgba(232,166,184,.12) 63px 64px,transparent 65px 101px),
    repeating-radial-gradient(ellipse at 12% 85%,transparent 0 80px,rgba(240,201,111,.11) 81px 82px,transparent 83px 126px);
}
.clubs-head-v133{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:end;margin-bottom:42px}
.clubs-head-v133 .eyebrow{color:#C96E8A}
.clubs-head-v133 h2{margin-bottom:0}
.clubs-head-v133 .lead{color:#5D6874;max-width:650px}
.clubs-story-v133{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch}
.clubs-video-card-v133{border-radius:30px;overflow:hidden;background:#08111F;color:#fff;box-shadow:0 26px 70px rgba(8,17,31,.13)}
.clubs-video-wrap-v133{position:relative;min-height:520px;overflow:hidden;background:#101d2c}
.clubs-video-wrap-v133 video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.94) contrast(1.03)}
.clubs-video-wrap-v133::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(8,17,31,.82) 100%);pointer-events:none}
.clubs-live-v133{position:absolute;z-index:2;left:22px;top:22px;padding:9px 12px;border-radius:999px;background:rgba(8,17,31,.72);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.16);font:800 9px/1 "Archivo",sans-serif;letter-spacing:.14em}
.clubs-live-v133::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--leila-pink);margin-right:8px}
.clubs-video-copy-v133{padding:28px 30px 32px}
.clubs-video-copy-v133>span{font:800 9px/1 "Archivo",sans-serif;letter-spacing:.15em;color:var(--leila-sun)}
.clubs-video-copy-v133 h3{font-size:clamp(27px,2.5vw,40px);margin:13px 0 12px}
.clubs-video-copy-v133 p{color:#B9C3CD;line-height:1.6;margin:0}
.clubs-offers-v133{display:grid;grid-template-rows:1fr 1fr auto;gap:14px}
.club-offer-v133{border-radius:26px;padding:28px;min-height:220px;border:1px solid rgba(8,17,31,.08);box-shadow:0 18px 44px rgba(8,17,31,.07);display:flex;flex-direction:column;justify-content:flex-end}
.club-offer-v133>span{position:absolute;left:28px;top:25px;font:900 12px/1 "Archivo",sans-serif;letter-spacing:.14em;color:#08111F}
.club-offer-v133 h3{font-size:clamp(24px,2vw,33px);margin-bottom:12px}
.club-offer-v133 p{color:#586471;line-height:1.55;margin:0}
.club-offer-pink-v133{background:linear-gradient(145deg,#FFF,#F9E3EB)}
.club-offer-sun-v133{background:linear-gradient(145deg,#FFF,#FBF1D5)}
.club-audiences-v133{display:flex;flex-wrap:wrap;gap:8px;padding-top:3px}
.club-audiences-v133 span{padding:10px 13px;border-radius:999px;background:#08111F;color:#fff;font:800 9px/1 "Archivo",sans-serif;letter-spacing:.12em}
.club-audiences-v133 span:nth-child(2){background:#D97F9A}
.club-audiences-v133 span:nth-child(3){background:#E9C263;color:#08111F}
.clubs-map-grid-v133{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
.clubs-map-card-v133,.clubs-list-card-v133{border-radius:30px;background:#fff;border:1px solid rgba(8,17,31,.08);box-shadow:0 22px 58px rgba(8,17,31,.07);padding:30px;min-height:500px}
.clubs-map-top-v133{display:flex;justify-content:space-between;gap:20px;align-items:center;font:800 9px/1.2 "Archivo",sans-serif;letter-spacing:.12em;color:#7A8691}
.clubs-map-top-v133 b{color:#C96E8A}
.clubs-france-v133{display:block;width:min(100%,430px);height:auto;margin:18px auto 4px;overflow:visible}
.clubs-france-v133>path,.clubs-france-v133>ellipse{fill:#FFF6F1;stroke:#D9A5B4;stroke-width:3}
.club-pins-v133 circle{fill:#E6C77A;stroke:#08111F;stroke-width:3;filter:drop-shadow(0 5px 8px rgba(8,17,31,.13))}
.clubs-map-card-v133>p{color:#6D7883;font-size:12px;text-align:center;line-height:1.5;margin:0}
.clubs-list-card-v133{display:flex;flex-direction:column}
.clubs-list-card-v133 .eyebrow{color:#C96E8A}
.clubs-chips-v133{display:flex;flex-wrap:wrap;gap:8px}
.clubs-chips-v133 span,.clubs-international-v133 span{border-radius:999px;padding:10px 13px;background:#F8F3F1;border:1px solid rgba(8,17,31,.07);font:700 10px/1 "Archivo",sans-serif;color:#263546}
.clubs-international-v133{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(8,17,31,.08)}
.clubs-international-v133 b{font:800 9px/1 "Archivo",sans-serif;letter-spacing:.13em;color:#C96E8A;margin-right:5px}
.clubs-cta-v133{margin-top:auto;align-self:flex-start;background:var(--leila-pink)!important;border-color:var(--leila-pink)!important;color:#08111F!important}

/* ---------- PODCAST: return to Leïla's real pink identity ---------- */
.podcast-leila-v133{
  background:
    radial-gradient(circle at 88% 15%,rgba(232,166,184,.21),transparent 25%),
    radial-gradient(circle at 8% 85%,rgba(240,201,111,.12),transparent 23%),
    var(--leila-cream)!important;
}
.podcast-leila-v133 .eyebrow{color:#C96E8A}
.podcast-leila-v133 .podcast-cover-real-v133{border:1px solid rgba(232,166,184,.38);box-shadow:0 28px 70px rgba(201,110,138,.18),0 12px 32px rgba(8,17,31,.08)}
.podcast-leila-v133 .btn.primary{background:var(--leila-pink)!important;border-color:var(--leila-pink)!important;color:#08111F!important}

/* ---------- COACH ALIGNÉ BRAND ---------- */
.coach-align-brand-v133{display:inline-flex!important;align-items:center;gap:13px;min-width:0}
.coach-align-brand-v133 img{display:block;width:auto;height:42px;max-width:180px;object-fit:contain}
.coach-align-brand-v133 span{padding:7px 10px;border-radius:999px;background:rgba(232,166,184,.15);border:1px solid rgba(232,166,184,.34);color:#F1B7C7!important;font:800 9px/1 "Archivo",sans-serif;letter-spacing:.13em}
.nav.scrolled .coach-align-brand-v133 span{background:#FAE9EF;border-color:#EDC2CE;color:#9D4963!important}
.entraineurs-photo-hero-v90 .path-marker{border-color:rgba(232,166,184,.48)!important;color:#F5C7D4!important;background:rgba(8,17,31,.25)}
.entraineurs-photo-hero-v90 h1 em{color:var(--leila-sun)!important}
.entraineurs-photo-hero-v90 .btn.primary{background:var(--leila-sun)!important;border-color:var(--leila-sun)!important}

/* ---------- COACH TEAM ---------- */
.coach-team-v133{background:
  radial-gradient(circle at 88% 12%,rgba(232,166,184,.15),transparent 24%),
  radial-gradient(circle at 10% 88%,rgba(240,201,111,.08),transparent 22%),
  #08111F;color:#fff;isolation:isolate}
.coach-team-orbit-v133{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.42;background:repeating-radial-gradient(ellipse at 82% 42%,transparent 0 58px,rgba(255,255,255,.04) 59px 60px,transparent 61px 94px)}
.coach-team-head-v133{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:end;margin-bottom:38px}
.coach-team-head-v133 .eyebrow{color:#F1B7C7}
.coach-team-head-v133 h2{margin-bottom:0}
.coach-team-head-v133 .lead{max-width:650px;color:#BAC4CE}
.coach-team-grid-v133{display:grid;grid-template-columns:1.12fr .88fr .9fr;gap:15px;align-items:stretch}
.coach-team-leila-v133,.coach-team-video-v133,.coach-team-arthur-v133{min-height:500px;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.09);position:relative}
.coach-team-leila-v133{background:#0E1C2D}
.coach-team-leila-v133>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 36%;filter:brightness(.83) saturate(.95)}
.coach-team-leila-v133::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(8,17,31,.93) 88%)}
.coach-team-copy-v133{position:absolute;z-index:2;left:28px;right:28px;bottom:28px}
.coach-team-copy-v133>span{font:800 9px/1 "Archivo",sans-serif;letter-spacing:.16em;color:var(--leila-sun)}
.coach-team-copy-v133 h3{font-size:clamp(25px,2.2vw,36px);margin:12px 0 10px}
.coach-team-copy-v133 p{margin:0;color:#C6CFD7;line-height:1.55}
.coach-team-video-v133{background:#0F1D2B}
.coach-team-video-v133 video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.82) saturate(.92)}
.coach-team-video-v133::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,17,31,.08),rgba(8,17,31,.85))}
.coach-team-video-overlay-v133{position:absolute;z-index:2;left:24px;right:24px;bottom:25px;display:grid;gap:8px}
.coach-team-video-overlay-v133 span{font:800 9px/1 "Archivo",sans-serif;letter-spacing:.14em;color:#F1B7C7}
.coach-team-video-overlay-v133 strong{font:800 22px/1.15 "Archivo",sans-serif}
.coach-team-arthur-v133{padding:30px;background:linear-gradient(150deg,#132742,#0A1728);display:flex;flex-direction:column;justify-content:flex-end}
.coach-team-arthur-v133::before{content:"";position:absolute;width:260px;height:260px;right:-105px;top:-100px;border-radius:50%;border:1px solid rgba(232,166,184,.18);box-shadow:0 0 0 42px rgba(232,166,184,.025)}
.coach-team-num-v133{position:absolute;left:30px;top:29px;font:900 11px/1 "Archivo",sans-serif;letter-spacing:.16em;color:var(--leila-sun)}
.coach-team-arthur-v133 .eyebrow{color:#F1B7C7;margin-bottom:14px}
.coach-team-arthur-v133 h3{font-size:clamp(27px,2.3vw,38px);margin-bottom:14px}
.coach-team-arthur-v133>p{color:#AEB9C4;line-height:1.58}
.coach-team-support-v133{margin-top:26px;padding-top:21px;border-top:1px solid rgba(255,255,255,.1);display:grid;gap:7px}
.coach-team-support-v133 b{font:800 10px/1 "Archivo",sans-serif;letter-spacing:.14em;color:var(--leila-sun)}
.coach-team-support-v133 span{color:#8996A3;font-size:12px;line-height:1.4}

/* Coach Aligné: remove promotion language visually and strengthen direct-entry info */
.faq-direct-entry-v133 .faq-num,.faq-team-v133 .faq-num{color:#C96E8A!important}
.faq-direct-entry-v133 .faq-question,.faq-team-v133 .faq-question{background:linear-gradient(90deg,rgba(232,166,184,.07),transparent 72%)}
.faq-sports-art-v133 .faq-num{color:#C96E8A!important}
.faq-sports-art-v133 .faq-question{background:linear-gradient(90deg,rgba(232,166,184,.08),transparent 75%)}

/* Footer signature gets a subtle Leïla line, not a recolor */
.footer-signature::after{content:"";display:block;width:74px;height:2px;margin-top:8px;background:linear-gradient(90deg,var(--leila-pink),var(--leila-sun));border-radius:99px}

@media(max-width:1050px){
  .clubs-head-v133,.coach-team-head-v133{grid-template-columns:1fr;gap:22px}
  .clubs-story-v133{grid-template-columns:1fr}
  .clubs-offers-v133{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}
  .club-audiences-v133{grid-column:1/-1}
  .coach-team-grid-v133{grid-template-columns:1fr 1fr}
  .coach-team-arthur-v133{grid-column:1/-1;min-height:360px}
}
@media(max-width:700px){
  .coach-align-brand-v133{gap:8px}
  .coach-align-brand-v133 img{height:34px;max-width:132px}
  .coach-align-brand-v133 span{font-size:8px;padding:6px 8px}
  .clubs-head-v133{margin-bottom:28px}
  .clubs-story-v133,.clubs-map-grid-v133,.coach-team-grid-v133{grid-template-columns:1fr}
  .clubs-offers-v133{grid-template-columns:1fr}
  .club-audiences-v133{grid-column:auto}
  .clubs-video-wrap-v133{min-height:520px}
  .clubs-video-wrap-v133 video{object-position:center}
  .clubs-video-copy-v133{padding:24px}
  .club-offer-v133{min-height:210px;padding:24px}
  .club-offer-v133>span{left:24px;top:22px}
  .clubs-map-card-v133,.clubs-list-card-v133{min-height:0;padding:24px;border-radius:24px}
  .clubs-map-top-v133{align-items:flex-start;flex-direction:column;gap:8px}
  .clubs-france-v133{width:min(100%,360px)}
  .clubs-cta-v133{width:100%;margin-top:30px}
  .podcast-leila-v133 .podcast{gap:40px}
  .coach-team-leila-v133,.coach-team-video-v133,.coach-team-arthur-v133{min-height:480px;border-radius:24px}
  .coach-team-arthur-v133{grid-column:auto;min-height:380px}
  .coach-team-copy-v133{left:24px;right:24px;bottom:24px}
  .coach-team-arthur-v133{padding:24px}
  .coach-team-num-v133{left:24px;top:24px}
}
@media(prefers-reduced-motion:reduce){
  .clubs-video-wrap-v133 video,.coach-team-video-v133 video{animation:none}
}

/* V133 — real intervention photo strip inside Clubs */
.clubs-photo-strip-v133{display:grid;grid-template-columns:1.45fr .55fr;gap:18px;margin-top:18px}
.clubs-photo-strip-v133 figure{margin:0;position:relative;overflow:hidden;border-radius:30px;min-height:390px;background:#08111F;box-shadow:0 22px 58px rgba(8,17,31,.08)}
.clubs-photo-strip-v133 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.clubs-photo-main-v133 img{object-position:center 42%}
.clubs-photo-side-v133 img{object-position:center 35%}
.clubs-photo-strip-v133 figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(8,17,31,.88) 100%)}
.clubs-photo-strip-v133 figcaption{position:absolute;z-index:2;left:25px;right:25px;bottom:24px;color:#fff;display:grid;gap:8px}
.clubs-photo-strip-v133 figcaption span{font:800 9px/1 "Archivo",sans-serif;letter-spacing:.14em;color:var(--leila-sun)}
.clubs-photo-strip-v133 figcaption strong{font:800 clamp(20px,1.8vw,28px)/1.16 "Archivo",sans-serif}
@media(max-width:700px){
  .clubs-photo-strip-v133{grid-template-columns:1fr}
  .clubs-photo-strip-v133 figure{min-height:410px;border-radius:24px}
  .clubs-photo-side-v133{min-height:460px!important}
}

/* V133 — final warm accents + video framing */
.gymnastes-photo-hero-v79 .path-marker{border-color:rgba(232,166,184,.46)!important;color:#F5C7D4!important;background:rgba(8,17,31,.22)}
.clubs-video-wrap-v133{background:radial-gradient(circle at 50% 45%,rgba(232,166,184,.16),transparent 45%),#08111F}
.clubs-video-wrap-v133 video{object-fit:contain!important}

/* =========================================================
   V135 — LEILA LIGHT EDITORIAL COLOR SYSTEM
   COLOR-ONLY REDESIGN.
   White is dominant. Ink is black. Pink + solar yellow are
   deliberate accents. No layout/content/photo/responsive changes.
   ========================================================= */
:root{
  --night:#111111;
  --deep:#24201F;
  --gold:#C99A19;
  --white:#FFFFFF;
  --muted:#686868;
  --leila-pink:#E64E78;
  --leila-pink-strong:#C93661;
  --leila-pink-soft:#FCEAF0;
  --leila-sun:#F2C94C;
  --leila-sun-soft:#FFF4C8;
  --leila-cream:#FFFDF8;
  --leila-ink:#111111;
  --leila-line:#E9E4DE;
  --leila-muted:#66625F;
}

html,body{background:#FFFFFF!important;color:#111111!important}
body{color:#111111!important}

/* Header / navigation — white editorial bar */
.nav,
.nav.scrolled{
  background:rgba(255,255,255,.95)!important;
  color:#111111!important;
  border-bottom:1px solid rgba(17,17,17,.08)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
.navlinks a,.navcta{color:#111111!important}
.navcta{border-color:rgba(17,17,17,.22)!important;background:#FFFFFF!important}
.menu-toggle{background:#111111!important;color:#FFFFFF!important}
.progress{background:linear-gradient(90deg,var(--leila-pink),var(--leila-sun))!important}

/* Menu — no dark blue takeover */
.menu-panel{
  background:
    radial-gradient(circle at 88% 10%,rgba(242,201,76,.16),transparent 28%),
    radial-gradient(circle at 7% 92%,rgba(230,78,120,.13),transparent 28%),
    #FFFFFF!important;
  color:#111111!important;
}
.menu-links a{color:#111111!important;border-color:rgba(17,17,17,.11)!important}
.menu-links a:hover{color:var(--leila-pink-strong)!important}
.menu-side,.menu-side p,.menu-mini-links a{color:#5F5B58!important}
.menu-side .eyebrow{color:var(--leila-pink-strong)!important}

/* Global editorial language */
.eyebrow,.kicker{color:var(--leila-pink-strong)!important}
h1,h2,h3,strong,b{color:#111111}
.lead,p{color:#5F6062}
h1 em,h2 em{color:var(--leila-pink)!important}
.path-marker{color:#111111!important;border-color:rgba(230,78,120,.34)!important;background:rgba(255,255,255,.82)!important}
.section-number{color:rgba(230,78,120,.075)!important}

/* Buttons */
.btn.primary,
.contact-submit,
.coach-submit,
.footer-primary-cta{
  background:var(--leila-pink)!important;
  border-color:var(--leila-pink)!important;
  color:#FFFFFF!important;
  box-shadow:0 12px 30px rgba(230,78,120,.16)!important;
}
.btn.secondary,
.btn:not(.primary){
  background:#FFFFFF!important;
  color:#111111!important;
  border-color:rgba(17,17,17,.20)!important;
}
.btn:hover{box-shadow:0 15px 34px rgba(17,17,17,.10)!important}

/* Home hero — light, graphic, Leïla */
.hero:not(.path-hero){
  background:
    radial-gradient(circle at 86% 18%,rgba(242,201,76,.24),transparent 28%),
    radial-gradient(circle at 12% 90%,rgba(230,78,120,.17),transparent 30%),
    linear-gradient(145deg,#FFFFFF 0%,#FFFDF8 60%,#FFF7F8 100%)!important;
  color:#111111!important;
}
.hero:not(.path-hero) .hero-video-slot{
  background:
    radial-gradient(circle at 78% 28%,rgba(242,201,76,.22),transparent 28%),
    radial-gradient(circle at 26% 72%,rgba(230,78,120,.14),transparent 25%),
    #FFFFFF!important;
}
.hero:not(.path-hero) .hero-video-slot::before{
  background:repeating-radial-gradient(ellipse at 82% 30%,transparent 0 58px,rgba(230,78,120,.045) 59px 60px,transparent 61px 96px)!important;
}
.hero:not(.path-hero) .hero-bg{
  background:linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.78) 58%,rgba(255,255,255,.24))!important;
}
.hero:not(.path-hero) h1,
.hero:not(.path-hero) .lead,
.hero:not(.path-hero) .hero-signature{color:#111111!important}
.hero:not(.path-hero) h1 em{color:var(--leila-pink)!important}
.hero:not(.path-hero) .eyebrow{color:#B98600!important}
.hero:not(.path-hero) .path-marker{background:#FFFFFF!important}
.hero:not(.path-hero) .hero-signature::after{background:linear-gradient(90deg,var(--leila-pink),var(--leila-sun),transparent)!important}

/* Photo heroes — white readability scrim, black editorial type */
.gymnastes-photo-hero-v79 .gymnastes-hero-shade-v79,
.entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
  background:
    linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 30%,rgba(255,255,255,.58) 54%,rgba(255,255,255,.12) 82%,transparent 100%),
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.34))!important;
}
.gymnastes-photo-hero-v79 h1,
.entraineurs-photo-hero-v90 h1{color:#111111!important;text-shadow:none!important}
.gymnastes-photo-hero-v79 h1 em,
.entraineurs-photo-hero-v90 h1 em{color:var(--leila-pink)!important}
.gymnastes-photo-hero-v79 .lead,
.entraineurs-photo-hero-v90 .lead{color:#3E3C3B!important}
.gymnastes-photo-hero-v79 .path-marker,
.entraineurs-photo-hero-v90 .path-marker{color:#111111!important;background:rgba(255,255,255,.88)!important;border-color:rgba(230,78,120,.30)!important}
.gymnastes-photo-hero-v79 .eyebrow,
.entraineurs-photo-hero-v90 .eyebrow{color:#A67700!important}
.entraineurs-photo-hero-v90 .btn.primary,
.gymnastes-photo-hero-v79 .btn.primary{background:var(--leila-pink)!important;border-color:var(--leila-pink)!important;color:#FFFFFF!important}

/* White-dominant page canvas */
.section,
.section.light,
.section.white,
.section.paper{
  background:#FFFFFF!important;
  color:#111111!important;
}
.section .lead,.section p,.section.light .lead,.section.white .lead,.section.paper .lead{color:#626264!important}

/* Alternating soft editorial fields */
.home-human-system,
.gym-photo-story-v107,
.coach-scenario-v60,
.faq-premium-section{background:#FFFFFF!important}
.home-leila-accent-v133,
.mental-map-section,
.coach-axis-section,
.coach-application-premium{
  background:
    radial-gradient(circle at 90% 10%,rgba(242,201,76,.09),transparent 24%),
    #FFFDF8!important;
  color:#111111!important;
}
.home-coach-preview,
.gym-zone05-v108,
.coach-fit-section,
.coach-impact-v60{
  background:
    radial-gradient(circle at 9% 10%,rgba(230,78,120,.08),transparent 24%),
    #FFF8FA!important;
  color:#111111!important;
}
.home-map-focus,
.gym-map-focus{
  background:
    radial-gradient(circle at 88% 12%,rgba(242,201,76,.18),transparent 26%),
    #FFFDF4!important;
  color:#111111!important;
}
.love-wall-section{background:#FFF8FA!important;color:#111111!important}

/* Cards — clean white, black text */
.card,
.section:not(.light):not(.paper):not(.white) .card,
.step,
.section:not(.light):not(.paper):not(.white) .step,
.human-system-card,
.coach-axis-card,
.coach-module,
.scenario-v60-card,
.public-review-card{
  background:#FFFFFF!important;
  color:#111111!important;
  border:1px solid var(--leila-line)!important;
  box-shadow:0 16px 44px rgba(17,17,17,.055)!important;
}
.card p,
.section:not(.light):not(.paper):not(.white) .card p,
.step p,
.section:not(.light):not(.paper):not(.white) .step p,
.coach-axis-card p,
.coach-module small,
.scenario-v60-card p{color:#686568!important}
.card .num,.step .num,.coach-axis-index,.scenario-v60-top b{color:#B98600!important}

/* Icon system: no blue 3D blocks */
.coach-pain-icon-v82,
.coach-pain-icon-v81,
.entry-icon,.feature-icon,.card-icon,.icon-circle,.icon-badge,.social-icon,
[class*="icon-wrap"],[class*="icon-circle"],[class*="icon-badge"]{
  background:linear-gradient(145deg,#FFFFFF,#FFF5D8)!important;
  color:#111111!important;
  border-color:rgba(201,154,25,.26)!important;
  box-shadow:inset 0 1px 0 #fff,0 10px 24px rgba(17,17,17,.08)!important;
}
.gym-zone05-icon-v108{
  background:linear-gradient(145deg,#FFFFFF,#FCEAF0)!important;
  color:var(--leila-pink)!important;
  border-color:rgba(230,78,120,.24)!important;
  box-shadow:0 10px 24px rgba(230,78,120,.10)!important;
}
.coach-axis-icon,.human-system-icon{color:var(--leila-pink)!important}

/* Entry gateway */
.entry-gateway{background:#FFFFFF!important;color:#111111!important;border-color:var(--leila-line)!important}
.entry-compact-card{background:#FFFFFF!important;color:#111111!important;border-color:var(--leila-line)!important;box-shadow:0 14px 36px rgba(17,17,17,.05)!important}
.entry-compact-card h3,.entry-compact-card p{color:#111111!important}
.entry-compact-card p{color:#666!important}

/* Marquee = solar punctuation */
.marquee{background:var(--leila-sun)!important;color:#111111!important}

/* Home Leïla */
.home-leila-accent-v133 .eyebrow{color:var(--leila-pink-strong)!important}
.home-leila-accent-v133 h2,.home-leila-accent-v133 h3{color:#111111!important}
.home-leila-accent-v133 .lead,.home-leila-accent-v133 p{color:#605C59!important}
.home-leila-accent-v133 .leila-home-photo-v74{box-shadow:0 26px 65px rgba(230,78,120,.10)!important}

/* Home coach preview — light cards */
.home-coach-preview .eyebrow{color:var(--leila-pink-strong)!important}
.home-coach-preview h2,.home-coach-preview h3,.home-coach-preview strong{color:#111111!important}
.home-coach-preview .lead,.home-coach-preview p{color:#66615F!important}
.home-coach-mini{background:#FFFFFF!important;border-color:var(--leila-line)!important;box-shadow:0 12px 30px rgba(17,17,17,.045)!important}
.home-coach-mini strong{color:#111111!important}
.home-coach-mini p{color:#68625F!important}
.home-coach-mini>span{color:var(--leila-pink)!important}

/* Clubs — white/pink/yellow, never blue */
.clubs-premium-v133{
  background:
    radial-gradient(circle at 7% 9%,rgba(230,78,120,.10),transparent 25%),
    radial-gradient(circle at 92% 91%,rgba(242,201,76,.16),transparent 24%),
    #FFFFFF!important;
  color:#111111!important;
}
.clubs-head-v133 .lead,.club-offer-v133 p,.clubs-map-card-v133>p{color:#66615F!important}
.club-offer-v133,.clubs-map-card-v133,.clubs-list-card-v133{border-color:var(--leila-line)!important;box-shadow:0 18px 45px rgba(17,17,17,.055)!important}
.club-offer-pink-v133{background:linear-gradient(145deg,#FFFFFF,#FCEAF0)!important}
.club-offer-sun-v133{background:linear-gradient(145deg,#FFFFFF,#FFF3C2)!important}
.club-audiences-v133 span{background:#111111!important;color:#FFFFFF!important}
.club-audiences-v133 span:nth-child(2){background:var(--leila-pink)!important;color:#fff!important}
.club-audiences-v133 span:nth-child(3){background:var(--leila-sun)!important;color:#111!important}
.clubs-chips-v133 span,.clubs-international-v133 span{background:#FFFDF8!important;color:#292727!important;border-color:var(--leila-line)!important}
.clubs-cta-v133{background:var(--leila-pink)!important;color:#fff!important;border-color:var(--leila-pink)!important}
.club-pins-v133 circle{fill:var(--leila-pink)!important;stroke:#FFFFFF!important}
.clubs-france-v133>path,.clubs-france-v133>ellipse{fill:#FFF8FA!important;stroke:#E8A2B5!important}

/* Podcast */
.podcast-leila-v133{
  background:
    radial-gradient(circle at 90% 12%,rgba(242,201,76,.12),transparent 26%),
    #FFFFFF!important;
}
.podcast-leila-v133 h2{color:#111111!important}
.podcast-leila-v133 .lead{color:#66615F!important}
.podcast-leila-v133 .btn.primary{background:var(--leila-pink)!important;color:#FFFFFF!important}

/* Gymnast card transformation area */
.gym-zone05-card-v108{
  background:#FFFFFF!important;
  color:#111111!important;
  border-color:var(--leila-line)!important;
  box-shadow:0 18px 48px rgba(17,17,17,.055)!important;
}
.gym-zone05-index-v108{color:#B98600!important}
.gym-zone05-before-v108 span{color:#777!important}
.gym-zone05-before-v108 p{color:#666!important}
.gym-zone05-after-v108 span{color:var(--leila-pink-strong)!important}
.gym-zone05-after-v108 p{color:#111111!important}
.gym-zone05-shift-v108,.gym-zone05-shift-v108 b{color:var(--leila-pink)!important}
.gym-zone05-shift-v108 span{background:linear-gradient(90deg,transparent,rgba(230,78,120,.34))!important}
.gym-zone05-shift-v108 span:last-child{background:linear-gradient(90deg,rgba(230,78,120,.34),transparent)!important}
.gym-zone05-tag-v108{color:#A67700!important}
.gym-zone05-bottom-v108{background:#FFF7F9!important;border-color:rgba(230,78,120,.10)!important}
.gym-zone05-bottom-v108 strong{color:#111111!important}

/* Coach axis */
.coach-axis-card{background:#FFFFFF!important;border-color:var(--leila-line)!important}
.coach-axis-card::before{border-color:rgba(230,78,120,.10)!important;box-shadow:0 0 0 36px rgba(242,201,76,.025)!important}
.coach-axis-card h3{color:#111111!important}
.coach-axis-tags span{color:#7B5A00!important;border-color:rgba(201,154,25,.24)!important;background:#FFF9E7!important}

/* Coach fit */
.coach-fit-section::before{opacity:.18!important;background:repeating-radial-gradient(ellipse at 88% 42%,transparent 0 62px,rgba(230,78,120,.06) 63px 64px,transparent 65px 100px)!important}
.coach-fit-panel{background:#FFFFFF!important;border-color:var(--leila-line)!important;color:#111111!important;box-shadow:0 16px 42px rgba(17,17,17,.05)!important}
.coach-fit-panel li{color:#5F5C5A!important;border-color:var(--leila-line)!important}
.coach-fit-panel li::before{color:var(--leila-pink)!important}
.coach-fit-kicker{color:var(--leila-pink-strong)!important}
.coach-fit-context-grid>div{background:#FFFDF8!important;border-color:var(--leila-line)!important}
.coach-fit-context-grid b{color:#111111!important}
.coach-fit-context-grid span{color:#68625F!important}
.coach-trust-strip{border-color:var(--leila-line)!important;background:#fff!important}
.coach-trust-strip>span{border-color:var(--leila-line)!important}
.coach-trust-strip b{color:var(--leila-pink-strong)!important}
.coach-trust-strip small{color:#68625F!important}

/* Team: white editorial section; image/video cards keep photographic contrast */
.coach-team-v133{
  background:
    radial-gradient(circle at 90% 8%,rgba(242,201,76,.12),transparent 25%),
    #FFFFFF!important;
  color:#111111!important;
}
.coach-team-head-v133 .eyebrow{color:var(--leila-pink-strong)!important}
.coach-team-head-v133 h2{color:#111111!important}
.coach-team-head-v133 .lead{color:#66615F!important}
.coach-team-arthur-v133{
  background:linear-gradient(145deg,#FFF9E7,#FCEAF0)!important;
  border-color:var(--leila-line)!important;
  color:#111111!important;
}
.coach-team-arthur-v133::before{border-color:rgba(230,78,120,.18)!important;box-shadow:0 0 0 42px rgba(242,201,76,.045)!important}
.coach-team-arthur-v133 h3,.coach-team-arthur-v133 strong{color:#111111!important}
.coach-team-arthur-v133>p,.coach-team-support-v133 span{color:#66615F!important}
.coach-team-support-v133{border-color:rgba(17,17,17,.10)!important}
.coach-team-support-v133 b{color:var(--leila-pink-strong)!important}

/* Application / forms */
.application-section,.coach-application-premium{color:#111111!important}
.application-section input,.application-section select,.application-section textarea,
.coach-application-premium input,.coach-application-premium select,.coach-application-premium textarea,
.premium-contact-form input,.premium-contact-form select,.premium-contact-form textarea{
  background:#FFFFFF!important;
  color:#111111!important;
  border-color:#DCD6D1!important;
}
.application-section input:focus,.application-section select:focus,.application-section textarea:focus,
.coach-application-premium input:focus,.coach-application-premium select:focus,.coach-application-premium textarea:focus,
.premium-contact-form input:focus,.premium-contact-form select:focus,.premium-contact-form textarea:focus{
  border-color:var(--leila-pink)!important;
  box-shadow:0 0 0 3px rgba(230,78,120,.10)!important;
}
.application-section label,.coach-application-premium label,.premium-contact-form label{color:#111111!important}

/* Émilie route */
.coach-salarie-route{background:linear-gradient(145deg,#FFFDF8,#FFF8FA)!important;border-color:rgba(230,78,120,.22)!important;color:#111111!important}
.coach-salarie-route-copy strong{color:#111111!important}
.coach-salarie-route-copy p{color:#66615F!important}
.coach-salarie-route-cta{background:var(--leila-sun)!important;color:#111111!important}

/* FAQ */
.faq-premium-section{background:#FFFFFF!important;color:#111111!important}
.faq-item,.faq-question,.faq-answer,.faq-answer-inner{background:#FFFFFF!important;color:#111111!important}
.faq-item{border-color:var(--leila-line)!important}
.faq-question{color:#111111!important}
.faq-answer-inner{color:#66615F!important}
.faq-num{color:var(--leila-pink-strong)!important}
.faq-item[open],.faq-item.is-open{background:#FFF8FA!important}
.faq-direct-entry-v133 .faq-question,.faq-team-v133 .faq-question,.faq-sports-art-v133 .faq-question{background:linear-gradient(90deg,rgba(230,78,120,.065),transparent 78%)!important}

/* Contact */
.contact-conversion{background:#FFFFFF!important;color:#111111!important}
.contact-conversion h2,.contact-conversion h3,.conversion-direct strong{color:#111111!important}
.contact-conversion p,.contact-note{color:#66615F!important}
.conversion-proof-grid article,.conversion-quote,.conversion-signal{background:#FFFDF8!important;border-color:var(--leila-line)!important;color:#111111!important}
.conversion-direct a{background:#111111!important;color:#FFFFFF!important}

/* Reviews */
.public-reviews-section,.love-wall-section{background:#FFF8FA!important;color:#111111!important}
.public-review-card blockquote,.public-review-card footer strong{color:#111111!important}
.public-review-card footer span,.public-reviews-note{color:#6B6663!important}
.review-stars{color:#D29C00!important}

/* Footer stays intentionally charcoal: the only major dark anchor */
footer,.site-footer,.footer-premium{background:#151515!important;color:#FFFFFF!important}
footer p,footer a,footer span,.site-footer p,.site-footer a,.site-footer span{color:#E8E6E3!important}
.footer-signature::after{background:linear-gradient(90deg,var(--leila-pink),var(--leila-sun))!important}

/* Mobile photo heroes: light scrim concentrated under copy */
@media(max-width:700px){
  .gymnastes-photo-hero-v79 .gymnastes-hero-shade-v79,
  .entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
    background:
      linear-gradient(180deg,rgba(255,255,255,.04) 0%,rgba(255,255,255,.10) 30%,rgba(255,255,255,.62) 57%,rgba(255,255,255,.93) 74%,rgba(255,255,255,.99) 100%),
      linear-gradient(90deg,rgba(255,255,255,.18),transparent 90%)!important;
  }
  .gymnastes-photo-hero-v79 .gymnastes-hero-content-v79,
  .entraineurs-photo-hero-v90 .entraineurs-hero-content-v90{color:#111111!important}
}

/* =========================================================
   V136 — SITE-WIDE READABILITY + HOME MARQUEE ONLY
   Scope: colors / contrast / text crispness only.
   No layout, content, image, responsive or behavior changes.
   ========================================================= */

:root{
  --leila-text:#141214;
  --leila-text-soft:#4F4A4C;
  --leila-text-muted:#625C5E;
  --leila-pink-marquee:#D9366B;
  --leila-pink-marquee-2:#EF5D8A;
}

/* Crisp typography: keep motion, remove legacy blur on type. */
body{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
.reveal{filter:none!important}
h1,h2,h3,h4,h5,h6,p,span,strong,b,a,button,label,legend,li,small,blockquote{
  text-shadow:none!important;
}

/* Default contrast on every light / pastel editorial surface. */
.section,
.section.light,
.section.white,
.section.paper,
.entry-gateway,
.home-human-system,
.home-leila-accent-v133,
.home-coach-preview,
.home-map-focus,
.gym-map-focus,
.mental-map-section,
.coach-axis-section,
.coach-fit-section,
.coach-impact-v60,
.coach-application-premium,
.application-section,
.faq-premium-section,
.love-wall-section,
.public-reviews-section,
.clubs-premium-v133,
.podcast-leila-v133{
  color:var(--leila-text)!important;
}

.section h1,.section h2,.section h3,.section h4,
.section strong,.section b,
.entry-gateway h1,.entry-gateway h2,.entry-gateway h3,
.entry-gateway strong,.entry-gateway b{
  color:var(--leila-text)!important;
}

.section p,.section li,.section small,
.section .lead,
.entry-gateway p,.entry-gateway small{
  color:var(--leila-text-soft)!important;
  opacity:1!important;
}

/* Pink / yellow labels stay saturated enough to read on white. */
.section .eyebrow,.section .kicker,
.entry-gateway .eyebrow,.entry-gateway .kicker{
  color:#C72F5C!important;
  opacity:1!important;
}
.card .num,.step .num,.coach-axis-index,.scenario-v60-top b,
.gym-zone05-index-v108{
  color:#9B7100!important;
  opacity:1!important;
}

/* Pale pink/yellow cards: never white text. */
.club-offer-pink-v133,.club-offer-sun-v133,
.coach-team-arthur-v133,
.coach-fit-panel,.coach-fit-context-grid>div,
.conversion-proof-grid article,.conversion-quote,.conversion-signal,
.gym-zone05-bottom-v108,
.faq-item[open],.faq-item.is-open{
  color:var(--leila-text)!important;
}
.club-offer-pink-v133 h3,.club-offer-pink-v133 strong,.club-offer-pink-v133 p,
.club-offer-sun-v133 h3,.club-offer-sun-v133 strong,.club-offer-sun-v133 p,
.coach-team-arthur-v133 h3,.coach-team-arthur-v133 strong,
.coach-fit-panel h3,.coach-fit-panel b,
.conversion-proof-grid article h3,.conversion-proof-grid article strong,
.conversion-quote h3,.conversion-quote strong,.conversion-signal strong,
.gym-zone05-bottom-v108 strong,
.faq-item[open] .faq-question,.faq-item.is-open .faq-question{
  color:var(--leila-text)!important;
}
.club-offer-pink-v133 p,.club-offer-sun-v133 p,
.coach-team-arthur-v133 p,.coach-team-support-v133 span,
.coach-fit-panel li,.coach-fit-context-grid span,
.conversion-proof-grid article p,.conversion-quote p,.conversion-signal p,
.faq-item[open] .faq-answer-inner,.faq-item.is-open .faq-answer-inner{
  color:var(--leila-text-soft)!important;
}

/* Entraîneurs: old dark-specific white rules are neutralized on new light palette. */
.scenario-v60-dark,
.coach-impact-v60,
.coach-impact-v60-board,
.coach-impact-v60-core,
.coach-impact-v60-pillar,
.coach-impact-v60-result{
  color:var(--leila-text)!important;
}
.scenario-v60-dark{
  background:linear-gradient(145deg,#FFF7FA,#FFFDF8)!important;
  border-color:rgba(230,78,120,.16)!important;
}
.scenario-v60-dark h3,
.scenario-v60-dark .scenario-v60-top span{
  color:var(--leila-text)!important;
}
.scenario-v60-dark p{color:var(--leila-text-soft)!important}
.scenario-v60-dark .scenario-v60-tags i{
  color:#725800!important;
  border-color:rgba(185,134,0,.24)!important;
  background:#FFF9E7!important;
}

.coach-impact-v60-head h2,
.coach-impact-v60-core strong,
.coach-impact-v60-pillar h3{
  color:var(--leila-text)!important;
}
.coach-impact-v60-head>p:last-child,
.coach-impact-v60-core p,
.coach-impact-v60-pillar p,
.coach-impact-v60-result p{
  color:var(--leila-text-soft)!important;
  opacity:1!important;
}
.coach-impact-v60-board{
  background:#FFFFFF!important;
  border-color:rgba(17,17,17,.10)!important;
  box-shadow:0 18px 48px rgba(17,17,17,.05)!important;
}
.coach-impact-v60-core{
  background:linear-gradient(145deg,#FFF4F7,#FFF9E7)!important;
}
.coach-impact-v60-pillar{
  border-color:rgba(17,17,17,.09)!important;
}
.coach-impact-v60-kicker,
.coach-impact-v60-pillar span,
.coach-impact-v60-result span{
  color:#C72F5C!important;
}
.coach-impact-v60-result{border-color:rgba(230,78,120,.18)!important;background:#FFFFFF!important}

/* Home testimonials: old white-on-dark rules no longer apply. */
.love-wall-head h2,
.love-wall-proof strong{
  color:var(--leila-text)!important;
}
.love-wall-proof p{color:var(--leila-text-soft)!important;opacity:1!important}
.love-wall-proof-stars{color:#C72F5C!important;opacity:1!important}

/* Forms: clear labels, values and placeholders. */
.application-section label,.coach-application-premium label,.premium-contact-form label,
.application-section legend,.coach-application-premium legend,.premium-contact-form legend{
  color:var(--leila-text)!important;
  opacity:1!important;
}
.application-section input,.application-section select,.application-section textarea,
.coach-application-premium input,.coach-application-premium select,.coach-application-premium textarea,
.premium-contact-form input,.premium-contact-form select,.premium-contact-form textarea{
  color:var(--leila-text)!important;
  opacity:1!important;
}
.application-section ::placeholder,
.coach-application-premium ::placeholder,
.premium-contact-form ::placeholder{
  color:#777174!important;
  opacity:1!important;
}

/* Photo/video overlays are the intentional exception: crisp white on dark photography. */
.gym-photo-banner-copy-v107 h2,
.gym-photo-banner-copy-v107 .eyebrow,
.coach-team-copy-v133 h3,
.coach-team-copy-v133 p,
.coach-team-video-overlay-v133 strong,
.clubs-video-card-v133,
.clubs-video-card-v133 strong,
.clubs-photo-strip-v133 figcaption,
.clubs-photo-strip-v133 figcaption strong{
  color:#FFFFFF!important;
  opacity:1!important;
  text-shadow:0 1px 2px rgba(0,0,0,.18)!important;
}
.coach-team-copy-v133>span,
.coach-team-video-overlay-v133 span,
.clubs-photo-strip-v133 figcaption span{
  color:#FFD6E2!important;
  opacity:1!important;
}

/* Footer remains the single dark editorial anchor. */
footer h1,footer h2,footer h3,footer strong,footer b,
.site-footer h1,.site-footer h2,.site-footer h3,.site-footer strong,.site-footer b,
.footer-premium h1,.footer-premium h2,.footer-premium h3,.footer-premium strong,.footer-premium b{
  color:#FFFFFF!important;
}
footer p,footer a,footer span,footer small,
.site-footer p,.site-footer a,.site-footer span,.site-footer small,
.footer-premium p,.footer-premium a,.footer-premium span,.footer-premium small{
  color:#F0EDEF!important;
  opacity:1!important;
}

/* HOME MARQUEE — premium Leïla pink + crisp white gradient type. */
.marquee,
.marquee-v23{
  background:linear-gradient(105deg,var(--leila-pink-marquee) 0%,var(--leila-pink-marquee-2) 52%,#D42F66 100%)!important;
  color:#FFFFFF!important;
  border-top:1px solid rgba(255,255,255,.22)!important;
  border-bottom:1px solid rgba(143,21,63,.16)!important;
  box-shadow:0 10px 28px rgba(217,54,107,.10)!important;
}
.marquee-v23 .marquee-v23-word{
  background:linear-gradient(90deg,#FFFFFF 0%,#FFF9FB 36%,#FFE5EE 66%,#FFFFFF 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}
.marquee-v23 .marquee-v23-dot{
  background:linear-gradient(135deg,#FFFFFF 0%,#FFE6EF 55%,#FFFFFF 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}


/* =========================================================
   V137 — HOMEPAGE ONLY / Requested color swaps
   Scope: index homepage only. No structural change.
   ========================================================= */

/* 01 — Entry gateway cards: pink frame + pink icon tile + white icon */
.entry-gateway-compact .entry-compact-card{
  border-color:rgba(230,78,120,.22)!important;
  box-shadow:0 14px 36px rgba(230,78,120,.07),0 8px 22px rgba(17,17,17,.035)!important;
}
.entry-gateway-compact .entry-compact-card::after{
  background:linear-gradient(90deg,var(--leila-pink),rgba(230,78,120,.10))!important;
}
.entry-gateway-compact .entry-compact-icon,
.entry-gateway-compact .entry-compact-icon-3d-v86{
  background:linear-gradient(145deg,#F06A94 0%,#E45280 58%,#D93B6D 100%)!important;
  border:1px solid rgba(217,59,109,.68)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -8px 16px rgba(122,18,57,.18),
    0 10px 22px rgba(230,78,120,.18)!important;
}
.entry-gateway-compact .entry-compact-icon svg,
.entry-gateway-compact .entry-compact-icon-3d-v86 svg{
  stroke:#FFFFFF!important;
}
.entry-gateway-compact .entry-compact-icon .icon-fill,
.entry-gateway-compact .entry-compact-icon-3d-v86 .icon-fill{
  fill:#FFFFFF!important;
  stroke:none!important;
}

/* 02 — Home parcours cards: pink section numbers + pink accent line */
#parcours .card .num{
  color:var(--leila-pink-strong)!important;
}
.home-map-soft::after{
  background:
    linear-gradient(90deg,transparent 0 15%,rgba(8,17,31,.035) 15.08% 15.16%,transparent 15.24% 100%),
    linear-gradient(0deg,transparent 0 76%,rgba(230,78,120,.14) 76.08% 76.16%,transparent 76.24% 100%)!important;
}

/* 03 — Human system cards: pink indexes */
.home-human-system .human-system-card>span{
  color:var(--leila-pink)!important;
}

/* 04 — Leïla stats cards: replace navy gradients with premium pink gradients, all inner content white */
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-card,
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-social{
  background:
    radial-gradient(circle at 92% 8%,rgba(255,255,255,.16),transparent 26%),
    linear-gradient(145deg,#EC5D89 0%,#E14A79 54%,#CC3766 100%)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 22px 54px rgba(230,78,120,.18)!important;
}
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-card::before{
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:
    0 0 0 34px rgba(255,255,255,.05),
    0 0 0 68px rgba(255,255,255,.025)!important;
}
.home-leila-accent-v133 .stats-proof-v62 .stat-pro-kicker,
.home-leila-accent-v133 .stats-proof-v62 .stat-pro-index,
.home-leila-accent-v133 .stats-proof-v62 .stat-count,
.home-leila-accent-v133 .stats-proof-v62 .stat-pro-unit,
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-title,
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-detail,
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-social-badge-v70,
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-social-title-v70,
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-social-audience-v70,
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-social-lines-v70 span{
  color:#FFFFFF!important;
}
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-social-badge-v70{
  border-color:rgba(255,255,255,.34)!important;
  background:rgba(255,255,255,.10)!important;
}
.home-leila-accent-v133 .stats-proof-v62 .stat-proof-social-lines-v70 span{
  opacity:.92!important;
}

/* 05 — Quote section: grey text to black */
.home-map-focus .quote,
.home-map-focus p.quote,
.home-map-focus .container > .quote{
  color:#111111!important;
}

/* 06 — Footer CTA: white circle, black arrow */
.site-footer .footer-primary-cta span,
.footer-primary-cta span{
  background:#FFFFFF!important;
  color:#111111!important;
}

/* 07 — Footer logo slot: use Leïla portrait instead of brain */
.footer-brain-logo-v102{
  width:92px!important;
  height:92px!important;
  min-width:92px!important;
  border-radius:50%!important;
  overflow:hidden!important;
  background:#FFFFFF!important;
  border:2px solid rgba(255,255,255,.10)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
.footer-brain-logo-v102 img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 28%!important;
  filter:none!important;
}
@media(max-width:700px){
  .footer-brain-logo-v102{
    width:76px!important;
    height:76px!important;
    min-width:76px!important;
  }
}

/* =========================================================
   V138 — HOMEPAGE ONLY / targeted readability + pink details
   Requested screenshots only. No layout/content changes.
   ========================================================= */

/* IMAGE 1 — gold hero label + nav hover/current -> Leïla pink */
.hero:not(.path-hero) .eyebrow{
  color:var(--leila-pink-strong)!important;
}
.navlinks a.active,
.navlinks a[aria-current="page"],
.navlinks a:focus-visible{
  color:var(--leila-pink)!important;
}
.navlinks a.active::after,
.navlinks a[aria-current="page"]::after,
.navlinks a:focus-visible::after{
  background:linear-gradient(90deg,rgba(230,78,120,0),rgba(230,78,120,.95),rgba(230,78,120,0))!important;
  box-shadow:0 0 10px rgba(230,78,120,.25)!important;
}
@media(hover:hover) and (pointer:fine){
  .navlinks a:hover{
    color:var(--leila-pink)!important;
    text-shadow:0 0 12px rgba(230,78,120,.15),0 0 22px rgba(230,78,120,.06)!important;
  }
  .navlinks a:hover::after{
    background:linear-gradient(90deg,rgba(230,78,120,0),rgba(230,78,120,.95),rgba(230,78,120,0))!important;
    box-shadow:0 0 10px rgba(230,78,120,.25)!important;
  }
}

/* IMAGE 2 — remove gold underside on hover; use pale pink instead */
@media(hover:hover) and (pointer:fine){
  .entry-gateway-compact .entry-compact-card:hover .entry-compact-icon-3d-v86{
    box-shadow:
      inset 0 2px 1px rgba(255,255,255,.94),
      inset 0 -7px 12px rgba(148,30,70,.12),
      0 6px 0 #F2B4C8,
      0 11px 0 rgba(230,78,120,.10),
      0 23px 34px rgba(230,78,120,.16)!important;
  }
}

/* IMAGE 3 — dark contact form: white copy/labels, black text stays inside white fields */
.contact-form-card,
.contact-form-card .contact-form-head strong,
.contact-form-card .contact-form-head small,
.contact-form-card .premium-contact-form label,
.contact-form-card .premium-contact-form legend,
.contact-form-card .premium-contact-form .consent-row,
.contact-form-card .premium-contact-form .consent-row span,
.contact-form-card .contact-note{
  color:#FFFFFF!important;
  opacity:1!important;
}
.contact-form-card .contact-form-head small,
.contact-form-card .contact-note,
.contact-form-card .premium-contact-form .consent-row span{
  color:rgba(255,255,255,.78)!important;
}
.contact-form-card .premium-contact-form input,
.contact-form-card .premium-contact-form select,
.contact-form-card .premium-contact-form textarea{
  color:#111111!important;
  background:#FFFFFF!important;
}
.contact-form-card .premium-contact-form ::placeholder{
  color:#777174!important;
  opacity:1!important;
}

/* IMAGE 5 — dark Clubs video/copy card: all copy crisp white */
.clubs-video-card-v133,
.clubs-video-card-v133 .clubs-video-copy-v133,
.clubs-video-card-v133 .clubs-video-copy-v133 h3,
.clubs-video-card-v133 .clubs-video-copy-v133 p,
.clubs-video-card-v133 .clubs-video-copy-v133 > span{
  color:#FFFFFF!important;
  opacity:1!important;
}
.clubs-video-card-v133 .clubs-video-copy-v133 p{
  color:rgba(255,255,255,.82)!important;
}


/* =========================================================
   V139 — HEADER ONLY
   1) Home "Choisir mon parcours" hover = pink / white.
   2) MentalGym pink logo on non-coach pages.
   3) Coach Aligné logo on Entraîneurs page.
   No other site changes.
   ========================================================= */

@media(hover:hover) and (pointer:fine){
  .navcta[href="#parcours"]:hover{
    background:var(--leila-pink)!important;
    color:#FFFFFF!important;
    border-color:var(--leila-pink)!important;
    box-shadow:0 10px 26px rgba(230,78,120,.22)!important;
  }
  .navcta[href="#parcours"]:hover::after{
    opacity:.34!important;
  }
}
.navcta[href="#parcours"]:focus-visible{
  outline-color:rgba(230,78,120,.55)!important;
  box-shadow:0 0 0 4px rgba(230,78,120,.10)!important;
}

/* Exact supplied MentalGym logo — header sizing only */
.brand-logo-v88 img[src*="mentalgym-logo-pink-v139.png"]{
  height:48px!important;
  width:auto!important;
  max-width:260px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
}

/* Exact supplied Coach Aligné logo on Entraîneurs */
.coach-align-brand-v133{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  padding:0!important;
  gap:0!important;
}
.coach-align-brand-v133 img[src*="coach-aligne-logo-v139.png"]{
  display:block!important;
  height:50px!important;
  width:auto!important;
  max-width:275px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
}

@media(max-width:900px){
  .brand-logo-v88 img[src*="mentalgym-logo-pink-v139.png"]{
    height:42px!important;
    max-width:235px!important;
  }
  .coach-align-brand-v133 img[src*="coach-aligne-logo-v139.png"]{
    height:42px!important;
    max-width:235px!important;
  }
}
@media(max-width:640px){
  .brand-logo-v88 img[src*="mentalgym-logo-pink-v139.png"]{
    height:36px!important;
    max-width:205px!important;
  }
  .coach-align-brand-v133 img[src*="coach-aligne-logo-v139.png"]{
    height:36px!important;
    max-width:205px!important;
  }
}


/* =========================================================
   V140 — FOOTERS + GYMNASTES ONLY
   Requested screenshot corrections only.
   No structural/layout/photo changes.
   ========================================================= */

/* Footer portrait already styled as a circle — use the same Leïla photo everywhere. */

/* GYMNSTES PAGE ONLY */
.gymnastes-page-v140 .gymnastes-photo-hero-v79 .eyebrow{
  color:var(--leila-pink-strong)!important;
}

.gymnastes-page-v140 .navcta{
  background:var(--leila-pink)!important;
  color:#FFFFFF!important;
  border-color:var(--leila-pink)!important;
  box-shadow:0 12px 28px rgba(230,78,120,.18)!important;
}
.gymnastes-page-v140 .navcta::after{
  opacity:.26!important;
}

.gymnastes-page-v140 .gym-white-focus .card .num{
  color:var(--leila-pink-strong)!important;
}

.gymnastes-page-v140 .mental-map-section .step .num{
  color:var(--leila-pink)!important;
}

.gymnastes-page-v140 .gym-zone05-v108 .eyebrow,
.gymnastes-page-v140 .gym-zone05-before-v108 span,
.gymnastes-page-v140 .gym-zone05-after-v108 span,
.gymnastes-page-v140 .gym-zone05-tag-v108,
.gymnastes-page-v140 .gym-zone05-bottom-v108 span{
  color:var(--leila-pink-strong)!important;
}
.gymnastes-page-v140 .gym-zone05-index-v108{
  color:#B98600!important;
}

.gymnastes-page-v140 .gym-photo-duo-head-v109 .eyebrow,
.gymnastes-page-v140 .gym-photo-scene-kicker-v109,
.gymnastes-page-v140 .gym-photo-scene-badge-v109 span{
  color:var(--leila-pink-strong)!important;
}
.gymnastes-page-v140 .gym-photo-scene-badge-v109 strong{
  color:#FFFFFF!important;
  text-shadow:0 1px 2px rgba(0,0,0,.20)!important;
}

.gymnastes-page-v140 .gym-photo-banner-copy-v107 .eyebrow{
  color:var(--leila-pink-strong)!important;
}

.gymnastes-page-v140 .offer-panel .kicker{
  color:var(--leila-pink-strong)!important;
}
.gymnastes-page-v140 .offer-panel h2,
.gymnastes-page-v140 .offer-panel .lead,
.gymnastes-page-v140 .offer-panel p:not(.kicker){
  color:#FFFFFF!important;
  opacity:1!important;
}


/* =========================================================
   V141 — ENTRAINEURS PAGE ONLY
   Requested fixes only.
   ========================================================= */

/* Image 1 — top CTA hover pink + white text */
.entraineurs-page-v141 .navcta{
  transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
@media(hover:hover) and (pointer:fine){
  .entraineurs-page-v141 .navcta:hover{
    background:var(--leila-pink)!important;
    color:#FFFFFF!important;
    border-color:var(--leila-pink)!important;
    box-shadow:0 14px 28px rgba(230,78,120,.18)!important;
  }
  .entraineurs-page-v141 .navcta:hover::after{
    opacity:.28!important;
  }
}

/* Image 1 — gold text becomes pink on the coach page */
.entraineurs-page-v141 .entraineurs-photo-hero-v90 .eyebrow,
.entraineurs-page-v141 .entraineurs-photo-hero-v90 h1 em,
.entraineurs-page-v141 .coach-premium-form .eyebrow,
.entraineurs-page-v141 .coach-photo-copy .eyebrow{
  color:var(--leila-pink)!important;
}

/* Image 2 — all dark text inside the dark form becomes white and readable */
.entraineurs-page-v141 .coach-form-card,
.entraineurs-page-v141 .coach-form-card .coach-form-header strong,
.entraineurs-page-v141 .coach-form-card .coach-form-header span,
.entraineurs-page-v141 .coach-form-card .coach-form-header-index,
.entraineurs-page-v141 .coach-form-card fieldset legend,
.entraineurs-page-v141 .coach-form-card label,
.entraineurs-page-v141 .coach-form-card .coach-choice-label,
.entraineurs-page-v141 .coach-form-card .coach-form-note,
.entraineurs-page-v141 .coach-form-card .coach-consent span,
.entraineurs-page-v141 .coach-form-card .coach-salarie-route-copy span,
.entraineurs-page-v141 .coach-form-card .coach-salarie-route-copy strong,
.entraineurs-page-v141 .coach-form-card .coach-salarie-route-copy p,
.entraineurs-page-v141 .coach-form-card .coach-salarie-submit-lock strong,
.entraineurs-page-v141 .coach-form-card .coach-salarie-submit-lock p{
  color:#FFFFFF!important;
}

.entraineurs-page-v141 .coach-form-card .coach-form-header span,
.entraineurs-page-v141 .coach-form-card .coach-form-note,
.entraineurs-page-v141 .coach-form-card .coach-consent span,
.entraineurs-page-v141 .coach-form-card .coach-salarie-route-copy p,
.entraineurs-page-v141 .coach-form-card .coach-salarie-submit-lock p{
  opacity:1!important;
}

/* Keep field labels visibly white above inputs */
.entraineurs-page-v141 .coach-form-card .coach-premium-form label,
.entraineurs-page-v141 .coach-form-card .coach-premium-form .coach-choice-label,
.entraineurs-page-v141 .coach-form-card .coach-premium-form legend{
  text-shadow:none!important;
}

/* Image 3 — remove visible mini checkboxes; selection happens on the rectangle */
.entraineurs-page-v141 .coach-choice input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  opacity:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  pointer-events:none!important;
  clip-path:inset(50%)!important;
  overflow:hidden!important;
}
.entraineurs-page-v141 .coach-choice{
  cursor:pointer!important;
}
.entraineurs-page-v141 .coach-choice span{
  min-height:78px;
  align-items:center;
}
.entraineurs-page-v141 .coach-choice input:checked + span{
  border-color:rgba(230,78,120,.62)!important;
  background:rgba(230,78,120,.16)!important;
  color:#FFFFFF!important;
  box-shadow:inset 0 0 0 1px rgba(230,78,120,.22)!important;
}
@media(hover:hover) and (pointer:fine){
  .entraineurs-page-v141 .coach-choice:hover span{
    border-color:rgba(230,78,120,.36)!important;
  }
}


/* =========================================================
   V142 — ENTRAINEURS PAGE ONLY
   Requested fixes only.
   ========================================================= */

/* Image 1 — blue before/after text becomes pink */
.entraineurs-page-v142 .compare-row .after{
  color:var(--leila-pink)!important;
}

/* Image 2 — use new MentalGym logo in the header on the coach page */
.entraineurs-page-v142 .coach-align-brand-v133 img{
  height:44px!important;
  max-width:260px!important;
  width:auto!important;
  object-fit:contain!important;
}
@media(max-width:900px){
  .entraineurs-page-v142 .coach-align-brand-v133 img{
    height:38px!important;
    max-width:220px!important;
  }
}
@media(max-width:560px){
  .entraineurs-page-v142 .coach-align-brand-v133 img{
    height:34px!important;
    max-width:180px!important;
  }
}

/* Image 5 / 6 / 7 — dedicated desktop and mobile hero images with tuned crops */
.entraineurs-page-v142 .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
  object-position:66% 36%!important;
}
@media(max-width:1000px){
  .entraineurs-page-v142 .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
    object-position:62% 34%!important;
  }
}
@media(max-width:700px){
  .entraineurs-page-v142 .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
    object-position:54% 32%!important;
  }
}


/* =========================================================
   V143 — PHOTO HERO FILTER REFINEMENT
   Reveal faces more while preserving black-copy readability.
   ========================================================= */
.gymnastes-photo-hero-v79 .gymnastes-hero-shade-v79,
.entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
  background:
    linear-gradient(90deg,
      rgba(255,255,255,.80) 0%,
      rgba(255,255,255,.68) 28%,
      rgba(255,255,255,.39) 52%,
      rgba(255,255,255,.08) 80%,
      rgba(255,255,255,.01) 100%
    ),
    linear-gradient(180deg,
      rgba(255,255,255,.035) 0%,
      rgba(255,255,255,.15) 100%
    )!important;
}

@media(max-width:700px){
  .gymnastes-photo-hero-v79 .gymnastes-hero-shade-v79,
  .entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
    background:
      linear-gradient(180deg,
        rgba(255,255,255,.01) 0%,
        rgba(255,255,255,.03) 30%,
        rgba(255,255,255,.27) 54%,
        rgba(255,255,255,.70) 74%,
        rgba(255,255,255,.90) 100%
      ),
      linear-gradient(90deg,
        rgba(255,255,255,.10) 0%,
        rgba(255,255,255,.02) 76%,
        transparent 100%
      )!important;
  }
}


/* =========================================================
   V147 — MOBILE ONLY FINAL CORRECTIONS
   1) Entraîneurs mobile hero image only.
   2) Mobile menu white / black / pink grid.
   3) Gymnastes + Entraîneurs hero black copy -> white.
   4) Gymnastes dark moment block copy -> white.
   5) Stable FAQ opening on mobile (no shake).
   Desktop remains untouched.
   ========================================================= */
@media (max-width:900px){
  /* Mobile menu: clean white panel, black type, pink grid */
  .menu-panel{
    background:#FFFFFF!important;
    color:#111111!important;
  }
  .menu-panel::before{
    z-index:0!important;
    opacity:.68!important;
    background-image:
      linear-gradient(rgba(230,78,120,.075) 1px,transparent 1px),
      linear-gradient(90deg,rgba(230,78,120,.075) 1px,transparent 1px)!important;
    background-size:36px 36px!important;
    mask-image:linear-gradient(180deg,rgba(0,0,0,.95),rgba(0,0,0,.55) 72%,transparent)!important;
    -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.95),rgba(0,0,0,.55) 72%,transparent)!important;
  }
  .menu-panel::after{
    z-index:0!important;
    background:
      radial-gradient(circle at 86% 13%,rgba(230,78,120,.12),transparent 28%),
      radial-gradient(circle at 8% 88%,rgba(230,78,120,.08),transparent 30%)!important;
  }
  .menu-panel>div{position:relative;z-index:1!important}
  .menu-links a{
    color:#111111!important;
    border-color:rgba(17,17,17,.10)!important;
  }
  .menu-links a::before{background:var(--leila-pink)!important}
  .menu-panel .eyebrow{color:var(--leila-pink)!important}
}

@media (max-width:700px){
  /* Entraîneurs mobile hero: exact supplied vertical photo, balanced crop */
  .entraineurs-page-v142 .entraineurs-photo-hero-v90 .entraineurs-hero-bg-v90 img{
    object-position:center center!important;
  }

  /* White hero copy on photo, pink emphasis remains pink */
  .gymnastes-page-v140 .gymnastes-photo-hero-v79 h1,
  .gymnastes-page-v140 .gymnastes-photo-hero-v79 .lead,
  .entraineurs-page-v141 .entraineurs-photo-hero-v90 h1,
  .entraineurs-page-v141 .entraineurs-photo-hero-v90 .lead{
    color:#FFFFFF!important;
    text-shadow:0 2px 14px rgba(0,0,0,.32)!important;
  }
  .gymnastes-page-v140 .gymnastes-photo-hero-v79 h1 em,
  .entraineurs-page-v141 .entraineurs-photo-hero-v90 h1 em{
    color:var(--leila-pink)!important;
    text-shadow:0 2px 14px rgba(0,0,0,.18)!important;
  }

  /* Replace the old white wash with a restrained dark readability veil on mobile only */
  .gymnastes-photo-hero-v79 .gymnastes-hero-shade-v79,
  .entraineurs-photo-hero-v90 .entraineurs-hero-shade-v90{
    background:
      linear-gradient(180deg,
        rgba(5,8,12,.04) 0%,
        rgba(5,8,12,.07) 30%,
        rgba(5,8,12,.20) 58%,
        rgba(5,8,12,.40) 100%
      ),
      linear-gradient(90deg,
        rgba(5,8,12,.12) 0%,
        rgba(5,8,12,.03) 72%,
        transparent 100%
      )!important;
  }

  /* Gymnastes dark moment block */
  .gymnastes-page-v140 .gym-photo-duo-footer-v109 span,
  .gymnastes-page-v140 .gym-photo-duo-footer-v109 strong{
    color:#FFFFFF!important;
  }

  /* Mobile FAQ: no height tween / no browser scroll anchoring vibration */
  #gymFaq,
  #coachFaq{
    overflow-anchor:none!important;
  }
  #gymFaq .faq-answer,
  #coachFaq .faq-answer{
    display:none!important;
    grid-template-rows:1fr!important;
    opacity:1!important;
    transition:none!important;
  }
  #gymFaq .faq-item.is-open .faq-answer,
  #coachFaq .faq-item.is-open .faq-answer{
    display:grid!important;
  }
  #gymFaq .faq-answer[hidden],
  #coachFaq .faq-answer[hidden]{
    display:none!important;
  }
  #gymFaq .faq-answer-inner,
  #coachFaq .faq-answer-inner{
    transition:none!important;
  }
  #gymFaq .faq-toggle,
  #coachFaq .faq-toggle{
    transition:background .2s ease,transform .2s ease!important;
  }
}

/* =========================================================
   V148 — MOBILE MENU FINAL TUNING
   Restore the original contour-grid language on mobile,
   recolored in pink, with a white panel and black text.
   Nothing else changes.
   ========================================================= */
@media (max-width:900px){
  .menu-panel{
    background:#FFFFFF!important;
    background-image:none!important;
    color:#111111!important;
  }
  .menu-panel::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    opacity:.92!important;
    pointer-events:none!important;
    background-image:
      repeating-radial-gradient(ellipse at 78% 23%, transparent 0 38px, rgba(230,78,120,.115) 39px 40px, transparent 41px 62px),
      repeating-radial-gradient(ellipse at 16% 77%, transparent 0 54px, rgba(230,78,120,.08) 55px 56px, transparent 57px 84px),
      radial-gradient(circle at 77% 22%, rgba(230,78,120,.18) 0 2px, transparent 3px),
      radial-gradient(circle at 18% 74%, rgba(230,78,120,.14) 0 2px, transparent 3px)!important;
    background-size:100% 100%!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
  }
  .menu-panel::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    pointer-events:none!important;
    background:
      linear-gradient(118deg,transparent 0 64%,rgba(230,78,120,.06) 64.2% 64.35%,transparent 64.5%),
      linear-gradient(28deg,transparent 0 73%,rgba(230,78,120,.045) 73.2% 73.35%,transparent 73.5%)!important;
  }
  .menu-panel > div{position:relative;z-index:1!important}
  .menu-links a,
  .menu-links a:link,
  .menu-links a:visited{
    color:#111111!important;
    border-color:rgba(17,17,17,.10)!important;
  }
  .menu-links a:hover,
  .menu-links a:focus-visible{
    color:#111111!important;
  }
  .menu-side,
  .menu-side p,
  .menu-mini-links a,
  .menu-panel .lead{
    color:#111111!important;
  }
  .menu-panel .eyebrow,
  .menu-side .eyebrow,
  .menu-mini-links a:hover{
    color:var(--leila-pink)!important;
  }
}

/* =========================================================
   V149 — VERIFIED MOBILE MENU CASCADE FIX ONLY
   Ensures the earlier V124 lock rule cannot keep the mobile
   menu blue. No other design/content change.
   ========================================================= */
@media (max-width:900px){
  .menu-open .menu-panel{
    background:#FFFFFF!important;
    background-color:#FFFFFF!important;
    color:#111111!important;
  }
  .menu-open .menu-links a,
  .menu-open .menu-links a:link,
  .menu-open .menu-links a:visited{
    color:#111111!important;
  }
}

/* =========================================================
   V150 — APPROVED EXTENSIONS ONLY
   Home audience routes + real signature + Clubs media/map + Gallery page.
   Existing pages/design remain untouched outside these requested areas.
   ========================================================= */

/* HOME HERO — four audience routes, same brand language */
.hero:not(.path-hero) .home-audiences-v150{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  width:min(620px,100%);
  gap:12px;
}
.hero:not(.path-hero) .home-audiences-v150 .btn{
  width:100%;
  min-width:0;
}
.hero:not(.path-hero) .home-audiences-v150 .home-parent-v150{
  border-color:rgba(230,78,120,.30)!important;
}
.hero:not(.path-hero) .home-audiences-v150 .home-club-v150{
  background:var(--leila-pink)!important;
  border-color:var(--leila-pink)!important;
  color:#FFFFFF!important;
}

/* HOME HERO — exact Leïla signature asset */
.hero:not(.path-hero) .hero-signature-v150{
  width:clamp(260px,25vw,430px);
  font-size:0!important;
  line-height:0;
  transform:rotate(-2deg);
  opacity:.96;
  filter:drop-shadow(0 10px 24px rgba(17,17,17,.10));
}
.hero:not(.path-hero) .hero-signature-v150 img{
  display:block;
  width:100%;
  height:auto;
}
.hero:not(.path-hero) .hero-signature-v150::after{display:none!important}

/* CLUBS — new real intervention video + animated real France map */
.clubs-video-wrap-v133 video{
  object-fit:cover;
}
.clubs-france-video-v150{
  width:100%;
  display:block;
  aspect-ratio:1/1;
  object-fit:contain;
  border-radius:24px;
  background:#FFFCFA;
  margin:18px 0 4px;
}

/* NAV — one extra Galerie entry without crowding desktop */
@media (min-width:901px) and (max-width:1180px){
  .navlinks{gap:18px!important}
  .nav{gap:20px!important}
}

/* GALLERY — white editorial canvas × pink accents × black typography */
.gallery-page-v150{
  background:#FFFFFF;
  color:#111111;
}
.gallery-page-v150 .navlinks .is-current-v150{color:var(--leila-pink)!important}
.gallery-hero-v150{
  position:relative;
  overflow:hidden;
  padding:190px 0 110px;
  background:
    radial-gradient(circle at 82% 18%,rgba(230,78,120,.10),transparent 29%),
    radial-gradient(circle at 18% 86%,rgba(242,201,76,.10),transparent 24%),
    #FFFFFF;
  color:#111111;
}
.gallery-contours-v150{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.8;
  background-image:
    repeating-radial-gradient(ellipse at 82% 25%,transparent 0 52px,rgba(230,78,120,.055) 53px 54px,transparent 55px 88px),
    repeating-radial-gradient(ellipse at 13% 82%,transparent 0 65px,rgba(230,78,120,.035) 66px 67px,transparent 68px 104px);
}
.gallery-hero-grid-v150{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);
  gap:7vw;
  align-items:end;
}
.gallery-hero-copy-v150 h1{
  color:#111111;
  font-size:clamp(64px,8vw,128px);
  margin-bottom:28px;
}
.gallery-hero-copy-v150 h1 em{color:var(--leila-pink)!important}
.gallery-hero-copy-v150 .eyebrow{color:var(--leila-pink)!important}
.gallery-hero-copy-v150 .lead{color:#3F3F3F!important;max-width:730px}
.gallery-hero-card-v150{
  border:1px solid rgba(230,78,120,.20);
  border-radius:32px;
  padding:34px;
  background:rgba(255,255,255,.76);
  box-shadow:0 24px 70px rgba(17,17,17,.07);
  backdrop-filter:blur(12px);
}
.gallery-hero-card-v150 span,
.gallery-caption-v150 span,
.gallery-item-v150 figcaption span{
  display:block;
  color:var(--leila-pink);
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.gallery-hero-card-v150 strong{
  display:block;
  margin:15px 0 12px;
  font-family:"Archivo",system-ui,sans-serif;
  font-size:clamp(25px,2.5vw,38px);
  line-height:1.02;
  letter-spacing:-.04em;
}
.gallery-hero-card-v150 p{margin:0;color:#555;line-height:1.55}

.gallery-library-v150{
  background:#FFFDFC;
  padding:110px 0 130px;
  color:#111111;
}
.gallery-library-head-v150{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:40px;
  margin-bottom:48px;
}
.gallery-library-head-v150 h2{font-size:clamp(48px,6vw,86px);margin:0;color:#111}
.gallery-library-head-v150 .eyebrow{color:var(--leila-pink)!important}
.gallery-filters-v150{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.gallery-filters-v150 button{
  appearance:none;
  border:1px solid rgba(17,17,17,.13);
  background:#FFFFFF;
  color:#111111;
  border-radius:999px;
  padding:11px 16px;
  cursor:pointer;
  font-family:"Archivo",system-ui,sans-serif;
  font-size:10px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  transition:.25s var(--ease);
}
.gallery-filters-v150 button:hover,
.gallery-filters-v150 button.is-active{
  background:var(--leila-pink);
  color:#FFFFFF;
  border-color:var(--leila-pink);
  transform:translateY(-2px);
}
.gallery-grid-v150{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-flow:dense;
  gap:18px;
}
.gallery-item-v150{
  position:relative;
  min-height:430px;
  margin:0;
  border-radius:30px;
  overflow:hidden;
  background:#F7F4F3;
  box-shadow:0 18px 50px rgba(17,17,17,.07);
}
.gallery-item-v150[hidden]{display:none!important}
.gallery-wide-v150{grid-column:span 2}
.gallery-tall-v150{min-height:620px}
.gallery-item-v150 img,
.gallery-item-v150 video{
  width:100%;
  height:100%;
  min-height:inherit;
  display:block;
  object-fit:cover;
}
.gallery-item-v150 img{transition:transform .65s var(--ease)}
.gallery-item-v150:hover img{transform:scale(1.025)}
.gallery-item-v150 figcaption,
.gallery-caption-v150{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:70px 26px 25px;
  color:#FFFFFF;
  background:linear-gradient(180deg,transparent,rgba(10,10,10,.78));
  pointer-events:none;
}
.gallery-item-v150 figcaption span,
.gallery-caption-v150 span{color:#FF8BAE}
.gallery-item-v150 figcaption strong,
.gallery-caption-v150 strong{
  display:block;
  margin-top:8px;
  font-family:"Archivo",system-ui,sans-serif;
  font-size:clamp(18px,1.7vw,27px);
  line-height:1.08;
  letter-spacing:-.03em;
}
.gallery-video-v150{background:#111111}
.gallery-video-v150 video{background:#111111}

.gallery-end-v150{
  position:relative;
  overflow:hidden;
  padding:120px 0;
  background:#FFFFFF;
  color:#111111;
}
.gallery-end-v150::before{
  content:"";
  position:absolute;
  width:520px;height:520px;
  right:-140px;top:-200px;
  border-radius:50%;
  border:1px solid rgba(230,78,120,.10);
  box-shadow:0 0 0 55px rgba(230,78,120,.03),0 0 0 110px rgba(230,78,120,.018);
}
.gallery-end-inner-v150{position:relative;z-index:1}
.gallery-end-v150 .eyebrow{color:var(--leila-pink)!important}
.gallery-end-v150 h2{color:#111111}
.gallery-end-v150 h2 em{color:var(--leila-pink)!important}
.gallery-end-v150 .lead{color:#444!important}

@media(max-width:900px){
  .gallery-hero-v150{padding:135px 0 72px}
  .gallery-hero-grid-v150{grid-template-columns:1fr;gap:34px}
  .gallery-library-v150{padding:76px 0 90px}
  .gallery-library-head-v150{display:block;margin-bottom:30px}
  .gallery-filters-v150{justify-content:flex-start;margin-top:24px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px;scrollbar-width:none}
  .gallery-filters-v150::-webkit-scrollbar{display:none}
  .gallery-filters-v150 button{flex:0 0 auto}
  .gallery-grid-v150{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-wide-v150{grid-column:span 2}
}

@media(max-width:700px){
  .hero:not(.path-hero) .home-audiences-v150{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    width:100%;
  }
  .hero:not(.path-hero) .home-audiences-v150 .btn{
    min-height:58px;
    padding:8px 12px!important;
    font-size:9px!important;
    line-height:1.15;
    text-align:center;
  }
  .hero:not(.path-hero) .hero-signature-v150{
    width:min(62vw,280px)!important;
    margin-top:10px!important;
  }
  .clubs-france-video-v150{border-radius:18px;margin-top:12px}
  .gallery-hero-v150{padding-top:118px}
  .gallery-hero-copy-v150 h1{font-size:clamp(52px,17vw,72px)}
  .gallery-hero-card-v150{padding:26px;border-radius:24px}
  .gallery-grid-v150{grid-template-columns:1fr;gap:14px}
  .gallery-wide-v150{grid-column:auto}
  .gallery-item-v150,
  .gallery-tall-v150{min-height:470px}
  .gallery-video-v150{min-height:520px}
  .gallery-item-v150 figcaption,
  .gallery-caption-v150{padding:70px 20px 20px}
  .gallery-end-v150{padding:82px 0}
}
#parents{scroll-margin-top:110px}

/* =========================================================
   V151 — GYMNASTES MID-CTAs + VIDEO TESTIMONIALS
   + ENTRAINEURS NATIONAL FOOTPRINT
   Scope strictly limited to the new sections.
   ========================================================= */

/* ---------- Gymnastes · conversion checkpoints ---------- */
.gym-inline-cta-v151{
  padding:26px 0 8px;
  background:#fff;
}
.gym-inline-cta-card-v151{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:32px;
  align-items:center;
  padding:28px 30px;
  border:1px solid rgba(230,78,120,.22);
  border-radius:26px;
  background:
    radial-gradient(circle at 92% 0%,rgba(230,78,120,.11),transparent 30%),
    linear-gradient(135deg,#fff 0%,#fff9fb 100%);
  box-shadow:0 18px 46px rgba(18,18,18,.06);
}
.gym-inline-cta-card-v151 .eyebrow{
  margin:0 0 8px;
  color:var(--leila-pink)!important;
}
.gym-inline-cta-card-v151 h3{
  margin:0;
  color:#111;
  font-size:clamp(24px,2vw,34px);
  line-height:1.02;
  letter-spacing:-.035em;
}
.gym-inline-cta-card-v151 p:not(.eyebrow){
  margin:10px 0 0;
  max-width:760px;
  color:#4b4b4f;
  font-size:16px;
  line-height:1.55;
}
.gym-inline-cta-card-v151 .btn{
  white-space:nowrap;
}

/* ---------- Gymnastes · video testimonials ---------- */
.gym-testimonials-v151{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 7% 8%,rgba(230,78,120,.11),transparent 24%),
    radial-gradient(circle at 92% 86%,rgba(246,206,102,.11),transparent 22%),
    #fff;
}
.gym-testimonials-v151::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.55;
  background-image:repeating-radial-gradient(ellipse at 82% 20%,transparent 0 76px,rgba(230,78,120,.055) 77px 78px,transparent 79px 112px);
}
.gym-testimonials-v151 .container{position:relative;z-index:1}
.gym-testimonials-head-v151{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.7fr);
  gap:46px;
  align-items:end;
  margin-bottom:42px;
}
.gym-testimonials-head-v151 .eyebrow{color:var(--leila-pink)!important}
.gym-testimonials-head-v151 h2{margin-bottom:0}
.gym-testimonials-head-v151 .lead{margin:0 0 4px;color:#4e5359}
.gym-testimonials-grid-v151{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.gym-testimonial-card-v151{
  overflow:hidden;
  border:1px solid rgba(16,24,35,.09);
  border-radius:26px;
  background:#fff;
  box-shadow:0 20px 48px rgba(9,15,24,.08);
}
.gym-testimonial-video-v151{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#08111f;
}
.gym-testimonial-video-v151 video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#08111f;
}
.gym-testimonial-index-v151{
  position:absolute;
  top:14px;
  left:14px;
  z-index:2;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(8,17,31,.76);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  color:#fff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
}
.gym-testimonial-copy-v151{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:17px 18px 19px;
}
.gym-testimonial-copy-v151 strong{
  color:#111;
  font-size:15px;
  letter-spacing:.05em;
}
.gym-testimonial-copy-v151 span{
  color:#737a82;
  font-size:12px;
  text-align:right;
}
.gym-inline-cta-card-v151--inside{margin-top:34px}

/* ---------- Entraîneurs · national footprint ---------- */
.coach-france-v151{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 12%,rgba(230,78,120,.10),transparent 24%),
    linear-gradient(180deg,#fff 0%,#fffafb 100%);
}
.coach-france-v151::after{
  content:"28";
  position:absolute;
  top:-.12em;
  right:.025em;
  font-size:clamp(150px,20vw,360px);
  line-height:1;
  font-weight:900;
  color:rgba(230,78,120,.045);
  pointer-events:none;
}
.coach-france-v151 .container{position:relative;z-index:1}
.coach-france-head-v151{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:50px;
  align-items:end;
  margin-bottom:42px;
}
.coach-france-head-v151 .eyebrow{color:var(--leila-pink)!important}
.coach-france-head-v151 h2{margin-bottom:0}
.coach-france-head-v151 h2 em{color:var(--leila-pink);font-style:normal}
.coach-france-head-v151 .lead{margin:0;color:#4f555d}
.coach-france-layout-v151{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);
  gap:28px;
  align-items:start;
}
.coach-france-map-card-v151{
  overflow:hidden;
  border:1px solid rgba(230,78,120,.20);
  border-radius:34px;
  background:#fff;
  box-shadow:0 26px 60px rgba(16,18,22,.08);
}
.coach-france-map-v151{
  position:relative;
  width:min(100%,720px);
  aspect-ratio:1;
  margin:auto;
  padding:22px;
}
.coach-france-map-v151>img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.coach-france-pins-v151{position:absolute;inset:22px;pointer-events:none}
.coach-map-pin-v151{
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:11px;
  height:11px;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--leila-pink);
  box-shadow:0 0 0 5px rgba(230,78,120,.12),0 0 20px rgba(230,78,120,.42);
  opacity:0;
  transform:translate(-50%,-50%) scale(.35);
  animation:coachPinInV151 .48s cubic-bezier(.2,.8,.2,1) forwards;
  animation-delay:var(--d);
}
.coach-map-pin-v151::after{
  content:"";
  position:absolute;
  inset:-7px;
  border:1px solid rgba(230,78,120,.38);
  border-radius:50%;
  animation:coachPinPulseV151 2.4s ease-out infinite;
  animation-delay:calc(var(--d) + .35s);
}
@keyframes coachPinInV151{to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes coachPinPulseV151{0%{opacity:.65;transform:scale(.45)}70%,100%{opacity:0;transform:scale(1.45)}}
.coach-france-idf-v151{
  position:absolute;
  left:56%;
  top:25%;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  width:74px;
  height:74px;
  border:1px solid rgba(230,78,120,.28);
  border-radius:50%;
  background:rgba(255,255,255,.92);
  box-shadow:0 12px 32px rgba(230,78,120,.14);
  text-align:center;
}
.coach-france-idf-v151 strong{display:block;color:var(--leila-pink);font-size:26px;line-height:1}
.coach-france-idf-v151 span{display:block;margin-top:4px;color:#111;font-size:7px;font-weight:800;letter-spacing:.09em}
.coach-france-stats-v151{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(16,24,35,.08);
  background:#0b1423;
}
.coach-france-stats-v151>div{padding:20px 14px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.coach-france-stats-v151>div:last-child{border-right:0}
.coach-france-stats-v151 strong{display:block;color:#fff;font-size:clamp(26px,3vw,44px);line-height:1}
.coach-france-stats-v151 span{display:block;margin-top:7px;color:#fff;font-size:9px;font-weight:800;letter-spacing:.09em;opacity:.78}
.coach-france-list-v151{display:grid;gap:18px}
.coach-france-list-v151 article{
  padding:26px;
  border:1px solid rgba(16,24,35,.09);
  border-radius:28px;
  background:#fff;
  box-shadow:0 18px 46px rgba(16,18,22,.055);
}
.coach-france-list-head-v151{display:flex;gap:15px;align-items:center;margin-bottom:19px}
.coach-france-list-head-v151>span{
  display:grid;place-items:center;width:46px;height:46px;border-radius:14px;
  background:var(--leila-pink);color:#fff;font-size:13px;font-weight:900;
}
.coach-france-list-head-v151 strong{display:block;color:#111;font-size:15px;letter-spacing:.06em}
.coach-france-list-head-v151 small{display:block;margin-top:3px;color:var(--leila-pink);font-size:12px;font-weight:800}
.coach-france-chips-v151{display:flex;flex-wrap:wrap;gap:8px}
.coach-france-chips-v151 span{
  padding:9px 11px;
  border:1px solid rgba(230,78,120,.18);
  border-radius:999px;
  background:#fff8fa;
  color:#25272b;
  font-size:11px;
  font-weight:700;
  line-height:1.15;
}
.coach-france-note-v151{margin:22px 0 0;color:#777d84;font-size:12px;text-align:center}

@media(max-width:980px){
  .gym-testimonials-grid-v151{grid-template-columns:repeat(2,minmax(0,1fr))}
  .coach-france-head-v151,.coach-france-layout-v151{grid-template-columns:1fr}
  .coach-france-head-v151{gap:18px}
}

@media(max-width:700px){
  .gym-inline-cta-v151{padding:18px 0 4px}
  .gym-inline-cta-card-v151{
    grid-template-columns:1fr;
    gap:20px;
    padding:23px 20px;
    border-radius:24px;
  }
  .gym-inline-cta-card-v151 .btn{width:100%;text-align:center;white-space:normal}
  .gym-testimonials-head-v151{grid-template-columns:1fr;gap:14px;margin-bottom:24px}
  .gym-testimonials-grid-v151{
    display:flex;
    gap:14px;
    margin-right:calc(var(--pad,22px) * -1);
    padding-right:var(--pad,22px);
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .gym-testimonials-grid-v151::-webkit-scrollbar{display:none}
  .gym-testimonial-card-v151{flex:0 0 86vw;scroll-snap-align:start;border-radius:22px}
  .gym-testimonial-copy-v151{padding:14px 15px 16px}
  .gym-testimonial-copy-v151 span{font-size:11px}

  .coach-france-v151::after{font-size:160px;top:.15em;right:-.08em}
  .coach-france-head-v151{margin-bottom:26px}
  .coach-france-layout-v151{gap:18px}
  .coach-france-map-card-v151{border-radius:26px}
  .coach-france-map-v151{padding:12px}
  .coach-france-pins-v151{inset:12px}
  .coach-map-pin-v151{width:9px;height:9px}
  .coach-france-idf-v151{width:60px;height:60px}
  .coach-france-idf-v151 strong{font-size:21px}
  .coach-france-stats-v151{grid-template-columns:repeat(2,1fr)}
  .coach-france-stats-v151>div{padding:16px 10px;border-bottom:1px solid rgba(255,255,255,.08)}
  .coach-france-stats-v151>div:nth-child(2){border-right:0}
  .coach-france-stats-v151>div:nth-child(3),.coach-france-stats-v151>div:nth-child(4){border-bottom:0}
  .coach-france-list-v151 article{padding:21px 18px;border-radius:24px}
  .coach-france-chips-v151 span{font-size:10px}
}

@media(prefers-reduced-motion:reduce){
  .coach-map-pin-v151{opacity:1;transform:translate(-50%,-50%) scale(1);animation:none}
  .coach-map-pin-v151::after{animation:none}
}


/* =========================================================
   V152 — requested content corrections only
   ========================================================= */

/* Coach map: remove decorative 28 and force dark-strip numbers to white */
.coach-france-v151::after{content:none!important;display:none!important}
.coach-france-stats-v151 strong,
.entraineurs-page-v141 .coach-france-stats-v151 strong,
.entraineurs-page-v142 .coach-france-stats-v151 strong{color:#FFFFFF!important;opacity:1!important}

/* Home · Leïla public milestones, same visual language */
.leila-milestones-v152{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.leila-milestones-v152>div{
  min-height:138px;
  padding:22px 24px;
  border:1px solid rgba(232,166,184,.30);
  border-radius:22px;
  background:rgba(255,255,255,.96);
  box-shadow:0 15px 38px rgba(8,17,31,.055);
}
.leila-milestones-v152 span{
  display:block;
  margin-bottom:9px;
  color:var(--leila-pink-strong,#D93B6D);
  font:900 11px/1.2 "Archivo",sans-serif;
  letter-spacing:.14em;
}
.leila-milestones-v152 p{
  margin:0;
  color:#26282c!important;
  font-size:13px;
  line-height:1.55;
}
@media(max-width:700px){
  .leila-milestones-v152{grid-template-columns:1fr;gap:10px;margin-top:14px}
  .leila-milestones-v152>div{min-height:0;padding:18px 17px;border-radius:18px}
  .leila-milestones-v152 p{font-size:12px}
}

/* =========================================================
   V153 — HOME HERO SIGNATURE SIZE ONLY
   Requested change only: reduce Leïla signature on desktop/mobile.
   Position, layout and all other design remain unchanged.
   ========================================================= */
.hero:not(.path-hero) .hero-signature-v150{
  width:clamp(190px,18vw,300px)!important;
}
@media(max-width:700px){
  .hero:not(.path-hero) .hero-signature-v150{
    width:min(46vw,210px)!important;
  }
}
@media(max-width:430px){
  .hero:not(.path-hero) .hero-signature-v150{
    width:min(44vw,185px)!important;
  }
}

/* V156 — Galerie: légendes lisibles sur toutes les images */
.gallery-page-v150 .gallery-item-v150 figcaption,
.gallery-page-v150 .gallery-item-v150 figcaption strong,
.gallery-page-v150 .gallery-caption-v150,
.gallery-page-v150 .gallery-caption-v150 strong{color:#FFFFFF!important;}
.gallery-page-v150 .gallery-item-v150 figcaption span,
.gallery-page-v150 .gallery-caption-v150 span{color:#FFFFFF!important;}

/* =========================================================
   V158 — HOME CONTACT CONSENT CHECKBOX / DESKTOP ONLY
   Fix the consent checkbox alignment and native control styling
   without changing mobile or any other part of the site.
   ========================================================= */
@media (min-width:901px){
  #whatsappContactForm .consent-row{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    grid-template-columns:none!important;
    cursor:pointer!important;
  }

  #whatsappContactForm .consent-row input[type="checkbox"]{
    -webkit-appearance:auto!important;
    appearance:auto!important;
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    flex:0 0 20px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:4px!important;
    background:transparent!important;
    box-shadow:none!important;
    outline-offset:3px!important;
    accent-color:#E64E78!important;
    cursor:pointer!important;
  }

  #whatsappContactForm .consent-row span{
    display:block!important;
    margin:0!important;
    line-height:1.45!important;
    cursor:pointer!important;
  }
}

/* =========================================================
   V159 — HOME CONTACT CONSENT CHECKBOX / REACTIVE INTERACTION
   Scope: homepage WhatsApp consent row only.
   Keeps every other site component unchanged.
   ========================================================= */
#whatsappContactForm .consent-row{
  position:relative!important;
  min-height:44px!important;
  padding:8px 10px!important;
  margin-left:-10px!important;
  margin-right:-10px!important;
  border-radius:12px!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}

#whatsappContactForm .consent-row input[type="checkbox"]{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  flex:0 0 24px!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  accent-color:#E64E78!important;
}

#whatsappContactForm .consent-row span{
  cursor:pointer!important;
  pointer-events:auto!important;
}

#whatsappContactForm .consent-row:focus-within{
  outline:2px solid rgba(230,78,120,.45)!important;
  outline-offset:2px!important;
}

/* Stop the decorative 3D tilt only while the consent control is being used.
   This prevents the tiny control from moving under the pointer during click/tap. */
.contact-form-card.consent-interaction-active{
  transform:none!important;
  transition:box-shadow .18s ease,border-color .18s ease!important;
}
