@charset "utf-8";
/* Geecom 4.0 - Template Base */

/* == Helpers == */

*:focus {
	outline: none;
}

.accent {
	color: var(--primary);
}

.background-image {
	background-position: center center !important;
	background-size: cover !important;
	background-repeat: no-repeat;
	display: block;
	-webkit-transition: all  ease-in-out .3s;
    -moz-transition: all ease-in-out .3s;
    transition: all ease-in-out .3s;
}

.box-shadow {
	-webkit-box-shadow: 0px 20px 22px -15px rgba(0,0,0,0.65);
	-moz-box-shadow: 0px 20px 22px -15px rgba(0,0,0,0.65);
	box-shadow: 0px 20px 22px -15px rgba(0,0,0,0.65);
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
}

.box-shadow:hover {
	-webkit-box-shadow: 0px 10px 22px -15px rgba(0,0,0,0.65);
	-moz-box-shadow: 0px 10px 22px -15px rgba(0,0,0,0.65);
	box-shadow: 0px 10px 22px -15px rgba(0,0,0,0.65);
}

.box-shadow-lite {
	-webkit-box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.06);
	-moz-box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.06);
	box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.06);
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
}

.box-shadow-lite:hover {
	-webkit-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.15);
	box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.15);
}

.box-shadow-sharp {
	-webkit-box-shadow: 0px 10px 0px -6px rgba(0,0,0,0.13); 
	-mpz-box-shadow: 0px 10px 0px -6px rgba(0,0,0,0.13);
	box-shadow: 0px 10px 0px -6px rgba(0,0,0,0.13);
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
}

.box-shadow-sharp:hover {
	-webkit-box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.20); 
	-moz-box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.20);
	box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.20);
}

.fit-image {
    width: 100%;
    object-fit: cover
}
	
.full-width {
	width: 100%;
}

.h10{min-height:10vh;}
.h20{min-height:20vh;}
.h30{min-height:30vh;}
.h40{min-height:40vh;}
.h50{min-height:50vh;}
.h60{min-height:60vh;}
.h70{min-height:70vh;}
.h80{min-height:80vh;}
.h90{min-height:90vh;}
.h100{min-height:100vh;}

.op10 .parallax {opacity:0.1;}
.op20 .parallax {opacity:0.2;}
.op30 .parallax {opacity:0.3;}
.op40 .parallax {opacity:0.4;}
.op50 .parallax {opacity:0.5;}
.op60 .parallax {opacity:0.6;}
.op70 .parallax {opacity:0.7;}
.op80 .parallax {opacity:0.8;}
.op90 .parallax {opacity:0.9;}

.mt-n6{margin-top: -6em;}
.mt-n7{margin-top: -7em;}
.mt-n8{margin-top: -8em;}
.mt-n9{margin-top: -9em;}
.mt-n10{margin-top: -10em;}

.mb-n6{margin-bottom: -6em;}
.mb-n7{margin-bottom: -7em;}
.mb-n8{margin-bottom: -8em;}
.mb-n9{margin-bottom: -9em;}
.mb-n10{margin-bottom: -10em;}

.mr-n6{margin-right: -6em;}
.mr-n7{margin-right: -7em;}
.mr-n8{margin-right: -8em;}
.mr-n9{margin-right: -9em;}
.mr-n10{margin-right: -10em;}

.ml-n6{margin-left: -6em;}
.ml-n7{margin-left: -7em;}
.ml-n8{margin-left: -8em;}
.ml-n9{margin-left: -9em;}
.ml-n10{margin-left: -10em;}

[class*='ratio-'] {
  display: block;
  position: relative;
  object-fit:cover; 
}

[class*='ratio-'] > * {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit:cover; 
}

.aspect-ratio-1-1 {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  position: relative;
}

.aspect-ratio-16-9 {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
}

.aspect-ratio-4-3 {
  width: 100%;
  height: 0;
  padding-bottom: 75%;
  position: relative;
}

.aspect-ratio-21-9 {
  width: 100%;
  height: 0;
  padding-bottom: 42.86%;
  position: relative;
}

.aspect-ratio-21-18 {
  width: 100%;
  height: 0;
  padding-bottom: 85.71%;
  position: relative;
}

.aspect-ratio-3-2 {
  width: 100%;
  height: 0;
  padding-bottom: 66.66%;
  position: relative;
}

.aspect-ratio-8-5 {
  width: 100%;
  height: 0;
  padding-bottom: 62.5%;
  position: relative;
}

.aspect-ratio-8-9 {
  width: 100%;
  height: 0;
  padding-bottom: 112.5%;
  position: relative;
}

.aspect-ratio-9-16 {
  width: 100%;
  height: 0;
  padding-bottom: 177.78%;
  position: relative;
}

.aspect-ratio-3-4 {
  width: 100%;
  height: 0;
  padding-bottom: 133.33%;
  position: relative;
}

.rotate90 {
	transform: rotate(90deg);
}
.rotate180 {
	transform: rotate(180deg);
}

.noOverflow {
	overflow:hidden;
}
.noOverflow-x {
	overflow-x:hidden;
}
.noOverflow-y {
	overflow-y:hidden;
}
.siOverflow {
	overflow:inherit !important;
}

.noTitle .row > .col-md-12.mb-3.text-center {
	display: none;
}

pre {
    background: var(--light-active);
}

.parallax__container {
	clip: rect(0, auto, auto, 0);
	height: 100%;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -100;
}

.parallax {
	position: fixed;
	top: 0;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	width: 100%;

	/* BG behaviour */
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.popover {
	position: absolute !important;
	z-index: 2;
	top: -137px !important;
}

.rotate{
    -moz-transition: all .2s linear;
    -webkit-transition: all .2s linear;
    transition: all .2s linear;
}

.rotate.down{
    -moz-transform:rotate(180deg);
    -webkit-transform:rotate(180deg);
    transform:rotate(180deg);
}

.sticky {
  position: -webkit-sticky;
  position: -moz-sticky;
  position: -o-sticky;
  position: -ms-sticky;
  position: sticky;
  z-index: 1;
}

.sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 110px;
    z-index: 1;
}

@media (min-width:768px){
	.sticky-top-md {
		position: -webkit-sticky;
		position: sticky;
		top: 128px;
		z-index: 1;
	}
}

video {
	width:100%;	
}

.extraspace .sticky-top {
    top: 150px;
}

.bs-tooltip-left,
.bs-tooltip-right{
	top: -136px !important;
}

.bs-tooltip-bottom{
	top: -130px !important;
}

/* ==== CLASSI GENERALI ==== */

/* == .container == */

@media (min-width: 1600px) {
	.container {
		max-width: 1440px;
	}
}

/* ==  Breadcrumb == */

.breadcrumb {
    padding: .75em 0;
    border-radius: 0;
    background: none;
    border-bottom: 1px solid rgba(0,0,0,0.1);
}

/* == Links == */

a:not(.btn) {
	color: var(--primary);
}

a:not(.btn):hover {
	color: var(--primary-over);
	text-decoration: none;
}

a.badge, .text-white a {
	color: var(--light);
}

a.badge:hover, .text-white a:hover {
	color: #FFF;
}

a.badge-primary.focus, a.badge-primary:focus {
	box-shadow: none;
}

a:hover .background-image,
a:hover img{
	opacity: 0.85;
}


/* == Lettering == */

h1, h2, h3, h4, h5, h6, 
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-weight: bolder;
}

h1.lead, h2.lead, h3.lead, h4.lead, h5.lead, h6.lead,
.h1.lead, .h2.lead .h3.lead, .h4.lead, .h5.lead, .h6.lead, .lead {
	font-weight: lighter;
}

p:last-of-type{
	margin-bottom: 0;
}

.portfolio-wrapper p:last-of-type{
	margin-bottom: 1rem;
}

/* == Pulsanti == */

button, .btn {
	border-radius:0.25rem;
	letter-spacing: 0.5;
}

button.focus, .btn.focus,
button:focus, .btn:focus {
    outline: none;
    box-shadow: none;
}

.btn.focus, .btn:focus {
	box-shadow: 0 0 0 0.2rem rgba(0,0,0,.1);
}

.btn:not(:disabled):not(.disabled).active:focus, .btn:not(:disabled):not(.disabled):active:focus, .show>.btn.dropdown-toggle:focus {
  box-shadow: none;
}

/* Varianti */
.btn.sharp, button.sharp {
  border-radius:0;
}

.btn.round, button.round {
	border-radius: 2rem;
}

.btn.raised, button.raised {
	box-shadow: 0 3px 0 0 rgba(0,0,0,0.2);
}

.btn.raised:active, .btn.raised.active, button.raised:active, button.raised.active{
	box-shadow: none;
	margin-bottom: -3px;
	margin-top: 3px;
}

 
/* Variante Primary */
.btn-primary, .btn-primary.disabled, .btn-primary:disabled {
  color: #ffffff;
  background-color: var(--primary);
  border-color: var(--primary);
}
 
.btn-primary:hover,
.btn-primary:focus{
  color: #ffffff;
  background-color: var(--primary-over);
  border-color: var(--primary-over);
}
 
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle{
  color: #ffffff;
  background-color: var(--primary-active);
  border-color: var(--primary-active);
}


/* Variante Secondary */
.btn-secondary, .btn-secondary.disabled, .btn-secondary:disabled {
  color: #ffffff;
  background-color: var(--secondary);
  border-color: var(--secondary);
}
 
.btn-secondary:hover,
.btn-secondary:focus {
  color: #ffffff;
  background-color: var(--secondary-over);
  border-color: var(--secondary-over);
}
 
.btn-secondary:not(:disabled):not(.disabled).active, .btn-secondary:not(:disabled):not(.disabled):active, .show>.btn-secondary.dropdown-toggle {
  color: #ffffff;
  background-color: var(--secondary-active);
  border-color: var(--secondary-active);
}
 
 
/* Variante Warning */
.btn-warning, .btn-warning.disabled, .btn-warning:disabled  {
  color: #ffffff;
  background-color: var(--warning);
  border-color:  var(--warning);
}
 
.btn-warning:hover,
.btn-warning:focus {
  color: #ffffff;
  background-color: var(--warning-over);
  border-color: var(--warning-over);
}
 
.btn-warning:not(:disabled):not(.disabled).active, .btn-warning:not(:disabled):not(.disabled):active, .show>.btn-warning.dropdown-toggle {
  color: #ffffff;
  background-color: var(--warning-active);
  border-color: var(--warning-active);
}
 
 
/* Variante Danger */
.btn-danger, .btn-secondary.disabled, .btn-secondary:disabled  {
  color: #ffffff;
  background-color: var(--danger);
  border-color: var(--danger);
}
 
.btn-danger:hover,
.btn-danger:focus {
  color: #ffffff;
  background-color: var(--danger-over);
  border-color:  var(--danger-over);
}
 
.btn-danger:not(:disabled):not(.disabled).active, .btn-danger:not(:disabled):not(.disabled):active, .show>.btn-danger.dropdown-toggle {
  color: #ffffff;
  background-color: var(--danger-active);
  border-color: var(--danger-active);
}
 
 
/* Variante Success */
.btn-success, .btn-success.disabled, .btn-success:disabled  {
  color: #ffffff;
  background-color: var(--success);
  border-color: var(--success);
}
 
.btn-success:hover,
.btn-success:focus {
  color: #ffffff;
  background-color: var(--success-over);
  border-color: var(--success-over);
}
 
.btn-success:not(:disabled):not(.disabled).active, .btn-success:not(:disabled):not(.disabled):active, .show>.btn-success.dropdown-toggle{
  color: #ffffff;
  background-color: var(--success-active);
  border-color: var(--success-active);
}
 
 
/* Variante Info */
.btn-info, .btn-info.disabled, .btn-info:disabled  {
  color: #ffffff;
  background-color: var(--info);
  border-color: var(--info);
}
 
.btn-info:hover,
.btn-info:focus {
  color: #ffffff;
  background-color: var(--info-over);
  border-color: var(--info-over);
}
 
.btn-info:not(:disabled):not(.disabled).active, .btn-info:not(:disabled):not(.disabled):active, .show>.btn-info.dropdown-toggle {
  color: #ffffff;
  background-color: var(--info-active);
  border-color: var(--info-active);
}


/* Variante Dark */
.btn-dark, .btn-dark.disabled, .btn-dark:disabled  {
  color: #ffffff;
  background-color: var(--dark);
  border-color: var(--dark);
}
 
.btn-dark:hover,
.btn-dark:focus {
  color: #ffffff;
  background-color: var(--dark-over);
  border-color: var(--dark-over);
}
 
.btn-dark:not(:disabled):not(.disabled).active, .btn-dark:not(:disabled):not(.disabled):active, .show>.btn-dark.dropdown-toggle {
  color: #ffffff;
  background-color: var(--dark-active);
  border-color: var(--dark-active);
}


/* Variante light */
.btn-light, .btn-light.disabled, .btn-light:disabled  {
  color: var(--primary);
  background-color: var(--light);
  border-color: var(--light);
}
 
.btn-light:hover,
.btn-light:focus {
  color: var(--primary);
  background-color: var(--light-over);
  border-color: var(--light-over);
}
 
.btn-light:not(:disabled):not(.disabled).active, .btn-light:not(:disabled):not(.disabled):active, .show>.btn-light.dropdown-toggle {
  color: var(--primary);
  background-color: var(--light-active);
  border-color: var(--light-active);
}

/* Variante Link */

.btn-link, .btn-link.disabled, .btn-link:disabled  {
    color: var(--primary);
    background-color: transparent;
}

.btn-link:hover,
.btn-link:focus {
  color: var(--primary-over);
  background-color: transparent;
  border-color: transparent;
}


/* Varianti Outline */

.btn-outline-primary {
	border-width: 2px;
	border-color: var(--primary); 
	color: var(--primary);
	}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
	color: #ffffff;
	border-color: var(--primary-over);
	background: var(--primary-over);
	}

.btn-outline-primary:not(:disabled):not(.disabled).active, .btn-outline-primary:not(:disabled):not(.disabled):active, .show>.btn-outline-primary.dropdown-toggle{
  color: #ffffff;
  background-color: var(--primary-active);
  border-color: var(--primary-active);
}

.btn-outline-secondary {
	border-width: 2px;
	border-color: var(--secondary); 
	color: var(--secondary);
	}
.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active,
.btn-outline-secondary.active {
	color: #ffffff;
	border-color: var(--secondary-over);
	background: var(--secondary-over);
	}

.btn-outline-secondary:not(:disabled):not(.disabled).active, .btn-outline-secondary:not(:disabled):not(.disabled):active, .show>.btn-outline-secondary.dropdown-toggle{
  color: #ffffff;
  background-color: var(--secondary-active);
  border-color: var(--secondary-active);
}

.btn-outline-success {
	border-width: 2px;
	border-color: var(--success); 
	color: var(--success);
	}
.btn-outline-success:hover,
.btn-outline-success:focus,
.btn-outline-success:active,
.btn-outline-success.active {
	color: #ffffff;
	border-color: var(--success-over);
	background: var(--success-over);
	}

.btn-outline-success:not(:disabled):not(.disabled).active, .btn-outline-success:not(:disabled):not(.disabled):active, .show>.btn-outline-success.dropdown-toggle{
  color: #ffffff;
  background-color: var(--success-active);
  border-color: var(--success-active);
}

.btn-outline-danger {
	border-width: 2px;
	border-color: var(--danger); 
	color: var(--danger);
	}
.btn-outline-danger:hover,
.btn-outline-danger:focus,
.btn-outline-danger:active,
.btn-outline-danger.active {
	color: #ffffff;
	border-color: var(--danger-over);
	background: var(--danger-over);
	}

.btn-outline-danger:not(:disabled):not(.disabled).active, .btn-outline-danger:not(:disabled):not(.disabled):active, .show>.btn-outline-danger.dropdown-toggle{
  color: #ffffff;
  background-color: var(--danger-active);
  border-color: var(--danger-active);
}

.btn-outline-warning {
	border-width: 2px;
	border-color: var(--warning); 
	color: var(--warning);
	}
.btn-outline-warning:hover,
.btn-outline-warning:focus,
.btn-outline-warning:active,
.btn-outline-warning.active {
	color: #ffffff;
	border-color: var(--warning-over);
	background: var(--warning-over);
	}

.btn-outline-warning:not(:disabled):not(.disabled).active, .btn-outline-warning:not(:disabled):not(.disabled):active, .show>.btn-outline-warning.dropdown-toggle{
  color: #ffffff;
  background-color: var(--warning-active);
  border-color: var(--warning-active);
}

.btn-outline-info {
	border-width: 2px;
	border-color: var(--info); 
	color: var(--info);
	}
.btn-outline-info:hover,
.btn-outline-info:focus,
.btn-outline-info:active,
.btn-outline-info.active {
	color: #ffffff;
	border-color: var(--info-over);
	background: var(--info-over);
	}

.btn-outline-info:not(:disabled):not(.disabled).active, .btn-outline-info:not(:disabled):not(.disabled):active, .show>.btn-outline-info.dropdown-toggle{
  color: #ffffff;
  background-color: var(--info-active);
  border-color: var(--info-active);
}

.btn-outline-dark {
	border-width: 2px;
	border-color: var(--dark); 
	color: var(--dark);
	}
.btn-outline-dark:hover,
.btn-outline-dark:focus,
.btn-outline-dark:active,
.btn-outline-dark.active {
	color: #ffffff;
	border-color: var(--dark-over);
	background: var(--dark-over);
	}

.btn-outline-dark:not(:disabled):not(.disabled).active, .btn-outline-dark:not(:disabled):not(.disabled):active, .show>.btn-outline-dark.dropdown-toggle{
  color: #ffffff;
  background-color: var(--dark-active);
  border-color: var(--dark-active);
}

.btn-outline-light {
	border-width: 2px;
	border-color: var(--light); 
	color: var(--light);
	}
.btn-outline-light:hover,
.btn-outline-light:focus,
.btn-outline-light:active,
.btn-outline-light.active {
	color: var(--primary);
	border-color: var(--light-over);
	background: var(--light-over);
	}

.btn-outline-light:not(:disabled):not(.disabled).active, .btn-outline-light:not(:disabled):not(.disabled):active, .show>.btn-outline-light.dropdown-toggle{
  color: var(--primary);
  background-color: var(--light-active);
  border-color: var(--light-active);
}

a.btn-outline-primary {color: var(--primary);}
a.btn-outline-secondary {color: var(--secondary);}
a.btn-outline-success {color: var(--success);}
a.btn-outline-danger {color: var(--danger);}
a.btn-outline-info {color: var(--info);}
a.btn-outline-warning {color: var(--warning);}
a.btn-outline-dark {color: var(--dark);}
a.btn-outline-light {color: var(--light);}

a.btn-outline-dark:hover {color: var(--light);}
a.btn-outline-light:hover {color: var(--primary);}


/* Varianti con icone on mouse over */

.btn.login::after,
.btn.leggi-tutto::after,
.btn.invia::after,
.btn.aggiungi::after,
.btn.sottrai::after,
.btn.scarica::after,
.btn.compra::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 0;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 0px;
    padding: 0;
	right: -10px;
	opacity:0;
	filter: alpha(opacity=0);	
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
	}

.btn:hover.login::after,
.btn:hover.leggi-tutto::after,
.btn:hover.scarica::after,
.btn:hover.aggiungi::after,
.btn:hover.sottrai::after,
.btn:hover.invia::after,
.btn:hover.compra::after{
    padding: 0 26px 0 0;
	opacity:1;
	filter: alpha(opacity=100);
	}

.btn.login::after {	content: "\f2bd"; }
.btn.leggi-tutto::after { content: "\f35a"; }
.btn.invia::after {	content: "\f1d8"; }
.btn.aggiungi::after { content: "\f055"; }
.btn.sottrai::after { content: "\f068"; }
.btn.scarica::after { content: "\f381"; }
.btn.compra::after { content: "\f217"; }

/* Varianti social */

.btn-facebook {	color: #3b5998 !important;}
.btn-facebook:hover {color: #758ab6 !important;}

.btn-twitter {color: #00aced !important;}
.btn-twitter:hover {color: #4cc4f2 !important;}

.btn-google_plus {color: #d34836 !important;}
.btn-google_plus:hover {color: #e07e72 !important;}

.btn-linkedin {color: #0077B5 !important;}
.btn-linkedin:hover {color: #459CC9 !important;}

.btn-instagram {color: #405DE6 !important;}
.btn-instagram:hover {color: #7489EC !important;}

.btn-pinterest {color: #BD081C !important;}
.btn-pinterest:hover {color: #CF4B59 !important;}

.btn-dribbble {color: #ea4c89 !important;}
.btn-dribbble:hover {color: #EF7CA9 !important;}

.btn-whatsapp {color: #25D366 !important;}
.btn-whatsapp:hover {color: #4CDB81 !important;}

.btn-telegram {color: #0088cc !important;}
.btn-telegram:hover {color: #45A8D9 !important;}

.social-sharing .border {
    border-radius: 100%;
    width: 42px;
    height: 42px;
}

.social-sharing a{
    padding: 0;
    line-height: 40px;
}

#condividiOrizzontale {
	margin: 0.75em 0 0 16px;
}

#condividiOrizzontale .border {
	border-radius: 100%;
    width: 42px;
    height: 42px;
	text-align: center;
	max-width: 42px;
	float: left;
	margin: 0 0 0 .5em !important;
	background: #FFF;
}

#condividiOrizzontale a{
    padding: 0;
    line-height: 40px;
}

#condividiOrizzontale .border:first-of-type {
	margin: 0 !important; 
}

/* Blockquote */

blockquote {
  display:block;
  background: #EFEFEF;
  padding: 1em 2em 1em 40px;
  margin: 0 0 20px;
  position: relative;
  color: #656d77;
  border-left: 8px solid #656d77;
  border-right:2px solid #656d77;
	font-size: 1em;
	line-height: 1.5em;
}

blockquote::before{
  content: "\201C";
  
  /*Font*/
  font-family: Georgia, serif;
  font-size: 90px;
  font-weight: bold;
  color: #656d77;
  
  /*Posizionamento*/
  position: absolute;
  left: 10px;
  top:10px;
  
}

blockquote::after{
  content: "";
}

blockquote a{
  text-decoration: none;
  background: #eee;
  cursor: pointer;
  padding: 0 3px;
}

blockquote a:hover{
}

blockquote em{
  font-style: italic;
}

/* Paginazione */

.page-item{
	line-height: 36px;
}

.page-link {
    color: var(--primary);
}

.page-link:hover {
    color: var(--primary-over);
}

.page-link:focus {
    box-shadow: 0 0 0 0.2rem rgba(0,0,0,0.1);
}

.page-item .page-link {
    border-radius: 5em !important;
    height: 36px;
	line-height: 36px;
    width: 36px;
    text-align: center;
    margin: 0 3px;
	padding: 0;
}

.page-item.active .page-link {
    background-color: var(--primary);
    border-color: var(--primary);
}

.page-link i {
	padding: 0;
    position: absolute;
	line-height: 36px;
    width: 36px;
	top:0;
	right: -1px;
}

/* Cards */

.card-header .fas {
  margin-top:12px;
  transition: .3s transform ease-in-out;
}

.card-header .btn.focus, .card-header .btn:focus {
	box-shadow: none;
}
.card-header .btn-link:hover,
.card-header .btn:hover {
	text-decoration:none;
}

/* Dropdown */

.dropdown-menu {
    border-radius: 0;
}

.figure-img {
    margin-bottom: 0;
}

.dropdown-item {
	padding: .25rem 1.25rem;
}

.dropdown-item.active, .dropdown-item:active,
a.dropdown-item.active, a.dropdown-item:active,
.dropdown-item.active:hover, .dropdown-item:active:hover,
a.dropdown-item.active:hover, a.dropdown-item:active:hover {
	background: var(--primary);
	color: #fff;
}

/* Form */

.form-control {
	height: inherit;
}

.form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: var(--primary);
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0,0,0,.1) !important;
}

.form-label-group {
  position: relative;
  margin-bottom: 1rem;
}

.form-label-group > input,
.form-label-group > label,
.form-label-group > textarea, 
.form-group > select {
  padding: var(--input-padding-y) var(--input-padding-x);
}

.form-label-group > label {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  margin-bottom: 0; /* Override del margine di default per il tag `<label>` */
  line-height: 1.5;
  color: #495057;
  border: 1px solid transparent;
  border-radius: .25rem;
  transition: all .1s ease-in-out;
}

.form-label-group input::-webkit-input-placeholder,
.form-label-group textarea::-webkit-input-placeholder {
  color: transparent;
}

.form-label-group input::-ms-input-placeholder,
.form-label-group textarea::-ms-input-placeholder {
  color: transparent;
}

.form-label-group input::-ms-input-placeholder,
.form-label-group textarea::-ms-input-placeholder {
  color: transparent;
}

.form-label-group input::-moz-placeholder,
.form-label-group textarea::-moz-placeholder {
  color: transparent;
}

.form-label-group input::placeholder,
.form-label-group textarea::placeholder {
  color: transparent;
}

.form-label-group input:not(:placeholder-shown),
.form-label-group textarea:not(:placeholder-shown){
  padding-top: calc(var(--input-padding-y) + var(--input-padding-y) * (2 / 3));
  padding-bottom: calc(var(--input-padding-y) / 3);
}

.form-label-group input:not(:placeholder-shown) ~ label,
.form-label-group textarea:not(:placeholder-shown) ~ label{
  padding-top: calc(var(--input-padding-y) / 3);
  padding-bottom: calc(var(--input-padding-y) / 3);
  font-size: 12px;
  color: #777;
}

.custom-control-input:checked~.custom-control-label::before {
    color: #fff;
    background-color: var(--primary) !important;
}

.custom-control-input:focus~.custom-control-label::before {
	box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0,0,0,.1)
}

.custom-file-input ~ .custom-file-label::after {
    content: "Sfoglia";
}

.text-white .form-label-group input:not(:placeholder-shown) ~ label,
.text-white .form-label-group textarea:not(:placeholder-shown) ~ label{
  color: #D8D8D8;
}

/* Variante outline */
.text-white form.outline .form-control {
	color: #FFF;
	background: transparent;
	border: 2px solid #FFF;
}

.text-white form.outline .form-label-group > label {
  color: #f1f1f1;
}

/* Range */

.custom-range::-webkit-slider-thumb {
  background: var(--primary);
}

.custom-range::-moz-range-thumb {
	background: var(--primary);
}

.custom-range::-ms-thumb {
  background: var(--primary);
}

/* Pills */

.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    background-color:var(--primary);
}

/* List-group */ 

.list-group-item.active {
    background-color: var(--light);
    border-color: rgba(0,0,0,.125);
}

/* == Classi contestuali == */

.badge-primary {background-color: var(--primary) !important;}
.badge-secondary {background-color: var(--secondary) !important;}
.badge-success {background-color: var(--success) !important;}
.badge-info {background-color: var(--info) !important;}
.badge-warning {background-color: var(--warning) !important;}
.badge-danger {background-color: var(--danger) !important;}
.badge-light {background-color: var(--light) !important;}
.badge-dark {background-color: var(--dark) !important;}

a.badge-primary:hover {background: var(--primary-over) !important;}
a.badge-secondary:hover {background: var(--secondary-over) !important;}
a.badge-success:hover {background: var(--success-over) !important;}
a.badge-info:hover {background: var(--info-over) !important;}
a.badge-warning:hover {background: var(--warning-over) !important;}
a.badge-danger:hover {background: var(--danger-over) !important;}
a.badge-light:hover {background: var(--light-over) !important;}
a.badge-dark:hover {background: var(--dark-over) !important;}

.text-primary {color: var(--primary) !important;}
.text-secondary {color: var(--secondary) !important;}
.text-success {color: var(--success)!important;}
.text-info {color: var(--info)!important;}
.text-warning {color: var(--warning) !important;}
.text-danger {color: var(--danger) !important;}
.text-light {color: var(--light)!important;}
.text-dark {color: var(--dark)!important;}

a.text-primary {color: var(--primary-over) !important;}
a.text-secondary {color: var(--secondary-over) !important;}
a.text-success {color: var(--success-over)!important;}
a.text-info {color: var(--info-over)!important;}
a.text-warning {color: var(--warning-over) !important;}
a.text-danger {color: var(--danger-over) !important;}
a.text-light {color: var(--light-over)!important;}
a.text-dark {color: var(--dark-over)!important;}

.border-primary {border-color: var(--primary)!important;}
.border-secondary {border-color: var(--secondary)!important;}
.border-success {border-color: var(--success)!important;}
.border-info {border-color: var(--info)!important;}
.border-warning {border-color: var(--warning)!important;}
.border-danger {border-color: var(--danger)!important;}
.border-light {border-color: var(--light)!important;}
.border-dark {border-color: var(--dark)!important;}

.bg-primary {background-color: var(--primary) !important;}
.bg-secondary {background-color: var(--secondary) !important;}
.bg-success {background-color: var(--success) !important;}
.bg-info {background-color: var(--info) !important;}
.bg-warning {background-color: var(--warning) !important;}
.bg-danger {background-color: var(--danger) !important;}
.bg-light {background-color: var(--light) !important;}
.bg-dark {background-color: var(--dark) !important;}


/* ==== Struttura di Pagina ==== */

html {
  position: relative;
  min-height: 100%;
  scroll-behavior: smooth;
}

body {
	position: relative;
	height: 100%;
	min-height: calc(100vh - 98px);
	margin-top:98px;
	font-size: 17px;
}

body section.full-height{
	min-height: calc(100vh - 98px);
}

.page-wrapper{
	flex: 1;
}

body.extraspace{
	margin-top: 136px;
	min-height: calc(100vh - 136px);
}

body.extraspace section.full-height {
	min-height: calc(100vh - 136px);
}

header {
	position: relative;
	z-index:10;
	height: 0 !important;
	margin: 0 !important;
}

main {}

main.noTopSpace {
	position: relative;
	top:-200px;
}

.footer {
  position: relative;
  bottom: 0;
  width: 100%;
}

.navbar { 
  -webkit-transition:padding 0.2s ease;
  -moz-transition:padding 0.2s ease; 
  -o-transition:padding 0.2s ease;        
  transition:padding 0.2s ease;  
}

.affix {
  padding-top: 0.75em !important;
  padding-bottom: 0.75em !important;
  padding-right: 1em !important;
  padding-left: 1em !important;
  -webkit-box-shadow: 0px 0px 20px 0px rgba(50, 50, 50, 0.25);
  -moz-box-shadow: 0px 0px 20px 0px rgba(50, 50, 50, 0.25);
  box-shadow: 0px 0px 20px 0px rgba(50, 50, 50, 0.25);
  -webkit-transition:padding 0.2s linear;
  -moz-transition:padding 0.2s linear;  
  -o-transition:padding 0.2s linear;         
  transition:padding 0.2s linear;  
}

section {
	position: relative;
    /*min-height:calc(100% - 70px);*/
	overflow: hidden;
	padding: 3em 0;
}

section.blog, section.ecommerce {
	overflow:auto;
}

section.negativeTopMargin{
	margin-top: -98px;
}

.negative h1,.negative h2,.negative h3,.negative h4,.negative h5,.negative h6,.negative p, .negative p.lead {
	color: #FFF;
} 

.navbar-dark .navbar-nav .nav-link {
	color: rgba(255,255,255,.75);
}

.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover {
    color: rgba(255,255,255,.95);
}

.navbar-dark .btn-link, .navbar-dark .btn-link.disabled, .navbar-dark .btn-link:disabled {
    color: rgba(255,255,255,0.85)
}

.navbar-dark .btn-link:hover {
    color: rgba(255,255,255,1)
}

/* == Page Loader == */

#page-loader {
	position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.75);
	z-index: 11;
}

/* == Admin Bar ==  */

.admin-bar img {
	width: 20px;
	padding: 0;
	margin-left: -2px;
}

.admin-bar{
	position: fixed;
	height: 148px;
	top:calc(50% - 74px);
	bottom:0;
	z-index: 1001;
	right: -1px;
}

.admin-bar .list-group{
	position: relative;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	box-shadow: 0 0 50px -10px rgba(0,0,0,.25);
}
.admin-bar .list-group:hover{
	box-shadow: 0 0 50px 0px rgba(0,0,0,.25);
}

.admin-bar .list-group-item{
	height: 50px;
	display: flex!important;
	align-items: center!important;
}

.admin-bar .list-group,
.admin-bar .list-group-item,
.admin-bar a{
	position: relative;
	overflow: inherit !important;
}

.admin-bar .baloon {
	position: absolute;
	top:-1px;
	right: 56px;
	height: 50px;
	padding-left: 12px;
	background: #FFF;
	border: 1px solid rgba(0,0,0,.125);
	border-right: 1px solid #FFF;
	border-top-left-radius: 0.125rem;
	border-bottom-left-radius: 0.125rem;
	white-space: nowrap;
	opacity: 0;
}

.admin-bar li:hover .baloon {
	opacity: 1
}

/* == Over the Top Bar == */

.over-the-top-bar {
	position: relative;
	z-index: 2;
}

.over-the-top-bar nav {
	min-height: 38px;
}

.over-the-top-bar .container{
	padding: 0;
}

.over-the-top-bar .navbar-toggler {
	position: absolute;
    height: 20px;
    width: 20px;
    right: 8px;
    top: 8px;
    padding: 0;
    margin: 0;
}

.over-the-top-bar .nav-link {
    padding-top: 0.5rem; 
	padding-bottom: 0.5rem;
}

.over-the-top-bar ul.list-inline.mr-0 {
	margin:auto 0;
	padding: .2rem 0;
}

.over-the-top-bar .text-white a {color: rgba(255,255,255,0.85);}
.over-the-top-bar .text-white a:hover {color: rgba(255,255,255,1);}
.over-the-top-bar .text-primary a {color: var(--primary);}
.over-the-top-bar .text-primary a:hover {color: var(--primary-over);}
.over-the-top-bar .text-secondary a {color: var(--secondary);}
.over-the-top-bar .text-secondary a:hover {color: var(--secondary-over);}
.over-the-top-bar .text-info a {color: var(--info);}
.over-the-top-bar .text-info a:hover {color: var(--info-over);}
.over-the-top-bar .text-success a {color: var(--success)}
.over-the-top-bar .text-success a:hover {color: var(--success-over);}
.over-the-top-bar .text-warning a {color: var(--warning);}
.over-the-top-bar .text-warning a:hover {color: var(--warning-over);}
.over-the-top-bar .text-danger a {color: var(--danger);}
.over-the-top-bar .text-danger a:hover {color: var(--danger-over);}
.over-the-top-bar .text-light a {color: var(--light);}
.over-the-top-bar .text-light a:hover {color: var(--light-over);}
.over-the-top-bar .text-dark a {color: var(--dark);}
.over-the-top-bar .text-dark a:hover {color: var(--dark-over);}

.over-the-top-bar .navbar-dark .profili-social a,
.over-the-top-bar .navbar-dark #testoBarraSuperiore a {
	color: rgba(255,255,255,0.85);
}

.over-the-top-bar .navbar-dark .profili-social a:hover,
.over-the-top-bar .navbar-dark #testoBarraSuperiore a:hover {
	color: rgba(255,255,255,1);
}

.over-the-top-bar .navbar-light .profili-social a,
.over-the-top-bar .navbar-light #testoBarraSuperiore a {
	color: rgba(0,0,0,0.85);
}

.over-the-top-bar .navbar-light .profili-social a:hover,
.over-the-top-bar .navbar-light #testoBarraSuperiore a:hover {
	color: rgba(0,0,0,1);
}

.over-the-top-bar .navbar-light .rotate:before{
	color: var(--primary);
}

.over-the-top-bar .navbar-light .rotate:hover:before{
	color: var(--primary-over);
}

.navbar-dark #testoBarraSuperiore {
	color: rgba(255,255,255,1);
	}

.navbar-light #testoBarraSuperiore {
	color: rgba(0,0,0,1);
	}

@media (min-width:576px){
	.over-the-top-bar i.fas.fa-search{
		padding-top: 7px;
	}
}

@media (min-width:992px){
	.over-the-top-bar .container{
		padding: inherit;
	}
}

.hamburger {
	padding: 0;
}

.over-the-top-bar .hamburger-inner, .over-the-top-bar .hamburger-inner:after, .over-the-top-bar .hamburger-inner:before {
    width: 20px;
    height: 2px;
    border-radius: 4px;
    background-color: var(--light);
}

/* == Menu principale == */

.menu-principale {
	z-index:1;
	padding-top: 1.2rem !important;
	padding-bottom: 1.2rem !important;
	border-bottom: 1px solid rgba(0,0,0,0.05);
}

.menu-principale.affix {
	padding-top: 0.25rem !important;
	padding-bottom: 0.25rem !important;
}

.menu-principale.extraspace {
	margin-top: 38px;
}

.menu-principale .navbar-nav .nav-link {
	padding-right: 0;
	padding-left: 0;
}

.menu-principale span.badge{
    position: relative;
	top: -7px;
}

@media screen and (min-width:992px){
	.menu-principale .navbar-nav .nav-link {
		padding-right: .6rem;
		padding-left: .6rem;
	}
}

.navbar-brand img {
	max-width: 200px;
	height: 50px;
	-webkit-transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
}

.affix .navbar-brand img {
    transform: scale(0.85) translateX(-15px);
}

.barra-laterale .affix .navbar-brand img {
	transform: scale(0.85) translateX(-20px);
}

@media screen and (min-width:376px) {
	.navbar-brand img {
		max-width: 300px;
	}
}

@media screen and (min-width:576px) {
	.over-the-top-bar nav {
		height: 38px;
	}
	
	.menu-principale.extraspace {
		margin-top: 38px;
	}
}

nav.bg-semi-transparent.navbar-dark {
	background-color: rgba(0,0,0,0.5);
}

nav.bg-semi-transparent.navbar-light {
	background-color: rgba(255,255,255,0.5);
}


/* == selettore lingue == */

.selettore-lingue .nav-link.dropdown-toggle{
	padding-top: 6px;
	padding-bottom: 0;
}
.selettore-lingue > li > .nav-link.dropdown-toggle:after{
	transform: translateY(-2px);
}

.selettore-lingue img {
	width:22px;
	margin-top: -10px;
}

.selettore-lingue .dropdown-menu {
	position: absolute;
	min-width:72px;
}

.selettore-lingue .dropdown-menu img{
	padding-top: 5px;
}


/* == Hamburger Menu == */

.navbar-toggler {
  cursor: pointer;
  margin: 0 6px 0 auto;
  padding-left: 1.25em;
  position: relative;
  width: 40px;
  height: 40px;
  border: none;
}

.menu-principale .navbar-toggler {
  margin: 8px 16px 0 0;
  border: none;
}

.menu-global {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  position: absolute;
  left: 0;
  border-top: 3px solid;
  border-color: var(--primary);
  width: 100%;
  -webkit-transition: 0.55s;
  transition: 0.55s;
}

.menu-top {
  top: 8px;
}

.menu-middle {
  top: 18px;
}

.menu-bottom {
  top: 28px;
}

.menu-top-click {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  top: 15px;
  -webkit-transform: rotate(50deg);
          transform: rotate(50deg);
  -webkit-transition: 0.55s 0.5s;
  transition: 0.55s 0.5s;
}

.menu-middle-click {
  opacity: 0;
}

.menu-bottom-click {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  top: 15px;
  -webkit-transform: rotate(-410deg);
          transform: rotate(-410deg);
  -webkit-transition: 0.55s 0.5s;
  transition: 0.55s 0.5s;
}

.navbar-dark .menu-global {
  border-color: var(--light);
}

.menu-principale .hamburger-inner, .menu-principale .hamburger-inner:after, .menu-principale .hamburger-inner:before {
    width: 30px;
    height: 3px;
    border-radius: 4px;
    background-color: var(--primary);
}

.navbar-dark .hamburger-inner, .navbar-dark  .hamburger-inner:after, .navbar-dark  .hamburger-inner:before {
    background-color: #fff;
}


/* == effetti on-over opzionali per il menu principale == */

.sliding-u-l-r-l {
    display: inline-block;
    position: relative;
    padding-bottom: 3px;
}
.sliding-u-l-r-l:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    height: 3px;
    width: 0;
    transition: width 0s ease, background .5s ease;
}
.sliding-u-l-r-l:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    height: 3px;
    width: 0;
    background: var(--primary);
    transition: width .5s ease;
}
.sliding-u-l-r-l:hover:before {
    width: 100%;
    background: var(--primary);
    transition: width .5s ease;
}
.sliding-u-l-r-l:hover:after {
    width: 100%;
    background: transparent;
    transition: all 0s ease;
}

.sliding-u-b-t {
	display: inline-block;
	position: relative;
}
.sliding-u-b-t:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 0px;
	width: 100%;
	background: transparent;
	-webkit-transition: all ease 0.3s;
	-moz-transition: all ease 0.3s;
	transition: all ease 0.3s;
}
.sliding-u-b-t:hover:after {
	height: 3px;
	background: var(--primary);
}


@media(min-width:1024px) {
	
	.sliding-u-b-t:hover:after {
		height: 20px;
	}
	.sliding-u-b-t:hover {
		padding-top:10px;
		padding-bottom:20px;
	}
}


.navbar-dark .sliding-u-l-r-l:after {
    background: var(--light);
}
.navbar-dark .sliding-u-l-r-l:hover:before {
    background: var(--light);
}

.navbar-dark .sliding-u-b-t:hover:after {
	height: 3px;
	background: var(--light);
}

/* == Megamenu == */

.navbar .megamenu{
	padding-top: 16px;
}

.dropdown-menu.megamenu.show{
	width: 100% !important;
}

@media (max-width: 767px) {
	.dropdown-menu.megamenu.show{
		max-height: 260px;
		overflow-x: hidden;
		overflow-y: auto;
	}
}

@media (min-width: 992px) {
	.navbar .has-megamenu{
		position:static!important;
	}
	.navbar .megamenu{
		left:0; 
		right:0;
		width:100%; 
		transform: translate(0px, -3px);
	}
	
	.dropdown-menu.megamenu{
		min-width: 100vw;
	}
}

.barra-laterale .dropdown-menu.megamenu{
	min-width: 100vw;
}

/* == Ricerca Full Screen == */

a.btn-cerca {
	color: var(--primary) !important;
	padding-left: 0;
	padding-right: 0;
	}

a:hover.btn-cerca {color: var(--primary-over) !important}

.navbar-dark a.btn-cerca {color: var(--light) !important;}
.navbar-dark a:hover.btn-cerca {color: var(--light-over) !important}

#ricercaFullScreen {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.95);
	z-index:1200;
    
    -webkit-transition: all 0.25s ease-in-out;
	-moz-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	-ms-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;

    -webkit-transform: translate(0px, -100%) scale(0, 0);
	-moz-transform: translate(0px, -100%) scale(0, 0);
	-o-transform: translate(0px, -100%) scale(0, 0);
	-ms-transform: translate(0px, -100%) scale(0, 0);
	transform: translate(0px, -100%) scale(0, 0);
    
    opacity: 0;
}

#ricercaFullScreen.open {
    -webkit-transform: translate(0px, 0px) scale(1, 1);
    -moz-transform: translate(0px, 0px) scale(1, 1);
	-o-transform: translate(0px, 0px) scale(1, 1);
	-ms-transform: translate(0px, 0px) scale(1, 1);
	transform: translate(0px, 0px) scale(1, 1); 
    opacity: 1;
}
#ricercaFullScreen h3 {
    position: absolute;
    top: 25%;
    width: 100%;
    color: #fff;
    text-align: center;
}
#ricercaFullScreen input[type="search"] {
    position: absolute;
    top: 50%;
    width: 100%;
    color: rgb(255, 255, 255);
    background: rgba(0, 0, 0, 0);
    font-size: 2em;
    font-weight: 300;
    text-align: center;
    border: 0px;
    margin: 0px auto;
    margin-top: -51px;
    padding-left: 30px;
    padding-right: 30px;
    outline: none;
}
#ricercaFullScreen .btn {
    position: absolute;
    top: 50%;
    left: calc(50% - 50px);
    width: 100px;
    margin-top: 60px;
}
#ricercaFullScreen .close {
    position: fixed;
    top: 20px;
    right: 15px;
	width: 46px;
	height: 46px;
    color: #fff;
	background-color: transparent;
	border: none;
	opacity: 1;
	border-radius: 0;
}

#ricercaFullScreen span.line {
	width: 46px;
	height: 1px;
	transform: rotate(45deg);
    position: absolute;
	top:16px;
	right: 0;
	background-color: rgba(255,255,255,0.80);
}

#ricercaFullScreen span.line:last-child {
	width: 46px;
	height: 1px;
	transform: rotate(-45deg);
    position: absolute;
	top:16px;
	right: 0;
	background-color: rgba(255,255,255,0.80);
}

#ricercaFullScreen .close:hover span.line {
	background-color: rgba(255,255,255,1);
}

@media screen and (min-width:768px){
	#ricercaFullScreen input[type="search"] {
    font-size: 3em;
	}
}

@media screen and (min-width:992px){
	a.btn-cerca {
		padding-left: .6rem;
		padding-right: .6rem;
	}
}


/* == Carrello == */

a.btn-carrello {color: var(--primary) !important;}

a:hover.btn-carrello {color: var(--primary-over) !important}


.navbar-dark a.btn-carrello {color: var(--light) !important;}
.navbar-dark a:hover.btn-carrello {color: var(--light-over) !important}

.carrello .dropdown-menu {
	min-width: 280px;
	max-width: 420px;
}

.carrello .dropdown-menu .btn {
	width: auto;
}

.form-check.image-check{
	padding-left: 0;
	
}
.form-check.image-check .form-check-input{
	top: 1px;
    left: 25px;
	z-index: 1;
}

.form-check.image-check .form-check-input + label img{
	opacity: 0.75;
}

.form-check.image-check .form-check-input:checked + label img{
	opacity: 1;
	box-shadow: 0 0 0px 5px var(--primary);
}


/* == MAIN == */


/* == FOOTER  == */
.footer-superiore .text-dark a,
.footer-superiore .text-dark h4{
	color: var(--dark) !important;
}

.footer-superiore .text-dark a:hover{
	color: var(--dark-over);
}

.footer-superiore .text-light a,
.footer-superiore .text-light h4{
	color: var(--light) !important;
}

.footer-superiore .text-light a:hover{
	color: var(--light-over);
}

.footer-superiore .h4, .footer-superiore h4 {
    font-size: 1.5rem !important;
	font-weight: bold !important;
}

.footer-inferiore p:last-of-type{
	margin-bottom: 0;
}

.footer ul li{
	list-style-type: none;
}

.footer-inferiore.bg-dark {
	color: var(--light);
}

/* == SCROLL TO TOP == */

/* scroll to top */

#toTop {
  opacity: 0;
  display: inline-block;
  position: fixed;
  bottom: 1em;
  right: 1em;
  z-index: 99;
  font-size: 18px;
  border: none;
  outline: none;
  background-color: var(--primary);
  color: white;
  cursor: pointer;
  padding: 14px 15px 17px 15px;
  border-radius: 0;
  line-height: 0;
  visibility: hidden;
  -webkit-transition:background-color 0.3s ease-in-out, bottom 0.2s, opacity .2s, visibility .2s;
  -moz-transition:background-color 0.3s ease-in-out, bottom 0.2s, opacity .2s, visibility .2s;
  -o-transition:background-color 0.3s ease-in-out, bottom 0.2s, opacity .2s, visibility .2s;      
  transition:background-color 0.3s ease-in-out, bottom 0.2s, opacity .2s, visibility .2s;
}

#toTop:hover {
  background-color: var(--primary-over);
}

#toTop.show {
  opacity: 1;
  visibility: visible;
}

@media (min-width:768px){
	#toTop {
	  right: 20px;
	}
	
	#toTop:hover {
	  right: 20px;
	  bottom: 30px;
	}
}

/* Cookie law bar */

#cookie-law-bar {
	position:fixed;
	width:100%;
	bottom:0px;
	right:0px;
	margin:0;
	padding:1em;
	z-index:10;
	background:#fff;
	color:#777;
	opacity: 0;
	-webkit-transition:opacity .3s ease-in-out;
	-moz-transition:opacity .3s ease-in-out;  
	-o-transition:opacity .3s ease-in-out;         
	transition:opacity 0.3s ease-in-out;
	transition-delay: .5s;
}

#cookie-law-bar.load {
	opacity: 1;
}

@media(min-width:1024px) {
	#cookie-law-bar {
		width:400px;
		bottom:20px;
		right:20px;
	}
}

/* ====  COMPONENTI ==== */

#contenitoreComponenti section{
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

#contenitoreComponenti section:last-child{
	margin-bottom: 2em !important;
}

#contenitoreComponenti .container{
	margin-top:0 !important;
}

#contenitoreComponenti .container .container{
	margin:0 !important;
}


/** == SEZIONE MULTICOLONNA == **/

.SezioneADueColonne .row > [class*='col-'] > .row,
.SezioneATreColonne .row > [class*='col-'] > .row,
.SezioneAQuattroColonne .row > [class*='col-'] > .row{
	width:calc(100% + 30px);
}

.SezioneADueColonne section,
.SezioneATreColonne section,
.SezioneAQuattroColonne section{
	width: 100%;
}


/** == INTESTAZIONE == **/

h1.separatore-inferiore, .h1.separatore-inferiore,
h2.separatore-inferiore, .h2.separatore-inferiore,
h3.separatore-inferiore, .h3.separatore-inferiore,
h4.separatore-inferiore, .h4.separatore-inferiore,
h5.separatore-inferiore, .h5.separatore-inferiore,
h6.separatore-inferiore, .h6.separatore-inferiore {
	position: relative;
	margin-bottom: 2em;
}

h1.separatore-inferiore:after, .h1.separatore-inferiore:after,
h2.separatore-inferiore:after, .h2.separatore-inferiore:after,
h3.separatore-inferiore:after, .h3.separatore-inferiore:after,
h4.separatore-inferiore:after, .h4.separatore-inferiore:after,
h5.separatore-inferiore:after, .h5.separatore-inferiore:after,
h6.separatore-inferiore:after, .h6.separatore-inferiore:after {
    content: '';
    width: 28px;
    height: 3px;
    position: absolute;
    left: 0;
    margin: auto;
    bottom: -1em;
    background-color: var(--primary);
}

h1.separatore-inferiore:before, .h1.separatore-inferiore:before,
h2.separatore-inferiore:before, .h2.separatore-inferiore:before,
h3.separatore-inferiore:before, .h3.separatore-inferiore:before,
h4.separatore-inferiore:before, .h4.separatore-inferiore:before,
h5.separatore-inferiore:before, .h5.separatore-inferiore:before,
h6.separatore-inferiore:before, .h6.separatore-inferiore:before {
    content: '';
    width: 158px;
    height: 1px;
    background: #d0d0d0;
    position: absolute;
    left: 0;
    margin: auto;
    bottom: calc(-1em + 1px);
}

.text-primary .separatore-inferiore:after {background-color: var(--primary);}
.text-secondary .separatore-inferiore:after {background-color: var(--secondary);}
.text-success .separatore-inferiore:after {background-color: var(--success);}
.text-warning .separatore-inferiore:after {background-color: var(--warning);}
.text-danger .separatore-inferiore:after {background-color: var(--danger);}
.text-dark .separatore-inferiore:after {background-color: var(--dark);}
.text-light .separatore-inferiore:after {background-color: var(--light);}
.text-white .separatore-inferiore:after {background-color: #FFFFFF;}

.text-center h1.separatore-inferiore:after, .text-center .h1.separatore-inferiore:after,
.text-center h2.separatore-inferiore:after, .text-center .h2.separatore-inferiore:after,
.text-center h3.separatore-inferiore:after, .text-center .h3.separatore-inferiore:after,
.text-center h4.separatore-inferiore:after, .text-center .h4.separatore-inferiore:after,
.text-center h5.separatore-inferiore:after, .text-center .h5.separatore-inferiore:after,
.text-center h6.separatore-inferiore:after, .text-center .h6.separatore-inferiore:after,
h1.text-center.separatore-inferiore:after,  .h1.text-center.separatore-inferiore:after,
h2.text-center.separatore-inferiore:after,  .h2.text-center.separatore-inferiore:after,
h3.text-center.separatore-inferiore:after,  .h3.text-center.separatore-inferiore:after,
h4.text-center.separatore-inferiore:after,  .h4.text-center.separatore-inferiore:after,
h5.text-center.separatore-inferiore:after,  .h5.text-center.separatore-inferiore:after,
h6.text-center.separatore-inferiore:after,  .h6.text-center.separatore-inferiore:after {
    left: 0;
	right: 0;
}

.text-center h1.separatore-inferiore:before, .text-center .h1.separatore-inferiore:before,
.text-center h2.separatore-inferiore:before, .text-center .h2.separatore-inferiore:before,
.text-center h3.separatore-inferiore:before, .text-center .h3.separatore-inferiore:before,
.text-center h4.separatore-inferiore:before, .text-center .h4.separatore-inferiore:before,
.text-center h5.separatore-inferiore:before, .text-center .h5.separatore-inferiore:before,
.text-center h6.separatore-inferiore:before, .text-center .h6.separatore-inferiore:before,
h1.text-center.separatore-inferiore:before,  .h1.text-center.separatore-inferiore:before,
h2.text-center.separatore-inferiore:before,  .h2.text-center.separatore-inferiore:before,
h3.text-center.separatore-inferiore:before,  .h3.text-center.separatore-inferiore:before,
h4.text-center.separatore-inferiore:before,  .h4.text-center.separatore-inferiore:before,
h5.text-center.separatore-inferiore:before,  .h5.text-center.separatore-inferiore:before,
h6.text-center.separatore-inferiore:before,  .h6.text-center.separatore-inferiore:before {
    left: 0;
	right: 0;
}

.text-right h1.separatore-inferiore:after, .text-right .h1.separatore-inferiore:after,
.text-right h2.separatore-inferiore:after, .text-right .h2.separatore-inferiore:after,
.text-right h3.separatore-inferiore:after, .text-right .h3.separatore-inferiore:after,
.text-right h4.separatore-inferiore:after, .text-right .h4.separatore-inferiore:after,
.text-right h5.separatore-inferiore:after, .text-right .h5.separatore-inferiore:after,
.text-right h6.separatore-inferiore:after, .text-right .h6.separatore-inferiore:after,
h1.text-right.separatore-inferiore:after,  .h1.text-right.separatore-inferiore:after,
h2.text-right.separatore-inferiore:after,  .h2.text-right.separatore-inferiore:after,
h3.text-right.separatore-inferiore:after,  .h3.text-right.separatore-inferiore:after,
h4.text-right.separatore-inferiore:after,  .h4.text-right.separatore-inferiore:after,
h5.text-right.separatore-inferiore:after,  .h5.text-right.separatore-inferiore:after,
h6.text-right.separatore-inferiore:after,  .h6.text-right.separatore-inferiore:after {
	left: auto;
	right: 0;
}

.text-right h1.separatore-inferiore:before, .text-right .h1.separatore-inferiore:before,
.text-right h2.separatore-inferiore:before, .text-right .h2.separatore-inferiore:before,
.text-right h3.separatore-inferiore:before, .text-right .h3.separatore-inferiore:before,
.text-right h4.separatore-inferiore:before, .text-right .h4.separatore-inferiore:before,
.text-right h5.separatore-inferiore:before, .text-right .h5.separatore-inferiore:before,
.text-right h6.separatore-inferiore:before, .text-right .h6.separatore-inferiore:before,
h1.text-right.separatore-inferiore:before,  .h1.text-right.separatore-inferiore:before,
h2.text-right.separatore-inferiore:before,  .h2.text-right.separatore-inferiore:before,
h3.text-right.separatore-inferiore:before,  .h3.text-right.separatore-inferiore:before,
h4.text-right.separatore-inferiore:before,  .h4.text-right.separatore-inferiore:before,
h5.text-right.separatore-inferiore:before,  .h5.text-right.separatore-inferiore:before,
h6.text-right.separatore-inferiore:before,  .h6.text-right.separatore-inferiore:before {
	left: auto;
	right: 0;
}

h1.separatore-superiore, .h1.separatore-superiore,
h2.separatore-superiore, .h2.separatore-superiore,
h3.separatore-superiore, .h3.separatore-superiore,
h4.separatore-superiore, .h4.separatore-superiore,
h5.separatore-superiore, .h5.separatore-superiore,
h6.separatore-superiore, .h6.separatore-superiore {
	position: relative;
	margin-top: 50px !important;
}

h1.separatore-superiore:after, .h1.separatore-superiore:after,
h2.separatore-superiore:after, .h2.separatore-superiore:after,
h3.separatore-superiore:after, .h3.separatore-superiore:after,
h4.separatore-superiore:after, .h4.separatore-superiore:after,
h5.separatore-superiore:after, .h5.separatore-superiore:after,
h6.separatore-superiore:after, .h6.separatore-superiore:after {
    content: '';
    width: 28px;
    height: 3px;
    position: absolute;
    left: 0;
    margin: auto;
    top: -22px;
    background-color: var(--primary);
}

h1.separatore-superiore:before, .h1.separatore-superiore:before,
h2.separatore-superiore:before, .h2.separatore-superiore:before,
h3.separatore-superiore:before, .h3.separatore-superiore:before,
h4.separatore-superiore:before, .h4.separatore-superiore:before,
h5.separatore-superiore:before, .h5.separatore-superiore:before,
h6.separatore-superiore:before, .h6.separatore-superiore:before {
    content: '';
    width: 158px;
    height: 1px;
    background: #d0d0d0;
    position: absolute;
    left: 0;
    margin: auto;
    top: -21px;
}

.text-primary .separatore-superiore:after {background-color: var(--primary);}
.text-secondary .separatore-superiore:after {background-color: var(--secondary);}
.text-success .separatore-superiore:after {background-color: var(--success);}
.text-warning .separatore-superiore:after {background-color: var(--warning);}
.text-danger .separatore-superiore:after {background-color: var(--danger);}
.text-dark .separatore-superiore:after {background-color: var(--dark);}
.text-light .separatore-superiore:after {background-color: var(--light);}
.text-white .separatore-superiore:after {background-color: #FFFFFF;}

.text-center h1.separatore-superiore:after, .text-center .h1.separatore-superiore:after,
.text-center h2.separatore-superiore:after, .text-center .h2.separatore-superiore:after,
.text-center h3.separatore-superiore:after, .text-center .h3.separatore-superiore:after,
.text-center h4.separatore-superiore:after, .text-center .h4.separatore-superiore:after,
.text-center h5.separatore-superiore:after, .text-center .h5.separatore-superiore:after,
.text-center h6.separatore-superiore:after, .text-center .h6.separatore-superiore:after,
h1.text-center.separatore-superiore:after,  .h1.text-center.separatore-superiore:after,
h2.text-center.separatore-superiore:after,  .h2.text-center.separatore-superiore:after,
h3.text-center.separatore-superiore:after,  .h3.text-center.separatore-superiore:after,
h4.text-center.separatore-superiore:after,  .h4.text-center.separatore-superiore:after,
h5.text-center.separatore-superiore:after,  .h5.text-center.separatore-superiore:after,
h6.text-center.separatore-superiore:after,  .h6.text-center.separatore-superiore:after {
    left: 0;
	right: 0;
}

.text-center h1.separatore-superiore:before, .text-center .h1.separatore-superiore:before,
.text-center h2.separatore-superiore:before, .text-center .h2.separatore-superiore:before,
.text-center h3.separatore-superiore:before, .text-center .h3.separatore-superiore:before,
.text-center h4.separatore-superiore:before, .text-center .h4.separatore-superiore:before,
.text-center h5.separatore-superiore:before, .text-center .h5.separatore-superiore:before,
.text-center h6.separatore-superiore:before, .text-center .h6.separatore-superiore:before,
h1.text-center.separatore-superiore:before,  .h1.text-center.separatore-superiore:before,
h2.text-center.separatore-superiore:before,  .h2.text-center.separatore-superiore:before,
h3.text-center.separatore-superiore:before,  .h3.text-center.separatore-superiore:before,
h4.text-center.separatore-superiore:before,  .h4.text-center.separatore-superiore:before,
h5.text-center.separatore-superiore:before,  .h5.text-center.separatore-superiore:before,
h6.text-center.separatore-superiore:before,  .h6.text-center.separatore-superiore:before {
    left: 0;
	right: 0;
}

.text-right h1.separatore-superiore:after, .text-right .h1.separatore-superiore:after,
.text-right h2.separatore-superiore:after, .text-right .h2.separatore-superiore:after,
.text-right h3.separatore-superiore:after, .text-right .h3.separatore-superiore:after,
.text-right h4.separatore-superiore:after, .text-right .h4.separatore-superiore:after,
.text-right h5.separatore-superiore:after, .text-right .h5.separatore-superiore:after,
.text-right h6.separatore-superiore:after, .text-right .h6.separatore-superiore:after,
h1.text-right.separatore-superiore:after,  .h1.text-right.separatore-superiore:after,
h2.text-right.separatore-superiore:after,  .h2.text-right.separatore-superiore:after,
h3.text-right.separatore-superiore:after,  .h3.text-right.separatore-superiore:after,
h4.text-right.separatore-superiore:after,  .h4.text-right.separatore-superiore:after,
h5.text-right.separatore-superiore:after,  .h5.text-right.separatore-superiore:after,
h6.text-right.separatore-superiore:after,  .h6.text-right.separatore-superiore:after {
	left: auto;
	right: 0;
}

.text-right h1.separatore-superiore:before, .text-right .h1.separatore-superiore:before,
.text-right h2.separatore-superiore:before, .text-right .h2.separatore-superiore:before,
.text-right h3.separatore-superiore:before, .text-right .h3.separatore-superiore:before,
.text-right h4.separatore-superiore:before, .text-right .h4.separatore-superiore:before,
.text-right h5.separatore-superiore:before, .text-right .h5.separatore-superiore:before,
.text-right h6.separatore-superiore:before, .text-right .h6.separatore-superiore:before,
h1.text-right.separatore-superiore:before,  .h1.text-right.separatore-superiore:before,
h2.text-right.separatore-superiore:before,  .h2.text-right.separatore-superiore:before,
h3.text-right.separatore-superiore:before,  .h3.text-right.separatore-superiore:before,
h4.text-right.separatore-superiore:before,  .h4.text-right.separatore-superiore:before,
h5.text-right.separatore-superiore:before,  .h5.text-right.separatore-superiore:before,
h6.text-right.separatore-superiore:before,  .h6.text-right.separatore-superiore:before {
	left: auto;
	right: 0;
}

.intestazione h1,
.intestazione h2,
.intestazione h3,
.intestazione h4,
.intestazione h5,
.intestazione h6{
	margin-bottom: 0;
}

.capolettera{
	position: absolute;
    font-size: 3em;
    opacity: 0.1;
    left: 0;
    top: -0.45em;
    z-index: -1;
}

.text-center .capolettera{
    left: 0;
    right: 0;
}

.text-right .capolettera{
    left: auto;
    right: 0;
}

/** == SEPARATORE == **/

hr.stile-1 {
	padding: 0;
	border: none;
	height: 1px;
	background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	background-image: -ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	text-align: center;
}
hr.stile-1:after {
  	content: " ";
	display: inline-block;
	position: relative;
	top: -14px;
	background: var(--primary);
	height: 8px;
	width: 30px;
}

.text-white hr {
	border-top: 1px solid rgba(255,255,255,0.2);
}

.text-white hr.stile-1 {
	padding: 0;
	border: none;
	height: 1px;
	background-image: -webkit-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,0.75), rgba(255,255,255,0));
	background-image: -moz-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,0.75), rgba(255,255,255,0));
	background-image: -ms-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,0.75), rgba(255,255,255,0));
	background-image: -o-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,0.75), rgba(255,255,255,0));
	text-align: center;
}
.text-white hr.stile-1:after {
  	content: " ";
	display: inline-block;
	position: relative;
	top: -14px;
	background: #fff;
	height: 8px;
	width: 30px;
}

hr.stile-2 {
	padding: 0;
	border-top: 1px solid #333;
	height: 1px;
	text-align: center;
}
hr.stile-2:after {
  	content: " ";
	display: inline-block;
	position: relative;
	top: -13px;
	background: #FFF;
	height: 10px;
	width: 10px;
	border-radius:10px;
	border: 1px solid #333;
}

.text-white hr.stile-2 {
	padding: 0;
	border-top: 1px solid #FFF;
	height: 1px;
	text-align: center;
}
.text-white hr.stile-2:after {
  	content: " ";
	display: inline-block;
	position: relative;
	top: -13px;
	background: #fff;
	height: 10px;
	width: 10px;
	border-radius:10px;
	border: 1px solid #FFF;
}

.zigzag {
  margin: 0 0 32px;
  background: #FFF;
  position: relative;
  height: 16px;
  z-index: 1;
  border-top: 0;
}
.zigzag:before, .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, #fff 8px, transparent 0) 0 8px, linear-gradient(135deg, #fff 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}


.bg-primary .zigzag {
  margin: -0.5em 0 2.25em;
  background:var(--primary);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-primary .zigzag:before, .bg-primary .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-primary .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-primary .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--primary) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--primary) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}

.bg-secondary .zigzag {
  margin: -0.5em 0 2.25em;
  background:var(--secondary);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-secondary .zigzag:before, .bg-secondary .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-secondary .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-secondary .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--secondary) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--secondary) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}

.bg-light .zigzag {
  background: var(--light);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-light .zigzag:before, .bg-light .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-light .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-light .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--light) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--light) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}

.bg-dark .zigzag {
  margin: -0.5em 0 2.25em;
  background:var(--dark);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-dark .zigzag:before, .bg-dark .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-dark .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-dark .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--dark) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--dark) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}

.bg-success .zigzag {
  margin: -0.5em 0 2.25em;
  background:var(--success);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-success .zigzag:before, .bg-success .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-success .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-success .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--success) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--success) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}

.bg-warning .zigzag {
  margin: -0.5em 0 2.25em;
  background:var(--warning);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-warning .zigzag:before, .bg-warning .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-warning .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-warning .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--warning) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--warning) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}

.bg-info .zigzag {
  margin: -0.5em 0 2.25em;
  background:var(--info);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-info .zigzag:before, .bg-info .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-info .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-info .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--info) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--info) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}

.bg-danger .zigzag {
  margin: -0.5em 0 2.25em;
  background:var(--danger);
  position: relative;
  height: 16px;
  z-index: 1;
}
.bg-danger .zigzag:before, .bg-danger .zigzag:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
}
.bg-danger .zigzag:before {
  height: 12px;
  top: 115%;
  background: linear-gradient(-135deg, #d3d3d3 8px, transparent 0) 0 8px, linear-gradient(135deg, #d3d3d3 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}
.bg-danger .zigzag:after {
  height: 16px;
  top: 100%;
  background: linear-gradient(-135deg, var(--danger) 8px, transparent 0) 0 8px, linear-gradient(135deg, var(--danger) 8px, transparent 0) 0 8px;
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 16px 16px;
}


/** == IMMAGINI == **/

img {  -webkit-transition:all 0.3s ease-in-out;
  -moz-transition:all 0.3s ease-in-out;  
  -o-transition:all 0.3s ease-in-out;         
  transition:all 0.3s ease-in-out; 
	
}

.img-fluid{
	width: 100%;
}

img.circle {
	border-radius: 50%;
}

.img-container {
	overflow: hidden;
	position: relative;
	clear: both;
	padding: 0;
	margin: 0;
}

.img-container .img-fluid {
    max-width: 100%;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
}

.img-container {
	position: relative;
	z-index: 2;
}

a>.img-container {
	z-index:3;
}

.img-container .extra-info{
	position: absolute;
	top:0px;
	right:0px;
	bottom:0px;
	left:0px;
	z-index: 4;
}

.img-container .extra-info span{
	position: absolute;
	right:-68px;
	bottom:-28px;
	z-index: 5;
	background: rgba(255,255,255,.8);
	color: var(--dark);
	text-align: center;
	width: 160px;
	height: 80px;
	line-height: 25px;
	transform: rotate(-45deg);
	font-size: 0.85em;
	font-weight: bold;
}

.img-container .extra-info h5{
	position: absolute;
	bottom: .5em;
	left: 1em;
	right: 1em;
	color: #FFF;
	text-shadow: 2px 2px rgba(0,0,0,.65);
}

.img-container .main-link a{
	position: absolute;
	top:28px;
	left:28px;
	right:28px;
	bottom:28px;
	background-color: transparent;
	z-index:5;
}


/* effetto Zoom */
.img-container.zoom .overlay {
	position: absolute;
	z-index: 1;
	top:50%;
	bottom: 50%;
	right: 50%;
	left: 50%;
	background: rgba(255,255,255,0);
	-moz-transition:all 0.3s ease;  
    -o-transition:all 0.3s ease;         
    transition:all 0.3s ease; 
}

.img-container.zoom:hover .overlay {
	position: absolute;
	top:0;
	bottom: 0;
	right: 0;
	left: 0;
	background: rgba(255,255,255,0.2);
}
	

.img-container.zoom:hover img, .img-container.zoom:hover .background-image {
	transform: scale(1.2);
}

/* effetto Rotazione */
.img-container.rotazione .overlay {
	position: absolute;
	z-index: 1;
	bottom: 0%;
	right: 0;
	left: 0;
	height: 100%;
	top:50%;
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 100%);
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 );
	-moz-transition:all 0.3s ease;  
    -o-transition:all 0.3s ease;         
    transition:all 0.3s ease; 
}

.img-container.rotazione:hover .overlay {
	bottom: 0;
	right: 0;
	left: 0;
	height: 50%;
}
	

.img-container.rotazione:hover img, .img-container.rotazione:hover .background-image {
	transform: scale(1.3) rotate(-10deg);
}

/* effetto V-slide */

.img-container.v-slide img {
  -webkit-transition:all 0.3s ease-out;
  -moz-transition:all 0.3s ease-out;  
  -o-transition:all 0.3s ease-out;         
  transition:all 0.3s ease-out; 
}

.img-container.v-slide .overlay {
	position: absolute;
	z-index: 1;
	bottom: -10%;
	right: 0;
	left: 0;
	height: 10%;
	background: var(--secondary);
	-moz-transition:all 0.3s  ease-out;  
    -o-transition:all 0.3s ease-out;      
    transition:all 0.3s ease-out; 
}

.img-container.v-slide:hover .overlay {
	bottom: 0;
}
	

.img-container.v-slide:hover img, .img-container.v-slide:hover .background-image {
	transform:translateY(-10%) scale(1.1);
}
/* effetto O-slide */

.img-container.o-slide img {
  -webkit-transition:all 0.3s ease-out;
  -moz-transition:all 0.3s ease-out;  
  -o-transition:all 0.3s ease-out;         
  transition:all 0.3s ease-out; 
}

.img-container.o-slide .overlay {
	position: absolute;
	z-index: 1;
	bottom: 0;
	right: 0;
	top:0;
	left: -10%;
	width: 10%;
	background: var(--secondary);
	-moz-transition:all 0.3s  ease-out;  
    -o-transition:all 0.3s ease-out;      
    transition:all 0.3s ease-out; 
}

.img-container.o-slide:hover .overlay {
	left: 0;
}

.img-container.o-slide:hover img, .img-container.o-slide:hover .background-image  {
	transform:translateX(10%) scale(1.1);
}

/* con didascalia */
.figure-caption {
    font-size: 95%;
	color: #4D4D4D;
	background: var(--light);
	padding: 1em 1.25em;
}	

.bg-dark .figure-caption {
	color: #f1f1f1;
	background: var(--dark-over);
}

/** == CAROUSEL == **/

.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent;
	position: absolute;
	right: -5px;}
  .owl-theme .owl-nav [class*='owl-'] {
	  color: var(--primary) !important;
    display: inline-block;
    cursor: pointer;
    border-radius: 0px; }
    .owl-theme .owl-nav [class*='owl-']:hover {
      background: transparent;
      color: var(--primary-over);
      text-decoration: none; }
  .owl-theme .owl-nav .disabled {
    opacity: 0.5;
    cursor: default; }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; }

.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
  .owl-theme .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    *display: inline;
	margin-top:10px;}
    .owl-theme .owl-dots .owl-dot span {
      width: 10px;
      height: 10px;
      margin: 5px 7px;
      background: #D6D6D6;
      display: block;
      -webkit-backface-visibility: visible;
      transition: opacity 200ms ease;
      border-radius: 30px; }
    .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
      background: var(--primary); }


.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev {
    background: 0 0;
    color: inherit;
    font: inherit;
    border-radius: 0;
	-moz-transition:all 0.3s  ease-out;  
    -o-transition:all 0.3s ease-out;      
    transition:all 0.3s ease-out; 
	border-radius: 5em;
	border: none;
}

.owl-carousel .owl-stage, .owl-carousel.owl-drag .owl-item{
    -ms-touch-action: auto;
        touch-action: auto;
}

.overlay-area {
	position: absolute;
	width: 100%;
	height: 100%;
}

#example-anchor{
	position: absolute;
	bottom:0;
	height: 0;
	display: block;
}

.slider-new .background-image{
	min-height: 220px;
}
.slider-new.h20 .background-image{
	height: 20vh;
	min-height: 220px;
}
.slider-new.h30 .background-image{
	height: 30vh;
	min-height: 220px;
}
.slider-new.h40 .background-image{
	height: 40vh;
	min-height: 220px;
}
.slider-new.h50 .background-image{
	height: 50vh;
	min-height: 220px;
}
.slider-new.h60 .background-image{
	height: 60vh;
	min-height: 220px;
}
.slider-new.h70 .background-image{
	height: 70vh;
	min-height: 320px;
}
.slider-new.h80 .background-image{
	height: 80vh;
	min-height: 320px;
}
.slider-new.h90 .background-image{
	height: 90vh;
	min-height: 320px;
}
.slider-new.h100 .background-image{
	height: 100vh;
	min-height: 320px;
}

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
    background-color: var(--primary);
}

.owl-theme .owl-nav {
	position: absolute;
    text-align: center;
    margin: 0px;
	right: 0;
	left:0;
	top:calc(50% - 39px);
	width: 100%;
	font-size: 3em;
	line-height: 0;
}

.owl-carousel .owl-nav button.owl-prev{
	position: absolute;
	left:8px;
	top: 0;
	padding: 14px 14px 26px 12px !important;
}


.owl-carousel .owl-nav button.owl-next{
	position: absolute;
	right:8px;
	padding: 14px 12px 26px 14px !important;
}

.owl-theme .owl-nav [class*=owl-]:hover {
    color: var(--primary-over) !important;
    text-decoration: none;
	border-color: transparent;
}

.owl-carousel .item {
	position:relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}

.owl-carousel .item .contenuto {
	position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%,-50%);
    width: 80%;
	z-index: 2;
}

.slider-new .dark-gradient {
	position:absolute;
	top:0;
	right: 0;
	bottom:0;
	left:0;
	background: -moz-linear-gradient(top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 50%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(top, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 50%,rgba(0,0,0,0) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 50%,rgba(0,0,0,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
	z-index: 1;
}

.slider-new .overlay{
	position:absolute;
	top:0;
	right: 0;
	bottom:0;
	left:0;
	background: url(../img/pattern-dots-001.png);
	z-index: 1;
}

/* == Bootsrap Slider == */

.slider.slider-horizontal {
	min-width: 100%;
}

.slider.slider-horizontal .slider-tick-label-container {
	overflow-x: hidden;
	position: relative;
}

.slider.slider-horizontal .slider-tick-label:last-child {
	position: absolute;
	right: 0;
	text-align: right;
}

.slider-selection {
	background: var(--primary);
}

.slider-handle {
    background-color: var(--primary);
    background-image: none;
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 2px rgba(0,0,0,.01);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 2px rgba(0,0,0,.01);
    border: 0 solid transparent;
}

.slider-selection.tick-slider-selection {
    background-color: var(--warning);
    background-image: none;
}

.slider-tick.in-selection {
	background-color: var(--warning-over);
    background-image: none;
}

.slider.slider-horizontal .slider-track {
    height: 6px;
    margin-top: -3px;
}

/** ==  Slider a tutta pagina == **/

.full-page-slider .carousel-item {
  height: 100vh;
  min-height: 300px;
  background: no-repeat center center scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

/** == METRO SLIDER == **/
.metro-slider .sub-data{
	position: absolute;
	z-index: 10;
	bottom:0;
	right: 0;
	left:1rem;
	padding: .65rem 1rem 1rem;
	background: rgba(255,255,255,0.95);
	transition: all .3s ease-in-out;
}

.metro-slider .sub-data .small{
	font-size: 13px;
	padding-bottom: .45rem !important;
}

.metro-slider .px-0:hover .sub-data{
	background: rgba(255,255,255,1);
}

.metro-slider h2 {
	margin: 8px 0 0;
	font-size: 20px;
}

.metro-slider .col-md-12.col-lg-6 h2{
	font-size: 20px;
}

.metro-slider.template-2 .aspect-ratio-21-9 {
	padding-bottom: 85.71%;
}

@media (min-width:768px){
	.metro-slider h2 {
		font-size: 17px;
	}
	.metro-slider .col-md-6.col-lg-3 .sub-data .text-muted span.float-right {
		display: none;
	}
	
	.metro-slider.template-2 .col-md-6.col-lg-6 .aspect-ratio-21-9{
		padding-bottom: 42.86%;
	}
}

@media (min-width:767px) and (max-width:991px){
	.metro-slider .col-md-12.col-lg-6 .aspect-ratio-21-9,
	.metro-slider .col-md-12.col-lg-6 .aspect-ratio-21-18{
		padding-bottom: 42.86%;
	}
}

@media (max-width:991px){
	.metro-slider .aspect-ratio-21-9 {
		padding-bottom: 85.71%;
	}
}

@media (min-width:992px) and (max-width:1199px){
	.metro-slider .col-md-6.col-lg-3 .sub-data {
		padding: 0 .5rem .5rem .5rem;
	}
	.metro-slider .col-md-6.col-lg-3 .sub-data .text-muted {
		display: none;
	}
}

/**  == SOCIAL MEDIA LINK == **/
.social-media-links .round {
	padding: 6px 5px;
}


/** == TABS == **/

.tab-component .tab-content>.active {
    display: block;
	padding: 1em;
	border-right:1px solid #dee2e6;
	border-bottom:1px solid #dee2e6;
	border-left:1px solid #dee2e6;
}



/* Variante vertical */

.tab-component.vertical .tab-content>.active {
    display: block;
	padding: 2em;
	border-top:1px solid #dee2e6;
	border-right:1px solid #dee2e6;
	border-bottom:1px solid #dee2e6;
	border-left: transparent;
}

.nav-tabs--vertical {
  border-bottom: none;
  border-right: 1px solid #dee2e6;
  display: flex;
  flex-flow: column nowrap;
}
.nav-tabs--left {
  margin: 0 0px 0 15px;
}
.nav-tabs--left .nav-item + .nav-item {
  margin-top: .25rem;
}
.nav-tabs--left .nav-link {
  transition: border-color .125s ease-in;
  white-space: nowrap;
  border-radius: 0;
}
.nav-tabs--left .nav-link:hover {
  background-color:transparent;
  border-top: 1px solid #dee2e6;
  border-right: 1px solid transparent;
  border-bottom:  1px solid #dee2e6;
  border-left: 1px solid #dee2e6;
}
.nav-tabs--left .nav-link.active {
  border-bottom-color: #dee2e6;
  border-right-color: #fff;
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
  margin-right: -1px;
  border-radius: 0;
}
.nav-tabs--left .nav-link.active:hover {
  background-color: #fff;
  border-color: #dee2e6 #fff #dee2e6 #dee2e6;
  border-radius: 0;
}


.text-white .nav-tabs--left .nav-link {
	color: #FFF;
}

.text-white .nav-tabs--left .nav-link.active {
	background: rgba(0,0,0,0.05);
}

.text-white .nav-tabs--left .nav-link.active:hover {
  background-color: rgba(0,0,0,0.15);
  border-color: #dee2e6 #fff #dee2e6 #dee2e6;
  border-radius: 0;
}


/** == TABELLA PREZZI == **/

.tabella-prezzi {
	position:relative;
	width: 100%;
	clear: both;
}

.tabella-prezzi .card {
  border: 0;
  border-radius: 0px;
  -webkit-box-shadow: 0 3px 0px 0 rgba(0, 0, 0, 0.08);
  box-shadow: 0 3px 0px 0 rgba(0, 0, 0, 0.08);
  transition: all .3s ease-in-out;
  padding: 0 0 4.5rem 0;
	margin-bottom: 2em;
  position: relative;
  will-change: transform;
	z-index: 1;
	overflow: hidden;
}
.tabella-prezzi .card:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 5px;
  background-color: var(--primary);
  transition: 0.5s;
	z-index: 0;
}
.tabella-prezzi .card:hover {
  transform: scale(1.05);
  -webkit-box-shadow: 0 20px 35px 0 rgba(0, 0, 0, 0.08);
  box-shadow: 0 20px 35px 0 rgba(0, 0, 0, 0.08);
}
.tabella-prezzi .card:hover:after {
  width: 100%;
}
.tabella-prezzi .card .card-header {
  background-color: white;
  padding-left: 2rem;
  border-bottom: 0px;
}
.tabella-prezzi .card .card-title {
  margin-bottom: 1rem;
}
.tabella-prezzi .card .card-block {
  padding-top: 0;
}
.tabella-prezzi .card .list-group-item {
	border: 0px;
    padding: .5rem 1.25rem;
    color: #787878;
    font-weight: 300;
    border-bottom: 1px solid #f1f1f1;
    margin: 0 2rem;
    border-radius: 0;
}

.tabella-prezzi .card .list-group-item:last-child {
    border-bottom: none;
}

.tabella-prezzi .card .list-group-item.text-muted {
  border: 0px;
  padding: .25rem;
  color: #B7B7B7 !important;
  font-weight: 300;
}

.tabella-prezzi .card .list-group-item i {
	position: absolute;
	left: 0;
	top:50%;
	line-height: 0;
}

.tabella-prezzi .display-2 {
  font-size: 5rem;
  letter-spacing: -.25rem;
}
.tabella-prezzi .display-2 .currency {
  font-size: 2.75rem;
  position: relative;
  font-weight: 400;
  top: -25px;
  letter-spacing: 0px;
}
.tabella-prezzi .display-2 .period {
  font-size: 1rem;
  color: #b3b3b3;
  letter-spacing: 0px;
  white-space: nowrap;
}

.tabella-prezzi .card .btn { 
position: absolute;
bottom:20px;
left:30px;
right: 30px;
}

.tabella-prezzi .card.popular .display-2 {
	color: var(--secondary)
}

.tabella-prezzi .card.popular:before {
	content: 'Più popolare';
	background-color: var(--secondary);
	border-bottom: 1px solid var(--secondary-active); 
	color: #fff;
	font-weight: normal;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	text-align: center;
	font-size:0.8em;
	position: absolute;
	padding: 6px 36px;
	min-width: 160px;
	transform: rotate(45deg);
	z-index: 1;
	top:25px;
	right:-39px;
}

.tabella-prezzi .card.popular .card-title {
	color: var(--secondary);
}

.tabella-prezzi h4.display-4 {
	font-size: 1.7em;
	text-decoration: line-through;
}

/* == TABELLA ORDINABILE == **/

table.dataTable thead th,
table.dataTable thead td {
    padding: 10px 18px;
    border-bottom: 1px solid rgba(0,0,0,0.25);
}

table.dataTable.no-footer {
	border-bottom: 1px solid rgba(0,0,0,0.25);
}

table.dataTable thead .sorting, 
table.dataTable thead .sorting_asc, 
table.dataTable thead .sorting_desc{
	position: relative;
	background: none !important;
}

table.dataTable thead .sorting:after {
    content: "\f0dc";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 12px;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 1px;
    padding: 0;
	right: -10px;
	color: var(--light-over);
}

table.dataTable thead .sorting_asc:after  {
    content: "\f0dd";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 12px;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 1px;
    padding: 0;
	right: -10px;
	color: var(--primary);
}

table.dataTable thead .sorting_desc:after  {
    content: "\f0de";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 12px;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 1px;
    padding: 0;
	right: -10px;
	color: var(--primary);
}

table.dataTable thead .sorting_asc_disabled {
    content: "\f0dd";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 12px;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 1px;
    padding: 0;
	right: -10px;
	color: var(--light-over);
}

table.dataTable thead .sorting_desc_disabled {
    content: "\f0de";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 12px;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 1px;
    padding: 0;
	right: -10px;
	color: var(--light-over);
}

table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd {
	background-color: var(--light);
}


/** == ARTICOLI DAL BLOG **/

.blog .col-md-8.col-xl-9 .text-muted,
.articoli-dal-blog .col-md-8.col-xl-9 .text-muted {
	margin-bottom: 14px;
}

.blog .col-md-8.col-xl-9 .text-muted.separatore-inferiore,
.articoli-dal-blog .col-md-8.col-xl-9 .text-muted.separatore-inferiore{
	margin-bottom: 40px;
}

.articoli-dal-blog .card {
	margin-bottom: 2em;
}

.articoli-dal-blog .card .p-4, 
.articoli-dal-blog .card .px-4.py-3 {
	margin-bottom: 30px !important;
}

.articoli-dal-blog .card .px-4 .intro-text p {
	margin-bottom: 0px;
}

.articoli-dal-blog .card .btn{
	position: absolute;
	bottom:0;
	right:0;
}

.articoli-dal-blog.prodotti-dal-negozio .card .btn.aggiungi {
		position: absolute;
		bottom: 0px;
		left: 32px;
		right: 32px;
		width: calc(100% - 64px);
	}

@media (min-width:1200px){
	.articoli-dal-blog.prodotti-dal-negozio .card .btn.aggiungi {
		position: absolute;
		bottom: 0px;
		left: 0px;
		right: 16px;
		width: calc(100% - 16px);
	}
}

.articoli-dal-blog img.background-image,
.blog img.background-image{
	height: 260px;
}

.blog .extra-info .badge {
	margin-right: .25rem;
}

.articolo .extra-info .badge {
	margin-right: 0;
}

.articolo .col-10.col-xl-11 img {
	width:100%;
	height: auto;
}

@media (min-width:768px) {
	.articoli-dal-blog .card {
		margin-bottom: 0;
	}
}

.titolo-sovrapposto {
	margin: -6em 20px -1.5em 20px;
	background: #FFF;
	padding: 1em 1.5em 0;
	z-index: 2;
}

.titolo-sovrapposto .titolo {
	margin-bottom: 1em;
}

.titolo-sovrapposto.stile-2{
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	margin: 0;
	background: rgba(0,0,0,0.85);
}

.titolo-sovrapposto.stile-2 a{
	color:rgba(255,255,255,.85);
}

.titolo-sovrapposto.stile-2 a:hover{
	color:rgba(255,255,255,1);
}

/** == TESTIMONIALS == **/

.testimonials .owl-stage {
	margin-right: auto!important;
	margin-left: auto!important;
}

.testimonials .card {
	margin-top: 4em;
	margin-bottom: 3em;
}

.testimonials .profile-picture {
	position: absolute;
	top: -50px;
	right: 0;
	left: 0;
	text-align: center;
}

.testimonials .profile-picture img {
	height: 100px;
	width: 100px;
	border: 4px solid #FFF;
}

.testimonials strong {
	color: var(--primary);
}

.testimonials blockquote {
	border: 0;
	background: rgba(0,0,0,0.05);
}

/* stile alternativo */

.testimonials .alternative img {
	height: 100px;
	width: 100px;
	border: 10px solid #FFF;
	margin: -25px auto 10px 10px;
	z-index: 1;
}

.testimonials .alternative blockquote::before {
    color: var(--primary);
    position: absolute;
    left: 0;
	right: 0;
    top: 10px;
	width: 100%;
}

.testimonials .alternative .star-rating {
	position: absolute;
	top:0;
	right:15px;
}


/** == PRODOTTI DEL NEGOZIO == **/

.prodotti-dal-negozio .card {
	overflow: hidden;
	z-index: 1;
}

.prodotti-dal-negozio .card .p-3.mb-5 {
		position: relative;
}

.prodotti-dal-negozio .card .star-rating {
	position: absolute;
	top:-10px;
	right:10px;
	background: rgba(255,255,255,1);
	z-index: 2;
	border-radius: 10px;
}

.prodotti-dal-negozio .buttons {
	position: absolute;
	bottom: 15px;
	right:15px;
	left: 15px;
}

.prodotti-dal-negozio .card.popular:before,
.articoli-dal-blog.prodotti-dal-negozio .card.popular .img-container:before{
    content: 'Offerta!';
    background-color: var(--secondary);
    border-bottom: 1px solid var(--secondary-active);
    color: #fff;
    font-weight: normal;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    text-align: center;
    font-size: 0.8em;
    position: absolute;
    padding: 6px;
    min-width: 160px;
    transform: rotate(45deg);
    top: 16px;
    right: -46px;
    z-index: 3;
}

.articoli-dal-blog.prodotti-dal-negozio .card.popular:before{
	content: none;
}

.articoloAffiancato .btn {
	position: absolute;
	bottom: 0;
	right: 0;
}

.prodotti-dal-negozio .card.popular h5 strong {
	color: var(--secondary);
}

.prodotti-dal-negozio.lista-nozze .card p {
	margin-bottom: 0px;
}

.prodotti-dal-negozio.lista-nozze .card .lead {
	margin-bottom: 15px;
}

.prodotti-dal-negozio.lista-nozze .card.popular:before {
	content: 'Regalato';
}

.prodotti-dal-negozio.lista-nozze .card.popular h5 strong {
	color: inherit;
}

.prodotti-dal-negozio .card {
	margin-bottom: 3em;
}

@media (min-width:768px) {
	.prodotti-dal-negozio .card {
		margin-bottom: 0;
	}	
}

/** == MAPPA == **/

.map-responsive{
    overflow:hidden;
    padding-bottom:50%;
    position:relative;
    height:0;
}
.map-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

/** == BLOG == **/

.blog .card .titolo {
	margin-top: .75rem;
}

.blog .tag-list .breadcrumb-item+.breadcrumb-item::before {
	color: lightgray;
	padding-right: .1rem;
}

.blog .doppia-colonna img.background-image {
	height: 300px;
}

#colonna-principale .container{
	padding-right: 0;
	padding-left: 0;
}

.colonna-principale .container, 
.colonna-secondaria .container{
	padding-right: 0;
	padding-left: 0;
	margin-top: 2.5rem!important;	
	margin-bottom: 2.5rem!important;
}

.blog .colonna-principale .container .col-8,
.blog .colonna-principale .container .col-md-8,
.colonna-principale.col-md-9  .container .col-md-8,
.colonna-principale.col-md-9  .container .col-8,
.colonna-principale.col-md-6  .container .col-md-8,
.colonna-principale.col-md-6  .container .col-8,
.colonna-secondaria.col-md-3 .container .col-md-8,
.colonna-secondaria.col-md-6 .container .col-md-8,
.colonna-secondaria.col-md-3 .container .col-8,
.colonna-secondaria.col-md-6 .container .col-8  {
	-ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
	padding-right: 0;
	padding-left: 0;
}

@media (max-width:991px){
	.colonna-principale .container .col-md-8,
	.colonna-principale .container .col-8,
	.colonna-secondaria .container .col-md-8,
	.colonna-secondaria .container .col-8 {
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
		padding-right: 0;
		padding-left: 0;
	}
}

@media (min-width:1200px) {
	.blog .doppia-colonna h2 {
		font-size: 1.25rem;
		-webkit-line-clamp: 2;
		overflow : hidden;
		text-overflow: ellipsis;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}
	
	.blog .doppia-colonna p.lead {
		font-size: 1.1rem;
	}
}

.elencoCategorie .card {
	border-bottom: none;
	margin-bottom: 0;
}

.elencoCategorie .card:last-of-type {
	border-bottom: 1px solid rgba(0,0,0,.125);
}

.elencoCategorie .card-header {
	border: none !important;
	background: #FFF;
}

.elencoCategorie .card-header:last-child{
	margin-bottom: inherit;
}

.elencoCategorie .card-header:hover {
	background: var(--light);
}

.elencoCategorie .card-header i {
	position: absolute;
	right: 1em;
	top: 0;
}

.elencoCategorie .card-header i:hover {
	color: var(--primary) !important;
}

.elencoCategorie .card-header+.list-group .list-group-item:first-child{
	border-top: 1px solid var(--light-active);
}

.elencoCategorie ul .list-group-item {
	padding: .5rem .75rem .5rem 2em;
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
    border-left: none;
    border: none;
	position: relative;
}

.elencoCategorie ul .list-group-item:first-child{
	border-top:1px solid #000;}

.elencoCategorie ul .list-group-item a {
	color: var(--primary);
}

.elencoCategorie ul .list-group-item a:hover,
.elencoCategorie ul .list-group-item:hover a {
	color: var(--primary-over) !important;
}

.elencoCategorie .list-group-item:hover {
    padding: .5rem .75rem .5rem 2rem;	
}

.elencoCategorie .list-group-item:before {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 0;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 0px;
    padding: 0;
	left: -1.5rem;
	opacity:0;
	filter: alpha(opacity=0);	
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
	color: var(--primary-over);
}

.elencoCategorie .list-group-item:hover:before {
    left: -1rem;
	opacity:1;
	filter: alpha(opacity=100);
}

@media (max-width:767px) {
	.header-categoria .background-image{
		min-height: 220px;
	}
}

.tag-cloud a{
	margin-bottom: .35rem;
	margin-right: .45rem;
	font-weight: 400;
}

.ricerca-inline {
	position: relative;
}
.ricerca-inline button{
	position: absolute;
	top:0;
	right: 0;
	background: transparent;
}

.ricerca-inline input {
	padding-right: 2.1em;
}

.ricerca-inline button:hover{
	color: var(--primary);

}

.widget .media .background-image {
	height:90px;
	width: 90px;
}

.widget .profili-social a {
	font-size: 1.5em;}

.lista-prodotti .list-group-item:not(:last-of-type){
	border-bottom: 0px none !important;
}

/*.intro-text :not(p),*/
.intro-text p:not(:nth-child(1)){
	display: none !important;
}

.intro-text h1, .intro-text h2, .intro-text h3, .intro-text h4, .intro-text h5, .intro-text h6,
.intro-text .h1, .intro-text .h2, .intro-text .h3, .intro-text .h4, .intro-text .h5, .intro-text .h6,
.intro-text video, .intro-text audio, .intro-text table, .intro-text ul, .intro-text ol, .intro-text img,
.intro-text hr, .intro-text pre, .intro-text code, .intro-text div{
	display: none !important;
}

/** == LISTA == **/

.Lista #accordion.lista {
	padding-left: 15px;
	padding-right: 15px;
}

.lista h4 a {
	cursor: pointer;
	padding-right: 36px;
}

/** == PORTFOLIO == **/

.filters  {
	padding:0;
	list-style:none;
}

	.filters  li {
		float:left;
	}
	
	.filters  li span {
		display: block;
		padding:0.5rem 1.25rem;		
		text-decoration:none;
		color:#777;
		cursor: pointer;
	}
	
	.filters  li span.active {
		background: var(--primary);
		color:#fff;
	}

 
.portfoliolist .portfolio {
	display:none;
	float:left;
	overflow:hidden;
}

@media (max-width:767px) {
	.portfolio .background-image {
		min-height: 180px;
	}
}


.portfolio-wrapper {
	overflow:hidden;
	position: relative !important;
	background-color:#ffffff;
	cursor:pointer;
}

.portfolio img {
	width: 100%;
	max-width:100%;
	position: relative;
	top:0;
    -webkit-transition: all 600ms cubic-bezier(0.645, 0.045, 0.355, 1);
    transition:         all 600ms cubic-bezier(0.645, 0.045, 0.355, 1);		
}
	
.portfolio .label {
	position: absolute;
	width: 100%;
	bottom:-60px;
	-webkit-transition: all 300ms cubic-bezier(0.645, 0.045, 0.355, 1);
	transition:         all 300ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.portfolio .label-bg {
	background: var(--primary);
	width: 100%;
	height:100%;
	position: absolute;
	top:0;
	left:0;
}
	
.portfolio .label-text {
	color:#fff;
	position: relative;
	z-index:2;
	padding:5px 8px;
}
		
.portfolio .text-title {
	font-size: 	1.1em;
}

.portfolio .text-category {
	display:block;
	font-size:0.9em;
}
	
.portfolio:hover .label {
	bottom:0;
}
	
.portfolio:hover img {
	top:-30px;
} 

.portfoliolist.row.no-gutters .portfolio-wrapper.mb-4{
	margin-bottom: 0 !important;	
}

/* Variante con lables sempre esposte */

.labelVisibile.portfolio .label {
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    -webkit-transition: all 300ms cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: all 300ms cubic-bezier(0.645, 0.045, 0.355, 1);
	display: -ms-flexbox !important;
    display: flex!important;
    -ms-flex-align: center !important;
    align-items: center !important;
    -ms-flex-pack: distribute !important;
    justify-content: space-around!important;
}

.labelVisibile.portfolio .label-bg {
  background: rgba(255,255,255,0);
    -webkit-transition: all 350ms cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: all 350ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.labelVisibile.portfolio:hover .label-bg {
  background: rgba(255,255,255,0.25);
}

.labelVisibile.portfolio .text-title {
	font-size: 26px;
	-webkit-transition: all  ease-in-out .3s;
	-moz-transition: all ease-in-out .3s;
	transition: all ease-in-out .3s;
}

.labelVisibile.portfolio:hover .text-title {
    transform: translateY(-10px);
}

.labelVisibile.portfolio .text-category{
	text-align: center;
}


/**  == GALLERIA == **/

#galleria {
	max-width: 100% !important;
}

.ug-gallery-wrapper .ug-strip-panel {
    position: absolute;
    background-color: #f1f1f1;
    z-index: 2;
}

.ekko-lightbox .modal-content {
	border-radius: 0px;
}

.galleria a img:hover{
	opacity: 0.8;
}

/** == ECOMMERCE == **/

.ecommerce h1 {
	font-size: 28px;
}

.list-group-item {
	overflow: hidden;
}

.list-group-item .items-counter {
	position:absolute;
	right:1rem;
	-webkit-box-shadow: -15px 0px 10px 0px rgba(255,255,255,.9);
	-moz-box-shadow: -15px 0px 10px 0px rgba(255,255,255,.9);
	box-shadow: -15px 0px 10px 0px rgba(255,255,255,.9);
}

.list-group-item .popular:before {
	content: 'Offerta';
	background-color: var(--secondary);
	border-bottom: 1px solid var(--secondary-active); 
	color: #fff;
	font-weight: normal;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	text-align: center;
	font-size:0.6em;
	position: absolute;
	padding: 1px 0px;
	min-width: 80px;
	transform: rotate(-45deg);
	z-index: 0;
	top:10px;
	left:-22px;
}

blockquote.recensione {
	padding: 0 80px 0 0;
	background: transparent;
	border: none;
}

blockquote.recensione:before {
	content: '';
}
blockquote.recensione .star-rating {
	position: absolute;
	top:0;
	right: 0;
}

.shopping-cart .background-image{
	height: 100px;
    width: 100px;
    min-width: 100px;
    min-height: 100px;
}

.shopping-cart .table-hover tbody tr:hover {
    background-color: rgba(0,0,0,.035);
}

.popover-body {
	position:relative;
}

.popover-body .bottom-gradient-white {
	position:absolute;
	bottom:30px;
	right:0;
	left:0;
	height: 160px;
	background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
	z-index: 1;
}

.popover-body .background-image{
	width: 40px;
	height: 40px;
}

.popover-body .btn {
	position: relative;
	z-index: 2;}

/** == RISORSE == **/

.risorse .portfolio-wrapper {
	background: var(--light);
	height: 100%;
	cursor: inherit;
	padding-bottom: 3.5em !important;
}

.risorse .portfolio {
	margin-bottom: 1em;
}
.risorse .portfolio .btn {
	position: absolute;
	bottom: 1em;
	right: 1em;
	left: 1em;
	-webkit-transition: all  ease-in-out .3s;
    -moz-transition: all ease-in-out .3s;
    transition: all ease-in-out .3s;
}
 
.risorse .table .portfolio img {
	height: 32px;
	min-width:32px;
	max-width:32px;
}

.table .portfolio .btn {
	position: relative;
	bottom:inherit;
	left:inherit;
	right: inherit;
}

.table .portfolio:hover img {
    top: 0px;
}

/* == CONTATTI == */

.icona-contatti{
	width: 46px;
}

/* == ANNUNCI == */

.griglia-annunci > .col,
.griglia-annunci > [class*="col-"] {
      padding-right: 7px;
      padding-left: 7px;
    }

.inserzionista {
	line-height: 1em;
	position: relative;
}

.inserzionista.text-success {
	padding-right: 2.5em;
}

.inserzionista.text-success a{
	color: var(--success);
}

.inserzionista.text-success a:hover{
	color: var(--success-over);
}

.inserzionista button {
	position: absolute;
	right: 0;
	width: 30px;
	padding: 0;
	height: 30px;
	border-radius: 5rem;
}

.doppia-colonna .inserzionista button {
	position: absolute;
	width: 24px;
	height: 24px;
	bottom: 1px !important;
    right: 0 !important;
}

.doppia-colonna .inserzionista i {
	position: relative;
	font-size: 16px;
	top: 0px;
}

.annunci .doppia-colonna h1{
	font-size: 1.7rem;
}

.annunci .doppia-colonna h2 {
	font-size: 1.5rem;
}

.annunci .doppia-colonna h5 {
	font-size: 1.1em; 
}

@media (min-width:1200px) {
	
	.annunci .doppia-colonna h2 {
		font-size: 1.35rem;
		  -webkit-line-clamp: 2;
		  overflow : hidden;
		  text-overflow: ellipsis;
		  display: -webkit-box;
		  -webkit-box-orient: vertical;
	}
	
}

.ricerca-annunci .custom-select,
.ricerca-annunci .form-control	{
    line-height: 50px;
    padding: 0 1rem;
    height: 50px;
}

.ricerca-annunci button	{
    line-height: 50px;
    padding: 0 1rem;
    height: 50px;
}

/* ==== STRUTTURA ==== */

.struttura{
	padding-top: 1em;
}

.struttura .rounded {
    border-radius: .5rem !important;
}

.struttura .rating {
	color: var(--warning);
	font-size: 18px;
}
.struttura .rating .disabled{
	color: #e1ecfa;
}

.struttura .indirizzo {
	font-size: 16px;
	margin-top:5px;
}

.struttura .slider-container{
	position: relative;
	border-radius: .5rem;
	overflow: hidden;
}

.struttura .slider-container .contatore{
	position: absolute;
	bottom: 1.5em;
	right: 1.5em;
	z-index: 1;
	color: var(--primary);
	font-weight: 500;
}

.struttura .slider-container .bottom-box{
	position: absolute;
	bottom: 0;
	background: rgba(255,255,255,.7);
	padding: .5em;
	width: 100%;
    z-index: 1;
	font-weight: 500;
}

.struttura .slider-container .bottom-box a{
	font-weight: 800;
}

.struttura  a.read-more {
	margin-top: .5rem;
	color:var(--primary-over);
	display: block;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.2em;
}

.struttura .list-group-item:first-child{
	border-top: none;
}

.struttura .list-group-item:lash-child{
	border-bottom: none;
}

.struttura .btn-outline-dark {
	border: 1px solid #cccccc;
	color: #cccccc;
}

.struttura .btn-outline-dark:not(:disabled):not(.disabled):active{
	background: var(--primary);
}

.struttura .contatore input[type="text"] {
	text-align: center;
	font-weight: 700;
	color: var(--primary);
	background: #FFF;
}

.struttura .btn-outline-secondary {
	border:1px solid #cccccc;
	color:#cccccc;
}

.struttura .btn-outline-secondary:hover,
.struttura .btn-outline-secondary:not(:disabled):not(.disabled):active {
	border:1px solid var(--primary);
	background: var(--primary);
	color:#FFFFFF;
}

.struttura .btn-lg{
	font-size: 17px;
	position: relative;
}

.struttura .leggi-tutto:after{
    opacity: 1;
	position: absolute;
	right: 26px;
	top: 8px;
}

.struttura .lista h5 {
	position: relative;
}

.struttura .lista h5 i {
	position: absolute;
    right: 1em;
    top: .5em;
	color: var(--warning);
}

.struttura .lista ul {
	list-style: none;
	padding-left: 0;
}

.struttura .lista ul li::before {
  content: "\2022";
  color: var(--warning);
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: 1em;
}
.struttura .lista img {
	max-width: 32px;
	max-height: 32px;
}

.struttura .jumbotron {
	font-size: 20px;
	background: #e1ecfa;
	margin-left: -16px;
	margin-right: -16px;
}

.struttura .jumbotron p {
	font-size: 16px;
}

#formPrenotazione {
	position: relative;
	margin-bottom: 1em;
	-moz-border-radius: .5rem;
	-webkit-border-radius: .5rem;
	border-radius: .5rem;
}

.struttura .colonna-secondaria{
	background: var(--light);
}

.struttura .voto{
	margin-left: -8px
}

.struttura .featurette h3{
	font-size: 16px;
}

.struttura .colonna-secondaria .featurette h3{
	font-size: 18px;
}

.struttura .featurette p{
	font-size: 13px;
}

.struttura .map-box .rating {
	font-size: 15px;
	margin-bottom: .5rem;
}

.struttura .price-box {
	position: relative;
	background: #FFF;
	margin-top: 2em;
	margin-bottom: 2em;
	padding: 1.5em 1.5em 1.2em;
	font-size: 1.25em;
	border: 3px solid var(--warning);
	border-radius: .25rem;
}

.struttura .price-box h2{
	color: var(--primary);
}

.struttura .price-box .btn {
	position: absolute;
	right:calc(50% - 57px);
	bottom: -20.5px;
	font-weight: 700;
}

.struttura .colonna-secondaria p.big{
	font-size: 18px;
}

.struttura .colonna-secondaria .price-box h2{
	font-size: 2.5em;
}

.struttura .owl-carousel .owl-nav button.owl-prev,
.struttura .owl-carousel .owl-nav button.owl-next{
	padding: 0 !important;
}

.struttura .owl-carousel .owl-nav button.owl-prev span,
.struttura .owl-carousel .owl-nav button.owl-next span{
	line-height: 100%;
    height: 100%;
}

.struttura .slider.slider-horizontal .slider-track {
    height: 6px;
    margin-top: -3px;
}

.struttura .slider.slider-horizontal .slider-selection {
    background: var(--warning);
}

@media (min-width:992px){
	.struttura{
		padding-top: 3em;
	}

}

/* == RISULTATI RICERCA STRUTTURE == */

.struttura.risultati-ricerca .item {
	padding-bottom: .5em;
	padding-top: 2.5em;
	border-bottom: 1px solid #f1f1f1;
	position: relative;
}

.struttura.risultati-ricerca .item:first-of-type {
	padding-top: 0;
}

.struttura.risultati-ricerca .item:last-of-type {
	border-bottom: none;
}

.struttura.risultati-ricerca .item.non-disponibile:before{
	content: 'non disponibile';
	position: absolute;
	top: 6px;
	left: -4px;
	color: #FFFFFF;
	background-color: var(--danger);
	padding: 2px 8px;
	border-radius: .15rem;
	font-size: 14px
}

.struttura.risultati-ricerca .rating i{
	font-size: 12px;
}

.struttura.risultati-ricerca .voto {
	position: relative;
}

.struttura.risultati-ricerca .voto .fa-stack{
	font-size: 24px;
}
.struttura.risultati-ricerca .voto .text-center{
	font-size: 20px;
}

.struttura.risultati-ricerca .offerta{
	padding: 14px;
}

.struttura.risultati-ricerca .price-box {
	margin-top: 12px;
    padding: .75em 0 1.25em;
}

.struttura.risultati-ricerca .slider-container .bottom-box{
	padding: .25em;
}

.alternative .item {
	color: #212529;
	margin-bottom: 0.5em;
}

.alternative .item:last-of-type {
	margin-bottom: 0;
}

/* === PRENOTA STRUTTURA === */

.datepicker table tr td.active.active, .datepicker table tr td.active.highlighted.active, .datepicker table tr td.active.highlighted:active, .datepicker table tr td.active:active {
    color: #fff;
    background-color: var(--primary);
    border-color: var(--primary);
}

.datepicker table tr td.active.active.focus, .datepicker table tr td.active.active:focus, .datepicker table tr td.active.active:hover, .datepicker table tr td.active.highlighted.active.focus, .datepicker table tr td.active.highlighted.active:focus, .datepicker table tr td.active.highlighted.active:hover, .datepicker table tr td.active.highlighted:active.focus, .datepicker table tr td.active.highlighted:active:focus, .datepicker table tr td.active.highlighted:active:hover, .datepicker table tr td.active:active.focus, .datepicker table tr td.active:active:focus, .datepicker table tr td.active:active:hover {
    background-color: var(--primary-over);
    border-color: var(--primary-over);
}

/* == GRIGLIA IMMAGINI == */

.griglia-immagini.lift [class*='col-']:hover img {
	-moz-transform: translateY(-16px);
	-webkit-transform: translateY(-16px);
	-o-transform: translateY(-16px);
	-ms-transform: translateY(-16px);
	transform: translateY(-16px);
}

.griglia-immagini.flip [class*='col-']:hover img {
	-moz-transform: scale(-1, 1);
	-webkit-transform: scale(-1, 1);
	-o-transform: scale(-1, 1);
	-ms-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.griglia-immagini.rotate [class*='col-']:hover img {
	-moz-transform: rotate(-15deg);
	-webkit-transform: rotate(-15deg);
	-o-transform: rotate(-15deg);
	-ms-transform: rotate(-15deg);
	transform: rotate(-15deg);
}

.flip-card {
	perspective: 1000px;
	position: relative;
	width: 100%;
	display: block;
}

.flip-card img{
	position: relative;
}

.flip-card-inner {
  	position: relative;
  	width: 100%;
  	height: 100%;
  	text-align: center;
  	transition: transform 0.8s ease-in-out;
  	transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
  	transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
  	position: absolute;
	display: block;
  	width: 100%;
  	height: 100%;
	min-height: 100%;
 	-webkit-backface-visibility: hidden;
  	backface-visibility: hidden;
}

.flip-card-back {
  	transform: rotateY(180deg);
}

/* === TABELLA ORDINABILE === */

.tablesorter-pager .btn-group-sm .btn {
  font-size: 1.2em;
}

/* == NEWS SCROLLER == */

.news {
    width: 160px
}

.news-scroll a {
    text-decoration: none;
	color: rgba(0,0,0,0.75);
}

.news-scroll a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f101";
    margin-left: 16px;
    margin-right: 8px;
    color: rgba(0,0,0,0.35);
    display: inline-block
}

/* == INSTALLAZIONE == */

#installazione .card-container.card {
    max-width: 460px;
    padding: 30px 30px;
}

#installazione .img-fluid {
	margin-right: 5em;
	margin-left: 5em;
}

#installazione .pwd-forte {
	color: green;
	text-transform: uppercase;
}

#installazione input[type=password] {
	-webkit-border-radius: 0.25rem;
	-webkit-border-bottom-right-radius: 0;
	-webkit-border-bottom-left-radius: 0;
	-moz-border-radius: 0.25rem;
	-moz-border-radius-bottomright: 0;
	-moz-border-radius-bottomleft: 0;
	border-radius: 0.25rem;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

/* == LOGIN == */

#login .card-container.card {
    max-width: 350px;
    padding: 30px 30px;
}

#installazione .card, 
#login .card {
    background-color: #F7F7F7;
    padding: 20px 25px 30px;
    margin: 0 auto 25px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

.form-signin #inputEmail,
.form-signin #inputPassword {
    direction: ltr;
    font-size: 16px;
}

.form-signin input[type=email],
.form-signin input[type=password],
.form-signin input[type=text],
.form-signin button {
    width: 100%;
    display: block;
    margin-bottom: 10px;
    z-index: 1;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/* ==== FORM MULTI STEP (Legacy) ==== */

#msform fieldset .form-card {
    position: relative;
	margin: auto 1.5em;
}

#msform fieldset {
    background: white;
    border: 0 none;
    border-radius: 0.5rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-bottom: 1em;
    position: relative
}

#msform fieldset:not(:first-of-type) {
    display: none
}

#msform fieldset .form-card {
    text-align: left;
    color: #9E9E9E
}

#msform input,
#msform textarea, 
#msform select{
    padding: 0px 8px 4px 8px;
    border: none;
    border-bottom: 1px solid #ccc;
    border-radius: 0px;
    margin-bottom: 25px;
    margin-top: 2px;
    width: 100%;
    box-sizing: border-box;
    font-size: 16px;
    letter-spacing: 1px
}

#msform input:focus,
#msform textarea:focus, 
#msform select:focus{
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: none;
    font-weight: bold;
    border-bottom: 2px solid var(--primary);;
    outline-width: 0
}

#msform .action-button {
	width: 33%;
    background: var(--primary);
    font-weight: inherit;
    color: white;
    border: 0 none;
    border-radius: 5rem;
    cursor: pointer;
    padding: 10px;
    margin: 10px 5px;
}

#msform .action-button:hover,
#msform .action-button:focus {
    background: var(--primary-over);
	border-bottom: none;
	font-weight: inherit;
}

#msform .action-button-previous {
	width: 33%;
    font-weight: inherit;
	background: lightgray;
    color: white;
    border: 0 none;
    border-radius: 5rem;
    cursor: pointer;
    padding: 10px;
    margin: 10px 5px;
}

#msform .action-button-previous:hover,
#msform .action-button-previous:focus {
	background-color: #9F9F9F;
	border-bottom: none;
	font-weight: inherit;
}

#msform select.list-dt {
    border: none;
    outline: 0;
    border-bottom: 1px solid #ccc;
    padding: 2px 5px 3px 5px;
    margin: 2px
}

#msform select.list-dt:focus {
    border-bottom: 2px solid var(--primary);
}

#msform .card {
    z-index: 0;
    border: none;
    border-radius: 0.5rem;
    position: relative
}

#msform .fs-title {
    color: #131313;
    margin-bottom: 10px;
    font-weight: bold;
    text-align: center;
}

#progressbar {
    margin-bottom: 30px;
    overflow: hidden;
    color: lightgrey;
	padding: 0;
}

#progressbar .active {
    color: #000000
}

#progressbar li {
    list-style-type: none;
    font-size: 12px;
    width: 25%;
    float: left;
    position: relative
}

#progressbar #step1:before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f007"
}

#progressbar #step2:before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f1b0"
}

#progressbar #step3:before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f5ac"
}

#progressbar #step4:before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f00c"
}

#progressbar li:before {
    width: 50px;
    height: 50px;
    line-height: 45px;
    display: block;
    font-size: 18px;
    color: #ffffff;
    background: lightgray;
    border-radius: 50%;
    margin: 0 auto 10px auto;
    padding: 2px
}

#progressbar li:after {
    content: '';
    width: 100%;
    height: 2px;
    background: lightgray;
    position: absolute;
    left: 0;
    top: 25px;
    z-index: -1
}

#progressbar li.active:before,
#progressbar li.active:after {
    background: var(--primary);
}

#msform .radio-group {
    position: relative;
    margin-bottom: 25px
}

#msform .radio {
    display: inline-block;
    width: 204;
    height: 104;
    border-radius: 0;
    background: lightblue;
    box-shadow: 0 2px 2px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    cursor: pointer;
    margin: 8px 2px
}

#msform .radio:hover {
    box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.3)
}

#msform .radio.selected {
    box-shadow: 1px 1px 2px 2px rgba(0, 0, 0, 0.1)
}

/* ==== FORM MULTI STEP ==== */

.multisteps-form__progress {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}

.multisteps-form__progress-btn {
  transition-property: all;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  transition-delay: 0s;
  position: relative;
  padding-top: 20px;
  color: rgba(108, 117, 125, 0.7);
  text-indent: -9999px;
  border: none;
  background-color: transparent;
  outline: none !important;
  cursor: pointer;
}

@media (min-width: 500px) {
  .multisteps-form__progress-btn {
    text-indent: 0;
  }
}

.multisteps-form__progress-btn:before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 13px;
  height: 13px;
  content: '';
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  transition: all 0.15s linear 0s, -webkit-transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s;
  transition: all 0.15s linear 0s, transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s;
  transition: all 0.15s linear 0s, transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s, -webkit-transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s;
  border: 2px solid var(--primary);
  border-radius: 50%;
  background-color: #fff;
  box-sizing: border-box;
  z-index: 3;
}

.multisteps-form__progress-btn:after {
  position: absolute;
  top: 5px;
  left: calc(-50% - 13px / 2);
  transition-property: all;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  transition-delay: 0s;
  display: block;
  width: 100%;
  height: 2px;
  content: '';
  background-color: var(--primary);
  z-index: 1;
}

.multisteps-form__progress-btn:first-child:after {
  display: none;
}

.multisteps-form__progress-btn.js-active {
  color: var(--primary);
}

.multisteps-form__progress-btn.js-active:before {
  -webkit-transform: translateX(-50%) scale(1.2);
          transform: translateX(-50%) scale(1.2);
  background-color: var(--primary);
}

.multisteps-form__form {
  position: relative;
}

.multisteps-form__panel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  opacity: 0;
  visibility: hidden;
}

.multisteps-form__panel.js-active {
  height: auto;
  opacity: 1;
  visibility: visible;
}

.multisteps-form__panel[data-animation="scaleIn"] {
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
}

.multisteps-form__panel[data-animation="scaleIn"].js-active {
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: linear;
  transition-delay: 0s;
  -webkit-transform: scale(1);
          transform: scale(1);
}

.multisteps-form__panel .custom-control.custom-checkbox.thumb{
	padding-left: 0;
}

.multisteps-form__form .custom-control-label{
	cursor: pointer;
}

.multisteps-form__form .custom-control-label:hover img{
	opacity: 0.85;
	z-index: 1;
}

.multisteps-form__form .custom-control-label::before,
.multisteps-form__form .custom-control-label::after{
	position: absolute;
	left: inherit;
	top: inherit;
	right: 1rem;
	bottom: 1rem;
	height: 22px;
    width: 22px;
	z-index: 2;
	border-radius: 2rem;
}

.multisteps-form__form.approva-file audio{
	padding-right: 42px;
}

/** == EVENTI == **/

.eventi .testo{
	margin-top: -20px;
	z-index: 2;
}

.eventi .badge {
	font-size: 14px;
	border-right: 4px solid #FFF;
	border-bottom: 4px solid #FFF;
}

@media (min-width:992px){
	.eventi .col-lg-8 .badge{
		font-size: 20px;
	}

	.eventi .col-lg-8 h4{
		font-size: 32px;
	}

	.eventi .col-lg-3 .badge{
		font-size: 12px;
	}

	.eventi .col-lg-3 h4{
		font-size: 20px;
	}
}


/* ==== GRAFO ==== */

.grafo .card {
	max-width: 220px;
	padding: 16px;
	background: #FFF;
}

.grafo .separatore{
	position: relative;
	width: 50%;
	height: 42px;
}
.grafo .separatore span:nth-child(1){
	position: absolute;
	width: 50%;
	height: 21px;
	border-right: 1px solid rgba(0,0,0,0.125);
	left: 0;
}

.grafo .separatore span:nth-child(2){
	width: 50%;
	height: 21px;
	margin-top: 21px;
	left:0;
	border-left: 1px solid rgba(0,0,0,0.125);
	border-top: 1px solid rgba(0,0,0,0.125);
	position: absolute;
}

.grafo .separatore span:nth-child(3){
	width: 50%;
	height: 21px;
	margin-top: 21px;
	right:0;
	border-right: 1px solid rgba(0,0,0,0.125);
	border-top: 1px solid rgba(0,0,0,0.125);
	position: absolute;
}



/* == Carica file == */

.extra.carica-file{
    min-height: calc(100vh - 136px);
}

.carica-file{
    min-height: calc(100vh - 98px);
}

.carica-file .custom-file-input ~ .custom-file-label::after {
    content: "\f067";
	color: #FFF;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
}

.carica-file .custom-file-label::after{
	 background-color: var(--primary);
}


/* == CONFIGURATORE PRODOTTO == */

.configuratore-prodotto .nav-link.active .aspect-ratio-1-1{
	box-shadow: inset 0 0 0 4px;
}

.configuratore-prodotto .base{
	position: relative;
	z-index: 0;
}

.configuratore-prodotto .overlay-lev-1{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.configuratore-prodotto .img-container img.border  {
	border: 3px dashed #e9ecef !important;
	padding: .75rem;
}

.configuratore-prodotto .img-container .elimina {
	position: absolute;
	right: 1.5em;
	top: 1.5em;
	color: var(--danger);
}

.configuratore-prodotto .grafica{
	width: 60%;
	margin: auto;
	margin-bottom: 8px;
}

.configuratore-prodotto .testo h4{
	width: 80%;
	font-size: 3vw;
	margin: auto;
}

@media (min-width:576px){
	.configuratore-prodotto .grafica{
		width: 70px;
	}
	
	.configuratore-prodotto .testo h4{
		font-size: 16px;
	}
}

@media (min-width:768px){
	.configuratore-prodotto .grafica{
		width: 70px;
	}
	
	.configuratore-prodotto .testo h4{
		font-size: 16px;
	}
}

@media (min-width:992px){
	.configuratore-prodotto .grafica{
		width: 80px;
	}
	
	.configuratore-prodotto .testo h4{
		font-size: 18px;
	}
}

@media (min-width:1200px){
	.configuratore-prodotto .grafica{
		width: 100px;
	}
	
	.configuratore-prodotto .testo h4{
		font-size: 24px;
	}
}

/* == IFRAME == */

.iframe-container {
	position: relative;
	overflow: hidden;
	width: 100%;
}

.responsive-iframe {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

.iframe-container.fullscreen {
	height: 100vh;
	width: 100vw;
}

/* == FORM RICERCA == */

.FormRicerca form .form-control{
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
}
.FormRicerca form .btn{
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
}


/* =========================== 

VARIANTI TEMPLATE PAGINA

============================ */


/* == TEMA FULLSCREEN CON MENU VERTICALE A COMPARSA SINISTRA == */

body.fullscreen,
body.fullscreen section.full-height {
	margin-top: 0;
	min-height: 100vh;
}

body.fullscreen.extraspace {
	margin-top: 38px;
	min-height: calc(100vh - 38px);
}

body.fullscreen.extraspace section.full-height {
	min-height: calc(100vh - 38px);
}

.fullscreen #sidebarCollapse{
	position: absolute;
	top:2em;
	left:2em;
	z-index: 2;
}

.fullscreen .hamburger-inner, 
.fullscreen .hamburger-inner:after, 
.fullscreen .hamburger-inner:before{
	background-color: var(--primary);
}

.fullscreen #sidebar {
    width: 250px;
    position: fixed;
    top: 0;
    left: -250px;
    height: 100vh;
    z-index: 999;
    background: var(--light);
    color: #fff;
    transition: all 0.3s;
    overflow-y: scroll;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
}

.fullscreen #sidebar.active {
    left: 0;
}

.fullscreen #dismiss {
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
	color: var(--primary);
    position: absolute;
    top: 28px;
    right: .45em;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.fullscreen #dismiss:hover {
    color: var(--primary-over);
}

.fullscreen .overlay {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.7);
    z-index: 998;
    opacity: 0;
    transition: all 0.5s ease-in-out;
}
.fullscreen .overlay.active {
    display: block;
    opacity: 1;
}

.fullscreen #sidebar .sidebar-header {
    padding: 1em;
}

.fullscreen #sidebar ul li a {
    padding: 0.35em 1em;
    font-size: 1.1em;
    display: block;
}

.fullscreen #sidebar ul li a:hover {
    background: #fff;
}

.fullscreen #sidebar ul li a.collapsed:before {
	content: "\f067";
	display: inline-block;
	position: absolute;
	color: var(--light-active);
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	right: 1em;
	top:10px;
	font-size: 0.8em;
}

.fullscreen #sidebar ul li a.collapsed:hover:before {
	color: var(--primary);
}


.fullscreen #sidebar ul li ul li a {
    padding-left: 1.75em;
    font-size: 1em;
    display: block;
}

.fullscreen #sidebar ul li ul li a:before {
	content: "\f105";
	display: inline-block;
	color: var(--light-active);
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
	right: 10px;
}

.fullscreen #sidebar ul li ul li a:hover:before {
	color: var(--primary);
}


.fullscreen #sidebar ul li.active>a,
.fullscreen #sidebar ul li a[aria-expanded="true"] {
    color: var(--primary-active);
	font-weight: bolder;
}

.fullscreen #sidebar ul li a[data-toggle="collapse"] {
    position: relative;
}


.fullscreen #content {
    width: 100%;
    padding: 0px;
    min-height: 100vh;
    transition: all 0.3s;
    position: absolute;
    top: 0;
    right: 0;
}


/* == TEMA CON MENU VERTICALE A COMPARSA DESTRA == */

body.barra-laterale,
body.barra-laterale section.full-height {
	margin-top: 0;
	min-height: 100vh;
}

body.barra-laterale.extraspace{
	margin-top: 38px;
	min-height: calc(100vh - 38px);
}

body.barra-laterale.extraspace section.full-height {
	min-height: calc(100vh - 38px);
}

.barra-laterale .navbar {
    padding: 15px 10px;
    background: #fff;
    border: none;
    border-radius: 0;
    margin-bottom: 40px;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
}

.barra-laterale .navbar-brand{
	z-index: 3;
} 

.barra-laterale .navbar-btn {
    box-shadow: none;
    outline: none !important;
    border: none;
}

.barra-laterale .hamburger-box {
    top: 3px;
}

.barra-laterale .hamburger-inner, 
.barra-laterale .hamburger-inner:after, 
.barra-laterale .hamburger-inner:before {
	background: var(--primary);
}

.barra-laterale #sidebarCollapse{
	position: fixed;
	right: 1.5em;
	top: 22px;
	z-index: 2;
}

.barra-laterale .hamburger-inner,
.barra-laterale .hamburger-inner:after,
.barra-laterale .hamburger-inner:before {
    width: 30px;
    height: 3px;
    transition-duration: .15s;
}

.barra-laterale .hamburger-box {
    width: 37px;
}

.barra-laterale.extraspace #sidebarCollapse{
	top: 66px;
	z-index: 2;
}

.barra-laterale #sidebar {
    width: 250px;
    position: fixed;
    top: 0;
    right: -250px;
    height: 100vh;
    z-index: 999;
    background: var(--light);
    transition: all 0.3s;
    overflow-y: scroll;
}

.barra-laterale #sidebar.active {
    right: 0;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
}

.barra-laterale #dismiss {
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    color: var(--primary);
	background: transparent;
    position: absolute;
    top: 23px;
    right: 10px;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.barra-laterale #dismiss:hover {
    background: #fff;
    color: var(--primary-over);
}

.barra-laterale .overlay {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.7);
    z-index: 998;
    opacity: 0;
    transition: all 0.5s ease-in-out;
}
.barra-laterale .overlay.active {
    display: block;
    opacity: 1;
}

.barra-laterale #sidebar .sidebar-header {
    padding: 1em 4em 1em 1em;
}

.barra-laterale #sidebar ul li a {
    padding: .5em 1.15em;
    font-size: 1em;
    display: block;
}

.barra-laterale #sidebar.navbar-light ul li a:not(.dropdown-item) {
    color: rgba(0,0,0,.85);
}

.barra-laterale #sidebar.navbar-light ul li a:not(.dropdown-item):hover,
.barra-laterale #sidebar.navbar-light ul li.active>a:not(.dropdown-item)  {
    color: rgba(0,0,0,1);
    background: rgba(255,255,255,.15);
}

.barra-laterale #sidebar.navbar-light .dropdown i.rotate{
	color: rgba(0,0,0,1) !important;
}

.barra-laterale #sidebar.navbar-dark ul li a:not(.dropdown-item) {
    color: rgba(255,255,255,.85);
}

.barra-laterale #sidebar.navbar-dark ul li a:not(.dropdown-item):hover,
.barra-laterale #sidebar.navbar-dark ul li.active>a:not(.dropdown-item)  {
    color: rgba(255,255,255,1);
    background: rgba(0,0,0,.15);
}

.barra-laterale #sidebar.navbar-dark .dropdown i.rotate{
	color: rgba(255,255,255,1) !important;
}

.barra-laterale #sidebar .profili-social {
	margin: .5em !important; 
}

.barra-laterale #sidebar .profili-social li a{
	background: transparent;
	padding: .5em;
}

.barra-laterale #sidebar .profili-social li a:hover{
	background: transparent;
}

.barra-laterale #sidebar a.collapse{
	background: var(--light-over);
}

.barra-laterale #sidebar a[data-toggle="collapse"] {
    position: relative;
}

.barra-laterale #sidebar .dropdown-toggle::after {
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.barra-laterale #sidebar .fas.fa-pull-right {
    margin-left: 0;
    margin-top: 4px;
}

.barra-laterale li.active .fas.fa-pull-right{
	color: #FFF !important;
}

.barra-laterale ul ul li a {
    font-size: 1em !important;
    padding-left: 2em !important;
    background: rgba(0,0,0,0.1);
	transition: all 0.2s ease-in-out;
}

.barra-laterale ul ul li a:hover,
.barra-laterale ul ul li a:active,
.barra-laterale ul ul li a.active {
    background: rgba(0,0,0,0.2);
}

.barra-laterale ul ul a:before {
    font-size: 0.9em !important;
    background: transparent;
}

.barra-laterale ul ul a:hover {
    padding: .5rem .75rem .5rem 2rem;	
	padding-left: 2.5em !important;
}

.barra-laterale #sidebar ul ul a:before {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 0;
	display: none;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
    position: relative;
    top: 0px;
    padding: 0;
	left: -1.5rem;
	opacity:0;
	filter: alpha(opacity=0);	
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
}

.barra-laterale #sidebar.active ul ul a:before {
	display: inline-block;
}

.barra-laterale #sidebar ul ul a:hover:before {
    left: -1rem;
	opacity:1;
	filter: alpha(opacity=100);
}

.barra-laterale ul ul a:hover {
    color: var(--primary-over);
}

.barra-laterale #sidebar .ricerca-inline {
	margin: 0 1em;
	background: transparent;
    border: none;
    border-bottom: 1px solid;
}

.barra-laterale #sidebar .ricerca-inline input[type="text"],
.barra-laterale #sidebar .ricerca-inline .form-control:focus {
	background: none;
	box-shadow: none !important;
	border: none;
	padding: .7em .7em .7em 0;
}

.barra-laterale #sidebar button {
	margin-right: -12px;
	bottom: -2px;
}

.barra-laterale #sidebar.navbar-dark .ricerca-inline {
    border-bottom: 1px solid #FFF;
}

.barra-laterale #sidebar.navbar-dark .ricerca-inline input[type="text"],
.barra-laterale #sidebar.navbar-dark .ricerca-inline .form-control:focus {
	color: #FFF;
}

.barra-laterale #sidebar.navbar-dark button,
.barra-laterale #sidebar.navbar-dark .ricerca-inline input[type="text"]::placeholder {
	color: rgba(255,255,255,0.5);
}

.barra-laterale #sidebar.navbar-dark button:hover {
	color: rgba(255,255,255,1);
}

.barra-laterale #sidebar.navbar-light .ricerca-inline {
    border-bottom: 1px solid #000;
}

.barra-laterale #sidebar.navbar-light .ricerca-inline input[type="text"],
.barra-laterale #sidebar.navbar-light .ricerca-inline .form-control:focus {
	color: #000;
}

.barra-laterale #sidebar.navbar-light button,
.barra-laterale #sidebar.navbar-light .ricerca-inline input[type="text"]::placeholder {
	color: rgba(0,0,0,0.5);
}

.barra-laterale #sidebar.navbar-light button:hover {
	color: rgba(0,0,0,1);
}

.barra-laterale #sidebar .selettore-lingue a{
	margin: 6px 2px 0;
	position: relative;
	display: inline-block;
}

.barra-laterale .navbar-brand {
	top: 26px;
	left: 1em;
	position: fixed;
	z-index: 1;
	padding: 0;
	margin: 0;
}

.barra-laterale .navbar-brand {
	z-index: 10;
}

.barra-laterale.extraspace .navbar-brand {
	top: 56px;
	z-index: 10;
}

.barra-laterale.extraspace .page-wrapper {
	margin-top: 0px;
}

.barra-laterale #content {
    width: calc(100%);
    min-height: 100vh;
    transition: all 0.3s;
    position: absolute;
    top: 0;
    right: 0;
}

body.barra-laterale.extraspace #content{
	min-height: calc(100vh - 38px);
	margin-top: 0;
}

.barra-laterale:not(.sinistra) .sticky-top{
	top: 20px;
}

.barra-laterale:not(.sinistra).extraspace .sticky-top{
	top: 56px;
}


/* == TEMA CON MENU VERTICALE A COMPARSA SINISTRA == */

.barra-laterale.sinistra #sidebarCollapse{
	position: relative;
	left: 13px;
	top: 4px;
	z-index: 2;
}

.barra-laterale.sinistra #sidebar{
	left: -250px;
}

.barra-laterale.sinistra #sidebar.active {
	left: 0;
}

.barra-laterale.sinistra .navbar-brand {
    top: 0;
    position: relative;
    left: 22px;
}

.barra-laterale.sinistra .menu-principale.affix{
	padding: 10px !important;
}

body.barra-laterale.sinistra #content {
    min-height: calc(100vh - 88px);
    margin-top: 88px;
}

body.barra-laterale.sinistra.extraspace #content {
    min-height: calc(100vh - 126px);
    margin-top: 88px;
}

/* == TEMA CON MENU VERTICALE FISSO A SINISTRA == */

.barra-laterale.fissa-sx,
.barra-laterale.fissa-sx section.full-height {
	margin-top: 0;
	min-height:100vh;
}

.barra-laterale.extraspace.fissa-sx{
	margin-top: 38px;
    min-height: calc(100vh - 38px);
}

.barra-laterale.extraspace.fissa-sx section.full-height {
    min-height: calc(100vh - 38px);
}

.barra-laterale.extraspace.fissa-sx main {
	margin-top: 0px;
}

.barra-laterale.extraspace.fissa-sx .page-wrapper {
	margin-top: 0px;
}

.barra-laterale.fissa-sx #sidebar {
    width: 250px;
    position: fixed;
    top: 0;
    left: 0px;
    height: 100vh;
    z-index: 999;
    background: var(--light);
    transition: all 0.3s;
    overflow-y: hidden;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
}

.barra-laterale.fissa-sx #sidebar.active{
	margin-left: 0px;
}

.barra-laterale.fissa-sx #content {
    width: calc(100% - 250px);
    min-height: 100vh;
    transition: all 0.3s;
    position: absolute;
}

.barra-laterale.fissa-sx .over-the-top-bar > nav{
	margin-left: 250px;
}

.barra-laterale.fissa-sx #sidebarCollapse{
	display: none;
	z-index: 2;
}

.barra-laterale.fissa-sx #sidebar .sidebar-header{
	padding: 1.5em 2em; 
}

.barra-laterale.fissa-sx .overlay.active{
	display: none;
}

.barra-laterale.fissa-sx #sidebar ul ul li a:before {
	display: inline-block;
}

.barra-laterale .dropdown-menu.megamenu.show{
	left: 5px !important;
	box-shadow: 0 0 0 200vh rgba(0,0,0,0.35);
}

@media (max-width: 768px) {
  	.barra-laterale.fissa-sx #sidebar {
        margin-left: -250px;
		overflow-y: scroll;
		box-shadow: none;
    }
	
    .barra-laterale.fissa-sx #sidebar.active {
        margin-left: 0;
		box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
    }
	
	.barra-laterale.fissa-sx #content {
    	width: 100%;
	}
	
	.barra-laterale.fissa-sx .over-the-top-bar > nav{
		margin-left: 0px;
	}
	
	.barra-laterale.fissa-sx #sidebarCollapse{
		display: block;
		z-index: 2;
	}
	
	.barra-laterale.fissa-sx .overlay.active{
		display: block;
	}
}


/* == TEMA CON MENU CENTRATO == */

body.menu-centrato{
	margin-top: 98px;
	min-height: calc(100vh - 98px);
}

body.menu-centrato.extraspace {
	margin-top: 136px;
	min-height: calc(100vh - 136px);
}

body.menu-centrato section.full-height {
	min-height: calc(100vh - 98px);
}

body.menu-centrato.extraspace section.full-height {
	min-height: calc(100vh - 136px);
}

body.menu-centrato .navbar-toggler{
	position: absolute;
    right: 1em;
	margin: 14px 16px 0 0;
}

body.menu-centrato .menu-principale .navbar-collapse{
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
}


@media (min-width:992px){
	body.menu-centrato {
		margin-top: 146px;
		min-height: calc(100vh - 146px);
	}	
	
	body.menu-centrato section.full-height {
		min-height: calc(100vh - 146px);
	}
	
	body.menu-centrato .sticky-top{
		top: 160px;
	}	
	
	body.menu-centrato.extraspace {
		margin-top: 184px;
		min-height: calc(100vh - 184px);
	}
	
	body.menu-centrato.extraspace .sticky-top{
		top: 200px;
	}
	
	body.menu-centrato .menu-principale{
		padding-bottom: .5rem !important;
	}

	body.menu-centrato .menu-principale .navbar-collapse{
		margin-top: 1rem;
		text-align: center;
	}

	body.menu-centrato .menu-principale.affix .navbar-collapse{
		margin-top: 0;
	}

	body.menu-centrato .menu-principale.affix  .navbar-brand img {
		transform: scale(0.85) translate(0, 0);
	}

}


/* == TEMA CON LOGO CENTRATO == */

@media (min-width: 992px){
	body.logo-centrato .menu-principale {
		padding-bottom: 1.2rem !important;
	}
	
	body.logo-centrato .menu-principale.affix {
		padding-top: 0.3rem !important;
		padding-bottom: 0.3rem !important;
	}
	
	body.logo-centrato .menu-principale.affix .navbar-brand img {
		transform: scale(0.85) translateX(0);
	}
	
	body.logo-centrato .menu-principale ul li a:not(.navbar-brand){
		width:90px;
	}
}


/* == TEMA LANDING PAGE CON LOGO CENTRATO GRANDE == */

.logo-grande{
    padding-top: 0;
    /*margin-bottom: 5em;*/
}

.menu-a-tutto-schermo  .logo-grande,
.barra-laterale  .logo-grande {
    padding-top: 98px;
}

/* == TEMA CON MENU A TUTTO SCHERMO == */

body.menu-a-tutto-schermo,
body.menu-a-tutto-schermo section.full-height {
	margin-top: 0px;
    min-height: 100vh;
}

body.menu-a-tutto-schermo.extraspace{
	margin-top: 38px;
    min-height: calc(100vh - 38px);
}

body.menu-a-tutto-schermo.extraspace section.full-height {
    min-height: calc(100vh - 38px);
}

.menu-a-tutto-schermo .menu-principale{
	box-shadow: none;
	border-bottom: none;
}

.menu-a-tutto-schermo.extraspace .navbar-brand {
    top: 56px;
    z-index: 10;
}

.menu-a-tutto-schermo .menu-principale .hamburger{
	position: fixed;
    right: 1em;
    top: 36px;
    z-index: 1000;
	-webkit-transition: all  ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;
}

.menu-a-tutto-schermo .menu-principale.affix .hamburger{
    top: 22px;
	right: .75rem;
}

.menu-a-tutto-schermo.extraspace .menu-principale .hamburger{
    right: 1em;
    top: 71px;
}

.menu-a-tutto-schermo.extraspace .menu-principale.affix .hamburger{
    top: 55px;
	right: .75rem;
}

/*
.menu-a-tutto-schermo .page-wrapper main > section:first-of-type {
	transform: translateY(-98px);
}

.menu-a-tutto-schermo.extraspace .page-wrapper main > section:first-of-type{
	transform: translateY(-104px);
}
*/

.menu-a-tutto-schermo .sticky-top {
	top: 120px;
}
	
.menu-a-tutto-schermo.extraspace .sticky-top {
	top: 150px;
}


/* == TEMA CON MENU A PIÈ DI PAGINA == */

body.pie-di-pagin,
body.pie-di-pagina section.full-height {
	margin-top: 0;
	height: 100vh;
}

body.pie-di-pagina.extraspace{
	margin-top: 38px;
	height: calc(100vh - 38px);
}

body.pie-di-pagina.extraspace section.full-height {
	height: calc(100vh - 38px);
}

body.pie-di-pagina footer{
	padding-bottom: 98px;
}

.menu-pie-di-pagina{
	height: 98px;
}

/* Modal fullscreen */

.modal.fullscreen {
	position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
	display: flex!important;
	align-items: center!important;
	z-index: -1;
}

.modal.fullscreen.show {
	z-index: 1200;
}

.modal.fullscreen .modal-dialog {
	width: 100%;
}

.modal.fullscreen .modal-content {
	background: transparent;
    font-size: 1.5em;
	border: none;
    box-shadow: none;
}

.modal.fullscreen .modal-content a:not(.dropdown-item){
	display: block;
	position: relative;
	color: rgba(255,255,255,.75);
}

.modal.fullscreen .modal-content a:not(.dropdown-item):hover{
	color: rgba(255,255,255,1);
}

.modal.fullscreen .modal-content a.collapse{
	display: block;
	position: relative;
}

.modal.fullscreen .modal-content a i.rotate {
	font-size: 18px;
    bottom: calc(50% - 11px);
    right: 0;
    position: absolute;
}

.modal.fullscreen .modal-content ul > li {
    padding-bottom: .7rem;
}

.modal.fullscreen .modal-content ul li ul{
	font-size: 18px;
    line-height: 32px;
}

.modal.fullscreen .modal-content ul li ul li{
    margin-bottom: 0;
	padding: .5rem 0 0 0;
}

.modal.fullscreen .profili-social{
	margin-right: 0 !important;
	margin-left: 0 !important;
	width: 100% !important;
	display: flex!important;
	justify-content: space-between!important;
}

.modal.fullscreen .profili-social .list-inline-item {
	margin-right: 12px;
	margin-bottom: 0;
}

.modal.fullscreen .profili-social .list-inline-item:last-of-type {
	margin-right:0;
}

.modal.fullscreen .ricerca-inline input[type="text"],
.modal.fullscreen .ricerca-inline input[type="text"]:focus {
	background: transparent;
    color: #FFF;
    border: none;
    border-bottom: 1px solid;
    padding: .7em 0;
	box-shadow: none !important;
}

.modal.fullscreen .ricerca-inline button {
	margin-right: -12px;
	bottom: -2px;
	color: rgba(255,255,255,0.5);
}

.modal.fullscreen .ricerca-inline button:hover {
	color: rgba(255,255,255,1);
}

/*
@media (min-width:576px){
	.modal.fullscreen .modal-dialog {
		width: auto;
		max-width: inherit;
	}
}
*/

/* === ASK === */

.titoloDomanda {
	font-size: 2em;
}