/* Hallmark · genre: modern-minimal · redesign: polish · copy: verbatim · posture: committed · hero: banner · job: shop · theme: lym-emerald-amber · palette: Emerald Trust & Warm Amber (High-Contrast OKLCH) · fonts: Be Vietnam Pro · rhythm: [hero, strip, cat-grid, flash-sale, need-pills, tabbed-products, cat-spotlights, brands, recommended, partner-cta, blog, newsletter] · nav: 3-tier Pharmacy Storefront Header · footer: 5-column Legal & Compliance Footer */
:root {
	/* Hallmark Canonical Core Tokens — Lym "Emerald Trust & Warm Amber" High-Contrast OKLCH */
	--light: oklch(100% 0 0);
	--dark: oklch(20.77% 0.0398 265.8);
	--color-paper: oklch(96.2% 0.006 248);
	--color-paper-2: oklch(98.42% 0.0034 247.9);
	--color-paper-3: oklch(95.8% 0.007 248);
	--color-ink: oklch(20.77% 0.0398 265.8);
	--color-ink-2: oklch(37.17% 0.0392 257.3);
	--color-muted: oklch(44.61% 0.0263 256.8);
	--color-rule: oklch(86.9% 0.0198 252.9);
	--color-rule-2: oklch(78.5% 0.024 253.5);
	--color-accent: oklch(38.64% 0.0832 157.5);
	--color-accent-ink: oklch(100% 0 0);
	--color-accent-deep: oklch(29.72% 0.0598 159.2);
	--color-accent-soft: oklch(95.85% 0.0166 162.7);
	--color-success: oklch(52.73% 0.1371 150.1);
	--color-warning: oklch(55.53% 0.1455 49);
	--color-danger: oklch(56.2% 0.21 27.3);

	/* Lym Storefront Canonical Tokens (WCAG AA/AAA & APCA High-Contrast) */
	--lym-color-primary: oklch(38.64% 0.0832 157.5);
	--lym-color-primary-hover: oklch(29.72% 0.0598 159.2);
	--lym-color-primary-soft: oklch(95.85% 0.0166 162.7);
	--lym-primary-50: oklch(95.85% 0.0166 162.7);
	--lym-color-secondary: oklch(47.1% 0.1038 157.2);
	--lym-primary-light: oklch(55.2% 0.1234 157);
	--lym-color-accent: oklch(57.68% 0.164 45.3);
	--lym-color-accent-hover: oklch(51.8% 0.152 44.5);
	--lym-color-accent-soft: oklch(96.19% 0.058 95.6);
	--lym-color-danger: oklch(56.2% 0.21 27.3);
	--lym-color-danger-dark: oklch(50.54% 0.1905 27.5);
	--lym-color-success: oklch(52.73% 0.1371 150.1);
	--lym-color-warning: oklch(55.53% 0.1455 49);
	--lym-color-info: oklch(53.5% 0.135 242);
	--lym-color-text: oklch(20.77% 0.0398 265.8);
	--lym-color-text-secondary: oklch(37.17% 0.0392 257.3);
	--lym-color-text-muted: oklch(44.61% 0.0263 256.8);
	--lym-color-border: oklch(86.9% 0.0198 252.9);
	--lym-color-border-subtle: oklch(86.9% 0.0198 252.9);
	--lym-color-border-strong: oklch(78.5% 0.024 253.5);
	--lym-color-surface: oklch(100% 0 0);
	--lym-color-surface-subtle: oklch(98.42% 0.0034 247.9);
	--lym-color-surface-alt: var(--lym-color-surface-subtle);
	--lym-color-surface-muted: oklch(95.8% 0.007 248);
	--lym-color-bg-page: oklch(96.2% 0.006 248);

	/* Extended Palette Tokens for Multi-Color Banners, Badges & Shadows (1:1 from 3039a6a8) */
	--lym-emerald-950: oklch(31.68% 0.0674 157.4);
	--lym-emerald-920: oklch(32.05% 0.0675 157.5);
	--lym-emerald-900: oklch(32.8% 0.0565 167.6);
	--lym-emerald-850: oklch(37.8% 0.073 168.9);
	--lym-emerald-800: oklch(43.18% 0.0865 166.9);
	--lym-emerald-700: oklch(50.81% 0.1049 165.6);
	--lym-emerald-500: oklch(69.59% 0.1491 162.5);
	--lym-emerald-200: oklch(90.49% 0.0895 164.2);
	--lym-emerald-150: oklch(92.5% 0.0806 156);
	--lym-emerald-100: oklch(95.05% 0.0507 163.1);
	--lym-emerald-50: oklch(98.19% 0.0181 155.8);
	--lym-green-700: oklch(52.73% 0.1371 150.1);
	--lym-green-600: oklch(52.73% 0.1371 150.1);
	--lym-teal-800: oklch(43.7% 0.0705 188.2);
	--lym-teal-700: oklch(51.09% 0.0861 186.4);
	--lym-amber-900: oklch(41.37% 0.1054 45.9);
	--lym-amber-850: oklch(46.98% 0.143 37.3);
	--lym-amber-800: oklch(47.32% 0.1247 46.2);
	--lym-amber-700: oklch(55.53% 0.1455 49);
	--lym-amber-600: oklch(66.58% 0.1574 58.3);
	--lym-amber-500: oklch(76.86% 0.1647 70.1);
	--lym-grad-amber-bright: oklch(76.86% 0.1647 70.1);
	--lym-amber-400: oklch(83.69% 0.1644 84.4);
	--lym-amber-300: oklch(83.66% 0.1165 66.3);
	--lym-amber-200: oklch(90.15% 0.0729 70.7);
	--lym-amber-150: oklch(92.43% 0.1151 95.7);
	--lym-amber-100: oklch(96.19% 0.058 95.6);
	--lym-amber-50: oklch(98.69% 0.0214 95.3);
	--lym-orange-50: oklch(97.96% 0.0158 73.7);
	--lym-red-700: oklch(50.54% 0.1905 27.5);
	--lym-red-600: oklch(56.2% 0.21 27.3);
	--lym-red-50: oklch(97.05% 0.0129 17.4);
	--lym-navy-800: oklch(34.62% 0.0736 256);
	--lym-blue-900: oklch(37.91% 0.125 256);
	--lym-sky-700: oklch(50% 0.1193 242.7);
	--lym-sky-600: oklch(53.5% 0.135 242);
	--lym-sky-50: oklch(97.71% 0.0125 236.6);
	--lym-purple-900: oklch(38.07% 0.1661 305);
	--lym-purple-600: oklch(55.75% 0.2525 302.3);
	--lym-slate-900: oklch(20.77% 0.0398 265.8);
	--lym-slate-800: oklch(27.81% 0.0296 256.8);
	--lym-slate-700: oklch(37.17% 0.0392 257.3);
	--lym-slate-600: oklch(44.55% 0.0374 257.3);
	--lym-slate-500: oklch(48.5% 0.025 258);
	--lym-slate-400: oklch(50.5% 0.025 258);
	--lym-slate-300: oklch(86.9% 0.0198 252.9);
	--lym-slate-200: oklch(88.5% 0.015 254);

	/* Alpha / Shadow / Glass Tokens */
	--lym-alpha-ink-05: oklch(20.77% 0.0398 265.8 / 0.05);
	--lym-alpha-ink-06: oklch(20.77% 0.0398 265.8 / 0.06);
	--lym-alpha-ink-08: oklch(20.77% 0.0398 265.8 / 0.08);
	--lym-alpha-ink-10: oklch(20.77% 0.0398 265.8 / 0.10);
	--lym-alpha-ink-12: oklch(20.77% 0.0398 265.8 / 0.12);
	--lym-alpha-emerald-10: oklch(38.64% 0.0832 157.5 / 0.12);
	--lym-alpha-emerald-18: oklch(38.64% 0.0832 157.5 / 0.18);
	--lym-alpha-emerald-25: oklch(38.64% 0.0832 157.5 / 0.25);
	--lym-alpha-emerald-28: oklch(38.64% 0.0832 157.5 / 0.28);
	--lym-alpha-white-00: oklch(100% 0 0 / 0);
	--lym-alpha-white-18: oklch(100% 0 0 / 0.18);
	--lym-alpha-white-20: oklch(100% 0 0 / 0.20);
	--lym-alpha-white-22: oklch(100% 0 0 / 0.22);
	--lym-alpha-white-45: oklch(100% 0 0 / 0.45);
	--lym-alpha-white-50: oklch(100% 0 0 / 0.50);
	--lym-alpha-white-90: oklch(100% 0 0 / 0.90);
	--lym-alpha-white-92: oklch(100% 0 0 / 0.92);
	--lym-alpha-white-94: oklch(100% 0 0 / 0.94);
	--lym-alpha-white-96: oklch(100% 0 0 / 0.96);
	--lym-alpha-white-97: oklch(100% 0 0 / 0.97);

	/* Hallmark Typography, Spacing, Radius & Motion Tokens */
	--font-display: "Be Vietnam Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--font-sans: "Be Vietnam Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--font-mono: ui-monospace, "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;
	--step--2: 0.75rem;
	--step--1: 0.875rem;
	--step-0: 0.9375rem;
	--step-1: 1.125rem;
	--step-2: 1.25rem;
	--step-3: 1.5rem;
	--step-4: 1.75rem;
	--tracking-display: -0.02em;
	--tracking-tight: -0.015em;
	--tracking-caps: 0.06em;
	--leading-display: 1.25;
	--leading-tight: 1.3;
	--leading-body: 1.55;
	--space-3xs: 2px;
	--space-2xs: 4px;
	--space-xs: 8px;
	--space-sm: 12px;
	--space-md: 16px;
	--space-lg: 24px;
	--space-xl: 40px;
	--space-2xl: 64px;
	--space-3xl: 96px;
	--space-section: clamp(1.5rem, 3vw, 2.5rem);
	--gutter: clamp(0.75rem, 2.5vw, 1.5rem);
	--container: 1224px;
	--measure: 66ch;
	--measure-narrow: 48ch;
	--radius-xs: 4px;
	--radius-sm: 6px;
	--radius-md: 8px;
	--radius-lg: 12px;
	--radius-xl: 16px;
	--radius-full: 999px;
	--ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
	--ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
	--ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
	--dur-instant: 80ms;
	--dur-fast: 150ms;
	--dur-base: 240ms;
	--dur-slow: 420ms;
}
