@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Unbounded:wght@500;600;700;800;900&display=swap');:root{--bg:#080712;--fg:#f6f3ff;--muted:#a8a2ba;--purple:#a957ff;--blue:#31c9ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:Manrope,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.grain{position:fixed;inset:0;pointer-events:none;opacity:.14;z-index:30;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E")}.cursor-glow{position:fixed;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,#8c39ff22,transparent 70%);pointer-events:none;z-index:1;transform:translate(-50%,-50%)}.nav{height:90px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff18;position:relative;z-index:10;background:#080712cc;backdrop-filter:blur(15px)}.brand{font-weight:900;letter-spacing:.12em;font-size:13px;display:flex;align-items:center;gap:14px}.brand-mark{font-family:Unbounded;font-size:23px}.dot{color:var(--purple)}.nav nav{display:flex;gap:36px;font-size:11px;letter-spacing:.13em}.nav nav a:hover{color:var(--blue)}.nav-cta{border:1px solid #ffffff4d;border-radius:100px;padding:13px 22px;font-size:11px;font-weight:800}.hero{min-height:790px;position:relative;padding:140px 5% 100px;overflow:hidden}.hero-glow{position:absolute;right:-15%;top:-40%;width:85vw;height:85vw;border-radius:50%;background:radial-gradient(circle,#8535d775 0%,#321a6a55 25%,transparent 60%);filter:blur(35px);animation:breathe 7s ease-in-out infinite alternate}.eyebrow,.section-label{position:relative;z-index:2;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.25em}.live{display:inline-block;width:8px;height:8px;background:#b0ff6d;border-radius:50%;box-shadow:0 0 18px #b0ff6d;margin-right:12px}.hero h1,h2{font-family:Unbounded,Arial,sans-serif;letter-spacing:-.065em;font-weight:900;line-height:1.04}.hero h1{font-size:clamp(56px,8.1vw,145px);margin:48px 0 65px;position:relative;z-index:2;max-width:1400px}.hero h1 em{font-style:normal;background:linear-gradient(100deg,#f3b0ff,#a65cff 45%,#32cfff);color:transparent;background-clip:text;-webkit-background-clip:text}.hero-bottom{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;max-width:800px}.hero-bottom p{font-size:21px;max-width:510px;line-height:1.5}.round-arrow{width:90px;height:90px;border:1px solid #ffffff70;border-radius:50%;display:grid;place-items:center;font-size:45px;transition:.3s}.round-arrow:hover{background:var(--purple);transform:rotate(45deg)}.hero-outline{position:absolute;bottom:-20px;right:0;color:transparent;-webkit-text-stroke:1px #ffffff15;font-family:Unbounded;font-size:8vw;font-weight:900;white-space:nowrap}.marquee{overflow:hidden;background:var(--purple);color:#10091a;font-family:Unbounded;font-size:16px;font-weight:900;white-space:nowrap;padding:18px 0;transform:rotate(-1deg) scale(1.02)}.marquee div{width:max-content;animation:marquee 22s linear infinite}.section{position:relative;padding:125px 5%;border-bottom:1px solid #ffffff19}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center;margin-top:50px}.section h2{font-size:clamp(38px,5vw,86px);margin:28px 0 45px}.section h2 span{color:var(--purple)}.large{font-size:clamp(23px,2.3vw,36px);font-weight:700;line-height:1.4}.muted{color:var(--muted);font-size:17px;line-height:1.9}.pill{display:inline-block;margin:10px 8px 0 0;padding:12px 16px;border:1px solid #ffffff35;border-radius:100px;font-size:11px;font-weight:800}.wide{max-width:900px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:60px}.feature{background:#141121;border:1px solid #ffffff1c;min-height:340px;padding:30px;position:relative;overflow:hidden;transition:.3s}.feature:hover{transform:translateY(-10px);border-color:var(--purple);background:#211631}.feature b{font-size:12px;color:var(--blue)}.feature-icon{font-size:86px;color:var(--purple);margin:30px 0}.feature h3{font-family:Unbounded;font-size:16px}.feature p{color:var(--muted);line-height:1.7}.demo-section{background:linear-gradient(130deg,#0c0920,#160b27 60%,#080712)}.primary,.secondary{display:inline-block;background:var(--purple);border:0;color:#10091a;padding:17px 25px;font-weight:900;font-size:12px;letter-spacing:.06em;margin:12px 8px 0 0}.primary:hover{background:var(--blue)}.secondary{background:transparent;color:white;border:1px solid #ffffff66}.secondary:disabled{opacity:.4}.camera{height:420px;position:relative;border:1px solid #7c55c8;background:radial-gradient(circle at center,#241344,#0b0914);overflow:hidden}.camera video,.camera canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform:scaleX(-1)}.camera-badge{position:absolute;top:18px;left:18px;font-size:10px;font-weight:900;letter-spacing:.15em;background:#100d19b8;padding:10px}.counter{position:absolute;bottom:15px;right:20px;text-align:right}.counter strong{font-family:Unbounded;font-size:65px;display:block;color:var(--blue)}.counter span{font-size:10px;letter-spacing:.2em}.status{color:var(--blue);font-size:12px}.price{font-family:Unbounded;font-size:50px;margin-top:30px;color:var(--blue)}.price small{display:block;font-family:Manrope;font-size:12px;color:var(--muted);margin-top:12px}.team-desc{margin-bottom:45px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.person{background:#13101e;overflow:hidden;transition:.35s}.person:hover{transform:translateY(-7px);box-shadow:0 22px 60px #8c3aff25}.photo{height:340px;overflow:hidden;background:#241c37}.photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(.7);transition:.5s}.person:hover img{filter:grayscale(0);transform:scale(1.07)}.person-meta{padding:20px 24px}.person-meta span{font-size:10px;letter-spacing:.2em;color:var(--blue)}.person-meta h3{font-family:Unbounded;font-size:25px;margin:12px 0}.final{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;align-items:center}.final-logo{background:#fff;transform:rotate(-5deg);padding:15px;box-shadow:20px 25px 0 #8535d7}.final-logo img{width:100%;display:block}.final p{letter-spacing:.2em;color:var(--muted)}footer{padding:35px 5%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.15em;color:var(--muted)}.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes breathe{to{transform:scale(1.25) translateX(-6%)}}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:800px){.nav{height:70px}.nav nav{display:none}.hero{min-height:690px;padding-top:140px}.hero h1{font-size:clamp(46px,11vw,84px)}.hero-bottom p{font-size:16px}.round-arrow{width:62px;height:62px;font-size:28px;flex-shrink:0}.section{padding:85px 5%}.split,.final{grid-template-columns:1fr}.features{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(2,1fr);gap:10px}.photo{height:250px}.person-meta h3{font-size:17px}.person-meta{padding:15px}.camera{height:330px}.price{font-size:38px}footer{gap:10px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* Athlete story / social proof */
.result-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:5%;align-items:stretch}.result-copy{padding:30px 0}.result-tag{font-size:12px;color:#39ceff;letter-spacing:.23em}.result-copy h2{font-size:clamp(48px,6.6vw,112px);line-height:1.06;margin:34px 0}.result-copy h2 span{color:#b566ff;text-shadow:0 0 35px #a94aff66}.result-copy .large{font-size:clamp(22px,2.2vw,32px)}.result-copy .muted{max-width:580px;line-height:1.8}.result-stats{display:flex;gap:20px;margin:40px 0;flex-wrap:wrap}.result-stats div{border-top:1px solid #a55aff;padding-top:15px;min-width:115px;display:flex;flex-direction:column;gap:6px}.result-stats strong{font-size:36px;color:#39ceff}.result-stats span{font-size:11px;letter-spacing:.12em}.result-photo{position:relative;min-height:580px;overflow:hidden;border:1px solid #67428e;box-shadow:0 0 70px #8e38d329}.result-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 35%;filter:contrast(1.15);transition:transform 1s}.result-photo:hover img{transform:scale(1.05)}.result-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#090713ee)}.result-overlay{position:absolute;z-index:2;bottom:32px;left:32px;font-weight:900;font-size:clamp(25px,3vw,48px);line-height:1.1;letter-spacing:.05em}.result-overlay b{color:#b566ff}.social-cta{display:inline-flex;align-items:center;gap:15px;flex-wrap:wrap;background:#b566ff;color:#090713;text-decoration:none;font-weight:900;padding:20px 25px;box-shadow:8px 8px 0 #39ceff;transition:transform .2s}.social-cta:hover{transform:translate(-4px,-4px)}.social-cta small{font-size:11px}.person-social{display:inline-block;margin-top:10px;color:#39ceff;font-size:10px;letter-spacing:.04em;text-decoration:none;font-weight:700}@media(max-width:800px){.result-grid{grid-template-columns:1fr}.result-photo{min-height:520px}.result-copy h2{font-size:clamp(48px,12vw,74px)}}
/* GymVision 2.0 — resilient responsive presentation */
:root{color-scheme:dark}html{scroll-padding-top:82px}body{background:radial-gradient(ellipse at 80% 10%,#1c1035 0%,transparent 32%),#080712}.reveal{opacity:1;transform:none;transition:transform .5s ease,box-shadow .5s ease}.section{isolation:isolate}.section-label{font-size:clamp(10px,1.4vw,13px)}.feature,.person,.result-photo{border-radius:16px}.feature{min-height:270px}.feature-icon{line-height:1}.person{border:1px solid #ffffff19}.person-meta h3{overflow-wrap:anywhere}.final-logo{background:#100d1c;border:1px solid #ffffff33;transform:none;box-shadow:15px 15px 0 #54208b;border-radius:18px;overflow:hidden;padding:0}.final-logo img{aspect-ratio:1;object-fit:cover}.nav{position:sticky;top:0}.presentation-toggle{border:1px solid #a957ff88;border-radius:99px;padding:12px 17px;background:#1b102c;color:white;font-size:11px;font-weight:800;letter-spacing:.04em}.presentation-toggle:hover{background:#a957ff;color:#080712}.slide-controls{display:none}.hero h1,.section h2{overflow-wrap:normal;hyphens:none}.camera{border-radius:16px}.primary,.secondary,.social-cta{border-radius:8px}.social-cta{max-width:100%;overflow-wrap:anywhere}
@media(max-width:800px){html{scroll-padding-top:76px}.nav{padding:0 4%;gap:8px}.brand{font-size:11px;gap:7px;letter-spacing:.04em}.brand-mark{font-size:20px}.nav-cta{padding:10px 12px;font-size:10px}.presentation-toggle{padding:10px 11px;font-size:10px}.hero{min-height:calc(83svh - 70px);padding:105px 6% 90px}.hero h1{font-size:clamp(35px,9.2vw,76px);letter-spacing:-.065em;margin:42px 0}.hero-bottom{gap:16px}.hero-bottom p{font-size:15px}.section{padding:74px 6%}.section h2{font-size:clamp(29px,8.4vw,58px);line-height:1.13;letter-spacing:-.055em;margin:25px 0 32px}.split{gap:24px;margin-top:30px}.large{font-size:21px}.muted{font-size:15px;line-height:1.75}.features{margin-top:30px;grid-template-columns:1fr;gap:12px}.feature{min-height:0;padding:24px}.feature-icon{font-size:52px;margin:18px 0}.feature h3{font-size:14px}.feature p{font-size:14px}.result-grid{gap:26px}.result-copy{padding:12px 0}.result-copy h2{font-size:clamp(32px,9vw,64px);margin:24px 0}.result-stats{margin:25px 0;gap:12px}.result-stats strong{font-size:26px}.result-photo{min-height:0;aspect-ratio:4/5}.result-overlay{left:18px;bottom:18px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo{height:auto;aspect-ratio:3/4}.person-meta{padding:13px}.person-meta h3{font-size:clamp(13px,3.7vw,19px);margin:8px 0}.person-meta span{font-size:9px}.final{gap:35px}.final-logo{max-width:390px}.price{font-size:clamp(30px,9vw,45px)}.camera{height:auto;aspect-ratio:4/3}.counter strong{font-size:42px}.marquee{font-size:11px}.cursor-glow{display:none}}
@media(max-width:390px){.brand{font-size:10px}.brand-mark{font-size:17px}.nav-cta{display:none}.hero h1{font-size:9vw}.section h2{font-size:8vw}.team-grid{gap:8px}.person-meta{padding:10px}.person-meta h3{font-size:14px}.social-cta{padding:16px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-glow,.marquee div{animation:none}}
/* Presentation mode: each major section becomes a slide */
body.presentation-mode{overflow:hidden}body.presentation-mode .nav{position:fixed;left:0;right:0;top:0;z-index:100;height:68px}body.presentation-mode .marquee,body.presentation-mode footer{display:none}body.presentation-mode main>section{display:none!important}body.presentation-mode main>section.active-slide{display:flex!important;flex-direction:column;justify-content:center;min-height:100svh;height:100svh;overflow-y:auto;padding:95px 7% 90px;border:0}body.presentation-mode main>section.active-slide.hero{justify-content:center}body.presentation-mode .slide-controls{display:flex;align-items:center;gap:12px;position:fixed;bottom:15px;left:50%;transform:translateX(-50%);z-index:110;background:#120d21ee;border:1px solid #ffffff33;border-radius:100px;padding:8px 12px;backdrop-filter:blur(20px)}.slide-controls button{background:#2c1947;color:white;border:0;border-radius:50%;width:36px;height:36px}.slide-controls span{font-size:12px;min-width:48px;text-align:center}body.presentation-mode .section h2{font-size:clamp(30px,5vw,72px)}body.presentation-mode .section{padding-top:85px}body.presentation-mode .feature{min-height:0}body.presentation-mode .features{margin-top:25px}body.presentation-mode .photo{height:clamp(90px,20vh,230px)}body.presentation-mode .team-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}body.presentation-mode .person-meta{padding:9px}body.presentation-mode .person-meta h3{font-size:14px;margin:4px 0}body.presentation-mode .team-desc{margin:0 0 15px}body.presentation-mode .result-photo{min-height:0;max-height:55vh}body.presentation-mode .result-copy h2{font-size:clamp(32px,5vw,65px)}@media(max-width:800px){body.presentation-mode main>section.active-slide{padding:90px 5% 82px;justify-content:flex-start}body.presentation-mode .section h2{font-size:clamp(26px,7vw,43px);margin:12px 0}body.presentation-mode .split{margin-top:8px;gap:8px}body.presentation-mode .features{margin-top:10px;gap:7px}body.presentation-mode .feature{padding:12px}body.presentation-mode .feature-icon{display:none}body.presentation-mode .feature h3{font-size:12px;margin:7px 0}body.presentation-mode .feature p{font-size:12px;margin:4px 0}body.presentation-mode .team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}body.presentation-mode .photo{height:auto;aspect-ratio:1}body.presentation-mode .person-meta h3{font-size:12px}body.presentation-mode .person-meta span{display:none}body.presentation-mode .person-social{font-size:8px}body.presentation-mode .result-photo{min-height:220px;max-height:38vh}body.presentation-mode .result-copy .muted{display:none}body.presentation-mode .result-stats{margin:12px 0}body.presentation-mode .result-stats strong{font-size:20px}body.presentation-mode .hero h1{font-size:clamp(34px,9vw,65px)}body.presentation-mode .large{font-size:17px}body.presentation-mode .muted{font-size:13px}body.presentation-mode .camera{max-height:28vh}}

/* GymVision 3.0 */
.brand-mark img{height:38px;width:38px;object-fit:cover;border-radius:9px;display:block}.brand-mark{display:inline-flex;align-items:center}.profile-link{display:inline-block;margin-top:14px;color:#54d4ff;text-decoration:none;font-size:12px;letter-spacing:.08em;font-weight:800}.profile-link:hover{color:#c56bff}.market-audience{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px}.market-audience>div{background:#171223;border:1px solid #46345f;border-radius:18px;padding:24px}.market-audience b{color:#54d4ff}.market-audience p{line-height:1.6;color:#bbb4c9}.profile-body{background:#080712;color:#f5edff;min-height:100vh}.profile-nav{padding:20px 5vw;display:flex;align-items:center;justify-content:space-between;gap:16px}.profile-nav a{color:#e8ddff;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.06em}.profile-nav a:last-child{display:flex;align-items:center;gap:12px}.profile-nav img{width:36px;height:36px;object-fit:cover;border-radius:9px}.profile-main{max-width:1200px;margin:6vh auto;display:grid;grid-template-columns:minmax(0, .9fr) minmax(0,1.1fr);gap:6vw;align-items:center;padding:0 5vw}.profile-picture img{width:100%;height:min(67vh,700px);object-fit:cover;border-radius:28px;box-shadow:0 20px 90px #6324a34a}.profile-details h1{font-size:clamp(64px,10vw,140px);line-height:1;letter-spacing:-.08em;margin:24px 0}.profile-details h1 span{color:#b84bfa}.profile-details h2{font-size:clamp(23px,3vw,42px);color:#56ceff;margin:0 0 26px}.profile-details p{font-size:clamp(18px,2vw,24px);line-height:1.6;color:#cbc4d4}.fiction-tag{color:#a99ab5;font-size:11px;letter-spacing:.07em;margin:24px 0}.profile-facts{display:flex;flex-wrap:wrap;gap:32px;margin:34px 0}.profile-facts div{display:flex;flex-direction:column;gap:7px}.profile-facts strong{font-size:30px;color:#c46cff}.profile-facts small{font-size:10px;letter-spacing:.08em}.profile-button{display:inline-block;padding:14px 18px;margin:6px 10px 6px 0;background:#722fbd;border-radius:12px;color:white;text-decoration:none;font-size:12px;font-weight:800}@media(max-width:750px){.market-audience{grid-template-columns:1fr}.profile-main{grid-template-columns:1fr;margin:16px auto}.profile-picture img{height:45vh}.profile-details h1{font-size:clamp(64px,17vw,100px)}.profile-nav{padding:16px 5vw}.profile-nav a{font-size:10px}}

/* GymVision AI app integration */
.gym-app-hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.gym-app-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 19px;border:1px solid #b8a0ff;border-radius:8px;background:linear-gradient(110deg,#8665e8,#4835a0);color:#fff!important;font-weight:800;font-size:12px;letter-spacing:.07em;text-decoration:none;box-shadow:0 7px 28px #7055ed50;transition:transform .2s,box-shadow .2s;margin:8px 8px 8px 0}
.gym-app-button:hover{transform:translateY(-3px);box-shadow:0 10px 35px #7055ed88}
@media(max-width:650px){.gym-app-hero-actions{gap:6px}.gym-app-button{font-size:11px;padding:12px}}
