.quick-compare,.compare-toggle{display:none}
.beginner-reassurance{font-size:14px;line-height:1.5;margin:16px 0 24px;color:#435257}
.race-proof{max-width:1500px;margin:auto;padding:0 5% 48px}
.race-proof h2{margin-bottom:20px}
.proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.proof-grid figure{margin:0}
.proof-grid img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}
.proof-grid figcaption{font-size:14px;margin-top:8px}
.mobile-registration[hidden]{display:none!important}
.mobile-registration{display:none}
@media(min-width:0px){
 .quick-compare article>strong{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px}
 .compare-original{font:400 15px/1.3 'Fira Sans',sans-serif;color:#687477;letter-spacing:0}
 .compare-payable{white-space:nowrap}
 .quick-compare article>small{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin:8px 0 0;min-height:43px}
 .compare-discount{font:700 11px/1.3 'Fira Sans',sans-serif;color:#226541;background:#e0f3e6;padding:4px 6px;border-radius:2px}
 .quick-compare .compare-fees{font:400 10px/1.4 'Fira Sans',sans-serif;color:#435257;margin:8px 0 0;min-height:0}
 .race-section>.pricing-notice{background:#e4f3f6;padding:10px 12px;margin:0 0 12px;border-left:3px solid #00afd1}
}
@media(min-width:0px){
 .comparison-ready .quick-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .quick-compare article{min-width:0;padding:16px 12px;background:#fff;border:1px solid #cbd0cc;border-top:4px solid var(--cyan);display:flex;flex-direction:column}
 .quick-compare article:nth-child(2){border-top-color:#80bc00}
 .quick-compare h3{font-size:27px;letter-spacing:0;margin:0 0 8px}
 .quick-compare p{font-size:12px;line-height:1.4;min-height:34px;margin:0 0 12px;color:#536066}
 .quick-compare article>b{font-size:17px}
 .quick-compare article>span{font-size:11px;line-height:1.5;min-height:34px;margin-top:4px}
 .quick-compare article>strong{font:700 29px/1.2 Oswald,sans-serif;letter-spacing:-.5px;margin-top:12px}
 .quick-compare article>small{font-size:10px;line-height:1.5;min-height:30px;margin-top:4px;color:#435257}
 .quick-compare .button{width:100%;justify-content:center;gap:0;padding:12px 5px;font-size:14px;min-height:46px;margin-top:8px}
 .beginner-reassurance{font-size:13px;margin:14px 0;line-height:1.5}
 .comparison-ready .compare-toggle{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px 0;min-height:44px;border:0;background:none;color:#176b7b;font-size:13px;text-align:left}
 .comparison-ready #race-details:not(.details-expanded){display:none}
 .comparison-ready #race-details.details-expanded{margin-top:14px}
 .race-section>.sed-social-rating{margin:16px 0}
 .race-proof{padding:0 22px 36px}
 .race-proof h2{font-size:28px}
 .proof-grid{gap:8px}
 .proof-grid img{aspect-ratio:.85;object-position:center}
 .proof-grid figcaption{font-size:11px;line-height:1.4}
 .mobile-registration{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#101416;color:#fff;box-shadow:0 -2px 12px #0002}
 .mobile-registration>span{font:600 13px/1.4 Oswald,sans-serif;max-width:40%}
 .mobile-registration .button{font-size:14px;padding:12px 16px;min-height:46px;gap:0}
 body.comparison-ready{padding-bottom:76px}
}
@media(max-width:350px){.quick-compare .button{white-space:nowrap;font-size:12px;padding-left:3px;padding-right:3px}}
@media(min-width:0px){.quick-compare article>strong{flex-direction:column;align-items:flex-start;gap:6px}.compare-original-row{display:flex;align-items:center;gap:7px}.quick-compare article>small{min-height:15px;margin-top:5px}}
@media(min-width:0px){.quick-compare .compare-logo{display:flex;align-items:center;height:34px;margin:0 0 14px}.compare-logo img{display:block;width:100%;aspect-ratio:8/1;object-fit:cover;object-position:center}.quick-compare .pricing-schedule{margin-top:10px;border-top:1px solid #e0e3e2;padding-top:4px}.quick-compare .pricing-schedule summary{font-size:11px;min-height:44px;align-items:center}.quick-compare .pricing-schedule table{font-size:10px;width:100%;table-layout:fixed}.quick-compare .pricing-schedule th,.quick-compare .pricing-schedule td{padding:6px 2px;overflow-wrap:anywhere}.quick-compare .pricing-schedule th:first-child,.quick-compare .pricing-schedule td:first-child{width:38%}.comparison-ready #race-details{display:none}}

.quantity-checkout,.ticket-quantity{display:none}@media(min-width:0px){.quantity-ready .quick-compare .quantity-fallback{display:none}.quantity-ready .ticket-quantity{display:flex;flex-direction:column;gap:5px;margin-top:12px;font-size:12px}.ticket-quantity select{width:100%;min-height:44px;font-size:16px;border:1px solid #adb8b9;background:white;padding:8px}.quantity-ready .quantity-checkout{display:block;margin-top:12px}.quantity-checkout .button{width:100%;justify-content:center;min-height:48px;border:0}.quantity-checkout .button:disabled{opacity:.55;cursor:default}.quantity-checkout p{font-size:12px;margin:8px 0;color:#435257}}

@media(min-width:0px){.quick-compare article>.price-unit{min-height:0;margin:2px 0 0;font-size:11px;color:#435257}.quantity-summary{margin:14px 0 12px}.quantity-summary[hidden]{display:none}.quantity-summary strong{font-size:21px}.quantity-summary p{color:#226541;margin:5px 0;font-size:13px}.quantity-summary p[hidden]{display:none}}
.more-ticket-options,.spectator-separate{display:none}
.mobile-registration [hidden]{display:none!important}
@media(min-width:0px){
.quantity-ready .quantity-original,.quantity-ready .extras>.spectator-disclosure{display:none}
.quantity-ready .more-ticket-options{display:block;margin:24px 0 16px}
.more-ticket-options>h3{font-size:18px;margin:0 0 12px}
.extra-ticket-row{display:grid;grid-template-columns:minmax(0,1fr) 64px;gap:8px 12px;padding:16px 12px;border:1px solid #cbd0cc;background:#fff;margin-top:8px}
.extra-ticket-info h4{font:700 18px/1.3 Oswald,sans-serif;margin:0 0 5px;text-transform:uppercase}
.extra-ticket-info p{font-size:12px;line-height:1.4;margin:0 0 8px;color:#435257}
.extra-ticket-price{font-size:11px;color:#435257}
.extra-ticket-price strong{font-size:18px;color:#101416;margin-right:3px}
.extra-ticket-price del{font-size:12px;margin-right:6px}
.extra-ticket-row .ticket-quantity{margin:0;align-self:center}
.extra-ticket-details{grid-column:1/-1;border:0!important;padding:0!important;min-width:0}
.extra-ticket-details>summary{font-size:12px!important;color:#176b7b;min-height:36px;padding:8px 0!important;display:block!important}
.extra-ticket-details>p{font-size:13px;line-height:1.5}
.extra-ticket-details .jr-section{padding:10px 0}
.ticket-selected{background:#edf9fc!important;border-color:#00afd1!important}
.quantity-summary{padding:16px;background:#fff;border:1px solid #cbd0cc}
.quantity-summary h3{font-size:18px;margin:0 0 10px}
.ticket-summary-line{display:flex;justify-content:space-between;gap:10px;font-size:13px;line-height:1.5;margin-bottom:6px}
.quantity-summary>strong{display:block;border-top:1px solid #e0e3e2;margin-top:12px;padding-top:12px}
.quantity-ready .spectator-separate{display:block;font-size:13px;margin:18px 0 24px;color:#176b7b;text-align:center}
.mobile-registration button{border:0}
.mobile-registration>span{max-width:55%}
}
@media(min-width:0px){
.quantity-ready .more-ticket-options{margin:10px 0 0;border:1px solid #cbd0cc;background:#fff;padding:0}
.more-ticket-options>summary{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;min-height:48px;padding:10px 34px 10px 12px;list-style:none;font:600 13px/1.4 'Fira Sans',sans-serif;cursor:pointer}
.more-ticket-options>summary::-webkit-details-marker{display:none}
.more-ticket-options>summary::after{content:'+';position:absolute;right:12px;top:12px;font-size:20px}
.more-ticket-options[open]>summary::after{content:'−'}
.more-ticket-options>summary small{font-size:11px;color:#176b7b;margin-top:3px}
.more-ticket-options>summary small[hidden]{display:none}
.more-ticket-options .extra-ticket-row{margin:0;padding:10px 12px;border:0;border-top:1px solid #e0e3e2;gap:0 10px}
.more-ticket-options .extra-ticket-info h4{font-size:16px;margin-bottom:4px}
.more-ticket-options .extra-ticket-price strong{font-size:16px}
.more-ticket-options .extra-ticket-details>summary{min-height:32px;padding:5px 0!important}
.more-ticket-options .extra-ticket-details>p{margin:6px 0}
}
@media(min-width:0px){
.ticket-quantity select[hidden]{display:none!important}
.quantity-stepper{display:grid;grid-template-columns:44px minmax(20px,1fr) 44px;width:100%;max-width:132px;border:1px solid #adb8b9;border-radius:4px;overflow:hidden;background:#fff}
.quantity-stepper button{width:44px;min-height:44px;padding:0;border:0;border-radius:0;background:#edf9fc;color:#101416;font:500 22px/1 sans-serif;cursor:pointer;touch-action:manipulation}
.quantity-stepper button:disabled{color:#9aa4a6;background:#f4f5f4;cursor:default}
.quantity-stepper button:focus-visible{outline:2px solid #176b7b;outline-offset:-3px}
.quantity-stepper output{align-self:center;text-align:center;font:500 16px/1.2 'Fira Sans',sans-serif;color:#101416}
.more-ticket-options .extra-ticket-row{grid-template-columns:minmax(0,1fr) 112px}
.more-ticket-options .extra-ticket-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px}
}
/* Closed disclosure content must not extend the document's scrollable area. */
body.comparison-ready details:not([open])>:not(summary){display:none!important}
body.comparison-ready dialog:not([open]){display:none!important}
@media(min-width:0px){
html:has(body.comparison-ready){overscroll-behavior-y:none}
body.comparison-ready{padding-bottom:0;overscroll-behavior-y:none}
body.comparison-ready>footer{padding-bottom:calc(28px + 76px + env(safe-area-inset-bottom))}
.mobile-registration{position:fixed!important;top:auto!important;bottom:0!important;margin:0!important}
}

/* Aligned mobile comparison facts; icons supplement the text labels. */
@media(min-width:0px){
 .quick-compare .compare-features{--feature-color:#008ba8;list-style:none;margin:0;padding:8px 6px;background:#eef9fb;display:grid;gap:6px}
 .quick-compare article:nth-child(2) .compare-features{--feature-color:#629400;background:#f3f8e9}
 .compare-features li{display:flex;align-items:center;gap:6px;min-width:0;margin:0;padding:0;line-height:1.2;color:#101416}
 .compare-features svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:var(--feature-color);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
 .compare-features .feature-distance b{font:700 24px/1.15 Oswald,sans-serif;white-space:nowrap}
 .feature-distance b span{font-size:14px}
 .compare-features .feature-obstacles b{font:600 15px/1.2 Oswald,sans-serif;white-space:nowrap}
 .compare-features .feature-timing span{font:400 12px/1.3 'Fira Sans',sans-serif}
}
@media(max-width:350px){.quick-compare .compare-features{padding:8px 4px}.compare-features li{gap:4px}.compare-features .feature-distance b{font-size:21px}.compare-features .feature-obstacles b{font-size:11px}.feature-distance b span{font-size:12px}}
