:root{ --ink:#0B0B0C; --paper:#EDEAE0; --hotpink:#FF2E9A; --line:rgba(237,234,224,0.14); }
*{margin:0;padding:0;box-sizing:border-box;}
html,body{background:var(--ink);color:var(--paper);font-family:'Space Grotesk',sans-serif;}
.wrap{max-width:760px;margin:0 auto;padding:80px 6vw 120px;}
.back{display:inline-block;margin-bottom:40px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.08em;color:rgba(237,234,224,.7);text-decoration:none;text-transform:uppercase;}
.back:hover{color:var(--hotpink);}
h1{font-family:'Anton',sans-serif;font-size:clamp(32px,5vw,52px);text-transform:uppercase;margin-bottom:8px;line-height:1;}
.updated{font-family:'JetBrains Mono',monospace;font-size:11px;color:rgba(237,234,224,.5);margin-bottom:36px;letter-spacing:.05em;}
.draft-notice{background:rgba(255,46,154,.08);border:1px solid rgba(255,46,154,.35);border-radius:8px;padding:16px 20px;margin-bottom:40px;font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.6;color:rgba(237,234,224,.85);}
.draft-notice b{color:var(--hotpink);}
h2{font-family:'Anton',sans-serif;font-size:20px;text-transform:uppercase;margin:36px 0 12px;}
p, li{font-size:14px;line-height:1.7;color:rgba(237,234,224,.8);margin-bottom:14px;}
ul{padding-left:20px;margin-bottom:14px;}
a{color:var(--hotpink);}

/* legal cross-nav */
.legal-nav{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line);}
.legal-nav a{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:rgba(237,234,224,.6);}
.legal-nav a:hover{color:var(--hotpink);}
.legal-nav a[aria-current="page"]{color:var(--paper);border-bottom:1px solid var(--hotpink);}

footer{margin-top:24px;padding-top:0;font-family:'JetBrains Mono',monospace;font-size:11px;color:rgba(237,234,224,.6);}

/* contact form */
.contact-form{display:flex;flex-direction:column;gap:6px;max-width:440px;margin-bottom:24px;}
.contact-form label{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:rgba(237,234,224,.7);margin-top:12px;}
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form textarea{
  background:#141416;border:1px solid var(--line);border-radius:6px;color:var(--paper);
  font-family:'Space Grotesk',sans-serif;font-size:14px;padding:12px 14px;resize:vertical;
}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(237,234,224,.5);}
.form-submit{
  margin-top:18px;align-self:flex-start;background:var(--hotpink);color:#0B0B0C;border:none;
  padding:14px 32px;border-radius:999px;font-family:'Space Grotesk',sans-serif;font-weight:700;
  font-size:14px;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;
}
.contact-note{font-size:12px;color:rgba(237,234,224,.55);}

/* keyboard focus */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
  outline:2px solid var(--hotpink); outline-offset:3px; border-radius:2px;
}

/* 404 page */
.error-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0 6vw;background:var(--ink);}
.eyebrow-404{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.15em;color:var(--hotpink);text-transform:uppercase;margin-bottom:20px;display:flex;align-items:center;gap:10px;}
.dot-404{width:6px;height:6px;background:var(--hotpink);border-radius:50%;animation:pulse-404 1.8s infinite;}
@keyframes pulse-404{0%,100%{opacity:1;}50%{opacity:.2;}}
.error-code{font-family:'Anton',sans-serif;font-size:clamp(90px,20vw,220px);line-height:.85;color:var(--paper);text-transform:uppercase;}
.error-text{max-width:460px;margin:18px 0 32px;font-size:14px;line-height:1.6;color:rgba(237,234,224,.72);}
.error-cta{display:inline-block;background:var(--paper);color:var(--ink);text-decoration:none;padding:16px 36px;border-radius:999px;font-family:'Anton',sans-serif;font-size:16px;text-transform:uppercase;}
.error-cta:hover{background:var(--hotpink);color:#0B0B0C;}

@media (prefers-reduced-motion: reduce){
  .dot-404{animation:none;}
}
