/* ==========================================================================
   VuelaClic — Custom Component Styles & Animations
   Framework: Tailwind CSS v3 + Custom Aviation UI Tokens
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@500;600;700&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');

:root {
  --navy-950: #061020;
  --navy-900: #0A192F;
  --blue-600: #0066FF;
  --coral-500: #FF6B35;
}

html {
  scroll-behavior: smooth;
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

h1, h2, h3, h4, .font-heading {
  font-family: 'Plus Jakarta Sans', sans-serif;
  letter-spacing: -0.025em;
}

.font-mono-num {
  font-family: 'JetBrains Mono', monospace;
}

/* Text Gradients */
.text-gradient-light {
  background: linear-gradient(135deg, #38BDF8 0%, #60A5FA 50%, #FF6B35 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-gradient-dark {
  background: linear-gradient(135deg, #0066FF 0%, #FF6B35 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Custom Scrollbar Hiding for Route Carousel */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* FAQ Accordion Marker Reset */
details > summary {
  list-style: none;
}
details > summary::-webkit-details-marker {
  display: none;
}
details[open] > summary .faq-icon {
  transform: rotate(45deg);
  background-color: #0066FF;
  color: #FFFFFF;
}

/* Modal Open State */
.modal-overlay.open {
  opacity: 1;
  pointer-events: auto;
}
.modal-overlay.open .modal-card {
  transform: translateY(0) scale(1);
}
