/* Custom Styles for NRK Speciality Clinic Website */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');

:root {
  --primary-navy: #1A3B68;
  --primary-navy-dark: #0F2C59;
  --primary-navy-light: #2A528A;
  --accent-pink: #B8255F;
  --accent-pink-dark: #8F1947;
  --accent-pink-light: #FDF2F7;
  --bg-slate: #F8FAFC;
  --text-dark: #1E293B;
  --text-muted: #64748B;
}

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  color: var(--text-dark);
  background-color: #ffffff;
  overflow-x: hidden;
}

h1, h2, h3, .font-serif {
  font-family: 'Plus Jakarta Sans', sans-serif;
}

/* Download Prevention & Protection for Images */
img {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  pointer-events: auto;
}

/* Custom Navy & Pink Classes */
.bg-navy { background-color: var(--primary-navy); }
.bg-navy-dark { background-color: var(--primary-navy-dark); }
.text-navy { color: var(--primary-navy); }
.border-navy { border-color: var(--primary-navy); }

.bg-pink-accent { background-color: var(--accent-pink); }
.bg-pink-accent-hover:hover { background-color: var(--accent-pink-dark); }
.text-pink-accent { color: var(--accent-pink); }
.border-pink-accent { border-color: var(--accent-pink); }

/* Dropdown Menu Styles */
.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 240px;
  background-color: #ffffff;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  border-radius: 0.75rem;
  border: 1px solid #F1F5F9;
  padding: 0.5rem 0;
  z-index: 50;
  transition: all 0.2s ease-in-out;
}

.dropdown-group:hover .dropdown-menu {
  display: block;
  animation: fadeIn 0.2s ease-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Card Hover Effects */
.hover-lift {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.hover-lift:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.03);
}

/* Lightbox Modal */
.lightbox {
  display: none;
  position: fixed;
  z-index: 100;
  inset: 0;
  background-color: rgba(15, 23, 42, 0.95);
  backdrop-filter: blur(8px);
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
}
.lightbox.active {
  display: flex;
}

/* Mobile Sidebar Drawer */
.mobile-drawer {
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
}
.mobile-drawer.open {
  transform: translateX(0);
}

/* Animated Reviews Carousel Marquee */
.reviews-marquee-track {
  display: flex;
  gap: 1.5rem;
  width: max-content;
  animation: marquee 35s linear infinite;
}

.reviews-marquee-track:hover {
  animation-play-state: paused;
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--primary-navy);
}
