/*
Theme Name: enfold Child
Description: A <a href='http://codex.wordpress.org/Child_Themes'>Child Theme</a> for the Enfold Wordpress Theme. If you plan to do a lot of file modifications we recommend to use this Theme instead of the original Theme. Updating wil be much easier then.
Version: 1.0
Author: Kriesi
Author URI: http://www.kriesi.at
Template: enfold
*/
/* FORZA rimozione linea header trasparente PRIMA dello scroll */
/* Elimina spazio header trasparente iniziale */
/* ==============================
   Header trasparente: elimina spazio iniziale
   ============================== */
/* elimina lo spazio sotto l'header prima dello sticky */
/* rende trasparente lo spacer sopra il contenuto */
/* overlay glassy PRIMA dello scroll */
/* Forza trasparenza header glassy anche senza scroll */
/* Rende trasparente lo sfondo header e header_meta */
/* Trasparenza header e top bar */
/* ==============================
   Header Trasparente + Top Bar
   Centra logo e menu in tutte le situazioni
   ============================== */

/* Container header come flex per centraggio verticale */
/* Overlay trasparente sopra la barra bianca prima dello scroll */
/* Maschera visivamente la barra bianca prima dello scroll */
/* Rende il clone trasparente senza toccare i link */
/* Crea un overlay sopra la barra bianca */


.single-practice-areas .featured-image {
  max-width: 720px;   /* scegli tu: 600–800 */
  margin: 0 auto 30px;
}

.single-practice-areas .featured-image img {
  width: 100%;
  height: auto;
  max-height: 420px;
  object-fit: cover;
}
/* Centrare il titolo custom delle pagine CPT Practice Areas */
.single-practice-areas .post-title-custom,
.single-practice-area .post-title-custom {
    display: flex !important;
    justify-content: center !important;
    align-items: center;
    text-align: center !important;
}
/* Solo per CPT Practice Areas */
.single-practice-areas .post-content p,
.single-practice-area .post-content p,
.single-practice-areas .wpb_text_column.wpb_content_element p,
.single-practice-area .wpb_text_column.wpb_content_element p {
    font-size: 18px !important;       /* modifica qui la dimensione */
    line-height: 1.6 !important;      /* altezza riga consigliata */
    word-spacing: normal !important;
    letter-spacing: normal !important;
}
/* toglie cerchio overlay in link competenze */
.wpupg-grid .image-overlay,
.wpupg-grid .image-overlay-inside,
.wpupg-grid .avia-image-overlay {
    display: none !important;
}





/* da css rapido */
#top.page-id-431 #main,
#top.page-id-431 #av_section_2.avia-section {
	background-color: transparent;
}
form.wpcf7 .form-row.last.button input[type="submit"] {
    width: auto;      /* riduce il pulsante alla larghezza del testo */
    max-width: 200px; /* opzionale: larghezza massima */
    display: inline-block;
}
/* senza questo menu diventa trasparente allo scroll */
#header:not(.av_header_transparency) {

background-color:rgba(255,255,255,1);

}
/* sembra non faccia nulla */


/* HEADER */
/* --- GESTIONE SFONDO HEADER PRINCIPALE --- */
/* --- GESTIONE COLORI TESTO MENU INIZIALE (Trasparente) --- */
/* IMPOSTA IL COLORE VISIBILE QUI (es. bianco se sfondo scuro) */
/* NULLA */


/* --- GESTIONE COLORI TESTO TOP BAR INIZIALE (Trasparente) --- */
/* IMPOSTA IL COLORE VISIBILE QUI (es. bianco se sfondo scuro) */
/* non fa sparire scritta top */
#top #header_meta, 
#top #header_meta a,
#top #header_meta .phone-info,
#top #header_meta .social_bookmarks li a {
    color: #000000 !important; /* COLORE INIZIALE (es. bianco) */
}



/* ----------------------------------------------------------- */
/* I colori per lo scroll dovrebbero essere già corretti: NERO */
/* ----------------------------------------------------------- */
/* ===============================
   MENU TRASPARENTE INIZIALE (Vetro Fumo di Londra)
   =============================== */




/* Impedisce a Enfold di impostare il colore su trasparente del menu all'avvio */
#top #header.av_header_transparency .av-main-nav > li > a .avia-menu-text,
#top #header.av_header_transparency .av-main-nav > li > a .avia-menu-subtext {
    color: #ffffff !important; /* Bianco lucido */
    text-shadow: 1px 1px 2px rgba(0,0,0,0.7); /* migliora leggibilità su sfondo scuro */
}

/* Menu sticky (quando si scorre) */


/* Menu trasparente con effetto vetro più evidente - Regola cambiando il valore 'blur'*/
#top #header.av_header_transparency {
    background-color: rgba(0,0,0,0.25); /* leggermente più scuro */
    backdrop-filter: blur(2px); /* aumenta la sfocatura */
    -webkit-backdrop-filter: blur(2px); /* compatibilità Safari */
}	


/* Codice Sfondo (riportato per completezza) */
body #top #header_main {
    background-color: transparent !important;
    transition: background-color 0.4s ease-in-out !important;
}
body #top #header_main.header-scrolled {
    background-color: rgba(255, 255, 255, 1) !important;
}


.home-welcome-text {
    color: #667667;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    /* font-size: 16px;  ← RIMOSSO */
}

.my-left-block {
    text-align: left !important;       /* forzare allineamento */
    font-family: 'Montserrat' !important; /* forzare font */
}



/* Aggiungi un'icona FontAwesome sotto la voce del menu attiva */
#top .av-main-nav .current-menu-item > a {
    display: inline-block; /* Imposta il comportamento inline-block per la voce */
    padding-bottom: 10px; /* Aggiungi uno spazio inferiore per evitare la sovrapposizione */
    text-align: center;   /* Centra il testo (opzionale) */
}

/* Forza la riga sotto la voce attiva del menu, come sottolineato, con l'header minimal non è prevista */
/* Ripristina la riga sotto la voce di menu attiva */
#top .av-main-nav .current-menu-item > a {
    border-bottom: 2px solid #0077B5 !important; /* Imposta il colore e lo spessore della riga */
    padding-bottom: 10px; /* Assicura che la riga non vada a sovrapporsi al testo */
}
/* Fine css rapido */


/* Forza la trasparenza per tutta l'area dell'header (incluso logo e menu) */
#header.av_header_shrinking, 
#header.header-scrolled { 
  background-color: rgba(0, 0, 0, 0) !important; /* Trasparenza totale */ 
  box-shadow: none !important; /* Rimuove qualsiasi ombra */ }
/* Forza la trasparenza sull'header per la home */
#header.av_header_transparency {
    background-color: rgba(0, 0, 0, 0) !important;  /* Trasparenza totale */
}



/* Mantieni la trasparenza anche dopo lo scroll */
#header.av_header_shrinking, 
#header.header-scrolled {
    background-color: rgba(0, 0, 0, 0) !important;  /* Trasparenza totale */
    box-shadow: none !important;                     /* Rimuove qualsiasi ombra */
}

/* Ridurre l'altezza del menu quando lo scroll è attivo */
#header.av_header_shrinking .av_main_nav_header,
#header.header-scrolled .av_main_nav_header {
    height: 60px !important; /* Imposta l'altezza desiderata */
}





/*Add your own styles here:*/
/* Forza la trasparenza su tutte le parti dell'header, container e top bar */

/* Header scuro quando diventa sticky */
/* header trasparente sopra la pagina */


/* =========================
   HEADINGS TYPOGRAPHY AVC – ENFOLD
   ========================= */
/* =========================
   TRASFORMAZIONE TYPOGRAPHY COME AVC PER ENFOLD
   ========================= */

/* H1 */
h1, .avia_textblock h1 {
    font-family: 'Libre Baskerville', sans-serif;
    font-weight: 400;
    font-size: 30px;
    line-height: 40px;
}

/* H2 */
h2, .avia_textblock h2 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 35px;
}

/* H3 */
h3, .avia_textblock h3 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 23px;
    line-height: 35px;
}

/* H4 */
h4, .avia_textblock h4 {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 22px;
    line-height: 35px;
}

/* H5 */
h5, .avia_textblock h5 {
    font-family: 'Bitter', serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 22px;
}

/* H6 */
h6, .avia_textblock h6 {
    font-family: 'Bitter', serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
}

/* WPBakery Custom Heading – force 3 lines */
#top .vc_custom_heading {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
}

/* Disable uppercase on WPBakery Custom Heading */
#top .vc_custom_heading {
    text-transform: none !important;
}

@media (max-width: 767px) {
    #top .vc_custom_heading {
        max-width: 100%;
    }
}

/* Centrare testo di un paragrafo WPBakery con classe home-welcome-text */
/* Centrare il container */

#top .home-welcome-text {
    display: flex;               /* trasforma il container in flex */
    justify-content: center;     /* centra il blocco orizzontalmente */
    text-align: center;          /* centra il testo dentro il paragrafo */
}

#top .home-welcome-text .wpb_wrapper {
    max-width: 960px;            /* opzionale: limita larghezza del testo per 3 righe */
    width: 100%;
}

/* =========================
   Allineamento elenchi puntati / numerati
   ========================= */
#top .home-why-choose-points.home-welcome-text ul,
#top .home-why-choose-points.home-welcome-text ol {
    display: block;              /* annulla eventuale flex ereditato dal container */
    padding-left: 1.5em;         /* distanza standard bullet/numero dal bordo */
    margin-left: 0;
    list-style-position: outside; /* pallino/numero esterno al testo */
    text-align: left;             /* testo allineato a sinistra dentro il blocco centrato */
}



/* Rendere trasparente il modulo CF7 e tutti i contenitori che lo avvolgono */
.wpb_column.vc_col-sm-6 .vc_column-inner,
.wpb_column.vc_col-sm-6 .wpb_wrapper,
.wpb_column.vc_col-sm-6 .wpcf7 {
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
}








/* Distribuire correttamente i counter */
.wpb_column.vc_col-sm-12.vc_col-xs-1.vc_col-has-fill .wpb_counter .avia_counter {
    display: inline-block !important;  /* permette di affiancarli */
    margin: 0 10px !important;         /* distanza tra i counter */
    text-align: left !important;       /* testo/numeri allineati a sinistra */
}
/* Far uscire i counter dal centro */
.wpb_column .wpb_counter .avia_counter {
    display: inline-block !important;  /* permette di affiancarli */
    margin: 0 10px !important;         /* distanza tra i counter */
    text-align: left !important;       /* allinea testo e numero a sinistra */
}
.wpb_column .wpb_counter {
    text-align: left !important;       /* assicura che il wrapper principale non centri i children */
}




/* Normalizza altezza titoli nella griglia home */
.post-grid-home .pgafu-post-title {
    line-height: 1.3em;
    min-height: 2.6em; /* 2 righe */
    display: block;
}




/* Modifica il colore del testo del menu a nero */
#header_main .menu li a {
    color: #000000 !important; /* Colore nero per i link del menu */
}




/* Rende trasparenti i campi input, textarea e select all'interno del modulo specifico */
.home-concept-one input[type="text"],
.home-concept-one input[type="email"],
.home-concept-one input[type="tel"], /* <--- AGGIUNTO QUESTO SELETTORE */
.home-concept-one textarea,
.home-concept-one select {
    background-color: transparent !important;
    border: 1px solid #ffffff !important; /* Bordo bianco per visibilità */
    color: #ffffff !important; /* Testo bianco */
    padding: 10px !important;
}

/* Modifica il colore del testo segnaposto (placeholder) per visibilità */
.home-concept-one input::placeholder,
.home-concept-one textarea::placeholder,
.home-concept-one input[type="tel"]::placeholder { /* <--- AGGIUNTO ANCHE QUI */
    color: #ffffff !important;
    opacity: 0.8 !important; 
}

/* Stile per il pulsante di invio, se necessario */
.home-concept-one input[type="submit"] {
    /* ... (il resto del tuo codice per il pulsante) ... */
}



/* Media query per dispositivi mobili con larghezza massima di 600px */
@media only screen and (max-width: 600px) {

    /* Forza ogni elemento del grid a prendere l'intera larghezza e resetta l'altezza */
    #wpupg-grid-1002 .wpupg-item {
        position: relative !important; /* Cambia da absolute a relative */
        width: 100% !important; 
        left: 0px !important;
        top: auto !important; /* Rimuove il posizionamento fisso */
        height: auto !important; /* Permette all'altezza di adattarsi */
        margin-bottom: 20px; /* Aggiunge spazio tra le 2 immagini */
    }

    /* Assicura che l'immagine all'interno sia grande */
    #wpupg-grid-1002 .wpupg-item img {
        width: 100% !important;
        height: auto !important;
    }

    /* Resetta l'altezza del contenitore principale che altrimenti rimarrebbe piccola */
    #wpupg-grid-1002 {
        height: auto !important;
    }
}

/* TOGLIE TOP BAR */
/* #header_meta { 
   display: none;
}

.home .#header_meta {
   display: block;
} */



/* virgolette citazione più sottili 
blockquote {
    border-left: none !important; /* niente barra verticale */
 /*   position: relative;
    padding-left: 35px;
}

blockquote:before {
    content: "“";
    font-family: Georgia, serif;
    font-size: 36px;
    position: absolute;
    left: 0;
    top: -8px;
    color: #cccccc; /* tono delicato, elegante */
/*    line-height: 1;
} */

.mailpoet-heading a {
    text-decoration: underline !important;
    color: inherit !important;
}


/* Centra l'immagine con la classe specificata */
.wp-image-248 {
    display: block;          /* Assicura che si comporti come blocco */
    margin-left: auto;       /* Centra orizzontalmente */
    margin-right: auto;      /* Centra orizzontalmente */
    max-width: 100%;         /* Mantiene responsivo */
    height: auto;            /* Mantiene proporzioni */
}
/* Centra l'immagine con la classe specificata */
.wp-image-11826 {
    display: block;          /* Assicura che si comporti come blocco */
    margin-left: auto;       /* Centra orizzontalmente */
    margin-right: auto;      /* Centra orizzontalmente */
    max-width: 100%;         /* Mantiene responsivo */
    height: auto;            /* Mantiene proporzioni */
}


/* Pulsante base */



/* Avatar AVC nei post*/
/* Avatar rotondo */
.avatar.avatar-40.photo {
    border-radius: 50%; /* rende l'immagine rotonda */
    object-fit: cover;  /* mantiene proporzioni corrette */
    transition: transform 0.3s ease; /* transizione morbida per l'effetto hover */
    display: inline-block; /* per assicurare il corretto comportamento del transform */
}

/* Effetto hover */
.avatar.avatar-40.photo:hover {
    transform: scale(1.1); /* leggero ingrandimento */
}







/* Centra contenuto in ogni colonna Enfold */
.contact-column {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    margin: 5px 0;
}

/* Stile icone FontAwesome */
.contact-column i {
    margin-right: 8px;
    color: #ff6600;
    font-size: 20px;
}

/* Testo e link */
.contact-column span,
.contact-column a {
    color: #333;
    font-size: 16px;
    text-decoration: none;
}

.contact-column a:hover {
    color: #ff6600;
}





img[usemap] {
    max-width: 100%;
    height: auto;
}




/* Blocca il CSS solo sul tuo blocco specifico */
.home-welcome-text.vc_custom_1765398323156 {
    position: relative;
    color: #ffffff; /* testo bianco */
    padding: 20px; /* opzionale: distanza dai bordi */
}

/* Overlay sfumato dal basso verso l'alto */
.home-welcome-text.vc_custom_1765398323156::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: linear-gradient(to top, rgba(0,0,0,0.5) 30%, rgba(0,0,0,0) 100%);
    z-index: 1;
}

/* Mantieni il testo sopra l'overlay */
.home-welcome-text.vc_custom_1765398323156 * {
    position: relative;
    z-index: 2;
}

/* Link blu con contorno leggero per migliore leggibilità */
.home-welcome-text.vc_custom_1765398323156 a {
    color: #00cfff;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
}






/* Pulsante Blog - menu normale */
#top .avia-menu .menu-blog-button > a .avia-menu-text {
    background: #e00000;
    padding: 1px 14px;
    border-radius: 5px;
    box-shadow: 0 3px 5px rgba(0,0,0,0.3);
    display: inline-block;
    transition: background 0.3s, box-shadow 0.2s, padding 0.3s;
}

/* Hover menu normale */
#top .avia-menu .menu-blog-button > a .avia-menu-text:hover {
    background: #b00000;
    box-shadow: 0 5px 7px rgba(0,0,0,0.35);
}

/* Pulsante Blog - menu sticky/scrolled */
#top .header-scrolled .avia-menu .menu-blog-button > a .avia-menu-text,
#top .scroll-header .avia-menu .menu-blog-button > a .avia-menu-text {
    padding: 1px 10px;                 
    box-shadow: 0 2px 4px rgba(0,0,0,0.25);
}

/* Hover menu sticky */
#top .header-scrolled .avia-menu .menu-blog-button > a .avia-menu-text:hover,
#top .scroll-header .avia-menu .menu-blog-button > a .avia-menu-text:hover {
    background: #b00000;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3);
}








/* Testo bianco per pulsante Blog */
#top .avia-menu .menu-blog-button > a .avia-menu-text,
#top .avia-menu .menu-blog-button.current-menu-item > a .avia-menu-text,
#top .avia-menu .menu-blog-button.current_page_item > a .avia-menu-text,
#top .avia-menu .menu-blog-button.current-menu-ancestor > a .avia-menu-text {
    color: #ffffff !important;
}

/* Hover */
#top .avia-menu .menu-blog-button > a .avia-menu-text:hover,
#top .avia-menu .menu-blog-button.current-menu-item > a .avia-menu-text:hover,
#top .avia-menu .menu-blog-button.current_page_item > a .avia-menu-text:hover,
#top .avia-menu .menu-blog-button.current-menu-ancestor > a .avia-menu-text:hover {
    color: #ffffff !important;
}

/* Sticky header */
#top .header-scrolled .avia-menu .menu-blog-button > a .avia-menu-text,
#top .scroll-header .avia-menu .menu-blog-button > a .avia-menu-text {
    color: #ffffff !important;
}

/* Sticky header + hover */
#top .header-scrolled .avia-menu .menu-blog-button > a .avia-menu-text:hover,
#top .scroll-header .avia-menu .menu-blog-button > a .avia-menu-text:hover {
    color: #ffffff !important;
}

/* Sticky header + active */
#top .header-scrolled .avia-menu .menu-blog-button.current-menu-item > a .avia-menu-text,
#top .scroll-header .avia-menu .menu-blog-button.current-menu-item > a .avia-menu-text,
#top .header-scrolled .avia-menu .menu-blog-button.current_page_item > a .avia-menu-text,
#top .scroll-header .avia-menu .menu-blog-button.current_page_item > a .avia-menu-text,
#top .header-scrolled .avia-menu .menu-blog-button.current-menu-ancestor > a .avia-menu-text,
#top .scroll-header .avia-menu .menu-blog-button.current-menu-ancestor > a .avia-menu-text {
    color: #ffffff !important;
}





/* Pulsante Blog sempre bianco in tutte le situazioni */
#top #header.av_header_transparency .av-main-nav > li.menu-blog-button > a .avia-menu-text,
#top #header.av_header_transparency .av-main-nav > li.menu-blog-button.current-menu-item > a .avia-menu-text {
    color: #ffffff !important;
}



/* Immagine avatar Rosario nei post */

.ctl-author-meta {
    display: inline-flex;
    align-items: center;
    margin-left: 10px;
}

.author-img-wrapper { width: 24px;          /* dimensione quadrata / 
height: 24px; border-radius: 50%;   / cerchio perfetto / 
overflow: hidden;     / taglia tutto fuori dal cerchio */ 
display: inline-block; 
margin-right: 6px; }

/* Stile mobile */
@media (max-width: 480px) {
  .author-img-wrapper {
    width: 16px;   /* più piccolo su mobile */
    height: 16px;
  }
}



.author-img {
    width: 100%;          /* riempie il contenitore */
    height: 100%;         /* riempie il contenitore */
    object-fit: cover;    /* mantiene proporzioni */
}





/* allineamento counter in home per mobile */




/* background slide triangolo */

#rev_slider_7_1 {
    background-color: #cecece !important;
}
/* Nasconde lo sfondo del slider su mobile */
@media (max-width: 767px) {
    #rev_slider_7_1 {
        background-color: transparent !important;
    }
}




/* Cool Timeline – Traduzione Read More */
.pgafu-post-content .readmorebtn {
    visibility: hidden;
}


/* nasconde in mobile "rimani aggiornato.. della home */
@media (max-width: 767px) {
    .hide-on-mobile {
        display: none !important;
    }
}









@media only screen and (max-width: 989px) {

    /* Header mobile fisso */
    #header {
        position: fixed !important;
        height: 80px !important;
        width: 100%;
        top: 0;
        z-index: 9999;
    }

    /* Submenu sticky */
    .responsive #top .av-switch-990.av-submenu-container {
        position: fixed !important;
        top: 80px !important;
        height: auto !important;
        margin-bottom: 0 !important;
    }

    /* Logo e link hamburger */
    .responsive #top .av-logo-container,
    .responsive #top .logo a,
    .responsive #top .logo img {
        height: 80px !important;
        max-height: 80px !important;
    }

    .responsive #top .av-main-nav .menu-item-avia-special a {
        height: 80px !important;
        line-height: 80px !important;
    }

    /* Trasparenza header */
    .responsive.html_mobile_menu_tablet #top #wrap_all .av_header_transparency {
        background-color: transparent;
    }
}

/* Spazio sotto l'header fisso su mobile */
@media only screen and (max-width: 989px) {
    #wrap_all {
        padding-top: 80px; /* stessa altezza del tuo header */
    }
}



@media only screen and (min-width: 991px) and (max-width: 1200px) {
    #header_main_alternate .av-main-nav > li > a {
        padding: 10px 12px; /* riduce larghezza dei link */
    }
    #header_main_alternate .av-logo-container {
        max-width: 150px; /* riduce larghezza logo se necessario */
    }
}



/* logo ridotto su tablet */
/* Mostra logo tablet solo tra 768px e 991px */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .av-logo-container img {
        content: url('avc-2palazz.png'); /* sostituisce il logo desktop */
        width: auto; /* regola se serve */
        height: 50px; /* altezza tablet */
    }
}





.row-actions span:has(a:contains("Attiva il tuo abbonamento")) {
    display: none !important;
}




@supports (-ms-ime-align: auto) {
  .av_header_transparency,
  .header-scrolled {
    transition: none !important;
  }
}




@media (max-width: 480px) {
    .vc_row .wpb_column.vc_column_container {
        width: 100% !important;   /* forza full width */
        float: none !important;   /* rimuove eventuali float residui */
        margin-bottom: 10px !important; /* spazio verticale */
        text-align: center;       /* centra contenuto */
    }

    .vc_row {
        display: flex !important;
        flex-direction: column;    /* mette le colonne in pila */
        align-items: center;       /* centra contenuto */
    }
}
@media (max-width: 480px) {
    .ultimo-counter {
        margin-left: -30px; /* valore negativo desiderato */
    }
}


/* INDICATORE PAGINA ATTIVA SE HEADER è MINIMAL*/
// .big-pipe {
//    color: #2d5c88;
//    font-size: 40px;   /* dimensione a piacere */
//    vertical-align: middle; /* opzionale, per allineare al testo */
//}









.read_more.ctl_read_more {
    display: inline-block;      
    padding: 10px 20px;         
    background-color: #007BFF;  
    color: #ffffff !important;  
    text-decoration: none;      
    border-radius: 5px;         
    font-weight: bold;           
    transition: all 0.3s;       /* transizione liscia per hover */
    
    /* Ombra esterna per effetto rilievo */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3); 
}

.read_more.ctl_read_more:hover {
    background-color: #0056b3;  
    color: #ffffff !important;
    
    /* Ombra più pronunciata al passaggio del mouse */
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.4);
    
    transform: translateY(-2px); /* leggero sollevamento */
}




/* Allineamento sinistra */
.align-left {
    text-align: left !important;
}

/* Allineamento centro */
.align-center {
    text-align: center !important;
}

/* Allineamento destra */
.align-right {
    text-align: right !important;
}

/* Allineamento giustificato */
.align-justify {
    text-align: justify !important;
}



/* SITEMAZIONE POST PER PAOLO */


.single-post .wpb_text_column.wpb_content_element h2,
.single-post .wpb_text_column.wpb_content_element h3 {
    font-family: 'Libre Baskerville', serif !important;
    font-weight: 400 !important;
    color: #000000 !important;
}

/* TITOLO POST */
/* H1 unico del titolo del post – uso hardcore con !important */
h1 {
    font-family: 'Libre Baskerville', serif !important;
}

.post-title-custom {
    font-family: 'Libre Baskerville', serif;
    font-weight: 400;
    color: #1E73BE;
}







.wpb_text_column.wpb_content_element p {
    text-align: left !important;
}
/* Miglior leggibilità dei testi distanziati */
.single-post .post-content p,
.wpb_text_column.wpb_content_element p {
    word-spacing: normal !important;   /* rimuove spazi troppo grandi tra le parole */
    letter-spacing: normal !important; /* evita lettere troppo distanziate */
}
/* Miglior leggibilità mobile */
@media (max-width: 768px) {
    .single-post .entry-title,
    .single-post .wpb_text_column.wpb_content_element h2:first-of-type,
    .montserrat-block h2,
    .montserrat-block h3,
    .montserrat-block h4,
    .single-post .post-content p,
    .wpb_text_column.wpb_content_element p {
        line-height: 1.5; /* leggermente più compatto su mobile */
    }
}
@media (max-width: 768px) {
    /* Primo H2 del post */
    .single-post .wpb_text_column.wpb_content_element h2:first-of-type,
    /* Blocchi WPBakery con classe montserrat-block */
    .montserrat-block h2,
    .montserrat-block h3,
    .montserrat-block h4,
    /* Eventuali altri H2 nei post singoli */
    .single-post .post-content h2 {
        text-align: left !important;
    }
}

/* Linea sottile sotto i titoli */
.single-post .wpb_text_column.wpb_content_element h2:first-of-type,
.single-post .post-content h2,
.montserrat-block h2,
.montserrat-block h3 {
    border-bottom: 1px solid #e0e0e0; /* linea sottile */
    padding-bottom: 0.3em;
}

/* FINE SISTEMAZIONE POST */

/* CENTRA IMMAGINE IN EVIDENZA SULLA PAGINA */
.page .entry-content-header .page-thumb img {
  display: block;
  float: none;
  margin: 0 auto;
}





/* Box grigio solo per il singolo post */
.single-post .vc_row-has-fill > .vc_column_container > .vc_column-inner > .wpb_wrapper {
    max-width: 800px;         
    margin: 40px auto;        
    background-color: #f5f5f5;
    padding: 40px 30px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    text-align: center;
}



/* =========================================
   Immagine in evidenza
   ========================================= */
.vc_row-has-fill .featured-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 4px;
    margin-bottom: 25px;
}

/* =========================================
   Titoli H1-H6 personalizzati
   ========================================= */
.vc_row-has-fill h1 {
    font-family: 'Libre Baskerville', sans-serif;
    font-weight: 400;
    font-size: 30px;
    line-height: 40px;
    margin-bottom: 25px;
}

.vc_row-has-fill h2 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 35px;
    margin-bottom: 20px;
}

.vc_row-has-fill h3 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 23px;
    line-height: 35px;
    margin-bottom: 18px;
}

.vc_row-has-fill h4 {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 22px;
    line-height: 35px;
    margin-bottom: 16px;
}

.vc_row-has-fill h5 {
    font-family: 'Bitter', serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 22px;
    margin-bottom: 14px;
}

.vc_row-has-fill h6 {
    font-family: 'Bitter', serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 12px;
}

/* =========================================
   Contenuto post (paragrafi)
   ========================================= */
.vc_row-has-fill p {
    text-align: center;
    margin: 0 auto 20px auto;
    line-height: 1.6;
}

/* =========================================
   Liste puntate e numerate
   ========================================= */
.vc_row-has-fill ul,
.vc_row-has-fill ol {
    display: inline-block;   /* centra la lista */
    text-align: left;        /* testo allineato a sinistra */
    margin: 0 auto 20px auto;
    padding-left: 20px;      /* spazio interno per i bullet/number */
}

/* =========================================
   Author bio centrata
   ========================================= */
.vc_row-has-fill .author-bio .holder {
    text-align: center;
    margin-top: 30px;
}
.vc_row-has-fill .author-bio .holder .pic {
    margin-bottom: 10px;
}

/* =========================================
   Post navigation
   ========================================= */
.vc_row-has-fill .post-navigation {
    margin-top: 30px;
}

/* =========================================
   Commenti
   ========================================= */
.vc_row-has-fill .comments-area {
    margin-top: 40px;
}

/* =========================================
   Responsive
   ========================================= */
@media only screen and (max-width: 767px) {
    .vc_row-has-fill > .vc_column_container > .vc_column-inner > .wpb_wrapper {
        width: 95%;
        margin: 20px auto;
        padding: 25px 15px;
    }
    .vc_row-has-fill ul,
    .vc_row-has-fill ol {
        display: block;
    }
}



/* ------------------------------ */
/* Author Bio Box - Stile completo */
/* ------------------------------ */

/* Contenitore principale */
.author-bio {
    background-color: #f5f5f5;   /* box grigio chiaro */
    padding: 20px;
    margin: 40px 0;
    border-radius: 12px;         /* angoli arrotondati */
    display: flex;
    align-items: center;          /* centra verticalmente immagine e testo */
    gap: 15px;                    /* spazio tra immagine e testo */
    flex-wrap: wrap;              /* responsive su mobile */
}

/* Avatar rotondo */
.author-bio .holder .pic img {
    border-radius: 50%;           /* rotondo */
    width: 90px;
    height: 90px;
    object-fit: cover;
    border: 2px solid #ddd;       /* optional, bordo leggero */
}

/* Testo autore */
.author-bio .holder .data {
    flex: 1;                      /* prende spazio rimanente */
}

.author-bio .holder .data h5 {
    margin: 0 0 5px;
    font-size: 16px;
    font-weight: 600;
}

.author-bio .holder .data p {
    margin: 0;
    font-size: 14px;
    color: #555;
}

/* Mobile: centro avatar e testo */
@media (max-width: 767px) {
    .author-bio {
        flex-direction: column;
        text-align: center;
    }

    .author-bio .holder .pic img {
        margin-bottom: 10px;
    }
}

/* Base tipografica uniforme per i post */
/* Sudato 7 camicie per trovare ste 2 righe, il primo paragrafo dei post veniva 13 px */
#top.single-post .content {
    font-size: 18px;
    line-height: 1.65;
}
/* dal secondo paragrafo in poi */
#top.single-post .content p {
    font-size: 20px;      /* dimensione base del post */
    line-height: 1.65;
}

/* Tablet */
@media only screen and (max-width: 1024px) {
    #top.single-post .content {
        font-size: 15px;
        line-height: 1.6;
    }
}

/* Smartphone */
@media only screen and (max-width: 768px) {
    #top.single-post .content {
        font-size: 14px;
        line-height: 1.55;
    }
}

/* Piccoli smartphone */
@media only screen and (max-width: 480px) {
    #top.single-post .content {
        font-size: 13px;
        line-height: 1.5;
    }
}
#top.single-post .content p {
    margin-bottom: 1.2em;
}


#top.single-post p.p1 {
    text-align: center !important;
}
/* Centrare automaticamente tutti i paragrafi che hanno text-align: center inline nei post singoli */
#top.single-post .wpb_wrapper p[style*="text-align: center"],
#top.single-post .entry-content p[style*="text-align: center"] {
    text-align: center !important;
}




.linkedin-share-premium {
    margin-top: 25px;
    text-align: center;
}

.linkedin-share-premium a {
    display: inline-block;
    background-color: #0077B5;
    color: #fff;
    font-size: 20px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    border-radius: 50%;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.linkedin-share-premium a:hover {
    background-color: #005983;
    transform: scale(1.1);
}

/* Assicurati che Font Awesome sia caricato */
.linkedin-share-premium i {
    vertical-align: middle;
}



/* Contenitore della navigazione */
.post-navigation {
    display: flex;
    justify-content: flex-start;  /* affiancati a partire da sinistra */
    gap: 20px;                    /* spazio tra i link */
    margin: 40px 0;
    flex-wrap: wrap;               /* evita che si rompano su mobile */
}

/* Div interni */
.post-navigation .nav-previous,
.post-navigation .nav-next {
    display: inline-flex;
    flex: 0 0 auto;
}

/* Link di navigazione */
.post-navigation .nav-previous a,
.post-navigation .nav-next a {
    background-color: #f0f0f0;  
    padding: 10px 20px;
    border-radius: 5px;          
    color: #333;
    text-decoration: none;
    font-weight: bold;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    position: relative;           /* necessario per animare freccia */
}

/* Hover */
.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
    background-color: #ddd;
}

/* Frecce */
.post-navigation .nav-previous a::before { 
    content: "← "; 
    display: inline-block;
    transition: transform 0.3s ease;
}

.post-navigation .nav-next a::after { 
    content: " →"; 
    display: inline-block;
    transition: transform 0.3s ease;
}

/* Animazione frecce al passaggio del mouse */
.post-navigation .nav-previous a:hover::before {
    transform: translateX(-5px); /* freccia si sposta a sinistra */
}

.post-navigation .nav-next a:hover::after {
    transform: translateX(5px);  /* freccia si sposta a destra */
}

/* Mobile: link uno sotto l’altro, centrati */
@media (max-width: 768px) {
    .post-navigation {
        justify-content: center;
        flex-direction: column;
        gap: 10px;
    }
}



/* Box grigio mirato al modulo specifico */
.vc_custom_1614034267917.vc_row-has-fill > .vc_column_container > .vc_column-inner > .wpb_wrapper {
    max-width: 800px;         /* larghezza del box */
    margin: 40px auto;        /* centra il box */
    background-color: #f5f5f5;
    padding: 40px 30px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    text-align: center;
}







/* Corpo testo delle pagine */
.page .content,
.page .content p,
.page .wpb_text_column p {
    font-family: 'Raleway', 'Garamond', serif !important;
    font-size: 20px !important;
    line-height: 1.65; /* puoi regolare a piacere */
    color: #000000;    /* opzionale: colore testo */
}

@media (max-width: 768px) {
    .page .content,
    .page .content p,
    .page .wpb_text_column p {
        font-size: 16px !important;
        line-height: 1.5;
    }
}



/* =========================
   MESSAGE BOX WPBAKERY - STILE UNIFORME
   ========================= */

/* Stile base desktop per tutti i box */
.vc_message_box.vc_message_box-standard.vc_message_box-rounded.vc_do_message {
    position: relative;
    padding: 20px 20px 20px 50px; /* spazio a sinistra per l'icona */
    font-size: 16px;
    line-height: 1.6;
    word-wrap: break-word;
    overflow-wrap: break-word;
    border-radius: 6px;
    margin-bottom: 20px;
}

/* Icona dei box */
.vc_message_box.vc_message_box-standard.vc_message_box-rounded.vc_do_message i {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
}

/* COLORI STANDARD BOX (puoi personalizzare) */
.vc_message_box.vc_color-info { background-color: #d9edf7; border: 1px solid #bce8f1; color: #31708f; }
.vc_message_box.vc_color-success { background-color: #dff0d8; border: 1px solid #d6e9c6; color: #3c763d; }
.vc_message_box.vc_color-warning { background-color: #fcf8e3; border: 1px solid #faebcc; color: #8a6d3b; }
.vc_message_box.vc_color-error { background-color: #f2dede; border: 1px solid #ebccd1; color: #a94442; }

/* =========================
   MEDIA QUERY - MOBILE
   ========================= */
@media (max-width: 768px) {
    .vc_message_box.vc_message_box-standard.vc_message_box-rounded.vc_do_message {
        padding-left: 40px; /* meno spazio per l'icona */
        font-size: 14px;     /* testo più piccolo */
        line-height: 1.5;
    }

    .vc_message_box.vc_message_box-standard.vc_message_box-rounded.vc_do_message i {
        left: 10px;          /* icona più vicina al bordo */
        font-size: 18px;     /* icona più piccola */
    }
}












/* BANNER SOPRA I POST */

.featured-banner-wrapper {
    position: relative;
    height: 300px;           /* STRISCIA */
    width: 100%;
    overflow: hidden;
    background: #ccc;        /* fallback (non si vede se l'immagine carica) */
}

/* immagine */
.featured-banner-wrapper .banner-bg {
    position: absolute;
    inset: 0;                /* top/right/bottom/left = 0 */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
}

/* overlay */
.featured-banner-wrapper .banner-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.3);
    z-index: 1;
}

/* titolo */
.featured-banner-wrapper .banner-title {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    color: #fff;
    font-size: 2rem;
    text-align: center;
    width: 90%;
}

/* MOBILE: sempre striscia */
@media (max-width: 768px) {
    .featured-banner-wrapper {
        height: 120px;
    }

    .featured-banner-wrapper .banner-title {
        font-size: 1.4rem;
    }
}

/* header sempre sopra */
#header {
    position: relative;
    z-index: 10;
}


/* Forza l'espansione ignorando i limiti del tema */
.img-blog {
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Assicura che l'immagine interna segua la riga */
.img-blog img, 
.img-blog .vc_column-inner, 
.img-blog .wpb_wrapper {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
}


/* SPOSTAMENTO LOGO */

.logo img { margin-top: 10px; } /*si abbassa in stato normale*/
.header-scrolled .logo img { margin-top: 0; } /*torna al suo posto allo scrolling*/



/* CENTRA IL BLOCCO "SIAMO QUI PER TE" DEI CONTATTI (per avere stesso risultato usa classe extra: testo-centrato */
/* Contenitore del blocco centrato */
.testo-centrato {
    display: flex;
    flex-direction: column;
    align-items: center; /* centra il blocco nella pagina */
    padding: 0 15px;    /* margine interno per mobile */
}

/* Paragrafi allineati a sinistra dentro il blocco */
.testo-centrato p {
    text-align: left;
    max-width: 600px;   /* opzionale: migliora leggibilità */
    width: 100%;        /* si adatta a mobile */
}

/* Elenchi allineati a sinistra dentro il blocco */
.testo-centrato ul,
.testo-centrato ol {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-left: 20px;
    margin: 0;
    max-width: 600px;
    width: 100%;
}

/* Testo dei li */
.testo-centrato li {
    text-align: left;
}

/* Testo dei li */
.testo-centrato li {
    text-align: left;
}










/* toglie barra bianca nell'header */

/* Ripristina il padding gestito da Enfold */
.html_header_transparency #main{
    padding-top: initial !important;
}

/* Compensazione visiva SOLO desktop */
@media (min-width: 990px){
    .html_header_transparency #main > .container_wrap:first-child{
        margin-top: -20px;
    }
}







/* ================================
   Fancy List Enfold home (figura con bilancia)- fix icone
   ================================ */
/* ================================
   nella prima lista non apparivano icone - conflitto con il tema e composium
   ================================ */

/* Tutte le liste con ID ts-fancy-list- */
[id^="ts-fancy-list-"] li {
    position: relative !important; /* container relativo */
    padding-left: 30px !important; /* spazio icona */
}

/* Rimuove tutte le icone predefinite di Enfold */
[id^="ts-fancy-list-"] li .ts-fancy-icon,
[id^="ts-fancy-list-"] li .ts-fancy-item::before,
[id^="ts-fancy-list-"] li i.flag {
    display: none !important; /* nasconde flag e icone predefinite */
    content: none !important;
}

/* se icona manuale o ::before personalizzata */
[id^="ts-fancy-list-"] li i.custom-icon,
[id^="ts-fancy-list-"] li::before.custom-icon {
    display: inline-block !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-family: "FontAwesome" !important; /* se FontAwesome */
}
/* Forza margine sinistro per il container della Fancy List */
/* Sposta solo le liste con la classe extra 'sposta-a-sx' */
.sposta-a-sx.ts-fancy-list-container {
    margin-left: -18px !important; /* sposta solo questa lista */
}







/* RIGA i nostri collaboratori-contatto */
/* ====================
   RIGA E COLONNE
==================== */
#newsletter {
    display: flex;
    justify-content: space-between; /* Allinea le colonne ai lati opposti, ma con spazio tra di esse */
    align-items: stretch;
    flex-wrap: wrap;
    gap: 20px; /* Spazio tra le colonne */
}

/* Colonna sinistra (team images) */
#newsletter > .wpb_column:first-child {
    flex: 0 0 45%; /* Mantieni una larghezza fissa per la colonna delle immagini */
    max-width: 45%; 
    transform: translateY(-40px);
}

/* Colonna destra (form) */
#newsletter > .wpb_column:last-child {
    flex: 0 0 45%; /* Larghezza fissa per il form */
    max-width: 45%;
    transform: translateY(-52px);
    padding: 10px 15px;
}

/* ====================
   IMMAGINI TEAM
==================== */
#newsletter #wpupg-grid-1002 .wpupg-item-image img {
    max-width: 220px; /* immagini più grandi */
    width: 100%;
    height: auto;
}

/* ====================
   NOMI E PROFESSIONI
==================== */
#newsletter #wpupg-grid-1002 .wpupg-item-title,
#newsletter #wpupg-grid-1002 .wpupg-item-title a {
    color: #9c865f !important;
    text-align: center;
    text-decoration: none;
}

#newsletter #wpupg-grid-1002 .wpupg-item-profession {
    color: #ffffff;
    font-size: 14px;
    text-align: center;
    margin-top: 4px;
}

.wpupg-item-1202 {
    left: 334px !important;
}


/* ====================
   OVERLAY
==================== */
#newsletter #wpupg-grid-1002 .image-overlay,
#newsletter #wpupg-grid-1002 .image-overlay-inside {
    display: none !important;
}

/* ====================
   FORM INTERNI - campi input/textarea/select
==================== */
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 input,
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 textarea,
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 select {
    border: 1px solid #9c865f !important; /* Forza il bordo sui campi */
    border-radius: 4px !important; /* Forza il border-radius */
    padding: 5px;
    font-size: 14px;     
    font-style: italic;  
    margin-bottom: 10px; /* spazio tra campi */
}

/* Placeholder testo */
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 ::placeholder {
    font-size: 14px;
    font-style: italic;
    color: #999;
}












/* ====================
   PULSANTE INVIA
==================== */
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 input[type="submit"],
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 button {
    border: 1px solid #9c865f !important; /* Forza il bordo sul pulsante */
    background-color: transparent;
    color: #9c865f;
    padding: 8px 15px;
    font-size: 14px;
    font-style: normal;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-block;
    align-self: flex-start; /* mantiene pulsante allineato a sinistra */
}

/* Hover pulsante */
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 input[type="submit"]:hover,
#newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 button:hover {
    background-color: #9c865f;
    color: #fff;
}

/* ====================
   MOBILE / TABLET <768px
==================== */
@media (max-width: 767px) {

    /* Colonne che si sovrappongono verticalmente in mobile */
    #newsletter > .wpb_column:first-child,
    #newsletter > .wpb_column:last-child {
        flex: 0 0 100%;
        max-width: 100%;
        transform: none;
    }

    #newsletter > .wpb_column:first-child::after {
        display: none;
    }

    /* container grid team */
    #newsletter #wpupg-grid-1002 {
        position: static;
        height: auto;
        overflow: visible;
    }

   /* ====================
  /* item team */
    #newsletter #wpupg-grid-1002 .wpupg-item {
        position: static;
        width: 100%;
        left: auto;
        top: auto;
        margin-bottom: 20px;
    }

/* ====================
   MOBILE / TABLET <768px
==================== */
@media (max-width: 767px) {
    /* item team - mobile */
    #newsletter #wpupg-grid-1002 .wpupg-item {
        position: relative !important; /* Forza la posizione relativa anche su mobile */
        width: 100% !important; /* Rende gli item di team più flessibili */
        left: auto !important;
        top: auto !important;
        margin-bottom: 20px !important;
    }
}


    /* immagini team mobile */
    #newsletter #wpupg-grid-1002 .wpupg-item-image img {
        max-width: 100%;
    }

    /* colonna form ridotta */
    #newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 {
        padding: 10px 15px;
        max-height: none;
        overflow: visible;
    }

    /* pulsante mobile centrato */
    #newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 input[type="submit"],
    #newsletter > .wpb_column:last-child .vc_column-inner.vc_custom_1497934066849 button {
        align-self: center;
        width: 100%;
        text-align: center;
    }
}








/* === CSS Solo Mobile (max-width 767px) === i nostri collaboratori */
@media only screen and (max-width: 767px) {

    /* Testo più leggibile */
    body, p, li {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }

    /* Corregge larghezza immagini */
    img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Colonne che si sovrappongono */
    .avia-row, .container {
        width: 100% !important;
        box-sizing: border-box;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* Menu mobile */
    #header_main .container .main_menu {
        display: block !important;
        width: 100% !important;
    }
    #header_main .container .main_menu li {
        float: none !important;
        width: 100% !important;
    }

    /* Bottone troppo grande o stretto */
    .avia-button, .avia-button-small {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* Sezioni che hanno padding esagerato */
    .avia-section {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    /* Testo centrato in box o colonne */
    .avia_textblock {
        text-align: center !important;
    }

    /* Evita overflow orizzontale */
    body, html {
        overflow-x: hidden !important;
    }
}





/* === WPUPG grid - mobile fix i nostri collaboratori=== */
@media only screen and (max-width: 767px) {

    /* Forza le immagini a essere responsive */
    #wpupg-grid-1002 .wpupg-item-image img {
        width: 100% !important;
        height: auto !important;
        display: block;
    }

    /* Overlay testo sotto l'immagine */
    #wpupg-grid-1002 .wpupg-template-overlay-container {
        position: static !important; /* rimuove absolute */
        margin-top: 10px;
        text-align: center;
    }

    /* Grid items in blocco uno sotto l’altro */
    #wpupg-grid-1002 .wpupg-item {
        position: relative !important; /* prima era absolute */
        left: auto !important;
        top: auto !important;
        width: 100% !important;
        margin-bottom: 15px; /* spazio tra le card */
    }

    /* Rimuove le piccole linee bianche (overflow / span) */
    #wpupg-grid-1002 .image-overlay {
        display: none !important;
    }

    /*  Testo leggibile */
    #wpupg-grid-1002 .wpupg-item-title,
    #wpupg-grid-1002 .wpupg-item-profession {
        font-size: 14px !important;
        line-height: 1.4 !important;
    }
}


/* === WPUPG Grid + Enfold fix verticale mobile === */
@media only screen and (max-width: 767px) {

    /*  Forza i grid item a diventare blocchi verticali centrati */
    #wpupg-grid-1002 .wpupg-item {
        float: none !important;       /* rimuove float desktop */
        display: block !important;     /* blocco verticale */
        margin: 0 auto 15px auto;      /* centro e spazio tra card */
        max-width: 90% !important;     /* evita che siano troppo grandi */
    }

    /* Overlay sotto l’immagine già gestito in snippet precedente */
    /* niente da aggiungere se hai già usato quello snippet */

    /* Assicura immagini centrali */
    #wpupg-grid-1002 .wpupg-item-image {
        text-align: center !important;
    }

    #wpupg-grid-1002 .wpupg-item-image img {
        margin: 0 auto !important;
        display: block;
    }
}




/* === WPUPG Grid competenze - Mobile === */
/* ===  mantiene paginazione === */
/* === (versione tigrata) === */
/* === WPUPG Grid - Limita 5 articoli visibili su mobile === */
/* === WPUPG Grid - Nascondi i pulsanti della paginazione === */
@media only screen and (max-width: 767px) {

    /* Grid items diventano blocchi verticali */
    #wpupg-grid-1002 .wpupg-item,
    #wpupg-grid-competenze .wpupg-item {
        position: relative !important;   /* rimuove absolute */
        left: auto !important;
        top: auto !important;
        display: block !important;       /* blocco verticale */
        width: 100% !important;          /* larghezza completa */
        margin: 0 auto 20px auto;        /* spazio tra le card */
        box-sizing: border-box;
    }

    /* Immagini responsive e centrali */
    #wpupg-grid-1002 .wpupg-item-image img,
    #wpupg-grid-competenze .wpupg-item-image img {
        width: 100% !important;          /* immagini a tutta larghezza */
        max-width: 200px !important;     /* limite massimo per evitare immagini troppo grandi */
        height: auto !important;         /* mantieni il rapporto */
        display: block;
        margin: 0 auto;                  /* centra le immagini */
    }

    /* Testo sotto l'immagine */
    #wpupg-grid-1002 .wpupg-template-overlay-container,
    #wpupg-grid-competenze .wpupg-template-overlay-container {
        position: static !important;
        margin-top: 8px;
        text-align: center;
    }

    /* Rimuove overlay grafici superflui */
    #wpupg-grid-1002 .image-overlay,
    #wpupg-grid-competenze .image-overlay {
        display: none !important;
    }

    /* Testo leggibile */
    #wpupg-grid-1002 .wpupg-item-title,
    #wpupg-grid-competenze .wpupg-item-title,
    #wpupg-grid-1002 .wpupg-item-excerpt,
    #wpupg-grid-competenze .wpupg-item-excerpt {
        font-size: 14px !important;
        line-height: 1.4 !important;
    }

    /* Limita gli articoli visibili a 5 */
    #wpupg-grid-1002 .wpupg-item:nth-child(n+6),
    #wpupg-grid-competenze .wpupg-item:nth-child(n+6) {
        display: none !important;   /* nasconde gli articoli oltre il 5° */
    }


/* === WPUPG Grid - Nascondi i pulsanti di paginazione numerica === */

/* === Rimuove la paginazione completamente dal grid su mobile === */

@media only screen and (max-width: 767px) {

    /* Nasconde completamente la barra di paginazione (contenitore intero) */
    #wpupg-grid-competenze-pagination,
    #wpupg-grid-competenze-pagination .wpupg-pagination,
    #wpupg-grid-1002-pagination,
    #wpupg-grid-1002-pagination .wpupg-pagination {
        display: none !important; /* Nasconde completamente la sezione di paginazione */
    }

    /* Nasconde i singoli pulsanti di paginazione (1, 2, etc.) */
    #wpupg-grid-competenze-pagination .wpupg-pagination-term,
    #wpupg-grid-1002-pagination .wpupg-pagination-term {
        display: none !important;   /* Nasconde completamente i pulsanti numerici */
    }

    /* Disabilita anche eventuali click e interazione con la paginazione */
    #wpupg-grid-competenze-pagination .wpupg-pagination-term,
    #wpupg-grid-1002-pagination .wpupg-pagination-term {
        pointer-events: none !important;  /* Disabilita il click sui pulsanti */
    }
    
    /* Forza l'eliminazione di eventuali stili che potrebbero rimanere visibili */
    #wpupg-grid-competenze-pagination .wpupg-pagination a,
    #wpupg-grid-1002-pagination .wpupg-pagination a {
        display: none !important; /* Nasconde i collegamenti */
    }
}


/* Aggiungo padding sotto l'header solo su mobile */

@media only screen and (max-width: 767px) {
    header {
        padding-bottom: 40px !important; /* Forza il padding di 20px sotto l'header */
    }
}


/* Rimuovi lo spazio extra sotto lo slider su mobile */
@media only screen and (max-width: 767px) {
    .wpb_text_column.wpb_content_element {
        margin-bottom:  0 !important; /* Rimuovi margini inferiori */
        padding-bottom: 0 !important; /* Rimuovi padding inferiore */
    }
}



/* Forza la posizione e il margine dell'overlay */
@media only screen and (max-width: 989px) {
    .av-overlay {
        position: fixed !important;  /* Forza la posizione fissa */
        top: 0 !important;           /* Assicurati che sia in cima */
        left: 0 !important;          /* Assicurati che sia a sinistra */
        width: 100% !important;      /* Imposta la larghezza al 100% */
    }
}

/* per disabili */
/* Rende il link della freccia visibile ma non leggibile dallo screen reader */
#scroll-top-link {
    visibility: visible; /* Assicura che l'elemento sia visibile */
}

/* Se l'elemento ha aria-hidden="true", nascondilo agli screen reader */
#scroll-top-link[aria-hidden="true"] {
    visibility: hidden; /* Nasconde l'elemento dagli screen reader */
}



/* ===============================
   fix cache MOBILE – ENFOLD
   =============================== */
@media only screen and (max-width: 989px) {

    /* Evita intercettazione touch da wrapper Enfold */
    .html_mobile_menu .av-burger-overlay,
    .html_mobile_menu .av-burger-overlay-bg,
    .html_mobile_menu #header,
    .html_mobile_menu .av_header_transparency {
        transform: none !important;
    }

    /* Assicura che i filtri ricevano il touch */
    .cool-timeline-filter,
    .cool-timeline-filter * {
        pointer-events: auto !important;
    }

    /* Porta i filtri sopra eventuali layer */
    .cool-timeline-filter {
        position: relative;
        z-index: 1000;
    }
}



/* Il menu appare senza scrolling - Header solido su mobile – fix menu hamburger Enfold */
@media only screen and (max-width: 767px) {
    #header {
        background: rgba(255, 255, 255, 0.97) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .header_color .main_menu ul:first-child > li > a,
    .header_color .social_bookmarks a,
    .header_color .av-burger-menu-main {
        color: #000 !important;
    }
}

/* nasconde barra menu su mobile */
@media only screen and (max-width: 767px) {
#header_meta {
    display: none;
}}

@media only screen and (max-width: 767px) {

  /* forza full width contenuto post */
  .single-post .container,
  .single-post .content,
  .single-post .template-blog {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* WPBakery rows */
  .single-post .vc_row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* colonne WPBakery */
  .single-post .vc_column_container > .vc_column-inner {
    padding-left: 0px;  /* senza padding  */
    padding-right: 0px;
  }
}


/* fix icone degli articoli per mobile (nelle icone fontawesome o icone che si sovrappongono dell'articolo, metti classe extra: icon-mobile-fix */
@media only screen and (max-width: 767px) {

  .icon-mobile-fix {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important; /* centra orizzontalmente */
  }

  .icon-mobile-fix .vc_icon_element-inner {
    order: 2;
    margin-top: 20px;
  }

}







/* Sfondo menu mobile sempre bianco */
html.av-burger-overlay-active .av-burger-overlay {
    background-color: #dfdfdf !important;
}

html.av-burger-overlay-active .av-burger-overlay-bg {
    background-color: #dfdfdf !important;
}







/* MOBILE – Header sempre bianco */
@media only screen and (max-width: 990px) {

.html_header_transparency #header_main,
.html_header_transparency #header_main .container,
.av_header_transparency #header_main,
#header_main {
    background-color: #dfdfdf !important;
    background-image: none !important;
}

/* Burger overlay */
.html_av-overlay-side .av-burger-overlay,
.av-burger-overlay {
    background-color: #dfdfdf !important;
}

/* Rimuove eventuale trasparenza */
#header_main {
    opacity: 1 !important;
}

}

@media only screen and (max-width: 990px) {
.header_color {
    background-color: #dfdfdf !important;
}
}






.vc_gitem-post-data-source-post_excerpt {
    display: none !important;
}


















