@font-face {
  font-family: "Albert Sans";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/albert-sans.woff2") format("woff2-variations");
}

@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url("/fonts/outfit.woff2") format("woff2-variations");
}

@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("/fonts/jetbrains-mono.woff2") format("woff2-variations");
}

:root {
  --font-display: "Outfit", ui-sans-serif, system-ui, sans-serif;
  --font-body: "Albert Sans", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;

  --color-paper: oklch(98% 0.008 85);
  --color-panel: oklch(99.2% 0.005 80);
  --color-card: oklch(95.4% 0.016 80);
  --color-card-soft: oklch(97.4% 0.010 80);
  --color-ink: oklch(31% 0.014 60);
  --color-ink-strong: oklch(22% 0.012 60);
  --color-muted: oklch(47% 0.013 60);
  --color-rule: oklch(90.5% 0.012 72);
  --color-rule-strong: oklch(83% 0.016 72);
  --color-field-border: oklch(60% 0.016 72);

  --color-honey: oklch(85% 0.115 82);
  --color-honey-deep: oklch(72% 0.135 70);
  --color-honey-ink: oklch(52% 0.135 70);
  --color-required: oklch(55% 0.2 25);
  --color-cocoa: oklch(38% 0.055 55);

  --color-brand-ink: oklch(22% 0.012 60);

  --color-honey-hover: oklch(88% 0.10 82);

  --color-dots: oklch(88% 0.014 72);

  --color-panel-dark: oklch(22% 0.012 60);
  --color-panel-dark-ink: oklch(78% 0.012 60);
  --color-panel-dark-heading: oklch(98% 0.008 85);

  --color-leaf: oklch(90% 0.055 155);
  --color-sky: oklch(89% 0.048 240);
  --color-blush: oklch(89% 0.055 18);

  --text-hero: clamp(2.375rem, 5.6vw, 4.25rem);
  --text-section: clamp(1.875rem, 3.8vw, 3rem);
  --text-subsection: clamp(1.25rem, 2vw, 1.75rem);
  --text-card: clamp(1.125rem, 1.6vw, 1.375rem);
  --text-lead: clamp(1.0625rem, 1.4vw, 1.1875rem);
  --text-base: 1rem;
  --text-sm: 0.9375rem;
  --text-label: 0.75rem;

  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1.25rem;
  --space-lg: 2rem;
  --space-xl: 3.25rem;
  --space-2xl: clamp(3.5rem, 7vw, 6rem);

  --radius-pill: 999px;
  --radius: 12px;
  --radius-sm: 6px;
  --hairline: 1px;
  --page-max: 87.5rem;

  --dur-quick: 180ms;
  --dur-hover: 300ms;
  --dur-enter: 620ms;
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-soft: cubic-bezier(0.4, 0, 0.2, 1);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --color-paper: oklch(21% 0.012 70);
    --color-panel: oklch(24% 0.013 70);
    --color-card: oklch(28% 0.015 70);
    --color-card-soft: oklch(25.5% 0.013 70);
    --color-ink: oklch(92% 0.008 80);
    --color-ink-strong: oklch(97% 0.006 80);
    --color-muted: oklch(74% 0.011 78);
    --color-rule: oklch(34% 0.012 72);
    --color-rule-strong: oklch(44% 0.014 72);
    --color-field-border: oklch(56% 0.016 72);

    --color-honey: oklch(78% 0.12 82);
    --color-honey-deep: oklch(66% 0.13 70);
    --color-honey-ink: oklch(82% 0.12 78);
    --color-required: oklch(70% 0.17 25);
    --color-cocoa: oklch(80% 0.05 60);

    --color-leaf: oklch(34% 0.045 155);
    --color-sky: oklch(34% 0.04 240);
    --color-blush: oklch(34% 0.045 18);

    --color-dots: oklch(27% 0.012 72);
    --color-dots: oklch(27% 0.012 72);
  --color-honey-hover: oklch(84% 0.11 82);
    --color-panel-dark: oklch(16% 0.012 70);
    --color-panel-dark-ink: oklch(76% 0.011 78);
    --color-panel-dark-heading: oklch(96% 0.006 80);
  }
}

:root[data-theme="dark"] {
  --color-paper: oklch(21% 0.012 70);
  --color-panel: oklch(24% 0.013 70);
  --color-card: oklch(28% 0.015 70);
  --color-card-soft: oklch(25.5% 0.013 70);
  --color-ink: oklch(92% 0.008 80);
  --color-ink-strong: oklch(97% 0.006 80);
  --color-muted: oklch(74% 0.011 78);
  --color-rule: oklch(34% 0.012 72);
  --color-rule-strong: oklch(44% 0.014 72);
  --color-field-border: oklch(56% 0.016 72);

  --color-honey: oklch(78% 0.12 82);
  --color-honey-deep: oklch(66% 0.13 70);
  --color-honey-ink: oklch(82% 0.12 78);
  --color-required: oklch(70% 0.17 25);
  --color-cocoa: oklch(80% 0.05 60);

  --color-leaf: oklch(34% 0.045 155);
  --color-sky: oklch(34% 0.04 240);
  --color-blush: oklch(34% 0.045 18);

  --color-dots: oklch(27% 0.012 72);
  --color-honey-hover: oklch(84% 0.11 82);
  --color-panel-dark: oklch(16% 0.012 70);
  --color-panel-dark-ink: oklch(76% 0.011 78);
  --color-panel-dark-heading: oklch(96% 0.006 80);
}
