/*---------------------------------
	IMPORTS
-----------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Qwitcher+Grypen:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css");
@import 'theme-alder.css';

/* @group CSS Reset & Basics  */
a{
	text-decoration: none;
	outline: none; /* ELIMINA SELEZIONE TRATTEGGIATA */
}
a:link, a:visited{
	color: var(--theme-primary);
}
a:hover, a:active, a:focus{
	color: var(--theme-primary-dark);
}
.tab a:link, .tab a:visited{
	color: var(--body-color);
}
:focus-visible{
	outline: none !important;
}
.bi-lg{
	font-size: 1.5rem;
}
.btn{
	border-radius: var(--border-radius);
}
.btn-pill{	/* bottone a "pillola" */
	border-radius: 20px;
	padding-left: 10%;
	padding-right: 10%;
}
.btn-circle{
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	font-size: 1.3rem;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
}
.btn-circle:hover, .btn-circle:active,
.btn-pill:hover, .btn-pill:active{
	opacity: 0.75;
}
.btn-hover::after{
	top: 0;
	left: 0;
	height: 0;
	width: 100%;
	position: absolute;
	content: "";
	z-index: -1;
	transition: all .3s;
}
.btn-hover:hover::after{
	height: 100%;
}
a.btn-primary,  a.btn-secondary, a.btn-danger,
a.btn-warning, a.btn-info, a.btn-success, a.btn-dark{
	/* SILVIA: solo colore, no altri parametri */
	color: white;
}
a.btn-outline-dark{
	color: #333333;
}
.btn-outline-light{
	color: var(--body-color);
}
/*.btn-success{
	background-color: #2e8b57;
}
.btn-warning{
	background-color: #ffcc00;
	border-color: #ffcc00;
}*/

/*PER RIDEFINIRE IL BTN DI BOOTSTRAP*/
.btn-primary{
	color: var(--theme-primary-txt);
	background-color: var(--theme-primary);
	border-color: var(--theme-primary-dark);
}
.btn-outline-primary{
	color: var(--body-color);
	border-color: var(--theme-primary);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.btn-primary:active:focus, .btn-primary:active:hover,
.btn-primary:not(:disabled):not(.disabled):active{
	color: var(--theme-primary-txt);
	background-color: var(--theme-primary-dark);
	border-color: var(--theme-primary-dark);
	box-shadow: none;
}
.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active,
.btn-outline-primary:active:focus, .btn-outline-primary:active:hover,
.btn-outline-primary:not(:disabled):not(.disabled):active{
	background-color: var(--theme-primary);
	border-color: var(--theme-primary);
	color: var(--theme-primary-txt);
}

.apice{
	vertical-align: super;
	font-size: .75rem;
}
.barrato{
  color: var(--body-color-light) !important;
  text-decoration: line-through;
  font-weight: 400;
}
.bianco{
	color: white;
}
blockquote{
   background-color:var(--bg-light);
   font-size: 1.5rem;
   padding: 1.5rem;
   border-left: 3px solid var(--theme-primary-dark);
}
.ellipses{
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	display: inline-block;
	max-width: 150px;
}
.grande{
	font-size: 1.2rem;
}
pre{
	white-space: break-spaces;
}
.info{
	color: var(--body-color-light);
	font-size: .9rem;
	line-height: 1.2;
}

.nascondi, .hidden{
	display: none;
}
.break-word{
   word-wrap: break-word;
}
.clear{
	clear: both;
}
.clearfix:after{
	clear: both;
	content: ' ';
	display: block;
	font-size: 0;
	height: 0;
	line-height: 0;
	visibility: hidden;
	width: 0;
}
.piccolo{
	font-size: .9rem;
}
.preload{
	text-align: center;
	padding: var(--padding-base);
}
.text-center{
	text-align: center !important;
}
.text-left{
	text-align: left !important;
}
.text-right{
	text-align: right !important;
}
.text-justify{
	text-align: justify !important;
}
.margin-bottom-base{
	margin-bottom: var(--margin-bottom-base);
}
hr{
	border: 1px dotted var(--theme-color1-bg);
	clear: both;
	height: 0;
	opacity: 1;
	margin: 50px 0 50px;
}
#sezione-cont{
	margin-top: 1.5rem;
}
img{
	border: 0;
}
.img-responsive, .img-fluid{
	/* SILVIA: NON MODIFICARE! serve per i contenuti "vecchi" importati */
	height: auto !important;
	max-width: 100%;
}
.object-fit-cover{
	object-fit: cover;
	object-position: center;
	max-width: 100%;
}
.object-fit-contain{
	object-fit: contain;
	object-position: center;
	max-width: 100%;
}
.vertical-middle{
	position: relative;
	top: 50%;
	transform: perspective(1px) translateY(-50%);
}
.lazy{
	background-image: url(../../easyAdmin/common/images/grey.gif); /* sfondo predefinito per il caricamento immagini "lazy" */
}
img.lazy{
   opacity: 1;
   transition: opacity 0.3s;
}
img.lazy[data-src]{
   opacity: 0;
}
.tooltip > .tooltip-inner{
   font-size: .8rem;
}
.page-video{
	text-align: center;
	position: relative;
	max-width: 640px;
	margin: 0 auto;
}
.bounce{
	animation: bounce 2s infinite;
}
/* @group PUNTI ELENCO */
.elenco{
	list-style-type: square;
	text-align: left;
}
.elenco a:link, .elenco a:visited,
.elencopdc a:link, .elencopdc a:visited{
	color: var(--body-color);
}
.elenco a:hover, .elenco a:active,
.elencopdc a:hover, .elencopdc a:active{
	color: var(--theme-primary);
}
.elenco2col > li{
	width: 50%;
	float: left;
}
.elenco4col > li{
	width: 25%;
	float: left;
}
ul.bullet{
	margin: 1rem 0 2rem 0;
    padding: 0;
	list-style-type: none;
}
ul.bullet li{
	position: relative;
	line-height: 1.8;
	list-style-type: none;
	margin-bottom: .5rem;
	padding: 0 2rem;
}
ul.bullet li:before{
   /* Per il codice dei simboli: https://fontawesome.com/icons?d=gallery&m=free  */
   top: -3px;
   left: 0;
   font-size: 1.2rem;
   font-weight: 900;
   position: absolute;
   font-family: var(--icon-font-family);
}
ul.bullet-deco1 li:before{
	content: "\f00c";  /*CHECK */
   /*content: "\f560";*/ /*double check */
	color: var(--theme-success);
}
ul.bullet-deco2 li:before{
	content: "\f164";  /*LIKE */
	color: var(--theme-color2-bg);
}
ul.bullet-deco3 li:before{
	content: "\f185";  /* SOLE */
	color: var(--theme-color1-bg);
}
ul.bullet-deco4 li:before{
	content: "\f061";  /*FRECCIA*/
	color: var(--theme-evidence-bg);
}
/* @end */

/* @group form */
.form-group, .form-check{
	position: relative;
}
.form-control, .form-select, .form-check-input,
.form-control-static{
	border-radius: var(--border-radius);
	border-color: var(--border-color);
}
.form-check-input{
	margin-top: .575rem;
}s
.form-control::placeholder{
	color: var(--body-color-light);
}
label, .form-label{
	font-weight: 400;
	position: relative;
	/* padding: .375rem 0;
	margin-bottom: 0;
	line-height: 1.5; */
}
.label-danger{
	background-color: var(--theme-danger);
	color: var(--theme-danger-txt);
	padding: 2px 8px;
	border-radius: var(--border-radius);
	font-size: .9rem;
}
.label-danger a:link,
.label-danger a:visited{
	color: var(--theme-danger-txt);
}
.fullrow{
	clear: both;
	margin-bottom: 0.5rem;
	position: relative;
	text-align: left;
	width: 100%;
	padding: 2px 0;
}
.fullrow label,
.fullrow .campo{
	min-height: 34px;
	line-height: 34px;
	padding-top: .4rem;
	padding-bottom: .4rem;
}
fieldset.border,
.form-sezioni fieldset{
	margin: 1.5rem 0 1rem 0;
	padding: var(--padding-base);
	border: 1px solid var(--border-color);
}
legend{
	border-bottom: none;
	color: var(--text-light);
	font-weight: 300;
	font-size: .85rem;
	padding: 2px 20px;
	text-transform: uppercase;
	background-color: var(--body-bg);
	margin: -1.8rem 1rem 0.5rem;
	width: auto;
}
textarea{
	min-height: 60px;
}
.checkbox, .radio{
	display: inline-block;
   margin-right: 50px;
}
.listcheck{
	line-height: 1.4;
	margin-left: 20px;
}
.form-default .control-label{
	padding-right: 45px;
   text-align: right;
}
.help-message{
	/*display: block !important;
	display: none;  IE6 e inferiori */
	font-size: 1rem;
	margin-right: 1.2rem;
	float: right;
	color: #0057aa;
}
.help-message em,
.required-message em{
	border-radius: 3px;
	color: black;
	font: 11px/normal Arial,sans-serif;
	left: -9999px;
	padding: 4px;
	position: absolute;
	text-transform: none;
	z-index: 10;
}
.help-message em{
	background: #d8e5f5;
	border: 1px solid #0057aa;
}
.required-message em{
	background: var(--bg-medium);
	color: var(--theme-evidence-bg);
}
.help-message:hover em,
.required-message:hover em{
	left: 30px;
	top: -5px;
}
.no-required,
.required-message{
	position: absolute;
	height: 24px;
	width: 24px;
	right: 0;
    top: 5px;
}
.icon-help, .icon-required{
	cursor: help;
}
.icon-help{
	color: #0057aa;
}
.img-icon{
	margin-right: 5px;
	max-width: 60px;
}
.required-message{
	display: block;
	font-size: .85rem;
	color: var(--theme-evidence-bg);
}
.required-message:hover em{
	white-space: nowrap;
}
.captcha-cont{
	display: inline-block;
}
.input-group-text{
	padding: 10px;
}
input[type=number]{
	-moz-appearance: textfield;
	appearance: textfield;
}
.field-icon{	/* occhio campo password  */
	position: absolute;
	right: .65rem;
	z-index: 2;
	top: .5rem;
}
.form-control-plaintext{
	color: var(--body-color);
}
.grecaptcha-badge{
	visibility: hidden;
}
/* @end */

/* @group CHECKBOX */
 /* Customize the label (the container) */
.checkbox-cont{
   display: block;
   position: relative;
   padding-left: 2.5rem;
   margin-bottom: .5rem;
   line-height: 1.5;
   user-select: none;
}
/* Hide the browser's default checkbox */
.checkbox-cont input{
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
/* Create a custom checkbox */
.checkmark{
   position: absolute;
   left: 0;
   height: 25px;
   width: 25px;
   background-color: var(--bg-light);
   border: 1px solid var(--border-color-dark);
   border-radius: var(--border-radius);
}
.checkmark-radio{
   border-radius: 50%;
}
/* On mouse-over, add a grey background color */
.checkbox-cont:hover input ~ .checkmark{
   background-color: var(--theme-primary);
}
/* When the checkbox is checked, add a blue background */
.checkbox-cont input:checked ~ .checkmark{
	background-color: var(--theme-primary);
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after{
	content: "";
   position: absolute;
   display: none;
}
/* Show the checkmark when checked */
.checkbox-cont input:checked ~ .checkmark:after{
   display: inline-block;
}
/* Style the checkmark/indicator */
.checkbox-cont .checkmark:after{
	left: 9px;
   top: 5px;
   width: 5px;
   height: 10px;
   border: solid white;
   border-width: 0 3px 3px 0;
   transform: rotate(45deg);
}
/* @end */

/* @group table, righe etc.*/
table{
	border-collapse: collapse;
	border-spacing: 0;
	max-width: 100% !important;
	color: var(--body-color) !important;
}
.table-hover tbody tr:hover{
	color: var(--body-color) !important;
}
.table-dark{
	color: white !important;
}
.table > thead > tr > th{
	border-bottom: none;
}
td, th{
	vertical-align: top;
}
.bg1{
	background-color: transparent;
}
.bg2{
	background-color: var(--bg-light);
}
/* @end */

/* @group BOX BASE  */
.doubleview{
	margin-bottom: var(--margin-bottom-base);
	text-align: right;
}

.box{
   border-radius: var(--border-radius);
   position: relative;
}
.box > a{
   display: flex;
   flex-flow: column;
   height: 100%;
}
.d-flex .box{
	align-self: stretch; /* valore default, allunga in altezza forse inutile*/
	height: 100%;
}
/*.box a:link, .box a:visited{
	color: var(--body-color);
}
.box:hover a .boxlink, .box:hover .boxlink a{
	background-color: var(--theme-color1-bg);
	color: var(--theme-color1-txt);
}*/
.boxico{
	position: relative;
	overflow: hidden;
}
h3.boxtitolo{
	font-size: 1.2rem;
	font-weight: 600;
	margin-top: 1rem;
}
.boxtitolo a:link, .boxtitolo a:visited,
.boxtesto a:link, .boxtesto a:visited,
a:link .boxtitolo, a:visited .boxtitolo,
a:link .boxtesto, a:visited .boxtesto{
	color: var(--body-color);
}
.text-white .boxtitolo a:link, .text-white .boxtitolo a:visited,
.text-white .boxtesto a:link, .text-white .boxtesto a:visited,
.text-white a:link .boxtitolo, .text-white a:visited .boxtitolo,
.text-white a:link .boxtesto, .text-white a:visited .boxtesto{
	color: white !important;
}
.boxtesto{
	order:4;
	line-height: 1.3;
}
/*h3.boxtitolo span,
.boxdata, data{
	text-transform: uppercase;
}*/
.boxtimer{
	font-size: smaller;
	position: absolute;
	width: 100%;
    bottom: 0;
	padding: 5px;
	z-index: 10;
	color: white;
	background-color: var(--theme-evidence-bg);
}
.sezcolore::before{
  /* aggiunge un pallino di colore prima del nome */
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: var(--sezcolore);
	margin-right: .5rem;
	vertical-align: middle;
}
.bg-sezcolore{
   background-color: var(--sezcolore);
   color: white !important;
   text-shadow: 1px 1px 0 black;
   position: relative;
   overflow: hidden;
}
/* @end */

#home-cont{
	overflow: hidden;
}
#boxcont-evid1 .heading{
	display: none;
}

.modelli-home{
	margin-left: 20%;
	margin-right: 10%;
	height: 100%;
}
.modelli-home h2{
	text-transform: uppercase;
	font-size:4rem;
	margin-top: 6rem;
}
.modelli-home .boxcontent{
	display: flex;
    justify-content: top;
    flex-direction: column;
    height: 30%;
    /*height: 90%;*/
}
.modelli-home .boxlink{
	position: relative;
	left: 1rem;
	/*bottom: 4rem;*/
	padding: 0;
}
.modelli-home .boxlink .btn{
	text-transform: uppercase;
}


/* @group BOXHORIZONTAL */
.boxhorizontal{
   flex-flow: row;
}
.boxhorizontal h3.boxtitolo{
	font-size: 2rem;
	line-height: 1.4;
  	text-align: left;
}
.boxhorizontal .boxtesto{
  	text-align: left;
}
/*.boxhorizontal a .boxtitolo{
	color: var(--theme-color1-txt);
}
.boxhorizontal .boxlink a{
	background-color: var(--theme-primary);
  	border-color: var(--theme-primary-dark);
}
.boxhorizontal .boxlink:hover a,
.boxhorizontal:hover .boxlink a{
	color: var(--theme-color1-txt);
}*/

/* @group BOXOVERLAY - box con testo sovrapposto*/
.boxoverlay{
	position: relative;
	overflow: hidden;
}
.box.boxoverlay{
	border: none;
}
.boxoverlay .boxico{
	width: 100%;
	height: 100%;
}
.boxoverlay .boxico img{
	width: 100%;
	object-fit: cover;
}
.boxoverlay .boxcontent{
	/*background: linear-gradient(transparent, rgba(0,0,0,.4));*/
	background-color: white;
	position: absolute;
	z-index: 5;
	bottom: 1rem;
	left: 1rem;
	/* height: 100%; */
	width: 90%;
	padding: 0 1rem;
	justify-content: end;
	align-items: start;
	transition: all .3s;
}
.boxoverlay:hover .boxcontent{
	padding-bottom: 20px;
	transition: all .3s;
}
.boxoverlay .boxtitolo{
	font-size: 1.2rem;
	text-transform: uppercase;
	/* text-shadow: 0 0 6px rgba(0,0,0,0.9), 0 1px 4px rgba(0,0,0,0.7), 0 2px 6px rgba(0,0,0,0.5); */
}
.boxoverlay .boxtesto{
	border-left: 2px solid var(--theme-color1-bg);
	padding-left: .5rem;
	font-size: .9rem;
}
.boxoverlay .boxtesto,
.boxoverlay .sottotitolo,
.boxoverlay .boxlink{
	display: none;
}
/* .boxoverlay a:link .boxtitolo, .boxoverlay a:visited .boxtitolo,
.boxoverlay a:link .boxtesto, .boxoverlay a:visited .boxtesto,
.boxoverlay a:link .sottotitolo, .boxoverlay a:visited .sottotitolo,
.boxoverlay a:link .occhiello, .boxoverlay a:visited .occhiello{
	color: var(--theme-color2-txt);
} */
.boxoverlay:hover .boxtesto,
.boxoverlay:hover .sottotitolo{
	display: block;
	color: var(--body-color);
}
/* @end */

.boxnoimage{
   background-color: var(--theme-color2-bg);
   transition: background-color 500ms linear;
   display: flex;
   height: 100%;
   flex-flow: column;
}
.boxnoimage img{
   /* serve per creare box di colore invece di richiamare noimage  */
   opacity: 0;
}
.boxnoimage .boxico,			/* NON CANCELLARE MAI!!! */
.boxnotesto .boxtesto{
	/* non rimuovere, non modificare */
   display: none;
}
.boxnoimage:focus,
.boxnoimage:hover{
   background-color: var(--bg-medium);
}
/*li:nth-child(even) .boxnoimage{	'effetto box di colori diversi nella stessa row'
	background-color: var(--theme-color1-bg);
}
li:nth-child(even) .boxnoimage:hover,
li:nth-child(even) .boxnoimage:focus{
	background-color: var(--theme-color2-bg);
}*/
.boxnoimage .boxcontent{
	padding: 3rem 2rem;
}
.boxnoimage a .boxlink{
   padding: .5rem 2rem;
}
.boxnoimage a .boxtitolo,
.boxnoimage a .boxtesto,
.boxnoimage a .sottotitolo{
   color: var(--theme-color2-txt);
}

/* BOXICONA - font awesome che "sostituisce" la classica img di anteprima */
/*.boxicona .boxico{
	margin: 0 auto;
}*/
.boxicona .boxico .fas{
	font-size: 80px;
	background-color: white;
	border-radius: 50%;
	padding: 30px;
}
.boxicona .boxico a .fas{
	color: var(--theme-color2-bg);
}
.boxicona .boxtitolo,
.boxicona .boxtesto,
.boxicona .boxlink{
	text-align: center;
}

/* @group Documenti */
.documenti-cont .boxico a{
	color: var(--theme-evidence-bg);
}
/* @end */

/* @group VIDEO */
#video-cont{
	clear: both;
	margin-bottom: var(--margin-bottom-base);
}
video[poster]{
	object-fit: cover;
}
video{
	width: 100%;
}
.boxmedia .boxico{
	overflow: hidden;
	border: 1px solid var(--border-color);
}
.boxmedia .boxico::before{
	font-size: 70px;
	position: absolute;
	font-weight: 900;
    font-family: var(--icon-font-family);
	top: 50%;
	left: 50%;
	margin-top: -50px;
	margin-left: -30px;
	color: white;
	content: "\f144";
	opacity: 0.8;
}
.boxmedia:hover .boxico::before{
	opacity: 1;
}
.boxmedia .boxico a{
	bottom: 0;
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
}
.boxmedia .boxico.youtube img{
   margin: -9.5% auto; 	/*ELIMINA BANDE NERE ICONA YOUTUBE */
}
.boxmedia img,
.boxmedia video{
	object-fit: cover;
	width: 100%;
}
.boxmedia iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
iframe{
	max-width: 100% !important;
}
.video-container{
	position: relative;
    aspect-ratio: 16 / 9;
    width: 100%;
}
.video-container iframe,
.video-container object,
.video-container embed{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/* @end */

/* @group BOX e ELEMENTI - sezioni varie */
.box-container{
	/* per tutti i contenitori di box etc */
	clear: both;
	position: relative;
	margin-bottom:var(--margin-bottom-base);
}
.boxcontent{
	position: relative;
	display: flex;
	justify-content: flex-start;
	flex-flow: column;
	flex-grow: 1;
	padding: 0 var(--padding-base) var(--padding-base);
}
.boxlink{
	/* text-align: center; */
	padding: 0 var(--padding-base) 0;
}
.boxlink .btn,
.item-actions{
	font-size: .9rem;
	letter-spacing: .05rem;
	font-weight: 500;
	padding-left: 1.8rem;
	text-transform: uppercase;
	position: relative;
}
.boxlink .btn:after,
.item-actions .item-button:after,
.didascalia a.btn:after{
	position: absolute;
	top: 2px;
    left: 0;
    font-size: 1.2rem;
    font-weight: 900;
    font-family: var(--icon-font-family);
	content: "\f061";  /*FRECCIA*/
	color: var(--theme-evidence-bg);
}
.item-actions .item-button:after{
	top: -5px;
}
a .boxlink, .boxlink a{
	display: inline-block;
	text-align: left;
	/*color: var(--body-color);*/
}

/* @group RIBBON */
.ribbon{
	float: left;
	margin-right: 4px;
	font-size: .75rem;
	text-transform: uppercase;
	padding: 5px 15px 5px;
	text-align: center;
}
.ribbon-evid1{
	background-color: var(--theme-evidence-bg);
	color: var(--theme-evidence-txt);
}
.ribbon-evid2{
	background-color: var(--theme-color1-bg);
	color: var(--theme-color1-txt);
}
.ribbon-evid3{
	background-color: var(--theme-primary);
	color: var(--theme-primary-txt);
}
.ribbon-evid4{
	background-color: var(--theme-info);
	color: var(--theme-info-txt);
}
.ribbon-evid1::after, .ribbon-evid2::after,
.ribbon-evid3::after, .ribbon-evid4::after{
	/*content: "Novita'";*/
	content: attr(title);
}
.boxstatus{
	top: .5rem;
    right: .5rem;
	position: absolute;
	width: 100%;
	left: .5rem;
	width: 100%;
	z-index: 5;
}
.home .box .boxstatus{
	display: none;
}
.segnapagine{
	position: absolute;
	right: .3rem;
	bottom: .3rem;
	font-size: .9rem;
	z-index: 10;
}
.boxoverlay .segnapagine{
	bottom: auto;
	top: .5rem;
}
/* @end */

/* @group Accordion */
.accordion{
	margin-bottom: 2rem;
}
.accordion-item{
   border-bottom: none;
   margin-bottom: 1rem;
}
.accordion-button{
   font-size: 1.2rem;
   color: black;
   border: 2px solid var(--theme-color1-bglight);
}
.accordion-button:not(.collapsed){
   background-color: transparent;
}
/* @end */

/* SETTORE e CATEGORIE */
.boxsettore .boxtitolo,
.boxcategoria .boxtitolo{
	text-align: center;
}
.boxsettore .boxtesto,
.boxcategoria .boxtesto{
	display: none !important;
}
.boxsettore .boxlink,
.boxcategoria .boxlink{
	display: none;
}
/*----*/
.boxsettore.boxoverlay img{
	transition: all .3s;
}
.boxsettore.boxoverlay:hover img{
    transform: scale3d(1.1, 1.1, 1.1);
    transition: all .3s;
    overflow: hidden;
}
.boxsettore.boxoverlay .boxcontent{
	text-align: center;
	background: linear-gradient(transparent, rgba(0,0,0,.6));
	padding: var(--padding-base);
}
/* .boxsettore.boxoverlay:hover .boxcontent{
} */
.boxsettore.boxoverlay .boxtitolo{
	text-transform: uppercase;
	border-top: 4px solid rgba(255,255,255,.6);
	border-bottom: 4px solid rgba(255,255,255,.6);
	font-size: 1.6rem;
	font-weight: 600;
}
.boxsettore.boxoverlay .boxtitolo a{
	color: var(--theme-color1-txt);
	padding: 2rem;
	width: 100%;
    display: inline-block;
    height: 100%;
}
/* @end */

#slide-correlati-prev{
	position: absolute;
	top: 35%;
	left: 0;
}
#slide-correlati-next{
	position: absolute;
	top: 35%;
	right: 0;
}

.btgrid .content{
	height: 100%;
	display: flex;
  	justify-content: flex-start;
  	flex-flow: column;
}
.btgrid .evidenza{
	margin: 0;
}
.btgrid .content p{
	margin-bottom: 0;
}

.evidenza, .evidenza2{
	font-size: 1.2rem; 	/*DEVE essere un formato VISIBILE */
	margin: 20px 0;
	height: 100%;
	padding: 30px 40px;
	line-height: 1.6;
}
.evidenza{
	background-color: var(--bg-light);
	border-left: 5px solid var(--theme-color3-bg);
}
.evidenza2{
	background-color: var(--bg-light);
	border-left: 5px solid #bccc00;
}
.evidenza b, .evidenza strong{
	color: var(--theme-primary);
}
.evidenziatore{
	background-color: var(--theme-color1-bg);
	color: var(--theme-color1-txt);
	padding: 4px 10px;
}
.evidword, .evidword2{
	font-weight: 600;
}
.evidword{
	color: var(--theme-evidence-bg);
}
/*.evidword2{
	color: var(--theme-color1-txt);
}*/

/* @group MODAL WINDOW */
/* Non rimuovere,  modificare rispettando i colori "di sistema"*/
/* verde:conferma, rosso: cancellazione, azzurro: info */
.modal h1, .modal h2, .modal h3,
.modal h4, .modal h5, .modal h6{
	color: black;
}
.modal-dialog .modal-content{
	padding: 1.5rem;
	border-radius: var(--border-radius);
	text-align: center;
}
.modal-dialog .modal-header{
	border-bottom: none;
	flex-flow: column;
}
.modal-dialog .modal-footer{
	border: none;
	justify-content: center;
}
.modal-dialog .icon-box{
	margin: 0 auto;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.modal-dialog .icon-box i{
	font-size: 4rem;
}
.modal-dialog .btn{
	transition: all 0.4s;
	margin: 0 .5rem;
}

#MdlWelcome .modal-header,
#MdlWelcome .modal-footer{
	padding: 0;
	border: none;
}
#MdlWelcome .modal-content{
	/*background: #333333 url(/Pagine/Sfondi/popupbg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	color: white;*/
	padding: 2rem 2rem 3rem;
	line-height: 1.5;
	font-size: 1.25rem;
}
/*#MdlWelcome .modal-content::before{
	content: " ";
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,.25);
}*/
#MdlWelcome .modal-body{
    z-index: 5;
}
/*#MdlWelcome a:link,
#MdlWelcome a:visited{
    color: #999999;
}*/
/* @end */

/* @group MAIN NOTIFY */
.alert{
	margin: 20px auto;
	font-size: 1.1rem;
	font-weight: 500;
}
.alert-warning{
	background-color: #FAFAD2;
}
/* @end */

/* @group Social bar */
.boxsegnala{
	text-align: center;
	display: inline-block;
	margin: 0 .5rem 0 0;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	border-radius: 50rem;
}
.boxsegnala:hover{
	opacity: .8;
}
.boxsegnala > div{
	width: 46px;
	height: 46px;
	overflow: hidden;
	display: flex;
    justify-content: center;
    flex-direction: column;
}
.boxsegnala a{
	color: white !important;
}
.boxsegnala.facebook{
    background: #1877f2;
}
.boxsegnala.twitter{
    background: black;
}
.boxsegnala.whatsapp{
	background: #3cb82a;
}
.boxsegnala.linkedin{
	background: #0073b1;
}
.boxsegnala.pinterest{
	background: var(--theme-evidence-bg);
}
#socialbar{
	clear: both;
	margin: .5rem 0 1rem;
}
#page-buttons{
	margin: 1rem 0;
	display: flex;
    justify-content: flex-start;
    align-items: baseline;
}
/* @end */

/* @group BUTTON ICON GRUPPO */
.btn-gruppo-cont{
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: center;	/*space-evenly*/
	position: relative;
	z-index: 10;
}
.btn-gruppo-cont .btn-gruppo{
	margin: 0 1rem 1rem 0;
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;  /*flex-start*/
	align-items: center;
}
.btn-icon{
  	border-radius: 50%;
    position: relative;
    text-align: center;
    margin-right: 10px;
}
.btn-icon-inner{
    position: relative;
    transition: all .1s ease-in-out;
    border-radius: 50%;
    display: block;
    overflow: hidden;
    width: 30px;
	height: 30px;
}
.btn-icon > a.btn-icon-inner > i,
.btn-icon > span.btn-icon-inner > i{
	position: relative;
    top: 50%;
    display: block;
    transform: translateY(-50%);
    z-index: 2;
}
/* @end */

#counter{
   /* visibile solo come gestore */
	color: #cccccc;
}

/* @group EDITING BAR */
body.editing{
	padding-top: 30px;
}
#editing-bar{
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
	background-color: var(--alder-bg);
 	color: var(--alder-txt);
 	line-height: 1.8rem;
 	z-index: 161;
}
#editing-bar a,
#editing-bar .btn .fa{
	color: var(--alder-txt);
	text-transform: uppercase;
	margin-bottom: 0;
	font-weight: 600;
}
#editing-bar .btn{
	background-color: transparent;
	border: none;
	padding: .3rem;
	color: var(--alder-txt);
}
/* @end */

/* @group Box login */
#boxlogin{
	margin: 0 0 0 20px;
}
#boxlogin a{
	color: var(--body-color-light);
}
#boxlogin input{
	border: 1px solid var(--border-color);
	color: #999999;
	font-size: 11px;
	width: 104px;
}
#boxlogin label{
	clear: left;
	float: left;
	height: 24px;
	margin: 0;
	padding: 0;
	text-align: right;
	vertical-align: middle;
	width: 190px;
}
#boxlogin ul{
	clear: both;
	font-size: 11px;
	margin: 0;
	padding: 0 0 0 30px;
	text-align: left;
}
/* @end */

/* @group LAYOUT GENERALE */
html{
	/* serve per il posizionamento del footer */
	position: relative;
}
html, body{
	background-color: var(--body-bg);
	color: var(--body-color);
	font-size: var(--body-font-size);
	font-family: var(--body-font-family);
	/*height: auto !important;*/
	min-height: 100%;
	min-height: 100vh;
}
.container{
	margin: 0 auto;
	position: relative;
}
.button-cont{
    display: flex;
	gap: 1rem;
    flex-wrap: wrap;
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.button-cont button,
.button-cont a.btn{
    /* flex: 1; */
	min-width: 200px; /* impedisce bottoni troppo stretti */
}
@media (max-width: 991px){
	.button-cont{
    	flex-direction: column;
  	}
  	.button-cont button,
	.button-cont a.btn{
		width: 100%;
  	}
}
.fade-in-element{
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}
.fade-in-element.show{
	opacity: 1;
    transform: translateY(0);
}

.bg-color1, .pagecolor-1{
	background-color: var(--theme-color1-bg);
	color: var(--theme-color1-txt);
}
.bg-color2, .pagecolor-2{
	background-color: var(--theme-color2-bg);
	color: var(--theme-color2-txt);
}
.pagesize-xxl{max-width: 1400px; margin-left: auto; margin-right: auto;}
.pagesize-xl{max-width: 1200px; margin-left: auto; margin-right: auto;}
.pagesize-l{max-width: 992px; margin-left: auto; margin-right: auto;}
.pagesize-m{max-width: 768px; margin-left: auto; margin-right: auto;}
.pagesize-s{max-width: 576px; margin-left: auto; margin-right: auto;}

.btgrid .col{
	/* serve per editor grid */
	flex-basis: auto;
}
.jumbotron{
	padding: 2rem 1rem;
	margin-bottom: var(--margin-bottom-base);
	background-color: var(--bg-light);
	border-radius: .3rem;
}
section{
	position: relative;
}
/* Proporzioni per le immagini */
.boxrect img, .hero{
	aspect-ratio: 16/9;
}
.card-image{
	aspect-ratio: 4/3;
}
.thumbnail{
	aspect-ratio: 3/2;
}
.boxsquare img, .avatar{
 	aspect-ratio: 1/1;
}
.boxportrait img, .boxvert img{
	aspect-ratio: 2/3;
	/* aspect-ratio: 4/5; */
}
/* Proporzioni per le immagini - formati specifici */
.banner{
	aspect-ratio: 3/1;
}
.mobile-story{
	aspect-ratio: 9/16;
}
iframe{
	border: none;
}
#titolopagina{
	position: relative;
}
#titolopagina h1{
	position: relative;
	font-size: 2.8rem;
	margin: 1rem 0 1.5rem;
	padding: 0 0 .8rem 0;
	text-align: left;
	line-height: 1;
}
#titolopagina:not(.titolohover) h1::after{
	content: "";
	width: 60px;
	height: 2px;
	background-color: var(--theme-color1-bg);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
#titolopagina > .h2{
	margin-bottom: 2rem;
}
#titolopaginahidden{
	display: none;
}
.titolohover .titoloh1{
	margin-left: auto !important;
	margin-right: auto !important;
}
.titolohover{
	color: var(--theme-color2-txt);
	text-align: center;
	text-shadow: 1px 1px 50px rgba(0,0,0,0.175);
	word-spacing: .25rem;
}
.titolohover .sottotitolo,
.titolohover .occhiello{
	font-weight: 500;
	text-shadow: var(--text-shadow);
	text-transform: uppercase;
	font-size: .8rem;
	padding: .4rem .6rem;
	width: fit-content;
	margin-right: auto;
    margin-left: auto;
	background-color: var(--theme-color2-bg);
}

h1, h2, h3, h4{
	margin-bottom: 1rem;
	margin-top: 1rem;
	position: relative;
	/* NOTA SILVIA: Non modificare dimensioni generali, lasciare predefinite boostrap */
}
h1 .piccolo{
	font-size: 80%;
	color: var(--body-color-light);
}
p + h2{
	margin-top: 30px;
}
.occhiello, .sottotitolo{
	line-height: 1.2;
}
.occhiello{
	font-weight: 600;
}
.sottotitolo{
	font-size: 1.1rem;
	margin-bottom: 1rem;
}
/*h1 + .sottotitolo{
	margin: -20px 0 50px;
}*/
.titologrande{
	order: 2;
}
.titolopiccolo{
	order: 1;
}
.didascalia p{
	order: 3;
}
.titologrande, .titolopiccolo, .didascalia p{
	color: var(--body-color);
}

/* FORMATTAZIONE TITOLO CON AFTER!!! */
.heading{
	margin: 1rem 0;
	position: relative;
	/* NOTA SILVIA: non allineare qui: aggiungi text-center nel file */
}
.heading h1, .heading h2, .heading h3,
.heading h4, .heading h5, .heading h6{
	/* ATTENZIONE: inherit eredita il colore del parent. Modificarlo solo se consapevoli */
	background-color: inherit;
	display: inline-block;
	position: relative;
	z-index: 1;
}
/* default (left): linea orizzontale */
.brd-std{
	text-align: left;
}
.brd-std::after{
	content: "";
	width: 60px;
	height: 3px;
	background-color: var(--theme-color1-bg);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
/*.brd-std:not(:has(h4))::after*/	/* per escludere un titolo da ::after dell'heading */

/* tit centrato: linea verticale */
.heading.brd-vert h1, .heading.brd-vert h2, .heading.brd-vert h3,
.heading.brd-vert h4, .heading.brd-vert h5, .heading.brd-vert h6{
	margin-bottom: 1.5rem;
	padding-bottom: .5rem;
}
.brd-vert{
	text-align: center;
}
.brd-vert::after{
	width: 3px;
	height: 22px;
	content: "";
	background-color: var(--theme-color1-bg);
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
}
/* sinistra: riga orizzontale */
.brd-right{
	text-align: left;
}
.brd-right h1, .brd-right h2, .brd-right h3,
.brd-right h4, .brd-right h5, .brd-right h6{
	margin: 0;
}
.brd-right::after{
	top: calc(50% - 2px);
	border-bottom-style: solid;
	content: ' ';
    width: 50%;
    right: 0;
    position: absolute;
    border-width: 3px;
    border-color: var(--theme-color2-bg);
}
/* centrato: linea orizzontale a dx e sx */
.brd-sides{
	text-align: center;
    padding: 0 1rem;
}
.brd-sides h1, .brd-sides h2, .brd-sides h3,
.brd-sides h4, .brd-sides h5, .brd-sides h6{
	margin-bottom: 10px;
	padding: 0 1rem;
}
.brd-sides::before,
.brd-sides::after{
	top: calc(50% - 3px);
	border-bottom-style: solid;
	content: ' ';
    width: 35%;
    position: absolute;
    border-width: 1px;
    border-color: var(--border-color-dark);
}
.brd-sides::before{
	left: 0;
	right: auto;
}
.brd-sides::after{
	left: auto;
	right: 0;
}
/* FORMATTAZIONE TITOLO CON AFTER!!! */

.dropcap{
	float: left;
	font-family: Georgia, Times;
	font-size: 75px;
	line-height: 60px;
	padding-top: 4px;
	padding-right: 8px;
	padding-left: 3px;
}
.dropcap-bg{
    float: left;
	font-family: Georgia, Times;
	font-size: 75px;
	background: var(--bg-light);
	color: var(--body-color);
	padding: 5px 0;
	min-width: 70px;
	line-height: 70px;
	text-align: center;
	margin: 4px 10px 0 0;
}
.bg-base{
	background-color: var(--body-bg);
	color: var(--body-color);
}
.bg-grigio{
	background-color: #f5f5f5;
}
.bg-light{
	background-color: var(--bg-light);
	color: var(--body-color);
}
.bg-light .heading h1, .bg-light .heading h2, .bg-light .heading h3,
.bg-light .heading h4, .bg-light .heading h5, .bg-light .heading h6{
	background-color: transparent;
}
.bg-rosso{
	background-color: var(--theme-evidence-bg);
	color: var(--theme-evidence-txt);
}
.bg-arancio{ background-color: var(--theme-evidence-bg); color: var(--theme-evidence-txt);}
.bg-verde{ background-color: #3cb82a; color: white;}
.bg-turchese{ background-color: #199dff; color: white;}
.bg-blu{ background-color: #0057aa; color: white;}
/* @end */

/* https://blog.polarbits.co/2014/02/16/quick-tips-5-column-layout-with-twitter-bootstrap/ */
/* @group 5 columns layout with Twitter Bootstrap */
.col-5col,
.col-sm-5col,
.col-md-5col,
.col-lg-5col{
   position: relative;
   min-height: 1px;
   padding-right: 10px;
   padding-left: 10px;
}
.g-0 .col-5col, .gx-0 .col-5col,
.g-0 .col-sm-5col, .gx-0 .col-sm-5col,
.g-0 .col-md-5col, .gx-0 .col-md-5col,
.g-0 .col-lg-5col, .gx-0 .col-lg-5col{
	padding: 0 !important;
}
.col-5col{
	width: 20%;
	-ms-flex: 0 0 20%;
	flex: 0 0 20%;
	float: left;
}
@media (min-width: 768px){
   .col-sm-5col{
		width: 20%;
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		float: left;
   }
}
@media (min-width: 992px){
   .col-md-5col{
		width: 20%;
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		float: left;
   }
}
@media (min-width: 1200px){
	.col-lg-5col{
		width: 20%;
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		float: left;
   }
}
/* @end */

/* @group nav-tabs */
.tab-content > .active{
	border-bottom: 1px solid var(--border-color);
    border-left: 1px solid var(--border-color);
    border-right: 1px solid var(--border-color);
    padding: 15px;
}
.nav-tabs > li{
    padding: 0;
}
.nav-tabs{
	margin-top: 2rem;
}
/* @end */

/* @group PAGINATION */
.text-center .pagination{
   justify-content: center;
}
.pagination > li > a{
	background-color: var(--bg-light);
	color: var(--body-color);
	border: 1px solid var(--border-color);
}
.page-item.active .page-link{
   background-color: var(--theme-primary);
   border-color: var(--theme-primary-dark);
}
.pagination > .active > a,
.pagination > .active > a:hover,
.pagination li > a:hover,
.pagination li > a:active{
	background-color: var(--theme-color1-bg);
	border-color: var(--theme-color1-txt);
	color: var(--theme-color1-txt) !important;
}
/* @end */

.breadcrumb + #titolopagina .titoloh1,
.breadcrumb + .heading{
	/*spazio tra bricione e titolo: non azzerare */
 	margin-top: -.5rem;
}
.breadcrumb{
	background-color: transparent;
	margin-bottom: .5rem;
	padding: .7rem 0;
}
.breadcrumb li{
   padding-right: 4px;
   font-size: .95rem;
}
.breadcrumb li a{
	color: var(--body-color);
}
.breadcrumb-item + .breadcrumb-item::before{
   color: var(--theme-primary-dark);
   content: "/\00a0";
}
.breadcrumb-item.active{
	color: var(--theme-primary-dark);
	font-weight: 500;
	/*display: none !important;*/  /* serve quando i titoli sono lunghissimi.. */
}

#print, .only4print{
	display: none;
}
.no-copy{
	/* Disabilita il copia e incolla */
	user-select: none;
	-webkit-user-select: none;
}
/* @end */

/* @group SLIDERS */
#slidecont1, .slidetop, #slidecont3{
	margin: 0 auto 1rem auto;
	position: relative;
	width: 100%;
	max-width: 100% !important;
	overflow: hidden;	 /* Silvia: NON RIMUOVERE OVERFLOW!!!!!! */
}
#slidecont3, .slidetop img{
	border-radius: var(--border-radius);
}
/*.no-home #slidecont1 .item::before,
.slidetop .item::before{
   content:"";
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: rgba(0,0,0,.20);
	background: linear-gradient(0deg, rgba(0,0,0,0.5) 0%, rgba(255,255,255,0) 30%);
	z-index: 2;
}
.no-home #slidecont1 > div:first-child, .slidetop .slidestage{
	centratura immagini nel contenitore  a prescindere dal dimensioni monitor
	height: 100vh;
	left: 50%;
	margin-left: -960px;
	position: absolute;
	width: 1920px;
}*/
.pages-slidecont{
	margin-bottom: var(--margin-bottom-base);
}

#cover{
	height: 100%;
	flex-direction: column;
	justify-content: center;
	display: flex;
}
.img-parallax{
   background-size: cover;
   background-position: center center;
   background-attachment: fixed !important;
   background-repeat: no-repeat;
   overflow: hidden;
   width: 100%;
   height: 300px;
   height: 35vh;
}

.loading{
	position: relative;
}
.loading .loader{
   color: var(--bg-light);
   position: absolute;
   left: 0;
   top: 50%;
   width: 100%;
   z-index: -10;
}
.loading .load-bar.animated{
   animation: animLoadBar 1s 1;
   animation-direction: normal;
   animation-direction: alternate;
}
.loading .load-bar{
   background-color: var(--theme-color1-bg);
   height: 2px;
   width: 0;
}
.loading .load-bar.animated{
	animation: animLoadBar 1s 1;
	animation-direction: alternate;
}
@keyframes animLoadBar{
	0%{
  		width: 0;
	}
	100%{
  		width: 200px;
	}
}
/* @end */

/* @group FOOTER */
/*address{
	color: var(--theme-color1-txt);
}*/
footer{
	background-color: var(--bg-light);
	border-top: 3px solid var(--theme-color1-bg);
}
footer a:link, footer a:visited{
	color: var(--body-color);
}
/*footer a:hover, footer a:active{   specificare se serve
	color: var(--body-color);
}*/
footer .liv2, footer .nav-link2{
	display: none !important;
}
footer .form-group{
   margin-bottom: 10px;
   clear: both;
}
footer .liv2, footer .open > .dropdown-menu.liv2{
	display: none;
}
.footer-reference{
	margin-top: .5rem;
    margin-bottom: .5rem;
}
.footer-reference br{
	clear: both;
}
.bg-footer2 ul li {
  font-size: .8rem;
}
footer h5 {
  font-size: .9rem;
  text-transform: uppercase;
  color: var(--theme-primary);
}
#footer-menu .navbar-nav{
	float: none;
}
#footer-menu .nav > li > a.nav-link2{
    display: none;
}
.bg-gradient .nav-link,
.bg-gradient .navbar{
	padding: 0 .8rem;
}
.grecaptcha-badge{
	display: none !important;
}

#credits{
	background-image: url(../../easyAdmin/common/images/CreditsNero.gif);
	background-position: right center;
	background-repeat: no-repeat;
    font-size: 11px;
    display: inline-block;
	height: 30px;
	line-height: 30px;
	margin: 5px 2rem 0;
}
#credits span{
	visibility: hidden;
    display: inline-block;
    width: 106px;
}
#legalnotes{
   margin: 0;
}
#legalnotes li{
	display: list-item;
	float: left;
	font-size: .8rem;
	list-style-type: none;
}
#legalnotes li a{
	padding: 0 10px 10px 0;
}
#legalnotes ul{
	margin: 0;
}
/* @end */

/* @group PARALLAX */
.parallaxBg.bg-image-v1{
	background: url(/Pagine/Sfondi/parallaxbg.webp) no-repeat fixed 0% 50%;
	background-size: cover;
	background-color: var(--bg-light);
    background-blend-mode: darken;
}
.parallaxBg{
	padding: 4rem 0;
	position: relative;
	overflow: hidden;
	text-align: center;
}
.parallaxBg .container,
.parallaxBg .container-fluid{
   z-index: 10;
   position: relative;
}
/* @end */

/* @group HEADER */
header{
	position: relative;
	z-index: 160;
}
.navbar-brand{
	display: block;
	padding-top: .55rem;
	padding-bottom: .55rem;
}
.logo3m{
	order: 3;
	max-width: 80px;
}
.logo{
	order: 1;
}
/* ATTIVARE QUANDO PRESENTE LOGO1 - LOGO2 */
/*#header-logo2{
  	opacity: 0;
  	display: none;
}
.header-fixed .header.header-fixed-shrink #header-logo2,
.noslider-fixed-space-default .header.header-sticky #header-logo2{
  	opacity: 1;
  	display: block;
  	float: left;
  	position: relative;
  	z-index: 1;
}
.header-fixed .header.header-fixed-shrink #header-logo,
.noslider-fixed-space-default .header.header-sticky #header-logo{
  	opacity: 0;
  	position: absolute;
  	display: none;
}*/
/* @end */

/* @group TOPBAR */
.topbar{
	/*background-color: var(--theme-color1-bg);
	color: var(--theme-color1-txt);*/
	font-size: .9rem;
	text-transform: uppercase;
	/* padding: .3rem 0; */
	transition: all 0.6s ease-in-out;
}
.topbar > div{
	/* div: container o container-fluid */
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}
.topbar #header-menu1{
	order:1;
}
.topbar .userbar-cont{
	order:2;
}
.topbar .socialmediaicons{
	order:3;
}
.topbar .navbar-nav{
	flex-direction: row;
	margin-top: 0;
	margin-bottom: 0;
}
@media (max-width: 991px){
	.topbar .navbar-nav{
		flex-direction: column;
	}
}
/* @end */

/*Header Fixed - SHRINK - NON CANCELLARE!!!!!!!!!! SACRO !!!!!!!!!
------------------------------------*/
body.header-fixed-space-default{
/* ATTENZIONE alla posizione di no-home!!!! */
	padding-top: 100px;
	/*padding-top: 0;*/ /*HEADER SOVRAPPOSTO ALLO SLIDER*/
}
body.header-fixed-space-default.editing{
	padding-top: 130px;
}
body.noslider-fixed-space-default{
/* con MostraTopSlider=True e .header-fixed-space-default=0
crea uno spazio per impedire la sovrapposizione dell'header al contenuto */
	padding-top: 100px;
	/* NON ANNULLARE!!!!!!*/
}
body.noslider-fixed-space-default.editing{
	padding-top: 130px;
}
body.editing .header.header-sticky{
	padding-top: 30px;
}
/*-----*/
body.header-fixed .header-fixed-shrink .topbar{
	opacity: 0;
	height: 1px;
}
@media (max-width: 991px){
	.header.header-sticky,
	.header.header-fixed-shrink{
	 	height: inherit;
	 	position: relative;
		box-shadow: 1px 1px 8px #e1e1e1;
	}
	body.header-fixed-space-default,
	body.noslider-fixed-space-default{
		padding-top: 0 !important;
	}
}
@media (min-width: 992px){
	/*Logo*/
	/*.header-fixed-shrink .navbar-brand{
		max-width: 260px !important;
	}*/
	/*Navbar Nav*/
	/*.header-fixed-shrink .navbar-nav > li > a{
		padding-top: 4px;
		padding-bottom: 4px;
	}*/
	.header.header-sticky{
		margin-top: 0;
		transition: all 0.6s ease-in-out;
		background-color: white;
		box-shadow: 1px 1px 8px #e1e1e1;
		/*background: linear-gradient(rgba(0,0,0,.6), transparent);*/	/* gradiente x header-shrink */
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: auto;
	}
	.header-fixed .header.header-fixed-shrink,
	.noslider-fixed-space-default .header.header-fixed-shrink,
	.noslider-fixed-space-default .header.header-sticky{
    	top: 0;
    	left: 0;
    	width: 100%;
    	position: fixed;
		box-shadow: 1px 1px 8px #e1e1e1;
    	border-bottom: none;
    	transition: all 0.6s ease-in-out;
	}
	.header-fixed .header.header-fixed-shrink{
		background-color: var(--bg-light);
	}
	/*Dropdown*/
	/*.header-fixed-shrink .dropdown > a:after{
		top: 20px;
	}*/
	/*Search*/
	/*	.header-fixed-shrink .nav .search-open{
		top: 60px;
	}*/
}
/* HEADER FIXED - FINE */

/* @group USERBAR */
.userbar-cont{
	order:4;
	position: relative;
	display: flex;
	justify-content: center;
	flex-direction: row-reverse;
}
/*.header.header-fixed-shrink .userbar-cont{
	margin-top: 25px;
}*/
.userbar-cont .dropdown-menu{
	right: -1.5rem;
	position: absolute;
	left: 0;
	top: calc(100% - 0px) !important;
}
.userbar-cont > div,
.userbar-cont > ul{
	position: relative;
	margin: 0 0 0 10px;
}
.userbar-cont ul li{
	height: 100%;
}
.userbar-cont .icon-text,
.userbar-text{
	display: none;
}
.userbar-cont .user-name{
	background-color: var(--theme-info);
	color: var(--theme-info-txt);
	border-radius: 50%;
	height: 40px;
	width: 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-transform: uppercase;
}
.user-name.user-90{
	background-color: var(--theme-evidence-bg);
	color: var(--theme-evidence-txt);
}
.user-name.user-100{
	background-color: var(--alder-bg);
	color: var(--alder-txt);
}
ul.userbar{
	margin-bottom: 0;
}
ul.userbar li.nav-item.dropdown{
	display: flex;
    justify-content: center;
    flex-direction: column;
}
ul.userbar li a:not(.badge-open .btn){
	color: var(--body-color);
}
ul.userbar li .fa-shopping-cart::before{
	margin-top: .1rem;
	display: inline-block;
}
ul.userbar li a.nav-link{
	height: 100%;
    display: flex;
    align-items: center;
}
/* @end */

/* @group LANG */
.lang-cont{
	text-transform: uppercase;
	text-align: left;
	position: relative;
	align-self: center !important;
	order: 3;
}
.bandiera.active img{
	opacity: 1;
}
.bandiera img{
	opacity: .4;
	max-width: 24px;
	height: auto;
}
.bandiera{
	margin-left: 10px;
}
.hoverSelector{
	padding-bottom: .3rem;
}
.hoverSelector .bandiera{
	margin-right: .5rem;
	margin-left: 0;
}
.hoverSelector:link,
.hoverSelector:visited{
	display: inline-block;
	cursor: pointer;
}
.hoverSelector:hover ul.languages{
	display: block;
}
ul.languages{
	top: 24px;
	right: 0;
	padding: 0 4px;
	display: none;
	min-width: 90px;
	position: absolute;
	background: #eeeeee;
	z-index: 20;
}
ul.languages:after{
	top: -4px;
	width: 0;
	height: 0;
	right: 14px;
	content: " ";
	display: block;
	position: absolute;
	border-bottom: 6px solid #eeeeee;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-left-style: inset;  /*FF fixes*/
	border-right-style: inset;  /*FF fixes*/
}
ul.languages > li > a{
	color: #333333;
	display: block;
	font-size: 11px;
	padding: 4px 12px;
	margin-bottom: 1px;
	text-transform: uppercase;
}
ul.languages li.active a i{
	color: var(--theme-evidence-bg);
	float: right;
	margin-top: 2px;
}
ul.languages li a:hover,
ul.languages li.active a{
	color: var(--body-color);
}
ul.languages li a:hover{
	text-decoration: none;
}
/* @end */

/* @group  - UI WIDGET - */
.ui-widget-header{
	border: none;
	background: none;
	text-align: center;
}
.ui-tabs .ui-tabs-nav li{
	font-weight: bold;
	text-transform: uppercase;
	display: inline-block;
	float: none;
}
/* @end */

/* @group MARCHE */
#marche-cont{
	margin-bottom: var(--margin-bottom-base);
}
#marche-cont .owl-carousel .item{
	display: flex;
	justify-content: center;	/* serve per la centratura verticale */
	flex-direction: column;
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
	padding: var(--padding-base);
}
#marche-cont img{
	filter: grayscale(0%) brightness(100%);
	width: auto;
}
#marche-cont img:hover{
	filter: grayscale(100%) brightness(110%);
}
.boxmarche{
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 100px;
	min-height: 60px;
	font-size: .8rem;
	text-transform: uppercase;
	line-height: 1.1;
	text-align: center;
	line-break: loose;
}
#boxmarche a{
	justify-content: center;	/* serve per la centratura verticale */
	flex-direction: column;
}
 /* @end */

/* @group DIDASCALIA - TITOLO-SOTTOTITOLO-TESTO */
.ms-stile1 .didascalia,
.ms-stile2 .didascalia,
.ms-stile3 .didascalia{
   position: absolute;
   top: 0;
   width: 100%;
   height: 100%;
   display: flex;
   flex-direction: column;
   justify-content: center;
}
.slide-top .didascalia{
   justify-content: flex-start;
   padding-top: 2rem;
}
.slide-bottom .didascalia{
   justify-content: flex-end;
   padding-bottom: 2rem;
}
.slide-center .bg-testo{
	text-align: center;
	width: 100%;
}
.didascalia .btn{
	text-decoration: none;
	cursor: pointer;
	order:4;
	margin-top: 1rem;
	white-space: nowrap;
}
.didascalia a.btn{
    text-align: center;
    position: relative;
    color: white;
    padding: .3rem 2rem;
}
.didascalia .bg-testo{
    margin: 0 auto;
    z-index: 1;
    display: flex;
    flex-direction: column;
    position: relative;
    padding: 1% 4%;
}
.didascalia-sm{
	font-size: smaller;
}

/****************** DIMENSIONI FONT ******************/
.master-slider h3{		/* RIGA 1 */
	margin-bottom: .5rem;
	text-shadow: 0 0 8px rgba(0,0,0,0.8), 0 0 10px rgba(0,0,0,0.6), 0 0 20px rgba(0,0,0,0.4);
}
.master-slider h3 span{
	font-weight: bolder;
}
.master-slider h4{   /* RIGA 2 */
	margin-bottom: .5rem;
	text-shadow: 0 0 8px rgba(0,0,0,0.8), 0 0 10px rgba(0,0,0,0.6), 0 0 20px rgba(0,0,0,0.4);
}
.master-slider h4::after{
	display: none;
}
.master-slider p{	 /*RIGA 3*/
	font-size: .9vw;
	text-shadow: 0 0 8px rgba(0,0,0,0.8), 0 0 10px rgba(0,0,0,0.6), 0 0 20px rgba(0,0,0,0.4);
}
.ms-stile1 h3,
.ms-stile1 h4,
.ms-stile1 p,
.didascalia .btn{
	width: fit-content;
}
.slide-center h3,
.slide-center h4,
.slide-center p,
.slide-center .btn{
	margin-left: auto !important;
	margin-right: auto !important;
}
@media (min-width: 768px){
	.slide-right .bg-testo{
		margin: 0 0 0 50%;
	}
	.slide-left .bg-testo{
		margin: 0 50% 0 0;
	}
}

/****************** stile1 ******************/
/*.ms-stile1 .bg-testo{
}*/
.slidetop .ms-stile1::after{
	content: " ";
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.ms-stile1 h3{		/* TITOLO GRANDE */
	font-size: clamp(25px, 4vw, 60px);
	line-height: 1;
	font-weight: 700;
	text-shadow: 10px 10px 20px rgba(0,0,0,1);
	color: var(--theme-color2-txt);
	order:2;
}
.ms-stile1 h4{   /* SOTTOTITOLO - OCCHIELLO */
	font-size: clamp(12px, .9vw, 14px);
	text-shadow: 3px 3px 6px rgba(0,0,0,1);
	color: var(--theme-color2-txt);
	letter-spacing: .08rem;
	font-weight: 500;
	order:1;
}
.ms-stile1 h4 span{
	background-color: var(--theme-color2-bg);
	padding: .8rem;
	line-height: 1.8;
    box-decoration-break: clone;
}
.ms-stile1 p{   /* TESTO */
	font-size: clamp(15px, 1.1vw, 18px);
	color: var(--theme-color2-txt);
	text-shadow: 5px 5px 10px rgba(0,0,0,1);
	order:3;
}

/****************** stile2 ******************/
/*.ms-stile2 .bg-testo{
   background-color: rgba(0,0,0,.5);
}*/
.ms-stile2 h3,
.ms-stile2 h4,
.ms-stile2 p{
	text-shadow: 1px 1px 4px #333333;
}
.ms-stile2 h3{	 /* TITOLO GRANDE */
    color: var(--theme-color2-txt);
    font-size: clamp(40px, 3.6vw, 70px);
    line-height: 1;
    letter-spacing: .1rem;
	font-weight: 500;
	order:1;
}
.ms-stile2 h4{   /* SOTTOTITOLO - OCCHIELLO */
	border-bottom: none;
	font-size: clamp(20px, 2vw, 50px);
	font-weight: 500;
	order:2;
	color: var(--theme-color2-txt);
}
.ms-stile2 p{	/* TESTO */
	color: var(--theme-color2-txt);
	margin-bottom: 1rem;
	font-size: clamp(15px, 1.2vw, 18px);
	order:3;
}

/****************** stile3 ******************/
/*.ms-stile3 .bg-testo{
   background-color: rgba(255,255,255,.6);
}*/
.ms-stile3 h3{		/* TITOLO GRANDE */
	color: var(--body-color);
    font-size: clamp(20px, 2vw, 50px);
	font-weight: 600;
}
.ms-stile3 h4{  /* SOTTOTITOLO - OCCHIELLO */
	border-bottom: none;
    font-size: clamp(40px, 3.6vw, 70px);
	color: var(--body-color);
	font-weight: 500;
}
.ms-stile3 p{	 /* TESTO */
    color: var(--body-color);
    font-size: clamp(18px, 1.6vw, 25px);
	font-weight: 400;
}
/**********************************************/

/* @group testo-hover */
.gallery-cont .loadmore:nth-child(n + 9){
	display: none;
  /* SERVE PER LOAD MORE */
}
.gallery-img{
   position: relative;
   height: 100%;
}
.gallery-img a{
   height: 100%;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   align-content: space-between;
}
.testo-hover .didascalia{
   left: 0;
   right: 0;
   bottom: 0;
   padding: 1rem;
   background: linear-gradient(transparent, rgba(0,0,0,.25));
   color: white;
   position: absolute;
   margin: 0;
   height: 100%;
   font-size: smaller;
   text-align: center;
   display: flex;
   justify-content: end;
   flex-direction: column;
}
.testo-hover .didascalia h3,
.testo-hover .didascalia h4,
.testo-hover .didascalia p{
   color: white !important;
   text-align: center;
   text-shadow: 3px 3px 10px rgba(0,0,0,.2);
}
.testo-hover .didascalia .btn{
   margin: auto;
}
.gallery-img .didascalia h4,
.testo-hover .didascalia h4{
	font-size: 1rem;
}
.gallery-cont .titologrande{
   font-size: 1.2rem;
}
/*.testo-hover .didascalia{
   visibility: hidden;
}*/
.testo-hover .gallery-img:hover .didascalia{
	visibility: visible;
}
.testo-hover .gallery-img .didascalia{
	visibility: hidden;
}
.testo-semplice .bg-testo,
.owl-carousel-std .bg-testo{
   margin: 0;
   padding: 1rem;
}
.testo-semplice .bg-testo,
.owl-carousel-std .bg-testo{
   margin: 0;
   padding: .5rem;
}
.testo-semplice h3.titologrande
.testo-semplice h4.titolopiccolo,
.testo-semplice p{
	color: black;
}
.owl-carousel-std h3.titologrande,
.testo-semplice h3.titologrande{
	font-size: 1.1rem;
	margin-bottom: 0;
}
.owl-carousel-std h4.titolopiccolo,
.testo-semplice h4.titolopiccolo{
	font-size: 1rem;
	margin-bottom: 0;
}
.owl-carousel-std p,
.testo-semplice p{
	font-size: .9rem;
	margin-bottom: 0;
}
.owl-carousel-std .didascalia{
	position: absolute;
    bottom: 0;
    width: 100%;
    /*background: linear-gradient(to top, rgba(0, 0, 0, 0.22) 0%, rgba(0, 0, 0, 0.08) 35%, rgba(0, 0, 0, 0) 100%);
    background-color: rgba(0,0,0,0.25);*/
    color: white;
}
.owl-carousel-std a .didascalia{
	color: white !important;
}
/* @end */

.zoom-overlay{		/* zoom */
	position: absolute;
	bottom: 0;
	right: 0;
	cursor: pointer;
	z-index: 120;
}
.slidecont, .carouselcont{
	position: relative;
	width: 100%;
	height: auto !important;
	max-width: 100%;
}
.slideimg img{
	margin: 0 auto;
}
.slide .zoom{
	display: block;
	float: right;
	height: 40px;
	margin: 0 4px 0 0;
	text-align: right;
	width: 60px;
}
.slidestage{
	text-align: center;
}
.slideimage{
	position: relative;
}
.slideico-cont{
	margin: 15px 0;
	text-align: center;
}
.slideico img{
	text-align: center;
	border: 1px solid white;
	border-bottom: 0;
}
.icostage{
	background-color: white;
	display: none;
	width: 90px;
}
.icostage img{
	margin: 5px;
}
.icostagesticky{
	display: none;	 /* mettere block se serve */
	position: sticky;
	top: 0;
}
.icostagefixed{
	left: auto;
	right: 0;
	position: fixed;
	top: 220px;
}
.carousel-control{
   display: flex;
   justify-content: center;
   flex-direction: column;
}
.carousel-cont{
	display: flex;
	text-align: center;
	align-items: center;
	flex-direction: row !important;
	flex-flow: row wrap;
	justify-content: space-around;
	/*justify-content: flex-start;*/
}
.carousel-ico{
	float: left;
	margin: auto;
}
.ico-cont img:hover{
	opacity: .6;
}
/* @end */

:target, .anchor{
	scroll-margin-top: var(--header-height);
}

/* @group /* SLICK SLIDER */ */
/* =======================
   GALLERIA PRODOTTO
   ======================= */
.product-gallery{
	align-items: flex-start;
}
/* --- Slider principale --- */
/* .slider-for{
	border:1px solid var(--border-color);
} */
.slider-for > div:nth-child(1n+2),
.slider-nav > div:nth-child(1n+2){
	display: none;	  /* evita la visualizzazione delle immagini fuori dalla cornice al caricamento */
}
.slider-for.slick-initialized > div:nth-child(1n+2),
.slider-nav.slick-initialized > div:nth-child(1n+2){
	display: block;
}
.slider-for .slick-slide{
   /* centra l'immagine nella slide senza forzare height enorme */
	display: flex !important;
    align-items: center;
    justify-content: center;
}
.slider-for img{
	object-fit: contain;
}
/* --- Thumbnails --- */
/*.slider-nav .slick-list {
  limita l'altezza complessiva della colonna thumb se serve
  max-height: 360px;
}*/
.slider-nav .slick-slide{
	padding: 2px;
    cursor: pointer;
    opacity: .5;
}
.slider-nav .slick-current{
	opacity: 1;
}
.slider-nav img{
	display: block;
    width: 100%;
    max-width: 80px;
    max-height: 80px;
    height: auto;
    object-fit: cover;
    border: 1px solid var(--border-color, #dddddd);
}
/* --- Frecce Slick --- */
.slick-prev, .slick-next{
   z-index: 2;
   width: 30px;
}
.slick-prev::before,
.slick-next::before{
   background-color: transparent;
   color: white;
   text-shadow: 0 0 3px rgba(0,0,0,.5);
   font-size: 32px !important;
   font-family: var(--icon-font-family, "bootstrap-icons");
   content: "\f053" !important;
}
.slick-next::before{
   content: "\f054" !important;
}
/* ----- SLICK VERTICAL ----- */
.slider-nav.slick-vertical{
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
}
/*.slick-vertical .slick-prev,
.slick-vertical .slick-next{
	right: calc(50% - 20px) !important;
	left: calc(50% - 20px) !important;
	width: 40px;
}*/
.slick-vertical .slick-prev::before{
	content: "\f106" !important;
	color: black;
}
.slick-vertical .slick-prev{
	top: 0 !important;
	left: 15px;
}
.slick-vertical .slick-next::before{
	content: "\f107" !important;
	color: black;
}
.slick-vertical .slick-next{
	bottom: -40px !important;
	top: auto !important;
	left: 15px;
}
/* --- Responsive: sotto md thumb orizzontali --- */
@media (max-width: 767.98px){
  .product-gallery{
	flex-direction: column;
  }
  .slider-nav .slick-list{
    max-height: none;
  }
  .slider-nav img{
    max-width: 64px;
    max-height: 64px;
  }
}
#store-slidecont1 .didascalia{
	position: absolute;
	bottom: 0;
	width: 100%;
	background-color:rgba(255,255,255,.6);
	text-align: center;
}
#store-slidecont1 .didascalia .bg-testo{
	padding: .8rem;
}
#store-slidecont1 .didascalia h3{
	font-size: .9rem;
}
/* @end */

/* @group OWL CAROUSEL */
.owl-carousel{
	position: relative;
}
/*.owl-carousel .owl-stage-outer{
 le istruzioni sgg servono per non tagliare i bordi di item ed evidenze
	padding: 1rem;
	margin: 0 -0.5rem;
}*/
.owl-carousel .item{
	/* evita la visualizzazione delle immagini fuori dalla cornice al caricamento - 1/2 */
	opacity: 0;
	transition: all .5s ease-in-out;
}
.owl-carousel.owl-loaded .item{
	/* evita la visualizzazione delle immagini fuori dalla cornice al caricamento - 2/ */
	opacity: 1;
	transition: all .5s ease-in-out;
}
.owl-carousel .owl-stage{
	display: flex;
	justify-content: center;
	align-items: stretch; 	/* box altezza uguale */
}
.owl-carousel .item,
.owl-carousel .item article{
	height: 100%;
	/*text-align: center;*/
}
.owl-theme .owl-nav{
    width: 100%;
    z-index: 10;
    position: absolute;
    top: 50%;
	margin-top: -2rem;
}
.owl-prev, .owl-next{
	position: absolute;
}
.owl-prev{
	left: -2.5rem;
}
.owl-next{
	right: -2.5rem;
}
.owl-prev.disabled{
	display: none;
}
.owl-theme .owl-nav [class*="owl-"]{
  	padding: 0;
  	height: 34px;
	width: 34px;
    background: transparent;
	color: rgba(0,0,0,0.8);
    border-radius: 50%;
	display: flex;
    align-items: center;
    justify-content: center;
}
.owl-theme .owl-nav [class*="owl-"]:hover{
	color: rgba(0,0,0,1);
	background: rgba(0,0,0,.075);
}
.owl-carousel:not(.owl-loaded){
   opacity: 0;
}
.owl-theme .owl-dots .owl-dot span{
	height: 8px;
	width: 22px;
}
.owl-theme .owl-dots .owl-dot.active span{
	width: 40px;
}
.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span{
	background: var(--theme-color1-bg);
}
.owl-carousel-autowidth .owl-item img{
	width: auto;
}
/* @end */

/* @group EDITOR -nessuna di diqueste voci va rimossa */
.nobackground, .editor{
	/* ATTENZIONE!! definisce i colori interni di CKEditor */
	background-image: none;
	background-color: var(--body-bg);
}
.img-bordo{
	border: 1px solid var(--border-color);
	padding: 5px;
	height: auto !important;
	max-width: 100%;
}
.img-center{
	text-align: center;
	height: auto !important;
	max-width: 100%;
	margin: auto;
}
.img-floatdx{
	float: right;
	margin: 0 0 0 20px;
	padding: 1px;
	height: auto !important;
	max-width: 100%;
}
.img-floatsx{
	float: left;
	margin: 0 20px 0 0;
	height: auto !important;
	max-width: 100%;
}
.img-center > figure{
   display: inline-block;
}
figure img{
	max-width: 100%;
	height: auto;
}
caption, figcaption{
	text-align: center;
	font-variant: small-caps;
	letter-spacing: 1px;
}
.simplebox{
	background: #eeeeee;
	border: 1px solid var(--border-color);
	border-radius: 8px;
	box-shadow: 0 1px 1px white;
	margin: 10px;
	padding: 8px;
}
.simplebox.align-center{
	margin-left: auto;
	margin-right: auto;
}
.simplebox.align-left{
	float: left;
}
.simplebox.align-right{
	float: right;
}
.simplebox-content{
	padding: 0 8px;
}
.simplebox-title{
	margin: 0 0 8px;
	padding: 5px 8px;
}
.simplebox-title, .simplebox-content{
	background: white;
	border: 1px solid var(--border-color);
	border-radius: 5px;
	box-shadow: 0 1px 1px #cccccc inset;
}
.citazione{
	color: var(--body-color);
	font-family: var(--cursive-font-family);
	font-size: 2.5rem;
	line-height: 1.1;
	margin: 20px 0;
	padding: 20px 60px;
	position: relative;
}
.citazione::before,
.citazione::after{
	font-family: var(--icon-font-family);
	background-color: transparent;
	color: var(--body-color-light);
	position: absolute;
	font-size: 2rem;
	font-weight: 900;
}
.citazione::before{
	content: "\f10d";
	top: 0;
	left: 0;
}
.citazione::after{
	content: "\f10e";
	right: 0;
	bottom: 0;
}
div.citazione p{
	line-height: 1.1;
	text-align: left;
	font-size: inherit;
}
cite, q{
	font-family: Georgia, Times;
	color: var(--body-color-light);
	line-height: 1.6;
}
.handwriting{
	color: var(--body-color);
	font-family: var(--cursive-font-family);
	font-size: 2.5rem;
}
/* ----------------------------
 * Callouts
 * ---------------------------- */
.callout{
	opacity: 1;
	padding: 7%;
	margin: 20px 0;
}
.callout h1, .callout h2,
.callout h3, .callout h4{
	font-weight: 300;
	margin-top: 0;
}
.callout p{
	text-align: justify;
}
.callout-block a, .callout-bubble a,
.callout-dark a, .callout-teal a,
.callout-blue a{
	color: white !important;
}
.callout-block{
	background-color: #da166e;
	color: white;
}
.callout-bubble{
	background-color: #ff9e0d;
	color: white;
}
.callout-dark{
	background-color: #333333;
	color: white;
}
.callout-blue{
	background-color: #0073b1;
	color: white;
}
.callout-teal{
	background-color: var(--theme-color1-bglight);
	color: var(--theme-color1-txt);
}
.callout-dark h1,
.callout-dark p{
	color: white;
}
.callout-ico{
	float: left;
	margin-right: 30px;
	opacity: .7;
}
.callout-light{
	background-color: var(--bg-light);
	color: var(--body-color);
}
/* @end */

/* @group PAGINA CONTATTI / INVITE */
#contatti{
   padding-top: 10px;
   padding-bottom: 40px;
}
#contatti-indirizzo{
   display: none;
}
#invite-cont{
	background-color: white;
	padding: 0 15px;
	width: 100%;
}
/* @end */

/* @group MAPPA */
.boxmap .boxico{
	background-image: url(../../easyUp/NoFoto.jpg);
	background-position: center;
	background-repeat: no-repeat;
	border: 2px solid var(--border-color);
	float: left;
	margin: 0 5px 5px 0;
	overflow: hidden;
	max-width: 40%;
}
.boxmap .boxtesto,
.boxmap .boxtesto p{
	text-align: left;
	width: 100%;
}
.boxmap .boxtitolo{
	font-size: 13px;
	font-weight: bold;
	line-height: 1.2;
	margin: 0 10px 0 0;
	text-align: left;
}
/* @end */

#fade{
	background: rgb(255, 255, 255); /* Fall-back for browsers that don't  support rgba */
    background: rgba(255, 255, 255, .70);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 99998;
}

/* @group Social buttons */
header .socialmediaicons{
	order:3;
}
.icon{
	position: relative;
	z-index: 2;
	width: 1.8rem;
	height: 1.8rem;
	float: left;
	overflow: hidden;
	display: flex;
	justify-content: center;
	flex-direction: column;
}
.socialmediaicons.round ul li a,
.icon.round{
	font-size: 1rem;
    border-radius: 50%;
	text-align: center;
    text-decoration: none;
}
.socialmediaicons ul{
	display: flex;
    justify-content: left;
    flex-direction: row;
    list-style-type: none;
    width: 100%;
    padding: 0;
}
.socialmediaicons ul li a{
	height: 2rem;
	width: 2rem;
	display: flex;
    justify-content: center;
    align-items: center;
}
.socialmediaicons ul li a:link,
.socialmediaicons ul li a:visited{
	color: white;
}
.socialmediaicons .fa:hover{
    color: rgba(255,255,255,0.7) !important;
}
.socialmediaicons .fa-facebook{
    background: #1877f2;
}
.socialmediaicons .fa-youtube{
    background: #ff0033;
}
.socialmediaicons .fa-instagram{
	background-image: url(../Sfondi/bgInstagram.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-color: #df337f;
}
.socialmediaicons .fa-linkedin{
   background: #0073b1;
}
.socialmediaicons .fa-x-twitter{
   background: black;
}
.socialmediaicons .fa-phone{
	background: var(--theme-color3-bg);
}
/* @end */

/* BREAKPOINT EXTRALARGE - xl */
@media (min-width: 1200px){
	.no-home #slidecont1 img{
		object-fit: cover;
		width: 100%;
	}
	.no-home .slidetop img{
		margin: auto;
		width: auto;
	}
}

/* BREAKPOINT LARGE - lg - tablet oriz */
@media (min-width: 992px) and (max-width: 1199px){
	.bg-testo .btn{
		margin-top: 1rem;
		font-size: .8rem;
	}
}

/* BREAKPOINT MEDIUM - md - tablet vert */
@media (min-width: 768px) and (max-width: 991px){	
	.logo3m{
		margin-right: 4rem;
	}
}

/* SOLO TABLET E DESKTOP, NO SMARTPHONE!!! */
@media (min-width: 992px){
	.titolohover{
		/* Titolo sovrapposto ad animazione */
		position: absolute !important;
		width: 100%;
		bottom: 5rem;
		z-index: 150;
	}
	.titolohover .titoloh1{
		text-shadow: var(--text-shadow);
		width: fit-content;
		font-weight: 600;
		padding: 0;
		margin-top: 3rem;
        margin-right: auto;
        margin-bottom: 1rem;
        margin-left: auto;
		font-size: 3vw;
		text-align: center;
	}
	.row-eq-height{
		/* ATTENZIONE! Non spostare sotto il 768 o scombina le colonne!!! */
		display: flex;
	}
	.vertical-center{
		height: 100%;
		position: relative;
		text-align: center;
		display: flex;
		justify-content: center;
		flex-direction: column;
	}
	.text-center > .pagination{
  		justify-content: center;
	}
	.btn-lg{
		white-space: normal;
		font-size: 1.1rem;
		max-width: 220px;
	}
	.boxhorizontal > a{
		border: 1px solid var(--border-color-dark);
		border-radius: var(--border-radius);
	}
	.boxhorizontal,
	.boxhorizontal > a{
		display: flex;
		background-color: white;
		flex-direction: row !important;
		width: 100%;
	}
	.boxhorizontal .boxico{
		width: 50%;
		border-bottom-right-radius: 0;
		border-top-right-radius: 0;
		border-bottom-left-radius: var(--border-radius);
    	border-top-left-radius: var(--border-radius);
	}
	.boxhorizontal .boxcontent{
		width: 50%;
		justify-content: center;
		text-align: left;
		padding: 0 2rem 2rem 2rem;
	}
	.boxhorizontal .boxlink{
		width: 50%;		/* DEFAULT: DEVE ESSERE LARGO COME BOXCONTENT */
		right: 0;		/* ATTENZIONE! se larghezza=50% questo DEVE ESSERE 0 */
		left: auto;
		bottom: 2rem;
		position: absolute;
		text-align: left;
		padding: 0 0 1rem 2rem;
	}
	.boxhorizontal-right,
	.boxhorizontal-right > a{
		/* SILVIA: NON VAI MAI MAI MAI remato, PP!!!! */
		flex-direction: row-reverse !important;
		background-color: var(--theme-color2-bg);
	}
	.boxhorizontal-right > a{
		border: none;
	}
	.boxhorizontal-right a .boxtitolo,
	.boxhorizontal-right a .boxtesto,
	.boxhorizontal-right .boxtitolo,
	.boxhorizontal-right .sottotitolo,
	.boxhorizontal-right .boxtesto,
	.boxhorizontal-right .boxlink .btn{
		color: var(--theme-color2-txt);
	}
	.boxhorizontal-right .boxico{
		border-bottom-right-radius: var(--border-radius);
    	border-top-right-radius: var(--border-radius);
		border-bottom-left-radius: 0;
    	border-top-left-radius: 0;
	}
	.boxhorizontal-right .boxlink{
		left: 0;
		right: auto;
	}
	.boxhorizontal-sm{
		padding: .5rem;
		border: 1px solid var(--border-color);
		border-radius: var(--bs-border-radius);
	}
	.boxhorizontal-sm .boxico{
		width: 30%;
	}
	.boxhorizontal-sm .boxcontent{
		width: 70%;
		padding: .5rem;
	}
	.boxhorizontal.boxhorizontal-sm > a{
		border: none;
	}
	.boxhorizontal-sm .boxtitolo{
		font-size: 1.2rem;
	}
	.boxhorizontal.boxlarge .boxico{
		width: 50%;
	}
	.boxhorizontal.boxlarge .boxcontent,
	.boxhorizontal.boxlarge .boxlink{
		width: 50%;
	}
	.boxlarge.boxhorizontal .boxlink{
		left: 50%;
		right: auto;
	}
	.boxlarge.boxhorizontal-right .boxlink{
		left: 0;
		right: auto;
	}
	.documenti-cont .boxhorizontal .boxcontent{
		flex-flow: row;
		justify-content: space-evenly;
	}
	/* @group FLEXBOX */
	/* ATTENZIONE!!! Nessuna voce di questo gruppo va rimossa!!!  */
	/* .flex-container .row > [class*="col-"] {
		display: flex;
	} */
	.flex-container .row{
		row-gap: .5rem;
	}
	.flex-container .box,
	.flex-container .card{
		height: 100%;
		display: flex;
		flex-direction: column;
	}
	.justify-content-center{
		justify-content: center;
	}
	/* MASONRY - fluid 5 columns */
	.grid-sizer,
	.grid-item{
		width: 20%;
	}
	/* MASONRY -  2 columns */
	.grid-item--width2{
		width: 40%;
	}
}
/* @end */


/* BREAKPOINT SMARTPHONE - COLLAPSE MENU - xs + sm + md */
@media (max-width: 991px){
	.parallaxBg{
		background-attachment: scroll;	/* RISOLVE BUG DELL'IMG PER IOS !!!! */
	}
	.no-required,
	.required-message,
	.help-message{
		top: 2px;
	}
	#editing-bar{
		font-size: .8rem;
	}
	#titolopagina .titoloh1{
		font-size: 3.5vw;
	}
	.modelli-home .boxlink{
		bottom: 3rem;
	}
	.modelli-home .boxcontent{
		height: 100%;
		padding-bottom: 1rem;
	}
	.boxtitolo{
		font-size: 1.3rem;
	}
	.box.boxoverlay{
		padding-bottom: 0;
	}
	.col-6 .boxtitolo{
		font-size: .8rem;
		word-wrap: break-word;
		/* ATTENZIONE!! Non cancellare le 3 righe sotto; remare se necessario */
		overflow: hidden;
		text-overflow: ellipsis;
 		/* ATTENZIONE!! Non cancellare le 3 righe sopra; remare se necessario */
	}
	ul.list-4col li{
		float: left;
		width: 50%;
	}
	.grid-item{
		width: 100%;
	}
	.no-home #slidecont1,
	.no-home #slidecont3,
	.slidetop{
		position: relative;
	}
	.titolohover{
		position: absolute;
		width: 100%;
		bottom: 1rem;
		left: 0;
		z-index: 150;
	}
	.titolohover .titoloh1{
		color: white;
		font-size: 6vw;
		text-align: center;
	}
	.titolohover .sottotitolo{
		display: none;
	}
	.no-home #slidecont1::before,
	.slidetop::before{
		height: 99%;
	}
	#credits{
		float: left;
	}
	.lang-cont{
		order: 2;
		margin: 0 60px 0 0;
	}
	.header .socialmediaicons{
		display: none;
	}
	.parallaxBg.bg-image-v1{
		background: url(/Pagine/Sfondi/parallaxbgMobile.webp) no-repeat fixed 0% 50%;
		background-attachment: scroll;
		background-size: cover;
	}
	.boxsegnala-cont{
		display: inline-block;
		margin: auto;
		text-align: center;
	}
	.boxsegnala{
		float: none;
		margin-top: 1rem;
	}
	.zopim{
		bottom: 1px !important;
		right: 0 !important;
	}
	.userbar-cont ul{
		flex-direction: row;
	}
	.bg-testo .btn{
		font-size: 1.6vw;
	}
	.testo-hover .didascalia .bg-testo{
		padding: 0;
	}
	.boxhorizontal-sm .boxico{
		padding-top: .5rem;
		padding-bottom: .5rem;
	}
	.boxhorizontal-sm .btn-circle{
		margin: 0 auto;
	}
	.documenti-cont .boxhorizontal-sm{
		text-align: center;
	}
	/*---table---*/
	.no-table-mobile table,.no-table-mobile thead, .no-table-mobile tbody,
	.no-table-mobile th,.no-table-mobile td, .no-table-mobile tr{
		display: block;
	}
	.no-table-mobile .table > tbody > tr > td,
	.no-table-mobile .table > tbody > tr > th,
	.no-table-mobile .table > tfoot > tr > td,
	.no-table-mobile .table > tfoot > tr > th,
	.no-table-mobile .table > thead > tr > td,
	.no-table-mobile .table > thead > tr > th{
		padding: 4px;
	}
	.table-bordered > tbody > tr > td,
	.table-bordered > tbody > tr > th,
	.table-bordered > tfoot > tr > td,
	.table-bordered > tfoot > tr > th,
	.table-bordered > thead > tr > td,
	.table-bordered > thead > tr > th{
		border: none;
	}
	/* Hide table headers (but not display: none;, for accessibility) */
	.no-table-mobile thead tr{
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	.no-table-mobile tr{
		margin: 0 0 1rem 0;
	}
   .table-striped-xs tr:nth-child(odd){
		background: #e1e1e1 !important;
	}
	.no-table-mobile td{
		/* Behave like a "row" */
		border: none;
		position: relative;
		white-space: normal;
	}
	.no-table-mobile td.td-title{
		padding-left: 50% !important;
	}
	.no-table-mobile td.td-title:before{
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		top: 6px;
		left: 6px;
		width: 45%;
		padding-right: 10px;
		white-space: nowrap;
		text-align: left;
		font-weight: bold;
	}
	.no-table-mobile td.td-title:before{
		content: attr(data-title);
	}
	.no-table-mobile .th-label, .no-table-mobile .th-help{
		display: inline-block;
	}
	.no-table-mobile .th-label{
		width: 88%;
		font-weight: bold;
	}
	.no-table-mobile .th-help{
		width: 10%;
		text-align: right;
	}
}


/* BREAKPOINT SMARTPHONE (extrasmall <576)  + small <768) - sm */
@media (max-width: 767px){
	.logo{
		max-width: 40%;
	}
	.lang-cont .bandiera{
		display: none;
	}
	.logo3m{
		max-width: 80px;
	}
	.modelli-home{
  		margin-left: 5%;
  		margin-right: 5%;
	}
	#boxcont-evid1{
		margin-top: 1.5rem;
	}
	#titolopagina .titoloh1{
		font-size: 4.5vw;
	}
	.boxhorizontal h3.boxtitolo{
		font-size: 1.4rem;
	}
	.btn-gruppo-cont .btn-gruppo{
		justify-content: center;
		width: 100%;
		margin: 0 0 1rem 0;
	}
	.owl-next{
  		right: -2rem;
	}
	.owl-prev{
		left: -2rem;
	}
	.bg-testo .btn{
		font-size: 3vw;
	}
}
