/* TOUR VARANASI — FINAL WHITE LUXURY THEME
   Pure white + charcoal + restrained warm taupe.
   Loaded last on every page so legacy cream/purple styles cannot win. */

:root{
  --tv-white:#ffffff!important;
  --tv-paper:#ffffff!important;
  --tv-soft:#f7f6f3!important;
  --tv-ink:#3e3934!important;
  --tv-copy:#5e5954!important;
  --tv-muted:#7c7771!important;
  --tv-line:#e7e5e0!important;
  --tv-line-strong:#d7d3cc!important;
  --tv-accent:#9a8265!important;
  --tv-accent-dark:#7a654f!important;

  --ivory:#ffffff!important;
  --paper:#ffffff!important;
  --sand:#ffffff!important;
  --sage:#ffffff!important;
  --white:#ffffff!important;
  --line:#e7e5e0!important;

  /* Legacy variables remapped so old templates inherit the new palette. */
  --tv-purple:#9a8265!important;
  --tv-purple-dark:#7a654f!important;
  --brass:#9a8265!important;
  --terracotta:#9a8265!important;
  --terracotta-dark:#7a654f!important;
  --river:#5f5d58!important;
}

/* TRUE WHITE BASE */
html,
body,
main{
  background:#ffffff!important;
  color:#3e3934!important;
}
body{
  font-family:Inter,Arial,sans-serif!important;
}

/* All major content surfaces are pure white. */
.section,
.section.soft,
.section-white,
.section-sand,
.section-sage,
.days,
.varanasi,
.sacred,
.buddhist,
.all-journeys,
.sightseeing-section,
.tour-why,
.tours-intro,
.tours-section,
.journeys,
.intro,
.local,
.dayparts,
.deeper,
.signature,
.itinerary-section,
.one-day-itinerary,
.itinerary-day,
.itinerary-copy,
.editorial,
.editorial .copy,
.home-welcome,
.home-reviews-strip,
.featured-city-tours,
.experience-catalogue,
.tv-planning,
.tv-planning-shell,
.destination-grid,
.destination-about{
  background:#ffffff!important;
}

/* HEADER / TOP STRIP */
.topbar,
.top-contact-bar,
.tv-top-contact-bar,
.header,
.site-header,
.tv-site-header,
.nav,
.nav-wrap,
.tv-nav-wrap{
  background:#ffffff!important;
  color:#3e3934!important;
}
.topbar,
.top-contact-bar,
.tv-top-contact-bar,
.header,
.site-header,
.tv-site-header{
  border-color:#e7e5e0!important;
  box-shadow:none!important;
}
.topbar a,
.top-contact-links a,
.tv-top-contact-links a,
.navlinks a{
  color:#4e4842!important;
  -webkit-text-fill-color:#4e4842!important;
}
.topbar a:hover,
.top-contact-links a:hover,
.tv-top-contact-links a:hover,
.navlinks a:hover,
.navlinks a[aria-current="page"]{
  color:#7a654f!important;
  -webkit-text-fill-color:#7a654f!important;
}
.top-contact-note,
.tv-top-contact-note{
  color:#7c7771!important;
}

/* TYPOGRAPHY */
body,
p,
li{
  color:#5e5954!important;
}
h1,h2,h3,h4,h5,h6,
.section-title,
.itinerary-copy h3,
.card h3,
.city-tour-copy h3,
.experience-card h3{
  color:#3e3934!important;
}
.kicker:not(.light),
.eyebrow:not(.light),
.daylabel,
.micro,
.featured-label,
.card .meta,
.experience-duration,
.tv-planning-meta{
  color:#9a8265!important;
}

/* HEROES stay photographic and dark enough for white text. */
.hero,
.page-hero .frame,
.tours-hero,
.experiences-hero,
.destination-index-hero,
.destination-detail-hero,
.journey-hero,
.tour-detail-hero{
  background-color:#6b625a!important;
}
.hero h1,
.hero p,
.hero .kicker,
.hero .light-link,
.page-hero h1,
.page-hero p,
.page-hero .eyebrow,
.tours-hero h1,
.tours-hero p,
.destination-index-hero h1,
.destination-index-hero p,
.destination-detail-hero h1,
.destination-detail-hero p,
.journey-hero h1,
.journey-hero p,
.tour-detail-hero h1,
.tour-detail-hero p{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* PREMIUM CHOICE CARDS — white paper, very fine warm-neutral edge. */
.city-tour-card,
.experience-card,
.destination-card,
.destination-tour-card,
.tv-planning-card,
.blog-hub-card,
.card{
  background:#ffffff!important;
  border:1px solid #e7e5e0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.city-tour-card:hover,
.experience-card:hover,
.destination-card:hover,
.destination-tour-card:hover,
.tv-planning-card:hover,
.blog-hub-card:hover,
.card:hover{
  border-color:#cfc9bf!important;
  box-shadow:none!important;
}
.city-tour-duration{
  background:rgba(255,255,255,.95)!important;
  color:#7a654f!important;
  border-color:rgba(255,255,255,.92)!important;
}
.city-tour-link,
.all-city-tours a,
.text-link,
.tv-planning-link,
.experience-link,
.tour-card-price,
.compact-tour-price{
  color:#7a654f!important;
  border-color:#b7aa99!important;
}

/* ITINERARIES: open white editorial rows, never cream. */
.itinerary-section,
.one-day-itinerary,
.itinerary-day,
.itinerary-copy,
.timeline,
.time-stop{
  background:#ffffff!important;
}
.itinerary-day{
  border-color:#e7e5e0!important;
  box-shadow:none!important;
}
.itinerary-image{
  border-radius:0!important;
}
.daylabel{
  color:#9a8265!important;
}

/* FACTS / PLANNING BANDS */
.glance,
.trust-grid,
.destination-practical-strip,
.tour-facts,
.comfort-grid,
.since-strip,
.route-list{
  background:#ffffff!important;
  border-color:#e7e5e0!important;
}
.glance>div,
.trust-grid>div,
.destination-practical-strip>div,
.tour-facts>div,
.comfort-grid>div,
.route-list a{
  background:#ffffff!important;
  border-color:#e7e5e0!important;
}

/* NOTES remain white, with one warm taupe rule. */
.note,
.policy-highlight,
.sacred-circuit-note,
.comfort-block,
.tour-practical aside,
.prose .related-links,
.prose .quick-answer,
.pillar-cta{
  background:#ffffff!important;
  border-color:#e7e5e0!important;
  box-shadow:none!important;
}
.note,
.policy-highlight,
.sacred-circuit-note,
.comfort-block,
.tour-practical aside{
  border-left:3px solid #9a8265!important;
}

/* REVIEWS */
.review,
.tripadvisor-panel,
.policy-card,
.standard-block,
.service-vehicle-list div{
  background:#ffffff!important;
  border-color:#e7e5e0!important;
  box-shadow:none!important;
}
.reviews{
  border-color:#e7e5e0!important;
}

/* FORMS / SECONDARY CALLOUTS — neutral grey, not gold/cream/purple. */
.quote-wrap,
.tour-price-panel,
.experience-enquiry,
.mini-enquiry,
.cta,
.final-cta,
.one-day-enquiry{
  background:#f7f6f3!important;
  color:#3e3934!important;
  border-color:#e1ded8!important;
  box-shadow:none!important;
}
.quote-wrap h2,
.quote-wrap p,
.quote-wrap label,
.mini-enquiry h2,
.mini-enquiry p,
.mini-enquiry label,
.cta h2,
.cta p,
.final-cta h2,
.final-cta p{
  color:#3e3934!important;
}
.quote-form input,
.quote-form select,
.quote-form textarea,
.mini-enquiry-form input,
.mini-enquiry-form textarea{
  background:#ffffff!important;
  color:#3e3934!important;
  border:1px solid #d9d5ce!important;
  border-radius:0!important;
}
.quote-form input:focus,
.quote-form select:focus,
.quote-form textarea:focus,
.mini-enquiry-form input:focus,
.mini-enquiry-form textarea:focus{
  border-color:#9a8265!important;
  box-shadow:0 0 0 2px rgba(138,118,92,.10)!important;
}

/* PRIMARY ACTIONS — charcoal, not purple. */
.btn,
.button,
.nav-cta,
.cta-button,
.one-day-enquiry button,
.quote-wrap button[type=submit],
input[type=submit],
.experience-link{
  background:#6b625a!important;
  border-color:#3e3934!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  border-radius:0!important;
}
.btn:hover,
.button:hover,
.nav-cta:hover,
.cta-button:hover,
.one-day-enquiry button:hover,
.quote-wrap button[type=submit]:hover,
input[type=submit]:hover,
.experience-link:hover{
  background:#6f5c49!important;
  border-color:#6f5c49!important;
}

/* SECONDARY LINKS: warm taupe only. */
a:not(.btn):not(.button):not(.nav-cta):not(.tv-whatsapp-float):not(.whatsapp){
  text-decoration-color:rgba(138,118,92,.35);
}

/* FOOTER is the only intentionally dark large surface. */
.tvf-footer,
footer.footer,
.footer{
  background:#6b625a!important;
  color:#ffffff!important;
}
.tvf-footer p,
.tvf-footer a,
.tvf-footer h4,
.tvf-footer span,
.tvf-footer small,
footer.footer p,
footer.footer a,
.footer-bottom{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* WhatsApp keeps its brand green. */
a.tv-whatsapp-float,
a.whatsapp{
  background:#25D366!important;
  border-color:#25D366!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
a.tv-whatsapp-float:hover,
a.whatsapp:hover{
  background:#1faa52!important;
  border-color:#1faa52!important;
}

@media(max-width:900px){
  html,body,main{background:#ffffff!important}
}


/* DESKTOP STRUCTURE SAFETY — preserve layout while keeping white theme */
/* Never use a blanket background shorthand on all <section> elements.
   Photo heroes and component layouts must retain their own backgrounds/images. */
.hero,
.tours-hero,
.experiences-hero,
.destination-index-hero,
.destination-detail-hero,
.journey-hero,
.tour-detail-hero,
.page-hero .frame{
  background-color:#6b625a!important;
}

/* Explicitly preserve the intended desktop catalogue grids. */
@media(min-width:901px){
  .container,
  .section,
  .tv-planning-shell{
    width:auto;
  }

  .experience-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .city-tour-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .journey-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .destination-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .destination-tour-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .experience-catalogue .experience-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .grid-3{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .grid-4{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .itinerary-day,
  .itinerary-day:nth-child(even){
    grid-template-columns:minmax(260px,340px) minmax(0,1fr)!important;
    gap:38px!important;
  }

  .page-hero .copy{
    max-width:760px!important;
  }
}


/* WARM STONE ACTIONS + FOOTER */
.btn,
.button,
.nav-cta,
.cta-button,
.one-day-enquiry button,
.quote-wrap button[type=submit],
.page-enquiry-form button[type=submit],
input[type=submit],
.experience-link,
.lang-btn{
  background:#9a8265!important;
  border-color:#9a8265!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
.btn:hover,
.button:hover,
.nav-cta:hover,
.cta-button:hover,
.one-day-enquiry button:hover,
.quote-wrap button[type=submit]:hover,
.page-enquiry-form button[type=submit]:hover,
input[type=submit]:hover,
.experience-link:hover,
.lang-btn:hover{
  background:#7a654f!important;
  border-color:#7a654f!important;
}
.tvf-footer,
footer.footer,
.footer,
.tv-footer{
  background:#6b625a!important;
  color:#ffffff!important;
}
.tvf-footer p,
.tvf-footer a,
.tvf-footer h4,
.tvf-footer span,
.tvf-footer small,
footer.footer p,
footer.footer a,
.footer-bottom,
.tv-footer p,
.tv-footer a,
.tv-footer h4{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}


/* NO BLACK SURFACES — black/dark reserved for text only */
:root{
  --tv-footer:#6b625a!important;
  --tv-action:#9a8265!important;
  --tv-action-hover:#7a654f!important;
}

/* No black/dark UI surfaces. */
.tvf-footer,
footer.footer,
.footer,
.tv-footer{
  background:#6b625a!important;
}
.btn,
.button,
.nav-cta,
.cta-button,
.one-day-enquiry button,
.quote-wrap button[type=submit],
.page-enquiry-form button[type=submit],
input[type=submit],
.experience-link,
.lang-btn{
  background:#9a8265!important;
  border-color:#9a8265!important;
}
.btn:hover,
.button:hover,
.nav-cta:hover,
.cta-button:hover,
.one-day-enquiry button:hover,
.quote-wrap button[type=submit]:hover,
.page-enquiry-form button[type=submit]:hover,
input[type=submit]:hover,
.experience-link:hover,
.lang-btn:hover{
  background:#7a654f!important;
  border-color:#7a654f!important;
}

/* Hero fallbacks use warm stone rather than charcoal/black. */
.hero,
.page-hero .frame,
.tours-hero,
.experiences-hero,
.destination-index-hero,
.destination-detail-hero,
.journey-hero,
.tour-detail-hero{
  background-color:#6b625a!important;
}


/* PMJ WHITE PANEL + CONSISTENT ACTIVE NAV */
.pmj-nohotel,
.pmj-nohotel-inner{
  background:#ffffff!important;
  color:#3e3934!important;
}
.pmj-nohotel{
  border-top:1px solid #e7e5e0!important;
  border-bottom:1px solid #e7e5e0!important;
}
.pmj-nohotel h2{
  color:#3e3934!important;
}
.pmj-nohotel p{
  color:#5e5954!important;
}
.pmj-nohotel .eyebrow{
  color:#9a8265!important;
}
.pmj-nohotel-services span{
  background:#ffffff!important;
  color:#5e5954!important;
  border-color:#d9d5ce!important;
}

/* Active primary-navigation item is always the same dark green + white. */
.navlinks a.is-active,
.tv-navlinks a.is-active,
.navlinks a.nav-cta.is-active,
.tv-navlinks a.tv-nav-cta.is-active{
  background:#435852!important;
  border-color:#435852!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
