
:root {
  --background: oklch(0.995 0.005 210);
  --foreground: oklch(0.20 0.04 240);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.20 0.04 240);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.20 0.04 240);
  --primary: oklch(0.40 0.14 240);
  --primary-foreground: oklch(0.99 0.005 210);
  --primary-deep: oklch(0.28 0.12 245);
  --secondary: oklch(0.96 0.02 220);
  --secondary-foreground: oklch(0.28 0.10 240);
  --muted: oklch(0.97 0.01 220);
  --muted-foreground: oklch(0.48 0.03 240);
  --accent: oklch(0.72 0.17 155);
  --accent-foreground: oklch(0.16 0.05 155);
  --border: oklch(0.90 0.02 220);
  --input: oklch(0.92 0.015 220);
  --ring: oklch(0.62 0.16 220);
  --gradient-hero: linear-gradient(135deg, oklch(0.28 0.12 245) 0%, oklch(0.40 0.14 240) 50%, oklch(0.55 0.16 220) 100%);
  --shadow-elegant: 0 20px 40px -20px oklch(0.28 0.12 245 / 0.35);
  --shadow-soft: 0 10px 30px -12px oklch(0.28 0.12 245 / 0.15);
}
.container-x { margin-inline:auto; max-width:80rem; padding-inline:1.25rem; }
@media (min-width:640px){ .container-x{padding-inline:2rem;} }
@media (min-width:1024px){ .container-x{padding-inline:3rem;} }
.text-balance{ text-wrap:balance; }
body{ font-family:"Plus Jakarta Sans",ui-sans-serif,system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
h1,h2,h3,h4{ font-family:Fraunces,ui-serif,Georgia,serif; letter-spacing:-0.02em; font-weight:500; }
