/* NeoSignal Global Styles */

/* CSS Variables */
:root {
  --primary: #06b6d4;
  --secondary: #7c3aed;
  --dark: #020617;
  --surface: #0f172a;
}

/* Base Reset */
html {
  scroll-behavior: smooth;
}

body {
  background-color: var(--dark);
  color: #f1f5f9;
}

/* Selection Color */
::selection {
  background-color: rgba(6, 182, 212, 0.3);
  color: #fff;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: var(--dark);
}

::-webkit-scrollbar-thumb {
  background: #334155;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #475569;
}

/* Utility Classes for FAQ */
.faq-content {
  transition: all 0.3s ease;
}

/* Counter Animation Initial State */
.counter {
  opacity: 0;
  transform: translateY(10px);
  animation: fadeInUp 0.6s forwards;
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Gradient Text Utility */
.gradient-text {
  background: linear-gradient(135deg, #06b6d4, #7c3aed);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Glass Effect */
.glass {
  background: rgba(15, 23, 42, 0.7);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* Glow Effects */
.glow-primary {
  box-shadow: 0 0 20px rgba(6, 182, 212, 0.3);
}

.glow-secondary {
  box-shadow: 0 0 20px rgba(124, 58, 237, 0.3);
}

/* Button Hover Effects */
.btn-hover {
  transition: all 0.3s ease;
}

.btn-hover:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 30px -10px rgba(6, 182, 212, 0.5);
}

/* Responsive Image Fix */
img {
  max-width: 100%;
  height: auto;
}

/* Focus Visible for Accessibility */
*:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

/* Hide scrollbar for mobile menu but keep functionality */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}

.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
