*, :before, :after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

html {
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  hanging-punctuation: first last;
  scroll-behavior: smooth;
}

body {
  line-height: var(--leading-normal, 1.5);
  -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
  max-width: 100%;
  display: block;
}

input, button, textarea, select {
  font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

p, li, figcaption {
  text-wrap: pretty;
  max-width: 65ch;
}

a {
  color: inherit;
}

:root {
  --text-xs: .75rem;
  --text-sm: .875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 1.875rem;
  --text-4xl: 2.25rem;
  --text-5xl: 3rem;
  --text-6xl: 3.75rem;
  --text-7xl: 4.5rem;
  --font-display: "Barlow Condensed", system-ui, sans-serif;
  --font-body: "Barlow", system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;
  --leading-tight: 1.15;
  --leading-snug: 1.3;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;
  --tracking-tight: -.02em;
  --tracking-normal: 0em;
  --tracking-wide: .04em;
  --tracking-wider: .08em;
  --tracking-widest: .12em;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-32: 8rem;
  --radius-none: 0;
  --radius-sm: 2px;
  --radius-base: 4px;
  --radius-md: 6px;
  --radius-lg: 10px;
  --radius-xl: 16px;
  --radius-pill: 9999px;
  --shadow-xs: 0 1px 2px 0 #0000000d;
  --shadow-sm: 0 1px 3px 0 #0000001a,
                  0 1px 2px -1px #0000001a;
  --shadow-md: 0 4px 6px -1px #0000001a,
                  0 2px 4px -2px #0000001a;
  --shadow-lg: 0 10px 15px -3px #0000001a,
                  0 4px 6px -4px #0000001a;
  --shadow-xl: 0 20px 25px -5px #0000001a,
                  0 8px 10px -6px #0000001a;
  --shadow-inner: inset 0 2px 4px 0 #0000000f;
  --duration-fast: .1s;
  --duration-base: .2s;
  --duration-slow: .3s;
  --duration-slower: .5s;
  --ease-standard: cubic-bezier(.4, 0, .2, 1);
  --ease-out: cubic-bezier(0, 0, .2, 1);
  --ease-in: cubic-bezier(.4, 0, 1, 1);
  --ease-spring: cubic-bezier(.34, 1.56, .64, 1);
  --container-sm: 48rem;
  --container-md: 64rem;
  --container-lg: 80rem;
  --container-xl: 90rem;
  --z-base: 0;
  --z-raised: 10;
  --z-overlay: 100;
  --z-modal: 200;
  --z-toast: 300;
  --z-nav: 400;
}

[data-theme="slate"] {
  --color-bg: #f7f6f3;
  --color-surface: #fff;
  --color-surface-muted: #edebe7;
  --color-surface-invert: #1e2d40;
  --color-border: #d4cfc8;
  --color-border-strong: #a09890;
  --color-text: #1c1a18;
  --color-text-secondary: #544f4a;
  --color-text-muted: #706860;
  --color-text-inverse: #f2f4f8;
  --color-primary: #1e2d40;
  --color-primary-hover: #263850;
  --color-primary-muted: #e2e6ec;
  --color-on-primary: #f2f4f8;
  --color-accent: #d4570c;
  --color-accent-hover: #b84a0a;
  --color-accent-muted: #fdebd5;
  --color-on-accent: #fff;
  --color-success: #2d6a4f;
  --color-success-muted: #d8efdf;
  --color-warning: #b45309;
  --color-warning-muted: #fef3c7;
  --color-error: #c0392b;
  --color-error-muted: #fdeded;
}

[data-theme="clay"] {
  --color-bg: #f6f5f3;
  --color-surface: #fff;
  --color-surface-muted: #edeae8;
  --color-surface-invert: #493727;
  --color-border: #d6d1cd;
  --color-border-strong: #afa59d;
  --color-text: #221e1c;
  --color-text-secondary: #635b54;
  --color-text-muted: #938c85;
  --color-text-inverse: #f6f5f3;
  --color-primary: #493727;
  --color-primary-hover: #5d4632;
  --color-primary-muted: #e9e5e2;
  --color-on-primary: #f6f5f3;
  --color-accent: #bd3c28;
  --color-accent-hover: #a03322;
  --color-accent-muted: #fae8e6;
  --color-on-accent: #fff;
  --color-success: #32674d;
  --color-success-muted: #ddeee6;
  --color-warning: #b3801a;
  --color-warning-muted: #faf0db;
  --color-error: #b13125;
  --color-error-muted: #fae7e6;
}

[data-theme="forest"] {
  --color-bg: #f4f6f5;
  --color-surface: #fff;
  --color-surface-muted: #e9ecea;
  --color-surface-invert: #203c29;
  --color-border: #cdd5d0;
  --color-border-strong: #9fada3;
  --color-text: #1c221e;
  --color-text-secondary: #56615a;
  --color-text-muted: #88918b;
  --color-text-inverse: #f4f6f5;
  --color-primary: #203c29;
  --color-primary-hover: #2b5037;
  --color-primary-muted: #e2e9e4;
  --color-on-primary: #f4f6f5;
  --color-accent: #c58120;
  --color-accent-hover: #a76d1b;
  --color-accent-muted: #fbf2e5;
  --color-on-accent: #fff;
  --color-success: #2c633e;
  --color-success-muted: #dcefe2;
  --color-warning: #af8b1d;
  --color-warning-muted: #f9f2dc;
  --color-error: #ab362b;
  --color-error-muted: #f9e8e7;
}

body {
  font-family: var(--font-body);
  font-size: var(--text-base);
  color: var(--color-text);
  background: var(--color-bg);
}

::selection {
  background: var(--color-accent-muted);
  color: var(--color-accent-hover);
}

:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
  border-radius: var(--radius-sm);
}

.skip-link {
  top: -100%;
  left: var(--space-4);
  z-index: calc(var(--z-nav) + 1);
  padding: var(--space-3) var(--space-5);
  background: var(--color-accent);
  color: var(--color-on-accent);
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  border-radius: var(--radius-base);
  transition: top var(--duration-fast) var(--ease-out);
  text-decoration: none;
  position: absolute;
}

.skip-link:focus {
  top: var(--space-3);
}

.cp-placeholder {
  min-height: 60vh;
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  justify-content: center;
  align-items: center;
  display: flex;
}
/*# sourceMappingURL=pages.40f091a3.css.map */
