@media (orientation: portrait) and (max-width: 991px) {

    /* Enable scrolling on mobile devices */
    html {
        position: static;
        height: auto;
    }

    body {
        overflow: auto !important;
        height: auto;
        padding-bottom: 0;
    }

    section,
    .free-area {
        overflow: auto;
        height: auto;
        min-height: auto;
        flex: none;
    }

    .free-area .container-xxl {
        height: auto;
        overflow: visible;
        flex: none;
    }

    .free-area .swiper {
        height: auto;
    }

    header {
        overflow: hidden;
        align-items: flex-start;
    }

    header .cerca-pv {
        height: 3rem;
        border-radius: 0 !important;
        border: 0;
        border-top: 1px solid #eee;
    }

    .top_cerca {
        display: none;
    }

    #punti_vendita {
        padding: 0.5rem;
        bottom: 0;
        margin: 0 !important;
        z-index: 10;
        box-shadow: 0 0 12px 0 rgb(0 0 0 / 30%);
        border-radius: 0 !important;
    }

    #map {
        position: absolute !important;
        top: 2rem;
        z-index: 0;
        border-radius: 0 !important;
        display: none;
    }

    .volantino {
        max-width: 6rem;
    }

    .list-group-item>div>img {
        max-height: 3rem;
    }

    .infoWindow>a.tovol {
        /* display: none; */
    }

    .infoWindow img {
        max-width: 7rem;
    }

    .infoWindow {
        padding: 0 !important;
    }

    .list-group-item {
        min-height: 10rem;
    }

    .indirizzo {
        text-align: center;
    }

    /*.indirizzo img {
        display: none;
    }*/
}

/* Enable scrolling on all mobile and tablet devices (below lg breakpoint) */
@media (max-width: 991px) {
    html {
        position: static;
        height: auto;
    }

    body {
        overflow: auto !important;
        height: auto;
        padding-bottom: 0; /* Remove desktop footer padding */
    }

    section,
    .free-area {
        overflow: auto;
        height: auto;
        min-height: auto;
        flex: none;
    }

    .free-area .container-xxl {
        height: auto;
        overflow: visible;
        flex: none;
    }

    .free-area .swiper {
        height: auto;
    }

    /* Mobile/Tablet spacing adjustments */
    .mobile-view .title {
        margin-bottom: 0 !important; /* Remove bottom margin completely */
        min-height: auto !important; /* Remove min-height constraint */
    }

    .mobile-view.row {
        row-gap: 3rem !important; /* More spacing between flyers */
        padding-bottom: 5rem !important; /* Space above footer to prevent overlap */
    }
}