:root{--ink:#171715;--ink-soft:#292824;--cream:#eeeae2;--cream-2:#e7e2d8;--warm:#d9d1c1;--text-light:#f0ede6;--muted-light:#aaa59b;--text-mid:#5f5a52;--line-dark:rgba(28,27,24,.20);--line-light:rgba(244,239,229,.2);--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;--gutter:clamp(22px,5.1vw,98px);--header-h:92px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--ink);font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.menu-open{overflow:hidden}::selection{background:#bcae97;color:#1c1b19}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid #a9906e;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}.section-dark{background:var(--ink);color:var(--text-light)}.section-light{background:var(--cream);color:var(--ink)}.section-warm{background:var(--warm)}.eyebrow,.section-meta,.hero-overline,.frame-caption,.frame-caption,.small-signature,.studio-bottom,.image-break-overlay,.philosophy-end,.approach-art-bottom,.statement-bottom,.contact-email>span:first-child,.footer,.hero-index,.hero-side-note,.scroll-cue{font-size:10px;line-height:1.45;font-weight:550;letter-spacing:.14em;text-transform:uppercase}.eyebrow{color:#a6a39a}.eyebrow.dark{color:#69645b}.section-meta{display:flex;justify-content:space-between;align-items:center;padding:34px var(--gutter) 0;color:inherit;opacity:.62}.section-meta span:last-child{text-align:right}.reveal{opacity:1;transform:none;transition:opacity .85s cubic-bezier(.2,.75,.2,1),transform .85s cubic-bezier(.2,.75,.2,1)}.js .reveal{opacity:0;transform:translateY(28px)}.js .reveal.is-visible{opacity:1;transform:translateY(0)}
/* HEADER */
.header{position:fixed;left:0;right:0;top:0;height:var(--header-h);padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:clamp(18px,2.5vw,34px);z-index:60;color:#f7f2e8;transition:background .4s,border-color .4s,height .4s;border-bottom:1px solid transparent}.header.scrolled{height:74px;background:rgba(23,23,21,.97);border-bottom:1px solid rgba(255,255,255,.11);backdrop-filter:blur(16px)}.wordmark,.footer-logo{font-size:22px;font-weight:750;letter-spacing:-.07em;line-height:.82;display:inline-grid;justify-items:center;text-align:center;width:max-content;flex:none}.wordmark span,.footer-logo span{display:block;font-size:7.5px;letter-spacing:.305em;font-weight:600;margin-top:6px;line-height:1}.desktop-nav{display:flex;gap:clamp(27px,3.2vw,60px);align-items:center;height:42px;margin-left:auto;margin-right:auto}.desktop-nav a{display:inline-flex;align-items:center;gap:6px;min-height:42px;font-size:10px;line-height:1;letter-spacing:.115em;text-transform:uppercase;font-weight:550;color:#d8d4cb;transition:color .3s;position:relative;padding:0}.desktop-nav a:hover,.desktop-nav a.is-active{color:white}.desktop-nav a:after{content:'';height:1px;width:0;position:absolute;bottom:8px;left:0;background:white;transition:width .3s}.desktop-nav a:hover:after,.desktop-nav a.is-active:after{width:100%}.desktop-nav a span{display:inline-flex;align-items:center;font-size:14px;margin-left:0}.menu-button{display:none;width:46px;height:46px;border:0;background:transparent;color:white;position:relative;cursor:pointer}.menu-button span{height:1px;position:absolute;left:6px;right:6px;background:currentColor;transition:transform .3s,top .3s}.menu-button span:first-child{top:18px}.menu-button span:last-child{top:28px}.menu-button[aria-expanded=true] span:first-child{top:23px;transform:rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{top:23px;transform:rotate(-45deg)}.mobile-menu{display:none}.skip-link{position:fixed;top:-100px;left:20px;z-index:99;padding:12px;background:var(--cream);color:var(--ink)}.skip-link:focus{top:18px}.site-loader{pointer-events:none;position:fixed;inset:0;background:#171715;color:#eee9e1;z-index:100;display:grid;place-items:center;animation:loader-hide .8s 0.2s forwards}.site-loader span{font-weight:700;font-size:16px;letter-spacing:.5em;animation:loader-fade .65s forwards}@keyframes loader-hide{to{opacity:0;visibility:hidden}}@keyframes loader-fade{to{opacity:0;transform:translateY(-10px)}}
/* HERO */
.hero{min-height:850px;height:min(940px,100svh);position:relative;padding:calc(var(--header-h) + 50px) var(--gutter) 48px;display:flex;flex-direction:column;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 15% 45%,rgba(78,76,68,.2),transparent 58%);pointer-events:none}.hero-overline{display:flex;justify-content:flex-start;gap:10px;color:#b2aca2;position:relative;z-index:4;max-width:calc(100% - 3vw)}.hero-visual{position:absolute;right:7%;top:14%;width:min(38vw,520px);height:min(68vh,700px);z-index:1;overflow:hidden;background:#817d74;box-shadow:0 34px 90px rgba(0,0,0,.22);isolation:isolate}.hero-visual:before{content:'';position:absolute;inset:0;z-index:3;background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 24%,transparent 62%,rgba(0,0,0,.42) 100%)}.hero-visual:after{content:'';position:absolute;inset:0;z-index:3;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}.hero-visual-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(.88) contrast(1.01) brightness(.98)}
.hero-scene{position:absolute;inset:0;background:linear-gradient(180deg,#d6d1c6 0%,#d1cbc0 27%,#b5afa3 55%,#706e66 82%,#292926 100%)}.hero-glow{position:absolute;top:10%;right:14%;width:34%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,248,228,.95) 0%,rgba(255,246,221,.68) 34%,rgba(255,241,209,.24) 58%,rgba(255,240,211,0) 74%);filter:blur(4px);animation:hero-glow 14s ease-in-out infinite alternate}.hero-haze{position:absolute;border-radius:50%;filter:blur(34px);opacity:.48;mix-blend-mode:screen}.hero-haze-one{left:-10%;top:-2%;width:88%;height:52%;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.48),rgba(255,255,255,0) 72%);animation:hero-haze-one 19s ease-in-out infinite alternate}.hero-haze-two{right:-14%;top:18%;width:78%;height:38%;background:radial-gradient(circle at 50% 50%,rgba(250,240,218,.36),rgba(250,240,218,0) 72%);animation:hero-haze-two 16s ease-in-out infinite alternate}.hero-haze-three{left:-5%;bottom:18%;width:120%;height:28%;background:linear-gradient(90deg,rgba(233,228,218,.05),rgba(233,228,218,.38),rgba(233,228,218,.12));border-radius:999px;filter:blur(18px);animation:hero-haze-three 20s ease-in-out infinite alternate}.hero-ridge{position:absolute;left:-12%;right:-12%;border-radius:48% 52% 0 0 / 100% 100% 0 0;transform-origin:center bottom}.hero-ridge-one{bottom:21%;height:20%;background:linear-gradient(180deg,rgba(173,170,158,.18),rgba(123,120,110,.52));animation:hero-ridge-one 20s ease-in-out infinite alternate}.hero-ridge-two{bottom:10%;height:22%;background:linear-gradient(180deg,rgba(88,92,88,.22),rgba(58,60,57,.7));clip-path:path('M 0 90 C 90 40, 180 80, 280 42 S 480 76, 640 30 L 640 180 L 0 180 Z');animation:hero-ridge-two 18s ease-in-out infinite alternate}.hero-ridge-three{bottom:-2%;height:26%;background:linear-gradient(180deg,rgba(20,21,21,.15),rgba(16,17,17,.92));clip-path:path('M 0 85 C 150 120, 270 20, 430 56 S 620 118, 760 50 L 760 190 L 0 190 Z');animation:hero-ridge-three 22s ease-in-out infinite alternate}.hero-grain{position:absolute;inset:-20%;background-image:radial-gradient(rgba(255,255,255,.16) .45px, transparent .65px);background-size:4px 4px;mix-blend-mode:soft-light;opacity:.16;animation:hero-grain 8s steps(6) infinite}.frame-caption{position:absolute;z-index:4;left:24px;right:24px;bottom:20px;color:#ddd6c9;display:flex;justify-content:space-between;gap:16px;white-space:nowrap;font-size:9px}.hero-type{display:flex;align-items:center;flex:1;z-index:2;position:relative;pointer-events:none}.hero-title-wrap{position:relative;transform:translateY(-2%)}.hero h1{font-family:var(--serif);font-size:clamp(95px,12.6vw,236px);font-weight:400;letter-spacing:-.092em;line-height:.805;color:#f0ece3;white-space:nowrap}.hero-line{display:block}.hero-line-one{padding-right:.16em}.hero-line-two{font-size:.7em;letter-spacing:-.078em;line-height:1.07;margin-left:16%;margin-top:2px}.hero-line-two em{font-style:italic;font-weight:400}.hero-line-three{margin-left:2%;line-height:.91}.hero-period{color:#bca990}.hero-asterisk{position:absolute;right:-4%;top:13%;font-size:27px;color:#bdaa8a;animation:turn 25s linear infinite}@keyframes turn{to{transform:rotate(360deg)}}@keyframes hero-glow{0%{transform:translate3d(0,0,0) scale(.98);opacity:.86}100%{transform:translate3d(1.8%,2%,0) scale(1.08);opacity:1}}@keyframes hero-haze-one{0%{transform:translate3d(-2%,0,0) scale(1)}100%{transform:translate3d(4%,3%,0) scale(1.08)}}@keyframes hero-haze-two{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-5%,4%,0) scale(1.05)}}@keyframes hero-haze-three{0%{transform:translate3d(-3%,0,0)}100%{transform:translate3d(4%,2%,0)}}@keyframes hero-ridge-one{0%{transform:translate3d(-2%,0,0) scaleX(1.02)}100%{transform:translate3d(2%,1%,0) scaleX(1.08)}}@keyframes hero-ridge-two{0%{transform:translate3d(0,0,0) scaleX(1)}100%{transform:translate3d(-2%,2%,0) scaleX(1.04)}}@keyframes hero-ridge-three{0%{transform:translate3d(-1%,0,0) scaleX(1)}100%{transform:translate3d(2%,0,0) scaleX(1.03)}}@keyframes hero-grain{0%{transform:translate3d(0,0,0)}20%{transform:translate3d(-2%,2%,0)}40%{transform:translate3d(3%,-1%,0)}60%{transform:translate3d(-1%,3%,0)}80%{transform:translate3d(2%,-2%,0)}100%{transform:translate3d(0,0,0)}}.hero-bottom{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:flex-end;color:#e8e3d9}.hero-bottom p{font-family:var(--serif);font-size:19px;line-height:1.25;letter-spacing:-.025em}.scroll-cue{display:flex;align-items:center;gap:22px;color:#bcb7ad;transition:color .25s}.scroll-cue:hover{color:white}.scroll-arrow{display:inline-grid;place-items:center;border:1px solid #767168;border-radius:50%;width:48px;height:48px;font-size:18px;font-weight:300;transition:background .25s,color .25s,transform .25s}.scroll-cue:hover .scroll-arrow{background:var(--cream);color:var(--ink);transform:translateY(3px)}.hero-index{color:#aea89d}.hero-side-note{position:absolute;right:18px;top:50%;writing-mode:vertical-rl;color:#706c65;transform:translateY(-50%)}
/* STUDIO */
.studio{min-height:800px;position:relative;padding-bottom:28px}.studio-grid{display:grid;grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:3vw;padding:clamp(120px,13vw,200px) calc(var(--gutter) + 3vw) 150px var(--gutter)}.studio-heading h2{font-family:var(--serif);font-weight:400;font-size:clamp(63px,7.2vw,132px);line-height:.99;letter-spacing:-.07em;margin-top:25px}.studio-heading h2 em{font-weight:400}.studio-content{position:relative;padding:56px 5vw 0 0;max-width:580px}.oversized-quote{position:absolute;left:-.2em;top:-115px;font-family:var(--serif);font-size:190px;line-height:1;color:#d9d3c7;z-index:0}.studio-content p{position:relative;z-index:1;font-size:15px;line-height:1.85;color:#69645d;margin-bottom:24px;max-width:470px}.studio-content p.lead{font-family:var(--serif);font-size:clamp(28px,2.7vw,47px);line-height:1.2;letter-spacing:-.035em;color:var(--ink);margin-bottom:38px}.small-signature{display:flex;align-items:center;gap:14px;margin-top:40px;color:#7d766c}.small-signature .line{height:1px;width:35px;background:#777066}.studio-bottom{margin:0 var(--gutter);border-top:1px solid var(--line-dark);display:flex;justify-content:space-between;align-items:center;padding-top:25px;color:#625f57}.studio-bottom span:last-child{font-size:34px;font-weight:300}
/* IMAGE BREAK */
.image-break{height:clamp(330px,47vw,720px);position:relative;overflow:hidden;background:#746e62}.image-break img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(.93);transform:scale(1.01)}.image-break-overlay{position:absolute;inset:0;padding:32px var(--gutter);display:flex;align-items:end;justify-content:space-between;gap:30px;color:#eee9de;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.22))}
/* PHILOSOPHY */
.philosophy{padding-bottom:105px}.philosophy-header{padding:145px var(--gutter) 110px;position:relative}.philosophy-header h2{font-family:var(--serif);font-weight:400;font-size:clamp(62px,8.5vw,158px);line-height:1.03;letter-spacing:-.073em;margin-top:27px}.philosophy-header h2 em{font-weight:400;color:#b5a590}.philosophy-header>p:last-child{font-family:var(--serif);font-size:clamp(21px,2.25vw,37px);max-width:540px;line-height:1.35;color:#a6a198;margin:48px 0 0 auto;letter-spacing:-.035em}.beliefs{border-top:1px solid var(--line-light);margin:0 var(--gutter)}.belief{display:grid;grid-template-columns:13% 1fr 70px;align-items:start;padding:34px 0 42px;border-bottom:1px solid var(--line-light);min-height:180px;gap:10px}.belief-number{font-size:12px;letter-spacing:.08em;color:#908c82;padding-top:13px}.belief-copy{display:grid;grid-template-columns:53% 47%;gap:3vw;align-items:start}.belief-copy h3{font-family:var(--serif);font-size:clamp(33px,3.7vw,65px);font-weight:400;line-height:1.1;letter-spacing:-.05em}.belief-copy p{color:#a8a49b;font-size:14px;line-height:1.8;max-width:370px;padding-top:10px}.belief-mark{font-size:25px;font-weight:200;color:#8e8a81;text-align:right;transition:transform .4s,color .4s}.belief:hover .belief-mark{transform:translate(4px,-4px);color:#e5d8c4}.philosophy-end{display:flex;justify-content:space-between;padding:90px var(--gutter) 0;color:#807e76}
/* APPROACH */
.approach{padding-bottom:150px}.approach-header{padding:125px var(--gutter) 85px}.approach-header h2{font-family:var(--serif);font-size:clamp(60px,7.9vw,143px);line-height:1.08;letter-spacing:-.07em;font-weight:400;margin:22px 0 37px}.approach-header h2 em{font-weight:400;color:#8e826f}.approach-header>p:last-child{font-size:16px;line-height:1.7;color:#615d55;max-width:530px;margin-left:auto}.approach-layout{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);padding:0 var(--gutter);gap:6vw}.approach-art{height:clamp(430px,43vw,720px);background:#c8bfae;position:relative;overflow:hidden;display:grid;place-items:center}.approach-art:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 40% 40%,rgba(255,255,255,.12),transparent 55%),linear-gradient(145deg,rgba(18,17,16,.03),rgba(43,39,31,.13))}.approach-circle{width:min(60%,390px);aspect-ratio:1;position:relative;display:grid;place-items:center;transition:transform 1s cubic-bezier(.2,.75,.2,1)}.approach-circle>span{font-family:var(--serif);font-size:clamp(150px,18vw,295px);font-weight:400;color:#423f37;letter-spacing:-.1em;line-height:1}.orbit{position:absolute;inset:0;border:1px solid rgba(56,53,46,.42);border-radius:50%;transform:rotate(30deg) scaleX(.63);transition:transform 1s cubic-bezier(.2,.75,.2,1)}.orbit-two{transform:rotate(-45deg) scaleX(.62)}.approach-art[data-step="2"] .approach-circle{transform:rotate(45deg)}.approach-art[data-step="3"] .approach-circle{transform:rotate(-45deg)}.approach-art[data-step="4"] .approach-circle{transform:rotate(90deg)}.approach-art[data-step="2"] .orbit-one{transform:rotate(75deg) scaleX(.6)}.approach-art[data-step="3"] .orbit-one{transform:rotate(-15deg) scaleX(.6)}.approach-art[data-step="4"] .orbit-two{transform:rotate(30deg) scaleX(.6)}.approach-art-bottom{position:absolute;left:26px;right:26px;bottom:25px;display:flex;justify-content:space-between;color:#4d4940}.process-list{border-top:1px solid var(--line-dark);align-self:center}.process-item{border-bottom:1px solid var(--line-dark);transition:color .3s}.process-trigger{width:100%;display:grid;grid-template-columns:58px 1fr 35px;gap:12px;align-items:center;padding:29px 0;border:0;background:transparent;text-align:left;color:var(--ink);cursor:pointer}.process-num{font-size:11px;color:#837c6f;align-self:start;padding-top:9px}.process-name{font-family:var(--serif);font-size:clamp(40px,4.6vw,83px);letter-spacing:-.06em;line-height:1}.process-icon{height:24px;width:24px;position:relative;display:block;justify-self:end}.process-icon:before,.process-icon:after{position:absolute;content:'';background:#413d35;top:11px;left:2px;width:20px;height:1px;transition:transform .35s}.process-icon:after{transform:rotate(90deg)}.process-item.is-open .process-icon:after{transform:rotate(0)}.process-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.2,.7,.2,1)}.process-item.is-open .process-panel{grid-template-rows:1fr}.process-panel>p{overflow:hidden;max-width:500px;margin-left:70px;font-size:15px;line-height:1.8;color:#736c61}.process-item.is-open .process-panel>p{padding-bottom:35px}
/* STATEMENT */
.statement{padding:130px var(--gutter) 24px;min-height:600px;display:flex;flex-direction:column;justify-content:space-between}.statement-copy p{font-family:var(--serif);font-size:clamp(49px,6.6vw,122px);line-height:1.12;letter-spacing:-.068em;font-weight:400;margin-top:30px}.statement-copy p em{color:#7c7263;font-weight:400}.statement-bottom{display:flex;justify-content:space-between;border-top:1px solid #a8a093;padding-top:22px;align-items:center;color:#6c6459}.statement-bottom span:last-child{font-size:35px}
/* CONTACT */
.contact{min-height:850px;display:flex;flex-direction:column}.contact-main{padding:130px var(--gutter) 135px;flex:1}.contact-main h2{font-family:var(--serif);font-size:clamp(74px,10vw,182px);font-weight:400;line-height:1.05;letter-spacing:-.077em;margin-top:20px}.contact-main h2 em{font-weight:400;color:#b7a88f}.contact-main>p{font-size:16px;line-height:1.7;color:#aaa69e;max-width:420px;margin:40px 0 70px auto}.contact-email{display:grid;grid-template-columns:22% 1fr 45px;align-items:end;gap:10px;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light);padding:35px 0 38px;color:#f1ece1}.contact-email>span:first-child{color:#aaa59a;align-self:center}.email-display{font-family:var(--serif);font-size:clamp(30px,4.2vw,77px);line-height:1.05;letter-spacing:-.055em;overflow-wrap:anywhere}.email-arrow{font-size:31px;color:#baab96;text-align:right}.footer{display:grid;grid-template-columns:25% 1fr auto;grid-template-rows:auto auto;column-gap:30px;row-gap:50px;align-items:start;border-top:1px solid var(--line-light);margin:0 var(--gutter);padding:36px 0 32px;color:#8f8a81}.footer-logo{font-size:23px;color:#eee9e0;letter-spacing:-.07em;width:max-content}.footer-logo span{font-size:7px;letter-spacing:.305em}.footer-middle{display:flex;flex-direction:column;gap:8px;line-height:1.3}.back-to-top{color:#dfd7ca;display:flex;gap:25px;align-items:center;transition:color .2s}.back-to-top:hover{color:#fff}.back-to-top span{font-size:19px}.footer-copyright{grid-column:2/-1;text-align:right;font-size:9px;color:#66645d}
@media(max-width:1250px){.hero h1{font-size:13.1vw}.hero-visual{right:5.6%;width:38%}.studio-grid{grid-template-columns:53% 47%;gap:1vw}.studio-content{padding-right:1vw}.approach-layout{gap:4vw}.belief-copy{grid-template-columns:minmax(0,51fr) minmax(0,49fr)}}
@media(max-width:800px){:root{--header-h:72px;--gutter:25px}.desktop-nav{display:none}.menu-button{display:block}.header.scrolled{height:68px}.wordmark{font-size:20px}.mobile-menu{display:block;position:fixed;inset:0;background:#20201d;z-index:55;color:var(--cream);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .4s,visibility .4s,transform .4s}.mobile-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}.mobile-menu-inner{padding:calc(var(--header-h) + 78px) var(--gutter) 50px;min-height:100%;display:flex;flex-direction:column}.mobile-menu nav{margin-top:45px;border-top:1px solid var(--line-light)}.mobile-menu nav a{font-family:var(--serif);font-size:clamp(54px,9vw,86px);letter-spacing:-.055em;display:flex;align-items:baseline;gap:19px;padding:13px 0;border-bottom:1px solid var(--line-light)}.mobile-menu nav a span{font:10px var(--sans);color:#aba59a;letter-spacing:.1em}.mobile-menu p{margin-top:auto;color:#a9a49a;font-size:12px;line-height:1.8}.hero{min-height:730px;height:100svh;padding-top:125px;padding-bottom:32px}.hero-overline{font-size:9px}.hero-visual{width:60%;height:59%;right:0;top:20%;opacity:.9}.hero-type{align-items:center}.hero-title-wrap{transform:translateY(4%)}.hero h1{font-size:clamp(95px,14vw,148px)}.hero-line-two{margin-left:10%;margin-top:8px}.hero-line-three{margin-top:8px}.hero-bottom p{font-size:18px}.hero-index{display:none}.hero-side-note{display:none}.scroll-cue span:first-child{display:none}.studio{min-height:unset}.studio-grid{grid-template-columns:1fr;padding:100px var(--gutter) 100px;gap:105px}.studio-heading h2{font-size:clamp(67px,11.2vw,107px)}.studio-content{padding:0;max-width:720px}.oversized-quote{top:-130px}.studio-content p.lead{font-size:36px;max-width:630px}.studio-content p{max-width:640px}.image-break{height:400px}.philosophy-header{padding:115px var(--gutter) 95px}.philosophy-header h2{font-size:clamp(70px,10vw,110px)}.philosophy-header>p:last-child{margin:40px 0 0;max-width:470px}.belief{grid-template-columns:10% 1fr;gap:8px}.belief-copy{display:block}.belief-copy h3{font-size:clamp(38px,5vw,58px)}.belief-copy p{padding-top:18px;max-width:520px}.approach{padding-bottom:100px}.approach-header{padding:105px var(--gutter) 60px}.approach-header h2{font-size:clamp(67px,9.5vw,108px)}.approach-header>p:last-child{margin-left:0}.approach-layout{grid-template-columns:1fr;gap:54px}.approach-art{height:340px}.approach-circle{width:260px}.approach-circle>span{font-size:200px}.process-name{font-size:55px}.statement{min-height:500px;padding-top:105px}.statement-copy p{font-size:clamp(57px,8.5vw,92px)}.contact{min-height:760px}.contact-main{padding:105px var(--gutter) 120px}.contact-main h2{font-size:clamp(73px,10.2vw,116px)}.contact-main>p{margin:35px 0 60px}.contact-email{grid-template-columns:1fr}.contact-email>span:first-child{grid-column:1/-1;margin-bottom:13px}.footer{grid-template-columns:1fr auto;gap:45px}.footer-middle{grid-column:1;grid-row:2}.footer-copyright{grid-column:2;grid-row:2;align-self:end;max-width:180px}.back-to-top{grid-column:2;grid-row:1}}
@media(max-width:540px){:root{--gutter:21px}.hero{min-height:650px;padding-top:118px;padding-bottom:28px}.hero-overline{font-size:8px;letter-spacing:.115em}.hero-visual{width:74%;height:56%;right:-10%;top:24%;opacity:.96}.frame-caption{left:14px;right:14px;bottom:14px;font-size:8px}.frame-caption span:last-child{display:none}.hero h1{font-size:clamp(80px,15.7vw,102px)}.hero-line-two{margin-left:2%}.hero-line-three{margin-left:-1%}.hero-bottom p{font-size:17px}.scroll-arrow{height:42px;width:42px}.studio-grid{padding-top:88px;gap:100px;padding-bottom:90px}.studio-heading h2{font-size:clamp(61px,13vw,88px)}.studio-content p.lead{font-size:32px}.studio-content p{font-size:14px}.studio-bottom{font-size:8px}.image-break{height:275px}.image-break-overlay{font-size:8px;padding-bottom:18px}.image-break-overlay span:last-child{display:none}.philosophy{padding-bottom:70px}.philosophy-header{padding-top:100px;padding-bottom:85px}.philosophy-header h2{font-size:clamp(58px,12.3vw,76px)}.philosophy-header>p:last-child{font-size:26px}.belief{grid-template-columns:34px 1fr;padding:28px 0;min-height:unset}.belief-copy h3{font-size:clamp(35px,9vw,51px)}.belief-copy p{font-size:13px;padding-top:13px}.philosophy-end{padding-top:65px;font-size:8px}.approach-header{padding-top:90px}.approach-header h2{font-size:clamp(56px,11.5vw,77px)}.approach-header>p:last-child{font-size:14px}.approach-art{height:310px}.approach-circle{width:240px}.approach-circle>span{font-size:175px}.process-trigger{grid-template-columns:37px 1fr 27px;padding:25px 0}.process-num{font-size:9px}.process-name{font-size:clamp(42px,11vw,57px)}.process-panel>p{margin-left:49px;font-size:14px}.statement{min-height:420px;padding-top:88px}.statement-copy p{font-size:clamp(47px,10vw,66px)}.statement-bottom{font-size:9px}.contact-main{padding-top:94px;padding-bottom:95px}.contact-main h2{font-size:clamp(64px,12.4vw,82px)}.contact-main>p{font-size:14px}.contact-email{padding:28px 0;grid-template-columns:1fr}.email-display{font-size:clamp(26px,7.5vw,42px);white-space:normal}.footer{grid-template-columns:1fr auto;row-gap:48px;font-size:8px;padding:27px 0 25px}.footer-middle{font-size:8px;max-width:240px}.footer-copyright{font-size:8px;max-width:140px}.section-meta{padding-top:28px;font-size:9px}.section-meta span:last-child{font-size:8px}}
@media(max-width:350px){.hero h1{font-size:14.8vw}.hero-bottom p{font-size:15px}.wordmark{font-size:18px}.section-meta{letter-spacing:.06em}.contact-main h2{font-size:17vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.site-loader{display:none}}

/* LANGUAGE SELECTOR: small, independent of the mobile navigation. */
.language-picker{position:relative;margin-left:clamp(12px,2.4vw,40px);flex:none;z-index:65}
.language-toggle{height:40px;min-width:76px;border:1px solid rgba(239,231,220,.31);border-radius:2px;background:transparent;color:#f2ece2;display:inline-grid;grid-template-columns:14px minmax(16px,auto) 12px;align-items:center;justify-content:center;column-gap:8px;cursor:pointer;font-size:10px;font-weight:600;letter-spacing:.035em;padding:0 10px;transition:background .25s,border-color .25s}
.language-toggle:hover,.language-picker.is-open .language-toggle{border-color:rgba(255,255,255,.8);background:rgba(255,255,255,.065)}
.language-icon{display:grid;place-items:center;font-size:15px;font-weight:300;line-height:1;color:#b8aa92}
.language-chevron{display:block;width:12px;height:12px;justify-self:center;color:#d7c9b2;transform-origin:50% 50%;transition:transform .2s ease}
.language-picker.is-open .language-chevron{transform:rotate(180deg)}
#lang-current{display:block;min-width:16px;text-align:center;line-height:1;font-size:10px;letter-spacing:.035em}
.language-options[hidden]{display:none!important}
.language-options{position:absolute;top:calc(100% + 12px);right:0;width:206px;max-height:min(420px,calc(100svh - 110px));overflow-y:auto;overscroll-behavior:contain;background:#292824;border:1px solid #625d52;box-shadow:0 24px 58px rgba(0,0,0,.32);padding:7px;display:grid;gap:1px}
.language-options button{min-height:41px;background:none;border:0;color:#e6e0d6;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 10px 10px 11px;font-size:12px;cursor:pointer;transition:background .2s}
.language-options button:hover,.language-options button:focus-visible{background:rgba(241,233,215,.1)}
.language-options button.is-selected{background:rgba(217,205,184,.13);color:#fff}
.language-options button.is-selected:before{content:'•';position:absolute;right:50px;color:#c0ab85;font-size:14px}
.language-options button small{color:#a89c8b;font-size:9px;letter-spacing:.05em}
@media(max-width:800px){.language-picker{margin-left:auto;margin-right:7px}.language-toggle{height:36px;min-width:72px;column-gap:7px;padding-inline:9px}.language-options{top:calc(100% + 14px)}.header{justify-content:flex-start}.menu-button{margin-left:4px}}
@media(max-width:390px){.language-toggle{height:34px;min-width:69px;padding:0 8px;column-gap:6px}.language-icon{font-size:13px}.language-options{right:-33px}}

/* CJK systems preserve editorial hierarchy without artificial italics/Latin spacing. */
html[lang="ko"]{--serif:'Noto Serif CJK KR','Nanum Myeongjo','AppleMyungjo','Batang',Georgia,serif;--sans:'Noto Sans CJK KR','Apple SD Gothic Neo','Malgun Gothic',sans-serif}
html[lang="ja"]{--serif:'Shippori Mincho','Yu Mincho','Hiragino Mincho ProN','Noto Serif CJK JP',serif;--sans:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic','Noto Sans CJK JP',sans-serif}
html[lang="zh-CN"]{--serif:'Noto Serif CJK SC','Songti SC','SimSun',serif;--sans:'Noto Sans CJK SC','PingFang SC','Microsoft YaHei',sans-serif}
html[lang="zh-TW"]{--serif:'Noto Serif CJK TC','Songti TC','PMingLiU',serif;--sans:'Noto Sans CJK TC','PingFang TC','Microsoft JhengHei',sans-serif}
html[lang="ko"] .hero h1,html[lang="ja"] .hero h1,html[lang^="zh"] .hero h1{font-size:clamp(74px,9.7vw,164px);letter-spacing:-.085em;line-height:1.13}
html[lang="ko"] .hero-line-two,html[lang="ja"] .hero-line-two,html[lang^="zh"] .hero-line-two{font-size:1em;margin-left:14%;margin-top:0;letter-spacing:-.085em;line-height:1.13}
html[lang="ko"] .hero-line-two em,html[lang="ja"] .hero-line-two em,html[lang^="zh"] .hero-line-two em{font-style:normal}
html[lang="ko"] .hero-line-three,html[lang="ja"] .hero-line-three,html[lang^="zh"] .hero-line-three{margin-left:3%;line-height:1.13}
html[lang="ko"] .hero-asterisk,html[lang="ja"] .hero-asterisk,html[lang^="zh"] .hero-asterisk{right:0;top:-6%}
html[lang="ko"] .studio-heading h2,html[lang="ja"] .studio-heading h2,html[lang^="zh"] .studio-heading h2{font-size:clamp(56px,6vw,102px);letter-spacing:-.075em;line-height:1.25}
html[lang="ko"] .philosophy-header h2,html[lang="ja"] .philosophy-header h2,html[lang^="zh"] .philosophy-header h2{font-size:clamp(52px,6.6vw,110px);letter-spacing:-.07em;line-height:1.24}
html[lang="ko"] .approach-header h2,html[lang="ja"] .approach-header h2,html[lang^="zh"] .approach-header h2{font-size:clamp(58px,6.6vw,111px);letter-spacing:-.07em;line-height:1.23}
html[lang="ko"] .contact-main h2,html[lang="ja"] .contact-main h2,html[lang^="zh"] .contact-main h2{font-size:clamp(62px,7.5vw,124px);letter-spacing:-.08em;line-height:1.28}
html[lang="ko"] .belief-copy h3,html[lang="ja"] .belief-copy h3,html[lang^="zh"] .belief-copy h3{font-size:clamp(29px,3.5vw,59px);letter-spacing:-.04em;line-height:1.35}
html[lang="ko"] .process-name,html[lang="ja"] .process-name,html[lang^="zh"] .process-name{letter-spacing:-.04em;font-size:clamp(37px,4.2vw,66px);line-height:1.23}
html[lang="ko"] .statement-copy p,html[lang="ja"] .statement-copy p,html[lang^="zh"] .statement-copy p{font-size:clamp(42px,5.6vw,94px);line-height:1.35;letter-spacing:-.065em}
html[lang="ko"] .studio-heading em,html[lang="ja"] .studio-heading em,html[lang^="zh"] .studio-heading em,html[lang="ko"] .philosophy-header em,html[lang="ja"] .philosophy-header em,html[lang^="zh"] .philosophy-header em,html[lang="ko"] .approach-header em,html[lang="ja"] .approach-header em,html[lang^="zh"] .approach-header em,html[lang="ko"] .contact-main em,html[lang="ja"] .contact-main em,html[lang^="zh"] .contact-main em,html[lang="ko"] .statement-copy em,html[lang="ja"] .statement-copy em,html[lang^="zh"] .statement-copy em{font-style:normal}
html[lang="fr"] .hero h1{font-size:clamp(79px,9.3vw,168px);letter-spacing:-.07em;line-height:.95}
html[lang="fr"] .hero-line-two{font-size:.84em;margin-left:11%}
html[lang="fr"] .hero-line-three{margin-left:4%}
html[lang="fr"] .hero-asterisk{top:-16%;right:-2%}
html[lang="fr"] .studio-heading h2{font-size:clamp(68px,7.8vw,125px)}
html[lang="fr"] .philosophy-header h2{font-size:clamp(63px,7vw,120px)}
html[lang="fr"] .approach-header h2{font-size:clamp(65px,7.3vw,127px)}
html[lang="fr"] .contact-main h2{font-size:clamp(69px,8vw,142px)}
@media(max-width:800px){
html[lang="ko"] .hero h1,html[lang="ja"] .hero h1,html[lang^="zh"] .hero h1{font-size:clamp(59px,11.7vw,106px)}
html[lang="fr"] .hero h1{font-size:clamp(58px,9.6vw,90px)}
html[lang="ko"] .studio-heading h2,html[lang="ja"] .studio-heading h2,html[lang^="zh"] .studio-heading h2{font-size:clamp(55px,9.3vw,84px)}
html[lang="ko"] .philosophy-header h2,html[lang="ja"] .philosophy-header h2,html[lang^="zh"] .philosophy-header h2{font-size:clamp(47px,8.5vw,80px)}
html[lang="ko"] .approach-header h2,html[lang="ja"] .approach-header h2,html[lang^="zh"] .approach-header h2{font-size:clamp(48px,8.2vw,80px)}
html[lang="ko"] .contact-main h2,html[lang="ja"] .contact-main h2,html[lang^="zh"] .contact-main h2{font-size:clamp(55px,9vw,90px)}
html[lang="ko"] .statement-copy p,html[lang="ja"] .statement-copy p,html[lang^="zh"] .statement-copy p{font-size:clamp(43px,7vw,78px)}
html[lang="fr"] .studio-heading h2{font-size:clamp(60px,8.2vw,90px)}
html[lang="fr"] .philosophy-header h2{font-size:clamp(52px,8.3vw,85px)}
html[lang="fr"] .approach-header h2{font-size:clamp(55px,8.2vw,85px)}
html[lang="fr"] .contact-main h2{font-size:clamp(61px,8.7vw,93px)}
}
@media(max-width:540px){
html[lang="ko"] .hero h1,html[lang="ja"] .hero h1,html[lang^="zh"] .hero h1{font-size:clamp(58px,13vw,76px)}
html[lang="fr"] .hero h1{font-size:clamp(43px,10vw,65px)}
html[lang="fr"] .hero-line-two{margin-left:5%}
html[lang="ko"] .studio-heading h2,html[lang="ja"] .studio-heading h2,html[lang^="zh"] .studio-heading h2{font-size:clamp(39px,9.7vw,64px)}
html[lang="ko"] .philosophy-header h2,html[lang="ja"] .philosophy-header h2,html[lang^="zh"] .philosophy-header h2{font-size:clamp(37px,8.6vw,57px)}
html[lang="ko"] .approach-header h2,html[lang="ja"] .approach-header h2,html[lang^="zh"] .approach-header h2{font-size:clamp(39px,9.1vw,62px)}
html[lang="ko"] .contact-main h2,html[lang="ja"] .contact-main h2,html[lang^="zh"] .contact-main h2{font-size:clamp(40px,9.5vw,65px)}
html[lang="ko"] .statement-copy p,html[lang="ja"] .statement-copy p,html[lang^="zh"] .statement-copy p{font-size:clamp(37px,8vw,53px)}
html[lang="ko"] .process-name,html[lang="ja"] .process-name,html[lang^="zh"] .process-name{font-size:clamp(32px,8vw,42px)}
html[lang="fr"] .studio-heading h2{font-size:clamp(55px,11vw,70px)}
html[lang="fr"] .philosophy-header h2{font-size:clamp(43px,9.5vw,57px)}
html[lang="fr"] .approach-header h2{font-size:clamp(48px,9.5vw,59px)}
html[lang="fr"] .contact-main h2{font-size:clamp(52px,10.2vw,67px)}
html[lang="fr"] .statement-copy p{font-size:clamp(44px,8vw,58px)}
}
/* Preserve icon/index styling without shrinking localized text spans. */
.desktop-nav a span[data-i18n]{font-size:inherit;margin-left:0}
.mobile-menu nav a span[data-i18n]{font:inherit;letter-spacing:inherit;color:inherit}
.back-to-top span[data-i18n]{font:inherit;letter-spacing:inherit}
@media(max-width:800px){
  html[lang="ko"] .mobile-menu nav a,html[lang="ja"] .mobile-menu nav a,html[lang^="zh"] .mobile-menu nav a{font-size:clamp(34px,7.5vw,66px)}
  html[lang="fr"] .mobile-menu nav a{font-size:clamp(35px,8vw,68px)}
}
@media(max-width:390px){
  html[lang="ja"] .mobile-menu nav a{font-size:clamp(31px,7vw,40px)}
  html[lang="fr"] .mobile-menu nav a{font-size:clamp(34px,8.2vw,44px)}
}

.footer-logo,.wordmark{transform:translateY(1px)}

/* Japanese art direction — editorial Mincho titles, quiet contemporary sans body.
   Do not apply Latin-style negative tracking to Japanese glyphs. */
html[lang="ja"] body { font-family:var(--sans);font-weight:400; }
html[lang="ja"] .hero h1,
html[lang="ja"] .studio-heading h2,
html[lang="ja"] .philosophy-header h2,
html[lang="ja"] .approach-header h2,
html[lang="ja"] .contact-main h2,
html[lang="ja"] .statement-copy p,
html[lang="ja"] .belief-copy h3,
html[lang="ja"] .process-name,
html[lang="ja"] .studio-content .lead,
html[lang="ja"] .hero-bottom p {
  font-family:var(--serif); font-weight:400; letter-spacing:-.018em;
  font-synthesis:none;
}
html[lang="ja"] .hero h1 {line-height:1.18;letter-spacing:-.022em;}
html[lang="ja"] .hero-line-two{letter-spacing:-.022em;margin-left:12%;line-height:1.18;}
html[lang="ja"] .hero-line-three{margin-left:2%;line-height:1.18;}
html[lang="ja"] .studio-heading h2,
html[lang="ja"] .philosophy-header h2,
html[lang="ja"] .approach-header h2,
html[lang="ja"] .contact-main h2{line-height:1.34;letter-spacing:-.021em;}
html[lang="ja"] .belief-copy h3,
html[lang="ja"] .process-name,
html[lang="ja"] .statement-copy p{line-height:1.38;letter-spacing:-.015em;}
html[lang="ja"] .studio-content p,
html[lang="ja"] .belief-copy p,
html[lang="ja"] .approach-header>p:last-child,
html[lang="ja"] .process-panel>p,
html[lang="ja"] .contact-main>p,
html[lang="ja"] .philosophy-header>p:last-child {letter-spacing:.005em;line-height:1.95;}
html[lang="ja"] .section-meta,
html[lang="ja"] .eyebrow,
html[lang="ja"] .hero-overline,
html[lang="ja"] .desktop-nav a,
html[lang="ja"] .small-signature,
html[lang="ja"] .footer,
html[lang="ja"] .image-break-overlay {letter-spacing:.045em;}
html[lang="ja"] .desktop-nav a,
html[lang="ja"] .language-toggle {font-weight:500;}
html[lang="ja"] .wordmark,
html[lang="ja"] .footer-logo{font-family:var(--sans);letter-spacing:-.07em;}
@media(max-width:540px){
  html[lang="ja"] .hero h1{font-size:clamp(56px,12.2vw,74px);}
  html[lang="ja"] .hero-line-two{margin-left:7%;}
  html[lang="ja"] .hero-line-three{margin-left:0;}
  html[lang="ja"] .studio-heading h2{font-size:clamp(37px,9.2vw,59px);}
  html[lang="ja"] .philosophy-header h2{font-size:clamp(35px,8.1vw,53px);}
  html[lang="ja"] .approach-header h2{font-size:clamp(36px,8.3vw,55px);}
  html[lang="ja"] .statement-copy p{font-size:clamp(34px,7.5vw,51px);}
}
/* Contrast safeguard where Japanese hero lettering crosses the photograph on phones. */
@media(max-width:540px){
  html[lang="ja"] .hero-visual:before{
    background:linear-gradient(90deg,rgba(13,13,12,.43) 0%,rgba(13,13,12,.16) 31%,transparent 64%),linear-gradient(180deg,transparent 55%,rgba(0,0,0,.30));
  }
  html[lang="ja"] .hero h1{text-shadow:0 2px 24px rgba(12,12,11,.35);}
}

@media(max-width:800px){.header .wordmark{align-items:center}.header .wordmark span{width:100%;text-align:center;letter-spacing:.285em;transform:translateX(.14em);transform-origin:center center}}
@media(max-width:350px){.header .wordmark span{transform:translateX(.12em);letter-spacing:.27em}}
