@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

:root {
  --background: 210 20% 98%;
  --foreground: 220 25% 14%;

  --card: 0 0% 100%;
  --card-foreground: 220 25% 14%;

  --popover: 0 0% 100%;
  --popover-foreground: 220 25% 14%;

  --primary: 174 72% 40%;
  --primary-foreground: 0 0% 100%;

  --secondary: 220 20% 95%;
  --secondary-foreground: 220 25% 14%;

  --muted: 220 14% 96%;
  --muted-foreground: 220 10% 46%;

  --accent: 24 95% 58%;
  --accent-foreground: 0 0% 100%;

  --destructive: 0 84% 60%;
  --destructive-foreground: 0 0% 100%;

  --border: 220 13% 91%;
  --input: 220 13% 91%;
  --ring: 174 72% 40%;

  --radius: 0.75rem;

  --hero-gradient: linear-gradient(135deg, hsl(174 72% 40%) 0%, hsl(200 80% 45%) 50%, hsl(220 70% 50%) 100%);
  --card-shadow: 0 4px 24px -4px hsl(220 25% 14% / 0.08);
  --card-shadow-hover: 0 12px 40px -8px hsl(174 72% 40% / 0.2);
  --glow-primary: 0 0 40px hsl(174 72% 40% / 0.15);

  --sidebar-background: 0 0% 98%;
  --sidebar-foreground: 240 5.3% 26.1%;
  --sidebar-primary: 240 5.9% 10%;
  --sidebar-primary-foreground: 0 0% 98%;
  --sidebar-accent: 240 4.8% 95.9%;
  --sidebar-accent-foreground: 240 5.9% 10%;
  --sidebar-border: 220 13% 91%;
  --sidebar-ring: 174 72% 40%;
}

.dark {
  --background: 220 25% 8%;
  --foreground: 210 20% 98%;
  --card: 220 25% 12%;
  --card-foreground: 210 20% 98%;
  --popover: 220 25% 12%;
  --popover-foreground: 210 20% 98%;
  --primary: 174 72% 50%;
  --primary-foreground: 220 25% 8%;
  --secondary: 220 20% 18%;
  --secondary-foreground: 210 20% 98%;
  --muted: 220 14% 18%;
  --muted-foreground: 220 10% 65%;
  --accent: 24 95% 58%;
  --accent-foreground: 0 0% 100%;
  --destructive: 0 62.8% 30.6%;
  --destructive-foreground: 210 40% 98%;
  --border: 220 20% 20%;
  --input: 220 20% 20%;
  --ring: 174 72% 50%;
  --sidebar-background: 240 5.9% 10%;
  --sidebar-foreground: 240 4.8% 95.9%;
  --sidebar-primary: 174 72% 50%;
  --sidebar-primary-foreground: 0 0% 100%;
  --sidebar-accent: 240 3.7% 15.9%;
  --sidebar-accent-foreground: 240 4.8% 95.9%;
  --sidebar-border: 240 3.7% 15.9%;
  --sidebar-ring: 174 72% 50%;
}

* {
  border-color: hsl(var(--border));
}

body {
  margin: 0;
  background: hsl(var(--background));
  color: hsl(var(--foreground));
  font-family: 'DM Sans', system-ui, sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Space Grotesk', system-ui, sans-serif;
  font-weight: 700;
}

.font-heading {
  font-family: 'Space Grotesk', system-ui, sans-serif;
  font-weight: 700;
}

.font-body {
  font-family: 'DM Sans', system-ui, sans-serif;
  font-weight: 400;
}

.text-gradient-hero {
  background: var(--hero-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.bg-gradient-hero {
  background: var(--hero-gradient);
}

.shadow-card {
  box-shadow: var(--card-shadow);
}

.shadow-card-hover {
  box-shadow: var(--card-shadow-hover);
}

.glow-primary {
  box-shadow: var(--glow-primary);
}

.nav-scrolled .nav-link,
.nav-scrolled .nav-link-mobile {
  color: #6a7082 !important;
}

.nav-scrolled .nav-link:hover,
.nav-scrolled .nav-link-mobile:hover {
  color: #6a7082 !important;
}

.nav-scrolled #nav-mobile-toggle {
  color: #6a7082 !important;
}

/* Simple accordion height animation (no Radix runtime needed). */
[data-accordion-panel] {
  height: 0;
  overflow: hidden;
  transition: height 0.2s ease-out;
}

