/* =============================================
** | OWL CAROUSEL | **
============================================= */
/*
 *  Owl Carousel - Core
 */
 .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;
    display: flex;
    align-content: center;
    align-items: center;
}
.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-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
}
.owl-carousel .owl-item img {
    display: block;
    width: 100%;
    /*max-width: 150px;*/
    /* margin: 15px auto; */
    margin: 15px 0;
    -webkit-transform-style: preserve-3d;
}
.owl-carousel .owl-nav.disabled {
    display: none;
}
.owl-carousel .owl-dots.disabled {
    /*display: none;*/
    opacity: 0;
}
.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-dot {
    cursor: pointer;
    cursor: hand;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.owl-carousel.owl-loaded {
    display: block;
}
.owl-carousel.owlf.owl-loaded {
    display: none;
}
.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-drag .owl-item {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.owl-carousel.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: -moz-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 - Animate Plugin
 */
.owl-carousel .animated {
    -webkit-animation-duration: 1000ms;
    -moz-animation-duration: 1000ms;
    -o-animation-duration: 1000ms;
    animation-duration: 1000ms;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -o-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;
    -moz-animation-name: fadeOut;
    -o-animation-name: fadeOut;
    animation-name: fadeOut;
}
 @-webkit-keyframes fadeOut {
 0% {
 opacity: 1;
}
 100% {
 opacity: 0;
}
}
 @-moz-keyframes fadeOut {
 0% {
 opacity: 1;
}
 100% {
 opacity: 0;
}
}
 @-o-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;
    -o-transition: height 500ms ease-in-out;
    -moz-transition: height 500ms ease-in-out;
    transition: height 500ms ease-in-out;
}
/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    -moz-transition: opacity 400ms ease;
    transition: opacity 400ms ease;
}
.owl-carousel .owl-item img.owl-lazy {
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    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;
    background: url("owl.video.play.png") no-repeat;
    cursor: pointer;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transition: -webkit-transform 100ms ease;
    transition: -webkit-transform 100ms ease;
    -o-transition: -o-transform 100ms ease;
    -moz-transition: transform 100ms ease, -moz-transform 100ms ease;
    transition: transform 100ms ease;
    transition: transform 100ms ease, -webkit-transform 100ms ease, -moz-transform 100ms ease, -o-transform 100ms ease;
}
.owl-carousel .owl-video-play-icon:hover {
    -webkit-transform: scale(1.3, 1.3);
    -moz-transform: scale(1.3, 1.3);
    -ms-transform: scale(1.3, 1.3);
    -o-transform: scale(1.3, 1.3);
    transform: 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;
    background-size: contain;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    -moz-transition: opacity 400ms ease;
    transition: opacity 400ms ease;
}
.owl-carousel .owl-video-frame {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%;
}
/*
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
    margin-top: 10px;
    text-align: center;
    -webkit-tap-highlight-color: transparent;
}
.owl-theme .owl-nav [class*='owl-'] {
    color: #FFF;
    font-size: 14px;
    margin: 5px;
    padding: 4px 7px;
    background: #D6D6D6;
    display: inline-block;
    cursor: pointer;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
.owl-theme .owl-nav [class*='owl-']:hover {
    background-color: transparent;
    color: #FFF;
    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;
}
.owl-theme .owl-dots .owl-dot span {
    margin: 5px 7px;
    background: transparent;
    border: 2px solid #D6D6D6;
    width: 6px;
    height: 6px;
    display: block;
    -webkit-backface-visibility: visible;
    -webkit-transition: opacity 200ms ease;
    -o-transition: opacity 200ms ease;
    -moz-transition: opacity 200ms ease;
    transition: opacity 200ms ease;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
    background: #D6D6D6;
}
.owl-theme .owl-nav {
    margin-top: 10px;
    text-align: center;
    -webkit-tap-highlight-color: transparent;
}
.owl-theme .owl-nav [class*='owl-'] {
    color: #FFF;
    font-size: 14px;
    margin: 5px;
    padding: 4px 7px;
    background: #D6D6D6;
    display: inline-block;
    cursor: pointer;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
.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;
}
.owl-theme .owl-dots .owl-dot span {
    margin: 5px 7px;
    background: transparent;
    border: 2px solid #005aa9;
    width: 10px;
    height: 10px;
    display: block;
    -webkit-backface-visibility: visible;
    -webkit-transition: opacity 200ms ease;
    -o-transition: opacity 200ms ease;
    -moz-transition: opacity 200ms ease;
    transition: opacity 200ms ease;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
    background: #005aa9;
}
.slide-carousel.active .owl-nav, body main .slide-fattif.active .owl-nav {
    display: block;
}
.classic-carousel .owl-nav {
    top: -280px;
}

/*CONTROLS */
body main .controls {
    /* position: relative; */
    margin-top: 0px;
    display: table;
    margin: 0 auto;
    margin-bottom: 50px;
    padding-left: 7.5px;
}

@media only screen and (min-width: 40.063em) and (max-width: 64em) {
    body main .controls {
        position: static;
    }
}

@media only screen and (min-width: 0) and (max-width: 40em) {
    body main .controls {
        /* position: static; */
        /*-webkit-transform: translateY(0%);
        -moz-transform: translateY(0%);
        -ms-transform: translateY(0%);
        -o-transform: translateY(0%);
        transform: translateY(0%);*/
        /*margin-top: 0px;*/
        /*margin-bottom: 20px;*/
        /* display: table;/*margin: 0 auto; */
        /* padding-left: 7.5px;*/ 
    }
}
body main .controls .ctrl, body main .controls .ctrlf {
	height: 100px;
	width: 100px;
	font-size: 10px;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 50px;
	border: 1px solid #81818D;
	background-color: #dee3f3;
	/* margin-bottom: 20px; */
	cursor: pointer;
	text-align: center;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	position: relative;
	float: left;
	margin-right: 15px;
	font-family: "OswaldBook";
	line-height: 96px;
	vertical-align: middle;
}
body main .controls .ctrl:last-child, body main .controls .ctrlf:last-child {
    margin-right: 0 !important;
}

body main .controls .ctrl.orange {
    background-color: #ffe3ce;
}
body main .controls .ctrl.orange span {
    color: #ce5f0d;
}
body main .controls .ctrl.orange.active span, body main .controls .ctrlf.orange.active span{
    color: #fff;
}
body main .controls .ctrl.orange:hover, body main .controls .ctrlf.orange:hover {
    border: 1px solid #ce5f0d;
}
body main .controls .ctrl.orange.active, body main .controls .ctrlf.orange.active {
    border: 1px solid #ce5f0d;
    background-color: #ce5f0d;
}


@media only screen and (min-width: 40.063em) and (max-width: 64em) {
body main .controls .ctrl, body main .controls .ctrlf {
    float: left;
    margin-right: 15px;
}
}

@media only screen and (min-width: 0) and (max-width: 40em) {
body main .controls .ctrl, body main .controls .ctrlf {
    float: left;
    margin-right: 15px;
}
}
body main .controls .ctrl span, body main .controls .ctrlf span {
    font-size: 12px;
    vertical-align: middle;
    color: #81818D;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    color: #165aa9;
    display: inline-block;
    line-height: normal;
}

body main .controls .ctrl:hover, body main .controls .ctrlf:hover {
    border: 1px solid #005aa9;
}
body main .controls .ctrl:hover span, body main .controls .ctrlf:hover span {
    color: #005aa9;
}
body main .controls .ctrl.active, body main .controls .ctrlf.active {
    border: 1px solid #005aa9;
    background-color: #005aa9;
}
body main .controls .ctrl.active span, body main .controls .ctrlf.active span {
    color: #fff;
}
body main .controls .ctrl.active:hover span, body main .controls .ctrlf.active:hover span {
    color: #fff;
}
body main .controls .ctrl .tooltip, body main .controls .ctrlf .tooltip {
    position: absolute;
    z-index: 9999;
    bottom: 80px;
    left: -1px;
    font-size: 14px;
    padding: 15px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: 300%;
    height: auto;
    border: 1px solid #454347;
    background-color: #fff;
    -webkit-box-shadow: 6px 8px 15px -9px #4f4f4f;
    -moz-box-shadow: 6px 8px 15px -9px #4f4f4f;
    box-shadow: 6px 8px 15px -9px #4f4f4f;
    display: none;
}
body main .controls .ctrl.ctrl4 .tooltip, body main .controls .ctrl.ctrl5 .tooltip, body main .controls .ctrlf.ctrl3f .tooltip, body main .controls .ctrlf.ctrl4f .tooltip {
    left: initial;
    right: 0px;
}
body main .controls .ctrl .tooltip:after, body main .controls .ctrlf .tooltip:after {
    position: absolute;
    bottom: -10px;
}
body main .controls .ctrl:hover .tooltip, body main .controls .ctrlf:hover .tooltip {
    display: block;
}

body main .owl-controls {
    position: relative;
}

.owl-carousel .owl-nav {
    
}
.owl-carousel .owl-nav button.owl-next {
    background-image: url(../img/ico/Freccia_RIGHT_Blu.png);
    position: absolute;
    right: 0px;
    top: 45%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    height: 70px;
    width: 60px;
    background-color: transparent;
    background-size: 40px 70px;
    -webkit-background-size: 40px 70px;
    -moz-background-size: 40px 70px;
    text-indent: -9999px;
}
.owl-carousel .owl-nav button.owl-prev  {
    background-image: url(../img/ico/Freccia_LEFT_Blu.png);
    background-position:left;
    position: absolute;
    left: 0px;
    top: 45%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    height: 70px;
    width: 60px;
    background-color: transparent;
    background-size: 40px 70px;
    -webkit-background-size: 40px 70px;
    -moz-background-size: 40px 70px;
    text-indent: -9999px;
}

.sostenibilita-carousel{
    width: calc(100% - 140px);
    margin:auto;
}
.sostenibilita-carousel.owl-carousel .owl-nav button.owl-prev{
    left: -70px;

}
.sostenibilita-carousel.owl-carousel .owl-nav button.owl-next{
    right: -70px;
}

@media only screen and (min-width: 0) and (max-width: 40em) {
body main .controls .ctrl .tooltip, body main .controls .ctrlf .tooltip {
    position: absolute;
    margin-top: -60px;
    /*width: calc(100% - 40px);*/
    /*width: 150%;*/
    height: auto;
}
}

@media only screen and (min-width: 0) and (max-width: 40em) {
    body main .controls .ctrl.ctrl5 .tooltip, body main .controls .ctrlf.ctrl5f .tooltip {
        left: initial;
        right: 0px;
    }
}

@media only screen and (max-width: 780px) {
    body main .controls .ctrl, body main .controls .ctrlf {
        height: 40px;
        width: 40px;
    }
    body main .controls .ctrl, body main .controls .ctrlf {
        margin-right: 5px;
    }
    body main .controls .ctrl span, body main .controls .ctrlf span {
        font-size: 20px;
        line-height: 40px;
    }
    body main .controls .ctrl .tooltip, body main .controls .ctrlf .tooltip {
        bottom: 50px;
        left: -1px;
        font-size: 12px;
        padding: 10px;
        width: 300%;
        height: auto;
    }
    .owl-carousel .owl-nav button.owl-next {
        background-position: center;
        height: 70px;
        width: 10px;
        background-size: 10px 30px;
        -webkit-background-size: 10px 30px;
        -moz-background-size: 10px 30px;
    }
    .owl-carousel .owl-nav button.owl-prev  {
        background-position: center;
        height: 70px;
        width: 10px;
        background-size: 10px 30px;
        -webkit-background-size: 10px 30px;
        -moz-background-size: 10px 30px;
    }



    /*CONTENT NEED TO BE MOVED*/
    .slideshow-group.riduzione-immagini .highlits-slideshow-box img {
        margin: auto;
    }   
    .slideshow-group.riduzione-immagini .highlits-slideshow-box {
        padding: 0 10px;
        margin: auto;
        display: block;
        text-align: center;
    }    
    .ctrl span {
        display: none !important;
    }

    body main .controls {
        /* position: relative; */
        margin-top: 0px;
        display: block;
        margin: 0 auto;
        margin-bottom: 50px;
        padding-left: 7.5px;
        margin: 0;
    }

    body main .controls .ctrl, body main .controls .ctrlf {
        height: 100px;
        width: calc(100vw / 8) !important;
        float: left;
        margin: 0 !important;
    }
}
