
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{--bg:#070e09;--surface:#111c14;--surface2:#18291a;--accent:#cdff63;--text:#f5f9ed;--muted:#bacbb6;--line:#304637;--lime:#cdff63}
*{box-sizing:border-box}body{background:radial-gradient(circle at 94% 2%,rgba(73,138,49,.25),transparent 28%),linear-gradient(180deg,#071008,#0b130d 45%,#080f0a)!important;color:#f5f9ed;font-family:'DM Sans',system-ui,sans-serif!important}
html{scroll-behavior:smooth}h1,h2,h3,h4,.logo,.tv-display,.tv-heading{font-family:'Outfit','DM Sans',system-ui,sans-serif!important}h1,h2{letter-spacing:-.055em!important}
::selection{background:#cdff63;color:#112516}
.shell{width:min(92%,1260px);max-width:1260px}
.header{border-bottom:1px solid #ffffff20!important;background:#09120ddf!important;backdrop-filter:blur(24px)!important}
.header .nav{min-height:82px;gap:17px}.header .logo{font-size:23px!important;font-weight:900!important;letter-spacing:-1.25px!important;display:inline-flex;gap:10px;align-items:center}
.tv-mark{display:inline-block;width:39px;height:39px;object-fit:contain;flex:none}
.header .navlinks{gap:7px!important;font-size:13px!important;align-items:center}
.header .navlinks a:not(.navpill),.header .navlinks .feedback-nav{padding:10px 12px!important;color:#e8f4e4!important;letter-spacing:-.01em;border-radius:11px;transition:background .2s,color .2s;white-space:nowrap}
.header .navlinks a:not(.navpill):hover,.header .navlinks .feedback-nav:hover{background:#233a27!important;color:#d3ff79!important}
.header .navlinks .studioTopLink{border:1px solid #637b46!important;background:#203b25!important;padding:11px 15px!important;margin:0!important;min-height:42px!important}
.header .navlinks .navpill{background:#cdff63!important;color:#10210a!important;padding:12px 18px!important;border-radius:13px!important;box-shadow:0 8px 25px #b9ff411f}
.header .account-entry{border-radius:12px!important;border:1px solid #9cc86c!important;color:#dcffa6!important;padding:11px 17px!important;background:#1c3220!important;white-space:nowrap}
.tv-menu-toggle{display:none;background:#1c3522;color:white;border:1px solid #637b64;border-radius:11px;padding:10px 14px;font-size:13px;font-weight:850;align-items:center;gap:7px}
.hero{min-height:670px!important;padding:88px 0 94px!important;gap:55px!important;grid-template-columns:1.05fr .95fr!important}
.hero .eyebrow{color:#d0ff74!important;letter-spacing:2.1px!important;background:#1b3220;display:inline-flex;width:max-content;max-width:100%;padding:9px 15px;border:1px solid #42653b;border-radius:99px}
.hero h1{font-size:clamp(58px,7.3vw,108px)!important;font-weight:1000!important;letter-spacing:-.08em!important;line-height:.95!important;margin:21px 0 23px!important}
.hero h1 em{color:#cbff67!important;text-shadow:0 0 65px #a1ff4423}
.hero .lead{font-size:19px!important;max-width:580px;line-height:1.75!important;color:#c5d5c5!important}
.hero .heroVisual{border-radius:27px!important;border:1px solid #638456!important;box-shadow:0 40px 105px #040904a8,0 0 110px #7cdb4422;overflow:hidden;position:relative;min-height:540px}
.hero .heroVisual img{min-height:540px;width:100%;object-fit:cover;filter:saturate(.9) contrast(1.1)}
.hero .heroVisual:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#020a05b9);pointer-events:none}
.hero .visualLabel{position:absolute!important;bottom:20px;left:18px;right:18px;z-index:2;border:1px solid #a9c47a60!important;backdrop-filter:blur(16px);background:#13261bdc!important;border-radius:17px!important;padding:19px!important}
.hero .visualLabel strong{font-family:'Outfit',sans-serif;font-size:19px}
.heroactions{gap:12px!important;margin-top:30px!important}
.heroactions .cta,.heroactions .shareSite{min-height:54px;padding:16px 23px!important;border-radius:13px!important;display:inline-flex;align-items:center;justify-content:center;font-weight:900;letter-spacing:-.02em;transition:transform .18s,box-shadow .18s}
.heroactions .cta:hover,.heroactions .shareSite:hover{transform:translateY(-3px)}
.heroactions .cta:first-child{background:#cdff63!important;color:#14200d!important;box-shadow:0 12px 30px #9efb342e}
.heroactions .cta.alt{background:#213826!important;color:#edffe8!important;border:1px solid #698b60!important}
.hero .subtle{color:#97b298!important}
.stats{gap:12px!important;margin-top:-28px!important;position:relative;z-index:2}
.stats .stat{background:#162b1bdc!important;border:1px solid #456849!important;border-radius:17px!important;padding:22px!important;backdrop-filter:blur(15px);box-shadow:0 15px 35px #02090455}
.stats .stat strong{font-family:'Outfit',sans-serif;color:#d4ff83!important;font-weight:900!important}
.intro,.categories,.featuredTrainingGuides,.seoTopics,.closingCta,.startTraining{scroll-margin-top:100px}
.intro{background:transparent!important}
.sectionLabel,.eyebrow{font-weight:900!important;color:#caff64!important;letter-spacing:2px!important}
.intro h2,.categories h2,.featuredTrainingGuides h2,.startTraining h2,.closingCta h2,.seoTopics h2{font-family:'Outfit',sans-serif;font-weight:900!important;letter-spacing:-.055em!important}
.categoryGrid{gap:16px!important}
.catCard{background:linear-gradient(140deg,#192d20,#112219)!important;border:1px solid #486c4d!important;border-radius:17px!important;transition:transform .18s,border-color .18s,background .18s!important;min-height:116px}
.catCard:hover{transform:translateY(-5px);border-color:#adf875!important;background:#253e29!important}
.catCard .catIcon{font-size:32px!important}
.featuredGuideGrid>a{border:1px solid #466a4a!important;border-radius:16px!important;background:#132619!important;transition:transform .18s!important}
.featuredGuideGrid>a:hover{transform:translateY(-4px)!important;border-color:#a5e663!important}
.courseGrid{gap:18px!important}.courseCard{background:#162a1c!important;border:1px solid #496f4e!important;border-radius:20px!important;padding:17px!important;overflow:hidden}
.courseCard:hover{transform:translateY(-4px);box-shadow:0 19px 40px #040c0670;border-color:#b9f976!important}
.courseCard .trainovix-course-photo{height:172px!important;object-fit:cover;filter:saturate(.9)}
.courseCard h3{font-family:'Outfit',sans-serif;font-size:23px!important}
.courseCard .openBtn{border-radius:10px!important;padding:13px 17px!important;min-height:46px}
.library{padding-top:50px!important;padding-bottom:80px!important}
.filterRow input,.filterRow select{background:#0d2013!important;border:1px solid #608664!important;border-radius:12px!important;padding:15px!important}
.filterBtn{border-radius:40px!important}
#studio{scroll-margin-top:110px}
.trainingStudio .studioHeader h2{font-size:clamp(44px,6vw,76px)!important}
.trainingStudio .panel{background:linear-gradient(135deg,#1a3321,#0e2417)!important;border:1px solid #486b4d!important;box-shadow:0 18px 45px #0005!important}
.trainingStudio .card,.trainingStudio .week{border-radius:17px!important}
.trainingStudio .studioQuick{background:linear-gradient(105deg,#255532,#153b22)!important;border:1px solid #a7d56e!important;padding:30px!important}
.trainingStudio .studioQuick .btn{box-shadow:0 11px 30px #a2f44332}
.trainingStudio .btn,.trainingStudio .mini{transition:transform .17s,filter .17s}
.trainingStudio .btn:hover:not(:disabled),.trainingStudio .mini:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.07)}
#homeView section:not(.hero){scroll-margin-top:115px}
.tv-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:20px 25px;margin:36px 0 12px;border-radius:16px;background:#caff68;color:#132110}
.tv-strip strong{font:900 22px 'Outfit',sans-serif;letter-spacing:-.045em}.tv-strip p{margin:3px 0;color:#29412a}.tv-strip a{background:#152919;color:#fff;border-radius:10px;padding:12px 17px;font-size:13px;font-weight:900}
.tv-section{padding:70px 0}.tv-kicker{font-weight:900;font-size:12px;letter-spacing:2.2px;color:#bbf76b;text-transform:uppercase}.tv-title{font:900 clamp(33px,4.3vw,62px)/1.06 'Outfit',sans-serif;letter-spacing:-.065em;margin:12px 0 17px}.tv-summary{font-size:17px;color:#b9cdb8;line-height:1.7;max-width:690px}
.tv-sports{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:29px}
.tv-sport{position:relative;display:flex;min-height:245px;overflow:hidden;border-radius:19px;background:#193625;border:1px solid #58775b;flex-direction:column;justify-content:space-between;transition:transform .2s,border-color .2s}
.tv-sport:hover{transform:translateY(-5px);border-color:#b8ef70}.tv-sport:focus-visible{outline:3px solid #d1ff7b;outline-offset:3px}
.tv-sport img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.8;transition:transform .35s}.tv-sport:hover img{transform:scale(1.065)}
.tv-sport:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#07180a35 0%,#06120cb8 88%)}
.tv-sport>*:not(img){z-index:1;position:relative;margin:15px}.tv-sport .tv-icon{background:#12251cc9;border:1px solid #a0d67e77;display:grid;place-items:center;width:47px;height:47px;border-radius:13px;font-size:22px}
.tv-sport .tv-sport-name{font:900 27px 'Outfit',sans-serif;margin-bottom:4px;color:white}.tv-sport small{font-size:12px;color:#d4e7d5}.tv-sport .tv-arrow{position:absolute;right:14px;bottom:12px;font-size:24px}
.tv-process{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:28px}
.tv-step{border-radius:19px;border:1px solid #425d46;background:#17271b;padding:27px;min-height:205px}
.tv-step b{font:900 42px 'Outfit',sans-serif;color:#c7ff69}.tv-step h3{font-size:23px;margin:17px 0 4px}.tv-step p{font-size:14px;color:#bbccba}
.tv-programs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;margin-top:30px}
.tv-program{background:linear-gradient(115deg,#1e3b26,#132619);border:1px solid #628062;border-radius:20px;padding:32px;overflow:hidden;position:relative;min-height:270px}
.tv-program:before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:#a5f7600c;top:-90px;right:-90px;border:1px solid #a5f76025}
.tv-program strong{font:900 34px 'Outfit',sans-serif;letter-spacing:-.04em}.tv-program p{max-width:390px}.tv-program .tv-pill{display:inline-block;padding:7px 11px;background:#355c36;border:1px solid #81a76b;border-radius:99px;color:#d9ffb2;font-weight:850;font-size:12px;margin-bottom:16px}
.tv-program a{display:inline-flex;padding:12px 18px;background:#cbff63;color:#15220d;border-radius:10px;font-weight:900;margin-top:6px}
.tv-join{background:linear-gradient(125deg,#28432a,#12271b);border:1px solid #638961;border-radius:24px;padding:55px;display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap;margin:50px 0}
.tv-join h2{font:900 clamp(33px,4.4vw,58px)/1.05 'Outfit',sans-serif;letter-spacing:-.06em;margin:0}.tv-join p{max-width:570px}.tv-join a{background:#cbff63;color:#14230f;border-radius:12px;padding:15px 24px;font-weight:900}
.tv-footer-nav{display:flex;gap:17px;flex-wrap:wrap;font-size:13px;font-weight:750;margin-top:17px;color:#cfff9a}
.footerInner{align-items:flex-start!important}.footerInner .logo{display:inline-flex;align-items:center;gap:8px}
.tv-page{padding:72px 0 90px;min-height:75vh}.tv-page-header{padding:35px 0 20px}.tv-page h1{font:900 clamp(48px,7vw,90px)/1 'Outfit',sans-serif;letter-spacing:-.075em;margin:18px 0 25px}.tv-page .tv-subtitle{max-width:800px;font-size:19px;line-height:1.75;color:#bdcdbb}.tv-cardgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:25px}
.tv-page-card{display:block;background:#14281a;border:1px solid #4c6e4d;border-radius:18px;padding:26px;transition:transform .2s}.tv-page-card:hover{transform:translateY(-4px);border-color:#c6ff6c}.tv-page-card h2{font:900 25px 'Outfit',sans-serif}.tv-page-card p{color:#bcd0b7}
.tv-faq{max-width:910px;margin-top:40px}.tv-faq details{padding:19px 22px;background:#162a1c;border:1px solid #4a6f4e;border-radius:13px;margin:12px 0}.tv-faq summary{cursor:pointer;font-size:17px;font-weight:800}.tv-faq p{color:#c2d6bc}
.tv-page-cta{display:inline-flex;padding:14px 22px;border-radius:11px;background:#cbff63;color:#122211;font-weight:900;margin:14px 12px 10px 0}
.tv-page-cta.alt{background:#233c29;color:#e9ffda;border:1px solid #6a9165}
.tv-divider{height:1px;background:#385440;margin:50px 0}
.tv-about-stat{padding:22px;border-radius:17px;background:#1a3321;border:1px solid #476e48}
.tv-about-stat strong{font:900 37px 'Outfit',sans-serif;color:#cdff63;display:block}
#ownerPanel[hidden],#trafficPanel[hidden]{display:none!important}
@media(max-width:1050px){.header .navlinks{gap:2px!important}.header .navlinks a:not(.navpill){padding:9px!important}.header .logo{font-size:20px!important}.tv-sports{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){
 .header .nav{min-height:74px!important;position:relative}
 .tv-menu-toggle{display:inline-flex}
 .header .navlinks{display:none;order:4;position:absolute;top:calc(100% + 1px);left:0;right:0;background:#102317;border:1px solid #547155;padding:13px;border-radius:0 0 17px 17px;box-shadow:0 24px 45px #0009;flex-direction:column;align-items:stretch;gap:5px!important}
 .header .navlinks.tv-nav-open{display:flex}
 .header .navlinks a,.header .navlinks button{width:100%;text-align:left;justify-content:flex-start;white-space:normal!important;margin:0!important}
 .header .account-entry{margin-left:auto}
 .hero{grid-template-columns:1fr!important;min-height:auto!important;padding:50px 0 65px!important;gap:28px!important}
 .hero h1{font-size:clamp(52px,10vw,90px)!important}
 .hero .heroVisual,.hero .heroVisual img{min-height:340px!important;max-height:500px}
 .stats{margin-top:0!important}
 .tv-sports{grid-template-columns:repeat(2,1fr)}
 .tv-process{grid-template-columns:1fr}
 .tv-cardgrid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
 .header .logo{font-size:18px!important}.tv-mark{width:34px;height:34px}
 .tv-menu-toggle{font-size:12px;padding:9px 10px}
 .header .account-entry{font-size:12px!important;padding:9px 12px!important}
 .shell{width:min(92%,1260px)}
 .hero{padding:36px 0 44px!important}
 .hero h1{font-size:clamp(51px,13vw,77px)!important}
 .hero .heroVisual,.hero .heroVisual img{min-height:290px!important}
 .hero .visualLabel{padding:13px!important}.hero .visualLabel strong{font-size:15px}
 .stats{grid-template-columns:1fr 1fr!important}
 .stats .stat{padding:14px!important}.stats .stat strong{font-size:29px!important}
 .tv-section{padding:40px 0}
 .tv-sports{grid-template-columns:1fr 1fr;gap:10px}.tv-sport{min-height:200px}.tv-sport .tv-sport-name{font-size:21px}.tv-sport .tv-icon{width:37px;height:37px;font-size:19px}.tv-sport>*:not(img){margin:11px}
 .tv-programs,.tv-cardgrid{grid-template-columns:1fr}.tv-program{padding:25px;min-height:240px}.tv-join{padding:25px}
 .tv-process{gap:10px}.tv-step{min-height:auto}
 .trainingStudio .panel{padding:17px!important}
 .tv-page{padding:35px 0 75px}.tv-page h1{font-size:clamp(46px,12vw,65px)}
 .footerInner{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
