:root {
  --brand: #306796;
  --brand-dark: #245078;
  --teal: #72BFB1;
  --teal-dark: #4ea493;
  --bg: #ffffff;
  --fg: #1a2233;
  --muted: #6a7488;
  --card: #ffffff;
  --border: #e5e9f0;
  --soft-from: #fbfdfd;
  --soft-to: #eaf6f3;

  --gradient-hero: linear-gradient(135deg, var(--brand-dark) 0%, var(--brand) 50%, var(--teal) 100%);
  --gradient-soft: linear-gradient(180deg, var(--soft-from) 0%, var(--soft-to) 100%);
  --gradient-teal: linear-gradient(135deg, var(--teal) 0%, var(--brand) 100%);

  --shadow-elegant: 0 20px 60px -20px rgba(48,103,150,.35);
  --shadow-soft:    0 10px 30px -12px rgba(48,103,150,.20);
}

html { scroll-behavior: smooth; }
body { background: var(--bg); color: var(--fg); font-family: 'Inter', ui-sans-serif, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
h1,h2,h3,h4 { font-family: 'Sora','Inter',sans-serif; letter-spacing: -0.02em; }

.bg-gradient-hero { background-image: var(--gradient-hero); }
.bg-gradient-soft { background-image: var(--gradient-soft); }
.bg-gradient-teal { background-image: var(--gradient-teal); }
.shadow-elegant   { box-shadow: var(--shadow-elegant); }
.shadow-soft      { box-shadow: var(--shadow-soft); }

/* Hamburger toggle (CSS only, no JS) */
#nav-toggle { display: none; }
#nav-toggle:checked ~ .mobile-menu { display: block; }
