/* ================================
   FOOTER - Responsive Design
   ================================ */

/* Tablette et petit desktop (≤1400px) */
@media (max-width : 1400px) {
    .footer-content {
        gap : 50px;
    }

    .footer-left {
        width : 320px;
    }

    .footer-map {
        width  : 380px;
        height : 200px;
    }

    .footer-right {
        gap : 80px;
    }

    .footer-contact {
        width : 200px;
    }
}

/* Tablette (≤1024px) */
@media (max-width : 1024px) {
    .main-footer {
        padding : 40px 0 30px;
    }

    .footer-content {
        flex-direction : column;
        gap            : 40px;
    }

    .footer-left {
        width : 100%;
    }

    .footer-map {
        width  : 100%;
        height : 250px;
    }

    .footer-right {
        width           : 100%;
        flex-direction  : column;
        gap             : 40px;
    }

    .footer-contact {
        width : 100%;
    }

    .footer-hours {
        width : 100%;
    }

    .footer-bg-bottle {
        right   : -150px;
        top     : -100px;
        width   : 300px;
        height  : 700px;
        opacity : 0.1;
    }

    .footer-separator {
        margin : 40px 0;
    }
}

/* Mobile (≤768px) */
@media (max-width : 768px) {
    .main-footer {
        padding : 35px 0 40px;
    }

    .footer-container {
        padding : 0 16px;
    }

    .footer-content {
        gap : 24px;
    }

    .footer-left {
        gap         : 24px;
        align-items : center;
        width       : 100%;
    }

    .footer-logo-section {
        gap         : 24px;
        align-items : center;
        width       : 100%;
    }

    .footer-logo {
        justify-content : center;
    }

    .footer-logo img {
        height : 69px;
    }

    .footer-logo-reg {
        font-size : 9px;
        top       : -20px;
    }

    .footer-description {
        font-size  : 18px;
        text-align : center;
    }

    .footer-btn-sell {
        padding   : 16px 32px;
        font-size : 15px;
    }

    .footer-map {
        height : 192px;
        width  : 100%;
    }

    .footer-title {
        font-size     : 24px;
        margin-bottom : 8px;
    }

    .shop-title {
        font-size : 16px;
    }

    .shop-address {
        font-size : 16px;
    }

    .footer-phone p {
        font-size : 16px;
    }

    .footer-email a {
        font-size : 16px;
    }

    .hours-title {
        font-size : 16px;
    }

    .hours-text {
        font-size : 16px;
    }

    .footer-right {
        gap : 48px;
    }

    .footer-contact {
        width : 100%;
    }

    .footer-hours {
        width : 100%;
    }

    .footer-contact-content {
        gap : 8px;
    }

    .footer-hours-content {
        gap : 8px;
    }

    .footer-shop-info {
        gap : 0;
    }

    .footer-shop-hours {
        gap : 0;
    }

    .footer-copyright {
        font-size : 16px;
    }

    .footer-legal-link {
        font-size : 16px;
    }

    .footer-credit {
        font-size : 16px;
    }

    .footer-bottom {
        flex-direction : column;
        gap            : 16px;
        align-items    : flex-start;
    }

    .footer-legal {
        flex-direction : column;
        align-items    : flex-start;
        gap            : 40px;
    }

    .footer-bg-bottle {
        display : none;
    }

    .footer-separator {
        margin : 26px 0;
        width  : 100%;
    }
}

/* Petit mobile (≤480px) */
@media (max-width : 480px) {
    .main-footer {
        padding : 35px 0 40px;
    }

    .footer-container {
        padding : 0 16px;
    }

    .footer-logo img {
        height : 60px;
    }

    .footer-logo-reg {
        font-size : 8px;
        top       : -18px;
    }

    .footer-description {
        font-size : 16px;
    }

    .footer-btn-sell {
        padding   : 16px 32px;
        font-size : 15px;
    }

    .footer-map {
        height : 192px;
    }

    .shop-title,
    .footer-phone p,
    .footer-email a,
    .hours-text {
        font-size : 16px;
    }

    .shop-address {
        font-size : 16px;
    }
}
