/* ivory — token skin, scoped to [data-theme="ivory"] (theme scope). Consumes base.css + foundations token API. */

[data-theme="ivory"] { --bg: #FBF8F1;
  --bg-alt: #F4EFE3;
  --bg-dark: #1E4634;             
  --surface: #FFFFFF;
  --ink: #2C2A24;
  --ink-inverse: #F6F1E5;
  --text-body: #2C2A24;
  --muted: #6E685C;
  --accent: #1E4634;
  --accent-hover: #163526;
  --accent-tint: #E7EDE6;
  --accent-2: #B08D57;            
  --line: #E4DCC8;

  
  --font-display: 'Playfair Display', Georgia, serif;
  --font-body: 'Lora', Georgia, serif;
  --font-utility: 'Lora', Georgia, serif;
  --display-weight: 500;
  --fs-h1: clamp(2.5rem, 5vw, 3.75rem); /* @kind font */
  --fs-h2: clamp(1.875rem, 3.5vw, 2.5rem); /* @kind font */
  --fs-h3: 1.25rem;
  --fs-body: 1.0625rem;
  --lh-body: 1.8; /* @kind font */
  --fs-eyebrow: 0.875rem;
  --eyebrow-tracking: 0.14em;
  --eyebrow-color: var(--accent-2);

  
  --radius-sm: 3px;
  --radius-md: 4px;
  --radius-lg: 4px;
  --shadow: none;
  --speed: 300ms; /* @kind other */
  --btn-secondary-border: var(--accent); }

[data-theme="ivory"] .small-caps { font-variant: small-caps; letter-spacing: 0.14em; }

[data-theme="ivory"] .eyebrow { font-variant: small-caps; text-transform: none; }

[data-theme="ivory"] .rule-ornament { width: 64px; height: 1px;
  background: var(--accent-2);
  margin: 0 auto 24px;
  position: relative; }

[data-theme="ivory"] .rule-ornament::after { content: ""; width: 5px; height: 5px; border-radius: 50%;
  background: var(--accent-2);
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }

[data-theme="ivory"] .frame-double { border: 1px solid var(--line);
  padding: 4px;
  background: var(--surface); }

[data-theme="ivory"] .frame-double > * { border: 1px solid var(--accent-2); display: block; }

[data-theme="ivory"] .prose .drop-cap::first-letter { font-family: var(--font-display);
  font-size: 3.2em; line-height: 0.85;
  float: left; padding-right: 0.08em;
  color: var(--accent); }

[data-theme="ivory"] blockquote { font-style: italic; font-size: 1.375rem; color: var(--ink); }

[data-theme="ivory"] .btn-ghost { color: var(--accent); font-variant: small-caps; letter-spacing: 0.14em; }

[data-theme="ivory"] .btn-ghost:hover { box-shadow: inset 0 -1px 0 var(--accent-2); }

[data-theme="ivory"] .btn-ghost::after { content: none; }

[data-theme="ivory"] .site-footer { background: var(--bg-dark); color: var(--ink-inverse); border-top: 1px solid var(--accent-2); }

[data-theme="ivory"] .band { border-top: 1px solid var(--accent-2); }
