@font-face{font-family:Sport;src:url('assets/barlow.ttf');font-weight:800;font-display:swap}
:root{--paper:#fff;--navy:#0b2857;--blue:#174fc4;--yellow:#ffbf00;--sky:#174fc4;--muted:#526176;--line:#dce3ee}
body{background:#f1f4f9;color:#163258}h1,h2,h3{font-family:Sport,Impact,sans-serif;font-weight:800;letter-spacing:-.025em;color:#123e88}p{color:#4a5e79}.wrap{width:min(1120px,calc(100% - 64px))}.eyebrow{font-size:10px!important;letter-spacing:1.7px;color:#174fc4!important}.header{padding-block:24px;border:0;background:#fff;max-width:1184px;width:100%;padding-inline:32px}.brand{color:#103e8d}.brand span{color:#174fc4}.header nav a{color:#263d5f}.button,.button.blue,dialog .button{border-radius:50px;background:#174fc4;color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:16px 25px}.button:hover{background:#10377f;transform:translateY(-2px)}.header .button{background:#ffbf00;color:#0b2857}.header .button svg{width:20px}.menu-toggle{color:#174fc4}.header nav.open{background:#fff;box-shadow:0 10px 25px #10234b18}.hero{background:#174fc4;max-width:1184px;margin:auto;position:relative;overflow:hidden}.hero-inner{grid-template-columns:1.08fr 1fr;gap:0;min-height:610px;align-items:center}.hero-copy{padding:48px 0 48px 24px;z-index:3}.hero h1{font-family:Sport,Impact,sans-serif;font-weight:800;font-size:clamp(70px,7.8vw,110px);line-height:.87;letter-spacing:-2px;color:#fff;max-width:590px}.hero h1 em{position:static;display:block;font-family:inherit;font-size:inherit;letter-spacing:inherit;font-weight:800;font-style:italic;transform:none;line-height:.87;color:#ffca22;white-space:normal}.hero .eyebrow{color:#fff!important;font-size:10px!important;letter-spacing:2px;margin-bottom:23px}.hero-copy>p{color:#e3edff;font-size:14px;max-width:365px;margin-top:24px;line-height:1.7}.hero-actions{margin-top:25px;gap:20px}.hero-actions .button{background:#ffbf00;color:#092557}.hero .text-link{color:white;font-size:11px}.hero-swirl,.hero-flower,.hero-squiggle,.hero-sun,.art-arch,.art-circle,.cause-seal,.art-script,.flower,.sun-badge,.little-heart,.fox-mascot{display:none!important}.hero-art{height:610px;align-self:stretch;position:relative;overflow:hidden;margin:0;max-width:none}.runner-photo{width:100%;height:100%;object-fit:cover;object-position:center;display:block;mask-image:linear-gradient(90deg,transparent,#000 18%);opacity:.94}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#174fc4,transparent 20%),linear-gradient(90deg,#174fc4,transparent 30%);pointer-events:none}.race-tag{position:absolute;right:14px;top:24px;background:#ffbf00;color:#0c2f68;z-index:3;padding:13px 20px;font:700 10px/1.3 Sans;text-align:center;border-radius:0 0 20px 20px;letter-spacing:1px}.race-tag b{font:800 24px Sport}.race-ticket{display:flex;gap:0;margin-top:30px;max-width:390px;border:1px dashed #9bb7f0;border-radius:9px;color:#fff}.race-ticket>span{flex:1;padding:12px 11px;font-size:11px;font-weight:800;border-right:1px dashed #9bb7f0}.race-ticket>span:last-child{border:0}.race-ticket b{display:block;font-size:8px;font-weight:400;letter-spacing:1px;margin-top:3px}.race-ribbon{max-width:1184px;margin:auto;background:#ffbf00;display:flex;justify-content:center;align-items:center;gap:30px;padding:15px;font:800 18px Sport;letter-spacing:1px;white-space:nowrap;overflow:hidden;color:#0e3776}.race-ribbon span{font:24px Sans}.about{background:#fff;border-radius:0 0 44px 44px;max-width:1184px;width:100%;grid-template-columns:.8fr 1.3fr .95fr;gap:30px;padding:48px 45px;margin-top:0}.about-poster{height:270px;border-radius:16px;transform:none;background:#174fc4}.about h2{font-size:33px;line-height:1;letter-spacing:-.5px}.about h2 span{color:#174fc4}.about-copy>p{font-size:13px;margin-top:14px}.about-signature span,.handwritten,.faq .handwritten,.final-copy .handwritten{font:500 14px/1.5 Sans;transform:none;color:#50627e;letter-spacing:0}.about-signature img{width:43px;height:56px;mix-blend-mode:normal}.event-facts{border-color:#d9e3f2}.event-facts strong{color:#133e80}.event-facts span{color:#526176}.event-facts svg{color:#174fc4}.participation{background:white;border-radius:30px;margin-top:28px;padding:38px 30px}.section-heading{align-items:center}.participation h2{font-size:43px;color:#164697}.outline-link{border:1px solid #174fc4;color:#174fc4;border-radius:30px;font-size:11px}.participation-grid{gap:14px}.participation-card{background:#edf3ff;border-radius:20px;min-height:370px;padding:24px 20px 18px;border:0}.participation-card h3{font-size:30px;letter-spacing:-.5px;color:#123e88}.participation-card>p{font-size:12px;line-height:1.5}.card-label{font-size:9px;letter-spacing:1.2px;color:#174fc4}.card-three{background:#ffcf32}.card-seven{background:#174fc4;color:#fff}.card-seven h3,.card-seven p,.card-seven .card-label,.card-seven .card-link{color:white}.card-kit{background:#eef3fc}.card-entry{background:#fff2b8}.distance-art{height:170px}.distance-art>span,.card-seven .distance-art>span{font-family:Sport;font-weight:800;font-style:italic;font-size:130px;letter-spacing:-5px;transform:none;color:#123e88}.card-seven .distance-art>span{color:#fff}.distance-art small{font-family:Sport;font-size:40px;letter-spacing:-1px}.distance-art>svg{stroke:#fff;opacity:.4;stroke-width:2;stroke-dasharray:6 6}.card-seven .distance-art>svg{stroke:#ffbf00}.card-link{font-size:11px;font-weight:700;color:#123e88;gap:6px}.card-link i{border-radius:50%;background:#fff;color:#174fc4}.card-link:hover i{transform:translateX(3px)}.card-seven .card-link i{background:#ffbf00}.shirt-art>path:first-child{fill:#174fc4}.shirt-art text{fill:#ffbf00}.shirt-art .shirt-sub{fill:white}.race-bib{background:#fff;box-shadow:4px 5px 0 #112a5915;border-color:#c4d0e4;border-radius:6px;transform:rotate(7deg)}.race-bib>span{background:#174fc4}.race-bib>strong{color:#164697;font-family:Sport;font-weight:800}.race-bib small{color:#174fc4}.concept-label{color:#53657e}.participation-note{font-size:11px;color:#607087;text-align:center;margin-top:24px}.good-grid{margin-top:26px;gap:20px}.kit-panel,.impact-panel{border-radius:28px;padding:35px;background:#fff}.kit-panel{background:#ffcf32}.kit-panel h2,.impact-panel h2{font-size:42px;line-height:.98;letter-spacing:-.6px}.kit-panel h2 span{color:#174fc4}.kit-items i{background:#174fc4;color:#fff;border-radius:50%}.kit-items strong{font-size:13px;color:#0d326c}.kit-items span{font-size:11px;color:#314c72}.donation-note{border-color:#173f822e}.donation-note p,.price-note{font-size:12px;color:#263e60}.donation-note svg{color:#174fc4}.impact-panel{background:#174fc4;color:#fff}.impact-panel h2,.impact-panel .eyebrow{color:white!important}.demo-pill{background:#fff;color:#174fc4;font-size:7px;border-radius:30px;padding:8px 12px}.metric{background:#ffffff12;border:1px solid #ffffff35;border-radius:16px}.metric strong{font-family:Sport;font-size:55px;font-weight:800;color:#ffcf32;letter-spacing:-1px}.metric span{font-size:9px;color:#e6eeff;letter-spacing:.5px}.metric-date strong{color:white}.progress-label{font-size:11px}.progress-label strong{color:#ffcf32}.progress-track{background:#ffffff30}.progress-track>div{background:#ffcf32}#next-basket,.impact-note{color:#dce8ff;font-size:10px}.simulation-actions .button{background:#ffcf32;color:#103570;font-size:10px;padding:14px 18px}.reset-button{color:white;font-size:10px}.faq{background:#fff;border-radius:28px;padding:38px;margin-block:26px;gap:35px}.faq h2{font-size:40px}.faq-list summary{color:#163e7d;font-size:13px}.faq-list details p{font-size:12px;color:#526176}.faq-list details{border-color:#dce3ee}.final-cta{background:#174fc4;border-radius:30px;grid-template-columns:1.3fr 1fr;padding:40px;gap:32px;margin-bottom:24px;position:relative;overflow:hidden}.final-cta:before{content:'';position:absolute;width:350px;height:350px;border:1px dashed #ffffff25;border-radius:50%;left:-200px;bottom:-180px;box-shadow:0 0 0 22px #ffffff08,0 0 0 44px #ffffff06;pointer-events:none}.final-copy h2{font-family:Sport;font-size:64px;line-height:.9;letter-spacing:-1px;color:#fff}.final-copy h2 br{display:block}.final-copy h2 em{color:#ffcf32;font-style:italic}.final-copy .eyebrow{color:#fff!important}.final-copy .handwritten{font-size:15px;color:#deebff;margin-top:18px}.final-details{color:#fff;font-size:10px}.final-details svg{color:#ffcf32}.final-card{background:white;border-radius:22px;padding:30px}.final-card h3{color:#174fc4;font-size:32px}.final-card p{color:#526176;font-size:12px}.final-card .button{background:#ffcf32;color:#14366d;font-size:11px}footer{padding-block:25px;color:#526176}footer p{font-size:11px}dialog{border-radius:24px;background:#fff;color:#163258}dialog h2{font-family:Sport;font-size:40px;font-weight:800;color:#174fc4}.choice{background:#fff;border-color:#bdcce2}.choice:has(input:checked){background:#edf3ff;border-color:#174fc4;box-shadow:inset 0 0 0 1px #174fc4}.choice strong{color:#123e88}input,select{background:#fff;color:#163258}.form-reminder{background:#fff4c6;color:#14366d}.toast{background:#123e88;color:#fff}.success-receipt{background:#edf3ff;color:#163258}.success-icon{background:#ffcf32;color:#174fc4}
@media(max-width:1050px){.hero h1{font-size:84px}.hero-art{height:580px}.about{grid-template-columns:.8fr 1.2fr;gap:24px}.event-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border:0;padding:0;gap:12px}.event-facts li{font-size:11px}.participation-card{padding:20px 16px}.participation-card h3{font-size:26px}.participation-card>p{font-size:11px}.card-link{font-size:10px}.kit-panel,.impact-panel{padding:28px}.kit-panel h2,.impact-panel h2{font-size:36px}.final-copy h2{font-size:54px}}
@media(max-width:860px){.hero h1{font-size:70px}.hero-copy{padding-left:0}.hero-art{height:550px}.hero-actions{gap:12px}.hero-actions .button{padding:15px 18px;font-size:10px}.hero .text-link{font-size:10px}.hero-copy>p{font-size:13px}.race-ticket>span{font-size:9px;padding:12px 9px}.participation-grid{grid-template-columns:repeat(2,1fr)}.participation-card{min-height:350px}.good-grid{grid-template-columns:1fr}.kit-items{grid-template-columns:repeat(2,1fr)}.impact-board{grid-template-columns:repeat(4,1fr)}.metric{padding:17px 14px}.metric strong{font-size:47px}.metric span{font-size:8px}.final-copy h2{font-size:49px}}
@media(max-width:700px){.wrap{width:calc(100% - 28px)}.header{width:100%;padding:18px 20px}.hero-inner{width:100%;display:grid;grid-template-columns:1fr;gap:0;min-height:0}.hero-copy{padding:36px 28px 18px;position:relative;z-index:3}.hero h1{font-size:clamp(64px,15.5vw,92px);letter-spacing:-1.5px;max-width:100%}.hero .eyebrow{font-size:9px!important;margin-bottom:20px}.hero-copy>p{font-size:13px;max-width:420px;margin-top:21px}.hero-actions{margin-top:20px;gap:22px}.hero-actions .button{font-size:11px;padding:15px 22px}.hero .text-link{font-size:10px}.race-ticket{margin-top:23px;max-width:420px}.race-ticket>span{font-size:10px;padding:11px}.race-ticket b{font-size:7px}.hero-art{height:360px;width:100%;margin:0;max-width:none;background:#174fc4}.runner-photo{object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);width:100%;height:100%}.hero-art:after{background:linear-gradient(0deg,#174fc4,transparent 18%),linear-gradient(180deg,#174fc4,transparent 15%)}.race-tag{top:24px;right:28px;padding:12px 16px}.race-ribbon{gap:20px;font-size:15px;padding:11px;justify-content:flex-start}.about{width:100%;border-radius:0 0 30px 30px;padding:30px 24px;grid-template-columns:1fr;gap:25px}.about-poster{display:none}.about h2{font-size:33px}.about-copy>p{font-size:13px;max-width:none}.about-signature{margin-top:18px}.about-signature span{font-size:13px}.about-signature img{width:35px;height:45px}.event-facts{grid-template-columns:1fr 1fr;gap:19px 12px;border-top:1px solid #dce3ee;padding-top:24px}.event-facts li{gap:10px}.event-facts svg{width:23px;height:23px}.event-facts strong{font-size:12px}.event-facts span{font-size:10px}.participation{padding:28px 18px;margin-top:18px;border-radius:24px}.section-heading{gap:16px;align-items:start;flex-direction:column}.participation h2{font-size:34px}.outline-link{font-size:10px;padding:10px 16px}.participation-grid{gap:12px}.participation-card{padding:19px 14px 14px;min-height:320px;border-radius:17px}.participation-card h3{font-size:25px}.participation-card>p{font-size:10px;max-width:none}.card-label{font-size:7px}.distance-art,.kit-art,.entry-art{height:150px}.distance-art>span{font-size:111px}.distance-art small{font-size:30px}.card-link{font-size:10px}.card-link i{width:28px;height:28px}.card-link i svg{width:16px;height:16px}.shirt-art{width:122px;height:142px}.race-bib{width:120px}.race-bib>strong{font-size:52px}.concept-label{font-size:5px}.participation-note{font-size:10px;text-align:left}.good-grid{margin-top:18px;gap:18px}.kit-panel,.impact-panel{border-radius:24px;padding:27px 23px}.kit-panel h2,.impact-panel h2{font-size:35px}.kit-items{gap:22px 14px}.kit-items strong{font-size:12px}.kit-items span{font-size:10px}.kit-items i{width:34px;height:34px}.kit-items>div{gap:9px}.donation-note p,.price-note{font-size:11px}.impact-board{grid-template-columns:repeat(2,1fr);gap:10px}.metric{padding:19px;min-height:105px}.metric strong{font-size:49px}.metric span{font-size:8px}.demo-pill{font-size:6px;padding:7px 9px}.simulation-actions{gap:18px}.simulation-actions .button{font-size:9px;padding:14px 17px}.impact-note{font-size:9px;line-height:1.7}.faq{padding:28px 23px;border-radius:24px;gap:22px;margin-block:18px}.faq h2{font-size:34px}.faq .handwritten{font-size:13px;margin-top:8px}.faq-list summary{font-size:12px}.faq-list details p{font-size:12px}.final-cta{grid-template-columns:1fr;border-radius:24px;padding:30px 24px;gap:25px;margin-bottom:18px}.final-copy{grid-column:auto}.final-copy h2{font-size:54px}.final-copy .handwritten{font-size:14px}.final-card{padding:26px;border-radius:18px}.final-card h3{font-size:30px}.final-card p{font-size:12px}.final-details{font-size:9px}.final-card .button{font-size:11px;padding:14px 20px}footer{padding:20px 10px}dialog{padding:34px 23px}dialog h2{font-size:32px}.hero-art .race-tag{font-size:8px}.hero-art .race-tag b{font-size:20px}}
@media(max-width:370px){.hero-copy{padding-inline:23px}.hero h1{font-size:60px}.hero-actions{gap:12px}.hero-actions .button{padding-inline:17px;font-size:10px}.hero .text-link{font-size:9px}.race-ticket>span{font-size:9px;padding:10px 8px}.hero-art{height:320px}.participation{padding-inline:14px}.participation-card{padding-inline:11px;min-height:300px}.participation-card h3{font-size:22px}.participation-card>p{font-size:10px}.distance-art,.kit-art,.entry-art{height:130px}.distance-art>span{font-size:95px}.shirt-art{width:103px;height:125px}.race-bib{width:101px}.race-bib>strong{font-size:44px}.card-link{font-size:9px}.card-link i{width:24px;height:24px}.kit-panel,.impact-panel{padding:24px 19px}.kit-items{grid-template-columns:1fr}.kit-panel h2,.impact-panel h2{font-size:31px}.final-copy h2{font-size:48px}}
.runner-photo{object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 20%,#000 88%,transparent)}
@media(max-width:370px){.header{padding-inline:16px;gap:10px}.header .button{white-space:nowrap;padding:14px 16px;font-size:9px;gap:10px}.header .button svg{width:16px}}
