/* Design tokens — Ink & Beauty BCN */
:root {
  /* Color */
  --bg: #0a0a0b;
  --bg-2: #111113;
  --bg-3: #18181b;
  --surface: #1a1a1d;
  --surface-2: #222226;
  --line: rgba(255, 255, 255, 0.08);
  --line-2: rgba(255, 255, 255, 0.14);

  --text: #f4f2ec;
  --text-2: rgba(244, 242, 236, 0.78);
  --text-3: rgba(244, 242, 236, 0.52);
  --text-4: rgba(244, 242, 236, 0.32);

  --gold: #d4af37;
  --gold-2: #e8c86a;
  --gold-3: #b8932a;
  --gold-soft: rgba(212, 175, 55, 0.12);
  --gold-glow: rgba(212, 175, 55, 0.25);

  --ok: #7db287;
  --warn: #e0a152;
  --err: #d87070;

  /* Type */
  --f-display: 'Fraunces', 'Times New Roman', serif;
  --f-ui: 'Inter Tight', 'Inter', system-ui, sans-serif;
  --f-mono: 'JetBrains Mono', ui-monospace, monospace;

  /* Spacing */
  --unit: 8px;
  --radius-s: 6px;
  --radius-m: 12px;
  --radius-l: 20px;
  --radius-xl: 32px;

  /* Motion */
  --ease-out: cubic-bezier(.22,.61,.36,1);
  --ease-in-out: cubic-bezier(.65,.05,.36,1);
  --ease-expo: cubic-bezier(.19,1,.22,1);
}

*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
  font-family: var(--f-ui);
  background: var(--bg);
  color: var(--text);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; border: none; background: none; color: inherit; }

::selection { background: var(--gold); color: #000; }

/* Noise */
.noise {
  position: fixed; inset: 0; pointer-events: none; z-index: 9999;
  opacity: 0.035; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.9'/></svg>");
}
