/* HCC v1: the only public foundation token source. Legacy names are aliases. */
:root {
    color-scheme: light;
    --hcc-font: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --hcc-font-heading: var(--hcc-font);
    --hcc-font-body: var(--hcc-font);
    --hcc-bg-page: #fff;
    --hcc-bg-subtle: #f8fafc;
    --hcc-bg-muted: #f1f5f9;
    --hcc-surface: #fff;
    --hcc-text-primary: #0f172a;
    --hcc-text-secondary: #334155;
    --hcc-text-muted: #475569;
    --hcc-text-subtle: #64748b;
    --hcc-text-inverse: #fff;
    --hcc-text-inverse-muted: #94a3b8;
    --hcc-brand-amber: #d97706;
    --hcc-accent: #b45309;
    --hcc-accent-hover: #92400e;
    --hcc-accent-light: #fef3c7;
    --hcc-accent-subtle: #fffbeb;
    --hcc-accent-border: #f1d1a5;
    --hcc-navy: #0f172a;
    --hcc-navy-surface: #1e293b;
    --hcc-navy-border: #334155;
    --hcc-green: #166534;
    --hcc-green-subtle: #f0fdf4;
    --hcc-green-border: #bbf7d0;
    --hcc-red: #b91c1c;
    --hcc-red-subtle: #fef2f2;
    --hcc-red-border: #fecaca;
    --hcc-blue: var(--hcc-text-secondary);
    --hcc-blue-subtle: var(--hcc-bg-subtle);
    --hcc-blue-border: #cbd5e1;
    --hcc-star: var(--hcc-brand-amber);
    --hcc-border: #e2e8f0;
    --hcc-border-subtle: #f1f5f9;
    --hcc-border-medium: #cbd5e1;
    --hcc-border-strong: #64748b;
    --hcc-radius-xs: 4px;
    --hcc-radius-sm: 6px;
    --hcc-radius-md: 8px;
    --hcc-radius-lg: 12px;
    --hcc-shadow-xs: 0 1px 2px rgb(15 23 42 / .04);
    --hcc-shadow-sm: 0 1px 3px rgb(15 23 42 / .06);
    --hcc-shadow-md: 0 8px 24px rgb(15 23 42 / .08);
    --hcc-shadow-lg: 0 16px 48px rgb(15 23 42 / .12);
    --hcc-space-1: .25rem;
    --hcc-space-2: .5rem;
    --hcc-space-3: .75rem;
    --hcc-space-4: 1rem;
    --hcc-space-6: 1.5rem;
    --hcc-space-8: 2rem;
    --hcc-space-12: 3rem;
    --hcc-space-16: 4rem;
    --hcc-space-20: 5rem;
    --hcc-space-24: 6rem;
    --hcc-container-wide: 77.5rem;
    --hcc-container-standard: 65rem;
    --hcc-container-reading: 47.5rem;
    --hcc-container-max: var(--hcc-container-wide);
    --hcc-page-width: var(--hcc-container-wide);
    --hcc-gutter: 1rem;
    --hcc-section-space: 3rem;
    --hcc-grid-gap: 1rem;
    --hcc-header-height: 4rem;
    --hcc-nav-height: var(--hcc-header-height);
    --hcc-type-h1: clamp(2rem, 1.35rem + 2vw, 3rem);
    --hcc-type-h2: clamp(1.625rem, 1.25rem + 1.2vw, 2.25rem);
    --hcc-type-h3: clamp(1.375rem, 1.2rem + .5vw, 1.75rem);
    --hcc-type-h4: 1.25rem;
    --hcc-type-h5: 1.125rem;
    --hcc-type-h6: 1rem;
    --hcc-page-title-size: var(--hcc-type-h1);
    --hcc-type-title-compact: clamp(1.75rem, 1.4rem + 1vw, 2.25rem);
    --hcc-type-title-reading: clamp(2rem, 1.5rem + 1.5vw, 2.5rem);
    --hcc-type-body: 1rem;
    --hcc-type-small: .875rem;
    --hcc-motion: 160ms;
    /* Compatibility: retained callers resolve to the same brand, not a second theme. */
    --font-heading: var(--hcc-font);
    --font-body: var(--hcc-font);
    --brand-primary: var(--hcc-accent);
    --brand-primary-hover: var(--hcc-accent-hover);
    --brand-secondary: var(--hcc-text-primary);
    --brand-dark: var(--hcc-text-primary);
    --accent-glow: var(--hcc-accent-subtle);
    --border-color: var(--hcc-border);
    --brand-accent: var(--hcc-accent);
    --brand-success: var(--hcc-green);
    --brand-warning: var(--hcc-accent);
    --brand-coupon: var(--hcc-accent);
    --brand-danger: var(--hcc-red);
    --bg-body: var(--hcc-bg-page);
    --bg-surface: var(--hcc-surface);
    --bg-subtle: var(--hcc-bg-subtle);
    --text-main: var(--hcc-text-primary);
    --text-muted: var(--hcc-text-muted);
    --text-subtle: var(--hcc-text-subtle);
    --nav-bg: var(--hcc-surface);
    --nav-border: var(--hcc-border);
    --nav-height: var(--hcc-header-height);
    --glass-bg: var(--hcc-surface);
    --glass-border: var(--hcc-border);
    --glass-shadow: var(--hcc-shadow-xs);
    --glass-shadow-hover: var(--hcc-shadow-sm);
    --shadow-sm: var(--hcc-shadow-xs);
    --shadow-md: var(--hcc-shadow-sm);
    --shadow-lg: var(--hcc-shadow-md);
    --shadow-xl: var(--hcc-shadow-lg);
    --shadow-premium: var(--hcc-shadow-sm);
    --shadow-inset: none;
    --card-bg: var(--hcc-surface);
    --card-border: var(--hcc-border);
    --card-hover-border: var(--hcc-border-strong);
    --badge-glow-bg: var(--hcc-accent-subtle);
    --badge-glow-border: var(--hcc-accent-border);
    --hero-glow: none;
    --gradient-brand: var(--hcc-accent);
    --gradient-text: var(--hcc-text-primary);
    --input-bg: var(--hcc-surface);
    --input-border: var(--hcc-border-strong);
    --mesh-glow-1: transparent;
    --mesh-glow-2: transparent;
    --mesh-glow-3: transparent;
    --transition-speed: .16s;
}
@media (min-width: 48rem) {
    :root { --hcc-gutter: 1.5rem; --hcc-section-space: 4rem; --hcc-grid-gap: 1.5rem; }
}
@media (min-width: 64rem) {
    :root { --hcc-gutter: 2rem; --hcc-section-space: 5rem; --hcc-grid-gap: 2rem; }
}
/* Same 80rem threshold is used by the navigation controller. */
@media (min-width: 80rem) { :root { --hcc-header-height: 4.5rem; } }
