/* ═══════════════════════════════════════════════════════════════════════════
   booking-panel.css — Sticky enquiry panel for single templates
   Desktop: sticky card. Mobile: bottom bar that appears past the hero.
═══════════════════════════════════════════════════════════════════════════ */

.boa-bp{
  margin:3rem 0;
  --bp-gold:#c8b28a;
  --bp-ink:#f5f1e8;
}
.boa-bp__inner{
  padding:1.6rem 1.7rem;
  border-radius:20px;
  background:rgba(200,178,138,.06);
  border:1px solid rgba(200,178,138,.24);
}

/* On wide screens the panel sticks alongside the content as the reader
   scrolls, so the ask never leaves the viewport. */
@media (min-width:1100px){
  .boa-bp{
    position:sticky; top:100px;
    float:right; width:320px;
    margin:0 0 2rem 2.5rem;
  }
}

.boa-bp__price{ margin-bottom:1.1rem; padding-bottom:1.1rem; border-bottom:1px solid rgba(238,245,242,.1); }
.boa-bp__from{
  display:block; font-size:.66rem; letter-spacing:.16em;
  text-transform:uppercase; color:rgba(245,241,232,.5); margin-bottom:.2rem;
}
.boa-bp__price strong{
  display:block; font-family:"Cormorant Garamond",serif;
  font-size:1.9rem; font-weight:400; color:var(--bp-gold); line-height:1.1;
}
.boa-bp__price--quote strong{ font-size:1.35rem; }
.boa-bp__note{
  display:block; font-size:.76rem; line-height:1.5;
  color:rgba(245,241,232,.5); margin-top:.3rem;
}

.boa-bp__facts{ margin:0 0 1.2rem; }
.boa-bp__facts > div{
  display:flex; justify-content:space-between; gap:1rem;
  padding:.5rem 0; border-bottom:1px solid rgba(238,245,242,.06);
}
.boa-bp__facts dt{ font-size:.8rem; color:rgba(245,241,232,.55); margin:0; }
.boa-bp__facts dd{ font-size:.85rem; color:var(--bp-ink); margin:0; font-weight:500; text-align:right; }

.boa-bp__cta, .boa-bp__wa{
  display:block; text-align:center; text-decoration:none;
  padding:.85rem 1rem; border-radius:999px;
  font-size:.92rem; font-weight:700; transition:filter .2s ease, transform .2s ease;
}
.boa-bp__cta{ background:var(--bp-gold); color:#0d1615; margin-bottom:.55rem; }
.boa-bp__cta:hover{ filter:brightness(1.08); transform:translateY(-1px); }
.boa-bp__wa{
  background:rgba(37,211,102,.12); border:1px solid rgba(37,211,102,.38); color:#25d366;
}
.boa-bp__wa:hover{ background:rgba(37,211,102,.2); }

.boa-bp__trust{
  list-style:none; padding:1.1rem 0 0; margin:1.1rem 0 0;
  border-top:1px solid rgba(238,245,242,.1);
}
.boa-bp__trust li{
  position:relative; padding-left:1.3rem; margin-bottom:.4rem;
  font-size:.78rem; line-height:1.5; color:rgba(245,241,232,.6);
}
.boa-bp__trust li::before{ content:'✓'; position:absolute; left:0; color:#6fd39a; font-weight:700; }

/* ── Mobile bar ─────────────────────────────────────────────────────────── */
.boa-bpm{
  position:fixed; left:0; right:0; bottom:0; z-index:9300;
  display:flex; align-items:center; gap:.6rem;
  padding:.7rem .9rem calc(.7rem + env(safe-area-inset-bottom));
  background:rgba(13,22,21,.97); backdrop-filter:blur(16px);
  border-top:1px solid rgba(200,178,138,.25);
  transform:translateY(100%); transition:transform .28s ease;
}
.boa-bpm.is-in{ transform:translateY(0); }
.boa-bpm__txt{ flex:1; min-width:0; }
.boa-bpm__txt strong{
  display:block; font-size:.86rem; color:#f5f1e8;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.boa-bpm__txt span{ display:block; font-size:.74rem; color:#c8b28a; }
.boa-bpm__cta{
  flex:none; padding:.65rem 1.2rem; border-radius:999px;
  background:#c8b28a; color:#0d1615; font-weight:700; font-size:.85rem; text-decoration:none;
}
.boa-bpm__wa{
  flex:none; width:42px; height:42px; border-radius:50%;
  display:grid; place-items:center; font-size:1.15rem; text-decoration:none;
  background:rgba(37,211,102,.14); border:1px solid rgba(37,211,102,.4);
}
@media (min-width:1100px){ .boa-bpm{ display:none; } }

/* Keep the mobile bar clear of the Help button and cart toggle. */
@media (max-width:1099px){
  .boa-help-trigger{ bottom:5.5rem; }
  .boa-cart-toggle{ bottom:5.5rem; }
}
@media (prefers-reduced-motion:reduce){
  .boa-bpm{ transition:none; }
  .boa-bp__cta:hover{ transform:none; }
}
