
/* @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: 0;
}
.btn-pill{	/* bottone a "pillola" */
	border-radius: 20px;
	padding-left: 10%;
	padding-right: 10%;
}
.btn-circle{
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 50%;
	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.85;
}
.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); */
	color: white;
	background-color: var(--theme-primary);
	border-color: var(--theme-primary-dark);
}
.btn-outline-primary{
	color: var(--theme-primary-txt);
	border-color: var(--theme-primary);
}
.btn-primary:hover, .btn-primary:focus,
.btn-primary:focus-visible, .btn-primary:active,
.btn-primary:active:focus, .btn-primary:active:hover,
.btn-primary:not(:disabled):not(.disabled):active{
	color: var(--bg-light);
	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:focus-visible, .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 solid var(--border-color-dark);
	clear: both;
	height: 0;
	opacity: 1;
	margin: 10px 0 30px;
}
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: 0.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 3rem 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 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: 0.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: 1.5rem 0 1rem;
}
#socialbar.collapse.show{
	margin: 0;
}
#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{
	float: left;
    width: 190px;
    text-align: right;
}
#boxlogin ul{
	clear: both;
	font-size: 11px;
	margin: 0;
	padding: 0 0 0 30px;
	text-align: left;
}
/* @end */

label.form-check-label {
font-size:.8rem;
}


/* @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: 1600px; margin-left: auto; margin-right: auto;}
.pagesize-xl{max-width: 1300px; 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;
	margin: 3rem 0;
}
/* 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{
	aspect-ratio: 2/3;
}
/* Proporzioni per le immagini - formati specifici */
.banner{
	aspect-ratio: 3/1;
}
.mobile-story{
	aspect-ratio: 9/16;
}
iframe{
	border: none;
}
#titolopagina{
	margin: 0;
	padding: 0;
	position: relative;
}
#titolopagina h1{
	position: relative;
	font-size: 1.8rem;
	margin: 1rem 0 1rem;
	padding: 0 0 .5rem 0;
	text-align: left;
	line-height: 1;
}
#titolopagina:not(.titolohover) h1::after{
	content: "";
	width: 100px;
	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;
	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;
}
/*h4{
	color: var(--theme-color1-bg);
	letter-spacing: .05rem;
}*/
.occhiello{
	font-weight: 600;
}
h1 + .sottotitolo{
	margin: -20px 0 50px;
}
.titologrande{
	order: 2;
}
.titolopiccolo{
	order: 1;
}
.didascalia p{
	order: 3;
}

/* 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;
	letter-spacing: .05rem;
	padding-bottom: .5rem;
	z-index: 1;
}
/* default (left): linea orizzontale */
.brd-std{
	text-align: left;
}
.brd-std::after{
	content: "";
	width: 50px;
	height: 1px;
	background-color: var(--theme-color3-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-light{
	background-color: var(--bg-light) !important;
	color: var(--body-color-light);
}
.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-medium{
	background-color: var(--bg-medium);
	color: var(--body-color-medium);
}
.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 briciole e titolo: non azzerare */
 	margin-top: -.5rem;
}
.breadcrumb{
	background-color: transparent;
	/*margin-bottom: 5px;*/
	padding: .7rem 0;
	font-size: .9rem;
}
.breadcrumb li{
   padding-right: 4px;
}
.breadcrumb li a{
	color: var(--body-color);
}
.breadcrumb-item + .breadcrumb-item::before{
   /* color: var(--theme-color1-bg); */
   content: "/\00a0";
}
.breadcrumb-item.active{
	color: var(--theme-primary-dark);
	/*display: none !important;*/  /* serve quando i titoli sono lunghissimi.. */
}

#print, .only4print{
	display: none;
}
.no-copy{
	/* Disabilita il copia e incolla */
	user-select: none;
}
/* @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;
	/* Provare anche: color-burn, multiply, luminosity */
	/* background-blend-mode: overlay;
	background-color: rgba(0,0,0,0.45); */
}
.parallaxBg{
	padding: 4rem 0;
	position: relative;
	/* overflow: hidden; */ 
	text-align: center;
}
.parallaxBg .container,
.parallaxBg .container-fluid{
    z-index: 10;
    position: relative;
}
.parallaxBg .h2{
    font-size: clamp(1.5rem, 3.5vw, 2.5rem);
    margin-bottom: 2rem;
}
.parallaxBg .h4{
    font-weight: 300;
}

.bg-home-parallax {
    width: 100%;
    min-height: 500px;
    background-image: url("/Pagine/sfondi/bgHome.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

/* Smartphone e tablet */
@media (max-width: 991px) {
    .bg-home-parallax {
        min-height: 70vh;
		background-image: url("/Pagine/sfondi/bgHomemobile.jpg");
        background-attachment: scroll;
		background-size: cover;
        background-position: center center;
		background-color: rgba(0,0,0,0.5);

    }
}

/* @end */


/* @group PRENOTA */
.prenota {
	margin:1.2rem;
}

.prenota .h2{
   font-size: clamp(1.3rem, 3.2vw, 2.2rem);
   letter-spacing: .1rem;
   font-weight: 600;
   margin-bottom: 2.5rem;
   color: var(--theme-primary-dark);
}
.prenota .h5{
   letter-spacing: .1rem;
   font-size: 1.1rem;
   color: black;
}
.prenotazione-sessione{
	padding: 1.5rem;
	background-color: white;
}


/* @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{
	position: absolute;
	top: 100% !important;
	right: -1.5rem;
}
.userbar-cont > * {
	position: relative;
	margin-left: 10px;
}
.userbar-cont ul li{
	height: 100%;
}
.userbar-cont .icon-text,
.userbar-text{
	display: none;
}
.user-name{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	text-transform: uppercase;
	background: var(--theme-info);
	color: var(--theme-info-txt);
}
.user-name.user-90{
	background: var(--theme-evidence-bg);
	color: var(--theme-evidence-txt);
}
.user-name.user-100{
	background: var(--alder-bg);
	color: var(--alder-txt);
}
.userbar{
	margin-bottom: 0;
}
.userbar li.nav-item.dropdown{
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.userbar li a:not(.badge-open .btn){
	color: var(--body-color);
}
.userbar li .fa-shopping-cart::before{
	display: inline-block;
	margin-top: .1rem;
}
.userbar li a.nav-link{
	display: flex;
	align-items: center;
	height: 100%;
}
/* @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: 0.4;
  max-width: 24px;
  height: auto;
}
.bandiera {
  margin-left: 10px;
  display: none;
}
.hoverSelector{
  padding: 0.4rem 0.5rem;
}
.hoverSelector .bandiera {
  margin-right: 0.25rem;
  margin-left: 0;
}
.hoverSelector:link,
.hoverSelector:visited {
  display: inline-block;
  cursor: pointer;
}
.hoverSelector:hover ul.languages {
  display: block;
}
ul.languages {
  top: 38px;
  right: 0;
  display: none;
  min-width: 85px;
  position: absolute;
  background: white;
  z-index: 20;
}
ul.languages:after {
  top: -4px;
  width: 0;
  height: 0;
  right: 14px;
  content: " ";
  display: block;
  position: absolute;
  border-bottom: 6px solid white;
  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: 12px;
  padding: 6px 12px;
  margin-bottom: 1px;
  text-transform: uppercase;
}
ul.languages li.active a i {
  color: var(--theme-evidence-bg);
  float: right;
}
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 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: #eee;
	border: 1px solid var(--border-color);
	border-radius: .5rem;
	box-shadow: 0 1px 1px #fff;
	margin: .75rem;
	padding: .5rem;
}
.simplebox.align-center{
	margin-inline: auto;
}
.simplebox.align-left{
	margin-right: auto;
}
.simplebox.align-right{
	margin-left: auto;
}
.simplebox-title,
.simplebox-content{
	background: #fff;
	border: 1px solid var(--border-color);
	border-radius: .3125rem;
	box-shadow: inset 0 1px 1px #ccc;
}
.simplebox-title{
	margin-bottom: .5rem;
	padding: .4rem .6rem;
}
.simplebox-content{
	padding: 0 .6rem;
}
.citazione{
	--quote-size: 2rem;
	color: var(--body-color);
	font-family: var(--cursive-font-family);
	font-size: clamp(1.5rem, 2vw, 2.5rem);
	line-height: 1.2;
	margin-block: 1.5rem;
	padding: 1.5rem 3rem;
	position: relative;
}
.citazione::before,
.citazione::after{
	font-family: var(--icon-font-family);
	color: var(--body-color-light);
	position: absolute;
	font-size: var(--quote-size);
	font-weight: 900;
	opacity: 0.6;
}
.citazione::before{
	content: "\f10d";
	inset: 0 auto auto 0;
}
.citazione::after{
	content: "\f10e";
	inset: auto 0 0 auto;
}
.citazione p{
	margin: 0;
}
/* ----------------------------
 * Callouts
 * ---------------------------- */
/* @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 */

/* @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{
	grid-column: 3;
    justify-self: end;
}
.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);
}*/
/*.socialmediaicons .fa-pinterest{
	background-color: #e60023;
}
.socialmediaicons .fa-skype{
   background: #00aff0;
}*/
/* @end */

/* @group COMMENTI - ATTIVARE QUANDO NECESSARIO */
/*.commenti .firma{
	margin: 10px 0 0 0;
}
.commenti .commentiredaz{
	border-bottom: 1px solid #cccccc;
	margin: 50px 10px 0 0;
	padding: 0 0 50px 200px;
}
.commenti .commentiredaz p::after{
	content: '\f007';
	position: absolute;
	font-weight: 900;
	font-size: 3.5rem;
   font-family: "Font Awesome 5 Free", FontAwesome;
	top: 0;
	left: 0;
	right: 0;
}
.commenti .commentiredaz::after{
	position: absolute;
	content: '';
	top: 0;
	left: 120px;
	width: 4px;
	height: 70%;
	background-color: #999999;
}
ul.commenti-risposte{
	margin: 20px 0 0 50px;
}*/
/* @end */

/* BREAKPOINT EXTRALARGE - xl */
/*@media (min-width: 1200px){
}*/

/* BREAKPOINT LARGE - lg - tablet oriz */
/*@media (min-width: 992px) and (max-width: 1199px){
}*/

/* BREAKPOINT MEDIUM - md - tablet vert */
/*@media (min-width: 768px) and (max-width: 991px){
}*/

/* 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;
		min-width: 160px;
	}
	.prenota .h2, .prenota .h5{
		padding-left: 5rem;
		padding-right: 5rem;
	}
	/* @group FLEXBOX */
	/* ATTENZIONE!!! Nessuna voce di questo gruppo va rimossa!!!  */
	/* .flex-container .row > [class*="col-"] {
		display: flex;
	} */
	.flex-container .row{
		row-gap: .5rem;
		column-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: .85rem;
	}
	#titolopagina .titoloh1{
		font-size: 3.5vw;
	}
	ul.list-4col li{
		float: left;
		width: 50%;
	}
	.grid-item{
		width: 100%;
	}
	#credits{
		margin-top: 1rem;
	}
	header .socialmediaicons{
		display: none;
	}
	#header-menu2 .socialmediaicons {
   		display: inline-flex;
    }
    #header-menu2 ul.languages {
   		left: 0;
    }
	.parallaxBg.bg-image-v1{
		background: url(/Pagine/Sfondi/parallaxbgMobile.webp) no-repeat fixed 0% 50%;
		background-color: var(--bg-light);
		background-attachment: scroll;
		background-size: cover;
	}
	.zopim{
		bottom: 1px !important;
		right: 0 !important;
	}
	.userbar-cont ul{
		flex-direction: row;
	}
	.page-cont {
      margin-left: 1rem;
      margin-right: 1rem;
   }
}


/* BREAKPOINT SMARTPHONE (extrasmall <576)  + small <768) - sm */
@media (max-width: 767px){
	.logo{
		max-width: 70%;
	}
	.lang-cont .bandiera{
		display: none;
	}
	#titolopagina .titoloh1{
		font-size: 4.5vw;
	}
	.btn-gruppo-cont .btn-gruppo{
		justify-content: center;
		width: 100%;
		margin: 0 0 1rem 0;
	}
}
