
:root{
  --blue:#2768AB;
  --blue-hover:#1D5288;
  --blue-soft:#EDF4FC;
  --orange:#FF6600;
  --orange-hover:#E65C00;
  --orange-soft:#FFF2E8;
  --navy:#0E2A47;
  --bg:#FFFFFF;
  --alt:#F6F9FD;
  --surf:#FFFFFF;
  --text:#142232;
  --muted:#586C80;
  --line:#E2E8F0;
  --link:#2768AB;
  --shadow-sm:0 2px 10px rgba(39,104,171,.06);
  --shadow:0 12px 34px rgba(39,104,171,.10);
  --shadow-lg:0 22px 48px rgba(39,104,171,.16);
  --shadow-dark:0 20px 50px rgba(0,0,0,.35);
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0D1722;
    --alt:#131F2E;
    --surf:#192738;
    --text:#EDF3F9;
    --muted:#A1B2C4;
    --line:#28384A;
    --link:#7CB2EE;
    --blue-soft:#17293E;
    --orange-soft:#342217;
    --shadow:0 12px 34px rgba(0,0,0,.45);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0D1722;
  --alt:#131F2E;
  --surf:#192738;
  --text:#EDF3F9;
  --muted:#A1B2C4;
  --line:#28384A;
  --link:#7CB2EE;
  --blue-soft:#17293E;
  --orange-soft:#342217;
  --shadow:0 12px 34px rgba(0,0,0,.45);
  color-scheme:dark;
}
html{height:100%;scroll-padding-top:calc(85px + env(safe-area-inset-top,0px));scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
body{
  margin:0;
  min-height:100%;
  background:var(--bg);
  color:var(--text);
  font:400 16px/1.65 'Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{
  font-family:'Quicksand',sans-serif;
  line-height:1.22;
  margin:0 0 .5em;
  letter-spacing:-.015em;
  color:var(--text);
}
h1{font-size:clamp(2.3rem,4.8vw,3.6rem);font-weight:700}
h2{font-size:clamp(1.7rem,3vw,2.35rem);font-weight:700;color:var(--link)}
h3{font-size:1.22rem;font-weight:700}
p{margin:0 0 1em}
a{color:var(--link);transition:color .2s}
.wrap{max-width:1220px;margin:0 auto;padding:0 24px}
section{padding:80px 0;position:relative}
.alt{background:var(--alt)}
.lead{color:var(--muted);max-width:64ch;font-size:1.06rem;line-height:1.65}
.c{text-align:center}
.c .lead{margin-inline:auto}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:6px}

/* Clean Minimalistic Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:50px;
  padding:12px 28px;
  border-radius:999px;
  font:700 .98rem 'Nunito',sans-serif;
  text-decoration:none;
  border:2px solid transparent;
  cursor:pointer;
  transition:all .25s cubic-bezier(.16,1,.3,1);
  letter-spacing:.01em;
}

.btn-primary, .btn-o{
  background:var(--orange)!important;
  color:#FFFFFF!important;
  box-shadow:0 8px 24px rgba(255,102,0,.28);
  border:2px solid var(--orange);
}
.btn-primary:hover, .btn-o:hover{
  background:var(--orange-hover)!important;
  color:#FFFFFF!important;
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(255,102,0,.38);
  border-color:var(--orange-hover);
}

.btn-o{
  background:var(--orange);
  color:#FFFFFF;
}
.btn-o:hover{
  background:var(--orange-hover);
  box-shadow:0 10px 28px rgba(255,102,0,.38);
  transform:translateY(-2px);
  color:#FFFFFF;
}
.btn-b{
  background:transparent;
  color:var(--link);
  border-color:var(--blue);
}
.btn-b:hover{
  background:var(--blue);
  color:#FFFFFF;
  box-shadow:0 10px 28px rgba(39,104,171,.28);
  transform:translateY(-2px);
}
.btn-w{
  background:#FFFFFF;
  color:var(--blue);
}
.btn-w:hover{
  background:#F4F8FC;
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(0,0,0,.18);
  color:var(--blue);
}
.btn-outline-white{
  background:transparent;
  color:#FFFFFF;
  border-color:#FFFFFF;
}
.btn-outline-white:hover{
  background:#FFFFFF;
  color:var(--blue);
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(0,0,0,.2);
}
.sm{min-height:42px;padding:8px 20px;font-size:.9rem}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:'Quicksand',sans-serif;
  font-size:.82rem;
  font-weight:800;
  color:var(--orange);
  background:var(--orange-soft);
  padding:5px 14px;
  border-radius:999px;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:12px;
}

/* ========================================================
   ANIMATIONS: ON-LOAD & SCROLL REVEALS
   ======================================================== */
@keyframes fadeInUp{
  from{opacity:0;transform:translateY(28px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes fadeInScale{
  from{opacity:0;transform:scale(0.96) translateY(20px)}
  to{opacity:1;transform:scale(1) translateY(0)}
}
@keyframes heroBgPulse{
  0%,100%{background-size:105% auto}
  50%{background-size:108% auto}
}
@keyframes pulseBadge{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.05)}
}

.anim-load{
  animation:fadeInUp .75s cubic-bezier(.16,1,.3,1) both;
}
.anim-scale{
  animation:fadeInScale .8s cubic-bezier(.16,1,.3,1) both;
}
.anim-d1{animation-delay:.12s}
.anim-d2{animation-delay:.24s}
.anim-d3{animation-delay:.36s}
.anim-d4{animation-delay:.48s}
.anim-d5{animation-delay:.60s}

/* ========================================================
   SLICK, ULTRA-SMOOTH EASING & SCROLL-REVEAL ANIMATIONS
   ======================================================== */
:root {
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-smooth: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-spring: cubic-bezier(0.34, 1.25, 0.64, 1);
}

html {
  scroll-behavior: smooth;
}

/* Slick On-Scroll Reveal */
.reveal-section {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.85s var(--ease-out), transform 0.85s var(--ease-out);
  will-change: opacity, transform;
}
.reveal-section.in-view {
  opacity: 1;
  transform: translateY(0);
}

/* Staggered Children Animations */
.stagger-grid > * {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s var(--ease-out), transform 0.7s var(--ease-out), box-shadow 0.35s var(--ease-out), border-color 0.3s ease;
  will-change: opacity, transform;
}
.stagger-grid.in-view > *:nth-child(1) { transition-delay: 0.04s; }
.stagger-grid.in-view > *:nth-child(2) { transition-delay: 0.10s; }
.stagger-grid.in-view > *:nth-child(3) { transition-delay: 0.16s; }
.stagger-grid.in-view > *:nth-child(4) { transition-delay: 0.22s; }
.stagger-grid.in-view > *:nth-child(5) { transition-delay: 0.28s; }
.stagger-grid.in-view > *:nth-child(6) { transition-delay: 0.34s; }
.stagger-grid.in-view > *:nth-child(7) { transition-delay: 0.40s; }
.stagger-grid.in-view > *:nth-child(8) { transition-delay: 0.46s; }
.stagger-grid.in-view > * {
  opacity: 1;
  transform: translateY(0);
}

/* Micro-Interactions: Cards, Buttons & Image Zooms */
.card, .why-item, .gp {
  transition: transform 0.35s var(--ease-out), box-shadow 0.35s var(--ease-out), border-color 0.3s ease;
}
.card:hover {
  transform: translateY(-8px);
  box-shadow: 0 24px 50px rgba(14, 42, 71, 0.16);
}
.im img, .gp img {
  transition: transform 0.65s var(--ease-out);
  will-change: transform;
}
.card:hover .im img, .gp:hover img {
  transform: scale(1.08);
}

.btn {
  transition: transform 0.28s var(--ease-out), box-shadow 0.28s var(--ease-out), background-color 0.25s ease, color 0.25s ease;
}
.btn:hover {
  transform: translateY(-3px);
}
.btn:active {
  transform: translateY(-1px) scale(0.98);
}
.btn i {
  transition: transform 0.25s var(--ease-out);
  display: inline-block;
}
.btn:hover i {
  transform: translateX(4px);
}.stagger-grid.in-view > *:nth-child(1){transition-delay:.05s}
.stagger-grid.in-view > *:nth-child(2){transition-delay:.14s}
.stagger-grid.in-view > *:nth-child(3){transition-delay:.23s}
.stagger-grid.in-view > *:nth-child(4){transition-delay:.32s}
.stagger-grid.in-view > *:nth-child(5){transition-delay:.41s}
.stagger-grid.in-view > *:nth-child(6){transition-delay:.50s}
.stagger-grid.in-view > *{
  opacity:1;
  transform:translateY(0);
}

/* NON-STICKY CONTACT AND PARTNER BAR */
.topbar{
  position:relative;
  z-index:310;
  background:#FFFFFF;
  border-bottom:1px solid var(--line);
}
.topbar-inner{
  width:min(1420px,97%);
  max-width:1420px;
  min-height:76px;
  margin:0 auto;
  padding:10px 0;
  display:grid;
  grid-template-columns:minmax(225px,1fr) auto minmax(320px,1fr);
  align-items:center;
  gap:20px;
}
.topbar-contact{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.topbar-contact a{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--blue-dark);
  font-size:.84rem;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.topbar-contact i{width:16px;color:var(--blue);text-align:center}
.topbar-logos{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
}
.topbar-logos img{
  display:block;
  width:54px;
  height:48px;
  object-fit:contain;
}
.topbar-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
}
.topbar-btn{
  min-height:40px;
  padding:8px 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid var(--blue);
  border-radius:8px;
  color:var(--blue)!important;
  font-family:'Quicksand',sans-serif;
  font-size:.78rem;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  transition:all .2s ease;
}
.topbar-btn:hover{
  color:#FFFFFF!important;
  background:var(--blue);
}
.topbar-btn-quote{
  color:#FFFFFF!important;
  background:var(--blue);
}
.topbar-actions .topbar-btn.topbar-btn-quote:hover,
.topbar-actions .topbar-btn.topbar-btn-quote:focus-visible{
  color:#FFFFFF!important;
  background:#1D5288!important;
  border-color:#1D5288!important;
  opacity:1;
  visibility:visible;
}
@media(max-width:1160px){
  .topbar-inner{grid-template-columns:1fr auto;gap:10px 16px;padding:10px 0}
  .topbar-logos{grid-column:1/-1;grid-row:2;gap:22px}
  .topbar-actions{grid-column:2;grid-row:1}
  .topbar-contact{grid-column:1;grid-row:1}
}
@media(max-width:600px){
  .topbar-inner{width:calc(100% - 24px);grid-template-columns:1fr;justify-items:center;gap:10px}
  .topbar-contact{grid-column:1;grid-row:1;flex-direction:row;flex-wrap:wrap;justify-content:center;column-gap:14px}
  .topbar-contact a{font-size:.72rem}
  .topbar-logos{grid-column:1;grid-row:2;gap:16px}
  .topbar-logos img{width:46px;height:40px}
  .topbar-actions{grid-column:1;grid-row:3;justify-content:center}
  .topbar-btn{min-height:36px;padding:7px 10px;font-size:.72rem}
}

/* HEADER & COMPLETE MULTI-LEVEL DROPDOWN NAVIGATION (SINGLE LINE DESKTOP) */
header{
  position:sticky;
  top:env(safe-area-inset-top,0px);
  z-index:300;
  background:rgba(255,255,255,.98);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(226,232,240,.8);
  box-shadow:0 4px 20px rgba(14,42,71,.04);
}
header .wrap{
  width:min(1420px, 97%);
  max-width:1420px;
}
.hdr{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  height:76px;
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.brand img{height:40px;width:auto;object-fit:contain}

.nav-menu{
  display:flex;
  align-items:center;
  gap:2px;
  list-style:none;
  flex-wrap:nowrap;
}
.nav-item{position:relative;flex-shrink:0}
.nav-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:7px 9px;
  font-family:'Quicksand',sans-serif;
  font-weight:700;
  font-size:.85rem;
  color:#1E293B;
  border-radius:8px;
  transition:all .2s ease;
  text-decoration:none;
  white-space:nowrap;
}
.nav-link:hover, .nav-link.active{
  color:var(--orange);
  background:rgba(255,102,0,.06);
}
.nav-link i.fa-chevron-down{
  font-size:.66rem;
  transition:transform .25s ease;
}
.nav-item:hover > .nav-link i.fa-chevron-down{
  transform:rotate(180deg);
}

.hdr-cta{flex-shrink:0}
.hdr-cta .btn{
  background:var(--orange)!important;
  color:#FFFFFF!important;
  border:2px solid var(--orange)!important;
  border-radius:12px!important;
  padding:8px 16px!important;
  font-family:'Quicksand',sans-serif!important;
  font-weight:700!important;
  font-size:.84rem!important;
  white-space:nowrap!important;
  box-shadow:0 8px 24px rgba(255,102,0,.28)!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  transition:all .25s var(--ease-out)!important;
  text-decoration:none!important;
}
.hdr-cta .btn:hover{
  background:var(--orange-hover)!important;
  border-color:var(--orange-hover)!important;
  color:#FFFFFF!important;
  transform:translateY(-2px)!important;
  box-shadow:0 12px 28px rgba(255,102,0,.38)!important;
}

/* DESKTOP DROPDOWN MENUS */
.dropdown-menu{
  position:absolute;
  top:100%;
  left:0;
  background:#FFFFFF;
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:0 18px 45px rgba(14,42,71,.16);
  padding:12px 0;
  min-width:240px;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:all .24s var(--ease-out);
  z-index:400;
  list-style:none;
}
.nav-item:hover > .dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

/* WIDE MEGAMENU FOR TOUR PACKAGES - 3 COLUMNS */
.dropdown-megamenu{
  min-width:760px;
  padding:20px 24px;
  display:grid;
  grid-template-columns:2fr 1fr;
  gap:24px;
}
.dd-domestic-section{
  display:flex;
  flex-direction:column;
}
.dd-col-head{
  font-family:'Quicksand',sans-serif;
  font-size:.78rem;
  font-weight:800;
  color:var(--orange);
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:10px;
  padding-bottom:6px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  gap:6px;
}
.dd-col-head.dd-head-center{
  justify-content:center;
  text-align:center;
}
.dd-domestic-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 14px;
}
.dd-subcol{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.dd-intl-section{
  display:flex;
  flex-direction:column;
  gap:3px;
  border-left:1px solid var(--line);
  padding-left:22px;
}
.dropdown-link{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  font-size:.88rem;
  font-weight:600;
  color:#334155;
  border-radius:6px;
  transition:all .2s ease;
  text-decoration:none;
}
.dropdown-link:hover{
  color:var(--blue);
  background:var(--blue-soft);
  transform:translateX(4px);
}
.dropdown-link i{
  font-size:.78rem;
  color:var(--muted);
  width:16px;
  text-align:center;
}
.dropdown-link:hover i{color:var(--blue)}

/* MOBILE HAMBURGER */
.burger{
  display:none;
  background:none;
  border:none;
  width:44px;
  height:44px;
  border-radius:8px;
  cursor:pointer;
  color:var(--blue-dark);
  font-size:1.4rem;
}
@media(max-width:1160px){
  .burger{display:grid;place-items:center}
  .nav-menu{
    position:fixed;
    top:76px;
    left:0;
    width:100%;
    height:calc(100vh - 76px);
    background:#FFFFFF;
    flex-direction:column;
    align-items:stretch;
    padding:20px 24px;
    gap:8px;
    overflow-y:auto;
    display:none;
    box-shadow:0 20px 40px rgba(0,0,0,.15);
  }
  .nav-menu.open{display:flex}
  .dropdown-menu{
    position:static;
    opacity:1;
    visibility:visible;
    transform:none;
    box-shadow:none;
    border:none;
    padding:8px 0 8px 14px;
    display:none;
    background:var(--bg);
    border-radius:8px;
    margin-top:6px;
  }
  .nav-item.open-sub > .dropdown-menu{display:block}
  .dropdown-megamenu{grid-template-columns:1fr;min-width:auto;gap:16px}
  .dd-domestic-grid{grid-template-columns:1fr;gap:4px}
  .dd-intl-section{border-left:none;padding-left:0;margin-top:10px}
  .dd-col-head.dd-head-center{justify-content:flex-start;text-align:left}
  .hdr-cta{display:none}
}




/* ==============================================================================
   AUTHORITATIVE EXPANDED MEGAMENU (1140px), PRE-FOOTER CTA & UNIVERSAL OVERRIDES
   ============================================================================== */

/* WIDE MEGAMENU (1140px desktop width, 3-column domestic + 1-column intl inside container) */
@media (min-width: 1161px) {
  .dropdown-megamenu {
    width: 1140px !important;
    min-width: 1140px !important;
    max-width: 1180px !important;
    display: grid !important;
    grid-template-columns: 3.2fr 1fr !important;
    padding: 24px 28px !important;
    gap: 28px !important;
    left: -220px !important;
    right: auto !important;
    background: #FFFFFF !important;
    border: 1px solid var(--line, #E2E8F0) !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 50px rgba(14,42,71,.18) !important;
    box-sizing: border-box !important;
    position: absolute !important;
    top: 100% !important;
    z-index: 500 !important;
  }
  .dd-domestic-section {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
  }
  .dd-col-head {
    font-family: 'Quicksand', sans-serif !important;
    font-size: .80rem !important;
    font-weight: 800 !important;
    color: var(--orange, #FF6600) !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    margin-bottom: 12px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid var(--line, #E2E8F0) !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .dd-col-head.dd-head-center {
    justify-content: center !important;
    text-align: center !important;
  }
  .dd-domestic-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 6px 14px !important;
  }
  .dd-subcol {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    min-width: 0 !important;
  }
  .dd-intl-section {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    border-left: 1px solid var(--line, #E2E8F0) !important;
    padding-left: 24px !important;
    min-width: 230px !important;
    box-sizing: border-box !important;
  }
  .dropdown-link {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 10px !important;
    font-size: .86rem !important;
    font-weight: 600 !important;
    color: #334155 !important;
    border-radius: 6px !important;
    transition: all .2s ease !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }
  .dropdown-link:hover {
    color: var(--blue, #2768AB) !important;
    background: var(--blue-soft, #EDF4FC) !important;
    transform: translateX(4px) !important;
  }
  .dropdown-link i {
    font-size: .80rem !important;
    color: var(--muted, #5A6D82) !important;
    width: 16px !important;
    text-align: center !important;
    flex-shrink: 0 !important;
  }
  .dropdown-link:hover i {
    color: var(--blue, #2768AB) !important;
  }
}

/* MOBILE RESPONSIVE DRAWER & MEGAMENU */
@media (max-width: 1160px) {
  .burger {
    display: grid !important;
    place-items: center !important;
    background: none !important;
    border: none !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    color: var(--blue-dark, #0E2A47) !important;
    font-size: 1.4rem !important;
  }
  .nav-menu {
    position: fixed !important;
    top: 76px !important;
    left: 0 !important;
    width: 100% !important;
    height: calc(100vh - 76px) !important;
    background: #FFFFFF !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 20px 24px !important;
    gap: 8px !important;
    overflow-y: auto !important;
    display: none !important;
    box-shadow: 0 20px 40px rgba(0,0,0,.15) !important;
    z-index: 9999 !important;
  }
  .nav-menu.open {
    display: flex !important;
  }
  .dropdown-menu {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
    border: none !important;
    padding: 8px 0 8px 14px !important;
    display: none !important;
    background: var(--bg, #F8FAFC) !important;
    border-radius: 8px !important;
    margin-top: 6px !important;
  }
  .nav-item.open-sub > .dropdown-menu {
    display: block !important;
  }
  .dropdown-megamenu {
    grid-template-columns: 1fr !important;
    min-width: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    gap: 16px !important;
    padding: 14px !important;
  }
  .dd-domestic-grid {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
  }
  .dd-intl-section {
    border-left: none !important;
    padding-left: 0 !important;
    margin-top: 10px !important;
  }
  .dd-col-head.dd-head-center {
    justify-content: flex-start !important;
    text-align: left !important;
  }
  .hdr-cta {
    display: none !important;
  }
}

/* TOPBAR ACTION BUTTONS */
.topbar-actions {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-shrink: 0 !important;
}
.topbar-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 14px !important;
  border-radius: 999px !important;
  font-size: .82rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border: 1.5px solid var(--blue, #2768AB) !important;
  color: var(--blue, #2768AB) !important;
  transition: all .2s ease !important;
}
.topbar-btn:hover {
  background: var(--blue, #2768AB) !important;
  color: #FFFFFF !important;
}
.topbar-btn-quote {
  background: var(--blue, #2768AB) !important;
  color: #FFFFFF !important;
}
.topbar-btn-quote:hover {
  background: var(--blue-hover, #1D5288) !important;
  border-color: var(--blue-hover, #1D5288) !important;
}
@media (max-width: 900px) {
  .topbar-logos-marquee { display: none !important; }
}

/* PRE-FOOTER CTA BANNER ("YOUR NEXT JOURNEY STARTS HERE") */
.pre-footer-cta {
  background: var(--blue, #2768AB) !important;
  color: #FFFFFF !important;
  text-align: center !important;
  padding: 80px 0 76px !important;
  position: relative !important;
  z-index: 2 !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
.pre-footer-cta .wrap {
  width: min(1360px, 94%) !important;
  margin: 0 auto !important;
}
body .pre-footer-cta h2, body.elementor-kit-6 .pre-footer-cta h2, .pre-footer-cta h2 {
  color: #FFFFFF !important;
  color: #FFFFFF !important;
  font-family: 'Quicksand', sans-serif !important;
  font-size: clamp(2rem, 3.4vw, 2.75rem) !important;
  font-weight: 800 !important;
  margin-bottom: 14px !important;
  line-height: 1.2 !important;
}
.pre-footer-cta p {
  color: rgba(255,255,255,.95) !important;
  font-size: 1.1rem !important;
  max-width: 66ch !important;
  margin: 0 auto 34px !important;
  line-height: 1.65 !important;
}
.pre-footer-btns {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}
.btn-prefooter {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 14px 32px !important;
  border-radius: 999px !important;
  font-family: 'Quicksand', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  text-decoration: none !important;
  transition: all .28s var(--ease-out, cubic-bezier(0.16,1,0.3,1)) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
.btn-prefooter i {
  transition: transform .2s ease !important;
}
.btn-prefooter:hover i {
  transform: translateX(4px) !important;
}
.btn-prefooter-orange {
  background: var(--orange, #FF6600) !important;
  color: #FFFFFF !important;
  border: 2px solid var(--orange, #FF6600) !important;
  box-shadow: 0 8px 22px rgba(255,102,0,.32) !important;
}
.btn-prefooter-orange:hover {
  background: var(--orange-hover, #E65C00) !important;
  border-color: var(--orange-hover, #E65C00) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px rgba(255,102,0,.44) !important;
}
.btn-prefooter-outline {
  background: transparent !important;
  color: #FFFFFF !important;
  border: 2px solid rgba(255,255,255,.90) !important;
  box-shadow: none !important;
}
.btn-prefooter-outline:hover {
  background: rgba(255,255,255,.15) !important;
  border-color: #FFFFFF !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.15) !important;
}
.btn-prefooter-white {
  background: #FFFFFF !important;
  color: var(--blue, #2768AB) !important;
  border: 2px solid #FFFFFF !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
}
.btn-prefooter-white:hover {
  background: #F1F5F9 !important;
  border-color: #F1F5F9 !important;
  color: var(--blue-dark, #0E2A47) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.20) !important;
}

/* SHARED FOOTER */
footer {
  background: #0B1F33 !important;
  color: #94A3B8 !important;
  padding: 72px 0 32px !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
footer .wrap {
  width: min(1360px, 94%) !important;
  margin: 0 auto !important;
}
.ft-grid {
  display: grid !important;
  grid-template-columns: 1.4fr 1fr 1fr 1.3fr !important;
  gap: 40px !important;
  align-items: start !important;
  margin-bottom: 52px !important;
}
.ft-brand img {
  height: 46px !important;
  margin-bottom: 18px !important;
  filter: brightness(0) invert(1) !important;
}
.ft-brand p {
  font-size: .94rem !important;
  line-height: 1.7 !important;
  color: #94A3B8 !important;
  margin-bottom: 20px !important;
}
.ft-gmb-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  padding: 10px 16px !important;
  border-radius: 12px !important;
  color: #FFFFFF !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
  transition: all .25s ease !important;
  text-decoration: none !important;
}
.ft-gmb-badge:hover {
  background: rgba(255,255,255,.15) !important;
  border-color: var(--orange, #FF6600) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
}
.ft-gmb-badge i.fa-google {
  color: #4285F4 !important;
  font-size: 1.15rem !important;
}
.ft-col {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  text-align: left !important;
}
.ft-col h4 {
  color: #FFFFFF !important;
  font-family: 'Quicksand', sans-serif !important;
  font-size: 1.12rem !important;
  font-weight: 700 !important;
  margin-bottom: 20px !important;
  position: relative !important;
  padding-bottom: 8px !important;
}
.ft-col h4::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 28px !important;
  height: 2px !important;
  background: var(--orange, #FF6600) !important;
}
.ft-links {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
.ft-links li a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: .92rem !important;
  color: #94A3B8 !important;
  transition: all .2s ease !important;
  text-decoration: none !important;
}
.ft-links li a:hover {
  color: var(--orange, #FF6600) !important;
  transform: translateX(3px) !important;
}
.ft-links li a i {
  font-size: .72rem !important;
  color: var(--orange, #FF6600) !important;
}
.ft-contact-list {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
.ft-contact-list li {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  font-size: .92rem !important;
  color: #94A3B8 !important;
  line-height: 1.55 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  width: 100% !important;
}
.ft-contact-list li i {
  color: var(--orange, #FF6600) !important;
  font-size: 1.05rem !important;
  margin-top: 3px !important;
  width: 16px !important;
  text-align: center !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
}
.ft-contact-list li div {
  flex: 1 !important;
  text-align: left !important;
}
.ft-contact-list li a {
  color: inherit !important;
  text-decoration: none !important;
  transition: color .2s !important;
  text-align: left !important;
}
.ft-contact-list li a:hover {
  color: var(--orange, #FF6600) !important;
}
.ft-bottom {
  padding-top: 28px !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  font-size: .88rem !important;
  color: #94A3B8 !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}
.ft-bottom a {
  color: #94A3B8 !important;
  text-decoration: none !important;
  transition: color .2s ease !important;
}
.ft-bottom a:hover {
  color: var(--orange, #FF6600) !important;
}
@media (max-width: 960px) {
  .ft-grid { grid-template-columns: 1fr 1fr !important; gap: 36px !important; }
}
@media (max-width: 600px) {
  .ft-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
  .ft-bottom { text-align: center !important; justify-content: center !important; }
}

/* TOUR PACKAGE CARDS */
.card.pk {
  background: #FFFFFF !important;
  border: 1px solid var(--line, #E2E8F0) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(14,42,71,.06) !important;
  transition: all .32s var(--ease-out, cubic-bezier(0.16,1,0.3,1)) !important;
  display: flex !important;
  flex-direction: column !important;
}
.card.pk:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 36px rgba(14,42,71,.12) !important;
  border-color: #CBD5E1 !important;
}
.card.pk .im {
  position: relative !important;
  height: 220px !important;
  overflow: hidden !important;
  background: #E2E8F0 !important;
}
.card.pk .im img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .5s var(--ease-out, cubic-bezier(0.16,1,0.3,1)) !important;
}
.card.pk:hover .im img {
  transform: scale(1.06) !important;
}
.card.pk .b {
  padding: 22px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}
.card.pk .meta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 10px !important;
  font-size: .84rem !important;
  color: var(--muted, #5A6D82) !important;
}
.card.pk .meta b {
  color: var(--orange, #FF6600) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}
.card.pk h3 {
  font-family: 'Quicksand', sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: var(--blue-dark, #0E2A47) !important;
  line-height: 1.35 !important;
  margin-bottom: 8px !important;
}
.card.pk .route-txt {
  font-size: .84rem !important;
  color: var(--muted, #5A6D82) !important;
  margin-bottom: 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.card.pk .route-txt i {
  color: var(--blue, #2768AB) !important;
}
.card.pk .pr {
  font-family: 'Quicksand', sans-serif !important;
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  color: var(--blue, #2768AB) !important;
  margin-top: auto !important;
  margin-bottom: 14px !important;
}
.card.pk .pr small {
  font-size: .80rem !important;
  font-weight: 600 !important;
  color: var(--muted, #5A6D82) !important;
}
.card.pk .ab {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
.card.pk .ab .btn {
  padding: 10px 14px !important;
  font-size: .86rem !important;
}
.card.pk .ab .btn-o {
  background: var(--orange, #FF6600) !important;
  color: #FFFFFF !important;
  border: 2px solid var(--orange, #FF6600) !important;
}
.card.pk .ab .btn-b {
  background: transparent !important;
  color: var(--blue, #2768AB) !important;
  border: 2px solid var(--blue, #2768AB) !important;
}
.card.pk .ab .btn-b:hover {
  background: var(--blue, #2768AB) !important;
  color: #FFFFFF !important;
}

/* FILTER TABS */
.tabs .tab[aria-selected="true"],
.tabs .tab.active {
  background: var(--blue, #2768AB) !important;
  color: #FFFFFF !important;
  border-color: var(--blue, #2768AB) !important;
  box-shadow: 0 4px 14px rgba(39,104,171,.25) !important;
}

/* BENTO GALLERY TITLES (ALWAYS PURE WHITE) */
.bento-title, h3.bento-title, .bento-item h3 {
  color: #FFFFFF !important;
}

/* CAB VIEW DETAILS BUTTON (SITE BLUE) */
.tariff-actions .btn-b,
a.btn.btn-b.tariff-details-btn {
  background: #2768AB !important;
  color: #FFFFFF !important;
  border: 2px solid #2768AB !important;
}



/* ==============================================================================
   4-IMAGE COLLAGE FIT FIX & REMOVE GALLERY FROM HOMEPAGE
   ============================================================================== */
.collage-frame {
  display: grid !important;
  grid-template-columns: 1.1fr .9fr !important;
  grid-template-rows: 210px 210px !important;
  gap: 16px !important;
}
.collage-frame .collage-tile,
.collage-tile {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  height: 100% !important;
  min-height: 210px !important;
  background: #DCE8F2 !important;
}
.collage-frame .collage-tile img,
.collage-tile img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

/* UNIVERSAL REVEAL ENFORCEMENT - NEVER DISPLAY BLANK BODY */
.reveal-section,
section.reveal-section,
.stagger-grid,
.stagger-grid > *,
.tat2-about-section,
.tat2-solutions-section,
.tat2-why-widget,
.tat2-trust-widget,
.tat2-team-widget,
.tat2-stats-strip-widget {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* GALLERY SECTION DISPLAYED ON HOMEPAGE */
.elementor-element-504184c { display: block !important; }



/* ==============================================================================
   AUTHORITATIVE HEADER, MEGA-MENU, AND SITE-WIDE FIXES
   ============================================================================== */

/* Ensure desktop header NEVER wraps onto multiple lines */
.tat2-site-header .wrap.hdr {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  height: 76px !important;
}

.tat2-site-header .nav-menu {
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
  list-style: none !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}

.tat2-site-header .nav-item {
  position: relative !important;
  flex-shrink: 0 !important;
}

.tat2-site-header .nav-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 7px 8px !important;
  font-family: 'Quicksand', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.84rem !important;
  color: #1E293B !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.tat2-site-header .nav-link:hover,
.tat2-site-header .nav-link.active {
  color: var(--orange, #FF6600) !important;
  background: rgba(255, 102, 0, 0.06) !important;
}

/* DESKTOP MEGA-MENU: Anchored to .wrap.hdr container - NEVER overflows */
@media (min-width: 1161px) {
  .tat2-site-header .nav-item.has-megamenu {
    position: relative !important;
  }
  
  .tat2-site-header .dropdown-megamenu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 1160px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 3.2fr 1.05fr !important;
    gap: 28px !important;
    padding: 24px 28px !important;
    background: #FFFFFF !important;
    border: 1px solid var(--line, #E2E8F0) !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 50px rgba(14, 42, 71, 0.18) !important;
    box-sizing: border-box !important;
    z-index: 999 !important;
    transform: none !important;
  }

  .tat2-site-header .dd-domestic-section {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
  }

  .tat2-site-header .dd-domestic-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 6px 14px !important;
    min-width: 0 !important;
  }

  .tat2-site-header .dd-subcol {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    min-width: 0 !important;
  }

  .tat2-site-header .dd-intl-section {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    border-left: 1px solid var(--line, #E2E8F0) !important;
    padding-left: 24px !important;
    min-width: 220px !important;
  }
}

/* CAB SERVICES: VIEW DETAILS BUTTON & GAP REDUCTION */
.tariff-actions .btn.btn-b,
a.btn.btn-b {
  background: var(--blue, #2768AB) !important;
  color: #FFFFFF !important;
  border: 2px solid var(--blue, #2768AB) !important;
  box-shadow: 0 4px 14px rgba(39, 104, 171, 0.25) !important;
}

.tariff-actions .btn.btn-b:hover,
a.btn.btn-b:hover {
  background: var(--blue-dark, #0E2A47) !important;
  border-color: var(--blue-dark, #0E2A47) !important;
  color: #FFFFFF !important;
}

.drive4you-brand {
  padding: 16px 24px 4px !important;
  margin-bottom: 0 !important;
  background: #FFFFFF !important;
}

.drive4you-brand + .cab-tariffs-sec,
.drive4you-brand + .cab-locations-sec {
  padding-top: 6px !important;
}

/* CONTACT PAGE: ELIMINATE GAP BEFORE FOOTER */
body.page-id-62 .contact-main-sec,
body.page-id-62 .contact-offices-sec,
body.page-id-62 .tat2-contact-wrapper,
body.page-id-62 .elementor-62,
body.page-id-62 .takeatrip-contact-page-main {
  margin-bottom: 0 !important;
  padding-bottom: 12px !important;
}

body.page-id-62 .pre-footer-cta {
  margin-top: 0 !important;
  padding-top: 24px !important;
}



/* ==============================================================================
   AUTHORITATIVE VEHICLE CARD & BOOK NOW OVERFLOW ELIMINATION (MATCH ATTACHMENT)
   ============================================================================== */
.cab-v-card {
  padding: 16px 12px 18px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

.cab-v-body {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Ensure the bottom row fits all contents with zero horizontal overflow */
.cab-v-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6px !important;
  margin-top: auto !important;
  padding-top: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.cab-v-pack {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  font-size: 0.74rem !important;
  font-weight: 600 !important;
  color: #556980 !important;
  line-height: 1.25 !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  white-space: normal !important;
}

.cab-v-pack .cab-price-highlight {
  color: var(--orange, #FF6600) !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  display: block !important;
  white-space: nowrap !important;
}

.cab-book-btn {
  flex-shrink: 0 !important;
  background: #0E2A47 !important;
  color: #FFFFFF !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  padding: 8px 11px !important;
  border-radius: 6px !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

.cab-book-btn:hover {
  background: var(--orange, #FF6600) !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(255, 102, 0, 0.35) !important;
}


/* ========================================================
   2-COLUMN MEGA MENU (4 DOMESTIC + 1 INTERNATIONAL) - CENTERED UNDER TOUR PACKAGES
   ======================================================== */
@media (min-width: 992px) {
  .tat2-site-header .nav-item.has-megamenu,
  .nav-item.has-megamenu {
    position: relative !important;
  }
  .tat2-site-header .dropdown-megamenu,
  .dropdown-megamenu {
    width: 780px !important;
    min-width: 780px !important;
    max-width: 820px !important;
    display: grid !important;
    grid-template-columns: 2fr 1fr !important;
    gap: 26px !important;
    padding: 22px 26px !important;
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) translateY(10px) !important;
    background: #FFFFFF !important;
    border: 1px solid var(--line, #E2E8F0) !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 45px rgba(14, 42, 71, 0.16) !important;
    box-sizing: border-box !important;
    z-index: 999 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease !important;
  }
  .tat2-site-header .nav-item.has-megamenu:hover > .dropdown-megamenu,
  .nav-item.has-megamenu:hover > .dropdown-megamenu,
  .tat2-site-header .nav-item.has-megamenu.open-sub > .dropdown-megamenu,
  .nav-item.has-megamenu.open-sub > .dropdown-megamenu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(-50%) translateY(0) !important;
  }
  .dd-domestic-section {
    display: flex !important;
    flex-direction: column !important;
  }
  .dd-domestic-list,
  .dd-intl-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
  }
  .dd-intl-section {
    display: flex !important;
    flex-direction: column !important;
    border-left: 1px solid var(--line, #E2E8F0) !important;
    padding-left: 20px !important;
  }
  .dd-col-head {
    font-family: 'Quicksand', sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    color: var(--orange, #FF6600) !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    margin-bottom: 12px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid var(--line, #E2E8F0) !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .dropdown-link {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 10px !important;
    border-radius: 8px !important;
    color: #1E293B !important;
    font-size: 0.88rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
  }
  .dropdown-link i {
    color: var(--blue, #2768AB) !important;
    font-size: 0.95rem !important;
    width: 18px !important;
    text-align: center !important;
    flex-shrink: 0 !important;
  }
  .dropdown-link:hover {
    background: var(--blue-soft, #EEF5FC) !important;
    color: var(--blue, #2768AB) !important;
    padding-left: 14px !important;
  }
  .dropdown-link:hover i {
    color: var(--orange, #FF6600) !important;
  }
}

@media (max-width: 991px) {
  .tat2-site-header .dropdown-megamenu,
  .dropdown-megamenu {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    padding: 10px 14px !important;
    box-shadow: none !important;
    border: none !important;
  }
  .dd-domestic-list,
  .dd-intl-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
  }
  .dd-intl-section {
    border-left: none !important;
    border-top: 1px solid #E2E8F0 !important;
    padding-left: 0 !important;
    padding-top: 10px !important;
    margin-top: 10px !important;
  }
}


/* ========================================================
   GLOBAL TOUR PACKAGE CARD STYLES (HOMEPAGE, BLOG & PACKAGES)
   ======================================================== */
.pk-card,
.card.pk.pk-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  box-shadow: 0 4px 16px rgba(14,42,71,0.06) !important;
  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.28s !important;
  position: relative !important;
  box-sizing: border-box !important;
}
.pk-card:hover,
.card.pk.pk-card:hover {
  box-shadow: 0 14px 32px rgba(14,42,71,0.12) !important;
  transform: translateY(-6px) !important;
  border-color: #CBD5E1 !important;
}
.pk-img-wrap,
.card.pk .im.pk-img-wrap {
  aspect-ratio: 16/10 !important;
  background: #DCE8F2 !important;
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
}
.pk-img-wrap img,
.card.pk .im.pk-img-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.45s ease !important;
}
.pk-card:hover .pk-img-wrap img,
.card.pk.pk-card:hover .pk-img-wrap img {
  transform: scale(1.06) !important;
}
.pk-badge-ribbon {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  background: linear-gradient(135deg, #FF6600 0%, #E65C00 100%) !important;
  color: #FFFFFF !important;
  font-family: 'Quicksand', sans-serif !important;
  font-size: 0.70rem !important;
  font-weight: 800 !important;
  padding: 4px 10px !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  box-shadow: 0 4px 10px rgba(255, 102, 0, 0.35) !important;
  z-index: 5 !important;
  display: inline-block !important;
  line-height: 1.2 !important;
}
.pk-body,
.card.pk .b.pk-body {
  padding: 20px 22px 22px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  box-sizing: border-box !important;
}
.pk-title {
  font-family: 'Quicksand', sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: #142232 !important;
  margin: 0 0 10px !important;
  line-height: 1.35 !important;
  min-height: 48px !important;
}
.pk-title a {
  color: inherit !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}
.pk-title a:hover {
  color: var(--blue, #2768AB) !important;
}
.pk-price-rating {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid #F1F5F9 !important;
}
.pk-price-val {
  font-family: 'Quicksand', sans-serif !important;
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  color: #142232 !important;
}
.pk-price-val small {
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  color: #64748B !important;
  font-family: 'Nunito', sans-serif !important;
}
.pk-stars {
  color: #FFB800 !important;
  font-size: 0.85rem !important;
  display: inline-flex !important;
  gap: 2px !important;
}
.pk-stars i {
  color: #FFB800 !important;
}
.pk-dest-line {
  font-size: 0.86rem !important;
  color: #475569 !important;
  margin-bottom: 6px !important;
  line-height: 1.45 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.pk-dest-line strong {
  color: #1E293B !important;
  font-weight: 700 !important;
}
.pk-dur-line {
  font-size: 0.86rem !important;
  color: #475569 !important;
  margin-bottom: 18px !important;
  line-height: 1.45 !important;
}
.pk-dur-line strong {
  color: #1E293B !important;
  font-weight: 700 !important;
}
.pk-dur-accent {
  color: #FF6600 !important;
  font-weight: 700 !important;
}
.pk-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  margin-top: auto !important;
}
.btn.pk-btn-details {
  background: #FF6600 !important;
  border: 1.5px solid #FF6600 !important;
  color: #FFFFFF !important;
  font-size: 0.84rem !important;
  font-weight: 700 !important;
  padding: 9px 12px !important;
  border-radius: 6px !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
}
.btn.pk-btn-details:hover {
  background: #E65C00 !important;
  border-color: #E65C00 !important;
  color: #FFFFFF !important;
}
.btn.pk-btn-enquiry {
  background: #0088CC !important;
  border: 1.5px solid #0088CC !important;
  color: #FFFFFF !important;
  font-size: 0.84rem !important;
  font-weight: 700 !important;
  padding: 9px 12px !important;
  border-radius: 6px !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
}
.btn.pk-btn-enquiry:hover {
  background: #0073AD !important;
  border-color: #0073AD !important;
  color: #FFFFFF !important;
}


/* UNIVERSAL FAQ OVERRIDE */
/* FAQS ACCORDION - UNIVERSAL FIX FOR DETAILS & CLASS ACCORDIONS */
.faq-sec{padding:60px 0;background:#FFFFFF}
.faq-wrap{max-width:880px;margin:32px auto 0;box-sizing:border-box}
.faq-item,
details.faq-item{
  border:1px solid var(--line) !important;
  border-radius:16px !important;
  margin-bottom:14px !important;
  background:#FFFFFF !important;
  overflow:hidden !important;
  transition:border-color .2s ease,box-shadow .2s ease !important;
}
.faq-item:hover,
details.faq-item:hover{
  border-color:var(--blue) !important;
}
.faq-item.active,
details.faq-item[open]{
  border-color:var(--blue) !important;
  box-shadow:var(--shadow-sm) !important;
}
.faq-question,
summary.faq-question{
  padding:18px 24px !important;
  font-family:'Quicksand',sans-serif !important;
  font-weight:700 !important;
  font-size:1.05rem !important;
  color:var(--blue-dark) !important;
  cursor:pointer !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  user-select:none !important;
  list-style:none !important;
}
.faq-question::-webkit-details-marker,
summary.faq-question::-webkit-details-marker,
.faq-question::marker,
summary.faq-question::marker{
  display:none !important;
}
.faq-icon-box{
  width:32px !important;
  height:32px !important;
  min-width:32px !important;
  border-radius:50% !important;
  background:rgba(255,102,0,0.1) !important;
  color:var(--orange) !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:.9rem !important;
  flex-shrink:0 !important;
  transition:transform .25s ease, background-color .25s ease, color .25s ease !important;
}
.faq-icon-box i{
  color:inherit !important;
  font-size:.9rem !important;
  line-height:1 !important;
  display:inline-block !important;
}
.faq-item.active .faq-icon-box,
details.faq-item[open] .faq-icon-box{
  transform:rotate(45deg) !important;
  background:var(--orange) !important;
  color:#FFFFFF !important;
}
.faq-answer,
details.faq-item[open] .faq-answer{
  display:block !important;
  max-height:none !important;
  overflow:visible !important;
  padding:0 24px 22px !important;
  color:var(--muted) !important;
  font-size:.98rem !important;
  line-height:1.7 !important;
}
details.faq-item:not([open]) .faq-answer{
  display:none !important;
}
.faq-answer p{margin:0 0 10px 0 !important}
.faq-answer p:last-child{margin-bottom:0 !important}
.faq-answer a{color:var(--blue) !important;text-decoration:underline !important}
.faq-answer a:hover{color:var(--orange) !important}

/* ========================================================
   D4U DRIVE 4 YOU LOGO & EYEBROW SPACING FIX
   ======================================================== */
.drive4you-brand {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 28px 20px 0 !important;
  margin-bottom: 0 !important;
}
.drive4you-brand img {
  display: block !important;
  max-height: 60px !important;
  width: auto !important;
  object-fit: contain !important;
}
.drive4you-brand ~ .cab-locations-sec,
.drive4you-brand + .cab-locations-sec,
.elementor-widget-tat2_coverage .cab-locations-sec {
  padding-top: 8px !important;
}
.drive4you-brand ~ .cab-locations-sec .eyebrow,
.drive4you-brand + .cab-locations-sec .eyebrow,
.elementor-widget-tat2_coverage .cab-locations-sec .eyebrow {
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}



/* ========================================================
   B2B SECTION WHITE HEADING OVERRIDE
   ======================================================== */
.b2b h2,
.b2b h2 span,
body .b2b h2,
body.elementor-kit-6 .b2b h2,
body.elementor-page-11 .b2b h2,
.elementor .b2b h2 {
  color: #FFFFFF !important;
}
.b2b p,
body .b2b p,
body.elementor-kit-6 .b2b p {
  color: #C9D8E8 !important;
}
.b2b ul,
.b2b li {
  color: #FFFFFF !important;
}



/* ========================================================
   BLOG DETAILS: STYLISH CHECK ICONS FOR LISTS & NO TITLE DOTS
   ======================================================== */
.jsp-content ul:not(.jsp-toc):not(.jsp-pop-list),
.entry-content ul:not(.jsp-toc):not(.jsp-pop-list) {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 16px 0 !important;
}
.jsp-content ul:not(.jsp-toc):not(.jsp-pop-list) > li,
.entry-content ul:not(.jsp-toc):not(.jsp-pop-list) > li {
  position: relative !important;
  padding-left: 32px !important;
  margin-bottom: 14px !important;
  line-height: 1.7 !important;
  list-style: none !important;
  color: var(--jsp-text);
}
.jsp-content ul:not(.jsp-toc):not(.jsp-pop-list) > li::before,
.entry-content ul:not(.jsp-toc):not(.jsp-pop-list) > li::before {
  content: "\f00c" !important;
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 0 !important;
  top: 3px !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 50% !important;
  background: rgba(255, 102, 0, 0.12) !important;
  color: #FF6600 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 11px !important;
  line-height: 1 !important;
}
/* Ensure headings don't have stray bullet pseudo elements */
.jsp-content :is(h1,h2,h3,h4,h5,h6)::before,
.jsp-content :is(h1,h2,h3,h4,h5,h6)::after {
  content: none !important;
  display: none !important;
}


/* CAB SERVICES: REMOVE THUMBNAILS & FULL WIDTH BLUE BOOK NOW BUTTON */
.tariff-gallery-wrap,
.tariff-thumb-track {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
}
.tariff-actions {
  display: block !important;
  width: 100% !important;
  margin-top: auto !important;
}
.tariff-actions .btn-b,
.tariff-actions a.btn-b {
  display: none !important;
}
.tariff-actions .btn-primary,
.tariff-card .btn-primary,
a.btn-book-now {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: var(--blue, #2768AB) !important;
  border: 2px solid var(--blue, #2768AB) !important;
  color: #FFFFFF !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  padding: 12px 18px !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 14px rgba(39, 104, 171, 0.25) !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
}
.tariff-actions .btn-primary:hover,
.tariff-card .btn-primary:hover,
a.btn-book-now:hover {
  background: #1D5288 !important;
  border-color: #1D5288 !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 18px rgba(29, 82, 136, 0.35) !important;
}
body.home .tat2-packages-section .tabs,
body.home #packages .tabs {
  display: none !important;
}


/* Topbar Flex Layout: Full middle red section filled with logos */
.topbar-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  width: min(1420px, 97%) !important;
  max-width: 1420px !important;
  margin: 0 auto !important;
}
.topbar-contact {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}
.topbar-logos-marquee {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 20px 0 16px !important;
  overflow: hidden !important;
  display: block !important;
}
.topbar-logos-marquee-track {
  display: inline-flex !important;
  align-items: center !important;
  gap: 18px !important;
  white-space: nowrap !important;
}
.topbar-logo-item {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 8px !important;
  flex: 0 0 auto !important;
}
.topbar-logo-item img {
  max-height: 42px !important;
  height: 42px !important;
  width: auto !important;
  max-width: 68px !important;
  object-fit: contain !important;
  display: block !important;
}
.topbar-actions {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
}
@media (max-width: 900px) {
  .topbar-logos-marquee {
    display: none !important;
  }
}

/* Completely hide any gallery pill bar or pill items */
.gallery-hero-pills-bar,
.gallery-pills-card,
.g-pill-item {
  display: none !important;
}


/* ==========================================================================
   GLOBAL RESPONSIVE ENHANCEMENTS (DOC REQUIREMENTS 1-11)
   ========================================================================== */

/* 1 & 6. PREVENT HORIZONTAL SCROLL GLOBALLY ON ALL PAGES */
html:not(.elementor-html),
body:not(.elementor-editor-active):not(.elementor-editor-preview) {
  overflow-x: visible !important;
  max-width: 100% !important;
  width: 100% !important;
  position: relative !important;
}
*,
*::before,
*::after {
  box-sizing: border-box !important;
}
.site-content,
main,
section,
header,
footer,
.topbar {
  max-width: 100% !important;
  overflow-x: clip !important;
}

/* 17. RESTORE BOXED CONTAINER ON DESKTOP (PREVENT UNINTENDED CONTAINER-FLUID EXPANSION) */
.wrap {
  width: 100% !important;
  max-width: 1220px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}

header .wrap,
.topbar-inner {
  width: min(1420px, 97%) !important;
  max-width: 1420px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.container {
  width: 100% !important;
  max-width: 1220px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
  box-sizing: border-box !important;
}

@media (max-width: 768px) {
  .wrap {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
@media (max-width: 480px) {
  .wrap {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

/* 4. ALL DUAL BUTTONS ON SAME LINE GLOBALLY ACROSS ALL PAGES */
.hero-actions,
.pk-actions,
.card-actions,
.dual-buttons,
.cab-hero-actions,
.hero-cta-btns,
.btn-row,
.tariff-actions-dual,
.gallery-cta-btns {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  width: 100% !important;
}
.hero-actions > .btn,
.pk-actions > .btn,
.card-actions > .btn,
.dual-buttons > .btn,
.cab-hero-actions > .btn,
.hero-cta-btns > .btn,
.btn-row > .btn,
.gallery-cta-btns > .btn {
  flex: 1 1 50% !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 10px 12px !important;
}

/* 5. BUTTON TEXT TO BE IN ONE LINE FOR ALL PAGES */
.btn,
a.btn,
button.btn,
.topbar-btn,
.cab-book-btn,
.loc-enquire,
.btn-primary,
.btn-secondary,
.btn-outline-white,
.btn-o,
.btn-b,
.pk-btn-details,
.pk-btn-enquiry,
.cab-bottom-cta-btn {
  white-space: nowrap !important;
}

@media (max-width: 480px) {
  .hero-actions > .btn,
  .pk-actions > .btn,
  .card-actions > .btn,
  .dual-buttons > .btn {
    font-size: 0.82rem !important;
    padding: 8px 6px !important;
    gap: 4px !important;
  }
  .btn i, a.btn i {
    margin-left: 4px !important;
    font-size: 0.85em !important;
  }
}

/* 1. TOPBAR ON MOBILE (NO HORIZONTAL OVERFLOW, PAY NOW FULLY VISIBLE) */
@media (max-width: 860px) {
  .topbar {
    padding: 6px 0 !important;
  }
  .topbar-inner {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 0 12px !important;
  }
  .topbar-logos-marquee {
    display: none !important;
  }
  .topbar-contact {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .topbar-contact a {
    font-size: 0.74rem !important;
  }
  .topbar-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    gap: 8px !important;
    margin-left: 0 !important;
  }
  .topbar-actions .topbar-btn {
    flex: 1 1 50% !important;
    min-height: 34px !important;
    padding: 6px 8px !important;
    font-size: 0.74rem !important;
    white-space: nowrap !important;
    text-align: center !important;
    justify-content: center !important;
  }
}

/* 1. MOBILE DRAWER OPENS FROM LEFT WITH LOGO & CLOSE BUTTON */
@media (max-width: 1160px) {
  .tat2-site-header .nav-menu,
  .nav-menu {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: min(340px, 86vw) !important;
    max-width: 380px !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: #FFFFFF !important;
    box-shadow: 10px 0 35px rgba(14, 42, 71, 0.22) !important;
    border-right: 1px solid #E2E8F0 !important;
    border-left: none !important;
    z-index: 999999 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 0 24px 0 !important;
    margin: 0 !important;
    gap: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    transform: translateX(-105%) !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.32s ease !important;
  }
  .tat2-site-header .nav-menu.open,
  .nav-menu.open {
    transform: translateX(0) !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .tat2-nav-backdrop {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: rgba(14, 42, 71, 0.55) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    z-index: 999998 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease, visibility 0.3s ease !important;
  }
  body.tat2-menu-open .tat2-nav-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .mobile-drawer-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    background: #FFFFFF !important;
    border-bottom: 1px solid #EDF2F7 !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
    width: 100% !important;
  }
  .mobile-drawer-logo img {
    height: 38px !important;
    width: auto !important;
    object-fit: contain !important;
    display: block !important;
  }
  .mobile-drawer-close {
    background: #F1F5F9 !important;
    border: none !important;
    color: #0E2A47 !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    font-size: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
  }
  .mobile-drawer-close:hover {
    background: #E2E8F0 !important;
    color: #FF6600 !important;
  }
}
@media (min-width: 1161px) {
  .mobile-drawer-header {
    display: none !important;
  }
}

/* 2. FLEET CAROUSEL: 1 CARD PER SLIDE ON MOBILE & DESIGN FIX */
@media (max-width: 768px) {
  .tat2-fleet-widget .cab-v-card,
  .cab-carousel-container .cab-v-card {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  .tat2-fleet-widget .cab-v-header,
  .cab-v-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 16px 8px !important;
  }
  .tat2-fleet-widget .cab-v-header h3,
  .cab-v-header h3 {
    font-size: 1.15rem !important;
    margin: 0 !important;
  }
  .tat2-fleet-widget .cab-v-metrics,
  .cab-v-metrics {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    padding: 10px 14px !important;
    gap: 6px !important;
  }
  .tat2-fleet-widget .cab-v-footer,
  .cab-v-footer {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 14px 16px !important;
  }
  .tat2-fleet-widget .cab-v-pack,
  .cab-v-pack {
    font-size: 0.88rem !important;
    white-space: nowrap !important;
    margin: 0 !important;
  }
  .tat2-fleet-widget .cab-book-btn,
  .cab-book-btn {
    padding: 10px 18px !important;
    font-size: 0.84rem !important;
    white-space: nowrap !important;
    margin: 0 !important;
    border-radius: 8px !important;
  }
}

/* 3 & 7. CAB & TRANSPORTATION COVERAGE: 1 CARD PER ROW ON MOBILE */
@media (max-width: 768px) {
  .loc-grid,
  .cab-locations-sec .loc-grid,
  .tat2-coverage-widget .loc-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    width: 100% !important;
  }
  .loc-card {
    width: 100% !important;
    max-width: 100% !important;
  }
  .loc-enquire {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    padding: 12px 18px !important;
  }
}

/* 8. REVIEWS / TESTIMONIALS: 1 CARD PER ROW ON MOBILE */
@media (max-width: 768px) {
  .testi-grid,
  .testimonials-section .testi-grid,
  .tat2-testimonials-widget .testi-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: 100% !important;
  }
  .testi-card {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* 9 & 11. TRUST ACCREDITATION BADGES: 2 CARDS PER ROW ON MOBILE */
@media (max-width: 768px) {
  .aff-grid,
  .tat2-trust-widget .aff-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
  }
  .aff-card {
    padding: 16px 12px !important;
    text-align: center !important;
  }
}

/* 9 & 11. SMALL FEATURE BOXES (WHY CHOOSE US): 2 CARDS PER ROW ON MOBILE */
@media (max-width: 768px) {
  .why-cards,
  .tat2-why-widget .why-cards {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .why-item {
    padding: 12px 10px !important;
    gap: 8px !important;
    border-radius: 12px !important;
    align-items: center !important;
  }
  .why-item-icon {
    width: 36px !important;
    height: 36px !important;
    font-size: 1rem !important;
    border-radius: 8px !important;
    flex-shrink: 0 !important;
  }
  .why-item-text b {
    font-size: 0.82rem !important;
    line-height: 1.25 !important;
  }
}

/* 10. COPYRIGHT & BOTTOM MENUS: SAME LINE STYLING */
.ft-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px 20px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  font-size: 0.84rem !important;
  color: #94A3B8 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}
.ft-bottom-copy {
  white-space: nowrap !important;
}
.ft-bottom-links {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  white-space: nowrap !important;
}
.ft-bottom-links a {
  color: #94A3B8 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.ft-bottom-links a:hover {
  color: #FF6600 !important;
}
.ft-sep {
  color: rgba(255, 255, 255, 0.2) !important;
}
@media (max-width: 991px) {
  .ft-bottom {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 8px 16px !important;
    font-size: 0.78rem !important;
    padding-bottom: 44px !important;
  }
}
@media (max-width: 580px) {
  .ft-bottom-copy {
    white-space: normal !important;
  }
}


/* ==========================================================================
   POINTS 12 & 13: MOBILE HEADER SIZING, BLUE DRAWER & GLOBAL 2-COL GALLERY
   ========================================================================== */

/* 12. COMPACT HEADER ON MOBILE (LOGO + BUTTON SIZED TO NEVER CROP HAMBURGER) */
@media (max-width: 860px) {
  .tat2-site-header .hdr {
    padding: 0 10px !important;
    gap: 6px !important;
    height: 64px !important;
    justify-content: space-between !important;
  }
  .tat2-site-header .brand {
    margin-right: 0 !important;
    margin-left: 0 !important;
    flex: 0 0 auto !important;
  }
  .tat2-site-header .brand img {
    height: 28px !important;
    max-height: 28px !important;
    width: auto !important;
    max-width: 105px !important;
  }
  .tat2-site-header .hdr-cta,
  .hdr-cta {
    margin-left: auto !important;
    margin-right: 4px !important;
    flex: 0 0 auto !important;
  }
  .tat2-site-header .hdr-cta .btn,
  .hdr-cta .btn {
    padding: 5px 8px !important;
    font-size: 0.72rem !important;
    height: 32px !important;
    border-radius: 6px !important;
    gap: 3px !important;
  }
  .tat2-site-header .hdr-cta .btn i,
  .hdr-cta .btn i {
    font-size: 0.75em !important;
    margin-left: 2px !important;
  }
  .burger,
  .tat2-burger-btn {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 16px !important;
    border-radius: 6px !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
  }
}

/* 12. BLUE BACKGROUND FOR MOBILE DRAWER MENU & BULLETPROOF OPENING */
@media (max-width: 1160px) {
  .tat2-site-header .nav-menu,
  .nav-menu {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: min(340px, 86vw) !important;
    max-width: 380px !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: #0E2A47 !important; /* Deep Navy Blue */
    color: #FFFFFF !important;
    box-shadow: 10px 0 35px rgba(0, 0, 0, 0.45) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-left: none !important;
    z-index: 999999 !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 0 24px 0 !important;
    margin: 0 !important;
    gap: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    transform: translateX(-105%) !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s ease !important;
  }
  .tat2-site-header .nav-menu.open,
  .nav-menu.open {
    display: flex !important;
    transform: translateX(0) !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .mobile-drawer-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    background: #0A1C30 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
    width: 100% !important;
  }
  .mobile-drawer-logo img {
    height: 36px !important;
    width: auto !important;
    object-fit: contain !important;
    display: block !important;
    background: #FFFFFF !important;
    padding: 4px 8px !important;
    border-radius: 6px !important;
  }
  .mobile-drawer-close {
    background: rgba(255, 255, 255, 0.15) !important;
    border: none !important;
    color: #FFFFFF !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    font-size: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
  }
  .mobile-drawer-close:hover {
    background: #FF6600 !important;
    color: #FFFFFF !important;
  }
  .tat2-site-header .nav-item,
  .nav-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: transparent !important;
  }
  .tat2-site-header .nav-link,
  .nav-link {
    color: #F8FAFC !important;
    font-weight: 600 !important;
    padding: 13px 20px !important;
  }
  .tat2-site-header .nav-link:hover,
  .tat2-site-header .nav-link.active,
  .nav-link:hover,
  .nav-link.active {
    color: #FF6600 !important;
    background: rgba(255, 255, 255, 0.06) !important;
  }
  .tat2-site-header .dropdown-menu,
  .dropdown-menu,
  .dropdown-megamenu {
    background: #0A1C30 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important;
  }
  .dropdown-link {
    color: #CBD5E1 !important;
  }
  .dropdown-link:hover {
    color: #FF6600 !important;
  }
  .dd-col-head {
    color: #FFAA44 !important;
  }
  .mobile-drawer-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
    padding: 18px 20px !important;
    background: #0A1C30 !important;
  }
}

/* 13. GLOBAL GALLERY: EXACTLY 2 IMAGE CARDS PER ROW ALL OVER THE SITE */
@media (max-width: 768px) {
  /* Photo Gallery Page Bento Grid */
  .bento-gallery-grid,
  .gallery-main-sec .bento-gallery-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    grid-auto-rows: 170px !important;
  }
  .bento-gallery-grid .bento-item,
  .bento-item {
    grid-column: span 1 !important;
    grid-row: span 1 !important;
    height: 100% !important;
  }
  
  /* Video Gallery Grid */
  .video-grid,
  .video-gallery-sec .video-grid,
  .tat2-video-gallery-widget .video-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }

  /* Homepage & Widget Gallery Grid */
  .gal,
  .gallery-sec .gal,
  .tat2-gallery-widget .gal,
  .tat2-gallery-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
  .gp {
    min-height: 150px !important;
    grid-column: span 1 !important;
    grid-row: span 1 !important;
  }
  .gp.gp-featured {
    grid-column: span 1 !important;
    grid-row: span 1 !important;
  }
}


/* ==========================================================================
   POINTS 14, 15, 16: GALLERY CONTAIN, WHITE BG & MOBILE SUBMENU / PAY NOW BLUE
   ========================================================================== */

/* --------------------------------------------------------------------------
   POINT 16: PAY NOW BUTTON IN SITE'S BLUE (#2768AB) WITH WHITE TEXT (#FFFFFF)
   -------------------------------------------------------------------------- */
.topbar-btn.topbar-btn-quote,
.topbar-actions a[href*="/pay-now/"],
.mobile-drawer-footer a[href*="/pay-now/"],
.btn-pay-now-blue,
a.topbar-btn-quote,
a[href*="/pay-now/"].btn {
  background: #2768AB !important;
  background-color: #2768AB !important;
  border: 1px solid #2768AB !important;
  border-color: #2768AB !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(39, 104, 171, 0.35) !important;
}

.topbar-btn.topbar-btn-quote:hover,
.topbar-actions a[href*="/pay-now/"]:hover,
.mobile-drawer-footer a[href*="/pay-now/"]:hover,
.btn-pay-now-blue:hover,
a.topbar-btn-quote:hover,
a[href*="/pay-now/"].btn:hover {
  background: #1B4E82 !important;
  background-color: #1B4E82 !important;
  border-color: #1B4E82 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(39, 104, 171, 0.45) !important;
}

.topbar-btn.topbar-btn-quote i,
.topbar-actions a[href*="/pay-now/"] i,
.mobile-drawer-footer a[href*="/pay-now/"] i,
.btn-pay-now-blue i,
a.topbar-btn-quote i,
a[href*="/pay-now/"].btn i {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
}

/* --------------------------------------------------------------------------
   POINT 16: SUBMENUS CLOSED BY DEFAULT & ACCORDION TOGGLE ON MOBILE
   -------------------------------------------------------------------------- */
@media (max-width: 1160px) {
  /* Strictly hide submenus when parent is NOT .open-sub */
  .tat2-site-header .nav-item:not(.open-sub) > .dropdown-menu,
  .tat2-site-header .nav-item:not(.open-sub) > .dropdown-megamenu,
  .tat2-nav-menu .nav-item:not(.open-sub) > .dropdown-menu,
  .tat2-nav-menu .nav-item:not(.open-sub) > .dropdown-megamenu,
  .nav-menu .nav-item:not(.open-sub) > .dropdown-menu,
  .nav-menu .nav-item:not(.open-sub) > .dropdown-megamenu,
  .nav-item:not(.open-sub) > .dropdown-menu,
  .nav-item:not(.open-sub) > .dropdown-megamenu,
  .nav-item:not(.open-sub) .dropdown-megamenu,
  .dropdown-megamenu:not(.open-sub) {
    display: none !important;
    max-height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    overflow: hidden !important;
    pointer-events: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
  }

  /* Show submenu ONLY when parent has .open-sub */
  .tat2-site-header .nav-item.open-sub > .dropdown-menu,
  .tat2-site-header .nav-item.open-sub > .dropdown-megamenu,
  .tat2-nav-menu .nav-item.open-sub > .dropdown-menu,
  .tat2-nav-menu .nav-item.open-sub > .dropdown-megamenu,
  .nav-menu .nav-item.open-sub > .dropdown-menu,
  .nav-menu .nav-item.open-sub > .dropdown-megamenu,
  .nav-item.open-sub > .dropdown-menu,
  .nav-item.open-sub > .dropdown-megamenu {
    display: block !important;
    max-height: 2000px !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    pointer-events: auto !important;
    background: #0A1C30 !important;
    padding: 12px 14px !important;
    margin: 4px 12px 12px 12px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
    min-width: 0 !important;
    position: static !important;
    transform: none !important;
    box-shadow: none !important;
  }

  .tat2-site-header .nav-item.open-sub > .nav-link i.fa-chevron-down,
  .nav-item.open-sub > .nav-link i.fa-chevron-down {
    transform: rotate(180deg) !important;
    color: #FF6600 !important;
  }
}

/* --------------------------------------------------------------------------
   POINT 15: HOMEPAGE GALLERY SECTION PURE WHITE BACKGROUND (#FFFFFF)
   -------------------------------------------------------------------------- */
.gallery-sec,
section.gallery-sec,
.tat2-gallery-widget,
.elementor-11 .elementor-element.elementor-element-0e45c5c,
.elementor-11 .elementor-element.elementor-element-0e45c5c .gallery-sec,
.elementor-element-0e45c5c .gallery-sec,
#tat2_gal_0e45c5c {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
}

.gallery-sec h2,
section.gallery-sec h2,
.tat2-gallery-widget h2,
.elementor-11 .elementor-element.elementor-element-0e45c5c h2,
.elementor-11 .elementor-element.elementor-element-0e45c5c .gallery-sec h2,
#tat2_gal_0e45c5c h2 {
  color: #0E2A47 !important; /* Site Dark Navy Blue */
}

.gallery-sec .lead,
section.gallery-sec .lead,
.tat2-gallery-widget .lead,
.elementor-11 .elementor-element.elementor-element-0e45c5c .lead,
#tat2_gal_0e45c5c .lead {
  color: #5A6D82 !important; /* Muted Slate */
}

.gallery-sec .eyebrow,
section.gallery-sec .eyebrow,
.tat2-gallery-widget .eyebrow,
.elementor-11 .elementor-element.elementor-element-0e45c5c .eyebrow,
#tat2_gal_0e45c5c .eyebrow {
  background: #FFF3EB !important;
  color: #FF6600 !important;
  border: 1px solid rgba(255, 102, 0, 0.15) !important;
}

.gallery-sec .eyebrow i,
#tat2_gal_0e45c5c .eyebrow i {
  color: #FF6600 !important;
}

/* --------------------------------------------------------------------------
   POINT 14: ALL GALLERY IMAGES FILL/CONTAIN ENTIRE BOX ON MOBILE (NO GAPS)
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
  /* Homepage & Widget Gallery */
  .gal,
  .gallery-sec .gal,
  .tat2-gallery-widget .gal,
  .tat2-gallery-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    grid-auto-rows: 165px !important;
  }
  
  .gp,
  .gallery-sec .gp,
  .tat2-gallery-widget .gp {
    position: relative !important;
    width: 100% !important;
    height: 165px !important;
    min-height: 165px !important;
    max-height: 165px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    display: block !important;
    margin: 0 !important;
  }

  .gp img,
  .gallery-sec .gp img,
  .tat2-gallery-widget .gp img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .gp span,
  .gallery-sec .gp span {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 2 !important;
    padding: 24px 10px 10px !important;
    font-size: 0.82rem !important;
    background: linear-gradient(transparent, rgba(10, 24, 40, 0.88)) !important;
  }

  /* Photo Gallery Page Bento Grid */
  .bento-gallery-grid,
  .gallery-main-sec .bento-gallery-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    grid-auto-rows: 165px !important;
  }

  .bento-gallery-grid .bento-item,
  .bento-item {
    position: relative !important;
    width: 100% !important;
    height: 165px !important;
    min-height: 165px !important;
    max-height: 165px !important;
    grid-column: span 1 !important;
    grid-row: span 1 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    margin: 0 !important;
  }

  .bento-item img,
  .bento-gallery-grid .bento-item img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .bento-item-overlay {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    padding: 12px !important;
  }

  .bento-title {
    font-size: 0.88rem !important;
  }

  /* Video Gallery Grid */
  .video-grid,
  .video-gallery-sec .video-grid,
  .tat2-video-gallery-widget .video-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }

  .video-card {
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  .video-thumb-wrap {
    position: relative !important;
    width: 100% !important;
    height: 130px !important;
    min-height: 130px !important;
    overflow: hidden !important;
  }

  .video-thumb-wrap img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }
}


/* ==========================================================================
   POINT 18: ELEMENTOR EDITOR FULL COMPATIBILITY FIX
   ========================================================================== */
html.elementor-html,
body.elementor-editor-active,
body.elementor-editor-preview,
.elementor-editor-active body,
.elementor-editor-active html {
  overflow: visible !important;
  overflow-x: visible !important;
  max-width: none !important;
  width: auto !important;
  position: static !important;
}

body.elementor-editor-active .wrap,
body.elementor-editor-preview .wrap,
.elementor-editor-active .elementor-section,
.elementor-editor-preview .elementor-section {
  overflow: visible !important;
  overflow-x: visible !important;
}

@media (min-width: 992px) {
  .dd-domestic-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4px 16px !important;
  }
}


/* ========================================================
   TOUR PACKAGES MEGA MENU: WIDE GAPPING & CENTER DIVIDER
   ======================================================== */
@media (min-width: 1161px) {
  .tat2-site-header .dropdown-megamenu,
  .dropdown-megamenu {
    min-width: 840px !important;
    width: max-content !important;
    max-width: 920px !important;
    padding: 24px 28px !important;
    display: flex !important;
    gap: 28px !important;
  }
  .tat2-site-header .dd-domestic-section,
  .dd-domestic-section {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .tat2-site-header .dd-domestic-grid,
  .dd-domestic-grid {
    display: flex !important;
    align-items: stretch !important;
    gap: 24px !important;
  }
  .tat2-site-header .dd-subcol,
  .dd-subcol {
    flex: 1 1 0 !important;
    min-width: 250px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
  }
  .tat2-site-header .dd-domestic-grid .dd-subcol:first-child,
  .dd-domestic-grid .dd-subcol:first-child {
    padding-right: 24px !important;
    border-right: 1px solid #E2E8F0 !important;
  }
  .tat2-site-header .dropdown-link,
  .dropdown-link {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 12px !important;
    font-size: .88rem !important;
    font-weight: 600 !important;
    color: #334155 !important;
    border-radius: 6px !important;
    transition: all .2s ease !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }
  .tat2-site-header .dropdown-link:hover,
  .dropdown-link:hover {
    color: var(--blue, #2768AB) !important;
    background: var(--blue-soft, rgba(39, 104, 171, 0.08)) !important;
    transform: translateX(4px) !important;
  }
  .tat2-site-header .dropdown-link i,
  .dropdown-link i {
    font-size: .82rem !important;
    color: var(--muted, #64748B) !important;
    width: 18px !important;
    text-align: center !important;
  }
  .tat2-site-header .dropdown-link:hover i,
  .dropdown-link:hover i {
    color: var(--blue, #2768AB) !important;
  }
  .tat2-site-header .dd-intl-section,
  .dd-intl-section {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    border-left: 1px solid #E2E8F0 !important;
    padding-left: 24px !important;
    min-width: 220px !important;
  }
}

/* ========================================================
   MOBILE LOGO WIDTH & HAMBURGER RELIABILITY (<= 1160px)
   ======================================================== */
@media (max-width: 1160px) {
  /* Bigger logo on mobile navbar */
  .tat2-site-header .brand,
  .brand {
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    margin-right: auto !important;
  }
  .tat2-site-header .brand img,
  .brand img {
    height: 38px !important;
    max-height: 42px !important;
    width: auto !important;
    max-width: 155px !important;
    object-fit: contain !important;
    display: block !important;
  }
  /* Bigger logo in mobile drawer header */
  .mobile-drawer-logo img {
    height: 40px !important;
    max-height: 44px !important;
    width: auto !important;
    max-width: 165px !important;
    object-fit: contain !important;
    display: block !important;
    background: #FFFFFF !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
  }
  /* Navbar CTA compact styling to ensure perfect fit */
  .tat2-site-header .hdr-cta,
  .hdr-cta {
    margin-left: auto !important;
    margin-right: 6px !important;
    flex-shrink: 0 !important;
  }
  .tat2-site-header .hdr-cta .btn-cta,
  .hdr-cta .btn-cta,
  .hdr-cta a {
    padding: 8px 12px !important;
    font-size: 11.5px !important;
    white-space: nowrap !important;
  }
  /* Burger button */
  .tat2-burger-btn,
  .burger {
    flex-shrink: 0 !important;
  }
  /* Mobile megamenu accordion stacking */
  .tat2-site-header .dropdown-megamenu,
  .dropdown-megamenu {
    min-width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 12px 14px !important;
  }
  .dd-domestic-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
  }
  .dd-domestic-grid .dd-subcol {
    min-width: 100% !important;
    padding-right: 0 !important;
    border-right: none !important;
  }
  .dd-intl-section {
    border-left: none !important;
    padding-left: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding-top: 12px !important;
    margin-top: 8px !important;
    min-width: 100% !important;
  }
  .dropdown-link {
    white-space: normal !important;
  }
}


/* ========================================================
   MOBILE SUBMENU ACCORDION (CLOSED BY DEFAULT & EXPAND ON CLICK)
   ======================================================== */
@media (max-width: 1160px) {
  /* Closed by default */
  .tat2-site-header .nav-item:not(.open-sub) > .dropdown-menu,
  .tat2-site-header .nav-item:not(.open-sub) > .dropdown-megamenu,
  .tat2-nav-menu .nav-item:not(.open-sub) > .dropdown-menu,
  .tat2-nav-menu .nav-item:not(.open-sub) > .dropdown-megamenu,
  .nav-menu .nav-item:not(.open-sub) > .dropdown-menu,
  .nav-menu .nav-item:not(.open-sub) > .dropdown-megamenu,
  .nav-item:not(.open-sub) > .dropdown-menu,
  .nav-item:not(.open-sub) > .dropdown-megamenu {
    display: none !important;
    max-height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    overflow: hidden !important;
    pointer-events: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
  }

  /* Expanded when open-sub */
  .tat2-site-header .nav-item.open-sub > .dropdown-menu,
  .tat2-site-header .nav-item.open-sub > .dropdown-megamenu,
  .tat2-nav-menu .nav-item.open-sub > .dropdown-menu,
  .tat2-nav-menu .nav-item.open-sub > .dropdown-megamenu,
  .nav-menu .nav-item.open-sub > .dropdown-menu,
  .nav-menu .nav-item.open-sub > .dropdown-megamenu,
  .nav-item.open-sub > .dropdown-menu,
  .nav-item.open-sub > .dropdown-megamenu {
    display: flex !important;
    flex-direction: column !important;
    max-height: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    pointer-events: auto !important;
    background: #0A1C30 !important;
    padding: 12px 14px !important;
    border-radius: 8px !important;
    margin: 6px 12px 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    min-width: calc(100% - 24px) !important;
    width: calc(100% - 24px) !important;
    box-sizing: border-box !important;
  }

  .tat2-site-header .nav-item.open-sub > .dropdown-megamenu .dd-domestic-grid,
  .nav-item.open-sub > .dropdown-megamenu .dd-domestic-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
  }
  .tat2-site-header .nav-item.open-sub > .dropdown-megamenu .dd-subcol,
  .nav-item.open-sub > .dropdown-megamenu .dd-subcol {
    min-width: 100% !important;
    padding-right: 0 !important;
    border-right: none !important;
  }
  .tat2-site-header .nav-item.open-sub > .dropdown-megamenu .dd-intl-section,
  .nav-item.open-sub > .dropdown-megamenu .dd-intl-section {
    border-left: none !important;
    padding-left: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding-top: 12px !important;
    margin-top: 8px !important;
    min-width: 100% !important;
  }
  .tat2-site-header .nav-item.open-sub > .dropdown-menu .dropdown-link,
  .nav-item.open-sub > .dropdown-menu .dropdown-link {
    color: #CBD5E1 !important;
    padding: 9px 12px !important;
    font-size: 13.5px !important;
    white-space: normal !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
  }
  .tat2-site-header .nav-item.open-sub > .dropdown-menu .dropdown-link:hover,
  .nav-item.open-sub > .dropdown-menu .dropdown-link:hover {
    color: #FF6600 !important;
    background: rgba(255, 255, 255, 0.06) !important;
  }
  .tat2-site-header .nav-item.open-sub > .nav-link i.fa-chevron-down,
  .nav-item.open-sub > .nav-link i.fa-chevron-down {
    transform: rotate(180deg) !important;
    color: #FF6600 !important;
  }
}
