/* =========================================================
   V14 — Flat compact Booking teaser
   Matches the approved reference: blue-to-purple, no shadow.
   ========================================================= */

.booking-dock.collapsed{
  width:auto!important;
  max-width:calc(100% - 16px)!important;
  perspective:none!important;
}

.booking-expand.booking-expand-classic{
  position:relative;
  isolation:auto;
  display:none;
  align-items:center;
  justify-content:flex-start;
  gap:10px;

  width:222px!important;
  min-width:222px!important;
  max-width:calc(100vw - 22px)!important;
  min-height:58px!important;
  margin:0 auto;
  padding:8px 18px 8px 9px!important;

  overflow:hidden;
  color:#fff;
  border:1px solid rgba(255,255,255,.56)!important;
  border-radius:18px!important;

  background:
    linear-gradient(
      104deg,
      #2ba8eb 0%,
      #3b99e9 30%,
      #596fdf 58%,
      #8050d2 79%,
      #9740b7 100%
    )!important;

  /* Intentionally flat: no drop shadow, glow or inset shadow. */
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
  animation:none!important;

  text-align:left;
  cursor:pointer;
  transition:
    filter .18s ease,
    transform .12s ease,
    border-color .18s ease;
}

.booking-dock.collapsed .booking-expand.booking-expand-classic{
  display:flex!important;
}

/* Remove the previous shimmer and glow layers completely. */
.booking-expand.booking-expand-classic::before,
.booking-expand.booking-expand-classic::after{
  display:none!important;
  content:none!important;
  opacity:0!important;
  animation:none!important;
  filter:none!important;
  box-shadow:none!important;
}

.booking-expand.booking-expand-classic:hover{
  filter:brightness(1.055) saturate(1.04)!important;
  transform:none!important;
  box-shadow:none!important;
}

.booking-expand.booking-expand-classic:active{
  filter:brightness(.98)!important;
  transform:scale(.985)!important;
  box-shadow:none!important;
}

.booking-expand.booking-expand-classic:focus-visible{
  outline:3px solid rgba(119,93,226,.46)!important;
  outline-offset:4px!important;
  box-shadow:none!important;
}

/* Circular caret, matching the reference layout. */
.booking-expand-caret{
  display:grid!important;
  place-items:center;

  flex:0 0 38px!important;
  width:38px!important;
  height:38px!important;

  color:#fff!important;
  border:1px solid rgba(255,255,255,.42)!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.14)!important;

  box-shadow:none!important;
  filter:none!important;
  text-shadow:none!important;
  animation:none!important;

  font-size:.89rem!important;
  font-weight:900!important;
  line-height:1!important;
}

.booking-expand-simple-copy{
  display:flex!important;
  min-width:0;
  flex:1 1 auto;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  gap:2px;
  line-height:1.08;
}

.booking-expand-simple-copy b{
  display:block!important;
  color:#fff!important;
  font-size:.91rem!important;
  font-weight:900!important;
  letter-spacing:0!important;
  line-height:1.12!important;
  white-space:nowrap;

  text-shadow:none!important;
  filter:none!important;
}

.booking-expand-simple-copy small{
  display:block!important;
  color:rgba(255,255,255,.88)!important;
  font-size:.60rem!important;
  font-weight:700!important;
  line-height:1.12!important;
  white-space:nowrap;

  text-shadow:none!important;
}

/* Disable all legacy child elements in case of cached markup. */
.booking-expand-icon,
.booking-expand-copy,
.booking-expand-arrow,
.booking-expand-eyebrow,
.booking-expand-hint{
  display:none!important;
}

/* Keep expanded Booking Bar behavior unchanged. */
.booking-dock:not(.collapsed) .booking-expand{
  display:none!important;
}

@media(max-width:640px){
  .booking-expand.booking-expand-classic{
    width:220px!important;
    min-width:220px!important;
    min-height:58px!important;
    padding:8px 17px 8px 9px!important;
    border-radius:18px!important;
  }

  .booking-expand-caret{
    flex-basis:38px!important;
    width:38px!important;
    height:38px!important;
  }

  .booking-expand-simple-copy b{
    font-size:.90rem!important;
  }

  .booking-expand-simple-copy small{
    font-size:.59rem!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .booking-expand.booking-expand-classic,
  .booking-expand-caret{
    animation:none!important;
    transition:none!important;
  }
}
