.education-page{max-width:1540px;margin:auto;padding:clamp(50px,5vw,76px) var(--pad) 76px;color:var(--navy)}
.education-intro h1{font:600 clamp(34px,3vw,46px)/1.12 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 24px}
.education-intro>p{max-width:none;font-size:18px;line-height:1.65;color:var(--muted);margin:0 0 28px}
.education-nav{display:flex;flex-wrap:wrap;gap:14px 30px;margin-bottom:56px}
.education-nav a{font-size:15px;font-weight:600;text-decoration:none;padding-bottom:6px;border-bottom:2px solid var(--gold)}
.education-section{scroll-margin-top:120px}
.education-section+.education-section{margin-top:64px;padding-top:48px;border-top:1px solid var(--line)}
.education-section h2{font:600 30px/1.25 Manrope,sans-serif;letter-spacing:-.03em;margin:0 0 18px}
.education-page p{line-height:1.65}
.education-section>p,.education-feature p{font-size:18px;color:var(--muted);max-width:none}
.course-list{margin-top:30px}
.course-row{display:grid;grid-template-columns:minmax(240px,28%) minmax(0,1fr);gap:24px 36px;align-items:start;padding:24px 0;border-top:1px solid var(--line)}
.course-row .course-code{font-size:13px;letter-spacing:.08em;font-weight:600;color:var(--blue);margin:0 0 7px}
.course-row h3{font:600 21px/1.35 Manrope,sans-serif;letter-spacing:-.025em;margin:0 0 8px}
.course-row .course-quarter{display:inline-block;font-size:14px;line-height:1.4;color:var(--muted);margin:2px 0 0;padding:3px 9px;background:#f1f4f8;border-radius:3px}
.course-syllabus{display:block;width:fit-content;margin-top:14px;color:var(--navy);font-size:15px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}
.course-syllabus span{font-weight:400;color:var(--muted)}
.course-syllabus:hover,.course-syllabus:focus-visible{border-color:var(--gold)}
.course-row>p{font-size:18px;line-height:1.65;color:var(--muted);margin:0;max-width:none}
.education-activities{margin-top:30px;padding:30px;background:#f4f6fa;border-radius:8px}
.education-activities>h3{font:600 22px/1.35 Manrope,sans-serif;margin:0 0 8px;letter-spacing:-.02em}
.education-activities>p{font-size:17px;color:var(--muted);margin:0 0 24px}
.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.activity-link{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:border-color .18s,box-shadow .18s}
.activity-link:hover,.activity-link:focus-visible{border-color:var(--blue);box-shadow:0 5px 18px #08265310}
.activity-link img{display:block;width:100%;height:auto;aspect-ratio:600/340;object-fit:contain;padding:0;background:#edf2f7}
.activity-link>div{padding:20px}
.activity-link h4{font:600 18px/1.3 Manrope,sans-serif;letter-spacing:-.02em;margin:0 0 10px}
.activity-link p{font-size:16px;color:var(--muted);margin:0 0 16px}
.activity-link span{font-size:15px;font-weight:600}
.education-feature{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.6fr);gap:28px 56px}
.education-feature h2{max-width:360px}
.education-feature .feature-label{font-size:13px;letter-spacing:.08em;color:var(--blue);font-weight:600;margin:0 0 10px}
.education-feature p:first-child{margin-top:0}
.education-feature p:last-child{margin-bottom:0}
.education-links{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:22px}
.education-links a{font-size:16px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}
.education-links a:hover{border-color:var(--gold)}
.vip-products{grid-column:1/-1;margin-top:16px;min-width:0}
.vip-products>h3{font:600 25px/1.3 Manrope,sans-serif;letter-spacing:-.025em;margin:0 0 24px;color:var(--navy)}
.student-project-status{color:var(--muted);font-weight:400}
.portal-title{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center;background:#edf2f7}
.portal-title>span{font:600 clamp(23px,2.3vw,35px)/1.25 Manrope,sans-serif;letter-spacing:-.03em;color:var(--navy)}
.portal-title>small{font-size:11px;letter-spacing:.12em;color:var(--muted)}
.education-feature .vip-image-credit{font-size:12px;line-height:1.5;margin:16px 0 0;color:var(--muted);max-width:none}
.vip-image-credit a{text-underline-offset:3px}
@media(max-width:850px){.course-row,.education-feature{grid-template-columns:1fr;gap:16px}.education-feature h2{max-width:none}.activity-grid{gap:16px}.education-activities{padding:24px}}
@media(max-width:620px){.education-intro>p{font-size:18px}.education-nav{margin-bottom:36px;gap:14px 22px}.education-section+.education-section{margin-top:42px;padding-top:34px}.activity-grid{grid-template-columns:1fr}.activity-link{display:grid;grid-template-columns:100px minmax(0,1fr)}.activity-link img{height:100%;min-height:160px;padding:12px}.activity-link>div{padding:18px}.course-row>p,.education-section>p,.education-feature p{font-size:17px}.education-activities{padding:20px}}
#vip .project-image-wrap{aspect-ratio:5/4;padding:0;background:#fff}
#vip .project-image-wrap img{inset:0;width:100%;height:100%;object-fit:cover}
#vip .project-body p{font-size:18px;line-height:1.65;margin:0 0 22px}
@media(max-width:1000px){#vip .project-body p{font-size:17px}}
@media(max-width:620px){.portal-title>span{font-size:34px}}

/* The map thumbnail is composed at the same 5:4 ratio as the VIP cards. */
#vip .city-access-thumbnail{background:#edf2f7}
#vip .city-access-thumbnail img{object-fit:cover;object-position:center}
