@font-face{font-family:Hanken Grotesk;font-weight:300;font-display:swap;src:url(../fonts/hanken-grotesk-latin-300-normal.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-weight:300;font-style:italic;font-display:swap;src:url(../fonts/hanken-grotesk-latin-300-italic.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-weight:400;font-display:swap;src:url(../fonts/hanken-grotesk-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-weight:500;font-display:swap;src:url(../fonts/hanken-grotesk-latin-500-normal.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-400-normal.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-500-normal.woff2)format("woff2")}:root{--c-paper-100:#ebeef0;--c-paper-200:#dfe3e6;--c-paper-300:#c9cfd3;--c-graphite-900:#1b1e21;--c-graphite-600:#4d545a;--c-graphite-500:#5d646a;--c-lichen-300:#b3bd84;--c-lichen-700:#56612c;--c-dusk-900:#0e141c;--c-dusk-800:#16202b;--c-mist-100:#e4e9ee;--c-mist-300:#aab5c0;--f-sans:"Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--t-mono:.75rem;--t-sm:.9375rem;--t-md:1.0625rem;--t-lg:1.25rem;--t-xl:clamp(1.5rem, 1.1rem + 1.2vw, 2.125rem);--t-2xl:clamp(2.25rem, 1.4rem + 3vw, 4rem);--t-3xl:clamp(3rem, 1.6rem + 5.2vw, 7rem);--fw-light:300;--fw-regular:400;--fw-medium:500;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--s-10:9rem;--gutter:clamp(1rem, .3rem + 3vw, 3.5rem);--max:1480px;--ease:cubic-bezier(.25, .1, .25, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--d-fast:.18s;--d-base:.36s;--d-slow:.9s;--surface:var(--c-paper-100);--surface-sunk:var(--c-paper-200);--line:var(--c-paper-300);--text-primary:var(--c-graphite-900);--text-secondary:var(--c-graphite-600);--text-faint:var(--c-graphite-500);--accent:var(--c-lichen-700);--focus-ring:var(--c-graphite-900);--nav-h:68px;--hair:1px;--radius:0;--btn-h:48px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:auto}body{background:var(--surface);color:var(--text-primary);font-family:var(--f-sans);font-weight:var(--fw-regular);font-size:var(--t-md);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}img,video,canvas{max-width:100%;display:block}img{height:auto}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}ul,ol{list-style:none}::selection{background:var(--c-lichen-300);color:var(--c-graphite-900)}:focus-visible{outline-offset:4px;outline:1.5px solid}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.display{font-weight:var(--fw-light);letter-spacing:-.035em;text-wrap:balance;line-height:.98}.display em{font-style:italic}.h-xl{font-size:var(--t-3xl)}.h-lg{font-size:var(--t-2xl);line-height:1.02}.lede{font-size:var(--t-lg);color:var(--text-secondary);max-width:38ch;line-height:1.5}.note{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.04em;text-transform:uppercase;line-height:1.5}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{left:var(--s-4);z-index:100;background:var(--text-primary);color:var(--surface);padding:var(--s-3) var(--s-4);position:absolute;top:-100px}.skip:focus{top:var(--s-4)}.btn{align-items:center;gap:var(--s-3);height:var(--btn-h);padding:0 var(--s-5);border-radius:var(--radius);font-size:var(--t-sm);font-weight:var(--fw-medium);white-space:nowrap;box-shadow:inset 0 0 0 var(--hair) currentColor;transition:background-color var(--d-base) var(--ease), color var(--d-base) var(--ease), transform var(--d-fast) var(--ease);display:inline-flex}.btn:active{transform:translateY(1px)}.btn--solid{background:var(--text-primary);color:var(--surface);box-shadow:none}.btn--solid:hover{background:var(--c-graphite-600)}.btn--line:hover{background:var(--text-primary);color:var(--surface)}.btn .arrow{transition:transform var(--d-base) var(--ease-out)}.btn:hover .arrow{transform:translate(4px)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}.nav{z-index:50;height:var(--nav-h);align-items:center;gap:var(--s-7);padding-inline:var(--gutter);color:var(--text-primary);background:color-mix(in srgb, var(--c-paper-100) 82%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:var(--hair) solid color-mix(in srgb, currentColor 14%, transparent);transition:transform var(--d-slow) var(--ease-out), color var(--d-base) var(--ease), background-color var(--d-base) var(--ease);display:flex;position:fixed;inset:0 0 auto}.nav.is-hidden{transform:translateY(-100%)}.nav.is-dark{color:var(--c-mist-100);background:color-mix(in srgb, var(--c-dusk-900) 55%, transparent)}.nav__mark{align-items:baseline;gap:var(--s-3);margin-right:auto;display:flex}.nav__word{font-size:1.5rem;font-weight:var(--fw-medium);letter-spacing:.18em}.nav__links{gap:var(--s-6);font-size:var(--t-sm);display:flex}.nav__links a{background:linear-gradient(currentColor, currentColor) left 100% / 0 var(--hair) no-repeat;transition:background-size var(--d-base) var(--ease-out);padding-block:4px}.nav__links a:hover{background-size:100% var(--hair)}.nav__cta{--btn-h:40px}.nav.is-dark .btn--line:hover{background:var(--c-mist-100);color:var(--c-dusk-900)}@media (width<=760px){.nav__links,.nav__sub{display:none}}.film{padding:calc(var(--nav-h) + var(--s-7)) var(--gutter) var(--s-9)}.film__canvas,.film__scrim,.block{display:none}.film__beat{margin-bottom:var(--s-8);max-width:40rem}.film__beat .display{font-size:clamp(2.2rem,3.3vw,4.25rem)}.film__beat .lede{margin-top:var(--s-5)}.film__ctas{gap:var(--s-3);margin-top:var(--s-6);flex-wrap:wrap;display:flex}.film__stills{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.film.is-live{height:820svh;padding:0}.film.is-live .film__stills{display:none}.film.is-live .film__stage{background:var(--c-paper-100);--ink:var(--c-graphite-900);--ink-2:var(--c-graphite-600);height:100svh;color:var(--ink);transition:color var(--d-slow) var(--ease);position:sticky;top:0;overflow:hidden}.film.is-live .film__stage[data-tone=dusk]{--ink:var(--c-mist-100);--ink-2:var(--c-mist-300)}.film.is-live .film__canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.film.is-live .film__scrim{visibility:hidden;background:linear-gradient(90deg,#0e141cc7 0%,#0e141c73 30%,#0000 55%);display:block;position:absolute;inset:0}.film.is-live .film__beat{z-index:2;left:var(--gutter);width:clamp(230px,20vw,380px);margin:0;position:absolute;top:50%;translate:0 -55%}.film.is-live .film__beat:not([data-beat=line]){visibility:hidden;opacity:0}.film.is-live .film__beat .lede{color:var(--ink-2);font-size:var(--t-sm);max-width:30ch}.film.is-live .film__stage[data-tone=dusk] .btn--line:hover{background:var(--c-mist-100);color:var(--c-dusk-900)}.film.is-live .block{z-index:3;left:var(--gutter);right:var(--gutter);bottom:var(--s-5);border:var(--hair) solid color-mix(in srgb, var(--ink) 40%, transparent);color:var(--ink);background:color-mix(in srgb, var(--c-paper-100) 55%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background-color var(--d-slow) var(--ease);grid-template-columns:minmax(200px,1fr) auto minmax(120px,auto);display:grid;position:absolute}.film.is-live [data-tone=dusk] .block{background:color-mix(in srgb, var(--c-dusk-900) 45%, transparent)}.block__cell{padding:var(--s-3) var(--s-4);flex-direction:column;gap:2px;display:flex}.block__cell span{color:var(--ink-2);font-size:.6875rem}.block__scale{border-left:var(--hair) solid color-mix(in srgb, var(--ink) 40%, transparent);text-align:right}.block__scale b{font-weight:var(--fw-medium);font-size:var(--t-sm)}.block__sheets{border-left:var(--hair) solid color-mix(in srgb, var(--ink) 40%, transparent);display:flex}.block__sheets li{align-items:center;gap:var(--s-2);padding:0 var(--s-5);color:var(--ink-2);transition:color var(--d-base) var(--ease);display:flex}.block__sheets li+li{border-left:var(--hair) solid color-mix(in srgb, var(--ink) 20%, transparent)}.block__sheets li.is-on{color:var(--ink);background:color-mix(in srgb, var(--ink) 8%, transparent)}.block__sheets li span{opacity:.8;font-size:.6875rem}.block__rule{height:2px;position:absolute;inset:-1px 0 auto}.block__rule i{transform-origin:0;background:currentColor;height:100%;display:block;transform:scaleX(0)}.block[data-loading]:not([data-loading=""]):after{content:attr(data-loading);right:0;bottom:calc(100% + var(--s-2));font-family:var(--f-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);font-size:.6875rem;position:absolute}@media (width<=899px){.film.is-live .film__beat{top:auto;bottom:calc(var(--s-5) + 64px + var(--s-5));width:auto;right:var(--gutter);translate:none}.film.is-live .film__beat .display{font-size:clamp(2.2rem,10vw,3.25rem)}.film.is-live .film__scrim{background:linear-gradient(#0000 35%,#0e141c80 60%,#0e141cd9 100%)}.film.is-live .block{grid-template-columns:1fr auto}.block__project{display:none}.block__sheets{border-left:0}.block__sheets li{padding:var(--s-3) var(--s-3)}.block__sheets li span{display:none}}.belief{max-width:var(--max);padding:var(--s-10) var(--gutter) var(--s-9);margin-inline:auto}.belief__title{max-width:16ch}.belief__lede{margin-top:var(--s-6);max-width:48ch}.materials{gap:var(--s-5);margin-top:var(--s-9);grid-template-columns:1.25fr 1fr 1fr 1.25fr;align-items:start;display:grid}.material:nth-child(2){margin-top:var(--s-9)}.material:nth-child(3){margin-top:var(--s-7)}.material img{aspect-ratio:1;object-fit:cover;width:100%}.material p{margin-top:var(--s-3);color:var(--text-secondary)}.material b{color:var(--text-primary);font-weight:var(--fw-medium);display:block}@media (width<=760px){.materials{gap:var(--s-6) var(--s-4);grid-template-columns:1fr 1fr}.material:nth-child(n){margin-top:0}.material:nth-child(2n){margin-top:var(--s-7)}}.project{max-width:var(--max);padding:var(--s-9) var(--gutter);gap:var(--s-9);border-top:var(--hair) solid var(--line);grid-template-columns:5fr 7fr;margin-inline:auto;display:grid}.project__sticky{top:calc(var(--nav-h) + var(--s-7));position:sticky}.project__gloss{margin-top:var(--s-3);color:var(--accent)}.project__text{margin-top:var(--s-6);color:var(--text-secondary);max-width:42ch}.sheet{margin-top:var(--s-7);border-top:var(--hair) solid var(--text-primary)}.sheet div{gap:var(--s-4);padding:var(--s-3) 0;border-bottom:var(--hair) solid var(--line);grid-template-columns:9rem 1fr;display:grid}.sheet dt{color:var(--text-faint)}.project__rooms{gap:var(--s-9);display:grid}.room{overflow:hidden}.room img{aspect-ratio:4/5;object-fit:cover;width:100%}.room figcaption{margin-top:var(--s-3);color:var(--text-secondary);text-transform:none;letter-spacing:.01em}.room:nth-child(2){width:78%;margin-left:auto}@media (width<=900px){.project{gap:var(--s-7);grid-template-columns:1fr}.project__sticky{position:static}.room:nth-child(2){width:100%}}.index{max-width:var(--max);padding:var(--s-9) var(--gutter) var(--s-10);margin-inline:auto;position:relative}.index__list{margin-top:var(--s-7);border-bottom:var(--hair) solid var(--text-primary)}.row{align-items:baseline;gap:var(--s-5);padding:var(--s-5) 0;border-top:var(--hair) solid var(--text-primary);cursor:default;grid-template-columns:2.2fr 1.2fr 1.4fr auto;display:grid}.row__name{font-size:var(--t-xl);font-weight:var(--fw-light);letter-spacing:-.02em;transition:transform var(--d-base) var(--ease-out)}.row:hover .row__name{transform:translate(8px)}.row__where,.row__what,.row__year{color:var(--text-secondary)}.row__img{aspect-ratio:16/10;object-fit:cover;grid-column:1/-1;width:100%}.index__preview{display:none}@media (hover:hover) and (width>=900px){.row__img{display:none}.index__preview{aspect-ratio:16/10;pointer-events:none;z-index:5;visibility:hidden;width:clamp(260px,22vw,360px);display:block;position:absolute;top:0;left:0}.index__preview img{object-fit:cover;width:100%;height:100%}}@media (width<=760px){.row{gap:var(--s-1) var(--s-4);grid-template-columns:1fr auto}.row__what{grid-column:1/-1}.row__img{margin-top:var(--s-3)}}.process{background:var(--surface-sunk)}.process__pin{justify-content:center;gap:var(--s-6);min-height:100svh;padding:calc(var(--nav-h) + var(--s-5)) 0 var(--s-7);flex-direction:column;display:flex;overflow:hidden}.process__head{padding-inline:var(--gutter);justify-content:space-between;align-items:end;gap:var(--s-5);flex-wrap:wrap;display:flex}.process__head .lede{max-width:30ch}.process__track{gap:var(--s-6);padding-inline:var(--gutter);width:100%;display:flex}.step{flex:0 0 clamp(260px,27vw,400px)}.step img{aspect-ratio:4/5;object-fit:cover;width:100%;max-height:44svh}.step__n{margin-top:var(--s-4);color:var(--accent)}.step h3{font-size:var(--t-xl);font-weight:var(--fw-light);letter-spacing:-.02em;margin-top:var(--s-1)}.step p:last-child{margin-top:var(--s-2);color:var(--text-secondary);font-size:var(--t-sm);max-width:34ch}@media (width<=899px){.process__track{gap:var(--s-7) var(--s-4);grid-template-columns:1fr 1fr;display:grid}.step img{max-height:none}}@media (width<=520px){.process__track{grid-template-columns:1fr}}.studio__figure{aspect-ratio:16/8;width:100%;max-height:88svh;overflow:hidden}.studio__figure img{object-fit:cover;width:100%;height:100%}.studio__body{max-width:var(--max);padding:var(--s-8) var(--gutter) var(--s-10);gap:var(--s-8);grid-template-columns:5fr 7fr;align-items:start;margin-inline:auto;display:grid}.services{border-top:var(--hair) solid var(--text-primary);border-left:var(--hair) solid var(--line);grid-template-columns:1fr 1fr;display:grid}.services li{padding:var(--s-4) var(--s-5) var(--s-5);border-right:var(--hair) solid var(--line);border-bottom:var(--hair) solid var(--line);color:var(--text-secondary);text-transform:none;letter-spacing:.01em}.services b{color:var(--text-primary);font-family:var(--f-sans);font-size:var(--t-lg);font-weight:var(--fw-regular);margin-bottom:var(--s-2);display:block}@media (width<=900px){.studio__figure{aspect-ratio:4/3}.studio__body{gap:var(--s-6);grid-template-columns:1fr}}@media (width<=520px){.services{grid-template-columns:1fr}}.contact{background:var(--c-dusk-900);color:var(--c-mist-100);position:relative;overflow:hidden}.contact__mist{object-fit:cover;opacity:.6;width:100%;height:100%;position:absolute;inset:0}.contact:after{content:"";background:linear-gradient(90deg,#0e141cbf,#0e141c59);position:absolute;inset:0}.contact__inner{z-index:1;max-width:var(--max);padding:var(--s-10) var(--gutter);gap:var(--s-9);grid-template-columns:1fr 1fr;margin-inline:auto;display:grid;position:relative}.contact .lede{color:var(--c-mist-300);margin-top:var(--s-5)}.contact__direct{margin-top:var(--s-7);gap:var(--s-3);display:grid}.contact__direct div{grid-template-columns:5rem 1fr;display:grid}.contact__direct dt{color:var(--c-mist-300)}.contact__direct dd{text-transform:none;-webkit-user-select:all;user-select:all}.form{gap:var(--s-5);align-content:start;display:grid}.field{gap:var(--s-2);display:grid}.field label{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--c-mist-300)}.field input,.field textarea{border:0;border-bottom:var(--hair) solid var(--c-mist-300);width:100%;padding:var(--s-2) 0;font-size:var(--t-lg);color:var(--c-mist-100);resize:vertical;background:0 0;border-radius:0}.field input::placeholder{color:color-mix(in srgb, var(--c-mist-300) 75%, transparent)}.field input:focus,.field textarea:focus{border-bottom:2px solid var(--c-lichen-300);outline:0}.field [aria-invalid=true]{border-bottom-color:#f2b8a2}.field__error{font-size:var(--t-sm);color:#f2b8a2}.form__submit{margin-top:var(--s-2);background:var(--c-mist-100);color:var(--c-dusk-900);justify-self:start}.form__submit:hover{background:var(--c-lichen-300)}.form__done{font-size:var(--t-xl);font-weight:var(--fw-light);max-width:26ch;line-height:1.3}@media (width<=900px){.contact__inner{gap:var(--s-8);padding-block:var(--s-9);grid-template-columns:1fr}}.foot{padding:var(--s-8) var(--gutter) var(--s-6);overflow:hidden}.foot__mark{font-size:calc((100vw - 2 * var(--gutter)) / 2.75);font-weight:var(--fw-light);letter-spacing:.12em;white-space:nowrap;margin-left:-.04em;line-height:.8}.foot__row{justify-content:space-between;gap:var(--s-3) var(--s-7);margin-top:var(--s-6);padding-top:var(--s-4);border-top:var(--hair) solid var(--text-primary);color:var(--text-secondary);flex-wrap:wrap;display:flex}
