/* Shared by the home page and the guest page (/g/). */
@font-face { font-family: Inter; font-weight: 400; font-display: swap; src: url(/fonts/Inter-400.ttf) format("truetype"); }
@font-face { font-family: Inter; font-weight: 500; font-display: swap; src: url(/fonts/Inter-500.ttf) format("truetype"); }
@font-face { font-family: Inter; font-weight: 600; font-display: swap; src: url(/fonts/Inter-600.ttf) format("truetype"); }
@font-face { font-family: Inter; font-weight: 700; font-display: swap; src: url(/fonts/Inter-700.ttf) format("truetype"); }

/* Tokens match the app (app/lib/src/theme.dart). */
:root {
  --violet: #6100FF;
  --violet-2: #8A3DFF;
  --mint: #12D282;
  --ink: #261733;
  --brand-gradient: linear-gradient(90deg, var(--violet), var(--mint));
  --button-gradient: linear-gradient(135deg, var(--violet), var(--violet-2));

  --bg: #F6F5F9;
  --surface: #FFFFFF;
  --sys: rgba(38, 23, 51, .04);
  --border: rgba(38, 23, 51, .08);
  --text: #1B1224;
  --text-sec: #6D6580;
  --text-muted: #ABA5B8;
  --accent: var(--violet);
  --tint: rgba(97, 0, 255, .08);
  --glow: .12;
  --shadow: 0 1px 2px rgba(38, 23, 51, .05), 0 8px 24px rgba(38, 23, 51, .06);
  --radius: 20px;
  --radius-sm: 12px;

  --font: Inter, system-ui, -apple-system, sans-serif;
  --gutter: clamp(20px, 5vw, 40px);
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0B0810;
    --surface: #15111C;
    --sys: rgba(255, 255, 255, .06);
    --border: rgba(255, 255, 255, .08);
    --text: #F5F3F8;
    --text-sec: #A29BB0;
    --text-muted: #5F5870;
    --accent: #9A5CFF;
    --tint: rgba(154, 92, 255, .14);
    --glow: .22;
    --shadow: none;
  }
  .logo-day { display: none; }
}
@media (prefers-color-scheme: light) { .logo-night { display: none; } }

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 400 17px/1.55 var(--font);
  letter-spacing: -.011em;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3 { margin: 0; font-weight: 700; line-height: 1.1; letter-spacing: -.03em; text-wrap: balance; }
p { text-wrap: pretty; }
a { color: inherit; }
img, svg { display: block; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 6px; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.wrap { width: min(1160px, 100% - 2 * var(--gutter)); margin-inline: auto; }

.bar { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 76px; }
.brand { display: flex; border-radius: 8px; }
.logo { height: 26px; width: auto; }
.nw { white-space: nowrap; }
