:root{--lime:#d4ff21;--ink:#171918;--paper:#f3f3ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Pretendard,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:none;border:0}button:focus-visible,a:focus-visible{outline:3px solid #7d59bf;outline-offset:5px}header{position:absolute;top:0;left:0;right:0;z-index:20;padding:27px 4%;display:flex;align-items:center;justify-content:space-between;transition:color .4s}.logo{font:900 italic 30px Arial;letter-spacing:-1.4px}.logo span{display:block;font:8px Pretendard;letter-spacing:2px;margin-top:7px}nav{display:flex;gap:30px;font-weight:650;font-size:14px}.book{padding:15px 21px;background:var(--lime);color:#171918;font-weight:750;font-size:13px;border-radius:4px}.hero{height:100svh;min-height:740px;position:relative;overflow:hidden;isolation:isolate;background:#eeeeea}.slides,.slide{position:absolute;inset:0}.slide{visibility:hidden;opacity:0;overflow:hidden}.slide.active{visibility:visible;opacity:1}.slide>video,.slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.slide .shade{position:absolute;inset:0;background:linear-gradient(90deg,#efefeb 0%,#efefebcc 24%,transparent 57%)}.dark{color:white;background:#0a0c0c}.dark .shade{background:linear-gradient(90deg,#050606 0%,#050606cc 29%,transparent 65%)}.copy{position:absolute;left:5%;top:22%;z-index:3;max-width:65%}.eyebrow{font-size:10px;letter-spacing:2px}h1{font:900 italic clamp(75px,9.7vw,170px)/.87 Impact,'Arial Narrow',Arial,sans-serif;letter-spacing:-5px;margin:28px 0}.copy h1 span{display:block;width:max-content;transform-origin:left center}.outline{color:transparent;-webkit-text-stroke:2px currentColor;-webkit-text-stroke-color:var(--ink)}.dark .outline{-webkit-text-stroke-color:var(--lime)}.copy h2{font-size:27px;font-weight:650;letter-spacing:-1px;line-height:1.4;margin:26px 0}.hero-cta{display:flex;gap:45px;width:max-content;background:var(--lime);color:#171918;padding:17px 22px;font-size:13px;font-weight:700}.active .copy h1 span:first-child{animation:word-in .8s cubic-bezier(.16,1,.3,1) both}.active .copy h1 span:last-child{animation:word-in .9s .12s cubic-bezier(.16,1,.3,1) both}.active .copy h2,.active .hero-cta{animation:copy-in .7s .3s both}.finale.active>img{animation:finale-zoom 6s ease-out both}.energy{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible}.energy path{fill:none;stroke:var(--lime);vector-effect:non-scaling-stroke}.track{stroke-width:1;opacity:.35}.pulse{stroke-width:4;stroke-dasharray:320 2400;animation:energy-flow 3.2s linear infinite;filter:drop-shadow(0 0 4px #8bad00)}.speedlines{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:2}.speedlines i{position:absolute;width:28%;height:3px;background:var(--lime);right:-40%;top:19%;transform:rotate(-25deg);animation:speed 4s ease-in infinite}.speedlines i:nth-child(2){top:75%;animation-delay:1.2s;width:20%}.speedlines i:nth-child(3){top:85%;animation-delay:2.4s;width:12%}.wipe{position:absolute;inset:-10% -35%;background:var(--lime);z-index:9;transform:translateX(-110%) skewX(-18deg);pointer-events:none}.switching .wipe{animation:wipe .85s cubic-bezier(.7,0,.3,1) both}.hero-bottom{position:absolute;bottom:26px;left:4%;right:4%;z-index:10;display:flex;align-items:center;gap:20px}.scene-tabs{display:flex;gap:22px}.scene-tabs button{font-size:12px;font-weight:750;position:relative;padding:14px 0;min-width:96px;text-align:left;opacity:.5;border-top:1px solid #7776}.scene-tabs small{font-size:9px;margin-right:9px}.scene-tabs button[aria-pressed=true]{opacity:1}.scene-tabs i{position:absolute;left:0;top:-2px;height:3px;width:0;background:#778b1c}.scene-tabs button[aria-pressed=true] i{animation:progress 6.6s linear both}.pause{width:42px;height:42px;border:1px solid #888;border-radius:50%;font-size:18px;margin-left:auto}.scroll{font-size:9px;letter-spacing:1.5px;margin-left:20px}.theme-dark header,.theme-dark .hero-bottom{color:white}.theme-dark .scene-tabs i{background:var(--lime)}.programs{padding:80px 6% 95px}.section-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;border-bottom:1px solid #ccc;padding-bottom:22px}.programs>h2{font:900 italic clamp(55px,7vw,110px)/.95 Impact,Arial;letter-spacing:-3px;margin:45px 0}.programs>h2 em{font-style:inherit;color:#8b9980}.program-list>button{width:100%;display:flex;gap:25px;align-items:center;text-align:left;padding:28px 8px;border-top:1px solid #aaa}.program-list>button>span{font-size:12px}.program-list strong{font:900 italic 34px Impact,Arial;letter-spacing:-.7px}.program-list small{margin-left:auto;font-size:12px}.program-list b{font-size:24px;margin-left:20px;transition:transform .3s}.program-list>button[aria-expanded=true] b{transform:rotate(90deg)}.program-list>button[aria-expanded=true]{background:var(--lime);padding-left:22px}.program-detail{padding:25px 24px 32px;display:flex;gap:25px;align-items:center;background:#e9ecdF;animation:copy-in .3s both}.program-detail p{font-size:14px;line-height:1.8;margin:0}.program-detail>span{font-size:9px;letter-spacing:1px;margin-left:auto}.program-detail button{font-size:12px;border-bottom:1px solid;padding:10px 0}.philosophy{display:grid;grid-template-columns:1fr 1fr;background:#161916;color:white}.photo{min-height:570px;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;object-position:75% center}.philosophy-copy{padding:80px 12%;align-self:center}.philosophy h2{font-size:43px;font-weight:600;line-height:1.4;letter-spacing:-2px}.philosophy h2 em{color:var(--lime);font-style:normal}.philosophy p{font-size:14px;line-height:2;color:#b7bfb1}.philosophy button{margin-top:30px;border-bottom:1px solid var(--lime);padding:15px 0;color:var(--lime);font-size:13px}.closing{padding:80px 6%;background:var(--lime)}.closing>span{font-size:10px;letter-spacing:2px}.closing>button{display:block;font:900 italic clamp(50px,10vw,160px)/1 Impact,Arial;letter-spacing:-4px;text-align:left;margin:25px 0}.closing em{font-style:inherit;color:#5a671d}.closing p{font-size:14px}footer{padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:10px;line-height:1.8;color:#777}footer>a:last-child{font-size:11px}dialog{border:0;padding:40px;background:var(--paper);color:#171918;width:min(470px,92vw);max-height:90svh;overflow:auto}dialog::backdrop{background:#111b;backdrop-filter:blur(5px)}dialog h2{font-size:33px;line-height:1.3}.close{position:absolute;right:13px;top:8px;font-size:30px}form{display:grid;gap:12px}label{font-size:12px}input,select{padding:13px;width:100%;border:1px solid #bbb;background:white}.submit{background:var(--lime);padding:16px;font-weight:700;margin-top:12px}.sample,.result{font-size:11px;line-height:1.8}.result{font-size:13px}[hidden]{display:none!important}.paused *{animation-play-state:paused!important}
@keyframes word-in{from{opacity:0;transform:translateX(-100px) skewX(12deg);clip-path:inset(0 100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}@keyframes copy-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes energy-flow{to{stroke-dashoffset:-2720}}@keyframes speed{0%,65%{transform:translateX(0) rotate(-25deg);opacity:0}70%{opacity:.7}100%{transform:translateX(-650%) rotate(-25deg);opacity:0}}@keyframes wipe{0%{transform:translateX(-110%) skewX(-18deg)}48%{transform:translateX(0) skewX(-18deg)}100%{transform:translateX(110%) skewX(-18deg)}}@keyframes progress{to{width:100%}}@keyframes finale-zoom{from{transform:scale(1.07)}to{transform:scale(1)}}
@media(max-width:760px){header{padding:23px 6%}.logo{font-size:24px}.logo span{font-size:6px}nav{display:none}.book{padding:12px;font-size:11px}.hero{min-height:790px}.slide>video,.slide>img{object-position:68% center}.slide .shade{background:linear-gradient(0deg,#efefebf0,transparent 70%),linear-gradient(90deg,#efefebaa,transparent 70%)}.dark .shade{background:linear-gradient(0deg,#050606f5,transparent 75%),linear-gradient(90deg,#05060699,transparent)}.copy{top:auto;bottom:135px;left:6%;max-width:94%}.copy h1{font-size:64px;letter-spacing:-2.5px;margin:20px 0}.copy h2{font-size:23px;margin:20px 0}.eyebrow{font-size:8px}.hero-cta{font-size:11px;padding:14px 18px}.hero-bottom{bottom:25px;left:6%;right:6%;gap:10px}.scene-tabs{gap:12px}.scene-tabs button{min-width:68px;font-size:10px}.scene-tabs small{font-size:8px;margin-right:4px}.pause{width:36px;height:36px}.scroll{display:none}.energy{opacity:.8}.programs{padding:45px 6%}.section-label{font-size:8px;gap:25px;line-height:1.6}.programs>h2{font-size:50px;letter-spacing:-2px}.program-list>button{flex-wrap:wrap;gap:12px;padding:22px 5px}.program-list strong{font-size:23px}.program-list small{width:100%;margin-left:25px;font-size:11px}.program-list b{margin-left:auto}.program-detail{display:block;padding:22px}.program-detail p{font-size:12px}.program-detail>span{display:block;margin:18px 0}.philosophy{grid-template-columns:1fr}.photo{min-height:0;height:400px}.philosophy-copy{padding:45px 7%}.philosophy h2{font-size:34px}.closing{padding:55px 6%}.closing>button{font-size:57px;letter-spacing:-2px}footer{flex-wrap:wrap}footer p{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}.energy,.speedlines,.wipe{display:none}}
@keyframes word-in{from{opacity:0;transform:translateX(-100px) skewX(12deg);clip-path:inset(-10% 100% -10% -10%)}to{opacity:1;transform:none;clip-path:inset(-10% -15% -10% -10%)}}
.paused .copy h1 span,.paused .copy h2,.paused .hero-cta{animation:none!important}
@media(max-width:760px){.slide>video{object-position:55% center}.finale>img{object-position:72% center}}
/* Preserve heads; stop cover from cropping portrait subjects. */
.slide>video,.slide>img{object-position:center top}.slide>video{object-fit:contain;background:#eeeee9}.dark>video{background:#080a09}.finale>img{object-fit:contain;background:#dddcd5}.finale.active>img{animation:none}
@media(max-width:760px){.slide>video,.slide>img{top:90px;height:48%;object-fit:cover;object-position:65% top}.slide .shade{background:linear-gradient(0deg,#efefeb 0%,#efefeb 34%,transparent 65%)}.dark .shade{background:linear-gradient(0deg,#050606 0%,#050606 34%,transparent 65%)}.copy{bottom:115px}.copy h1{font-size:58px}.copy h2{font-size:21px}}
@media(min-width:761px){.slide>video,.slide>img{top:95px;height:calc(100% - 95px)}}
/* Kinetic color typography — independent of footage */
.copy h1 span{padding-right:.14em}
.active .copy h1 span:first-child{background:linear-gradient(110deg,#161918 12%,#161918 30%,#819c22 42%,#c5aeef 51%,#161918 64%,#161918 85%);background-size:300% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:word-in .8s cubic-bezier(.16,1,.3,1) both,type-color 4.2s ease-in-out infinite}
.dark.active .copy h1 span:first-child{background-image:linear-gradient(110deg,#fff 12%,#fff 28%,#d4ff21 41%,#cbb2ff 52%,#fff 66%,#fff 85%)}
.active .copy h1 .outline{animation:word-in .9s .12s cubic-bezier(.16,1,.3,1) both,outline-color 3.6s ease-in-out infinite;filter:drop-shadow(0 0 0 transparent)}
.dark.active .copy h1 .outline{animation-name:word-in,outline-color-dark}
@keyframes type-color{0%,100%{background-position:100% center}50%{background-position:0% center}}
@keyframes outline-color{0%,100%{-webkit-text-stroke-color:#171918;filter:drop-shadow(0 0 0 transparent)}40%{-webkit-text-stroke-color:#8b63b8;filter:drop-shadow(3px 0 0 #d4ff2166)}70%{-webkit-text-stroke-color:#6c8319;filter:drop-shadow(-2px 0 0 #ae8ae944)}}
@keyframes outline-color-dark{0%,100%{-webkit-text-stroke-color:#d4ff21;filter:drop-shadow(0 0 3px #d4ff2133)}45%{-webkit-text-stroke-color:#d2b7ff;filter:drop-shadow(3px 0 0 #d4ff2155)}75%{-webkit-text-stroke-color:#fff;filter:drop-shadow(-2px 0 0 #b09adf55)}}
.paused .copy h1 span:first-child{background-position:50% center}
@media(prefers-reduced-motion:reduce){.active .copy h1 span:first-child{background:none;color:#171918}.dark.active .copy h1 span:first-child{color:white}.active .copy h1 .outline{filter:none}}
/* Full-bleed video restored; only the final still retains safe framing. */
.slide>video{top:0;height:100%;object-fit:cover;object-position:center center}
@media(max-width:760px){.slide>video{top:0;height:100%;object-fit:cover;object-position:55% center}}
/* Full-bleed finale restored */
.finale>img{top:0;height:100%;object-fit:cover;object-position:center center}.finale.active>img{animation:finale-zoom 6s ease-out both}
/* Hero pause must never hide content elsewhere on the page. */
.paused .program-detail{animation:copy-in .35s both;animation-play-state:running!important}
.program-list>button{display:grid;grid-template-columns:28px 1fr auto 28px;gap:20px}.program-list strong{font-size:36px}.program-list small{font-size:15px;margin:0}.program-list b{margin:0}.program-detail{display:grid;grid-template-columns:42% 1fr;gap:22px 32px;align-items:start;padding:28px;background:#e7ebdf;overflow:hidden}.program-detail>img{width:100%;height:260px;object-fit:cover;object-position:70% center;grid-row:1/4;display:block}.program-detail>p{font-size:16px;line-height:1.9;margin:8px 0 0}.program-detail>span{margin:0;font-size:10px;letter-spacing:1.2px;align-self:end}.program-detail>button{width:max-content;text-align:left;font-size:14px;font-weight:700;padding:12px 0;align-self:end}.photo img{object-position:75% center}.philosophy-copy p{font-size:16px}.philosophy button{font-size:15px}.closing>.closing-intro{font-size:18px;margin-bottom:35px}.first-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:35px 0}.first-steps>div{border-top:1px solid #75851d80;padding-top:20px}.first-steps span{font:italic 22px Georgia;color:#607014}.first-steps h3{font-size:21px;letter-spacing:-.6px}.first-steps p{font-size:14px;line-height:1.8;color:#4c5919}.closing>.closing-reserve{font:700 16px Pretendard;letter-spacing:0;background:#171918;color:#d4ff21;padding:20px 28px;margin:35px 0 0;display:inline-block;transition:transform .25s}.closing>.closing-reserve:hover{transform:translateY(-3px)}.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s,transform .7s}.reveal.revealed{opacity:1;transform:none}.first-steps.revealed>div{animation:copy-in .65s both!important}.first-steps.revealed>div:nth-child(2){animation-delay:.12s!important}.first-steps.revealed>div:nth-child(3){animation-delay:.24s!important}
@media(max-width:760px){.finale>img{top:0;height:100%;object-fit:cover;object-position:68% center}.program-list>button{grid-template-columns:22px 1fr 24px;gap:9px 12px;padding:23px 8px}.program-list strong{font-size:24px}.program-list small{grid-column:2;grid-row:2;width:auto;margin:0;font-size:13px;line-height:1.6}.program-list b{grid-column:3;grid-row:1/3;font-size:24px}.program-list>button[aria-expanded=true]{padding-left:12px}.program-detail{grid-template-columns:1fr;padding:20px;gap:16px}.program-detail>img{grid-row:auto;height:230px}.program-detail>p{font-size:14px;margin:0}.program-detail>button{font-size:14px}.program-detail>span{margin:0;font-size:9px}.philosophy-copy p{font-size:14px}.first-steps{grid-template-columns:1fr;gap:20px}.first-steps h3{font-size:19px;margin:12px 0}.closing>.closing-intro{font-size:16px;line-height:1.7}.closing>.closing-reserve{font-size:14px;padding:18px 22px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.paused .program-detail,.first-steps.revealed>div{animation:none!important}}
