:root{font-family:DM Sans,sans-serif;color:#171916;background:#efeee8;font-synthesis:none;text-rendering:optimizeLegibility;font-smooth:always;--paper:#efeee8;--ink:#171916;--olive:#7b8062;--line:rgba(23,25,22,.18);--mono:"DM Mono",monospace;--serif:"Playfair Display",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{height:78px;padding:0 5.4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:absolute;top:0;left:0;width:100%;z-index:20}.wordmark{font-size:24px;font-weight:700;letter-spacing:-2px}.wordmark span{color:var(--olive)}.nav-links{display:flex;gap:38px;margin-left:70px}.nav-links a,.header-cta{font-size:12px;letter-spacing:.02em}.nav-links a{opacity:.72;transition:opacity .2s}.nav-links a:hover{opacity:1}.header-cta{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--ink);padding:8px 0}.menu-toggle{display:none;background:none;border:0}.hero{min-height:790px;height:100svh;max-height:1100px;padding:155px 10.8vw 45px;position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero-kicker,.eyebrow,.section-index,.hero-bottom,.stage-label,.screen-top,.screen-foot,.journey-scroll,.project-meta,.tag-row,.resource-type,.contact-side>span,.footer{font-family:var(--mono);font-size:9px;letter-spacing:.12em}.hero-kicker{display:flex;align-items:center;gap:12px;position:absolute;top:135px;left:10.8vw}.status-dot{width:7px;height:7px;border-radius:50%;background:#7e8a5e;box-shadow:0 0 0 4px #7e8a5e22}.kicker-line{height:1px;width:42px;background:var(--line)}.hero-title-wrap{position:relative;z-index:2;margin-top:30px}.eyebrow{letter-spacing:.16em}.eyebrow span{color:var(--olive);padding:0 7px}.hero h1{font-size:clamp(72px,10.5vw,160px);line-height:.91;letter-spacing:-.085em;font-weight:500;margin:28px 0 0;max-width:1000px}.hero h1 em,.about h2 em,.work h2 em,.resources h2 em,.contact h2 em{font-family:var(--serif);font-weight:500;letter-spacing:-.075em}.hero-aside{display:flex;align-items:flex-end;justify-content:space-between;width:min(590px,60%);margin:44px 4vw 0 auto}.hero-aside p{font-size:15px;line-height:1.65;max-width:300px;color:#55594f;margin:0}.round-link{width:54px;height:54px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;transition:background .25s,color .25s}.round-link:hover{background:var(--ink);color:var(--paper)}.hero-bottom{position:absolute;bottom:34px;left:5.4vw;right:5.4vw;display:flex;justify-content:space-between;color:#65685f;font-size:8px}.hero-orbit{position:absolute;right:8%;top:24%;width:185px;height:185px;color:var(--olive);display:grid;place-items:center;opacity:.75}.orbit-ring{position:absolute;inset:0;border:1px solid #85896c;border-radius:50%;border-right-color:transparent;transform:rotate(-30deg)}.orbit-core{width:76px;height:76px;border:1px solid #85896c;border-radius:50%;display:grid;place-items:center}.hero-orbit>span{position:absolute;right:-28px;bottom:-15px;font:8px/1.5 var(--mono);letter-spacing:.1em}.journey{background:#090d18;color:#f1f0e9;position:relative;min-height:330vh;overflow:clip}.journey-intro{height:100vh;min-height:650px;padding:12vh 10.8vw;position:relative;z-index:3}.journey-intro .section-index{color:#a8b5dc}.journey-intro>p{font:clamp(38px,6vw,82px)/1.02 var(--serif);letter-spacing:-.055em;margin:15vh 0 0}.journey-scroll{position:absolute;bottom:12vh;display:flex;gap:12px;align-items:center;color:#a8b5dc}.journey-stage{height:230vh;position:relative;background:radial-gradient(ellipse at 50% 40%,#163eae,#0b1a4d 35%,#070b18 78%);overflow:hidden}.journey-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,#ffffff0c 50%,transparent 50.1%),linear-gradient(#ffffff09 1px,transparent 1px);background-size:100% 100%,100% 100px;pointer-events:none}.stage-label{position:absolute;top:8vh;left:10vw;color:#d7def4;z-index:4}.screen-card{position:absolute;z-index:2;top:17vh;left:10vw;width:min(400px,34vw);height:260px;background:#e9e9e2;color:#171916;box-shadow:0 35px 80px #0008;transform:rotate(-11deg);padding:18px 20px}.screen-top,.screen-foot{display:flex;justify-content:space-between;font-size:7px}.screen-content{display:flex;flex-direction:column;font-size:34px;line-height:.85;font-weight:700;letter-spacing:-.08em;margin-top:30px}.screen-content em{font:italic 42px var(--serif);color:#68724e}.screen-foot{position:absolute;bottom:17px;left:20px;right:20px}.stage-center-copy{position:absolute;top:80vh;left:50%;transform:translate(-50%);text-align:center;z-index:2;width:100%;pointer-events:none}.stage-center-copy span{font:9px var(--mono);letter-spacing:.16em;color:#b7c8ff}.stage-center-copy h2{font:clamp(48px,8vw,100px)/.95 var(--serif);font-weight:500;letter-spacing:-.07em;margin:24px 0}.stage-center-copy h2 em{color:#a9bcff}.astronaut-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1}.astronaut-canvas canvas{display:block;width:100%;height:100%}.journey-caption{position:absolute;bottom:9vh;left:10vw;color:#d5d9e8;font:9px var(--mono);letter-spacing:.1em;z-index:3}.section-pad{padding:145px 10.8vw;position:relative}.section-index{color:#7a8064}.about{min-height:790px;display:grid;grid-template-columns:1fr 2.2fr;gap:30px;overflow:hidden}.about-content{padding-top:2px}.about-content .eyebrow{color:#747966}.about h2,.work h2,.resources h2,.contact h2{font-size:clamp(54px,7.3vw,105px);line-height:.96;letter-spacing:-.08em;font-weight:500;margin:38px 0 0}.about-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;margin-top:62px;max-width:780px}.about-lead{font-size:16px;line-height:1.8;color:#53574f;margin:0}.about-note{border-left:1px solid #9b9e8b;padding-left:22px;display:flex;gap:16px}.note-mark{font-size:20px;color:var(--olive)}.about-note p{font-size:12px;line-height:1.7;color:#65695e;margin:0;max-width:220px}.about-stamp{position:absolute;right:7vw;top:110px;border:1px solid #a1a48e;border-radius:50%;width:105px;height:105px;display:grid;place-content:center;text-align:center;font:8px/1.5 var(--mono);letter-spacing:.12em;color:#747b5c;transform:rotate(12deg)}.about-stamp span{font-size:18px;margin-top:4px}.work{background:#e4e3dc}.work-head{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;margin-bottom:75px}.work h2{margin-top:30px}.work-head>p{max-width:290px;font-size:13px;line-height:1.8;color:#66695f;margin:0 0 8px auto}.project-list{display:grid;grid-template-columns:1fr 1fr;gap:70px 28px}.project-card:nth-child(3){grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr;gap:36px}.project-visual{height:370px;position:relative;overflow:hidden;background:#253f9c}.project-card.olive .project-visual{background:#d5d6c8}.project-card.ink .project-visual{background:#171c24}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff16 1px,transparent 1px),linear-gradient(90deg,#ffffff16 1px,transparent 1px);background-size:42px 42px;opacity:.5}.visual-window{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-5deg);width:72%;height:72%;background:#f1f0e9;box-shadow:0 20px 60px #0003;color:#171916}.window-bar{height:24px;border-bottom:1px solid #d6d6ce;display:flex;align-items:center;gap:4px;padding:0 9px}.window-bar i{width:5px;height:5px;border-radius:50%;background:#a4a69b}.window-bar span{font:6px var(--mono);margin-left:auto;letter-spacing:.1em}.window-art{height:calc(100% - 24px);position:relative;padding:22px;overflow:hidden}.window-art b{font:clamp(21px,3vw,42px)/.9 var(--serif);letter-spacing:-.06em;position:relative;z-index:2}.window-art em{color:#69754c}.visual-orb{position:absolute;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#c5d6ff,#5a79ca 65%,#253f9c);right:-20px;bottom:-45px}.project-card.olive .visual-window{background:#f0f0e7}.product-shape{position:absolute;width:110px;height:145px;right:25px;bottom:-20px;border-radius:48% 48% 8% 8%;background:linear-gradient(130deg,#e4e5d9,#9da58a);box-shadow:inset -14px -5px 20px #68724c44}.project-card.ink .visual-window{background:#e9e9e3}.network-lines{position:absolute;inset:0;background:radial-gradient(circle at 70% 45%,#6474a0 0 4px,transparent 5px),radial-gradient(circle at 55% 65%,#6474a0 0 4px,transparent 5px),radial-gradient(circle at 80% 75%,#6474a0 0 4px,transparent 5px);background-size:100% 100%}.visual-number{position:absolute;bottom:16px;left:18px;font:10px var(--mono);color:#fff}.project-info{padding-top:22px}.project-meta{display:flex;justify-content:space-between;gap:10px;color:#777b6e;font-size:8px}.project-info h3{font:clamp(27px,3vw,40px) var(--serif);letter-spacing:-.04em;font-weight:500;margin:24px 0 10px}.project-info>p{font-size:13px;line-height:1.7;color:#5e6259;max-width:420px}.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}.tag-row span{border:1px solid #b8baad;border-radius:30px;padding:7px 10px;font-size:7px;letter-spacing:.04em;color:#65695e}.resources{background:#f1f0eb}.resources-head{display:flex;justify-content:space-between;align-items:end;margin:35px 0 75px}.resources h2{margin:0}.resources-head>p{font-size:13px;line-height:1.7;color:#686b61;max-width:240px;margin:0 3vw 7px}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.resource-card{padding:28px 25px 35px 0;position:relative;min-height:250px}.resource-card+.resource-card{border-left:1px solid var(--line);padding-left:25px}.resource-type{font-size:8px;color:#7a8064}.resource-card h3{font:26px/1.1 var(--serif);font-weight:500;letter-spacing:-.04em;max-width:210px;margin:35px 0 14px}.resource-card p{font-size:12px;line-height:1.7;color:#686b61;max-width:230px}.resource-star{position:absolute;right:18px;bottom:22px;color:#858b69;font-size:18px}.contact{background:#20251d;color:#f1f0e9;min-height:700px;display:grid;grid-template-columns:1fr 2fr;gap:30px}.contact .section-index{color:#aeb598}.contact-main{padding-top:3px}.contact-main .eyebrow{color:#aeb598}.contact h2{font-size:clamp(65px,9vw,125px);margin:35px 0 25px}.contact h2 em{color:#c1c8a7}.contact-main>p{font-size:14px;line-height:1.7;color:#c3c6ba;max-width:350px}.contact-button{display:inline-flex;align-items:center;gap:28px;border:1px solid #aeb598;padding:16px 20px;margin-top:25px;font-size:12px;transition:background .2s,color .2s}.contact-button:hover{background:#e7e8dc;color:#20251d}.contact-side{grid-column:2;display:flex;flex-direction:column;gap:13px;align-self:end;margin-top:90px}.contact-side>span{font-size:8px;color:#aeb598}.contact-side>a{font:clamp(18px,2.3vw,27px) var(--serif);display:flex;align-items:center;gap:10px;margin-bottom:30px}.footer{background:#20251d;color:#aeb598;border-top:1px solid #ffffff25;padding:24px 5.4vw;display:flex;align-items:center;justify-content:space-between;font-size:8px}.footer .wordmark{color:#f1f0e9;font-family:DM Sans;font-size:20px;letter-spacing:-2px}.footer>a:last-child{color:#f1f0e9}@media(max-width:800px){.site-header{height:68px;padding:0 6vw}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:25px 6vw;flex-direction:column;gap:22px;margin:0;border-bottom:1px solid var(--line)}.nav-links.is-open{display:flex}.header-cta{margin-left:auto;margin-right:20px}.menu-toggle{display:block;padding:4px}.hero{min-height:720px;padding:140px 7vw 55px}.hero-kicker{left:7vw;top:115px;font-size:8px}.hero h1{font-size:clamp(65px,14vw,110px)}.hero-aside{width:90%;margin:36px 0 0 auto}.hero-aside p{font-size:13px;max-width:250px}.hero-orbit{right:4%;top:20%;width:120px;height:120px;opacity:.35}.orbit-core{width:52px;height:52px}.hero-bottom{left:7vw;right:7vw;font-size:7px}.hero-bottom span:nth-child(2){display:none}.journey{min-height:280vh}.journey-intro{min-height:580px;padding:12vh 7vw}.journey-intro>p{margin-top:18vh}.journey-stage{height:200vh}.screen-card{width:70vw;height:220px;left:8vw;top:12vh}.stage-center-copy{top:72vh}.journey-caption{left:7vw}.section-pad{padding:100px 7vw}.about{display:block;min-height:auto;padding-bottom:120px}.about-content{margin-top:55px}.about h2,.work h2,.resources h2{font-size:clamp(54px,11vw,82px)}.about-stamp{right:7vw;top:85px;width:78px;height:78px;font-size:6px}.about-bottom{grid-template-columns:1fr;gap:25px;margin-top:40px}.about-lead{font-size:14px}.work-head{grid-template-columns:1fr;gap:25px;margin-bottom:45px}.work-head>p{margin:0;max-width:340px}.project-list{grid-template-columns:1fr;gap:45px}.project-card:nth-child(3){grid-column:auto;display:block}.project-visual{height:300px}.project-meta{font-size:7px}.resources-head{display:block;margin:35px 0 45px}.resources-head>p{margin:24px 0 0}.resource-grid{grid-template-columns:1fr}.resource-card,.resource-card+.resource-card{border-left:0;border-bottom:1px solid var(--line);padding:25px 0;min-height:200px}.resource-card h3{margin-top:28px}.contact{display:block;min-height:650px}.contact-main{padding-top:55px}.contact h2{font-size:clamp(65px,13vw,100px)}.contact-side{margin-top:80px}.footer{padding:22px 7vw}.footer span{font-size:7px}}@media(max-width:420px){.hero-bottom span:last-child{display:none}.hero-aside{width:100%}.round-link{width:46px;height:46px}.project-visual{height:250px}.project-meta{flex-direction:column}.stage-center-copy h2{font-size:48px}}html{overflow-x:clip;scroll-padding-top:88px}body{min-width:320px;overflow-x:clip}main{min-width:0}main:focus{outline:none}.skip-link{position:fixed;left:16px;top:12px;z-index:1000;padding:12px 16px;background:var(--ink);color:var(--paper);transform:translateY(-160%);transition:transform .18s ease}.skip-link:focus{transform:translateY(0)}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid #53613c;outline-offset:4px}.menu-toggle{min-width:44px;min-height:44px;align-items:center;justify-content:center;cursor:pointer}.astronaut-scene-shell{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:hidden;pointer-events:none}.astronaut-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.astronaut-canvas-surface{position:absolute;inset:0;width:100%;height:100%}.astronaut-canvas canvas{display:block;width:100%;height:100%;pointer-events:none;touch-action:pan-y}.scene-loading,.astronaut-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center;padding:24px;color:#dce4ff;background:radial-gradient(ellipse at 50% 45%,#173b91,#0a1535 46%,#070b18 78%);font:10px var(--mono);letter-spacing:.1em}.scene-loading--idle{opacity:.96}.astronaut-fallback p{margin:0;color:#f1f3fa}.astronaut-fallback>span{max-width:280px;color:#b9c7eb;font-size:9px;line-height:1.7}.fallback-planet{width:112px;height:112px;border:1px solid #b9caff88;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 55px #416bff55,inset 0 0 35px #416bff33;position:relative}.fallback-planet:before,.fallback-planet:after{content:"";position:absolute;border:1px solid #c8d7ff99;border-radius:50%;width:150px;height:42px;transform:rotate(-28deg)}.fallback-planet:after{transform:rotate(42deg);width:138px;height:34px}.fallback-planet span{width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#fff,#aab6cb 70%,#596c92);box-shadow:inset -9px -8px 14px #27324e}.visual-caption{position:absolute;right:14px;bottom:14px;padding:7px 9px;background:#1118;color:#fff;font:8px var(--mono);letter-spacing:.1em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.project-visual{min-width:0}.resource-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding-bottom:5px;border-bottom:1px solid #858b69;color:#42483a;font-size:11px;transition:gap .2s ease,color .2s ease}.resource-link:hover{gap:13px;color:#171916}.resource-link:focus-visible{outline-offset:5px}.footer-links{display:flex;align-items:center;gap:20px}.footer-links a{display:inline-flex;align-items:center;gap:4px;color:#f1f0e9}.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}@media(max-width:800px){.astronaut-scene-shell{inset:0}.stage-center-copy{top:60vh}.footer{gap:18px;flex-wrap:wrap}.footer-links{gap:14px;flex-wrap:wrap;justify-content:flex-end}.resource-link{min-height:36px}}@media(max-width:520px){.site-header{gap:10px}.header-cta{font-size:11px;margin-right:4px;gap:6px}.menu-toggle{padding:8px;margin-right:-8px}.hero{min-height:680px;height:100svh;padding-top:128px}.hero h1{font-size:clamp(58px,13vw,82px);overflow-wrap:normal}.hero-kicker{top:105px}.hero-aside{gap:18px}.hero-aside p{max-width:245px}.journey-intro{min-height:520px}.journey-stage{height:220vh;min-height:1100px}.screen-card{width:min(78vw,330px);height:205px;padding:15px}.screen-content{font-size:29px;margin-top:24px}.screen-content em{font-size:36px}.screen-foot{left:15px;right:15px;bottom:14px}.stage-center-copy{top:58vh;padding:0 12px}.stage-center-copy h2{font-size:clamp(43px,11vw,58px)}.journey-caption{font-size:8px;max-width:70vw;line-height:1.6}.about-stamp{top:78px;right:6vw}.about-content{margin-top:72px}.project-visual{height:260px}.project-info{min-width:0}.project-meta{align-items:flex-start}.contact-side>a{font-size:clamp(16px,4.5vw,23px);overflow-wrap:anywhere}.footer{align-items:flex-start}.footer-links{width:100%;justify-content:space-between;gap:10px}.footer-links a{font-size:8px}}@media(max-width:360px){.hero h1{font-size:56px}.header-cta{font-size:10px}.hero-bottom{font-size:6px}.project-visual{height:225px}.tag-row span{font-size:7px;padding:6px 8px}.footer-links{gap:8px}}@media(hover:none){.nav-links a:hover,.resource-link:hover,.contact-button:hover{color:inherit}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.project-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px}.project-links a{display:inline-flex;align-items:center;gap:6px;padding-bottom:5px;border-bottom:1px solid var(--ink);font-size:11px;font-weight:600;transition:opacity .2s}.project-links a:hover{opacity:.6}.project-links a:focus-visible{outline:2px solid var(--olive);outline-offset:4px}
