@font-face{font-family:Space;src:url('/assets/fonts/body.ttf');font-display:swap}
@font-face{font-family:Editorial;src:url('/assets/fonts/editorial.ttf');font-style:italic;font-display:swap}
:root{--body:Space,Arial,sans-serif;--text:#edf0ed;--muted:#9da9ab;--line:#d8e8e226;--mint:#b4f8dd;--ink:#080a0e}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--ink);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased}body{height:100dvh;overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{color:inherit;border:0;background:none;cursor:pointer;padding:0}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}button:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:6px}::selection{color:#080a0e;background:var(--mint)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:100;left:20px;top:0;transform:translateY(-150%);background:var(--mint);color:#080a0e;padding:15px;font-size:22px}.skip:focus{transform:none}
#ambient{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 65% 65%,#182b32,#080a0e 65%)}
.scene-vignette{position:fixed;inset:0;background:linear-gradient(90deg,#080a0ee8 0%,#080a0e50 29%,transparent 57%),linear-gradient(0deg,#080a0eeb,transparent 25%,transparent 70%,#080a0e88);pointer-events:none;z-index:2}
.scene-grain{position:fixed;inset:0;z-index:8;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23noise)'/%3E%3C/svg%3E")}
.masthead{position:fixed;z-index:20;inset:30px 3.5% auto;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.masthead>*{pointer-events:auto}
.brand{font-size:46px;line-height:1;font-weight:600;letter-spacing:-3.5px}.brand sup{font-size:13px;font-weight:400;letter-spacing:0;vertical-align:top;margin-left:4px}
.main-nav{display:flex;align-items:center;gap:38px;font-size:22px}.main-nav a,.main-nav>button{min-height:44px;display:flex;align-items:center;gap:12px;position:relative}.main-nav .current:after{content:'';position:absolute;width:5px;height:5px;background:var(--mint);bottom:-3px;left:calc(50% - 2px);border-radius:50%}.main-nav button:hover,.main-nav a:hover{color:var(--mint)}
.main-nav .motion-toggle{width:44px;justify-content:center;gap:4px}.motion-toggle i{width:2px;height:17px;background:currentColor;border-radius:2px}.motion-toggle i:nth-child(2){height:26px}.motion-toggle[aria-pressed=true] i{height:5px}
.collection-rail{position:fixed;z-index:10;left:3.5%;top:155px;width:255px;pointer-events:none}.collection-rail>*{pointer-events:auto}.rail-overline{font-size:18px;letter-spacing:.08em;color:#93a29f;margin-bottom:24px}.collection-rail nav{display:flex;flex-direction:column;gap:1px}.collection-rail nav a{font-size:22px;line-height:1.2;padding:12px 0;color:#9aa5a6;display:flex;align-items:center;justify-content:space-between;gap:14px;transition:color .2s}.collection-rail nav a span{font-size:17px;color:#6c8180;min-width:25px;text-align:right}.collection-rail nav a:hover,.collection-rail nav a[aria-current]{color:#fff}.collection-rail nav a[aria-current]:before{content:'';position:absolute;width:5px;height:5px;left:-16px;border-radius:50%;background:var(--mint);box-shadow:0 0 14px #b4f8dd80}.collection-rail nav a[aria-current] span{color:#b4f8dd}.rail-bottom{display:flex;align-items:flex-start;gap:9px;margin-top:36px;color:#8c9c9c;font-size:19px;line-height:1.4}.status-dot{flex:none;width:6px;height:6px;margin-top:9px;border-radius:50%;background:#a1dcc8}
#archive{position:fixed;inset:0;z-index:3;outline:none}.work-space{position:absolute;left:290px;right:20px;top:95px;bottom:120px;perspective:1100px;perspective-origin:50% 50%;touch-action:pan-y}.work-track{position:absolute;inset:0;transform-style:preserve-3d}
.work-plane{position:absolute;left:50%;top:50%;width:min(62vw,780px);height:min(52vh,480px);padding:0;overflow:hidden;transform-style:preserve-3d;backface-visibility:hidden;transform:translate(-50%,-50%);border:1px solid #c3e5dd38;background:#10191d;box-shadow:0 30px 90px #0007;transition:transform .85s cubic-bezier(.18,.75,.19,1),opacity .6s,border-color .25s,filter .6s;will-change:transform;isolation:isolate;text-align:left}
.work-plane:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#04080e15,#04080e33 45%,#04080e85);z-index:2;pointer-events:none}.work-plane:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 80px #0002;pointer-events:none;z-index:3}.work-plane img,.work-plane video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;filter:brightness(.7) saturate(.8);transition:opacity .5s,filter .3s;pointer-events:none}.work-plane video{opacity:0}.work-plane.is-playing video{opacity:1}.work-plane.is-active{border-color:#e2f3ef70}.work-plane.is-active:hover{border-color:#c7ffe8}.work-plane.is-active:hover img,.work-plane.is-active:hover video{filter:brightness(.84) saturate(1)}
.plane-copy{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center;text-shadow:0 3px 30px #000b;pointer-events:none}.plane-copy>span{font-size:20px;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;max-width:90%;margin-bottom:18px}.plane-copy strong{font-size:clamp(46px,5.3vw,80px);font-weight:500;line-height:.97;letter-spacing:-.06em;max-width:95%}.plane-copy small{font-size:19px;line-height:1.3;letter-spacing:.02em;margin-top:22px;color:#d7e7e2}.plane-corner{position:absolute;z-index:5;right:20px;bottom:17px;font-size:30px}.work-plane.is-empty{background:radial-gradient(ellipse at 65% 20%,#173c3e,#0b1219 75%)}.empty-blueprint{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(#b5ecd909 1px,transparent 1px),linear-gradient(90deg,#b5ecd909 1px,transparent 1px);background-size:34px 34px}.empty-blueprint i{position:absolute;width:140px;height:140px;border:1px solid #b0efdd50;transform:rotate(-25deg) skewY(10deg)}.empty-blueprint i:nth-child(2){transform:translate(30px,-30px) rotate(-25deg) skewY(10deg)}
.project-caption{position:absolute;left:calc(290px + (100% - 310px)/2);bottom:107px;transform:translateX(-50%);width:min(62vw,780px);display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:20px;color:#cbd9d6;z-index:10}.project-caption>span{font-size:19px;white-space:nowrap;color:#a7bab4}.project-caption p{font-size:18px;letter-spacing:.025em;color:#a5bbb5;max-width:54%}.project-caption button{font-size:20px;min-height:42px;white-space:nowrap}.project-caption button:hover{color:var(--mint)}.project-caption button span{font-size:25px;margin-left:10px}
.archive-footer{position:fixed;z-index:11;left:3.5%;right:3.5%;bottom:28px;display:flex;align-items:end;justify-content:space-between;gap:30px;pointer-events:none}.archive-footer>*{pointer-events:auto}.signature p{font-size:30px;line-height:.98;letter-spacing:-.045em;font-weight:500}.signature em{font-weight:400;font-style:normal;color:#a9c6ba}.signature>span{display:block;color:#7e9692;font-size:18px;line-height:1.3;margin-top:13px}.journey-control{display:flex;align-items:center;gap:14px;margin-left:auto}.journey-control button{height:42px;width:40px;border:1px solid #b8cec92b;font-size:27px;transition:background .2s}.journey-control button:hover{background:#b4f8dd22}.journey-control button:disabled{opacity:.25;cursor:default}.journey-line{position:relative;display:block;width:100px;height:2px;background:#bfd7d122}.journey-line i{position:absolute;inset:0;transform:scaleX(.1);transform-origin:left;background:#b4f8dd;transition:transform .5s}.footer-actions{display:flex;align-items:center;gap:28px}.scroll-cue{font-size:17px;letter-spacing:.04em;color:#8da7a1}.scroll-cue b{margin-left:9px;font-size:24px;font-weight:400}.footer-actions>button{font-size:22px;min-height:44px;display:flex;align-items:center;gap:10px}.footer-actions>button i{font-style:normal;font-size:31px}
.arrival{position:fixed;inset:0;background:#080a0e;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .7s,visibility .7s;pointer-events:none}.arrival>span{font-size:100px;font-weight:500;letter-spacing:-7px}.arrival sup{font-size:22px;letter-spacing:0;vertical-align:top}.arrival p{font-size:18px;letter-spacing:.18em;margin:24px 0 35px;color:#b9c7c3}.arrival i{height:1px;width:130px;background:#b4f8dd;transform-origin:left;animation:arrival 1s ease-out both}body.is-ready .arrival{opacity:0;visibility:hidden}@keyframes arrival{from{transform:scaleX(0)}to{transform:scaleX(1)}}
dialog{color:var(--text);font-family:var(--body)}dialog::backdrop{background:#040609dc;backdrop-filter:blur(14px)}.project-view{background:#0b1014;border:1px solid #c4dfd633;width:min(1400px,calc(100vw - 60px));max-width:none;max-height:calc(100dvh - 60px);padding:28px;overflow:auto;box-shadow:0 30px 100px #0009}.project-view[open]{animation:dialog-in .55s cubic-bezier(.2,.8,.2,1)}@keyframes dialog-in{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:none}}
.detail-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--line);font-size:19px;color:#9cafaa}.detail-top button{font-size:22px;display:flex;align-items:center;gap:24px;min-height:44px;color:#f0f3ee}.detail-top button b{font-size:34px;font-weight:400}.detail-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;align-items:center;padding-top:28px}.detail-media{background:#05080b;min-width:0}.detail-media video{display:block;width:100%;height:min(65vh,650px);object-fit:contain}.detail-copy{min-width:0}.detail-copy>span{font-size:19px;color:#b6d3c6;text-transform:uppercase;letter-spacing:.07em}.detail-copy h2{font-size:clamp(38px,4.5vw,68px);line-height:1;letter-spacing:-.055em;margin:16px 0 24px;font-weight:500}.detail-copy>p{font-size:23px;line-height:1.4;color:#b5c3c0}.detail-copy dl{margin:30px 0;display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:19px;line-height:1.3}.detail-copy dt{color:#809a92}.detail-copy dd{margin:0;text-align:right}.detail-copy>a,.detail-copy>button{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;border-top:1px solid var(--line);font-size:22px;line-height:1.3;padding:17px 0;text-align:left}.detail-copy>a:hover,.detail-copy>button:hover{color:var(--mint)}.detail-empty{height:450px;padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#b5ecd909 1px,transparent 1px),linear-gradient(90deg,#b5ecd909 1px,transparent 1px);background-size:40px 40px}.detail-empty span{font-size:19px;letter-spacing:.13em;color:#86ac9d}.detail-empty p{font-size:44px;line-height:1.1;letter-spacing:-.05em;margin:28px 0}.detail-empty small{font-size:22px;color:#a5bcb3}.detail-empty[hidden],.detail-media video[hidden]{display:none}
.project-index{background:#0b1014;border:1px solid var(--line);padding:35px;width:min(1400px,calc(100vw - 60px));max-width:none;max-height:calc(100dvh - 60px);overflow:auto}.project-index[open]{animation:dialog-in .5s ease}.project-index>header{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:35px}.project-index header span{font-size:19px;color:#a0b6ad}.project-index h2{font-size:64px;letter-spacing:-.06em;font-weight:500;margin-top:12px}.project-index header button{font-size:22px;min-height:44px}.index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.index-item{display:block;text-align:left}.index-art{aspect-ratio:16/10;position:relative;display:block;background:#142723;overflow:hidden}.index-art img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.index-item:hover img{transform:scale(1.035)}.index-art>span{position:absolute;inset:0;display:grid;place-items:center;font-size:22px;color:#a9d1bc}.index-item strong{font-size:26px;line-height:1.2;display:block;margin:14px 0 7px;font-weight:500}.index-item small{font-size:18px;line-height:1.3;color:#9bb1a8}
.pointer{position:fixed;left:0;top:0;z-index:80;width:12px;height:12px;pointer-events:none;opacity:0;transform:translate(-100px,-100px)}.pointer i{position:absolute;left:50%;top:50%;width:32px;height:32px;border:1px solid #d4faeb9c;transform:translate(-50%,-50%);border-radius:50%}.pointer>span{display:none;position:absolute;left:24px;top:-7px;background:#0b1312d9;color:#d1f5e2;font-size:17px;line-height:1.2;padding:6px 9px}.pointer.is-active{opacity:1}.pointer.is-over>span{display:block}.no-script{position:fixed;z-index:30;left:30%;right:10%;top:40%;font-size:28px}
@media(min-width:1600px){.collection-rail{width:290px;top:185px}.collection-rail nav a{font-size:24px;padding:14px 0}.rail-overline{font-size:20px}.work-space{left:340px;right:45px}.project-caption{left:calc(340px + (100% - 385px)/2)}.work-plane{width:min(62vw,1000px);height:min(54vh,620px)}.project-caption{width:min(62vw,1000px)}.plane-copy strong{font-size:86px}.signature p{font-size:38px}}
@media(max-height:720px) and (min-width:1001px){.collection-rail{top:135px}.collection-rail nav a{padding:9px 0;font-size:21px}.rail-bottom{margin-top:22px;font-size:18px}.signature p{font-size:27px}.signature>span{display:none}.work-space{top:95px;bottom:120px}}
@media(max-width:1000px){.masthead{inset:25px 4% auto}.brand{font-size:40px}.main-nav{gap:26px;font-size:22px}.collection-rail{left:4%;width:215px;top:135px}.rail-overline{font-size:17px;letter-spacing:.04em}.collection-rail nav a{font-size:20px;padding:11px 0}.collection-rail nav a span{font-size:16px}.rail-bottom{display:none}.work-space{left:245px;right:10px;top:90px;bottom:155px}.work-plane{width:65vw;height:min(48vh,440px)}.plane-copy strong{font-size:50px}.plane-copy>span{font-size:18px}.plane-copy small{font-size:18px}.project-caption{left:calc(245px + (100% - 255px)/2);width:65vw;bottom:132px}.project-caption p{display:none}.project-caption>span,.project-caption button{font-size:18px}.archive-footer{left:4%;right:4%;gap:20px}.signature p{font-size:28px}.signature>span{font-size:17px}.journey-control{gap:8px}.journey-line{width:60px}.scroll-cue{display:none}.detail-layout{gap:25px}.detail-copy>p{font-size:22px}}
@media(max-width:700px){body{height:100dvh}.masthead{inset:22px 6% auto}.brand{font-size:40px}.main-nav{font-size:21px;gap:22px}.main-nav>a{display:none}.main-nav .motion-toggle{width:30px}.collection-rail{left:0;right:0;top:91px;width:auto;padding:0 6%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;pointer-events:auto}.collection-rail::-webkit-scrollbar{display:none}.rail-overline{display:none}.collection-rail nav{flex-direction:row;width:max-content;gap:24px;padding:5px 0 13px}.collection-rail nav a{font-size:20px;white-space:nowrap;gap:8px;padding:8px 0}.collection-rail nav a span{display:none}.collection-rail nav a[aria-current]:before{display:none}.collection-rail nav a[aria-current]{box-shadow:0 1px #d3f9e6}.scene-vignette{background:linear-gradient(180deg,#080a0ecf,transparent 30%,transparent 60%,#080a0ed9)}.work-space{left:0;right:0;top:160px;bottom:190px;perspective:900px}.work-plane{width:87vw;height:min(43vh,420px);border-color:#c3e5dd50}.plane-copy{padding:20px}.plane-copy>span{font-size:17px;letter-spacing:.08em;margin-bottom:16px}.plane-copy strong{font-size:clamp(40px,11vw,58px)}.plane-copy small{font-size:18px;margin-top:18px}.plane-corner{font-size:29px;right:15px;bottom:14px}.project-caption{left:6%;width:88%;transform:none;bottom:145px;font-size:19px;gap:18px}.project-caption button{font-size:20px}.project-caption>span{font-size:19px}.archive-footer{bottom:27px;left:6%;right:6%;gap:18px;align-items:end}.signature p{font-size:24px}.signature>span{display:none}.journey-control{margin-left:auto;gap:4px}.journey-control button{width:34px;height:40px;font-size:25px}.journey-line{width:32px}.footer-actions{gap:0}.footer-actions>button{font-size:20px;gap:6px}.footer-actions>button i{font-size:26px}.pointer{display:none}.arrival>span{font-size:80px}.arrival p{font-size:16px;letter-spacing:.1em}.project-view,.project-index{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:20px}.detail-top{font-size:17px;align-items:flex-start;padding-bottom:18px}.detail-top button{font-size:22px;gap:14px;flex:none}.detail-layout{display:block;padding-top:20px}.detail-media video{height:40vh;max-height:420px}.detail-copy{padding-top:28px}.detail-copy h2{font-size:44px}.detail-copy>span{font-size:18px}.detail-copy>p{font-size:22px}.detail-copy dl{font-size:20px;line-height:1.4}.detail-copy>a,.detail-copy>button{font-size:22px}.detail-empty{height:300px;padding:20px}.detail-empty p{font-size:36px}.project-index>header{gap:18px;align-items:flex-start}.project-index header span{font-size:17px}.project-index h2{font-size:48px}.project-index header button{font-size:22px;white-space:nowrap}.index-grid{grid-template-columns:1fr;gap:30px}.index-item small{font-size:20px}.index-item strong{font-size:28px}.no-script{left:7%;right:7%;top:40%;font-size:24px}}
@media(max-height:650px) and (max-width:700px){.masthead{top:14px}.collection-rail{top:74px}.work-space{top:132px;bottom:150px}.work-plane{height:42vh}.project-caption{bottom:110px}.archive-footer{bottom:18px}.signature p{font-size:22px}.plane-copy small{display:none}.plane-copy>span{margin-bottom:10px}.plane-copy strong{font-size:38px}}
.work-space{transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s,opacity .65s;touch-action:none}.entering-project .work-space{transform:scale(1.6);filter:blur(7px);opacity:.25}.entering-project .project-caption{opacity:0}.motion-paused .motion-toggle i{animation:none;height:5px!important}.motion-paused .work-plane{transition-duration:.1s}.work-plane:not(.is-active) .plane-copy{opacity:.7}.work-plane.is-active{box-shadow:0 0 70px #80b4a00c,inset 0 0 80px #05090d30}.work-plane.is-active:hover{border-color:#c3e5dd66}.pointer.is-active{mix-blend-mode:screen}
@media(max-width:700px){.archive-footer{gap:12px}.signature p{white-space:nowrap}.journey-line{display:none}}
