:root {
  /* Brand — catalogue pink/magenta/purple */
  --pink: #e91e8c;
  --magenta: #c2187a;
  --purple: #6b2d8e;
  --purple-deep: #4a148c;
  --purple-dark: #2d1b4e;
  --purple-footer: #1a0f2e;

  /* Orange wave accents */
  --orange: #ff6b35;
  --orange-light: #ff8c42;
  --orange-glow: rgba(255, 107, 53, 0.35);

  /* Neutrals */
  --white: #ffffff;
  --off-white: #faf8fc;
  --gray-50: #f5f3f7;
  --gray-100: #ece8f0;
  --gray-200: #d4ced9;
  --gray-400: #9b93a8;
  --gray-600: #5c5568;
  --gray-800: #2a2438;
  --text: #1e1830;

  /* Gradients */
  --gradient-brand: linear-gradient(135deg, var(--pink) 0%, var(--magenta) 40%, var(--purple) 100%);
  --gradient-hero: linear-gradient(145deg, #f8e8f4 0%, #ede0f5 35%, #ffe8dc 70%, #fff5f0 100%);
  --gradient-wave: linear-gradient(90deg, var(--orange-light), var(--pink), var(--purple));
  --gradient-footer: linear-gradient(160deg, var(--purple-dark) 0%, var(--purple-footer) 100%);
  --gradient-card-border: linear-gradient(135deg, var(--pink), var(--purple), var(--orange));

  /* Glass */
  --glass-bg: rgba(255, 255, 255, 0.72);
  --glass-border: rgba(255, 255, 255, 0.85);
  --glass-shadow: 0 8px 32px rgba(107, 45, 142, 0.12);

  /* Typography */
  --font-display: "Playfair Display", Georgia, serif;
  --font-body: "Plus Jakarta Sans", system-ui, sans-serif;

  /* Spacing */
  --section-padding: clamp(4rem, 8vw, 7rem);
  --container: min(1200px, 92vw);

  /* Radius */
  --radius-sm: 12px;
  --radius-md: 20px;
  --radius-lg: 28px;
  --radius-xl: 40px;

  /* Transitions */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --transition: 0.35s var(--ease-out);

  /* Navbar */
  --nav-height: 80px;
}
