/* Mobile reservation card: constrain the form, not just its visible overflow.
   Explicit zero minimums avoid intrinsic flex/grid sizing from native controls. */
@media (max-width:849px){
 body.zet-v4 .zhs-res .zhs-card{
  display:block!important;width:100%!important;min-width:0!important;
  max-width:100%!important;box-sizing:border-box!important;
 }
 body.zet-v4 .zhs-res #zhsForm{
  display:block!important;flex:none!important;align-self:stretch!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  margin:0!important;box-sizing:border-box!important;
 }
 body.zet-v4 #zhsForm .zhs-grid{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  box-sizing:border-box!important;
 }
 body.zet-v4 #zhsForm :is(.zhs-field,.zhs-split,.zhs-ctrl,.zhs-cta){
  min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
 }
 body.zet-v4 #zhsForm :is(.zhs-field,.zhs-split,.zhs-cta){width:100%!important}
 body.zet-v4 #zhsForm .zhs-split{
  display:grid!important;grid-template-columns:minmax(0,1fr) 100px!important;
 }
 body.zet-v4 #zhsForm .zhs-cta .zhs-btn{
  flex:0 1 100%!important;width:100%!important;min-width:0!important;
  max-width:100%!important;box-sizing:border-box!important;
 }
}
@media (max-width:359px){
 body.zet-v4 #zhsForm .zhs-split{grid-template-columns:minmax(0,1fr) 88px!important}
}
