:root{--bg:#0b0c0d;--surface:#111315;--surface-2:#181b1d;--text:#eeeae1;--muted:#92958e;--line:rgba(238,234,225,.15);--lime:#c7f36b;--lime-soft:#e0ff99;--blue:#3654e8;--pad:clamp(1.25rem,5vw,6.5rem);--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'Manrope',Arial,sans-serif;line-height:1.5;overflow-x:hidden}body:before{content:'';position:fixed;inset:0;z-index:-3;background:radial-gradient(circle at 74% 4%,rgba(199,243,107,.07),transparent 26%),radial-gradient(circle at 20% 45%,rgba(54,84,232,.07),transparent 28%)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}.noise{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}.cursor-glow{position:fixed;z-index:0;width:20rem;height:20rem;border-radius:50%;background:radial-gradient(circle,rgba(199,243,107,.07),transparent 68%);transform:translate(-50%,-50%);pointer-events:none;transition:opacity .4s}.site-header{position:fixed;top:0;left:0;right:0;z-index:15;display:flex;align-items:center;justify-content:space-between;padding:1.35rem var(--pad);mix-blend-mode:normal;transition:background .3s,padding .3s}.site-header.is-scrolled{background:rgba(11,12,13,.82);backdrop-filter:blur(16px);padding-top:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:.7rem;font-size:.76rem;letter-spacing:.2em;font-weight:800}.brand-dot{color:var(--lime)}.brand-mark{display:flex;align-items:end;gap:2px;height:1.05rem}.brand-mark span{display:block;width:3px;border-radius:2px;background:var(--lime)}.brand-mark span:nth-child(1){height:45%}.brand-mark span:nth-child(2){height:80%}.brand-mark span:nth-child(3){height:100%}.site-nav{display:flex;align-items:center;gap:2.2rem;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.site-nav a{color:var(--muted);transition:color .2s}.site-nav a:hover,.site-nav a:focus-visible{color:var(--text)}.site-nav a span{color:#5d615c;margin-left:.2rem;font-size:.58rem}.site-nav .nav-cta{color:var(--bg);background:var(--lime);padding:.75rem 1.1rem;border-radius:2rem;font-weight:700}.site-nav .nav-cta:hover{color:var(--bg);background:var(--lime-soft)}.menu-toggle{display:none;background:none;border:0;cursor:pointer;align-items:center;gap:.6rem;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.menu-toggle i{display:block;width:1.5rem;height:1rem;border-top:1px solid var(--text);border-bottom:1px solid var(--text);position:relative}.menu-toggle i:after{content:'';position:absolute;left:0;right:0;top:50%;border-top:1px solid var(--text)}.section-pad{padding-left:var(--pad);padding-right:var(--pad)}.hero{min-height:100svh;padding-top:10rem;padding-bottom:3.2rem;position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero:after{content:'L';position:absolute;right:-4vw;bottom:-17vw;font-size:min(65vw,58rem);font-weight:800;line-height:.75;color:rgba(238,234,225,.025);pointer-events:none}.hero-content{max-width:59rem;position:relative;z-index:2}.eyebrow{font-family:'DM Mono',monospace;font-size:.65rem;letter-spacing:.14em;color:var(--muted);margin:0 0 2.3rem;text-transform:uppercase}.status-dot{display:inline-block;width:.42rem;height:.42rem;border-radius:50%;background:var(--lime);margin:0 .5rem .05rem 0;box-shadow:0 0 0 .25rem rgba(199,243,107,.08)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.2rem,8.7vw,8.2rem);line-height:.93;letter-spacing:-.085em;margin-bottom:2.2rem;font-weight:700}h1 em,h2 em{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.06em;color:var(--lime)}.hero-lede{max-width:29rem;color:var(--muted);font-size:clamp(.95rem,1.35vw,1.1rem);line-height:1.75}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.8rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.6rem;border:0;cursor:pointer;font-size:.72rem;letter-spacing:.07em;transition:transform .2s,background .2s,color .2s}.button-primary{background:var(--lime);color:var(--bg);padding:1rem 1.25rem 1rem 1.4rem;border-radius:2rem;font-weight:700}.button-primary:hover,.button-primary:focus-visible{background:var(--lime-soft)}.button span{font-size:1.15rem;line-height:.5}.text-link{font-size:.73rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:.4rem;transition:color .2s,border-color .2s}.text-link span{color:var(--lime);margin-left:.5rem}.text-link:hover,.text-link:focus-visible{color:var(--text);border-color:var(--lime)}.hero-signal{position:absolute;right:13%;top:34%;display:flex;align-items:center;gap:1.5rem;color:var(--muted);font-family:'DM Mono',monospace;font-size:.6rem;line-height:1.5}.hero-signal p{margin:0}.hero-signal strong{font-size:1.9rem;color:var(--text);font-weight:400}.signal-ring{width:7.5rem;height:7.5rem;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;text-align:center;color:var(--lime);font-size:.65rem;position:relative}.signal-ring:before,.signal-ring:after{content:'';position:absolute;border:1px solid rgba(199,243,107,.3);border-radius:50%}.signal-ring:before{inset:.75rem}.signal-ring:after{inset:-.6rem;border-style:dashed;animation:spin 18s linear infinite}.hero-orbit{position:absolute;border:1px solid rgba(199,243,107,.12);border-radius:50%;pointer-events:none}.orbit-one{width:48rem;height:48rem;right:-19rem;top:-12rem}.orbit-two{width:31rem;height:31rem;right:-3rem;top:3rem;border-color:rgba(54,84,232,.18)}.hero-bottom{position:absolute;bottom:2.5rem;left:var(--pad);right:var(--pad);display:flex;align-items:center;gap:1rem;color:#666a65;font: .58rem 'DM Mono',monospace;letter-spacing:.13em}.scroll-line{height:1px;width:5.5rem;background:var(--line);position:relative}.scroll-line:after{content:'';position:absolute;width:1.4rem;left:0;top:0;border-top:1px solid var(--lime);animation:scan 2.4s ease-in-out infinite}.hero-bottom span:last-child{margin-left:auto}.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap;padding:.95rem 0;color:var(--muted);font: .67rem 'DM Mono',monospace;letter-spacing:.15em}.marquee-track{display:flex;gap:2rem;align-items:center;width:max-content;animation:marquee 24s linear infinite}.marquee b{color:var(--lime);font-size:1rem}.section-intro{display:grid;grid-template-columns:1fr 2fr;gap:2rem;padding-bottom:4rem;border-bottom:1px solid var(--line)}.section-intro .eyebrow{margin:0}.section-intro h2{font-size:clamp(2.5rem,5.6vw,5.8rem);line-height:.94;letter-spacing:-.08em;margin-bottom:1.8rem}.section-intro h2 span{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--muted)}.section-intro p:not(.eyebrow){max-width:24rem;color:var(--muted);line-height:1.7;font-size:.94rem}.work{padding-top:9rem;padding-bottom:9rem}.filter-row{display:flex;gap:1.8rem;padding:1.35rem 0 2.4rem}.filter-button{background:none;border:0;padding:0;color:#60645f;cursor:pointer;font: .65rem 'DM Mono',monospace;letter-spacing:.08em}.filter-button span{font-size:.55rem;margin-left:.3rem}.filter-button:after{content:'';display:block;width:0;border-bottom:1px solid var(--lime);transition:width .25s}.filter-button.is-active{color:var(--text)}.filter-button.is-active:after{width:100%;margin-top:.4rem}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 1.8rem}.project-card-wide{grid-column:span 2}.project-trigger{display:block;text-align:left;border:0;background:none;padding:0;width:100%;cursor:pointer}.project-visual{aspect-ratio:1.52;position:relative;overflow:hidden;border:1px solid var(--line);transition:border-color .3s,transform .3s}.project-card:not(.is-hidden) .project-trigger:hover .project-visual{border-color:rgba(199,243,107,.65);transform:translateY(-.3rem)}.visual-label{position:absolute;left:1.2rem;top:1.1rem;color:rgba(238,234,225,.55);font: .6rem 'DM Mono',monospace;letter-spacing:.1em;z-index:2}.visual-aurora{background:linear-gradient(140deg,#18201a,#405a26 55%,#181c17);isolation:isolate}.visual-aurora:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 62% 43%,rgba(218,255,117,.7),transparent 17%),radial-gradient(ellipse at 58% 50%,rgba(177,236,97,.25),transparent 34%),linear-gradient(120deg,transparent 37%,rgba(226,255,170,.2) 50%,transparent 64%);filter:blur(14px)}.aurora-sphere{position:absolute;width:45%;aspect-ratio:1;border-radius:50%;right:19%;top:18%;background:radial-gradient(circle at 35% 25%,#f4ffd5, #b9ef70 20%,#557a37 54%,transparent 70%);filter:blur(1px);opacity:.8}.visual-window{position:absolute;z-index:1;left:8%;bottom:11%;width:38%;background:rgba(13,19,13,.65);border:1px solid rgba(224,255,153,.3);padding:1.1rem;color:var(--lime-soft);backdrop-filter:blur(10px)}.visual-window span,.project-type{font:.55rem 'DM Mono',monospace;letter-spacing:.1em;color:rgba(238,234,225,.55)}.visual-window strong{display:block;font-size:clamp(1.1rem,2.7vw,2.5rem);line-height:.95;letter-spacing:-.07em;margin-top:1.5rem}.visual-window i{position:absolute;right:1rem;bottom:1rem;font-style:normal}.visual-cobalt{background:#101a51}.cobalt-grid{position:absolute;inset:0;background:linear-gradient(rgba(199,243,107,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(199,243,107,.1) 1px,transparent 1px);background-size:2rem 2rem;transform:perspective(400px) rotateX(60deg) scale(1.7);transform-origin:center bottom;opacity:.45}.mini-dashboard{position:absolute;left:15%;top:15%;right:13%;bottom:13%;background:#e2e6d4;color:#131a35;padding:1.4rem;display:flex;flex-direction:column;box-shadow:1.5rem 1.5rem 0 rgba(0,0,0,.18);transform:rotate(-3deg)}.mini-dashboard span{font:.53rem 'DM Mono',monospace}.mini-dashboard strong{font-size:clamp(1.6rem,4vw,3.5rem);line-height:.87;letter-spacing:-.09em;margin:auto 0}.accent{color:#ff6548}.mini-bar{width:75%;border-top:4px solid #131a35}.mini-dashboard small{font:.5rem 'DM Mono',monospace;margin-top:.7rem}.visual-lime{background:var(--lime);color:#151813}.lime-type{position:absolute;left:10%;top:18%;font-size:clamp(2.6rem,7vw,6.5rem);font-weight:800;line-height:.73;letter-spacing:-.1em}.lime-type i{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.1em}.lime-orbit{position:absolute;width:47%;aspect-ratio:1;border:1px solid rgba(21,24,19,.5);border-radius:50%;right:9%;top:10%}.lime-orbit:after{content:'';position:absolute;inset:17%;border:1px solid rgba(21,24,19,.35);border-radius:50%}.lime-caption{position:absolute;right:8%;bottom:10%;font:.58rem 'DM Mono',monospace}.project-meta{display:flex;justify-content:space-between;align-items:flex-start;padding-top:1.15rem}.project-meta h3{font-size:1.35rem;letter-spacing:-.05em;margin:.35rem 0 0}.project-arrow{font-size:1.35rem;color:var(--lime);transition:transform .2s}.project-trigger:hover .project-arrow{transform:translate(3px,-3px)}.project-detail{max-width:40rem;border-bottom:1px solid var(--line);padding:1.3rem 0 0;color:var(--muted);font-size:.85rem}.project-detail p{max-width:30rem}.project-detail dl{display:flex;gap:2rem;margin:1.5rem 0 0;border-top:1px solid var(--line);padding-top:1rem}.project-detail dl div{display:grid;gap:.2rem}.project-detail dt{font:.55rem 'DM Mono',monospace;color:#656963;text-transform:uppercase}.project-detail dd{margin:0;font-size:.72rem;color:var(--text)}.project-card.is-hidden{display:none}.services{padding-top:8rem;padding-bottom:9rem;background:var(--surface)}.service-list{padding-top:1rem}.service-item{display:grid;grid-template-columns:4rem 1.2fr 2fr 2rem;gap:1rem;align-items:center;padding:1.7rem 0;border-bottom:1px solid var(--line)}.service-number{font: .65rem 'DM Mono',monospace;color:var(--lime)}.service-item h3{font-size:clamp(1.15rem,2vw,1.7rem);margin:0;letter-spacing:-.04em}.service-item p{color:var(--muted);font-size:.85rem;max-width:27rem;margin:0}.service-icon{color:var(--lime);font-size:1.2rem}.process{padding-top:9rem;padding-bottom:10rem;display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(3rem,10vw,10rem)}.process-copy h2{font-size:clamp(2.8rem,6vw,6rem);letter-spacing:-.08em;line-height:.9;margin-bottom:2rem}.process-copy>p:not(.eyebrow){color:var(--muted);font-size:.95rem;max-width:23rem;line-height:1.8;margin-bottom:2.5rem}.process-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process-list li{display:grid;grid-template-columns:2.5rem 1fr 1rem;gap:1rem;padding:1.5rem 0;border-bottom:1px solid var(--line);align-items:start}.process-list li>span{font: .63rem 'DM Mono',monospace;color:var(--lime)}.process-list h3{font-size:1.2rem;margin:0 0 .4rem;letter-spacing:-.04em}.process-list p{font-size:.8rem;color:var(--muted);margin:0}.process-list b{font-weight:400;color:var(--lime)}.contact{padding-top:8rem;padding-bottom:9rem;background:var(--lime);color:#151813;display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(3rem,10vw,10rem)}.contact .eyebrow{color:rgba(21,24,19,.65)}.contact-heading h2{font-size:clamp(3.1rem,7vw,7rem);letter-spacing:-.09em;line-height:.88;margin-bottom:2rem}.contact-heading h2 span{font-family:var(--serif);font-style:italic;font-weight:400}.contact-heading>p:last-child{max-width:21rem;line-height:1.7;font-size:.92rem}.contact-form{border-top:1px solid rgba(21,24,19,.35)}.form-row{border-bottom:1px solid rgba(21,24,19,.35);padding:1.25rem 0;display:grid;grid-template-columns:1fr 1.5fr;gap:1rem}.form-row label{font-size:.72rem;font-weight:700}.form-row label span{color:#f05b40}.form-row input,.form-row textarea,.form-row select{border:0;background:transparent;color:#151813;outline:none;padding:0;font-size:.85rem;resize:vertical}.form-row input::placeholder,.form-row textarea::placeholder{color:rgba(21,24,19,.55)}.form-row select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#151813 50%),linear-gradient(135deg,#151813 50%,transparent 50%);background-position:calc(100% - 8px) 50%,100% 50%;background-size:7px 7px,7px 7px;background-repeat:no-repeat;padding-right:1rem}.form-submit{padding-top:1.6rem;display:flex;align-items:center;gap:1.2rem}.contact .button-primary{background:#151813;color:var(--lime)}.contact .button-primary:hover,.contact .button-primary:focus-visible{background:#30382a}.form-submit p{font-size:.6rem;color:rgba(21,24,19,.62);margin:0;max-width:13rem}.form-success{display:flex;align-items:flex-start;gap:1rem;border:1px solid rgba(21,24,19,.4);padding:1.2rem;margin-top:1.6rem}.form-success>span{font-size:1.3rem}.form-success strong{font-size:.9rem}.form-success p{font-size:.72rem;color:rgba(21,24,19,.7);margin:.35rem 0 0}.site-footer{padding:2.3rem var(--pad);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;color:var(--muted);font-size:.67rem}.site-footer p{line-height:1.6;margin:0}.site-footer>div{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.site-footer a:hover{color:var(--lime)}:focus-visible{outline:2px solid var(--lime);outline-offset:4px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scan{50%{left:75%}}@keyframes marquee{to{transform:translateX(-50%)}}.reveal{opacity:0;transform:translateY(1.2rem);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:none}@media (max-width:800px){.site-header{padding:1.1rem var(--pad)}.menu-toggle{display:flex}.site-nav{position:absolute;top:100%;left:var(--pad);right:var(--pad);display:none;flex-direction:column;align-items:stretch;gap:0;background:rgba(17,19,21,.96);border:1px solid var(--line);padding:.5rem;backdrop-filter:blur(14px)}.site-nav.is-open{display:flex}.site-nav a{padding:1rem;border-bottom:1px solid var(--line)}.site-nav a:last-child{border:0;margin-top:.4rem;text-align:center}.hero{padding-top:9rem;min-height:92svh}.hero-signal{right:var(--pad);top:auto;bottom:8rem;transform:scale(.72);transform-origin:right}.hero-bottom{bottom:1.7rem}.hero-orbit{opacity:.65}.section-intro{grid-template-columns:1fr;gap:2.5rem}.work{padding-top:6rem;padding-bottom:6rem}.work-grid{grid-template-columns:1fr;gap:3rem}.project-card-wide{grid-column:span 1}.services,.process,.contact{padding-top:6rem;padding-bottom:6rem}.service-item{grid-template-columns:2rem 1fr 1rem}.service-item p{grid-column:2/4}.process{grid-template-columns:1fr;gap:4rem}.contact{grid-template-columns:1fr;gap:3rem}.site-footer{grid-template-columns:1fr 1fr;gap:2rem}.site-footer p{grid-column:1/3;grid-row:2}.site-footer>div{align-items:flex-end}.cursor-glow{display:none}}@media (max-width:480px){h1{font-size:3.55rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.5rem}.hero-signal{bottom:8.5rem}.section-intro h2{font-size:3.2rem}.filter-row{gap:1rem;overflow:auto}.filter-button{white-space:nowrap}.project-detail dl{gap:1rem;flex-wrap:wrap}.form-row{grid-template-columns:1fr;gap:.65rem}.form-row input,.form-row textarea,.form-row select{font-size:1rem}.form-submit{align-items:flex-start;flex-direction:column}.site-footer{grid-template-columns:1fr}.site-footer p{grid-column:1;grid-row:auto}.site-footer>div{align-items:flex-start}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.cursor-glow{display:none}}
/* Keep the offline baseline readable before any script runs. */
[hidden]{display:none!important}
.project-trigger:focus-visible .project-visual{border-color:var(--lime)}
.project-detail{max-width:none;padding-bottom:1.2rem}
.project-detail dl{flex-wrap:wrap}
.reveal{opacity:1;transform:none}
.js .reveal:not(.is-visible){opacity:0;transform:translateY(1.2rem)}
.hero-signal{top:auto;bottom:8.5rem;right:var(--pad)}
.project-card-wide .project-visual{aspect-ratio:2.4}
.project-card-wide .aurora-sphere{width:35%;top:-9%;right:22%}
.project-card-wide .visual-window{width:30%}
.contact :focus-visible{outline-color:#151813}
.form-row:focus-within{border-color:#151813;box-shadow:0 1px 0 #151813}
.contact-placeholder small{font-size:.58rem;color:#686d65}
.contact button:disabled{opacity:.55;cursor:default;transform:none!important}
section[id]{scroll-margin-top:5rem}
@media(min-width:801px){.hero-content{max-width:calc(100% - 2rem)}.hero-lede{max-width:29rem}.hero-signal{bottom:9rem;transform:scale(.85);transform-origin:right bottom}}
@media(max-width:800px){.project-card-wide .project-visual{aspect-ratio:1.52}.project-card-wide .aurora-sphere{width:45%;top:18%;right:19%}.project-card-wide .visual-window{width:46%}.hero-content{padding-bottom:8rem}.js .site-nav{display:none}.js .site-nav.is-open{display:flex}.site-nav{display:flex}.site-header:not(.is-scrolled){background:rgba(11,12,13,.9)}.hero-signal{bottom:5rem}.site-header .site-nav{font-size:.75rem}html:not(.js) .menu-toggle{display:none}html:not(.js) .site-header{position:relative;flex-wrap:wrap;gap:1rem}html:not(.js) .site-nav{position:static;flex-direction:row;flex-wrap:wrap;width:100%;border:0;background:none;padding:0}html:not(.js) .site-nav a{padding:.5rem;border:0}html:not(.js) .site-nav .nav-cta{margin:0}html:not(.js) .hero{padding-top:4rem}}
@media(max-width:480px){h1{font-size:clamp(2.35rem,11.6vw,3.55rem)}.section-intro h2{font-size:clamp(2.35rem,10vw,3.2rem)}.signal-ring{width:6rem;height:6rem}.hero-bottom{font-size:.5rem}.hero-bottom .scroll-line{width:3rem}.mini-dashboard{padding:1rem}.visual-window strong{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.js .reveal:not(.is-visible){opacity:1;transform:none}}
