/* SCANDITRIP — shared component styles (consolidated from the Stitch exports). */

.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
}

/* Cinematic hero overlays */
.cinematic-overlay {
  background: linear-gradient(to bottom, rgba(23, 28, 38, 0.4) 0%, rgba(23, 28, 38, 0.85) 100%);
}
.luxury-gradient-overlay {
  background: linear-gradient(to bottom, rgba(23, 28, 38, 0) 0%, rgba(23, 28, 38, 0.8) 100%);
}

/* Champagne gold accents */
.champagne-border { border: 0.5px solid #e6c183; }
.gold-border { border: 0.5px solid #ffdea8; }
.gold-wash:hover { background-color: rgba(230, 193, 131, 0.08); }
.gold-border-hover { transition: border-color 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
.gold-border-hover:hover { border-color: #ffdea8; }

.text-glow { text-shadow: 0 0 20px rgba(230, 193, 131, 0.3); }
.ivory-gradient { background: linear-gradient(to bottom, #ffffff, #fdfcf9); }

/* Navigation: transparent over hero -> solid on scroll */
.nav-link { color: rgba(255,255,255,0.85); transition: color 0.3s ease; }
.nav-link:hover { color: #e6c183; }
.nav-link.active { color: #e6c183 !important; }

.nav-brand { color: #ffffff; display: inline-flex; align-items: center; }
.nav-brand-logo {
  height: 38px;
  width: auto;
  max-width: 175px;
  object-fit: contain;
  transition: filter 0.35s ease, transform 0.25s ease;
  display: block;
}
.nav-brand:hover .nav-brand-logo {
  transform: scale(1.02);
}

/* Nav scrolled state: crisp, high-contrast dark colors against white navbar */
.nav-scrolled {
  background-color: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.06);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.nav-scrolled .nav-link {
  color: #181c23 !important;
}
.nav-scrolled .nav-link:hover {
  color: #755a26 !important;
}
.nav-scrolled .nav-link.active {
  color: #755a26 !important;
  font-weight: 600;
}
.nav-scrolled .nav-brand {
  color: #181c23;
}
.nav-scrolled .nav-brand-logo {
  filter: brightness(0.1) contrast(1.2);
}

/* Fleet / destination cards */
.fleet-card:hover .fleet-outline { opacity: 1; }
.fleet-card:hover .fleet-image { transform: scale(1.05); }
.fleet-image { transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
.destination-card:hover .card-outline { border-color: #755a26; opacity: 1; }
.hero-zoom:hover img { transform: scale(1.05); }

/* Mobile drawer */
#drawer { transition: transform 0.3s ease-in-out; }
.drawer-open { transform: translateX(0) !important; }

/* Booking / generic modal */
.modal-overlay { transition: opacity 0.3s ease; }

/* Floating WhatsApp */
.whatsapp-fab {
  position: fixed; bottom: 28px; right: 28px; z-index: 70;
  width: 60px; height: 60px; border-radius: 9999px;
  background: #1f3a2e; color: #e6c183;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  transition: transform 0.3s ease, background 0.3s ease;
}
.whatsapp-fab:hover { transform: translateY(-3px) scale(1.04); background: #25543f; }

/* RTL adjustments */
[dir="rtl"] .whatsapp-fab { right: auto; left: 28px; }
[dir="rtl"] #drawer { left: auto; right: 0; transform: translateX(100%); }
[dir="rtl"] #drawer.drawer-open { transform: translateX(0) !important; }
[dir="rtl"] .text-right { text-align: left; }

/* Arabic typography: serif headlines (Amiri), Tajawal body */
[dir="rtl"] body { font-family: 'Tajawal', sans-serif; }
[dir="rtl"] .font-display-lg,
[dir="rtl"] .font-headline-lg,
[dir="rtl"] .font-headline-md,
[dir="rtl"] .font-headline-lg-mobile { font-family: 'Amiri', serif; }

/* Smooth section reveal on scroll */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.8s ease, transform 0.8s ease; }
.reveal.in-view { opacity: 1; transform: translateY(0); }

html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
