
#categorie {
    padding: 200px 0 100px;
    
}

#categorie h1{
	
	font-size: 3em;
	line-height: 4rem;
	padding: 0px 50px 5px;
    color: var(--scuro)
    
}





#categorie ul.esteso.servizi li .lato {

	margin: 50px;
	height: 400px;
	width: 45%;

}




#categorie ul.puntivendita{
	position: relative;
	display: flex;
	flex-direction: row;
	padding: 50px 0 20px;
	justify-content: left;
	width: 100%;
	flex-wrap: wrap;

}


#categorie ul.puntivendita li {
	position: relative;
	margin:2%;
	padding: 0px;
	width: 46%;
	margin-bottom: 40px;
	height: 500px;
	text-align:left;
}

#categorie ul.puntivendita li .img {
	float: left;
	margin: 0px 0 10px;
	width: 100%;
	height: 300px;
	border-radius: 0;
	background-size: cover;
	background-position: center;
}

#categorie ul.puntivendita li .lato {
	float: left;
	margin: 0;
	padding: 0px 30px;
	width: 100%;
	height: 250px;
	border-radius: 0;
	overflow: hidden;

}

#categorie ul.puntivendita li .lato time{
	font-size: .9em;
	opacity: 0;

}


#categorie ul.esteso{
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 50px 0 20px;
	justify-content: left;
	width: 100%;
	flex-wrap: wrap;

}


#categorie ul.esteso li {
	position: relative;
	margin:1.5%;
	padding: 0px;
	margin-bottom: 0px;
	text-align:left;
	display: flex;
	flex-direction: row;
		border-radius: 0;
	background-position: center;
	background-size:cover; /* "padding" di 20px per lato */
}

#categorie ul.esteso li.f_right {

	flex-direction:row-reverse;
}


#categorie ul.esteso li .box{
	position: relative;
	margin:50px;
	margin-left: 50%;
	width:50%;
	padding: 50px;
	text-align:left;
	overflow: hidden;
	min-height: 460px;
}

#categorie ul.esteso li .box button:hover{
	background-color: var(--scuro);
	color: #fff;
}


#categorie ul.esteso li .box button{
	margin-left: 20px;
	padding: 10px 20px;
	border: 1px solid var(--chiaro);
	background-color: #fff;
	cursor: pointer;
}


#categorie ul.esteso li .box.f_right{
	margin-left: 50px;
}


#categorie ul.esteso li .img {
	float: left;
	margin: 0px 0;
	width: 100%;
	height: 500px;
	border-radius: 0;
	background-size: contain;
	background-position: center;
}


#categorie ul.esteso.certificazioni li .img {
	float: left;
	margin: 5%;
	width: 50%;
	height: 400px;
	border-radius: 0;
	background-size: contain;
	background-position: center;
}


#categorie ul.esteso.certificazioni li {
	width: 80%;
	margin: 10px 10%;
	height: 500px;
	border-radius: 0;
	background-position: center;
	background-size:cover; /* "padding" di 20px per lato */
	background-color: #fff;
}

#categorie ul.esteso.certificazioni li .box{
	width: 100%;
	height: 500px;
	margin: 0;
	background-color: #fff;
	padding: 5%;
	border: 0;

}




#categorie ul.esteso li .img.f_right {
	float: right;
}

#categorie ul.esteso li .lato {
	float: left;
	margin: 0;
	padding: 40px;
	width: 40%;
	background-color: var(--chiaro);
	height: 500px;
	border-radius: 0;
	overflow: hidden;

}

#categorie ul.esteso li .lato.f_right {
	margin-left: 10%;

}



#categorie ul li h3{
	font-family: "Source Serif", serif;
	font-size: 1.8rem;
	font-weight: 900;
	color: var(--arancio);

	padding: 5px 20px;

}

#categorie ul li h5{
	font-size: 1.6rem;
	font-weight: 500;
	padding: 10px 20px;
	min-height: 25px;

}

#categorie ul li time{
	font-size: 1em;
	font-weight: 300;
	padding: 5px 5px;

}

#categorie ul li p{
	font-size: 1rem;
	line-height: 1.8em;
	font-weight: 300;
	padding:10px 20px;
	color: var(--arancio);

}




/*__________________CONTENUTO________*/


#contenuto{
    padding: 80px 0 0px;
    
}

#menu.top{
	padding-top: 150px;
    
}

#contenuto.top{
	padding-top: 200px;
    
}


#contenuto .altezza {

	min-height: 300px;
    
}
.sfondo {

background-position: top right;
}

.sfondolato {

	background-position: bottom left;
	}

.sfondobottom {
		background-position: bottom right;
		padding-bottom: 100px;
		}
	

#contenuto article {
    padding: 50px;
    
}


#contenuto #mappa{
	height: 400px;
	background-color: #fff;
}

#contenuto #mappa #gmaps-canvas{
	height: 400px;
}


#contenuto .two-columns {
  column-count: 2; /* numero di colonne */
  column-gap: 30px; /* spazio tra le colonne */
  padding-left: 30px;
}


#contenuto.stampa .immagine{

	background-size: contain;
}



#contenuto #indice-list{
	position: absolute;
	right: 20px;
	top: 200px;
	max-width: 20%;
	background-color: var(--chiaro);
}

#contenuto #indice-list li{
	padding: 10px;
	font-size: .9rem;
	margin: 0;
	border-bottom: 1px dotted #ccc;
	list-style: none;
}


#contenuto h1{
	font-size: 4em;
	font-weight: 600;
	padding: 0px 50px 20px;
    color: var(--nero);
	font-family: "Source Serif", serif;
    
}

#contenuto h1 span{
	color: var(--verdechiaro);
	
}

#contenuto .center{
	text-align: center;
}
#contenuto.stampa h1{
	font-size: 3em;
	line-height: 2.6rem;
	font-weight: 600;
	padding: 0px 50px 20px;
    color: var(--scuro)
    
}


#contenuto.bilancio article h1{
	font-size: 4em;
	font-weight: 600;
	padding:20px 50px;
    color: var(--arancio);
	text-align: left;
	font-family: "Source Serif", serif;
    
}


#contenuto.bilancio .immagine{
	position: fixed;
	top: 0;
	left: 0;
	height: 100vh;
	width: 80%;
	z-index: 0;
	background-size: contain;
	background-position: left center;

}

#contenuto.bilancio .riga {
	position: fixed;
	top:200px;
	background-color: var(--arancio);
	left: calc(40% - 20px);
	height: 60%;
	width: 20px;
	z-index: 0;
}

#contenuto.bilancio .colonna{
	background-color: #fff;
	margin: 0;
	margin-left: 40%;
	width: 60%;
	z-index: 1;
	min-width: auto;
	overflow: hidden;

}

#contenuto article h2{
	font-size: 2.3em;
	line-height: 1.2em;
	padding: 30px 50px 10px;
	font-weight: 600;
	color: var(--arancio);
    
}
#contenuto #fixed-page.active {
    position: fixed;
    inset: 0; /* sostituisce top:0, left:0, width:100%, height:100vh */
    background-color: #fff;
    z-index: 200;
    padding: 0px; /* meno invasivo, ma modificabile */
    display: flex;
    justify-content: center;
    align-items: center;
	overflow: hidden;
}


#contenuto #fixed-page .relative {
	 padding: 5% 2%;
}

#contenuto #fixed-page.active .relative {
	 padding: 2%;
	 height: 96%;
}



#contenuto #fixed-page.active canvas {
    max-width: 100%; /* padding totale orizzontale */
    max-height:90% ; /* padding totale verticale */
    width: auto;
    height: auto;
    object-fit: contain;
}

#contenuto canvas {
	position: relative;
	width: auto;
	left: 50%;
	transform: translateX(-50%);
margin: auto;
border: 1px solid #ccc;
max-height: 70vh;
max-width: 1000px;
margin:50px 10px;
}

#contenuto #controls {
	position: absolute;
	top: 50%;
	width: 100%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 100;
	display: none;
	text-align: center;
	margin: 0 auto;
}





#contenuto #controls button {
	padding: 10px 10px;
	font-size: 2em;
	text-align: center;
	background-color: #fff;
	border:0;
	cursor: pointer;
	margin: 0 10px;
}


#contenuto #controls button#prev {
	left: 0;
	position:absolute;
}


#contenuto #controls button#next {
	right: 0;
	position:absolute;
}

#contenuto .sottocontrol{
	display: flex;
	justify-content: center;
	margin-top: 20px;
	background-color: var(--chiaro);
	margin: 0 auto;
	max-width: 300px;
	border-radius: 20px;
}

#contenuto .sottocontrol button{
	margin: 5px;
	border: 0;
	background-color: var(--chiaro);
	color: #333;
	padding:10px;
	font-size: 1em;
	cursor: pointer;


}

#contenuto .sottocontrol button:hover{
	background-color: #fff;
}

#contenuto button#full-screen {

}

#contenuto button#chiudi-fullscreen {
	display: none;

}

#contenuto #fixed-page.active #chiudi-fullscreen {
	display: block;
}

#contenuto #fixed-page.active #full-screen {
	display: none;
}


#contenuto button#page-info {
}


#contenuto #controls button:hover {
	color: var(--scuro);
}

article h4{
	font-size: 1.5em;
	padding: 0px 50px 5px;
    
}

article h3{
	font-size: 1.7em;
	padding: 10px 50px 10px;
	color: var(--verde);
	font-weight: 600;
    
}

article p {
	font-size: 1.2rem;
	font-weight: 200;
	padding: 10px 50px;
	line-height: 1.8em;
}


#contenuto li {
	font-size: 1.2rem;
	font-weight: 400;
	padding: 10px 0px;
	line-height: 1.8em;
	margin-left: 80px;
	list-style:square;
}

#contenuto img.minisl {
	float: left;
    width: 50px;
	height: 50px;
	margin: -10px 10px 0;
}



#contenuto .img-sx .lato{
	right: 0;
}

#contenuto .img-dx .lato{
	left: 0;
}

#contenuto .lato {
	position: absolute;
	z-index: 2;
	margin: 70px 0;
	width: 48%;
	height: 600px;
	padding: 40px 20px 0;
	overflow: hidden;
}

#contenuto .contbox{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;



}


#contenuto .box h3 {
	font-family: "Source Serif", serif;
	font-size: 2em;
	padding: 40px 20px 10px;
}


#contenuto .box p {
	font-size: 1.2em;
	line-height: 1.8em;
	padding: 10px 20px;
}

#contenuto .box {
	width: 44%;
	margin: 2%;
	padding: 40px;
		background-color: var(--chiaroceleste);
	height: 450px;
	border: 10px solid var(--celeste);
}

#contenuto .lato h2 {
	font-size: 1.8em;
	font-weight: 200;
	padding: 10px 30px;
	line-height: 2rem;
}

#contenuto .lato p {
	font-size: 1em;
	font-weight: 200;
	padding: 10px 30px;
	line-height: 1.8em;
}

#contenuto .lato button {
	font-size: 1em;
	font-weight: 200;
	margin-left: 20px;
	padding: 5px 10px;
	line-height: 1.8em;
	background-color: transparent;
	border: 0;
	cursor: pointer;
}

#contenuto .lato button:hover {
	border-bottom: 1px solid #333;
}

#contenuto .colonna{
	position: relative;
	width: 60%;
	min-width: 1250px;
	margin: auto;
}

@media screen and (max-width: 1200px) {
	#contenuto .colonna{
	width: 90%;
	margin-left: 10%;
	}
}


#contenuto .immagine{
	position: relative;
	top: 0;
	height:50vh;
	width: 100%;
	overflow: hidden;
	background-position: center;

}

#contenuto .immagine.fix{
	top: 0px;
	position:fixed;
}


#contenuto picture {
	position:absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	margin: 0;
}

#contenuto picture img {
	position: absolute;
	width:100%;
	height:100%;
	object-fit: cover;
	margin: 0;
}

/*____________AZIENDA______________*/

#contenuto.azienda {
	margin: 0px auto;;
}

#contenuto.azienda article {
    padding: 0px;
    
}

#contenuto.azienda .slides_tabs {
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 20px 0;
	list-style: none;
}

#contenuto.azienda .slides_tabs li {
	list-style: none;
	background-color: #333;
	border-radius: 50%;
	height: 20px;
	width: 20px;
	margin: 5px;
	cursor: pointer;
	font-size: 1em;
	color: #333;
	padding: 0;
	line-height: normal;
	overflow: hidden;
	text-align: center;
}

#contenuto.azienda .slides_tabs li.slides_here {
	background-color: var(--arancio);
	color: var(--arancio);
}

#contenuto.azienda .slides_tabs li a:link, #contenuto.azienda .slides_tabs li a:visited {
	color: #333;
	text-decoration: none;
}

#contenuto.azienda .slides_tabs li.slides_here a:link, #contenuto.azienda .slides_tabs li.slides_here a:visited {
	color: var(--arancio);
	text-decoration: none;
}




#contenuto.azienda article{
	width: 100%;
	max-width: 1000px;
	margin: auto;
	padding: 50px 0;
}


#contenuto.azienda .gallery{
	position: relative;
	display: block;
	top: 0;
	height:40vw;
	width: 100%;
	overflow: hidden;
	margin: 0;
	padding: 0;

}

#contenuto.azienda .gallery li{
	position: absolute;
	top: 0;
	left: 0;
	height:40vw;
	width: 100%;
	max-width: none;
	overflow: hidden;

}




#contenuto #opengallery .gallery {
	margin: 50px 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	max-height: 1280px;
	height: auto;
	padding: 10px;
	overflow: hidden;
}

#contenuto #opengallery  .gallery li {
	position: relative;
	height: 400px;
	width: 30%;
	margin: 10px;
	flex: 1 1 auto;
	background-size: cover;
	background-position: center;
	max-width: 50%;
	list-style: none;
	cursor: pointer;
}
#contenuto #opengallery  .gallery li:hover {
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;


}



#contenuto #opengallery  .gallery li.stretta {
	width: 15%;

}


#contenuto.azienda article .min{
	min-height: 320px;
}

#contenuto.azienda article p {
   	font-size: 1.2em;
	font-weight: 200;
	padding: 10px 20px;
	line-height: 1.8em;
    
}

#contenuto.azienda article h1 {
	font-weight: 600;
	padding: 40px  20px 20px;
	position: relative;
	top:auto;
	left: auto;
	text-align: right;
	line-height: 1em;
	color: #fff;
    
}

 #contenuto.azienda article .min h2 {
	padding:  20px;
	position: relative;
	top:auto;
	left: auto;
	padding: 20px;
	font-size: 1.8em;;
	line-height: 1.4em;
	font-weight: 300;
	text-align: right;
	color: var(--chiaro);
    
}

#contenuto.azienda .immagine{
	position: relative;
	height:450px;
	width: 100%;
	margin:5% 0;
	overflow: hidden;
}



#contenuto.azienda picture {
	position:absolute;
	top: auto;
	left: auto;
	width: 100%;
	height: 100%;
	margin: 0;
}



#contenuto.azienda picture img.contain {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	height: auto;
	width: 100%;
	object-fit: contain;

}


#contenuto.azienda .evoluzione {
	position: relative;
  padding: 20px 50px;
  position: relative;
  display: block;
  background-color: var(--chiaro);
}

#contenuto.azienda .evoluzione .riga {
	position: absolute;
	bottom: 0;
	right: 0;
	height: 30%;
	width: 20px;
	background-color: var(--arancio);
}


#contenuto.azienda .evoluzione .evento {
	position: relative;
	width: 100%;
	height: 120px;
	margin: 0;
	padding: 0;
}

#contenuto.azienda .evoluzione .evento h2 {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	text-align: right;
  width: 200px;
  height: 120px;
  padding-top: 30px;
  font-size: 3rem;
  color: var(--arancio);
  font-weight: 100;
  border-right: 2px dotted var(--arancio);
}

#contenuto.azienda .evoluzione .evento p {
  margin: 0;
  color: #555;
  	position: absolute;
	top: 0;
	margin: 0;
	left: 200px;
	width: 500px;
  font-size: 1.1rem;
  line-height: 1.5rem;
  padding-top: 30px;
}




#contenuto .compatto {
	margin: 0px 0px;
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}



 

#contenuto .colonnadx {
	width: 46%;
	margin: 2%;
	padding:40px;
		height:450px;
		background-color: var(--chiaroceleste);
		border: 10px solid var(--celeste);

}


#contenuto.azienda .colonnadx h2 {
	font-size: 1.8em;
	font-weight: 600;
	padding: 20px 10px;
	margin: 0;
	line-height: 1.5rem;
}

#contenuto.azienda .colonnadx p {
	font-size: 1.2em;
	font-weight: 300;
	padding: 10px;
	margin: 0;
	line-height: 1.6em;
}


/*_______________*/




#contenuto ul {
	list-style: none;
}

#contenuto picture img.contain {
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	height: auto;
	width: 100%;
	object-fit: contain;

}



#contenuto .img-sx .img{
    float: left;
    margin-right: 10px; /* Aggiunge un margine a destra per separare l'immagine dal testo */
}

/* Stile per l'immagine a destra */
#contenuto .img-dx .img{
    float: right;
    margin-left: 10px; 
}

.clearfix::after {
    content: "";
    display: table;
    clear: both;
	padding: 0px 0;
}

#contenuto .correlati {
	position: relative;
}

#contenuto .correlati h2 {
	font-family: 'Abril Fatface',sans-serif;
	font-size: 5em;
	line-height: 4rem;
	padding: 0px 0px 30px 10%;
}

#contenuto .correlati h3 {
	font-size: 2em;
	line-height: 2rem;
	color: var(--verde);
	text-align: center;
	padding: 10px;
}

#contenuto .correlati h5 {
	font-size: 1.2em;
	line-height: 1.8rem;
	padding: 10px ;
}

#contenuto .correlati p {
	font-size: 1.2em;
	line-height: 1.8rem;
	padding: 20px 10%; 
	color: var(--verde);
	display: none;
}

#contenuto .correlati ul {
	display: flex;
	justify-content: left;
	flex-direction: row;
	padding: 0px 0;
}

#contenuto .correlati ul li{
	list-style: none;
	width: 30%;
	margin: 1.5%;
	padding: 0px;
	background-color: #fff;
}

#contenuto .correlati ul li .lato{
	position: relative;
	background-color: #fff;
	width: 100%;
	height: auto;
	padding: 0;
	margin: 0;
}

#contenuto .correlati ul li div{

	padding: 20px;
}

#contenuto .correlati ul li .img{
	width: 100%;
	height: 280px;
	background-size: cover;
	background-position: right;
	overflow: hidden;
}


#contenuto .correlati ul li p {
	font-size: 1em;
	line-height: 1.5rem;
	padding: 5px 10px; 
	color: var(--verde);
}

#contenuto .correlati ul li h2 {
	font-size: 1.6em;
	line-height: 1.8rem;
	color: var(--scuro);
	padding: 10px 10px;
}

#contenuto .correlati ul li h3 {
	font-size: 1.4em;
	font-weight: 900;
	line-height: 1.5em;
	padding: 5px 0px;
	text-align: left;
}

#contenuto .correlati ul li h5 {
	font-size: 1em;
	font-weight: 500;
	line-height: 1.5em;
	padding: 5px 0px;
	text-align: left;
}

/*_______UN SOLO CONTENUTO _______*/


#contenuto .correlati ul.contenuto .correlati1 li{
	width: 100%;
	padding: 20px;
	background-color: #fff;
}

#contenuto .correlati ul.contenuto .correlati1 li div{

	padding: 40px;
}

#contenuto .correlati ul.contenuto .correlati1 li .img{
	float: left;
	width: 50%;
	height: 500px;
	margin-right: 30px;
	background-size: cover;
	background-position: right;
}

#contenuto .correlati ul.contenuto .correlati1  li p {
	font-size: 1.2em;
	line-height: 1.8rem;
	padding: 10px; 
	color: var(--verde);
}

#contenuto .correlati ul.contenuto .correlati1 li h2 {
	font-size: 2.6em;
	line-height: 2.8rem;
	color: var(--scuro);
	padding: 10px;
}

#contenuto .correlati ul.contenuto .correlati1 li h3 {
	font-size: 1.85em;
	line-height: 1.85rem;
	color: var(--verde);
	padding: 10px;
}





/*_______DUE CONTENUTI _______*/

#contenuto .correlati ul.contenuto .correlati2 li{
	width: 44%;
	margin: 3%;
	height: 650px;
	padding: 0px;
	background-color: #fff;
}

#contenuto .correlati ul.contenuto .correlati2 li div{

	padding: 20px;
}

#contenuto .correlati ul.contenuto .correlati2 li .img{
	width: 100%;
	height: 330px;
	margin: 0;
	background-size: cover;
	background-position: right;
}

#contenuto .correlati ul.contenuto .correlati2  li p {
	font-size: 1.1em;
	line-height: 1.8rem;
	padding: 10px; 
	color: var(--verde);
}

#contenuto .correlati ul.contenuto .correlati2 li h2 {
	font-size: 2em;
	line-height: 2.2rem;
	color: var(--scuro);
	padding: 10px;
}

#contenuto .correlati ul.contenuto .correlati2 li h3 {
	font-size: 1.4em;
	line-height: 1.85rem;
	color: var(--verde);
	padding: 10px;
}


#contenuto .gallery {
	margin-top: 50px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	max-height: 1280px;
	padding: 10px;
	overflow: hidden;
}

#contenuto .gallery li {
	height: 400px;
	width: 30%;
	margin: 10px;
	flex: 1 1 auto;
	background-size: cover;
	background-position: center;
	max-width: 50%;
	list-style: none;
}

#contenuto .gallery li.stretta {
	width: 15%;

}

#contenuto .allegati ul{
	font-size: 1.2rem;
	display: flex;
	flex-direction: row;
	justify-content: left;
	flex-wrap: wrap;
	margin: 10px;
}


#contenuto .allegati ul li{
	padding-left: 100px;
	margin-left: 60px;
	padding-top: 10px;
	font-size: .9rem;
	position: relative;
	list-style: none;
	cursor: pointer;
	text-align: left;
}

#contenuto .allegati ul li .icon{
	position: absolute;
	left: 0;
	top: 0;
	color: var(--arancio);
}
#contenuto .allegati ul li span{
	margin: 5px;
	font-size: 2.2em;
}



#contenuto .allegati ul li span:hover{
	color: var(--verde);
}




#menu {
	padding:0px 0;
		background-color: #fff;
}

#menu h1{
	font-size: 2.6em;
	text-align: center;
	line-height: 1.2em;
	font-weight: 200;
	padding: 0px 50px 20px;
    color: var(--scuro)
    
}

#menu h2{
	font-size: 1.5em;
	line-height: 2rem;
	padding: 10px 50px 10px;
	font-weight: 400;
    
}

#menu h4{
	font-size: 1.5em;
	padding: 0px 50px 5px;
    
}

#menu h3{
	font-size: 1.5em;
	padding: 0px 50px 5px;
    
}

#menu p {
	font-size: 1.2em;
	font-weight: 200;
	padding: 10px 50px;
	line-height: 1.8em;
}



#menu ul{
	padding:5px 50px;

}

#menu ul li{
	text-align: center;
	display: flex;
	font-size: 1em;
	margin: 0;
	padding:5px;
	flex-direction: row;
	width: 100%;
	justify-content: center;
	text-align: center;
}

#menu ul li .auto{
	width: 100%;
}

#menu ul li .media{
	width: 20%;
}


#menu ul li img{
	padding: 2px;
	opacity: .6;
}


#menu .gallery {
	margin-top: 50px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	max-height: 1280px;
	padding: 10px;
	overflow: hidden;
}

#menu .gallery li {
	height: 400px;
	width: 30%;
	margin: 10px;
	flex: 1 1 auto;
	background-size: cover;
}

#menu .gallery li.stretta {
	width: 10%;

}



