/* =================== foundation-tokens.css =================== */
:root {
  --hc-paper: #ffffff;
  --hc-paper-2: #fafaf8;
  --hc-paper-3: #f2efe9;
  --hc-bg: #f8f6f3;
  --hc-bg-warm: #f0ebe1;
  --hc-ink: #1a1714;
  --hc-ink-2: #3a3128;
  --hc-ink-soft: rgba(26, 23, 20, 0.7);
  --hc-ink-mid: rgba(26, 23, 20, 0.55);
  --hc-ink-muted: rgba(26, 23, 20, 0.3);
  --hc-accent: #8b7355;
  --hc-accent-dark: #5d4d3a;
  --hc-accent-soft: rgba(139, 115, 85, 0.08);
  --hc-gold: #d4b896;
  --hc-gold-soft: rgba(212, 184, 150, 0.15);
  --hc-gold-border: rgba(212, 184, 150, 0.38);
  --hc-success: #3d6b4f;
  --hc-success-soft: rgba(61, 107, 79, 0.1);
  --hc-warning: #a67426;
  --hc-warning-soft: rgba(166, 116, 38, 0.1);
  --hc-danger: #c9433a;
  --hc-danger-soft: rgba(201, 67, 58, 0.08);
  --hc-info: #3a6a8a;
  --hc-line: rgba(26, 23, 20, 0.08);
  --hc-line-2: rgba(26, 23, 20, 0.15);
  --hc-line-strong: rgba(26, 23, 20, 0.22);
  --hc-sh-1: 0 1px 2px rgba(26, 23, 20, 0.04);
  --hc-sh-2: 0 2px 8px rgba(26, 23, 20, 0.06);
  --hc-sh-3: 0 8px 28px rgba(26, 23, 20, 0.08);
  --hc-sh-4: 0 18px 50px -30px rgba(26, 23, 20, 0.28);
  --hc-sh-card: 0 18px 50px -44px rgba(26, 23, 20, 0.55), 0 1px 0 rgba(255, 255, 255, 0.9);
  --hc-sh-lift: 0 30px 72px -46px rgba(26, 23, 20, 0.58);
  --hc-r-xs: 4px;
  --hc-r-sm: 8px;
  --hc-r-md: 12px;
  --hc-r-lg: 16px;
  --hc-r-xl: 20px;
  --hc-r-2xl: 24px;
  --hc-r-3xl: 32px;
  --hc-r-pill: 9999px;
  --hc-sp-1: 4px;
  --hc-sp-2: 8px;
  --hc-sp-3: 12px;
  --hc-sp-4: 16px;
  --hc-sp-5: 24px;
  --hc-sp-6: 32px;
  --hc-sp-7: 48px;
  --hc-sp-8: 64px;
  --hc-sp-9: 96px;
  --hc-serif: "Playfair Display", Georgia, "Times New Roman", serif;
  --hc-sans: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --hc-mono: "JetBrains Mono", "SF Mono", ui-monospace, Menlo, monospace;
  --hc-fs-xxs: 10px;
  --hc-fs-xs: 11px;
  --hc-fs-sm: 12px;
  --hc-fs-md: 14px;
  --hc-fs-lg: 16px;
  --hc-fs-xl: 18px;
  --hc-fs-2xl: 22px;
  --hc-fs-3xl: 28px;
  --hc-fs-4xl: 36px;
  --hc-fs-5xl: 48px;
  --hc-fs-6xl: 64px;
  --hc-lh-tight: 1.1;
  --hc-lh-snug: 1.25;
  --hc-lh-base: 1.5;
  --hc-lh-loose: 1.7;
  --hc-ls-tight: -0.02em;
  --hc-ls-normal: 0;
  --hc-ls-wide: 0.06em;
  --hc-ls-ultra: 0.14em;
  --hc-wrap: 1280px;
  --hc-wrap-wide: 1440px;
  --hc-hdr-h: 68px;
  --hc-dur-fast: 140ms;
  --hc-dur-base: 220ms;
  --hc-dur-slow: 360ms;
  --hc-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --hc-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --hc-ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
  --hc-z-header: 50;
  --hc-z-drawer: 80;
  --hc-z-modal: 100;
  --hc-z-toast: 120;
  --hc-z-tooltip: 140;
}

:root[data-theme="dark"] {
  --hc-paper: #1a1714;
  --hc-paper-2: #221d18;
  --hc-paper-3: #2a231e;
  --hc-bg: #14110e;
  --hc-bg-warm: #1f1a16;
  --hc-ink: #f5f2ec;
  --hc-ink-2: #e0d9cc;
  --hc-ink-soft: rgba(245, 242, 236, 0.7);
  --hc-ink-mid: rgba(245, 242, 236, 0.55);
  --hc-ink-muted: rgba(245, 242, 236, 0.3);
  --hc-line: rgba(245, 242, 236, 0.08);
  --hc-line-2: rgba(245, 242, 236, 0.14);
  --hc-line-strong: rgba(245, 242, 236, 0.24);
  --hc-accent-soft: rgba(212, 184, 150, 0.14);
  --hc-gold-soft: rgba(212, 184, 150, 0.1);
  --hc-gold-border: rgba(212, 184, 150, 0.3);
}

[data-theme="warm-sand"],
:root {
  --hc-bg: #f8f6f3;
  --hc-bg-warm: #f0ebe1;
  --hc-paper: #ffffff;
  --hc-paper-2: #fafaf8;
  --hc-paper-3: #f2efe9;
  --hc-ink: #1a1714;
  --hc-ink-2: #3a3128;
  --hc-ink-soft: rgba(26, 23, 20, 0.7);
  --hc-ink-mid: rgba(26, 23, 20, 0.55);
  --hc-ink-muted: rgba(26, 23, 20, 0.3);
  --hc-accent: #8b7355;
  --hc-accent-dark: #5d4d3a;
  --hc-accent-soft: rgba(139, 115, 85, 0.08);
  --hc-gold: #d4b896;
  --hc-gold-soft: rgba(212, 184, 150, 0.15);
  --hc-gold-border: rgba(212, 184, 150, 0.38);
  --hc-success: #3d6b4f;
  --hc-success-soft: rgba(61, 107, 79, 0.1);
  --hc-line: rgba(26, 23, 20, 0.08);
  --hc-line-2: rgba(26, 23, 20, 0.15);
  --hc-line-strong: rgba(26, 23, 20, 0.22);
  --hc-hero-grad: linear-gradient(160deg, #f3e9d6 0%, #e8dfd0 100%);
  --hc-cat-feat-grad: linear-gradient(160deg, #f3e9d6 0%, #e8dfd0 100%);
  --hc-cat-feat-hover-grad: linear-gradient(160deg, #ede2c9 0%, #d4b896 100%);
  --hc-b2b-grad: linear-gradient(135deg, #2c2820 0%, #4a3f30 100%);
  --hc-glow-color: rgba(212, 184, 150, 0.28);
  --hc-shadow-warm: 0 30px 80px -20px rgba(139, 115, 85, 0.3);
}

[data-theme="midnight-brass"] {
  --hc-bg: #14110e;
  --hc-bg-warm: #1f1a16;
  --hc-paper: #221d18;
  --hc-paper-2: #2a2520;
  --hc-paper-3: #322b25;
  --hc-ink: #f5f0e8;
  --hc-ink-2: #e0d9cc;
  --hc-ink-soft: rgba(245, 240, 232, 0.72);
  --hc-ink-mid: rgba(245, 240, 232, 0.55);
  --hc-ink-muted: rgba(245, 240, 232, 0.3);
  --hc-accent: #d4b896;
  --hc-accent-dark: #b8966a;
  --hc-accent-soft: rgba(212, 184, 150, 0.1);
  --hc-gold: #d4b896;
  --hc-gold-soft: rgba(212, 184, 150, 0.1);
  --hc-gold-border: rgba(212, 184, 150, 0.3);
  --hc-success: #6ba480;
  --hc-success-soft: rgba(107, 164, 128, 0.15);
  --hc-line: rgba(245, 240, 232, 0.08);
  --hc-line-2: rgba(245, 240, 232, 0.14);
  --hc-line-strong: rgba(245, 240, 232, 0.24);
  --hc-hero-grad: linear-gradient(160deg, #2a2520 0%, #3d3329 100%);
  --hc-cat-feat-grad: linear-gradient(160deg, #2a2520 0%, #3d3329 100%);
  --hc-cat-feat-hover-grad: linear-gradient(160deg, #3d3329 0%, #5a4a3a 100%);
  --hc-b2b-grad: linear-gradient(135deg, #d4b896 0%, #b8966a 100%);
  --hc-glow-color: rgba(212, 184, 150, 0.35);
  --hc-shadow-warm: 0 30px 80px -20px rgba(0, 0, 0, 0.55);
}

[data-theme="champagne-gold"] {
  --hc-bg: #fafaf7;
  --hc-bg-warm: #f5f1e8;
  --hc-paper: #ffffff;
  --hc-paper-2: #fbf9f3;
  --hc-paper-3: #f3eee0;
  --hc-ink: #2a2520;
  --hc-ink-2: #3d3329;
  --hc-ink-soft: rgba(42, 37, 32, 0.72);
  --hc-ink-mid: rgba(42, 37, 32, 0.55);
  --hc-ink-muted: rgba(42, 37, 32, 0.28);
  --hc-accent: #c9a961;
  --hc-accent-dark: #a8893f;
  --hc-accent-soft: rgba(201, 169, 97, 0.1);
  --hc-gold: #d4b061;
  --hc-gold-soft: rgba(212, 176, 97, 0.16);
  --hc-gold-border: rgba(212, 176, 97, 0.42);
  --hc-success: #4a7858;
  --hc-success-soft: rgba(74, 120, 88, 0.1);
  --hc-line: rgba(42, 37, 32, 0.07);
  --hc-line-2: rgba(42, 37, 32, 0.14);
  --hc-line-strong: rgba(42, 37, 32, 0.22);
  --hc-hero-grad: linear-gradient(160deg, #f7f0d9 0%, #e8d8a8 100%);
  --hc-cat-feat-grad: linear-gradient(160deg, #f7f0d9 0%, #e8d8a8 100%);
  --hc-cat-feat-hover-grad: linear-gradient(160deg, #f0e3b0 0%, #c9a961 100%);
  --hc-b2b-grad: linear-gradient(135deg, #2a2520 0%, #3d3329 100%);
  --hc-glow-color: rgba(212, 176, 97, 0.32);
  --hc-shadow-warm: 0 30px 80px -20px rgba(168, 137, 63, 0.28);
}

[data-theme="forest-premium"] {
  --hc-bg: #f4f3ec;
  --hc-bg-warm: #e8e8d8;
  --hc-paper: #ffffff;
  --hc-paper-2: #fafaf2;
  --hc-paper-3: #ededdc;
  --hc-ink: #1d2418;
  --hc-ink-2: #2c3826;
  --hc-ink-soft: rgba(29, 36, 24, 0.72);
  --hc-ink-mid: rgba(29, 36, 24, 0.55);
  --hc-ink-muted: rgba(29, 36, 24, 0.3);
  --hc-accent: #5a7a5a;
  --hc-accent-dark: #3d5a3d;
  --hc-accent-soft: rgba(90, 122, 90, 0.1);
  --hc-gold: #c9a961;
  --hc-gold-soft: rgba(201, 169, 97, 0.14);
  --hc-gold-border: rgba(201, 169, 97, 0.38);
  --hc-success: #5a7a5a;
  --hc-success-soft: rgba(90, 122, 90, 0.12);
  --hc-line: rgba(29, 36, 24, 0.08);
  --hc-line-2: rgba(29, 36, 24, 0.15);
  --hc-line-strong: rgba(29, 36, 24, 0.24);
  --hc-hero-grad: linear-gradient(160deg, #d8e0c8 0%, #b8c8a0 100%);
  --hc-cat-feat-grad: linear-gradient(160deg, #d8e0c8 0%, #b8c8a0 100%);
  --hc-cat-feat-hover-grad: linear-gradient(160deg, #b8c8a0 0%, #5a7a5a 100%);
  --hc-b2b-grad: linear-gradient(135deg, #1d2418 0%, #2c3826 100%);
  --hc-glow-color: rgba(201, 169, 97, 0.3);
  --hc-shadow-warm: 0 30px 80px -20px rgba(61, 90, 61, 0.3);
}

[data-theme="bordeaux-lux"] {
  --hc-bg: #f5f0ea;
  --hc-bg-warm: #ede2d4;
  --hc-paper: #ffffff;
  --hc-paper-2: #faf3eb;
  --hc-paper-3: #f0e3d2;
  --hc-ink: #2a1818;
  --hc-ink-2: #3d2828;
  --hc-ink-soft: rgba(42, 24, 24, 0.72);
  --hc-ink-mid: rgba(42, 24, 24, 0.55);
  --hc-ink-muted: rgba(42, 24, 24, 0.3);
  --hc-accent: #8b3a3a;
  --hc-accent-dark: #6b2828;
  --hc-accent-soft: rgba(139, 58, 58, 0.08);
  --hc-gold: #c9a961;
  --hc-gold-soft: rgba(201, 169, 97, 0.14);
  --hc-gold-border: rgba(201, 169, 97, 0.38);
  --hc-success: #4a7858;
  --hc-success-soft: rgba(74, 120, 88, 0.1);
  --hc-line: rgba(42, 24, 24, 0.08);
  --hc-line-2: rgba(42, 24, 24, 0.15);
  --hc-line-strong: rgba(42, 24, 24, 0.24);
  --hc-hero-grad: linear-gradient(160deg, #f0d8c0 0%, #d8a890 100%);
  --hc-cat-feat-grad: linear-gradient(160deg, #f0d8c0 0%, #c89888 100%);
  --hc-cat-feat-hover-grad: linear-gradient(160deg, #c89888 0%, #8b3a3a 100%);
  --hc-b2b-grad: linear-gradient(135deg, #2a1818 0%, #3d2828 100%);
  --hc-glow-color: rgba(139, 58, 58, 0.28);
  --hc-shadow-warm: 0 30px 80px -20px rgba(107, 40, 40, 0.3);
}

[data-theme="onyx-pearl"] {
  --hc-bg: #fbfaf8;
  --hc-bg-warm: #f4f1ea;
  --hc-paper: #ffffff;
  --hc-paper-2: #faf8f3;
  --hc-paper-3: #f0ede5;
  --hc-ink: #0a0a0a;
  --hc-ink-2: #1a1a1a;
  --hc-ink-soft: rgba(10, 10, 10, 0.72);
  --hc-ink-mid: rgba(10, 10, 10, 0.55);
  --hc-ink-muted: rgba(10, 10, 10, 0.3);
  --hc-accent: #1a1a1a;
  --hc-accent-dark: #000000;
  --hc-accent-soft: rgba(10, 10, 10, 0.06);
  --hc-gold: #b8a48f;
  --hc-gold-soft: rgba(184, 164, 143, 0.14);
  --hc-gold-border: rgba(184, 164, 143, 0.38);
  --hc-success: #2c5a3a;
  --hc-success-soft: rgba(44, 90, 58, 0.08);
  --hc-line: rgba(10, 10, 10, 0.07);
  --hc-line-2: rgba(10, 10, 10, 0.14);
  --hc-line-strong: rgba(10, 10, 10, 0.24);
  --hc-hero-grad: linear-gradient(160deg, #ede9e0 0%, #d4cfc4 100%);
  --hc-cat-feat-grad: linear-gradient(160deg, #ede9e0 0%, #c8c4b8 100%);
  --hc-cat-feat-hover-grad: linear-gradient(160deg, #c8c4b8 0%, #1a1a1a 100%);
  --hc-b2b-grad: linear-gradient(135deg, #0a0a0a 0%, #2a2520 100%);
  --hc-glow-color: rgba(184, 164, 143, 0.3);
  --hc-shadow-warm: 0 30px 80px -20px rgba(0, 0, 0, 0.4);
}

:root {
  --cookie-banner-h: 96px;
  --gx: 50%;
  --gy: 50%;
  --parallaxY: 0px;
  --hc-bg-2: var(--hc-paper-3);
  --hc-font: var(--hc-sans);
  --hc-gold-1: #d4b896;
  --hc-gold-2: #b8966a;
  --hc-green: #3d6b4f;
  --hc-muted: rgba(26, 23, 20, 0.66);
  --hc-red: #8b3a2e;
  --sf-ink: #1a1714;
  --sf-muted: rgba(26, 23, 20, 0.66);
  --sf-line: rgba(139, 115, 85, 0.24);
  --sf-line-strong: rgba(139, 115, 85, 0.36);
  --sf-paper: #ffffff;
  --sf-soft: #f8f3e8;
  --sf-radius-xl: 24px;
  --sf-radius-lg: 18px;
  --sf-radius-md: 14px;
  --sf-shadow: 0 24px 56px -36px rgba(27, 20, 13, 0.34);
}

:root {
  --sp-4: 4px;
  --sp-6: 6px;
  --sp-8: 8px;
  --sp-10: 10px;
  --sp-12: 12px;
  --sp-16: 16px;
  --sp-20: 20px;
  --sp-24: 24px;
  --sp-32: 32px;
  --sp-48: 48px;
  --sp-64: 64px;
  --fs-11: 11px;
  --fs-12: 12px;
  --fs-13: 13px;
  --fs-14: 14px;
  --fs-15: 15px;
  --fs-16: 16px;
  --fs-18: 18px;
  --fs-20: 20px;
  --fs-24: 24px;
  --fs-32: 32px;
  --fs-40: 40px;
  --fs-48: 48px;
  --fs-52: 52px;
  --fw-400: 400;
  --fw-500: 500;
  --fw-600: 600;
  --fw-700: 700;
  --lh-1: 1;
  --lh-1-1: 1.1;
  --lh-1-2: 1.2;
  --lh-1-4: 1.4;
  --lh-1-5: 1.5;
  --lh-1-6: 1.6;
  --c-primary: #1a1716;
  --c-primary-dark: #0f0d0b;
  --c-primary-light: #2d2420;
  --c-white: #fffcf7;
  --c-bg: #f3f1ef;
  --c-bg-light: #fafaf8;
  --c-border: #e8e4e0;
  --c-text: #1a1716;
  --c-text-secondary: #6b6258;
  --c-text-muted: #a6a29c;
  --c-success: #3d6b4f;
  --c-warning: #b8731c;
  --c-error: #d63031;
  --c-error-light: #ff7675;
  --c-accent: #d4af37;
  --c-accent-warm: #8b7355;
  --sf-gold: #b8966a;
  --sf-red: #8b3a2e;
  --sh-sm: 0 2px 8px rgba(27, 20, 13, 0.06);
  --sh-md: 0 4px 16px rgba(27, 20, 13, 0.1);
  --sh-lg: 0 8px 24px rgba(27, 20, 13, 0.12);
  --sh-xl: 0 12px 32px rgba(27, 20, 13, 0.15);
  --sh-2xl: 0 16px 48px rgba(27, 20, 13, 0.18);
  --tr-fast: 0.15s ease-out;
  --tr-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --tr-slow: 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
  --br-4: 4px;
  --br-6: 6px;
  --br-8: 8px;
  --br-12: 12px;
  --br-16: 16px;
  --br-full: 9999px;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-modal: 1000;
}
