/*
------ the SLIDER con ALTEZZA OPZIONABILE ( caso 1 di 2 ) ---------------------------------------------------------------------
*/
.the_slider {
	clear:both; float:none;
	background:#fff;
	--heightVar:500px; /* DEFINIZIONE VARIABILE ALTEZZA BLOCCO ( ma blocco ACF può sovrascriverla ) */
}
.the_slider .owl-slider {
	/*
	max-width:1440px;
	margin:0 auto;
	*/
	position:relative;
}
.the_slider .owl-stage-outer {
	overflow:hidden;
}
.owl-slider .single-item {
	background-size:cover;
	background-position:center center;
	overflow:hidden;
	height:var(--heightVar);
}
@media only screen
and (min-width:769px)
and (max-width:1024px) {
	.owl-slider .single-item {
		height:calc(var(--heightVar)*0.85);
	}
}
@media only screen
and (min-width:481px)
and (max-width:768px) {
	.owl-slider .single-item {
		height:calc(var(--heightVar)*0.7);
	}
}
@media only screen
and (max-width:480px) {
	.owl-slider .single-item {
		height:calc(var(--heightVar)*0.55);
	}
}
.hide-slider-template {
	display:none;
}

/* TESTO in OVERLAY, se presente */
.owl-slider .single-item {
    display:-ms-flexbox;
    display:-webkit-flex;
    display:flex;
}
.owl-slider .page-width {
    display:-ms-flexbox;
    display:-webkit-flex;
    display:flex;
    -webkit-flex-direction:column;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-flex-wrap:nowrap;
    -ms-flex-wrap:nowrap;
    flex-wrap:nowrap;
    -webkit-justify-content:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-align-content:flex-start;
    -ms-flex-line-pack:start;
    align-content:flex-start;
    -webkit-align-items:flex-start;
    -ms-flex-align:start;
    align-items:flex-start;
	
	padding:40px 10px 60px 10px;
	width:100%;
}
.owl-slider .page-width .slide-text {
	background:rgba(255,255,255,0.8);
	padding:30px;
	max-width:780px;
	margin-right:auto;
}
@media only screen
and (max-width:1600px) {
	.owl-slider .page-width .slide-text {
		margin-left:45px;
		margin-right:45px;
	}
}
@media only screen
and (max-width:780px) { /* tolgo le frecce per schermi piccoli */
	.the_slider.has-text .slide-text {
		margin-left:0 !important;
		margin-right:0 !important;
	}
	.the_slider.has-text .owl-nav {
		display:none;
	}
}

/* SLIDER 100% ALTEZZA FINESTRA ( SOLO IN CASO ECCEZIONALE ) */
.the_slider.fullHeight,
.the_slider.fullHeight .owl-slider,
.the_slider.fullHeight .owl-slider div:not(.owl-controls) {
	height:100%;
}
.the_slider.fullHeight .owl-slider .single-item {
	height:auto;
}

/*
------ HOME-SLIDER-WITH-TEXT ( NANIMATOR ) ---------------------------------------------------------------------
*/
.slider_with_text.the_slider {
	--heightVar_withText:500px;
}
.slider_with_text .owl-slider .single-item {
	height:var(--heightVar_withText);
}
@media only screen
and (min-width:769px)
and (max-width:1024px) {
	.slider_with_text .owl-slider .single-item {
		height:calc(var(--heightVar_withText)*0.85);
	}
}
@media only screen
and (min-width:481px)
and (max-width:768px) {
	.slider_with_text .owl-slider .single-item {
		height:calc(var(--heightVar_withText)*0.7);
	}
}
@media only screen
and (max-width:480px) {
	.slider_with_text .owl-slider .single-item {
		height:calc(var(--heightVar_withText)*0.55);
	}
}

/* HOME-SLIDER-WITH-TEXT NANIMATOR */
.nanimator {
	/* it's very important that you set the position of the parent container as relative/absolute for successful animation */
	position:relative;
	top:0; right:0;
	top:50%;
	transform:translateY(-50%);
}
.nanimate {
	margin-bottom:0.2em;
	font-size:1.8em;
}
.nanimate span {
	background:rgba(0,0,0,0.3);
	color:#fff;
	display:inline-block;
	padding:3px 10px;
}
@media only screen
and (max-width:1600px) { /* se ho le frecce */
	.nanimate {
		margin-left:45px;
		margin-right:45px;
	}
}
@media only screen
and (max-width:780px) { /* tolgo le frecce per schermi piccoli */
	.the_slider.slider_with_text .nanimate {
		margin-left:0 !important;
		margin-right:0 !important;
	}
	.the_slider.slider_with_text .owl-nav {
		display:none;
	}
}
@media only screen
and (min-width:769px)
and (max-width:1024px) {
	.nanimate {
		margin-bottom:0.1em;
		font-size:1.6em;
	}
}
@media only screen
and (min-width:481px)
and (max-width:768px) {
	.nanimate {
		margin-bottom:0.1em;
		font-size:1.4em;
	}
}
@media only screen
and (max-width:480px) {
	.nanimate {
		margin-bottom:0.1em;
		font-size:1.2em;
	}
}

/*
------ the CAROUSEL ---------------------------------------------------------------------
*/
.the_carousel {
	clear:both; float:none;
}
.the_carousel .owl-carousel {
	min-height:180px;
	margin:0 auto;
}
.the_carousel .single-item {
	overflow:hidden;
	min-height:180px;
}


/*
------ the CAROUSEL per WOOCOMMERCE ---------------------------------------------------------------------
*/
.the_carousel.woocommerce {
	clear:both; float:none;
	border:1px solid black;
	min-height:0 !important;
	height:auto !important;
}
.the_carousel.woocommerce .owl-carousel {
	min-height:0 !important;
	height:auto !important;
}
.the_carousel.woocommerce .woocommerce-carousel {
	padding:0;
	margin:0 auto;
	list-style-type:none;
	border:1px solid red;
	min-height:0 !important;
	height:auto !important;
}
.the_carousel.woocommerce .woocommerce-carousel .product {
	overflow:hidden;
	background-image:none;
	border:1px solid yellow;
}
/* patch stile testo */
.the_carousel.woocommerce .woocommerce-carousel .product {
	text-align:center !important;
	font-size:16px !important;
}
.the_carousel.woocommerce .woocommerce-carousel .product a {
	text-decoration:none !important;
}
.the_carousel.woocommerce .woocommerce-carousel .product h2 {
	font-size:1em !important;
	padding:0.5em 0;
}
.the_carousel.woocommerce .woocommerce-carousel .product .price {
	font-size:.857em !important;
	margin-bottom:0.5em !important;
	display:block !important;
}
/* patch per blocco originale Woo dei prodotti */
div.crea-carosello li.wc-block-grid__product { max-width:none !important; }

/*
------ positioning NAVIGATION BLOCKS ---------------------------------------------------------------------
*/
.owl-controls {
	position:absolute; bottom:0; left:0;
	text-align:center;
	-webkit-tap-highlight-color:transparent;
	width:100%;
	height:100%;
}
.owl-nav {
	position:relative; top:50%; left:0;
	transform:translateY(-50%);
}
.owl-dots {
	position:relative; top:100%; left:0;
	transform:translateY(-30px);
}

/*
------ positioning NAVIGATION BLOCKS ( per ACF BLOCK ) ---------------------------------------------------------------------
*/
.incluso .owl-controls,
.acf-carouslider .owl-controls {
	margin-top:4px !important;
	position:relative; bottom:0; left:0;
	height:auto;
	width:100%; height:30px;
	padding-bottom:32px !important;
	border-bottom:1px dotted #ccc;
}
.incluso .owl-nav,
.acf-carouslider .owl-nav {
	position:absolute; top:0; left:0;
	width:100%; height:30px;
	transform:translateY(0%);
	padding-bottom:0;
}
.incluso .owl-dots,
.acf-carouslider .owl-dots {
	position:absolute; top:3px; left:40px;
	width:calc(100% - 80px);
	transform:translateY(0);
	padding-bottom:0;
}

.incluso .owl-controls .owl-prev,
.incluso .owl-controls .owl-next,
.acf-carouslider .owl-controls .owl-prev,
.acf-carouslider .owl-controls .owl-next {
	transform:translateY(0);
	width:30px; height:30px;
	background-size:9px 15px !important;
}
.incluso .owl-controls .owl-prev,
.acf-carouslider .owl-controls .owl-prev {
	background:url(images/owl-sx-dark.png) no-repeat center left;
	left:0;
}
.incluso .owl-controls .owl-next,
.acf-carouslider .owl-controls .owl-next {
	background:url(images/owl-dx-dark.png) no-repeat center right;
	right:0;
}


/*
------ STYLING PREV-NEXT ---------------------------------------------------------------------
*/
.owl-controls .owl-prev,
.owl-controls .owl-next {
	width:20px; height:35px;
	opacity:0.8;
	filter:alpha(opacity=80);
	transform:translateY(-50%);
}
.owl-controls .owl-prev {
	position:absolute; top:0; left:10px;
	background:url(images/owl-sx-dark.png);
	background-size:contain;
}
.owl-controls .owl-next {
	position:absolute; top:0; right:10px;
	background:url(images/owl-dx-dark.png);
	background-size:contain;
}
.owl-controls .owl-prev:hover,
.owl-controls .owl-next:hover {
	opacity:1;
	filter:alpha(opacity=100);
}
.owl-nav div {
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
}

/*
------ STYLING DOTS ---------------------------------------------------------------------
*/
.owl-nav .disabled {
	opacity:.5;
	cursor:default
}
.owl-dots {
	padding-bottom:10px;
}
.owl-dots .owl-dot {
	display:inline-block;
	zoom:1;
	*display:inline
}
.owl-dots .owl-dot span {
	width:10px;
	height:10px;
	margin:0 7px;
	background:red;
	display:block;
	-webkit-backface-visibility:visible;
	-webkit-transition:opacity 200ms ease;
	-moz-transition:opacity 200ms ease;
	-ms-transition:opacity 200ms ease;
	-o-transition:opacity 200ms ease;
	transition:opacity 200ms ease;
	-webkit-border-radius:30px;
	-moz-border-radius:30px;
	border-radius:30px;
	-webkit-box-shadow:none;
	   -moz-box-shadow:none;
	        box-shadow:none;
}
.owl-dots .owl-dot.active span,
.owl-dots .owl-dot:hover span {
	background:yellow;
	-webkit-box-shadow:0px 0px 3px #f25b05;
	   -moz-box-shadow:0px 0px 3px #f25b05;
	        box-shadow:0px 0px 3px #f25b05;
}


/*
=======================================================================================
=== Owl Carousel DEFAULT Animate ======================================================
=======================================================================================
*/
.owl-carousel .animated {
  -webkit-animation-duration:1000ms;
  animation-duration:1000ms;
  -webkit-animation-fill-mode:both;
  animation-fill-mode:both;
}
.owl-carousel .owl-animated-in {
  z-index:0;
}
.owl-carousel .owl-animated-out {
  z-index:1;
}
.owl-carousel .fadeOut {
  -webkit-animation-name:fadeOut;
  animation-name:fadeOut;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity:1;
  }

  100% {
    opacity:0;
  }
}
@keyframes fadeOut {
  0% {
    opacity:1;
  }

  100% {
    opacity:0;
  }
}

/* 
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  -webkit-transition:height 500ms ease-in-out;
  -moz-transition:height 500ms ease-in-out;
  -ms-transition:height 500ms ease-in-out;
  -o-transition:height 500ms ease-in-out;
  transition:height 500ms ease-in-out;
}

/* 
 *  Core Owl Carousel CSS File
 */
.owl-carousel {
  display:none;
  width:100%;
  -webkit-tap-highlight-color:transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position:relative;
  z-index:1;
}
.owl-carousel .owl-stage {
  position:relative;
  -ms-touch-action:pan-Y;
}
.owl-carousel .owl-stage:after {
  content:".";
  display:block;
  clear:both;
  visibility:hidden;
  line-height:0;
  height:0;
}
.owl-carousel .owl-stage-outer {
  position:relative;
  overflow:hidden;
  /* fix for flashing background */
  -webkit-transform:translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-controls .owl-nav .owl-prev,
.owl-carousel .owl-controls .owl-nav .owl-next,
.owl-carousel .owl-controls .owl-dot {
  cursor:pointer;
  cursor:hand;
  -webkit-user-select:none;
  -khtml-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
}
.owl-carousel.owl-loaded {
  display:block;
}
.owl-carousel.owl-loading {
  opacity:0;
  display:block;
}
.owl-carousel.owl-hidden {
  opacity:0;
}
.owl-carousel .owl-refresh .owl-item {
  display:none;
}
.owl-carousel .owl-item {
  position:relative;
  min-height:1px;
  float:left;
  -webkit-backface-visibility:hidden;
  -webkit-tap-highlight-color:transparent;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
}
.owl-carousel .owl-item img {
  /*display:block;
  width:100%;
  -webkit-transform-style:preserve-3d;*/
}
.owl-carousel.owl-text-select-on .owl-item {
  -webkit-user-select:auto;
  -moz-user-select:auto;
  -ms-user-select:auto;
  user-select:auto;
}
.owl-carousel .owl-grab {
  cursor:move;
  cursor:-webkit-grab;
  cursor:-o-grab;
  cursor:-ms-grab;
  cursor:grab;
}
.owl-carousel.owl-rtl {
  direction:rtl;
}
.owl-carousel.owl-rtl .owl-item {
  float:right;
}

/* No Js */
.no-js .owl-carousel {
  display:block;
}

/* 
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity:0;
  -webkit-transition:opacity 400ms ease;
  -moz-transition:opacity 400ms ease;
  -ms-transition:opacity 400ms ease;
  -o-transition:opacity 400ms ease;
  transition:opacity 400ms ease;
}
.owl-carousel .owl-item img {
  transform-style:preserve-3d;
}

/* 
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position:relative;
  height:100%;
  background:#000;
}
.owl-carousel .owl-video-play-icon {
  position:absolute;
  height:80px;
  width:80px;
  left:50%;
  top:50%;
  margin-left:-40px;
  margin-top:-40px;
  cursor:pointer;
  z-index:1;
  -webkit-backface-visibility:hidden;
  -webkit-transition:scale 100ms ease;
  -moz-transition:scale 100ms ease;
  -ms-transition:scale 100ms ease;
  -o-transition:scale 100ms ease;
  transition:scale 100ms ease;
}
.owl-carousel .owl-video-play-icon:hover {
  -webkit-transition:scale(1.3, 1.3);
  -moz-transition:scale(1.3, 1.3);
  -ms-transition:scale(1.3, 1.3);
  -o-transition:scale(1.3, 1.3);
  transition:scale(1.3, 1.3);
}
.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display:none;
}
.owl-carousel .owl-video-tn {
  opacity:0;
  height:100%;
  background-position:center center;
  background-repeat:no-repeat;
  -webkit-background-size:contain;
  -moz-background-size:contain;
  -o-background-size:contain;
  background-size:contain;
  -webkit-transition:opacity 400ms ease;
  -moz-transition:opacity 400ms ease;
  -ms-transition:opacity 400ms ease;
  -o-transition:opacity 400ms ease;
  transition:opacity 400ms ease;
}
.owl-carousel .owl-video-frame {
  position:relative;
  z-index:1;
}
