:root {
  --fsi-primary: #3659C9;   /* Logo blue */
  --fsi-accent: #4CAF50;    /* CTA green */
  --fsi-light: #F4F6FA;     /* Light background */
  --fsi-dark: #222;         /* Text color */
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  color: var(--fsi-dark);
  background-color: white;
  margin: 0;
  padding: 0;
  line-height: 1.6;
  padding-top: 5rem; /* Reduced spacing for fixed header */
}


h1, h2, h3, h4 {
  font-weight: 700;
  color: var(--fsi-primary);
  margin-top: 0.75rem;
  margin-bottom: 0.75rem; /* Tighter spacing */
}

a {
  color: var(--fsi-primary);
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover {
  color: var(--fsi-accent);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

button,
.cta-button {
  background-color: var(--fsi-accent);
  color: white;
  padding: 0.6rem 1.2rem;
  border: none;
  border-radius: 9999px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

button:hover,
.cta-button:hover,
.button-style:hover {
  background-color: #3e8e41 !important;
  color: white !important;
}

/* Utility classes */
.text-fsi-primary {
  color: var(--fsi-primary);
}

.border-fsi-primary {
  border-color: var(--fsi-primary);
}

/* Mobile menu specific styles */
.mobile-menu-open {
  display: flex !important;
  opacity: 1 !important;
  transform: translateY(0%) !important;
}

/* Styles for header navigation links and hover effects */
.nav-link {
  padding: 0.25rem 0.5rem; /* Slightly reduced spacing */
  border-radius: 0.375rem;
  transition: all 0.3s ease;
}

.nav-link:hover {
  color: var(--fsi-accent);
}

/* Escape colons for Tailwind-style custom hovers */
.hover\:bg-fsi-light:hover {
  background-color: var(--fsi-light);
}

.hover\:text-fsi-primary:hover {
  color: var(--fsi-primary);
}

/* Prevent text wrapping in dropdowns */
.group-hover\:flex .px-4.py-2.text-sm {
  white-space: nowrap;
}

#mobile-menu .flex-col .px-4.py-2.text-xs {
  white-space: nowrap;
}

/* Partner carousel smooth scrolling */
.partners-container {
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

/* Dropdown hover support */
.group:hover .group-hover\:flex {
  display: flex !important;
}

.group-hover\:flex {
  transition: all 0.2s ease-in-out;
}

.group-hover\:flex .hover\:text-fsi-primary:hover {
  color: var(--fsi-accent);
}

header {
  z-index: 9999;
}

/* Dropdown hover fix: smoother reveal + prevents fast close */
.group:hover .dropdown-content {
  display: flex !important;
  pointer-events: auto;
}

.dropdown-content {
  pointer-events: none;
}

.group:hover .dropdown-content {
  display: flex !important;
  pointer-events: auto;
}

.dropdown-content {
  pointer-events: none;
}

html, body {
  min-height: 100%;
  margin: 0;
  padding: 0;
}

footer {
  height: auto !important;
  min-height: auto !important;
}