:root{--navy:#07182b;--navy2:#0d2945;--ink:#101922;--paper:#f4f2ed;--white:#fff;--gold:#cda86b;--line:rgba(7,24,43,.16);--serif:"Noto Serif KR",serif;--sans:"Noto Sans KR",sans-serif;--latin:"Manrope",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.8rem 1rem;z-index:99}.skip:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:92px;padding:0 clamp(1.25rem,4vw,4.5rem);display:flex;align-items:center;justify-content:space-between;background:rgba(7,24,43,.96);color:#fff;position:absolute;z-index:20;width:100%;border-bottom:1px solid rgba(255,255,255,.16)}.brand{display:flex;align-items:center;gap:.8rem}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);font:700 .8rem var(--latin);letter-spacing:.12em;color:var(--gold)}.brand b{display:block;font:600 1.05rem var(--serif);letter-spacing:.05em}.brand small{display:block;font:500 .54rem var(--latin);letter-spacing:.14em;opacity:.65;margin-top:.15rem}.desktop-nav{display:flex;gap:clamp(1.5rem,3vw,3rem);font-size:.9rem}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-.45rem;height:1px;background:var(--gold);transition:.3s}.desktop-nav a:hover:after{right:0}.header-cta{border-left:1px solid rgba(255,255,255,.18);padding-left:2rem;font-size:.86rem}.header-cta span,.text-link span{color:var(--gold);margin-left:.6rem}.menu-button,.mobile-menu{display:none}.hero{height:min(920px,100vh);min-height:680px;color:#fff;position:relative;overflow:hidden;background:var(--navy)}.hero-visual,.hero-shade{position:absolute;inset:0}.hero-visual img{width:100%;height:100%;object-fit:cover;opacity:.76}.hero-shade{background:linear-gradient(90deg,rgba(7,24,43,.94) 0%,rgba(7,24,43,.56) 48%,rgba(7,24,43,.12) 80%),linear-gradient(0deg,rgba(7,24,43,.62),transparent 45%)}.hero-copy{position:absolute;left:clamp(1.5rem,9vw,10rem);top:50%;transform:translateY(-42%);max-width:850px}.eyebrow,.kicker{font:600 .76rem var(--latin);letter-spacing:.24em}.eyebrow{color:#d9c199}.hero h1{font:600 clamp(2.8rem,6.3vw,6.5rem)/1.14 var(--serif);letter-spacing:-.045em;margin:1.25rem 0}.hero h1 em{font-style:normal;color:#dfc08d}.hero-lead{font-size:clamp(1rem,1.35vw,1.28rem);font-weight:400;opacity:.82;margin:0 0 2.2rem}.text-link{display:inline-flex;border-bottom:1px solid rgba(255,255,255,.45);padding:.7rem 0;font-size:.92rem}.hero-index{position:absolute;right:4vw;bottom:5rem;display:flex;align-items:center;gap:1rem;font:600 .78rem var(--latin)}.hero-index span{width:90px;height:1px;background:rgba(255,255,255,.5);position:relative}.hero-index span:before{content:"";position:absolute;width:32%;height:2px;background:var(--gold)}.hero-index small{opacity:.55}.scroll-cue{position:absolute;left:3rem;bottom:4rem;font:600 .62rem var(--latin);letter-spacing:.18em;writing-mode:vertical-rl}.manifesto{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,3fr);padding:clamp(5rem,10vw,10rem) clamp(1.5rem,7vw,8rem);gap:3rem}.section-number{font:600 .8rem var(--latin);letter-spacing:.14em;color:#946f35}.section-number span{display:block;color:#55606b;font-size:.65rem;margin-top:.55rem}.manifesto-content{max-width:1100px}.kicker{color:#8b6935;margin:0 0 1.5rem}.manifesto h2,.method h2,.insight h2,.contact h2{font:600 clamp(2.2rem,4.7vw,5rem)/1.25 var(--serif);letter-spacing:-.04em;margin:0}.manifesto-bottom{display:flex;justify-content:space-between;gap:3rem;align-items:flex-end;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}.manifesto-bottom>p{max-width:620px;color:#4c5660}.signature{font:700 2.4rem/1 var(--latin);letter-spacing:-.08em;color:#102b47;text-align:right}.signature span{font-size:.63rem;letter-spacing:.35em;color:#947039}.programs{background:var(--navy);color:#fff;padding:clamp(5rem,8vw,8rem) clamp(1.5rem,7vw,8rem)}.section-heading{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;gap:2rem;margin-bottom:3.5rem}.section-heading h2{font:600 clamp(2.2rem,4vw,4.5rem) var(--latin);letter-spacing:-.05em;margin:0}.section-heading>p{color:#aeb9c5;font-size:.95rem}.inverse span{color:#8795a3}.gold{color:var(--gold)}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.program-card{min-height:420px;padding:2rem;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.2);transition:.35s}.program-card:last-child{border-right:0}.program-card:hover,.program-card.featured{background:#102e4b}.program-no{font:600 .7rem var(--latin);color:#8391a0}.icon-line{font:400 4rem Georgia;color:var(--gold);margin:auto 0 2rem}.program-card h3{font:600 1.8rem var(--serif);margin:0 0 1rem}.program-card p{color:#aeb8c2;font-size:.92rem;max-width:320px}.program-card a{font-size:.8rem;margin-top:auto}.program-card a span{float:right;color:var(--gold)}.method{display:grid;grid-template-columns:1.05fr .95fr;min-height:760px;background:#fff}.method-photo{min-height:640px;overflow:hidden}.method-photo img{width:100%;height:100%;object-fit:cover}.method-copy{padding:clamp(4rem,8vw,8rem)}.method-copy .kicker{margin-top:5rem}.method-copy>p:not(.kicker){color:#59626a;max-width:560px;margin:2rem 0}.method ol{padding:0;margin:3rem 0 0;list-style:none;border-top:1px solid var(--line)}.method li{display:grid;grid-template-columns:130px 1fr;padding:1.2rem 0;border-bottom:1px solid var(--line);font-size:.9rem}.method li b{font:600 .75rem var(--latin);letter-spacing:.08em;color:#956f35}.insight{padding:clamp(5rem,9vw,9rem) clamp(1.5rem,7vw,8rem)}.insight-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem}.insight-head h2{font-size:clamp(2rem,3.6vw,3.8rem);margin-top:1rem}.filters{display:flex;gap:.5rem;flex-wrap:wrap}.filters button{border:1px solid var(--line);background:transparent;border-radius:100px;padding:.55rem 1rem;font-size:.78rem;cursor:pointer;color:#59636d}.filters button.active{background:var(--navy);color:#fff}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.article-card{background:#fff;transition:transform .3s}.article-card:hover{transform:translateY(-7px)}.article-art{height:270px;padding:2rem;display:flex;align-items:flex-end;position:relative;overflow:hidden}.article-art span{font:700 clamp(2rem,4vw,4rem)/.9 var(--latin);letter-spacing:-.09em}.art-one{background:#c7ad78;color:#13263a}.art-one:after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(7,24,43,.3);border-radius:50%;top:2rem;right:2rem}.art-two{background:#102f4c;color:#d7b577;align-items:center;justify-content:center}.art-two span{font-family:Georgia;font-style:italic;z-index:1}.art-two i{position:absolute;width:220px;height:220px;border:1px solid rgba(255,255,255,.2);transform:rotate(45deg)}.art-three{background:#d9d7cf;color:#11263a}.art-three:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 29px,rgba(7,24,43,.09) 30px)}.article-body{padding:1.7rem}.tag{font-size:.74rem;color:#966f35}.article-body h3{font:600 1.3rem/1.5 var(--serif);margin:.8rem 0}.article-body p{color:#69727a;font-size:.87rem}.article-body time{display:block;font:500 .7rem var(--latin);color:#899097;margin-top:1.5rem}.article-card.is-hidden{display:none}.contact{background:#0c2b47;color:#fff;text-align:center;padding:clamp(5rem,10vw,10rem) 1.5rem;position:relative;overflow:hidden}.contact:before{content:"SF";position:absolute;inset:auto 0 -11rem;font:700 25rem var(--latin);letter-spacing:-.12em;color:rgba(255,255,255,.025)}.contact h2{position:relative;margin:1.5rem 0}.contact>p:not(.eyebrow){position:relative;color:#b9c3cc}.contact a{position:relative;display:inline-flex;justify-content:space-between;align-items:center;width:min(280px,90%);border-bottom:1px solid rgba(255,255,255,.55);padding:1rem 0;margin-top:1.5rem}.contact a span{color:var(--gold)}footer{background:#061421;color:#fff;padding:3.2rem clamp(1.5rem,7vw,8rem);display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:1.5rem;font-size:.8rem}.footer-brand{grid-row:span 2}.copyright{opacity:.4;margin:0;text-align:right}footer>p:not(.copyright){text-align:right;margin:0;opacity:.7}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.desktop-nav,.header-cta{display:none}.site-header{height:76px}.menu-button{display:flex;width:42px;height:42px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:5px;padding:10px}.menu-button span:not(.sr-only){height:1px;background:#fff;width:100%}.mobile-menu{position:absolute;top:76px;z-index:19;background:#07182b;color:#fff;width:100%;padding:1rem 1.5rem 2rem}.mobile-menu:not([hidden]){display:grid}.mobile-menu a{padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.12)}.hero{min-height:720px}.hero-copy{top:48%;transform:translateY(-35%);right:1.5rem}.hero h1{font-size:clamp(2.45rem,10vw,4.5rem)}.hero-index{right:1.5rem}.scroll-cue{display:none}.manifesto{grid-template-columns:1fr;padding-top:5rem}.manifesto-bottom{align-items:flex-start}.section-heading{grid-template-columns:1fr}.section-heading>p{max-width:480px}.program-grid{grid-template-columns:1fr}.program-card{min-height:340px;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.method{grid-template-columns:1fr}.method-photo{min-height:450px}.method-copy .kicker{margin-top:3rem}.article-grid{grid-template-columns:1fr 1fr}.article-card:last-child{grid-column:span 2}.insight-head{align-items:flex-start;flex-direction:column}footer{grid-template-columns:1fr}footer>p,footer>p:not(.copyright),.copyright{text-align:left}.footer-brand{grid-row:auto}}
@media(max-width:580px){.brand b{font-size:.92rem}.brand-mark{width:38px;height:38px}.hero{min-height:680px}.hero-copy{top:45%}.hero-lead{font-size:.95rem}.hero-index{bottom:2rem}.manifesto-bottom{display:block}.signature{text-align:left;margin-top:2.5rem}.programs,.insight{padding-left:1.2rem;padding-right:1.2rem}.method-photo{min-height:380px}.method-copy{padding:4rem 1.4rem}.method li{grid-template-columns:100px 1fr}.article-grid{grid-template-columns:1fr}.article-card:last-child{grid-column:auto}.article-art{height:230px}.filters{gap:.35rem}.filters button{padding:.45rem .8rem}.contact:before{font-size:12rem;bottom:-5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.article-card{transition:none}}

/* Cinematic hero film */
.hero-visual img{display:none}.hero-video{width:100%;height:100%;object-fit:cover;opacity:.8;transform:scale(1.002);background:#07182b}.hero-index em{font-style:normal;font-size:.62rem;letter-spacing:.16em;color:#d9c199;width:5.5rem}.hero-index span:before{width:var(--scene-progress,16.66%);transition:width .5s ease}.video-toggle{position:absolute;right:4vw;bottom:2.2rem;width:38px;height:38px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(7,24,43,.28);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(5px)}.pause-icon{width:9px;height:11px;border-left:2px solid currentColor;border-right:2px solid currentColor}.video-toggle.is-paused .pause-icon{width:0;height:0;border:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;margin-left:2px}@media(max-width:900px){.video-toggle{right:1.5rem}}@media(max-width:580px){.hero-index em{display:none}.video-toggle{bottom:5.5rem}}@media(prefers-reduced-motion:reduce){.hero-index span:before{transition:none}}

/* Navigation floating directly over the hero film */
.site-header{height:104px;background:linear-gradient(180deg,rgba(3,11,20,.78) 0%,rgba(3,11,20,.38) 68%,rgba(3,11,20,0) 100%);border-bottom:0;box-shadow:none;padding-bottom:12px}.site-header .brand-mark{background:rgba(7,24,43,.26);box-shadow:0 6px 22px rgba(0,0,0,.12)}.site-header .brand b,.desktop-nav a,.header-cta{color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.55)}.desktop-nav{gap:clamp(1.35rem,2.7vw,3rem);font-weight:600}.desktop-nav a{padding:.8rem 0}.header-cta{border-left-color:rgba(255,255,255,.42);font-weight:600}.mobile-menu{background:rgba(5,18,31,.94);backdrop-filter:blur(14px)}@media(max-width:900px){.site-header{height:82px;padding-bottom:6px;background:linear-gradient(180deg,rgba(3,11,20,.84) 0%,rgba(3,11,20,.36) 78%,rgba(3,11,20,0) 100%)}.mobile-menu{top:82px}}

/* Brighter, airier film treatment */
.hero-video{opacity:1}.hero-shade{background:linear-gradient(90deg,rgba(7,24,43,.78) 0%,rgba(7,24,43,.34) 46%,rgba(7,24,43,.05) 82%),linear-gradient(0deg,rgba(7,24,43,.34),transparent 48%)}

/* Light passes only through the main headline glyphs every five seconds */
.hero-visual{z-index:0}
.hero-copy,.hero-index,.video-toggle,.scroll-cue{z-index:2}
.hero-title{position:relative;width:max-content;max-width:100%}
.hero-title-base{display:block}
.hero-title-shine{position:absolute;inset:0;display:block;pointer-events:none;color:transparent;-webkit-text-fill-color:transparent;background:linear-gradient(105deg,transparent 0 39%,rgba(255,235,188,.2) 44%,rgba(255,255,255,.98) 50%,rgba(255,226,160,.75) 54%,transparent 61% 100%) 145% 0/260% 100% no-repeat;-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 7px rgba(255,232,178,.28));opacity:0;animation:hero-title-light-sweep 5s ease-in-out infinite}
.hero-title-shine em{color:transparent;-webkit-text-fill-color:transparent}
@keyframes hero-title-light-sweep{0%,64%{background-position:145% 0;opacity:0}68%{opacity:1}96%{opacity:.9}100%{background-position:-145% 0;opacity:0}}
@media(prefers-reduced-motion:reduce){.hero-title-shine{display:none;animation:none}}

/* Dynamic Korean wordmark */
.brand-wordmark{display:inline-block;color:#e5006d!important;font-family:"Black Han Sans","Noto Sans KR",sans-serif;font-size:clamp(2rem,2.7vw,2.75rem);font-weight:400;line-height:1;letter-spacing:-.105em;white-space:nowrap;transform:skewX(-10deg) scaleX(1.08);transform-origin:left center;text-shadow:0 3px 18px rgba(0,0,0,.3)!important;transition:filter .25s ease,transform .25s ease}.brand-wordmark:hover{filter:brightness(1.12);transform:skewX(-10deg) scaleX(1.11)}.footer-brand{color:#e5006d!important}@media(max-width:900px){.brand-wordmark{font-size:2rem;letter-spacing:-.09em}}@media(max-width:580px){.brand-wordmark{font-size:1.75rem}}

/* Times New Roman hero statement */
.hero h1{font-family:"Times New Roman",Times,serif;font-weight:400;line-height:1.06;letter-spacing:-.025em;text-shadow:0 4px 22px rgba(0,0,0,.34)}

/* Bold academy introduction copy */
.manifesto-bottom>p{font-weight:700}

/* Gold emphasis within the academy philosophy statement */
.manifesto-accent{color:#a77835}

.word-film{background:#fff;padding:0;position:relative}
.word-film-stage{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:3.3/1;background:#fff}
.word-film-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.word-film-mask{position:absolute;inset:-2px 0;display:flex;align-items:center;justify-content:center;background:#fff;color:#000;mix-blend-mode:screen;font-family:"Black Han Sans","Noto Sans KR",sans-serif;font-weight:900;font-size:21.7vw;line-height:1;letter-spacing:-.075em;white-space:nowrap;transform:scaleX(1.28);transform-origin:center}
@media(min-width:901px){
  .manifesto{height:45svh;padding:clamp(1.5rem,2.8svh,2.5rem) clamp(1.5rem,7vw,8rem);gap:clamp(1.25rem,2.5vw,2.5rem);align-content:center}
  .manifesto .kicker{margin-bottom:.75rem}
  .manifesto h2{font-size:clamp(2.1rem,4.8svh,4.35rem);line-height:1.15}
  .manifesto-bottom{margin-top:1.5rem;padding-top:1rem}
  .word-film{height:55svh;padding:0}
  .word-film-stage{height:100%;aspect-ratio:auto}
  .word-film-mask{font-size:21.7vw}
}

/* Keep every consultation CTA aligned with the consultation section. */
#contact{scroll-margin-top:0}
@media(max-width:580px){.word-film-stage{aspect-ratio:2.8/1}.word-film-mask{font-size:21.7vw}}
.method-video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* OUR METHOD: give the classroom film 70% of the desktop composition. */
@media(min-width:1121px){
  .method{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}
  .method-copy{padding:clamp(3rem,4vw,5rem)}
  .method-copy .kicker{margin-top:2.5rem}
  .method h2{font-size:clamp(2.15rem,3vw,3.75rem)}
}
@media(min-width:901px) and (max-width:1120px){
  .method{grid-template-columns:1fr}
  .method-photo{min-height:450px}
  .method-copy .kicker{margin-top:3rem}
}
.insight-head h2{font:600 clamp(2rem,3.1vw,3rem)/1.25 var(--serif);letter-spacing:-.04em;margin-top:1rem}
.insight .news-viewport{overflow-x:auto;overflow-y:hidden;padding-bottom:1rem;scrollbar-color:#9a7a45 rgba(7,24,43,.12);scrollbar-width:auto;scroll-snap-type:none;overscroll-behavior-inline:contain}
.insight .news-viewport:focus-visible{outline:2px solid #9a7a45;outline-offset:4px}
.insight .news-viewport::-webkit-scrollbar{height:10px}
.insight .news-viewport::-webkit-scrollbar-track{background:rgba(7,24,43,.12);border-radius:999px}
.insight .news-viewport::-webkit-scrollbar-thumb{background:#9a7a45;border:2px solid var(--paper);border-radius:999px}
.insight .news-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3.6rem)/4);width:100%;transform:none;transition:none;will-change:auto}
.insight .news-card{height:auto;scroll-snap-align:start}
.insight .news-card>a{position:relative;display:grid;grid-template-rows:auto 125px;height:100%}
.insight .news-thumb{height:auto;min-height:0}
.insight .news-card a>b{position:absolute;top:.85rem;right:.85rem;left:auto;z-index:2;padding:.45rem .65rem;border-radius:999px;background:rgba(7,24,43,.82);color:#fff;font:700 .68rem/1.2 var(--latin);letter-spacing:.05em;backdrop-filter:blur(5px)}
.insight .news-copy{min-height:0;padding:1.35rem 1.35rem .65rem;overflow:hidden}
.insight .news-copy small{display:block;font-size:.78rem;line-height:1.2}
.insight .news-copy h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:.28rem 0 0;color:#c6004f;font:700 .99rem/1.4 var(--sans);letter-spacing:-.015em}
@media(max-width:1100px){.insight .news-track{grid-auto-columns:calc((100% - 2.4rem)/3)}}
@media(max-width:760px){.insight .news-track{grid-auto-columns:calc((100% - 1.2rem)/2)}}
@media(max-width:500px){.insight .news-track{grid-auto-columns:86%}}
.news-viewport{overflow:hidden}.news-track{display:flex;gap:1.2rem;transition:transform .8s cubic-bezier(.22,.61,.36,1);will-change:transform}.news-card{position:relative;flex:0 0 calc((100% - 3.6rem)/4);min-width:0;background:#fff;border:1px solid rgba(7,24,43,.12);border-radius:1.6rem .25rem .25rem .25rem;overflow:visible;box-shadow:0 12px 28px rgba(7,24,43,.07)}.news-card>a{display:block;height:100%}.news-card>b{position:absolute;right:-1px;top:0;z-index:2;padding:.55rem .75rem;background:var(--paper);color:#d60067;font:700 .72rem var(--latin);letter-spacing:.05em;border-radius:0 0 0 1rem}.news-thumb{width:100%;height:auto;aspect-ratio:4/3;border-radius:1.55rem 0 0 0;display:flex;align-items:flex-end;padding:1.7rem;overflow:hidden;background:#c7ad78;color:#10263d}.news-thumb.has-image{padding:0}.news-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;position:absolute;inset:0}.news-thumb span{font:700 clamp(1.6rem,2.5vw,3rem)/.9 var(--latin);letter-spacing:-.07em;position:relative}.news-two{background:#102f4c;color:#e0bb78;align-items:center;justify-content:center}.news-two span{font-family:Georgia;font-style:italic}.news-three{background:#d9d7cf}.news-four{background:#9d2449;color:#fff}.news-five{background:#d9c8a2}.news-six{background:#162f48;color:#fff}.news-copy{padding:1.35rem 1.4rem 1.6rem;min-height:150px}.news-copy small{color:#966f35}.news-copy h3{font:600 1.08rem/1.55 var(--serif);margin:.6rem 0 0}.admin-fab{position:fixed;right:14px;bottom:12px;z-index:40;padding:.35rem .65rem;border-radius:999px;background:rgba(7,24,43,.78);color:#fff;font:600 .68rem var(--latin);letter-spacing:.06em;box-shadow:0 4px 14px rgba(0,0,0,.2)}@media(max-width:1100px){.news-card{flex-basis:calc((100% - 2.4rem)/3)}}@media(max-width:760px){.news-card{flex-basis:calc((100% - 1.2rem)/2)}}@media(max-width:500px){.news-card{flex-basis:86%}}

@media(max-width:1120px){.desktop-nav,.header-cta{display:none}.site-header{height:82px;padding-bottom:6px;background:linear-gradient(180deg,rgba(3,11,20,.84) 0%,rgba(3,11,20,.36) 78%,rgba(3,11,20,0) 100%)}.menu-button{display:flex;width:42px;height:42px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:5px;padding:10px}.menu-button span:not(.sr-only){height:1px;background:#fff;width:100%}.mobile-menu{position:absolute;top:82px;z-index:19;background:rgba(5,18,31,.94);color:#fff;width:100%;padding:1rem 1.5rem 2rem;backdrop-filter:blur(14px)}.mobile-menu:not([hidden]){display:grid}.mobile-menu a{padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.12)}}
@media(max-width:1120px){.mobile-menu .mobile-consult-cta{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding:.9rem 1rem;border:0;border-radius:.25rem;background:#e5006d;color:#fff;font-weight:800}.mobile-consult-cta span{color:#f6cf86}}
:root{}
.program-detail{display:block;padding-top:1rem;border-top:1px solid rgba(255,255,255,.3);font-size:.8rem}.program-detail i{float:right;color:var(--gold);font-style:normal}.managed-study-card,.high-school-card,.math-essay-card{cursor:pointer}
.program-grid{position:relative;isolation:isolate;background:url("/assets/programs-korean-academy.png") center/cover no-repeat;border-color:rgba(255,255,255,.4);box-shadow:0 28px 70px rgba(0,0,0,.2)}.program-grid:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,17,31,.34),rgba(6,24,42,.24) 48%,rgba(4,17,31,.38)),linear-gradient(0deg,rgba(4,16,29,.6) 0%,rgba(4,16,29,.04) 72%)}.program-card{position:relative;overflow:hidden;background:transparent!important;min-height:520px;justify-content:flex-end;text-shadow:0 2px 18px rgba(0,0,0,.9)}.program-card:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 42%,rgba(5,18,32,.7) 100%);opacity:.46;transition:opacity .35s}.program-card:hover:before,.program-card.featured:before{opacity:.66}.program-card:hover{transform:translateY(-8px);box-shadow:0 20px 45px rgba(0,0,0,.24)}.program-card .icon-line{position:absolute;top:1.5rem;right:1.7rem;margin:0;font-size:3.4rem;color:#f0c87e;opacity:.92}.program-card .program-no{position:absolute;top:2rem;left:2rem;color:#fff;opacity:.92}.program-card h3{font-family:var(--sans);font-weight:800;font-size:2rem}.program-card p{color:#f3f6f8;font-size:.96rem}.program-card a{padding-top:1rem;border-top:1px solid rgba(255,255,255,.45)}@media(max-width:900px){.program-grid{background:none}.program-card{min-height:430px;background-image:linear-gradient(180deg,rgba(4,17,31,.08),rgba(4,17,31,.68)),url("/assets/programs-korean-academy.png")!important;background-size:300% auto!important}.program-card:nth-child(1){background-position:left center!important}.program-card:nth-child(2){background-position:center center!important}.program-card:nth-child(3){background-position:right center!important}}
.contact{background:radial-gradient(circle at 50% 0,rgba(213,0,101,.28),transparent 38%),linear-gradient(145deg,#07182b 0%,#0b2b49 54%,#35102a 100%)}.contact-glow{position:absolute;left:50%;top:20%;width:min(900px,90vw);height:420px;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(229,0,109,.2),transparent 68%);filter:blur(22px);pointer-events:none}.contact-badge{position:relative;display:inline-flex;align-items:center;gap:.55rem;margin:0 0 1.1rem!important;padding:.5rem 1rem;border:1px solid rgba(255,215,145,.48);border-radius:999px;background:rgba(255,255,255,.07);color:#f4d39a!important;font-size:.78rem!important;font-weight:700;letter-spacing:.06em;backdrop-filter:blur(8px)}.contact-badge span{width:.48rem;height:.48rem;border-radius:50%;background:#ff247f;box-shadow:0 0 0 0 rgba(255,36,127,.65);animation:contactPulse 1.7s infinite}.contact .eyebrow{position:relative;color:#e7bd75;letter-spacing:.28em}.contact h2{font-family:var(--sans);font-size:clamp(2.8rem,6.2vw,6.5rem);font-weight:800;line-height:1.1;letter-spacing:-.07em;text-shadow:0 12px 38px rgba(0,0,0,.34)}.contact h2 span{color:#fff}.contact h2 strong{position:relative;font-weight:900;background:linear-gradient(100deg,#f6cf86 8%,#fff0bf 36%,#ff478e 66%,#f4c66e 92%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:contactShine 5s ease-in-out infinite}.contact-lead{max-width:760px;margin:1.8rem auto 0!important;color:#c9d2da!important;font-size:clamp(.95rem,1.35vw,1.16rem);line-height:1.85}.contact-lead b{color:#fff;font-weight:650}.consult-form{margin-top:2.2rem!important;padding:clamp(1.2rem,3vw,2rem);border:1px solid rgba(255,255,255,.16);border-radius:1rem;background:rgba(5,20,36,.46);box-shadow:0 28px 70px rgba(0,0,0,.24);backdrop-filter:blur(12px)}.consult-submit{border-color:rgba(246,207,134,.72)!important;background:linear-gradient(90deg,#ad174f,#e5006d)!important;font-weight:800;box-shadow:0 12px 28px rgba(229,0,109,.25)}.consult-submit:hover{filter:brightness(1.12);transform:translateY(-1px)}@keyframes contactPulse{70%{box-shadow:0 0 0 8px rgba(255,36,127,0)}100%{box-shadow:0 0 0 0 rgba(255,36,127,0)}}@keyframes contactShine{0%,20%{background-position:100% 50%}55%,100%{background-position:0 50%}}@media(prefers-reduced-motion:reduce){.contact-badge span,.contact h2 strong{animation:none}}
.site-footer{grid-template-columns:minmax(220px,1.2fr) minmax(260px,1fr) minmax(220px,.9fr);align-items:start;gap:0;padding:4rem clamp(1.5rem,7vw,8rem)}.site-footer>div{min-height:250px;padding:0 2.2rem;border-left:1px solid rgba(255,255,255,.16)}.site-footer>div:first-child{padding-left:0;border-left:0}.site-footer h2{margin:0 0 .65rem;font:700 1.1rem var(--sans);color:#fff}.site-footer p{margin:.2rem 0 1.5rem!important;text-align:left!important;color:rgba(255,255,255,.72);line-height:1.75}.site-footer a:not(.footer-brand){display:block;width:max-content;max-width:100%;color:rgba(255,255,255,.78);margin:.25rem 0}.site-footer a:hover{color:var(--gold)}.site-footer .footer-info h2:not(:first-child){margin-top:1.6rem}.site-footer .footer-info p a{display:inline}.site-footer .footer-policy>p:first-of-type{margin-top:3rem!important}.site-footer .copyright{opacity:.55!important}@media(max-width:900px){.site-footer{grid-template-columns:1fr 1fr}.site-footer .footer-identity{grid-column:1/-1;min-height:auto;padding:0 0 2rem;border:0}.site-footer .footer-info{padding-left:0;border-left:0}}@media(max-width:620px){.site-footer{grid-template-columns:1fr;padding-top:3rem}.site-footer>div,.site-footer .footer-identity,.site-footer .footer-info{min-height:auto;padding:1.7rem 0;border-left:0;border-top:1px solid rgba(255,255,255,.16)}.site-footer .footer-identity{border-top:0;padding-top:0}}
.consult-form{position:relative;width:min(760px,100%);margin:2.5rem auto 0;text-align:left}.consult-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.consult-form label>span:first-child{display:block;margin-bottom:.45rem;color:#d9e0e6;font-size:.86rem}.consult-form input,.consult-form select,.consult-form textarea{width:100%;border:1px solid rgba(255,255,255,.24);border-radius:.35rem;background:rgba(255,255,255,.08);color:#fff;padding:.9rem 1rem;font:inherit;outline:none}.consult-form select option{color:#101922}.consult-form textarea{resize:vertical;min-height:132px}.consult-form input::placeholder,.consult-form textarea::placeholder{color:#9eabb6}.consult-form input:focus,.consult-form select:focus,.consult-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(205,168,107,.12)}.consult-full{grid-column:1/-1}.consult-hp{position:absolute!important;left:-9999px!important}.privacy-check{display:flex;align-items:flex-start;gap:.65rem;margin:1rem 0 0;color:#b9c3cc;font-size:.78rem;line-height:1.55}.privacy-check input{width:1rem;height:1rem;margin:.2rem 0 0;accent-color:var(--gold);flex:0 0 auto}.privacy-check span{margin:0!important;color:inherit!important}.consult-submit{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:1.3rem;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.55);background:transparent;color:#fff;cursor:pointer}.consult-submit span{color:var(--gold)}.consult-submit:hover{background:rgba(255,255,255,.08)}.consult-submit:disabled{opacity:.55;cursor:wait}.consult-status{min-height:1.7em!important;margin:.8rem 0 0!important;font-size:.86rem}.consult-status.is-error{color:#ffb4b4!important}.consult-status.is-success{color:#dfc08d!important}@media(max-width:580px){.consult-grid{grid-template-columns:1fr}.consult-full{grid-column:auto}}

/* Keep all three programme calls-to-action in the first desktop viewport. */
@media(min-width:901px){
  #programs{height:clamp(680px,100svh,900px);min-height:0;padding-top:clamp(.75rem,1.6svh,1.35rem);padding-bottom:clamp(.75rem,1.6svh,1.35rem);display:flex;flex-direction:column;scroll-margin-top:0}
  #programs .section-heading{align-items:center;margin-bottom:clamp(1rem,2svh,1.6rem)}
  #programs .section-heading .kicker{margin-bottom:.45rem}
  #programs .section-heading h2{font-size:clamp(2.5rem,5.3svh,4.25rem);line-height:1}
  #programs .section-heading>p{margin:0}
  #programs .program-grid{flex:1 1 auto;min-height:0}
  #programs .program-card{height:100%;min-height:0;padding:clamp(1.25rem,2.5svh,2rem)}
  #programs .program-card .program-no{top:clamp(1.15rem,2.2svh,1.75rem);left:clamp(1.25rem,2.5svh,2rem)}
  #programs .program-card .icon-line{top:clamp(1rem,2svh,1.5rem)}
}
