.pass-page { padding-top: calc(var(--nav-height, 80px) + 36px); padding-bottom: 100px; min-height: 100vh; }
.pass-hero { text-align: center; max-width: 820px; margin: 0 auto 40px; }
.pass-hero h1 { font-family: 'Bebas Neue', sans-serif; font-size: clamp(2.4rem, 6vw, 4.2rem); letter-spacing: .04em; }
.pass-hero p { color: rgba(255,255,255,.7); line-height: 1.6; }
.pass-dates { display: flex; justify-content: center; gap: 18px; flex-wrap: wrap; margin-top: 16px; font-weight: 700; color: #67e8f9; }
.pass-me {
    max-width: 720px; margin: 0 auto 36px; padding: 22px; border-radius: 18px;
    background: rgba(12,10,32,.72); border: 1px solid rgba(34,211,238,.25);
    display: grid; gap: 10px;
}
.pass-me .bar { height: 10px; border-radius: 99px; background: rgba(255,255,255,.08); overflow: hidden; }
.pass-me .bar span { display: block; height: 100%; background: linear-gradient(90deg, #22d3ee, #a78bfa); }
.pass-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1000px; margin: 0 auto 40px; }
.pass-card {
    background: rgba(12,10,32,.72); border: 1px solid rgba(255,255,255,.08);
    border-radius: 18px; padding: 22px;
}
.pass-card h3 { margin: 0 0 10px; }
.pass-card ul { margin: 0; padding-left: 18px; color: rgba(255,255,255,.7); line-height: 1.7; }
.pass-majors { max-width: 1000px; margin: 0 auto 40px; display: grid; gap: 8px; }
.pass-major {
    display: grid; grid-template-columns: 70px 1fr; gap: 12px; align-items: center;
    padding: 12px 16px; border-radius: 12px; background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.06);
}
.pass-major b { color: #22d3ee; }
.pass-lb { max-width: 640px; margin: 0 auto; }
.pass-lb ol { margin: 0; padding-left: 22px; line-height: 1.9; }
@media (max-width: 800px) { .pass-grid { grid-template-columns: 1fr; } }
