@layer base,layout,components,responsive;@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-standard-normal-rJmnGBSt.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-standard-normal-7khWdh9v.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-standard-normal-DY7AcnAa.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@layer base{:root{font-family:Archivo Variable,sans-serif;color:#fff;background:#000;font-synthesis:none;--muted: #ffffff;--line: #ffffff2c;--oas: #982b35}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{margin:0}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}h1,h2,p{margin:0}::selection{background:#fff;color:#111}:focus-visible{outline:2px solid #fff;outline-offset:7px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.mono,.eyebrow{font-family:IBM Plex Mono,monospace;font-size:.75rem;font-weight:400}.eyebrow{display:flex;gap:1.05rem;align-items:center;letter-spacing:.07em;text-transform:uppercase;line-height:1.6}.skip-link{position:fixed;left:1rem;top:-100px;padding:1rem;background:#fff;color:#000;z-index:20}.skip-link:focus{top:1rem}}@layer layout{.environment{position:fixed;inset:0;height:100lvh;pointer-events:none;overflow:hidden}.environment-poster{width:100%;height:100%;object-fit:cover;object-position:50% 50%;position:absolute;inset:0}#warehouse-canvas{position:absolute;inset:0;opacity:0;transition:opacity 1.3s ease}#warehouse-canvas canvas{display:block;width:100%;height:100%}.scene-ready #warehouse-canvas{opacity:1}#weather-layer{position:absolute;inset:0;z-index:1}.environment-shade{opacity:var(--scene-shade-opacity, 1);position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,#0008,#0002 48%,#0000 78%),linear-gradient(0deg,#000b,#0000 35% 75%,#0007);transition:background .5s}body[data-chapter=work] .environment-shade{background:linear-gradient(90deg,#0008,#0005 45%,#000b 72% 100%),linear-gradient(0deg,#0006,#0000)}body[data-chapter=contact] .environment-shade{background:linear-gradient(0deg,#000d,#0005 30%,#0004 70%,#0008)}.site-header{height:92px;position:fixed;inset:0 0 auto;z-index:5;display:flex;align-items:center;justify-content:space-between;margin:0 4.2vw;border-bottom:1px solid var(--line)}.site-header:before{content:"";position:absolute;inset:0 -4.2vw;z-index:-1;background:linear-gradient(#000a,#0004);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.brand{display:flex;align-items:center;gap:1.25rem}.brand-mark{font-size:3.2rem;font-weight:850;letter-spacing:-.095em;color:var(--oas);line-height:.9}.brand-period{margin-left:.02em}.brand-name{font-size:.7rem;line-height:1.5;font-weight:550;letter-spacing:.15em}.primary-nav{display:flex;align-items:center;gap:3.1rem;font-size:.85rem}.primary-nav a{display:flex;gap:.8rem;padding:.75rem 0;align-items:center;transition:opacity .2s}.primary-nav a:hover{opacity:.65}.nav-index{font-family:IBM Plex Mono,monospace;font-size:.6rem;opacity:.55;transform:translateY(-4px)}.chapter{position:relative;min-height:100svh;padding:10rem 8.5vw 8rem 7.4vw}.chapter+.chapter{margin-top:65svh}.intro{min-height:max(820px,100svh);display:flex;align-items:center;padding-top:11rem;padding-bottom:12rem}.intro-content{position:relative;width:min(70%,860px)}.intro-eyebrow{margin-bottom:2rem}.short-line{height:1px;width:2.1rem;background:currentColor}h1{font-size:clamp(6rem,10.8vw,11rem);line-height:.83;letter-spacing:-.045em;font-weight:780;font-stretch:80%;text-transform:uppercase;text-shadow:0 2px 32px #0004}h1>span{font-weight:780}.intro-bottom{display:flex;width:min(100%,535px);justify-content:space-between;align-items:center;gap:2rem;margin-top:2.8rem}.intro-bottom p{font-size:1rem;line-height:1.55;font-weight:350;color:#fff}.chapter-foot{position:absolute;left:7.4vw;right:8.5vw;bottom:2.8rem;display:flex;align-items:center;justify-content:space-between}.intro-foot>.mono{color:var(--muted);font-size:.68rem}.scroll-cue{display:flex;align-items:center;gap:1.8rem}.scroll-cue span{font-size:1.5rem}.work{display:grid;grid-template-columns:.95fr 1.3fr;gap:6.5vw;align-items:center;min-height:110svh;padding-top:8rem;padding-bottom:7rem}.work-intro{align-self:center}.section-number{color:var(--muted);padding-right:1rem;border-right:1px solid var(--line)}.work h2{font-size:clamp(3.8rem,5.8vw,7rem);font-weight:670;font-stretch:85%;line-height:.96;letter-spacing:-.045em;margin-top:2.4rem}.section-copy{font-weight:350;font-size:1rem;line-height:1.7;color:#fff;margin-top:1.8rem}.work-annotation{display:inline-block;font-size:.65rem;color:var(--muted);margin-top:3.6rem}.contact{display:flex;flex-direction:column;justify-content:center;text-align:left;min-height:max(830px,100svh);padding-top:8rem;padding-bottom:10rem}.contact-content{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6vw;padding-bottom:2rem}.contact .eyebrow{margin-bottom:3rem}.contact-prelude{font-size:clamp(1.6rem,2.4vw,2.8rem);letter-spacing:-.055em;font-weight:350;margin-bottom:.45rem}.contact h2{font-size:clamp(4.2rem,7.7vw,8.5rem);line-height:1.05;font-weight:600;letter-spacing:-.075em;white-space:nowrap}.contact-copy{color:#fff;font-weight:350;font-size:1rem;margin-top:1.4rem;line-height:1.5}.site-footer{position:absolute;left:4.2vw;right:4.2vw;bottom:2rem;padding-top:1.8rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:2rem}.footer-logo{color:var(--oas);font-size:2.35rem;font-weight:850;letter-spacing:-.1em}.site-footer p{color:var(--muted);font-size:.64rem}.site-footer p span{margin:0 1rem}.back-top{font-size:.65rem;display:flex;align-items:center;gap:1.5rem}}@layer components{.round-link{display:inline-flex;width:62px;height:62px;flex-shrink:0;border:1px solid #ffffff65;border-radius:50%;justify-content:center;align-items:center;font-size:1.8rem;transition:background .25s,color .25s,transform .25s}.round-link:hover{background:#fff;color:#000;transform:rotate(45deg)}.project{display:flex;align-items:center;gap:1.3rem;min-height:94px;padding:1.1rem 0;border-top:1px solid var(--line);position:relative}.project:last-child{border-bottom:1px solid var(--line)}.project-number{color:#fff;font-size:.63rem;width:1.3rem;flex-shrink:0;align-self:flex-start;padding-top:.35rem}.project-info{display:flex;flex-direction:column;gap:.7rem}.project-name{font-size:clamp(1.35rem,2.15vw,2rem);font-weight:430;letter-spacing:-.04em}.project-type{color:#fff;font-size:.75rem;letter-spacing:.01em;line-height:1.5}.project-action{margin-left:auto;font-size:1.5rem;transition:transform .25s}.project:before{content:"";position:absolute;inset:0 -.9rem;background:#ffffff06;opacity:0;transition:opacity .2s;pointer-events:none}a.project:hover:before{opacity:1}a.project:hover .project-action{transform:translate(3px,-3px)}a.project:hover .project-name{text-decoration:underline;text-underline-offset:.22em;text-decoration-thickness:1px}.pending-label{margin-left:auto;color:#fff;font-size:.7rem;white-space:nowrap;border:1px solid #ffffff50;padding:.4rem .55rem}.project-pending .project-name{color:#fff}.contact-email{display:inline-flex;flex-wrap:wrap;align-items:center;gap:1.4rem;margin-top:2.2rem;padding-bottom:.45rem;border-bottom:1px solid #ffffff65;font-size:.72rem}.contact-email:hover{border-color:#fff}.contact-form{min-width:0;padding:2rem;background:#000b;border-top:1px solid #ffffff65}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.contact-field{min-width:0}.contact-field label{display:block;font-size:.68rem;line-height:1.6;margin-bottom:.85rem}.contact-field input,.contact-field textarea{display:block;width:100%;min-width:0;color:#fff;background:#0006;font:inherit;font-size:1rem;font-weight:350;border:0;border-bottom:1px solid #ffffff60;border-radius:0;padding:.85rem .6rem;transition:border-color .2s}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#ffffffa8;opacity:1}.contact-field input:focus,.contact-field textarea:focus{border-bottom-color:#fff}.contact-field textarea{min-height:150px;resize:vertical;line-height:1.6}.contact-message{grid-column:1 / -1}.contact-submit{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid #fff;border-radius:0;padding:1rem 1.2rem;margin-top:2rem;background:#fff;color:#000;font-size:.95rem;transition:background .2s,color .2s}.contact-submit span{font-size:1.4rem}.contact-submit:hover{color:#fff;background:#000}.contact-note{font-size:.62rem;line-height:1.6;margin-top:1rem}.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.booking-link{display:inline-flex;margin-top:3rem;padding:1.2rem 2rem;background:#fff;color:#0a0a0a;border:1px solid #ffffff;font-size:1rem;transition:background .2s,color .2s}.booking-link:hover{background:transparent;color:#fff}.journey-nav{position:fixed;right:2.3vw;top:46%;z-index:5;display:flex;flex-direction:column;gap:.15rem}.journey-nav a{display:flex;align-items:center;gap:.7rem;padding:.8rem .4rem;min-height:44px;font-family:IBM Plex Mono,monospace;font-size:.75rem;color:#fff}.journey-nav i{display:inline-block;width:13px;height:1px;background:#ffffff60;transition:width .25s,background .25s}.journey-nav [aria-current]{color:#fff}.journey-nav [aria-current] i{width:23px;background:#fff}.experience-controls{position:fixed;z-index:6;bottom:.65rem;left:1rem}.motion-toggle{display:flex;gap:.65rem;align-items:center;border:0;padding:.6rem .7rem;font-size:.7rem;background:#000000c9;color:#fff}.motion-toggle:hover{color:#fff;background:#000}.motion-icon{font-size:.65rem}@media(prefers-reduced-motion:no-preference){.intro-content{animation:arrive 1.1s cubic-bezier(.22,1,.36,1) both}@keyframes arrive{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}}}@layer responsive{@media(min-width:1700px){.intro-content{width:68%}.chapter{padding-left:9vw}.chapter-foot{left:9vw}}@media(max-width:1000px){.site-header{height:95px}.brand-mark{font-size:3rem}.primary-nav{gap:2rem}.chapter{padding-left:6vw;padding-right:9vw}.intro{min-height:max(740px,100svh)}.intro-content{width:90%}h1{font-size:clamp(6rem,13vw,9rem)}.chapter-foot{left:6vw;right:9vw}.work{gap:4vw;grid-template-columns:.8fr 1.2fr}.work h2{font-size:4rem}.project{gap:.8rem;min-height:97px}.project-name{font-size:1.4rem}.project-type{font-size:.6rem;max-width:230px;line-height:1.5}.pending-label{font-size:.55rem;padding:.3rem}}@media(max-width:700px){html{scroll-padding-top:0}.site-header{height:87px;margin:0 6vw}.site-header:before{inset:0 -6vw}.brand{gap:.8rem}.brand-mark{font-size:2.8rem}.brand-name{display:none}.primary-nav{gap:1.5rem;font-size:.75rem}.nav-index{display:none}.primary-nav a{gap:.5rem}.chapter{padding-left:7vw;padding-right:7vw}.intro{min-height:max(690px,100svh);align-items:center;padding-top:10rem;padding-bottom:9rem}.intro-content{width:100%}.intro-eyebrow{font-size:.62rem;margin-bottom:2rem;letter-spacing:.04em;gap:.7rem}.short-line{width:1.4rem}h1{font-size:clamp(4.6rem,17.5vw,7.8rem);letter-spacing:-.072em;line-height:.87}.intro-bottom{margin-top:2rem;width:95%}.intro-bottom p{font-size:.9rem}.round-link{width:51px;height:51px;font-size:1.6rem}.chapter-foot{left:7vw;right:7vw;bottom:3rem;align-items:flex-end;gap:2rem}.intro-foot>.mono{font-size:.56rem;max-width:180px;line-height:1.7}.scroll-cue{gap:1rem;font-size:.58rem;white-space:nowrap}.work{display:block;min-height:100svh;padding-top:6rem;padding-bottom:5rem;background:#0004}.work-intro{margin-bottom:2.7rem}.eyebrow{font-size:.65rem}.work h2{font-size:3.6rem;margin-top:1.8rem}.section-copy{margin-top:1.3rem;font-size:.95rem}.work-annotation{display:none}.project{min-height:96px;padding:1.2rem 0;gap:.8rem}.project-number{font-size:.6rem;width:1rem}.project-name{font-size:1.5rem}.project-type{font-size:.7rem}.project-action{font-size:1.5rem}.pending-label{font-size:.55rem}.contact{min-height:max(760px,100svh);padding-top:7rem;padding-bottom:12rem}.contact-content{display:block}.contact .eyebrow{margin-bottom:2rem}.contact-prelude{font-size:2rem}.contact h2{font-size:clamp(4.5rem,17vw,7rem)}.contact-copy{font-size:.94rem;max-width:290px;margin:1.4rem 0 0}.contact-email{gap:.65rem;font-size:.65rem;margin-top:1.6rem}.contact-form{margin-top:2.5rem;padding:1.5rem 1rem}.contact-fields{grid-template-columns:1fr;gap:1.6rem}.site-footer{left:7vw;right:7vw;bottom:3.5rem;gap:1rem;flex-wrap:wrap}.site-footer p{order:3;width:100%;text-align:left;font-size:.56rem}.site-footer p span{margin:0 .5rem}.back-top{font-size:.62rem}.journey-nav{display:none}.experience-controls{left:.6rem;bottom:.3rem}.motion-toggle{font-size:.55rem}.environment-shade{background:linear-gradient(90deg,#0005,#0001),linear-gradient(0deg,#000b,#0002 65%,#0008)}}@media(max-width:370px){.project-name{font-size:1.25rem}.brand-mark{font-size:2.5rem}.primary-nav{gap:1rem}}body.static-experience .chapter+.chapter{margin-top:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.chapter+.chapter{margin-top:0}*,*:before,*:after{animation:none!important;transition:none!important}}}
