.academy.campus-edition{display:block;max-width:none;padding:0;background:var(--paper)}
.campus-panorama{height:clamp(250px,31vw,450px);overflow:hidden;margin:0 24px}.campus-panorama img{width:100%;height:100%;object-fit:cover;object-position:center 45%;animation:campus-arrive 1.2s ease both}
.campus-intro,.faculty-spread,.campus-day,.partner-spread,.founder-note{max-width:1280px;margin:0 auto;padding:64px 48px;display:grid;grid-template-columns:38% 1fr;gap:5%}
.campus-intro{padding-top:42px;padding-bottom:100px}.campus-intro h1{font-size:clamp(42px,5.5vw,80px);line-height:1.25;letter-spacing:-.05em}.campus-intro p{font-size:18px;line-height:1.8}.campus-intro .campus-lead{margin-top:24px}.campus-location{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:12px 0}.campus-jump,.campus-link{display:inline-block;font-size:16px;padding:12px 0;color:var(--accent)}
.campus-edition h2,.campus-calendar h2{font-size:clamp(30px,3vw,42px);line-height:1.45;letter-spacing:-.035em}.campus-section-head>p{margin-top:24px;font-size:16px;line-height:1.9}
.faculty-spread{background:#e8eeed;padding-top:56px;padding-bottom:56px}.faculty-main .study-tabs{margin:0 0 32px;gap:24px}.faculty-main .study-tabs button{padding:0 0 12px;background:none;font:500 clamp(26px,3vw,42px) var(--display);color:#556970;opacity:.65;min-height:56px}.faculty-main .study-tabs button[aria-selected=true]{background:none;color:var(--ink);opacity:1;text-decoration:underline;text-decoration-thickness:4px;text-underline-offset:14px}.faculty-main #study-panel{min-height:170px}.faculty-main #study-panel h3{font-size:24px}.faculty-main #study-panel p{max-width:540px;font-size:16px;line-height:1.9}.faculty-main .campus-link{margin-top:10px}
.campus-day{padding-top:100px;padding-bottom:100px}.day-schedule{display:grid;gap:28px}.day-schedule>div{display:grid;grid-template-columns:140px 1fr;column-gap:24px}.day-schedule span{font-size:16px;padding-top:8px;color:#536670}.day-schedule h3{font-size:24px}.day-schedule p{grid-column:2;margin-top:10px;font-size:16px;line-height:1.8}
.partner-spread{background:var(--ink);color:var(--paper);padding-top:60px;padding-bottom:60px}.partner-spread .partner-lead{font:500 30px/1.6 var(--display);margin-bottom:24px}.partner-spread p{max-width:520px;font-size:16px;line-height:1.9}.partner-spread .partner-note{margin-top:28px;color:#bdcbd0}
.founder-note{grid-template-columns:150px 1fr auto;align-items:center;gap:32px;padding-top:64px;padding-bottom:64px}.founder-note img{width:150px;height:180px;object-fit:cover;object-position:center 15%}.founder-note h2{font-size:24px}.founder-note p{margin-top:14px;font-size:16px;max-width:590px}.founder-note a{font-size:16px;color:var(--accent)}
.calendar.campus-calendar{background:#e8eeed;color:var(--ink);padding:64px max(48px,calc((100vw - 1184px)/2));grid-template-columns:38% 1fr;gap:5%;min-height:370px}.campus-calendar h2{margin-bottom:18px}.campus-calendar p{font-size:16px}.campus-calendar .calendar-switch{gap:8px;margin-top:28px}.campus-calendar .calendar-switch button{background:#d8e1e0;color:var(--ink);font-size:16px}.campus-calendar .calendar-switch .active{background:var(--ink);color:var(--paper)}#month-picker{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}#month-picker button{padding:10px 16px;background:transparent;font-size:18px;color:var(--ink)}#month-picker [aria-pressed=true]{background:var(--paper)}.selected-event{display:grid;grid-template-columns:120px 1fr;gap:30px;min-height:150px}.selected-month{font:500 42px/1.4 var(--display)}.selected-event h3{font-size:24px;margin-bottom:18px}.selected-event ul{padding:0;list-style:none;display:grid;gap:10px;font-size:16px}.campus-edition a:hover{text-decoration:underline;text-underline-offset:5px}.campus-calendar button:hover{transform:translateY(-2px)}
@keyframes campus-arrive{from{opacity:.3;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@media(max-width:800px){.campus-intro,.faculty-spread,.campus-day,.partner-spread{padding-left:28px;padding-right:28px;gap:28px;grid-template-columns:1fr 1.5fr}.campus-panorama{margin:0 16px}.campus-intro h1{font-size:46px}.founder-note{padding:48px 28px;grid-template-columns:120px 1fr}.founder-note img{width:120px;height:150px}.founder-note a{grid-column:2}.calendar.campus-calendar{padding:48px 28px;grid-template-columns:1fr;gap:36px}.day-schedule>div{grid-template-columns:1fr}.day-schedule span{margin-bottom:8px}.day-schedule p{grid-column:auto}}
@media(max-width:550px){.campus-panorama{height:240px;margin:0}.campus-intro,.faculty-spread,.campus-day,.partner-spread{display:block;padding:36px 24px}.campus-intro{display:flex;flex-direction:column-reverse;gap:24px;padding-bottom:48px}.campus-intro h1{font-size:42px}.campus-intro p{font-size:16px}.campus-location{gap:16px}.campus-location p br{display:none}.campus-edition h2{font-size:30px}.campus-section-head{margin-bottom:28px}.faculty-main .study-tabs{gap:28px}.faculty-main .study-tabs button{font-size:30px}.faculty-main #study-panel{min-height:180px}.faculty-main #study-panel h3{font-size:22px}.campus-day{padding-top:48px;padding-bottom:48px}.day-schedule{gap:28px}.day-schedule>div{grid-template-columns:115px 1fr;gap:8px 16px}.day-schedule span{font-size:14px}.day-schedule h3{font-size:22px}.day-schedule p{grid-column:2;margin-top:0}.partner-spread>h2{margin-bottom:28px}.partner-spread .partner-lead{font-size:24px}.founder-note{padding:36px 24px;grid-template-columns:88px 1fr;gap:16px}.founder-note img{width:88px;height:120px;align-self:start}.founder-note h2{font-size:22px}.founder-note p{font-size:14px}.founder-note a{font-size:14px}.calendar.campus-calendar{padding:36px 24px}.campus-calendar h2{font-size:30px}.selected-event{grid-template-columns:70px 1fr;gap:20px}.selected-month{font-size:30px}.selected-event h3{font-size:22px}#month-picker{gap:4px;margin-bottom:28px}#month-picker button{font-size:16px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.campus-panorama img{animation:none}.campus-calendar button:hover{transform:none}}

.founder-note{grid-template-columns:150px 1fr}@media(min-width:551px) and (max-width:800px){.calendar.campus-calendar{grid-template-columns:32% 1fr;gap:28px}.selected-event{grid-template-columns:70px 1fr;gap:18px}.selected-month{font-size:30px}.selected-event h3{font-size:22px}}@media(max-width:550px){.founder-note{grid-template-columns:88px 1fr}.faculty-main #study-panel{min-height:150px}}

/* The courtyard sets the colour and scale of the academy. */
.campus-arrival{position:relative;isolation:isolate;min-height:640px;height:min(760px,calc(100svh - 88px));margin:0 24px;overflow:hidden;background:#18384d;color:#fff}
.campus-landscape{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;z-index:-2;animation:campus-arrive 1.2s ease both}
.campus-arrival:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,26,40,.66),rgba(7,26,40,.12) 72%)}
.campus-arrival-copy{position:absolute;left:clamp(28px,5vw,80px);bottom:64px}
.campus-arrival h1{font:500 clamp(56px,6vw,88px)/1.16 var(--display);letter-spacing:-.055em;color:#fff;margin:0 0 28px}
.campus-arrival-copy p{font-size:18px;line-height:1.8;color:#fff;margin:0 0 30px}
.campus-arrival-copy a{display:inline-flex;align-items:center;gap:40px;padding:15px 22px;background:#fff;color:#18384d;font:500 16px/1.4 "Noto Sans KR",sans-serif;min-height:52px;transition:transform .2s,background .2s}
.campus-arrival-copy a:hover{background:#e8f4f8;transform:translateY(-2px)}
.campus-arrival-copy a:focus-visible{outline:3px solid #fff;outline-offset:5px}
.campus-arrival-location{position:absolute;right:40px;bottom:30px;font-size:14px;color:#fff;margin:0}
.campus-welcome{max-width:1280px;margin:auto;padding:68px 48px 76px;display:flex;align-items:center;justify-content:space-between;gap:48px}
.campus-edition .campus-welcome h2{font-size:clamp(28px,3vw,40px);line-height:1.4;margin:0}
.campus-welcome p{font-size:16px;line-height:1.8;margin:0}
.campus-edition .faculty-spread{background:#eaf0f3}
.campus-edition .faculty-main .study-tabs button{font:500 20px/1.4 "Noto Sans KR",sans-serif;min-height:44px}
.campus-edition .faculty-main #study-panel{min-height:126px}
.campus-week{max-width:1280px;margin:auto;padding:100px 48px 84px}
.week-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:36px}
.week-heading h2{margin:0}.week-heading p{font-size:16px;line-height:1.8;margin:0}
.week-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:4px;font-size:18px;color:#253b46}
.week-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.week-table th,.week-table td{padding:26px 12px;text-align:center;vertical-align:middle;background:#eaf0f3;font-weight:400}
.week-table thead th{background:#253b46;color:#fff;padding:18px 10px;font-size:16px;font-weight:500}
.week-table thead th:first-child{width:170px;background:transparent;color:#253b46;text-align:left}
.week-table tbody th{background:transparent;text-align:left;font-size:14px;font-variant-numeric:tabular-nums}
.week-table tbody th span{display:block;font-size:18px;margin-bottom:8px}
.week-table .week-major{background:#dce9ed;font-size:24px}.week-major span{display:block;font-size:14px;margin-top:9px}
.week-table .week-free{background:#f0f0ed;color:#56636b}
.week-after{display:flex;justify-content:space-between;align-items:start;gap:36px;margin-top:36px;padding:32px 0 0}
.week-after h3{font:500 26px/1.5 var(--display);margin:0}.week-after p{font-size:16px;line-height:1.8;margin:0 0 16px}
.week-after a{display:inline-flex;gap:28px;color:#245b75;font-size:16px;padding:8px 0}
.week-after a:hover{text-decoration:underline;text-underline-offset:6px}
.week-mobile{display:none}
@media(max-width:800px){.campus-arrival{margin:0 16px;height:640px;min-height:0}.campus-arrival-copy{left:32px;bottom:56px}.campus-arrival-location{right:24px;bottom:20px}.campus-welcome{padding:44px 28px;gap:28px;align-items:start}.campus-welcome h2{max-width:48%}.campus-week{padding:64px 28px}.week-table thead th:first-child{width:126px}.week-table th,.week-table td{padding:22px 6px;font-size:16px}.week-table tbody th{font-size:13px}.week-major span{font-size:13px}}
@media(max-width:550px){.campus-arrival{margin:0;height:620px;max-height:calc(100svh - 100px);min-height:540px}.campus-landscape{object-position:56% center}.campus-arrival:after{background:linear-gradient(0deg,rgba(7,26,40,.82),rgba(7,26,40,.06) 95%)}.campus-arrival-copy{left:24px;bottom:48px}.campus-arrival h1{font-size:56px;margin-bottom:20px}.campus-arrival-copy p{font-size:16px;margin-bottom:22px}.campus-arrival-copy a{padding:13px 18px}.campus-arrival-location{bottom:14px;right:24px;font-size:13px}.campus-welcome{display:block;padding:36px 24px 44px}.campus-edition .campus-welcome h2{font-size:28px;max-width:none;margin-bottom:18px}.campus-week{padding:48px 24px}.week-heading{display:block;margin-bottom:24px}.week-heading p{margin-top:16px}.week-desktop{display:none}.week-mobile{display:block}.week-day{display:grid;grid-template-columns:68px 1fr;gap:20px;padding:22px 0}.week-day:nth-child(odd){background:#eaf0f3;margin:0 -12px;padding-left:12px;padding-right:12px}.week-day h3{font:500 18px/1.5 "Noto Sans KR",sans-serif;margin:0}.week-day p{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:16px;margin:0}.week-day p+p{margin-top:14px}.week-day p span{font-size:13px;color:#536670;white-space:nowrap;font-variant-numeric:tabular-nums}.week-after{display:block;margin-top:28px;padding-top:0}.week-after h3{font-size:24px;margin-bottom:18px}.week-after h3 br{display:none}}
@media(prefers-reduced-motion:reduce){.campus-landscape{animation:none}.campus-arrival-copy a{transition:none}.campus-arrival-copy a:hover{transform:none}}

/* One entrance, then motion only in response to a choice. */
.campus-landscape{animation:none}
.faculty-main .study-tabs.has-marker{position:relative;padding-bottom:5px}
.faculty-main .study-tabs.has-marker button[aria-selected=true]{text-decoration:none}
.study-marker{position:absolute;left:0;bottom:0;height:3px;background:var(--ink);transform-origin:left center;pointer-events:none}
.campus-arrival-copy a span{transition:transform .2s ease}
.campus-arrival-copy a:hover span{transform:translateY(3px)}
.campus-arrival-copy a:active{transform:translateY(1px)}
@media(prefers-reduced-motion:reduce){.campus-arrival-copy a span{transition:none}.campus-arrival-copy a:hover span,.campus-arrival-copy a:active{transform:none}}
