/**
 * ES Sports hotel booking CTA — sample button + quantity stepper.
 * Loaded with button embeds / dialog footer (separate from ebk-dialog.css).
 */

.es-hotel-book-cta[hidden],
.es-pg .es-hotel-book-cta[hidden]{
  display:none!important
}

.es-hotel-book-cta,
.es-pg .es-hotel-book-cta{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  margin:0
}

.es-hotel-book-cta .btn-primary.es-hotel-book-trigger,
.es-hotel-book-cta .zp-cta.es-hotel-book-trigger,
.es-pg .es-hotel-book-cta .btn-primary.es-hotel-book-trigger,
.es-pg .es-hotel-book-cta .zp-cta.es-hotel-book-trigger,
button.btn-primary.es-hotel-book-trigger,
a.btn-primary.es-hotel-book-trigger{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  box-sizing:border-box;
  min-height:48px;
  margin:0;
  padding:15px 20px;
  background:var(--orange,#FF4713);
  color:#fff;
  border-radius:0;
  font-family:'Barlow Condensed',sans-serif;
  font-weight:600;
  font-size:13px;
  letter-spacing:.14em;
  text-transform:uppercase;
  line-height:1.2;
  text-decoration:none;
  clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);
  transition:background .2s ease,transform .2s ease
}

.es-hotel-book-cta .btn-primary.es-hotel-book-trigger:hover,
.es-hotel-book-cta .zp-cta.es-hotel-book-trigger:hover,
.es-pg .es-hotel-book-cta .btn-primary.es-hotel-book-trigger:hover,
.es-pg .es-hotel-book-cta .zp-cta.es-hotel-book-trigger:hover,
button.btn-primary.es-hotel-book-trigger:hover,
a.btn-primary.es-hotel-book-trigger:hover{
  background:var(--orange-hover,#FF6A3D);
  color:#fff;
  transform:translateY(-2px)
}

.es-hotel-book-cta .btn-primary.es-hotel-book-trigger:focus-visible,
.es-hotel-book-cta .zp-cta.es-hotel-book-trigger:focus-visible,
button.btn-primary.es-hotel-book-trigger:focus-visible{
  outline:2px solid #F4B223;
  outline-offset:2px
}

.es-hotel-qty,
.es-hotel-book-cta .mg-book-controls,
.es-pg .es-hotel-book-cta .mg-book-controls,
.es-pg .es-hotel-qty{
  margin:0;
  padding:14px 16px;
  box-sizing:border-box;
  background:#161A22;
  border:1px solid rgba(255,255,255,.14);
  color:#fff
}

.es-hotel-qty__label,
.es-hotel-book-cta .mg-qty-label,
.es-pg .es-hotel-book-cta .mg-qty-label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px
}

.es-hotel-qty__label .lbl,
.es-hotel-book-cta .mg-qty-label .lbl,
.es-pg .es-hotel-book-cta .mg-qty-label .lbl{
  font-family:'Barlow Condensed',sans-serif;
  font-size:11px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(255,255,255,.55)
}

.es-hotel-qty__price,
.es-hotel-book-cta .mg-qty-price,
.es-pg .es-hotel-book-cta .mg-qty-price{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12px;
  letter-spacing:.08em;
  color:#F4B223;
  white-space:nowrap
}

.es-hotel-qty__row,
.es-hotel-book-cta .mg-qty-row,
.es-pg .es-hotel-book-cta .mg-qty-row{
  display:grid;
  grid-template-columns:42px minmax(64px,1fr) 42px;
  gap:6px;
  align-items:center
}

.es-hotel-qty__btn,
.es-hotel-book-cta .mg-qty-btn,
.es-pg .es-hotel-book-cta .mg-qty-btn{
  appearance:none;
  -webkit-appearance:none;
  margin:0;
  padding:0;
  width:42px;
  height:42px;
  box-sizing:border-box;
  border:1.5px solid rgba(255,255,255,.2);
  background:transparent;
  color:#fff;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  transition:border-color .15s,color .15s
}

.es-hotel-qty__btn:hover:not([disabled]),
.es-hotel-book-cta .mg-qty-btn:hover:not([disabled]),
.es-pg .es-hotel-book-cta .mg-qty-btn:hover:not([disabled]){
  border-color:#FF4713;
  color:#FF4713
}

.es-hotel-qty__btn:focus-visible,
.es-hotel-book-cta .mg-qty-btn:focus-visible{
  outline:2px solid #FF4713;
  outline-offset:2px
}

.es-hotel-qty__btn[disabled],
.es-hotel-book-cta .mg-qty-btn[disabled]{
  opacity:.35;
  cursor:not-allowed;
  border-color:rgba(255,255,255,.12)
}

.es-hotel-qty__input,
.es-hotel-book-cta .mg-qty-row input[type=number],
.es-pg .es-hotel-book-cta .mg-qty-row input[type=number]{
  width:100%;
  height:42px;
  box-sizing:border-box;
  border:1.5px solid rgba(255,255,255,.2);
  background:#101319;
  color:#fff;
  text-align:center;
  font-family:'Barlow Condensed',sans-serif;
  font-size:18px;
  font-weight:600;
  -moz-appearance:textfield
}

.es-hotel-qty__input:focus,
.es-hotel-book-cta .mg-qty-row input[type=number]:focus{
  outline:none;
  border-color:#FF4713
}

.es-hotel-qty__input::-webkit-outer-spin-button,
.es-hotel-qty__input::-webkit-inner-spin-button,
.es-hotel-book-cta .mg-qty-row input[type=number]::-webkit-outer-spin-button,
.es-hotel-book-cta .mg-qty-row input[type=number]::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0
}
