@import "https://fonts.googleapis.com/css2?family=Oswald:wght@500;700&family=Source+Sans+3:wght@400;600;700&display=swap";
:root{--bg:#070707;--panel:#111;--panel-2:#181818;--line:#2b2b2b;--muted:#a5a5a5;--text:#f5f1ea;--red:#d71920;--red-2:#f04438;--brass:#f4b85b;--steel:#8ab4c6;--green:#18a058;--shadow:0 22px 80px #00000073}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{background:linear-gradient(180deg, #d7192014, transparent 280px), radial-gradient(circle at 85% 10%, #f4b85b24, transparent 320px), var(--bg);color:var(--text);min-width:320px;margin:0;font-family:"Source Sans 3",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img,video{max-width:100%;display:block}h1,h2,h3{text-transform:uppercase;letter-spacing:0;margin:0;font-family:Oswald,sans-serif;line-height:1}p{color:#c6c6c6;line-height:1.65}.site-header{z-index:80;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#050505d1;border-bottom:1px solid #ffffff14;position:fixed;top:0;left:0;right:0}.site-header-inner{align-items:center;gap:20px;width:min(1180px,100% - 32px);min-height:76px;margin:0 auto;display:flex}.brand-mark{text-transform:uppercase;white-space:nowrap;align-items:center;gap:12px;font-family:Oswald,sans-serif;font-size:19px;display:inline-flex}.brand-mark img{object-fit:contain;filter:drop-shadow(0 0 16px #d7192059);width:58px;height:58px}.brand-mark b{color:var(--red-2)}.desktop-nav{color:#d7d7d7;text-transform:uppercase;align-items:center;gap:18px;margin-left:auto;font-size:13px;font-weight:700;display:flex}.desktop-nav a:hover,.mobile-nav a:hover{color:var(--red-2)}.nav-cta{background:var(--red);text-transform:uppercase;border:1px solid #d7192059;border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:13px;font-weight:800;display:inline-flex}.mobile-toggle,.mobile-nav{display:none}.icon-button{width:42px;height:42px;color:var(--text);background:#ffffff0f;border:1px solid #ffffff21;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-button.mobile-toggle{display:none}.hero-section{place-items:center;min-height:96vh;padding:140px 24px 40px;display:grid;position:relative;overflow:hidden}.hero-media{z-index:-2;position:absolute;inset:0}.hero-media img{object-fit:cover;opacity:.28;width:100%;height:100%}.hero-media:after{content:"";background:linear-gradient(180deg, #000000bf, #0707078c 45%, var(--bg)), linear-gradient(90deg, #000000bd, transparent 58%);position:absolute;inset:0}.hero-content{text-align:center;width:min(960px,100%);margin-bottom:90px}.eyebrow{color:var(--brass);text-transform:uppercase;letter-spacing:.16em;margin-bottom:14px;font-size:12px;font-weight:900;display:inline-flex}.hero-content h1{font-size:clamp(58px,12vw,132px)}.hero-content h1 span{color:var(--red-2);text-shadow:0 0 24px #d7192047}.hero-content p{max-width:720px;margin:24px auto 0;font-size:clamp(18px,2vw,23px)}.hero-actions,.admin-actions,.proof-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:30px;display:flex}.primary-button,.secondary-button,.ghost-button{text-transform:uppercase;min-height:42px;color:var(--text);border:0;border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:0 16px;font-weight:900;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.primary-button{background:linear-gradient(135deg, var(--red), #9d1116);box-shadow:0 16px 40px #d7192038}.secondary-button{background:#ffffff0f;border:1px solid #ffffff2e}.ghost-button{background:0 0;border:1px solid #ffffff21}.large{min-height:54px;padding:0 22px}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.nav-cta:hover{transform:translateY(-1px)}.hero-stat-strip{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0a0abd;border:1px solid #ffffff1a;border-radius:8px;grid-template-columns:repeat(3,1fr);width:min(980px,100% - 32px);display:grid;position:absolute;bottom:24px;overflow:hidden}.hero-stat-strip div{text-align:center;border-right:1px solid #ffffff14;padding:18px}.hero-stat-strip div:last-child{border-right:0}.hero-stat-strip strong{font-family:Oswald,sans-serif;font-size:34px;display:block}.hero-stat-strip span{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:800}.section-grid,.coach-section,.gallery-preview,.schedule-section{width:min(1120px,100% - 32px);margin:0 auto;padding:90px 0}.section-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:54px;display:grid}.section-grid h2,.coach-section h2,.gallery-preview h2,.schedule-section h2{font-size:clamp(38px,6vw,72px)}.text-stack p{margin-top:0;font-size:20px}.discipline-band{grid-template-columns:repeat(3,1fr);gap:14px;width:min(1120px,100% - 32px);margin:0 auto;display:grid}.discipline-card,.metric-card,.panel-card,.video-card,.login-card{background:linear-gradient(#ffffff0e,#ffffff06);border:1px solid #ffffff1a;border-radius:8px}.discipline-card{min-height:230px;padding:28px}.discipline-card svg{color:var(--red-2)}.discipline-card h3{margin-top:24px;font-size:28px}.coach-section{grid-template-columns:.8fr 1fr;align-items:center;gap:52px;display:grid}.coach-photo{height:520px;box-shadow:var(--shadow);border:1px solid #ffffff1f;border-radius:8px;overflow:hidden}.coach-photo img{object-fit:cover;object-position:center top;width:100%;height:100%}.proof-row{justify-content:flex-start;margin-top:24px}.proof-row span{color:#e8e8e8;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-weight:800;display:inline-flex}.proof-row svg{color:var(--brass)}.gallery-preview{grid-template-columns:1fr auto;align-items:center;gap:24px;display:grid}.preview-grid{grid-column:1/-1;grid-template-columns:1.2fr .9fr .9fr;gap:12px;display:grid}.preview-grid img{object-fit:cover;border:1px solid #ffffff1a;border-radius:8px;width:100%;height:330px}.schedule-section{border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:22px;display:flex}.site-footer{background:#030303;border-top:1px solid #ffffff14;padding:46px 24px 28px}.footer-grid{grid-template-columns:1.2fr .6fr 1fr;gap:40px;width:min(1120px,100%);margin:0 auto;display:grid}.footer-logo{width:76px}.footer-label{color:var(--brass);text-transform:uppercase;margin-bottom:12px;font-weight:900;display:block}.site-footer a{color:#e7e7e7;align-items:center;gap:9px;margin-bottom:12px;font-weight:700;display:flex}.copyright{color:#6f6f6f;width:min(1120px,100%);margin:32px auto 0;font-size:13px}.subpage{width:min(1180px,100% - 32px);margin:0 auto;padding:128px 0 80px}.subpage-hero{max-width:820px;margin-bottom:42px}.subpage-hero h1{font-size:clamp(48px,8vw,90px)}.subpage-hero p{font-size:20px}.back-link{color:var(--muted);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:24px;font-weight:800;display:inline-flex}.gallery-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.gallery-card{background:var(--panel);border:0;border-radius:8px;height:270px;padding:0;position:relative;overflow:hidden}.gallery-card img{object-fit:cover;width:100%;height:100%;transition:transform .24s}.gallery-card:hover img{transform:scale(1.04)}.gallery-card span{color:#fff;background:#000000ad;border:1px solid #ffffff1f;border-radius:8px;padding:5px 9px;font-weight:900;position:absolute;bottom:10px;left:10px}.lightbox{z-index:120;background:#000000eb;justify-content:center;align-items:center;padding:72px 74px;display:flex;position:fixed;inset:0}.lightbox img{max-height:82vh;box-shadow:var(--shadow);border-radius:8px}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute}.lightbox-close{top:24px;right:24px}.lightbox-prev{left:24px}.lightbox-next{right:24px}.lightbox-count{color:#cfcfcf;font-weight:900;position:absolute;bottom:22px}.video-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.video-card{overflow:hidden}.video-frame{aspect-ratio:16/9;background:#050505}.video-frame video{object-fit:cover;width:100%;height:100%}.video-meta{color:#e8e8e8;text-transform:uppercase;justify-content:space-between;align-items:center;padding:12px 14px;font-weight:900;display:flex}.video-meta svg{color:var(--red-2)}.cookie-banner{z-index:150;width:min(940px,100% - 28px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d0d0df0;border:1px solid #ffffff24;border-radius:8px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;padding:16px;display:grid;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.cookie-icon{width:44px;height:44px;color:var(--brass);background:#f4b85b1c;border-radius:8px;place-items:center;display:grid}.cookie-banner strong{margin-bottom:2px;display:block}.cookie-banner p{margin:0;font-size:14px}.cookie-actions{gap:8px;display:flex}.cookie-close{width:36px;height:36px}.login-shell{place-items:center;min-height:100vh;padding:28px;display:grid}.login-card{width:min(440px,100%);box-shadow:var(--shadow);padding:34px}.login-card img{width:82px;margin-bottom:20px}.login-card h1{font-size:44px}.login-icon{width:50px;height:50px;color:var(--brass);background:#f4b85b1f;border-radius:8px;place-items:center;margin-bottom:18px;display:grid}.login-card label{color:#e4e4e4;gap:8px;margin:22px 0;font-weight:800;display:grid}.login-card input{color:#fff;background:#ffffff0f;border:1px solid #ffffff24;border-radius:8px;width:100%;height:50px;padding:0 14px}.admin-shell{background:radial-gradient(circle at 100% 0, #f4b85b14, transparent 360px), var(--bg);grid-template-columns:270px 1fr;width:100%;max-width:100vw;min-height:100vh;display:grid;overflow-x:hidden}.admin-sidebar{background:#080808d1;border-right:1px solid #ffffff14;height:100vh;padding:22px;position:sticky;top:0}.admin-brand{align-items:center;gap:12px;margin-bottom:36px;display:flex}.admin-brand img{width:58px}.admin-brand strong,.admin-brand span{display:block}.admin-brand strong{text-transform:uppercase;font-family:Oswald,sans-serif}.admin-brand span{color:var(--muted);font-size:13px}.admin-sidebar nav{gap:10px;display:grid}.admin-sidebar nav a,.sidebar-logout{color:#d7d7d7;border-radius:8px;justify-content:flex-start;width:100%;padding:12px 13px;font-weight:800}.admin-sidebar nav a:hover{background:#ffffff0f}.sidebar-logout{width:calc(100% - 44px);position:absolute;bottom:22px;left:22px;right:22px}.admin-content{min-width:0;padding:34px}.admin-topbar{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.admin-topbar h1{font-size:clamp(40px,5vw,72px)}.admin-topbar p{max-width:740px;margin-bottom:0}.range-control{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;height:42px;padding:3px;display:inline-flex}.range-control button{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:0 12px;font-weight:900}.range-control button.active{color:#fff;background:var(--red)}.status-banner{color:#ffe0ad;background:#f4b85b1a;border:1px solid #f4b85b59;border-radius:8px;margin:18px 0;padding:12px 14px;font-weight:700}.status-banner.danger{color:#ffb8b2;background:#f044381f;border-color:#f0443861}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0;display:grid}.metric-card{min-height:166px;padding:20px}.metric-icon{width:42px;height:42px;color:var(--red-2);background:#d719201f;border-radius:8px;place-items:center;margin-bottom:18px;display:grid}.metric-card span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.metric-card strong{margin-top:6px;font-family:Oswald,sans-serif;font-size:42px;line-height:1.1;display:block}.metric-card p{margin:6px 0 0;font-size:14px}.panel-card{padding:20px}.clickable-panel{cursor:pointer;transition:border-color .18s,transform .18s,background .18s}.clickable-panel:hover{background:linear-gradient(#ffffff13,#ffffff08);border-color:#f4b85b59;transform:translateY(-1px)}.panel-title-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.panel-title-row h2,.panel-card h3{font-size:30px}.panel-title-row p{margin:6px 0 0}.chart-wrap{width:100%;height:340px;margin-top:20px}.admin-panels{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px;display:grid}.bucket-list{gap:13px;margin-top:16px;display:grid}.bucket-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.bucket-heading span{color:var(--brass);text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:900;display:inline-flex}.bucket-row{width:100%;display:block}.bucket-row-button{color:inherit;text-align:left;background:0 0;border:0;padding:0}.bucket-row-button:hover span{color:var(--brass)}.bucket-row div{color:#e8e8e8;justify-content:space-between;gap:14px;min-width:0;font-weight:800;display:flex}.bucket-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bucket-row b{color:var(--brass)}.bucket-row i{background:linear-gradient(90deg, var(--red-2), var(--brass));border-radius:999px;height:5px;margin-top:7px;display:block}.muted{color:var(--muted)}.admin-note{color:#858585;font-size:14px}.detail-backdrop{z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b8;justify-content:flex-end;display:flex;position:fixed;inset:0;overflow:hidden}.detail-modal{overscroll-behavior:contain;width:min(980px,100%);max-width:100vw;height:100dvh;box-shadow:var(--shadow);background:radial-gradient(circle at 100% 0,#f4b85b1c,#0000 320px),#080808;border-left:1px solid #ffffff1f;padding:30px;overflow:hidden auto}.detail-header,.detail-subhead{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.detail-header h2{font-size:clamp(42px,6vw,70px)}.detail-header p,.detail-subhead h3{margin:8px 0 0}.detail-grid{grid-template-columns:repeat(2,1fr);gap:12px;min-width:0;margin:24px 0;display:grid}.detail-bucket{width:100%;min-width:0;min-height:92px;color:var(--text);text-align:left;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.detail-bucket:hover,.detail-bucket.active{background:#f4b85b14;border-color:#f4b85b66}.detail-bucket strong,.detail-bucket b,.detail-bucket span,.detail-bucket small{display:block}.detail-bucket strong{font-size:20px}.detail-bucket b{color:var(--brass);text-align:right;font-family:Oswald,sans-serif;font-size:34px}.detail-bucket span,.detail-bucket small{color:var(--muted)}.detail-bucket small{text-align:right}.detail-table-card{background:#ffffff09;border:1px solid #ffffff1a;border-radius:8px;min-width:0;padding:18px;overflow:hidden}.detail-subhead h3{font-size:30px}.detail-table{gap:10px;margin-top:18px;display:grid}.detail-visit{background:#0003;border:1px solid #ffffff14;border-radius:8px;grid-template-columns:1fr 1.2fr .9fr;gap:14px;min-width:0;padding:14px;display:grid}.detail-visit strong,.detail-visit b,.detail-visit span{overflow-wrap:anywhere;min-width:0;display:block}.detail-visit strong,.detail-visit b{color:#ededed}.detail-visit span{color:var(--muted);font-size:14px}.recent-panel{margin-top:14px}.recent-list{gap:10px;margin-top:18px;display:grid}.recent-row{background:#0003;border:1px solid #ffffff14;border-radius:8px;grid-template-columns:1.1fr 1fr 1fr auto;align-items:center;gap:14px;min-width:0;padding:14px;display:grid}.simple-visit-row{grid-template-columns:minmax(0,1.4fr) minmax(180px,.8fr)}.recent-row strong,.recent-row b,.recent-row span{overflow-wrap:anywhere;min-width:0;display:block}.recent-row strong,.recent-row b{color:#f0f0f0}.recent-row span{color:var(--muted);font-size:14px}.recent-main strong{color:var(--brass)}.recent-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.recent-actions button{color:#ededed;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:8px;min-height:34px;padding:0 10px;font-weight:900}.recent-actions button:hover{color:var(--brass);border-color:#f4b85b66}@media (max-width:1050px){.desktop-nav,.nav-cta{display:none}.icon-button.mobile-toggle{margin-left:auto;display:inline-flex}.mobile-nav{background:#080808;border:1px solid #ffffff1a;border-radius:8px;gap:2px;width:min(1180px,100% - 32px);margin:0 auto 14px;padding:12px;display:grid}.mobile-nav a{text-transform:uppercase;padding:12px;font-weight:900}.section-grid,.coach-section,.gallery-preview,.schedule-section{grid-template-columns:1fr}.discipline-band,.preview-grid,.video-grid,.gallery-grid,.metric-grid,.admin-panels{grid-template-columns:repeat(2,1fr)}.detail-grid,.detail-visit,.recent-row,.admin-shell{grid-template-columns:1fr}.admin-sidebar{flex-wrap:wrap;align-items:center;gap:18px;height:auto;display:flex;position:static}.admin-brand{margin:0}.admin-sidebar nav{flex-wrap:wrap;margin-left:auto;display:flex}.sidebar-logout{width:auto;position:static}.admin-topbar{display:grid}}@media (max-width:720px){.brand-mark span{display:none}.hero-section{min-height:auto;padding:130px 16px 40px;display:block}.hero-content{margin:0 auto 26px}.hero-stat-strip{width:100%;margin:0 auto;position:relative;bottom:auto}.hero-stat-strip,.discipline-band,.preview-grid,.gallery-grid,.video-grid,.footer-grid,.metric-grid,.admin-panels{grid-template-columns:1fr}.hero-stat-strip div{border-bottom:1px solid #ffffff14;border-right:0}.hero-stat-strip div:last-child{border-bottom:0}.section-grid,.coach-section,.gallery-preview,.schedule-section{padding:64px 0}.coach-photo{height:400px}.schedule-section{display:grid}.gallery-card{height:330px}.lightbox{padding:72px 18px}.lightbox-prev{left:12px}.lightbox-next{right:12px}.cookie-banner{grid-template-columns:1fr}.cookie-actions{grid-template-columns:1fr;display:grid}.cookie-close,.cookie-icon{display:none}.admin-content{padding:20px 14px 34px}.admin-sidebar{gap:10px;padding:12px 14px}.admin-brand img{width:44px}.admin-sidebar nav{gap:6px;width:100%;margin-left:0}.admin-sidebar nav a,.sidebar-logout{width:auto;min-height:36px;padding:8px 10px;font-size:13px}.admin-actions{justify-content:flex-start}.admin-topbar h1{font-size:42px}.panel-title-row{display:grid}.recent-actions{justify-content:flex-start}.detail-modal{border-left:0;width:100vw;max-width:100vw;padding:22px 14px}.detail-header,.detail-subhead,.detail-bucket{display:grid}.detail-bucket b,.detail-bucket small{text-align:left}.range-control{width:100%}.range-control button{flex:1}.chart-wrap{height:230px}.recent-row{padding:12px}}
