/* Haven Trails | Accommodation cards and booking CTA | 2026-10-11 */
html body .ht-sticky-booking-trigger { position:static !important; left:auto !important; right:auto !important; bottom:auto !important; z-index:auto !important; display:inline-flex !important; visibility:visible !important; opacity:1 !important; pointer-events:auto !important; max-width:100% !important; box-shadow:none !important; }
@media (max-width:768px) {
  html body.ht-sticky-booking-ready { padding-bottom:0 !important; }
}
.bkc .bf,
.bkc button[data-open-safari],
.bkc a.bf {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  width:100% !important;
  box-sizing:border-box !important;
  background:#3d783e !important;
  color:#ffffff !important;
  border:1px solid #3d783e !important;
  font-weight:700 !important;
  text-align:center !important;
  text-decoration:none !important;
  cursor:pointer !important;
}
.bkc .bf:hover, .bkc .bf:focus-visible,
.bkc button[data-open-safari]:hover, .bkc button[data-open-safari]:focus-visible {
  background:#2e6230 !important;
  border-color:#2e6230 !important;
  color:#fff !important;
}
.bkc .bf i, .bkc button[data-open-safari] i { color:#fff !important; }
@media(max-width:767px) {
  .acc-location, .acc-day-widget, [id^="tier"][id*="-"] { min-width:0; max-width:100%; }
  .acc-grid {
    display:flex !important;
    grid-template-columns:none !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    gap:14px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:0;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:2px 1px 12px !important;
    box-sizing:border-box !important;
  }
  .acc-grid::-webkit-scrollbar { display:none; }
  .acc-grid > .acc-card {
    flex:0 0 calc(100% - 2px) !important;
    width:calc(100% - 2px) !important;
    max-width:calc(100% - 2px) !important;
    min-width:0 !important;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    box-sizing:border-box !important;
    transform:none !important;
  }
  .ht-acc-mobile-controls {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    margin:1px auto 20px;
  }
  .ht-acc-mobile-controls button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    border-radius:50%;
    background:#fff;
    color:#3d783e;
    border:1px solid #c9bfa1;
    cursor:pointer;
  }
  .ht-acc-mobile-controls button:disabled {opacity:.35;cursor:default}
  .ht-acc-mobile-index {min-width:45px;text-align:center;font-size:13px;font-weight:700;color:#3d783e}
}
@media(min-width:768px){ .ht-acc-mobile-controls {display:none !important} }
@media(prefers-reduced-motion:reduce){.acc-grid{scroll-behavior:auto!important}}
