/* ============================================================
   BhoomiVista Bridge Styles v7.2
   Purpose:
     - Connect BhoomiVista Design System with WP Travel Engine,
       Elementor, and WordPress core button blocks.
     - Prevent visual conflicts between builder-generated styles
       and modular CSS classes.
   ------------------------------------------------------------
   Safe to edit: Yes (plugin-specific only)
   Location: /bhoomivista-css/bridge/bv-bridge.css
   ============================================================ */


/* ============================================================
   [1] GENERAL BUTTON NORMALIZATION (WP Core / Elementor)
   ============================================================ */

/* Remove wrapper-level hover zones */
.wp-block-button.bv-btn,
.wp-block-button.wte-book-now {
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Ensure all BhoomiVista buttons reset Elementor layers */
.bv-btn .wp-block-button__link::before,
.bv-btn .wp-block-button__link::after {
  content: none !important;
  background: none !important;
}

/* Accessibility focus outline harmonized with theme colors */
.bv-site button:focus,
.bv-site .elementor-button:focus,
.bv-site input[type="submit"]:focus {
  outline: 2px solid var(--brand-highlight);
  outline-offset: 2px;
}

/* Elementor button alignment & reset */
.elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  white-space: nowrap;
}


/* ============================================================
   [2] WP TRAVEL ENGINE — BUTTON OVERRIDES
   ============================================================ */

/* Compact Book Now button (cards & widgets) */
.wte-book-now .wp-block-button__link,
.wp-block-button.wte-book-now .wp-block-button__link {
  display: inline-block;
  width: 100%;
  background-color: var(--brand-primary);
  color: #fff;
  font-size: 0.85rem;
  padding: 0.4rem 1rem;
  border: none;
  border-radius: 0.5rem;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

/* Hover → warm gold tone */
.wte-book-now .wp-block-button__link:hover,
.wp-block-button.wte-book-now .wp-block-button__link:hover {
  background-color: var(--brand-highlight);
  color: #fff;
  box-shadow: 0 0 8px rgba(207, 169, 74, 0.5);
}


/* ============================================================
   [3] ELEMENTOR + WP CORE INPUTS
   ============================================================ */

/* Input/button consistency for plugin forms */
.elementor-form .elementor-field,
.elementor-form .elementor-button {
  border-radius: var(--radius-md);
  font-family: var(--font-body);
  font-size: 1rem;
}

.elementor-form .elementor-button {
  background: var(--brand-primary);
  color: #fff;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

.elementor-form .elementor-button:hover {
  background: var(--brand-highlight);
  transform: translateY(-2px);
}


/* ============================================================
   [4] COMPATIBILITY NOTES
   ============================================================
   • Do not duplicate button colors here — base logic lives in:
       → components.css (Terra system buttons)
   • Do not add hero / card / panel styles here.
   • This file should remain ~90–100 lines max.
   • JS bridges (like bv-motion.js) use `.terra-visible` and
     `.scroll-active` hooks already handled globally.
   ============================================================ */
   
   
/* ============================================================
   [3] ELEMENTOR + WP CORE INPUTS
   ============================================================ */
   
.bv-tab-titles {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: var(--space-md);
}
.bv-tab-titles [data-tab] {
  background: var(--terra-surface);
  border: 1px solid var(--spark-base);
  border-radius: 30px;
  padding: 10px 22px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 500;
  color: var(--spark-base);
}
.bv-tab-titles [data-tab].active,
.bv-tab-titles [data-tab]:hover {
  background: var(--spark-base);
  color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
}
.bv-tab-panels [data-panel] {
  display: none;
  opacity: 0;
  transition: opacity .4s ease;
}
.bv-tab-panels [data-panel].active {
  display: block;
  opacity: 1;
}



/* ============================================================
   [6] WP TRAVEL ENGINE — TRIP TABS (BV)
   Scope: Only tabs on single-trip pages
   Depends: Terra tokens already loaded
   ============================================================ */

.bv-site .bv-tab-titles{
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:1rem;
  background:linear-gradient(to bottom,
              rgba(0,0,0,.03) 0%,
              rgba(0,0,0,.00) 100%);
  padding:.75rem 0 .5rem;
  border:none;
  box-shadow:none;
}

/* tab items: flat, readable text */
.bv-site .bv-tab-titles p.terra-btn-minimal{
  border:none;
  padding:.4rem 1rem;
  font-size:calc(var(--wp--preset--font-size--medium,16px) + 2px);
  font-weight:600;
  letter-spacing:.3px;
  background:transparent;
  color:rgba(0,0,0,.8);
  cursor:pointer;
  transition:color .25s ease, background-color .35s ease;
}

/* hover: light accent wash */
.bv-site .bv-tab-titles p.terra-btn-minimal:hover{
  background:rgba(180,95,75,.08);
  color:var(--terra-accent,#b45f4b);
}

/* active: full accent fill */
.bv-site .bv-tab-titles p[data-active="true"]{
  background:var(--terra-accent,#b45f4b);
  color:#fff;
  transition:background-color .4s ease,color .4s ease;
}

/* bottom line separating menu from content */
.bv-site .bv-tab-titles::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:2px;
  background:rgba(0,0,0,.08);
}

/* normalize tab panels */
.bv-site .bv-tab-panels{ gap:1.25rem; }

.bv-site .bv-tab-panels .bv-tab-panel{
  background:var(--terra-surface,#fff);
  border-radius:10px;
  box-shadow:0 6px 20px rgba(0,0,0,.06);
  padding:2rem clamp(1rem,3vw,2rem);
  max-width:70ch;
  margin-inline:auto;
  color:var(--terra-text,#2b2b2b);
  line-height:1.7;
  font-size:calc(var(--wp--preset--font-size--medium,16px) + 1px);
}

/* ============================================================
   [7] TRIP CONTENT — BODY TYPOGRAPHY & SURFACES (BV)
   ============================================================ */

.bv-site .bv-tab-panel h2,
.bv-site .bv-tab-panel h3,
.bv-site .bv-tab-panel h4{
  color:var(--terra-heading,#8a4e3e);
  margin:0 0 .75rem 0;
  font-weight:600;
}

.bv-site .bv-tab-panel p{ margin:.5rem 0 1rem; line-height:1.65; }
.bv-site .bv-tab-panel ul,
.bv-site .bv-tab-panel ol{ margin:.25rem 0 1rem 1.25rem; }
.bv-site .bv-tab-panel li{ margin:.35rem 0; }

.bv-site .bv-tab-panel hr{
  border:0; height:1px; background:rgba(0,0,0,.08); margin:1rem 0;
}

.bv-site .bv-tab-panel h4.bv-heading{
  text-align:center; letter-spacing:.2px;
}

.bv-site .bv-tab-panel [class*="icon"],
.bv-site .bv-tab-panel svg{
  vertical-align:middle;
}

/* ============================================================
   [8] RIGHT SIDEBAR — BOOKING CARD (BV)
   ============================================================ */

.bv-site .bv-box.terra-surface.shadow-strong.round-md.space-md{
  background:var(--terra-surface,#fff);
  border-radius:14px;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
  padding:1rem;
}

@media (min-width:992px){
  .bv-site .wp-block-column[style*="flex-basis:30%"] > .wp-block-group{
    position:sticky; top:2rem;
  }
}

.bv-site .wpte-booking-inner-wrapper{
  background:transparent!important;
  box-shadow:none!important;
  border:none!important;
  padding:0!important;
}

/* booking CTA button */
.bv-site .wp-block-wptravelenginetripblocks-trip-booking-button .wpte-bf-btn{
  width:100%;
  border-radius:6px;
  font-weight:600;
  transition:transform .18s ease, box-shadow .18s ease;
}
.bv-site .wp-block-wptravelenginetripblocks-trip-booking-button .wpte-bf-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(0,0,0,.16);
}

/* ============================================================
   [9] HERO — READABILITY OVERLAY (BV)
   ============================================================ */

.bv-site .terra-hero .wp-block-cover__background{
  background:linear-gradient(
    to bottom,
    rgba(255,255,255,.35) 0%,
    rgba(255,255,255,.15) 40%,
    rgba(0,0,0,.08) 100%
  )!important;
}

.bv-site .terra-hero .bv-heading,
.bv-site .terra-hero .bv-para{
  text-shadow:0 2px 8px rgba(0,0,0,.18);
}

/* ============================================================
   [10] TABS — ACTIVE INDICATOR LINE (BV)
   ============================================================ */

.bv-site .bv-tab-titles p[data-active="true"]{
  position:relative;
}
.bv-site .bv-tab-titles p[data-active="true"]::after{
  content:"";
  position:absolute;
  left:20%;
  right:20%;
  bottom:-6px;
  height:2px;
  border-radius:2px;
  background:var(--terra-accent,#b45f4b);
  opacity:.9;
  transition:all .3s ease;
}

/* ============================================================
   [11] GLOBAL SPACING TUNING FOR TRIP PAGE (BV)
   ============================================================ */

.bv-site .space-md{ margin-block:1.25rem; }
.bv-site .space-lg{ margin-block:2rem; }

