@font-face{font-family:"Archivo";font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/archivo-latin-wght-normal.woff2) format("woff2")}
:root{--ink:#0e0d0c;--cream:#F5EFE8;--ember:#C84B2F;--ember-hi:#e0613f;--muted:#9a9189;--font:"Archivo","Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
html,body{margin:0;background:var(--ink);color:var(--cream)}
body{font:400 17px/1.6 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
:focus-visible{outline:2px solid var(--ember-hi);outline-offset:3px}
.grain{position:fixed;inset:-50%;z-index:50;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:0 max(20px,env(safe-area-inset-left,0px)) clamp(40px,8vh,88px)}
.leak{position:absolute;inset:-20%;background:radial-gradient(40% 50% at 78% 28%,rgba(224,97,63,.55),transparent 70%),radial-gradient(35% 45% at 18% 78%,rgba(224,97,63,.22),transparent 70%),radial-gradient(60% 60% at 50% 110%,rgba(245,239,232,.10),transparent 70%);filter:blur(30px);animation:drift 22s ease-in-out infinite alternate}
@keyframes drift{from{transform:translate3d(-3%,-2%,0) scale(1)}to{transform:translate3d(4%,3%,0) scale(1.12)}}
.beam{position:absolute;top:0;bottom:0;left:-30%;width:30%;background:linear-gradient(90deg,transparent,rgba(245,239,232,.07),transparent);transform:skewX(-14deg);animation:sweep 9s ease-in-out infinite}
@keyframes sweep{0%,35%{left:-35%}100%{left:125%}}
.lb{position:absolute;left:0;right:0;height:clamp(14px,5vh,48px);background:#000;z-index:2}
.lb.t{top:0}.lb.b{bottom:0}
.hud{position:absolute;z-index:3;top:calc(clamp(14px,5vh,48px) + 28px);font:500 12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:rgba(245,239,232,.8)}
.hud.tl{left:max(20px,env(safe-area-inset-left,0px))}
.hud.tr{right:max(20px,env(safe-area-inset-right,0px));text-align:right}
.rec{display:inline-block;width:9px;height:9px;border-radius:50%;background:#e23b2e;margin-right:8px;animation:blink 1.4s steps(2) infinite}
@keyframes blink{50%{opacity:0}}
.in{position:relative;z-index:3}
.logo{width:100%;height:auto;display:block;margin-left:-1%}
h1{margin:clamp(20px,4vh,40px) 0 0;font-weight:800;font-size:clamp(34px,6vw,96px);line-height:1;letter-spacing:-.035em;text-transform:uppercase}
.sub{margin:14px 0 clamp(24px,5vh,48px);font-size:clamp(13px,1.4vw,18px);letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--muted)}
.mail{display:inline-block;font-weight:800;font-size:clamp(20px,3.4vw,52px);letter-spacing:-.03em;text-decoration:none;color:var(--ember-hi);overflow-wrap:anywhere;transition:color .25s}
.mail:hover{color:var(--cream)}
.addr{margin:12px 0 0;font-size:15px;color:var(--muted)}
@media (prefers-reduced-motion:reduce){.grain,.leak,.beam,.rec{animation:none}}
