/* Self-hosted fonts only — no Google Fonts, no third party sees the visitor's IP. */
@font-face { font-family:'MOON GET'; src:url('assets/fonts/moon_get-Heavy.ttf') format('truetype'); font-weight:100 900; font-display:swap; }
@font-face { font-family:'Manrope'; src:url('assets/fonts/manrope-latin.woff2') format('woff2'); font-weight:200 800; font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'Manrope'; src:url('assets/fonts/manrope-latin-ext.woff2') format('woff2'); font-weight:200 800; font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:'JetBrains Mono'; src:url('assets/fonts/jetbrains-mono-latin.woff2') format('woff2'); font-weight:100 800; font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'JetBrains Mono'; src:url('assets/fonts/jetbrains-mono-latin-ext.woff2') format('woff2'); font-weight:100 800; font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

:root {
  --red:#C41010; --red-dark:#8E0B0B; --ink:#232323; --muted:#57524E; --bg:#EFEDEB; --nav-muted:#B8B2AD;
  --display:'MOON GET','Manrope',sans-serif; --body:'Manrope',system-ui,sans-serif; --mono:'JetBrains Mono',monospace;
}
* { box-sizing:border-box; }
html, body { margin:0; }
body { min-height:100vh; min-height:100dvh; display:flex; flex-direction:column; background:var(--bg); color:var(--ink); font-family:var(--body); text-wrap:pretty; -webkit-font-smoothing:antialiased; }
a { color:var(--red); }
a:hover { color:var(--red-dark); }

.bar { background:var(--red); color:#fff; min-height:44px; padding:10px 24px; display:flex; align-items:center; justify-content:center; text-align:center;
  font-family:var(--mono); font-size:13px; line-height:1.6; letter-spacing:0.16em; text-transform:uppercase; }

.nav { background:var(--ink); height:68px; flex:none; display:flex; align-items:center; justify-content:space-between; padding:0 40px; }
.brand { display:flex; align-items:center; gap:12px; color:#fff; font-family:var(--display); font-size:20px; letter-spacing:0.06em; text-transform:uppercase; }
.brand img { height:34px; width:auto; display:block; }
.langs { display:flex; gap:4px; }
.langs button { appearance:none; border:0; cursor:pointer; background:transparent; color:var(--nav-muted);
  font-family:var(--mono); font-size:12px; letter-spacing:0.14em; padding:0 10px; height:36px; }
.langs button:hover { color:#fff; }
.langs button[aria-pressed="true"] { background:var(--red); color:#fff; }

.hero { flex:1; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:72px;
  width:100%; max-width:1280px; margin:0 auto; padding:56px 88px; }
.hero .logo { width:360px; height:auto; display:block; }
.copy { display:flex; flex-direction:column; align-items:flex-start; gap:22px; }
.kicker { font-family:var(--mono); font-size:13px; letter-spacing:0.2em; text-transform:uppercase; color:var(--red); font-weight:700; }
h1 { margin:0; font-family:var(--display); font-weight:900; font-size:clamp(28px,3.6vw,44px); line-height:1.18; text-transform:uppercase; }
.rule { height:6px; width:120px; background:var(--red); }
.sub { margin:0; font-size:18px; line-height:1.65; color:var(--muted); max-width:460px; }
.actions { display:flex; gap:14px; flex-wrap:wrap; }
.btn { font-family:var(--display); font-size:17px; text-transform:uppercase; letter-spacing:0.04em; text-decoration:none; padding:14px 24px; border:2px solid; text-align:center; }
.btn-primary { background:var(--red); border-color:var(--red); color:#fff; }
.btn-primary:hover { background:var(--red-dark); border-color:var(--red-dark); color:#fff; }
.btn-secondary { border-color:var(--ink); color:var(--ink); }
.btn-secondary:hover { background:var(--ink); color:#fff; }
.btn:focus-visible, .langs button:focus-visible { outline:3px solid var(--ink); outline-offset:3px; }
[hidden] { display:none !important; }

@media (max-width:900px) {
  .bar { font-size:11px; letter-spacing:0.14em; padding:10px 18px; }
  .nav { height:60px; padding:0 20px; }
  .brand { font-size:17px; gap:10px; }
  .brand img { height:28px; }
  .langs { gap:2px; }
  .langs button { font-size:11px; padding:0 9px; height:44px; }
  .hero { grid-template-columns:1fr; gap:26px; padding:36px 26px 40px; justify-items:center; text-align:center; }
  .hero .logo { width:min(100%,210px); }
  .copy { align-items:center; }
  .kicker { font-size:11px; }
  .sub { font-size:16px; }
  .actions { flex-direction:column; align-self:stretch; gap:10px; }
  .btn { font-size:16px; padding:15px; }
}
