/*
Theme Name:  Jampaa
Theme URI: https://www.jampaa.it/
Description:  Tema Jampaa
Author:  Jampaa
Author URI: https://www.jampaa.it/
Template:  hello-elementor
Version:  1.0
*/

/*
*	1.0 SETTINGS
	* stile pulsanti custom
*	2.0 HEADER
*   3.0 MENU
*       3.1 WPML
*   4.0 PRODOTTI
*       4.1 Schede relazioni associati
*       4.2 Filtri prodotti
*   5.0 ASSOCIATI
*       5.1 Orari di apertura
*       5.2 Gallery Associati
*       5.3 Lista prodotti associati
*       5.4 Lista Categorie associati
*   6.0 BLOG
*   7.0 FOOTER
*/

/* 1.0 SETTINGS */

h1, .h1 {
    font-size: clamp(2.125rem, 1.207vw + 1.914rem, 3rem)!important;
    line-height:1.35!important;
}

h2,.h2 {
    font-size: clamp(1.625rem, 0.862vw + 1.474rem, 2.25rem)!important;
    line-height:1.35!important;
}

h3, .h3, h2.h3{
    font-size: clamp(1.375rem, 0.69vw + 1.254rem, 1.875rem)!important;
    line-height:1.35!important;
}
.size-26, .size-26 h3 {
	font-size: clamp(1.375rem, 0.345vw + 1.315rem, 1.625rem)!important;
	line-height:1.35!important;
}
h4, .h4{
    font-size: clamp(1.125rem, 0.345vw + 1.065rem, 1.375rem) !important;
    line-height:1.35!important;
}

ul{
    padding-inline-start: 20px;
}

/* 3.0 MENU */

@media screen and (max-width: 700px) {
    .has-submenu.highlighted svg{
        fill:white;
    }
    .current-menu-ancestor.current-menu-parent .current-menu-item.current_page_item a{
        background-color: #DB7C001A !important;
        color: #000000 !important;
    }
.menu-princ .elementor-nav-menu__container.elementor-nav-menu--dropdown {
	background-color:#f0f0f0;
}    
    
    
}

/* 3.1 WPML */

a.js-wpml-ls-item-toggle.wpml-ls-item-toggle,
a.js-wpml-ls-item-toggle.wpml-ls-item-toggle:hover {
    background: transparent !important;
    width: fit-content !important;
	color: white;
	border: none;
}

.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
	display: none !important;
}

li.wpml-ls-slot-shortcode_actions.wpml-ls-item.wpml-ls-item-it.wpml-ls-current-language.wpml-ls-last-item.wpml-ls-item-legacy-dropdown-click {
    width: fit-content;
}

span.wpml-ls-display {
    color: black;
}

.wpml-ls-native, .wpml-ls-display{
    display: none;
}

/* 4.0 PRODOTTI */

.single-prodotto-shortcodecat{
    margin: auto;
}
.img-loop-prodotto img {
	max-height:260px;
	width:100%;
	height:auto;
	object-fit:contain;
}
.box-sing-prod {
	box-shadow: 0px 4px 30px rgba(196, 196, 196, 0.25);
}
.box-sing-prod img {
	max-height:400px;
	width:100%;
	height:auto;
	object-fit:contain;
}




/* 4.1 Schede relazioni associati */

.associati-carousel {
    display: flex;
    overflow-x: visible;
    gap: 20px;
    padding: 20px 0;
}

.associato-card {
    width: 100%;
    box-shadow: 0px 4px 30px rgba(196, 196, 196, 0.25);
    padding: 35px 25px;
    text-align: center;
    border-radius: 8px;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.logo-img {
    height: 120px !important;
    width: auto;
    object-fit: contain;
}

.btn-dettagli {
    margin-left: auto;
    margin-right: auto;
    width: fit-content;
    display: inline-block;
    padding: 10px 20px;
    background: #cc7a29;
    color: white;
    text-decoration: none;
    font-weight: bold;
    border-radius: 5px;
}

.btn-dettagli:hover{
    color:white;
}

.associato-card h4{
    font-family: 'Lexend';
    font-weight: 400;
    font-size: 21px;
    line-height: 25px;
}

.titolo-link{
    color: #000000;
    margin:10px 0;
}

.swiper-button-next, .swiper-button-prev{
    color:#cc7a29 !important;
}

.swiper{
    overflow-y: visible !important; 
}
.swiper-slide {
	display:flex!important;
	height:auto!important;
}
.swiper-wrapper{
	display: flex;
    justify-content: center !important;
    width: fit-content !important
}
.swiper-button-prev {
	left:-50px!important;
}
.swiper-button-next {
	right:-50px!important;
}
@media (max-width: 1150px) {
.swiper-button-prev {
	left: 90% !important;
    bottom: -55px;
    top: unset !important;
}
.swiper-button-next {
	right: 0 !important;
    bottom: -55px;
    top: unset !important;
}
.swiper-button-next:after, .swiper-button-prev:after {
	font-size:30px!important;
}
ul.contatti-footer {
	padding-left:0;
}
}
@media (max-width: 768px) {
.swiper-button-prev {
	left: 80% !important;
    bottom: -55px;
}
.swiper-button-next {
	right: 0 !important;
    bottom: -55px;
}
.swiper-button-next:after, .swiper-button-prev:after {
	font-size:30px!important;
}
.associato-card {
	padding:25px 15px;
}

}





/* 4.2 Filtri prodotti */

/* Target solo i bottoni dei filtri Elementor taxonomy */
button.e-filter-item {
    display: flex;
    align-items: center;
    gap: 0.6em; /* Spazio tra icona e testo */
    font-size: 15px;
    line-height: 1.4;
    padding: 0.4em 0;
    color: #444;
  }
  
  /* Stile icone Font Awesome all’interno dei filtri */
  button.e-filter-item i {
    font-size: 18px;   /* Uniforme per tutte le icone */
    width: 20px;       /* Spazio riservato costante */
    text-align: center;
    color: #555;       /* Colore neutro e coerente */
    flex-shrink: 0;
  }
  
  button.e-filter-item[aria-pressed="true"] i {
    color: #d97706; /* arancio evidenziato o colore del brand */
    font-weight: bold;
  }

  .lista-prodotti-categoria{
    color: #A02663;
  }

  @media (max-width: 1024px) {
    .filtro-wrapper {
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }

    .filtro-scroll {
        overflow-x: auto;
        flex: 1;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    .filtro-custom {
        display: flex;
        gap: 0.75rem;
        flex-wrap: nowrap;
        padding: 0.5rem 0;
    }

    .filtro-item {
        flex: 0 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        min-width: 90px;
        max-width: 130px;
        padding: 0.5em;
        scroll-snap-align: start;
        text-align: center;
        font-size: 13px;
        white-space: normal;
        background: none;
        border: none;
        color: #333;
        cursor: pointer;
    }

    .filtro-item i {
        font-size: 22px;
        margin-bottom: 0.3em;
        color: #555;
    }

   /* .freccia {
        padding: 10px;
        font-size: 13px;
        background: #fff;
        border: 2px solid rgba(160, 38, 99, 1);
        border-radius: 8px;
        width: 15px;
        height: 15px;
        text-align: center;
        line-height: 30px;
        cursor: pointer;
        user-select: none;
        display: flex;
        align-items: center;
        justify-content: center;
        color: rgba(160, 38, 99, 1);
    }*/
    .freccia {
    	border-width:0;
    	padding:0;
    }
    .freccia:hover {
    	background-color:transparent;
    }
    .freccia img {
    	width:15px;
    	height:auto;
    }
    .freccia.freccia-dx {
    	position:absolute;
    	right:-17px;
    }
    .freccia.freccia-sx {
    	position:absolute;
    	left:-17px;
    }
    .filtro-item.attivo i {
        color: white !important; /* Colore evidenziato */
      }
} 

.colonna-filtri{
    height: fit-content !important;
    background: white;
}

/* 5.0 ASSOCIATI */

/* 5.1 Orari di apertura */

.orari-apertura-box {
    border-radius: 20px;
    font-family: 'Titillium Web', sans-serif;
}

.orari-apertura {
    list-style: none;
    margin: 0;
    padding: 0;
}

.orari-apertura li {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #B3B3B3;
    padding: 10px 0;
    font-size: 1.05em;
    font-weight: 400;
}

.orari-apertura .giorno {
    font-weight: 500;
    text-align: left;
}

.orari-apertura .orario {
    text-align: right;
    font-style: normal;
}

/* 5.2 Gallery Associati */

.elementor-slideshow__title {
    display: none;
}

.elementor-slideshow__description{
    display: none;
}

.elementor-lightbox .elementor-lightbox-item{
    height: 100% !important;
}

/* 5.3 Lista prodotti associati */

.lista-prodotti {
    display: flex;
    flex-wrap: wrap;
    gap: 40px; /* spazio tra le colonne */
    margin-top: 20px;
}

.lista-prodotti ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 32px; /* verticale, orizzontale */
    list-style-position: inside;
    padding-left: 0;
    list-style: square;
    margin: 0;
    padding: 0;
    column-count:2;
    column-gap:10%;
    width:100%;
}

.lista-prodotti li {
    margin-bottom: 10px;
}

.lista-prodotti a {
    text-decoration: none;
    color: #000; /* Cambia se vuoi uno stile diverso */
}

.lista-prodotti a:hover {
    text-decoration: underline;
}
.contatti-custom-post {
	font-size:18px;
}
.contatti-custom-post a:link, .contatti-custom-post a:visited {
	text-decoration:underline;
	color:#333;
}
.contatti-custom-post a:hover {
	color:#cc3366;
}


@media (max-width: 600px) {
 .lista-prodotti ul {
    column-count:1;
    column-gap:0;
}

}


/* 5.4 Lista Categorie associati */

.griglia-categorie {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 colonne fisse */
    gap: 24px;
    justify-items: center;
    padding: 20px 0;
    direction: rtl;
}

.categoria-box {
    width: 100%;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 30px rgba(196, 196, 196, 0.25);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 15px;
    text-align: center;
    text-decoration: none;
    transition: none;
}

.categoria-box i {
    font-size: 40px;
    padding: 10px;
    color: #cc7b25;
}

.titolo-categoria{
    margin-block-start: 1rem;
    margin-block-end: 1rem;
    font-size: clamp(1.125rem, 0.179vw + 1.094rem, 1.25rem)!important;
}
.e-loop__load-more .elementor-button {
	background-color:#fff;
	color:#DB7C00!important;
	border:solid 1px #DB7C00;
	border-radius:15px;
}


/* 6.0 BLOG */



.elementor-post-date{
    color: #777;
    font-family: 'Titillium Web';
    font-size: 14px;
    font-weight: 400;
    display:block;
    margin:15px 0;
}

.prev-loop-img img {
	object-fit: contain;
	width: 100%;
    height: auto!important;
    max-height:140px;
}
.post-list-blog h2.elementor-post__title, .post-list-blog h3.elementor-post__title {
	font-size: clamp(1.313rem, 0.268vw + 1.266rem, 1.5rem)!important;
	line-height:1.3!important;
	font-weight:500!important;
}
.post-list-blog .elementor-posts .elementor-post__excerpt {
	margin-bottom:20px;
}
.single-post h1 {
	font-size: clamp(1.75rem, 1.607vw + 1.469rem, 2.875rem)!important;
	line-height:1.3!important;
}

/* 7.0 FOOTER */

.contatti-footer {
    list-style: none !important;
}