@font-face {
  font-family: "Cormorant Garamond";
  src: url("../assets/fonts/CormorantGaramond-wght.ttf") format("truetype");
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
}

@font-face {
  font-family: "Atkinson Hyperlegible";
  src: url("../assets/fonts/AtkinsonHyperlegible-Regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Atkinson Hyperlegible";
  src: url("../assets/fonts/AtkinsonHyperlegible-Bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  color-scheme: light;

  /* Locked Hollow Wise brand palette. */
  --hw-pine: #243b30;
  --hw-parchment: #f4f0e6;
  --hw-moss: #526b57;
  --hw-lichen: #8fa58c;
  --hw-mist: #dce4de;
  --hw-clay: #a9553f;
  --hw-ink: #1d2922;
  --hw-paper: #fffdf8;

  /* Semantic colors. */
  --hw-success: #3f6b53;
  --hw-warning: #8a5e25;
  --hw-error: #934a45;
  --hw-info: #4d6d78;

  /* Applied color roles. */
  --hw-bg: var(--hw-parchment);
  --hw-surface: var(--hw-paper);
  --hw-surface-soft: var(--hw-mist);
  --hw-surface-dark: var(--hw-pine);
  --hw-text: var(--hw-ink);
  --hw-text-brand: var(--hw-pine);
  --hw-text-muted: var(--hw-moss);
  --hw-text-on-dark: var(--hw-parchment);
  --hw-border: var(--hw-lichen);
  --hw-border-soft: #c8d2ca;
  --hw-action: var(--hw-pine);
  --hw-action-hover: #182a21;
  --hw-action-text: var(--hw-parchment);
  --hw-focus-light: var(--hw-clay);
  --hw-focus-dark: #e0b18a;

  /* Typography. */
  --hw-font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --hw-font-ui: "Atkinson Hyperlegible", Arial, sans-serif;
  --hw-text-xs: 0.8125rem;
  --hw-text-sm: 0.9375rem;
  --hw-text-body: 1.125rem;
  --hw-text-body-lg: 1.25rem;
  --hw-text-h3: clamp(1.5rem, 1.35rem + 0.65vw, 1.875rem);
  --hw-text-h2: clamp(2rem, 1.65rem + 1.45vw, 2.75rem);
  --hw-text-h1: clamp(2.75rem, 2.1rem + 2.7vw, 4.25rem);
  --hw-text-display: clamp(3.5rem, 2.35rem + 5vw, 6.5rem);
  --hw-leading-tight: 0.96;
  --hw-leading-heading: 1.08;
  --hw-leading-body: 1.55;
  --hw-tracking-eyebrow: 0.08em;

  /* Spacing. */
  --hw-space-1: 0.25rem;
  --hw-space-2: 0.5rem;
  --hw-space-3: 0.75rem;
  --hw-space-4: 1rem;
  --hw-space-5: 1.25rem;
  --hw-space-6: 1.5rem;
  --hw-space-8: 2rem;
  --hw-space-10: 2.5rem;
  --hw-space-12: 3rem;
  --hw-space-16: 4rem;
  --hw-space-20: 5rem;

  /* Shape, depth, and layout. */
  --hw-radius-sm: 0.5rem;
  --hw-radius-md: 1rem;
  --hw-radius-lg: 1.5rem;
  --hw-radius-pill: 999px;
  --hw-shadow-sm: 0 1px 2px rgb(29 41 34 / 0.08), 0 6px 18px rgb(29 41 34 / 0.06);
  --hw-shadow-md: 0 18px 48px rgb(29 41 34 / 0.12);
  --hw-shadow-focus: 0 0 0 4px rgb(169 85 63 / 0.2);
  --hw-content-narrow: 42rem;
  --hw-content-reading: 68ch;
  --hw-content-wide: 76rem;

  /* Motion is quiet, functional, and optional. */
  --hw-duration-fast: 120ms;
  --hw-duration-standard: 180ms;
  --hw-duration-slow: 260ms;
  --hw-ease-standard: cubic-bezier(0.2, 0, 0, 1);
}
