/**
 * L'Aquarium — mobile (≤991px)
 */

@media (max-width: 991.98px) {
    body {
        padding-bottom: env(safe-area-inset-bottom);
    }

    #header {
        padding-left: env(safe-area-inset-left);
        padding-right: env(safe-area-inset-right);
    }

    /* Hero : plus haut sur mobile (tout en gardant le plein écran) */
    #hero {
        min-height: max(100vh, 560px);
        min-height: max(100dvh, 560px);
    }

    /* Hero hors #main : éviter deux colonnes ~50 % (col-lg-* seuls sous le breakpoint lg) */
    #hero .row > [class*="col-lg-"],
    #hero .row > [class*="col-md-"],
    #hero .row > [class*="col-sm-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /* Sections à colonnes lg/md : pleine largeur ≤991px */
    #main .row > [class*="col-lg-"],
    #main .row > [class*="col-md-"],
    #main .row > [class*="col-sm-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /* Footer hors #main : col-md-6 restait en deux colonnes sur tablette */
    #footer .footer-top .row > [class*="col-lg-"],
    #footer .footer-top .row > [class*="col-md-"],
    #footer .footer-top .row > [class*="col-sm-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    #book-a-table form .row > [class*="col-"],
    section.contact form .row > [class*="col-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    #hero h1,
    #hero h2 {
        font-size: 1.6rem !important;
        line-height: 1.25;
    }

    #hero .btns {
        flex-direction: column;
        gap: 12px;
        align-items: stretch;
    }

    #hero .btns a {
        text-align: center;
        min-height: 48px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .menu .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    #menu-flters {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px;
        padding: 0 4px;
    }

    #menu-flters li {
        padding: 10px 14px !important;
        margin: 4px !important;
        font-size: 0.9rem;
    }

    .menu .menu-item {
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    .menu-img {
        width: 80px !important;
        height: 80px !important;
        object-fit: cover;
    }

    .contact .php-email-form .form-control,
    section.contact input.form-control,
    section.contact textarea.form-control,
    section.contact select.form-control {
        min-height: 48px;
        font-size: 16px;
    }

    section.contact textarea.form-control {
        min-height: 140px;
    }

    section.contact .text-center button[type="submit"] {
        width: 100%;
        min-height: 48px;
    }

    #footer .footer-links ul {
        margin-bottom: 1.25rem;
    }

    iframe[src*="google.com/maps"] {
        height: 240px !important;
    }
}
