:root{color-scheme:light;--navy:#152d54;--blue:#194e9e;--text:#344764;--quiet:#546683;--border:#dce5ef;--paper:#f8f6f0;--soft:#f2f6fb}
*{box-sizing:border-box}
body{margin:0;color:var(--navy);background:white;font-family:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;line-height:1.65;word-break:keep-all;overflow-wrap:anywhere}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure,dl,dd{margin:0}
a{color:inherit;text-underline-offset:.25em}
a:focus-visible,summary:focus-visible{outline:3px solid #286ac6;outline-offset:4px}
.wrap{width:min(1120px,calc(100% - 48px));margin-inline:auto}
.skip{position:absolute;z-index:4;left:12px;top:-200px;background:white;padding:10px}.skip:focus{top:10px}
.site-header{border-top:4px solid var(--navy);border-bottom:1px solid var(--border);background:white}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:19px;font-weight:820;letter-spacing:-.05em}
.brand img{width:108px}
.brand span{border-left:1px solid var(--border);padding-left:12px}
.site-header nav{display:flex;gap:24px;font-size:14px;font-weight:680}
.site-header nav a{text-decoration:none;padding:10px 0}
.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--blue);text-decoration:underline}
.hero{border-bottom:1px solid var(--border);background:linear-gradient(110deg,#faf8f2bb,#f8f5ee28),url('./assets/watercolor.webp') center/cover,var(--paper)}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px;min-height:486px;padding-block:44px}
.eyebrow{font-size:14px;font-weight:750;color:var(--blue);letter-spacing:-.02em}
.eyebrow span{display:inline-block;width:.58em;height:.58em;background:#406eb1;border-radius:50%;margin-right:.31em;vertical-align:.1em}
.hero h1{font-size:clamp(50px,6vw,90px);line-height:1.05;letter-spacing:-.083em;margin-top:12px;font-weight:900}
.hero h1 span{color:#3476bd}
.intro{margin-top:20px;color:var(--text);font-weight:520;font-size:17px}
.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}
.button{min-height:50px;display:flex;gap:12px;align-items:center;justify-content:space-between;border-radius:5px;padding:10px 16px;font-size:15px;font-weight:780;text-decoration:none;border:1px solid var(--navy)}
.primary{color:#fff;background:var(--navy)}.primary:hover{background:#22467c}
.secondary{color:var(--navy);background:#fff}.secondary:hover{background:#ebf1fa}
.hero-art img{width:100%;mix-blend-mode:multiply;mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 95%,transparent);mask-composite:intersect}
.overview{padding-block:33px 45px}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px}
h2{font-size:clamp(22px,3vw,29px);font-weight:850;letter-spacing:-.05em;line-height:1.32}
.status{display:inline-flex;color:#244b82;background:#eaf1fb;border-radius:4px;padding:5px 8px;font-size:12px;font-weight:740}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-top:2px solid var(--navy)}
.facts div{padding:15px 17px;background:#fff}.facts div+div{border-left:1px solid var(--border)}
.facts dt,.small-kicker{font-size:13px;font-weight:740;color:var(--quiet)}
.facts dd{font-size:23px;font-weight:850;line-height:1.32;margin-top:4px;letter-spacing:-.035em}
.facts p{color:var(--quiet);font-size:13px;margin-top:3px}
.text-link{display:inline-block;color:var(--blue);font-size:15px;font-weight:750;margin-top:12px}
.academy{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;border-top:1px solid var(--border);padding-block:26px 44px}
.academy h2{margin-top:5px}.academy>p{color:var(--text)}
footer{border-top:1px solid var(--border);background:var(--soft);padding-block:20px}
.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 15px;color:var(--quiet);font-size:13px}
.footer-inner strong{color:var(--navy)}
.detail{max-width:950px;padding-bottom:45px}
.crumb{font-size:13px;color:var(--quiet);margin-block:22px 20px}.crumb span{padding-inline:6px}
.page-title{padding-block:11px 18px}
.page-title h1{font-size:clamp(34px,6vw,58px);font-weight:900;letter-spacing:-.067em;line-height:1.16;margin:7px 0 10px}
.page-title>p:not(.eyebrow){color:var(--text)}
.jump{display:flex;flex-wrap:wrap;gap:6px 19px;padding:10px 14px;background:var(--soft);border-block:1px solid var(--border);font-weight:720;font-size:14px}
.detail-section{margin-top:29px;scroll-margin-top:12px}
.details-table{border-top:2px solid var(--navy);margin-top:12px}
.details-table>div{display:grid;grid-template-columns:130px 1fr;border-bottom:1px solid var(--border)}
.details-table dt,.details-table dd{padding:10px 12px}
.details-table dt{background:var(--soft);font-weight:780}
.details-table dd{color:var(--text)}small,.note{font-size:13px;color:var(--quiet)}
.note,.section-copy{margin-top:9px;color:var(--quiet)}
.program-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:13px}
.program-grid article{padding:14px 16px;border:1px solid var(--border);background:var(--soft)}
.program-grid h3{font-size:17px;font-weight:800;line-height:1.4;margin-bottom:5px}
.program-grid p,.apply-panel p{color:var(--text)}
.program-grid small{display:block;margin-top:7px}
.apply-panel{border:1px solid var(--border);border-top:3px solid var(--navy);padding:17px}
.apply-panel>p{margin-top:8px}
details{border-top:1px solid var(--border);margin-top:13px;padding-top:9px}
summary{cursor:pointer;font-weight:740}
details p{padding:6px 0 0 15px}
.profile{background:var(--soft);padding:22px 25px}
.profile .profile-line{font-weight:820;margin-bottom:6px}
.practice{margin:11px 0 0;padding-left:23px}
.practice li{padding:7px 0;border-bottom:1px solid var(--border)}
.practice strong{display:inline-block;min-width:100px}.practice span{color:var(--text)}
@media(max-width:700px){
 .wrap{width:calc(100% - 34px)}
 .header-inner{min-height:64px}
 .site-header nav{display:none}
 .brand{font-size:17px;gap:9px}.brand img{width:91px}.brand span{padding-left:9px}
 .hero-grid{grid-template-columns:1fr;gap:14px;min-height:0;padding-block:27px 15px}
 .hero h1{font-size:clamp(45px,12vw,68px);margin-top:8px}
 .intro{font-size:15px;margin-top:12px;max-width:34em}.desktop{display:none}
 .actions{display:grid;gap:8px;margin-top:17px}.button{min-height:47px}
 .hero-art{width:min(350px,100%);margin-inline:auto}
 .overview{padding-block:22px 28px}.facts div{padding:9px 8px}.facts dd{font-size:17px}.facts p{font-size:11px}.facts dt{font-size:11px}
 .academy{grid-template-columns:1fr;gap:6px;padding-block:19px 28px}
 .details-table>div{grid-template-columns:87px 1fr}.details-table dt,.details-table dd{padding:9px 8px}
 .program-grid{grid-template-columns:1fr}.profile{padding:16px}
 .profile .eyebrow{font-size:12px}.profile .page-title{padding:0}
 .profile .page-title>p:not(.eyebrow){font-size:14px}
 .practice strong{display:block}
}
