/*
* @author  Agence Dn'D <contact@dnd.fr>
* @license https://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
* @link    https://www.dnd.fr/
*/

/* Text and social media */

.section-footer__row-container {
    &:first-of-type {
        @media (max-width: 767.98px) {
            border-bottom: 1px solid var(--primary-500);
        }
    }
}

.section-footer__row--blocks {
    margin-block: 48px;

    @media (min-width: 768px) {
        display: grid;
        grid-template-columns: 1fr auto auto 1fr;
        gap: 40px;
        margin-block: 40px;
    }

    &,
    .section-footer__row__col:not(:last-child) {
        padding: 0;
    }

    .section-footer__row__col:not(:last-child) {
        margin-block-end: 24px;

        @media (min-width: 768px) {
            margin-block-end: 0;
        }
    }

    .section-footer__menu-block {
        &.section-footer__menu-block--collapse:has(+.section-footer__menu-block--collapse) {
            margin: 0;
        }
    }

    .section-footer__newsletter-block {
        padding-block-start: 0;

        .section-footer__title,
        .section-footer__text,
        .signup-form {
            margin-block-end: 24px;
        }

        .signup-form__button {
            width: 100%;

            .signup-form__button-label {
                color: var(--secondary-950);
            }
        }

        .section-footer__consent-text {
            font-size: var(--base-text-size-xs);
            line-height: var(--base-text-size-ml);
        }
    }
}

.section-footer__logo-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-block-end: 24px;

    .section-footer__text-block__image {
        margin-block-end: 0;
    }

    @media (min-width: 768px) {
        justify-content: flex-start;
        gap: 24px;
    }
}

.section-footer__text-block__social {
    .social {
        gap: 8px;

        & > li {
            padding: 12px;
            background-color: var(--secondary-50);
            border-radius: 999px;
        }

        a {
            margin: 0;
            color: var(--secondary-950);
        }
    }
}

.section-footer__text-block--with-text {
    @media (min-width: 768px) {
        max-width: none;
    }
}

.certifications-badges {
    display: flex;
    gap: 8px;

    .certifications-badges__link {
        display: inline-block;
        
        img {
            max-height: 80px;
            width: auto;
        }
    }
}

.section-footer__title {
    margin-block-end: 24px;
    font-size: var(--base-text-size-ml);
    font-weight: var(--font-weight-700);
}

.section-footer__menu-block__menu {
    font-size: var(--base-text-size-m);
}

/* Footer lower */

.section-footer__row-lower {
    padding-block: 48px;

    @media (min-width: 768px) {
        flex-direction: column-reverse;
        padding-block: 24px;
    }

    .section-footer__row__col {
        padding-block: 0;

        @media (min-width: 768px) {
            display: flex;
            justify-content: space-between;
            gap: 60px;
        }

        &:first-of-type {
            margin-block-end: 24px;

            @media (min-width: 768px) {
                justify-content: space-between;
            }
        }
    }

    .localization__grid {
        @media (max-width: 767.98px) {
            flex-direction: column;
        }
    }

    .localization__selector {
        @media (max-width: 767.98px) {
            width: 100%;
            margin: 0 0 16px;
        }
    }

    .section-footer__payment-icons {
        margin-block-end: 0;
    }

    .copyright,
    .section-footer__lower-menu__list {
        font-size: var(--base-text-size-m);
        font-weight: var(--font-weight-700);
    }

    .copyright {
        font-weight: var(--font-weight-700);
        margin-block-end: 24px;

        @media (min-width: 768px) {
            flex: 0 0 auto;
            white-space: nowrap
        }
    }

    .section-footer__lower-menu {
        margin: 0;
    }

    .section-footer__lower-menu__list {
        display: flex;
        flex-direction: column;
        gap: 24px;

        @media (min-width: 768px) {
            flex-direction: row;
            flex-wrap: wrap;
            column-gap: 60px;
        }

        &,
        & > li {
            margin: 0;
        }
    }
}
