:root{font-size:min(.625vw,12px);--paper:#f2f2f2;--ink:#17191a;--green:#51b04c;--muted:#636666;--gap:2rem;--page:3rem;--ease:cubic-bezier(.21,1,.34,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1.6rem;line-height:1.4}::selection{background:var(--green);color:#fff}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button{background:none}h1,h2,h3,p{margin:0}h2,h3{font-weight:500;letter-spacing:-.045em}ul{padding:0;margin:0;list-style:none}img{width:100%;height:100%;display:block;object-fit:cover}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid #206c23;outline-offset:5px}::-webkit-scrollbar{width:15px}::-webkit-scrollbar-track{background:#f7f7f7}::-webkit-scrollbar-thumb{background:var(--green);border:3px solid #f7f7f7;border-radius:10px}[hidden]{display:none!important}.container{padding-left:var(--page);padding-right:var(--page)}.grid-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}.right-half{grid-column:3/5}.eyebrow,.tiny-label{font-size:1.4rem;line-height:1.05;font-weight:400;text-transform:uppercase;letter-spacing:-.04em}.eyebrow{padding-left:1.2rem;position:relative}.eyebrow:before{content:"";position:absolute;left:0;top:.3rem;width:.6rem;height:.6rem;background:currentColor}.section-heading{font-size:4.2rem;line-height:1.2;letter-spacing:-.045em}.media{overflow:hidden;border-radius:.3rem;background:#d9dfd7}.media img{transition:transform 1.2s var(--ease)}.media:hover img{transform:scale(1.035)}.small-landscape{width:37rem;height:19.53rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--green);color:#fff;min-height:3.8rem;padding:.4rem .4rem .4rem 1rem;font-size:1.6rem;border-radius:.4rem;line-height:1.2;position:relative;overflow:hidden;text-align:left;transition:background .4s var(--ease),color .4s var(--ease)}.button span,.button i{position:relative;z-index:1}.button:before{content:"";position:absolute;inset:0;background:#1d622a;clip-path:inset(100% 0 0);transition:clip-path .4s var(--ease)}.button:hover:before{clip-path:inset(0)}.button i{font-style:normal;color:#32792e;background:#fff;display:grid;place-items:center;width:2.8rem;height:2.8rem;flex-shrink:0;transition:transform .4s var(--ease)}.button:hover i{transform:rotate(45deg)}.visually-hidden{position:absolute!important;clip:rect(0,0,0,0);width:1px;height:1px;padding:0;border:0;overflow:hidden;white-space:nowrap}.skip-link{position:fixed;z-index:500;top:1rem;left:1rem;background:#fff;padding:1.2rem;transform:translateY(-200%)}.skip-link:focus{transform:none}
.site-header{position:fixed;z-index:40;left:0;right:15px;top:0;display:flex;align-items:center;padding:2rem 3rem;gap:4.5rem;color:white;transition:transform .35s var(--ease),background .3s,color .3s}.site-header.is-dark{color:var(--ink);background:rgba(242,242,242,.96)}.site-header.is-hidden{transform:translateY(-105%)}.wordmark{font-size:3rem;line-height:.9;letter-spacing:-.085em;font-weight:800;white-space:nowrap}.wordmark span{font-size:2rem;letter-spacing:0;vertical-align:top;display:inline-block;margin-left:.15rem}.header-nav{display:flex;gap:4rem;margin-left:auto;font-size:1.6rem}.header-nav a{position:relative}.header-nav a:after{content:"";position:absolute;bottom:-.5rem;left:0;right:100%;height:1px;background:currentColor;transition:right .3s}.header-nav a:hover:after{right:0}.menu-toggle{display:flex;align-items:center;gap:1rem;background:white;border-radius:.3rem;padding:1rem 1.5rem;color:var(--ink);font-size:1.6rem;white-space:nowrap}.menu-toggle span{color:#328630}.header-apply{margin-left:16rem}.hero{height:100vh;min-height:550px;position:relative;overflow:hidden;color:white}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{animation:hero-drift 24s ease-in-out infinite alternate;object-position:50% 48%}.hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.3),transparent 30%,transparent 75%,rgba(0,0,0,.38))}.hero-caption{position:absolute;left:3rem;bottom:9rem;font-size:1.4rem;letter-spacing:.04em}.image-credit{position:absolute;right:3rem;bottom:8.5rem;font-size:1.3rem;color:#fff;opacity:.8}.ticker{position:absolute;left:0;right:0;bottom:0;height:5rem;background:#050505;color:white;text-align:left;overflow:hidden;display:flex;align-items:center;white-space:nowrap}.ticker-track{display:flex;width:max-content;animation:ticker 60s linear infinite}.ticker-track>span{flex-shrink:0}.ticker:hover .ticker-track{animation-play-state:paused}.intro{height:100rem;padding-top:12rem;padding-bottom:12rem}.intro-content{margin-top:6.5rem}.intro-aside{grid-column:1/3;max-width:42rem}.intro-aside>p{margin-top:2rem;font-size:1.8rem;line-height:1.4}.intro-large{height:54.89rem}.discipline-block{margin-top:8.5rem}.discipline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem 1rem;margin-top:4rem;font-size:1.5rem}.discipline-grid li{display:flex;gap:.6rem;align-items:center}.discipline-grid li:before{content:"";width:.6rem;height:.6rem;border:1px solid var(--green)}
.promo{padding-bottom:6.5rem}.promo-panel{height:100vh;position:relative;overflow:clip;color:#fff}.promo-image{position:absolute;inset:-16%;will-change:transform}.promo-image:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.23)}.promo-label{position:sticky;top:0;height:100vh;display:grid;place-items:center}.promo-label h2{font-size:15rem;line-height:.8;letter-spacing:-.055em}.promo-corner{position:absolute;bottom:5rem;left:3rem;font-size:1.4rem;letter-spacing:.03em}.about{height:166.288rem;padding-top:6.5rem;padding-bottom:12rem}.about .section-head{margin-bottom:9.4rem}.benefit-row{display:grid;grid-template-columns:1fr 2.3fr .7fr;gap:2rem;align-items:end;border-bottom:1px solid #cecece;height:25.33rem;padding:5.5rem 0 3.2rem}.benefit-row h3{font-size:15rem;line-height:.8;letter-spacing:-.055em;align-self:center}.benefit-row .qualifier{font-size:2.2rem}.benefit-row p{font-size:1.6rem;color:var(--muted);max-width:25rem}.cinema{height:167rem;position:relative;color:#fff}.cinema-stage{height:100vh;min-height:550px;position:sticky;top:0;overflow:hidden}.cinema-image,.cinema-shade{position:absolute;inset:0}.cinema-image{transform:scale(1.04);will-change:transform;object-position:50% 40%}.cinema-shade{background:linear-gradient(110deg,rgba(0,0,0,.55),rgba(0,0,0,.02) 65%),linear-gradient(0deg,rgba(0,0,0,.8),transparent 45%)}.cinema-top{position:absolute;left:3rem;top:8rem;max-width:57rem}.cinema-top .button{margin-top:3.5rem}.cinema-bottom{position:absolute;right:15rem;bottom:7.5rem;width:42rem}.cinema-bottom p{font-size:2.2rem;line-height:1.2}.word-list{display:flex;gap:4rem;margin-top:4rem;font-size:2.6rem;letter-spacing:-.04em}.cinema .image-credit{bottom:3rem;right:3rem}.learning{height:100.86rem;padding-top:12rem;padding-bottom:6.5rem}.learning-prose{font-size:1.8rem;line-height:1.4;margin-top:3rem;max-width:64rem}.learning-content{margin-top:4rem;align-items:end}.learning-aside{grid-column:1/3;max-width:39rem}.learning-aside>p{font-size:1.8rem;line-height:1.4;margin-bottom:4rem}.learning-aside .small-landscape{height:24.68rem}.learning-large{height:49.97rem}.skills{height:167rem;padding:6.5rem 3rem}.skills-scene{height:100%;position:relative}.skills-scene h2{position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);font-size:15rem;line-height:.8;letter-spacing:-.06em;text-align:center;white-space:nowrap}.skill-card{position:absolute;background:white;width:22rem;height:22rem;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;border-radius:.2rem;will-change:transform}.skill-card h3{font-size:2.35rem;line-height:1.1;letter-spacing:-.04em}.square-motif{font-size:1.45rem;color:#418f3e;line-height:.8;letter-spacing:.1rem}.card-one{left:6%;top:19%}.card-two{left:42%;top:16%}.card-three{right:.5%;top:22%}.card-four{left:0;bottom:7%}.card-five{left:36%;bottom:3%}.card-six{right:8.5%;bottom:9%}
.projects{height:129.5rem;padding-top:12rem;padding-bottom:6.5rem;overflow:hidden}.project-intro{font-size:1.8rem;color:var(--muted);line-height:1.4;max-width:49rem;margin:2.5rem 0 4rem}.carousel{width:128.3rem;height:70.25rem;max-width:calc(100% - 24rem);margin:6rem auto 0;position:relative;outline-offset:8px}.project-card,.stack-card{position:absolute;inset:0;background:white;border-radius:.3rem}.project-card{padding:4rem;display:grid;grid-template-columns:1fr 35rem;gap:7rem;z-index:3}.project-copy{display:flex;flex-direction:column}.project-count{font-size:3.6rem;line-height:1}.project-count>span+span{font-size:1.4rem}.project-category{margin-top:8rem;font-size:1.4rem;color:var(--muted);letter-spacing:.08em}.project-copy h3{font-size:4rem;line-height:1.1;margin-top:2rem}.project-copy>p:nth-last-child(3){font-size:1.8rem;color:var(--muted);max-width:48rem;margin-top:2.7rem}.project-mark{font-size:1.8rem;letter-spacing:.08em;color:#317a46;margin-top:3rem}.project-caption{margin-top:auto;font-size:1.4rem;color:var(--muted)}.project-visual img{height:44rem;background:#dbe6d2}.project-visual>p{font-size:2.4rem;margin-top:2rem;letter-spacing:-.04em}.project-visual>span{display:block;font-size:1.4rem;color:var(--muted);margin-top:.5rem}.carousel-controls{position:absolute;right:4rem;bottom:4rem;display:flex;gap:.7rem;z-index:5}.carousel-controls button{width:4.5rem;height:4.5rem;background:var(--green);color:white;font-size:2rem;transition:background .2s}.carousel-controls button:hover{background:#317c2d}.stack-middle{transform:translateX(10rem) scale(.86);filter:blur(3px);z-index:2}.stack-back{transform:translateX(19rem) scale(.7);filter:blur(4px);z-index:1}.stack-art{position:absolute;right:4rem;top:4rem;bottom:13rem;width:35rem;background:linear-gradient(130deg,#315a53,#cddfa3)}.stack-back .stack-art{background:linear-gradient(130deg,#d3a575,#e9dbc2)}.project-card.is-changing{animation:card-swap .38s var(--ease)}
.planning{height:100vh;min-height:100rem;position:relative;padding-top:6.5rem;padding-bottom:6.5rem}.planning-copy{max-width:31rem;margin:2.5rem 0 4rem;font-size:1.6rem}.planning-large{position:absolute;left:3rem;bottom:12rem;width:61.5rem;height:61.5rem}.planning-small{position:absolute;right:3rem;bottom:12rem;width:36rem;height:24rem}.programs{height:113.37rem;padding-top:12rem;padding-bottom:12rem}.programs-heading{font-size:6.4rem;line-height:1.2}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:6.5rem}.program-card{height:68.15rem;background:#fff;border-radius:.6rem;padding:4rem;position:relative;display:flex;flex-direction:column}.program-card h3{font-size:6.4rem;line-height:1.15}.program-plus{position:absolute;right:4rem;top:4rem;background:var(--green);color:white;width:4.5rem;height:4.5rem;font-size:2.5rem;border-radius:.3rem;transition:transform .4s var(--ease)}.program-plus:hover{transform:rotate(90deg)}.program-notes{margin-top:4rem;font-size:1.6rem}.muted-label{font-size:1.4rem;opacity:.65;margin-bottom:.6rem}.separated{margin-top:2rem}.program-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:auto;font-size:1.6rem}.program-bottom ul{margin-top:1.5rem;line-height:1.7}.program-bottom li:before{content:"▪";margin-right:1rem}.program-bottom>div:last-child{max-width:23rem}.green-card{background:var(--green);color:white}.green-card .program-plus{background:white;color:var(--green);width:8.8rem;height:8.8rem}.green-card .muted-label{opacity:.85}.faq-strip{height:40rem;background:white;overflow:hidden}.faq-strip>button{width:100%;height:100%;display:flex;align-items:center;overflow:hidden;padding:0}.faq-track{display:flex;white-space:nowrap;animation:ticker 45s linear infinite;font-size:15rem;line-height:1;letter-spacing:-.055em;font-weight:600}.faq-track>span{flex-shrink:0}.faq-strip:hover .faq-track{animation-play-state:paused}.closing{height:100vh;min-height:620px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8rem;position:relative;overflow:hidden}.closing h2{font-size:15rem;font-weight:700;line-height:.8;text-align:center;letter-spacing:-.05em}.button-outline{color:var(--ink);background:transparent;border:1px solid var(--green)}.button-outline i{color:white;background:var(--green)}.button-outline:hover{color:white}.footer{min-height:79.1rem;background:var(--ink);color:#fff;padding-top:14rem;padding-bottom:4rem;display:flex;flex-direction:column;justify-content:space-between}.footer-main{display:grid;grid-template-columns:60rem 1fr 22rem;gap:5rem}.footer-newsletter h2{font-size:3.2rem;line-height:1.2;margin-top:2.5rem}.local-newsletter{position:relative;background:var(--paper);padding:.5rem;display:flex;width:50rem;max-width:100%;border-radius:.3rem;margin-top:4rem}.local-newsletter input{border:0;background:none;min-width:0;flex:1;padding:1rem 1.5rem;color:var(--ink);font-size:1.6rem}.local-newsletter .button{flex-shrink:0}.form-status{position:absolute;left:0;right:0;top:calc(100% + .8rem);font-size:1.4rem;color:inherit}.demo-note{font-size:1.25rem;opacity:.55;margin-top:3.5rem}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer-links h3{font-size:1.6rem;letter-spacing:0;margin-bottom:2rem}.footer-links a,.footer-links button{display:block;font-size:1.6rem;padding:0;text-align:left;line-height:1.8;color:#bbb}.footer-contact>button{display:block;font-size:2.4rem;margin-bottom:3rem;padding:0}.footer-contact a{display:block;font-size:1.5rem;color:#bbb;line-height:2}.footer a:hover,.footer button:hover{color:var(--green)}.footer-bottom{display:flex;align-items:end;gap:7rem;margin-top:8rem}.footer-wordmark{font-size:10.5rem;font-weight:800;line-height:.9;letter-spacing:-.09em;margin-right:2rem}.footer-wordmark span{font-size:6rem;vertical-align:top;letter-spacing:0}.footer-bottom>p{font-size:1.4rem;color:#aaa;line-height:1.5}.footer-bottom>p:nth-last-child(2){margin-left:auto}.back-top{width:4.5rem;height:4.5rem;border:1px solid #aaa;display:grid;place-items:center;font-size:2rem;align-self:start}.floating-apply{position:fixed;bottom:2.5rem;left:50%;transform:translate(-50%,8rem);background:white;padding:.5rem;display:flex;align-items:center;gap:1.5rem;z-index:30;border-radius:.3rem;box-shadow:0 0 20px #00000005;transition:transform .4s var(--ease),opacity .4s;opacity:0;pointer-events:none;white-space:nowrap}.floating-apply>span{padding-left:.7rem}.floating-apply.visible{transform:translate(-50%,0);opacity:1;pointer-events:auto}.motion-toggle{position:fixed;bottom:2.5rem;left:3rem;z-index:31;background:#fffdf0e8;font-size:1.3rem;border:1px solid #d4d7d0;border-radius:.3rem;padding:.8rem 1rem;color:#30372e}.motion-toggle:hover{background:#fff}
.mega-menu{position:fixed;inset:0;margin:0;max-width:none;max-height:none;width:100%;height:100dvh;border:0;padding:2rem 3rem;background:var(--paper);color:var(--ink);overflow:auto}.mega-menu::backdrop{background:var(--paper)}.menu-header{display:flex;align-items:center;gap:4rem}.menu-header .menu-toggle{margin-left:auto;margin-right:18rem}.menu-layout{display:grid;grid-template-columns:1fr .9fr 2.1fr;gap:3rem;margin-top:3rem}.menu-quick button{display:block;padding:0;margin-bottom:2rem;font-size:2.4rem;letter-spacing:-.03em}.menu-tabs{display:flex;flex-direction:column;gap:5.5rem;align-items:flex-start}.menu-tabs button{padding:0;font-size:4.2rem;line-height:1.2;letter-spacing:-.045em;text-align:left;color:#616363}.menu-tabs button[aria-selected=true]{color:var(--ink)}.menu-program{background:white;padding:1rem;display:flex;width:100%;text-align:left;gap:2rem;margin-bottom:1rem;border-radius:.3rem}.menu-program>div{flex:1;display:flex;flex-direction:column}.menu-program h3{font-size:3.6rem;line-height:1.2;margin-bottom:.6rem}.menu-program p{font-size:1.6rem;color:var(--muted)}.menu-program small{font-size:1.4rem;margin-top:auto;padding-top:2rem}.menu-program img{width:23rem;height:14rem;border-radius:.2rem}.menu-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.menu-tiles>a,.menu-tiles>button{background:white;height:14rem;padding:1rem;display:flex;align-items:end;text-align:left;font-size:1.6rem;border-radius:.3rem}.menu-feature{padding:4rem;background:white;min-height:48rem;display:flex;flex-direction:column;align-items:flex-start;gap:3rem}.menu-feature h3{font-size:7rem;line-height:1}.menu-feature>p:not(.eyebrow){font-size:1.8rem;max-width:45rem;color:var(--muted)}.menu-newsletter{position:absolute;bottom:9rem;left:3rem;width:50rem}.menu-newsletter .local-newsletter{margin-top:1.5rem}.menu-newsletter .form-status{color:#32792e}.menu-bottom{position:absolute;bottom:2rem;left:3rem;right:3rem;display:flex;justify-content:space-between;font-size:1.5rem;color:var(--muted)}.menu-bottom button{padding:0;font-size:inherit}.info-dialog{padding:6rem;border:0;border-radius:.5rem;background:var(--paper);color:var(--ink);width:85rem;max-width:calc(100% - 4rem);max-height:85dvh;overflow:auto}.info-dialog::backdrop{background:#111b18a6;backdrop-filter:blur(7px)}.dialog-close{position:absolute;right:2rem;top:1rem;font-size:4rem;padding:1rem;line-height:1}.info-dialog h2{font-size:6rem;line-height:1.05;margin:4rem 0}.info-dialog #dialog-body{font-size:1.9rem;line-height:1.5}.info-dialog p+p{margin-top:2rem}.info-dialog ul{padding-left:2rem;list-style:square;margin:2rem 0}.info-dialog li{margin-bottom:1rem}.info-dialog .button{margin-top:3rem}.dialog-note{font-size:1.5rem;color:var(--muted);border-top:1px solid #ccc;margin-top:4rem;padding-top:2rem}.inquiry-form{display:grid;gap:2rem;margin-top:3rem}.inquiry-form label{display:grid;gap:.8rem;font-size:1.6rem}.inquiry-form input,.inquiry-form select{width:100%;padding:1.5rem;border:1px solid #ccc;background:white;border-radius:.3rem;color:var(--ink);font:inherit}.inquiry-form .form-status{position:static;font-size:1.7rem;color:#2d6c30}.inquiry-form .button{justify-self:start;margin-top:0}.faq-list details{border-bottom:1px solid #ccc;padding:2rem 0}.faq-list summary{cursor:pointer;font-size:2.2rem;letter-spacing:-.025em}.faq-list details p{padding:2rem 0;font-size:1.8rem;color:var(--muted)}.noscript-note{position:fixed;bottom:0;left:0;right:0;z-index:100;background:white;color:black;padding:12px;font-size:14px}
.js-ready .reveal{opacity:0;transform:translateY(4rem);transition:opacity .9s var(--ease),transform .9s var(--ease)}.js-ready .reveal.is-visible{opacity:1;transform:none}.motion-paused *, .motion-paused *:before{animation-play-state:paused!important}.motion-paused .reveal{transition:none!important;opacity:1!important;transform:none!important}.motion-paused{scroll-behavior:auto}.motion-paused .promo-image,.motion-paused .cinema-image,.motion-paused .skill-card{transform:none!important}
@keyframes ticker{to{transform:translateX(-50%)}}@keyframes hero-drift{from{transform:scale(1.015) translateX(-.25%)}to{transform:scale(1.075) translateX(.25%)}}@keyframes card-swap{from{opacity:.3;transform:translateX(3rem)}to{opacity:1;transform:none}}
@media(min-width:1921px){.site-header{right:15px}.container{max-width:1920px;margin-inline:auto}.hero,.promo,.cinema,.skills,.faq-strip,.footer{max-width:none}}
@media(max-width:991px){:root{font-size:1.3vw;--page:2rem}.site-header{padding:2rem;gap:2rem}.header-nav{display:none}.menu-toggle{margin-left:auto}.header-apply{margin-left:0}.hero{min-height:550px}.section-heading{font-size:3.6rem}.intro,.learning,.about,.projects,.programs{height:auto;padding-top:8rem;padding-bottom:8rem}.intro-content{margin-top:5rem}.intro-aside{max-width:none;grid-column:1/3}.small-landscape{width:100%;height:20rem}.intro-large{height:45rem}.intro-aside>p,.learning-aside>p{font-size:1.65rem}.discipline-block{margin-top:4rem}.discipline-grid{grid-template-columns:1fr 1fr;font-size:1.3rem;gap:2rem}.promo-label h2{font-size:10rem}.about .section-head{margin-bottom:5rem}.benefit-row{grid-template-columns:.7fr 2fr 1fr;height:19rem;padding:3rem 0}.benefit-row h3{font-size:8rem}.benefit-row .qualifier{font-size:1.7rem}.benefit-row p{font-size:1.4rem}.cinema{height:145rem}.cinema-top{left:2rem;top:7rem}.cinema-bottom{right:5rem;bottom:9rem;width:32rem}.learning-large{height:40rem}.learning-aside{max-width:none}.skills{height:100rem;padding-inline:2rem}.skills-scene h2{font-size:10rem}.skill-card{width:15rem;height:15rem;padding:1.5rem}.skill-card h3{font-size:1.75rem}.card-two{left:42%;top:13%}.card-three{top:23%}.card-one{left:3%}.carousel{width:auto;max-width:calc(100% - 6rem);height:61rem;margin-top:5rem}.project-card{padding:3rem;gap:3rem;grid-template-columns:1fr 25rem}.project-category{margin-top:4rem}.project-copy h3{font-size:3rem}.project-copy>p:nth-last-child(3){font-size:1.5rem}.project-mark{font-size:1.4rem}.project-caption{font-size:1.2rem}.project-visual img{height:35rem}.project-visual>p{font-size:2rem}.project-visual>span{font-size:1.2rem}.carousel-controls{right:3rem;bottom:3rem}.stack-middle{transform:translateX(6rem) scale(.86)}.stack-back{transform:translateX(11rem) scale(.7)}.planning{min-height:80rem;height:auto;padding-top:7rem}.planning-large{left:2rem;bottom:7rem;width:32rem;height:35rem}.planning-small{right:2rem;bottom:7rem;width:24rem;height:16rem}.planning-copy{font-size:1.5rem}.programs-heading{font-size:4.8rem}.program-card{padding:3rem;height:60rem}.program-card h3{font-size:4.8rem}.program-plus{right:3rem;top:3rem}.green-card .program-plus{width:5rem;height:5rem}.program-bottom{font-size:1.4rem;gap:2rem}.faq-strip{height:25rem}.faq-track{font-size:10rem}.closing h2{font-size:11rem}.closing{min-height:650px}.footer{padding-top:8rem;padding-bottom:3rem}.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:5rem}.footer-main>*{min-width:0}.footer-newsletter{grid-column:1}.footer-links{grid-column:2}.footer-contact{grid-column:2;display:flex;gap:2rem;flex-wrap:wrap}.footer-contact>button{font-size:2rem;margin:0}.footer-bottom{gap:3rem;flex-wrap:wrap}.footer-wordmark{font-size:8rem}.footer-bottom>p:nth-last-child(2){margin-left:0}.footer-bottom>p{font-size:1.2rem}.menu-layout{grid-template-columns:.7fr 1fr 2fr;gap:2rem}.menu-tabs button{font-size:3.2rem}.menu-header .menu-toggle{margin-right:0}.menu-program h3{font-size:2.5rem}.menu-program img{width:14rem;height:14rem}.menu-program p{font-size:1.4rem}.menu-tiles>a,.menu-tiles>button{font-size:1.3rem}.menu-quick button{font-size:1.8rem}.menu-newsletter{width:32rem}.menu-feature h3{font-size:5rem}.info-dialog{width:65rem}.hero-caption,.image-credit{font-size:1.2rem}.motion-toggle{left:2rem}}
@media(max-width:600px){:root{font-size:2.564vw;--page:2rem;--gap:2rem}body{font-size:1.4rem}html{scrollbar-gutter:auto}::-webkit-scrollbar{width:0}.site-header{right:0;padding:1.8rem 2rem;gap:1.4rem}.wordmark{font-size:2.8rem}.wordmark span{font-size:1.7rem}.menu-toggle{font-size:1.4rem;padding:.8rem 1rem;gap:.7rem}.header-apply{display:none}.hero{height:100svh;min-height:540px}.hero-media img{object-position:47% 50%}.hero-caption{left:2rem;right:2rem;bottom:11rem;font-size:1rem}.image-credit{left:2rem;right:auto;bottom:8rem;font-size:1rem}.ticker{height:4.5rem;font-size:1.2rem}.grid-four{grid-template-columns:1fr 1fr}.right-half{grid-column:1/-1}.section-head{gap:3.5rem}.eyebrow{font-size:1.05rem;line-height:1.1;grid-column:1/-1}.tiny-label{font-size:1.05rem}.section-heading{font-size:3.3rem;line-height:1.13;letter-spacing:-.05em}.section-heading br{display:none}.intro{padding-block:6rem}.intro-content{margin-top:3.5rem;display:flex;flex-direction:column-reverse;gap:3rem}.intro-large{height:28rem;width:100%}.intro-aside{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:none}.small-landscape{width:100%;height:14rem}.intro-aside>p{font-size:1.4rem;margin-top:0}.discipline-block{margin-top:1rem;grid-column:1/-1}.discipline-grid{grid-template-columns:repeat(3,1fr);margin-top:2.5rem;gap:2rem;font-size:1.15rem}.promo-panel,.promo-label{height:85svh;min-height:490px}.promo-label h2{font-size:7rem;line-height:.9;letter-spacing:-.06em}.promo-corner{left:2rem;bottom:3rem;font-size:1rem}.promo{padding-bottom:0}.promo-image{inset:-10% -35%}.about{padding-block:6rem}.about .section-head{margin-bottom:3rem}.benefit-row{grid-template-columns:1fr 2.6fr;height:auto;min-height:19rem;align-items:start;gap:2rem;padding:3rem 0}.benefit-row h3{font-size:5.3rem;align-self:start;letter-spacing:-.06em;line-height:1}.benefit-row .qualifier{font-size:1.4rem;padding-top:1rem}.benefit-row p{grid-column:2;font-size:1.3rem;max-width:24rem;margin-top:-.5rem}.cinema{height:145svh;min-height:900px}.cinema-stage{height:100svh;min-height:620px}.cinema-top{left:2rem;right:2rem;top:6rem}.cinema-top .section-heading{font-size:3.3rem}.cinema-top .section-heading br{display:block}.cinema-top .button{margin-top:3rem}.button{font-size:1.25rem;min-height:3.6rem;gap:1.2rem;padding:.4rem .4rem .4rem .9rem}.button i{width:2.8rem;height:2.8rem}.cinema-bottom{right:3rem;left:10rem;bottom:10rem;width:auto}.cinema-bottom p{font-size:1.8rem}.word-list{font-size:2rem;gap:2rem;margin-top:2.5rem}.cinema .image-credit{bottom:3rem;left:2rem;font-size:.95rem}.cinema-image{object-position:57% 50%}.learning{padding-block:6rem}.learning-prose{font-size:1.5rem;margin-top:2rem}.learning-content{display:flex;flex-direction:column-reverse;gap:3rem;margin-top:3rem}.learning-large{width:100%;height:28rem}.learning-aside{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.learning-aside>p{font-size:1.4rem;margin:0}.learning-aside .small-landscape{height:17rem}.skills{height:84rem;padding:2rem}.skill-card{width:12rem;height:12rem;padding:1.3rem}.skill-card h3{font-size:1.45rem;line-height:1.1}.skills-scene h2{font-size:6.6rem;top:45%;letter-spacing:-.06em}.card-one{top:7%;left:0}.card-two{top:0;left:55%}.card-three{top:20%;right:0}.card-four{bottom:18%;left:0}.card-five{bottom:0;left:18%}.card-six{bottom:13%;right:0}.square-motif{font-size:1.3rem}.projects{padding-block:5rem 7rem}.project-intro{font-size:1.5rem;margin:2rem 0 2.5rem}.carousel{max-width:calc(100% - 1rem);width:100%;height:76rem;margin:4rem 0 0}.project-card{padding:2.5rem;grid-template-columns:1fr;gap:2rem;display:flex;flex-direction:column}.project-copy{display:contents}.project-count{font-size:3rem}.project-count>span+span{font-size:1.2rem}.project-category{margin-top:1rem;font-size:1.1rem}.project-copy h3{font-size:3.1rem;margin-top:-1rem}.project-copy>p:nth-last-child(3){font-size:1.4rem;margin-top:-.5rem}.project-mark{font-size:1.2rem;margin-top:-.5rem}.project-caption{position:absolute;bottom:2.5rem;left:2.5rem;right:11rem;font-size:1rem;line-height:1.3}.project-visual{display:grid;grid-template-columns:14rem 1fr;gap:1rem;align-items:end;margin-top:0}.project-visual img{height:20rem;grid-row:1/3}.project-visual>p{font-size:2rem;margin:0;align-self:end}.project-visual>span{font-size:1.1rem;margin:0;align-self:start}.carousel-controls{right:2.5rem;bottom:2.5rem;gap:.5rem}.carousel-controls button{width:3.6rem;height:3.6rem;font-size:1.8rem}.stack-middle{transform:translateX(3rem) scale(.94);filter:blur(2px)}.stack-back{transform:translateX(5rem) scale(.86);filter:blur(3px)}.planning{height:auto;min-height:0;padding-top:6rem;padding-bottom:6rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem 2rem}.planning .section-head{grid-column:1/-1}.planning-copy{font-size:1.45rem;max-width:28rem;margin:2rem 0 3rem}.planning-large,.planning-small{position:static;width:100%;height:20rem;align-self:end}.planning-small{height:13rem}.programs{padding-block:5rem 6rem}.programs-heading{font-size:4rem;line-height:1.1}.program-grid{grid-template-columns:1fr;margin-top:4rem;gap:2rem}.program-card{height:48rem;padding:3rem}.program-card h3{font-size:4.8rem;line-height:1.1}.program-plus{width:4rem;height:4rem;font-size:2rem}.program-notes{margin-top:3rem;font-size:1.4rem}.muted-label{font-size:1.15rem}.program-bottom{font-size:1.3rem}.green-card .program-plus{width:5rem;height:5rem}.faq-strip{height:20rem}.faq-track{font-size:8rem}.closing{height:83svh;min-height:560px;gap:5rem}.closing h2{font-size:8.5rem;line-height:.85}.footer{min-height:0;padding:6rem 2rem 10rem}.footer-main{display:flex;flex-direction:column;gap:5rem}.footer-newsletter h2{font-size:2.7rem;margin-top:2rem}.local-newsletter{margin-top:3rem;width:100%}.local-newsletter input{font-size:1.4rem;padding:1rem}.demo-note{font-size:1rem}.footer-links{gap:2rem}.footer-links h3,.footer-links a,.footer-links button{font-size:1.25rem}.footer-links h3{margin-bottom:1.2rem}.footer-contact{display:flex;flex-direction:column;gap:.6rem}.footer-contact>button{font-size:2.3rem;text-align:left;margin-bottom:1rem}.footer-contact a{font-size:1.3rem}.footer-bottom{margin-top:5rem;gap:2rem;align-items:center}.footer-wordmark{font-size:7rem;margin:0;flex-basis:100%}.footer-wordmark span{font-size:4rem}.footer-bottom>p{font-size:1rem;max-width:17rem}.back-top{margin-left:auto;margin-right:4rem;width:3.5rem;height:3.5rem;font-size:1.8rem}.floating-apply{bottom:1.5rem;max-width:calc(100% - 4rem);gap:.7rem;font-size:1.1rem}.floating-apply>span{padding-left:.4rem}.floating-apply .button{font-size:1.1rem;gap:.8rem}.motion-toggle{bottom:7rem;left:auto;right:2rem;font-size:1rem;padding:.6rem .7rem;background:#fffdf0dc}.motion-toggle span{display:none}.mega-menu{padding:1.8rem 2rem}.menu-header{gap:1.5rem}.menu-header>.button{display:none}.menu-header .menu-toggle{margin-left:auto}.menu-layout{display:flex;flex-direction:column;gap:3rem;margin-top:4rem}.menu-quick{display:flex;gap:3rem}.menu-quick button{font-size:1.5rem;margin:0}.menu-tabs{flex-direction:row;gap:2rem;flex-wrap:wrap}.menu-tabs button{font-size:2rem;line-height:1.1}.menu-tabs button br{display:none}.menu-tabs button[aria-selected=true]{border-bottom:2px solid var(--green);padding-bottom:.6rem}.menu-program{padding:1rem;gap:1rem}.menu-program h3{font-size:2.4rem}.menu-program p{font-size:1.2rem;line-height:1.35}.menu-program p br{display:none}.menu-program small{font-size:1rem;padding-top:1rem}.menu-program img{width:10rem;height:13rem}.menu-tiles>a,.menu-tiles>button{height:10rem;font-size:1.2rem;padding:1rem}.menu-newsletter{position:static;width:100%;margin-top:5rem;margin-bottom:6rem}.menu-bottom{position:static;gap:1.5rem;flex-wrap:wrap;font-size:1rem;padding-bottom:2rem}.menu-feature{min-height:38rem;padding:3rem;gap:2.5rem}.menu-feature h3{font-size:5rem}.menu-feature>p:not(.eyebrow){font-size:1.5rem}.info-dialog{padding:4rem 2.5rem;max-width:calc(100% - 3rem);width:100%;max-height:90dvh}.info-dialog h2{font-size:4.2rem;margin:3rem 0}.info-dialog #dialog-body{font-size:1.5rem}.info-dialog .eyebrow{font-size:1rem}.dialog-close{font-size:3rem;right:1rem;top:.5rem}.info-dialog .dialog-note{font-size:1.2rem}.inquiry-form label{font-size:1.3rem}.inquiry-form input,.inquiry-form select{padding:1.2rem}.faq-list summary{font-size:1.8rem}.faq-list details p{font-size:1.4rem}.form-status{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-ready .reveal{opacity:1;transform:none}.promo-image,.cinema-image,.skill-card{transform:none!important}}
/* Keep the six desktop skill cards in one viewport, as in the reference. */
@media(min-width:992px){.skills-scene{height:100vh;max-height:100%;top:50%;transform:translateY(-50%)}.skills-scene h2{top:42%}.card-one{top:4%}.card-two{top:0}.card-three{top:9%}.card-four{bottom:11%}.card-five{bottom:6%}.card-six{bottom:13%}}
/* Motion pass: independently implemented from observed browser behavior. */
.measure-word{display:inline-block}.motion-line{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.motion-line>span{display:block;transform-origin:0 100%;transform:translateY(105%) rotate(7deg);opacity:0;transition:transform .8s cubic-bezier(.16,1,.3,1),opacity .8s cubic-bezier(.16,1,.3,1);transition-delay:var(--line-delay,0ms)}.motion-heading.is-visible .motion-line>span{transform:none;opacity:1}.js-ready .reveal{transform:translateY(20px);transition-duration:.8s}.js-ready .reveal.is-visible{transform:none}
.promo-image{inset:0;height:125%;will-change:transform}.project-outgoing{z-index:4;pointer-events:none}.carousel{touch-action:pan-y;cursor:grab}.carousel:active{cursor:grabbing}.carousel-controls{cursor:auto}.project-card.is-changing{animation:none}
.cinema-visual{position:absolute;top:0;left:0;width:100%;height:100vh;overflow:hidden;transform:scale(0);transform-origin:50% 100%;transition:transform .9s cubic-bezier(.22,1,.36,1)}.cinema.is-expanded .cinema-visual{transform:scale(1)}.cinema-top,.cinema-bottom,.cinema .image-credit{opacity:0;transition:opacity .6s ease .3s}.cinema.is-expanded .cinema-top,.cinema.is-expanded .cinema-bottom,.cinema.is-expanded .image-credit{opacity:1}
.skill-card{--from-x:0vw;--from-y:30vh;transform:translate(var(--from-x),var(--from-y)) scale(0);transition:transform 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--card-delay)}.card-one{--from-x:35vw;--card-delay:.3s}.card-two{--card-delay:.1s}.card-three{--from-x:-40vw;--from-y:25vh;--card-delay:.2s}.card-four{--from-x:35vw;--from-y:-30vh;--card-delay:0s}.card-five{--from-y:-30vh;--card-delay:.4s}.card-six{--from-x:-35vw;--from-y:-30vh;--card-delay:.5s}.skills.is-expanded .skill-card{transform:none}
@media(min-width:992px){.about,.learning{position:relative;z-index:2;background:var(--paper)}.cinema{height:calc(350vh + 13rem);margin-block:-100vh;padding-block:6.5rem}.cinema-stage{height:200vh;max-height:none;overflow:visible}.cinema-bottom{bottom:auto;top:calc(100vh - 24rem)}.cinema .image-credit{bottom:auto;top:calc(100vh - 4rem)}.skills{height:calc(250vh + 13rem);margin-bottom:-100vh}.skills-scene{position:sticky;height:100vh;max-height:none;top:0;transform:none}.skills-scene h2{top:42%}.stack-middle{transform:translateX(15.6rem) scale(.85);filter:blur(5px)}.stack-back{transform:translateX(30rem) scale(.7);filter:blur(5px)}}
.motion-paused .motion-line>span{transform:none!important;opacity:1!important;transition:none!important}.motion-paused .cinema-visual{transform:none!important;transition:none!important}.motion-paused .cinema-top,.motion-paused .cinema-bottom,.motion-paused .cinema .image-credit{opacity:1!important}.motion-paused .skill-card{transition:none!important}
@media(prefers-reduced-motion:reduce){.motion-line>span{transform:none!important;opacity:1!important}.cinema-visual{transform:none!important}.cinema-top,.cinema-bottom,.cinema .image-credit{opacity:1!important}}

/* Measured closing pointer trail and independent title pin; original local assets only. */
.closing{isolation:isolate}.closing h2{position:relative;z-index:2;mix-blend-mode:difference;color:#fff}.closing>.button{position:relative;z-index:3}.image-trail{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}.image-trail:after{content:"";position:absolute;inset:0 0 auto;height:20vh;background:linear-gradient(var(--paper),transparent);z-index:2}.trail-image{position:absolute;width:25rem;height:31rem;object-fit:cover;transform:translate(-50%,-50%) scale(0);pointer-events:none}.drag-cursor{position:absolute;z-index:10;width:7rem;height:7rem;border-radius:50%;display:grid;place-items:center;background:#4da442;color:white;font-size:1.3rem;transform:translate(-50%,-50%) scale(0);transition:transform .2s;pointer-events:none}.pointer-over-card .drag-cursor{transform:translate(-50%,-50%) scale(1)}
.skills-title-track{position:relative;height:250vh;margin-top:-70vh;pointer-events:none}.skills-title-track h2{position:sticky;top:30vh;font-size:17rem;line-height:.8;letter-spacing:-.06em;text-align:center;margin:0;white-space:nowrap}
.promo{display:flow-root;height:calc(300vh + 6.5rem)}.promo-panel{height:120vh;min-height:0;margin-block:-10vh;overflow:clip}.promo-panel+.promo-panel{margin-top:0}.promo-image{height:120vh;inset:0}.promo-image img{height:100%;width:100%;object-fit:cover}.promo-text-track{position:absolute;top:0;width:100%;height:300vh;margin-top:-100vh}.promo-panel:first-child .promo-text-track{height:270vh;margin-top:-30vh}.promo-panel:last-child .promo-text-track{height:200vh}.promo-label{height:100vh;min-height:0}.promo-corner{display:none}
@media(max-width:991px){.image-trail,.drag-cursor{display:none}.closing{height:100vh;min-height:0}.closing h2{font-size:5.4rem;line-height:.8}.skills{height:calc(150vh + 2rem);margin:0;padding:0 1rem 2rem;position:relative}.skills-scene{position:sticky;top:0;height:100vh;max-height:none;transform:none}.skills-title-track{position:sticky;top:0;height:100vh;margin-top:-100vh;display:flex;align-items:center;justify-content:center;padding-bottom:10vh}.skills-title-track h2{position:static;font-size:8rem;line-height:.8;white-space:normal;max-width:100%;margin-bottom:3.2rem}.skill-card{width:17rem;height:12rem;padding:2rem}.skill-card h3{font-size:1.6rem}.card-one{left:0;top:14rem;bottom:auto}.card-two{left:29%;top:1rem;bottom:auto}.card-three{right:0;top:14rem;bottom:auto}.card-four{left:0;bottom:21rem;top:auto}.card-five{left:24%;bottom:8rem;top:auto}.card-six{right:0;bottom:21rem;top:auto}.about,.learning{position:relative;z-index:2;background:var(--paper)}.cinema{height:calc(350vh + 10rem);min-height:0;margin-block:-100vh;padding-block:5rem}.cinema-stage{height:200vh;min-height:0;overflow:visible}.cinema-visual{height:100vh}.cinema-bottom{bottom:auto;top:calc(100vh - 25rem)}.cinema .image-credit{bottom:auto;top:calc(100vh - 4rem)}.promo{height:calc(300vh + 5rem);padding-bottom:5rem}.promo-panel,.promo-image{height:120vh}.promo-label h2{font-size:8rem}.menu-tabs{flex-direction:column;align-items:flex-start;gap:1.2rem}.menu-tabs button{font-size:3.2rem}.menu-program img{display:none}.menu-program{padding:2rem}.menu-tabs button[aria-selected=true]{border:0;color:var(--green)}}
@media(max-width:600px){.intro{padding-block:10rem}.intro-large{height:37rem}.intro-aside{display:block}.intro-aside>.small-landscape,.intro-aside>p{display:none}.discipline-block{margin-top:2rem}.about{padding-block:5rem 6rem}.benefit-row{min-height:22rem}.learning{padding-block:10rem 5rem}.learning-large{height:37rem}.skills-title-track h2{font-size:8rem}.programs{padding-block:10rem}.faq-strip{height:27rem}.closing{gap:2rem}.closing h2{font-size:5.4rem;line-height:.8}}
.motion-paused .image-trail{display:none}@media(prefers-reduced-motion:reduce){.image-trail{display:none}}
.promo{display:flex;flex-direction:column}.promo-panel{flex:0 0 120vh}.promo-panel+.promo-panel{margin-top:-10vh}
@media(max-width:600px){.intro-aside>p{display:block;margin:0 0 3rem}.learning-aside{display:none}}
@media(max-width:600px){.skills-title-track h2{width:30rem}}
.skills-title-track h2{display:flow-root}
.closing{background:var(--paper)}
body{overflow-x:clip}
.button-outline:before{background:var(--green);clip-path:inset(0 0 100% 0);transition:clip-path .4s cubic-bezier(.21,1,.34,1)}.button-outline:hover:before{clip-path:inset(0)}.button-outline>span{background:var(--ink) linear-gradient(#fff,#fff) no-repeat 100% 0/100% 0;background-clip:text;-webkit-background-clip:text;color:transparent;transition:background-size .4s cubic-bezier(.21,1,.34,1)}.button-outline:hover>span{background-size:100% 100%}.button-outline:hover i{transform:translateX(.15rem)}
@media(min-width:992px){.skills-title-track h2{font-size:15rem;padding-bottom:3.2rem}}
/* Reveal the fixed-size photograph through an expanding window, as measured. */
.cinema{isolation:isolate;background:var(--paper)}.cinema-visual{left:50%;width:0;height:0;transform:translate(-50%,100vh);transform-origin:center;transition:width .9s cubic-bezier(.22,1,.36,1),height .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.cinema.is-expanded .cinema-visual{width:100vw;height:100vh;transform:translate(-50%,0)}.cinema-image{inset:auto;left:50%;top:50%;width:100vw;max-width:none;height:115vh;transform:translate(-50%,-50%);object-fit:cover}.cinema-top{z-index:2;opacity:1;mix-blend-mode:difference;color:#fff}.cinema-top .button{mix-blend-mode:normal}.motion-paused .cinema-visual{width:100vw;height:100vh;transform:translate(-50%,0)!important}.motion-paused .cinema-image{transform:translate(-50%,-50%)!important}@media(prefers-reduced-motion:reduce){.cinema-visual{width:100vw;height:100vh;transform:translate(-50%,0)!important}.cinema-image{transform:translate(-50%,-50%)!important}}
@media(max-width:600px){.skills-title-track h2{width:100%}}
@media(max-width:600px){:root{--page:1rem}html{scrollbar-gutter:stable}::-webkit-scrollbar{width:15px}.site-header{right:15px;padding-inline:1rem}.footer{padding-inline:1rem}}
.square-motif{display:grid;grid-template-columns:repeat(2,.7rem);gap:.3rem;width:max-content}.square-motif i{display:block;width:.7rem;height:.7rem;border:1px solid #418f3e}
@media(max-width:600px){.skills{margin-top:-3rem;margin-bottom:3rem}}

.language-link{font-size:14px;font-weight:700;text-decoration:none;padding:12px}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.contact-qr{display:block;max-width:210px;height:auto;background:white}.contact-qr-link{display:inline-block;margin-top:18px}.footer-contact .contact-qr{max-width:145px}.footer-newsletter>p{max-width:38rem}.menu-newsletter{height:auto!important;padding-block:2rem}.public-details-link{display:inline-block;margin-top:1rem}.site-header .header-nav{gap:2rem}:lang(zh-CN) .section-heading{line-height:1.22}:lang(zh-CN) .benefit-row h3{font-size:5rem}:lang(zh-CN) #skills-heading{font-size:12rem;line-height:1}:lang(zh-CN) .closing h2{font-size:17rem;line-height:1.05}:lang(zh-CN) .programs-heading{line-height:1.15}:lang(zh-CN) .skill-card h3{line-height:1.2}@media(max-width:991px){.language-link{padding:8px}.site-header{gap:6px}:lang(zh-CN) #skills-heading{font-size:7rem}:lang(zh-CN) .closing h2{font-size:10rem}:lang(zh-CN) .benefit-row h3{font-size:3.5rem}.footer-contact .contact-qr{max-width:145px}}

/* Official transparent torch: preserve original color and square aspect ratio. */
.wordmark,.footer-wordmark{display:inline-flex;align-items:center;gap:.35em}.brand-name{font:inherit;letter-spacing:inherit}.brand-torch{display:block;flex:none;width:1.65em;height:1.65em;object-fit:contain}.wordmark span,.footer-wordmark span{margin-left:0;align-self:flex-start}.footer-wordmark{gap:.15em;white-space:nowrap}.footer-wordmark .brand-torch{width:1.3em;height:1.3em}.footer-wordmark span{align-self:center}
@media(max-width:991px){.site-header .wordmark{gap:.15em}.site-header .brand-torch{width:1.5em;height:1.5em}.site-header .wordmark span{display:none}}
@media(max-width:600px){.footer-wordmark{font-size:5.5rem;gap:.1em}.footer-wordmark .brand-torch{width:1.2em;height:1.2em}.footer-wordmark span{font-size:3rem}}

/* v26: the exact opening frame remains beneath the film for loading/errors. */
.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;opacity:0;pointer-events:none}
.hero-media.video-playing video{opacity:1}
.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;animation:none;transform:none}
.hero-caption,.image-credit{text-shadow:0 1px 8px #000}
.motion-paused .hero-media video{opacity:0}
@media(prefers-reduced-motion:reduce){.hero-media video{display:none}}

.hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.48),transparent 30%,transparent 70%,rgba(0,0,0,.5))}

.hero-play{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #fff8;border-radius:2px;background:#101510d9;color:#fff;padding:1.2rem 2rem;font:inherit;cursor:pointer}.hero-play[hidden]{display:none}

/* v27: stable photographic contrast and a compact, scannable contact card. */
.cinema-top{mix-blend-mode:normal;text-shadow:0 2px 18px #0008}
.cinema-top .section-heading{max-width:54rem}
.cinema-shade{background:linear-gradient(110deg,rgba(5,12,10,.74),rgba(5,12,10,.16) 68%),linear-gradient(0deg,rgba(5,12,10,.83),transparent 55%)}
.cinema-image{object-position:48% 50%}
.contact-qr-link{width:232px;max-width:100%;padding:0;background:#fff;border:1px solid #ffffff24;border-radius:6px;overflow:hidden;text-align:center;color:#183025}
.contact-qr-link .contact-qr{display:block;width:232px;max-width:100%;height:auto}
.contact-qr-link span{display:block;padding:0 12px 15px;font-size:12px;line-height:1.5}
@media(max-width:600px){.cinema-image{object-position:42% 50%}.cinema-top .section-heading{font-size:3rem;line-height:1.2}.cinema-bottom{left:2rem;right:2rem;top:calc(100vh - 21rem)}.cinema-bottom p{font-size:1.6rem;line-height:1.4}.contact-qr-link{width:232px}.contact-qr-link .contact-qr{max-width:100%}}
/* Language-specific optical hierarchy: CJK needs less negative tracking. */
html:lang(zh-CN) body{font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif}
html:lang(zh-CN) .section-heading{font-size:4rem;line-height:1.28;letter-spacing:-.015em}
html:lang(zh-CN) .benefit-row h3{font-size:10.5rem;line-height:1.08;letter-spacing:-.025em}
html:lang(zh-CN) .promo-label h2{font-size:12rem;line-height:1.08;letter-spacing:-.025em}
html:lang(zh-CN) .closing h2{font-size:14rem;letter-spacing:-.02em;line-height:1.1}
.cinema-top{color:var(--ink);text-shadow:none}
.cinema.is-expanded .cinema-top{color:#fff;text-shadow:0 2px 18px #0008;transition:color .2s ease .7s}
@media(max-width:991px){html:lang(zh-CN) .benefit-row h3{font-size:6.6rem}html:lang(zh-CN) .promo-label h2{font-size:9rem}html:lang(zh-CN) .closing h2{font-size:8rem}}
@media(max-width:600px){html:lang(zh-CN) .section-heading{font-size:3.1rem;line-height:1.3}html:lang(zh-CN) .benefit-row h3{font-size:4.6rem}html:lang(zh-CN) .promo-label h2{font-size:7rem}html:lang(zh-CN) .cinema-top .section-heading{font-size:2.8rem}html:lang(en) .cinema-top .section-heading{font-size:2.9rem;line-height:1.2}html:lang(en) .benefit-row h3{font-size:4.8rem;letter-spacing:-.045em}html:lang(zh-CN) .closing h2{font-size:8rem}}
/* Keep the outgoing sticky skills scene behind the next opaque section. */
.projects{position:relative;z-index:3;background:var(--paper)}
.footer-contact .contact-qr-link{opacity:1;color:#244532}.footer-contact .contact-qr-link span{color:#244532;opacity:1}
@media(max-width:600px){html:lang(zh-CN) .section-heading br{display:block}}
@media(max-width:600px){html:lang(zh-CN) .closing h2{font-size:6.4rem}}

/* The hero ticker uses the same English typography in both site languages. */
.ticker-track{font-family:Arial,Helvetica,sans-serif;letter-spacing:.025em;line-height:1.2}
.ticker-track>span{display:block}
.ticker:focus-visible .ticker-track{animation-play-state:paused}
