:root {
  --color-brand-primary: oklch(0.42 0.058 0);
  --color-brand-primary-hover: oklch(0.36 0.062 145);
  --color-brand-primary-active: oklch(0.30 0.066 145);
  --color-brand-primary-foreground: oklch(0.97 0.014 90);
  --color-brand-primary-subtle: oklch(0.93 0.022 130);
  --color-brand-secondary: oklch(0.58 0.105 48);
  --color-brand-secondary-hover: oklch(0.52 0.110 48);
  --color-brand-secondary-active: oklch(0.46 0.115 48);
  --color-brand-secondary-foreground: oklch(0.97 0.014 90);
  --color-brand-secondary-subtle: oklch(0.94 0.030 60);
  --color-brand-tertiary: oklch(0.78 0.135 82);
  --color-brand-tertiary-hover: oklch(0.72 0.140 82);
  --color-brand-tertiary-active: oklch(0.66 0.145 82);
  --color-brand-tertiary-foreground: oklch(0.22 0.030 60);
  --color-brand-tertiary-subtle: oklch(0.95 0.040 88);
  --color-accent-1: oklch(0.68 0.045 130);
  --color-accent-1-hover: oklch(0.62 0.050 130);
  --color-accent-1-foreground: oklch(0.22 0.025 145);
  --color-accent-1-subtle: oklch(0.94 0.020 130);
  --color-accent-2: oklch(0.55 0.060 60);
  --color-accent-2-hover: oklch(0.49 0.065 60);
  --color-accent-2-foreground: oklch(0.97 0.014 90);
  --color-accent-2-subtle: oklch(0.93 0.025 70);
  --color-surface-page: oklch(0.972 0.010 88);
  --color-surface-card: oklch(0.955 0.014 88);
  --color-surface-raised: oklch(0.965 0.012 88);
  --color-surface-overlay: oklch(0.920 0.022 90);
  --color-surface-inverse: oklch(0.22 0.025 145);
  --color-surface-hover: oklch(0.945 0.018 88);
  --color-surface-active: oklch(0.92 0.024 88);
  --color-text-default: oklch(0.22 0.020 145);
  --color-text-muted: oklch(0.45 0.020 135);
  --color-text-subtle: oklch(0.58 0.018 130);
  --color-text-disabled: oklch(0.72 0.012 130);
  --color-text-inverse: oklch(0.97 0.014 90);
  --color-text-link: oklch(0.42 0.058 145);
  --color-text-link-hover: oklch(0.36 0.062 145);
  --color-text-link-visited: oklch(0.48 0.080 50);
  --color-border-subtle: oklch(0.92 0.014 100);
  --color-border-default: oklch(0.86 0.020 100);
  --color-border-strong: oklch(0.62 0.040 130);
  --color-border-accent: oklch(0.42 0.058 145);
  --color-border-focus-ring: oklch(0.42 0.058 145 / 0.5);
  --color-border-divider: oklch(0.90 0.018 100);
  --color-status-success-bg: oklch(0.65 0.110 145);
  --color-status-success-text: oklch(0.38 0.085 145);
  --color-status-success-border: oklch(0.55 0.100 145);
  --color-status-success-text-on: oklch(0.97 0.014 90);
  --color-status-success-subtle: oklch(0.94 0.040 145);
  --color-status-warning-bg: oklch(0.72 0.130 75);
  --color-status-warning-text: oklch(0.42 0.090 75);
  --color-status-warning-border: oklch(0.62 0.120 75);
  --color-status-warning-text-on: oklch(0.22 0.030 60);
  --color-status-warning-subtle: oklch(0.95 0.045 78);
  --color-status-danger-bg: oklch(0.55 0.150 28);
  --color-status-danger-text: oklch(0.38 0.120 28);
  --color-status-danger-border: oklch(0.48 0.140 28);
  --color-status-danger-text-on: oklch(0.97 0.014 90);
  --color-status-danger-subtle: oklch(0.95 0.040 28);
  --color-status-info-bg: oklch(0.58 0.060 220);
  --color-status-info-text: oklch(0.35 0.045 220);
  --color-status-info-border: oklch(0.50 0.055 220);
  --color-status-info-text-on: oklch(0.97 0.014 90);
  --color-status-info-subtle: oklch(0.94 0.025 220);
  --color-overlay-backdrop: oklch(0.18 0.022 145 / 0.6);
  --color-overlay-image: oklch(0.18 0.022 145 / 0.32);
  --color-overlay-modal: oklch(0.18 0.022 145 / 0.5);
  --color-table-row-hover: oklch(0.94 0.018 88);
  --color-table-row-selected: oklch(0.93 0.022 130);
  --color-table-row-border: oklch(0.92 0.014 100);
  --color-table-header-bg: oklch(0.95 0.014 88);
  --color-moss-deep: oklch(0.32 0.045 150);
  --color-sage-soft: oklch(0.78 0.030 130);
  --color-leaf-fresh: oklch(0.62 0.110 142);
  --color-terracotta-warm: oklch(0.60 0.105 50);
  --color-soil-deep: oklch(0.34 0.045 55);
  --color-bloom-soft: oklch(0.82 0.075 25);
  --color-bark-warm: oklch(0.42 0.055 65);
  --color-linen-cream: oklch(0.94 0.022 85);
  --space-xs: clamp(0.25rem, 0.4vw + 0.125rem, 0.375rem);
  --space-sm: clamp(0.5rem, 0.6vw + 0.25rem, 0.75rem);
  --space-md: clamp(0.875rem, 1vw + 0.5rem, 1.25rem);
  --space-lg: clamp(1.25rem, 1.5vw + 0.75rem, 2rem);
  --space-xl: clamp(2rem, 2.5vw + 1rem, 3rem);
  --space-2xl: clamp(3rem, 4vw + 1.5rem, 5rem);
  --space-3xl: clamp(4rem, 6vw + 2rem, 7rem);
  --space-4xl: clamp(5rem, 8vw + 2.5rem, 9rem);
  --space-5xl: clamp(6rem, 10vw + 3rem, 12rem);
  --space-section-sm: clamp(2.5rem, 4vw + 1rem, 4.5rem);
  --space-section-md: clamp(3.5rem, 6vw + 1.5rem, 6.5rem);
  --space-section-lg: clamp(4.5rem, 8vw + 2rem, 9.5rem);
  --space-section-xl: clamp(5.5rem, 10vw + 2.5rem, 12rem);
  --space-section-bloom: clamp(7rem, 12vw + 3rem, 14rem);
  --space-prose-rhythm: 1.65rem;
  --space-button-padding-x: clamp(1rem, 1.2vw + 0.5rem, 1.5rem);
  --space-button-padding-y: clamp(0.625rem, 0.7vw + 0.25rem, 0.875rem);
  --space-input-padding-x: clamp(0.875rem, 1vw + 0.5rem, 1.25rem);
  --space-input-padding-y: clamp(0.625rem, 0.7vw + 0.25rem, 0.875rem);
  --space-card-padding: clamp(1.5rem, 2vw + 0.75rem, 2.5rem);
  --space-modal-padding: clamp(2rem, 2.5vw + 1rem, 3rem);
  --radius-sm: 0.375rem;
  --radius-md: 0.625rem;
  --radius-lg: 0.875rem;
  --radius-xl: 1.25rem;
  --radius-bloom: 1.75rem;
  --radius-full: 9999px;
  --radius-button: 0.75rem;
  --radius-input: 0.5rem;
  --radius-card: 1rem;
  --radius-modal: 1.25rem;
  --radius-image: 0.875rem;
  --radius-image-frame: 1.5rem;
  --radius-badge: 9999px;
  --shadow-sm: 0 1px 2px 0 oklch(0.22 0.025 145 / 0.04);
  --shadow-md: 0 4px 24px -8px oklch(0.22 0.025 145 / 0.08);
  --shadow-lg: 0 12px 40px -16px oklch(0.22 0.025 145 / 0.12);
  --shadow-xl: 0 24px 48px -8px oklch(0.22 0.025 145 / 0.16);
  --shadow-inner: inset 0 2px 4px 0 oklch(0.22 0.025 145 / 0.04);
  --shadow-focus-ring: 0 0 0 3px oklch(0.42 0.058 145 / 0.40);
  --shadow-popover: 0 8px 28px -6px oklch(0.22 0.025 145 / 0.12);
  --shadow-modal: 0 24px 56px -12px oklch(0.22 0.025 145 / 0.22);
  --ease-linear: linear;
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.5, 1.5, 0.5, 1);
  --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --ease-bloom: cubic-bezier(0.34, 1.20, 0.64, 1);
  --ease-breath: cubic-bezier(0.45, 0, 0.55, 1);
  --ease-inkdrop: cubic-bezier(0.4, 0, 0.2, 1);
  --duration-instant: 0ms;
  --duration-fast: 150ms;
  --duration-normal: 280ms;
  --duration-slow: 520ms;
  --duration-slower: 780ms;
  --duration-breath: 2400ms;
  --opacity-hover: 0.85;
  --opacity-active: 0.7;
  --opacity-disabled: 0.4;
  --opacity-overlay: 0.6;
  --blur-sm: 4px;
  --blur-md: 8px;
  --blur-lg: 16px;
  --breakpoint-sm: 40rem;
  --breakpoint-md: 48rem;
  --breakpoint-lg: 64rem;
  --breakpoint-xl: 80rem;
  --breakpoint-2xl: 96rem;
  --z-dropdown: 10;
  --z-sticky: 20;
  --z-overlay: 30;
  --z-modal: 40;
  --z-popover: 50;
  --z-toast: 60;
  --container-narrow: 40rem;
  --container-default: 64rem;
  --container-wide: 80rem;
  --container-prose: 62ch;
  --container-full: 100%;
  --font-inter-family: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-fraunces-family: "Fraunces Variable", "Iowan Old Style", "Apple Garamond", Baskerville, Georgia, "Times New Roman", serif;
  --text-display-hero-size: clamp(2.75rem, 5vw + 1rem, 5rem);
  --text-display-hero-weight: 480;
  --text-display-hero-line-height: 1.04;
  --text-display-hero-letter-spacing: -0.025em;
  --text-display-hero-family: var(--font-fraunces-family);
  --text-display-hero-features: var(--font-fraunces-features, normal);
  --text-display-hero-transform: none;
  --text-h1-size: clamp(2.25rem, 3.5vw + 1rem, 3.75rem);
  --text-h1-weight: 460;
  --text-h1-line-height: 1.08;
  --text-h1-letter-spacing: -0.022em;
  --text-h1-family: var(--font-fraunces-family);
  --text-h1-features: var(--font-fraunces-features, normal);
  --text-h1-transform: none;
  --text-h2-size: clamp(1.625rem, 2.2vw + 1rem, 2.5rem);
  --text-h2-weight: 500;
  --text-h2-line-height: 1.16;
  --text-h2-letter-spacing: -0.015em;
  --text-h2-family: var(--font-fraunces-family);
  --text-h2-features: var(--font-fraunces-features, normal);
  --text-h2-transform: none;
  --text-h3-size: clamp(1.25rem, 1.2vw + 1rem, 1.5rem);
  --text-h3-weight: 600;
  --text-h3-line-height: 1.30;
  --text-h3-letter-spacing: -0.005em;
  --text-h3-family: var(--font-inter-family);
  --text-h3-features: var(--font-inter-features, normal);
  --text-h3-transform: none;
  --text-h4-size: 1.125rem;
  --text-h4-weight: 600;
  --text-h4-line-height: 1.35;
  --text-h4-letter-spacing: 0;
  --text-h4-family: var(--font-inter-family);
  --text-h4-features: var(--font-inter-features, normal);
  --text-h4-transform: none;
  --text-h5-size: 1rem;
  --text-h5-weight: 600;
  --text-h5-line-height: 1.40;
  --text-h5-letter-spacing: 0;
  --text-h5-family: var(--font-inter-family);
  --text-h5-features: var(--font-inter-features, normal);
  --text-h5-transform: none;
  --text-h6-size: 0.9375rem;
  --text-h6-weight: 600;
  --text-h6-line-height: 1.45;
  --text-h6-letter-spacing: 0.005em;
  --text-h6-family: var(--font-inter-family);
  --text-h6-features: var(--font-inter-features, normal);
  --text-h6-transform: none;
  --text-body-size: 1rem;
  --text-body-weight: 400;
  --text-body-line-height: 1.70;
  --text-body-letter-spacing: 0.005em;
  --text-body-family: var(--font-inter-family);
  --text-body-features: var(--font-inter-features, normal);
  --text-body-transform: none;
  --text-body-lg-size: 1.125rem;
  --text-body-lg-weight: 400;
  --text-body-lg-line-height: 1.65;
  --text-body-lg-letter-spacing: 0;
  --text-body-lg-family: var(--font-inter-family);
  --text-body-lg-features: var(--font-inter-features, normal);
  --text-body-lg-transform: none;
  --text-body-sm-size: 0.9rem;
  --text-body-sm-weight: 400;
  --text-body-sm-line-height: 1.60;
  --text-body-sm-letter-spacing: 0.005em;
  --text-body-sm-family: var(--font-inter-family);
  --text-body-sm-features: var(--font-inter-features, normal);
  --text-body-sm-transform: none;
  --text-caption-size: 0.78rem;
  --text-caption-weight: 500;
  --text-caption-line-height: 1.45;
  --text-caption-letter-spacing: 0.08em;
  --text-caption-family: var(--font-inter-family);
  --text-caption-features: var(--font-inter-features, normal);
  --text-caption-transform: uppercase;
  --text-label-size: 0.875rem;
  --text-label-weight: 500;
  --text-label-line-height: 1.45;
  --text-label-letter-spacing: 0.005em;
  --text-label-family: var(--font-inter-family);
  --text-label-features: var(--font-inter-features, normal);
  --text-label-transform: none;
  --text-overline-size: 0.72rem;
  --text-overline-weight: 600;
  --text-overline-line-height: 1.20;
  --text-overline-letter-spacing: 0.16em;
  --text-overline-family: var(--font-inter-family);
  --text-overline-features: var(--font-inter-features, normal);
  --text-overline-transform: uppercase;
  --text-button-text-size: 0.9375rem;
  --text-button-text-weight: 600;
  --text-button-text-line-height: 1.20;
  --text-button-text-letter-spacing: 0.005em;
  --text-button-text-family: var(--font-inter-family);
  --text-button-text-features: var(--font-inter-features, normal);
  --text-button-text-transform: none;
  --text-quote-size: clamp(1.25rem, 1.8vw + 1rem, 1.875rem);
  --text-quote-weight: 380;
  --text-quote-line-height: 1.45;
  --text-quote-letter-spacing: -0.005em;
  --text-quote-family: var(--font-fraunces-family);
  --text-quote-features: var(--font-fraunces-features, normal);
  --text-quote-transform: none;
  --text-ornament-display-size: 3.75rem;
  --text-ornament-display-weight: 380;
  --text-ornament-display-line-height: 1;
  --text-ornament-display-letter-spacing: -0.02em;
  --text-ornament-display-family: var(--font-fraunces-family);
  --text-ornament-display-features: var(--font-fraunces-features, normal);
  --text-ornament-display-transform: none;
  --text-display-initial-size: 3rem;
  --text-display-initial-weight: 380;
  --text-display-initial-line-height: 1;
  --text-display-initial-letter-spacing: 0;
  --text-display-initial-family: var(--font-fraunces-family);
  --text-display-initial-features: var(--font-fraunces-features, normal);
  --text-display-initial-transform: none;
  --text-overline-xs-size: 0.6rem;
  --text-overline-xs-weight: 600;
  --text-overline-xs-line-height: 1.20;
  --text-overline-xs-letter-spacing: 0.16em;
  --text-overline-xs-family: var(--font-inter-family);
  --text-overline-xs-features: var(--font-inter-features, normal);
  --text-overline-xs-transform: uppercase;
  --gradient-brand-hero: linear-gradient(145deg, var(--color-brand-primary), var(--color-brand-tertiary));
  --icon-default-stroke-width: 1.5;
  --icon-default-size: 1.25rem;
  --icon-default-linecap: round;
  --icon-default-linejoin: round;
  --icon-sm-stroke-width: 1.5;
  --icon-sm-size: 1rem;
  --icon-sm-linecap: round;
  --icon-sm-linejoin: round;
  --icon-lg-stroke-width: 1.5;
  --icon-lg-size: 1.75rem;
  --icon-lg-linecap: round;
  --icon-lg-linejoin: round;
  --color-background: var(--color-surface-page);
  --color-foreground: var(--color-text-default);
  --color-primary: var(--color-brand-primary);
  --color-primary-foreground: var(--color-brand-primary-foreground);
  --color-secondary: var(--color-brand-secondary);
  --color-secondary-foreground: var(--color-brand-secondary-foreground);
  --color-accent: var(--color-brand-tertiary);
  --color-accent-foreground: var(--color-brand-tertiary-foreground);
  --color-muted: var(--color-surface-overlay);
  --color-muted-foreground: var(--color-text-muted);
  --color-card: var(--color-surface-card);
  --color-card-foreground: var(--color-text-default);
  --color-popover: var(--color-surface-raised);
  --color-popover-foreground: var(--color-text-default);
  --color-destructive: var(--color-status-danger-bg);
  --color-destructive-foreground: var(--color-status-danger-text-on);
  --color-border: var(--color-border-default);
  --color-input: var(--color-border-default);
  --color-ring: var(--color-border-focus-ring);
  --font-sans: var(--font-inter-family);
  --font-sans-features: var(--font-inter-features, normal);
  --font-display: var(--font-fraunces-family);
  --font-display-features: var(--font-fraunces-features, normal);
  --font-mono: var(--font-inter-family);
  --font-mono-features: var(--font-inter-features, normal);
  --radius: var(--radius-card);
  --icon-stroke-width-default: 1.5;
  --letter-spacing-default: 0;
}
[data-button-style="primary"] {
  --btn-bg: var(--color-brand-primary);
  --btn-text: var(--color-brand-primary-foreground);
  --btn-border: var(--color-brand-primary);
  --btn-bg-hover: var(--color-brand-primary-hover);
  --btn-text-hover: var(--color-brand-primary-foreground);
  --btn-bg-active: var(--color-brand-primary-active);
  --btn-bg-disabled: var(--color-surface-active);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-button-padding-x);
  --btn-padding-y: var(--space-button-padding-y);
  --btn-radius: var(--radius-bloom);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 600;
}
[data-button-style="secondary"] {
  --btn-bg: var(--color-brand-secondary);
  --btn-text: var(--color-brand-secondary-foreground);
  --btn-border: var(--color-brand-secondary);
  --btn-bg-hover: var(--color-brand-secondary-hover);
  --btn-text-hover: var(--color-brand-secondary-foreground);
  --btn-bg-active: var(--color-brand-secondary-active);
  --btn-bg-disabled: var(--color-surface-active);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-button-padding-x);
  --btn-padding-y: var(--space-button-padding-y);
  --btn-radius: var(--radius-button);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 600;
}
[data-button-style="tertiary"] {
  --btn-bg: var(--color-brand-tertiary);
  --btn-text: var(--color-brand-tertiary-foreground);
  --btn-border: var(--color-brand-tertiary);
  --btn-bg-hover: var(--color-brand-tertiary-hover);
  --btn-text-hover: var(--color-brand-tertiary-foreground);
  --btn-bg-active: var(--color-brand-tertiary-active);
  --btn-bg-disabled: var(--color-surface-active);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-button-padding-x);
  --btn-padding-y: var(--space-button-padding-y);
  --btn-radius: var(--radius-button);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 600;
}
[data-button-style="ghost"] {
  --btn-bg: var(--color-surface-page);
  --btn-text: var(--color-text-default);
  --btn-border: var(--color-surface-page);
  --btn-bg-hover: var(--color-surface-hover);
  --btn-text-hover: var(--color-brand-primary);
  --btn-bg-active: var(--color-surface-active);
  --btn-bg-disabled: var(--color-surface-page);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-button-padding-x);
  --btn-padding-y: var(--space-button-padding-y);
  --btn-radius: var(--radius-button);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 500;
}
[data-button-style="outline"] {
  --btn-bg: var(--color-surface-page);
  --btn-text: var(--color-brand-primary);
  --btn-border: var(--color-brand-primary);
  --btn-bg-hover: var(--color-brand-primary-subtle);
  --btn-text-hover: var(--color-brand-primary-active);
  --btn-bg-active: var(--color-brand-primary-subtle);
  --btn-bg-disabled: var(--color-surface-page);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-button-padding-x);
  --btn-padding-y: var(--space-button-padding-y);
  --btn-radius: var(--radius-button);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 500;
}
[data-button-style="danger"] {
  --btn-bg: var(--color-status-danger-bg);
  --btn-text: var(--color-status-danger-text-on);
  --btn-border: var(--color-status-danger-bg);
  --btn-bg-hover: var(--color-status-danger-border);
  --btn-text-hover: var(--color-status-danger-text-on);
  --btn-bg-active: var(--color-status-danger-text);
  --btn-bg-disabled: var(--color-surface-active);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-button-padding-x);
  --btn-padding-y: var(--space-button-padding-y);
  --btn-radius: var(--radius-button);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 600;
}
[data-button-style="link"] {
  --btn-bg: var(--color-surface-page);
  --btn-text: var(--color-text-link);
  --btn-border: var(--color-surface-page);
  --btn-bg-hover: var(--color-surface-page);
  --btn-text-hover: var(--color-text-link-hover);
  --btn-bg-active: var(--color-surface-page);
  --btn-bg-disabled: var(--color-surface-page);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-xs);
  --btn-padding-y: var(--space-xs);
  --btn-radius: var(--radius-sm);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 500;
}
[data-button-style="seed"] {
  --btn-bg: var(--color-brand-tertiary);
  --btn-text: var(--color-brand-tertiary-foreground);
  --btn-border: var(--color-brand-tertiary);
  --btn-bg-hover: var(--color-brand-tertiary-hover);
  --btn-text-hover: var(--color-brand-tertiary-foreground);
  --btn-bg-active: var(--color-brand-tertiary-active);
  --btn-bg-disabled: var(--color-surface-active);
  --btn-text-disabled: var(--color-text-disabled);
  --btn-padding-x: var(--space-button-padding-x);
  --btn-padding-y: var(--space-button-padding-y);
  --btn-radius: var(--radius-bloom);
  --btn-font-size: var(--text-button-text-size);
  --btn-font-family: var(--text-button-text-family);
  --btn-font-weight: 600;
}
[data-form-style="default"] {
  --form-bg: var(--color-surface-card);
  --form-bg-disabled: var(--color-surface-hover);
  --form-border: var(--color-border-default);
  --form-border-hover: var(--color-border-strong);
  --form-border-focus: var(--color-border-accent);
  --form-border-error: var(--color-status-danger-border);
  --form-text: var(--color-text-default);
  --form-placeholder: var(--color-text-subtle);
  --form-label: var(--color-text-default);
  --form-helper-text: var(--color-text-muted);
  --form-error-text: var(--color-status-danger-text);
  --form-padding-x: var(--space-input-padding-x);
  --form-padding-y: var(--space-input-padding-y);
  --form-radius: var(--radius-md);
}
[data-form-style="compact"] {
  --form-bg: var(--color-surface-card);
  --form-bg-disabled: var(--color-surface-hover);
  --form-border: var(--color-border-default);
  --form-border-hover: var(--color-border-strong);
  --form-border-focus: var(--color-border-accent);
  --form-border-error: var(--color-status-danger-border);
  --form-text: var(--color-text-default);
  --form-placeholder: var(--color-text-subtle);
  --form-label: var(--color-text-default);
  --form-helper-text: var(--color-text-muted);
  --form-error-text: var(--color-status-danger-text);
  --form-padding-x: var(--space-sm);
  --form-padding-y: var(--space-xs);
  --form-radius: var(--radius-sm);
}
[data-link-style="default"] {
  --link-color: var(--color-text-link);
  --link-color-hover: var(--color-text-link-hover);
  --link-color-visited: var(--color-text-link-visited);
  --link-underline-offset: 0.25em;
  --link-underline-decoration: underline;
}
[data-link-style="prominent"] {
  --link-color: var(--color-brand-primary);
  --link-color-hover: var(--color-brand-primary-hover);
  --link-color-visited: var(--color-brand-primary-active);
  --link-underline-offset: 0.3em;
  --link-underline-decoration: none;
}
[data-link-style="subtle"] {
  --link-color: var(--color-text-muted);
  --link-color-hover: var(--color-text-default);
  --link-color-visited: var(--color-text-subtle);
  --link-underline-offset: 0.2em;
  --link-underline-decoration: none;
}
[data-menu-item-style="nav-main"] {
  --menu-bg: var(--color-surface-page);
  --menu-bg-hover: var(--color-surface-hover);
  --menu-bg-active: var(--color-brand-primary-subtle);
  --menu-text: var(--color-text-default);
  --menu-text-hover: var(--color-brand-primary);
  --menu-text-active: var(--color-brand-primary);
  --menu-padding-x: var(--space-md);
  --menu-padding-y: var(--space-sm);
  --menu-radius: var(--radius-sm);
  --menu-font-size: var(--text-button-text-size);
  --menu-font-family: var(--text-button-text-family);
}
[data-menu-item-style="nav-mobile"] {
  --menu-bg: var(--color-surface-page);
  --menu-bg-hover: var(--color-surface-hover);
  --menu-bg-active: var(--color-brand-primary-subtle);
  --menu-text: var(--color-text-default);
  --menu-text-hover: var(--color-brand-primary);
  --menu-text-active: var(--color-brand-primary);
  --menu-padding-x: var(--space-md);
  --menu-padding-y: var(--space-md);
  --menu-radius: var(--radius-sm);
  --menu-font-size: var(--text-body-size);
  --menu-font-family: var(--text-body-family);
}
[data-menu-item-style="footer-link"] {
  --menu-bg: var(--color-surface-page);
  --menu-bg-hover: var(--color-surface-page);
  --menu-bg-active: var(--color-surface-page);
  --menu-text: var(--color-text-muted);
  --menu-text-hover: var(--color-text-default);
  --menu-text-active: var(--color-text-default);
  --menu-padding-x: var(--space-xs);
  --menu-padding-y: var(--space-xs);
  --menu-radius: var(--radius-sm);
  --menu-font-size: var(--text-body-sm-size);
  --menu-font-family: var(--text-body-sm-family);
}
[data-menu-item-style="dropdown-item"] {
  --menu-bg: var(--color-surface-card);
  --menu-bg-hover: var(--color-surface-hover);
  --menu-bg-active: var(--color-surface-active);
  --menu-text: var(--color-text-default);
  --menu-text-hover: var(--color-text-default);
  --menu-text-active: var(--color-text-default);
  --menu-padding-x: var(--space-md);
  --menu-padding-y: var(--space-sm);
  --menu-radius: var(--radius-sm);
  --menu-font-size: var(--text-body-sm-size);
  --menu-font-family: var(--text-body-sm-family);
}
[data-layout-pattern="tafel-7-5"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-lg);
}
[data-layout-pattern="tafel-7-5"] > [data-cell="media"] {
  grid-column: 1 / span 7;
}
[data-layout-pattern="tafel-7-5"] > [data-cell="body"] {
  grid-column: 9 / span 4;
}
@media (width < var(--breakpoint-md)) {
  [data-layout-pattern="tafel-7-5"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="tafel-7-5"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="tafel-5-7"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-lg);
}
[data-layout-pattern="tafel-5-7"] > [data-cell="body"] {
  grid-column: 1 / span 4;
}
[data-layout-pattern="tafel-5-7"] > [data-cell="media"] {
  grid-column: 6 / span 7;
}
@media (width < var(--breakpoint-md)) {
  [data-layout-pattern="tafel-5-7"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="tafel-5-7"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="lead-7-5"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-md);
}
[data-layout-pattern="lead-7-5"] > [data-cell="primary"] {
  grid-column: 1 / span 7;
}
[data-layout-pattern="lead-7-5"] > [data-cell="secondary"] {
  grid-column: 9 / span 4;
}
@media (width < var(--breakpoint-md)) {
  [data-layout-pattern="lead-7-5"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="lead-7-5"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="feature-8-4"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-md);
}
[data-layout-pattern="feature-8-4"] > [data-cell="primary"] {
  grid-column: 1 / span 8;
}
[data-layout-pattern="feature-8-4"] > [data-cell="secondary"] {
  grid-column: 9 / span 4;
}
@media (width < var(--breakpoint-md)) {
  [data-layout-pattern="feature-8-4"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="feature-8-4"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="quote-centered"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-md);
}
[data-layout-pattern="quote-centered"] > [data-cell="primary"] {
  grid-column: 3 / span 8;
}
@media (width < var(--breakpoint-sm)) {
  [data-layout-pattern="quote-centered"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="quote-centered"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="thirds"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-lg);
}
[data-layout-pattern="thirds"] > [data-cell="first"] {
  grid-column: 1 / span 4;
}
[data-layout-pattern="thirds"] > [data-cell="second"] {
  grid-column: 5 / span 4;
}
[data-layout-pattern="thirds"] > [data-cell="third"] {
  grid-column: 9 / span 4;
}
@media (width < var(--breakpoint-md)) {
  [data-layout-pattern="thirds"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="thirds"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="portrait-5-7"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-lg);
}
[data-layout-pattern="portrait-5-7"] > [data-cell="media"] {
  grid-column: 1 / span 5;
}
[data-layout-pattern="portrait-5-7"] > [data-cell="body"] {
  grid-column: 7 / span 6;
}
@media (width < var(--breakpoint-md)) {
  [data-layout-pattern="portrait-5-7"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="portrait-5-7"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="feldnotiz"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-xl);
}
[data-layout-pattern="feldnotiz"] > [data-cell="primary"] {
  grid-column: 1 / span 8;
}
[data-layout-pattern="feldnotiz"] > [data-cell="secondary"] {
  grid-column: 10 / span 3;
}
@media (width < var(--breakpoint-md)) {
  [data-layout-pattern="feldnotiz"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="feldnotiz"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-layout-pattern="bloom-hero"] {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-md);
}
[data-layout-pattern="bloom-hero"] > [data-cell="media"] {
  grid-column: 1 / span 7;
}
[data-layout-pattern="bloom-hero"] > [data-cell="body"] {
  grid-column: 7 / span 6;
}
@media (width < var(--breakpoint-lg)) {
  [data-layout-pattern="bloom-hero"] {
    grid-template-columns: 1fr;
  }
  [data-layout-pattern="bloom-hero"] > [data-cell] {
    grid-column: 1 / -1;
  }
}
[data-overlay="section-vignette"] {
  position: relative;
}
[data-overlay="section-vignette"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at center, transparent 60%, oklch(0.22 0.025 145 / 0.10) 100%);
  opacity: 1;
  mix-blend-mode: normal;
  z-index: 1;
  pointer-events: none;
}
[data-image-filter="portrait-bw"] img,
[data-image-filter="portrait-bw"] picture {
  filter: grayscale(100%) contrast(104%) brightness(98%);
  transition: filter var(--duration-slow) var(--ease-out, ease-out);
}
[data-image-filter="portrait-bw"]:hover img,
[data-image-filter="portrait-bw"]:hover picture {
  filter: grayscale(0%) contrast(102%) brightness(100%);
}
[data-image-filter="subtle-mute"] img,
[data-image-filter="subtle-mute"] picture {
  filter: contrast(102%) saturate(88%);
  transition: filter var(--duration-fast) var(--ease-out, ease-out);
}
[data-image-filter="subtle-mute"]:hover img,
[data-image-filter="subtle-mute"]:hover picture {
  filter: contrast(104%) saturate(100%);
}
[data-image-filter="botanical-warm"] img,
[data-image-filter="botanical-warm"] picture {
  filter: contrast(102%) saturate(92%) sepia(5%);
  transition: filter var(--duration-normal) var(--ease-out, ease-out);
}
[data-cursor="default-dot"] {
  cursor: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNCcgZmlsbD0nY3VycmVudENvbG9yJy8+PC9zdmc+") 6 6, auto;
}