:root {
  color-scheme: light;

  --jp-bg: #f4f9ff;
  --jp-bg-alt: #e8f2fc;
  --jp-surface: #ffffff;
  --jp-surface-glass: rgba(255, 255, 255, 0.72);
  --jp-text: #0f1f33;
  --jp-text-muted: #4a627a;
  --jp-border: rgba(15, 31, 51, 0.1);

  --jp-blue-900: #0b3d6e;
  --jp-blue-700: #1565a8;
  --jp-blue-500: #2d8fd8;
  --jp-cyan-400: #5ec8f2;
  --jp-cyan-200: #b8e8fb;
  --jp-accent: #ff6b4a;
  --jp-accent-soft: rgba(255, 107, 74, 0.14);
  --jp-gold: #f4b942;

  --gradient-brand: linear-gradient(120deg, var(--jp-blue-900) 0%, var(--jp-blue-500) 45%, var(--jp-cyan-400) 100%);
  --gradient-text: linear-gradient(105deg, var(--jp-blue-900), var(--jp-blue-500) 55%, var(--jp-cyan-400));
  --gradient-card: linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(184, 232, 251, 0.35));
  /* deslop-ignore 06 */ --gradient-section: linear-gradient(180deg, var(--jp-bg) 0%, var(--jp-bg-alt) 100%);
  --gradient-accent-line: linear-gradient(90deg, var(--jp-accent), var(--jp-gold), var(--jp-cyan-400));

  --font-display: "Syne", system-ui, sans-serif;
  --font-body: "DM Sans", system-ui, sans-serif;

  --text-xs: clamp(0.75rem, 0.72rem + 0.15vw, 0.8125rem);
  --text-sm: clamp(0.875rem, 0.84rem + 0.2vw, 0.9375rem);
  --text-base: clamp(1rem, 0.96rem + 0.25vw, 1.0625rem);
  --text-lg: clamp(1.125rem, 1.02rem + 0.45vw, 1.3125rem);
  --text-xl: clamp(1.375rem, 1.15rem + 0.8vw, 1.75rem);
  --text-2xl: clamp(1.75rem, 1.4rem + 1.2vw, 2.35rem);
  --text-3xl: clamp(2.25rem, 1.75rem + 1.8vw, 3.25rem);
  --text-hero: clamp(2.5rem, 2rem + 2.4vw, 4.25rem);

  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1.25rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-2xl: clamp(3.5rem, 6vw, 6rem);

  --radius-sm: 0.5rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.25rem;
  --radius-xl: 1.75rem;

  --header-h: 4.75rem;
  --container: min(72rem, calc(100vw - 2rem));
  --container-wide: min(86rem, calc(100vw - 2rem));

  --shadow-soft: 0 1rem 2.5rem rgba(11, 61, 110, 0.08);
  --shadow-card: 0 0.5rem 1.75rem rgba(11, 61, 110, 0.12);
  --transition: 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
