/* Vettiorum — generated from tokens.json (2026-11-03). Fonts: */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:wdth,wght@75..100,400..700&family=Space+Grotesk:wght@400;500;600&display=swap');
:root {
  --paper: #f2eee6;
  --paper-deep: #e2d9ca;
  --stone: #d8d0be;
  --courtyard: #e5dccc;
  --hover: #e6ded2;
  --ink: #292a27;
  --muted: #74776d;
  --meta: #65584c;
  --label: #77614e;
  --door-kind: #6c6255;
  --terracotta: #9b5d45;
  --focus: #8b4c36;
  --lit-wash: rgba(155, 93, 69, 0.11);
  --lit-line: rgba(155, 93, 69, 0.5);
  --olive: #68704f;
  --sky: #78a7d2;
  --gold: #b08a4f;
  --line: rgba(41, 42, 39, 0.22);
  --rule: #a99b86;
  --rule-soft: #bcb4a7;
  --courtyard-line: #bfb19e;
  --panel-line: #c9c0b2;
  --catalogue-line: #d5ccbe;
  --space-2: 10px;
  --space-3: 14px;
  --space-4: 16px;
  --space-6: 24px;
  --space-7: 28px;
  --space-10: 42px;
  --space-15: 60px;
  --space-24: 96px;
  --radius-none: 0;
  --radius-round: 50%;
  --shadow-hairline: 0 0 0 1px rgba(41, 42, 39, 0.22);
  --shadow-panel: 0 8px 25px rgba(41, 42, 39, 0.08);
  --shell-max: 1220px;
  --study-max: 1250px;
  --essay-max: 780px;
  --measure: 650px;
  --breakpoint-sm: 720px;
  --font-copy: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  --font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
}
.hero-title { font-family: var(--font-copy); font-size: 8.8rem; line-height: 0.84; font-weight: 500; letter-spacing: -0.07em; }
.page-title { font-family: var(--font-copy); font-size: 6.6rem; line-height: 0.9; font-weight: 500; letter-spacing: -0.07em; }
.section-title { font-family: var(--font-copy); font-size: 5rem; line-height: 0.95; font-weight: 500; letter-spacing: -0.07em; }
.room-title { font-family: var(--font-copy); font-size: 46px; line-height: 1.1; font-weight: 500; letter-spacing: -0.045em; }
.subhead { font-family: var(--font-copy); font-size: 20px; line-height: 1.4; font-weight: 500; }
.lede { font-family: var(--font-copy); font-size: 1.7rem; line-height: 1.32; font-weight: 400; }
.essay { font-family: var(--font-copy); font-size: 1.25rem; line-height: 1.62; font-weight: 400; }
.body { font-family: var(--font-copy); font-size: 18px; line-height: 1.75; font-weight: 400; }
.caption { font-family: var(--font-copy); font-size: 15px; line-height: 1.7; font-weight: 400; }
.small { font-family: var(--font-copy); font-size: 13px; line-height: 1.5; font-weight: 400; }
.wordmark { font-family: var(--font-copy); font-size: 1.45rem; line-height: 1; font-weight: 500; letter-spacing: -0.04em; }
.room-name { font-family: var(--font-display); font-size: 1.1rem; line-height: 1.2; font-weight: 500; letter-spacing: -0.04em; }
.eyebrow { font-family: var(--font-copy); font-size: 0.68rem; line-height: 1.5; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; }
.kind { font-family: var(--font-copy); font-size: 0.7rem; line-height: 1.4; font-weight: 400; letter-spacing: 0.12em; text-transform: uppercase; }
.cta { font-family: var(--font-copy); font-size: 0.72rem; line-height: 1.4; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; }
.mark-core { font-family: var(--font-display); font-size: 2rem; line-height: 1.05; font-weight: 500; }
