/* Self-hosted site typefaces — load with tokens so every page has them. */
@font-face {
  font-family: "Lora";
  src: url("../fonts/lora-600.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "Lora";
  src: url("../fonts/lora-700.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  src: url("../fonts/manrope-latin-variable.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}

:root {
  /* Prototype-authoritative warm editorial palette. */
  --clay: var(--swt-palette-8a3a1c, #8a3a1c);
  --acacia: var(--swt-palette-a8542b, #a8542b);
  --brass: var(--swt-palette-b88a3e, #b88a3e);
  --savanna: var(--swt-palette-d9c5a0, #d9c5a0);
  --bush: var(--swt-palette-4a5b48, #4a5b48);
  --espresso: var(--swt-palette-2c241b, #2c241b);
  --stone: #ffffff;
  --sand: var(--swt-palette-e8e4de, #e8e4de);
  --ivory: #ffffff;

  /* Compatibility aliases retain existing catalogue/template contracts. */
  --forest-950: var(--swt-palette-2c241b, #2c241b);
  --forest-900: var(--swt-palette-8a3a1c, #8a3a1c);
  --forest-800: var(--swt-palette-a8542b, #a8542b);
  --forest-700: var(--swt-palette-4a5b48, #4a5b48);
  --ochre-700: var(--swt-palette-8a3a1c, #8a3a1c);
  --ochre-600: var(--swt-palette-a8542b, #a8542b);
  --ochre-500: var(--swt-palette-b88a3e, #b88a3e);
  --sand-300: var(--swt-palette-e8e4de, #e8e4de);
  --sand-200: var(--swt-palette-f3eee6, #f3eee6); /* light text on dark surfaces — not a page fill */
  --sand-100: #ffffff;
  --white: #fff;
  --charcoal: var(--swt-palette-2c241b, #2c241b);
  --muted: var(--swt-palette-756b60, #756b60);
  --border: var(--swt-palette-e8e4de, #e8e4de);
  --success: #2f6b4f;
  --warning: #9b681e;
  --error: #a33a32;
  --brand-deep: var(--espresso);
  --brand-dark: var(--clay);
  --brand-primary: var(--acacia);
  --brand-orange: var(--brass);
  --brand-yellow: var(--brass);
  --brand-cream: #ffffff;
  --brand-ink: var(--espresso);
  --brand-muted: var(--muted);
  --brand-border: var(--sand);
  --canvas: #ffffff;
  --surface: #ffffff;
  --sunward-font-display: "Lora", serif;
  --sunward-font-ui: "Manrope", "Segoe UI", Arial, sans-serif;
  --font-display: var(--sunward-font-display);
  --font-body: var(--sunward-font-ui);
  --font-ui: var(--sunward-font-ui);
  --font-sans: var(--font-body);
  --sunward-heading: var(--swt-palette-171717, #171717);
  --sunward-card-heading: var(--swt-palette-1c1c1c, #1c1c1c);
  --sunward-nav: var(--swt-palette-292929, #292929);
  --sunward-body: var(--swt-palette-3d3d3d, #3d3d3d);
  --sunward-secondary: #555555;
  --sunward-muted: #666666;
  --container: 82.5rem;
  --container-wide: 95rem;
  --reading: 53.75rem;
  --gutter: clamp(1.25rem, 4vw, 3rem);
  --section: clamp(5rem, 8vw, 8rem);
  --radius-sm: .25rem;
  --radius: .5rem;
  --radius-lg: .75rem;
  --shadow: 0 40px 80px -40px var(--swt-palette-2c241b-a240, rgba(44, 36, 27, .24));
  --shadow-soft: 0 16px 40px -18px var(--swt-palette-2c241b-a160, rgba(44, 36, 27, .16));
  --transition: 220ms cubic-bezier(.16, 1, .3, 1);
}
