@media (max-width:900px){
  .site-header .brand,.site-header .admin-link,.site-header .cart-link{display:inline-flex;min-height:44px;align-items:center}
  .site-header .nav-toggle{width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:8px!important}
  .site-header nav a,.main-nav a,.site-nav a{min-height:44px;align-items:center}
  .site-footer a,.site-footer button,.footer-links a,.footer-links button,.footer-cols a{display:inline-flex;min-height:44px;align-items:center;padding-block:8px}
  .reserve-form input,.reserve-form select,.reserve-form textarea,.card-form input,.card-form select,.card-form textarea,.booking-form input,.booking-form select,.booking-form textarea,.availability-form input,.availability-form select,.availability-form button,.availability-bar input,.availability-bar select,.availability-bar button,.filters input,.filters select,.contact-form input,.contact-form textarea{min-height:44px}
  .reserve-form select,.card-form select,.booking-form select,.availability-form select,.availability-bar select{padding-block:10px}
  .text-link,.footer-base a{min-height:44px;display:inline-flex;align-items:center}
}

@media (max-width:640px){
  .site-footer{padding-bottom:max(28px,env(safe-area-inset-bottom))}
  .footer-links,.footer-bottom,.footer-base{row-gap:4px}
}
