.sr{--sr-ease:cubic-bezier(.16,1,.3,1)}.sr-hero{border-bottom:1px solid var(--line-2);background:radial-gradient(900px 500px at 80% 40%,#1cb58a1f,transparent 60%),radial-gradient(700px 420px at 0% 0%,#1e85d31a,transparent 60%),var(--ink);position:relative;overflow:hidden}.sr-hero__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,72px);padding-top:clamp(28px,4vw,48px);padding-bottom:clamp(44px,7vw,88px);display:grid}.sr-hero__h{font-family:var(--display);color:#fff;margin:14px 0 18px;font-size:clamp(2.6rem,6.5vw,4.8rem);font-weight:400;line-height:1}.sr-hero__tag{font-family:var(--read);color:var(--on-dark);max-width:52ch;margin:0;font-size:1.14rem;line-height:1.6}.sr-stage{color:inherit;transition:transform .35s var(--sr-ease),border-color .35s,box-shadow .35s;background:linear-gradient(160deg,#1cb58a1a,#07131fd9 55%);border:1px solid #27d3a24d;border-radius:18px;padding:22px 24px;text-decoration:none;display:block;box-shadow:0 30px 70px #0006}.sr-stage:hover{border-color:var(--green-bright);transform:translateY(-4px);box-shadow:0 36px 80px #00000073,0 0 0 1px #27d3a240}.sr-stage:focus-visible{outline:2px solid var(--green-bright);outline-offset:4px}.sr-stage__top{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.64rem;display:flex}.sr-stage__lvl{color:var(--green-bright);align-items:center;gap:8px;display:flex}.sr-stage__sem{color:var(--on-dark-mute)}.sr-stage__code{font-family:var(--mono);color:#fff;margin-top:14px;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:700;line-height:1}.sr-stage__name{font-family:var(--read);color:var(--on-dark);margin-top:6px;font-size:1.08rem}.sr-path{align-items:center;gap:0;margin:22px 0 18px;padding:0;list-style:none;display:flex;position:relative}.sr-path:before{content:"";background:linear-gradient(90deg,var(--green),var(--blue-bright));transform-origin:0;height:2px;transition:transform 1.2s var(--sr-ease) .15s;position:absolute;top:50%;left:14px;right:14px}.sr-path__step{z-index:1;transition:transform .5s var(--sr-ease),opacity .5s;flex:1;justify-content:center;display:flex;position:relative}.sr-path__step:first-child{justify-content:flex-start}.sr-path__step:last-child{justify-content:flex-end}.sr-path__dot{width:30px;height:30px;font-family:var(--mono);color:var(--ink);background:var(--green-bright);border-radius:50%;place-items:center;font-size:.72rem;font-weight:700;display:grid;box-shadow:0 0 0 4px #07131fe6}.sr-stage__foot{font-family:var(--mono);color:var(--on-dark-mute);justify-content:space-between;font-size:.72rem;display:flex}.sr-stage__go{color:var(--green-bright);transition:transform .3s var(--sr-ease)}.sr-stage:hover .sr-stage__go{transform:translate(4px)}[data-reveal=armed] .sr-path:before{transition:none;transform:scaleX(0)}[data-reveal=armed] .sr-path__step{opacity:.3;transition:none;transform:scale(.8)}.sr-beats{border-bottom:1px solid var(--line-2);padding:clamp(28px,4vw,44px) 0}.sr-beats__row{counter-reset:beat;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.sr-beat{border:1px solid var(--line-2);transition:transform .6s var(--sr-ease),opacity .6s,border-color .3s;background:#ffffff05;border-radius:12px;flex-direction:column;gap:4px;padding:16px 18px;display:flex;position:relative}.sr-beat:hover{border-color:#3aa0ec66}.sr-beat:not(:last-child):after{content:"→";font-family:var(--mono);color:var(--on-dark-mute);z-index:1;position:absolute;top:50%;right:-12px;transform:translateY(-50%)}.sr-beat__n{font-family:var(--mono);letter-spacing:.14em;color:var(--blue-bright);font-size:.64rem}.sr-beat__t{font-family:var(--display);color:#fff;font-size:1.3rem;font-weight:400}.sr-beat__d{font-family:var(--read);color:var(--on-dark-mute);font-size:.96rem}[data-reveal=armed] .sr-beat{opacity:.3;transition:none;transform:translateY(10px)}.sr-courses{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.sr-course{border:1px solid var(--line-2);background:var(--navy);color:inherit;transition:transform .3s var(--sr-ease),border-color .3s;border-radius:14px;flex-direction:column;gap:4px;padding:24px 26px;text-decoration:none;display:flex}.sr-course--on{border-color:#27d3a24d}.sr-course--on:hover{border-color:var(--green-bright);transform:translateY(-3px)}.sr-course--off{background:0 0;border-style:dashed}.sr-course__lvl{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--blue-bright);align-items:center;gap:8px;font-size:.62rem;display:flex}.sr-course__code{font-family:var(--read);color:#fff;margin-top:8px;font-size:1.35rem}.sr-course--off .sr-course__code{color:var(--on-dark)}.sr-course__name{font-family:var(--read);color:var(--on-dark-mute);font-size:.96rem}.sr-course__pips{gap:5px;margin-top:14px;display:flex}.sr-course__pips span{background:var(--green-bright);opacity:.85;border-radius:3px;flex:1;height:5px}.sr-course__meta{font-family:var(--mono);letter-spacing:.04em;color:var(--on-dark-mute);margin-top:12px;font-size:.64rem}.sr-soon{border:1px solid var(--line);border-radius:999px;padding:3px 9px}@media (max-width:900px){.sr-hero__in,.sr-beats__row,.sr-courses{grid-template-columns:1fr}.sr-beat:not(:last-child):after{content:"↓";inset:auto auto -14px 50%;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.sr *{transition:none!important;animation:none!important}}
