:root{--accent:#fe4100;--panel:#262626;--white:#fff;color-scheme:dark;font-family:'VT323',monospace;font-weight:400}*{box-sizing:border-box}body{margin:0;background:#000;color:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a:hover{color:var(--accent)}img{display:block;max-width:100%}p,h1,h2{margin:0;font-weight:400}.skip{position:fixed;top:-100px;left:20px;background:white;color:black;padding:12px;z-index:10}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.site-header{width:86.05%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:2.15vw 0}.logo{display:block;width:8.6vw;flex-shrink:0}.logo img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:3.25vw;font-size:2.1875vw;line-height:1}.site-header [aria-current]{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:1.04vw;min-height:2.8125vw;padding:.25em 1em;cursor:pointer;text-align:center;transition:background .18s,color .18s,transform .18s}.button:hover{transform:translateY(-2px)}.orange{background:var(--accent);color:#000}.orange:hover{background:#ff703d;color:#000}.site-header .button{width:11.35vw}.white{background:white;color:black}.white:hover{background:var(--accent);color:black}.outline{border:var(--stroke-width) solid var(--stroke-color);color:white;background:black}.outline:hover{background:white;color:black}.terminal{background:#000;color:white;border-radius:1.04vw;overflow:hidden}.terminal-bar{display:flex;align-items:center;gap:.65vw;padding:.65vw 1.04vw;background:var(--panel);font-size:1.6667vw;letter-spacing:.0833vw;line-height:1;min-height:3.073vw}.terminal-bar img{width:1.354vw;height:1.354vw;object-fit:contain}.home{background:white;color:black;color-scheme:light}.crt{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#fff}.crt-art{position:absolute;width:113.43%;height:113.43%;max-width:none;left:-6.95%;top:-6.67%;pointer-events:none}.crt-content{position:relative;padding-top:5.8vw}.home .site-header{padding:0;min-height:3vw}.hero-panels{display:grid;grid-template-columns:796fr 740fr;gap:1.5625vw;width:81.5625%;margin:4.45vw auto 0}.hero-panels>.terminal{height:37.1458vw}.intro-content{padding:1.5625vw 1.0417vw 1.1458vw;height:calc(100% - 3.073vw);display:flex;flex-direction:column}.boot-copy{font-size:1.6667vw;letter-spacing:.0833vw;line-height:1.3;white-space:nowrap}.intro h1{font-size:3.125vw;line-height:1.04;letter-spacing:.15625vw;color:var(--accent);margin-top:1.55vw;max-width:38.1vw}.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;margin-top:auto}.portrait{width:8.9583vw;height:8.9583vw;object-fit:cover;object-position:center 27%;border:var(--stroke-width) solid var(--stroke-color);border-radius:1.04vw}.hero-actions{display:grid;gap:1.0417vw}.hero-actions .button{width:11.35vw;font-size:1.25vw;letter-spacing:.0625vw}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:.73vw .78vw;padding:1.5625vw 1.04vw}.overview-grid a{overflow:hidden;border:var(--stroke-width) solid var(--stroke-color);border-radius:1.04vw;aspect-ratio:343/258}.overview-grid img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.overview-grid a:hover img,.project-grid a:hover img{transform:scale(1.025)}.works-content{width:81.5625%;margin:5.2vw auto 0}.bordered{border:var(--stroke-width) solid var(--stroke-color)}.bordered>.terminal-bar{border-bottom:var(--stroke-width) solid var(--stroke-color);background:black}.terminal-banner{display:flex;align-items:center;justify-content:space-between;padding:1.15vw 1.04vw 1.7vw;gap:24px}.terminal-banner>p{color:var(--accent);font-size:1.6667vw;line-height:1;letter-spacing:.0833vw;max-width:35.7vw}.mini-crt{background:white;position:relative;display:grid;place-items:center;width:11.4vw;height:6.4vw;flex-shrink:0;color:#000;font-size:2.1875vw;overflow:hidden}.mini-crt:before{content:'';position:absolute;inset:-6.67% -6.48% -6.76% -6.95%;background:url('assets/crt-frame.webp') center/100% 100%}.mini-crt span{position:relative}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw 4.48vw;margin-top:5.2vw}.project-grid article>a{display:block;aspect-ratio:4/3;border:var(--stroke-width) solid var(--stroke-color);border-radius:1.04vw;overflow:hidden}.project-grid img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.project-grid h2{font-size:2.5vw;letter-spacing:.125vw;margin-top:1.04vw}.contact{margin-top:12vw;scroll-margin-top:25px}.contact .terminal-banner{border-bottom:var(--stroke-width) solid var(--stroke-color)}.contact-columns{display:grid;grid-template-columns:796fr 688fr;gap:1.6vw;padding:1.8vw 1.04vw 2.3vw}.contact-columns .terminal-bar{background:var(--panel)}#contactForm{padding:1.6vw 1.04vw 1.04vw;display:flex;flex-direction:column;gap:1.3vw}input,textarea,.attachment{width:100%;background:var(--panel);border:var(--stroke-width) solid var(--stroke-color);border-radius:1.04vw;color:#fff;padding:.7vw 1.3vw;font-size:1.25vw;letter-spacing:.0625vw;min-width:0}input::placeholder,textarea::placeholder{color:#b5b5b5}textarea{min-height:11.25vw;resize:vertical}.attachment{position:relative;overflow:hidden;cursor:pointer;min-height:2.8vw}.attachment input{position:absolute;inset:0;opacity:0;cursor:pointer}.attachment:focus-within{outline:3px solid var(--accent);outline-offset:3px}#contactForm .button{align-self:center;font-size:1.25vw;min-width:11.35vw}#contactStatus{font-size:18px;line-height:1.25}.social-content{padding:1.8vw 1.04vw;font-size:1.6667vw;letter-spacing:.0833vw}.social-content p{margin-bottom:1.5vw}.social-content>a{display:inline-block;background:var(--accent);color:black;border:var(--stroke-width) solid var(--stroke-color);border-radius:5px;padding:.35em;margin:0 .3em .5em 0;font-size:1.4vw}.backtop{display:block;width:40px;margin:8vw 0 2vw auto;border:var(--stroke-width) solid var(--stroke-color);border-radius:9px;text-align:center;font-size:32px;color:var(--accent)}footer{width:86.05%;margin:0 auto 3vw;display:flex;align-items:center;justify-content:space-between;gap:2vw;font-size:1.25vw;letter-spacing:.0625vw}footer nav{display:flex;gap:1.5vw}.text-button{border:0;background:none;color:inherit;padding:0;cursor:pointer}.text-button:hover{color:var(--accent)}dialog{max-width:440px;padding:30px;border:var(--stroke-width) solid var(--stroke-color);border-radius:12px;background:#111;color:white;font-size:22px}dialog::backdrop{background:#000a}dialog p{margin:18px 0}dialog a{text-decoration:underline}dialog .button{font-size:22px;padding:8px 24px}
@media(min-width:1921px){.crt{max-width:1920px;margin:auto}}
@media(max-width:900px){.site-header{width:90%;padding:24px 0;gap:20px;align-items:flex-start}.logo{width:110px}.site-header nav{gap:14px;font-size:22px;justify-content:flex-end;flex-wrap:wrap}.site-header .button{width:auto}.button{min-height:40px;border-radius:10px}.home{background:var(--accent)}.crt{aspect-ratio:auto;padding:22px 0 28px;background:var(--accent)}.crt-art{display:none}.crt-content{width:94%;margin:auto;background:white;border:8px solid #63200e;box-shadow:0 0 0 3px #ff7935,0 6px 15px #68220b;border-radius:30px;padding:14px 0 28px}.home .site-header{padding:8px 0 24px;min-height:0;flex-direction:column;gap:20px}.home .site-header nav{justify-content:space-between;gap:12px;width:100%;font-size:21px}.hero-panels{width:90%;grid-template-columns:1fr;gap:18px;margin:0 auto}.terminal{border-radius:12px}.hero-panels>.terminal{height:auto}.terminal-bar{font-size:18px;letter-spacing:.5px;padding:10px;gap:7px;min-height:36px}.terminal-bar img{width:17px;height:17px}.intro-content{padding:18px 13px 14px;height:auto}.boot-copy{font-size:14px;letter-spacing:0;white-space:normal;line-height:1.35}.intro h1{font-size:32px;letter-spacing:1px;line-height:1.08;max-width:none;margin-top:22px}.intro-bottom{margin-top:30px;gap:20px}.portrait{width:84px;height:84px;border-radius:10px}.hero-actions{gap:10px}.hero-actions .button{width:135px;font-size:17px;letter-spacing:.4px}.overview-grid{gap:8px;padding:15px 10px 24px}.overview-grid a{border-radius:10px}.works .site-header{flex-direction:column}.works .site-header nav{justify-content:space-between;width:100%;font-size:23px;gap:10px}.works-content{width:90%;margin:25px auto 0}.terminal-banner{padding:18px 12px;gap:14px;align-items:flex-start}.terminal-banner>p{font-size:20px;letter-spacing:.4px;max-width:none;line-height:1.1}.mini-crt{width:90px;height:54px;font-size:22px}.project-grid{grid-template-columns:1fr;gap:30px;margin-top:32px}.project-grid article>a{border-radius:12px}.project-grid h2{font-size:30px;letter-spacing:1px;margin-top:10px}.contact{margin-top:65px}.contact-columns{grid-template-columns:1fr;gap:16px;padding:15px 10px}.contact .terminal-banner{flex-direction:column}.contact .mini-crt{display:none}#contactForm{padding:15px 10px;gap:14px}input,textarea,.attachment{font-size:18px;letter-spacing:.4px;padding:10px 12px;border-radius:10px}textarea{min-height:150px}.attachment{min-height:42px}#contactForm .button{font-size:18px;min-width:145px}.social-content{font-size:22px;letter-spacing:.5px;padding:20px 12px}.social-content p{margin-bottom:18px}.social-content>a{font-size:20px}.backtop{margin-top:50px}footer{width:90%;flex-wrap:wrap;font-size:16px;gap:20px;margin-bottom:30px}footer nav{flex-wrap:wrap;gap:15px}footer p{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
.intro h1{min-height:12.5vw}.typing-cursor{display:inline-block;width:.11em;height:.85em;margin-left:.12em;vertical-align:-.03em;background:var(--accent)}.typing-cursor.is-blinking{animation:cursor-pulse 1s step-end infinite}.booting{animation:terminal-start .8s steps(1,end)}.overview{position:relative}.overview-grid{height:calc(100% - 6.15vw);overflow:hidden;padding:0;margin:1.5625vw 1.04vw;gap:.78vw;mask-image:linear-gradient(transparent,#000 4%,#000 94%,transparent)}.reel-column{min-width:0;overflow:hidden}.reel-track{animation:reel-scroll 22s linear infinite;will-change:transform}.reel-down .reel-track{animation-direction:reverse;animation-duration:26s}.reel-set{display:grid;gap:.73vw;padding-bottom:.73vw}.overview-grid a{display:block}.overview:hover .reel-track,.overview:focus-within .reel-track,.motion-paused .reel-track{animation-play-state:paused}.motion-toggle{position:absolute;bottom:.4vw;right:1.04vw;border:0;background:#000;color:#bdbdbd;font-size:1.05vw;padding:.1em .3em;cursor:pointer}.motion-toggle:hover{color:#fe4100}@keyframes reel-scroll{from{transform:translateY(0)}to{transform:translateY(-50%)}}@keyframes cursor-pulse{50%{opacity:0}}@keyframes terminal-start{0%{opacity:0}30%{opacity:.5}55%{opacity:0}70%{opacity:1}}
@media(max-width:900px){.intro h1{min-height:0}.overview-grid{height:320px;margin:14px 10px 30px;gap:8px}.reel-set{gap:8px;padding-bottom:8px}.motion-toggle{bottom:5px;right:10px;font-size:15px}.intro-content{min-height:390px}}
@media(prefers-reduced-motion:reduce){.reel-track,.typing-cursor.is-blinking,.booting{animation:none}.reel-set[aria-hidden]{display:none}.overview-grid{mask-image:none}.motion-toggle{display:none}}


#intro-title > span[aria-hidden=true]:not(.typing-cursor){white-space:pre-line}

/* Shared sticky navigation and Works terminal motion. */
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height, 100px) + 20px)}
.site-header{position:sticky;top:0;z-index:20}
.works>.site-header{width:100%;padding-left:6.975%;padding-right:6.975%;background:#000;border-bottom:var(--stroke-width) solid var(--stroke-color)}
.home .crt{overflow:clip}
.home .site-header{background:#fff}
.terminal-copy{position:relative;min-width:0}
.copy-layout{display:block;visibility:hidden}
.copy-visible{position:absolute;inset:0}
.works .backtop{position:fixed;right:24px;bottom:24px;z-index:30;display:grid;place-items:center;width:46px;height:46px;margin:0;background:#000;color:var(--accent);border:var(--stroke-width) solid var(--stroke-color);border-radius:10px;font-size:34px;line-height:1;box-shadow:0 3px 18px #0008;transition:background .2s,color .2s}
.works .backtop:hover{background:var(--accent);color:#000}
.contact{scroll-margin-top:20px}
.works footer{padding-right:54px}
@media(max-width:900px){.works>.site-header{padding:14px 5%;gap:12px}.works .site-header .logo{width:96px}.works .backtop{right:14px;bottom:max(14px,env(safe-area-inset-bottom));width:44px;height:44px}.home .site-header{border-radius:12px 12px 0 0}.works footer{padding-bottom:55px;padding-right:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.terminal-copy .typing-cursor{animation:none}}


.homepage{background:#000;color:#fff;color-scheme:dark}
.homepage .crt{color:#000;background:white}
.hero-nav-space{height:3vw}
.homepage>.site-header{position:fixed;top:5.8vw;left:0;width:100%;padding:0 6.975%;min-height:3vw;background:transparent;color:#000;border:0;transition:background .4s,color .4s,top .4s,padding .4s;z-index:40}
.homepage.past-hero>.site-header{top:0;padding-top:1.3vw;padding-bottom:1.3vw;background:#000;color:#fff;box-shadow:0 1px 0 var(--stroke-color)}
.homepage .works-content{margin-top:0;padding-top:6.5vw;scroll-margin-top:0}
.homepage .crt:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1.5vw;background:linear-gradient(transparent,#0005);pointer-events:none}
.homepage footer{margin-top:16.4vw;margin-bottom:3vw}
.homepage .backtop{padding:0;border:0;background:transparent;box-shadow:none;width:48px;height:46px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s,visibility .35s}
.homepage.past-hero .backtop{opacity:1;visibility:visible;pointer-events:auto}
.homepage .backtop img{width:100%;height:100%;animation:arrow-float 2.4s ease-in-out infinite}
.homepage .backtop:hover{background:transparent}
@keyframes arrow-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.social-icons{display:flex;align-items:center;gap:.55vw}
.social-icons>a,.social-icons>span{display:block;width:3.86vw;height:3.54vw;min-width:40px;min-height:37px;border:0;padding:0;background:none}
.social-icons img{width:100%;height:100%;object-fit:contain}
.social-icons>a{transition:transform .2s}.social-icons>a:hover{transform:translateY(-2px)}
.instagram-pending{cursor:default}
.mini-crt .mini-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:black;white-space:nowrap}
.mini-crt .mini-brand{position:absolute;left:38%;top:27%;width:24%;height:46%;object-fit:contain;opacity:0;transition:opacity .3s,transform .3s;transform:scale(.9)}
.mini-crt.show-brand .mini-brand{opacity:1;transform:scale(1)}
.mini-crt.show-brand .mini-text{opacity:0}
.mini-cursor{display:inline-block;width:2px;height:.75em;background:#000;margin-left:2px;animation:cursor-pulse 1s step-end infinite}
@media(max-width:900px){.homepage>.site-header{top:51px;left:9%;width:82%;padding:0;background:#fff;border-radius:0;gap:20px;min-height:0}.hero-nav-space{height:158px}.homepage.past-hero>.site-header{left:0;top:0;width:100%;padding:12px 5%;gap:10px;border-radius:0}.homepage .crt-content{padding-top:14px}.homepage .works-content{padding-top:40px}.homepage footer{margin-top:100px}.social-icons{gap:8px}.social-icons>a,.social-icons>span{width:44px;height:41px}.homepage .backtop{width:44px;height:42px}.homepage .contact .terminal-banner{flex-direction:row}.homepage .contact .mini-crt{display:grid}.homepage .mini-crt{width:90px;height:54px}.homepage .crt:after{display:none}}
@media(prefers-reduced-motion:reduce){.homepage .backtop img,.mini-cursor{animation:none}.homepage>.site-header{transition:none}}


@font-face{font-family:VT323;src:url('assets/vt323.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.site-header nav{gap:clamp(20px,4vw,76px)}
.inner-page>.site-header{position:sticky;top:0;max-width:none;padding:clamp(18px,2.15vw,41px) max(5%,calc((100% - 1652px)/2));background:#000;color:white;z-index:40}
.inner-page .site-header .logo,footer .logo{width:clamp(100px,8.6vw,165px)}
.inner-page .site-header nav{font-size:clamp(22px,2.1875vw,42px)}
.inner-page .site-header .button{width:auto;min-width:120px}
.page-content{width:81.5625%;max-width:1566px;margin:clamp(32px,5.2vw,100px) auto 0}
.inner-page .terminal-bar{font-size:clamp(18px,1.6667vw,32px);min-height:42px;padding:clamp(10px,.65vw,14px) clamp(12px,1.04vw,20px)}
.inner-page .terminal-bar img{width:clamp(17px,1.354vw,26px);height:clamp(17px,1.354vw,26px)}
.inner-page .terminal-banner{padding:clamp(16px,1.15vw,25px) clamp(12px,1.04vw,20px);gap:32px}
.inner-page .terminal-banner>p,.policy-summary{font-size:clamp(20px,1.6667vw,32px);line-height:1.12;letter-spacing:.05em;max-width:44%;overflow-wrap:anywhere}
.inner-page .mini-crt{width:clamp(100px,11.4vw,219px);height:auto;aspect-ratio:219/123;font-size:clamp(22px,2.1875vw,42px)}
.inner-page .large-intro .mini-crt{width:36%;font-size:clamp(24px,2.6vw,50px)}
.about-body{border-top:var(--stroke-width) solid var(--stroke-color);display:flex;align-items:flex-start;justify-content:space-between;gap:48px;padding:clamp(20px,1.8vw,35px) clamp(12px,1.04vw,20px)}
.about-body>div{max-width:46%;font-size:clamp(22px,2.1875vw,42px);letter-spacing:.05em;line-height:1.12}.about-body p+p{margin-top:1em}.about-body>img{width:25.5%;height:auto;border:var(--stroke-width) solid var(--stroke-color);border-radius:12px}
.page-cta{margin-top:clamp(65px,10.7vw,205px)}
.inner-page .page-cta .terminal-banner>p{font-size:clamp(24px,2.5vw,48px)}
.inner-page .hero-actions{gap:14px}.inner-page .hero-actions .button{font-size:clamp(18px,1.25vw,24px);width:clamp(150px,11.35vw,218px);min-height:44px}
.project-gallery{display:grid;gap:clamp(28px,5.8vw,111px);margin-top:clamp(32px,5.8vw,111px)}
.gallery-image{width:100%;height:auto;border-radius:clamp(8px,1.04vw,20px)}
.image-reveal{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}.image-visible{opacity:1;transform:none}
.policy-intro .policy-summary{max-width:44%;color:white}.policy-summary p+p{margin-top:.8em}.policy-summary a,.policy-copy a,.cookie-banner a{text-decoration:underline;text-underline-offset:3px}.policy-date{font-size:.8em;color:#bdbdbd}
.policy-details{margin-top:clamp(32px,5.2vw,100px)}.policy-copy{padding:clamp(16px,1.04vw,24px);font-size:clamp(20px,1.6667vw,32px);line-height:1.3;letter-spacing:.025em;overflow-wrap:anywhere}.policy-copy h2{color:var(--accent);font-size:1.32em;margin:1.1em 0 .65em}.policy-copy h2:first-child{margin-top:0}.policy-copy p,.policy-copy ul{margin:0 0 .8em}.policy-copy ul{padding-left:1.1em}.inline-preferences{display:inline;border:0;background:none;color:inherit;padding:0;text-decoration:underline;font:inherit;cursor:pointer}
.inner-page footer{margin-top:clamp(100px,16vw,307px);font-size:clamp(15px,1.25vw,24px);max-width:1652px;line-height:1.25;flex-wrap:wrap}.inner-page footer nav{flex-wrap:wrap}.inner-page .backtop{border:0;background:none;box-shadow:none;padding:0;width:48px;height:46px}.inner-page .backtop img{width:100%;height:100%;animation:arrow-float 2.4s ease-in-out infinite}.inner-page .backtop:hover{background:none}
#contactForm input:not([type=hidden]):not([type=file]),#contactForm textarea,#contactForm .attachment{background:#fff;color:#000;border-color:var(--stroke-color);border-radius:6px;min-height:36px}#contactForm input::placeholder,#contactForm textarea::placeholder{color:#707070}#contactForm .attachment{text-align:center}#contactForm textarea{min-height:10vw}#contactForm .button{width:100%;align-self:stretch;border-radius:6px}#contactForm{gap:1.3vw}.social-content{min-height:180px}
.cookie-banner[hidden]{display:none!important}.cookie-banner{position:fixed;inset:auto 0 0;z-index:80;background:rgba(0,0,0,.85);color:#fff;padding:clamp(22px,3.2vw,62px) 6.975%;max-height:85dvh;overflow:auto}.cookie-inner{display:flex;align-items:center;justify-content:space-between;gap:clamp(24px,3vw,58px);max-width:1652px;margin:auto}.cookie-monitor{width:24%;height:auto;aspect-ratio:16/9;min-width:140px}.cookie-monitor>img{position:relative;width:25%;height:auto;object-fit:contain}.cookie-inner>p{font-size:clamp(17px,1.25vw,24px);letter-spacing:.04em;line-height:1.15;max-width:40%}.cookie-actions{display:grid;gap:16px;flex-shrink:0}.cookie-actions .button{min-width:140px;min-height:42px;font-size:clamp(18px,1.25vw,24px)}.cookie-open .backtop{opacity:0;pointer-events:none}.cookie-actions button:focus-visible{outline-color:var(--accent)}
@media(min-width:1921px){.crt{container-type:inline-size}.crt-content{padding-top:5.8cqw}.hero-nav-space{height:3cqw}.hero-panels{gap:1.5625cqw;margin-top:4.45cqw}.hero-panels>.terminal{height:37.1458cqw}.hero-panels .terminal-bar{font-size:1.6667cqw;min-height:3.073cqw;padding:.65cqw 1.04cqw;gap:.65cqw;letter-spacing:.0833cqw}.hero-panels .terminal-bar img{width:1.354cqw;height:1.354cqw}.intro-content{padding:1.5625cqw 1.0417cqw 1.1458cqw;height:calc(100% - 3.073cqw)}.boot-copy{font-size:1.6667cqw;letter-spacing:.0833cqw}.intro h1{font-size:3.125cqw;letter-spacing:.15625cqw;max-width:38.1cqw;margin-top:1.55cqw;min-height:12.5cqw}.portrait{width:8.9583cqw;height:8.9583cqw}.hero-actions .button{font-size:1.25cqw;width:11.35cqw;min-height:2.8125cqw}.hero-actions{gap:1.04cqw}.overview-grid{height:calc(100% - 6.15cqw);margin:1.5625cqw 1.04cqw}.reel-set{gap:.73cqw;padding-bottom:.73cqw}.motion-toggle{font-size:1.05cqw}.homepage>.site-header{padding-left:max(6.975%,calc((100% - 1652px)/2));padding-right:max(6.975%,calc((100% - 1652px)/2));top:111px}.homepage .logo{width:165px}.homepage .site-header nav{font-size:42px}.homepage .site-header .button{width:218px;min-height:54px}.homepage .works-content{max-width:1566px}.homepage .terminal-bar{font-size:32px}.homepage .terminal-banner>p{font-size:32px;max-width:685px}.homepage footer{max-width:1652px;font-size:24px}}
@media(max-width:900px){.site-header nav{gap:14px!important}.homepage>.site-header{gap:14px}.hero-nav-space{height:130px}.homepage .crt{background:var(--accent)}.homepage .site-header .logo{width:105px}.inner-page>.site-header{padding:14px 5%;gap:14px}.inner-page .site-header nav{width:100%;justify-content:space-between;font-size:22px;gap:12px}.inner-page .site-header .button{min-width:0}.page-content{width:90%;margin-top:30px}.inner-page .terminal-banner{gap:20px}.inner-page .terminal-banner>p,.policy-summary{max-width:none;flex:1}.inner-page .large-intro .terminal-banner{flex-direction:column;align-items:stretch}.inner-page .large-intro .mini-crt{width:200px;align-self:flex-end}.about-body{gap:25px}.about-body>div{max-width:none;flex:1;font-size:22px}.about-body>img{width:30%}.page-cta .terminal-banner{flex-direction:column;align-items:stretch}.page-cta .hero-actions{display:flex;flex-wrap:wrap}.policy-intro .policy-summary{max-width:none}.inner-page footer{width:90%;gap:22px}.inner-page footer p{width:auto}.cookie-banner{padding:20px}.cookie-inner{display:grid;grid-template-columns:95px 1fr;gap:16px}.cookie-monitor{width:95px;min-width:0}.cookie-inner>p{max-width:none;font-size:17px}.cookie-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:14px}.cookie-actions .button{min-width:0}#contactForm{gap:14px}#contactForm textarea{min-height:145px}.homepage .contact .terminal-banner{flex-direction:column}.homepage .contact .mini-crt{align-self:flex-end}}
@media(max-width:520px){.about-body{flex-direction:column}.about-body>img{width:65%;max-width:260px;align-self:center}.inner-page .terminal-banner:not(.page-cta .terminal-banner){flex-wrap:wrap}.inner-page .terminal-banner>p{flex-basis:100%}.inner-page .mini-crt{margin-left:auto}.inner-page .hero-actions .button{width:auto;flex:1}.cookie-monitor{display:none}.cookie-inner{grid-template-columns:1fr}.cookie-inner>p{grid-column:1/-1}.cookie-actions{gap:12px}.homepage .hero-panels .intro h1{font-size:30px}.intro-content{min-height:390px}.inner-page footer nav{gap:14px}.homepage footer nav{gap:14px}}
@media(prefers-reduced-motion:reduce){.image-reveal{opacity:1;transform:none}.inner-page .backtop img{animation:none}}
@media(max-width:520px){.homepage .site-header nav{font-size:20px;gap:10px!important}.homepage .site-header nav .button{padding-left:.75em;padding-right:.75em}.homepage.past-hero>.site-header{gap:10px}.hero-nav-space{height:120px}}

/* Updated Figma hero: black screen and white terminal outlines. */
.homepage .crt{background:#000;color:#fff}
.homepage>.site-header{color:#fff}
.homepage .hero-panels>.terminal{border:var(--stroke-width) solid var(--stroke-color)}
.homepage .hero-panels>.terminal>.terminal-bar{border-bottom:var(--stroke-width) solid var(--stroke-color)}


/* Shared, low-contrast UI strokes across every page. */
:root{--stroke-color:#505050;--stroke-width:1px}
@media(max-width:900px){.homepage .crt-content,.homepage>.site-header{background:#000}}


/* Dark form controls and shared social icon outlines. */
#contactForm input:not([type=hidden]):not([type=file]),#contactForm textarea,#contactForm .attachment{background:var(--panel);color:#fff;border:var(--stroke-width) solid var(--stroke-color);color-scheme:dark}
#contactForm input::placeholder,#contactForm textarea::placeholder{color:#aaa}
#contactForm input:autofill{box-shadow:0 0 0 1000px var(--panel) inset;-webkit-text-fill-color:#fff}
.social-icons>a{border:var(--stroke-width) solid var(--stroke-color);border-radius:11px;overflow:hidden;background:#000}
.social-icons img{clip-path:inset(2px round 9px)}

