/* BelHost - Style CSS
   Aesthetics: Modern Professional Hosting Portal
   Palette: Deep Navy, Electric Blue, Ice Blue Tints, Crisp White
*/

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap');

:root {
  --primary: #0052CC;
  --primary-hover: #0040A8;
  --primary-light: #EBF3FE;
  --primary-glow: rgba(0, 82, 204, 0.35);
  --accent-cyan: #00C6FF;
  --accent-green: #00B87C;
  --navy-dark: #071228;
  --navy-card: #0B1D3A;
  --navy-footer: #050E20;
  --text-main: #1E293B;
  --text-muted: #64748B;
  --font-heading: 'Outfit', sans-serif;
  --font-body: 'Plus Jakarta Sans', sans-serif;
}

body {
  font-family: var(--font-body);
  background-color: #F8FAFC;
  color: var(--text-main);
  overflow-x: hidden;
  scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6, .font-heading {
  font-family: var(--font-heading);
}

/* Glassmorphism Header */
.header-sticky {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.header-scrolled {
  box-shadow: 0 10px 30px -10px rgba(0, 32, 96, 0.12);
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

/* Submenu Dropdown Styling */
.nav-dropdown-menu {
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px) scale(0.98);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.group:hover .nav-dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

/* Dropdown Item Glow Effect */
.dropdown-item {
  transition: all 0.2s ease;
}

.dropdown-item:hover {
  background: var(--primary-light);
  transform: translateX(4px);
}

.dropdown-item:hover .icon-box {
  background-color: var(--primary);
  color: #FFFFFF;
}

/* Carousel Banner */
.banner-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  z-index: 1;
  transition: opacity 0.6s ease-in-out, transform 0.6s ease-in-out;
  transform: scale(1.02);
}

.banner-slide.active {
  opacity: 1;
  pointer-events: auto;
  z-index: 10;
  transform: scale(1);
}

.carousel-indicator {
  width: 12px;
  height: 12px;
  border-radius: 9999px;
  background-color: rgba(255, 255, 255, 0.4);
  transition: all 0.3s ease;
  cursor: pointer;
  border: none;
  outline: none;
}

.carousel-indicator:hover {
  background-color: rgba(255, 255, 255, 0.8);
}

.carousel-indicator.active {
  width: 32px;
  background-color: var(--accent-cyan);
}

/* Domain Search Bar */
.domain-search-card {
  background: linear-gradient(135deg, #0A192F 0%, #0B2545 100%);
  border: 1px solid rgba(0, 198, 255, 0.18);
  box-shadow: 0 20px 40px -15px rgba(0, 40, 100, 0.3);
}

/* Plan Cards with Dynamic Hover Effects */
.plan-card {
  position: relative;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 1rem;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
}

.plan-card::before,
.plan-card::after,
.plan-card.featured::before,
.plan-card.featured::after,
*[class*="plan-card"]::before,
*[class*="plan-card"]::after {
  display: none !important;
  content: none !important;
  border: none !important;
  border-top: none !important;
  background: none !important;
  height: 0 !important;
  width: 0 !important;
  position: static !important;
}

.plan-card:hover {
  border-color: #94A3B8;
  transform: translateY(-8px);
  box-shadow: 0 22px 45px -10px rgba(0, 82, 204, 0.15);
}

.plan-card.featured {
  border: 1px solid #94A3B8;
  box-shadow: 0 15px 35px -5px rgba(0, 82, 204, 0.15);
}

/* Dynamic Feature Cards */
.feature-card {
  background: #FFFFFF;
  border: 1px solid #F1F5F9;
  border-radius: 12px;
  transition: all 0.3s ease;
}

.feature-card:hover {
  background: #FFFFFF;
  border-color: #CBD5E1;
  box-shadow: 0 12px 28px -5px rgba(0, 82, 204, 0.12);
  transform: translateY(-4px);
}

.feature-card:hover .feature-icon-wrapper {
  background: var(--primary);
  color: #FFFFFF;
  transform: scale(1.1) rotate(-3deg);
}

/* FAQ Accordion */
.faq-header {
  cursor: pointer;
  transition: background-color 0.2s ease;
  user-select: none;
}

.faq-header:hover {
  background-color: #F8FAFC;
}

.faq-content {
  display: none;
}

.faq-item.active .faq-content {
  display: block !important;
}

.faq-item.active .faq-chevron {
  transform: rotate(180deg);
  color: var(--primary, #0052CC);
}

/* Footer Styling */
.footer-dark {
  background-color: var(--navy-footer);
  color: #94A3B8;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #071228;
}
::-webkit-scrollbar-thumb {
  background: #1E3A8A;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #0052CC;
}

/* Shimmer badge effect */
@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

.badge-shimmer {
  background: linear-gradient(90deg, #0052CC 0%, #00C6FF 50%, #0052CC 100%);
  background-size: 200% 100%;
  animation: shimmer 3s infinite linear;
}
