@font-face{font-family:Inter;src:url('assets/Inter-Variable.woff2') format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:Newsreader;src:url('assets/Newsreader-Variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--navy:#091629;--panel:#14263b;--gold:#d7b75c;--paper:#f3efe5;--muted:#b4c0cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--navy);color:var(--paper);font:15px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Newsreader,Georgia,serif;font-weight:450;line-height:1.02}h2{font-size:clamp(40px,4.5vw,66px);letter-spacing:-1.7px}h3{font-size:35px;letter-spacing:-.7px}em{font-weight:400;color:var(--gold)}img{display:block;width:100%;height:100%;object-fit:cover}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:fixed;top:-100px;padding:15px;background:var(--gold);color:var(--navy);z-index:100}.skip:focus{top:8px}.topline{padding:9px 5%;border-bottom:1px solid #ffffff20;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.4px;color:var(--muted)}header{display:flex;align-items:center;gap:30px;justify-content:space-between;padding:19px 5%;position:sticky;top:0;z-index:20;background:#091629f5;border-bottom:1px solid #ffffff20}.brand{font:29px/1 Newsreader,Georgia,serif;display:flex;gap:14px;align-items:center;white-space:nowrap}.brand small{display:block;font:11px/1.5 Inter,sans-serif;letter-spacing:2px;margin-top:8px}.brand-mark{border:1px solid var(--gold);font-size:32px;color:var(--gold);width:44px;height:48px;display:grid;place-items:center;position:relative}.brand-mark span{position:absolute;right:2px;bottom:1px;font-size:19px}nav{display:flex;gap:25px;font-size:12px}nav a:hover,.text-link:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--gold);color:var(--navy);padding:17px 23px;font-size:13px;font-weight:650;min-height:48px;border:1px solid var(--gold);transition:background .2s}.button:hover{background:#ecd591}.compact{padding:12px 17px}.text-link{font-size:13px;border-bottom:1px solid #ffffff55;padding-block:8px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px}.eyebrow{display:block;font:11px/1.6 ui-monospace,monospace;letter-spacing:1.5px;color:var(--gold);margin-bottom:24px}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1500px;margin:auto;padding:55px 5% 65px;gap:6%}.hero-copy{padding:30px 0}.hero h1{font-size:clamp(65px,6.8vw,104px);letter-spacing:-4px;line-height:.96}.hero-copy>p{max-width:435px;margin-top:29px;color:var(--muted);font-size:17px}.hero-services{display:flex;flex-wrap:wrap;gap:17px;font:11px ui-monospace,monospace;letter-spacing:.7px;color:#aab9c6;border-top:1px solid #ffffff25;margin-top:40px;padding-top:23px}.hero-image{position:relative;min-height:620px;border:1px solid #ffffff25;overflow:hidden}.hero-image img{position:absolute;inset:0;object-position:50% 45%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#06121af5,transparent 45%,#07152466)}.photo-top,.photo-bottom{position:absolute;z-index:1;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between}.photo-top{top:22px;font:11px ui-monospace,monospace;letter-spacing:1px}.photo-bottom{bottom:26px;gap:15px}.photo-bottom>div{font:27px Newsreader,Georgia,serif;flex:1}.photo-bottom small{display:block;font:11px Inter,sans-serif;margin-top:10px;color:#bfccd4}.photo-bottom>a{border:1px solid #ffffff55;padding:7px 15px}.location-dot{height:8px;width:8px;border-radius:50%;background:var(--gold)}.promise-bar{background:var(--paper);color:var(--navy);display:flex;justify-content:space-between;align-items:center;gap:30px;padding:35px 5%}.promise-bar>span{font:11px/1.5 ui-monospace,monospace;letter-spacing:1px}.promise-bar p{font:31px Newsreader,Georgia,serif}.promise-bar i{color:#77642e;margin-left:14px}.section{max-width:1500px;margin:auto;padding:100px 5%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:46px}.section-head>p{max-width:360px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service{position:relative;padding:35px 28px;background:var(--panel);border:1px solid #ffffff22;display:flex;flex-direction:column}.service .eyebrow{font-size:11px;letter-spacing:.9px;margin:15px 0 27px}.number{color:#66798a;font:13px ui-monospace,monospace}.service h3{font-size:37px;line-height:1.08}.service>p{color:var(--muted);font-size:14px;margin-top:20px}.service ul{padding:20px 0 20px 17px;color:#c5d0da;font-size:12px;line-height:2}.service li::marker{color:var(--gold)}.price{margin-top:auto;border-top:1px solid #ffffff22;padding-top:25px}.price strong{display:block;font:32px Newsreader,Georgia,serif}.price span{font-size:11px;color:var(--muted)}.service-link{display:flex;justify-content:space-between;margin-top:25px;padding-top:20px;border-top:1px solid #ffffff22;font-size:13px;color:var(--gold)}.service.accent{border-top:3px solid var(--gold)}.price-note{font-size:11px;color:#aab9c6;margin-top:20px}.lab-section{display:grid;grid-template-columns:1fr 1fr;background:var(--paper);color:var(--navy)}.lab-photo{position:relative;min-height:650px}.lab-photo img{position:absolute;inset:0}.image-caption{position:absolute;bottom:24px;left:24px;background:var(--navy);color:var(--paper);padding:12px;font:11px ui-monospace,monospace;letter-spacing:1px}.lab-copy{padding:70px 10%}.lab-copy h2{font-size:clamp(38px,3.6vw,54px)}.lab-copy em,.lab-copy .eyebrow{color:#816820}.lab-copy>p{margin-top:25px;color:#52606a}.tech-row{display:flex;gap:20px;padding:23px 0;border-bottom:1px solid #10213826}.tech-row>span{font:11px ui-monospace,monospace;color:#826820;padding-top:5px}.tech-row h3{font-size:28px}.tech-row p{font-size:13px;margin-top:8px;color:#52606a}.lab-copy .text-link{display:inline-block;margin-top:25px;border-color:#10213855}.first-section{padding-bottom:90px}.finder{display:grid;grid-template-columns:1fr 1fr;gap:50px}.choices button{display:flex;align-items:center;gap:20px;background:transparent;border:0;border-bottom:1px solid #ffffff28;width:100%;color:#c9d3dc;text-align:left;min-height:85px;padding:20px}.choices button>span:first-child{color:var(--gold);font:11px ui-monospace,monospace}.choices button>span:last-child{margin-left:auto}.choices button[aria-pressed=true]{background:var(--panel);border-left:3px solid var(--gold);padding-left:17px;color:white}.recommendation{background:var(--panel);padding:38px;min-height:370px;border-top:2px solid var(--gold)}.recommendation h3{font-size:39px;line-height:1.1}.recommendation p{color:var(--muted);margin-top:18px;font-size:14px}.recommendation .button{margin-top:25px}.recommendation small{display:block;margin-top:20px;color:#b4c0cb;font-size:12px}.recommendation small a{text-decoration:underline}.team-band{padding:65px 5%;background:#1c3040;display:grid;grid-template-columns:1fr 1fr;gap:8%;border-block:1px solid #ffffff25}.team-band h2{font-size:53px}.team-band>div>p{color:#c0ccd5}.team-band small{display:block;color:#afbfcc;font-size:11px;margin-top:25px}.visit-section{display:grid;grid-template-columns:1fr 1fr;gap:8%}address{font-style:normal;font-size:21px;line-height:1.6;margin-top:30px}.visit-section p{color:var(--muted);margin-top:12px}.email{display:inline-block;margin-top:23px;color:#c8d3dc}.faq details{border-bottom:1px solid #ffffff25;padding:20px 0}.faq summary{cursor:pointer;font-size:15px;padding-right:20px}.faq details p{font-size:13px;padding-bottom:10px}.faq details a{text-decoration:underline;font-size:13px}.closing{text-align:center;padding:80px 24px;background:var(--gold);color:var(--navy)}.closing .eyebrow{color:#4d421e}.closing h2{font-size:clamp(55px,7vw,90px)}.closing .button{background:var(--navy);color:var(--paper);margin-top:30px;border-color:var(--navy)}.closing p{font-size:12px;margin-top:20px}footer{padding:55px 5% 25px}.footer-main{display:flex;justify-content:space-between;gap:30px}.footer-main>.brand{display:block;font-size:28px}.footer-main>div{display:flex;flex-direction:column;gap:12px;font-size:12px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:25px;margin-top:35px;border-top:1px solid #ffffff25;font-size:11px;color:#97aabc}.mobile-menu,.mobile-book{display:none}.lab-section :focus-visible,.closing :focus-visible{outline-color:#715612}
@media(min-width:1600px){.lab-section,.team-band,.promise-bar,header,.topline,footer{padding-inline:max(5%,calc((100vw - 1350px)/2))}.lab-section{padding-inline:0}}
@media(max-width:1050px){header{gap:15px}header nav{gap:15px}.brand{font-size:24px}.hero{gap:30px}.hero h1{font-size:76px}.hero-image{min-height:560px}.hero .actions{gap:16px}.service{padding:28px 20px}.service h3{font-size:32px}.promise-bar>span:last-child{display:none}.lab-copy{padding:55px 8%}.finder{gap:25px}.recommendation{padding:28px}.team-band h2{font-size:44px}}
@media(max-width:760px){html{scroll-padding-top:85px}.topline{font-size:11px;letter-spacing:.2px}.topline a{font-size:11px}header{padding:15px 5%}header>nav,header>.button{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;padding:10px;font-size:13px}.mobile-menu nav{position:absolute;right:0;top:48px;display:flex;flex-direction:column;width:220px;padding:23px;background:var(--panel);border:1px solid #ffffff33}.hero{grid-template-columns:1fr;padding-top:30px;gap:30px;padding-bottom:35px}.hero-copy{padding:0}.hero h1{font-size:74px;letter-spacing:-3px}.hero .eyebrow{margin-bottom:24px}.hero-copy>p{font-size:16px;max-width:490px}.hero-services{margin-top:28px;font-size:11px}.hero-image{min-height:440px}.hero-image img{object-position:50% 42%}.photo-top{font-size:11px}.promise-bar{padding-block:27px;display:block}.promise-bar p{font-size:28px;margin-top:13px;line-height:1.2}.promise-bar i{display:block;margin:5px 0 0}.section{padding-block:60px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:24px}.service-grid{grid-template-columns:1fr}.service{padding:28px}.service h3 br{display:none}.service h3{font-size:37px}.service .eyebrow{margin:12px 0 20px}.service ul{margin-bottom:0}.lab-section{grid-template-columns:1fr}.lab-photo{min-height:400px}.lab-copy{padding:45px 6%}.finder{grid-template-columns:1fr;gap:25px}.choices button{min-height:65px;font-size:13px;gap:14px}.recommendation{min-height:0;padding:28px}.team-band{grid-template-columns:1fr;gap:28px;padding-block:45px}.team-band h2{font-size:44px}.visit-section{grid-template-columns:1fr;gap:45px}.closing{padding-block:60px}.footer-main{flex-wrap:wrap}.footer-main>.brand{width:100%}.footer-bottom{flex-direction:column;font-size:11px}footer{padding-bottom:100px}.mobile-book{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#091629f8;border-top:1px solid #ffffff35;align-items:center;justify-content:space-between;gap:12px;padding:12px 5% max(12px,env(safe-area-inset-bottom));font-size:11px}.mobile-book a{padding:12px 15px;background:var(--gold);color:var(--navy);font-size:12px;font-weight:600}}
@media(max-width:360px){.hero h1{font-size:64px}.brand{font-size:22px}.brand-mark{width:36px;height:42px}.photo-top{gap:20px}.photo-bottom>div{font-size:23px}.service{padding:25px}.topline{letter-spacing:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Photo-free visual direction: original vector artwork and typography. */
.hero-art { background: radial-gradient(ellipse at 65% 35%, #29475a 0, #14283b 48%, #0d1d30 100%); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 55px 25px 65px; }
.hero-art:after { display: none; }
.hero-art .photo-top { font-size: 11px; color: #bac8d2; }
.baseball-art { display: block; width: min(100%, 420px); height: auto; }
.art-statement { text-align: center; font: 400 39px/1.1 Newsreader, Georgia, serif; letter-spacing: -.7px; margin-top: -10px; }
.art-footer { position: absolute; bottom: 20px; left: 25px; right: 25px; display: flex; justify-content: space-between; align-items: center; gap: 16px; color: #b5c6d1; font: 11px/1.5 ui-monospace, monospace; letter-spacing: .8px; }
.art-footer a { padding: 10px 16px; border: 1px solid #ffffff35; font-size: 19px; }
.training-graphic { padding: 70px 10%; background: #172c3e; color: var(--paper); display: flex; flex-direction: column; justify-content: center; }
.training-graphic h3 { font-size: clamp(55px, 5.5vw, 80px); line-height: .98; letter-spacing: -2px; margin-bottom: 40px; }
.process-line { display: flex; gap: 20px; padding: 22px 0; border-top: 1px solid #ffffff25; }
.process-line > span { font: 11px/1.6 ui-monospace, monospace; color: var(--gold); padding-top: 4px; }
.process-line strong { font-size: 15px; font-weight: 500; }
.process-line p { font-size: 12px; color: #b4c3cf; margin-top: 5px; }
.graphic-caption { font: 11px/1.5 ui-monospace, monospace; color: #a3b6c5; letter-spacing: 1px; margin-top: 25px; }
@media (max-width: 760px) { .hero-art { min-height: 520px; padding: 45px 20px 80px; } .baseball-art { max-width: 330px; } .art-statement { font-size: 35px; } .training-graphic { min-height: 0; padding: 45px 6%; } .training-graphic h3 { font-size: 64px; margin-bottom: 30px; } }
@media (max-width: 360px) { .hero-art .photo-top { font-size: 11px; } .art-footer { font-size: 11px; } .art-statement { font-size: 31px; } }

/* Flagship art direction — campaign hero, editorial services, interactive lab. */
.flagship-hero { position:relative; display:block; max-width:none; min-height:780px; padding:80px max(6%,calc((100vw - 1280px)/2)) 120px; overflow:hidden; background:#030d18; isolation:isolate; }
.flagship-hero .campaign-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:65% 50%; z-index:-3; }
.hero-shade { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,#05101bec 0%,#061222ab 30%,#06122205 72%),linear-gradient(0deg,#061222e8,transparent 30%); }
.flagship-hero .hero-copy { padding:0; max-width:680px; }
.flagship-hero h1 { font-size:clamp(82px,7.5vw,120px); line-height:.93; letter-spacing:-4.5px; }
.flagship-hero .eyebrow { display:flex; gap:12px; align-items:center; font-size:11px; letter-spacing:1.2px; margin-bottom:34px; }
.gold-dot { display:inline-block; width:6px; height:6px; background:var(--gold); border-radius:50%; flex-shrink:0; }
.flagship-hero .hero-copy>p { max-width:400px; font-size:16px; margin-top:30px; }
.flagship-hero .actions { margin-top:30px; }
.hero-side-note { position:absolute; right:5%; bottom:155px; display:flex; flex-direction:column; gap:8px; font:11px/1.5 ui-monospace,monospace; color:#e7ddbf; letter-spacing:1px; border-left:1px solid var(--gold); padding-left:20px; }
.hero-bottomline { position:absolute; bottom:26px; left:6%; right:6%; border-top:1px solid #ffffff30; padding-top:22px; display:flex; justify-content:space-between; align-items:center; gap:20px; font:11px/1.5 ui-monospace,monospace; color:#c2cbd2; letter-spacing:1px; }
.hero-bottomline a { display:flex; gap:22px; align-items:center; }
.hero-bottomline a span { color:var(--gold); font-size:20px; }
.hero-bottomline .campaign-caption { font-size:11px; color:#9aaab7; }
.promise-bar { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:0 6%; }
.promise-bar>a { padding:28px 30px; border-right:1px solid #12283c22; display:grid; grid-template-columns:1fr auto; gap:10px; }
.promise-bar>a:first-child { padding-left:0; }
.promise-bar>a:last-child { border:0; }
.promise-bar a>span { grid-column:1/-1; font:11px ui-monospace,monospace; color:#746335; letter-spacing:1px; }
.promise-bar strong { font:29px/1.1 Newsreader,Georgia,serif; font-weight:450; }
.promise-bar b { font-size:20px; font-weight:400; color:#806725; }
.promise-bar>a:hover strong { color:#806725; }
#train { background:var(--paper); color:var(--navy); max-width:none; padding:95px max(6%,calc((100vw - 1280px)/2)); }
#train .section-head .eyebrow { color:#806725; }
#train h2 em { color:#897135; }
#train .section-head>p { color:#58636d; }
.service-grid { display:block; border-top:1px solid #10213835; }
.service { display:grid; grid-template-columns:45px 180px minmax(0,1fr) 220px; grid-template-areas:'number art label price' 'number art title price' 'number art body link' 'number art features link'; column-gap:32px; row-gap:0; padding:42px 0; border:0; border-bottom:1px solid #10213835; background:transparent; align-items:start; }
.service.accent { border-top:0; }
.service .number { grid-area:number; padding-top:3px; color:#826a28; }
.service-sketch { grid-area:art; width:100%; height:170px; align-self:center; stroke:#607787; stroke-width:1; }
.service-sketch .gold-fill { fill:#c5a245; stroke:none; }
.service-sketch .gold-stroke { stroke:#997a27; stroke-width:2; }
.service .eyebrow { grid-area:label; margin:0 0 12px; color:#7c6426; font-size:11px; }
.service h3 { grid-area:title; font-size:35px; line-height:1.05; }
.service h3 br { display:none; }
.service>p { grid-area:body; color:#56636e; font-size:14px; margin-top:15px; max-width:470px; }
.service ul { grid-area:features; color:#53616c; padding:10px 0 0; margin:0; list-style:none; font-size:12px; line-height:1.9; }
.service ul li:before { content:'↳'; color:#806725; margin-right:9px; }
.service .price { grid-area:price; margin-top:0; border:0; padding:15px 0 20px 23px; border-left:1px solid #10213825; }
.service .price strong { font-size:40px; }
.service .price span { display:block; font-size:11px; color:#53616c; line-height:1.7; margin-top:5px; }
.service .service-link { grid-area:link; align-self:end; margin-top:15px; padding:16px 0 16px 23px; border:0; font-size:13px; color:#705619; }
#train .price-note { color:#626b70; max-width:620px; }
.lab-section { background:#0d2031; color:var(--paper); padding:70px 6%; gap:6%; align-items:center; }
.lab-copy { padding:15px 0; }
.lab-copy h2 { font-size:clamp(39px,3.8vw,58px); }
.lab-copy em,.lab-copy .eyebrow { color:var(--gold); }
.lab-copy>p,.tech-row p { color:#afc0ce; }
.tech-row { border-color:#ffffff22; }
.tech-row>span { color:var(--gold); }
.lab-copy .text-link { border-color:#ffffff55; }
.training-graphic { padding:28px; min-height:0; border:1px solid #ffffff28; background:radial-gradient(ellipse at 80% 45%,#28455366,transparent 70%),#112b3b; }
.graphic-heading { display:flex; justify-content:space-between; gap:15px; align-items:center; border-bottom:1px solid #ffffff25; padding-bottom:20px; }
.graphic-heading .eyebrow { margin:0; font-size:11px; }
.graphic-heading>span:last-child { color:#9db3c2; font:11px/1.5 ui-monospace,monospace; text-align:right; }
.focus-options { display:flex; gap:8px; margin-top:20px; }
.focus-options button { flex:1; padding:10px 7px; min-height:44px; color:#beccd7; background:transparent; border:1px solid #ffffff25; font-size:12px; }
.focus-options button[aria-pressed=true] { background:var(--gold); color:var(--navy); border-color:var(--gold); }
.focus-diagram { display:block; width:100%; margin:14px 0 20px; }
.training-graphic #focus-detail h3 { font-size:34px; line-height:1.07; letter-spacing:-.5px; margin:0 0 13px; }
#focus-detail { min-height:155px; }
#focus-detail .eyebrow { font-size:11px; margin-bottom:13px; }
#focus-detail p { font-size:13px; color:#b4c4d0; }
.training-graphic .graphic-caption { margin-top:15px; font-size:11px; letter-spacing:.6px; }
#first { padding-block:90px; }
.recommendation { background:linear-gradient(145deg,#213a4b,#12253a); border:1px solid #ffffff25; border-top:2px solid var(--gold); }
.team-band { position:relative; overflow:hidden; padding:65px 6%; background:#152a3a; grid-template-columns:.9fr 1.1fr; gap:9%; align-items:center; }
.team-art { position:relative; min-width:0; text-align:center; }
.team-art svg { display:block; width:100%; max-width:460px; margin:auto; }
.team-art>span { font:11px/1.5 ui-monospace,monospace; color:#a8bdc9; letter-spacing:1px; }
.team-band h2 { font-size:clamp(48px,5vw,72px); }
.team-copy>p { margin-top:25px; max-width:530px; }
.visit-section address { margin-top:0; font-size:18px; }
.closing { background:var(--paper); padding:90px 24px; position:relative; overflow:hidden; }
.closing:before,.closing:after { content:''; position:absolute; width:400px; height:400px; border:1px solid #9c843d35; border-radius:50%; top:50%; transform:translateY(-50%); pointer-events:none; }
.closing:before { left:-200px; }.closing:after { right:-200px; }
.closing h2 { font-size:clamp(60px,7vw,96px); line-height:1; }
.closing h2 em { color:#887032; }
.closing .eyebrow { color:#806725; }
.closing>* { position:relative; z-index:1; }
#train :is(a,button):focus-visible,.promise-bar a:focus-visible { outline-color:#765710; }
.lab-section :focus-visible { outline-color:var(--gold); }
.service { scroll-margin-top:20px; }
@media(max-width:1100px){.flagship-hero{min-height:760px}.flagship-hero h1{font-size:95px}.service{grid-template-columns:30px 130px minmax(0,1fr) 180px;column-gap:22px}.service h3{font-size:31px}.service .price strong{font-size:34px}.service .price,.service .service-link{padding-left:15px}.hero-side-note{right:5%;font-size:11px}.promise-bar strong{font-size:25px}.lab-section{gap:5%;padding-inline:5%}.training-graphic{padding:22px}.graphic-heading>span:last-child{display:none}}
@media(max-width:760px){.flagship-hero{padding:48px 6% 90px;min-height:880px}.flagship-hero .campaign-image{object-fit:cover;object-position:75% 100%;height:55%;top:auto;bottom:30px;opacity:.85}.hero-shade{background:linear-gradient(180deg,#05101b 0%,#05101b 36%,#05101b11 65%,#05101b99 100%)}.flagship-hero h1{font-size:clamp(70px,12vw,90px);line-height:.96;letter-spacing:-3px}.flagship-hero .hero-copy{max-width:540px}.flagship-hero .hero-copy>p{font-size:15px;margin-top:24px;max-width:360px}.flagship-hero .eyebrow{font-size:11px;letter-spacing:.6px;margin-bottom:25px}.flagship-hero .actions{gap:16px;margin-top:25px}.hero-side-note{display:none}.hero-bottomline{left:6%;right:6%;bottom:22px;flex-wrap:wrap;padding-top:14px;gap:12px;font-size:11px}.hero-bottomline .campaign-caption{display:none}.promise-bar{padding:0 6%;grid-template-columns:1fr}.promise-bar>a,.promise-bar>a:first-child{padding:20px 0;border-right:0;border-bottom:1px solid #10213822;grid-template-columns:100px 1fr auto;gap:12px;align-items:center}.promise-bar a>span{grid-column:auto;font-size:11px}.promise-bar strong{font-size:24px}.promise-bar b{font-size:19px}#train{padding:60px 6%}.service{grid-template-columns:40px minmax(0,1fr);grid-template-areas:'number label' 'art title' 'body body' 'features features' 'price link';gap:0 16px;padding:30px 0}.service-sketch{height:65px;align-self:start;margin-top:0}.service .number{align-self:start}.service h3{font-size:32px}.service .eyebrow{font-size:11px;margin-bottom:15px}.service>p{margin-top:20px;font-size:14px}.service ul{padding-top:12px}.service .price{margin-top:24px;padding:0;grid-column:1/-1;grid-row:5;max-width:52%;border:0}.service .price strong{font-size:33px}.service .price span{font-size:11px}.service .service-link{grid-row:5;grid-column:1/-1;justify-self:end;width:44%;align-self:center;padding:15px 0;gap:12px;font-size:12px}.lab-section{padding:45px 6%;gap:40px}.training-graphic{padding:23px}.lab-copy{padding:0}.lab-copy h2{font-size:43px}.training-graphic #focus-detail h3{font-size:33px}.training-graphic .graphic-caption{font-size:11px}#first{padding-block:60px}.team-band{grid-template-columns:1fr;padding:40px 6% 50px;gap:25px}.team-art svg{max-width:300px}.team-band h2{font-size:58px}.team-art>span{font-size:11px}.closing{padding-block:65px}.closing:before,.closing:after{width:250px;height:250px}.closing:before{left:-180px}.closing:after{right:-180px}}
@media(max-width:380px){.flagship-hero{min-height:890px}.flagship-hero h1{font-size:68px}.flagship-hero .actions{align-items:start;flex-direction:column;gap:12px}.flagship-hero .campaign-image{height:43%;object-position:75% 100%}.promise-bar>a{grid-template-columns:85px 1fr auto}.promise-bar strong{font-size:21px}.service .price strong{font-size:30px}}

/* Review refinement: clear service names, balanced visit information, usable small screens. */
.visit-section { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:7%; align-items:start; }
.visit-section h2 { font-size:clamp(40px,4vw,56px); line-height:1.06; letter-spacing:-1.3px; }
.visit-intro>p { margin-top:20px; }
.location-card { margin-top:30px; padding:28px; border:1px solid #ffffff26; border-top:2px solid var(--gold); background:linear-gradient(135deg,#192d40,#102033); }
.location-heading { display:flex; align-items:flex-start; gap:18px; }
.location-heading svg { width:27px; height:35px; flex-shrink:0; color:var(--gold); margin-top:3px; }
.location-heading .eyebrow { font-size:11px; letter-spacing:1px; margin:0 0 12px; }
.location-card address { font-size:18px; line-height:1.6; }
.location-card address span { color:var(--muted); font-size:15px; }
.directions-button { display:flex; margin-top:25px; width:100%; }
.location-contact { display:grid; grid-template-columns:1fr; gap:12px; margin-top:24px; }
.location-contact a { display:block; font-size:14px; overflow-wrap:anywhere; padding:5px 0; }
.location-contact a>span { display:block; font:11px/1.6 ui-monospace,monospace; letter-spacing:1px; color:#a9bdcc; margin-bottom:3px; }
.location-contact a:hover { color:var(--gold); }
.location-card .arrival-note { font-size:12px; margin-top:20px; padding-top:18px; border-top:1px solid #ffffff20; line-height:1.7; }
.faq h3 { font-size:36px; line-height:1.12; margin-bottom:23px; }
.faq summary { min-height:44px; padding-block:9px; }
.faq details { padding-block:11px; }
.faq details[open] summary { color:var(--gold); }
@media(max-width:900px) and (min-width:761px) { .visit-section { gap:5%; } .location-card { padding:22px; } .location-heading { gap:12px; } .location-card address { font-size:16px; } }
@media(max-width:760px) {
 .visit-section { grid-template-columns:minmax(0,1fr); gap:45px; padding-inline:6%; }
 .location-card { padding:24px; margin-top:25px; }
 .visit-section h2 { font-size:44px; }
 .service { grid-template-columns:40px minmax(0,1fr); grid-template-areas:'number label' 'art title' 'body body' 'features features' 'price price' 'link link'; }
 .service .price { grid-area:price; max-width:none; width:auto; padding-top:20px; border-top:1px solid #10213825; }
 .service .service-link { grid-area:link; justify-self:stretch; width:100%; margin-top:12px; padding:13px 16px; border:1px solid #10213835; min-height:48px; }
 .faq h3 { font-size:33px; }
}
@media(max-width:380px) { .location-card { padding:20px; } .location-heading { gap:12px; } .location-card address { font-size:16px; } .visit-section h2 { font-size:39px; } }

/* Fall 2026 additions — league announcement, league section, gaming & parties. */
.announce{background:var(--gold);color:var(--navy);display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:center;text-align:center;padding:12px 5%;font:13px/1.4 Inter,sans-serif;font-weight:600;letter-spacing:.1px}
.announce .tag{font:11px ui-monospace,monospace;letter-spacing:1.4px;background:var(--navy);color:var(--gold);padding:4px 9px}
.announce a{border-bottom:1px solid #09162966;font-weight:700;white-space:nowrap}
.announce a:hover{color:#4d421e}
.league .section-head>p{color:var(--muted)}
.league .section-head .eyebrow{display:flex;gap:10px;align-items:center}
.league-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.division{background:var(--panel);border:1px solid #ffffff22;border-top:3px solid var(--gold);padding:34px 30px;display:flex;flex-direction:column}
.division>.eyebrow{margin-bottom:14px}
.division h3{font-size:40px}
.division-time{margin-top:15px;font-size:17px;color:var(--paper)}
.division-time span{display:block;font-size:12px;color:var(--muted);margin-top:6px}
.division-dates{list-style:none;padding:22px 0 26px;margin:22px 0 26px;border-top:1px solid #ffffff1c;border-bottom:1px solid #ffffff1c;columns:2;column-gap:26px;font:12px/2.15 ui-monospace,monospace;color:#c5d0da}
.division .button{margin-top:auto;width:100%}
.glance{display:grid;grid-template-columns:repeat(6,1fr);margin-top:22px;border:1px solid #ffffff22;background:#0d2031}
.glance>div{padding:26px 20px;border-right:1px solid #ffffff18}
.glance>div:last-child{border-right:0}
.glance strong{display:block;font:33px/1.05 Newsreader,Georgia,serif;color:var(--paper)}
.glance span{display:block;font-size:11px;color:var(--muted);margin-top:9px;line-height:1.5}
.league-rules{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
.league-rules details{border-bottom:1px solid #ffffff22;padding:16px 0}
.league-rules summary{cursor:pointer;font-size:15px;min-height:44px;padding-block:8px;padding-right:20px}
.league-rules details[open] summary{color:var(--gold)}
.league-rules p{font-size:13px;color:var(--muted);line-height:1.7;padding:4px 0 8px}
.league-rules ul{margin:0;padding:4px 0 6px 18px;font-size:13px;color:#c5d0da;line-height:1.95}
.league-rules li::marker{color:var(--gold)}
.play{background:var(--paper);color:var(--navy);max-width:none;padding-inline:max(6%,calc((100vw - 1280px)/2))}
.play .section-head .eyebrow{color:#806725}
.play h2 em{color:#897135}
.play .section-head>p{color:#58636d}
.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.game{padding:28px 26px;border:1px solid #10213826;background:#ffffff66}
.game-num{font:11px ui-monospace,monospace;color:#826a28}
.game h3{font-size:25px;margin:13px 0 11px;line-height:1.1}
.game p{font-size:13px;color:#56636e;line-height:1.75}
.play .price-note{color:#626b70;max-width:640px;margin-top:24px}
.party{margin-top:40px;background:linear-gradient(135deg,#0d1f3c,#122a49);color:var(--paper);border-top:3px solid var(--gold);padding:46px 44px;display:flex;justify-content:space-between;gap:40px;align-items:center;flex-wrap:wrap}
.party>div{max-width:620px}
.party .eyebrow{color:var(--gold)}
.party h3{font-size:38px;margin:6px 0 15px}
.party p{color:#c0ccd5;font-size:15px;line-height:1.7}
.party .actions{margin-top:26px}
.party .text-link{border-color:#ffffff55}
@media(max-width:1050px){.glance{grid-template-columns:repeat(3,1fr)}.glance>div:nth-child(3){border-right:0}.glance>div:nth-child(1),.glance>div:nth-child(2),.glance>div:nth-child(3){border-bottom:1px solid #ffffff18}.game-grid{grid-template-columns:1fr 1fr}.division h3{font-size:35px}}
@media(max-width:760px){.announce{font-size:12px;padding:11px 6%;gap:6px 12px}.league-grid{grid-template-columns:1fr}.glance{grid-template-columns:1fr 1fr}.glance>div{border-bottom:1px solid #ffffff18}.glance>div:nth-child(2n){border-right:0}.league-rules{grid-template-columns:1fr;margin-top:18px}.play{padding:60px 6%}.game-grid{grid-template-columns:1fr}.party{padding:34px 26px}.party h3{font-size:31px}}
@media(max-width:380px){.division{padding:28px 22px}.division-dates{columns:1}.glance{grid-template-columns:1fr}.glance>div{border-right:0}}
.party-price{flex-shrink:0;min-width:215px;border:1px solid var(--gold);border-top:3px solid var(--gold);padding:26px 30px;background:#0a1830}
.party-price strong{display:block;font:52px/1 Newsreader,Georgia,serif;color:var(--gold)}
.party-price span{display:block;font-size:12px;color:var(--muted);margin-top:13px;line-height:1.7}
@media(max-width:760px){.party-price{width:100%;min-width:0}}

/* Approved imagegen concept, implemented over the current www live source. */
:root { --navy:#091629; --paper:#f3efe5; --gold:#d7b75c; }
header { padding-block:21px; }
header .brand { letter-spacing:1px; font-size:27px; }
header .brand-mark { display:none; }
header .brand small { letter-spacing:2px; font-size:10px; }
header nav { gap:20px; }
.announce { background:#112637; color:#ded8c6; font-weight:400; border-bottom:1px solid #d7b75c30; }
.announce .tag { background:transparent; color:var(--gold); border-right:1px solid #d7b75c50; padding-left:0; }
.announce a { color:var(--gold); border-color:#d7b75c70; }
.flagship-hero { min-height:640px; padding:90px 6% 110px; display:block; background:#091629; }
.flagship-hero .hero-copy { max-width:57%; padding:0; }
.flagship-hero .campaign-image { object-fit:cover; object-position:center; opacity:1; }
.hero-shade { background:linear-gradient(90deg,#091629c9 0%,#09162980 35%,transparent 62%); }
.flagship-hero h1 { font-size:clamp(66px,7.2vw,106px); line-height:.98; letter-spacing:-3px; color:var(--paper); }
.flagship-hero .hero-copy>p { font-size:17px; max-width:400px; line-height:1.8; margin-top:25px; color:#c5ced5; }
.flagship-hero .eyebrow { font-size:11px; letter-spacing:2px; margin-bottom:28px; color:#d0d8dc; }
.flagship-hero .actions { gap:22px; margin-top:30px; }
.hero-side-note { right:5%; bottom:100px; font-size:11px; letter-spacing:2px; line-height:1.9; }
.hero-bottomline { border-top:0; font-size:11px; letter-spacing:1.4px; bottom:32px; }
.hero-bottomline .campaign-caption { display:none; }
#train { padding-block:60px; }
#train .section-head { margin-bottom:36px; align-items:center; }
#train .section-head h2 { font-size:43px; }
#train .section-head h2 br { display:none; }
#train .section-head h2 em::before { content:' '; }
#train .section-head .eyebrow { margin-bottom:15px; }
#train .section-head>p { font-size:14px; max-width:440px; }
.service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border:0; }
.service { display:flex; flex-direction:column; align-items:center; text-align:center; padding:20px 32px 12px; border:0; border-right:1px solid #10213830; }
.service:last-child { border:0; }
.service .number { display:none; }
.service-sketch { height:95px; width:130px; flex-shrink:0; margin:0 0 15px; stroke:#314a5c; stroke-width:1.3; }
.service .eyebrow { font-size:10px; letter-spacing:1px; margin-bottom:15px; }
.service h3 { font-size:33px; }
.service>p { margin-top:15px; line-height:1.8; font-size:14px; }
.service ul { font-size:12px; padding:18px 0 22px; line-height:1.9; }
.service ul li::before { display:none; }
.service .price { margin-top:auto; padding:18px 0 0; border:0; position:relative; width:100%; max-width:none; }
.service .price::before { content:''; display:block; width:32px; height:2px; background:#b2913e; margin:0 auto 20px; }
.service .price strong { font-size:35px; }
.service .service-link { display:flex; width:100%; margin-top:20px; padding:13px 0; border-top:1px solid #10213825; align-self:auto; min-height:48px; font-size:13px; }
#train .price-note { margin:35px auto 0; text-align:center; font-size:12px; }
.lab-section { padding-block:80px; grid-template-columns:1fr 1fr; gap:7%; background:#0b1c2c; }
.lab-copy { grid-column:1; grid-row:1; }
.training-graphic { grid-column:2; grid-row:1; background:radial-gradient(ellipse,#23435455,transparent 70%); border:0; padding:0; }
.lab-copy h2 { font-size:clamp(42px,4.2vw,62px); }
.lab-copy h2 em { color:var(--paper); font-style:normal; }
.lab-copy>.eyebrow { letter-spacing:1.5px; }
.focus-diagram { max-height:300px; }
.graphic-heading { padding-bottom:15px; }
.training-graphic #focus-detail h3 { font-size:30px; }
#focus-detail { min-height:130px; }
.tech-row { padding-block:18px; }
.tech-row h3 { font-size:25px; }
.league { max-width:none; padding-inline:max(6%,calc((100vw - 1280px)/2)); background:#102535; border-top:1px solid #ffffff20; }
.division { background:#0a1a29; border-top-width:2px; }
.league .section-head h2 { font-size:clamp(44px,4.5vw,62px); }
.league .section-head>p { max-width:530px; }
.glance { background:transparent; }
.glance strong { font-size:29px; }
.game-grid { gap:0; border-top:1px solid #10213830; border-left:1px solid #10213830; }
.game { border:0; border-right:1px solid #10213830; border-bottom:1px solid #10213830; background:transparent; padding:32px; }
.game h3 { font-size:28px; }
.party { background:#0b1c2c; border-top-width:2px; }
.party-price { border:0; border-left:1px solid #d7b75c60; background:transparent; }
.team-band { padding-block:45px; }
.team-art svg { max-width:310px; }
.team-band h2 { font-size:54px; }
.visit-section { background:var(--paper); color:var(--navy); max-width:none; padding:80px max(6%,calc((100vw - 1280px)/2)); gap:7%; }
.visit-section h2 { font-size:clamp(43px,4.2vw,62px); }
.visit-section .eyebrow { color:#7d6426; }
.visit-intro>p { color:#56636e; font-size:14px; }
.location-card { background:transparent; border:0; padding:0; margin-top:28px; }
.location-heading>svg { display:none; }
.location-heading .eyebrow { margin-bottom:10px; }
.location-card address { font-family:Newsreader,Georgia,serif; font-size:28px; line-height:1.35; }
.location-card address span { font-size:24px; color:var(--navy); }
.directions-button { width:fit-content; min-width:210px; }
.location-contact { gap:16px; }
.location-contact a>span { color:#687079; }
.location-contact a:hover { color:#7d6426; }
.location-card .arrival-note { color:#56636e; border-color:#10213825; }
.visit-section .faq { background:#0b1c2c; padding:32px; color:var(--paper); border-radius:4px; }
.visit-section .faq .eyebrow { color:var(--gold); margin-bottom:16px; }
.faq h3 { font-size:33px; }
.faq summary { font-size:14px; line-height:1.6; }
.visit-section .faq p { color:var(--muted); }
.visit-section :focus-visible { outline-color:#876a25; }
.visit-section .faq :focus-visible { outline-color:var(--gold); }
.closing { padding:55px 6%; border-top:1px solid #10213825; }
.closing h2 { font-size:60px; }
.closing:before,.closing:after { display:none; }
@media(max-width:1100px) {
 header>nav { gap:12px; font-size:11px; }
 header .brand { font-size:23px; }
 .flagship-hero { min-height:610px; padding-top:80px; }
 .flagship-hero h1 { font-size:78px; }
 .service { padding-inline:22px; }
 .service h3 { font-size:29px; }
 .hero-side-note { display:none; }
}
@media(max-width:900px) and (min-width:761px) {
 header>nav { display:none; }
 .flagship-hero h1 { font-size:68px; }
 .flagship-hero .hero-copy { max-width:58%; }
 .service { padding-inline:16px; }
 .service h3 { font-size:27px; }
 .lab-section { gap:5%; }
}
@media(max-width:760px) {
 header { padding-block:16px; }
 .flagship-hero { padding:48px 6% 365px; min-height:0; }
 .flagship-hero .hero-copy { max-width:100%; }
 .flagship-hero h1 { font-size:clamp(56px,10vw,78px); letter-spacing:-2px; }
 .flagship-hero .hero-copy>p { max-width:420px; font-size:15px; }
 .flagship-hero .eyebrow { font-size:10px; letter-spacing:1.4px; }
 .flagship-hero .campaign-image { top:auto; bottom:25px; height:365px; object-position:95% center; object-fit:cover; opacity:1; }
 .hero-shade { background:linear-gradient(180deg,#091629 0%,#091629 47%,transparent 72%); }
 .hero-bottomline { bottom:20px; font-size:10px; letter-spacing:.6px; }
 .hero-bottomline>a { display:none; }
 .flagship-hero .actions { gap:18px; flex-direction:row; align-items:center; }
 #train { padding-block:48px; }
 #train .section-head h2 { font-size:37px; }
 #train .section-head>p { margin-top:20px; }
 .service-grid { grid-template-columns:1fr; }
 .service { padding:28px 8px; border-right:0; border-bottom:1px solid #10213830; }
 .service h3 { font-size:34px; }
 .service-sketch { height:90px; }
 .service>p { max-width:440px; }
 .service .service-link { max-width:440px; }
 .lab-section { grid-template-columns:1fr; gap:40px; padding-block:55px; }
 .lab-copy,.training-graphic { grid-column:auto; grid-row:auto; }
 .lab-copy { order:0; }.training-graphic { order:1; }
 .lab-copy h2 { font-size:43px; }
 .league .section-head h2 { font-size:44px; }
 .game-grid { grid-template-columns:1fr; }
 .game { padding:26px; }
 .party { padding:30px 24px; gap:25px; }
 .party-price { padding:23px 0 0; border-left:0; border-top:1px solid #d7b75c60; }
 .team-band h2 { font-size:45px; }
 .visit-section { grid-template-columns:1fr; gap:35px; padding:55px 6%; }
 .visit-section h2 { font-size:44px; }
 .visit-section .faq { padding:26px; }
 .location-card { padding:0; }
 .location-card address { font-size:25px; }
 .location-card address span { font-size:22px; }
 .closing h2 { font-size:48px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
