/* SteigenFlow tokens — translated for the loud-style polish pass */

:root {
  /* Foundation */
  --sf-white: #FFFFFF;
  --sf-cream: #FAFAF9;
  --sf-ink: #0F172A;
  --sf-ink-deeper: #080D1B;
  --sf-ink-soft: #1A2236;
  --sf-muted: #475569;
  --sf-muted-2: #64748B;
  --sf-muted-3: #94A3B8;
  --sf-line: #E2E8F0;
  --sf-line-dark: rgba(255,255,255,0.08);
  --sf-line-dark-2: rgba(255,255,255,0.14);
  --sf-surface-soft: #F1F5F9;

  /* Brand */
  --sf-green: #10B981;
  --sf-green-deep: #059669;
  --sf-green-deeper: #047857;
  --sf-green-soft: #ECFDF5;
  --sf-green-glow: rgba(16,185,129,0.32);

  /* Accents */
  --sf-amber: #D97706;
  --sf-red: #DC2626;
  --sf-purple: #7C3AED;

  /* Type */
  --sf-font-display: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --sf-font-body: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;
  --sf-font-mono: "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;

  /* Motion */
  --sf-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --sf-ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --sf-dur-fast: 200ms;
  --sf-dur-base: 400ms;
  --sf-dur-slow: 800ms;

  --sf-stripe: 4px;
  --container: 1440px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

html, body {
  background: var(--sf-ink-deeper);
  color: var(--sf-white);
  font-family: var(--sf-font-body);
  font-size: 15px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-feature-settings: "ss01", "cv11";
  overflow-x: clip;
}

body { cursor: none; }
a, button { cursor: none; }

@media (max-width: 768px) {
  body, a, button { cursor: auto; }
}

img, svg { display: block; max-width: 100%; }
button { background: none; border: 0; color: inherit; font: inherit; }
a { color: inherit; text-decoration: none; }

::selection { background: var(--sf-green-deep); color: white; }

/* Utility */
.mono {
  font-family: var(--sf-font-mono);
  font-feature-settings: "tnum";
}
.eyebrow {
  font-family: var(--sf-font-mono);
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  font-weight: 500;
}
.display {
  font-family: var(--sf-font-display);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.02;
}
.serif { font-family: "Instrument Serif", "Times New Roman", serif; font-style: italic; font-weight: 400; }
