/* ============================================================
   maxi-v3.css — Dark theme layer on top of maxi-v2.css
   Only overrides colors/backgrounds. Layout stays from v2.
   ============================================================ */

/* ── THEME OVERRIDES ─────────────────────────────────────── */
:root {
  --off-white:  #000000;    /* page bg → black */
  --text:       #ffffff;    /* body text → white */
  --text-light: rgba(255,255,255,.72);
  --text-muted: rgba(255,255,255,.5);
  --border:     rgba(255,255,255,.1);
  --card-shadow: 0 8px 40px rgba(0,0,0,.5);
  --white:      #ffffff;
}

html, body {
  background: #000 !important;
  color: #fff !important;
}

.total_body,
.section_content {
  background: #000 !important;
}

/* ── HERO — full viewport, show image ────────────────────── */
.header_pic {
  height: 80vh !important;
  min-height: 520px !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  position: relative !important;
  display: flex !important;
  align-items: flex-end !important;
}

.header_pic::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,.25) 0%,
    rgba(0,0,0,.05) 35%,
    rgba(0,0,0,.75) 100%
  ) !important;
  pointer-events: none !important;
}

/* ── NAV — keep v2 nav dark, just beef up blur ───────────── */
.mxt-nav {
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
  background: rgba(13,25,46,.82) !important;
}

/* ── CONTENT AREA ────────────────────────────────────────── */
.content_tour_detail {
  background: #000 !important;
}

/* ── INFO SIDEBAR CARD ───────────────────────────────────── */
.basic_info_box {
  background: #0d192e !important;
  border-top: 3px solid #3db3a5 !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 40px rgba(0,0,0,.5) !important;
}

.detail_tour_title {
  color: #3db3a5 !important;
}

.detail_info {
  color: #fff !important;
}

.basic_info_content {
  background: transparent !important;
}

.duration_detail,
.location_detail,
.age_detail {
  float: none !important;
  width: 100% !important;
  border-bottom-color: rgba(255,255,255,.08) !important;
}

/* ── GRID OVERFLOW FIX — description column must not grow past grid ── */
.description_tour {
  min-width: 0 !important;
  overflow: hidden !important;
}

/* ── HERO OVERLAY — title on the photo ───────────────────── */
.hero_tour_overlay {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  padding: 0 80px 160px !important;
  z-index: 2 !important;
}

.hero_tour_title {
  font-family: 'Montserrat', sans-serif !important;
  font-size: clamp(44px, 6vw, 76px) !important;
  font-weight: 900 !important;
  color: #fff !important;
  letter-spacing: -2px !important;
  line-height: 1.05 !important;
  margin: 0 !important;
  text-shadow: 0 4px 24px rgba(0,0,0,.5) !important;
}

/* Hide duplicate title in content section */
.description_tour_tittle {
  display: none !important;
}

.description_tour_content,
.include_text_tours,
.general_text {
  color: rgba(255,255,255,.72) !important;
}

/* ── INFO GRID ROWS ──────────────────────────────────────── */
.col_content_box {
  background: rgba(255,255,255,.04) !important;
  border-radius: 10px !important;
  border: none !important;
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
  margin-bottom: 8px !important;
}

.sub_tittle_content {
  color: #3db3a5 !important;
  font-size: 10px !important;
  letter-spacing: 2px !important;
}

.hour_tittle,
.col_description_content {
  color: #fff !important;
}

/* ── BOOKING CARD ────────────────────────────────────────── */
.tours_reservation_box {
  background: #0d192e !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.6) !important;
}

.price_detail_box {
  background: none !important;
  border: none !important;
  border-right: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 0 !important;
  height: auto !important;
  margin-top: 0 !important;
}

.form_reservation_box {
  margin-top: 0 !important;
  padding-top: 0 !important;
  background: none !important;
}

.price_detail_content {
  background: none !important;
  color: #eda23b !important;
  font-size: 44px !important;
  font-weight: 900 !important;
  height: auto !important;
  line-height: 1.1 !important;
  padding: 0 !important;
}

.price_unit_detail {
  color: rgba(255,255,255,.55) !important;
}

.reserve_tittle {
  color: #3db3a5 !important;
  font-size: 11px !important;
  letter-spacing: 2.5px !important;
}

/* Form fields */
.field_box select,
.field_box input[type="text"],
select[name="tour_place"],
select[name="total_persons"],
input[name="DateTour"],
.field_reserve {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 10px !important;
  color: #fff !important;
  padding: 13px 16px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  width: 100% !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

select[name="tour_place"],
select[name="total_persons"] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%233DB3A5' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  padding-right: 40px !important;
}

select option { background: #0d192e !important; color: #fff !important; }

.reserve_button,
input[type="submit"].reserve_button {
  background: #3db3a5 !important;
  color: #fff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 40px !important;
  padding: 16px !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: background .2s !important;
}
.reserve_button:hover { background: #2a9488 !important; }

/* datepicker dark */
.ui-datepicker {
  background: #0d192e !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 12px !important;
  color: #fff !important;
}
.ui-datepicker-header { background: #13243f !important; color: #fff !important; border: none !important; }
.ui-datepicker td a, .ui-datepicker td span { color: rgba(255,255,255,.8) !important; }
.ui-state-active { background: #3db3a5 !important; color: #fff !important; border-radius: 6px !important; }

/* ── GALLERY ─────────────────────────────────────────────── */
.rotator_wrap,
.rotator_box { background: #000 !important; }

/* ── REVIEWS ─────────────────────────────────────────────── */
.box_reviews { background: #000 !important; }
.review_tittle { color: #fff !important; }
.review_item {
  background: #0d192e !important;
  border: 1px solid rgba(255,255,255,.07) !important;
  border-radius: 14px !important;
}
.review_text { color: rgba(255,255,255,.8) !important; }
.icon-star { color: #eda23b !important; }
.icon-star-o { color: rgba(255,255,255,.2) !important; }

/* ── DISCLAIMER ──────────────────────────────────────────── */
.disclaimer_box { background: #000 !important; }
.disclaimer_content { color: rgba(255,255,255,.35) !important; border-top-color: rgba(255,255,255,.07) !important; }

/* ── CART ────────────────────────────────────────────────── */
.cart_content { background: #000 !important; padding-top: 100px !important; }
.eC_Clean_Pacifica_Arial h2 { color: #fff !important; font-family: 'Montserrat', sans-serif !important; font-weight: 900 !important; font-size: 42px !important; letter-spacing: -1px !important; }
.eC_ShoppingCart { background: #0d192e !important; border-radius: 16px !important; }
.eC_ShoppingCart th { background: #13243f !important; color: rgba(255,255,255,.6) !important; font-size: 10px !important; letter-spacing: 2px !important; text-transform: uppercase !important; border: none !important; }
.eC_ShoppingCart td { color: #fff !important; border-bottom-color: rgba(255,255,255,.07) !important; background: none !important; }
.eC_ItemName { color: #fff !important; font-weight: 700 !important; }
.eC_ItemDescription { color: rgba(255,255,255,.6) !important; }
.eC_ItemPrice, .eC_PriceItem { color: #eda23b !important; }
.eC_CartSummary { background: #0d192e !important; border-color: rgba(255,255,255,.1) !important; }
.eC_CartSummary td { color: rgba(255,255,255,.8) !important; border-bottom-color: rgba(255,255,255,.07) !important; }
.eC_SummaryLabel { color: rgba(255,255,255,.5) !important; }
.eC_SummaryFooter td:last-child { color: #eda23b !important; }
input[name="bycom_Checkout"] { background: #3db3a5 !important; color: #fff !important; border: none !important; border-radius: 40px !important; font-family: 'Montserrat', sans-serif !important; font-weight: 800 !important; padding: 14px 28px !important; letter-spacing: 1.5px !important; text-transform: uppercase !important; }
input[name="bycom_Update_100"] { background: transparent !important; color: #fff !important; border: 1px solid rgba(255,255,255,.25) !important; border-radius: 40px !important; padding: 14px 28px !important; }
input[name="bycom_Clear_100"] { background: transparent !important; color: rgba(255,255,255,.4) !important; border: 1px solid rgba(255,255,255,.12) !important; border-radius: 40px !important; padding: 14px 28px !important; }

/* ── SUCCESS PAGE ────────────────────────────────────────── */
.content_notification { background: #000 !important; padding-top: 120px !important; }
.content_notification h2 { color: #fff !important; font-family: 'Montserrat', sans-serif !important; font-weight: 900 !important; }
.eCart_OrderHeaderInfo { color: rgba(255,255,255,.7) !important; }

/* ── FOOTER ──────────────────────────────────────────────── */
.mxt-footer,
footer, .footer_box {
  background: #000 !important;
  border-top: 1px solid rgba(255,255,255,.07) !important;
  color: rgba(255,255,255,.4) !important;
}
