/*
 Theme Name:   Hello Elementor Child
 Theme URI:    https://hidesertexperiences.com
 Description:  HiDE child theme for Hello Elementor
 Author:       Freebird Hospitality LLC
 Template:     hello-elementor
 Version:      1.0.0
 Text Domain:  hello-elementor-child
*/

@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@700;900&family=Instrument+Serif:ital@0;1&family=DM+Sans:wght@300;400;500&display=swap');

:root {
  --hide-pink:        #C4547A;
  --hide-pink-bright: #E0608A;
  --hide-pink-pale:   #FAEAF0;
  --hide-night:       #100810;
  --hide-blush:       #FDF6F9;
  --hide-cream:       #FDFAF8;
  --hide-text:        #180C14;
  --hide-muted:       #7A5868;
  --hide-border:      rgba(196,84,122,0.12);
  --hide-border-mid:  rgba(24,12,20,0.08);
}

/* ══════════════════════════════════════
   TOURFIC DESIGN 1 — V3 OVERRIDES
   Targeting actual rendered HTML elements
══════════════════════════════════════ */

/* ── Global font ── */
.tf-single-v2,
.tf-single-v2 * {
  font-family: 'DM Sans', sans-serif !important;
}

/* ── Tour title (h1) ── */
.tf-single-v2 h1,
.tf-single-v2 .tf-single-title {
  font-family: 'Big Shoulders Display', sans-serif !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: -0.02em !important;
  color: var(--hide-text) !important;
  line-height: 0.92 !important;
  font-size: clamp(32px, 5vw, 58px) !important;
}

/* ── Section headings (h2) ── */
.tf-single-v2 h2 {
  font-family: 'Big Shoulders Display', sans-serif !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.02em !important;
  font-size: 20px !important;
  color: var(--hide-text) !important;
  margin-bottom: 14px !important;
  margin-top: 28px !important;
}

/* ── Description body text ── */
.tf-single-v2 p,
.tf-single-v2 li {
  font-size: 16px !important;
  color: var(--hide-muted) !important;
  line-height: 1.75 !important;
}

/* ── Rating ── */
.tf-single-v2 .tf-rating,
.tf-single-v2 .tf-review-rating {
  color: var(--hide-pink) !important;
}
.tf-single-v2 a[href="#tf-review"] {
  color: var(--hide-muted) !important;
  font-size: 13px !important;
  text-decoration: none !important;
  border-bottom: 1px solid var(--hide-muted) !important;
}

/* ── Pink info strip (duration, adult, price) — make it cream ── */
.tf-single-v2 .tf-tour-meta,
.tf-single-v2 .tf-d1-meta,
.tf-single-v2 .tf-info-strip,
.tf-single-v2 [class*="tf-meta"],
.tf-single-v2 [class*="tf-info"] {
  background: var(--hide-cream) !important;
  border-radius: 8px !important;
  padding: 16px 20px !important;
}
.tf-single-v2 .tf-tour-meta li,
.tf-single-v2 [class*="tf-meta"] li,
.tf-single-v2 [class*="tf-info"] li {
  color: var(--hide-text) !important;
  font-size: 14px !important;
}

/* ── Booking widget header — dark background ── */
.tf-single-v2 .tf-booking-form-wrapper,
.tf-single-v2 .tf-sidebar,
.tf-single-v2 [class*="tf-book"],
.tf-single-v2 [class*="tf-sidebar"] {
  border: 1px solid var(--hide-border-mid) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 24px rgba(24,12,20,0.08) !important;
}

/* ── "Book This Tour" heading ── */
.tf-single-v2 .tf-booking-title,
.tf-single-v2 [class*="tf-booking"] h3,
.tf-single-v2 [class*="tf-booking"] h4 {
  font-family: 'Big Shoulders Display', sans-serif !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: var(--hide-text) !important;
  font-size: 18px !important;
}

/* ── Price display ── */
.tf-single-v2 .tf-price,
.tf-single-v2 [class*="tf-price"],
.tf-single-v2 .woocommerce-Price-amount {
  font-family: 'Big Shoulders Display', sans-serif !important;
  font-weight: 900 !important;
  color: var(--hide-text) !important;
  letter-spacing: -0.02em !important;
}
.tf-single-v2 .tf-from-price,
.tf-single-v2 [class*="from"] .woocommerce-Price-amount {
  font-size: 38px !important;
}

/* ── Date picker input ── */
.tf-single-v2 input[type="text"],
.tf-single-v2 input[type="date"],
.tf-single-v2 input[type="number"],
.tf-single-v2 select {
  border: 1px solid var(--hide-border-mid) !important;
  border-radius: 6px !important;
  padding: 12px 14px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  color: var(--hide-text) !important;
  width: 100% !important;
  background: #FFFFFF !important;
}
.tf-single-v2 label {
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--hide-muted) !important;
  display: block !important;
  margin-bottom: 6px !important;
}

/* ── Book Now button ── */
.tf-single-v2 .tf-book-btn,
.tf-single-v2 input[type="submit"],
.tf-single-v2 button[type="submit"],
.tf-single-v2 .atbdp_action_btn,
.tf-single-v2 a.tf-book-btn,
.tf-single-v2 [class*="book-btn"],
.tf-single-v2 [class*="tf-btn"] {
  background: var(--hide-pink) !important;
  color: white !important;
  font-family: 'Big Shoulders Display', sans-serif !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 16px 24px !important;
  border: none !important;
  border-radius: 2px !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
  display: block !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: none !important;
}
.tf-single-v2 .tf-book-btn:hover,
.tf-single-v2 input[type="submit"]:hover,
.tf-single-v2 button[type="submit"]:hover {
  background: var(--hide-pink-bright) !important;
  color: white !important;
}

/* ── Reviews ── */
.tf-single-v2 #tf-review h2 {
  font-family: 'Big Shoulders Display', sans-serif !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  font-size: 20px !important;
}
.tf-single-v2 .tf-review-item,
.tf-single-v2 [class*="review-item"] {
  background: var(--hide-cream) !important;
  border-radius: 8px !important;
  padding: 18px 20px !important;
  margin-bottom: 12px !important;
  border: none !important;
}
.tf-single-v2 .tf-reviewer-name,
.tf-single-v2 [class*="reviewer"] h3,
.tf-single-v2 [class*="reviewer"] h4 {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--hide-text) !important;
}
.tf-single-v2 .tf-review-text,
.tf-single-v2 [class*="review-content"] p {
  font-size: 15px !important;
  color: var(--hide-muted) !important;
  line-height: 1.65 !important;
  font-style: italic !important;
}

/* ── Remove any remaining pink backgrounds ── */
.tf-single-v2 [style*="background-color: #C4547A"],
.tf-single-v2 [style*="background-color:#C4547A"],
.tf-single-v2 [style*="background: #C4547A"],
.tf-single-v2 [style*="background:#C4547A"],
.tf-single-v2 [style*="background-color: rgb(196, 84, 122)"] {
  background-color: var(--hide-cream) !important;
  color: var(--hide-text) !important;
}

/* ── Tourfic inline pink backgrounds — nuclear option ──
   This catches any element with Tourfic's pink as inline style */
.tf-d1-price-area,
.tf-tour-info-area,
.tf-single-v2 .tf-tour-fact-area {
  background: var(--hide-cream) !important;
  color: var(--hide-text) !important;
  border-radius: 8px !important;
}
.tf-d1-price-area *,
.tf-tour-info-area *,
.tf-single-v2 .tf-tour-fact-area * {
  color: var(--hide-text) !important;
}

/* ── Stars pink ── */
.tf-single-v2 .tf-rating i,
.tf-single-v2 .tf-star i,
.tf-single-v2 [class*="star"] {
  color: var(--hide-pink) !important;
}

/* ── Links ── */
.tf-single-v2 a:not(.tf-book-btn) {
  color: var(--hide-pink) !important;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .tf-single-v2 h1 { font-size: clamp(28px, 8vw, 44px) !important; }
}
