/* Mobile a11y safety net (task #44). Two goals:
   1. Tap targets >= 44x44px below 992px (WCAG 2.5.5).
   2. Body copy >= 14px below 992px so text is readable without zoom.
   Scoped tightly so existing desktop layout is untouched. */

@media (max-width: 991.98px) {
  /* Body copy minimum 14px. Anything inheriting from body inherits the floor. */
  body { font-size: max(14px, 1rem); }

  /* Footer + microcopy areas tend to have small fonts. */
  .footer p,
  .footer li,
  .footer a,
  .footer .copyright,
  .top-info-bar .info-item,
  .top-info-bar .lang-link { font-size: max(13px, 0.85rem); }

  /* Buttons and primary CTAs get a comfortable minimum. */
  .btn,
  .btn-primary,
  .btn-outline,
  .header-booking-btn,
  .mobile-sticky-cta,
  .bm-cta { min-height: 44px; padding-top: 12px; padding-bottom: 12px; }

  /* Footer + nav links: comfortable tap area without breaking inline layouts. */
  .footer a,
  .pagination a,
  .breadcrumb a { min-height: 44px; display: inline-flex; align-items: center; }

  /* Social icons in footer / share blocks. */
  .footer .socials a,
  .footer-socials a,
  .share-buttons a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }

  /* Form inputs - already 16px from task #118 to prevent iOS zoom. Reinforce. */
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="search"],
  textarea,
  select { font-size: 16px; min-height: 44px; }
  textarea { min-height: 88px; }

  /* Cookie banner buttons */
  .cookie-consent button,
  .cookie-settings__btn { min-height: 44px; padding: 12px 16px; }

  /* Disable theme auto-sticky header on mobile. The header normally flips from
     position: static to position: fixed at scroll > 450px, which collapses its
     space and jumps the body up by ~100px. Top-info-bar with phone/email is
     visible at the top of the page anyway; users don't need a re-appearing nav. */
  .header.is-sticky {
    position: static !important;
    animation: none !important;
    box-shadow: none !important;
    top: auto !important;
    background-color: transparent !important;
  }
}
