/* globals.css */
:root{--background:#050809;--foreground:#f8fafc;--card:#10181c;--card-foreground:#f8fafc;--popover:#10181c;--popover-foreground:#fff;--primary:#a8f348;--primary-foreground:#050809;--secondary:#111a1e;--secondary-foreground:#fff;--muted:#10171a;--muted-foreground:#b5c0c5;--accent:#a8f348;--accent-foreground:#050809;--destructive:#e44;--border:#29363b;--input:#fff;--ring:#a8f348;--radius:.25rem}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050809;color:#fff;font-family:Arial,Helvetica,sans-serif}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button,a,select{touch-action:manipulation}.site-header{height:54px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 4.5%;background:#020607;position:relative;z-index:5}.wordmark{display:flex;flex-direction:column;min-width:140px;line-height:.9;font-size:20px;font-weight:900;letter-spacing:-1px}.wordmark small{font-size:11px;letter-spacing:5px;color:#a8f348;text-align:center;margin-top:3px}.ball-o{color:#a8f348;font-size:15px;vertical-align:2px}.desktop-nav{display:flex;align-items:center;gap:23px;height:100%;margin:auto}.desktop-nav a{height:100%;display:flex;align-items:center;border-bottom:2px solid transparent;font:700 11px/1 'Arial Narrow',Arial,sans-serif;letter-spacing:.4px;white-space:nowrap}.desktop-nav a.active{border-color:#a8f348}.desktop-nav a:hover{color:#a8f348}.header-book{background:#a8f348;color:#07100b;border-radius:3px;padding:10px 17px;font:900 12px/1 'Arial Narrow',Arial,sans-serif;white-space:nowrap}.hero{height:388px;background-image:linear-gradient(90deg,rgba(0,0,0,.44),transparent 64%),url('../images/training-hero.png');background-size:cover;background-position:center 60%;position:relative}.hero-inner{position:relative;z-index:1;width:min(1280px,90%);margin:auto;padding-top:32px}.eyebrow{font:400 12px/1.2 'Arial Narrow',Arial,sans-serif;letter-spacing:1.1px;margin:0 0 8px}.hero h1{font:900 clamp(42px,5.5vw,66px)/.95 Impact,'Arial Narrow',sans-serif;letter-spacing:.3px;margin:0;white-space:nowrap}.green-rule{display:block;width:75px;height:2px;background:#a8f348;margin:14px 0}.hero-copy{font-size:16px;line-height:1.35;max-width:370px;margin:0 0 15px}.hero-buttons{display:flex;gap:14px}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 17px;border-radius:3px;font:900 13px/1 'Arial Narrow',Arial,sans-serif}.button.primary{background:#a8f348;color:#071008}.button.secondary{border:1px solid #a8f348;background:rgba(0,0,0,.42)}.hero-benefits{display:flex;gap:37px;margin-top:23px}.hero-benefits div{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;min-width:58px}.hero-benefits svg{width:24px;height:24px;fill:#fff;stroke:#fff}.hero-benefits span{font:900 10px/1.1 'Arial Narrow',Arial,sans-serif}.hero-script{position:absolute;right:4.4%;top:95px;margin:0;transform:rotate(-10deg);font:italic 24px/1.05 'Segoe Print',cursive;color:#fff;text-shadow:0 2px 3px #000}
@media(max-width:850px){.desktop-nav{display:none}.site-header{padding:0 5%}.hero{height:auto;min-height:570px;background-position:61% center}.hero-inner{padding-top:36px;padding-bottom:22px}.hero h1{white-space:normal;max-width:470px}.hero-copy{max-width:400px}.hero-script{top:auto;bottom:145px;right:7%;font-size:20px}.hero-benefits{margin-top:160px;gap:18px;justify-content:space-between;max-width:480px}}@media(max-width:520px){.hero{min-height:640px;background-position:65% center}.hero h1{font-size:44px}.hero-copy{font-size:15px}.hero-buttons{flex-wrap:wrap}.hero-benefits{margin-top:195px}.hero-script{bottom:120px}}



/* site.css */
.menu-toggle{display:none;background:none;border:0;color:white}.mobile-nav{display:none}.home-stack{width:calc(100% - 7%);max-width:1280px;margin:-1px auto 0;display:grid;gap:11px;position:relative;z-index:2}.panel{background:linear-gradient(120deg,#101b20,#0b1418 65%,#091115);border:1px solid #233137;border-radius:4px;box-shadow:0 15px 30px rgba(0,0,0,.35)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h2,.coach-panel h2,.final-cta h2,.subpage h1{font:900 29px/.95 Impact,'Arial Narrow',sans-serif;letter-spacing:.4px;margin:0}.section-heading p,.coach-panel p{font-size:13px;margin:3px 0 0}.heading-inline{display:flex;align-items:baseline;gap:17px}.heading-inline p{white-space:nowrap;font-size:11px}.text-link,.under-link{display:inline-flex;align-items:center;gap:6px;border-bottom:2px solid #a8f348;padding-bottom:2px;font:900 11px/1 'Arial Narrow',Arial,sans-serif;letter-spacing:.2px;white-space:nowrap}.text-link:hover,.under-link:hover{color:#a8f348}.finder{padding:16px 18px 20px;min-height:176px}.finder-heading small{font-size:11px;max-width:360px}.finder-row{display:flex;gap:15px;align-items:stretch;margin-top:15px}.finder-fields{background:#fff;color:#071013;padding:11px;border-radius:4px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;flex:1}.finder-fields label{display:block;min-width:0}.finder-fields label>span{display:block;font:800 11px/1.1 'Arial Narrow',Arial,sans-serif;margin-bottom:6px}.finder-select{width:100%;height:30px;background:#fff;color:#071013;border-color:#d2dbe0;font-size:11px}.finder-action{width:162px;display:flex;flex-direction:column;align-items:center;gap:7px}.finder-action .button{border:0;width:100%;height:39px;cursor:pointer}.handnote{font:italic 13px/1 'Segoe Print',cursive;transform:rotate(-9deg);text-align:center}.finder-result{margin-top:11px;background:#17272b;border-left:3px solid #a8f348;padding:8px 10px;font-size:13px}.finder-result a{display:inline-flex;align-items:center;gap:3px;color:#a8f348;margin-left:8px}.programs{padding:14px 18px 16px;min-height:288px}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:13px}.program-card{min-width:0}.program-card img{width:100%;height:108px;object-fit:cover;border:1px solid #526065;border-radius:3px;display:block}.program-card h3{font:900 17px/.95 Impact,'Arial Narrow',sans-serif;margin:11px 0 6px}.program-card p{font-size:13px;line-height:1.3;min-height:43px;margin:0 0 10px;max-width:290px}.coach-panel{display:grid;grid-template-columns:57% 43%;min-height:177px;padding:15px 18px;overflow:hidden}.coach-panel h2{font-size:28px}.coach-panel p{font-size:11px}.coach-benefits{display:flex;justify-content:space-between;align-items:flex-end;margin-top:23px;gap:9px}.coach-benefits div{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.coach-benefits svg{width:28px;height:28px;stroke-width:3;fill:#f0f2f4}.coach-benefits span{font:900 10px/1.1 'Arial Narrow',Arial,sans-serif}.coach-right{position:relative;min-height:150px;padding-left:10px}.coach-right>.button{height:32px;min-height:32px;font-size:11px;border-color:#fff}.coach-right blockquote{font-size:11px;line-height:1.35;max-width:195px;margin:18px 0 0}.coach-right cite{font-style:normal;display:block;font-weight:800;margin-top:7px}.coach-image{position:absolute;bottom:-15px;right:36px;width:172px;height:164px;overflow:hidden;mask-image:linear-gradient(#000 70%,transparent)}.coach-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.74) contrast(1.12)}.coach-motto{position:absolute;right:0;top:50px;font:900 18px/.92 Impact,'Arial Narrow',sans-serif;color:#d6dade}.stories{padding:14px 18px 16px;min-height:193px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:14px}.story-card{border:1px solid #35434a;border-radius:4px;background:rgba(255,255,255,.035);min-height:118px;padding:13px 10px;display:flex;gap:11px;align-items:center}.story-avatar{width:60px;height:60px;min-width:60px;border-radius:50%;display:grid;place-items:center;background:#263930;color:#a8f348}.story-avatar svg{width:29px}.story-card h3{font:900 13px/1 Impact,'Arial Narrow',sans-serif;margin:0 0 6px}.story-card p{font-size:11px;line-height:1.35;margin:0 0 8px;color:#d8dfe2}.story-card .under-link{font-size:9px}.final-cta{margin-top:8px;min-height:154px;background:linear-gradient(90deg,rgba(1,6,5,.75),rgba(1,6,5,.15) 72%,rgba(1,6,5,.75)),url('../images/ball-cta.png') center 52%/cover;display:flex;justify-content:space-between;align-items:center;padding:20px 5.4%;gap:30px}.final-cta h2{font-size:24px}.final-cta p{margin:4px 0 12px;font-size:13px}.final-left>div{display:flex;gap:20px}.final-steps{display:flex;gap:38px;align-items:center}.final-steps div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}.final-steps svg{width:28px;height:28px;stroke-width:2.5}.final-steps span{font:900 10px/1.05 'Arial Narrow',Arial,sans-serif}.site-footer{background:#010506;padding:17px 4.5% 18px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-main p{font-size:11px;margin:11px 0 0}.footer-main nav{display:flex;gap:23px}.footer-main nav a{font-size:10px;white-space:nowrap}.social-icons{display:flex;gap:16px;align-items:center}.social-icons svg{width:18px;height:18px}.x-symbol{font-size:19px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:23px;color:#b7bec1}.footer-bottom small,.footer-bottom a,.footer-bottom span{font-size:9px}.footer-bottom div{display:flex;gap:10px}
@media(max-width:1050px){.desktop-nav{gap:14px}.desktop-nav a{font-size:10px}.program-grid{gap:20px}.footer-main nav{gap:14px}.coach-image{right:34px;width:145px}.coach-right blockquote{max-width:180px}.coach-motto{font-size:16px}}
@media(max-width:850px){.menu-toggle{display:block}.header-book{margin-left:auto}.mobile-nav{display:grid;position:absolute;top:54px;left:0;right:0;padding:15px 5%;background:#040a0c;gap:0;box-shadow:0 10px 22px #000}.mobile-nav a{padding:11px 0;border-bottom:1px solid #26363b;font:800 13px 'Arial Narrow',Arial}.home-stack{width:92%}.finder-row{flex-direction:column}.finder-action{width:100%;flex-direction:row;justify-content:space-between}.finder-action .button{max-width:230px}.program-grid{gap:14px}.program-card img{height:120px}.heading-inline{display:block}.coach-panel{grid-template-columns:1fr;gap:15px}.coach-right{min-height:170px}.coach-right blockquote{max-width:55%}.coach-image{right:50px;width:170px;height:175px}.story-grid{gap:10px}.story-card{align-items:flex-start;flex-direction:column}.final-steps{gap:18px}.footer-main{align-items:flex-start;flex-wrap:wrap}.footer-main nav{order:3;width:100%;flex-wrap:wrap}.footer-bottom{flex-wrap:wrap}}
@media(max-width:650px){.hero-script{display:none}.hero-benefits{margin-top:250px}.finder-fields{grid-template-columns:repeat(2,1fr)}.program-grid,.story-grid{grid-template-columns:1fr}.program-card img{height:175px}.program-card p{min-height:0}.program-card{padding-bottom:12px;border-bottom:1px solid #2d3d43}.section-heading{align-items:flex-start}.section-heading .text-link{font-size:10px}.heading-inline p{white-space:normal}.coach-benefits{flex-wrap:wrap;justify-content:center;gap:22px}.coach-benefits div{width:40%}.coach-right blockquote{max-width:48%}.final-cta{flex-direction:column;align-items:stretch;padding:25px 5%}.final-steps{justify-content:space-around}.footer-main nav{gap:12px}.footer-bottom{margin-top:20px}.story-card{flex-direction:row;align-items:center}.story-avatar{min-width:55px;width:55px;height:55px}}
@media(max-width:430px){.wordmark{min-width:115px;font-size:17px}.wordmark small{font-size:9px;letter-spacing:4px}.header-book{font-size:10px;padding:9px}.hero-benefits{gap:9px;margin-top:285px}.hero-benefits span{font-size:9px}.finder-fields{gap:9px}.coach-image{right:25px;width:135px}.coach-motto{display:none}.coach-right blockquote{max-width:52%}.final-left>div{gap:8px;flex-wrap:wrap}}

.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand>img{display:block;width:66px;height:66px;object-fit:contain;flex:none}.footer-brand .wordmark{width:max-content}.footer-brand p{margin-top:8px}@media(max-width:550px){.footer-brand>img{width:54px;height:54px}.footer-brand{gap:8px}}


/* subpages.css */
.subpage{min-height:calc(100vh - 190px);background:#05090b}.sub-hero{min-height:220px;background:linear-gradient(90deg,#020708 5%,rgba(2,7,8,.88) 45%,rgba(2,7,8,.45)),url('../images/training-hero.png') center 47%/cover;padding:45px max(5%,calc((100vw - 1280px)/2)) 30px}.sub-hero .eyebrow{color:#d7e0e3}.sub-hero h1{font-size:clamp(40px,5vw,66px);max-width:850px}.sub-hero p:last-child{font-size:16px;max-width:650px;line-height:1.4}.sub-content{width:90%;max-width:1180px;margin:auto;padding:26px 0 55px}.sub-content h2,.form-card h2,.form-success h2{font:900 27px/.98 Impact,'Arial Narrow',sans-serif;margin:0 0 12px}.sub-content p{line-height:1.5}.sub-program-grid{display:grid;gap:20px}.sub-program{display:grid;grid-template-columns:38% 1fr;gap:25px;align-items:center;background:#111b20;border:1px solid #314148;padding:15px;border-radius:4px;scroll-margin-top:65px}.sub-program img{width:100%;height:200px;object-fit:cover}.sub-program p{max-width:480px}.sub-program .button{margin-top:10px}.coach-detail{display:grid;grid-template-columns:1fr 260px;gap:40px;background:#101a1f;border:1px solid #34464e;padding:30px;align-items:center}.coach-detail p{max-width:650px}.coach-detail blockquote{max-width:650px;border-left:3px solid #a8f348;margin:25px 0;padding:8px 0 8px 20px;font-size:18px;line-height:1.4}.coach-detail cite{display:block;font-size:14px;font-style:normal;font-weight:700;margin-top:10px}.coach-detail img{width:260px;height:260px;object-fit:cover;filter:brightness(.75)}.empty-stories,.contact-block,.legal-block{max-width:800px;margin:auto;background:#111b20;border:1px solid #34464e;border-radius:4px;padding:32px;text-align:center}.empty-stories svg,.contact-block svg{color:#a8f348}.empty-stories p,.contact-block p{max-width:560px;margin:10px auto 24px}.parent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.parent-grid article{background:#111b20;border:1px solid #34464e;padding:24px}.parent-grid p{min-height:105px}.faq-list{max-width:900px;margin:auto}.faq-list details{background:#111b20;border:1px solid #34464e;margin-bottom:10px;padding:20px}.faq-list summary{cursor:pointer;font-weight:800;text-transform:uppercase}.faq-list details p{margin-bottom:0;color:#d3dce0}.legal-block{text-align:left}.legal-block a{color:#a8f348;text-decoration:underline}.booking-form{max-width:930px;margin:auto}.booking-progress{display:flex;gap:5px;margin-bottom:14px}.booking-progress span{flex:1;text-align:center;padding:10px 4px;background:#152024;color:#9eabb0;border-bottom:2px solid #314149;font-size:12px;text-transform:uppercase;font-weight:800}.booking-progress .current{border-color:#a8f348;color:white}.booking-progress .passed{color:#a8f348}.form-card{background:#111c21;border:1px solid #34464e;border-radius:4px;padding:28px;max-width:930px;margin:auto}.form-card>p{color:#cfdae0;margin:0 0 22px}.form-label{display:flex;flex-direction:column;gap:7px;margin:0 0 17px;font-size:13px;font-weight:800}.form-label>span{display:block}.form-label input,.form-label textarea,.dark-select{background:#f8fafb!important;color:#071013!important;border:1px solid #b9c4c7!important;border-radius:3px;min-height:40px;padding:8px 11px;font-size:14px;font-weight:400}.form-label textarea{resize:vertical;min-height:85px}.form-label input[type=file]{padding:8px;background:#10191d!important;color:#fff!important;border-color:#45555c!important}.dark-select{width:100%;height:40px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.form-actions .button{border:0;cursor:pointer}.form-actions .secondary{border:1px solid #a8f348}.form-error{background:#3a1719;color:#ffd3d3;border-left:3px solid #fc6b71;padding:10px;font-size:14px}.form-success{background:#111c21;border:1px solid #a8f348;border-radius:4px;padding:35px;text-align:center;max-width:750px;margin:20px auto}.form-success svg{color:#a8f348}.form-success p{max-width:600px;margin:10px auto}.notice-box{background:#172b20;border-left:3px solid #a8f348;padding:13px 16px;margin:20px 0;color:#dce6df}.review-list{display:grid;grid-template-columns:170px 1fr;gap:8px;border-top:1px solid #354850;padding-top:15px}.review-list dt{color:#aab9be}.review-list dd{margin:0;font-weight:700}.testimonial-form .check-label{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;margin:16px 0}.check-label input{accent-color:#a8f348;width:18px;height:18px;flex:none}.testimonial-form>.button{border:0;cursor:pointer;margin-top:16px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;opacity:0}
@media(max-width:750px){.sub-hero{padding:40px 5%;min-height:210px}.sub-content{width:92%}.sub-program{grid-template-columns:1fr}.sub-program img{height:200px}.coach-detail{grid-template-columns:1fr}.coach-detail img{width:100%;max-width:300px;height:260px}.parent-grid{grid-template-columns:1fr}.parent-grid p{min-height:0}.booking-progress{overflow-x:auto}.booking-progress span{min-width:100px}.form-grid{grid-template-columns:1fr}.form-card{padding:20px}}@media(max-width:500px){.sub-hero h1{font-size:42px}.sub-hero p:last-child{font-size:14px}.sub-content h2{font-size:25px}.form-actions{flex-wrap:wrap}.form-actions .button{flex:1}.review-list{grid-template-columns:1fr}.review-list dt{margin-top:7px}.coach-detail{padding:20px}}

.microsoft-bookings{max-width:1000px;margin:0 auto;background:#111b20;border:1px solid #34464e;border-radius:4px;padding:30px}.bookings-intro{display:flex;align-items:flex-start;gap:20px;margin-bottom:22px}.bookings-intro>svg{flex:none;color:#a8f348}.bookings-intro h2{margin-bottom:10px}.bookings-intro p{max-width:680px;margin:0;color:#d1dce0}.bookings-help{font-size:13px;color:#afbdc1}.bookings-frame{display:block;width:100%;min-height:760px;margin-top:16px;border:1px solid #34464e;background:#fff}.bookings-pending{background:#091115;border-left:3px solid #a8f348;padding:24px}.bookings-pending h3{font:900 22px Impact,'Arial Narrow',sans-serif;margin:0 0 8px}.bookings-pending p{max-width:580px;margin:0 0 20px;color:#d1dce0}@media(max-width:600px){.microsoft-bookings{padding:20px}.bookings-intro{gap:12px}.bookings-intro>svg{width:28px}.bookings-frame{min-height:650px}}


/* brand-theme.css */
:root {
  --brand-green: #0dbb48;
  --brand-yellow: #ffd400;
  --brand-red: #ed3040;
  --brand-orange: #ed7a28;
  --background: #020806;
  --foreground: #ffffff;
  --card: #0b1710;
  --card-foreground: #ffffff;
  --popover: #0b1710;
  --popover-foreground: #ffffff;
  --primary: #0dbb48;
  --primary-foreground: #ffffff;
  --secondary: #09150e;
  --secondary-foreground: #ffffff;
  --muted: #0b1710;
  --muted-foreground: #b9c8bc;
  --accent: #ffd400;
  --accent-foreground: #020806;
  --border: #334539;
  --ring: #ffd400;
}

body { background: #020806; }
:focus-visible { outline: 2px solid var(--brand-yellow); outline-offset: 3px; }

.site-header {
  background: #020806;
  border-bottom: 1px solid #344638;
}
.site-header::before,
.site-footer::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--brand-green) 0 34%, var(--brand-yellow) 34% 68%, var(--brand-red) 68%);
}
.wordmark small,
.ball-o { color: var(--brand-green); }
.desktop-nav a.active { border-color: var(--brand-yellow); }
.desktop-nav a:hover,
.mobile-nav a:hover { color: var(--brand-yellow); }
.mobile-nav { background: #07140d; }
.header-book,
.button.primary { background: var(--brand-green); color: #071008; }
.header-book:hover,
.button.primary:hover { background: #10d055; }
.button.secondary { border-color: var(--brand-yellow); background: rgba(0, 8, 4, .7); }
.button.secondary:hover { background: rgba(255, 212, 0, .12); }
.green-rule { width: 205px; height: 3px; background: linear-gradient(90deg, var(--brand-green), var(--brand-yellow) 58%, var(--brand-red)); }

.hero {
  background-image: radial-gradient(ellipse at 78% 8%, rgba(217, 155, 29, .25), transparent 43%), linear-gradient(90deg, #020806 0%, rgba(2, 8, 6, .96) 22%, rgba(2, 8, 6, .42) 66%, rgba(2, 8, 6, .18)), url('../images/training-hero.png');
  border-bottom: 1px solid #344638;
}
.hero .eyebrow { font-weight: 800; letter-spacing: 3.5px; }
.hero h1 span {
  background: linear-gradient(90deg, var(--brand-green), var(--brand-yellow) 48%, var(--brand-orange) 75%, var(--brand-red));
  background-clip: text;
  color: transparent;
}
.hero-benefits svg { fill: var(--brand-yellow); stroke: var(--brand-yellow); }
.hero-benefits span { letter-spacing: .4px; }

.panel {
  background: linear-gradient(130deg, #0b1710, #06110b 70%);
  border: 1px solid #344637;
  border-top-color: #9c881b;
  border-radius: 0;
  box-shadow: none;
}
.section-heading h2,
.coach-panel h2,
.final-cta h2 { letter-spacing: .6px; }
.programs::before,
.stories::before,
.coach-left::before {
  display: block;
  color: var(--brand-yellow);
  font: 900 10px/1.15 Arial, sans-serif;
  letter-spacing: 1.2px;
  margin-bottom: 5px;
}
.programs::before { content: "TRAINING OPTIONS"; }
.stories::before { content: "PLAYER DEVELOPMENT"; }
.coach-left::before { content: "THE COACH"; }
.finder-fields { border: 1px solid #d3d8d1; }
.finder-result { background: #122719; border-left-color: var(--brand-yellow); }
.finder-result a { color: var(--brand-yellow); }
.program-grid { gap: 13px; }
.program-card {
  background: #06110b;
  border: 1px solid #2f4135;
  padding: 8px;
}
.program-card img { border-color: #374a3c; border-radius: 0; }
.program-card h3 { color: #fff; }
.text-link,
.under-link { border-color: var(--brand-yellow); }
.text-link:hover,
.under-link:hover { color: var(--brand-yellow); }
.coach-panel { border-top-color: var(--brand-green); }
.coach-benefits svg { fill: #f5f8f4; }
.coach-right cite { color: var(--brand-yellow); }
.story-card { background: #08160e; border-color: #354438; border-radius: 0; }
.story-avatar { background: #15381f; color: var(--brand-yellow); }
.final-cta {
  background-image: linear-gradient(90deg, rgba(0, 9, 4, .86), rgba(0, 9, 4, .25) 72%, rgba(0, 9, 4, .8)), url('../images/ball-cta.png');
  border-top: 2px solid var(--brand-yellow);
  border-bottom: 1px solid #354638;
}
.final-steps svg { color: var(--brand-yellow); }
.site-footer { position: relative; background: #020806; padding-top: 21px; }
.footer-main nav a:hover,
.footer-bottom a:hover { color: var(--brand-yellow); }

.subpage { background: #020806; }
.sub-hero {
  background-image: linear-gradient(90deg, #020806 0%, rgba(2, 8, 6, .92) 42%, rgba(2, 8, 6, .42)), url('../images/training-hero.png');
  border-bottom: 1px solid #605b26;
}
.sub-hero .eyebrow { color: var(--brand-yellow); font-weight: 800; letter-spacing: 2px; }
.sub-program,
.coach-detail,
.parent-grid article,
.faq-list details,
.empty-stories,
.contact-block,
.legal-block,
.form-card,
.form-success,
.microsoft-bookings {
  background: #0b1710;
  border-color: #344638;
  border-radius: 0;
}
.sub-program img { border: 1px solid #344638; }
.coach-detail blockquote { border-left-color: var(--brand-yellow); }
.empty-stories svg,
.contact-block svg,
.form-success svg,
.bookings-intro > svg { color: var(--brand-green); }
.legal-block a { color: var(--brand-yellow); }
.notice-box { background: #102b17; border-left-color: var(--brand-yellow); }
.bookings-pending { background: #06110b; border-left-color: var(--brand-yellow); }
.form-label input,
.form-label textarea,
.dark-select { border-color: #aec3b2 !important; }
.check-label input { accent-color: var(--brand-green); }

@media (max-width: 750px) {
  .program-grid { gap: 10px; }
  .program-card { padding: 7px; }
}


/* inner-pages.css */
.sub-hero > p:not(.eyebrow) { max-width: 680px; font-size: 16px; line-height: 1.45; }
.sub-hero-action { margin-top: 14px; }
.inner-page-content { padding-top: 34px; padding-bottom: 60px; }
.inner-page-content h2 { font: 900 clamp(26px, 3.1vw, 39px)/1 Impact, 'Arial Narrow', sans-serif; letter-spacing: .35px; margin: 0 0 14px; }
.inner-page-content h3 { font: 900 19px/1.1 Impact, 'Arial Narrow', sans-serif; letter-spacing: .35px; margin: 0 0 10px; }
.inner-page-content p { color: #d8e1d8; }
.page-kicker { color: var(--brand-yellow) !important; font: 900 11px/1.2 Arial, sans-serif; letter-spacing: 1.7px; margin: 0 0 10px; }
.page-intro-row { display: flex; justify-content: space-between; align-items: end; gap: 28px; margin-bottom: 22px; }
.page-intro-row > p { max-width: 430px; margin: 0 0 2px; }
.inner-section { margin: 42px 0; }
.inner-section > h2 { margin-bottom: 20px; }

.program-detail-list { display: grid; gap: 16px; }
.program-detail-card { display: grid; grid-template-columns: 40% 1fr; min-height: 300px; background: #0a1710; border: 1px solid #374639; scroll-margin-top: 72px; }
.program-detail-card > img { display: block; width: 100%; height: 100%; min-height: 300px; object-fit: cover; }
.program-detail-copy { padding: 30px 34px; align-self: center; }
.program-detail-copy > p { max-width: 600px; margin: 0 0 16px; }
.program-detail-copy ul { list-style: none; padding: 0; margin: 0 0 22px; display: grid; gap: 9px; }
.program-detail-copy li { display: flex; gap: 9px; align-items: flex-start; color: #edf3ed; font-size: 14px; }
.program-detail-copy li svg { flex: none; color: var(--brand-green); }
.program-detail-copy .under-link { font-size: 12px; }

.info-note { background: #102619; border-left: 3px solid var(--brand-yellow); padding: 16px 20px; color: #e1e9e1; margin: 22px 0; line-height: 1.5; }
.info-note a { color: var(--brand-yellow); text-decoration: underline; }
.inner-next-step { margin-top: 42px; min-height: 160px; padding: 26px 30px; background: linear-gradient(90deg, rgba(2, 11, 5, .9), rgba(2, 11, 5, .55)), url('../images/ball-cta.png') center/cover; border-top: 2px solid var(--brand-yellow); display: flex; justify-content: space-between; gap: 25px; align-items: center; }
.inner-next-step h2 { max-width: 530px; }
.inner-next-step p:last-child { margin: 0; max-width: 590px; }
.inner-next-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; }
.inner-next-actions .button { white-space: nowrap; }

.coach-profile { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 38px; align-items: center; background: #0a1710; border: 1px solid #374639; padding: 30px; }
.coach-profile-copy > p:not(.page-kicker) { max-width: 700px; }
.coach-profile blockquote { max-width: 650px; border-left: 3px solid var(--brand-yellow); margin: 26px 0 0; padding: 4px 0 4px 20px; font-size: 18px; line-height: 1.45; }
.coach-profile cite { display: block; color: var(--brand-yellow); font-size: 13px; font-weight: 800; font-style: normal; margin-top: 12px; }
.coach-profile > img { width: 300px; height: 300px; object-fit: cover; border: 1px solid #3b493c; }
.feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.feature-grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.feature-card { background: #0a1710; border: 1px solid #344638; padding: 23px; min-height: 170px; }
.feature-card svg { color: var(--brand-yellow); margin-bottom: 16px; }
.feature-card p { font-size: 14px; margin: 0; }

.step-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; margin-bottom: 27px; }
.step-card { position: relative; background: #0a1710; border: 1px solid #344638; padding: 25px; min-height: 214px; }
.step-card > svg { color: var(--brand-green); display: block; margin: 8px 0 19px; }
.step-card .step-number { position: absolute; right: 22px; top: 20px; font: 900 30px Impact, 'Arial Narrow', sans-serif; color: #536a56; }
.step-card p { font-size: 14px; margin: 0; }
.step-card .under-link { margin-top: 18px; }
.microsoft-bookings { max-width: none; margin: 28px 0 0; }

.story-empty-state { display: flex; min-height: 300px; justify-content: space-between; align-items: center; gap: 20px; background: linear-gradient(90deg, #0a1710 0%, rgba(10, 23, 16, .94) 55%, rgba(10, 23, 16, .5)), url('../images/ball-cta.png') center/cover; border: 1px solid #374639; padding: 34px; overflow: hidden; }
.story-empty-state > div:first-child { max-width: 620px; }
.story-empty-state p:not(.page-kicker) { max-width: 570px; margin-bottom: 24px; }
.story-quote-mark { font: 900 270px/.7 Georgia, serif; color: rgba(255, 212, 0, .18); align-self: center; }

.parent-prep { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; background: #0a1710; border-left: 3px solid var(--brand-green); padding: 30px; }
.parent-prep p:last-child { max-width: 540px; margin-bottom: 0; }
.parent-prep ul { margin: 0; padding-left: 22px; display: grid; align-content: center; gap: 12px; color: #edf3ed; }
.parent-prep li::marker { color: var(--brand-yellow); }

.faq-groups { max-width: 980px; margin: 0 auto; }
.faq-group { margin-bottom: 31px; }
.faq-group .page-kicker { margin-bottom: 14px; }
.faq-list { max-width: none; }
.faq-list details { background: #0a1710; border: 1px solid #344638; margin-bottom: 8px; padding: 19px 22px; }
.faq-list details[open] { border-color: #a38d21; }
.faq-list summary { display: list-item; font-size: 15px; }
.faq-list details p { color: #d7e1d8; max-width: 760px; margin: 13px 0 0; }

.contact-layout { display: grid; grid-template-columns: 1.3fr .8fr; gap: 18px; }
.contact-primary, .contact-aside { background: #0a1710; border: 1px solid #344638; padding: 32px; }
.contact-primary > svg { color: var(--brand-green); margin-bottom: 18px; }
.contact-primary > p:not(.page-kicker) { max-width: 600px; }
.contact-email { display: block; color: var(--brand-yellow); font-size: 19px; font-weight: 700; margin: 16px 0 22px; overflow-wrap: anywhere; }
.contact-aside ul { list-style: none; padding: 0; display: grid; gap: 15px; margin: 20px 0; }
.contact-aside li { display: flex; gap: 10px; align-items: flex-start; color: #e5eee5; font-size: 14px; }
.contact-aside li svg { color: var(--brand-green); flex: none; }
.contact-divider { height: 1px; background: #3c4d3e; margin: 24px 0; }
.contact-aside p:not(.page-kicker) { font-size: 14px; }

.testimonial-intro { max-width: 930px; margin: 0 auto 22px; display: grid; grid-template-columns: 1.2fr .8fr; gap: 22px; align-items: end; }
.testimonial-intro .info-note { margin: 0; }
.testimonial-intro p:not(.page-kicker) { margin-bottom: 0; }
.legal-block { max-width: 850px; }
.legal-block h2:not(:first-child) { margin-top: 30px; }

@media (max-width: 900px) {
  .feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .coach-profile { grid-template-columns: 1fr 240px; gap: 22px; }
  .coach-profile > img { width: 240px; height: 240px; }
  .inner-next-step { display: block; }
  .inner-next-actions { justify-content: flex-start; margin-top: 20px; }
}
@media (max-width: 720px) {
  .page-intro-row, .program-detail-card, .coach-profile, .parent-prep, .contact-layout, .testimonial-intro { display: block; }
  .page-intro-row > p { margin-top: 12px; }
  .program-detail-card > img { height: 210px; min-height: 0; }
  .program-detail-copy { padding: 23px; }
  .coach-profile > img { display: block; margin-top: 25px; width: min(100%, 300px); height: auto; aspect-ratio: 1; }
  .parent-prep ul { margin-top: 22px; }
  .contact-aside { margin-top: 16px; }
  .testimonial-intro .info-note { margin-top: 18px; }
  .step-grid { grid-template-columns: 1fr; }
  .step-card { min-height: 0; }
}
@media (max-width: 550px) {
  .inner-page-content { width: 92%; padding-top: 22px; }
  .feature-grid, .feature-grid.three { grid-template-columns: 1fr; }
  .story-empty-state { padding: 23px; min-height: 0; }
  .story-quote-mark { display: none; }
  .inner-next-step { padding: 22px; }
  .inner-next-actions .button { width: 100%; }
  .contact-primary, .contact-aside, .parent-prep { padding: 22px; }
}


/* HTML edition: native form controls and responsive navigation. */
.mobile-nav[hidden], .finder-result[hidden], .form-error[hidden] { display: none !important; }
.menu-toggle { color: #fff; cursor: pointer; font-size: 24px; line-height: 1; border: 0; padding: 4px 8px; }
.finder-row { margin-bottom: 0; }
.finder-select { display: block; width: 100%; min-width: 0; padding: 4px 8px; appearance: auto; background: #fff; color: #071013; border: 1px solid #d2dbe0; border-radius: 3px; cursor: pointer; }
.finder-select:focus-visible, .dark-select:focus-visible { outline: 2px solid var(--brand-yellow); outline-offset: 2px; }
.dark-select { appearance: auto; cursor: pointer; }
.form-label input, .form-label textarea, .form-label select { width: 100%; }
.testimonial-form .form-error:not([hidden]) { display: block; }
.testimonial-form button:disabled { opacity: .6; cursor: wait; }
.program-card img, .sub-program img { object-fit: cover; }
.sub-hero > p:not(.eyebrow) { max-width: 680px; }
.sub-hero > .button { margin-top: 14px; }
.hero-benefits svg, .coach-benefits svg, .final-steps svg { width: 24px; height: 24px; }
.coach-benefits svg { width: 28px; height: 28px; }
.final-steps svg { width: 28px; height: 28px; }
.story-avatar svg { width: 29px; height: 29px; }
.program-detail-copy li svg { width: 17px; height: 17px; }
.feature-card svg, .step-card svg { width: 27px; height: 27px; }
.contact-primary > svg { width: 34px; height: 34px; }
.form-success > svg { width: 35px; height: 35px; }
.footer-brand > img { width: 66px; height: 66px; }
@media (max-width: 850px) { .mobile-nav:not([hidden]) { display: grid; } }
@media (max-width: 550px) { .footer-brand > img { width: 54px; height: 54px; } }
