:root{--navy:#0d1b2f;--navy2:#132944;--navy3:#1b3857;--gold:#c9a467;--gold2:#ead5ae;--ivory:#f7f3ea;--paper:#fffdf8;--ink:#172233;--muted:#667082;--line:#ddd8ce;--green:#176b55;--shadow:0 24px 80px rgba(13,27,47,.12)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px;overflow-x:hidden}
body{font-family:"Noto Sans KR",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7;word-break:keep-all;overflow-x:hidden}
a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}img,svg{display:block;max-width:100%}
.container{width:min(1240px,calc(100% - 48px));margin:0 auto}.section{padding:clamp(90px,10vw,150px) 0}
.skip-link{position:fixed;left:16px;top:-100px;z-index:10000;padding:12px 18px;background:#fff;color:#111}.skip-link:focus{top:16px}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--gold2);text-transform:uppercase}
.eyebrow>span{width:38px;height:1px;background:currentColor}.eyebrow.dark{color:#98713b}.eyebrow.light{color:var(--gold2)}
.section-heading h2{margin-top:18px;font-size:clamp(34px,4.5vw,58px);line-height:1.25;letter-spacing:-.045em;font-weight:800}
.section-heading h2 em{font-family:"Noto Serif KR",serif;font-style:normal;color:#9b7741}
.section-heading>p:not(.eyebrow){margin-top:22px;color:var(--muted);font-size:16px}
.section-heading.center{text-align:center}.section-heading.center .eyebrow{justify-content:center}.section-heading.center>p:not(.eyebrow){max-width:640px;margin:22px auto 0}
.section-heading.split{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}.section-heading.split>p{padding-bottom:10px}
.section-heading.inverse{color:#fff}.section-heading.inverse h2 em{color:var(--gold2)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:56px;padding:0 28px;border:1px solid transparent;font-size:14px;font-weight:800;transition:.25s}
.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:var(--navy)}.button-gold:hover{background:#ddb979}
.button-line{border-color:rgba(255,255,255,.35);color:#fff}.button-line:hover{background:#fff;color:var(--navy)}
.button-dark{margin-top:28px;background:var(--navy);color:#fff}
.site-header{position:absolute;inset:0 0 auto;z-index:100;height:84px;color:#fff;border-bottom:1px solid rgba(255,255,255,.12);transition:.3s}
.site-header.fixed{position:fixed;background:rgba(13,27,47,.96);box-shadow:0 8px 30px rgba(0,0,0,.15);backdrop-filter:blur(14px)}
.header-inner{height:100%;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center;gap:12px;flex:none}
.brand-symbol{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);color:var(--gold2);font-family:Noto Sans KR,sans-serif;font-size:24px;font-weight:700;transform:rotate(45deg)}
.brand-copy{display:flex;flex-direction:column;line-height:1.15}.brand-copy b{font-size:17px;letter-spacing:.04em}.brand-copy small{margin-top:4px;font-size:10px;letter-spacing:.3em;color:rgba(255,255,255,.7)}
.main-nav{display:flex;align-items:center;gap:28px;margin-left:auto}.main-nav a{position:relative;font-size:13px;font-weight:600;color:rgba(255,255,255,.84)}
.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:1px;background:var(--gold);transition:.25s}.main-nav a:hover::after{right:0}
.header-call{display:flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid rgba(255,255,255,.25);font-size:12px;font-weight:700}.header-call svg{width:15px;fill:var(--gold2)}.header-call span{color:rgba(255,255,255,.55);font-size:10px}
.menu-toggle{display:none;margin-left:auto;width:42px;height:42px;border:0;background:transparent}.menu-toggle span{display:block;width:24px;height:1px;background:#fff;margin:6px auto;transition:.25s}
.hero{position:relative;min-height:890px;height:100svh;background:linear-gradient(135deg,#091422 0%,var(--navy) 48%,#15314e 100%);color:#fff;overflow:hidden}
.hero::before{content:"";position:absolute;width:650px;height:650px;right:-180px;top:-180px;border:1px solid rgba(201,164,103,.18);border-radius:50%;box-shadow:0 0 0 90px rgba(201,164,103,.025),0 0 0 180px rgba(201,164,103,.02)}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(90deg,transparent,#000 35%,#000)}
.hero-inner{position:relative;height:100%;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;padding-top:80px}
.hero-copy{position:relative;z-index:2}.hero h1{margin-top:25px;font-size:clamp(46px,5.5vw,76px);line-height:1.22;letter-spacing:-.055em;font-weight:800}
.hero h1 em{font-family:"Noto Serif KR",serif;font-style:normal;color:var(--gold2);font-weight:700}.hero-lead{max-width:650px;margin-top:28px;color:rgba(255,255,255,.72);font-size:clamp(16px,1.45vw,19px);line-height:1.85}
.hero-actions{display:flex;gap:12px;margin-top:40px}.hero-points{display:flex;margin-top:58px;padding-top:30px;border-top:1px solid rgba(255,255,255,.15)}
.hero-points div{display:flex;align-items:baseline;gap:10px;padding:0 28px;border-right:1px solid rgba(255,255,255,.15)}.hero-points div:first-child{padding-left:0}.hero-points div:last-child{border:0}
.hero-points b{font-family:"Noto Serif KR",serif;color:var(--gold2);font-size:22px}.hero-points span{font-size:11px;color:rgba(255,255,255,.55)}
.hero-visual{position:relative;padding:10px}.hero-photo{position:relative;overflow:hidden;aspect-ratio:1/1;border:1px solid rgba(255,255,255,.18);background:#0b1a2c;box-shadow:0 40px 100px rgba(0,0,0,.32);transform:none}.hero-photo::after{content:"";position:absolute;inset:14px;border:1px solid rgba(234,213,174,.28);pointer-events:none}.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.years-badge{position:absolute;right:-35px;bottom:-35px;display:flex;align-items:center;gap:14px;padding:18px 22px;background:var(--gold);color:var(--navy);box-shadow:0 20px 50px rgba(0,0,0,.25)}.years-badge strong{font-family:Noto Sans KR,sans-serif;font-size:44px;line-height:1}.years-badge span{font-size:8px;font-weight:800;letter-spacing:.15em;line-height:1.5}
.scroll-cue{position:absolute;bottom:27px;left:50%;display:flex;align-items:center;gap:12px;transform:translateX(-50%);font-size:8px;letter-spacing:.22em;color:rgba(255,255,255,.38)}.scroll-cue i{display:block;width:40px;height:1px;background:rgba(255,255,255,.25)}
@media(prefers-reduced-motion:no-preference){.js .anim{opacity:0;transform:translateY(22px);animation:rise .8s cubic-bezier(.2,.7,.2,1) forwards}.js .anim.d1{animation-delay:.1s}.js .anim.d2{animation-delay:.2s}.js .anim.d3{animation-delay:.32s}.js .anim.d4{animation-delay:.44s}.js .anim.d5{animation-delay:.56s}@keyframes rise{to{opacity:1;transform:none}}}
.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}.intro-copy{padding-top:18px}.intro-copy .lead{font-family:"Noto Serif KR",serif;font-size:clamp(23px,2.5vw,34px);line-height:1.65;color:#2b3544}.intro-copy>p:not(.lead){margin-top:28px;color:var(--muted);font-size:16px}
.principle-flow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:46px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.principle-flow span{font-size:13px;font-weight:800}.principle-flow i{font-style:normal;color:var(--gold)}
.strengths{background:var(--ivory)}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:64px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.strength-card{position:relative;min-height:320px;padding:38px 34px;background:rgba(255,255,255,.55);border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.3s;overflow:hidden}.strength-card:hover{z-index:2;background:#fff;box-shadow:var(--shadow);transform:translateY(-5px)}
.strength-card.accent-card{background:var(--navy);color:#fff}.strength-card.accent-card p{color:rgba(255,255,255,.62)}.card-no{position:absolute;right:24px;top:20px;font-size:10px;letter-spacing:.15em;color:#a89980}
.strength-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:38px;border:1px solid #cdbb9e;border-radius:50%;font-family:"Noto Serif KR",serif;color:#98713b;font-size:22px}.accent-card .strength-icon{border-color:rgba(234,213,174,.4);color:var(--gold2)}
.strength-card h3{font-size:19px;letter-spacing:-.03em}.strength-card p{margin-top:14px;color:var(--muted);font-size:14px;line-height:1.85}
.director{padding:0;background:var(--navy);color:#fff}.director-grid{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr}.director-profile{position:relative;min-height:720px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 42%,#2a4a68,#10233a 58%,#091727);overflow:hidden}
.director-profile::before{content:"";position:absolute;inset:9%;border:1px solid rgba(201,164,103,.25);transform:rotate(45deg) scale(.72)}.director-profile::after{content:"";position:absolute;width:560px;height:560px;border-radius:50%;border:1px solid rgba(255,255,255,.08)}
.profile-monogram{position:relative;z-index:1;text-align:center;line-height:.8}.profile-monogram>span,.profile-monogram>strong{display:block;font-family:"Noto Serif KR",serif;color:rgba(255,255,255,.92)}.profile-monogram>span{font-size:70px;letter-spacing:.12em}.profile-monogram>strong{font-size:160px;color:transparent;-webkit-text-stroke:1px rgba(234,213,174,.7);letter-spacing:-.06em}.profile-monogram small{display:block;margin-top:52px;color:var(--gold2);font-size:9px;letter-spacing:.25em;line-height:1.8}
.profile-label{position:absolute;left:55px;bottom:45px;z-index:2;display:flex;flex-direction:column}.profile-label span{font-size:11px;color:rgba(255,255,255,.5)}.profile-label b{font-size:20px;margin-top:5px}
.director-message{display:flex;flex-direction:column;justify-content:center;padding:90px clamp(48px,7vw,130px)}.director-message h2{margin:24px 0 36px;font-family:"Noto Serif KR",serif;font-size:clamp(34px,3.7vw,54px);line-height:1.5;font-weight:600}.director-message>p:not(.eyebrow){margin-top:18px;color:rgba(255,255,255,.68);font-size:15px;line-height:1.9}.text-link{width:max-content;margin-top:38px;padding-bottom:7px;border-bottom:1px solid var(--gold);color:var(--gold2);font-size:13px;font-weight:700}.text-link span{margin-left:14px}
.programs{background:var(--paper)}.program-group{display:grid;grid-template-columns:280px 1fr;margin-top:70px;border-top:2px solid var(--navy)}.program-group+.program-group{margin-top:44px}.program-title{padding:38px 30px 30px 0}.program-title>span{font-size:10px;font-weight:900;letter-spacing:.18em;color:#9b7741}.program-title h3{margin-top:16px;font-size:27px}.program-title p{margin-top:12px;color:var(--muted);font-size:13px}
.program-list{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--line)}.program-list article{display:grid;grid-template-columns:45px 1fr;gap:8px;min-height:250px;padding:38px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.25s}.program-list article:hover{background:var(--ivory)}.program-list article>span{font-family:Noto Sans KR,sans-serif;color:#a98d64;font-size:15px}.program-list .tag{font-size:9px;font-weight:900;letter-spacing:.14em;color:#a98d64}.program-list h4{margin-top:14px;font-size:20px}.program-list h4 small{font-size:11px;color:var(--muted);font-weight:600}.program-list article div>p:last-child{margin-top:15px;color:var(--muted);font-size:13px;line-height:1.85}.program-list .personal{background:#f2eadb}.program-list.compact article{min-height:220px}
.tuition{background:#f1ede4}.tuition-heading>p{max-width:440px}.tuition-board{margin-top:62px;background:#fff;border-top:4px solid var(--navy);box-shadow:0 28px 70px rgba(13,27,47,.1)}
.tuition-meta{display:grid;grid-template-columns:.85fr 1.15fr 1.35fr 1fr;margin:0;border-bottom:1px solid var(--line)}.tuition-meta>div{min-width:0;padding:25px 26px;border-right:1px solid var(--line)}.tuition-meta>div:last-child{border-right:0}.tuition-meta dt{margin-bottom:8px;color:#9b7741;font-size:10px;font-weight:900;letter-spacing:.12em}.tuition-meta dd{font-size:15px;font-weight:700;line-height:1.55}.tuition-meta a{color:inherit}
.tuition-table{width:100%;border-collapse:collapse;table-layout:fixed}.tuition-table caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tuition-table th,.tuition-table td{padding:23px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}.tuition-table th:last-child,.tuition-table td:last-child{border-right:0}.tuition-table thead th{padding-top:19px;padding-bottom:19px;background:var(--navy);color:#fff;font-size:13px;font-weight:800}.tuition-table thead th:first-child{width:31%}.tuition-table tbody th{background:#fbf6e8;color:var(--ink);font-size:16px;font-weight:800}.tuition-table tbody td{font-size:15px;font-weight:600}.tuition-table tbody tr:last-child th,.tuition-table tbody tr:last-child td{border-bottom:0}.tuition-table .tuition-fee{color:#c62f3c;font-size:19px;font-weight:900;white-space:nowrap}
.learning{position:relative;background:var(--navy);color:#fff;overflow:hidden}.learning::before{content:"∑";position:absolute;right:-30px;top:-130px;font-family:Noto Sans KR,sans-serif;font-size:500px;color:rgba(255,255,255,.025);line-height:1}.learning-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:70px;border-top:1px solid rgba(255,255,255,.15);border-left:1px solid rgba(255,255,255,.15)}
.learning-card{padding:42px;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.learning-card.exam{grid-column:1/-1;display:grid;grid-template-columns:1.1fr .55fr 1.8fr;gap:50px;align-items:center}
.learning-head{display:flex;gap:18px;margin-bottom:34px}.learning-head>span{color:var(--gold);font-family:Noto Sans KR,sans-serif}.learning-head h3{font-size:22px}.learning-head p{margin-top:5px;color:rgba(255,255,255,.5);font-size:12px}.school-row,.book-level{display:grid;grid-template-columns:82px 1fr;gap:18px;padding:15px 0;border-top:1px solid rgba(255,255,255,.1)}.school-row b,.book-level span{font-size:11px;color:var(--gold2)}.school-row p,.book-level p{font-size:13px;color:rgba(255,255,255,.7)}
.exam-number{display:flex;align-items:flex-end;gap:12px}.exam-number strong{font-family:Noto Sans KR,sans-serif;color:var(--gold2);font-size:78px;line-height:1}.exam-number strong small{font-family:"Noto Sans KR",sans-serif;font-size:13px}.exam-number>span{padding-bottom:10px;color:rgba(255,255,255,.55);font-size:11px}.exam-flow{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.exam-flow span{padding:8px 12px;border:1px solid rgba(234,213,174,.25);font-size:11px}.exam-flow i{color:var(--gold);font-style:normal}.learning-card.exam>p{color:rgba(255,255,255,.62);font-size:13px}
.faq{background:var(--ivory)}.faq-grid{display:grid;grid-template-columns:330px 1fr;gap:100px;align-items:start}.faq-heading{position:sticky;top:130px}.faq-heading>p:not(.eyebrow){font-size:14px}
.faq-list{border-top:2px solid var(--navy)}.faq-list details{border-bottom:1px solid #cfc8bb}.faq-list summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:45px 1fr 28px;align-items:center;min-height:82px;padding:0 18px;font-size:16px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:#a17a42;font-family:Noto Sans KR,sans-serif;font-size:14px}.faq-list summary i{position:relative;width:16px;height:16px}.faq-list summary i::before,.faq-list summary i::after{content:"";position:absolute;left:0;top:7px;width:16px;height:1px;background:var(--navy);transition:.25s}.faq-list summary i::after{transform:rotate(90deg)}.faq-list details[open] summary i::after{transform:rotate(0)}.faq-list .answer{padding:0 55px 28px;color:var(--muted);font-size:14px;line-height:1.9}.faq-list .answer a{text-decoration:underline;color:#8c6732}
.consult{background:linear-gradient(135deg,#10253e,#0a1728);color:#fff}.consult-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}.consult-info h2{margin-top:22px;font-size:clamp(36px,4vw,56px);line-height:1.35;letter-spacing:-.045em}.consult-info>p:not(.eyebrow){margin-top:22px;color:rgba(255,255,255,.6)}
.consult-info dl{margin-top:48px;border-top:1px solid rgba(255,255,255,.14)}.consult-info dl>div{display:grid;grid-template-columns:70px 1fr;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.14)}.consult-info dt{font-size:11px;color:var(--gold2)}.consult-info dd{font-size:14px}.consult-info dd small{display:block;margin-top:3px;color:rgba(255,255,255,.45)}
.consult-social{display:flex;gap:10px;margin-top:30px}.consult-social a{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid rgba(255,255,255,.18);font-size:11px}.consult-social b{color:var(--gold2)}
.sf-ct-form{padding:44px;background:#fff;color:var(--ink);box-shadow:0 35px 90px rgba(0,0,0,.25)}.form-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px}.form-title span{font-size:22px;font-weight:800}.form-title p{color:var(--muted);font-size:11px}.sf-ct-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sf-ct-field{margin-bottom:17px}.sf-ct-field label{display:block;margin-bottom:7px;font-size:12px;font-weight:700}.sf-ct-field label span{color:#b97539}.sf-ct-field label small{color:#9aa0aa;font-weight:500}.sf-ct-field input,.sf-ct-field textarea{width:100%;border:1px solid #d8dce2;background:#f8f9fa;padding:13px 14px;font-size:14px;outline:0;transition:.2s}.sf-ct-field textarea{min-height:120px;resize:vertical}.sf-ct-field input:focus,.sf-ct-field textarea:focus{border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px rgba(201,164,103,.13)}.sf-ct-agree{display:flex;align-items:flex-start;gap:8px;color:#777f8b;font-size:11px}.sf-ct-agree input{margin-top:5px;accent-color:var(--navy)}.sf-ct-submit{width:100%;margin-top:22px;padding:16px;border:0;background:var(--gold);color:var(--navy);font-size:14px;font-weight:900;cursor:pointer}.sf-ct-submit span{margin-left:15px}.sf-ct-submit:disabled{opacity:.6}.sf-ct-msg{display:none;margin-top:12px;text-align:center;font-size:12px}.sf-ct-msg.show{display:block}.sf-ct-msg.ok{color:var(--green)}.sf-ct-msg.err{color:#b23a3a}
.location{background:var(--paper)}.location-copy{padding-bottom:10px}.location-copy p{font-size:15px;color:var(--muted)}.location-copy b{color:var(--ink);font-size:18px}.location-copy div{display:flex;gap:18px;margin-top:18px}.location-copy a{font-size:12px;font-weight:800;border-bottom:1px solid var(--gold)}.map-wrap{margin-top:50px}.sf-map{margin:0}.sf-map-embed{width:100%;height:460px;overflow:hidden;background:#e5e8eb}.sf-map-embed iframe,.sf-map-embed>div{width:100%!important;height:100%!important;border:0}.sf-map-links{display:none}
.site-footer{padding:54px 0 20px;background:#08131f;color:#fff}.footer-main{display:flex;align-items:center;gap:50px;padding-bottom:38px}.footer-info{margin-left:auto;color:rgba(255,255,255,.5);font-size:12px}.footer-info a{color:rgba(255,255,255,.8)}.footer-links{display:flex;gap:18px}.footer-links a{font-size:10px;letter-spacing:.14em;color:var(--gold2)}.footer-bottom{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:10px;color:rgba(255,255,255,.35)}
.floating-rail{position:fixed;right:18px;top:50%;z-index:200;display:flex;flex-direction:column;gap:8px;transform:translateY(-50%)}.float-item{display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;height:58px;border:0;border-radius:50%;background:#fff;color:var(--navy);box-shadow:0 8px 25px rgba(0,0,0,.15);cursor:pointer;transition:.2s}.float-item:hover{transform:translateY(-3px)}.float-item span{font-size:18px;font-style:normal;line-height:1}.float-item em{margin-top:4px;font-size:8px;font-style:normal;font-weight:800}.float-phone{background:var(--navy);color:#fff}.float-blog{background:#03c75a;color:#fff}.float-insta{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);color:#fff}.float-top{opacity:0;pointer-events:none;transform:translateY(10px)}.float-top.show{opacity:1;pointer-events:auto;transform:none}.mobile-actions{display:none}
.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.js [data-reveal].in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js [data-reveal]{opacity:1;transform:none;transition:none}}

@media(max-width:1120px){
  .main-nav{gap:17px}.main-nav a{font-size:12px}.header-call span{display:none}
  .hero-inner{gap:40px}.hero h1{font-size:52px}.hero-points div{padding:0 16px}.hero-points span{display:none}
  .program-group{grid-template-columns:230px 1fr}.learning-card.exam{grid-template-columns:1fr 1fr}.learning-card.exam>p{grid-column:1/-1}
  .tuition-meta{grid-template-columns:1fr 1fr}.tuition-meta>div:nth-child(2){border-right:0}.tuition-meta>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:900px){
  .container{width:min(100% - 36px,720px)}.section{padding:86px 0}.section-heading.split{grid-template-columns:1fr;gap:24px}.section-heading.split>p{max-width:620px}
  .header-call{margin-left:auto}.main-nav{position:fixed;inset:84px 0 auto;background:rgba(8,19,31,.98);display:flex;flex-direction:column;align-items:stretch;gap:0;padding:16px 24px 24px;transform:translateY(-130%);transition:.3s;z-index:-1}.main-nav.open{transform:none}.main-nav a{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.09);font-size:14px}.main-nav a::after{display:none}.menu-toggle{display:block}
  .menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hero{height:auto;min-height:0;padding:150px 0 110px}.hero-inner{height:auto;grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy .eyebrow{justify-content:center}.hero-copy .eyebrow::after{content:"";width:38px;height:1px;flex:0 0 38px;background:currentColor}.hero-lead{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-points{justify-content:center}.hero-visual{width:min(560px,90%);margin:35px auto 0}.scroll-cue{display:none}
  .intro-grid{grid-template-columns:1fr;gap:42px}.intro-copy{padding:0}.strength-grid{grid-template-columns:1fr 1fr}.director-grid{grid-template-columns:1fr}.director-profile{min-height:540px}.director-message{padding:80px max(24px,8vw)}
  .program-group{grid-template-columns:1fr}.program-title{padding:28px 0}.program-list{border-top:1px solid var(--line)}.learning-grid{grid-template-columns:1fr}.learning-card.exam{grid-column:auto;grid-template-columns:1fr}.learning-card.exam>p{grid-column:auto}
  .tuition-board{margin-top:45px}.tuition-table th,.tuition-table td{padding-left:14px;padding-right:14px}
  .faq-grid{grid-template-columns:1fr;gap:45px}.faq-heading{position:static}.consult-grid{grid-template-columns:1fr;gap:55px}.sf-ct-form{padding:34px}.footer-main{flex-wrap:wrap}.footer-info{width:100%;margin:0}
}
@media(max-width:600px){
  body{padding-bottom:68px}.container{width:calc(100% - 32px)}.section{padding:72px 0}.section-heading h2{font-size:34px}.eyebrow{font-size:9px}
  .site-header{height:70px}.header-inner{gap:10px}.brand-symbol{width:36px;height:36px;font-size:20px}.brand-copy b{font-size:14px}.brand-copy small{font-size:8px}.header-call{padding:8px 10px;font-size:10px}.header-call svg{display:none}.main-nav{inset:70px 0 auto}
  .hero{padding:120px 0 80px}.hero::before{width:400px;height:400px}.hero h1{font-size:36px;line-height:1.3}.hero-lead{font-size:14px}.hero-actions{flex-direction:column}.button{width:100%}.hero-points{margin-top:38px;padding-top:22px}.hero-points div{padding:0 12px}.hero-points b{font-size:16px}.hero-visual{width:100%;margin-top:28px}.hero-photo{transform:none}.years-badge{right:12px;bottom:-24px;padding:12px 15px}.years-badge strong{font-size:30px}
  .intro-grid{gap:30px}.intro-copy .lead{font-size:22px}.principle-flow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.principle-flow i{display:none}.principle-flow span{padding:10px;border:1px solid var(--line);text-align:center;font-size:11px}
  .strength-grid{grid-template-columns:1fr;margin-top:42px}.strength-card{min-height:0;padding:32px 28px}.strength-icon{margin-bottom:25px}
  .director-profile{min-height:440px}.profile-monogram>span{font-size:44px}.profile-monogram>strong{font-size:100px}.profile-monogram small{margin-top:36px}.profile-label{left:24px;bottom:25px}.director-message{padding:65px 24px}.director-message h2{font-size:31px}.director-message>p:not(.eyebrow){font-size:14px}
  .program-list{grid-template-columns:1fr}.program-list article{min-height:0;padding:28px 20px}.program-title h3{font-size:23px}
  .tuition-board{margin-top:38px;border-top-width:3px;background:transparent;box-shadow:none}.tuition-meta{grid-template-columns:1fr;background:#fff;border:1px solid var(--line);border-top:0}.tuition-meta>div,.tuition-meta>div:nth-child(2){display:grid;grid-template-columns:82px 1fr;gap:12px;padding:16px 18px;border-right:0;border-bottom:1px solid var(--line)}.tuition-meta>div:last-child{border-bottom:0}.tuition-meta dt{margin:2px 0 0}.tuition-meta dd{font-size:13px}.tuition-table-wrap{margin-top:20px}.tuition-table,.tuition-table tbody,.tuition-table tr{display:block}.tuition-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.tuition-table tbody{display:grid;gap:12px}.tuition-table tbody tr{padding:18px 18px 10px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 25px rgba(13,27,47,.05)}.tuition-table tbody th{display:block;width:auto;padding:0 0 14px;background:transparent;border:0;text-align:left;font-size:17px}.tuition-table tbody td{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border:0;border-top:1px solid #ebe6dc;font-size:13px;text-align:right}.tuition-table tbody td::before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:700}.tuition-table .tuition-fee{font-size:17px}
  .learning-grid{margin-top:45px}.learning-card{padding:28px 22px}.exam-number strong{font-size:60px}.exam-flow{gap:7px}.exam-flow span{font-size:9px}
  .faq-list summary{grid-template-columns:36px 1fr 20px;min-height:75px;padding:0 6px;font-size:14px}.faq-list .answer{padding:0 42px 25px;font-size:13px}
  .consult-info h2{font-size:34px}.consult-social{flex-wrap:wrap}.sf-ct-form{padding:27px 20px}.sf-ct-row{grid-template-columns:1fr}.form-title p{display:none}
  .sf-map-embed{height:330px}.footer-main{gap:28px}.footer-links{width:100%}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:4px}
  .floating-rail{right:10px;top:auto;bottom:78px;transform:none;gap:6px}.float-item{width:44px;height:44px}.float-item span{font-size:15px}.float-item em{display:none}.float-phone{display:none}
  .mobile-actions{position:fixed;left:0;right:0;bottom:0;z-index:300;display:grid;grid-template-columns:1fr 1fr;height:68px;background:#fff;box-shadow:0 -8px 30px rgba(0,0,0,.12)}.mobile-actions a{display:flex;flex-direction:column;justify-content:center;padding:0 20px}.mobile-actions a:first-child{background:var(--ivory);color:var(--navy)}.mobile-actions a:last-child{background:var(--gold);color:var(--navy)}.mobile-actions span{font-size:9px}.mobile-actions b{margin-top:2px;font-size:13px}
}

/* Unified typography */
body,button,input,textarea,
.section-heading h2 em,.hero h1 em,.hero-points b,.years-badge strong,
.intro-copy .lead,.strength-icon,.director-message h2,.program-list article>span,
.learning-head>span,.exam-number strong,.faq-list summary>span{
  font-family:"Noto Sans KR",sans-serif;
}
body{letter-spacing:-.018em}
h1,h2,h3,h4,.section-heading h2,.director-message h2,.consult-info h2{letter-spacing:-.04em}
p,li,dd,.answer{letter-spacing:-.018em}
.section-heading h2 em,.hero h1 em{font-weight:800}
.intro-copy .lead{font-weight:600;line-height:1.65}

.hero-points b,.years-badge strong,.strength-icon,.exam-number strong{font-weight:800}
.director-message h2{font-weight:700;line-height:1.45}
.program-list article>span,.learning-head>span,.faq-list summary>span{font-weight:800}
.button,.main-nav a,.header-call,.sf-ct-submit{letter-spacing:-.02em}

/* Director section image */
.director-profile{
  background:
    linear-gradient(180deg,rgba(9,23,39,.06) 34%,rgba(9,23,39,.88) 100%),
    url("../assets/director-study-v2.webp") center/cover no-repeat;
  background-color:#1f4038;
  background-position:center,center;
  background-size:100% 100%,contain;
  background-repeat:no-repeat;
}
.director-profile::before{inset:22px;border:1px solid rgba(234,213,174,.3);transform:none;background:none}
.director-profile::after{display:none}
.profile-label{padding:14px 18px;background:rgba(9,23,39,.78);backdrop-filter:blur(8px);border-left:2px solid var(--gold)}

/* CMS content and responsive refinements */
.container>*,.hero-inner>*,.director-grid>*,.intro-grid>*,.consult-grid>*,.section-heading.split>*,.program-group>*,.learning-grid>*{min-width:0}
p,li,dd,.answer,.program-list h4,.learning-card{overflow-wrap:break-word}
.program-list article{display:block;min-width:0}
.program-group.english .program-list article:last-child{background:#f2eadb}
.strength-card:first-child{background:var(--navy);color:#fff}
.strength-card:first-child p{color:rgba(255,255,255,.62)}
.strength-card:first-child .strength-icon{border-color:rgba(234,213,174,.4);color:var(--gold2)}
.strength-heading,.learning-heading{text-align:left}
.strength-heading .eyebrow,.learning-heading .eyebrow{justify-content:flex-start}
.principle-flow span{display:flex;align-items:center;gap:clamp(10px,2vw,28px)}
.principle-flow span:not(:last-child)::after{content:"→";color:var(--gold);font-weight:500}
.learning-head{gap:0}
.learning-card.exam{grid-template-columns:.75fr 1.25fr;grid-template-rows:auto auto;gap:28px 64px;align-items:start}
.learning-card.exam .learning-head{grid-column:1;grid-row:1;margin-bottom:0}
.learning-card.exam .exam-number{grid-column:1;grid-row:2}
.learning-card.exam .exam-flow{grid-column:2;grid-row:1;align-self:end}
.learning-card.exam>p{grid-column:2;grid-row:2}
.exam-flow span+span::before{content:"+";display:inline-block;margin-right:12px;color:var(--gold)}
.sf-map-embed .root_daum_roughmap{width:100%!important;height:100%!important;padding:0!important;margin:0!important}
.sf-map-embed .root_daum_roughmap .wrap_map{width:100%!important;height:100%!important;margin:0!important}
.sf-map-embed .root_daum_roughmap .wrap_controllers,
.sf-map-embed .root_daum_roughmap .cont{display:none!important;height:0!important}
.sf-map-embed .root_daum_roughmap .map_border{display:none!important}
@media(max-width:900px){
  .learning-card.exam{grid-template-columns:1fr;grid-template-rows:auto;gap:22px}
  .learning-card.exam .learning-head,.learning-card.exam .exam-number,.learning-card.exam .exam-flow,.learning-card.exam>p{grid-column:auto;grid-row:auto}
}
@media(max-width:600px){
  .principle-flow span{display:block}
  .principle-flow span::after{display:none!important}
  .school-row,.book-level{grid-template-columns:74px minmax(0,1fr)}
  .sf-map-embed{height:300px}
}
@media(min-width:901px) and (max-width:1120px){
  .years-badge{right:12px;bottom:-24px}
}
