:root{--cyan:#00c6ee;--ink:#101416;--paper:#f5f5ef}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ffb400;outline-offset:4px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:10;background:white;padding:10px}header{height:86px;background:#101416;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:24px}.logo{font-family:Impact,'Arial Narrow',sans-serif;font-style:italic;font-size:30px;letter-spacing:-1px;line-height:1}.logo span{color:var(--cyan)}.logo small{display:block;font:8px Arial;letter-spacing:3px;font-style:normal;margin-top:7px;color:#ced0d0}nav{display:flex;gap:30px;font-size:13px;font-weight:700}.nav-cta{border:1px solid #748084;padding:12px 19px;font-size:13px;font-weight:bold}.nav-cta span{margin-left:22px;color:var(--cyan)}.hero{display:grid;grid-template-columns:40% 60%;background:var(--ink);color:white;min-height:600px}.hero-copy{padding:47px 8% 40px 12.5%}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800;margin:0 0 20px}.hero .eyebrow{color:var(--cyan);line-height:1.6}h1,h2,h3{font-family:Impact,'Arial Narrow',sans-serif;font-weight:400;letter-spacing:-1px;margin:0;line-height:.94}h1{font-size:clamp(66px,7.4vw,112px)}h1 span{color:var(--cyan)}.intro{font-size:17px;line-height:1.5;margin:22px 0}.event-meta{font-size:13px;margin:22px 0}.event-meta p{margin:12px 0}.meta-icon{color:var(--cyan);display:inline-block;width:22px}.button{border:0;background:var(--cyan);color:#071316;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:17px 22px;font-size:14px;font-weight:800;min-height:50px}.hero-copy>.button{width:100%}.button:hover{background:#57ddf8}.micro{font-size:10px;color:#b8c0c2;text-align:center;margin:12px 0 0}.hero-photos{position:relative;min-width:0;overflow:hidden}.main-photo{width:100%;height:100%;position:absolute;object-fit:cover;object-position:56% 40%}.photo-tag{position:absolute;top:24px;right:25px;background:white;padding:10px 13px;font-size:10px;color:#101416;font-weight:800;letter-spacing:1.2px;transform:rotate(2deg)}.photo-strip{position:absolute;bottom:25px;right:25px;display:flex;gap:8px;align-items:stretch}.photo-strip img{width:130px;height:95px;object-fit:cover;border:3px solid white}.photo-strip button{background:white;border:0;padding:13px;font-size:12px;font-weight:800;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.photo-strip button span{font-size:22px}.ribbon{background:var(--cyan);padding:18px 5%;display:flex;justify-content:space-around;gap:15px;font-weight:900;font-size:12px;letter-spacing:2px}.race-section,.details-section{padding:70px 5%;max-width:1500px;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px}h2{font-size:clamp(35px,3.6vw,56px);line-height:1.05}.section-heading>p{font-size:14px;line-height:1.6;color:#596065;margin:0}.race-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.race-card{border:1px solid #cbd0cc;background:white;padding:30px;border-top:5px solid var(--cyan)}.label{font-size:10px;font-weight:bold;letter-spacing:1.5px;color:#4d5a5f}h3{font-size:45px;margin:19px 0 24px}h3 em{font-style:normal;color:#008fb2}.stats{display:flex;gap:32px;font-size:10px;letter-spacing:1px}.stats b{font-size:28px;letter-spacing:-1px;margin-right:4px}.race-card>p{font-size:14px;line-height:1.7;color:#536066;min-height:72px;max-width:450px}.purchase{display:flex;align-items:center;justify-content:space-between;margin-top:25px;gap:15px}.purchase>span{font-size:12px}.purchase strong{font-size:30px}.race-card details{margin-top:25px;border-top:1px solid #e0e3e2;padding-top:18px}.race-card summary{font-size:12px}.race-card details p,.extras p{font-size:14px;line-height:1.6;color:#536066}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px}summary::-webkit-details-marker{display:none}.text-button{background:none;border:0;padding:0;color:#00718a;font-weight:bold}.extras{margin-top:22px;border-top:1px solid #cbd0cc}.extras details{border-bottom:1px solid #cbd0cc;padding:22px 0}.extras summary{align-items:center;font-size:13px}.extras summary>b{width:40%}.extras summary>span:nth-child(2){flex:1;color:#596065}.experience{display:grid;grid-template-columns:1fr 1fr;background:#111719;color:white}.experience>img{width:100%;height:460px;object-fit:cover}.experience>div{padding:65px 10%}.experience .eyebrow{color:var(--cyan)}.experience p:not(.eyebrow){line-height:1.7;color:#cad0d1;font-size:15px}.experience .button{margin-top:15px}.details-section{max-width:1000px}.details-section h2{margin-bottom:28px}.details-section details{border-top:1px solid #cbd0cc;padding:22px 0}.details-section details p{line-height:1.6;color:#536066}footer{background:var(--ink);color:white;padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:11px;color:#b5bfc2}dialog{border:0;background:var(--paper);padding:35px;width:min(960px,94vw);max-height:90vh}dialog::backdrop{background:#061014dd}.close{position:absolute;right:10px;top:8px;background:none;border:0;font-size:32px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.gallery-grid img{width:100%;aspect-ratio:1.5;object-fit:cover}#selection{max-width:500px}#selection p{line-height:1.6}body:has(dialog[open]){overflow:hidden}
@media(min-width:1500px){.hero{max-height:720px}.hero-copy{padding-top:65px;padding-bottom:60px}}
@media(max-width:900px){nav{gap:18px}.hero-copy{padding:35px 8%}h1{font-size:70px}.photo-strip img{width:95px;height:75px}.race-card{padding:24px}h3{font-size:38px}.purchase{align-items:start;flex-direction:column}.purchase .button{width:100%}.experience>div{padding:40px 8%}}
@media(max-width:700px){header{height:62px;padding:0 20px}.logo{font-size:25px}.logo small{font-size:6px;letter-spacing:2.5px;margin-top:5px}nav{display:none}.nav-cta{padding:9px 12px;font-size:11px}.nav-cta span{margin-left:10px}.hero{display:flex;flex-direction:column;min-height:0}.hero-photos{order:-1;height:285px}.main-photo{object-position:50% 37%}.photo-tag{top:16px;right:16px;font-size:8px;padding:8px;letter-spacing:1px}.photo-strip{bottom:14px;right:16px;gap:5px}.photo-strip img{width:65px;height:48px;border-width:2px}.photo-strip button{padding:8px;font-size:10px;display:block}.photo-strip button span{font-size:12px;margin-left:6px}.hero-copy{padding:25px 24px 25px}.hero .eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:12px}h1{font-size:58px;line-height:1}h1 br{display:none}h1 span{margin-left:10px}.intro{font-size:14px;line-height:1.5;margin:12px 0 14px}.intro br{display:none}.event-meta{margin:14px 0 20px;font-size:12px}.event-meta p{margin:8px 0}.button{padding:15px 18px}.micro{font-size:9px}.ribbon{padding:14px 16px;font-size:8px;letter-spacing:1px;gap:10px}.ribbon span:nth-child(2){display:none}.race-section,.details-section{padding:42px 22px}.section-heading{display:block;margin-bottom:22px}.eyebrow{font-size:9px;margin-bottom:12px}.section-heading>p{font-size:13px;margin-top:14px}h2{font-size:34px}.race-grid{grid-template-columns:1fr;gap:18px}.race-card{padding:24px}.race-card>p{min-height:0}.purchase{flex-direction:row;align-items:center}.purchase .button{width:auto;font-size:12px}.purchase strong{font-size:26px}h3{font-size:37px}.extras summary{flex-wrap:wrap;position:relative;padding-right:20px}.extras summary>b{width:100%;font-size:12px}.extras summary>span:nth-child(2){font-size:12px}.extras summary>span:last-child{position:absolute;right:0;top:8px}.experience{grid-template-columns:1fr}.experience>img{height:250px}.experience>div{padding:35px 24px 42px}footer{display:block;padding:28px 24px}footer p{line-height:1.7;margin-top:20px}.gallery-grid{grid-template-columns:1fr}dialog{padding:30px 20px}.gallery-grid img{aspect-ratio:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:370px){h1{font-size:48px}.hero-photos{height:245px}.hero-copy{padding:22px 20px}h3{font-size:32px}.stats{gap:18px}.stats b{font-size:24px}.purchase{flex-wrap:wrap}.photo-strip img{width:54px}.photo-tag{font-size:7px}}
@font-face{font-family:Oswald;font-style:normal;font-weight:200 700;font-display:swap;src:url('media/Oswald-VariableFont_wght.ttf') format('truetype')}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url('media/FiraSans-Regular.ttf') format('truetype')}
body{font-family:'Fira Sans',Arial,sans-serif}
h1,h2,h3{font-family:Oswald,'Arial Narrow',sans-serif;font-weight:700;line-height:1.06}
nav,.nav-cta,.button,.eyebrow,.label,.ribbon,summary,.text-button{font-family:Oswald,'Arial Narrow',sans-serif}
@media(max-width:700px){h1{font-size:52px}h3{font-size:35px}}
@media(max-width:370px){h1{font-size:43px}h3{font-size:31px}}

.intro strong{font-family:Oswald,sans-serif;font-weight:600}.intro br{display:block}
@media(max-width:700px){h1{font-size:43px}h1 span{margin-left:0}h1 br{display:block}}

.included-section{padding:12px 5% 72px;max-width:1500px;margin:auto}.included-intro{font-size:15px;line-height:1.6;color:#536066;margin:18px 0 30px}.included-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.included-grid article{background:#fff;border:1px solid #dbe0dc;padding:28px}.included-icon{display:block;font-size:38px;line-height:1.3;margin-bottom:18px}.included-grid h3{font-size:23px;letter-spacing:0;margin:0 0 12px}.included-grid p{font-size:14px;line-height:1.65;color:#536066;margin:0;max-width:300px}@media(max-width:700px){.included-section{padding:0 22px 44px}.included-intro{font-size:13px}.included-grid{grid-template-columns:1fr 1fr;gap:12px}.included-grid article{padding:20px 15px}.included-icon{font-size:32px;margin-bottom:13px}.included-grid h3{font-size:19px}.included-grid p{font-size:12px}}@media(max-width:350px){.included-grid{grid-template-columns:1fr}}

.logo img{display:block;width:195px;height:auto}.race-logo-heading{background:#101416;padding:20px;margin:19px 0 24px;min-height:80px;display:flex;align-items:center}.race-logo-heading img{display:block;width:100%;max-width:340px;height:auto}.blitz{border-top-color:#80bc00}@media(max-width:700px){.logo img{width:155px}.race-logo-heading{padding:16px;min-height:68px}}

.race-logo-heading{background:white;padding:0;min-height:80px}.race-logo-heading img{height:80px;width:100%;object-fit:contain;object-position:left center}
.race-logo-heading img{height:auto;aspect-ratio:8/1;object-fit:cover;object-position:center}.race-logo-heading{min-height:60px}

.jr-jump{display:flex;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid #cbd0cc;font-size:13px}.jr-jump>b{width:40%}.jr-jump>span:last-child{margin-left:auto;font-weight:bold;color:#00718a}.jr-section{max-width:1350px;margin:0 auto 65px;padding:40px;background:#e7f4f6;border-top:5px solid var(--cyan)}.jr-top{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.jr-copy h2{font-size:48px}.jr-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#46565b}.jr-badges{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;font-weight:bold}.jr-badges span{background:white;padding:10px}.jr-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px}.jr-photos img{width:100%;aspect-ratio:1/1.2;object-fit:cover}.jr-photos img:nth-child(2){margin-top:25px}.jr-courses{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:32px 0}.jr-courses article{background:white;padding:25px}.jr-section h3{font-size:28px;line-height:1.2;letter-spacing:0;margin:0 0 12px}.jr-courses p:not(.eyebrow),.jr-bottom li{font-size:14px;line-height:1.7;color:#46565b}.jr-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:35px}.jr-bottom ul{padding-left:19px}.jr-bottom li{margin:8px 0}.jr-note{font-size:11px;color:#526469}.jr-bottom aside{background:#fff;padding:25px;align-self:start}.jr-bottom aside>p strong{font:700 34px Oswald}.jr-bottom aside>p span{font-size:12px;color:#526469}.jr-bottom .button{width:100%;font-size:14px;gap:12px}@media(max-width:700px){.jr-jump{flex-wrap:wrap;gap:12px}.jr-jump>b{width:100%}.jr-jump>span:last-child{margin-left:0}.jr-section{padding:28px 22px;margin:0 0 44px}.jr-top,.jr-bottom,.jr-courses{grid-template-columns:1fr;gap:20px}.jr-copy h2{font-size:36px}.jr-copy>p:not(.eyebrow){font-size:14px}.jr-photos img{aspect-ratio:1}.jr-badges{font-size:11px}.jr-courses{margin:28px 0}.jr-section h3{font-size:25px}}

.jr-disclosure .jr-section{margin:24px 0 0;padding:32px}.jr-toggle{font-size:20px;line-height:1;transition:transform .15s}.jr-disclosure[open]>summary .jr-toggle{transform:rotate(45deg)}@media(max-width:700px){.jr-disclosure .jr-section{padding:25px 18px}}

/* Main-site navigation shell */
.site-header{height:90px;padding:0 12px 0 0;background:#242424;gap:20px;position:relative;z-index:5}.site-logo{flex-shrink:0;width:224px;line-height:0}.site-logo img{width:100%;height:auto}.site-nav{display:flex;gap:0;margin:auto}.site-nav a{padding:15px;font:400 18px/27px Oswald;text-transform:uppercase;color:#fff;white-space:nowrap}.site-nav a:hover{color:#00aeef}.site-register{background:#fff;color:#00aeef;font:600 18px/18px Oswald;padding:15px 19px;border-radius:2px;white-space:nowrap}.mobile-register,.site-menu-toggle{display:none}#site-menu{position:fixed;inset:0 auto 0 0;margin:0;width:90vw;max-width:360px;height:100dvh;max-height:none;padding:20px 15px;background:#f7f7f7}#site-menu::backdrop{background:#0009}.site-menu-top{display:flex;align-items:center;justify-content:space-between;height:42px;margin-bottom:26px}.site-menu-top img{width:95px;height:auto}.site-menu-top .close{position:static;border:1px solid #999;border-radius:2px;width:43px;height:40px;font:400 16px Oswald}#site-menu nav{display:flex;flex-direction:column;gap:0}#site-menu nav a{padding:12px 0;font:500 15px/17px Oswald;color:#101416}#site-menu nav a:hover{color:#00aeef}@media(max-width:1100px){.site-header{height:60px;padding:0 10px;gap:14px}.site-logo{width:165px;margin-right:auto}.site-nav,.desktop-register{display:none}.mobile-register{display:block;font:500 14px/14px Oswald;padding:9px 10px}.site-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:43px;height:29px;padding:5px 8px;background:#00aeef;border:0;border-radius:2px}.site-menu-toggle span{height:1px;background:#fff;width:100%}}@media(max-width:370px){.site-logo{width:145px}.site-header{gap:10px}.mobile-register{font-size:12px}}

.venue-location{display:flex;align-items:flex-start;margin:12px 0}.venue-directions{display:inline-flex;flex-direction:column;gap:5px;line-height:1.5}.venue-directions small{color:#00c6ee;font-size:12px;text-decoration:underline;text-underline-offset:3px}.venue-directions:hover span{text-decoration:underline}.details-section .venue-directions small{color:#00718a}

.calendar-picker{position:relative}.calendar-picker summary{font:inherit;line-height:1.5;text-decoration:underline;text-underline-offset:3px;gap:8px}.calendar-options{position:absolute;top:calc(100% + 8px);left:0;z-index:20;min-width:235px;background:#fff;color:#101416;box-shadow:0 8px 30px #0005;padding:6px;border-radius:4px}.calendar-options a{display:block;padding:12px;font-size:14px;line-height:1.4}.calendar-options a:hover,.calendar-options a:focus-visible{background:#e7f4f6}.calendar-options small{display:block;font-size:11px;color:#596065}

/* Mobile purchase-section declutter. */
@media(max-width:700px){.ribbon,.race-section>.section-heading .eyebrow,.race-card:not(.blitz)>.label{display:none}.race-section{padding-top:24px}.race-section>.section-heading{margin-bottom:18px}.race-card .race-logo-heading{margin-top:10px;margin-bottom:12px;min-height:0}.race-card:not(.blitz) .race-logo-heading{margin-top:0}}

@media(max-width:700px){.race-card.blitz>.label,.blitz-description-extra{display:none}.race-card.blitz .race-logo-heading{margin-top:0}}

/* Staging mobile hero simplification. */
.hero-city,.hero-mobile-date,.hero-calendar-label,.gallery-mobile-label{display:none}
@media(max-width:700px){
 .hero .photo-tag,.hero-copy>.eyebrow,.hero-copy>.intro,.hero-copy>.event-title-meta,.photo-strip>img,.hero-address,.hero-calendar-date,.gallery-desktop-label{display:none}
 .hero-photos{height:228px}
 .hero-copy{padding:22px 24px 24px}
 .hero .event-meta{display:flex;flex-direction:column;gap:10px;margin:16px 0 20px}
 .hero-calendar-row{order:-1;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
 .hero .event-meta .meta-icon{display:none}
 .hero-city,.hero-mobile-date,.hero-calendar-label,.gallery-mobile-label{display:inline}
 .hero .venue-directions{font:inherit;text-decoration:underline;text-underline-offset:3px}
 .hero .calendar-picker summary{font-size:12px}
 .hero .photo-strip{right:16px;bottom:14px}
 .hero .photo-strip #gallery-open{min-height:44px;padding:8px 12px;display:flex;flex-direction:row;align-items:center;gap:8px;background:#101416dd}
 .hero .photo-strip #gallery-open span{margin:0;font-size:12px}
}
@media(max-width:700px){.hero .event-meta{font-family:Arial,Helvetica,sans-serif;font-size:14px;gap:12px}.hero .event-meta .venue-location{margin:0}.hero .calendar-picker summary{font-family:Arial,Helvetica,sans-serif}}

/* Compact included benefits on mobile. */
@media(max-width:700px){.included-section>.eyebrow,.included-section>.included-intro,.included-grid article:nth-child(-n+2)>p{display:none}.included-section>h2{margin:0 0 20px}.included-grid article:nth-child(-n+2)>h3{margin-bottom:0}}
