/**
 * Footer Styles
 * Porto Child Theme
 */

/* Footer bottom: sfondo bianco (override tema Porto #1c2023) */
#footer .footer-bottom {
    background-color: #fff !important;
}

/* Colonna sinistra: INFORMAZIONI DI CONTATTO - testo allineato a sinistra */
.elementor-element[data-id="1d6b235"] {
    flex: 1 1 45% !important;
    min-width: 300px !important;
    text-align: left !important;
}

/* Rimuovi margini dal container .e-con delle informazioni di contatto */
.elementor-element[data-id="1d6b235"].e-con {
    --margin-block-end: 0 !important;
    --margin-block-start: 0 !important;
    --margin-inline-end: 0 !important;
    --margin-inline-start: 0 !important;
    margin-block-end: 0 !important;
    margin-block-start: 0 !important;
    margin-inline-end: 0 !important;
    margin-inline-start: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.elementor-element[data-id="1d6b235"] .elementor-heading-title,
.elementor-element[data-id="1d6b235"] .elementor-widget-container {
    text-align: left !important;
}

/* Colonna destra: LINK UTILI - testo allineato a destra */
.elementor-element[data-id="c49d9e5"] {
    flex: 1 1 45% !important;
    min-width: 300px !important;
    text-align: right !important;
}

/* Rimuovi margini dal container .e-con dei link utili */
.elementor-element[data-id="c49d9e5"].e-con {
    --margin-block-end: 0 !important;
    --margin-block-start: 0 !important;
    --margin-inline-end: 0 !important;
    --margin-inline-start: 0 !important;
    margin-block-end: 0 !important;
    margin-block-start: 0 !important;
    margin-inline-end: 0 !important;
    margin-inline-start: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.elementor-element[data-id="c49d9e5"] .elementor-heading-title,
.elementor-element[data-id="c49d9e5"] .elementor-widget-container {
    text-align: right !important;
}

/* Link nella colonna destra allineati a destra */
.elementor-element[data-id="c49d9e5"] .elementor-widget-container a {
    text-align: right !important;
    display: block;
}

/* Responsive: stack su mobile - allineamento centrato */
@media (max-width: 768px) {
    .elementor-element[data-id="44d4828"] .e-con-inner {
        flex-direction: column !important;
    }
    
    /* Nascondi INFORMAZIONI DI CONTATTO su mobile */
    .elementor-element[data-id="1d6b235"] {
        display: none !important;
    }
    
    .elementor-element[data-id="c49d9e5"] {
        flex: 1 1 100% !important;
        min-width: 100% !important;
        text-align: center !important;
    }
    
    .elementor-element[data-id="c49d9e5"] .elementor-heading-title,
    .elementor-element[data-id="c49d9e5"] .elementor-widget-container {
        text-align: center !important;
    }
    
    .elementor-element[data-id="c49d9e5"] .elementor-widget-container a {
        text-align: center !important;
    }
}

/* Nascondi colonna "CHI SIAMO" nel footer */
.elementor-element[data-id="f7ba29d"] {
    display: none !important;
}

/* Link contatti nel footer - stili base e hover */
.elementor-element[data-id="1d6b235"] .footer-contact-link,
.elementor-element[data-id="1d6b235"] a[href^="tel:"],
.elementor-element[data-id="1d6b235"] a[href^="mailto:"] {
    color: inherit;
    cursor: pointer !important;
    pointer-events: auto !important;
    position: relative;
    z-index: 10 !important;
    transition: color 0.3s ease;
    display: inline !important;
}

/* Indirizzo (maps) - sempre colore inherit, mai rosso */
.elementor-element[data-id="1d6b235"] a[href*="maps"],
.elementor-element[data-id="1d6b235"] a[href*="google.it"] {
    color: inherit !important;
}

.elementor-element[data-id="1d6b235"] a[href*="maps"]:hover,
.elementor-element[data-id="1d6b235"] a[href*="google.it"]:hover {
    color: inherit !important;
}

/* Hover su numeri e email nel footer contatti - solo desktop */
@media (min-width: 769px) {
    .elementor-element[data-id="1d6b235"] .footer-contact-link:hover,
    .elementor-element[data-id="1d6b235"] a[href^="tel:"]:hover,
    .elementor-element[data-id="1d6b235"] a[href^="mailto:"]:hover {
        color: #E74338 !important;
        transition: color 0.3s ease;
    }
}

/* Su mobile: numeri e email già colorati (non c'è hover) */
@media (max-width: 768px) {
    .elementor-element[data-id="1d6b235"] .footer-contact-link,
    .elementor-element[data-id="1d6b235"] a[href^="tel:"],
    .elementor-element[data-id="1d6b235"] a[href^="mailto:"] {
        color: #E74338 !important;
    }
    
    /* Indirizzo sempre inherit anche su mobile */
    .elementor-element[data-id="1d6b235"] a[href*="maps"],
    .elementor-element[data-id="1d6b235"] a[href*="google.it"] {
        color: inherit !important;
    }
}

/* Link utili nel footer - stili base e hover */
.elementor-element[data-id="c49d9e5"] a {
    color: inherit;
    cursor: pointer !important;
    pointer-events: auto !important;
    position: relative;
    z-index: 10 !important;
    transition: color 0.3s ease;
    display: inline !important;
}

/* Hover su link utili nel footer - solo desktop */
@media (min-width: 769px) {
    .elementor-element[data-id="c49d9e5"] a:hover {
        color: #E74338 !important;
        transition: color 0.3s ease;
    }
}

/* Su mobile: link utili già colorati */
@media (max-width: 768px) {
    .elementor-element[data-id="c49d9e5"] a {
        color: #E74338 !important;
    }
}

/* Ottimizzazione spazi footer contatti - tutti margin-bottom a 0 */
.elementor-element[data-id="1d6b235"] * {
    margin-bottom: 0 !important;
}

/* Assicura che i <br> negli orari funzionino */
.elementor-element[data-id="1d6b235"] .elementor-element[data-id="e8f95e5"] .elementor-heading-title {
    white-space: normal !important;
    display: block !important;
    line-height: 1.5 !important;
}

/* Forza i <br> a funzionare anche se altri CSS li sovrascrivono */
.elementor-element[data-id="1d6b235"] .elementor-element[data-id="e8f95e5"] .elementor-heading-title br {
    display: block !important;
    content: "" !important;
    margin-bottom: 0.5em !important;
}

.elementor-element[data-id="1d6b235"] .elementor-heading-title {
    line-height: 1 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.elementor-element[data-id="1d6b235"] .elementor-widget-container {
    margin-bottom: 0 !important;
}

.elementor-element[data-id="1d6b235"] .elementor-element {
    margin-bottom: 0 !important;
}


/* Ottimizzazione spazi footer link utili */
.elementor-element[data-id="c49d9e5"] .elementor-heading-title {
    line-height: 1 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="50da77b"] .elementor-heading-title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="d8a8975"],
.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="c35a0d8"],
.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="ab123a0"],
.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="2efee5b"] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Rimuovi margin-bottom dai div dei link utili */
.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="d8a8975"] .elementor-heading-title,
.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="c35a0d8"] .elementor-heading-title,
.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="ab123a0"] .elementor-heading-title,
.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="2efee5b"] .elementor-heading-title {
    margin-bottom: 0 !important;
}

.elementor-element[data-id="c49d9e5"] .elementor-element[data-id="5fb83d8"] .elementor-heading-title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/**
 * Footer Optimization Styles
 * Ottimizza e compatta il footer per ridurre l'altezza
 * Porto Child Theme
 */

/* Container principale footer - layout flex a 2 colonne con padding */
.elementor-element[data-id="44d4828"] .e-con-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

/* Colonne footer - riduci spaziatura */
.elementor-element[data-id="44d4828"] .e-con-full.e-con-child {
    margin-bottom: 15px !important;
    padding: 0 10px !important;
}

/* Heading H4 - riduci margini */
.elementor-element[data-id="44d4828"] h4.elementor-heading-title {
    font-size: 16px !important;
}

/* Heading div - riduci margini */
.elementor-element[data-id="44d4828"] .elementor-heading-title:not(h4) {
    margin-top: 8px !important;
    margin-bottom: 5px !important;
    font-size: 14px !important;
}

/* Widget container - riduci padding */
.elementor-element[data-id="44d4828"] .elementor-widget-container {
    padding: 5px 0 !important;
}

/* Bottoni - riduci margini e padding */
.elementor-element[data-id="44d4828"] .btn {
    margin: 5px 0 !important;
    padding: 8px 15px !important;
    font-size: 13px !important;
}

/* Spacer - riduci altezza */
.elementor-element[data-id="44d4828"] .elementor-spacer {
    height: 10px !important;
}

/* Social links - layout orizzontale */
.elementor-element[data-id="44d4828"] .share-links {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

.elementor-element[data-id="44d4828"] .share-links a {
    margin: 0 !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-indent: -9999px !important; /* Nasconde il testo */
    overflow: hidden !important;
    position: relative !important;
}

/* Mostra le icone Font Awesome nel ::before */
.elementor-element[data-id="44d4828"] .share-links a::before {
    text-indent: 0 !important;
    font-size: 14px !important;
    position: absolute !important;
    z-index: 2 !important;
}

/* Rimuovi colore di sfondo in hover */
.elementor-element[data-id="44d4828"] .share-links a:hover {
    background-color: transparent !important;
    background: transparent !important;
}

/* Nascondi completamente il link WhatsApp nascosto */
.elementor-element[data-id="44d4828"] .share-links a.share-whatsapp[style*="display:none"],
.elementor-element[data-id="44d4828"] .share-links a.share-whatsapp[style*="display: none"],
a.share-whatsapp[style*="display:none"],
a.share-whatsapp[style*="display: none"],
.hare-link a.share-whatsapp[style*="display:none"],
.hare-link a.share-whatsapp[style*="display: none"],
a.hare-what.app[style*="display:none"],
a.hare-what.app[style*="display: none"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    pointer-events: none !important;
}

/* Nascondi solo il testo WhatsApp se presente (per link visibili) */
.elementor-element[data-id="44d4828"] .share-links a.share-whatsapp:not([style*="display:none"]):not([style*="display: none"]) {
    text-indent: -9999px !important;
    overflow: hidden !important;
}

.elementor-element[data-id="44d4828"] .share-links a.share-whatsapp:not([style*="display:none"]):not([style*="display: none"])::before {
    text-indent: 0 !important;
    font-size: 14px !important;
}

/* Payment icons - compatta */
.elementor-element[data-id="44d4828"] .payment-icons {
    margin: 10px 0 !important;
}

.elementor-element[data-id="44d4828"] .payment-icon {
    margin: 0 5px !important;
}

.share-links a:before{
    left: unset !important;
    right: unset !important;
    top: unset !important;
    bottom: unset !important;
    height: unset !important;
}

/* Testo editor - riduci line-height */
.elementor-element[data-id="44d4828"] .elementor-widget-text-editor p {
    line-height: 1.5 !important;
    margin-bottom: 10px !important;
}

/* Immagini nel testo - riduci dimensioni */
.elementor-element[data-id="44d4828"] .elementor-widget-text-editor img {
    max-width: 80px !important;
    height: auto !important;
    margin-right: 10px !important;
    margin-bottom: 5px !important;
}

/* Responsive - ulteriore compattazione su mobile */
@media (max-width: 768px) {
    .elementor-element[data-id="44d4828"] .e-con-inner {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }
    
    .elementor-element[data-id="44d4828"] .e-con-full.e-con-child {
        margin-bottom: 20px !important;
    }
    
    .elementor-element[data-id="44d4828"] h4.elementor-heading-title {
        margin-top: 10px !important;
        margin-bottom: 8px !important;
        font-size: 15px !important;
    }
    
    .elementor-element[data-id="44d4828"] .btn {
        margin: 4px 0 !important;
        padding: 7px 12px !important;
        font-size: 12px !important;
    }
    
    /* Social links su mobile - centrati */
    .elementor-element[data-id="44d4828"] .share-links {
        justify-content: center !important;
        gap: 15px !important;
    }
    
    .elementor-element[data-id="44d4828"] .share-links a {
        width: 36px !important;
        height: 36px !important;
    }
}

/* Partita IVA rossa su mobile */
@media (max-width: 768px) {
    .footer-piva-mobile,
    .elementor-heading-title .footer-piva-mobile {
        color: #E74338 !important;
    }
    
    /* Assicura che il copyright vada a capo correttamente su mobile */
    .elementor-element[data-id="6002eef"] .elementor-heading-title {
        white-space: normal !important;
        line-height: 1.5 !important;
    }
    
    /* Mostra <br class="mobile"> solo su mobile */
    .elementor-heading-title br.mobile {
        display: block !important;
        content: "" !important;
        margin-bottom: 0.3em !important;
    }
}

/* Nascondi <br class="mobile"> su desktop */
@media (min-width: 769px) {
    .elementor-heading-title br.mobile {
        display: none !important;
    }
    
    /* Mostra il trattino "-" solo su desktop */
    .elementor-heading-title span.desktop {
        display: inline !important;
    }
}

/* Nascondi il trattino "-" su mobile */
@media (max-width: 768px) {
    .elementor-heading-title span.desktop {
        display: none !important;
    }
}
