@font-face{font-family:Inter;src:url('./assets/inter-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#f5f4f0;--ink:#101010;--white:#fff;--solar:#ddf279;--solar-hover:#e5f79c;--secondary:#b6b5af;--line:rgb(245 244 240/.19);--font:Inter,Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--ease:cubic-bezier(.16,1,.3,1);--ease-ui:cubic-bezier(.2,.7,.3,1);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
/* Native page scrollbar; the terminal keeps its own green scroll surfaces. */
html{--scroll-track:#0d0f0d;--scroll-thumb:#879579;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:auto}
@media(hover:hover) and (pointer:fine) and (forced-colors:none){
  @supports selector(::-webkit-scrollbar){
    html{scrollbar-color:auto}
    html::-webkit-scrollbar{width:14px;height:14px}
    html::-webkit-scrollbar-track{background:var(--scroll-track);border-left:1px solid #272d24}
    html::-webkit-scrollbar-thumb{min-height:56px;min-width:56px;background:var(--scroll-thumb);border:3px solid var(--scroll-track);border-radius:5px}
    html::-webkit-scrollbar-thumb:hover{background:var(--solar)}
    html::-webkit-scrollbar-thumb:active{background:var(--solar-hover)}
    html::-webkit-scrollbar-corner{background:var(--scroll-track)}
    html::-webkit-scrollbar-button{display:none}
  }
}
@media(forced-colors:active){html{scrollbar-color:auto;scrollbar-width:auto}}
body{margin:0;background:#000;color:var(--ink);font:400 1rem/1.6 var(--font);-webkit-font-smoothing:antialiased}
button,a,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}figure,p,h1,h2{margin:0}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button,summary,a{-webkit-user-select:none;user-select:none}textarea{user-select:text}::selection{background:var(--solar);color:var(--ink)}
:focus-visible{outline:2px solid var(--solar);outline-offset:6px}.nav-shell :focus-visible{outline-color:#596622}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;z-index:100;left:24px;top:8px;transform:translateY(-200%);padding:12px 18px;background:var(--solar);border-radius:6px;font-weight:600}.skip-link:focus{transform:none}
.page-shell{position:relative;width:100%;margin:0;padding:0}
.hero{position:relative;isolation:isolate;min-height:max(820px,100svh);overflow:hidden;border-radius:0;background:#000;color:var(--paper)}
.site-nav{position:absolute;z-index:20;top:20px;left:36px;right:36px}
.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:10px 12px 10px 24px;background:rgb(245 244 240/.91);border:1px solid rgb(255 255 255/.4);border-radius:12px;box-shadow:0 3px 1px rgb(0 0 0/.03),0 14px 50px rgb(0 0 0/.14),inset 0 1px 0 #fff;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.brand{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.875rem;line-height:1.1;font-weight:650;letter-spacing:-.035em;white-space:nowrap}.brand-slash{font-size:1.4rem;font-weight:400;color:#6c6e60;transition:color 240ms,transform 400ms var(--ease)}.brand:hover .brand-slash{color:var(--ink);transform:translateX(3px)}
.nav-caption{font:400 .6875rem/1.5 var(--mono);letter-spacing:.065em;color:#55564f}
.nav-actions{display:flex;gap:8px;align-items:center}.nav-contact{min-height:44px;display:flex;gap:22px;align-items:center;padding:0 18px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:7px;font-size:.875rem;font-weight:500;transition:background 240ms,border-color 240ms,box-shadow 240ms}.nav-contact svg{width:18px;height:18px;transition:transform 260ms var(--ease)}.nav-contact:hover{background:#32332c;box-shadow:0 4px 12px rgb(16 16 16/.15)}.nav-contact:hover svg{transform:translate(2px,-2px)}.nav-shell .nav-contact:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px var(--ink)}
.nav-disclosure{position:relative}.menu-toggle{display:flex;align-items:center;justify-content:center;gap:12px;list-style:none;min-height:44px;min-width:44px;padding:0 12px;border:1px solid transparent;border-radius:7px;cursor:pointer;transition:background 200ms,border-color 200ms}.menu-toggle::-webkit-details-marker{display:none}.menu-toggle:hover,.nav-disclosure[open] .menu-toggle{background:rgb(16 16 16/.055);border-color:rgb(16 16 16/.07)}.menu-word{font-size:.8125rem}.menu-lines{position:relative;display:block;width:18px;height:14px}.menu-lines i{position:absolute;left:0;right:0;height:1.5px;background:var(--ink);top:3px;transition:transform 220ms var(--ease),top 220ms}.menu-lines i+i{top:10px}.nav-disclosure[open] .menu-lines i{top:6px;transform:rotate(45deg)}.nav-disclosure[open] .menu-lines i+i{transform:rotate(-45deg)}
.nav-panel{position:absolute;top:calc(100% + 22px);right:-12px;display:grid;width:300px;padding:24px;background:rgb(245 244 240/.97);border:1px solid #deded6;border-radius:12px;box-shadow:0 16px 44px rgb(0 0 0/.2);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);transform-origin:top right;animation:menu-in 240ms var(--ease)}.menu-eyebrow{font:400 .6875rem/1.5 var(--mono);letter-spacing:.08em;color:#67685d;margin-bottom:18px}.nav-panel a,.menu-motion{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;font-size:1rem;border:0;background:none;padding:4px 0;text-align:left}.nav-panel a svg,.menu-motion svg{width:18px;height:18px;transition:transform 240ms var(--ease)}.nav-panel a:hover svg{transform:translateX(3px)}.nav-panel a:hover{color:#56621d}.menu-divider{height:1px;margin:16px 0 8px;background:#dadbd2}.menu-motion{font-size:.8125rem;color:#55564f}
.hero-portrait{position:absolute;z-index:-2;left:38.889%;top:-120px;width:63.889%;pointer-events:none}.hero-portrait img{display:block;width:100%;height:auto;max-width:none}.hero-portrait::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000 0%,transparent 17%),linear-gradient(0deg,#000 0%,transparent 20%)}
.hero-content{position:relative;z-index:1;width:68%;padding:170px 0 140px 4.65%}.eyebrow{font:400 .75rem/1.5 var(--mono);letter-spacing:.1em;color:var(--secondary);display:flex;align-items:center;gap:12px}.eyebrow-rule{width:28px;height:1px;background:#8a8b80;display:inline-block}
.hero-title{font-size:clamp(3.75rem,5.78vw,6.9rem);font-weight:500;line-height:1.035;letter-spacing:-.065em;margin-top:34px}.title-line{display:block;white-space:nowrap}.title-emphasis{position:relative;display:inline-block}.title-emphasis::after{content:'';position:absolute;left:3px;right:1px;bottom:-9px;height:1px;background:linear-gradient(90deg,#d5d7ca,transparent);transform-origin:left;animation:rule-in 900ms 450ms var(--ease) both}
.hero-description{max-width:450px;margin-top:38px;font-size:1.0625rem;line-height:1.7;letter-spacing:-.016em;color:#b9bab3}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:30px}.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-height:60px;padding:9px 10px 9px 23px;border-radius:7px;border:1px solid transparent;font-size:.9375rem;font-weight:550;line-height:1.4;transition:background 220ms var(--ease-ui),box-shadow 260ms var(--ease),transform 220ms var(--ease);--shine-x:50%}.btn::before{content:'';position:absolute;z-index:-1;inset:0;opacity:0;background:radial-gradient(ellipse at var(--shine-x) 0%,rgb(255 255 255/.75),transparent 72%);transition:opacity 240ms}.btn::after{content:'';position:absolute;z-index:-1;top:-80%;left:-55%;width:35%;height:260%;background:linear-gradient(90deg,transparent,rgb(255 255 255/.5),transparent);transform:rotate(25deg) translateX(-150%);pointer-events:none}.btn:hover::before{opacity:.6}.btn:hover::after{animation:button-shine 760ms var(--ease-ui)}.btn:active{transform:translateY(1px) scale(.985)}.btn-solar{background:var(--solar);color:var(--ink);min-width:300px}.btn-solar:hover{background:var(--solar-hover);box-shadow:0 0 0 4px rgb(221 242 121/.08),0 10px 35px rgb(221 242 121/.13);transform:translateY(-2px)}.btn-solar:active{transform:translateY(1px) scale(.985)}.button-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgb(16 16 16/.16);border-radius:4px;transition:background 240ms,color 240ms}.button-icon svg{width:21px;height:21px;transition:transform 300ms var(--ease)}.btn:hover .button-icon{background:var(--ink);color:var(--solar)}.btn:hover .button-icon svg{transform:translate(1px,-1px)}
.hero-bottom{position:absolute;bottom:26px;left:4.65%;right:4.65%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:22px}.hero-signal{position:absolute;top:0;left:0;right:0;height:1px;background:var(--line);overflow:hidden}.hero-signal span{display:block;position:absolute;left:0;top:0;width:18%;height:1px;background:linear-gradient(90deg,transparent,#dedfd4,transparent);animation:beam-travel 16s linear infinite}.hero-disciplines{display:flex;gap:20px;font-size:.8125rem;letter-spacing:-.01em;color:#b7b8b0}.hero-disciplines span[aria-hidden]{color:#686b61}.hero-signature{display:flex;gap:28px;align-items:center;font-size:.8125rem;color:#a3a59a}.motion-toggle{display:flex;gap:6px;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 10px;border:1px solid rgb(245 244 240/.2);border-radius:7px;background:rgb(0 0 0/.2);color:var(--paper);transition:background 240ms,border-color 240ms}.motion-toggle svg{width:18px;height:18px}.motion-toggle:hover{background:rgb(255 255 255/.08);border-color:rgb(245 244 240/.45)}.motion-label{font-size:.75rem}
.animate-on-scroll{animation:content-in 700ms var(--enter-delay,0ms) var(--ease) backwards}
@keyframes content-in{from{opacity:.5;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes rule-in{from{transform:scaleX(.2);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes beam-travel{0%{transform:translateX(-110%);opacity:0}5%,90%{opacity:.7}100%{transform:translateX(650%);opacity:0}}@keyframes button-shine{from{transform:rotate(25deg) translateX(-150%)}to{transform:rotate(25deg) translateX(650%)}}@keyframes menu-in{from{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:none}}
@supports not (backdrop-filter:blur(20px)){.nav-shell,.nav-panel{background:var(--paper)}}
@media(min-width:1600px){.hero-content{padding-top:190px}.hero-title{font-size:clamp(6rem,5.7vw,6.9rem)}.hero{min-height:960px}.hero-description{font-size:1.1875rem;max-width:510px}.hero-actions{margin-top:34px}}
@media(max-width:1100px) and (min-width:701px){.hero{min-height:800px}.hero-content{padding-top:165px;width:75%}.hero-title{font-size:clamp(3.3rem,6.2vw,4.5rem)}.hero-description{max-width:390px;font-size:1rem}.hero-portrait{left:32%;width:82%;top:-10px}.hero-portrait::after{background:linear-gradient(90deg,#000 0%,rgb(0 0 0/.32) 24%,transparent 48%),linear-gradient(0deg,#000,transparent 28%)}.nav-caption{display:none}.hero-signature>span{display:none}.hero-disciplines{gap:14px}}
@media(max-width:700px){.page-shell{margin:0;padding:0}.hero{border-radius:0;min-height:0;padding-bottom:26px}.site-nav{top:10px;left:18px;right:18px}.nav-shell{min-height:58px;padding:6px 7px 6px 14px;gap:10px;border-radius:10px;background:rgb(245 244 240/.94)}.brand{font-size:.75rem;gap:6px}.brand-slash{font-size:1.2rem}.nav-caption,.nav-contact,.menu-word{display:none}.menu-toggle{padding:0 10px}.nav-panel{top:calc(100% + 18px);right:-7px;width:min(320px,calc(100vw - 36px));padding:22px}.hero-portrait{position:relative;z-index:-1;top:auto;left:auto;width:100%;height:310px;margin-top:76px;overflow:hidden}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}.hero-portrait::after{background:linear-gradient(0deg,#000 0%,rgb(0 0 0/.45) 9%,transparent 30%)}.hero-content{width:100%;padding:18px 24px 0}.eyebrow{font-size:.65625rem;letter-spacing:.08em;gap:10px}.eyebrow-rule{width:19px}.hero-title{font-size:clamp(2.25rem,7.8vw,3.4rem);line-height:1.09;letter-spacing:-.055em;margin-top:24px}.title-line{white-space:normal}.hero-description{font-size:1rem;line-height:1.65;max-width:520px;margin-top:27px}.hero-actions{margin-top:24px}.btn-solar{width:100%;min-width:0;min-height:58px;font-size:.875rem;padding-left:18px;gap:14px}.hero-bottom{position:relative;bottom:auto;left:auto;right:auto;display:flex;flex-wrap:wrap;margin:36px 24px 0;padding-top:16px;gap:14px}.hero-disciplines{font-size:.6875rem;gap:9px}.hero-signature{gap:0;margin-left:auto}.hero-signature>span{display:none}.motion-toggle{border:0;padding:0;min-width:44px}.motion-label{display:none}}
@media(max-width:359px){.hero-content{padding-inline:18px}.hero-title{font-size:2.2rem}.hero-portrait{height:280px}.hero-bottom{margin-inline:18px}.hero-disciplines{gap:6px;font-size:.65625rem}.brand{font-size:.6875rem}.btn-solar{font-size:.8125rem;gap:8px;padding-left:14px}}
@media(prefers-reduced-transparency:reduce){.nav-shell,.nav-panel{background:var(--paper);backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.btn:hover,.btn:active{transform:none}}
.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation:none!important;transition:none!important}.motion-paused .btn:hover,.motion-paused .btn:active{transform:none}.page-hidden *,.page-hidden *::before,.page-hidden *::after{animation-play-state:paused!important}
@media(forced-colors:active){.btn,.nav-shell,.motion-toggle{border:1px solid ButtonText}.hero-portrait{opacity:.35}.hero-signal{background:CanvasText}}

/* Final optical refinements: quiet navigation, stable type reflow, generous portrait. */
.nav-shell{color:var(--paper);background:rgb(24 25 22/.72);border-color:rgb(245 244 240/.18);box-shadow:0 12px 40px rgb(0 0 0/.12),inset 0 1px 0 rgb(255 255 255/.055)}
.brand-slash{color:#a4a798}.brand:hover .brand-slash{color:var(--solar)}
.nav-caption{color:#acafa4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:38%;font-size:.75rem}
.nav-contact{background:rgb(245 244 240/.075);border-color:rgb(245 244 240/.17);color:var(--paper)}.nav-contact:hover{background:rgb(245 244 240/.15);box-shadow:0 4px 16px rgb(0 0 0/.12)}
.nav-shell :focus-visible{outline-color:var(--solar)}.nav-panel{color:var(--ink)}.nav-panel :focus-visible{outline-color:#596622}
.menu-lines i{background:currentColor}.menu-toggle:hover,.nav-disclosure[open] .menu-toggle{background:rgb(245 244 240/.07);border-color:rgb(245 244 240/.12)}
.title-line{white-space:normal}.hero-description{max-width:500px}.motion-toggle{background:rgb(0 0 0/.75)}
@media(min-width:701px){.hero-title{max-width:92%}}
@media(max-width:700px){.nav-shell{background:rgb(24 25 22/.83)}.hero-portrait img{width:128.205%;height:auto;object-fit:initial;position:absolute;left:-12.82%;top:-127px}.hero-description{max-width:520px}.motion-label{display:inline;font-size:.6875rem}.motion-toggle{gap:5px;padding:0 4px;background:transparent}}
@media(min-width:501px) and (max-width:700px){.hero-portrait{height:380px}.hero-portrait img{width:100%;left:0;top:-170px}}
@media(max-width:359px){.hero-portrait img{top:-108px}}
@supports not (backdrop-filter:blur(20px)){.nav-shell{background:#1b1c19}.nav-panel{background:var(--paper)}}
@media(prefers-reduced-transparency:reduce){.nav-shell{background:#1b1c19}.nav-panel{background:var(--paper)}}

@media(max-width:1100px) and (min-width:701px){.hero{min-height:max(800px,100svh)}}
@media(max-width:700px){.hero-portrait img{left:0;top:0;transform:translate(-16%,-12%)}.hero-title{font-size:clamp(2.5rem,9.6vw,3.4rem);line-height:1.06}.eyebrow{font-size:.75rem;letter-spacing:.045em}.brand{font-size:.8125rem}.hero-disciplines{font-size:.75rem;gap:8px}.motion-label{font-size:.75rem}}
@media(max-width:359px){.hero-content{padding-inline:18px}.hero-title{font-size:2.2rem}.hero-portrait{height:252px}.hero-disciplines{gap:6px}.brand{font-size:.75rem}.hero-description{font-size:1rem}}
