@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/af21ab248943f479-s.0z23a3hpu8ttr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/4ae66b896b591e96-s.02aqyp7acl16b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/21ca8f3f56c22ca2-s.p.14a9xpaqsbppk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_7321f1a9-module__Lxw7qa__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_7321f1a9-module__Lxw7qa__variable{--font-display:"Archivo", "Archivo Fallback"}
@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.3wn_q526zaolu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.3uuun_-7zsf1g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans Fallback;src:local(Arial);ascent-override:94.42%;descent-override:24.33%;line-gap-override:0.0%;size-adjust:102.74%}.instrument_sans_23d57153-module__izaPfW__className{font-family:Instrument Sans,Instrument Sans Fallback;font-style:normal}.instrument_sans_23d57153-module__izaPfW__variable{--font-body:"Instrument Sans", "Instrument Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.31-2bzhq1gx_9.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.3xauquyg2sixn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.2taws-qdxmzlf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0htwiiqufp3l9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.28xcb7557rbh2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_9d88f727-module__1NxLqG__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_9d88f727-module__1NxLqG__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--ink:#0c0d0e;--graphite:#16171a;--line:#2b2d31;--mist:#8e9196;--bone:#ecebe7;--white:#fff;--steel-edge:#34363b;--steel-deep:#121315;--gutter:clamp(16px, 4vw, 56px);--nav-h:76px;--section-gap:clamp(96px, 12vw, 168px);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}html.menu-open{overflow:hidden}body{background:var(--ink);color:var(--bone);font-family:var(--font-body), system-ui, sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}:focus-visible{outline:1px solid var(--bone);outline-offset:4px}.skip-link{z-index:200;background:var(--bone);color:var(--ink);font-family:var(--font-mono), monospace;padding:12px 16px;font-size:.8125rem;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}.page{animation:page-in .7s var(--ease-out) backwards}@keyframes page-in{0%{opacity:0;transform:translateY(16px)}}.display,.hero-title,.section-title,.work-name,.service-name,.contact-title,.case-title,.case-next-name{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;text-transform:uppercase;margin:0;font-weight:600;font-stretch:118%;line-height:.92}.hero-eyebrow,.case-label,.service-index,.tag,.work-category,.work-cta,.case-back,.case-facts dt{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.8125rem}.tag{border:1px solid var(--line);color:var(--mist);white-space:nowrap;padding:6px 10px;font-size:.6875rem;line-height:1.2;display:inline-block}.tag--solid{border-color:var(--bone);background:var(--bone);color:var(--ink)}.section{padding:var(--section-gap) var(--gutter) 0;scroll-margin-top:calc(var(--nav-h) - var(--section-gap) + 24px)}.section-head{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:24px 48px;margin-bottom:clamp(56px,8vw,112px);display:grid}.section-title{margin-bottom:clamp(40px,5vw,72px);font-size:clamp(1.75rem,3vw,2.75rem)}.section-kicker{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);margin:0 0 14px;font-size:.75rem}.section-lede{max-width:34ch;color:var(--mist);margin:0;font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:1.5}html.js [data-reveal]{opacity:0;transition:opacity .9s var(--ease-out), transform 1.1s var(--ease-out);transform:translateY(28px)}html.js [data-reveal].is-in{opacity:1;transform:none}.nav{z-index:50;height:var(--nav-h);padding:0 var(--gutter);-webkit-backdrop-filter:blur(14px);background:#0c0d0ee6;align-items:center;gap:40px;display:flex;position:fixed;inset:0 0 auto}.nav-logo{width:108px;color:var(--bone);display:block}.nav-logo svg{width:100%;height:auto;display:block}.nav-links{gap:36px;margin-left:auto;display:flex}.nav-links a,.nav-cta,.nav-toggle{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.8125rem}.nav-links a{color:var(--mist);padding:12px 0;transition:color .2s}.nav-links a:hover{color:var(--bone)}.nav-cta{border:1px solid var(--line);padding:12px 18px;transition:border-color .2s}.nav-cta:hover{border-color:var(--bone)}.nav-toggle{min-width:44px;min-height:44px;color:var(--bone);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0 4px;display:none}.nav-sheet{inset:var(--nav-h) 0 0;padding:32px var(--gutter) 40px;background:var(--ink);animation:page-in .4s var(--ease-out) backwards;flex-direction:column;justify-content:space-between;display:flex;position:fixed}.nav-sheet[hidden]{display:none}.nav-sheet nav{flex-direction:column;display:flex}.nav-sheet nav a{border-bottom:1px solid var(--line);font-family:var(--font-display), sans-serif;text-transform:uppercase;letter-spacing:-.02em;padding:14px 0;font-size:2rem;font-weight:600;font-stretch:118%}.btn{min-height:52px;font-family:var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:14px;padding:0 22px;font-size:.8125rem;font-weight:500;transition:background-color .25s,border-color .25s;display:inline-flex}.btn-arrow{transition:transform .35s var(--ease-out);display:inline-block}.btn:hover .btn-arrow,.work-link:hover .btn-arrow,.case-next:hover .btn-arrow{transform:translate(3px,-3px)}.btn--solid{background:var(--bone);color:var(--ink)}.btn--solid:hover{background:var(--white)}.btn--line{border:1px solid var(--line)}.btn--line:hover{border-color:var(--bone)}.hero{isolation:isolate;min-height:max(100svh,640px);padding:var(--nav-h) var(--gutter) 48px;text-align:center;place-items:center;display:grid;position:relative;overflow:hidden}.bgv{z-index:-1;background:var(--ink);position:absolute;inset:0}.bgv-poster,.bgv-video{object-fit:cover;filter:blur(1.5px)brightness(.72)contrast(1.05);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.03)}.bgv-video{opacity:0;transition:opacity 1.6s}.bgv-video.is-on{opacity:1}.bgv-veil{position:absolute;inset:0}.bgv--hero .bgv-veil{background:radial-gradient(ellipse 60% 55% at 50% 50%, #0c0d0e8c 0%, #0c0d0e40 60%, transparent 100%), linear-gradient(180deg, var(--ink) 0%, #0c0d0e59 18%, #0c0d0e59 78%, var(--ink) 100%)}.bgv-veil:after{content:"";opacity:.16;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27160%27 height=%27160%27%3E%3Cfilter id=%27n%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%270.9%27 numOctaves=%272%27 stitchTiles=%27stitch%27/%3E%3C/filter%3E%3Crect width=%27100%25%27 height=%27100%25%27 filter=%27url(%23n)%27/%3E%3C/svg%3E");position:absolute;inset:0}.hero-content{justify-items:center;padding:48px 0;display:grid}.hero-eyebrow{color:var(--bone);animation:rise 1s .1s var(--ease-out) both;margin:0 0 28px}.hero-title{font-size:clamp(2.75rem,6.6vw,7rem);line-height:.88}.hero-line{animation:stretch 1.6s var(--ease-out) both;display:block}.hero-line+.hero-line{animation-delay:.12s}@keyframes stretch{0%{opacity:0;font-stretch:62%}to{opacity:1;font-stretch:118%}}.hero-lede{color:#b9bbbf;max-width:36ch;animation:rise 1s .5s var(--ease-out) both;margin:32px auto 0;font-size:clamp(1.125rem,1.45vw,1.375rem);line-height:1.45}.hero-ctas{animation:rise 1s .62s var(--ease-out) both;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:40px;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.hero-object{place-items:center;animation:1.6s .3s both fade;display:grid}@keyframes fade{0%{opacity:0}}.hero-scroll{font-family:var(--font-mono), monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--mist);justify-items:center;gap:12px;font-size:.6875rem;animation:1.6s 1.2s both fade;display:grid;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.hero-scroll i{background:var(--line);width:1px;height:44px;position:relative;overflow:hidden}.hero-scroll i:after{content:"";background:var(--bone);animation:2.2s cubic-bezier(.65,0,.35,1) infinite scroll-cue;position:absolute;inset:0}@keyframes scroll-cue{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}.work-list{gap:clamp(88px,12vw,176px);margin:0;padding:0;list-style:none;display:grid}.work-link{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:end;gap:clamp(24px,4vw,72px);display:grid}.work-item--flip .work-link{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}.work-item--flip .work-meta{order:2}.work-meta{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.work-number{font-family:var(--font-display), sans-serif;letter-spacing:-.04em;color:#0000;-webkit-text-stroke:1px var(--mist);font-size:clamp(4.5rem,10vw,9.5rem);font-weight:600;font-stretch:118%;line-height:.8}.work-name{font-size:clamp(1.875rem,3.4vw,3.25rem)}.work-category{color:var(--mist);margin:0}.work-cta{border-bottom:1px solid var(--line);margin-top:12px;padding-bottom:6px;transition:border-color .3s}.work-link:hover .work-cta{border-color:var(--bone)}.work-visual{overflow:hidden}html.js .work-item[data-reveal] .work-visual{clip-path:inset(14% 0 0);transition:clip-path 1.3s var(--ease-out)}html.js .work-item.is-in .work-visual{clip-path:inset(0)}.visual{aspect-ratio:16/10;background:var(--graphite);position:relative;overflow:hidden}.visual img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform 1.2s var(--ease-out)}.work-link:hover .visual img,.work-link:hover .concept-name{transform:scale(1.03)}.visual--concept{place-items:center;padding:24px;display:grid}.concept-name{font-family:var(--font-display), sans-serif;text-align:center;text-transform:uppercase;transition:transform 1.2s var(--ease-out)}.concept-status{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.6875rem;position:absolute;bottom:18px;left:20px}.visual--night{background:radial-gradient(at 50% 120%,#2a2522 0%,#0000 60%),#060607}.visual--night .concept-name{letter-spacing:-.01em;color:var(--bone);font-size:clamp(3rem,8vw,7.5rem);font-weight:800;font-stretch:62%;line-height:.85}.visual--night .concept-status{color:var(--mist)}.visual--stone{background:#d9d4cb}.visual--stone .concept-name{letter-spacing:.32em;color:#22211e;font-size:clamp(1.5rem,3.4vw,3rem);font-weight:300;font-stretch:125%}.visual--stone .concept-status{color:#5c5850}.work-cursor{z-index:40;background:var(--bone);width:76px;height:76px;color:var(--ink);font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;pointer-events:none;opacity:0;transition:opacity .25s, scale .35s var(--ease-out);border-radius:50%;place-items:center;margin:-38px 0 0 -38px;font-size:.75rem;display:grid;position:fixed;top:0;left:0;scale:.6}.work-cursor.is-on{opacity:1;scale:1}@media (hover:none){.work-cursor{display:none}}.work{padding-top:clamp(48px,7vw,112px)}.trip{--trip-h:clamp(560px, 78vh, 860px);height:var(--trip-h);gap:12px;margin:0;padding:0;list-style:none;display:flex}.trip-item{min-width:0;transition:flex-grow .9s var(--ease-out);flex:1 1 0}@media (hover:hover) and (pointer:fine){.trip:hover .trip-item{flex-grow:.8}.trip .trip-item:hover,.trip .trip-item:focus-within{flex-grow:2}}.trip-panel{isolation:isolate;background:var(--graphite);height:100%;display:block;position:relative;overflow:hidden}.trip-panel:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0c0d0e80 0%,#0c0d0e00 20%),linear-gradient(#0c0d0e00 40%,#0c0d0e1a 62%,#0c0d0ee0 100%);position:absolute;inset:0}.trip-scene{z-index:-1;object-fit:cover;transition:transform 1.6s var(--ease-out)}.trip-panel:hover .trip-scene,.trip-panel:focus-visible .trip-scene{transform:scale(1.04)}.trip-phone{aspect-ratio:390/844;width:clamp(150px,13vw,212px);transition:transform 1s var(--ease-out);background:#0b0b0c;border-radius:30px;padding:6px;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)rotate(-4deg);box-shadow:0 0 0 1px #ffffff14,0 40px 60px -20px #0000008c,0 12px 24px -8px #0006}.trip-panel:hover .trip-phone,.trip-panel:focus-visible .trip-phone{transform:translate(-50%,-52%)rotate(0)scale(1.06)}.trip-screen{background:#fff;border-radius:24px;height:100%;display:block;overflow:hidden}.trip-screen img{width:100%;height:auto;transition:transform 1.2s var(--ease-out);transform:translateY(0)}.trip-panel:hover .trip-screen img,.trip-panel:focus-visible .trip-screen img{transform:translateY(var(--travel));transition:transform 16s linear .6s}.trip-number{z-index:2;font-family:var(--font-display), sans-serif;letter-spacing:-.04em;color:#0000;-webkit-text-stroke:1.25px var(--bone);font-size:clamp(2.5rem,4vw,3.75rem);font-weight:600;font-stretch:118%;line-height:.8;position:absolute;top:20px;left:24px}.trip-meta{z-index:2;justify-items:start;gap:10px;display:grid;position:absolute;inset:auto 24px 24px}.trip-name{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;text-transform:uppercase;color:var(--bone);font-size:clamp(1.375rem,2vw,2rem);font-weight:600;font-stretch:118%;line-height:.95}.trip-category{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:#c6c7ca;font-size:.75rem}.tag--glass{color:var(--bone);-webkit-backdrop-filter:blur(6px);background:#0c0d0e73;border-color:#ecebe766}.trip-cta{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--bone);opacity:0;gap:12px;font-size:.8125rem;transition:opacity .5s;display:inline-flex}.trip-panel:hover .trip-cta,.trip-panel:focus-visible .trip-cta{opacity:1}.trip-panel:hover .btn-arrow{transform:translate(3px,-3px)}@media (hover:none){.trip-cta{opacity:1}.trip-panel.is-live .trip-screen img{animation:40s linear infinite trip-scroll}.trip-panel.is-live .trip-phone{transform:translate(-50%,-52%)rotate(0)scale(1.04)}}@keyframes trip-scroll{0%{transform:translateY(0)}72%,78%{transform:translateY(var(--travel))}94%,to{transform:translateY(0)}}@media (max-width:860px){.trip{--trip-h:max(520px, 74svh);scroll-snap-type:x mandatory;margin-right:calc(-1 * var(--gutter));padding-right:var(--gutter);scrollbar-width:none;overflow-x:auto}.trip-item{scroll-snap-align:start;flex:0 0 84%}.trip-phone{width:min(38vw,168px);top:40%}}@media (prefers-reduced-motion:reduce){.trip-panel:hover .trip-screen img,.trip-panel:focus-visible .trip-screen img{transform:none}.trip-panel.is-live .trip-screen img{animation:none}}.acc-list{border-bottom:1px solid var(--line)}.acc{border-top:1px solid var(--line)}.acc summary{cursor:pointer;grid-template-columns:clamp(48px,7vw,120px) minmax(0,1fr) 44px;align-items:center;gap:16px;padding:clamp(24px,3vw,40px) 0;list-style:none;display:grid}.acc summary::-webkit-details-marker{display:none}.acc-n{font-family:var(--font-mono), monospace;letter-spacing:.12em;color:var(--mist);align-self:start;padding-top:.35em;font-size:.75rem}.acc-head{gap:12px;display:grid}.acc-title{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.service-name{font-size:clamp(1.5rem,2.4vw,2.25rem);transition:color .3s}.service-body{color:#b9bbbf;max-width:44ch;margin:0;font-size:1.0625rem;line-height:1.55}.acc-icon{border:1px solid var(--line);border-radius:50%;width:44px;height:44px;transition:border-color .3s,background-color .3s;position:relative}.acc-icon:before,.acc-icon:after{content:"";background:var(--bone);width:14px;height:1px;transition:transform .4s var(--ease-out);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.acc-icon:after{transform:translate(-50%,-50%)rotate(90deg)}.acc[open] .acc-icon:after{transform:translate(-50%,-50%)rotate(0)}.acc summary:hover .acc-icon,.acc[open] .acc-icon{border-color:var(--bone)}.acc summary:focus-visible{outline:2px solid var(--bone);outline-offset:4px}.acc-panel{animation:acc-in .5s var(--ease-out);padding:0 0 clamp(28px,3vw,44px) calc(clamp(48px,7vw,120px) + 16px)}@keyframes acc-in{0%{opacity:0;transform:translateY(-8px)}}.acc-label{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);margin:0 0 8px;font-size:.75rem}.svc-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,4vw,64px);max-width:760px;margin:0;padding:0;list-style:none;display:grid}.svc-list li{border-bottom:1px solid var(--line);color:#b9bbbf;justify-content:space-between;gap:16px;padding:14px 0;font-size:1rem;display:flex}.svc-list li span{font-family:var(--font-mono), monospace;letter-spacing:.1em;color:var(--mist);font-size:.75rem}.flow{--flow-t:8s;--flow-gap:clamp(28px, 3vw, 48px);border:1px solid var(--line);background-color:var(--graphite);background-image:radial-gradient(#ffffff0f 1px,#0000 1px);background-size:18px 18px}.flow-bar{border-bottom:1px solid var(--line);background:var(--ink);font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);justify-content:space-between;gap:16px;padding:12px 20px;font-size:.6875rem;display:flex}.flow-status{color:var(--bone);align-items:center;gap:8px;display:inline-flex}.flow-status i{background:var(--bone);border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite flow-blink}@keyframes flow-blink{50%{opacity:.25}}.flow-steps{gap:var(--flow-gap);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:clamp(24px,3vw,44px);list-style:none;display:grid}.flow-steps li{display:flex;position:relative}.flow-node{border:1px solid var(--line);background:var(--ink);animation:flow-node var(--flow-t) ease infinite;animation-delay:calc(var(--i) * var(--flow-t) / 4);flex:1;padding:20px 20px 24px}@keyframes flow-node{0%{border-color:var(--line);box-shadow:none}4%,22%{border-color:var(--bone);box-shadow:0 0 0 1px #ecebe726,0 0 32px -6px #ecebe740}32%,to{border-color:var(--line);box-shadow:none}}.flow-head{font-family:var(--font-mono), monospace;letter-spacing:.12em;color:var(--mist);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.flow-dot{border:1px solid var(--mist);width:9px;height:9px;animation:flow-dot var(--flow-t) ease infinite;animation-delay:calc(var(--i) * var(--flow-t) / 4);border-radius:50%}@keyframes flow-dot{0%{border-color:var(--mist);background:0 0}4%,22%{background:var(--bone);border-color:var(--bone)}32%,to{border-color:var(--mist);background:0 0}}.step-name{letter-spacing:-.01em;color:var(--bone);margin:16px 0 10px;font-size:1.25rem;font-weight:500}.step-body{color:var(--mist);margin:0;font-size:.9375rem;line-height:1.55}.flow-link{width:var(--flow-gap);background:var(--line);height:1px;position:absolute;top:29px;left:100%}.flow-link:after{content:"";background:var(--bone);opacity:0;width:5px;height:5px;animation:flow-x var(--flow-t) linear infinite;animation-delay:calc(var(--i) * var(--flow-t) / 4);border-radius:50%;position:absolute;top:-2px;left:0;box-shadow:0 0 10px 2px #ecebe799}@keyframes flow-x{0%,18%{opacity:0;left:0}19%{opacity:1;left:0}25%{opacity:1;left:calc(100% - 5px)}26%,to{opacity:0;left:calc(100% - 5px)}}@keyframes flow-y{0%,18%{opacity:0;top:0}19%{opacity:1;top:0}25%{opacity:1;top:calc(100% - 5px)}26%,to{opacity:0;top:calc(100% - 5px)}}@media (max-width:1024px) and (min-width:861px){.flow-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-steps li:nth-child(2) .flow-link{display:none}}@media (max-width:860px){.acc summary{grid-template-columns:32px minmax(0,1fr) 40px;gap:12px}.acc-icon{width:40px;height:40px}.acc-panel{padding-left:0}.svc-list{grid-template-columns:minmax(0,1fr)}.flow-bar{padding:10px 14px}.flow-steps{--flow-gap:28px;grid-template-columns:minmax(0,1fr);padding:16px}.flow-node{padding:16px 16px 20px}.flow-link{width:1px;height:var(--flow-gap);top:100%;left:28px}.flow-link:after{animation-name:flow-y;top:0;left:-2px}}@media (prefers-reduced-motion:reduce){.flow-link:after{display:none}}.about-statement{letter-spacing:-.025em;max-width:26ch;margin:0;font-size:clamp(1.625rem,3vw,2.75rem);font-weight:400;line-height:1.2}.about-grid{grid-template-columns:minmax(0,6fr) minmax(0,6fr);align-items:start;gap:32px 48px;display:grid}.about-copy p{color:#b9bbbf;max-width:44ch;margin:0 0 20px;font-size:1.125rem;line-height:1.6}.about-copy .about-lead{color:var(--bone);font-size:clamp(1.375rem,2vw,1.75rem);line-height:1.35}.principles{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px clamp(24px,3vw,48px);margin:clamp(48px,6vw,80px) 0 0;padding:0;list-style:none;display:grid}.principles li{border-top:1px solid var(--line);gap:14px;padding-top:18px;font-size:1.0625rem;display:flex}.principles li span{font-family:var(--font-mono), monospace;letter-spacing:.1em;color:var(--mist);padding-top:3px;font-size:.75rem}.principles h3{margin:0 0 12px;font-size:1.125rem;font-weight:600}.principles p{color:var(--mist);margin:0;line-height:1.55}.about .founder{margin-top:0}.founder{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:20px clamp(20px,3vw,40px);margin-top:clamp(48px,6vw,80px);padding-top:28px;display:flex}.founder-photo{object-fit:cover;border-radius:50%;width:72px;height:72px}.founder-name{color:var(--bone);margin:0;font-size:1.125rem}.founder-role{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);margin:4px 0 0;font-size:.75rem}.founder-note{color:#b9bbbf;flex:280px;max-width:40ch;margin:0 0 0 auto;font-size:1.0625rem;line-height:1.55}.contact{padding-bottom:var(--section-gap)}.contact-title{margin-bottom:32px;font-size:clamp(2.5rem,4.6vw,5rem)}.contact .section-title{margin-bottom:0}.contact-lede{color:#b9bbbf;max-width:36ch;margin:20px 0 0;font-size:1.0625rem;line-height:1.55}.cf input::placeholder,.cf textarea::placeholder{color:#5c5f64}.contact-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:56px clamp(40px,6vw,112px);display:grid}.cf{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;display:grid}.cf-wide{grid-column:1/-1}.cf-field{gap:8px;display:grid}.cf-field>span:not(.cf-error){font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);font-size:.75rem}.cf-field i{text-transform:none;letter-spacing:0;font-style:normal}.cf input,.cf select,.cf textarea{border:0;border-bottom:1px solid var(--line);width:100%;min-height:48px;color:var(--bone);font:inherit;background:0 0;border-radius:0;padding:12px 0;font-size:1.0625rem;transition:border-color .2s}.cf select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--mist) 50%), linear-gradient(135deg, var(--mist) 50%, transparent 50%);background-position:calc(100% - 12px),calc(100% - 7px);background-repeat:no-repeat;background-size:5px 5px}.cf select option{background:var(--graphite)}.cf textarea{resize:vertical;line-height:1.5}.cf-prefer{border:0;margin:0;padding:0}.cf-prefer legend{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);margin-bottom:12px;padding:0;font-size:.75rem}.cf-choice{flex-wrap:wrap;gap:8px;display:flex}.cf-choice label{position:relative}.cf .cf-choice input{opacity:0;cursor:pointer;width:100%;min-height:0;margin:0;position:absolute;inset:0}.cf-choice span{border:1px solid var(--line);color:var(--mist);border-radius:999px;padding:11px 18px;font-size:.9375rem;transition:border-color .2s,background-color .2s,color .2s;display:block}.cf-choice input:checked+span{border-color:var(--bone);background:var(--bone);color:var(--ink)}.cf-choice input:focus-visible+span{outline:2px solid var(--bone);outline-offset:3px}.cf input:focus,.cf select:focus,.cf textarea:focus{border-bottom-color:var(--bone);box-shadow:0 1px 0 var(--bone);outline:none}.cf [aria-invalid=true]{border-bottom-color:#e5836f}.cf-error,.cf-problem{color:#f0a391;font-size:.875rem}.cf-problem{margin:0}.cf-problem a,.cf-alt a{border-bottom:1px solid}.cf-trap{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.cf-foot{flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:8px;display:flex}.cf-foot .btn[disabled]{opacity:.6;cursor:progress}.cf-alt{color:var(--mist);margin:0;font-size:.9375rem}.cf-done{border:1px solid var(--line);padding:32px}.cf-done p{color:#b9bbbf;margin:0 0 12px}.cf-done .cf-done-title{font-family:var(--font-display), sans-serif;text-transform:uppercase;letter-spacing:-.02em;color:var(--bone);font-size:1.75rem;font-weight:600;font-stretch:118%}.cf-link{color:var(--bone);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:0}@media (max-width:640px){.cf{grid-template-columns:minmax(0,1fr)}}.footer{padding:40px var(--gutter);border-top:1px solid var(--line);font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);flex-wrap:wrap;align-items:center;gap:16px 40px;font-size:.75rem;display:flex}.footer-logo{width:88px;color:var(--bone)}.footer-tagline,.footer-copy{margin:0}.footer-nav{flex-wrap:wrap;gap:8px 28px;margin-left:auto;display:flex}.footer-nav a{padding:10px 0}.footer-nav a:hover,.footer-social:hover{color:var(--bone)}.footer-social{border:1px solid var(--line);border-radius:50%;place-items:center;width:44px;height:44px;margin:-10px 0;transition:color .2s,border-color .2s;display:grid}.footer-social:hover{border-color:var(--bone)}.footer-social svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:20px;height:20px}.footer-social .footer-social-dot{fill:currentColor;stroke:none}.case{padding:calc(var(--nav-h) + clamp(40px, 7vw, 96px)) var(--gutter) var(--section-gap)}.case-back{color:var(--mist);gap:10px;padding:10px 0;display:inline-flex}.case-back:hover{color:var(--bone)}.case-heading{align-items:flex-end;gap:clamp(20px,3vw,48px);margin-top:40px;display:flex}.case-heading .tag{margin-bottom:16px}.case-title{font-size:clamp(2.75rem,7vw,7rem)}.case-summary{color:#b9bbbf;max-width:44ch;margin:40px 0 0;font-size:clamp(1.125rem,1.6vw,1.5rem);line-height:1.45}.case-facts{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:56px 0 0;padding-top:24px;display:grid}.case-facts dt{color:var(--mist);margin-bottom:8px;font-size:.6875rem}.case-facts dd{margin:0}.case-facts a{border-bottom:1px solid var(--line)}.case-facts a:hover{border-color:var(--bone)}.case-hero{margin-top:clamp(56px,8vw,112px)}.frame{border:1px solid var(--line);background:var(--graphite);margin:0}.frame-bar{border-bottom:1px solid var(--line);font-family:var(--font-mono), monospace;letter-spacing:.08em;color:var(--mist);padding:10px 16px;font-size:.6875rem}.frame img{width:100%}.case-block{scroll-margin-top:calc(var(--nav-h) + 24px);grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px 48px;margin-top:clamp(88px,11vw,160px);display:grid}.case-block--wide{grid-template-columns:minmax(0,1fr)}.case-label{color:var(--mist);margin:0;font-weight:400}.case-text p{max-width:52ch;margin:0 0 20px;font-size:clamp(1.125rem,1.5vw,1.375rem);line-height:1.5}.case-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 48px;margin:0;padding:0;list-style:none;display:grid}.case-points li{border-top:1px solid var(--line);padding-top:20px}.case-points h3{margin:0 0 12px;font-size:1.125rem;font-weight:600}.case-points p{color:#b9bbbf;margin:0;line-height:1.55}.case-desktop{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);display:grid}.case-mobile{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3vw,48px);max-width:1100px;display:grid}.phone{border:1px solid var(--line);background:var(--graphite);border-radius:28px;margin:0;overflow:hidden}.case-cta{margin-top:clamp(64px,8vw,112px)}.case-next{margin-top:var(--section-gap);border-top:1px solid var(--line);gap:16px;padding-top:32px;display:grid}.case-next-name{font-size:clamp(2.25rem,6vw,6rem)}@media (max-width:1024px){.nav-links{gap:24px}}@media (max-width:860px){.nav-links,.nav-cta{display:none}.nav-toggle{display:block}.hero{min-height:max(88svh,560px);padding-top:calc(var(--nav-h) + 16px)}.section-head,.about-grid,.contact-grid,.case-block,.work-link,.work-item--flip .work-link{grid-template-columns:minmax(0,1fr)}.work-meta,.work-item--flip .work-meta{order:2}.work-number{font-size:4rem}.principles,.case-points,.case-desktop,.case-facts{grid-template-columns:minmax(0,1fr)}.case-mobile{scroll-snap-type:x mandatory;margin-right:calc(-1 * var(--gutter));padding-right:var(--gutter);grid-template-columns:repeat(3,72%);overflow-x:auto}.phone{scroll-snap-align:start;border-radius:22px}.footer-nav{margin-left:0}}@media (max-width:480px){.nav{background:#0c0d0ef7}.hero-eyebrow{letter-spacing:.08em;margin-bottom:22px;font-size:.6875rem}.hero-lede{margin-top:24px}.hero-ctas{width:100%;margin-top:32px}.hero-ctas .btn,.case-cta .btn{flex:100%}}.intro-overlay{display:none}html.intro{overflow:hidden}html.intro .intro-overlay{z-index:100;cursor:pointer;animation:0s 9s forwards intro-failsafe;display:block;position:fixed;inset:0}@keyframes intro-failsafe{to{visibility:hidden}}.intro-stage{width:100%;height:100%;display:block}.intro-cover{fill:var(--ink)}.intro-mark{fill:var(--bone)}.intro-tagline{fill:var(--bone);font-family:var(--font-body), sans-serif;letter-spacing:.42em;font-weight:500}.intro-skip{right:var(--gutter);min-height:44px;color:var(--mist);font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:.75rem;position:absolute;bottom:20px}.intro-skip:hover{color:var(--bone)}html.intro-hold .page,html.intro-hold .hero-eyebrow,html.intro-hold .hero-line,html.intro-hold .hero-lede,html.intro-hold .hero-ctas,html.intro-hold .hero-object{animation-play-state:paused}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html.js [data-reveal],html.js .work-item[data-reveal] .work-visual{opacity:1;clip-path:none;transform:none}}@media (max-width:860px){.hero-scroll{display:none}.hero{min-height:max(88svh,560px)}}@media (max-width:480px){.hero-title{font-size:2.125rem}.section-title{font-size:1.3125rem}.nav-sheet nav a{font-size:1.375rem}.trip-number{font-size:1.75rem}.trip-name{font-size:1.0625rem}.service-name{font-size:1.1875rem}.service-body,.founder-note,.step-body,.principles li,.svc-list li,.case-text p,.case-points p,.case-facts dd,.cf-choice span{font-size:.875rem}.hero-lede,.case-summary{font-size:.9375rem}.step-name{font-size:1.0625rem}.about-statement{font-size:1.25rem}.founder-name,.case-points h3{font-size:1rem}.work-number{font-size:2.75rem}.case-title{font-size:1.875rem}.case-next-name{font-size:1.375rem}.cf input,.cf select,.cf textarea{font-size:1rem}}
