/* Sora Flights design tokens (v2). Light only. */
@font-face {
  font-family: "Geist";
  src: url("/fonts/Geist-Latin.woff2") format("woff2");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist Mono";
  src: url("/fonts/GeistMono-500-Latin.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

:root {
  /* Neutrals */
  --bg: #ffffff;
  --bg-subtle: #f6f7f9;
  --surface: #ffffff;
  --surface-sunk: #f1f3f6;
  --border: #e3e6eb;
  --border-strong: #cdd2da;
  --text: #0e1726;
  --text-2: #475263;
  --text-3: #5f6a7a;
  --text-disabled: #a9b1bd;

  /* Brand / action */
  --brand: #0b5cad;
  --brand-hover: #094c90;
  --brand-press: #073d74;
  --brand-soft: #e8f1fb;
  --brand-soft-2: #d4e5f7;
  --brand-ink: #073d74;
  --hero: #edf4fb;

  /* Signals */
  --deal: #0f7a3d;
  --deal-soft: #e7f5ec;
  --warn: #a15c00;
  --warn-soft: #fff4e0;
  --danger: #b42318;
  --danger-soft: #fdecea;
  --sun: #e8590c;

  /* Type */
  --font: "Geist", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --fs-display: 30px;
  --fs-h1: 24px;
  --fs-h2: 20px;
  --fs-h3: 17px;
  --fs-body-lg: 18px;
  --fs-body: 16px;
  --fs-sm: 14px;
  --fs-xs: 12px;
  --fs-price: 28px;

  /* Space (4px grid) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;

  /* Shape & depth */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-full: 999px;
  --shadow-1: 0 1px 2px rgba(14, 23, 38, 0.06), 0 1px 1px rgba(14, 23, 38, 0.04);
  --shadow-2: 0 8px 24px rgba(14, 23, 38, 0.08), 0 2px 6px rgba(14, 23, 38, 0.05);
  --shadow-3: 0 16px 40px rgba(14, 23, 38, 0.12), 0 4px 12px rgba(14, 23, 38, 0.06);
  --focus-ring: 0 0 0 3px rgba(11, 92, 173, 0.35);

  /* Motion */
  --ease: cubic-bezier(0.2, 0.8, 0.2, 1);
  --dur-1: 120ms;
  --dur-2: 200ms;
  --dur-3: 280ms;

  /* Layout */
  --tap-min: 44px;
  --container: 1120px;
  --content: 720px;
  --summary: 340px;
  --header-h: 56px;
}

@media (min-width: 768px) {
  :root {
    --fs-display: 44px;
    --fs-h1: 28px;
    --fs-price: 32px;
    --header-h: 64px;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-1: 0ms;
    --dur-2: 0ms;
    --dur-3: 0ms;
  }
}
