@font-face{font-family:Creep;src:url(/assets/fonts/creepster-latin-400-normal.woff2) format('woff2');font-display:swap}
@font-face{font-family:Osw;font-weight:300;src:url(/assets/fonts/oswald-latin-300-normal.woff2) format('woff2');font-display:swap}
@font-face{font-family:Osw;font-weight:400;src:url(/assets/fonts/oswald-latin-400-normal.woff2) format('woff2');font-display:swap}
@font-face{font-family:Osw;font-weight:500;src:url(/assets/fonts/oswald-latin-500-normal.woff2) format('woff2');font-display:swap}
@font-face{font-family:Osw;font-weight:700;src:url(/assets/fonts/oswald-latin-700-normal.woff2) format('woff2');font-display:swap}
:root{
  --night:#000;
  --coal:#141210;
  --blood:#d3121c;
  --blood-deep:#6e0208;
  --bone:#ece4d2;
  --bone-dim:#cfc5b0;
  --ash:#9a9184;
  --pool:#3f8582;
  --ok:#1fae5b;
  --warn:#f0a020;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html,body{overflow-x:clip}
body{margin:0;background:var(--night);color:var(--bone);font:300 17px/1.55 Osw,'Arial Narrow',Arial,sans-serif;letter-spacing:.01em}
a{color:inherit}
img,video{max-width:100%;display:block}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--blood);outline-offset:3px}
.creep{font-family:Creep,Osw,sans-serif;font-weight:400;letter-spacing:.01em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;border:0;border-radius:999px;background:var(--blood);color:#fff;font:500 1.05rem/1 Osw;letter-spacing:.04em;padding:1em 1.8em;cursor:pointer;text-decoration:none;box-shadow:0 0 0 0 rgba(211,18,28,.0);transition:transform .15s,box-shadow .2s}
.btn:hover{box-shadow:0 0 28px rgba(211,18,28,.55)}
.btn:active{transform:scale(.97)}
.btn[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none}
.btn.ghost{background:transparent;border:1.5px solid var(--bone-dim);color:var(--bone)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.grain{pointer-events:none;position:fixed;inset:-50%;z-index:50;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
@media (prefers-reduced-motion:reduce){.grain{animation:none}*{scroll-behavior:auto!important}}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-weight:400;font-size:.92rem;color:var(--bone-dim)}
.field input,.field select,.field textarea{background:#0e0d0c;border:1.5px solid #3a3530;border-radius:12px;padding:.85em 1em;font-weight:400;font-size:16px;outline:none}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blood)}
.err{color:#ff6a6f;font-weight:400}
.muted{color:var(--ash)}
