/**
 * WordPress custom properties and base element styles extracted from theme.json.
 * Auto-generated — do not edit.
 */
:root {
  --wp--preset--color--base: #FFFFFF;
  --wp--preset--color--contrast: #1A1A2E;
  --wp--preset--color--accent-1: #0D9488;
  --wp--preset--color--accent-1-dark: #0F766E;
  --wp--preset--color--accent-2: #CCFBF1;
  --wp--preset--color--accent-3: #475569;
  --wp--preset--color--accent-4: #F1F5F9;
  --wp--preset--color--accent-5: #FFF7ED;
  --wp--preset--color--accent-6: color-mix(in srgb, currentColor 20%, transparent);
  --wp--preset--color--evidence-strong: #16A34A;
  --wp--preset--color--evidence-moderate: #D97706;
  --wp--preset--color--evidence-weak: #DC2626;
  --wp--preset--color--success: #16A34A;
  --wp--preset--color--warning: #D97706;
  --wp--preset--color--error: #DC2626;
  --wp--preset--color--info: #0284C7;
  --wp--preset--color--focus-ring: #0D9488;
  --wp--preset--color--surface-raised: #FFFFFF;
  --wp--preset--color--surface-sunken: #F8FAFC;
  --wp--preset--color--border-default: #E2E8F0;
  --wp--preset--color--border-strong: #CBD5E1;
  --wp--preset--color--text-muted: #94A3B8;
  --wp--preset--font-family--body: Inter, system-ui, sans-serif;
  --wp--preset--font-family--heading: 'Source Serif 4', Georgia, serif;
  --wp--preset--font-family--monospace: 'Fira Code', monospace;
  --wp--preset--font-size--xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.8rem);
  --wp--preset--font-size--sm: clamp(0.8rem, 0.775rem + 0.25vw, 0.875rem);
  --wp--preset--font-size--base: 1rem;
  --wp--preset--font-size--md: clamp(1.05rem, 1rem + 0.25vw, 1.125rem);
  --wp--preset--font-size--lg: clamp(1.15rem, 1.05rem + 0.5vw, 1.3rem);
  --wp--preset--font-size--xl: clamp(1.25rem, 1.1rem + 0.75vw, 1.5rem);
  --wp--preset--font-size--2xl: clamp(1.5rem, 1.25rem + 1.25vw, 2rem);
  --wp--preset--font-size--3xl: clamp(1.875rem, 1.5rem + 1.875vw, 2.75rem);
  --wp--preset--font-size--4xl: clamp(2.25rem, 1.75rem + 2.5vw, 3.5rem);
  --wp--preset--spacing--10: 8px;
  --wp--preset--spacing--20: 10px;
  --wp--preset--spacing--30: 20px;
  --wp--preset--spacing--40: 30px;
  --wp--preset--spacing--50: clamp(30px, 5vw, 50px);
  --wp--preset--spacing--60: clamp(30px, 7vw, 70px);
  --wp--preset--spacing--70: clamp(50px, 7vw, 90px);
  --wp--preset--spacing--80: clamp(70px, 10vw, 140px);
  --wp--custom--line-height--tight: 1.2;
  --wp--custom--line-height--snug: 1.35;
  --wp--custom--line-height--normal: 1.6;
  --wp--custom--line-height--relaxed: 1.75;
  --wp--custom--letter-spacing--tight: -0.025em;
  --wp--custom--letter-spacing--normal: 0;
  --wp--custom--letter-spacing--wide: 0.025em;
  --wp--custom--letter-spacing--wider: 0.05em;
  --wp--custom--border-radius--none: 0;
  --wp--custom--border-radius--sm: 4px;
  --wp--custom--border-radius--md: 6px;
  --wp--custom--border-radius--lg: 8px;
  --wp--custom--border-radius--xl: 12px;
  --wp--custom--border-radius--full: 9999px;
  --wp--custom--shadow--sm: 0 1px 2px rgba(0,0,0,0.05);
  --wp--custom--shadow--md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
  --wp--custom--shadow--lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1);
  --wp--custom--shadow--xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1);
  --wp--custom--border-width--thin: 1px;
  --wp--custom--border-width--medium: 2px;
  --wp--custom--border-width--thick: 3px;
  --wp--custom--transition--fast: 150ms ease;
  --wp--custom--transition--normal: 250ms ease;
  --wp--custom--transition--slow: 400ms ease;
  --wp--custom--transition--easing: cubic-bezier(0.4, 0, 0.2, 1);
  --wp--custom--layout--content: 720px;
  --wp--custom--layout--wide: 1080px;
  --wp--custom--layout--full: 100%;
  --wp--custom--layout--sidebar: 280px;
  --wp--custom--layout--gap: 40px;
  --wp--custom--layout--page-max: 1200px;
  --wp--custom--z-index--base: 0;
  --wp--custom--z-index--dropdown: 10;
  --wp--custom--z-index--sticky: 20;
  --wp--custom--z-index--header: 30;
  --wp--custom--z-index--overlay: 40;
  --wp--custom--z-index--modal: 50;
  --wp--custom--opacity--disabled: 0.4;
  --wp--custom--opacity--muted: 0.6;
  --wp--custom--opacity--hover: 0.8;
  --wp--custom--opacity--visible: 1;
}

body {
  margin: 0;
}

body {
  background-color: var(--wp--preset--color--base);
  color: var(--wp--preset--color--contrast);
  font-family: var(--wp--preset--font-family--body);
  font-size: var(--wp--preset--font-size--base);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--wp--preset--color--contrast);
  font-family: var(--wp--preset--font-family--heading);
  font-weight: 700;
  line-height: 1.2;
}

h1 {
  font-size: var(--wp--preset--font-size--3-xl);
}

h2 {
  font-size: var(--wp--preset--font-size--2-xl);
}

h3 {
  font-size: var(--wp--preset--font-size--xl);
}

h4 {
  font-size: var(--wp--preset--font-size--lg);
  line-height: 1.35;
}

h5 {
  font-size: var(--wp--preset--font-size--md);
}

h6 {
  font-size: var(--wp--preset--font-size--base);
}

a:where(:not(.wp-element-button)) {
  color: var(--wp--preset--color--accent-1);
}

a:where(:not(.wp-element-button)):hover {
  color: var(--wp--preset--color--contrast);
}

a:where(:not(.wp-element-button)):focus {
  color: var(--wp--preset--color--accent-1);
}

a:where(:not(.wp-element-button)):active {
  color: var(--wp--preset--color--contrast);
}

.wp-element-button, input[type="submit"], button {
  background-color: var(--wp--preset--color--accent-1);
  color: var(--wp--preset--color--base);
  font-family: var(--wp--preset--font-family--body);
  font-weight: 600;
  border-radius: 6px;
}

.wp-element-button:hover, input[type="submit"]:hover, button:hover {
  background-color: var(--wp--preset--color--contrast);
  color: var(--wp--preset--color--base);
}

.wp-element-button:focus, input[type="submit"]:focus, button:focus {
  background-color: var(--wp--preset--color--accent-1);
  color: var(--wp--preset--color--base);
}

.wp-element-button:active, input[type="submit"]:active, button:active {
  background-color: var(--wp--preset--color--accent-1-dark);
  color: var(--wp--preset--color--base);
}

.wp-element-caption {
  color: var(--wp--preset--color--accent-3);
  font-size: var(--wp--preset--font-size--sm);
}

.wp-element-button, input[type="submit"], button {
  display: inline-block;
  padding: 0.7em 1.4em;
  border: none;
  cursor: pointer;
  text-decoration: none;
}

.has-base-color {
  color: var(--wp--preset--color--base) !important;
}

.has-base-background-color {
  background-color: var(--wp--preset--color--base) !important;
}

.has-contrast-color {
  color: var(--wp--preset--color--contrast) !important;
}

.has-contrast-background-color {
  background-color: var(--wp--preset--color--contrast) !important;
}

.has-accent-1-color {
  color: var(--wp--preset--color--accent-1) !important;
}

.has-accent-1-background-color {
  background-color: var(--wp--preset--color--accent-1) !important;
}

.has-accent-1-dark-color {
  color: var(--wp--preset--color--accent-1-dark) !important;
}

.has-accent-1-dark-background-color {
  background-color: var(--wp--preset--color--accent-1-dark) !important;
}

.has-accent-2-color {
  color: var(--wp--preset--color--accent-2) !important;
}

.has-accent-2-background-color {
  background-color: var(--wp--preset--color--accent-2) !important;
}

.has-accent-3-color {
  color: var(--wp--preset--color--accent-3) !important;
}

.has-accent-3-background-color {
  background-color: var(--wp--preset--color--accent-3) !important;
}

.has-accent-4-color {
  color: var(--wp--preset--color--accent-4) !important;
}

.has-accent-4-background-color {
  background-color: var(--wp--preset--color--accent-4) !important;
}

.has-accent-5-color {
  color: var(--wp--preset--color--accent-5) !important;
}

.has-accent-5-background-color {
  background-color: var(--wp--preset--color--accent-5) !important;
}

.has-accent-6-color {
  color: var(--wp--preset--color--accent-6) !important;
}

.has-accent-6-background-color {
  background-color: var(--wp--preset--color--accent-6) !important;
}

.has-evidence-strong-color {
  color: var(--wp--preset--color--evidence-strong) !important;
}

.has-evidence-strong-background-color {
  background-color: var(--wp--preset--color--evidence-strong) !important;
}

.has-evidence-moderate-color {
  color: var(--wp--preset--color--evidence-moderate) !important;
}

.has-evidence-moderate-background-color {
  background-color: var(--wp--preset--color--evidence-moderate) !important;
}

.has-evidence-weak-color {
  color: var(--wp--preset--color--evidence-weak) !important;
}

.has-evidence-weak-background-color {
  background-color: var(--wp--preset--color--evidence-weak) !important;
}

.has-success-color {
  color: var(--wp--preset--color--success) !important;
}

.has-success-background-color {
  background-color: var(--wp--preset--color--success) !important;
}

.has-warning-color {
  color: var(--wp--preset--color--warning) !important;
}

.has-warning-background-color {
  background-color: var(--wp--preset--color--warning) !important;
}

.has-error-color {
  color: var(--wp--preset--color--error) !important;
}

.has-error-background-color {
  background-color: var(--wp--preset--color--error) !important;
}

.has-info-color {
  color: var(--wp--preset--color--info) !important;
}

.has-info-background-color {
  background-color: var(--wp--preset--color--info) !important;
}

.has-focus-ring-color {
  color: var(--wp--preset--color--focus-ring) !important;
}

.has-focus-ring-background-color {
  background-color: var(--wp--preset--color--focus-ring) !important;
}

.has-surface-raised-color {
  color: var(--wp--preset--color--surface-raised) !important;
}

.has-surface-raised-background-color {
  background-color: var(--wp--preset--color--surface-raised) !important;
}

.has-surface-sunken-color {
  color: var(--wp--preset--color--surface-sunken) !important;
}

.has-surface-sunken-background-color {
  background-color: var(--wp--preset--color--surface-sunken) !important;
}

.has-border-default-color {
  color: var(--wp--preset--color--border-default) !important;
}

.has-border-default-background-color {
  background-color: var(--wp--preset--color--border-default) !important;
}

.has-border-strong-color {
  color: var(--wp--preset--color--border-strong) !important;
}

.has-border-strong-background-color {
  background-color: var(--wp--preset--color--border-strong) !important;
}

.has-text-muted-color {
  color: var(--wp--preset--color--text-muted) !important;
}

.has-text-muted-background-color {
  background-color: var(--wp--preset--color--text-muted) !important;
}

.has-xs-font-size {
  font-size: var(--wp--preset--font-size--xs) !important;
}

.has-sm-font-size {
  font-size: var(--wp--preset--font-size--sm) !important;
}

.has-base-font-size {
  font-size: var(--wp--preset--font-size--base) !important;
}

.has-md-font-size {
  font-size: var(--wp--preset--font-size--md) !important;
}

.has-lg-font-size {
  font-size: var(--wp--preset--font-size--lg) !important;
}

.has-xl-font-size {
  font-size: var(--wp--preset--font-size--xl) !important;
}

.has-2xl-font-size {
  font-size: var(--wp--preset--font-size--2xl) !important;
}

.has-3xl-font-size {
  font-size: var(--wp--preset--font-size--3xl) !important;
}

.has-4xl-font-size {
  font-size: var(--wp--preset--font-size--4xl) !important;
}

.has-body-font-family {
  font-family: var(--wp--preset--font-family--body) !important;
}

.has-heading-font-family {
  font-family: var(--wp--preset--font-family--heading) !important;
}

.has-monospace-font-family {
  font-family: var(--wp--preset--font-family--monospace) !important;
}

.is-layout-flow > * {
  margin-block-start: 0;
  margin-block-end: 0;
}

.is-layout-flow > * + * {
  margin-block-start: 1.5rem;
}

.is-layout-constrained > * {
  max-width: 720px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.is-layout-constrained > .alignwide {
  max-width: 1080px;
}

.is-layout-constrained > .alignfull {
  max-width: none;
}

.is-layout-flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em;
}

.is-layout-grid {
  display: grid;
  gap: 0.5em;
}

.wp-block-quote {
  font-family: var(--wp--preset--font-family--body);
  font-size: var(--wp--preset--font-size--md);
  font-style: normal;
  border-left-width: 3px;
  border-left-style: solid;
  border-left-color: var(--wp--preset--color--accent-1);
}

.wp-block-separator {
  background-color: var(--wp--preset--color--border-default);
}
