/* Spartan Performance with Billy – v2 "private coaching" design
   Fonts: Noto Serif Display (headings) + Manrope (text) – both cover Latin, Greek & Cyrillic. */
:root{
  --gold:#F5C400; --gold2:#FFD633; --gold-soft:rgba(245,196,0,.14); --gold-line:rgba(245,196,0,.38);
  --bk:#0a0a0b; --bk2:#111113; --bk3:#17171a; --bk4:#1e1e22;
  --tx:#ecebe7; --mu:#9d9a93; --line:rgba(255,255,255,.08);
  --fh:'Noto Serif Display','Georgia','Times New Roman',serif;
  --fb:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --r:4px;
  /* legacy names kept for safety */
  --y:var(--gold); --y2:var(--gold2);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{overflow-x:hidden;overflow-x:clip;background:var(--bk);color:var(--tx);font-family:var(--fb);font-weight:400;line-height:1.7;font-size:16px;-webkit-font-smoothing:antialiased;letter-spacing:.005em}
main{overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit}
.container{width:min(1200px,90%);margin-inline:auto}
.narrow{width:min(820px,90%)}
.narrow-text{max-width:680px;margin-inline:auto}
.center{text-align:center}
.mt{margin-top:3rem}
.small{font-size:.85rem}
.muted{color:var(--mu)}
[hidden]{display:none!important}
.hp{position:absolute;left:-9999px;opacity:0}
::selection{background:var(--gold);color:#000}

/* buttons */
.btn{display:inline-block;background:var(--gold);color:#0a0a0b;font-family:var(--fb);text-transform:uppercase;letter-spacing:.16em;font-weight:600;font-size:.78rem;padding:1.15em 2.2em;border-radius:2px;text-decoration:none;border:1px solid var(--gold);cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .3s;text-align:center}
.btn:hover{background:var(--gold2);border-color:var(--gold2);transform:translateY(-1px)}
.btn--ghost{background:transparent;color:var(--tx);border-color:rgba(255,255,255,.28)}
.btn--ghost:hover{background:transparent;border-color:var(--gold);color:var(--gold)}
.btn--small{padding:.8em 1.3em;font-size:.72rem}
.btn--full{width:100%;font-size:.85rem;padding:1.3em}
.btn:disabled{opacity:.6;cursor:wait}

/* header */
.header{position:sticky;top:0;z-index:50;background:rgba(10,10,11,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.header__inner{display:flex;align-items:center;gap:1.6rem;height:76px}
.logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}
.logo__mark{border:1px solid var(--gold);color:var(--gold);font-family:var(--fh);font-weight:400;font-size:1rem;letter-spacing:.06em;width:40px;height:40px;display:grid;place-items:center}
.logo__text{font-family:var(--fh);font-weight:400;line-height:1.05;font-size:1.08rem;letter-spacing:.02em}
.logo__text small{display:block;color:var(--gold);font-family:var(--fb);font-size:.62rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;margin-top:4px}
.nav{display:flex;align-items:center;gap:1.7rem;margin-left:auto}
.nav a{text-decoration:none;font-size:.8rem;font-weight:500;letter-spacing:.06em;color:#cfccc5;transition:color .25s;white-space:nowrap;position:relative}
.nav a:not(.nav__cta)::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--gold);transition:right .3s}
.nav a:not(.nav__cta):hover{color:#fff}
.nav a:not(.nav__cta):hover::after{right:0}
.nav a.nav__cta{color:#0a0a0b}
.lang{display:flex;gap:0;border:1px solid var(--line);padding:2px;border-radius:2px}
.lang button{background:none;border:0;color:var(--mu);font:600 .7rem var(--fb);letter-spacing:.08em;padding:.45em .6em;cursor:pointer;transition:color .2s}
.lang button:hover{color:#fff}
.lang button.active{color:var(--gold);box-shadow:inset 0 -1px 0 var(--gold)}
.burger{display:none;background:none;border:0;cursor:pointer;width:40px;height:40px;flex-direction:column;justify-content:center;gap:6px;align-items:center}
.burger span{width:22px;height:1px;background:#fff;transition:.3s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* type */
.section{padding:clamp(5rem,10vw,8.5rem) 0}
.kicker{color:var(--gold);font-family:var(--fb);text-transform:uppercase;letter-spacing:.28em;font-size:.72rem;font-weight:600;margin-bottom:1.1rem;display:flex;align-items:center;gap:.9rem}
.kicker::before{content:"";width:28px;height:1px;background:var(--gold);flex-shrink:0}
.kicker.center{justify-content:center}
.kicker.center::after{content:"";width:28px;height:1px;background:var(--gold);flex-shrink:0}
.title{font-family:var(--fh);font-weight:300;font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.12;letter-spacing:-.005em;margin-bottom:1.6rem}
.title em,.hero__title em,.final__title em{font-style:italic;color:var(--gold2);font-weight:300}
.lead{color:#c9c6bf;font-size:clamp(1rem,1.4vw,1.12rem);font-weight:300;line-height:1.8}
p+p{margin-top:1rem}

/* hero */
.hero{position:relative;overflow:hidden;padding:clamp(3rem,7vw,6rem) 0 clamp(3.5rem,7vw,6rem)}
.hero__inner{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2.5rem,6vw,6rem);align-items:center}
.hero__title{font-family:var(--fh);font-weight:300;font-size:clamp(2.6rem,6vw,5rem);line-height:1.04;letter-spacing:-.015em;margin-bottom:1.8rem}
.hero__title em{display:inline-block}
.hero__sub{font-size:clamp(1.02rem,1.5vw,1.16rem);color:#c9c6bf;font-weight:300;max-width:560px;line-height:1.8}
.hero__ctas{display:flex;flex-wrap:wrap;gap:1rem;margin:2.6rem 0 1.8rem}
.hero__note{display:flex;align-items:center;gap:.7rem;color:var(--mu);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.dot{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--gold-soft)}


/* private coaching */
.private{background:linear-gradient(180deg,var(--bk) 0%,var(--bk2) 100%)}
.private__head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:end;margin-bottom:3.5rem}
.private__head .title{margin-bottom:0}
.features{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--gold-line)}
.feature{padding:2.4rem 1.8rem 2.4rem 0;transition:background .3s}
.feature+.feature{padding-left:1.8rem;border-left:1px solid var(--line)}
.feature__n{font-family:var(--fh);font-style:italic;color:var(--gold);font-size:1.1rem;display:block;margin-bottom:1.2rem}
.feature h3{font-family:var(--fh);font-weight:400;font-size:1.3rem;line-height:1.3;margin-bottom:.7rem}
.feature p{color:var(--mu);font-size:.93rem}
.private__foot{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center;margin-top:2.5rem;padding:2.4rem;border:1px solid var(--line);background:rgba(255,255,255,.015)}
.private__how h3{font-family:var(--fb);text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--gold);font-weight:600;margin-bottom:.6rem}
.private__how p{color:#c9c6bf;font-size:.95rem}
.private__ctas{display:flex;flex-direction:column;gap:.8rem}
.private__limit{color:var(--mu);text-align:center;letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;margin-top:.3rem}

/* online cards */
.included{background:var(--bk)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);margin-top:3.5rem;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.card{padding:2.4rem 2.2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .35s}
.card:hover{background:var(--bk2)}
.card__n{font-family:var(--fh);font-style:italic;color:var(--gold);font-size:1rem;display:block;margin-bottom:1.1rem}
.card h3{font-family:var(--fh);font-weight:400;font-size:1.25rem;line-height:1.3;margin-bottom:.6rem}
.card p{color:var(--mu);font-size:.93rem}

/* about */
.about{background:var(--bk2)}
.about__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,6vw,6rem);align-items:center}
.about__img{position:relative}
.about__img img{width:100%;aspect-ratio:4/4.6;object-fit:cover;object-position:center 20%;filter:saturate(.9) contrast(1.04)}
.about__img::after{content:"";position:absolute;inset:-16px 16px 16px -16px;border:1px solid var(--gold-line);z-index:-1}
.about__img{z-index:0}
.about__tag{position:absolute;bottom:18px;left:18px;background:rgba(10,10,11,.8);backdrop-filter:blur(6px);color:var(--gold2);font-size:.75rem;letter-spacing:.1em;padding:.6em 1em;border:1px solid var(--gold-line)}
.about p:not(.kicker){color:#c9c6bf;font-weight:300}
.about__credT{font-family:var(--fb);text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--gold);font-weight:600;margin:2.2rem 0 0}
.checks{list-style:none;margin:1rem 0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:0 2rem;border-top:1px solid var(--line)}
.checks li{padding:.9rem 0 .9rem 1.6rem;position:relative;font-weight:500;font-size:.95rem;border-bottom:1px solid var(--line)}
.checks li::before{content:"";position:absolute;left:0;top:1.45rem;width:9px;height:1px;background:var(--gold)}
.philo{border-left:1px solid var(--gold);padding:.4rem 0 .4rem 1.6rem}
.philo h3{font-family:var(--fh);font-style:italic;font-weight:400;color:var(--gold2);font-size:1.2rem;margin-bottom:.4rem}

/* how */
.how{background:var(--bk)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:3.5rem;border-top:1px solid var(--line)}
.step{padding:2.4rem 1.8rem 1rem 0;position:relative}
.step+.step{padding-left:1.8rem;border-left:1px solid var(--line)}
.step__n{font-family:var(--fh);font-weight:300;font-size:2.6rem;color:var(--gold);line-height:1;display:block;margin-bottom:1.2rem}
.step h3{font-family:var(--fh);font-weight:400;font-size:1.2rem;line-height:1.3;margin-bottom:.6rem}
.step p{color:var(--mu);font-size:.93rem}

/* gallery */
.gallery{background:var(--bk2)}
.gallery__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:3rem}
.gallery__item{margin:0;overflow:hidden;position:relative;aspect-ratio:4/5;background:var(--bk3)}
.gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s;filter:saturate(.85)}
.gallery__item:hover img{transform:scale(1.04);filter:saturate(1)}
.gallery__item figcaption{position:absolute;left:0;right:0;bottom:0;padding:1rem 1.2rem;font-size:.8rem;color:#ddd;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent)}

/* results (only when real testimonials exist) */
.results{background:var(--bk)}
.results__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.4rem;margin:3rem 0 1.5rem}
.result{border:1px solid var(--line);padding:2.2rem;margin:0}
.result img{width:100%;aspect-ratio:4/3.4;object-fit:cover;margin-bottom:1.4rem}
.result blockquote{font-family:var(--fh);font-style:italic;font-weight:300;font-size:1.15rem;color:#e2ded5;line-height:1.6}
.result figcaption{margin-top:1.2rem;color:var(--mu);font-size:.85rem;letter-spacing:.06em}
.result figcaption strong{color:var(--gold)}

/* intro call */
.intro{background:linear-gradient(180deg,var(--bk2),var(--bk))}
.intro__wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.intro__box{border:1px solid var(--gold-line);background:var(--bk);padding:clamp(1.2rem,3vw,2rem);min-height:240px}
.intro__fallback{padding:clamp(1rem,3vw,2rem);text-align:center}
.intro__fallback h3{font-family:var(--fh);font-weight:400;font-size:1.5rem;margin-bottom:.8rem}
.intro__fallback p{color:var(--mu);max-width:460px;margin:0 auto 1.8rem}
#calendlyEmbed .calendly-inline-widget{min-width:300px;height:700px}
.intro__alt{text-align:center;margin-top:1rem;color:var(--mu)}
.intro__alt a{color:var(--gold)}

/* apply */
.apply{background:var(--bk);border-top:1px solid var(--line)}
.apply__wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.apply__head{position:sticky;top:110px}
.apply__head p:not(.kicker){color:#c9c6bf;font-weight:300}
.form{background:var(--bk2);border:1px solid var(--line);padding:clamp(1.4rem,4vw,2.8rem);display:grid;gap:1.5rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.field{display:block;font-weight:500;font-size:.9rem;border:0;min-width:0}
.field>input,.field>textarea{display:block;margin-top:.5rem}
.field .scale{margin-top:.6rem}
.hint{display:block;margin-top:.15rem;color:var(--mu);font-weight:400;font-size:.8rem}
.field legend{margin-bottom:.6rem;padding:0}
input[type=text],input[type=email],textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #34343a;color:#fff;border-radius:0;padding:.7rem 0;font:400 1rem var(--fb);transition:border-color .25s}
textarea{resize:vertical;border:1px solid #34343a;padding:.8rem}
input:focus,textarea:focus{outline:none;border-color:var(--gold)}
.opts{display:flex;flex-wrap:wrap;gap:.5rem}
.opt{cursor:pointer}
.opt input,.scale input{position:absolute;opacity:0;pointer-events:none}
.opt span{display:inline-block;border:1px solid #34343a;padding:.6em 1.1em;font-weight:500;font-size:.86rem;transition:.2s}
.opt:hover span{border-color:#77756f}
.opt input:checked+span{background:var(--gold);border-color:var(--gold);color:#0a0a0b;font-weight:600}
.opt input:focus-visible+span,.scale input:focus-visible+span{box-shadow:0 0 0 3px rgba(245,196,0,.35)}
.scale{display:grid;grid-template-columns:repeat(10,1fr);gap:.35rem;margin-top:.2rem}
.scale label{cursor:pointer}
.scale span{display:grid;place-items:center;height:42px;border:1px solid #34343a;font-weight:500;transition:.2s}
.scale input:checked+span{background:var(--gold);color:#0a0a0b;border-color:var(--gold)}
.consent{display:flex;gap:.8rem;align-items:flex-start;font-size:.85rem;color:#bdbab3;cursor:pointer;border:1px solid #2a2a2f;padding:1rem}
.consent input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0;margin-top:3px}
.consent a{color:var(--gold)}
.form__error{color:#e88;font-weight:500;font-size:.9rem}
.invalid input[type=text],.invalid input[type=email],.invalid textarea,.invalid .opt span,.invalid .scale span{border-color:#a44}
.consent.invalid{border-color:#a44}
.thanks{background:var(--bk2);border:1px solid var(--gold-line);padding:3.5rem 2rem;text-align:center;grid-column:2}
.thanks__ico{width:56px;height:56px;margin:0 auto;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font-size:1.4rem;border-radius:50%}
.thanks h3{font-family:var(--fh);font-weight:300;font-size:2rem;color:var(--gold2);margin:1rem 0 .4rem}

/* faq */
.faq{background:var(--bk2)}
.faq details{border-bottom:1px solid var(--line);transition:border-color .25s}
.faq details:first-of-type{border-top:1px solid var(--line);margin-top:2.5rem}
.faq details[open]{border-bottom-color:var(--gold-line)}
.faq summary{cursor:pointer;list-style:none;padding:1.4rem 3rem 1.4rem 0;font-family:var(--fh);font-weight:400;font-size:1.12rem;position:relative;transition:color .2s}
.faq summary:hover{color:var(--gold2)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:.3rem;top:50%;transform:translateY(-50%);color:var(--gold);font-family:var(--fb);font-size:1.4rem;font-weight:300;transition:transform .3s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 0 1.5rem;color:var(--mu);max-width:720px}

/* final */
.final{background:var(--bk);padding:clamp(5rem,10vw,8rem) 0;position:relative;border-top:1px solid var(--line);overflow:hidden}
.final::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 120%,rgba(245,196,0,.12),transparent 60%);pointer-events:none}
.final .container{position:relative}
.final__title{font-family:var(--fh);font-weight:300;font-size:clamp(2rem,4.8vw,3.6rem);line-height:1.15;max-width:900px;margin:0 auto 1.4rem}
.final__title em{display:block}
.final p{color:#c9c6bf;font-weight:300;font-size:1.05rem;max-width:620px;margin:0 auto 2.4rem}
.final__ctas{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}

/* footer */
.footer{background:#060607;padding:4rem 0 1.8rem;border-top:1px solid var(--line)}
.footer__grid{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;align-items:flex-start}
.footer__grid .logo{margin-bottom:1rem}
.footer__links{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}
.footer__links a{text-decoration:none;color:#bdbab3;font-size:.9rem;transition:color .2s}
.footer__links a:hover{color:var(--gold)}
.ig{display:flex;align-items:center;gap:.5rem;color:var(--gold)!important;font-weight:500}
.footer__bottom{border-top:1px solid var(--line);margin-top:2.8rem;padding-top:1.4rem}

/* modal */
.modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.82);backdrop-filter:blur(4px);display:grid;place-items:center;padding:1rem}
.modal[hidden]{display:none}
.modal__box{background:var(--bk2);border:1px solid #2a2a2f;border-top:1px solid var(--gold);max-width:780px;width:100%;max-height:88vh;overflow:auto;padding:2.4rem clamp(1.2rem,4vw,2.6rem);position:relative}
.modal__box h2{font-family:var(--fh);font-weight:300;font-size:2rem;margin-bottom:1rem;padding-right:2rem}
.modal__close{position:sticky;top:0;float:right;background:transparent;color:var(--gold);border:1px solid var(--gold);width:36px;height:36px;border-radius:50%;font-size:1.3rem;cursor:pointer;line-height:1}
.legal h3{font-family:var(--fb);text-transform:uppercase;color:var(--gold);font-size:.8rem;letter-spacing:.16em;font-weight:600;margin:1.6rem 0 .4rem}
.legal p,.legal li{color:#cbc8c1;font-size:.92rem}
.legal ul{padding-left:1.2rem;margin-top:.4rem}
.legal .upd{color:var(--mu);font-size:.8rem;margin-top:1.6rem}
body.noscroll{overflow:hidden}

/* reveal */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s ease}
.reveal.in{opacity:1;transform:none}


/* method section */
.hero__smart{margin-top:1.1rem;max-width:560px;color:var(--gold2);font-family:var(--fh);font-style:italic;font-weight:300;font-size:clamp(1.02rem,1.4vw,1.15rem);line-height:1.6;padding-left:1rem;border-left:1px solid var(--gold-line)}
.method{background:var(--bk);border-top:1px solid var(--line)}
.method .container{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2.5rem,6vw,6rem);align-items:start}
.method__head .lead{margin-top:-.4rem}
.method__points{border-top:1px solid var(--gold-line)}
.mpoint{display:grid;grid-template-columns:3.2rem 1fr;gap:1rem;padding:1.9rem 0;border-bottom:1px solid var(--line);transition:padding-left .35s}
.mpoint:hover{padding-left:.5rem}
.mpoint__n{font-family:var(--fh);font-style:italic;color:var(--gold);font-size:1.1rem;line-height:1.5}
.mpoint h3{font-family:var(--fh);font-weight:400;font-size:1.3rem;line-height:1.3;margin-bottom:.45rem}
.mpoint p{color:var(--mu);font-size:.95rem}
@media (max-width:960px){.method .container{grid-template-columns:1fr}}
@media (max-width:620px){.mpoint{grid-template-columns:2.4rem 1fr}}

/* responsive */
@media (max-width:1240px){
  /* nav has up to 8 items in 4 languages: burger earlier so it never wraps */
  .burger{display:flex}
  .nav{position:fixed;top:76px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#0a0a0b;border-bottom:1px solid var(--line);padding:.5rem 5% 1.4rem;transform:translateY(-130%);visibility:hidden;transition:transform .35s,visibility 0s .35s;margin:0;z-index:-1;max-height:calc(100vh - 76px);overflow-y:auto}
  .nav.open{transform:none;visibility:visible;transition:transform .35s,visibility 0s}
  .nav a{padding:1rem 0;border-bottom:1px solid var(--line);font-size:.95rem}
  .nav a:not(.nav__cta)::after{display:none}
  .nav a.nav__cta{margin-top:1.2rem;text-align:center;border:0;font-size:.75rem}
  .lang{margin-left:auto}
}
@media (max-width:1080px){
  .features{grid-template-columns:1fr 1fr}
  .feature:nth-child(3){padding-left:0;border-left:0}
  .feature:nth-child(n+3){border-top:1px solid var(--line)}
  .steps{grid-template-columns:1fr 1fr}
  .step:nth-child(3){padding-left:0;border-left:0}
  .step:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:760px){
  .hero__inner,.about__grid,.apply__wrap,.intro__wrap,.private__head,.private__foot{grid-template-columns:1fr}
  .private__head{gap:1.2rem}
    .cards{grid-template-columns:1fr 1fr}
  .apply__head{position:static}
  .thanks{grid-column:1}
  .about__img{max-width:500px}
}
@media (max-width:620px){
  .header__inner{gap:.6rem;height:68px}
  .nav{top:68px}
  .logo__text{font-size:.92rem}.logo__text small{font-size:.55rem;letter-spacing:.26em}
  .logo__mark{width:34px;height:34px;font-size:.85rem}
  .lang button{padding:.4em .42em;font-size:.66rem}
  .cards,.grid2,.checks,.features,.steps{grid-template-columns:1fr}
  .feature,.feature+.feature,.step,.step+.step{padding:1.8rem 0;border-left:0}
  .feature+.feature,.step+.step{border-top:1px solid var(--line)}
  .scale{grid-template-columns:repeat(5,1fr)}
  .hero__ctas .btn{flex:1 1 100%}
  .private__foot{padding:1.6rem}
  .card{padding:2rem 1.5rem}
}
@media (max-width:380px){.logo__text{display:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* =========================================================
   v5 – fixed full-viewport background photo + equal pillars
   To swap the photo: change <img class="sitebg__img" src=…> in index.html.
   Desktop crop: .sitebg__img object-position / width below.
   ========================================================= */
body{background:var(--bk)}
.sitebg{position:fixed;top:0;left:0;width:100%;height:100vh;height:100lvh;z-index:0;pointer-events:none;overflow:hidden;background:var(--bk)}
.sitebg__img{position:absolute;top:76px;right:0;height:calc(100% - 76px);width:min(100%,max(60%,126vh));max-width:none;object-fit:cover;object-position:50% 0;filter:saturate(.82) contrast(1.05) brightness(.92);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 32%);mask-image:linear-gradient(90deg,transparent 0,#000 32%)}
.sitebg__shade{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(10,10,11,.96) 0%,rgba(10,10,11,.86) 34%,rgba(10,10,11,.45) 58%,rgba(10,10,11,.18) 78%,rgba(10,10,11,.32) 100%),
  linear-gradient(180deg,rgba(10,10,11,.15) 0%,rgba(10,10,11,0) 40%,rgba(10,10,11,.85) 100%)}
main,.footer{position:relative;z-index:1}
.header{z-index:50} /* stays sticky, above the photo layer */

/* hero sits directly on the photo */
.hero{min-height:calc(100vh - 76px);min-height:calc(100svh - 76px);display:flex;align-items:center;background:transparent}
.hero__inner{display:block;width:min(1200px,90%)}
.hero__text{max-width:640px;text-shadow:0 2px 24px rgba(0,0,0,.55)}
.hero__sub{color:#dcd9d2}

/* translucent dark panels so the photo shows through */
.method,.how,.faq,.results{background:rgba(10,10,11,.86)}
.about,.gallery,.intro{background:rgba(14,14,16,.88)}
.apply{background:rgba(10,10,11,.9)}
.final{background:rgba(10,10,11,.74)}
.footer{background:rgba(6,6,7,.95)}
.form{background:rgba(17,17,19,.95)}
.intro__box{background:rgba(10,10,11,.92)}
.card:hover{background:rgba(255,255,255,.03)}

/* credentials – one compact centred row */
.creds{background:rgba(10,10,11,.78);border-block:1px solid var(--line)}
.creds__list{list-style:none;display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;padding:.95rem 0}
.creds__list li{position:relative;padding:0 1.25rem;font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#e2ded5;white-space:nowrap;line-height:1.4}
.creds__list li+li::before{content:"";position:absolute;left:-3px;top:50%;width:5px;height:5px;background:var(--gold);transform:translateY(-50%) rotate(45deg)}

/* coaching pillars */
.pillars{background:linear-gradient(180deg,rgba(10,10,11,.55) 0%,rgba(10,10,11,.8) 100%)}
.pillars__head .title{margin-bottom:1.2rem}
.pillars__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.2rem,2.4vw,2rem);margin-top:3.2rem;align-items:stretch}
.pillar{display:flex;flex-direction:column;background:rgba(14,14,16,.84);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);border-top:1px solid var(--gold);padding:clamp(1.6rem,3.2vw,2.8rem);scroll-margin-top:14px}
.pillar__label{display:flex;align-items:center;gap:.8rem;color:var(--gold);text-transform:uppercase;letter-spacing:.24em;font-size:.72rem;font-weight:600;margin-bottom:1.2rem}
.pillar__n{font-family:var(--fh);font-style:italic;font-size:1.05rem;letter-spacing:0;text-transform:none;border:1px solid var(--gold-line);width:34px;height:34px;display:grid;place-items:center;flex-shrink:0}
.pillar__title{font-family:var(--fh);font-weight:300;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.2;margin-bottom:1rem}
.pillar__lead{color:#c9c6bf;font-weight:300;font-size:.98rem}
.pillar__list{list-style:none;margin:1.8rem 0 0;border-top:1px solid var(--gold-line)}
.pillar__list li{position:relative;padding:1rem 0 1rem 1.5rem;border-bottom:1px solid var(--line)}
.pillar__list li::before{content:"";position:absolute;left:0;top:1.72rem;width:9px;height:1px;background:var(--gold)}
.pillar__list h4{font-family:var(--fh);font-weight:400;font-size:1.08rem;line-height:1.35}
.pillar__list p{color:var(--mu);font-size:.9rem;margin-top:.25rem}
.pillar__how{margin-top:1.6rem;border-left:1px solid var(--gold);padding-left:1.2rem}
.pillar__how h4{font-family:var(--fb);text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;color:var(--gold);font-weight:600;margin-bottom:.4rem}
.pillar__how p{color:#c9c6bf;font-size:.9rem}
.pillar__ctas{margin-top:auto;padding-top:2rem;display:flex;flex-direction:column;gap:.7rem}
.pillar__note{color:var(--mu);text-align:center;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;margin-top:.3rem}

@media (max-width:1180px){
  .creds__list{display:grid;grid-template-columns:auto auto;justify-content:center;gap:.55rem 2.6rem;padding:1.1rem 0}
  .creds__list li{padding:0 0 0 1.1rem}
  .creds__list li::before,.creds__list li+li::before{content:"";position:absolute;left:0;top:50%;width:5px;height:5px;background:var(--gold);transform:translateY(-50%) rotate(45deg)}
}
@media (max-width:760px){
  .pillars__grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  /* mobile: photo at natural ratio across the top, fading into solid dark (hides the poster lettering) */
  .sitebg__img{top:68px;width:100%;height:auto;object-fit:contain;-webkit-mask-image:none;mask-image:none}
  .sitebg__shade{background:linear-gradient(180deg,rgba(10,10,11,.1) 0,rgba(10,10,11,.22) calc(68px + 42vw),rgba(10,10,11,.86) calc(68px + 74vw),#0a0a0b calc(68px + 86vw))}
  .hero{min-height:calc(100svh - 68px);align-items:flex-end;padding-top:min(76vw,48vh)}
}
@media (max-width:620px){
  .creds__list{grid-template-columns:auto;gap:.5rem;padding:1rem 0}
  .creds__list li{font-size:.66rem;letter-spacing:.13em;white-space:normal}
  .pillar{padding:1.6rem 1.3rem}
}

/* =========================================================
   v6 – whole photo revealed by a gentle scroll-linked pan
   (js/main.js → "background pan"), lighter overlay, glass cards
   ========================================================= */
.sitebg__img{top:76px;right:0;width:min(100%,max(50%,72vh));height:auto;object-fit:fill;object-position:50% 0;will-change:transform;filter:saturate(.9) contrast(1.04);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%);mask-image:linear-gradient(90deg,transparent 0,#000 22%)}
.sitebg__shade{background:linear-gradient(90deg,rgba(10,10,11,.88) 0%,rgba(10,10,11,.62) 34%,rgba(10,10,11,.16) 58%,rgba(10,10,11,.04) 80%,rgba(10,10,11,.12) 100%)}

/* sections become (almost) see-through; text sits in compact glass cards */
.method,.how,.faq,.results,.about,.gallery,.intro,.apply,.final,.pillars{background:rgba(10,10,11,.22);border-top-color:transparent}
.creds{background:rgba(10,10,11,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.footer{background:rgba(6,6,7,.82)}
.final::before{display:none}
.glass,.pillars__head,.method .container>*,.about__grid>div:last-child,.how .container,.intro__head,.intro__box,.apply__head,.faq .container,.final .container,.gallery .container,.results .container{background:rgba(10,10,11,.56);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.07);padding:clamp(1.4rem,3vw,2.6rem)}
.pillars__head{max-width:860px;margin-inline:auto}
.pillar{background:rgba(12,12,14,.6)}
.intro__box{background:rgba(10,10,11,.7)}
.form{background:rgba(17,17,19,.94)}
.section p,.section h2,.section h3,.section h4,.hero__text,.final__title{text-shadow:0 1px 14px rgba(0,0,0,.45)}
.lead,.pillar__lead,.about p:not(.kicker),.apply__head p:not(.kicker){color:#d6d3cc}
.mpoint p,.step p,.card p,.pillar__list p,.faq details p{color:#b3b0a9}
.faq details:first-of-type{margin-top:1.6rem}
.apply__head{top:100px}

@media (max-width:760px){
  /* whole photo fits the width; it drifts down as you scroll */
  .sitebg__img{top:68px;width:100%}
  .sitebg__shade{background:rgba(10,10,11,.3)}
  .hero__text{background:rgba(10,10,11,.6);padding:1.4rem 1.2rem;border:1px solid rgba(255,255,255,.07)}
  .hero{padding-top:min(70vw,44vh)}
  /* cheaper on phones: no blur, slightly denser cards */
  .glass,.pillars__head,.method .container>*,.about__grid>div:last-child,.how .container,.intro__head,.intro__box,.apply__head,.faq .container,.final .container,.gallery .container,.results .container,.pillar,.creds{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(10,10,11,.7)}
  .method .container>*,.about__grid>div:last-child,.how .container,.intro__head,.apply__head,.faq .container,.final .container{padding:1.5rem 1.2rem}
}
/* reduced motion: no pan – the whole photo is fitted into the viewport instead */
@media (prefers-reduced-motion:reduce){.sitebg__img{will-change:auto;width:auto;max-width:100%;height:calc(100% - 76px);object-fit:contain;object-position:100% 0}}

/* ===================== v7: Education & Credentials, photos ===================== */
.edu{position:relative;z-index:1;padding:2.2rem 0 2.4rem;background:rgba(10,10,11,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.edu__head{font-size:.72rem;margin-bottom:1.3rem}
.edu__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.9rem}
.edu__card{display:flex;gap:.9rem;align-items:flex-start;padding:1.1rem 1.1rem 1.15rem;background:rgba(12,12,13,.62);border:1px solid var(--line);border-top:1px solid var(--gold-line);transition:border-color .35s,background .35s}
.edu__card:hover{border-color:var(--gold-line);background:rgba(16,16,17,.74)}
.edu__ic{width:30px;height:30px;flex-shrink:0;fill:none;stroke:var(--gold);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;margin-top:2px}
.edu__lvl{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600;margin:0 0 .35rem}
.edu__t{font-family:var(--fh);font-weight:400;font-size:1.02rem;line-height:1.25;color:var(--tx);margin:0 0 .35rem}
.edu__d{font-size:.78rem;line-height:1.45;color:#bdb9b1;margin:0}
@media (max-width:1180px){.edu__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.edu{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(10,10,11,.72);padding:1.6rem 0}.edu__grid{grid-template-columns:1fr 1fr;gap:.6rem}.edu__card{flex-direction:column;gap:.55rem;padding:.9rem}.edu__ic{width:26px;height:26px}.edu__t{font-size:.95rem}.edu__card:last-child{grid-column:1/-1}}
/* About: detailed credentials list */
.edu-list{list-style:none;margin:1rem 0 2rem;padding:0;border-top:1px solid var(--line)}
.edu-list li{display:flex;gap:1rem;align-items:flex-start;padding:.95rem 0;border-bottom:1px solid var(--line)}
.edu-list .edu__ic{width:24px;height:24px}
.edu-list strong{display:block;font-weight:600;font-size:.95rem;color:var(--tx);margin-bottom:.15rem}
.edu-list span{display:block;font-size:.84rem;line-height:1.5;color:#bdb9b1}
.about__img picture{display:block}
.about__img img{aspect-ratio:4/5.4;object-position:center 18%}
/* Private coaching: photo strip */
.pillar__media{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:0 0 1.4rem}
.pillar__media picture{display:block;overflow:hidden;border:1px solid var(--line)}
.pillar__media img{display:block;width:100%;aspect-ratio:4/3.4;object-fit:cover;object-position:center 30%;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.pillar__media picture:first-child img{object-position:center 62%}
.pillar__media picture:hover img{transform:scale(1.04)}
/* Gallery items with <picture> */
.gallery__item picture{display:block;width:100%;height:100%}
.gallery__grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
/* Apply: landscape image under the intro text */
.apply__img{display:block;margin-top:1.6rem;overflow:hidden;border:1px solid var(--gold-line)}
.apply__img img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center 45%;opacity:.88}
@media (max-width:960px){.apply__img img{aspect-ratio:16/8}}
.pillar__media{grid-template-columns:1.15fr 1fr 1fr}
.pillar__media img{aspect-ratio:3/4}
.pillar__media picture:first-child img{object-position:center 60%}
.intro__img{display:block;margin-top:1.6rem;max-width:340px;overflow:hidden;border:1px solid var(--gold-line)}
.intro__img img{display:block;width:100%;aspect-ratio:4/4.4;object-fit:cover;object-position:center 12%}
@media (max-width:960px){.intro__img{max-width:none}.intro__img img{aspect-ratio:16/10;object-position:center 14%}}
.pillar__media img,.about__img img,.apply__img img,.intro__img img{height:auto}
.edu__grid{gap:.8rem}
.edu__card{flex-direction:column;gap:.7rem;padding:1.15rem 1.15rem 1.2rem}
.edu__ic{width:28px;height:28px;margin-top:0}
.pillar__media{grid-template-columns:repeat(3,1fr);align-items:start}
.pillar__media img{aspect-ratio:3/4;object-fit:cover;object-position:center 30%}
.pillar__media picture:first-child img{object-position:center 55%}
.about__img img{object-position:center 58%}
.about__img{align-self:start}
@media (min-width:961px){.about__img{position:sticky;top:110px}}

/* ===================== v8: brighter look (Billy feedback) ===================== */
.sitebg{background:radial-gradient(ellipse 60% 70% at 82% 38%,rgba(245,196,0,.10),transparent 70%),var(--bk)}
.sitebg__img{filter:none}
.sitebg__shade{background:linear-gradient(90deg,rgba(10,10,11,.8) 0%,rgba(10,10,11,.5) 34%,rgba(10,10,11,.08) 58%,rgba(10,10,11,0) 80%,rgba(10,10,11,.05) 100%)}
.method,.how,.faq,.results,.about,.gallery,.intro,.apply,.final,.pillars{background:rgba(10,10,11,.1)}
.glass,.pillars__head,.method .container>*,.about__grid>div:last-child,.how .container,.intro__head,.apply__head,.faq .container,.final .container,.gallery .container,.results .container,.pillar{background:rgba(10,10,11,.42)}
.intro__box{background:rgba(10,10,11,.55)}
.creds,.edu{background:rgba(10,10,11,.3)}
.edu__card{background:rgba(12,12,13,.48);border-top:2px solid var(--gold)}
.edu__ic{stroke:var(--gold);stroke-width:1.5}
.header{background:rgba(10,10,11,.8)}
.btn{box-shadow:0 8px 26px rgba(245,196,0,.28)}
.pillar__media img,.about__img img,.gallery__item img,.apply__img img,.intro__img img{filter:none;opacity:1}
@media (max-width:760px){
  .sitebg__shade{background:rgba(10,10,11,.16)}
  .glass,.pillars__head,.method .container>*,.about__grid>div:last-child,.how .container,.intro__head,.apply__head,.faq .container,.final .container,.gallery .container,.results .container,.pillar,.creds,.edu{background:rgba(10,10,11,.58)}
  .intro__box{background:rgba(10,10,11,.66)}
  .hero__text{background:rgba(10,10,11,.5)}
}

/* ===================== v9: old hero bg + Research block ===================== */
.research{margin:0 0 2rem;padding:1.1rem 1.2rem 1.2rem;border:1px solid var(--gold-line);border-left:2px solid var(--gold);background:rgba(245,196,0,.05)}
.research__t{display:flex;align-items:center;gap:.6rem;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600;font-family:var(--fb);margin:0 0 .7rem}
.research__t .edu__ic{width:22px;height:22px}
.research__list{list-style:none;margin:0;padding:0}
.research__list li{font-size:.86rem;line-height:1.45;padding:.4rem 0;border-top:1px solid var(--line)}
.research__list li:first-child{border-top:0;padding-top:0}
.research__list em{font-family:var(--fh);font-style:italic;color:var(--tx);font-size:.95rem}
.research__list span{display:block;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold2);margin-top:.15rem}
.edu__note{display:flex;align-items:center;gap:.5rem;margin:1rem 0 0;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold2)}
.edu__note .edu__ic{width:20px;height:20px}
/* old hero artwork (844x1210): size so face + lettering fit the first screen, small overflow keeps the pan */
.sitebg__img{width:min(100%,calc((100vh - 76px) * .745));width:min(100%,calc((100svh - 76px) * .745))}
@media (max-width:760px){
  .sitebg__img{width:100%}
  .hero{padding-top:min(130vw,64vh)}
  .hero__text{background:rgba(10,10,11,.62)}
}
/* v10: coaching-first imagery */
.pillar__media{grid-template-columns:1fr 1fr}
.pillar__media img{aspect-ratio:4/4.4}
.about__img img{aspect-ratio:3/4;object-position:center 30%}
/* v11: client coaching stills */
.pillar__media--4{grid-template-columns:1fr 1fr}
.pillar__media--4 img{aspect-ratio:1/1;object-position:center 40%}
/* v12: online coaching – phone mockup + feature tiles */
.onl{container-type:inline-size;margin:0 0 1.6rem}
.onl__show>*{min-width:0}
.onl__show{display:grid;grid-template-columns:1fr;gap:1.2rem}
.phone{margin:0;display:flex;flex-direction:column;align-items:center;gap:.7rem;position:relative}
.phone::before{content:"";position:absolute;inset:8% 6% 14%;background:radial-gradient(closest-side,rgba(245,196,0,.32),transparent);filter:blur(26px);z-index:0}
.phone__frame{position:relative;z-index:1;width:min(100%,250px);padding:9px;border-radius:38px;background:linear-gradient(145deg,#2a2a2e,#0d0d0f 60%,#26262a);box-shadow:0 0 0 1px rgba(255,255,255,.1),0 30px 60px -20px rgba(0,0,0,.8),0 0 0 1px rgba(245,196,0,.15) inset}
.phone__screen{background:#faf8f2;color:#151517;border-radius:30px;overflow:hidden;padding:.55rem .7rem .8rem;font-family:var(--fb);font-size:10px;line-height:1.3;display:flex;flex-direction:column;gap:.45rem}
.ph__status{display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:9.5px;padding:0 .35rem}
.ph__notch{width:64px;height:17px;border-radius:12px;background:#0d0d0f}
.ph__bat{width:18px;height:8px;border:1.4px solid #151517;border-radius:2.5px;position:relative;background:linear-gradient(90deg,#151517 70%,transparent 70%);background-clip:content-box;padding:1px}
.ph__head{display:flex;align-items:center;justify-content:space-between;padding:.25rem .15rem .1rem}
.ph__brand{font-size:7px;letter-spacing:.22em;color:#9a8a45;font-weight:700}
.ph__title{font-family:var(--fh);font-size:17px;line-height:1.15;font-weight:500;color:#111}
.ph__prog{font-size:8.5px;color:#7b786f;margin-top:1px}
.ph__ring{width:36px;height:36px;flex-shrink:0}
.ph__day{background:#fff;border:1px solid #ece9df;border-radius:12px;padding:.45rem .55rem;box-shadow:0 2px 6px rgba(0,0,0,.04)}
.ph__day--today{border-color:#F5C400;box-shadow:0 0 0 2px rgba(245,196,0,.22)}
.ph__dayh{display:flex;align-items:center;gap:.4rem;margin-bottom:.25rem}
.ph__d{font-size:7.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:#151517;color:#F5C400;border-radius:5px;padding:2px 5px}
.ph__w{font-weight:700;font-size:9.5px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ph__badge{font-size:7.5px;font-weight:700;border-radius:20px;padding:2px 6px;display:inline-flex;align-items:center;gap:2px;flex-shrink:0}
.ph__badge svg{width:8px;height:8px}
.ph__badge--done{background:#f3efe0;color:#6f6420}
.ph__badge--today{background:#F5C400;color:#151517}
.ph__day ul{list-style:none;margin:0;padding:0}
.ph__day li{display:flex;align-items:center;gap:.4rem;padding:2px 0;color:#3b3a36;font-size:9px}
.ph__x{width:12px;height:12px;border-radius:50%;border:1.3px solid #cfcab9;display:grid;place-items:center;flex-shrink:0}
.ph__day li.is-done .ph__x{background:#F5C400;border-color:#F5C400;color:#151517}
.ph__x svg{width:8px;height:8px}
.ph__en{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ph__s{color:#9a968b;font-variant-numeric:tabular-nums;font-size:8.5px}
.ph__ci{background:#151517;color:#f4f2ea;border-radius:12px;padding:.5rem .6rem}
.ph__cih{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:9.5px}
.ph__sent{display:inline-flex;align-items:center;gap:2px;color:#F5C400;font-size:8px}
.ph__sent svg{width:9px;height:9px}
.ph__cil{font-size:7.5px;color:#a19e95;margin:.15rem 0 .3rem;text-transform:uppercase;letter-spacing:.12em}
.ph__bars{display:flex;align-items:flex-end;gap:4px;height:30px}
.ph__bars i{flex:1;background:rgba(245,196,0,.35);border-radius:2px 2px 0 0}
.ph__bars i:last-child{background:#F5C400}
.ph__chat{display:flex;gap:.4rem;align-items:flex-end}
.ph__av{width:20px;height:20px;border-radius:50%;background:#F5C400;color:#151517;font-weight:800;font-size:9px;display:grid;place-items:center;flex-shrink:0}
.ph__bub{background:#fff;border:1px solid #ece9df;border-radius:12px 12px 12px 3px;padding:.35rem .5rem}
.ph__bub b{display:block;font-size:8px;color:#9a8a45;letter-spacing:.03em}
.ph__bub p{font-size:9px;color:#2b2a27;margin:1px 0 0}
.phone figcaption{position:relative;z-index:1;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mu)}
.onl__tiles{display:grid;grid-template-columns:1fr;gap:.6rem;align-content:center}
.onl__tile{display:flex;gap:.8rem;align-items:flex-start;padding:.85rem .9rem;border:1px solid rgba(245,196,0,.22);background:linear-gradient(160deg,rgba(245,196,0,.08),rgba(255,255,255,.015));border-radius:var(--r)}
.onl__ic{width:38px;height:38px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:rgba(245,196,0,.12);border:1px solid var(--gold-line);color:var(--gold)}
.onl__ic svg{width:20px;height:20px}
.onl__tile h4{font-family:var(--fh);font-weight:400;font-size:1rem;line-height:1.25;color:var(--tx)}
.onl__tile p{color:#b3b0a9;font-size:.82rem;line-height:1.45;margin-top:.2rem}
@container (min-width:440px){
  .onl__show{grid-template-columns:minmax(200px,235px) 1fr;align-items:center}
}
@container (min-width:640px){
  .onl__show{grid-template-columns:260px 1fr}
  .phone__frame{width:260px}
  .onl__tiles{grid-template-columns:1fr 1fr}
}
.ph__w{white-space:normal;overflow:visible;line-height:1.2}
.onl__tile{background:linear-gradient(160deg,rgba(245,196,0,.1),rgba(245,196,0,.02)),rgba(12,12,14,.78)}
/* v12b: gallery moving-photo clips */
.gallery__item video{display:block;width:100%;height:100%;object-fit:cover;background:var(--bk3)}
/* v12b: 10 tiles -> always full rows (2 cols, 5 cols on wide screens) */
.gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:560px){.gallery__grid{gap:.6rem}}
@media (min-width:1100px){.gallery__grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* v12c: my own transformation */
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.transform{background:rgba(10,10,11,.1);border-top-color:transparent}
.tf{background:rgba(10,10,11,.42);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.07);border-top:2px solid var(--gold);padding:clamp(1.4rem,3vw,2.6rem)}
.tf__head{max-width:760px;margin:0 auto;text-align:center}
.tf__head .title{margin-bottom:1rem}
.tf__sub{color:#d9d6cf;font-size:clamp(1rem,1.6vw,1.12rem);line-height:1.65;margin:0 auto 1.8rem;max-width:640px}
.tf__stats{list-style:none;margin:0 auto 2.4rem;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;max-width:640px}
.tf__stats li{border:1px solid var(--gold-line);background:rgba(245,196,0,.06);padding:.85rem .6rem;display:flex;flex-direction:column;gap:.3rem;align-items:center;justify-content:center;text-align:center}
.tf__stats strong{font-family:var(--fh);font-weight:400;color:var(--gold);font-size:clamp(1.15rem,2.4vw,1.6rem);line-height:1.1;white-space:nowrap}
.tf__stats span{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mu);line-height:1.35}
.tf__slider{max-width:860px;margin:0 auto;outline:none}
.tf__slider:focus-visible{box-shadow:0 0 0 2px var(--gold)}
.tf__viewport{overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}
.is-drag .tf__viewport{cursor:grabbing}
.tf__track{display:flex;transition:transform .55s cubic-bezier(.2,.7,.2,1);will-change:transform}
.is-drag .tf__track{transition:none}
.tf__slide{flex:0 0 100%;display:grid;grid-template-columns:1fr 1fr;gap:clamp(.5rem,1.4vw,1rem);position:relative}
.tf__fig{margin:0;position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--bk3)}
.tf__fig picture,.tf__fig img{display:block;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;pointer-events:none}
.tf__lab{position:absolute;top:.8rem;left:.8rem;padding:.35rem .7rem;font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;background:rgba(10,10,11,.72);color:#f2f2f2;border:1px solid rgba(255,255,255,.18)}
.tf__fig--after .tf__lab{background:var(--gold);color:#0a0a0b;border-color:var(--gold)}
.tf__fig--after{box-shadow:inset 0 0 0 2px var(--gold)}
.tf__fig--after img{outline:2px solid var(--gold);outline-offset:-2px}
.tf__pose{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:.7rem;margin:.9rem 0 0;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--tx)}
.tf__pose span:first-child{color:var(--gold);font-weight:700}
.tf__ctrl{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-top:1.1rem}
.tf__btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--gold-line);background:rgba(10,10,11,.6);display:grid;place-items:center;cursor:pointer;transition:background .25s,border-color .25s}
.tf__btn svg{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tf__btn:hover,.tf__btn:focus-visible{background:var(--gold);border-color:var(--gold);outline:none}
.tf__btn:hover svg,.tf__btn:focus-visible svg{stroke:#0a0a0b}
.tf__dots{display:flex;gap:.55rem}
.tf__dot{width:28px;height:28px;padding:0;border:0;background:none;cursor:pointer;display:grid;place-items:center}
.tf__dot::before{content:"";width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.28);transition:width .3s,background .3s,border-radius .3s}
.tf__dot.is-on::before{width:26px;border-radius:5px;background:var(--gold)}
.tf__dot:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.tf__note{text-align:center;color:var(--mu);font-size:.78rem;margin:1.2rem 0 0}
@media (max-width:560px){.tf__stats{gap:.45rem}.tf__stats li{padding:.7rem .35rem}.tf__stats span{font-size:.62rem;letter-spacing:.04em}.tf__lab{top:.5rem;left:.5rem;font-size:.6rem;padding:.28rem .5rem;letter-spacing:.14em}}
@media (max-width:760px){.tf{background:rgba(10,10,11,.58)}}
@media (prefers-reduced-motion:reduce){.tf__track{transition:none}}
@media (max-width:560px){.tf__stats strong{font-size:1.02rem;white-space:normal}.tf__stats li{min-width:0}}
/* v12e: online client result */
.onres{margin:0 0 1.8rem;border:1px solid var(--gold-line);border-radius:var(--r);overflow:hidden;background:#0c0c0e}
.onres picture,.onres img{display:block;width:100%;height:auto}
.onres img{aspect-ratio:1200/813;object-fit:cover}
.onres figcaption{display:flex;flex-direction:column;gap:.25rem;padding:.75rem .95rem .85rem;border-top:1px solid rgba(245,196,0,.18)}
.onres__cap{font-family:var(--fh);font-size:1rem;line-height:1.3;color:var(--tx)}
.onres__note{font-size:.72rem;letter-spacing:.04em;color:var(--mu)}
.onres--inp{margin-top:1.4rem}
.onres--inp img{aspect-ratio:1100/1339}

/* v12g lifetime drug-free */
.dfree{display:flex;align-items:center;gap:.95rem;margin:1.6rem 0 1.9rem;padding:.95rem 1.15rem;border:1px solid var(--gold-line);border-left:3px solid var(--gold);border-radius:var(--r);background:linear-gradient(90deg,rgba(245,196,0,.10),rgba(245,196,0,.02))}
.dfree__ic{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:#0a0a0b;background:var(--gold);box-shadow:0 0 0 4px var(--gold-soft)}
.dfree__ic svg{width:22px;height:22px}
.dfree__t{display:block;font-family:var(--fb);text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;font-weight:700;color:var(--gold);margin-bottom:.25rem}
.dfree__d{display:block;font-size:.92rem;line-height:1.45;color:var(--tx)}
.tf__nat{display:flex;align-items:center;justify-content:center;gap:.5rem;width:max-content;max-width:100%;margin:0 auto 1.6rem;padding:.45rem 1rem;border:1px solid var(--gold-line);border-radius:999px;font-size:.8rem;letter-spacing:.08em;color:var(--gold);background:rgba(245,196,0,.06);text-align:center}
.tf__natic{display:inline-grid;color:var(--gold)}.tf__natic svg{width:16px;height:16px}
@media (max-width:560px){.tf__nat{font-size:.74rem;letter-spacing:.03em;padding:.42rem .85rem;gap:.4rem;border-radius:14px}}

/* v12h coach line + lifts video slider */
.tf__coach{text-align:center;font-family:var(--fh);font-style:italic;font-weight:300;color:#d9d6cf;font-size:clamp(1rem,1.7vw,1.15rem);margin:-.6rem auto 1.6rem;max-width:640px}
.lf__head{max-width:760px;margin:0 auto 2.2rem;text-align:center}
.lf__head .title{margin-bottom:1rem}
.lf__sub{color:#d9d6cf;font-size:clamp(.98rem,1.5vw,1.08rem);line-height:1.6;margin:0 auto;max-width:560px}
.lf__slider{max-width:400px;margin:0 auto;outline:none}
.lf__slider:focus-visible{box-shadow:0 0 0 2px var(--gold)}
.lf__viewport{overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.lf__track{display:flex;transition:transform .55s cubic-bezier(.2,.7,.2,1);will-change:transform}
.is-drag .lf__track{transition:none}
.lf__slide{flex:0 0 100%;min-width:0}
.lf__media{position:relative;aspect-ratio:9/16;overflow:hidden;background:#0c0c0e;border:1px solid var(--gold-line);border-radius:var(--r)}
.lf__vid{display:block;width:100%;height:100%;object-fit:cover;background:#0c0c0e}
.lf__play{position:absolute;inset:0;margin:auto;width:76px;height:76px;border-radius:50%;border:0;background:var(--gold);display:grid;place-items:center;cursor:pointer;box-shadow:0 0 0 8px rgba(245,196,0,.22),0 10px 30px rgba(0,0,0,.45);transition:transform .25s,box-shadow .25s}
.lf__play svg{width:30px;height:30px;fill:#0a0a0b;margin-left:4px}
.lf__play:hover,.lf__play:focus-visible{transform:scale(1.06);box-shadow:0 0 0 12px rgba(245,196,0,.28),0 10px 30px rgba(0,0,0,.45);outline:none}
.lf__slide.is-playing .lf__play{opacity:0;pointer-events:none}
.lf__cap{display:flex;justify-content:center;align-items:center;gap:.7rem;margin:.9rem 0 0;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tx);text-align:center}
.lf__cap span:first-child{color:var(--gold);font-weight:700}
@media (max-width:560px){.lf__slider{max-width:300px}.lf__play{width:64px;height:64px}.lf__cap{font-size:.72rem;letter-spacing:.12em}}
@media (prefers-reduced-motion:reduce){.lf__track{transition:none}}
.lifts{background:var(--bk2);border-top:1px solid var(--line)}

/* ===== v12o – experience block inside the Private Coaching pillar ===== */
.xp{flex:1 0 auto;display:flex;margin-top:1.8rem;border:1px solid var(--gold-line);border-top:2px solid var(--gold);background:linear-gradient(160deg,rgba(245,196,0,.11) 0%,rgba(245,196,0,.035) 45%,rgba(245,196,0,0) 100%),rgba(11,11,13,.9);border-radius:var(--r,2px)}
.xp__in{margin:auto 0;width:100%;padding:clamp(1.3rem,2.4vw,2rem)}
.xp__kicker{color:var(--gold);text-transform:uppercase;letter-spacing:.26em;font-size:.7rem;font-weight:600;margin-bottom:.7rem;display:flex;align-items:center;gap:.8rem}
.xp__kicker::before{content:"";width:26px;height:1px;background:var(--gold)}
.xp__title{font-family:var(--fh);font-weight:300;font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.25;margin-bottom:1.3rem;color:var(--tx)}
.xp__title em{color:var(--gold);font-style:italic}
.xp__list{list-style:none;display:grid;gap:1.15rem}
.xp__list li{display:flex;gap:.95rem;align-items:flex-start}
.xp__ic{flex-shrink:0;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--gold-line);border-radius:50%;color:var(--gold);background:rgba(245,196,0,.08)}
.xp__ic svg{width:21px;height:21px}
.xp__list h5{font-family:var(--fh);font-weight:400;font-size:1.06rem;line-height:1.3;color:var(--tx);margin:0}
.xp__list p{color:#c9c6bf;font-size:.9rem;margin-top:.25rem;line-height:1.55}
@media (max-width:760px){.xp{flex:0 0 auto}}
@media (max-width:560px){.xp__ic{width:38px;height:38px}.xp__ic svg{width:19px;height:19px}}
/* v12o – 10+ stat */
.xp__head{display:flex;align-items:center;gap:1.3rem;margin-bottom:1.4rem;padding-bottom:1.3rem;border-bottom:1px solid rgba(245,196,0,.2)}
.xp__stat{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:104px;padding:.7rem .8rem .75rem;border:1px solid var(--gold-line);background:rgba(245,196,0,.08)}
.xp__num{font-family:var(--fh);font-weight:400;font-size:clamp(2.4rem,3.6vw,3rem);line-height:1;color:var(--gold);letter-spacing:-.01em}
.xp__lbl{margin-top:.4rem;font-size:.6rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#e2ded5;text-align:center;line-height:1.35;max-width:9.5em}
.xp__head .xp__title{margin-bottom:0}
@media (max-width:420px){.xp__head{gap:1rem}.xp__stat{min-width:88px;padding:.6rem}.xp__num{font-size:2.3rem}}
