.product-shell{color:#08182b;background:#e8eef1;min-height:calc(100svh - 80px);padding:54px 6% 70px}.join-layout{border:1px solid #cad4dd;grid-template-columns:.8fr 1.2fr;max-width:1280px;margin:auto;display:grid}.join-aside{color:#f6f8fb;background:linear-gradient(#08182be6,#08182bd9),url(/alpine-runners.jpg) 50%/cover;padding:46px 38px}.join-aside h1{letter-spacing:-.7px;margin-bottom:25px;font-size:clamp(45px,4.1vw,65px);line-height:1.02}.join-aside>p:not(.eyebrow){color:#cfdeea;font-size:14px;line-height:1.8}.flow-steps{gap:21px;margin:44px 0;padding:0;list-style:none;display:grid}.flow-steps li{color:#adbed0;align-items:center;gap:15px;font-size:13px;display:flex}.flow-steps li span{border:1px solid #ffffff40;place-items:center;width:30px;height:30px;font-size:11px;display:grid}.flow-steps .current{color:#f6f8fb}.flow-steps .current span{color:#38bff4;border-color:#38bff4}.flow-steps [aria-current] span{color:#08182b;background:#38bff4}.aside-note{color:#bdd1e0;border-top:1px solid #ffffff30;gap:12px;padding-top:25px;display:flex}.aside-note svg{flex-shrink:0;margin-top:3px}.aside-note p{margin:0;font-size:12px;line-height:1.8}.flow-panel{background:#f9faf8;min-width:0;padding:40px}.flow-topline{color:#426079;border-bottom:1px solid #cad4dd;justify-content:space-between;gap:18px;margin-bottom:29px;padding-bottom:18px;font-size:11px;display:flex}.flow-panel h2{letter-spacing:-.5px;margin-bottom:20px;font-size:clamp(37px,3.1vw,48px)}.flow-panel h2:focus{outline:none}.flow-help{color:#4b6073;margin-bottom:25px;font-size:14px;line-height:1.8}.sport-options{grid-template-columns:1fr 1fr;gap:13px;margin-bottom:30px;display:grid}.sport-options button{text-align:left;color:#08182b;cursor:pointer;background:0 0;border:1px solid #c4d0d9;gap:12px;min-height:150px;padding:23px;display:grid}.sport-options button[aria-pressed=true]{background:#e5f3f9;border-color:#1476a5;box-shadow:inset 0 0 0 1px #1476a5}.sport-options svg{color:#12688f}.sport-options strong{font-family:var(--font-display);font-size:26px;font-weight:600}.sport-options span{color:#436079;font-size:11px}.flow-panel button,.space-card button{cursor:pointer;font-family:inherit}.flow-panel .button,.space-card .button{text-align:left;border:0;margin-top:18px}.flow-panel button:disabled{cursor:not-allowed;opacity:.5;transform:none}.flow-panel button:focus-visible,.space-card button:focus-visible,.flow-panel input:focus-visible,.flow-panel select:focus-visible{outline-offset:3px;outline:3px solid #1476a5}.field-label{margin:24px 0 10px;font-size:13px;font-weight:600;line-height:1.5;display:block}.flow-panel input:not([type=checkbox]),.flow-panel select{color:#08182b;width:100%;min-height:50px;font:inherit;background:#fff;border:1px solid #aabac7;border-radius:0;padding:12px 14px;font-size:14px}.flow-panel input:disabled{background:#e8eef1}.flow-panel input::placeholder{color:#607185}.search-field{position:relative}.search-field svg{color:#4b6073;position:absolute;top:16px;left:14px}.search-field input{padding-left:44px!important}.suggestions{border:1px solid #c4d0d9;border-top:0}.suggestions>p{margin:0;padding:18px;font-size:13px;line-height:1.7}.suggestions button{color:#08182b;text-align:left;background:#fff;border:0;border-top:1px solid #d9e1e6;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:50px;padding:16px;display:flex}.suggestions button:hover{background:#e5f3f9}.suggestions strong{font-size:14px;font-weight:600;display:block}.suggestions small{color:#4b6073;margin-top:5px;font-size:12px;line-height:1.7;display:block}.suggestions svg{flex-shrink:0}.selected-race{background:#e8eef1;gap:14px;margin:24px 0;padding:20px;display:flex}.selected-race>svg{color:#12688f;flex-shrink:0}.selected-race strong{font-size:16px}.selected-race p{color:#426079;margin:8px 0;font-size:12px;line-height:1.7}.selected-race a{color:#075987;text-underline-offset:3px;font-size:12px;text-decoration:underline}.field-note{color:#4b6073;margin:12px 0;font-size:12px;line-height:1.8}.check-field{cursor:pointer;align-items:flex-start;gap:12px;margin:22px 0;font-size:13px;line-height:1.8;display:flex}.check-field input{accent-color:#12688f;flex-shrink:0;width:20px;height:20px;margin-top:2px}.info-panel,.missing-race{background:#e8eef1;border-left:2px solid #1476a5;margin:24px 0;padding:22px}.info-panel strong{font-size:14px}.info-panel p{color:#426079;margin:12px 0 0;font-size:13px;line-height:1.8}.field-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}.flow-back{color:#426079;background:0 0;border:0;align-items:center;gap:12px;margin-top:16px;padding:16px 0 0;font-size:13px;display:flex}.flow-panel .text-action{text-align:left;background:0 0;border:0}.flow-error{color:#84281e;background:#fff2ee;border:1px solid #a22d26;padding:16px;font-size:14px;line-height:1.7}.flow-error button{color:inherit;background:0 0;border:0;text-decoration:underline}.search-summary{flex-wrap:wrap;gap:8px;margin:24px 0;display:flex}.search-summary span{color:#426079;border:1px solid #b3c5d1;padding:10px;font-size:12px}.result-count{font-size:16px;font-weight:600;line-height:1.8}.empty-result{border-top:1px solid #cad4dd;border-bottom:1px solid #cad4dd;padding:28px 0}.empty-result svg{color:#12688f;margin-bottom:16px}.flow-panel h3{font-family:var(--font-display);margin:0 0 14px;font-size:29px;font-weight:600;line-height:1.1}.empty-result p,.save-panel>p{color:#426079;margin-bottom:12px;font-size:13px;line-height:1.8}.save-panel{background:#e8eef1;border-top:2px solid #1476a5;margin-top:30px;padding:24px}.save-panel .button{gap:16px;max-width:100%}.runner-result{border-top:1px solid #cad4dd;gap:15px;padding:22px 0;display:flex}.runner-result h3{margin-bottom:10px;font-size:26px}.runner-result h3 span{color:#4b6073}.runner-result p{color:#426079;margin-bottom:8px;font-size:13px;line-height:1.7}.runner-result small{color:#075987;font-size:12px;line-height:1.8}.runner-initial{color:#12688f;width:40px;height:40px;font-family:var(--font-display);background:#d9e9f0;flex-shrink:0;place-items:center;font-size:24px;display:grid}.product-footer{color:#bdcfe0;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:25px 6%;font-size:12px;display:flex}.product-footer a{color:#38bff4}.space-shell{max-width:900px;margin:auto}.space-shell>h1{margin:25px 0;font-size:60px;line-height:1.05}.space-card{background:#f9faf8;border:1px solid #c4d0d9;margin-top:25px;padding:28px}.space-card h2{margin:10px 0 20px;font-size:37px}.space-card p{color:#426079;font-size:14px;line-height:1.8}.space-card .space-actions{flex-wrap:wrap;align-items:center;gap:25px;display:flex}.space-card .remove-prepa{color:#84281e;background:0 0;border:0;font-size:13px;text-decoration:underline}@media (max-width:1000px){.product-shell{padding:32px 4% 50px}.join-aside{padding:35px 25px}.flow-panel{padding:30px 25px}.join-layout{grid-template-columns:.7fr 1fr}}@media (max-width:760px){.join-layout{grid-template-columns:1fr}.product-shell{padding:0}.join-aside{padding:30px 6%}.join-aside h1{font-size:43px}.join-aside .eyebrow{margin-bottom:15px}.join-aside>p:not(.eyebrow),.aside-note{display:none}.flow-steps{flex-wrap:wrap;gap:10px;margin:24px 0 0;display:flex}.flow-steps li{gap:8px;font-size:11px}.flow-steps li:not([aria-current]){gap:0;font-size:0}.flow-panel{padding:29px 6% 35px}.flow-panel h2{font-size:39px}.field-pair{grid-template-columns:1fr;gap:0}.sport-options button,.save-panel,.info-panel,.missing-race{padding:20px}.flow-topline{font-size:10px}.space-shell{padding:35px 6%}.space-shell>h1{font-size:48px}}
