/* Scoped usability refinements; retain the established page layouts and branding. */
.navbar-toggler { min-width: 44px; min-height: 44px; }
#desktopFindAVenue h3 { text-align: center; }
.modal .close { min-width: 44px; min-height: 44px; }
#esAuthLoadNotice, #esSearchLoadNotice, #esFilterLoadNotice, #esQuoteLoadNotice {
    position: fixed;
    top: 12px;
    left: 12px;
    right: 12px;
    width: auto;
    max-width: 560px;
    max-height: calc(100dvh - 24px);
    overflow-y: auto;
    margin: 0 auto;
    z-index: 1060;
    box-shadow: 0 8px 30px rgba(5,25,47,.18);
}
#venueImagesCarousel .slick-custom-arrow,
#venueImagesCarousel .slick-custom-arrow:hover,
#venueImagesCarousel .slick-custom-arrow:focus {
    color: #05192f !important;
    font-size: 18px !important;
    line-height: 1;
}
#venueImagesCarousel .slick-custom-arrow::before { display: none; }
#venueImagesCarousel .slick-custom-arrow:focus-visible { outline: 3px solid #05192f; outline-offset: 2px; }
#venueImagesCarousel .es-venue-photo-fallback img { object-fit: contain; background: #05192f; }
#esFilterReset { min-height: 44px; margin-left: auto; margin-right: 12px; }
#login_form .checkbox label { min-height: 44px; display: flex; align-items: center; gap: 8px; }
#login_form .btn { min-height: 44px; }
[data-location-hint]:not(.sr-only) { background: #fff; color: #05192f; border-radius: 8px; padding: 8px 12px; position: relative; z-index: 1; }
/* iOS zooms into small editable controls on focus. Keep existing large fields
   at their original size and leave the viewport free for pinch-to-zoom. */
@media (max-width: 991.98px), (pointer: coarse) {
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="file"]):not([type="color"]):not([type="image"]):not(.form-control-lg),
    select:not(.form-control-lg),
    textarea {
        font-size: 16px !important;
        font-size: max(16px, 1em) !important;
    }
}
/* Keep venue navigation reachable while browsing on phones and compact tablets.
   Sticky stays in normal flow and below Bootstrap's modal/backdrop layers. */
@media (max-width: 991.98px) {
    .es-venue-page > .header_sec {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1030;
        background: #fff;
    }
}
@media (max-width: 767.98px) {
    .es-venue-page > .header_sec .navbar-collapse {
        max-height: calc(100vh - 80px);
        max-height: calc(100dvh - 80px);
        overflow-y: auto;
    }
}
@media (max-width: 575.98px) {
    #desktopFindAVenueButtons { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
    #desktopFindAVenueButtons .btn { min-height: 44px; margin: 0 !important; }
    #esMobileHowItWorks .bwny-card-btn,
    #esMobileDiscoverWhatsPossible .bwny-card-btn,
    #esMobileDiscoverWhatsPossible .bwny-btn-wrapper { width: 100%; min-width: 0; }
    #esMobileDiscoverWhatsPossible { height: auto; }
    #mobileHomeNavigation .btn, .navbar-collapse .nav-link, .navbar-collapse .dropdown-item {
        min-height: 44px;
    }
    #mobileHomeNavigation .btn { display: flex; align-items: center; justify-content: center; }
    .modal input.form-control, .modal select.form-control, .modal textarea.form-control { font-size: 16px; min-height: 44px; }
    #esModalSearch .sectionSearchByLocation { width: 100%; min-height: 48px; }
    #esModalSearch > .modal-dialog .modal-body > .col-md-12,
    #esModalSearch .modal-body .container { padding-left: 0; padding-right: 0; }
    #esModalRequestQuote .modal-footer, #esModalSearchFilters .modal-footer { display: flex; gap: 8px; }
    #esModalRequestQuote .modal-footer button, #esModalSearchFilters .modal-footer button { flex: 1; margin: 0; }
    #esNoResultsFoundMsg .btn { width: 100%; min-height: 44px; }
    #popUp .modal-footer { display: flex; gap: 8px; }
    #popUp .modal-footer button { flex: 1; min-height: 44px; margin: 0; }
    #esMobileRequestQuoteBottom { padding-bottom: max(12px,env(safe-area-inset-bottom)); }
    .venue-closer-look .bwny-sidebar-btn, .venue-closer-look #esReviewsBtnLeaveAReview { width: 100% !important; max-width: 100%; }
    #esMobileRequestQuoteBottom button { width: 100% !important; max-width: 100%; margin: 0 !important; }
}
