

/* ---------------------------------------------------- */
/*                 MODULI                               */
/* ---------------------------------------------------- */



/* ------------------------------------------------------------------------------- */
/* 01. Menu con sottopagine
/* ------------------------------------------------------------------------------- */

#primary_nav_wrap
{
	margin-top:15px
}

#primary_nav_wrap ul
{
	margin: 0px;
	padding: 0px;
}

#primary_nav_wrap ul a
{
	display:block;
	text-decoration:none;
	font-size:19px;
	line-height:1;
	padding:0 15px;
	
}

#primary_nav_wrap ul li
{
	position:relative;
	float:left;
	margin:0;
	padding:0;
/*	padding-top:12px;*/
    height: 34px;
	list-style: none;
	
}

#primary_nav_wrap ul ul
{

opacity:0;
	position:absolute;
	top:100%;
	left:0;
	background:#fff;
	padding:0;
	border-radius:6px;
	padding-top: 4px;
	z-index:1;
    margin-top:18px;
    	border: 1px solid #ddd;
        border-top:none;
        transition: all 0.25s; 
        visibility: hidden;

}

#primary_nav_wrap ul ul ul {padding-top:0px;}

#primary_nav_wrap ul ul li
{
	float:none;
	width:300px;
	border-bottom: 1px solid #ccc;
	height: 44px;
	padding: 0px;
}

#primary_nav_wrap ul ul li:last-child {
	
	border:none;
	
}

#primary_nav_wrap ul ul a
{
	line-height:120%;
	padding:14px 15px;
	font-size:15px;
}

#primary_nav_wrap ul ul ul
{
	top:0;
	left:100%
}

#primary_nav_wrap ul li:hover > ul {
  opacity: 1;
  display: block;
  border: 1px solid #ddd;
    border-top-color: rgb(221, 221, 221);
    border-top-style: solid;
    border-top-width: 1px;
  border-top: none;
  -webkit-box-shadow: -1px 7px 13px -6px rgba(0,0,0,0.29);
  -moz-box-shadow: -1px 7px 13px -6px rgba(0,0,0,0.29);
  box-shadow: -1px 7px 13px -6px rgba(0,0,0,0.29);
  z-index: 999;
  margin-top: 0px;
  visibility: visible;
}

@media only screen and (max-width:1250px)  { 
	#primary_nav_wrap.nav-no-logg {display:none; }


}
@media only screen and (max-width:1160px)  { 
	#primary_nav_wrap.nav-logg {display:none; }


}




/* ------------------------------------------------------------------------------- */
/* 02. Slide Slick 
/* ------------------------------------------------------------------------------- */


/* RESET PERSONALE */
.slick-dots li button::before {
  font-size: 18px !important;
}




#slide-news .slide-arrow.next-arrow {font-size:34px;  position:absolute; right:0; bottom:-12%; cursor:pointer; -moz-transition: opacity 0.1s linear;
-o-transition: opacity 0.1s linear;
-webkit-transition: opacity 0.1s linear;
transition:opacity 0.1s linear;
outline: none;
z-index: 9;}
#slide-news .slide-arrow.next-arrow:hover {opacity: 0.6;}

#slide-news .slide-arrow.prev-arrow {font-size:34px;  position:absolute; left:0; bottom:-12%; cursor:pointer;  -moz-transition: opacity 0.1s linear;
-o-transition: opacity 0.1s linear;
-webkit-transition: opacity 0.1s linear;
transition:opacity 0.1s linear;
outline: none;
z-index: 9;}
#slide-news .slide-arrow.prev-arrow:hover {opacity: 0.6;}





/*SLIDE 1 A*/

#slide-1a .slide-img {

	background-color: #bbb;
	background-size: cover;
	height: 28vw; 
	width: calc(100% - 24px);
	border-radius: 24px;
	overflow: hidden;
	position: relative;
	min-height: 340px;
	max-height: 440px;

	
}

#slide-1a .slide-txt-img h1 {
	font-size:64px;
	color: white;
	max-width: 60%;
	position: absolute;
	left: 24px;
	bottom: 12px;
	line-height: 0.8;
	margin-top:12px;
	margin-bottom: 12px;
}

#slide-1a .cornice-dx { 
	padding: 0px;
	max-width: 400px;
	margin: 0 auto;

}
#slide-1a .slide-occhiello h3 {
	font-size: 24px;
	padding-bottom: 12px;
	border-bottom: 1px solid #999;
	margin-top:0px;
}

#slide-1a .slide-box-txt {

}
#slide-1a .slide-titolo{display: block;}
#slide-1a .slide-titolo h2 {
	font-size: 50px;
	color: #444444e8;
	margin-top: 44px;
	margin-bottom: 3vh;
	font-weight: 100;
	letter-spacing: -1.5px;
	
}

#slide-1a .slide-descr p {
	margin:0px;
	margin-bottom: 5vh;
}



/*SLIDE 1 b*/


#slide-1b .slick-dots li button::before  {font-size: 18px!important;}
#slide-1b  .slick-dots {text-align: left; bottom:-45px;}
.slide-arrow.next-arrow {font-size:34px;  position:absolute; right:-5%; bottom:40%; cursor:pointer; -moz-transition: opacity 0.1s linear;
-o-transition: opacity 0.1s linear;
-webkit-transition: opacity 0.1s linear;
transition:opacity 0.1s linear;
outline: none;}
.slide-arrow.next-arrow:hover {opacity: 0.6;}

.slide-arrow.prev-arrow {font-size:34px;  position:absolute; left:-5%; bottom:40%; cursor:pointer;  -moz-transition: opacity 0.1s linear;
-o-transition: opacity 0.1s linear;
-webkit-transition: opacity 0.1s linear;
transition:opacity 0.1s linear;
outline: none;}
.slide-arrow.prev-arrow:hover {opacity: 0.6;}


#slide-1b .slide-img {

	background-color: #bbb;
	background-size: cover;
	height: 28vw; 
	width: calc(100% - 24px);
	border-radius: 24px;
	overflow: hidden;
	position: relative;
	min-height: 340px;
	max-height: 440px;
	background-position: center;

	
}

#slide-1b .slide-txt-img h1 {
	font-size:64px;
	color: white;
	max-width: 60%;
	position: absolute;
	left: 24px;
	bottom: 12px;
	line-height: 0.8;
	margin-top:12px;
	margin-bottom: 12px;
}

#slide-1b .cornice-dx { 
	padding: 0px;
	max-width: 400px;
	margin: 0 auto;

}
#slide-1b .slide-occhiello h3 {
	font-size: 24px;
	padding-bottom: 12px;
	border-bottom: 1px solid #999;
	margin-top:0px;
}

#slide-1b .slide-box-txt {

}
#slide-1b .slide-titolo{display: block;}
#slide-1b .slide-titolo h2 {
	font-size: 28px;
	color: #444444e8;
	margin-top: 44px;
	margin-bottom: 3vh;
	font-weight: 100;
	
}

#slide-1b .slide-descr p {
	margin:0px;
	margin-bottom: 5vh;
}


/* Modulo blocchett news in slide  */

.modulo-news-slide-piccolo .slick-dots li button::before {font-size: 11px!important;}
.modulo-news-slide-piccolo .slick-dots {text-align: left!important;}


/* ------------------------------------------------------------------------------- */
/* 02b. Swiper 
/* ------------------------------------------------------------------------------- */

/* swiper base  */

  .swiper.base {
      width: 100%;
      height: 80vh;
    }
   .swiper.base.cornice-i {
padding: 6px;
background: #e1e1e1;
border-radius: 24px;
    }   


    .swiper.base .swiper-slide {
      background-position: center;
      background-size: cover;
    }

    .swiper.base .swiper-slide img {
/*
      display: block;
      width: 100%;
      height: 80vh;
      margin: 0 auto;
*/
      border-radius:24px;
      
    }


/* swiper con data target apre pop up con video  */

.swiper-film {
	min-height: 200px;
	width: 300px;
	
}

.swiper-film img {
/*	max-height:217px;*/
}
.film .contenitore-video {position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
}

/*popup*/
 .sfondofilm {position:fixed; display: none; top:0; bottom:0; left: 0; right:0; background: rgba(73,71,71,0.70); height: 100%; z-index: 12; }
.film {  display: none; 
padding: 8px 6px; border-radius: 44px; 
    position: fixed;
top: 120px;
margin-right: auto;
margin-left: auto;
right: 0;
left: 0;
background-repeat: no-repeat;
width:100%;
	max-width: 590px;
border-radius: 12px;
z-index: 12;
 text-align:center;

}

.chiudifilm {
  position: absolute;
  top: -42px;
  right: 12px;
  color: white;
}
.film.attiva {
    animation: scale-display-base .3s;
/*    display: inline-block!important;*/
 }
 .film.chiusa  {
    animation: scale-display-base--reversed .3s;

}
     #swiper-film .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: #fff!important;
      display: flex;
      justify-content: center;
      align-items: center;
        margin-top: 0px;
         padding-bottom: 42px;
         padding-top:12px;
	
    }
.aprifilm {	cursor:pointer;}

#swiper-film .swiper-slide .swiper-film {
	
	width:100%; 
	height:auto;
	
}
 #swiper-film   .swiper-slide img {
	 width:100%; 
 height: auto;
  margin: 0 auto;
  aspect-ratio: 1612 / 896; 
    }
#swiper-film .swiper-slide img.lazy {
	
	 min-height: 1px;
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

/*popup da slide*/


/* Multi Pop up*/

/* Base modale */
.locandina  { 
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  transform-origin: 50% 50%;
  will-change: transform, opacity;
  backface-visibility: hidden;

  width: min(800px, calc(100% - 32px));
  max-height: 90vh;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 20px 40px rgba(0,0,0,.20);
  padding: 24px;
  overflow: hidden;
  z-index: 1001;
  display: none;
}

/* Stati */
.locandina.attiva {
  display: block !important;
  animation: modal-in .26s cubic-bezier(.2,.65,.3,1) both; /* zoom-in + fade */
}
.locandina.chiusa {
  animation: modal-out .18s ease both; /* fade-out senza ridimensionare */
}

/* Overlay */
.sfondolocandina {
  position: fixed; inset: 0;
  display: none;
  background: rgba(243,241,241,0.70);
  z-index: 1000;
}

/* Keyframes: la translate resta SEMPRE */
@keyframes modal-in {
  from { opacity: 0; transform: translate3d(-50%, -50%, 0) scale(.22); }
  to   { opacity: 1; transform: translate3d(-50%, -50%, 0) scale(1); }
}
@keyframes modal-out {
  from { opacity: 1; transform: translate3d(-50%, -50%, 0) scale(1); }
  to   { opacity: 0; transform: translate3d(-50%, -50%, 0) scale(1); }
}

/* Riduzione motion */
/*
@media (prefers-reduced-motion: reduce) {
  .locandina.attiva, .locandina.chiusa { animation: none !important; }
}
*/

/* Bottone chiudi & contenuto interno (come già impostato) */
.chiudilocandina { position:absolute; top:10px; right:12px; background:transparent; border:0; font-size:28px; line-height:1; cursor:pointer; z-index: 10; }
.popup-title { margin: 0 32px 12px 0; font-size: 1.25rem; line-height: 1.3; }
.popup-content { position: relative; height: 100%; }
.popup-scrollable { overflow:auto; max-height: calc(90vh - 80px); }
.popup-gallery { margin-top:16px; display:grid; grid-template-columns:1fr; gap:12px; }
.popup-gallery-img { width:100%; height:auto; display:block; }

/* (Opzionale) blocca lo scroll del body quando la modale è aperta */
/*
body.u-modal-open { overflow: hidden; }
*/







/* swiper scorrimento rapido tipo I  */

.swiper-scorr_i {background-color: #aaa; border-radius:12px; height: 440px; width:100%;}


#swiper-scorrimento-i  .swiper {
      width: 100%;
      height: 100%;
    }

  #swiper-scorrimento-i   .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
    }

  #swiper-scorrimento-i   .swiper-slide img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

  #swiper-scorrimento-i   .swiper-slide {
      width: 360px;
    }

#swiper-scorrimento-i   .swiper-slide:first-child {
	margin-left:40px;
}



/* ------------------------------------------------------------------------------- */
/* 03. Icone Social
/* ------------------------------------------------------------------------------- */

.mndx--elemento {
    display: inline-block;
}

.mndx--elemento a {
    display: inline-block;
    background: rgba(215, 215, 215, 0.2);
    border-radius: 55%;
    width: 44px;
    height: 44px;
    text-align: center;
    line-height: 40px;
}

.mndx--elemento a:hover {
    display: inline-block;
    border-radius: 55%;
    width: 44px;
    height: 44px;
    text-align: center;
    line-height: 40px;
    transition: all 0.6s ease 0s;
}
a.youtube2 {
    background: rgba(215, 215, 215, 0.2) url(../img/icosocial/youtube.png) no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.youtube2:hover {
    background: #E12B28 url(../img/icosocial/youtube-bia.png) no-repeat center;
    background-size: auto;
    background-size: 80%;
}
a.linkedin2 {
    background: rgba(215, 215, 215, 0.2) url(../img/icosocial/linkedin.png) no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.linkedin2:hover {
    background: #0177B5 url(../img/icosocial/linkedin-bia.png) no-repeat center;
    background-size: auto;
    background-size: 80%;
}
a.imdb2 {
    background: rgba(215, 215, 215, 0.2) url(../img/icosocial/imdb.png) no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.imdb2:hover {
    background: #E7BF29 url(../img/icosocial/imdb-bia.png) no-repeat center;
    background-size: auto;
    background-size: 80%;
}
a.facebook2 {
    background: rgba(215, 215, 215, 0.2) url(../img/icosocial/facebook.png) no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.facebook2:hover {
    background: #3B5998 url(../img/icosocial/facebook-bia.png) no-repeat center;
    background-size: auto;
    background-size: 80%;
}
a.twitter2 {
    background: rgba(215, 215, 215, 0.2) url(../img/icosocial/twitter.png) no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.twitter2:hover {
    background: #00ACED url(../img/icosocial/twitter-bia.png) no-repeat center;
    background-size: auto;
    background-size: 80%;
}
a.soundcloud2 {
    background: rgba(215, 215, 215, 0.2) url(../img/icosocial/soundcloud-nero.png) no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.soundcloud2:hover {
    background: #f75200 url(../img/icosocial/soundcloud-bia.png) no-repeat center;
    background-size: auto;
    background-size: 80%;
}
a.instagram2 {
    background: rgba(215, 215, 215, 0.2) url("../img/icosocial/instagram-piccolo-nero.png") no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.instagram2:hover {
    background: #e6426d url("../img/icosocial/instagram-piccolo-bia.png") no-repeat center;
    background-size: auto;
    background-size: 80%;
}
a.spotify {
    background: rgba(215, 215, 215, 0.2) url("../img/icosocial/spotify-nero.png") no-repeat center;
        background-size: auto;
    background-size: 80%;
}
a.spotify:hover {
    background: #2ebd59 url("../img/icosocial/spotify-bia.png") no-repeat center;
    background-size: auto;
    background-size: 80%;
}


/* ------------------------------------------------------------------------------- */
/* 04. Breadcrumb
/* ------------------------------------------------------------------------------- */

#breadcrumbs{
    list-style:none;
    margin:10px 0;
    overflow:hidden;	
	padding-left: 0px; 
	font-size: 14px;
}
  
#breadcrumbs li{
    display:inline-block;
    vertical-align:middle;
    margin-right:6px;
}
  
#breadcrumbs .separator{
    font-size:18px;
    font-weight:100;
    color:#ccc;
}




/* ------------------------------------------------------------------------------- */
/*  05. EXTRA MENU
/* ------------------------------------------------------------------------------- */



/*extra menu */

.big-blue {bottom:300px; display: block;}
.btn-extramenu {
	position: fixed;
}

.extramenu-svi#primo {	left: 40px;}
.extramenu-svi#secondo {	left: 220px;}
.extramenu-svi#terzo {	left: 340px;}
.extramenu-svi {
	bottom: 10px;
	color: #fff;
    background: green;
	box-shadow: 4px 4px 5px rgba(118, 114, 114, 0.5);
	height: 50px;
	width: 140px;
	z-index: 101;
	padding: 12px 12px 12px 12px;
	text-align: center;
	border-radius: 12px;
}


.btn-extramenu-i#primo {	right: 40px;}
.btn-extramenu-i#secondo {	right: 110px;}
.btn-extramenu-i#terzo {	right: 180px;}
.btn-extramenu-i {
	bottom: 10px;
	color: #fff;
    background: black;
	box-shadow: 4px 4px 5px rgba(118, 114, 114, 0.5);
	height: 50px;
	width: 50px;
	z-index: 101;
	padding: 12px 12px 12px 12px;
	text-align: center;
	border-radius: 50px;
}


.extramenu-ii.dx {
width:400px; right:140px; position:fixed; bottom:40px; z-index:2
}
.extramenu-ii.dx {
width:400px; right:30px; position:fixed; bottom:10px; z-index:2
}
.extramenu-ii.sx {
width:400px; left:20px; position:fixed; bottom:40px; z-index:2
}
.extramenu-ii.sxii {
width:400px; left:70px; position:fixed; bottom:20px; z-index:2
}
.extramenu-ii.sxiii {
width:400px; left:0px; position:fixed; bottom:0; z-index:8;
}

.extramenu-ii i {color:white;}

.extramenu-ii .btn-extramenu {
	display: inline-block;
	position:relative;
}


.extramenu-gen.dx .btn-extramenu-ii#primo { float:right; margin-left:20px; 	}
.extramenu-gen.dx .btn-extramenu-ii#secondo { float:right;margin-left:20px	}
.extramenu-gen.dx .btn-extramenu-ii#terzo { float:right;	margin-left:20px}
.extramenu-gen.sx .btn-extramenu-ii#primo { float:left; margin-left:20px; 	}
.extramenu-gen.sx .btn-extramenu-ii#secondo { float:left;margin-left:20px	}
.extramenu-gen.sx .btn-extramenu-ii#terzo { float:left;	margin-left:20px}
.btn-extramenu-ii {
	bottom: 10px;
	color: #fff;
    background: black;
	box-shadow: 2px 2px 5px rgba(40, 39, 39, 0.5);
	height: 60px;
	width: 60px;
	z-index: 101;
	padding: 12px 12px 12px 12px;
	text-align: center;
	border-radius: 50px;
}

.btn-extramenu-iii {
	bottom: 10px;
	color: #fff;
    background: black;
	box-shadow: 4px 4px 5px rgba(118, 114, 114, 0.5);
	height: 40px;
	width: 40px;
	z-index: 101;
	padding: 12px 12px 12px 12px;
	text-align: center;
	border-radius: 50px;
}

.btn-extramenu-iv {
bottom: 0;
color: #fff;
height: 45px;
width: 45px;
padding: 12px;
text-align: center;
border-right: 1px solid black;

}





/*.extra-menu {
	transition: opacity 0.5s ease 0s;
}*/

.sfondo {position:fixed; display: none; top:0; bottom:0; left: 0; right:0; background: rgba(225,223,223,0.68); height: 100%; z-index: 1; }
.extra-menu {

	display: none;
}

.extramenu-gen.dx .extra-menu { right: 40px;
width:420;
 }

.extramenu-gen.sx .extra-menu { left: 40px }
.extramenu-gen.sxii .extra-menu { left: 70px }
.extramenu-gen.sxiii .extra-menu { left: 7px }

/*confermato*/
.extra-menu-1 { 
	position: fixed;
	bottom:140px;
	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	min-height: 310px;
	width: 310px;
	z-index: 9;
	padding: 12px 2px 48px 12px;
	border-radius: 12px;
    padding:4px;
    padding-right: 30px;
    padding-top:20px;



}



.extra-menu-2 { 
	position: fixed;
	bottom: 80px;
	
	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	height: 80px;
	width: 600px;
	z-index: 9;
	padding: 12px 2px 48px 12px;
	border-radius: 12px;

}

.extra-menu-3 { 
	position: fixed;
	bottom: 80px;

	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	height: 80px;
	width: 600px;
	z-index: 9;
	padding: 12px 2px 48px 12px;
	border-radius: 12px;

}

.extra-menu-4  { 
	position: fixed;
	bottom: 80px;


	z-index: 9;
}

.extra-menu-5 { 
	position: fixed;
	bottom: 140px;

	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	height: 280px;
	width: 420px;
	z-index: 9;
	padding: 12px 2px 48px 12px;
	border-radius: 12px;

}

.extra-menu-6 { 
	position: fixed;
	bottom: 90px;
  	height: 40px;
	width: 420px;
	z-index: 9;
	padding: 0;
	border-radius: 12px;

}
.extra-menu-7 {
    position: fixed;
    bottom: 52px;
    height: 40px;
    width: 420px;
    z-index: 9;
    padding: 12px;
    border-radius: 12px;
    background: white;
    height: 120px;
    box-shadow: 0px 0px 24px rgba(118,114,114,0.4);
}
.extra-menu-modulo-base { 
	position: fixed;
	bottom: 140px;
	right: 40px;
	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	height: 480px;
	width: 420px;
	z-index: 9;
	padding: 12px 2px 48px 12px;
	border-radius: 12px;

}



.extra-menu-4 .ico-i { 
	position:relative;
	border-radius: 50px;
	height: 80px;
	width: 80px;
	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	margin:10px;


}

.extra-menu-4 .ico-ii { 
	position:relative;
	border-radius: 50px;
	height: 80px;
	width: 80px;
	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	margin:10px;

}

.extra-menu-4 .ico-iii { 
	position:relative;
	border-radius: 50px;
	height: 80px;
	width: 80px;
	background: white;
	box-shadow: 6px 6px 4px rgba(118, 114, 114, 0.5);
	margin:10px;

}



.contenuto-spiega {
	padding: 6px 2px 6px 2px;
	height: 100%;
	overflow-y: auto;
}

.contenuto-spiega iframe {padding-bottom: 42px; border-radius: 12px; margin-top:-6px;}

.mostra-spiega {
	display: block;
}

.aprinn {
    display:none;
}







.extra-menu.active {
      animation: scale-display .3s;
      display: inline-flex;
    }
@keyframes scale-display {
	0% {
		opacity: 0;
		transform: scale(0);
    -webkit-transform: scale(0);
	}

	100% {
		opacity: 1;
		transform: scale(1);
    -webkit-transform: scale(1);
	}
}

@keyframes scale-display--reversed {
	0% {
		display: inline-flex;
		opacity: 1;
		transform: scale(1);
		-webkit-transform: scale(1);
	}
	99% {
		display: inline-flex;
		opacity: 0;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
	100% {
		display: none;
		opacity: 0;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
}

@media only screen and (max-width:850px) {
	
.extramenu-ii {width:400px; right:10px; position:fixed; bottom:6px; z-index:2
}
	
.extra-menu-5 {
    right: 10px;
    width: 360px;
	bottom:86px;
}	
	
.extra-menu-modulo-base {
    right: 10px;
    width: 360px;
	bottom:86px;
	height:410px;
    }	
	
}
	@media only screen and (max-width:650px) {
	
.extramenu-gen.dx .extra-menu { right: 10px;
width: auto;
left: 10px; }	
	
}
	
	
	
/*extra menu */







/* ------------------------------------------------------------------------------- */
/*  06. Popup 1 PLUGIN 
/* ------------------------------------------------------------------------------- */
#fade,
#fade_wrapper,
#fade_background {
  color:#000;}
.well { background:#fff; padding:42px;}
.welltesto { background:#fff; padding:42px; padding-bottom: 12px; max-width:40vw; border-radius:24px; }
.wellmix { min-width: 500px; min-height: 700px; max-width:700px; background-size: cover; background-repeat: no-repeat;}
.well h4 { font-size:38px; font-family: 'NationalWeb-Bold' , sans-serif !important; margin-top:6px; text-transform: none; letter-spacing:-1px; color:white;}
.welltesto h4 { font-size:38px; font-family: 'NationalWeb-Bold' , sans-serif; margin-top:6px; text-transform: none; letter-spacing:-1px; color:#284066; color: white; line-height: 1;}
.welltesto p { font-family: 'Calibri'; text-align: center; font-size: 22px; color: white; line-height: 1;}
.wellmix h4 { font-size:48px; margin-top:6px; text-transform: none; letter-spacing:-1px; color:#284066;}
.wellmix p { font-size:24px; margin-top:6px; }
.btn-default {  background:#284066; color:#fff; padding: 8px 12px;  
border: 0 none;
color: #fff;
cursor: pointer;
font-family: dinlight;
letter-spacing: 1px;
outline: 0 none;
padding: 18px 36px;
text-transform: uppercase;
transition: background-color 0.2s linear 0s;}
#fade .immagine-popup img { max-width:98vw; height: auto; max-height:86vh;    }


	

.welltesto { background:#fff; padding:24px; max-width:40vw;}

@media screen and (max-width: 1100px) {
	

.welltesto { background:#fff; padding:24px; max-width:60vw;}


}



@media screen and (max-width: 800px) {
	

.welltesto { background:#fff; padding:24px; max-width:80vw;}


}

@media screen and (max-height: 800px) {
	

.wellmix { height:600px;}


}

@media screen and (max-width: 600px) {
	
	#fade {margin-top:12px;}
.wellmix {min-width: 80vw; max-width: 80vw;}
.wellmix { min-height:500px; height:500px;}

}




/* ------------------------------------------------------------------------------- */
/* 05. Multipop / richiede 03. Multipop in moduli.css
/* ------------------------------------------------------------------------------- */

/*Popup Standard*/
.apri-popup .popup  {  
display: none; 
padding: 8px 6px; border-radius: 44px; background: #ddd;
position: fixed;
top: 120px;
margin-right: auto;
margin-left: auto;
right: 0;
left: 0;
background: white;
box-shadow: 0px 0px 24px rgba(118,114,114,0.4);
height: 500px;
width: 500px;
border-radius: 12px;
z-index: 12;
	overflow: auto;
}

.apri-popup .popup .updated {}

.apri-popup .popup.attiva {
/* test da disattivare o attivare per lo sviluppo */	
    animation: scale-display-base .3s;
	
	
/* display: inline-block!important;*/
 }
 .apri-popup .popup.chiusa  {
/* test da disattivare o attivare per lo sviluppo */
    animation: scale-display-base--reversed .3s;
}
.sfondo-popup {position:fixed; display: none; top:0; bottom:0; left: 0; right:0; background: rgba(243,241,241,0.50); height: 100%; z-index: 10; }
@keyframes scale-display-base {
	0% {
		opacity: 1;
		transform: scale(0);
    -webkit-transform: scale(0);
	}

	100% {
		opacity: 1;
		transform: scale(1);
    -webkit-transform: scale(1);
	}
}
@keyframes scale-display-base--reversed {
	0% {
		display: inline-block;
		opacity: 1;
		transform: scale(1);
		-webkit-transform: scale(1);
	}
	99% {
		display: inline-block;
		opacity: 0;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
	100% {
		display: none;
		opacity: 0;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
}
/* fine Multi Pop up standard*/



/*Popup originata dal punto del click*/


.apri-popup-ii .popup  {  

filter: none!important;
color: #444;
background: #ccc;
box-shadow: 0px 0px 24px rgba(118,114,114,0.4);
/*
height: 500px;
width: 500px;
*/
border-radius: 12px;
background: #ddd;
/*position: fixed;
top: 120px;
margin-right: auto;
margin-left: auto;

z-index: 12;
*/
}
.apri-popup-ii .popup .telaio-interno {display: none;}
.apri-popup-ii .popup .updated {}




.apri-popup-ii .popup.attiva {
/* test da disattivare o attivare per lo sviluppo */	
/*    animation: scale-display-base .3s;*/
	margin: 0 auto;
	display: block;

	
/*    display: inline-block!important;*/
 }
.apri-popup-ii .popup.chiusa  {
/* test da disattivare o attivare per lo sviluppo */
/*    animation: scale-display-base--reversed .3s;*/
		margin: 0 auto;
			display: none; 
}
.sfondo-popup {position:fixed; display: none; top:0; bottom:0; left: 0; right:0; background: rgba(243,241,241,0.50); height: 100%; z-index: 10; backdrop-filter: blur(1px); }

.apri-popup-ii .popup .contenuto-popup {overflow:auto; width:100%; height:100%; padding:6px;}
.menu-popup-sotto {
position: sticky; width: auto; bottom: -36px; background: #444; padding: 8px 18px; border-radius: 12px; margin-top:12px; color:white;
}
@keyframes scale-display-base {
	0% {
		opacity: 1;
		transform: scale(0);
    -webkit-transform: scale(0);
	}

	100% {
		opacity: 1;
		transform: scale(1);
    -webkit-transform: scale(1);
	}
}
@keyframes scale-display-base--reversed {
	0% {
		display: inline-block;
		opacity: 1;
		transform: scale(1);
		-webkit-transform: scale(1);
	}
	99% {
		display: inline-block;
		opacity: 0;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
	100% {
		display: none;
		opacity: 0;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
}
/* fine Multi Pop up standard*/


/* ------------------------------------------------------------------------------- */
/* 05. FORM
/* ------------------------------------------------------------------------------- */

/* base form */
textarea:focus, input:focus {
  outline: none;
    outline-color: currentcolor;
    outline-style: none;
    outline-width: medium;
}
input[type="submit"] {
    cursor: pointer;
}


/* effetto su input ACF */
.formlogin-i label {
    display: block;
  font-size: 14px;
  color:  #2a496a;;
  font-weight: bold;
    padding: 4px;
}

.formlogin-i input {
  border: none;
  border-bottom-color: currentcolor;
  border-bottom-style: none;
  border-bottom-width: medium;
  box-shadow: none;
  border-radius: 20px;
  padding: 12px 12px !important;
  border: none;
    border-bottom-color: currentcolor;
    border-bottom-style: none;
    border-bottom-width: medium;
  margin-top: 8px;
  width: 100%;
  max-width: 500px;
  border-bottom: 1px solid #999;
  border-radius: 0;
  font-size: 22px;
  font-family: calibri;
  text-align: center;
  font-weight: bold;
  margin-top: 0px;
  -webkit-transition: all .35s ease-in-out;
  transition: all .35s ease-in-out;
  color: #455166;
}

.formlogin-i input:focus {
  background-color: #ededed;
  border-radius: 22px;
  border-bottom: 1px solid white;
}

.formlogin-i p {
margin-bottom: 24px;
}

.formlogin-i input[type="submit"] {
  background-color: #ededed;
  border-radius: 22px;
  border-bottom: 1px solid white; 
}
.formlogin-i input[type="submit"]:focus {
background-color: #649EBD;
  border-radius: 22px;
  border-bottom: 1px solid white;
    color:white;
}


/* Multi Pop bottone Pulsante condividi*/
.apri-extrabott-cond {position: relative; cursor: pointer;}

.extrabott-cond  {  
display: none; 
padding: 2px 12px; 
border-radius: 40px; background: #ddd;
position: absolute;
top: -24px;
margin-right: auto;
margin-left: auto;
right: 0px;
background: white;
box-shadow: 0px 0px 24px rgba(118,114,114,0.4);
height: 38px;
width: max-content;
border-radius: 44px;
z-index: 12;
}


.mappa-resp .extrabott-cond  {  
display: none; 
padding: 8px 6px;
background: #ddd;
position: relative;
top: -180px;
margin-right: auto;
margin-left: auto;
right: 0;
left: -174px;
background: white;
box-shadow: 0px 0px 24px rgba(118,114,114,0.4);
height: 120px;
width: 220px;
border-radius: 28px;
z-index: 12;
}
a.chiudi-extrabott-cond { cursor: pointer; margin-left:2px; border-radius: 50%; color: white; width: 30px; height: 30px; margin-right: 0px;}
.extrabott .updated {}



.extrabott-cond.attiva {
    animation: scale-display-base-dx .3s;
/*    display: inline-block!important;*/
 }
 .extrabott-cond.chiusa  {
    animation: scale-display-base--reversed-dx .3s;
}
 .sfondo-popup {position:fixed; display: none; top:0; bottom:0; left: 0; right:0; background: rgba(243,241,241,0.80); height: 100%; z-index: 10; }
@keyframes scale-display-base-sx {
	0% {
		opacity: 1;
        transform: scale(0);
          transform-origin: left;
    -webkit-transform: scale(0);
	}

	100% {
		opacity: 1;
		transform: scale(1);
          transform-origin: left;
    -webkit-transform: scale(1);
	}
}
@keyframes scale-display-base--reversed-sx {
	0% {
		display: inline-block;
		opacity: 1;
          transform-origin: left;
		transform: scale(1);
		-webkit-transform: scale(1);
	}
	99% {
		display: inline-block;
		opacity: 0;
          transform-origin: left;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
	100% {
		display: none;
		opacity: 0;
          transform-origin: left;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
}



@keyframes scale-display-base-dx {
	0% {
		opacity: 1;
        transform: scale(0);
         transform-origin: right;
    -webkit-transform: scale(0);
	}

	100% {
		opacity: 1;
		transform: scale(1);
          transform-origin: right;
    -webkit-transform: scale(1);
	}
}
@keyframes scale-display-base--reversed-dx {
	0% {
		display: inline-block;
		opacity: 1;
          transform-origin: right;
		transform: scale(1);
		-webkit-transform: scale(1);
	}
	99% {
		display: inline-block;
		opacity: 0;
          transform-origin: right;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
	100% {
		display: none;
		opacity: 0;
           transform-origin: right;
		transform: scale(0);
		-webkit-transform: scale(0);
	}
}


/* fine Multi Pop bottone Mappa*/
















/* ------------------------------------------------------------------------------- */
/* 05. MENU' OVERLAY
/* ------------------------------------------------------------------------------- */


body.stopscroll {overflow-y:hidden;}
#toggle {
  display: none;
}
@media screen and (max-width: 1250px) {
	

#toggle {
  display: block;
}


}


.button_container {
  position: fixed;
  top: 5%;
  right: 2%;
  height: 27px;
  width: 35px;
  cursor: pointer;
  -webkit-transition: opacity .25s ease;
  transition: opacity .25s ease;
/*  display:none;*/
  z-index:1002;
}
.button_container.active {
  position: fixed;

  right: 2.9%;
  height: 27px;
  width: 35px;
  cursor: pointer;
  -webkit-transition: opacity .25s ease;
  transition: opacity .25s ease;
/*  display:none;*/
  z-index:1002;
}
.button_container:hover {
  opacity: .7;
}
.button_container.active .top {
  -webkit-transform: translateY(11px) translateX(0) rotate(45deg);
          transform: translateY(11px) translateX(0) rotate(45deg);
  background:#1c5471;
}
.button_container.active .middle {
  opacity: 0;
  background: #1c5471;
}
.button_container.active .bottom {
  -webkit-transform: translateY(-11px) translateX(0) rotate(-45deg);
          transform: translateY(-11px) translateX(0) rotate(-45deg);
  background: #1c5471;
}
.button_container span {
  background: #666;
  border: none;
  height: 5px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all .35s ease;
  transition: all .35s ease;
  cursor: pointer;
}

.button_container span:nth-of-type(2) {
  top: 11px;
}
.button_container span:nth-of-type(3) {
  top: 22px;
}


.button_container span.tipo2 {
  background: #1c5471;
  border: none;
  height: 2px;
  border-radius: 4px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all .35s ease;
  transition: all .35s ease;
  cursor: pointer;
}

.button_container span:nth-of-type(2) {
  top: 11px;
}
.button_container span:nth-of-type(3) {
  top: 22px;
}

.overlay {
  position: fixed;
/*  background: #eee;*/
/* background: rgba(0,0,0,0.7);*/
background:white;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .35s, visibility .35s, height .35s;
  transition: opacity .35s, visibility .35s, height .35s;
  overflow-y: auto;
  z-index:99;
}
.overlay.open {
  opacity: .97;
  visibility: visible;
  height: 100%;
}
.overlay.chiusa {
  opacity: 0;
  visibility: hidden;
  height: 100%;
}

/* fine overlay 3 */


/* Overlay - Toggle ii */

#toggle-ii.button_container span:nth-of-type(2) {
  top: 11px; width:80%; right:0; left: 20%;
}






/* ------------------------------------------------------------------------------- */
/* 05. MENU NAV IN OVERLAY
/* ------------------------------------------------------------------------------- */

.overlay .contien-gen {
  position: relative;
  height: 70%;
  top: 360px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 28px;
  font-weight: 400;
  margin-left: 32px;
  margin-right: 15vw;
}

.overlay.open li {
  -webkit-animation: fadeInRight .5s ease forwards;
          animation: fadeInRight .5s ease forwards;
  -webkit-animation-delay: .35s;
          animation-delay: .35s;
}
.overlay.open li:nth-of-type(2) {
  -webkit-animation-delay: .4s;
          animation-delay: .4s;
}
.overlay.open li:nth-of-type(3) {
  -webkit-animation-delay: .45s;
          animation-delay: .45s;
}
.overlay.open li:nth-of-type(4) {
  -webkit-animation-delay: .50s;
          animation-delay: .50s;
}

.overlay { overflow-y: scroll;}

.overlay ul {padding-left: 8px;}

.overlay ul li {
  display: block;
  height: 10%;
  height: calc(100% / 8);
  min-height: 20px;
  position: relative;
  opacity: 0;
  margin-bottom: 0px;
}

.overlay ul li a {
  display: inline-block;
  position: relative;
  text-decoration: none;
  overflow: hidden;
  color: #666;
  text-align: left;
}


.overlay ul li ul li {
  display: inline-block;
  height: auto;
  min-height: 32px;
  position: relative;
  opacity: 0;
  margin-bottom: 0px;
}
.overlay ul li ul li a {
  display: inline-block;
  position: relative;
  text-decoration: none;
  overflow: hidden;
  text-align: left;
  padding-top:0px;
  padding-bottom:0px;
  font-size: 24px;
  font-weight: normal;
    min-width: auto;
}


.overlay ul li ul {
margin-top: -8px; margin-right: 0px; font-size: 16px; color: white;
}
.overlay ul a {
text-decoration: none;
margin: 4px 0 4px 2px;
display: inline-block;
padding: 4px 0px;

  color: #666;
  min-width: 120px;
  text-align: center;
  border: none;
  cursor: pointer;
  font-size: 28px;
  line-height: 1;
}



@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@media only screen and (max-width:800px) {
    .button_container {
        display:block;
    }
}

@media only screen and (max-width:660px) {
  .overlay2 nav {

  font-size: 32px;
 
}
    
}







/* ------------------------------------------------------------------------------- */
/* 05. MODULO CONTATTO CF7
/* ------------------------------------------------------------------------------- */

/* MODULO BASE 1 */

.wpcf7-form p {margin-bottom: 48px;}
.wpcf7-form textarea {
  outline: none;
    outline-color: currentcolor;
    outline-style: none;
    outline-width: medium;
    border:none;
     width: 100%;
    background-color: #ededed;
    font-size: 24px;
    padding:18px; 
    border-radius: 12px;
    margin-top: 16px;
}
.wpcf7-form input {
 border: none;
    border-bottom-color: currentcolor;
    border-bottom-style: none;
    border-bottom-width: medium;
  box-shadow: none;
    background-color: transparent;
  border-radius: 20px;
  padding:12px 12px !important;
  border: none;
  margin-top: 8px;
  width: 100%;
  max-width: 500px;
  border-bottom: 1px solid #999;
  border-radius: 0;
  font-size: 22px;
  font-family: calibri;
  text-align: center;
  font-weight: bold;
  margin-top: 0px;
    -webkit-transition: all .35s ease-in-out;
  transition: all .35s ease-in-out;
  color:#455166;
}



.wpcf7-form input:focus {
 background-color: #ededed;
 border-radius: 22px;
 border-bottom:1px solid white;
}

.wpcf7-form select { text-align: center; }
.wpcf7-form input[type="checkbox"] { text-align: left; border:none;     -webkit-transition: none;
  transition: none; padding: 14px 24px !important; width: auto;}
  
.wpcf7-form input[type="checkbox"]::before {
  -moz-appearance: initial;
  top: 0px;
}
.wpcf7-form input[type="checkbox"]:checked::after {top: 4px; left:8px; }
.wpcf7-form .wpcf7-form input[type="checkbox"]:focus {
 background: none;
 border: none;
 border-bottom:none;
}
.wpcf7-form input[type="submit"] {  
background-color: #335da2; 
color: white; 
border-radius: 24px;
margin-left: 0px; margin-right: 0px; margin-top:4px;
}




/* -------------------------------------- */
/* ----    Accordion annidato v03      ----  */
/* -------------------------------------- */

.argomenti-forma-i {width: auto; margin-left: 56px;}
.argomenti-forma .apri-macro-accordion {font-weight: bold; margin-top:8px; cursor: pointer;}
.contenuto-principale-accordion { display: none;}



 .piuchiusa .verticale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
}
 .piuchiusa .orizzontale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
	 opacity: 1;
}
 .piuattivo {
	 opacity: 1;
}

 .piuattivo .verticale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);

}

 .piuattivo .orizzontale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
	 opacity: 0;
}
 .animazionepiu {
	 position: relative;
	 flex: 0 0 30px;
}
 .animazionepiu .orizzontale {
	 position: absolute;
	 background-color: #ffc454;
	 width: 20px;
	 height: 3px;
	 left: 50%;
	 margin-left: -10px;
	 top: 50%;
	 margin-top: -1px;
}
 .animazionepiu .verticale {
	 position: absolute;
	 background-color: #ffc454;
	 width: 3px;
	 height: 20px;
	 left: 50%;
	 margin-left: -1px;
	 top: 50%;
	 margin-top: -10px;
}




.item-annidato, .wc-accordion {
	 margin-top: 0px;
	/* Style the accordion panel. Note: hidden by default */
}
button.accordion { cursor: pointer;}
 .item-annidato .accordion, .wc-accordion .accordion {
	 padding: 20px 0px 5px 0px;
	 width: 100%;
	 text-align: left;
	 border: none;
	 outline: none;
	 transition: 0.4s;
	 border-radius: 0px;
	 background: none;
	 display: flex;
	 border-top: 2px solid #e8f1ef;
	 font-size: 18px;
	 justify-content: space-between;
	 align-items: center;
     min-height: 54px;
}
.noacc {
	 padding: 10px 0px 10px 0px;
	 width: 100%;
	 text-align: left;
	 border: none;
	 outline: none;
	 transition: 0.4s;
	 border-radius: 0px;
	 background: none;
	 display: flex;
	 border-top: 2px solid #e8f1ef;
	 font-size: 18px;
	 justify-content: space-between;
	 align-items: center;
     min-height: 54px;
}

.accordion-semplice p {font-size: 19px; margin-top:8px; margin-bottom: 16px;   line-height: 1.6; }

.accordion-semplice ul {
padding-left: 0px;
}

.accordion-semplice ul {list-style: disc;  display: list-item; }
.accordion-semplice ul li::marker { color:#aaa;}
.accordion-semplice ul li {
  display: block;
  position: relative;
  margin-left: 20px;
  list-style: disc;
  font-size: 19px;
  line-height: 1.1;
  display: list-item;
}

.accordion-semplice ul li p {margin: 0;}
.accordion-semplice ul li:before {
/*  position: absolute;
  left: -12px;
  content: url('../../../__matrice/design/img/ico/documento-ico-minimo.png');*/
/*
  line-height: 11px;
  font-family: 'Material Icons';
  content: "\e853";
*/


}

.lite_txt {font-weight: bold;}
 .item-annidato .active, .wc-accordion .active, .item-annidato .accordion:hover, .wc-accordion .accordion:hover {
	 background-color: none;
}
 .item-annidato .accordion:focus, .wc-accordion .accordion:focus {
	 text-decoration: underline;
}
 .item-annidato .active i, .wc-accordion .active i {
	 transform: rotate(90deg);
}
 .item-annidato .contenutoAccordion, .wc-accordion .contenutoAccordion {
	 max-height: 0;
	 overflow: hidden;
	 visibility: hidden;
	 transition-duration: 400ms;
	 transition-property: max-height, visibility;
	 transition-delay: 0, 400ms;
}
 .contenutoAccordion.open {
	 visibility: visible;
	 transition-duration: 400ms;
	 transition-property: max-height, visibility;
	 transition-delay: 400ms, 0;
     margin-bottom: 44px;
}


 .closed .vertical {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
}
 .closed .horizontal {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
	 opacity: 1;
}
 .active {
	 opacity: 1;
}

.item-annidato .aperta {display:none;}
.active .chiusa {  display: none;   }
.active .aperta {display: block;}
 .active .vertical {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
}
 .active .horizontal {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
	 opacity: 0;
}
 .circle-animation {
	 position: relative;
	 flex: 0 0 30px;
}
 .circle-animation .horizontal {
	 position: absolute;
	 background-color: white;
	 width: 20px;
	 height: 3px;
	 left: 50%;
	 margin-left: -10px;
	 top: 50%;
	 margin-top: -1px;
}
 .circle-animation .vertical {
	 position: absolute;
	 background-color: white;
	 width: 3px;
	 height: 20px;
	 left: 50%;
	 margin-left: -1px;
	 top: 50%;
	 margin-top: -10px;
}
 /* extra per v02 chinese */
/*
.contenuto-principale-accordion {
    display: none;
    transition: height 0.3s ease;
}

.contenutoAccordion {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}

.argomenti-forma.piuattivo .contenuto-principale-accordion {
    display: block;
}
*/
/* fine annidato */


/* -------------------------------------- */
/* ----    Accordion Strutturato    ----  */
/* -------------------------------------- */

.argomenti-forma-i {width: auto; margin-left: 56px;}
.argomenti-forma .bott-tog {font-weight: bold; margin-top:8px; cursor: pointer;}
.contenuto-tog { display: none;}




/*personalizzazione*/


 .piuchiusa .verticale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
}
 .piuchiusa .orizzontale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
	 opacity: 1;
}
 .piuattivo {
	 opacity: 1;
}

 .piuattivo .verticale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);

}

 .piuattivo .orizzontale {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
	 opacity: 0;
}
 .animazionepiu {
	 position: relative;
	 flex: 0 0 30px;
}
 .animazionepiu .orizzontale {
	 position: absolute;
	 background-color: #ffc454;
	 width: 20px;
	 height: 3px;
	 left: 50%;
	 margin-left: -10px;
	 top: 50%;
	 margin-top: -1px;
}
 .animazionepiu .verticale {
	 position: absolute;
	 background-color: #ffc454;
	 width: 3px;
	 height: 20px;
	 left: 50%;
	 margin-left: -1px;
	 top: 50%;
	 margin-top: -10px;
}




.faq, .wc-accordion {
	 margin-top: 0px;
	/* Style the accordion panel. Note: hidden by default */
}
button.accordion { cursor: pointer;}
 .faq .accordion, .wc-accordion .accordion {
	 padding: 20px 0px 5px 0px;
	 width: 100%;
	 text-align: left;
	 border: none;
	 outline: none;
	 transition: 0.4s;
	 border-radius: 0px;
	 background: none;
	 display: flex;
	 border-top: 2px solid #e8f1ef;
	 font-size: 18px;
	 justify-content: space-between;
	 align-items: center;
     min-height: 54px;
}
.noacc {
	 padding: 10px 0px 10px 0px;
	 width: 100%;
	 text-align: left;
	 border: none;
	 outline: none;
	 transition: 0.4s;
	 border-radius: 0px;
	 background: none;
	 display: flex;
	 border-top: 2px solid #e8f1ef;
	 font-size: 18px;
	 justify-content: space-between;
	 align-items: center;
     min-height: 54px;
}

.accordion-semplice p {font-size: 19px; margin-top:8px; margin-bottom: 16px;   line-height: 1.6; }

.accordion-semplice ul {
padding-left: 0px;
}

.accordion-semplice ul {list-style: disc;  display: list-item; }
.accordion-semplice ul li::marker { color:#aaa;}
.accordion-semplice ul li {
  display: block;
  position: relative;
  margin-left: 20px;
  list-style: disc;
  font-size: 19px;
  line-height: 1.1;
  display: list-item;
}

.accordion-semplice ul li p {margin: 0;}
.accordion-semplice ul li:before {
/*  position: absolute;
  left: -12px;
  content: url('../../../__matrice/design/img/ico/documento-ico-minimo.png');*/
/*
  line-height: 11px;
  font-family: 'Material Icons';
  content: "\e853";
*/


}

.lite_txt {font-weight: bold;}
 .faq .active, .wc-accordion .active, .faq .accordion:hover, .wc-accordion .accordion:hover {
	 background-color: none;
}
 .faq .accordion:focus, .wc-accordion .accordion:focus {
	 text-decoration: underline;
}
 .faq .active i, .wc-accordion .active i {
	 transform: rotate(90deg);
}
 .faq .panel, .wc-accordion .panel {
	 max-height: 0;
	 overflow: hidden;
	 visibility: hidden;
	 transition-duration: 400ms;
	 transition-property: max-height, visibility;
	 transition-delay: 0, 400ms;
}
 .panel.open {
	 visibility: visible;
	 transition-duration: 400ms;
	 transition-property: max-height, visibility;
	 transition-delay: 400ms, 0;
     margin-bottom: 44px;
}


 .closed .vertical {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
}
 .closed .horizontal {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
	 opacity: 1;
}
 .active {
	 opacity: 1;
}

.faq .aperta {display:none;}
.active .chiusa {  display: none;   }
.active .aperta {display: block;}
 .active .vertical {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
}
 .active .horizontal {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
	 opacity: 0;
}
 .circle-animation {
	 position: relative;
	 flex: 0 0 30px;
}
 .circle-animation .horizontal {
	 position: absolute;
	 background-color: #0EB9ED;
	 width: 20px;
	 height: 3px;
	 left: 50%;
	 margin-left: -10px;
	 top: 50%;
	 margin-top: -1px;
}
 .circle-animation .vertical {
	 position: absolute;
	 background-color: #0EB9ED;
	 width: 3px;
	 height: 20px;
	 left: 50%;
	 margin-left: -1px;
	 top: 50%;
	 margin-top: -10px;
}






/* -------------------------------------- */
/* ----    Accordion Semplice    ----  */
/* -------------------------------------- */




.faq, .wc-accordion {
	 margin-top: 0px;
	/* Style the accordion panel. Note: hidden by default */
}
button.accordion { cursor: pointer;}
 .faq .el-accordion, .wc-accordion .el-accordion {
	 padding: 20px 0px 20px 0px;
	 width: 100%;
	 text-align: left;
	 border: none;
	 outline: none;
	 transition: 0.4s;
	 border-radius: 0px;
	 background: none;
	 display: flex;
	 border-top: 2px solid #e8f1ef;
	 font-size: 18px;
	 justify-content: space-between;
	 align-items: center;
     min-height: 54px;
     cursor: pointer;
}
.noacc {
	 padding: 10px 0px 10px 0px;
	 width: 100%;
	 text-align: left;
	 border: none;
	 outline: none;
	 transition: 0.4s;
	 border-radius: 0px;
	 background: none;
	 display: flex;
	 border-top: 2px solid #e8f1ef;
	 font-size: 18px;
	 justify-content: space-between;
	 align-items: center;
     min-height: 54px;
}

.accordion-semplice p {font-size: 19px; margin-top:8px; margin-bottom: 16px;   line-height: 1.6; }

.accordion-semplice ul {
padding-left: 0px;
}

.accordion-semplice ul {list-style: disc;  display: list-item; }
.accordion-semplice ul li::marker { color:#aaa;}
.accordion-semplice ul li {
  display: block;
  position: relative;
  margin-left: 20px;
  list-style: disc;
  font-size: 19px;
  line-height: 1.1;
  display: list-item;
}

.accordion-semplice ul li p {margin: 0;}
.accordion-semplice ul li:before {
/*  position: absolute;
  left: -12px;
  content: url('../../../__matrice/design/img/ico/documento-ico-minimo.png');*/
/*
  line-height: 11px;
  font-family: 'Material Icons';
  content: "\e853";
*/


}

.lite_txt {font-weight: bold;}
 .faq .active, .wc-accordion .active, .faq .el-accordion:hover, .wc-accordion .el-accordion:hover {
	 background-color: none;
}
 .faq .el-accordion:focus, .wc-accordion .el-accordion:focus {
	 text-decoration: underline;
}
 .faq .active i, .wc-accordion .active i {
	 transform: rotate(90deg);
}
 .faq .panel, .wc-accordion .panel {
	 max-height: 0;
	 overflow: hidden;
	 visibility: hidden;
	 transition-duration: 400ms;
	 transition-property: max-height, visibility;
	 transition-delay: 0, 400ms;
}
 .panel.open {
	 visibility: visible;
	 transition-duration: 400ms;
	 transition-property: max-height, visibility;
	 transition-delay: 400ms, 0;
     margin-bottom: 44px;
}


 .closed .vertical {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
}
 .closed .horizontal {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(-90deg);
	 opacity: 1;
}
 .active {
	 opacity: 1;
}

.faq .aperta {display:none;}
.active .chiusa {  display: none;   }
.active .aperta {display: block;}
 .active .vertical {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
}
 .active .horizontal {
	 transition: all 0.4s ease-in-out;
	 transform: rotate(90deg);
	 opacity: 0;
}
 .circle-animation {
	 position: relative;
	 flex: 0 0 30px;
}
 .circle-animation .horizontal {
	 position: absolute;
	 background-color: #0EB9ED;
	 width: 20px;
	 height: 3px;
	 left: 50%;
	 margin-left: -10px;
	 top: 50%;
	 margin-top: -1px;
}
 .circle-animation .vertical {
	 position: absolute;
	 background-color: #0EB9ED;
	 width: 3px;
	 height: 20px;
	 left: 50%;
	 margin-left: -1px;
	 top: 50%;
	 margin-top: -10px;
}




/* -------------------------------------- */
/* ----    Struttura ad albero      ----  */
/* -------------------------------------- */
/*Fonte: https://codepen.io/johnbarnitz/pen/gOPbVer*/

summary {
  display: block;
  cursor: pointer;
  outline: 0; 
}

summary::-webkit-details-marker {
    display: none;
  }

body {
/*
  background-color: #191c1e;
  color: white;  
  font-size: 1.6rem;
  font-family: arial;
  margin: 0;
  padding: 3rem;
*/
}


.tree-nav__item {
  display: block;
  white-space: nowrap;
  color: #333;
  position: relative;
}
.tree-nav__item.is-expandable::before {
  border-left: 1px solid #bbb;
  content: "";
  height: 100%;
  left: 0.8rem;
  position: absolute;
  top: 2.4rem;
  height: calc(100% - 2.4rem);
}
.tree-nav__item .tree-nav__item {
  margin-left: 2.4rem;
}
.tree-nav__item.is-expandable[open] > .tree-nav__item-title::before {
  font-family: "ionicons";
  transform: rotate(90deg);
}
.tree-nav__item.is-expandable > .tree-nav__item-title {
  padding-left: 2.4rem;
}
.tree-nav__item.is-expandable > .tree-nav__item-title::before {
  position: absolute;
  will-change: transform;
  transition: transform 300ms ease;
  font-size: 1.1rem;
  content: "";

    height: 48px;
  left: 0;
  display: inline-block;
  width: 1.6rem;
  text-align: center;
    background-image: url("../img/freccia-dx.png");
background-size: 60%;
  background-position: center;
  background-repeat: no-repeat;
}

.tree-nav__item-title {
  cursor: pointer;
  display: block;
  outline: 0;
  font-size: 1.5rem;
  line-height: 3.2rem;
}
.tree-nav__item-title .icon {
  display: inline;
  padding-left: 1.6rem;
  margin-right: 0.8rem;
  color: #666;
  font-size: 1.4rem;
  position: relative;
}
.tree-nav__item-title .icon::before {
  top: 0;
  position: absolute;
  left: 0;
  display: inline-block;
  width: 1.6rem;
  text-align: center;
}

.tree-nav__item-title::-webkit-details-marker {
  display: none;
}



/* -------------------------------------- */
/* ----    Animazione su testo      ----  */
/* ----   #Animazione su testo      ----  */
/* -------------------------------------- */

.animazione-testo-i { 
	font-size:62px; font-weight:bold; line-height:0.8;

}

.animazione-testo-scorrevole {
    position: relative;
   
}

.testo-fisso {
    margin-bottom: 0px;
}

.cont-txt-scorr {
    overflow: hidden;
    height: 51px; /* Altezza del contenitore del testo */
    position: relative;
	color: #90b299;
	
}

.cont-txt-scorr .txt-scorr {
    position: absolute;
    width: 100%;
    top: -30px;
    left: 0;
    opacity: 0;
	transition: top 0.1s linear, opacity 0.1s linear;
	
}

.txt-scorr.corto { 
	line-height:0.6;
}

.cont-txt-scorr .txt-scorr.mostra-txt {
    opacity: 1;
   top: 0px;
	
}

.cont-txt-scorr .txt-scorr.nascondi-txt {
    opacity: 0;
    top: -30px; /* Sposta il testo in basso per farlo uscire */
}



/* ---------------------------------------------------- */
/*                   Input login                        */
/* ---------------------------------------------------- */
/* richiede il js*/
#loginimpag {
  width: 100%;
  width: 400px;
  text-align: center;
	margin: 0 auto;
}

#loginimpag label {
  width: 90px;
  display: inline-block;
  font-weight: bold;
}


.field_icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  cursor: pointer;
  vertical-align: middle;
  margin-left: 5px;
}

/* Pallino pieno (password nascosta) */
.filled-circle {
  background-color: black;
}

/* Pallino vuoto con bordo nero (password visibile) */
.hollow-circle {
  background-color: transparent;
  border: 2px solid black;
}
