:root{--bg:#f5f5f3;--fg:#111110;--mute:#6b6a65;--soft:#4d4c48;--line:#e2e1dc;--tile:#ebebe8;--tint:#d4faee;--tint-line:#b9eadb;--pad-x:clamp(20px, 3.4vw, 48px);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.77, 0, .18, 1)}html[data-theme=dark]{--bg:#0f0f0e;--fg:#f2f1ec;--mute:#9a9994;--soft:#b4b3ad;--line:#262624;--tile:#1a1a18;--tint:#123a33;--tint-line:#1d5448}html{scroll-behavior:smooth}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;margin:0;font-family:Satoshi,sans-serif}a{color:var(--fg);text-decoration:none}img{max-width:100%}::selection{background:var(--fg);color:var(--bg)}.mono{font-family:Satoshi,sans-serif}.display{letter-spacing:-.035em;font-weight:500;line-height:1.02}.skip-link{z-index:100;background:var(--fg);padding:12px 20px;font-size:14px;transition:top .2s;position:absolute;top:-100px;left:16px;color:var(--bg)!important}.skip-link:focus{top:16px}@keyframes riseIn{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}[data-reveal]{opacity:0;transition:opacity .7s ease-out, transform .8s var(--ease-out);transform:translateY(14px)}[data-reveal].in{opacity:1;transform:translateY(0)}[data-tile]{opacity:0;transition:opacity .7s ease-out}[data-tile]>div{transition:transform 1s var(--ease-out);transform:scale(1.06)}[data-tilerow].in [data-tile]{opacity:1}[data-tilerow].in [data-tile]>div{transform:scale(1)}[data-grid]>:nth-child(4n+2) [data-tile]{transition-delay:60ms}[data-grid]>:nth-child(4n+3) [data-tile]{transition-delay:.12s}[data-grid]>:nth-child(4n+4) [data-tile]{transition-delay:.18s}[data-tilerow].in [data-tile]:hover>div{transition-duration:.9s;transform:scale(1.04)}::view-transition-old(root){animation-duration:.5s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-new(root){animation-duration:.5s;animation-timing-function:cubic-bezier(.4,0,.2,1)}html.theme-fade,html.theme-fade *,html.theme-fade :before,html.theme-fade :after{transition:background-color .5s,color .5s,border-color .5s,fill .5s,stroke .5s,box-shadow .5s!important}.nav-link{color:var(--mute);transition:color .3s}.nav-link:hover{color:var(--fg)}.nav-link[aria-current=page]{color:var(--fg);text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:1.5px}.theme-toggle{transition:transform .7s cubic-bezier(.68,-.6,.32,1.6)}.theme-toggle:hover{transform:rotate(180deg)}.nav-burger-wrap{display:none;position:relative}.nav-burger{width:40px;height:40px;color:var(--fg);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.nav-burger .bar,.nav-burger .bar:before,.nav-burger .bar:after{width:22px;height:2px;transition:transform .3s var(--ease-out), background .2s;background:currentColor;border-radius:1px;display:block}.nav-burger .bar{position:relative}.nav-burger .bar:before,.nav-burger .bar:after{content:"";position:absolute;left:0}.nav-burger .bar:before{top:-7px}.nav-burger .bar:after{top:7px}.nav-burger .bar.open{background:0 0}.nav-burger .bar.open:before{transform:translateY(7px)rotate(45deg)}.nav-burger .bar.open:after{transform:translateY(-7px)rotate(-45deg)}.mobile-menu{padding:92px var(--pad-x) 32px;background:var(--bg);border-bottom:1px solid var(--line);z-index:-1;animation:fade .3s var(--ease-out) both;flex-direction:column;display:flex;position:fixed;top:0;left:0;right:0}.mobile-menu a{letter-spacing:-.02em;color:var(--mute);padding:14px 0;font-size:28px;font-weight:300}.mobile-menu a[aria-current=page],.mobile-menu a:hover{color:var(--fg)}.photo-stack{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:block;position:relative}.photo-card{background:var(--tile);transform-origin:50% 70%;will-change:transform, opacity;backface-visibility:hidden;transition-property:transform,opacity;transition-timing-function:cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0;overflow:hidden;box-shadow:0 10px 30px #00000024}.about-write{grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1.6fr);align-items:start;gap:clamp(24px,4vw,72px);display:grid}@media (max-width:800px){.about-write{grid-template-columns:minmax(0,1fr)}.about-write>*{grid-column:auto!important}}.footer-cta{background:linear-gradient(var(--fg), var(--fg)) no-repeat 0 100% / 0 2px;transition:background-size .8s var(--ease-io)}.footer-cta:hover{background-size:100% 2px}.to-top{transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.to-top:hover{transform:translateY(-10px)}.tile{transition:transform .5s var(--ease-out), box-shadow .5s, outline-color .5s;outline:1px solid #0000;position:relative}.tile:hover{z-index:5;outline-color:var(--fg);transform:scale(1.04)rotate(-.6deg);box-shadow:0 24px 80px #00000040}.tile img{transition:transform .6s var(--ease-out), object-fit .6s}.tile:hover img{object-fit:contain;background:var(--tile)}.hover-mute{transition:color .4s var(--ease-out)}.hover-mute:hover{color:var(--mute)!important}.logo-img{display:block}html[data-theme=dark] .logo-img{filter:invert()}.split{grid-template-columns:minmax(0,46fr) minmax(0,54fr);align-items:start;gap:clamp(20px,4.2vw,64px);display:grid}.split>.split-text{align-self:stretch}.sticky-text{position:sticky}.case-list{grid-template-columns:minmax(0,1fr) minmax(0,40%);align-items:start;gap:clamp(24px,4vw,64px);display:grid}.case-preview{aspect-ratio:4/3;background:var(--tile);position:sticky;top:120px;overflow:hidden}.lab-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,2vw,28px);display:grid}.range-grid{grid-template-columns:minmax(0,3fr) minmax(0,5fr);align-items:start;gap:clamp(24px,4vw,64px);display:grid}.range-item{width:100%;font:inherit;letter-spacing:-.015em;text-align:left;cursor:pointer;background:0 0;border:0;padding:clamp(14px,1.7vw,28px) 0 clamp(14px,1.7vw,28px) clamp(40px,3.6vw,72px);font-size:clamp(20px,2vw,34px);font-weight:400;transition:color .3s;display:block;position:relative}.range-item:hover{color:var(--fg)!important}.range-mobile-nav{display:none}.range-preview{aspect-ratio:1;max-height:calc(100vh - 140px);position:sticky;top:110px;overflow:hidden}.peek{aspect-ratio:4/3;pointer-events:none;z-index:60;opacity:0;width:280px;transition:opacity .35s ease, transform .6s var(--ease-out);position:fixed;top:0;left:0;overflow:hidden;transform:translate(-50%,-50%)scale(.6)rotate(-6deg)}.peek.on{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{transform:none}[data-tile]{opacity:1}.photo-card{transition:none}[data-tile]>div{transform:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.peek{display:none}}@media (max-width:800px){.lab-row{grid-template-columns:minmax(0,1fr);gap:32px}.nav-links{display:none!important}.nav-burger-wrap{display:block}.case-list{grid-template-columns:minmax(0,1fr)}.case-preview{display:none}.range-grid{grid-template-columns:minmax(0,1fr)}.range-list{display:none}.range-mobile-nav{letter-spacing:-.015em;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;font-size:clamp(18px,5vw,24px);font-weight:400;display:grid}.range-arrow{width:44px;height:44px;font:inherit;color:var(--fg);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;font-size:26px;line-height:1}.range-preview{aspect-ratio:4/5;width:100%;max-height:none;position:relative;top:auto}.grid-2,.grid-3{grid-template-columns:1fr!important}.grid-4{grid-template-columns:repeat(2,1fr)!important}.about-grid{grid-template-columns:1fr!important}.about-grid>:first-child{position:static!important}.brief-grid{grid-template-columns:1fr!important}.case-meta-grid{grid-template-columns:repeat(2,1fr)!important}.footer-row{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}.peek{display:none}.split{grid-template-columns:minmax(0,1fr)}.split>.split-text{order:-1}.sticky-text{position:static}.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
