/* V423 — Final global uniform Booking Terms + Cancellation acceptance layout.
   Visual-only override. No booking, pricing, cutoff, deposit or payment logic changes. */
.v407-policy-acceptance{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:16px 0 14px!important;
  padding:16px!important;
  border:1px solid #d7e0e6!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#173149!important;
  text-align:left!important;
}
.v407-policy-acceptance .v407-policy-row{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  align-items:start!important;
  gap:0 12px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
}
.v407-policy-acceptance .v407-policy-row>input[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  min-height:22px!important;
  margin:2px 0 0!important;
  padding:0!important;
  border-radius:4px!important;
  accent-color:#f56b16!important;
  cursor:pointer!important;
  justify-self:start!important;
  align-self:start!important;
  flex:none!important;
}
.v407-policy-acceptance .v407-policy-copy{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  color:#173149!important;
  font-family:Arial,sans-serif!important;
  font-size:14px!important;
  font-style:normal!important;
  font-weight:700!important;
  line-height:1.5!important;
  letter-spacing:0!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.v407-policy-acceptance .v407-policy-copy .v407-policy-link,
.v407-policy-acceptance .v407-policy-link{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#0b6f98!important;
  font-family:Arial,sans-serif!important;
  font-size:14px!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1.5!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-align:left!important;
  vertical-align:baseline!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
  text-decoration-thickness:1px!important;
  cursor:pointer!important;
}
.v407-policy-acceptance .v407-policy-error{
  display:none!important;
  margin:9px 0 0 34px!important;
  padding:0!important;
  color:#a33122!important;
  font-family:Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.4!important;
  text-align:left!important;
}
.v407-policy-acceptance.is-error{border-color:rgba(163,49,34,.42)!important;background:#fff9f7!important}
.v407-policy-acceptance.is-error .v407-policy-error{display:block!important}
@media(max-width:640px){
  .v407-policy-acceptance{margin:14px 0 12px!important;padding:14px!important;border-radius:13px!important}
  .v407-policy-acceptance .v407-policy-row{grid-template-columns:21px minmax(0,1fr)!important;gap:0 10px!important}
  .v407-policy-acceptance .v407-policy-row>input[type="checkbox"]{width:21px!important;height:21px!important;min-width:21px!important;max-width:21px!important;min-height:21px!important}
  .v407-policy-acceptance .v407-policy-copy,
  .v407-policy-acceptance .v407-policy-link{font-size:13px!important;line-height:1.5!important}
  .v407-policy-acceptance .v407-policy-error{margin-left:31px!important;font-size:11.75px!important}
}
