/*
 Theme Name:   Divi Child
 Theme URI:    https://www.etecminds.com
 Description:  A Theme Made with ❤ by Etec Minds
 Author:       etecminds.com
 Author URI:   https://etecminds.com
 Template:     Divi
 Version:      1.1.2
*/


/*
/////////////////////////////////////////////////
ETEC STYLE
/////////////////////////////////////////////////
*/

/* Override container per l'header - questo per la barra dei menu larghezza 90% con margini 5% */
#main-header .container {
    width: 90% !important; /* 100% - 5% sx - 5% dx = 90% */
    max-width: none !important; /* rimuove il limite di 1080px */
    margin: 0px !important; /* mantiene il centraggio */
    padding-left: 0 !important;
    padding-right: 0 !important;
}
/* Nascondi meta progetto nelle pagine portfolio full width */
.et_full_width_portfolio_page .et_project_meta {
    display: none !important;
}

/* Larghezza 100% per left-area nelle pagine progetto - a pagina piena */
.et_full_width_portfolio_page #left-area {
    float: left !important;
    width: 100% !important;
    margin-right: 0 !important;
}
#logo {
    width: 82px !important;
    height: 18px !important;
    max-height: 18px !important;
    margin-bottom: 0 !important;
    display: inline-block !important;
    float: none !important;
    vertical-align: middle !important;
    transition: all 0.4s ease-in-out !important;
    -webkit-transform: translate3d(0, 0, 0);
}

/* Assicura che l'immagine del logo rispetti le dimensioni */
#logo img {
    width: 82px !important;
    height: 18px !important;
    max-height: 18px !important;
}
#main-header {
    border-bottom: none !important;
    box-shadow: none !important;
    padding-bottom: 20px;
}
/* Rimuovi margini e padding da li */
#top-menu li,
#et-top-navigation nav > ul > li {
    margin: 0 3.5px !important; /* spazio 7px tra pulsanti */
    padding: 0 !important;
}
/* Imposta una larghezza minima sulla prima voce del menù principale (LAVORI) */
#top-menu > li:first-child > a,
#et-top-navigation nav > ul > li:first-child > a {
    min-width: 150px !important; 
    /* Questo valore (150px) dovrebbe garantire che l'elemento sia abbastanza largo per "PAESAGGIO" + il padding */
}
/* Stile voci del menù principale */
#top-menu li a,
#et-top-navigation nav > ul > li > a {
    width: auto !important;
    height: 29px !important;
    line-height: 29px !important;
    display: inline-block !important;
    position: relative !important;
    box-sizing: border-box !important;
    
    /* Testo */
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #000000 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    
    /* Box con bordi retti */
    background-color: #ffffff !important;
    border: 1px solid #000000 !important;
    border-radius: 0px !important;
    
    /* Padding interno */
    padding: 0 20px !important;
    
    /* NO margini sul link */
    margin: 0 !important;
    
    /* Transizioni */
    transition: background-color 0.4s ease, color 0.4s ease !important;
    
    cursor: pointer !important;
}
/* Hover effect menu principale */
#top-menu li a:hover,
#et-top-navigation nav > ul > li > a:hover {
    background-color: #000000 !important;
    color: #ffffff !important;
}

/* SUBMENU - Dropdown verticale */
#top-menu li ul.sub-menu,
#et-top-navigation nav > ul > li > ul.sub-menu {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    flex-direction: column !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    z-index: 9999 !important;
}

/* Mostra submenu al hover */
#top-menu li:hover > ul.sub-menu,
#et-top-navigation nav > ul > li:hover > ul.sub-menu {
    display: flex !important;
}

/* Voci submenu - layout verticale */
#top-menu li ul.sub-menu li, #et-top-navigation nav > ul > li > ul.sub-menu li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border-right: 1px solid #000;
    border-left: 1px solid #000;
}
#top-menu li ul.sub-menu li:first-child, #et-top-navigation nav > ul > li > ul.sub-menu li:first-child {
	border-top: 1px solid #000;
}
#top-menu li ul.sub-menu li:last-child, #et-top-navigation nav > ul > li > ul.sub-menu li:last-child {
	border-bottom: 1px solid #000;
}

/* SUBMENU - Dropdown verticale */
/* ...OLD... 
#top-menu li ul.sub-menu,
#et-top-navigation nav > ul > li > ul.sub-menu {
    
    width: auto;
	border-top: 0;
	border: 1px solid #000;
	margin-top: 7px !important;
}
*/
#top-menu li ul.sub-menu, #et-top-navigation nav > ul > li > ul.sub-menu {
    width: auto;
    border-top: 0;
    /* border: 1px solid #000; */
    padding-top: 7px !important;
}
/* Link submenu - full width */
#top-menu li ul.sub-menu li a, #et-top-navigation nav > ul > li > ul.sub-menu li a {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 0 20px !important;
    margin: 0 !important;
    background-color: #ffffff !important;
    border: none !important;
}

/* Primo elemento submenu - riaggiunge bordo top */
#top-menu li ul.sub-menu li:first-child a,
#et-top-navigation nav > ul > li > ul.sub-menu li:first-child a {
}

/* Voce corrente/selezionata - negativo */
#top-menu li ul.sub-menu li.current-menu-item a,
#et-top-navigation nav > ul > li > ul.sub-menu li.current-menu-item a,
#top-menu li ul.sub-menu li.current_page_item a,
#et-top-navigation nav > ul > li > ul.sub-menu li.current_page_item a {
    background-color: #F7A600 !important;
    color: #ffffff !important;
}

/* Hover submenu */
#top-menu li ul.sub-menu li a:hover,
#et-top-navigation nav > ul > li > ul.sub-menu li a:hover {
    background-color: #000000 !important;
    color: #ffffff !important;
}
/* Hover effect */
#top-menu li a:hover,
#et-top-navigation nav > ul > li > a:hover {
    background-color: #000000 !important;
    color: #ffffff !important;
}
/* Escludi il logo dai margini */
#main-header #logo {
    margin: 36px 0 0 36px !important; /* ripristina i margini del logo */
}
.custom-cta-button:hover {
    background-color: #F7A600 !important;
}

@media only screen and (min-width: 981px) {
    #main-header.et-fixed-header #top-menu li.current-menu-ancestor>a, #main-header.et-fixed-header #top-menu li.current-menu-item>a, #main-header.et-fixed-header #top-menu li.current_page_item>a
    {
        color: #000000 !important;
    }
}

/* Menù lingue */

#top-menu li.menu-item.wpml-ls-item.wpml-ls-last-item {
    margin: 0 50px 0 0 !important;
}

#top-menu li.menu-item.wpml-ls-item > a {
    min-width: unset !important;
}

#top-menu li.menu-item.wpml-ls-current-language > a {
    background-color: #e8e6e6 !important;
}

#top-menu li.menu-item.wpml-ls-current-language > a:hover,
#top-menu li.menu-item.wpml-ls-item > a:hover {
    background-color: #000000 !important;
    color: #ffffff !important;
}

/* Evidenziazione per la parola XANTO */
.highlight-xanto {
    background-color: #F7A600; /* Giallo caldo */
    color: #333; /* Testo scuro per contrasto */
    padding: 2px 4px;
    border-radius: 3px;
    font-weight: bold;
}
/* Evidenziazione per la parola VITO SUTTO */
.highlight-vitosutto {
    background-color: #F7A600 !important; /* Giallo caldo */
    color: #333 !important; /* Testo scuro per contrasto */
    padding: 2px 4px !important;
    border-radius: 3px !important;
    font-weight: bold !important;
}
/* Evidenziazione per la parola RAFFAELLA RITA FERRARI */
.highlight-raffaellaritaferrari {
    background-color: #F7A600 !important; /* Giallo caldo */
    color: #333 !important; /* Testo scuro per contrasto */
    padding: 2px 4px !important;
    border-radius: 3px !important;
    font-weight: bold !important;
}
/* Evidenziazione per la parola BARBARA BACCHETTI */
.highlight-BarbaraBacchetti {
    background-color: #F7A600 !important; /* Giallo caldo */
    color: #333 !important; /* Testo scuro per contrasto */
    padding: 2px 4px !important;
    border-radius: 3px !important;
    font-weight: bold !important;
}


/* Portfolio Grid */

.portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items {
    display: inline-flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    row-gap: 140px;
    column-gap: 5%;
    align-items: center;
}

.portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item {
    width: 30% !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
}
/* Titolo galleria */
.portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item h2 {
    margin-bottom: 10px !important;
    line-height: 17px !important;
    font-size: 14px;
	font-weight: 700;
}

/* Caption galleria - mantieni gli a capo */
.portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item .et_pb_portfolio_excerpt {
    white-space: pre-line !important; /* rispetta gli a capo */
    line-height: 1.6 !important;
    margin: 0 !important;
	font-size: 14px;
}

.portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item .et_portfolio_image {
    position: relative;
    text-align: center;
}

.portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item .et_portfolio_image img {
    width: auto;
    max-height: 29vw;
    margin: 0 auto;
}
/* ===== FRECCE LATERALI CENTRATE SULL'IMMAGINE ===== */

/* Forziamo il contenitore immagine come riferimento */
/*
.et_pb_image_wrap {
  position: relative !important;
  display: inline-block;
  width: 100%;
  z-index: 5;
  overflow: visible !important;
}

*/

/* Posizioniamo la navigazione all'interno del wrapper immagine */
/*
.et_pb_image_wrap .navigazione-laterale.et_pb_posts_nav {
  position: absolute !important;
  top: 50% !important;
  left: 0;
  width: 100%;
  transform: translateY(-50%) !important;
  display: flex;
  justify-content: space-between; //una a sinistra e una a destra
  align-items: center;
  z-index: 10;
  pointer-events: none; // lascia cliccare sull’immagine
  padding: 0 3%; // distanza dai bordi dell'immagine
  box-sizing: border-box;
}
*/

/* Stile base frecce */
/*
.navigazione-laterale.et_pb_posts_nav a {
  pointer-events: all;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  color: #ff33cc;
  font-size: 24px;
  text-decoration: none;
  transition: all 0.3s ease;
}
*/

.image-nav-block {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
}

.image-nav-block .et_pb_image {
    height: calc(100vh - 160px);
    width: calc(100% - 120px);
}

.image-nav-block .et_pb_image .et_pb_image_wrap {
    position: relative;
    max-width: 100%;
    height: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
}

.image-nav-block .et_pb_image .et_pb_image_wrap img {
    max-height: 100%;
    width: auto;
}

.navigazione-laterale {
    position: absolute;
    top: calc(50% - 16px);
}

.single-project.et_pb_pagebuilder_layout .nav-single.navigazione-laterale.et_pb_posts_nav {
    margin-top: 0;
    width: 100%;
    max-width: unset;
    transform: rotateY(180deg);
}

.navigazione-laterale .nav-previous a:before {
    content: "\34";
    font-family: 'ETmodules';
    font-size: 63px;
    display: block;
    font-weight: 100;
    color: #999;
}

.navigazione-laterale .nav-next a:before {
    content: "\35";
    font-family: 'ETmodules';
    font-size: 63px;
    display: block;
    font-weight: 100;
    color: #999;
}

.navigazione-laterale a .meta-nav {
	display: none;
}


/* Hover */
.navigazione-laterale.et_pb_posts_nav a:hover {
  color: #ff00aa;
  transform: scale(1.1);
}


/* Nascondi etichette */
.navigazione-laterale.et_pb_posts_nav .nav-label,
.navigazione-laterale.et_pb_posts_nav .nav-title {
  display: none !important;
}


/* POPUP */

#et-boc .area-outer-wrap .da-close {
    font-family: "Roboto";
    font-size: 44px;
    font-weight: 700;
    height: 44px;
    line-height: 44px;
    width: 44px;
	color: #000;
	transition: none;
}

#et-boc .area-outer-wrap .inftnc_social_share_0_tb_body .inftnc_social_share_wrapper {
    display: flex !important;
    grid-column-gap: 40px;
    grid-row-gap: 0;
    flex-direction: row;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    align-items: end;
    margin: 0 auto;
}

#et-boc .area-outer-wrap .inftnc_share_button {
    display: block;
    width: auto;
}

#et-boc .area-outer-wrap .inftnc_social_share_0_tb_body .inftnc_share_link {
    width: auto;
    padding: 0;
    text-align: center;
    display: block!important;
}

.copyboard-block .et_pb_code_inner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    border: 1px solid #000;
    padding: 5px 10px 5px 5px;
}


/* Progetti */

body.single-project #et-main-area {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99999;
    height: 100vh;
    overflow: hidden;
    width: 100%;
}

body.single-project #et-main-area #main-content {
    background-color: #fff;
    height: 100%;
    align-content: center;
    width: 100%;
}


/* --- RESPONSIVE --- */
@media (max-width: 980px) {

    body.single-project #et-main-area #main-content .button-wrapper .et_pb_column {
        width: 50% !important;
    }
  .et_pb_image_wrap .navigazione-laterale.et_pb_posts_nav {
    padding: 0 8%;
  }
  .navigazione-laterale.et_pb_posts_nav a {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }

  .portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items {
        row-gap: 40px;
    }
}



@media (max-width: 768px) {

    .portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item {
        width: 50% !important;
    }

    .portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items {
        row-gap: 25px;
    }

    .navigazione-laterale {
        position: absolute;
        top: calc(50% - 16px);
        left: 13px;
    }

    .image-nav-block .et_pb_image {
        height: calc(100vh - 160px);
        width: calc(100% - 90px);
    }
	
	.portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items {
		justify-content: center;
	}

}



@media (max-width: 480px) {

    .portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item {
        width: 100% !important;
        padding: 0 10%;
    }

    .portfolio-row .et_pb_portfolio_grid .et_pb_portfolio_grid_items .et_pb_portfolio_item .et_portfolio_image img {
        width: 100%;
        max-height: unset;
        height: auto;
        margin: 0 auto;
    }
  .et_pb_image_wrap .navigazione-laterale.et_pb_posts_nav {
    padding: 0 10%;
  }
  .navigazione-laterale.et_pb_posts_nav a {
    width: 36px;
    height: 36px;
    font-size: 18px;
  }
}
/* Lineette Nere Menu Hamburger con specificità aumentata */
.mobile_menu_bar_toggle,
.mobile_menu_bar_toggle:before,
.mobile_menu_bar_toggle:after,
.mobile_menu_bar:before,
.mobile_menu_bar:after {
    color: #000000 !important;
}
.et_mobile_menu {
    border-top: 3px solid #000000 !important;
}