/**
 * Footer styles — v0.3.0
 * Logo grande invertito + nascondi switcher lingua TranslatePress/WPML/Polylang
 */

.rei-footer {
    background: var(--rei-ink);
    color: var(--rei-white);
    /* v1.28.4: padding-bottom 40px per più respiro sotto la card verde */
    padding: 0 0 40px 0;
    margin-top: 0;
}

.rei-footer__tricolore {
    display: flex;
    height: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.rei-footer__tricolore span { flex: 1; }
.rei-footer__tricolore span:nth-child(1) { background: var(--rei-green); }
.rei-footer__tricolore span:nth-child(2) { background: var(--rei-white); }
.rei-footer__tricolore span:nth-child(3) { background: var(--rei-red); }

.rei-footer .rei-container {
    padding-top: 60px;
}

.rei-footer__cols {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

.rei-footer__title {
    font-size: 1.125rem;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 24px;
    padding-bottom: 8px;
    border-bottom: 2px solid currentColor;
    display: inline-block;
}
.rei-footer__title--yellow { color: var(--rei-yellow); }
.rei-footer__title--green { color: var(--rei-green-light); }
.rei-footer__title--red { color: var(--rei-red-light); }
.rei-footer__title--white { color: var(--rei-white); }

.rei-footer__list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.rei-footer__list li { margin-bottom: 12px; }
.rei-footer__list a {
    color: #BBBBBB;
    text-decoration: none;
    font-size: 16px;
    transition: var(--rei-transition);
}
.rei-footer__list a:hover { color: var(--rei-white); }

.rei-footer__contact strong { color: var(--rei-white); font-weight: 700; }
.rei-footer__contact small { color: #888; }

/* Social */
.rei-footer__social { margin-top: 24px; }
.rei-footer__social-label {
    color: var(--rei-white);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 12px;
}
.rei-footer__social-list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 10px;
}
.rei-footer__social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: var(--rei-white);
    transition: var(--rei-transition);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.rei-footer__social-link--instagram { background: #E1306C; }
.rei-footer__social-link--facebook  { background: #1877F2; }
.rei-footer__social-link--tiktok    { background: #222; }
.rei-footer__social-link--x         { background: #333; }
.rei-footer__social-link:hover { transform: scale(1.1); color: var(--rei-white); }

.rei-footer__divider {
    border: none;
    border-top: 1px solid #2A2A2A;
    margin: 40px 0 0;
}

/* v1.28.1: riga legali GNE-style sotto le 4 colonne footer */
.rei-footer__legal-links {
    margin-top: 36px;
    text-align: center;
    font-size: 16px;
    color: #d4d4d4;
}
.rei-footer__legal-pipe {
    margin: 0 0 14px;
}
.rei-footer__legal-pipe a {
    color: #d4d4d4;
    text-decoration: none;
    padding: 0 6px;
    transition: color 0.2s ease;
}
.rei-footer__legal-pipe a:hover {
    color: #22ca01;
    text-decoration: underline;
}
.rei-footer__legal-pipe span {
    color: #555;
    margin: 0 2px;
}
.rei-footer__legal-access {
    margin: 0;
}
.rei-footer__legal-access a {
    color: #d4d4d4;
    text-decoration: none;
    transition: color 0.2s ease;
}
.rei-footer__legal-access a:hover {
    color: #22ca01;
    text-decoration: underline;
}
@media (max-width: 540px) {
    .rei-footer__legal-pipe a { display: inline-block; padding: 4px 6px; }
    .rei-footer__legal-pipe { line-height: 1.8; }
}

/* ==========================================================================
   v1.27.4: Blocco anagrafica footer — card verde chiaro arrotondata
   - Card centrata dentro il container (non più full-bleed)
   - Sfondo verde chiaro #eafbe7
   - Bordo perimetrale verde scuro #16a300 spesso 2px
   - Angoli arrotondati 20px
   - Copyright unito alla card (stesso background + stessa border)
   ========================================================================== */
.rei-footer__anagrafica {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    background: #eafbe7;
    color: #0B1733;
    padding: 36px 36px;
    margin: 28px 0 0;
    font-size: 13px;
    line-height: 1.55;
    /* Bordo verde scuro + arrotondamento alto */
    border: 2px solid #16a300;
    border-bottom: 1px solid #c5e6bd; /* separatore interno con il copyright */
    border-radius: 20px 20px 0 0;
}
.rei-footer__anagrafica-col {
    flex: 1 1 0;
    padding: 0 22px;
    border-left: 1px solid #b8d9af;
    color: #0B1733;
}
.rei-footer__anagrafica-col:first-child {
    border-left: none;
    padding-left: 0;
}
.rei-footer__anagrafica-col p {
    margin: 0 0 4px;
    color: #0B1733;
}
.rei-footer__anagrafica-col p:last-child { margin-bottom: 0; }
.rei-footer__anagrafica-col p strong {
    color: #0B1733;
    font-weight: 700;
}
.rei-footer__anagrafica-col a {
    color: #0B1733;
    text-decoration: none;
}
.rei-footer__anagrafica-col a:hover {
    color: #16a300;
    text-decoration: underline;
}
.rei-footer__anagrafica-col--logo {
    flex: 0 0 auto;
    min-width: 140px;
    max-width: 180px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-right: 22px;
}
.rei-footer__anagrafica-col--logo .rei-logo-footer-wrap {
    margin: 0;
}
.rei-footer__anagrafica-col--logo .rei-logo-footer {
    /* Logo nero su sfondo verde chiaro per leggibilità */
    filter: brightness(0) saturate(100%);
    opacity: 0.88;
}
/* v1.27.5: se l'utente ha caricato un proprio logo, niente filtro — lo mostriamo coi suoi colori */
.rei-footer__anagrafica-col--logo .rei-logo-footer--custom {
    filter: none;
    opacity: 1;
}
.rei-footer__anagrafica-label {
    color: #5a7a52 !important;
    margin-bottom: 6px !important;
}

@media (max-width: 1100px) {
    .rei-footer__anagrafica {
        flex-wrap: wrap;
        padding: 28px 5vw;
    }
    .rei-footer__anagrafica-col {
        flex: 1 1 30%;
        border-left: none;
        padding: 14px 0;
        margin-top: 0;
        border-top: 1px solid #b8d9af;
    }
    .rei-footer__anagrafica-col:first-child,
    .rei-footer__anagrafica-col:nth-child(2),
    .rei-footer__anagrafica-col:nth-child(3) {
        border-top: none;
        padding-top: 0;
    }
    .rei-footer__anagrafica-col--logo {
        flex: 1 1 100%;
        justify-content: center;
        align-items: center;
        padding: 0 0 22px;
        border-bottom: 1px solid #b8d9af;
        margin-bottom: 14px;
        min-width: 100%;
        max-width: 100%;
        text-align: center;
    }
    /* v1.27.8: logo edge-to-edge della card verde su tablet,
       il margin negativo annulla il padding orizzontale della card */
    .rei-footer__anagrafica-col--logo .rei-logo-footer-wrap {
        width: calc(100% + 10vw);
        margin-left: -5vw;
        margin-right: -5vw;
        display: block;
    }
    .rei-footer__anagrafica-col--logo .rei-logo-footer {
        max-height: none !important;
        max-width: 100%;
        width: 100%;
        height: auto;
        display: block;
        margin: 0 auto;
        object-fit: contain;
    }
}
@media (max-width: 720px) {
    .rei-footer__anagrafica-col {
        flex: 1 1 45%;
    }
    .rei-footer__anagrafica-col:nth-child(3) {
        border-top: 1px solid #b8d9af;
        padding-top: 14px;
    }
}
@media (max-width: 540px) {
    .rei-footer__anagrafica {
        padding: 24px 22px;
    }
    .rei-footer__anagrafica-col {
        flex: 1 1 100%;
        padding: 14px 0;
    }
    .rei-footer__anagrafica-col:nth-child(n+3) {
        border-top: 1px solid #b8d9af;
        padding-top: 14px;
    }
    /* v1.27.8: logo edge-to-edge della card verde su mobile
       (annulla i 22px di padding orizzontale della card) */
    .rei-footer__anagrafica-col--logo {
        padding: 4px 0 22px;
    }
    .rei-footer__anagrafica-col--logo .rei-logo-footer-wrap {
        width: calc(100% + 44px);
        margin-left: -22px;
        margin-right: -22px;
    }
    .rei-footer__anagrafica-col--logo .rei-logo-footer {
        max-height: none !important;
        max-width: 100%;
        width: 100%;
        height: auto;
    }
}

/* Copyright = parte bassa della card anagrafica, stesso verde + bordo */
.rei-footer__copyright-bottom {
    color: #0B1733;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
    background: #eafbe7;
    margin: 0 0 32px;
    padding: 18px 36px 22px;
    border: 2px solid #16a300;
    border-top: none; /* la border-bottom del blocco anagrafica fa da separatore */
    border-radius: 0 0 20px 20px;
}

.rei-footer__legal {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    align-items: flex-start;
}

/* v0.5.0: Logo bianco trasparente senza scheda di sfondo */
.rei-logo-footer-wrap {
    margin-bottom: 20px;
    display: block;
}
.rei-logo-footer {
    max-width: 100%;
    height: auto;
    filter: none;
    opacity: 1;
    background: transparent;
    padding: 0;
    box-shadow: none;
}

.rei-footer__legal-info {
    color: #888;
    font-size: 12px;
    margin: 12px 0 4px;
}
.rei-footer__copyright {
    color: #666;
    font-size: 11px;
    margin: 0;
}

/* ==========================================================================
   v0.3.0: NASCONDI SWITCHER LINGUA (tampone CSS universale)
   Funziona per TranslatePress, WPML, Polylang, Weglot.
   Se serve riabilitarlo, vai nelle impostazioni del plugin specifico.
   ========================================================================== */

/* TranslatePress */
.trp-language-switcher,
.trp-floater-ls,
#trp-floater-ls,
.translatepress-language-switcher,
.trp-ls-shortcode-language { display: none !important; }

/* WPML */
.wpml-ls,
.wpml-ls-statics-footer,
.wpml-ls-statics-shortcode_actions,
.wpml-ls-legacy-list-horizontal,
.wpml-ls-legacy-dropdown,
.wpml-ls-legacy-dropdown-click,
#lang_sel,
#lang_sel_list,
#lang_sel_click { display: none !important; }

/* Polylang */
.lang-item,
.polylang-language-switcher,
.pll-parent-menu-item .sub-menu .lang-item,
ul.pll-switcher,
.pll-switcher-shortcode { display: none !important; }

/* Weglot */
.country-selector,
.weglot-flags,
#weglot-listbox,
.wg-li-flag,
.weglot-container,
.wglanguage-name { display: none !important; }

/* GTranslate */
.gtranslate_wrapper,
.gt_switcher,
.gt_float_switcher { display: none !important; }

/* Pattern aggressivo: qualsiasi elemento con bandiera italiana o testo "Italian"/"Italiano"
   come language selector (last resort) */
[aria-label*="anguage"][aria-label*="elect"],
[aria-label*="ingua"],
.language-selector,
.lang-selector { display: none !important; }

/* RESPONSIVE */
@media (max-width: 1024px) {
    .rei-footer__cols { grid-template-columns: repeat(2, 1fr); gap: 32px; }
}
@media (max-width: 600px) {
    .rei-footer__cols { grid-template-columns: 1fr; }
    .rei-footer__legal { flex-direction: column; }
    .rei-logo-footer { padding: 10px 16px; }
}


/* v: pulsante app nel menu mobile sopra "Sentiamoci" */
.rei-mobile-menu__appbtn-wrap{margin:2px 0 20px !important;text-align:center;}
.rei-mobile-menu__appbtn{display:inline-block;padding:11px 24px;border-radius:999px;font-weight:800;font-size:15px;text-decoration:none;}

/* v: stile fluo pulsante (condiviso con la sezione app degli altri siti) */
.fe-appdl__btn{background:#E8FB50 !important;color:#0B1733 !important;box-shadow:0 0 0 0 rgba(232,251,80,.75), 0 4px 16px rgba(0,0,0,.25);animation:feAppdlPulse 1.6s ease-out infinite;}
@keyframes feAppdlPulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(232,251,80,.75), 0 4px 16px rgba(0,0,0,.25);}70%{transform:scale(1.06);box-shadow:0 0 0 18px rgba(232,251,80,0), 0 4px 16px rgba(0,0,0,.25);}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(232,251,80,0), 0 4px 16px rgba(0,0,0,.25);}}
@media (prefers-reduced-motion: reduce){.fe-appdl__btn{animation:none;}}
@media (max-width:640px){.fe-appdl__btn{white-space:nowrap !important;font-size:14px !important;padding:12px 20px !important;}}
