/* Awesome Design Skills / Premium: type hierarchy and spacing rhythm.
   Client overrides: retain Noto Sans KR, original symbol and white surfaces.
   Reference and acceptance criteria: review/design-v25.md. */
:root{--type-page:clamp(40px,4.6vw,68px);--type-section:clamp(36px,3.4vw,52px);--type-card:clamp(25px,2.15vw,32px);--type-body:clamp(18px,1.25vw,19px);--type-small:15px;--space-section:clamp(80px,7.2vw,112px);--space-panel:32px;--space-copy:24px}
body{font-size:var(--type-body);font-weight:500;line-height:1.85;letter-spacing:-.35px}
#main h1,#main h2,#main h3{font-weight:700;word-break:keep-all;overflow-wrap:anywhere}
#main h2{font-size:var(--type-section);line-height:1.36;letter-spacing:-1.4px}
#main .detail-title,#main .profile-heading h1{font-size:var(--type-page);line-height:1.25;letter-spacing:-1.6px}
.section,#programs,.home-interviews,.destinations-section,.journal-section,.process-section{padding-block:var(--space-section)}
.section-heading{gap:32px;margin-bottom:40px;align-items:end}.section-heading h2{margin:0}.section-heading>p,#programs .section-heading>p{font-size:var(--type-body);line-height:1.85;font-weight:500;max-width:580px}
.section-kicker,#philosophy .section-kicker,#programs .section-kicker,.library-view .section-kicker{font-size:16px;line-height:1.6;font-weight:500;letter-spacing:0;margin-bottom:20px}
.text-link,.section-heading .text-link,#philosophy .text-link{font-size:17px;font-weight:500;line-height:1.65;padding-block:12px}
.button{font-size:17px;font-weight:500;line-height:1.6;min-height:52px;padding:14px 24px}
#main .campus-statement h2{font-size:var(--type-section);line-height:1.4;margin-bottom:28px;letter-spacing:-1.5px}.campus-statement>p:last-of-type{font-size:19px;line-height:1.9;max-width:850px;margin-bottom:28px}.statement-brand{font-size:19px;line-height:1.6;margin-bottom:24px}.statement-brand>span{font-size:14px;font-weight:400}.early-stage-links{margin-top:32px;gap:12px}.early-stage-links a{font-size:16px;padding:12px 20px}
#philosophy.founder-editorial{gap:clamp(40px,5vw,80px);padding-bottom:var(--space-section)}#main .founder-letter h2{font-size:var(--type-section);line-height:1.4;margin-bottom:28px}.founder-letter>p{font-size:var(--type-body);line-height:1.9;margin-bottom:24px;font-weight:500}.founder-letter .founder-opening{font-size:21px;font-weight:500;line-height:1.75;margin-bottom:28px}.founder-signature{padding-top:24px;margin-top:32px}.founder-signature>span{font-size:15px}.founder-signature .text-link{font-size:16px}
#programs .section-heading{margin-bottom:40px}#programs .program-card-copy{left:32px;right:32px;bottom:32px}#programs .program-card-copy h3{font-size:var(--type-card);line-height:1.4;margin:12px 0 16px}#programs .program-card-copy>small{font-size:14px;line-height:1.6;font-weight:400}#programs .program-card-copy p{font-size:18px;line-height:1.8;font-weight:500}#programs .program-secondary{gap:24px;margin-top:24px}#programs .program-secondary a.support-program{grid-template-columns:140px minmax(0,1fr);gap:24px;padding:24px}#programs .support-program h3{font-size:27px;line-height:1.4;margin-bottom:12px}#programs .support-program p{font-size:17px;line-height:1.85;font-weight:500}
#main .home-interviews h2,#main .decision-intro h2{font-size:var(--type-section)!important;line-height:1.4;letter-spacing:-1.4px}.home-interviews .interviews-lead{font-size:var(--type-body);line-height:1.9;margin-bottom:32px}.record-tabs button{font-size:17px;line-height:1.65;padding:22px 24px}.case-context,.case-journey{padding:36px}.case-context h3{font-size:32px;line-height:1.5;margin-bottom:24px}.case-narrative{font-size:18px;line-height:1.9;font-weight:500}.case-facts>div{font-size:16px;padding-block:12px}.case-journey li{padding-block:20px}.case-journey li p{font-size:17px;line-height:1.8}.record-note{font-size:14px;line-height:1.85;margin-top:24px}
.decision-section{gap:clamp(40px,5vw,80px)}.decision-intro>p:not(.section-kicker){font-size:var(--type-body);line-height:1.9;font-weight:500;margin-block:24px}.decision-question summary{padding-block:26px}.decision-question strong{font-size:23px;line-height:1.5}.decision-subtitle{font-size:16px;line-height:1.75;margin-top:10px}.decision-body>p{font-size:18px;line-height:1.9}.criteria-select{font-size:16px;padding-block:12px}
.country-tabs{gap:36px;margin-bottom:32px}.country-tabs button{font-size:20px;line-height:1.5;padding-bottom:20px}.country-tabs button span{font-size:14px;font-weight:400;margin-top:8px}.country-info{padding:40px}.country-info h3{font-size:32px;line-height:1.45;margin:18px 0 24px}.country-info>p{font-size:18px;line-height:1.9;font-weight:500}.country-info>small{font-size:16px;font-weight:400}.country-tags span{font-size:14px;padding:7px 11px}.country-info .text-link{font-size:16px;margin-top:24px}
.journal-grid{gap:28px}.journal-card>small{font-size:15px;line-height:1.7;margin-top:20px}.journal-card h3{font-size:26px;line-height:1.45;margin-top:12px}.journal-card>p{font-size:16px;line-height:1.7;margin-top:24px;padding-top:16px}.image-note{font-size:14px;line-height:1.85;margin-top:28px}.process-grid{gap:32px}.process-grid h3{font-size:24px;line-height:1.5;margin:20px 0 16px}.process-grid p{font-size:18px;line-height:1.85;font-weight:500}
#main .contact-copy h2{font-size:var(--type-section);line-height:1.4;letter-spacing:-1.4px}.contact-copy>p:first-child{font-size:16px;margin-bottom:20px}.contact-layout .contact-description{font-size:var(--type-body);line-height:1.9;margin-top:24px}.contact-layout .contact-copy{padding:40px}.contact-layout .button.light{font-size:17px;margin-top:28px}.contact-layout a{font-size:16px;margin-top:24px}
.detail-view{padding-block:64px 96px}.detail-subtitle,.library-view .detail-subtitle{font-size:20px;line-height:1.9;margin-top:28px;max-width:1100px}.detail-layout{margin-top:48px;gap:48px}.reading-content{font-size:19px;line-height:1.95}.reading-content p{margin-block:0 24px}#main .reading-content h2{font-size:30px;line-height:1.5;margin:40px 0 24px}.reading-content summary{font-size:22px;line-height:1.7;padding-block:22px}.detail-sidebar{padding:32px}.detail-sidebar h3{font-size:27px;line-height:1.5}.detail-sidebar p{font-size:17px;line-height:1.9;margin-block:20px 24px}.detail-sidebar a{font-size:16px;line-height:1.8;padding-block:16px}
.library-controls{padding:24px;margin-top:40px;gap:16px}.library-controls input,.library-controls select{font-size:17px;min-height:56px}.library-count{font-size:16px;margin-block:28px}.school-list{gap:36px 28px}#school-results .school-card-body{padding:26px 24px 28px}#school-results .school-card-body h3{font-size:26px;line-height:1.45;letter-spacing:-.5px;margin-top:12px}.school-card-body>small{font-size:15px;line-height:1.7}.school-card .school-read{font-size:16px;margin-top:24px;line-height:1.7}.school-kind{font-size:13px}.library-hero{margin-bottom:32px}
.interview-intro{padding:36px}.interview-toolbar{margin-block:40px 28px}.interview-toolbar p{font-size:18px}.interview-media-note{font-size:16px;line-height:1.85;margin-bottom:28px}.interview-record-heading{padding:28px;gap:24px}.interview-record-heading .interview-grade>span,.interview-school>span,.interview-duration>span{font-size:15px;line-height:1.6}.interview-record-heading .interview-grade>strong{font-size:24px;line-height:1.5}.interview-record-heading .interview-student{font-size:16px;line-height:1.7;font-weight:400}.interview-school>strong,.interview-duration>strong{font-size:18px;line-height:1.7}.interview-body{padding:0 28px 28px;gap:32px}.interview-campus-name{font-size:23px;line-height:1.45;font-weight:700}.interview-campus-day{font-size:14px;line-height:1.7}.interview-itinerary h3{font-size:24px;line-height:1.5}.interview-itinerary li{padding-block:20px}.interview-itinerary li p{font-size:17px;line-height:1.75}.itinerary-day{font-size:15px;line-height:1.75}
.profile-heading{padding:40px 0 32px;gap:32px}.profile-heading p{font-size:17px;line-height:1.8;margin-bottom:20px}.profile-return{font-size:16px}.profile-nav{gap:36px;padding-block:20px;font-size:17px}.profile-layout{padding-top:16px;gap:48px}.profile-main>section{padding-block:36px}.profile-main p{font-size:19px;line-height:1.9;margin-bottom:24px;max-width:760px}#main .profile-main h2{font-size:30px;line-height:1.4;margin-bottom:24px}.profile-programs{gap:0 24px}.profile-programs li{font-size:18px;line-height:1.8;padding-block:18px}.profile-aside{padding:28px}#main .profile-aside h2{font-size:23px;line-height:1.5;margin-bottom:24px}.profile-aside dt{font-size:15px;line-height:1.6;margin-bottom:8px}.profile-aside dd{font-size:17px;line-height:1.8}.profile-aside dl>div{padding-block:18px}.profile-aside>p{font-size:16px;line-height:1.85}.profile-aside .button{font-size:16px;line-height:1.6;padding:14px}.profile-official-links a{font-size:16px;padding:12px 18px}.profile-information{font-size:16px;padding-block:24px}.profile-information p,.profile-main .profile-reference{font-size:15px;line-height:1.85}
.video-caption h3{font-size:27px;line-height:1.45}.video-caption p,.video-caption>a,.video-source-links a{font-size:15px;line-height:1.7}.video-selection strong{font-size:21px;line-height:1.6}.video-selection small,.video-selection>button>span>span{font-size:14px;line-height:1.7}.video-note{font-size:16px;line-height:1.85}.footer-business{font-size:15px;line-height:1.9;padding-block:28px}.footer-top>p{font-size:16px;line-height:1.9}.footer-top>div{font-size:15px;gap:22px}.footer-bottom{font-size:13px;padding-block:28px}.footer-bottom button{font-size:13px}
dialog{padding:36px}dialog h2{font-size:30px;line-height:1.45}.dialog-description{font-size:17px;line-height:1.85;margin-block:20px 28px}form label{font-size:16px;line-height:1.7;margin-bottom:20px}form input,form select,form textarea{font-size:17px;line-height:1.7;padding:13px 15px}.form-note,#privacy-dialog p{font-size:14px;line-height:1.85}#consult-summary{font-size:16px;line-height:1.85}
@media(max-width:1100px){:root{--space-panel:28px}.profile-layout{gap:32px}.case-context,.case-journey{padding:28px}#programs .program-secondary a.support-program{grid-template-columns:110px minmax(0,1fr);padding:20px;gap:20px}.contact-layout .contact-copy{padding:32px}.record-tabs button{font-size:16px;padding:20px 16px}.country-info{padding:32px}.detail-layout{gap:32px}.interview-record-heading{padding:24px;gap:20px}}
@media(max-width:700px){:root{--type-page:36px;--type-section:34px;--type-card:29px;--type-body:17px;--type-small:14px;--space-section:64px;--space-panel:24px}.section-heading{margin-bottom:32px;gap:24px}.section-heading>p,#programs .section-heading>p{font-size:17px;max-width:none;margin-top:20px}.section-heading .text-link{font-size:16px;margin-top:24px}.section-kicker,#philosophy .section-kicker,#programs .section-kicker,.library-view .section-kicker{font-size:14px;margin-bottom:16px}.text-link{font-size:16px}.button{font-size:16px;min-height:50px;padding:13px 18px}.campus-statement>p:last-of-type{font-size:17px;line-height:1.85}.statement-brand{font-size:18px}.statement-brand>span{font-size:12px}.early-stage-links{gap:8px;margin-top:28px}.early-stage-links a{font-size:14px;padding:11px 13px}#main .campus-statement h2,#main .founder-letter h2,#main .home-interviews h2,#main .decision-intro h2{font-size:34px!important;line-height:1.42;letter-spacing:-1px}#philosophy.founder-editorial{gap:32px}.founder-letter{padding:0}.founder-letter>p{font-size:17px}.founder-letter .founder-opening{font-size:19px;line-height:1.8}.founder-signature{gap:20px}.founder-signature>span{font-size:13px}.founder-signature .text-link{font-size:15px}.founder-photo figcaption{font-size:12px}#programs .program-card-copy{left:26px;right:26px;bottom:28px}#programs .program-card-copy h3{font-size:30px}#programs .program-card-copy p{font-size:17px;line-height:1.8;padding-right:0;max-width:290px}#programs .program-secondary a.support-program{grid-template-columns:90px minmax(0,1fr);padding:18px;gap:18px}#programs .support-program h3{font-size:24px}#programs .support-program p{font-size:16px;line-height:1.8}#programs .support-program>div{padding-bottom:0}.home-interviews .interviews-lead{font-size:17px}.record-tabs button{font-size:14px;line-height:1.65;padding:16px 10px}.case-context,.case-journey{padding:26px 22px}.case-context h3{font-size:29px;line-height:1.45}.case-narrative{font-size:17px}.case-facts>div{font-size:15px}.case-journey li p{font-size:16px}.record-note{font-size:13px}.decision-section{gap:32px}.decision-intro>p:not(.section-kicker){font-size:17px}.decision-question strong{font-size:21px}.decision-subtitle{font-size:16px}.decision-body>p{font-size:17px}.criteria-select{font-size:15px}.country-tabs{gap:24px}.country-tabs button{font-size:18px}.country-tabs button span{font-size:12px}.country-info{padding:28px 24px}.country-info h3{font-size:29px}.country-info>p{font-size:17px}.country-tags span{font-size:13px}.journal-grid{gap:36px}.journal-card h3{font-size:27px}.journal-card>small{font-size:14px}.journal-card>p{font-size:16px}.image-note{font-size:13px}.process-grid{gap:32px 20px}.process-grid h3{font-size:21px;line-height:1.5}.process-grid p{font-size:16px;line-height:1.85}.contact-layout .contact-copy{padding:28px 24px}#main .contact-copy h2{font-size:32px;line-height:1.45}.contact-layout .contact-description{font-size:17px}.contact-layout .button.light{font-size:16px;padding:14px 18px}.contact-layout a{font-size:15px}.detail-view{padding-block:40px 64px}.detail-subtitle,.library-view .detail-subtitle{font-size:17px;line-height:1.85;margin-top:24px}.detail-layout{margin-top:32px;gap:32px}.reading-content{font-size:17px;line-height:1.9}#main .reading-content h2{font-size:26px;line-height:1.5;margin:32px 0 22px}.reading-content summary{font-size:20px;line-height:1.65;padding-block:22px}.detail-sidebar{padding:26px}.detail-sidebar h3{font-size:25px}.detail-sidebar p{font-size:17px}.library-controls{padding:18px;gap:12px;margin-top:32px}.library-controls input,.library-controls select{font-size:16px;min-height:52px}.library-count{font-size:15px;margin-block:24px}.school-list{gap:28px}#school-results .school-card-body{padding:24px 22px}#school-results .school-card-body h3{font-size:25px;line-height:1.45}.school-card-body>small{font-size:14px}.school-card .school-read{font-size:15px}.interview-intro{padding:26px 22px}.interview-toolbar p{font-size:16px}.interview-media-note{font-size:15px}.interview-record-heading{padding:24px 22px;gap:20px}.interview-record-heading .interview-grade>strong{font-size:23px}.interview-record-heading .interview-grade>span,.interview-school>span,.interview-duration>span{font-size:14px}.interview-record-heading .interview-student{font-size:15px}.interview-school>strong,.interview-duration>strong{font-size:17px}.interview-body{padding:0 22px 24px;gap:28px}.interview-campus-name{font-size:23px}.interview-campus-day{font-size:14px}.interview-itinerary h3{font-size:22px}.interview-itinerary li p{font-size:16px;line-height:1.8}.itinerary-day{font-size:14px}.profile-heading{padding:28px 0}.profile-heading p{font-size:15px;line-height:1.8;margin-bottom:16px}.profile-return{font-size:15px}.profile-nav{font-size:16px;gap:24px;padding-block:18px}.profile-main>section{padding-block:28px}.profile-main p{font-size:17px;line-height:1.9}.profile-main .profile-reference{font-size:14px}#main .profile-main h2{font-size:26px;line-height:1.45}.profile-programs li{font-size:17px;padding-block:16px}.profile-aside{padding:26px}#main .profile-aside h2{font-size:23px}.profile-aside dt{font-size:14px}.profile-aside dd{font-size:17px}.profile-aside>p{font-size:15px}.profile-official-links{gap:10px}.profile-official-links a{font-size:15px;padding:12px 14px}.profile-information{font-size:15px}.video-caption h3{font-size:25px}.video-selection strong{font-size:20px}.video-selection small,.video-selection>button>span>span{font-size:13px}.video-note{font-size:15px}.footer-business{font-size:14px;gap:12px 22px;padding-block:26px}.footer-top>div{font-size:14px;gap:18px}.footer-bottom,.footer-bottom button{font-size:12px}dialog{padding:28px 22px}dialog h2{font-size:27px}.dialog-description{font-size:16px}form label{font-size:15px}form input,form select,form textarea{font-size:16px}.form-note{font-size:13px}}
@media(max-width:360px){:root{--type-page:32px;--type-section:31px}#main .campus-statement h2,#main .founder-letter h2,#main .home-interviews h2,#main .decision-intro h2{font-size:31px!important}.record-tabs button{font-size:13px;padding-inline:8px}#programs .program-secondary a.support-program{grid-template-columns:76px minmax(0,1fr);gap:14px;padding:16px}#programs .support-program h3{font-size:22px}.process-grid{gap:28px 16px}.process-grid h3{font-size:20px}.profile-nav{gap:20px}}
