/* Course carousel only; other website sections are unchanged. */
.course-grid.course-track.stacked{display:block;position:relative;height:480px;overflow:visible;perspective:1200px;scroll-snap-type:none;touch-action:pan-y;padding:0;isolation:isolate}
.stacked .course-card{position:absolute;left:50%;top:12px;width:min(390px,78vw);height:440px;min-height:440px;padding:0 0 24px;overflow:hidden;border-radius:24px;transform:translateX(calc(-50% + var(--pos)*190px)) translateZ(calc(var(--depth)*-100px)) rotateY(calc(var(--pos)*-9deg)) scale(calc(1 - var(--depth)*.07));opacity:calc(1 - var(--depth)*.24);filter:brightness(calc(1 - var(--depth)*.15));transition:transform .55s cubic-bezier(.22,.68,0,1),opacity .45s,filter .45s;box-shadow:0 20px 45px #020b2026;background:var(--surface);color:var(--ink);border:1px solid var(--line);user-select:none}
.stacked .course-card.active-card{box-shadow:0 28px 65px #020b2040;filter:none;opacity:1}
.stacked .course-banner{position:relative;height:188px;flex-shrink:0;padding:20px 24px;overflow:hidden;background:linear-gradient(125deg,#09275b,#225fe4 65%,#719bff);color:#fff;margin-bottom:22px}
.stacked .course-banner:after{content:"";position:absolute;width:220px;height:220px;border:1px solid #ffffff26;border-radius:50%;right:-70px;top:70px;box-shadow:0 0 0 34px #ffffff0d,0 0 0 68px #ffffff0b;pointer-events:none}
.stacked .course-symbol,.stacked .course-card:not(.featured) .course-symbol{position:relative;margin:26px 0 0;font-size:62px;line-height:1.15;color:#ffffffa8;z-index:1}
.stacked .course-code{color:#e0eaff;border:1px solid #ffffff42;border-radius:20px;padding:6px 10px}
.stacked .tag,.stacked .tag.live{color:#174591;background:#edf4ff;font-size:9px;letter-spacing:.06em}
.stacked .course-card h3{margin:0 24px 12px;font-size:25px}.stacked .course-card p{margin:0 24px 16px;color:var(--muted);font-size:13px;line-height:1.75}
.stacked .course-card .text-link{margin:auto 24px 0;padding:13px 14px;border:1px solid var(--line);border-radius:12px;color:var(--blue);text-align:center;background:var(--surface)}
.stacked .course-card.active-card .text-link{background:#1658f4;border-color:#1658f4;color:#fff;box-shadow:0 5px 20px #1658f433}
.course-controls.stack-controls{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:22px;margin:0 auto 12px;max-width:650px}.stack-controls>button{margin:0;width:46px;height:46px;font-size:28px}.stack-controls .course-dots{display:flex;align-items:center;gap:12px}.stack-controls .course-dots button{width:7px;height:7px;padding:0;border:0;border-radius:5px;background:var(--muted);opacity:.4;margin:0;transition:width .3s,opacity .3s}.stack-controls .course-dots button[aria-current="true"]{width:23px;background:var(--blue-2);opacity:1}.course-count{font-size:14px;font-variant-numeric:tabular-nums;font-weight:700}.stack-controls>p{flex-basis:100%;text-align:center;font-size:11px;margin:0;color:var(--muted)}
html[data-theme="dark"] .stacked .course-card{background:#111c2e;border-color:#2a3850;color:var(--ink)}
@media(max-width:700px){.course-grid.course-track.stacked{height:465px}.stacked .course-card{width:min(350px,78vw);height:425px;min-height:425px;transform:translateX(calc(-50% + var(--pos)*105px)) translateZ(calc(var(--depth)*-100px)) rotateY(calc(var(--pos)*-10deg)) scale(calc(1 - var(--depth)*.07))}.stacked .course-banner{height:160px}.stacked .course-symbol{font-size:52px}.stacked .course-card h3{font-size:22px}.course-controls.stack-controls{gap:16px}}
@media(prefers-reduced-motion:reduce){.stacked .course-card{transition:none}}
