/* Kayak Strategic Advisors - design tokens v1.0 (October 2026) */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@62..125,100..900&family=Source+Serif+4:ital,opsz,wght@0,8..60,400..700;1,8..60,400..700&display=swap');
:root {
  --ksa-deep-current: #0E2F3C;
  --ksa-open-water: #17807E;
  --ksa-beacon-saffron: #EE9B1E;
  --ksa-sea-mist: #EEF4F1;
  --ksa-storm-slate: #3E5563;
  --ksa-tidewater-blue: #2D6A9F;
  --ksa-kelp-green: #4B7A4E;
  --ksa-estuary-sand: #D8C5A1;
  --ksa-red-clay: #B4472F;
  --ksa-riverstone: #8B9A9C;
  --ksa-deep-lagoon: #0B5654;
  --ksa-shallows: #5DB2AB;
  --ksa-spray: #CDE8E3;
  --ksa-burnished-gold: #9C630E;
  --ksa-dawn: #F5C46D;
  --ksa-haze: #FBEBCD;
  --ksa-undertow: #1F4B5F;
  --ksa-drizzle: #7A96A3;
  --ksa-fog: #D4DEE2;
  --ksa-dusk-plum: #5E4B78;
  --ksa-lichen: #9AAD5A;
  --ksa-coral-flare: #E2735C;
  --ksa-color-surface-page: #EEF4F1;
  --ksa-color-surface-card: #FFFFFF;
  --ksa-color-surface-raised: #FFFFFF;
  --ksa-color-surface-inverse: #0E2F3C;
  --ksa-color-text-heading: #0E2F3C;
  --ksa-color-text-body: #3E5563;
  --ksa-color-text-muted: #7A96A3;
  --ksa-color-text-link: #0B5654;
  --ksa-color-action-primary: #17807E;
  --ksa-color-action-primary-hover: #0B5654;
  --ksa-color-action-on-primary: #FFFFFF;
  --ksa-color-action-destructive: #B4472F;
  --ksa-color-border-subtle: #D4DEE2;
  --ksa-color-border-strong: #7A96A3;
  --ksa-color-focus-ring: #0E2F3C;
  --ksa-color-data-primary: #17807E;
  --ksa-color-data-highlight: #EE9B1E;
  --ksa-color-data-context: #8B9A9C;
  --ksa-color-state-success: #4B7A4E;
  --ksa-color-state-warning: #9C630E;
  --ksa-color-state-error: #B4472F;
  --ksa-color-state-info: #2D6A9F;
  --ksa-space-1: 4px;
  --ksa-space-2: 8px;
  --ksa-space-3: 12px;
  --ksa-space-4: 16px;
  --ksa-space-5: 24px;
  --ksa-space-6: 32px;
  --ksa-space-7: 48px;
  --ksa-space-8: 64px;
  --ksa-space-9: 96px;
  --ksa-radius-none: 0px;
  --ksa-radius-xs: 2px;
  --ksa-radius-sm: 4px;
  --ksa-radius-md: 8px;
  --ksa-radius-lg: 12px;
  --ksa-radius-pill: 999px;
  --ksa-elevation-e0: 0 0 0 1px #D4DEE2;
  --ksa-elevation-e1: 0 1px 2px rgba(14,47,60,.08);
  --ksa-elevation-e2: 0 6px 16px rgba(14,47,60,.10);
  --ksa-elevation-e3: 0 16px 40px rgba(14,47,60,.18);
  --ksa-motion-micro: 120ms ease-out;
  --ksa-motion-standard: 200ms cubic-bezier(.2,0,0,1);
  --ksa-motion-paddle: 320ms cubic-bezier(.3,0,0,1);
  --ksa-motion-page: 480ms cubic-bezier(.2,0,0,1);
  --ksa-data-cat-1: #17807E;
  --ksa-data-cat-2: #2D6A9F;
  --ksa-data-cat-3: #4B7A4E;
  --ksa-data-cat-4: #3E5563;
  --ksa-data-cat-5: #D8C5A1;
  --ksa-data-cat-6: #5E4B78;
  --ksa-data-cat-7: #5DB2AB;
  --ksa-data-cat-8: #9AAD5A;
  --ksa-data-seq-1: #CDE8E3;
  --ksa-data-seq-2: #5DB2AB;
  --ksa-data-seq-3: #17807E;
  --ksa-data-seq-4: #0B5654;
  --ksa-data-seq-5: #0E2F3C;
  --ksa-data-risk-1: #4B7A4E;
  --ksa-data-risk-2: #9AAD5A;
  --ksa-data-risk-3: #F5C46D;
  --ksa-data-risk-4: #EE9B1E;
  --ksa-data-risk-5: #E2735C;
  --ksa-data-risk-6: #B4472F;
  --ksa-font-sans: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
  --ksa-font-serif: 'Source Serif 4', Georgia, serif;
  --ksa-type-display: 700 56px/60px var(--ksa-font-sans);
  --ksa-type-h1: 600 40px/48px var(--ksa-font-sans);
  --ksa-type-h2: 600 32px/40px var(--ksa-font-sans);
  --ksa-type-h3: 600 24px/32px var(--ksa-font-sans);
  --ksa-type-h4: 600 20px/28px var(--ksa-font-sans);
  --ksa-type-body-l: 400 18px/28px var(--ksa-font-serif);
  --ksa-type-body: 400 16px/24px var(--ksa-font-sans);
  --ksa-type-body-s: 400 14px/20px var(--ksa-font-sans);
  --ksa-type-caption: 400 12px/16px var(--ksa-font-sans);
  --ksa-type-overline: 600 11px/16px var(--ksa-font-sans);
}
[data-theme="dark"] {
  --ksa-color-surface-page: #0E2F3C;
  --ksa-color-surface-card: #3E5563;
  --ksa-color-surface-raised: #1F4B5F;
  --ksa-color-surface-inverse: #EEF4F1;
  --ksa-color-text-heading: #FFFFFF;
  --ksa-color-text-body: #EEF4F1;
  --ksa-color-text-muted: #7A96A3;
  --ksa-color-text-link: #CDE8E3;
  --ksa-color-action-primary: #3FB0A9;
  --ksa-color-action-primary-hover: #5DB2AB;
  --ksa-color-action-on-primary: #0E2F3C;
  --ksa-color-action-destructive: #E2735C;
  --ksa-color-border-subtle: #2C4955;
  --ksa-color-border-strong: #7A96A3;
  --ksa-color-focus-ring: #EE9B1E;
  --ksa-color-data-primary: #3FB0A9;
  --ksa-color-data-highlight: #EE9B1E;
  --ksa-color-data-context: #7A96A3;
  --ksa-color-state-success: #9AAD5A;
  --ksa-color-state-warning: #F5C46D;
  --ksa-color-state-error: #E2735C;
  --ksa-color-state-info: #7A96A3;
  --ksa-elevation-e0: 0 0 0 1px rgba(212,222,226,.15);
  --ksa-elevation-e1: 0 0 0 1px rgba(212,222,226,.10),0 1px 2px rgba(0,0,0,.30);
  --ksa-elevation-e2: 0 0 0 1px rgba(212,222,226,.10),0 6px 16px rgba(0,0,0,.35);
  --ksa-elevation-e3: 0 0 0 1px rgba(212,222,226,.10),0 16px 40px rgba(0,0,0,.45);
}
@media (prefers-reduced-motion: reduce) { :root { --ksa-motion-standard: 120ms linear; --ksa-motion-paddle: 120ms linear; --ksa-motion-page: 120ms linear; } }
.ksa-display { font: var(--ksa-type-display); font-stretch: 118%; }
.ksa-figure { font-variant-numeric: tabular-nums; }
