/* ============================================================
   01_ TOKENS
   ============================================================ */
:root {
  /* Palette — Brand Guideline §06 */
  --concrete:       #EDEDE9;
  --card:           #F5F5F2;
  --ink:            #0B0E13;
  --inverse:        #14181F;
  --steel:          #3A4A5C;
  --steel-soft:     rgba(58, 74, 92, .22);
  --steel-line:     rgba(58, 74, 92, .42);
  --steel-tint:     rgba(58, 74, 92, .06);
  --ink-tint:       rgba(11, 14, 19, .04);
  --orange:         #EB531C;          /* genau einmal pro Layout */

  /* Type */
  --font-tight: "Inter Tight", -apple-system, "Segoe UI", system-ui, sans-serif;
  --font-body:  "Inter", -apple-system, "Segoe UI", system-ui, sans-serif;
  --font-mono:  "JetBrains Mono", ui-monospace, "SFMono-Regular", "Menlo", monospace;

  /* Geometry — Werkstatt: harte Kanten, 8px-Basis, 1px Linien */
  --r:   0px;
  --r-2: 2px;

  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-soft: cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================================
   02_ RESET
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
body { margin: 0; }
button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
input, textarea, select { font: inherit; color: inherit; }
ul { list-style: none; padding: 0; margin: 0; }
fieldset { border: 0; padding: 0; margin: 0; }
legend { padding: 0; }
a { color: inherit; }

.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* ============================================================
   03_ BASE
   ============================================================ */
body {
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--concrete);
  font-size: 16px;
  line-height: 1.55;
  min-height: 100svh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-feature-settings: "ss01", "cv11";
  overflow-x: hidden;
}

