/*
Theme Name: UK Travels & Tours
Theme URI: https://uktravels.com
Author: Antigravity AI
Author URI: https://uktravels.com
Description: Premier Tour & Travel WordPress Theme designed for Kailash Mansarovar Yatra, Char Dham, Nepal & Himalayan Adventures. Features Custom Post Types, Tour Meta Fields, AJAX Booking System, Dynamic Live Filters, Multi-Currency Switcher, and Theme Customizer.
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: uktravels
Tags: travel, tour-operator, custom-post-types, booking-system, responsiveness, customizer, tailwind
*/

/* Core Custom Styles */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700;800;900&family=Fira+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&family=Ubuntu+Sans:ital,wght@0,300..800;1,300..800&display=swap');

:root {
  --primary-navy: #0b2545;
  --secondary-navy: #133e68;
  --dark-navy: #06182e;
  --brand-cyan: #00a8b5;
  --brand-cyan-light: #38bdf8;
  --brand-cyan-pale: #e0f7fa;
  --brand-gold: #f59e0b;
  --brand-gold-light: #fef3c7;
  --brand-amber: #d97706;
  --brand-saffron: #ff7722;
  --bg-slate-50: #f8fafc;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: #f8fafc !important;
  font-family: 'Fira Sans', sans-serif;
  color: #1e293b;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::selection {
  background-color: #00a8b5 !important;
  color: #ffffff !important;
}

p {
  font-family: 'Fira Sans', sans-serif;
  color: #1e293b;
}

h1, h2, h3, h4, h5, h6, .font-heading {
  font-family: 'Ubuntu Sans', sans-serif;
}

.font-serif-brand {
  font-family: 'Cinzel', serif;
}

/* Background Color Classes */
.bg-slate-50 { background-color: #f8fafc; }
.bg-slate-100 { background-color: #f1f5f9; }
.bg-slate-800 { background-color: #1e293b; }
.bg-slate-900 { background-color: #0f172a; }
.bg-white { background-color: #ffffff; }

.bg-brandNavy { background-color: #0b2545; }
.bg-brandDark { background-color: #06182e; }
.bg-brandSecondary { background-color: #133e68; }
.bg-brandCyan { background-color: #00a8b5; }
.bg-brandCyanLight { background-color: #38bdf8; }
.bg-brandCyanPale { background-color: #e0f7fa; }
.bg-brandGold { background-color: #f59e0b; }
.bg-brandGoldLight { background-color: #fef3c7; }
.bg-brandAmber { background-color: #d97706; }
.bg-brandSaffron { background-color: #ff7722; }

/* Text & Border Color Classes */
.text-brandNavy { color: #0b2545; }
.text-brandDark { color: #06182e; }
.text-brandCyan { color: #00a8b5; }
.text-brandCyanLight { color: #38bdf8; }
.text-brandGold { color: #f59e0b; }
.text-brandAmber { color: #d97706; }

.border-brandNavy { border-color: #0b2545; }
.border-brandSecondary { border-color: #133e68; }
.border-brandCyan { border-color: #00a8b5; }
.border-brandGold { border-color: #f59e0b; }

/* Glassmorphism */
.glass-nav {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.glass-card {
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.glass-dark {
  background: rgba(11, 37, 69, 0.92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

/* Marquee Ticker Animation */
@keyframes ticker {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-ticker {
  display: inline-flex;
  white-space: nowrap;
  animation: ticker 40s linear infinite;
}

.animate-ticker:hover {
  animation-play-state: paused;
}

/* Header Luxury Styles */
.header-shimmer-btn {
  background: linear-gradient(135deg, #00a8b5 0%, #0b2545 100%);
  position: relative;
  overflow: hidden;
}
.header-shimmer-btn::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    60deg,
    transparent 20%,
    rgba(255, 255, 255, 0.25) 50%,
    transparent 80%
  );
  transform: rotate(30deg);
  animation: headerShimmer 4s infinite linear;
}
@keyframes headerShimmer {
  0% { transform: translateX(-100%) rotate(30deg); }
  25%, 100% { transform: translateX(100%) rotate(30deg); }
}

.nav-link-item {
  position: relative;
  transition: all 0.2s ease;
}
.nav-link-item::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 2px;
  background: #00a8b5;
  transition: all 0.25s ease;
  transform: translateX(-50%);
  border-radius: 2px;
}
.nav-link-item:hover::after {
  width: 75%;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #00a8b5;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #0b2545;
}

/* Card Hover Effects */
.hover-lift {
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.hover-lift:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 25px -5px rgba(11, 37, 69, 0.12), 0 10px 10px -5px rgba(11, 37, 69, 0.04);
}

/* ==================== GOOGLE TRANSLATE SEAMLESS ENGINE STYLING ==================== */
.goog-te-banner-frame.skiptranslate,
.goog-te-banner-frame,
iframe.goog-te-banner-frame,
.goog-te-gadget-simple,
.goog-te-gadget-icon,
#goog-gt-tt,
.goog-te-balloon-frame {
  display: none !important;
  visibility: hidden !important;
}

body {
  top: 0px !important;
  position: static !important;
}

.goog-tooltip,
.goog-tooltip:hover {
  display: none !important;
}

.goog-text-highlight {
  background-color: transparent !important;
  box-shadow: none !important;
}

#google_translate_element {
  position: absolute;
  top: -9999px;
  left: -9999px;
  visibility: hidden;
  height: 0;
  width: 0;
  overflow: hidden;
}

/* ==================== HIGH-DEFINITION PDF PRINT DOSSIER STYLING ==================== */
@media print {
  /* Hide non-printable elements */
  header,
  nav,
  footer,
  #tripSubNavTabs,
  #headerGlobalSearch,
  #headerSearchSuggestions,
  #bookingEnquiryModal,
  .floating-whatsapp-btn,
  aside,
  .no-print,
  #sidebarTourBookingForm,
  #sidebarBookingSuccessBox,
  .similar-tours-section,
  button,
  .shadow-xl,
  .shadow-md,
  .shadow-sm {
    display: none !important;
  }

  body {
    background: #ffffff !important;
    color: #0f172a !important;
    font-size: 12pt !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  main {
    padding: 0 !important;
    background: #ffffff !important;
  }

  .lg\:col-span-8 {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Force display of all itinerary day descriptions */
  .itinerary-day-card .p-5,
  .itinerary-day-card div[class*="bg-white"] {
    display: block !important;
    visibility: visible !important;
  }

  .itinerary-day-card {
    page-break-inside: avoid;
    border: 1px solid #cbd5e1 !important;
    margin-bottom: 12px !important;
    border-radius: 8px !important;
  }

  /* Print Header Dossier Badge */
  .print-only-header {
    display: block !important;
    border-bottom: 2px solid #0b2545;
    padding-bottom: 12px;
    margin-bottom: 20px;
  }

  .print-only-footer {
    display: block !important;
    border-top: 1px solid #cbd5e1;
    padding-top: 12px;
    margin-top: 24px;
    font-size: 10pt;
    color: #64748b;
  }

  a {
    text-decoration: none !important;
    color: inherit !important;
  }
}

.print-only-header,
.print-only-footer {
  display: none;
}

/* ==========================================================================
   Small Mobile Devices (< 480px & < 380px) Hero & UI Enhancements
   ========================================================================== */
@media screen and (max-width: 480px) {
  #heroSection {
    padding-top: 0.5rem;
    padding-bottom: 1rem;
  }

  #heroHeadline {
    font-size: 1.35rem !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em !important;
  }

  #heroSubtitle {
    font-size: 0.75rem !important;
    line-height: 1.4 !important;
  }

  .hero-tab-btn {
    padding: 0.35rem 0.25rem !important;
    font-size: 0.55rem !important;
  }

  /* Booking console smooth scrolling on phones */
  .no-scrollbar::-webkit-scrollbar {
    display: none !important;
  }
  .no-scrollbar {
    -ms-overflow-style: none !important;
    scrollbar-width: none !important;
  }
}

@media screen and (max-width: 360px) {
  #heroHeadline {
    font-size: 1.2rem !important;
  }
  
  #heroBadge {
    font-size: 0.6rem !important;
    padding: 0.2rem 0.5rem !important;
  }
  
  #heroCardTitle {
    font-size: 0.75rem !important;
  }
}


