/* ================================
   TOO MUCH TRAVEL — COMBINED PATCH
   Unified header (desktop + mobile), sticky + footer
   ================================ */

/* ---- Brand palette ---- */
:root {
  --tmt-navy: #0A1E46;
  --tmt-navy-deep: #081A38;
  --tmt-navy-grad: #0C204A;
  --tmt-gold: #C5A46D;
  --tmt-gold-dark: #b39055;
  --tmt-white: #F5F5F5;
  --tmt-shadow: rgba(0,0,0,.25);
}

/* ================================
   GLOBAL BASICS
   ================================ */
html, body {
  background: var(--tmt-navy-deep) !important;
  color: var(--tmt-white);
  overflow-x: hidden;
  scroll-behavior: smooth;
  font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

/* Links + buttons (consistent CTA) */
a { color: var(--tmt-gold); text-decoration: none; transition: .25s ease; }
a:hover { color: #F5EAC3; text-decoration: underline; }

button, input[type=submit], .wp-block-button__link, a.button, .btn, .book-now {
  background: var(--tmt-gold) !important;
  color: var(--tmt-navy-deep) !important;
  border-radius: 8px;
  font-weight: 600;
  padding: 12px 22px;
  border: none;
  box-shadow: 0 4px 10px rgba(0,0,0,.25);
  transition: .25s ease;
}
button:hover, input[type=submit]:hover, .wp-block-button__link:hover, a.button:hover, .btn:hover, .book-now:hover {
  background: var(--tmt-gold-dark) !important;
  color: #fff !important;
  text-decoration: underline;
}

/* ================================
   HEADER — UNIFORM (desktop + mobile)
   Matches Suites / Privacy Policy look
   ================================ */
.site-header,
header#masthead,
.main-header-bar,
.ast-primary-header-bar,
.main-navigation {
  background: linear-gradient(180deg, var(--tmt-navy-deep) 0%, var(--tmt-navy-grad) 100%) !important;
  border-bottom: 1px solid rgba(197,164,109,0.25) !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.35) !important;
  color: var(--tmt-white);
  padding: 12px 0 !important;
  position: relative;
  z-index: 999;
}

/* Header alignment */
header#masthead .ast-container,
.site-header .ast-container,
.main-header-bar .ast-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 16px !important;
}

/* Navigation links */
.main-header-menu a,
.main-navigation a,
.ast-builder-menu-1 a {
  color: #D4B77D !important;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: all 0.3s ease-in-out;
}
.main-header-menu a:hover,
.main-navigation a:hover,
.main-header-menu .current-menu-item > a {
  color: #FFFFFF !important;
  text-decoration: none;
}

/* Submenu dropdowns */
.main-header-menu .sub-menu,
.main-navigation ul ul {
  background-color: var(--tmt-navy) !important;
  border: 1px solid rgba(197,164,109,0.25) !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}
.main-header-menu .sub-menu a {
  color: var(--tmt-gold) !important;
  padding: 10px 18px !important;
}
.main-header-menu .sub-menu a:hover {
  background-color: var(--tmt-navy-deep) !important;
  color: #FFFFFF !important;
}

/* Phone button */
header#masthead a[href^="tel:"] {
  background-color: var(--tmt-gold) !important;
  color: var(--tmt-navy-deep) !important;
  font-weight: 600;
  border-radius: 8px;
  padding: 8px 16px;
  margin-left: 12px;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
header#masthead a[href^="tel:"]:hover {
  background-color: var(--tmt-gold-dark) !important;
  color: #FFFFFF !important;
  text-decoration: underline;
}

/* Keep header sticky + centered */
header#masthead {
  position: sticky;
  top: 0;
  z-index: 9999;
  transition: background .25s ease, box-shadow .25s ease, padding .25s ease;
}
.ast-sticky-active header#masthead,
.ast-sticky-active .main-header-bar {
  background: linear-gradient(180deg, var(--tmt-navy) 0%, var(--tmt-navy-grad) 100%) !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.35) !important;
}

/* ================================
   MOBILE HEADER FIX (orange removal)
   ================================ */
@media (max-width: 1024px){
  .ast-header-break-point header#masthead,
  .ast-header-break-point .site-header,
  .ast-header-break-point .main-header-bar,
  .ast-header-break-point .ast-mobile-header-wrap,
  .ast-header-break-point .main-navigation,
  .mobile-header,
  .menu-toggle {
    background: var(--tmt-navy) !important;
    color: var(--tmt-white) !important;
    border: none !important;
  }
  .ast-header-break-point .main-header-menu,
  .ast-header-break-point .main-header-menu .sub-menu,
  .ast-mobile-popup-drawer.active .ast-mobile-popup-inner {
    background: var(--tmt-navy-deep) !important;
  }
  .menu-toggle svg,
  .ast-button-wrap .menu-toggle {
    fill: var(--tmt-gold) !important;
  }
  .menu-toggle:hover { background: var(--tmt-navy-grad) !important; }
  header#masthead .ast-container { flex-direction: column; gap: 8px; }
}

/* ================================
   FOOTER COLORS & ICONS
   ================================ */
.site-footer, footer.site-footer {
  background: var(--tmt-navy) !important;
  color: var(--tmt-gold) !important;
  border-top: 1px solid rgba(197,164,109,0.25) !important;
  text-align: center;
}
.site-footer a { color: var(--tmt-gold) !important; }
.site-footer a:hover { color: #fff !important; }

/* Social icons gold tint */
.site-footer img[alt*="Instagram"],
.site-footer img[alt*="WhatsApp"],
.site-footer img[alt*="Email"],
footer img[alt*="Instagram"],
footer img[alt*="WhatsApp"],
footer img[alt*="Email"] {
  width: 28px; height: 28px;
  filter: invert(88%) sepia(42%) saturate(400%) hue-rotate(12deg) brightness(95%) contrast(90%);
}

/* ================================
   CARD GRID ALIGNMENT (3-up desktop)
   ================================ */
@media (min-width:1025px){
  .wp-block-columns { display:flex; flex-wrap:wrap; gap:16px; }
  .wp-block-column { flex:1 1 calc(33.333% - 16px); max-width:360px; }
} /* ===========================
   TOO MUCH TRAVEL — NAV BAR REBUILD
   Sticky + Smooth Scroll Animation
   =========================== */

/* Base header style */
header#masthead {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: linear-gradient(180deg, #081A38 0%, #0C204A 100%) !important;
  transition: all 0.4s ease-in-out;
  box-shadow: none;
  padding: 14px 0;
}

/* When scrolled — add shadow + shrink slightly */
header#masthead.scrolled {
  background: #0A1E46 !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.35);
  padding: 8px 0;
  animation: fadeSlide 0.4s ease forwards;
}

/* Smooth fade/slide animation */
@keyframes fadeSlide {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Align logo + menu perfectly */
header#masthead .ast-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px;
}

/* Menu link style */
.main-header-menu a,
.main-navigation a {
  color: #D4B77D !important;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 600;
  font-size: 15px;
  transition: color 0.3s ease, transform 0.3s ease;
}
.main-header-menu a:hover,
.main-navigation a:hover {
  color: #FFFFFF !important;
  transform: translateY(-2px);
}

/* Active page indicator */
.main-header-menu .current-menu-item > a {
  color: #FFFFFF !important;
  border-bottom: 2px solid #C5A46D;
  padding-bottom: 4px;
}

/* Phone CTA button */
header#masthead a[href^="tel:"] {
  background-color: #C5A46D !important;
  color: #081A38 !important;
  font-weight: 600;
  border-radius: 8px;
  padding: 8px 16px;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
header#masthead a[href^="tel:"]:hover {
  background-color: #B39055 !important;
  color: #FFFFFF !important;
}

/* Submenu style */
.main-header-menu .sub-menu {
  background-color: #0A1E46 !important;
  border: 1px solid rgba(197,164,109,0.3);
  border-radius: 6px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}
.main-header-menu .sub-menu a {
  color: #C5A46D !important;
}
.main-header-menu .sub-menu a:hover {
  background-color: #081A38 !important;
  color: #FFFFFF !important;
}

/* Mobile menu (fixes orange) */
@media (max-width: 1024px) {
  header#masthead,
  .main-navigation,
  .ast-mobile-header-wrap {
    background-color: #0A1E46 !important;
  }
  .menu-toggle svg {
    fill: #C5A46D !important;
  }
}
.contact-form-box {
  background: #081A38;
  border: 1px solid #C5A46D;
  border-radius: 8px;
  padding: 12px;
}
.wpcf7-form, .wpcf7-form p, .wpcf7-form label {
  color: #F5F5F5 !important;
}
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
  color: #F5F5F5 !important;
  background-color: #0A1E46 !important;
  border: 1px solid #C5A46D !important;
}
.wpcf7-form ::placeholder { color: #D2D6E1 !important; }
.wpcf7-submit {
  background-color: #C5A46D !important;
  color: #081A38 !important;
  border: none !important;
  padding: 10px 18px !important;
  border-radius: 6px !important;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}
.wpcf7-submit:hover { background-color: #B18E4F !important; color: #fff !important; 
}