.lidfsg-footer {
    background-color: #1B3A4B;
    background-image: url("/wp-content/uploads/2026/08/IDF_Glace_Fonds_1920x1080_04-scaled.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #E5E7F0;
    font-family: 'Plus Jakarta Sans', sans-serif;
}
.lidfsg-footer *, .lidfsg-footer *::before, .lidfsg-footer *::after { box-sizing: border-box; }

.lidfsg-footer__inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 48px 24px 32px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.lidfsg-footer__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    flex-wrap: wrap;
}

/* ---- Colonne gauche : logo + coordonnées ---- */
.lidfsg-footer__left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}

.lidfsg-footer__logo img {
    height: 96px !important;
    width: auto !important;
    display: block;
}

/* ---- Bas de page : mentions légales, pleine largeur ---- */
.lidfsg-footer__bottom {
    text-align: left;
    font-size: 13px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.75);
    padding-top: 24px;
}

.lidfsg-footer__bottom a {
    color: rgba(255, 255, 255, 0.75) !important;
    text-decoration: underline;
    transition: color 0.2s;
}
.lidfsg-footer__bottom a:hover { color: #fff !important; }

.lidfsg-footer__contact {
    text-align: left;
    font-size: 13px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
}

.lidfsg-footer__contact-titre {
    font-family: var(--lidfsg-font-title);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #fff;
    margin: 0 0 8px;
}

.lidfsg-footer__contact p {
    margin: 0 0 6px;
}
.lidfsg-footer__contact p:last-child { margin-bottom: 0; }

.lidfsg-footer__contact a {
    color: #fff;
    font-weight: 600;
    text-decoration: none;
}
.lidfsg-footer__contact a:hover { text-decoration: underline; }

/* ---- Colonne droite : boutons + réseaux ---- */
.lidfsg-footer__right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 16px;
}

.lidfsg-footer__buttons {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.lidfsg-footer__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 22px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.2s, background 0.2s, color 0.2s;
}
.lidfsg-footer__btn:hover { transform: translateY(-2px); }

.lidfsg-footer__btn--contact {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    border: 1.5px solid rgba(255, 255, 255, 0.5);
}
.lidfsg-footer__btn--contact:hover {
    background: #fff;
    color: #1B3A4B;
    border-color: #fff;
}

.lidfsg-footer__btn--club {
    background: #fff;
    color: var(--lidfsg-red);
    border: 1.5px solid #fff;
}
.lidfsg-footer__btn--club:hover {
    background: #f0f0f0;
    color: var(--lidfsg-red);
}

.lidfsg-footer__socials { display: flex; gap: 10px; }

.lidfsg-footer__socials a {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1.5px solid rgba(255, 255, 255, 0.5);
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    transition: background 0.2s, color 0.2s, border-color 0.2s, transform 0.2s;
}
.lidfsg-footer__socials a:hover {
    background: #fff;
    color: #1B3A4B;
    border-color: #fff;
    transform: translateY(-2px);
}
.lidfsg-footer__socials svg { width: 16px; height: 16px; fill: currentColor; }

@media (max-width: 700px) {
    .lidfsg-footer__row {
        flex-direction: column;
        align-items: flex-start;
        gap: 28px;
    }
    .lidfsg-footer__right {
        align-items: flex-start;
        width: 100%;
    }
    .lidfsg-footer__buttons { width: 100%; }
    .lidfsg-footer__btn { flex: 1; text-align: center; }
}
