:root{--navy:#133a56;--blue:#01b1df;--pale:#e6f7fc}*{box-sizing:border-box}body{margin:0;background:var(--navy);color:white;font:17px/1.55 system-ui,-apple-system,sans-serif}header{max-width:1050px;margin:auto;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff26}.brand{font-weight:750;line-height:1.1;font-size:23px}.tag,.eyebrow{font-size:12px;font-weight:750;letter-spacing:2px;color:var(--blue)}main{max-width:790px;margin:55px auto;padding:0 28px;min-height:65vh}h1{font-size:clamp(32px,6vw,58px);line-height:1.12;letter-spacing:-1.5px;margin:20px 0}h2{font-size:clamp(25px,4vw,36px);line-height:1.25;margin:22px 0}p{color:#deebf2}.intro{max-width:590px;font-size:20px}.meta{display:flex;gap:24px;margin:32px 0;color:#deebf2;font-size:14px}button{font:inherit;cursor:pointer;border:0}button:focus-visible,a:focus-visible{outline:3px solid white;outline-offset:5px}.primary{background:var(--blue);color:var(--navy);padding:15px 25px;border-radius:10px;font-weight:750}.primary:disabled{opacity:.4;cursor:default}.secondary{background:transparent;color:white;padding:15px 0;text-decoration:underline;text-underline-offset:4px}.progress{height:5px;background:#ffffff25;border-radius:5px;margin:15px 0 30px}.progress span{display:block;height:100%;background:var(--blue);border-radius:5px}.options{display:grid;gap:12px;margin:28px 0}.option{display:flex;align-items:center;gap:15px;width:100%;text-align:left;background:var(--pale);color:var(--navy);padding:18px 20px;border:2px solid transparent;border-radius:12px;line-height:1.45}.option:hover{border-color:var(--blue)}.option.selected{background:var(--blue);border-color:white}.letter{border:1px solid #133a5640;border-radius:7px;min-width:32px;height:32px;display:grid;place-items:center;font-weight:700}.nav{display:flex;justify-content:space-between;align-items:center;gap:20px}.panel{background:white;border-radius:18px;padding:30px;color:var(--navy);margin:25px 0}.panel p{color:var(--navy)}.bar-label{display:flex;justify-content:space-between;gap:15px;font-weight:650;margin:20px 0 9px}.track{height:18px;border-radius:12px;background:#edf3f7;overflow:hidden}.fill{height:100%;background:var(--navy);border-radius:12px}.fill.blue{background:var(--blue)}.fine{font-size:13px;opacity:.8}.result-title{font-size:31px;letter-spacing:-.6px}.review{margin-top:30px}.review summary{cursor:pointer;color:var(--blue)}.review li{margin:12px 0;color:#deebf2}footer{text-align:center;padding:25px;color:#b6cedc;font-size:12px}@media(max-width:550px){header{padding:20px}.tag{font-size:9px;max-width:100px;text-align:right}main{margin:32px auto;padding:0 20px}.panel{padding:22px}.option{padding:15px}.meta{gap:16px}h1{letter-spacing:-1px}}

.brand-logo{display:block;width:240px;max-width:55%;height:auto;object-fit:contain}@media(max-width:550px){.brand-logo{width:190px}}

.course-link{display:inline-block;margin:12px 0 28px;padding:13px 22px;border:1px solid var(--blue);border-radius:10px;color:var(--blue);font-weight:700;text-decoration:none}.course-link:hover{background:var(--blue);color:var(--navy)}

.sport-banner{display:block;width:100%;height:230px;object-fit:cover;object-position:center 60%;border-radius:16px;margin:0 0 28px}@media(max-width:550px){.sport-banner{height:160px;margin-bottom:22px}}

.reveal{text-align:center;padding-top:30px}.race-track{position:relative;height:150px;background:#0e2e46;border-radius:15px;overflow:hidden;margin:35px 0}.lane{height:50px;border-bottom:2px dashed #ffffff35}.race-ball{position:absolute;top:52px;left:10px;font-size:35px;animation:race 1.65s ease-in-out forwards}.finish-line{position:absolute;right:35px;top:0;height:150px;width:15px;background:repeating-conic-gradient(white 0% 25%,var(--navy) 0% 50%) 0 0/15px 15px}@keyframes race{from{left:10px;transform:rotate(0)}to{left:calc(100% - 70px);transform:rotate(600deg)}}.result-celebration{color:var(--blue);font-size:44px;animation:pop .55s ease-out}.fill{animation:bar-grow .85s ease-out;transform-origin:left}@keyframes bar-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pop{from{transform:scale(.4) rotate(-25deg);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.retro-pitch{display:block;width:100%;height:auto;image-rendering:pixelated;border:4px solid #01b1df;border-radius:8px;margin:25px auto;max-width:640px;box-shadow:0 12px 0 #0b263a}.reveal h2{font-family:monospace;font-weight:800}
