@font-face{font-family:Manrope;src:url('assets/fonts/manrope-regular.ttf') format('truetype');font-weight:400 600;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-extrabold.ttf') format('truetype');font-weight:700 900;font-display:swap}
@font-face{font-family:Pretendard;src:url('assets/fonts/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--ink:#111;--paper:#fff;--muted:#696969;--gutter:clamp(20px,1.25vw,32px);--header:92px;--ease:cubic-bezier(.17,.84,.44,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 20px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Pretendard,sans-serif;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}a{color:inherit;text-decoration:none}button{border:0}h1,h2,h3,h4,p,figure{margin:0}img{display:block;width:100%;height:100%;object-fit:cover}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #4874d8;outline-offset:6px}button:disabled{cursor:default;opacity:.35}::selection{background:#c6d6d0;color:#111}.page-pad{padding-inline:var(--gutter)}.dark{background:var(--ink);color:#fff}.eyebrow{display:block;font-size:18px;line-height:1.6;letter-spacing:-.025em}.display{font-size:clamp(44px,4.6vw,88px);font-weight:800;letter-spacing:-.055em;line-height:1.07}.skip-link{position:fixed;top:12px;left:12px;padding:16px;background:#fff;color:#111;z-index:120;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{height:var(--header);position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);background:rgba(255,255,255,.97);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}.site-header.scrolled{border-color:#e9e9e9}.desktop-nav{display:flex;gap:34px;align-items:center;font-size:15px;font-weight:600}.text-link{position:relative;padding:10px 0}.text-link:after{content:'';position:absolute;bottom:4px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}.text-link:hover:after{transform:scaleX(1);transform-origin:left}.logo{display:flex;flex-direction:column;align-items:center;width:max-content;line-height:.87}.site-header>.logo{position:absolute;left:50%;transform:translateX(-50%)}.logo>span{font-size:36px;font-weight:800;letter-spacing:-.075em;position:relative}.logo-dot{font-size:10px;position:absolute;top:1px;right:-10px;letter-spacing:0}.logo small{font-size:8px;letter-spacing:.51em;padding-left:4px;margin-top:7px;font-weight:800}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:#111;color:#fff;padding:15px 25px;border-radius:50px;font-size:15px;min-height:46px;transition:background .25s,transform .25s}.pill:hover{background:#353535}.pill:active,.contact-button:active{transform:scale(.96)}.pill>span:last-child:not(.rolling){font-size:20px;transition:transform .35s var(--ease)}.pill:hover>span:last-child:not(.rolling){transform:translate(3px,-3px)}.rolling{display:block;height:1.5em;line-height:1.5;overflow:hidden}.rolling>span{display:block;transition:transform .45s var(--ease)}button:hover .rolling>span,button:focus-visible .rolling>span{transform:translateY(-100%)}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}
.hero{padding:calc(var(--header) + 18px) var(--gutter) 0;overflow:hidden}.hero-collage{display:grid;grid-template-columns:1fr 1fr 2.247fr 1.217fr 1.217fr 1.55fr;gap:1.45vw;align-items:start}.hero-photo{position:relative;overflow:hidden;border-radius:8px;isolation:isolate;aspect-ratio:1 / 1.08;background:#eae9e5}.hero-photo img{filter:saturate(.66);object-position:center 58%}.hero-photo:after{content:'';position:absolute;inset:0;background:#fff;transform:translateY(-102%);z-index:1}.photo-3{aspect-ratio:.79}.photo-3 img{object-position:center 66%}.photo-4,.photo-5{align-self:end}.photo-6{width:67%;justify-self:end}.photo-6 img{object-position:48% center}.hero-caption{text-align:center;font-size:16px;letter-spacing:-.035em;margin-top:110px;margin-bottom:18px}.hero-wordmark{font-size:clamp(50px,13.05vw,260px);line-height:.98;font-weight:800;letter-spacing:-.062em;text-align:center;white-space:nowrap;margin-left:-.025em;padding-bottom:22px}
.motion-ready .hero-photo img{animation:hero-zoom 1.8s var(--ease) both;animation-delay:var(--delay,0s)}.motion-ready .hero-photo:after{animation:curtain 1.5s var(--ease) both;animation-delay:var(--delay,0s)}.motion-ready .photo-2,.motion-ready .photo-3{--delay:.18s}.motion-ready .photo-4{--delay:.4s}.motion-ready .photo-5{--delay:.5s}.motion-ready .photo-6{--delay:.3s}.motion-ready .hero-caption{animation:enter 1s var(--ease) .4s both}.motion-ready .hero-wordmark{animation:enter 1.2s var(--ease) .6s both}
.about{padding-bottom:190px}.about-images{display:grid;grid-template-columns:40% 1fr;gap:14px;height:clamp(280px,35vw,640px)}.about-images figure{overflow:hidden}.about-images figure:first-child{border-radius:0 8px 8px 0}.about-images figure:last-child{border-radius:8px 0 0 8px}.about-images img{filter:saturate(.6);object-position:center 55%}.about-images figure:last-child img{object-position:center 60%}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:72px}.about-description{padding-top:120px;max-width:580px}.about-description h3{font-size:clamp(22px,2vw,32px);line-height:1.45;font-weight:600;letter-spacing:-.055em}.about-description p{font-size:18px;line-height:1.85;margin-top:25px;color:#555;letter-spacing:-.035em}
.principles{padding:145px var(--gutter) 80px}.section-heading{text-align:center}.section-heading>h2{font-size:clamp(40px,4.4vw,76px);font-weight:600;letter-spacing:-.055em;line-height:1.24;margin-top:30px}.section-heading>h2.display{font-weight:800;line-height:1.1}.section-heading>p{font-size:18px;line-height:1.8;letter-spacing:-.03em;color:#666;margin-top:34px}.principles-list{max-width:1280px;margin:100px auto 80px}.principle{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;min-height:360px;margin-top:90px}.principle:first-child{margin-top:0}.principle:nth-child(even) .motion-art{grid-column:2;grid-row:1}.principle:nth-child(even) .principle-copy{grid-column:1;grid-row:1;justify-self:center}.principle-copy{width:100%}.principle-copy h3{font-size:clamp(44px,4.7vw,80px);letter-spacing:-.06em;line-height:1.15;font-weight:800}.principle-copy h4{font-size:24px;font-weight:500;line-height:1.5;letter-spacing:-.04em;margin-top:25px}.principle-copy p{font-size:17px;line-height:1.85;margin-top:17px;letter-spacing:-.025em;color:#aaa}.motion-art{width:min(100%,420px);margin:auto;aspect-ratio:1}.motion-art svg{width:100%;height:100%;fill:none;stroke:rgba(255,255,255,.53);stroke-width:.65}.motion-art .point,.center-point{fill:#fff;stroke:none}.orbit{transform-origin:200px 200px;animation:orbit 25s linear infinite}.orbit-slow{animation-duration:42s}.orbit-reverse{animation-direction:reverse;animation-duration:32s}.breathing-rings{transform-origin:center;animation:breathe 6s ease-in-out infinite}.breathing-rings circle:nth-child(2){opacity:.7}.breathing-rings circle:nth-child(3){opacity:.5}.motion-art:not(.in-view) *{animation-play-state:paused}.motion-paused .motion-art *{animation-play-state:paused!important}.motion-toggle{display:flex;gap:24px;align-items:center;background:none;color:#9e9e9e;font-size:12px;padding:12px;margin:0 auto;border:1px solid #3b3b3b;border-radius:30px}.motion-toggle:hover{color:#fff;border-color:#aaa}
.studio{padding-top:150px;padding-bottom:150px}.studio-heading{text-align:center;padding-bottom:95px}.studio-heading h2{font-size:clamp(52px,7.2vw,130px);margin-top:24px}.mobile-break{display:none}.studio-layout{display:grid;grid-template-columns:44% 56%;align-items:start}.studio-sticky{position:sticky;top:calc(var(--header) + 36px);padding:22px 45px 45px 0}.studio-sticky h3{font-size:clamp(32px,3.85vw,70px);font-weight:800;line-height:1.06;letter-spacing:-.055em;margin-top:26px}.studio-sticky p{font-size:17px;line-height:1.9;margin-top:30px;letter-spacing:-.04em;color:#666}.studio-thumbnails{display:flex;gap:10px;margin-top:40px;max-width:460px}.studio-thumbnails a{flex:1;min-width:0;aspect-ratio:1.2;border-radius:5px;overflow:hidden;opacity:.4;transition:opacity .3s,transform .3s;position:relative}.studio-thumbnails img{filter:saturate(.5)}.studio-thumbnails a.is-active,.studio-thumbnails a:hover{opacity:1}.studio-thumbnails a.is-active:after{content:'';position:absolute;inset:0;border:2px solid #111;border-radius:5px}.studio-thumbnails a:active{transform:scale(.93)}.studio-gallery{display:grid;gap:26px}.gallery-photo{position:relative;aspect-ratio:1.94;overflow:hidden;border-radius:8px;isolation:isolate;scroll-margin-top:calc(var(--header) + 20px);background:#eee}.gallery-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.6));z-index:0}.gallery-photo img{object-position:center 62%;filter:saturate(.6);transition:transform 1s var(--ease)}.gallery-photo:hover img{transform:scale(1.025)}.gallery-photo:nth-child(2) img{object-position:50% 61%}.gallery-photo:nth-child(3) img{object-position:center 54%}.gallery-photo figcaption{position:absolute;bottom:28px;right:28px;left:24px;text-align:right;z-index:1;color:#fff}.gallery-photo h4{font-size:clamp(18px,2.1vw,34px);line-height:1.2;letter-spacing:-.035em;font-weight:600}.gallery-photo p{font-size:15px;margin-top:10px;letter-spacing:-.025em}
.program{padding-top:50px;padding-bottom:155px}.program .section-heading{margin-bottom:70px}.class-cards{display:flex;gap:16px}.class-card{position:relative;flex:1;min-width:0;height:clamp(490px,46vw,740px);border-radius:8px;overflow:hidden;isolation:isolate;transition:flex .75s var(--ease)}.class-card.is-active{flex:2}.class-card>img{filter:saturate(.55);transition:transform 1.1s var(--ease);object-position:center 54%}.class-card:hover>img{transform:scale(1.035)}.class-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.18) 20%,rgba(0,0,0,.76) 100%)}.class-card>img{position:absolute;inset:0;z-index:-2}.class-content{padding:34px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;color:#fff}.class-number{font-size:12px;letter-spacing:.06em;margin-bottom:auto;padding-top:3px}.class-content h3{font-size:clamp(24px,2.6vw,42px);font-weight:500;letter-spacing:-.055em;line-height:1.35;white-space:nowrap}.class-content p{font-size:16px;line-height:1.7;letter-spacing:-.035em;opacity:0;max-height:0;overflow:hidden;transition:opacity .3s,max-height .6s,margin .6s}.class-card.is-active .class-content p{opacity:1;max-height:110px;margin-top:20px;transition-delay:.18s}.detail-button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;background:none;padding:0;text-align:left;color:#fff;margin-top:38px}.detail-button>span:first-child{font-size:11px;letter-spacing:.07em}.round-arrow{display:grid;place-items:center;border:1px solid #ffffff80;border-radius:50%;width:40px;height:40px;flex-shrink:0;font-size:22px;transition:background .3s,color .3s,transform .3s}.detail-button:hover .round-arrow{background:#fff;color:#111;transform:rotate(45deg)}.class-navigation{display:none}
.site-footer{padding-top:95px}.footer-main{display:grid;grid-template-columns:55% 18% 27%;min-height:430px;padding-bottom:80px;gap:0}.footer-intro h2{font-size:clamp(32px,3.6vw,64px);line-height:1.12;letter-spacing:-.05em;font-weight:500}.footer-intro p{margin-top:25px;font-size:17px;line-height:1.8;letter-spacing:-.025em;color:#ccc}.contact-button{display:flex;align-items:center;justify-content:space-between;width:260px;padding:6px 6px 6px 22px;border-radius:12px;background:white;color:#111;margin-top:46px;font-size:16px;transition:transform .25s}.arrow-box{display:grid;place-items:center;width:64px;height:64px;background:#111;color:white;font-size:30px;border-radius:8px;transition:background .3s,transform .4s}.contact-button:hover .arrow-box{background:#353535;transform:rotate(-5deg)}.footer-nav{display:flex;flex-direction:column;align-items:start;gap:16px;padding-top:3px}.footer-nav a,.footer-nav button{background:none;padding:0;font-size:25px;font-weight:400;line-height:1.5;color:#888;transition:color .25s}.footer-nav a:hover,.footer-nav button:hover{color:#fff}.footer-brand{display:flex;flex-direction:column;align-items:flex-end;padding-top:3px}.footer-brand .logo>span{font-size:46px}.footer-brand p{font-size:13px;line-height:1.9;text-align:right;color:#999;margin-top:27px}.back-top{display:flex;gap:40px;font-size:13px;margin-top:40px;padding-block:10px;border-bottom:1px solid #555}.footer-bottom{border-top:1px solid #292929;padding:35px 0;display:flex;justify-content:space-between;gap:25px;font-size:12px;line-height:1.6;color:#858585}.footer-bottom small{font-size:inherit}
.motion-ready .reveal,.motion-ready .image-reveal{opacity:0;transform:translateY(45px);transition:opacity .9s var(--ease),transform 1s var(--ease)}.motion-ready .reveal.is-visible,.motion-ready .image-reveal.is-visible{opacity:1;transform:translateY(0)}.image-reveal img{transition:transform 1.6s var(--ease)}.motion-ready .image-reveal:not(.is-visible) img{transform:scale(1.07)}
dialog{border:0;padding:0;color:#111;background:#fff;width:min(920px,calc(100% - 40px));max-height:calc(100dvh - 48px);border-radius:14px;overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 100px #0003}dialog::backdrop{background:#0009;backdrop-filter:blur(6px)}dialog[open]{animation:dialog-enter .4s var(--ease)}.dialog-close{position:absolute;right:16px;top:16px;z-index:2;border-radius:50%;background:#fff;color:#111;width:42px;height:42px;font-size:30px;line-height:1;box-shadow:0 2px 15px #0001;transition:transform .3s}.dialog-close:hover{transform:rotate(90deg)}.detail-dialog[open]{display:grid;grid-template-columns:42% 58%}.detail-image{min-height:530px}.detail-image img{object-position:center 60%;filter:saturate(.6)}.detail-copy{padding:64px 36px 42px}.detail-copy .eyebrow{font-size:12px;letter-spacing:.07em;color:#666}.detail-copy h2{font-size:32px;line-height:1.3;letter-spacing:-.055em;margin-top:18px;word-break:keep-all}.detail-copy>p{font-size:16px;color:#555;line-height:1.8;margin-top:25px;word-break:keep-all}.detail-copy dl{margin:28px 0}.detail-copy dl>div{display:grid;grid-template-columns:75px 1fr;gap:15px;padding:14px 0;border-top:1px solid #ddd;font-size:14px;line-height:1.6}.detail-copy dt{color:#666}.detail-copy dd{margin:0;word-break:keep-all}.contact-dialog{max-width:560px;padding:48px}.contact-dialog>.eyebrow{font-size:11px;letter-spacing:.07em;color:#666}.contact-dialog h2{font-size:46px;letter-spacing:-.06em;line-height:1.13;margin-top:18px;font-weight:600}.dialog-lead{margin:20px 0 26px;color:#666;font-size:15px}.contact-dialog fieldset{padding:0;border:0;margin:0 0 24px}.contact-dialog legend{font-size:13px;margin-bottom:10px}.program-options{display:flex;gap:8px}.program-options label{flex:1;position:relative;cursor:pointer}.program-options input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.program-options span{display:block;padding:12px 3px;font-size:13px;text-align:center;border:1px solid #ddd;border-radius:5px;transition:background .2s,color .2s}.program-options input:checked+span{background:#111;color:#fff;border-color:#111}.program-options input:focus-visible+span{outline:3px solid #4874d8;outline-offset:3px}.field{display:block;font-size:13px;margin-top:20px}.field input{display:block;border:0;border-bottom:1px solid #ccc;border-radius:0;background:transparent;width:100%;margin-top:8px;padding:12px 0;font-size:16px;color:#111}.field input::placeholder{color:#999}.preview-note{font-size:11px;line-height:1.65;color:#777;margin-top:23px;word-break:keep-all}.submit-button{width:100%;margin-top:22px;justify-content:space-between}.contact-dialog #form-status{font-size:13px;line-height:1.7;margin-top:16px;word-break:keep-all}.contact-dialog #form-status:empty{display:none}.noscript-note{padding:20px;text-align:center;font-size:14px;background:#f2f2f2}
@keyframes curtain{from{transform:translateY(0)}to{transform:translateY(-102%)}}@keyframes hero-zoom{from{transform:scale(1.18)}to{transform:scale(1)}}@keyframes enter{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:translateY(0)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes breathe{0%,100%{transform:scale(.8)}50%{transform:scale(1)}}@keyframes dialog-enter{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
html.lenis{scroll-behavior:auto}
@media(min-width:1800px){.principles-list{max-width:1480px}.principle{min-height:440px}.motion-art{max-width:500px;width:100%}.hero-caption{margin-top:140px}.about-copy{padding-top:100px}.about-description{padding-top:150px}}
@media(max-width:1100px){:root{--header:80px}.desktop-nav{gap:22px;font-size:13px}.hero-caption{margin-top:80px}.about{padding-bottom:130px}.about-description{padding-top:90px}.about-description p{font-size:16px}.principles{padding-top:110px}.principle{gap:5%;min-height:300px;margin-top:60px}.principle-copy h4{font-size:21px}.principle-copy p{font-size:16px}.studio-sticky{padding-right:25px}.studio-sticky p{font-size:15px}.studio-thumbnails{gap:7px}.class-content{padding:25px}.class-content p{font-size:14px}.class-content h3{font-size:28px}.footer-main{grid-template-columns:53% 20% 27%}.footer-nav a,.footer-nav button{font-size:21px}.program .section-heading h2{font-size:4.5vw}}
@media(max-width:760px){:root{--header:72px;--gutter:18px}.desktop-nav,.contact-top{display:none}.site-header>.logo{position:static;transform:none}.logo>span{font-size:31px}.logo small{font-size:7px;margin-top:6px}.menu-toggle{display:flex;width:44px;height:44px;background:none;padding:10px 4px;flex-direction:column;justify-content:center;gap:7px;z-index:2}.menu-toggle span{display:block;width:28px;height:1px;background:#111;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{position:fixed;inset:var(--header) 0 0;background:#fff;z-index:49;padding:35px 24px;display:flex;flex-direction:column;justify-content:space-between;animation:enter .35s var(--ease)}.mobile-menu nav{display:grid;gap:4px}.mobile-menu nav a,.mobile-menu nav button{display:flex;justify-content:space-between;align-items:center;font-size:38px;letter-spacing:-.055em;line-height:1.3;padding:20px 0;border-bottom:1px solid #ddd;background:none;text-align:left}.mobile-menu nav span{font-size:14px;letter-spacing:0}.mobile-menu>p{font-size:12px;letter-spacing:.06em;color:#777}.hero{padding-top:calc(var(--header) + 14px)}.hero-collage{grid-template-columns:.8fr .85fr 1.65fr .95fr;gap:8px}.hero-photo{border-radius:5px}.photo-1{grid-column:1;grid-row:1;align-self:start;margin-top:13px}.photo-2{grid-column:2;grid-row:1;align-self:start}.photo-3{grid-column:3;grid-row:1 / 3;aspect-ratio:.65}.photo-4{grid-column:2;grid-row:2;align-self:end}.photo-5{grid-column:4;grid-row:2;align-self:end}.photo-6{grid-column:4;grid-row:1;align-self:start;width:100%;margin-top:12px}.photo-4,.photo-5{aspect-ratio:.8}.hero-caption{font-size:11px;margin-top:54px;margin-bottom:15px}.hero-wordmark{font-size:12.7vw;padding-bottom:19px;letter-spacing:-.065em;line-height:1.05}.about-images{height:240px;gap:8px;grid-template-columns:42% 1fr}.about-images figure:first-child img{object-position:55% center}.about-copy{grid-template-columns:1fr;gap:36px;padding-top:42px}.display{font-size:46px}.about-description{padding-top:0;margin-left:20%;max-width:none}.about-description h3{font-size:23px}.about-description p{font-size:14px;line-height:1.9;margin-top:19px}.about{padding-bottom:80px}.principles{padding-top:80px;padding-bottom:40px}.section-heading>.eyebrow{font-size:14px}.section-heading>h2{font-size:34px;margin-top:22px;line-height:1.3}.principles-list{margin:40px auto 50px}.principle{grid-template-columns:1fr;gap:18px;margin-top:64px;min-height:0;text-align:center}.principle:nth-child(even) .motion-art{grid-column:1;grid-row:auto}.principle:nth-child(even) .principle-copy{grid-column:1;grid-row:auto}.motion-art{width:245px}.principle-copy h3{font-size:44px}.principle-copy h4{font-size:20px;margin-top:18px}.principle-copy p{font-size:14px;line-height:1.8;margin-top:12px}.motion-toggle{font-size:11px}.studio{padding-top:85px;padding-bottom:85px}.studio-heading{padding-bottom:40px}.studio-heading .eyebrow{font-size:14px}.studio-heading h2{font-size:13vw;margin-top:20px}.studio-layout{display:block}.studio-sticky{position:static;padding:0 0 28px}.studio-sticky .eyebrow{font-size:13px}.studio-sticky h3{font-size:40px;margin-top:18px;line-height:1.08}.studio-sticky p{font-size:14px;margin-top:20px}.studio-thumbnails{margin-top:25px;max-width:none;gap:7px}.studio-thumbnails a{aspect-ratio:1.25}.studio-gallery{gap:15px}.gallery-photo{aspect-ratio:1.35;border-radius:6px}.gallery-photo figcaption{bottom:20px;right:18px;left:18px}.gallery-photo h4{font-size:20px}.gallery-photo p{font-size:12px;margin-top:7px}.program{padding-top:0;padding-bottom:75px;overflow:hidden}.program .section-heading h2{font-size:clamp(23px,6vw,40px);letter-spacing:-.065em;line-height:1.2}.section-heading>p{font-size:14px;line-height:1.8;margin-top:23px}.program .section-heading{margin-bottom:35px}.class-cards{overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-right:18px;margin-right:-18px;scrollbar-width:none}.class-cards::-webkit-scrollbar{display:none}.class-card,.class-card.is-active{flex:0 0 88%;height:520px;scroll-snap-align:start;border-radius:6px;transition:none}.class-content{padding:25px}.class-content h3{font-size:32px}.class-content p,.class-card.is-active .class-content p{opacity:1;max-height:none;margin-top:18px;font-size:14px}.detail-button{margin-top:25px}.class-navigation{display:flex;align-items:center;justify-content:space-between;margin-top:20px;font-size:11px;letter-spacing:.08em}.class-navigation>div{display:flex;gap:10px}.class-navigation button{background:#f4f4f4;border-radius:50%;width:40px;height:40px;font-size:20px}.site-footer{padding-top:60px}.footer-main{grid-template-columns:1fr 1fr;gap:50px 20px;padding-bottom:45px;min-height:0}.footer-intro{grid-column:1 / -1}.footer-intro h2{font-size:38px}.footer-intro p{font-size:14px;line-height:1.8;margin-top:20px}.contact-button{margin-top:30px;width:230px;font-size:14px}.arrow-box{width:55px;height:55px;font-size:26px}.footer-nav{gap:8px}.footer-nav a,.footer-nav button{font-size:18px}.footer-brand .logo>span{font-size:36px}.footer-brand p{font-size:10px;margin-top:20px}.back-top{font-size:11px;margin-top:18px;gap:24px}.footer-bottom{padding:24px 0;font-size:9px;flex-wrap:wrap;gap:10px}.footer-bottom>span{font-size:9px}.detail-dialog[open]{display:block}.detail-image{height:210px;min-height:0}.detail-image img{object-position:center 53%}.detail-copy{padding:30px 24px}.detail-copy h2{font-size:29px}.detail-copy>p{font-size:15px}.detail-copy dl{margin:20px 0}.contact-dialog{padding:36px 25px;width:calc(100% - 28px)}.contact-dialog h2{font-size:38px}.dialog-close{width:36px;height:36px;right:12px;top:12px}dialog{max-height:calc(100dvh - 28px);width:calc(100% - 28px)}.motion-ready .reveal{transform:translateY(25px)}}
@media(min-width:761px) and (max-width:900px){.class-content{padding:20px}.class-content h3{font-size:23px}.class-content p{font-size:13px}.detail-button{gap:8px}.detail-button>span:first-child{font-size:9px}.round-arrow{width:34px;height:34px}.class-number{font-size:10px}}
@media(max-width:370px){.hero-caption{font-size:10px}.about-description{margin-left:8%}.section-heading>h2{font-size:30px}.class-card,.class-card.is-active{flex-basis:93%}.class-content{padding:22px}.footer-intro h2{font-size:34px}}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){
  .mobile-motion .hero-photo{transform:translate3d(0,var(--hero-shift,0px),0)}
  .mobile-motion .about-images img,.mobile-motion .gallery-photo img{transform:translate3d(0,var(--mobile-drift,0px),0) scale(1.16);transition:transform .12s linear}
  .motion-ready .reveal{transform:translateY(48px);transition:opacity .75s var(--ease),transform .9s var(--ease)}
  .motion-ready .section-heading.reveal>*{opacity:0;transform:translateY(20px);transition:opacity .65s var(--ease),transform .8s var(--ease)}
  .motion-ready .section-heading.reveal.is-visible>*{opacity:1;transform:none}
  .motion-ready .section-heading.reveal>*:nth-child(2){transition-delay:.12s}
  .motion-ready .section-heading.reveal>*:nth-child(3){transition-delay:.24s}
  .motion-ready .principle .motion-art{opacity:0;transform:translateY(28px) scale(.88);transition:opacity .85s var(--ease),transform 1s var(--ease)}
  .motion-ready .principle .motion-art.in-view{opacity:1;transform:none}
  .motion-ready .gallery-photo figcaption{opacity:0;transform:translateY(22px);transition:opacity .65s var(--ease),transform .8s var(--ease)}
  .motion-ready .gallery-photo.is-visible figcaption{opacity:1;transform:none}
  .mobile-motion .class-card>img{transform:scale(1);transition:transform .7s var(--ease)}
  .mobile-motion .class-card.is-active>img{transform:scale(1.065)}
  .class-navigation{position:relative;padding-bottom:20px}
  .class-navigation:before,.class-navigation:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:#dedede}
  .class-navigation:after{background:#111;transform:scaleX(var(--class-progress,.333));transform-origin:left;transition:transform .55s var(--ease)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal,.motion-ready .image-reveal{opacity:1!important;transform:none!important}.hero-photo:after{transform:translateY(-102%)!important}.hero-photo img{transform:none!important}.motion-toggle{display:none}}
