:root {
  --color-primary: #1387c0;
  --color-primary-strong: #0f6f9f;
  --color-primary-soft: #e8f6fc;

  --color-accent: #f4520d;
  --color-accent-soft: #fff0e8;

  --color-bg: #ffffff;
  --color-bg-soft: #faedd1;
  --color-bg-muted: #f6f0e3;
  --color-bg-dark: #0f1720;

  --color-surface: #ffffff;
  --color-surface-2: #fffaf1;

  --color-text: #16212b;
  --color-text-soft: #4f6372;
  --color-text-muted: #7d8d99;
  --color-text-light: #dce7ef;

  --color-border: #d8e6ef;
  --color-border-soft: #edf4f8;

  --shadow-xs: 0 4px 14px rgba(10, 22, 35, 0.04);
  --shadow-sm: 0 10px 30px rgba(19, 135, 192, 0.08);
  --shadow-md: 0 18px 48px rgba(10, 22, 35, 0.12);
  --shadow-lg: 0 28px 72px rgba(10, 22, 35, 0.16);

  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 28px;
  --radius-pill: 999px;

  --container: 1200px;
  --header-height: 84px;

  --font-sans:
    "Inter",
    "Noto Sans TC",
    "PingFang TC",
    "Microsoft JhengHei",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    sans-serif;

  --fs-xs: 0.8125rem;
  --fs-sm: 0.9375rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.25rem;
  --fs-xl: 1.5rem;
  --fs-2xl: clamp(2rem, 3vw, 3rem);
  --fs-3xl: clamp(2.6rem, 5vw, 4.8rem);

  --lh-tight: 1.18;
  --lh-base: 1.75;

  --section-space: clamp(72px, 10vw, 120px);
  --transition: 220ms ease;
}