/* GLOW DETAIL V5.20: standalone success screen for booking form.
   A new CSS filename avoids stale-cache issues from earlier deployments. */
.booking-success[hidden], #booking-form[hidden], .booking-transfer[hidden] { display:none!important; }
.booking-dialog.is-success {
  width:min(490px,100%);
  padding:46px 36px 35px;
  background:#fbf8f5;
}
.booking-dialog.is-success .booking-top {
  position:absolute;
  right:22px;
  top:19px;
  margin:0;
  z-index:2;
}
.booking-dialog.is-success .booking-top > div { display:none!important; }
.booking-dialog.is-success .booking-top .booking-close {
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  padding:0;
  border:1px solid #e8dccd;
  border-radius:50%;
  background:#fff;
  color:#39312b;
  font:300 27px/1 Arial,sans-serif;
}
.booking-dialog.is-success .booking-success {
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:4px 0 0;
  text-align:center;
}
.booking-dialog.is-success .booking-success-mark {
  display:grid!important;
  place-items:center;
  flex:none;
  width:72px!important;
  height:72px!important;
  margin:0 0 25px!important;
  border:7px solid #f0e6d9;
  border-radius:50%;
  background:linear-gradient(140deg,#ddba7c,#ab7c3c);
  color:#fff;
  box-shadow:0 9px 25px rgba(154,111,49,.15);
}
.booking-dialog.is-success .booking-success-mark svg { width:31px; height:31px; stroke:#fff; }
.booking-dialog.is-success .booking-success-kicker {
  margin:0 0 10px;
  color:#ad814d;
  font-size:10px;
  font-weight:800;
  letter-spacing:2.9px;
  line-height:1.4;
  text-transform:uppercase;
}
.booking-dialog.is-success .booking-success h3 {
  margin:0 0 12px;
  max-width:100%;
  color:#211e1c;
  font-size:clamp(27px,3vw,34px);
  font-weight:800;
  line-height:1.14;
  letter-spacing:-1px;
  outline:none;
}
.booking-dialog.is-success .booking-success p {
  margin:0 auto 27px;
  max-width:345px;
  color:#67605b;
  font-size:14px;
  font-weight:400;
  line-height:1.65;
}
.booking-dialog.is-success .booking-success .booking-success-done {
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:min(280px,100%)!important;
  min-height:48px;
  height:auto!important;
  padding:13px 25px!important;
  margin:0;
  border:0!important;
  border-radius:100px!important;
  background:linear-gradient(110deg,#dfb773,#a77c3f)!important;
  color:#fff!important;
  font-family:inherit;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.3!important;
  letter-spacing:0!important;
  text-align:center;
  box-shadow:0 9px 22px rgba(154,111,49,.17);
  cursor:pointer;
  transform:none!important;
  transition:filter .2s ease,box-shadow .2s ease;
}
.booking-dialog.is-success .booking-success .booking-success-done:hover {
  background:linear-gradient(110deg,#e6c085,#ad8244)!important;
  box-shadow:0 11px 24px rgba(154,111,49,.22);
  filter:brightness(1.02);
  transform:none!important;
}
.booking-dialog.is-success .booking-success .booking-success-done:focus-visible {
  outline:3px solid #c18d50;
  outline-offset:4px;
}
@media(max-width:560px) {
  .booking-dialog.is-success { padding:49px 23px 30px; border-radius:20px; }
  .booking-dialog.is-success .booking-top { right:17px; top:15px; }
  .booking-dialog.is-success .booking-success-mark { width:66px!important; height:66px!important; margin-bottom:22px!important; }
  .booking-dialog.is-success .booking-success h3 { font-size:28px; }
  .booking-dialog.is-success .booking-success p { font-size:13px; }
}
