/* Manrope, Latin subset, SIL OFL 1.1. See assets/fonts/Manrope-OFL.txt. */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('/assets/fonts/manrope-latin-v20.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* Shared foundations for public pages and the editorial surface. */
:root {
  --paper: #f7f6f2;
  --white: #fff;
  --ink: #252f29;
  --muted: #626c64;
  --line: #dfe4db;
  --orange: #c83f25;
  --orange-tint: #fcf0ea;
  --green: #345741;
  --green-dark: #254331;
  --tint: #edf2e9;
  --hover: #f4f7ef;
  --warning: #805c20;
  --logo-dark: #26372d;
  --radius: 12px;
  --sans: 'Manrope', sans-serif;
  --display: 'Manrope', sans-serif;
  --display-weight: 600;
  --display-tracking: -.015em;
  --accent: var(--orange);
  --surface-nav: #eeeee7;
  --on-accent-overlay: #ffffff26;
  --agenda-border-soft: #dccfc7;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --type-xs: 12px;
  --type-sm: 14px;
  --type-body: 15px;
  --radius-sm: 8px;
  --radius-lg: 16px;
  --radius-pill: 999px;
  --control-height: 44px;
  --field-border: #a6b0a8;
  --border-strong: #9eaf96;
  --danger: #8d1923;
  --warning-surface: #fcf4e5;
  --warning-line: #e1d2b6;
  --shadow-sm: 0 2px 8px #26392a12;
  --motion-fast: 160ms;
  --motion-normal: 250ms;
  --focus-ring: 3px solid var(--green);
  --agenda-surface: #fff4ec;
  --agenda-border: #c78460;
  --agenda-accent: #a34324;
  --agenda-muted: #695b53;
}
* { box-sizing:border-box; }
textarea { font:inherit; color:inherit; }
:where(button,a,input,select,textarea,summary):focus-visible { outline:var(--focus-ring); outline-offset:4px; }
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
@media(forced-colors:active) {
 :focus-visible { outline-color:Highlight; }
 :is(.primary,.secondary,.tabs button,.weekly-periods a,.view-switch button) { border:1px solid ButtonText; }
 [aria-current],button[aria-pressed="true"] { outline:2px solid Highlight; outline-offset:-3px; }
}
