@import url("../fonts/Raleway/stylesheet.css");
@import url("../fonts/Bellezza/stylesheet.css");
@import url("../fonts/Redhatdisplay/stylesheet.css");


:root{
	--main-bg-color: #F3EEE7;
	--verde:#21372D;
	--viola:#5D2B4D;
	--title-color:#21372D;
	--text-color:#747474;
	--text-color-light:#ffffff;
	--gold:#C4A26C;
	--menulight: #C6BEAC;
	--menudark: #707070;

	--mainfont: 'Raleway', sans-serif;
	--titlefont: 'Belleza', 'Raleway', sans-serif;
	--menufontfamily: 'Red Hat Display', 'Raleway', sans-serif;
	--buttonfontfamily: 'Red Hat Display', 'Raleway', sans-serif;
	--main-font-size: 16px;
	--main-line-height:26px;
	--button-font-size: 12px;
	--button-line-height: 20px;

	/*	slider */
	--titolo-slider: 88px;
	--line-height-slider: 80px;
	@media (max-width: 1920px){
		--titolo-slider:calc(48px + (88 - 48) * ((100vw - 300px) / (1920 - 300)));
		--line-height-slider: calc(40px + (80 - 40) * ((100vw - 300px) / (1920 - 300)));
	}
	--slider-font-size: 20px;
	--slider-line-height: 26px;

	/* titoli */
	--titolo1: 60px;
	--line-height1: 60px;
	@media (max-width: 1920px){
		--titolo1:calc(40px + (60 - 40) * ((100vw - 300px) / (1920 - 300)));
		--line-height1: calc(40px + (60 - 40) * ((100vw - 300px) / (1920 - 300)));
	}
	--titolo2: 44px;
	--line-height2: 44px;
	@media (max-width: 1920px){
		--titolo2:calc(34px + (44 - 34) * ((100vw - 300px) / (1920 - 300)));
		--line-height2: calc(34px + (44 - 34) * ((100vw - 300px) / (1920 - 300)));
	}
	--titolo3: 28px;
	--line-height3: 28px;
	@media (max-width: 1920px){
		--titolo3:calc(22px + (28 - 22) * ((100vw - 300px) / (1920 - 300)));
		--line-height3: calc(22px + (28 - 22) * ((100vw - 300px) / (1920 - 300)));
	}
	--titolo4: 20px;
	--line-height4: 32px;
	@media (max-width: 1920px){
		--titolo4:calc(18px + (20 - 18) * ((100vw - 300px) / (1920 - 300)));
		--line-height4: calc(28px + (32 - 28) * ((100vw - 300px) / (1920 - 300)));
	}
}

body{
	background-color: var(--main-bg-color);
	font-family: var(--mainfont);
	font-size: var(--main-font-size);
	line-height: var(--main-line-height);
	font-weight: 500;
	background-image:url(../img/sfondo-body.png);
	background-position: left top;
	background-size: 100% auto;
	background-repeat: repeat;
	color: var(--text-color);
	letter-spacing: 0.5px;
	background-position: left 100vh;
}
/*body.home{
	background-position: left 100vh;
}*/
@media (min-width: 1400px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1370px;
    }
}
/*container per le pagine post più strette*/
.container-small{
	max-width: 992px;
	max-width: 900px;
}
.titolo, h1, h2, h3, h4, h5{
	font-family: var(--titlefont);
	text-transform: uppercase;
	font-weight: normal;
	color: var(--verde);
}
.titolo1, h1{
	font-weight: var(--font-weight-regular);
	font-size: var(--titolo1);
	line-height: var(--line-height1);
}
.titolo2, h2{
	font-weight: var(--font-weight-regular);
	font-size: var(--titolo2);
	line-height: var(--line-height2);
}
.titolo3, h3{
	font-weight: var(--font-weight-regular);
	font-size: var(--titolo3);
	line-height: var(--line-height3);
}
.titolo4, h4{
	font-weight: var(--font-weight-regular);
	font-size: var(--titolo4);
	line-height: var(--line-height4);
}
.main-title{
	color: var(--title-color);
	letter-spacing: 0;
}
.occhiello{
	margin-bottom: 1rem;
	font-size: var(--titolo4);
	line-height: var(--line-height4);
	letter-spacing: 1px;
	font-family: var(--mainfont);
	text-transform: uppercase;
	font-weight: var(--font-weight-medium);
}
.lowercase{
	text-transform: lowercase;
}
* :focus-visible{
	outline: 2px solid var(--gold) !important;
}

.left-top{
	background-position:left top;
}
.center-top{
	background-position:center top;
}
.right-top{
	background-position:right top;
}
.left-center{
	background-position:left center;
}
.center-center{
	background-position:center center;
}
.right-center{
	background-position:right center;
}
.left-bottom{
	background-position:left bottom;
}
.center-bottom{
	background-position:center bottom;
}
.right-bottom{
	background-position:right bottom;
}
.ds-component .text-area .main-title{
	font-weight: var(--font-weight-regular);
}
.ds-component{
	background-repeat: no-repeat;
}
.bg-viola{
	background-color: var(--viola);
	color:var(--text-color-light);
}
.bg-viola .main-title{
	color:var(--text-color-light);
}
.bg-verde{
	background-color: var(--verde);
	color:var(--text-color-light);
}
.bg-verde .main-title,.bg-verde .h1, .bg-verde h2, .bg-verde h3, .bg-verde h4{
	color:var(--text-color-light);
}
.bg-transparent{
	background-color: transparent!important;
}
.bg-beige{
	background-color: var(--main-bg-color)!important;
}
.verde{
	color:var(--verde);
}
.oro{
	color:var(--gold);
}
.section-padding{
	padding: 7vw;
}
.ds-component{
	padding-top: 5vw;
	padding-bottom: 5vw;
/*	background-repeat: no-repeat;*/
}
.blocco-contenitore .ds-component{
	padding:0;
}

/*Menu*/
@media (min-width:1200px){
	.top.ds-component .navbar-header{
		position: absolute;
		background: transparent;
	}
}
@media (max-width: 1199px) {
    .top.ds-component .navbar-header {
    	background-color: var(--main-bg-color);
    }
}
.nav .logo-split a:hover{
	display: inline-block;
	top: 0;
}
.nav .logo-split img{
	max-height: 123px;
}
.top.ds-component .super-top-mobile .logo img{
	height: 55px;
    width: auto;
    margin: 10px 0;
}
.navbar-header{
	padding:20px 0;
	font-family: var(--menufontfamily);
}
.top.ds-component .navbar-header .menu-wrapper .nav li a span, .top.ds-component .navbar-header .menu-wrapper .nav li .open-sub{
	color: var(--menulight);
}
.top.ds-component .navbar-header .menu-wrapper .nav li a, .top.ds-component .navbar-header .menu-wrapper .nav li .open-sub{
	color: var(--menulight);
	z-index: 1000;
}
@media (max-width: 1199px) {
    .top.ds-component .navbar-header .menu-wrapper .nav li a, .top.ds-component .navbar-header .menu-wrapper .nav li a span, .top.ds-component .navbar-header .menu-wrapper .nav li .open-sub{
    	color:var(--verde);
    	z-index: auto;
    }

}
.submenu-opened .top.ds-component .navbar-header .menu-wrapper .nav li a span, .submenu-opened .top.ds-component .navbar-header .menu-wrapper .nav li .open-sub{
	color: var(--verde);
}
.navbar-header .menu-logo-centrato .menu-wrapper .nav{
	align-items: center;
}
.top.ds-component .navbar-header .menu-wrapper .nav li .sub-menu{
	top: 0;
	padding-top: 155px;
	background-color: var(--main-bg-color);
}

/*slider*/
.full-width-slider{
	height: 100vh;
	color: #fff;
}
.full-width-slider .swiper-wrapper .text-area .main-title{
	letter-spacing: 3px;
	font-size: var(--titolo-slider);
	line-height: var(--line-height-slider);
	color: var(--text-color-light);
}
.full-width-slider .swiper-wrapper .text-area .categoria{
	font-size: var(--slider-font-size);
	line-height: var(--slider-line-height);
	font-weight: var(--font-weight-medium);
	color: #fff;
}
.full-width-slider .swiper-wrapper .swiper-slide.overflow-layer:before{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,ffffff+100&0.6+0,0+100 */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.6) 0%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.6) 5%,rgba(255,255,255,0) 35%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.full-width-slider .swiper-wrapper .swiper-slide.overflow-layer:after{
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+60,000000+100&0+60,0.6+100 */
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 60%,rgba(0,0,0,0.6) 90%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

/*testata pagina*/
.ds-component.header-banner{
	background-color: var(--verde);
}
@media (min-width:992px){
	.ds-component.header-banner{
		padding-top:315px;
/*		padding-top: 16vw;*/
		padding-bottom: 50px!important;
	}
}

/*text area*/
.ds-component .text-area .main-title{
	font-size: var(--titolo1);
	line-height: var(--line-height1);
}
.ds-component.text-component .text-block .text-area .main-title{
	font-weight: var(--font-weight-normal);
	font-size: var(--titolo2);
	line-height: var(--line-height2);
}
.ds-component.text-component .text-block .text-area .subtitle{
	font-weight: var(--font-weight-normal);
	font-size: var(--titolo3);
	line-height: var(--line-height3);
}
.ds-component.text-component .text-block .text-area .ds-btn{
	margin-top: 0;
}
.ds-component .text-area .contenuto h2, .ds-component .text-area .contenuto h3, .ds-component .text-area .contenuto h4, .ds-component .text-area .contenuto h5{
	margin-top: 0;
	margin-bottom: 25px;
}
/*.blocco-immagine-testo + .blocco-immagine-testo{
	padding-top: 0;
}*/
.contenitore-immagine-testo .blocco-immagine-testo{
	padding-top:0;
	padding-bottom: 0;
}
.contenitore-immagine-testo .blocco-immagine-testo + .blocco-immagine-testo{
	padding-top:77px;
}
.blocco-immagine-testo.pb-0 + .blocco-immagine-testo.pt-0{
	padding-top: 77px!important;
}
.ds-component .text-area .contenuto .wp-block-columns {
	margin-top:50px;
}
@media (min-width: 782px){
	.ds-component .text-area .contenuto .wp-block-columns .wp-block-column {
		position: relative;
		flex-basis: auto;
	}
	.ds-component .text-area .contenuto .wp-block-columns .wp-block-column:not(:first-child):before{
		content: '';
	    width: 1px;
	    height: 100%;
	    background: #ccc;
	    position: absolute;
	    top: 0;
	    left: -1em;
	}
}

/*mosaic*/
.mosaic-block{
	padding: 0;
}
.ds-component.wrapper-mosaic-block .text-block .img-area{
	overflow: visible;
}
@media (min-width:992px){
	.ds-component.wrapper-mosaic-block .mosaic-block .wrap-text-area{
		padding:100px 10% 70px 0;
		padding-left: calc(var(--bs-gutter-x) * 0.5);
	}
	.ds-component.text-component .text-block .wrap-text-area.order-lg-1{
		padding-left: 0;
		padding-left: calc(var(--bs-gutter-x) * 0.5);
		padding-right: 10%;
	}
	.wrapper-mosaic-block .mosaic-block picture{
		display: inline-block;
		position: relative;
		margin-top:-70px;
		margin-bottom:auto;
		width: 100%;
	}
	.wrapper-mosaic-block .mosaic-block:nth-child(odd) picture{
		margin-bottom:-70px;
		margin-top:auto;
	}
	.ds-component.wrapper-mosaic-block .mosaic-block:nth-child(odd) .wrap-text-area{
		padding: 70px 0 100px 10%;
		padding-right: calc(var(--bs-gutter-x) * 0.5);
	}
	.ds-component.text-component .text-block .wrap-text-area.order-lg-2{
		padding-right: 0;
		padding-right: calc(var(--bs-gutter-x) * 0.5);
		padding-left: 10%;
	}
}

/*btn consorzio*/
.btn-consorzio{
	padding-left: 0;
	padding-right: 0;
    margin-top: 0;
    color: var(--text-color);
    font-size: var(--button-font-size);
    line-height: var(--button-line-height);
    font-family: var(--buttonfontfamily);
    letter-spacing: 1px;
    text-transform: uppercase;
}
.bg-verde .btn-consorzio, .bg-viola .btn-consorzio{
	color: var(--text-color-light);
}
.btn-consorzio:hover{
	color: var(--verde);
}
.bg-verde .btn-consorzio:hover, .bg-viola .btn-consorzio:hover{
	color: var(--gold);
}
.btn-consorzio span{
	display: inline-block;
	position: relative;
	padding-right: 18px;
	overflow: hidden;
	-webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.btn-consorzio:hover span{
	padding-left: 18px;
}
.btn-consorzio span:before{
	content: '';
    width: 0;
    height: 0;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -8px;
    margin-top: -6px;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 6px solid var(--text-color);
}
.bg-verde .btn-consorzio span:before, .bg-viola .btn-consorzio span:before{
	border-left: 6px solid var(--text-color-light);
}
.btn-consorzio:hover span:before{
	left: 0;
}
.btn-consorzio span:after{
	content: '';
	width: 6px;
	height: 6px;
	border-radius: 3px;
	background-color: var(--text-color);
	display: inline-block;
	position: absolute;
	top:50%;
	right: 0;
	margin-top: -3px;
	-webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.bg-verde .btn-consorzio span:after, .bg-viola .btn-consorzio span:after{
	background-color: var(--text-color-light);
}
.btn-consorzio:hover span:after{
	right: -10px;
}

.visually-hidden, .visually-hidden-focusable:not(:focus):not(:focus-within) {
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption), .visually-hidden:not(caption) {
    position: absolute !important;
}

.btn-consorzio-verde{
	background-color: var(--verde);
	color: var(--text-color-light);
	border: none;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: var(--font-weight-medium);
	letter-spacing: 1px;
}
.btn-consorzio-verde:hover, .btn-consorzio-verde:focus{
	background-color: var(--gold);
	color: var(--title-color);
}
.btn-consorzio-viola{
	background-color: var(--viola);
	color: var(--text-color-light);
	border: none;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: var(--font-weight-medium);
	letter-spacing: 1px;
}
.btn-consorzio-viola:hover, .btn-consorzio-viola:focus{
	background-color: var(--gold);
	color: var(--title-color);
}
.btn-consorzio-gold{
	background-color: var(--gold);
	color: var(--title-color);
	border: none;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: var(--font-weight-medium);
	letter-spacing: 1px;
}
.btn-consorzio-gold:hover, .btn-consorzio-gold:focus{
	color: var(--text-color-light);
	background-color: var(--verde);
}

/*form*/
.ds-form .ds-form-area .form-control{
	border-radius: 0;
}

/*video*/
.wrapper-video{
	position: relative;
}
.video-full{
	width: 100%;
	height: auto;
}
.video{
    /*width: 100%;
    height: 100%;
    position: relative;
    font-family: var(--secondary-font-family);*/
}
.video-full{
    /*height: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;*/
}
.video .copertina{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.video .copertina.hidden{
    display: none;
}
.video-full.hidden{
    display: none;
}
.video .copertina img{
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.play-video{
    position:absolute;
    bottom:50px;
    bottom:40px;
    right: 50px;
    z-index: 4;
    cursor:pointer;
/*    background: #f00;*/
    width: 70px;
    height: 70px;
}
.play-video svg.play{
    fill:#fff;
    height: 23px;
    position: absolute;
    top: 22px;
    left: 27px;
}
.play-video svg.pausa{
    fill:#fff;
    height: 23px;
    position: absolute;
    top: 22px;
    left: 27px;
}
.play-video svg.pausa{
    display: none;
}
.play-video.playing svg.pausa{
    display: inline-block;
}
.blocco-video .play-video{
    position: absolute;
    top:0;
    left: 0;
    right: auto;
    bottom: auto;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
}
.blocco-video .play-circle{
    width: 70px;
    height: 70px;
    border: 1px solid #fff;
    border-radius: 50%;
    position: relative;
}
.play-video.playing svg.play{
    display: none;
}
.blocco-video .play-video.playing{
    opacity: 0;
}


/*carosello*/
.carousel-component .carousel-swiper .swiper-slide .wrap-slide-el .main-title{
	font-weight: var(--font-weight-regular)!important;
	font-size: var(--titolo3);
	line-height: var(--line-height3);
	color: var(--title-color);
}
.carousel-component .carousel-swiper .swiper-slide{
	width: calc(25% - 11px);
	min-width: 308px;
	max-width: none;
	margin:0;
/*	margin-right: 16px;*/
	background-color: transparent;
}
@media (min-width:992px){
	.carousel-component .carousel-swiper.col-3 .swiper-slide{
		width: calc(33% - 11px);
	}
}
.carousel-component .carousel-swiper .swiper-wrapper{
	gap: 16px;
}
.card-A .card-el .text-area p{
	line-height: 26px;
}
.carousel-component  .carousel-text{
	margin-bottom: 4vw;
}
.card-A .navigation-carousel{

}
.card-A .card-el .text-area{
	padding-left: 0;
	padding-top: 48px;
}
.carousel-component .carousel-swiper.card-A  .swiper-slide .wrap-slide-el .text-area{
	padding-top:0;
}
.carousel-component .carousel-swiper.card-A  .swiper-slide .wrap-slide-el .img-area + .text-area{
	padding-top:45px;
}
.card-B .card-el {
    padding: 40px 50px;
    border: 1px solid var(--verde);
}
.card-B .card-el .text-area .main-title{
	font-weight: var(--font-weight-regular)!important;
	font-size: var(--titolo3);
	line-height: var(--line-height3);
	color: var(--title-color);
}


/*footer*/
.ds-dropdown .dropDownBlock{
	margin:0;
}
.ds-dropdown .dropDownBlock .dropDownButton{
	padding:20px 0;
}
.pre-footer .dropDownButton{
	justify-content: center;
	position: relative;
}
.pre-footer .dropDownButton svg{
	position: absolute;
    right: 40px;
    top: 50%;
}
.pre-footer .dropDownEl img{
	width: auto;
}
.ds-dropdown .dropDownBlock .text-area{
	padding: 10px 50px 20px 0;
}
.dropDownButton .ds-icon{
	width: 23px;
	height: 23px;
}
.dropDownButton .ds-icon.close{
	display: none;
}
.dropDownButton .ds-icon.open{
	display: inline-block;
}
.dropDownButton.visibleEl .ds-icon.open{
	display: none;
}
.dropDownButton.visibleEl .ds-icon.close{
	display: inline-block;
}
.ds-dropdown .dropDownBlock{
	border-color: #B2B2B2;
	border-left: none;
	border-right: none;
	border-radius: 0;
	margin-top: -1px;
}
/*.pre-footer.ds-dropdown .dropDownBlock{
	border:none;
	border-top:1px solid #DAD9D7;
}*/
.pre-footer .dropDownButton .ds-icon{
	width: 56px;
	height: 56px;
}
.pre-footer .dropDownButton svg{
    margin-top:-28px!important;
}
.pre-footer .dropDownButton img{
	filter: grayscale(1);
	mix-blend-mode: multiply;
	-webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.pre-footer .dropDownButton.visibleEl img{
	filter: grayscale(0);
	mix-blend-mode: multiply;
}

.ds-footer.footer-varA .footer-logo img{
	max-width: 128px;
}
.ds-footer.footer-varA,
.ds-footer.footer-varA.ds-footer-second-footer{
	background-color: transparent;
}
.ds-footer.footer-varA.ds-footer-second-footer{
	padding-top:20px!important;
}

.ds-footer{
	font-size: 15px;
	color: var(--menulight)!important;
}
footer{
	position: relative;
}
footer a{
	color: var(--menulight);
}
footer a:hover, footer a:focus{
	color: var(--gold);
}
.footer-padding{
	padding-top: 50px;
	padding-bottom:50px;
}
.footer-sidebar{
	padding-left: 15px;
    padding-right: 15px;
    font-size: 13px;
    line-height: 23px;
    color: var(--main-bg-color);
}
.footer-sidebar h2, .footer-sidebar h3{
	font-size: 16px;
	line-height: 21px;
}

.ds-footer-second-footer .text-area a{
	font-size: 16px;
	color: var(--text-color-light);
}
.ds-footer.footer-varA .list-link li{
	margin-bottom: 5px;
}
.ds-footer.footer-varA .text-area a{
	margin-bottom: 25px;
}
.footer-bottom{
	position: relative;
}
.footer-bottom{
	color: var(--text-color-light);
	font-size: 16px;
	line-height: 22px;
	background-color: #192922;
	letter-spacing: 1px;
}
@media (min-width:993px){
	.footer-bottom{
		width: 100%;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.footer-sidebar{
	    height: 100%;
	    position: relative;
	    z-index: 50;
	    padding-bottom: 100px;
	}
	.padding-bottom-footer{
		padding-bottom:60px;
/*		padding-right: 60px;*/
	}
	.footer-sidebar:after{
		content:'';
		width: 50vw;
		height: 100%;
		background-color: var(--viola);
		position: absolute;
		top: 0;
		left: -40px;
		z-index: -1;
	}
}
.footer-bottom .footer-menu .list-link li{
	display: inline-block;
	width: auto;
	margin-right: 20px;
	margin-bottom: 0;
}
.ds-footer-second-footer{
	
}
.ds-footer p{
	margin-bottom:0;
}
.footer-bottom .footer-menu a{
	color: var(--text-color-light);
	text-decoration: none;
}
.footer-bottom .footer-menu .super-bottom{
	padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    padding-top: 20px;
    padding-bottom: 20px;
}
@media (max-width: 992px) {
    .ds-footer.footer-varA.ds-footer-second-footer .list-link {
         margin-top: 0; 
         margin-bottom:20px;
         padding-top: 0; 
         border:none;
    }
    .ds-footer.footer-varA .footer-logo{
    	border:none;
    	text-align: center;
    }
}
.footer-social{
	align-items: center;
	padding-top: 70px !important;
	padding-bottom: 50px;
}
.footer-social p{
	text-transform: uppercase;
}
.ds-footer.footer-varA .list-social li{
	margin-top: 0!important;
	margin-left: 10px!important;
}
.ds-footer.footer-varA .list-social li a{
	width: auto;
	height: auto;
	background-color: transparent;
}
.ds-footer.footer-varA .list-social .ds-icon{
	fill:var(--menulight);
}
.ds-footer .footer-social .list-link{
	padding-left: 30px;
	padding-right: 0;
	margin-bottom:0!important;
}

/*newsletter*/
.mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper input.input, .mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper input[type=submit],
.mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper select.input, .mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper textarea.input{
	box-shadow: none;
    border-radius: 0;
    font-weight: var(--font-weight-regular);
    height: 56px;
    padding: 8px 12px 6px;
    border:1px solid #f2f2f2;
    background-color: #ffffff;
}
.mailster-block-form .mailster-wrapper-inline label.mailster-label{
	font-size: var(--main-font-size);
    font-family: var(--main-font-family);
    font-weight: var(--font-weight-regular);
    letter-spacing: 0;
    padding-left: 12px;
}
.footer-newsletter .mailster-block-form-inner{
	gap:15px;
}
.footer-newsletter .mailster-block-form-inner .mailster-wrapper{
	flex:1;
}
.footer-newsletter .mailster-block-form-inner .wp-block-mailster-messages, .footer-newsletter .mailster-block-form-inner .wp-block-mailster-gdpr{
	flex:auto;
}
.mailster-block-form-inner .submit-button,
.mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper input[type=submit]{
	background-color: var(--verde);
    color: var(--text-color-light);
    border: none;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: var(--font-weight-medium);
    letter-spacing: 1px;
}
.mailster-block-form-inner .submit-button:hover, .mailster-block-form-inner .submit-button:focus,
.mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper input[type=submit]:hover, .mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper input[type=submit]:focus{
    background-color: var(--gold);
    color: var(--title-color);
}
.mailster-block-form-inner input:focus,
.mailster-block-form.wp-block-mailster-form-wrapper .mailster-block-form-inner .mailster-wrapper input:focus {
    border-color: #0478D0;
}
.mailster-block-form .mailster-wrapper-inline input.input:focus+label.mailster-label, .mailster-block-form .mailster-wrapper-inline input.input:not(:placeholder-shown)+label.mailster-label, .mailster-block-form .mailster-wrapper-inline textarea.input:focus+label.mailster-label, .mailster-block-form .mailster-wrapper-inline textarea.input:not(:placeholder-shown)+label.mailster-label{
	display: inline-block;
	top: -3px;
	font-size: 12px;
}



.map-container .geo_btn{
	display: none;
}
.map-container #map{
	margin-top:0;
}
.bg-verde .titolo3{
	color: #fff;
}
.top.ds-component .navbar-header .menu-wrapper .nav li .sub-menu.change-img-on-hover .megamenu-img .megamanu-img-wrap{
	aspect-ratio: 8 / 8;
}
.top.ds-component .navbar-header .menu-wrapper .nav li .sub-menu .sub-menu-wrap .main-tree-link{
	margin-top:35px;
}
.top.ds-component .navbar-header .menu-wrapper .nav li .sub-menu .sub-menu-wrap .main-tree-link .sub-nav li{
	width: auto;
}

/*.ds-component.timeline-component .timeline-element .element-wrapper .main-title{
	font-weight: var(--font-weight-regular) !important;
	font-size: var(--titolo3);
	line-height: var(--line-height3);
	color: var(--title-color);
}
.ds-component.timeline-component .timeline-element .element-wrapper .data{
	margin-bottom: 5px;
}
.ds-component.timeline-component .timeline-element .element-wrapper > p{
	padding-bottom: 15px;
}
.ds-component.timeline-component .timeline-wrapper:before,
.ds-component.timeline-component .timeline-element:before,
.ds-component.timeline-component .timeline-element .element-wrapper:after{
	background-color: var(--verde);
}
.ds-component.timeline-component .timeline-element .element-wrapper:before{
	border-color:var(--verde);
}

.ds-component .text-area ul{
	list-style: disc;
	padding-left: 18px;
}

.ds-component.timeline-component .text-area{
	max-width: 1200px;
	margin: 0 auto;
}*/
.timeline-wrapper{
	position: relative;
	margin-top: 4vw;
}
.timeline-wrapper .row:nth-child(even){
	flex-flow: row-reverse;
	flex-wrap: wrap;
}
.timeline-wrapper .timeline-element{
	margin-top:-3vw;
}
.timeline-wrapper .timeline-element:first-child{
	margin-top: 0;
}
.timeline-wrapper .element-wrapper{
	padding-bottom:4vw;
	padding-left:6%;
	display: flex;
    flex-direction: column;
    position: relative;
}
.ds-component.timeline-component .timeline-wrapper:before{
 	content:'';
 	width:1px;
 	height: 100%;
 	background-color:var(--verde);
 	position: absolute;
 	top:0;
 	left: 50%;
}
.timeline-wrapper .timeline-element .element-wrapper:before{
 	content:'';
 	width: 8%;
 	height: 1px;
 	background-color:var(--verde);
 	position: absolute;
 	top: 14px;
 	left: 0;
}
.ds-component.timeline-component .timeline-element .element-wrapper .main-title{
 	font-weight: var(--font-weight-regular) !important;
	font-size: var(--titolo3);
	line-height: var(--line-height3);
	color: var(--title-color);
 	margin:0px 0 20px 0
}
 .ds-component.timeline-component .timeline-element .element-wrapper .element-circle:before{
 	content:'';
	width:30px;
	height: 30px;
	border:1px solid var(--verde);
	background-color: #fff;
	position: absolute;
	top:0;
	left: -15px;
	border-radius: 15px;
 }
.ds-component.timeline-component .timeline-element .element-wrapper .element-circle:after{
	content:'';
	width:20px;
	height: 20px;
	background-color: var(--verde);
	position: absolute;
	top:5px;
	left: -10px;
	border-radius: 10px;
}
@media (min-width:768px){
	.timeline-wrapper .timeline-element:nth-child(even) .element-wrapper{
		text-align: right;
		padding-left:0;
		padding-right: 6%;
	}
	.timeline-wrapper .timeline-element:nth-child(even)  .element-wrapper:before{
	 	left: auto;
	 	right: 0;
	}
	.ds-component.timeline-component .timeline-element:nth-child(even) .element-wrapper .element-circle:before{
		left: auto;
		right: -15px;
	}
	.ds-component.timeline-component .timeline-element:nth-child(even) .element-wrapper .element-circle:after{
		left: auto;
		right: -10px;
	}
}
@media (max-width:767px){
	.ds-component.timeline-component .timeline-wrapper:before,
	.ds-component.timeline-component .timeline-element .element-wrapper:before,
	.ds-component.timeline-component .timeline-element .element-wrapper .element-circle:before,
	.ds-component.timeline-component .timeline-element .element-wrapper .element-circle:after{
		content: none;
	}
	.ds-component.timeline-component .timeline-element .element-wrapper,
	.ds-component.timeline-component .timeline-element:nth-child(even) .element-wrapper{
		padding-left:0;
		padding-right: 0;
		text-align: center;
		padding-bottom:6vw;
	}
	.timeline-wrapper .timeline-element{
		margin-top:0;
	}
}

/*form*/
span.chart-legend {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 15px;
}


.blog-component .blog-item{
	margin-bottom:35px;
}
.blog-component .blog-item .text-area{
	padding:35px 30px;
}
.blog-component .blog-item .text-area h3{
	margin-top:0;
}
.blog-component .blog-item .text-area a{
	text-decoration: none;
}
.blog-component .blog-item  .card-el{
 	background-color: #ffffff;
 	height: 100%;
}
 .img-placeholder img{
 	width: auto;
 	height: auto;
 	position: absolute;
}
 .img-placeholder{
 	padding-bottom: 73.5%;
 	position: relative;
}
.img-placeholder .wrapper{
  	position: absolute;
  	width: 100%;
  	height: 100%;
  	display: flex;
  	justify-content: center;
  	align-items: center;
}
.blog-component .blog-item .card-el{
  	display: flex;
  	flex-direction: column;
}
.blog-component .blog-item .card-el .text-area{
	flex-grow: 1;
}
.blog-component .blog-item .card-el .text-area .content-wrapper{
	display: flex;
	flex-direction: column;
	height: 100%;
}
.blog-component .blog-item .card-el .text-area .button-wrapper{
	margin-top: auto;
}
@media (min-width:1200px){
	.single-post .ds-component .header{
		position: static;
		background-color: var(--verde);
	}	
}
.articolo .titolo-articolo{
	margin-bottom:20px;
}
.articolo .details{
	margin-bottom:20px;
}
.header-banner picture:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
}
.text-area ul{
	list-style: disc;
	padding-left: 20px;
}
.text-area ol{
	list-style: lower-latin;
	padding-left: 20px;
}

.gx-0 > .row{
	margin:0;
}