/* byOliviaBell Design System — generated from tokens.json */
:root, [data-theme="light"] {
  --charcoal: #3c4245;
  --ink-soft: #5f6669;
  --white: #ffffff;
  --off-white: #f2f2f2;
  --cream: #eee8e3;
  --blush: #dfcdc3;
  --sage: #869979;
  --sage-ink: #56664b;
  --terracotta: #b58b76;
  --terracotta-line: #a97f6a;
  --terracotta-ink: #8a5e4a;
  --plum: #6e4b4f;
  --stone: #b4aba6;
  --line: #d9cfc8;
  --kraft: #ae845c;
  --ivory: #e8e0d5;
  --christmas-red: #c30e20;
  --gold-foil: #a87142;
  --foil-ink: #86572f;
  --shadow-card: 0 1px 2px rgba(60, 66, 69, 0.08), 0 6px 18px rgba(60, 66, 69, 0.08);
  --shadow-lift: 0 2px 4px rgba(60, 66, 69, 0.08), 0 14px 32px rgba(60, 66, 69, 0.14);
  --shadow-overlay: 0 18px 48px rgba(60, 66, 69, 0.18);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 56px;
  --space-8: 88px;
  --radius-none: 0px;
  --radius-card: 3px;
  --radius-pill: 999px;
  --font-script: "Homemade Apple", "Segoe Script", "Bradley Hand", cursive;
  --font-body: Mulish, "Helvetica Neue", Arial, sans-serif;
}
.script-xl { font-family: var(--font-script); font-size: 44px; line-height: 1.35; font-weight: 400; }
.script-l { font-family: var(--font-script); font-size: 30px; line-height: 1.4; font-weight: 400; }
.script-m { font-family: var(--font-script); font-size: 22px; line-height: 1.45; font-weight: 400; }
.display { font-family: var(--font-body); font-size: 48px; line-height: 1.08; font-weight: 300; letter-spacing: -0.015em; }
.heading { font-family: var(--font-body); font-size: 30px; line-height: 1.2; font-weight: 300; letter-spacing: -0.01em; }
.title { font-family: var(--font-body); font-size: 17px; line-height: 1.35; font-weight: 600; }
.body { font-family: var(--font-body); font-size: 16px; line-height: 1.65; font-weight: 400; }
.small { font-family: var(--font-body); font-size: 14px; line-height: 1.5; font-weight: 400; }
.label { font-family: var(--font-body); font-size: 12px; line-height: 1.3; font-weight: 700; letter-spacing: 0.14em; }
.button { font-family: var(--font-body); font-size: 15px; line-height: 1; font-weight: 700; letter-spacing: 0.02em; }
.price { font-family: var(--font-body); font-size: 16px; line-height: 1.3; font-weight: 600; }
