/* Space School — courses page (vertical journey) */
html{scroll-padding-top:90px}
.ssl-courses .c-tint{position:fixed;inset:0;z-index:-1;pointer-events:none;color:#5ee0ff;background:radial-gradient(55% 45% at 75% 35%,currentColor,transparent 70%),radial-gradient(45% 40% at 15% 80%,currentColor,transparent 70%);opacity:.16;transition:color 1s ease}

/* hero */
.c-hero{padding:90px 0 30px;text-align:center}
.c-hero h1{font-size:clamp(40px,6vw,76px);color:#fff}
.c-hero .lead{margin:14px auto 0}
.c-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:30px}
.c-chips a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 18px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);color:#fff;font-weight:800;text-decoration:none;transition:border-color .2s,background .2s}
.c-chips a i{width:11px;height:11px;border-radius:50%;background:var(--sc);box-shadow:0 0 10px var(--sc)}
.c-chips a small{color:var(--muted);font-weight:700}
.c-chips a:hover{border-color:var(--sc);background:rgba(255,255,255,.1)}

/* journey + path + rocket */
.c-journey{position:relative;padding-bottom:40px}
.c-path{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:0}
.c-path .base{fill:none;stroke:rgba(255,255,255,.16);stroke-width:3;stroke-linecap:round;stroke-dasharray:1 13}
.c-path .line{fill:none;stroke:#ffd36b;stroke-width:4;stroke-linecap:round;stroke-dasharray:1 1;stroke-dashoffset:calc(1 - var(--cp,0));filter:drop-shadow(0 0 6px rgba(255,211,107,.7))}
.c-rocket{position:absolute;left:0;top:0;width:54px;height:auto;margin:-40px 0 0 -27px;z-index:4;pointer-events:none;will-change:transform;filter:drop-shadow(0 8px 16px rgba(0,0,0,.45));opacity:0;transition:opacity .4s}
.c-journey.ready .c-rocket{opacity:1}

/* stages */
.c-stage{position:relative;z-index:1;padding:70px 0 10px}
.c-stage-h{text-align:center;margin-bottom:20px}
.c-stage-h span{display:inline-block;padding:6px 16px;border-radius:999px;background:color-mix(in srgb,var(--sc) 22%,transparent);border:1px solid color-mix(in srgb,var(--sc) 60%,transparent);color:#fff;font-weight:800;font-size:14px;letter-spacing:.5px}
.c-stage-h h2{margin-top:10px;font-size:clamp(36px,4.6vw,58px);color:#fff;text-shadow:0 0 40px color-mix(in srgb,var(--sc) 55%,transparent)}
.c-stage-h p{margin:6px 0 0;color:var(--muted);font-weight:700;font-size:17px}

/* level rows */
.c-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;margin:56px 0}
.c-row.is-r .c-planet{order:2}
.c-planet{position:relative;justify-self:center;display:block;width:clamp(190px,22vw,290px);aspect-ratio:1;text-decoration:none;transform:scale(.45);opacity:0;transition:transform .8s cubic-bezier(.2,1.4,.4,1),opacity .5s}
.c-planet img{position:absolute;left:-12%;top:-12%;width:124%;height:124%;object-fit:contain;animation:cfloat 8s ease-in-out infinite}
.c-planet b{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);min-width:46px;height:46px;padding:0 8px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#0c1550;border:2px solid var(--sc);color:#fff;font:700 20px Fredoka,sans-serif;box-shadow:0 0 18px color-mix(in srgb,var(--sc) 60%,transparent);z-index:2}
.c-planet:hover img,.c-planet:focus-visible img{animation-play-state:paused;transform:scale(1.06)}
@keyframes cfloat{50%{transform:translateY(-10px)}}
.st-enrolled .c-planet::after{content:"";position:absolute;inset:-8%;border-radius:50%;border:3px solid var(--gold);animation:cpulse 2.2s ease-out infinite;pointer-events:none}
@keyframes cpulse{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.25);opacity:0}}

.c-card{position:relative;display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:20px;align-items:center;padding:18px;border-radius:28px;background:rgba(10,16,60,.62);border:1px solid rgba(255,255,255,.14);box-shadow:inset 4px 0 0 var(--sc),0 24px 50px rgba(0,0,0,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform:translateX(40px);opacity:0;transition:transform .7s ease .1s,opacity .6s ease .1s}
.c-row.is-r .c-card{transform:translateX(-40px)}
.c-row.in .c-planet{transform:scale(1);opacity:1}
.c-row.in .c-card{transform:none;opacity:1}
.c-cover{display:block;border-radius:18px;overflow:hidden;aspect-ratio:16/11;background:#0a1140}
.c-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.c-card:hover .c-cover img{transform:scale(1.05)}
.c-eyebrow{margin:0;color:var(--sc);font-weight:800;font-size:14px;letter-spacing:.3px}
.c-info h3{margin:4px 0 0;font-size:clamp(26px,2.6vw,34px)}
.c-info h3 a{color:#fff;text-decoration:none}
.c-info h3 a:hover{color:var(--gold)}
.c-meta{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:12px 0 16px;padding:0}
.c-meta li{padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--muted);font-weight:700;font-size:13.5px}
.c-btn{min-height:44px;padding:10px 20px}
.c-btn.is-done{background:rgba(74,222,128,.14);border:2px solid rgba(74,222,128,.6);color:#86efac}
.c-here{display:inline-block;margin-left:10px;padding:5px 12px;border-radius:999px;background:rgba(245,166,35,.18);color:#ffd36b;font-weight:800;font-size:13px}

/* phones */
@media (max-width:760px){
  .c-row{grid-template-columns:96px minmax(0,1fr);gap:16px;margin:30px 0}
  .c-row.is-r .c-planet{order:0}
  .c-planet{width:96px;justify-self:start}
  .c-planet b{min-width:34px;height:34px;font-size:15px;bottom:-10px}
  .c-card{grid-template-columns:1fr;gap:12px;padding:14px;border-radius:22px;transform:translateY(24px)}
  .c-row.is-r .c-card{transform:translateY(24px)}
  .c-stage{padding-top:50px}
  .c-rocket{width:40px;margin:-30px 0 0 -20px}
}
@media (prefers-reduced-motion:reduce){.c-planet,.c-card{transform:none!important;opacity:1!important;transition:none}.c-planet img{animation:none}.c-rocket{display:none}}
