.accordion-services,
.accordion-services .service-sublist{
  margin: 0;
  padding: 0;
  list-style: none;
}

.accordion-services .service-group{
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.accordion-services .service-toggle{
  width: 100%;
  padding: 16px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  background: none;
  border: 0;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: inherit;
}

.accordion-services .service-label{
  display: flex;
  align-items: center;
  gap: 10px;
}

.accordion-services .service-label svg{
  flex: 0 0 auto;
}

.accordion-services .arrow{
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  transition: transform 0.3s ease;
}

.accordion-services .service-group.open .arrow{
  transform: rotate(180deg);
}

.accordion-services .service-sublist{
  overflow: hidden;
  transition: max-height 0.35s ease;
  padding-left: 25px;
}

.accordion-services .service-group.open .service-sublist{
  /* max-height: 500px; */
  padding-bottom: 16px;
}

.accordion-services .service-sublist li{
  padding: 6px 0;
}

.protocollo-territoriale{
	background: var(--color1)!important;
}

.protocollo-territoriale .container{
	position:relative;
}

.protocollo-territoriale .container:before {
    content: "";
    width: 100svw;
    height: calc(100% + 200px);
    top: -100px;
    left: 259px;
    background: var(--color7);
    position: absolute;
}

.protocollo-territoriale p:last-child{
	margin-top:0;
}


.protocollo-territoriale .subtitle{
	color:var(--color3)!important;
	font-size: 2rem;
	margin:15px 0;
}

.protocollo-territoriale .row-2{
	display:flex;
	align-items: center;
	gap:50px
}

.protocollo-territoriale .icona{
	padding:20px;
	flex: 0 0 460px;
	margin:0;
	pointer-events: none;
}

.protocollo-territoriale .txt{
	flex: 0 0 calc(100% - 510px);
	margin:0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0;
}

.protocollo-territoriale .icona img{
	width:100%;
	height:100%;
	object-fit:contain;
}

/*
.protocollo-territoriale .icona:after {
    content: "";
    width: calc(50% );
    height: calc(100%);
    position: absolute;
    top: -4px;
    left: -8px;
    border-top-left-radius: 500px;
    border-bottom-left-radius: 500px;
    border-left: 3px solid var(--color7);
    border-top: 3px solid var(--color7);
    border-bottom: 3px solid var(--color7);
}

.protocollo-territoriale .icona:before {
	content: "";
	width: calc(50% + 16px);
	height: calc(100%);
	position: absolute;
	top: -4px;
	right: -8px;
	border-top-right-radius: 500px;
	border-bottom-right-radius: 500px;
    border-right: 3px solid var(--color1);
	 border-top: 3px solid var(--color1);
	border-bottom: 3px solid var(--color1);
}

*/

.macchinari{
	display: block;
	padding: 0;
	overflow: hidden;
	white-space: normal;
	position: relative;
}

.macchinari-track{
	display: flex;
	flex-wrap: nowrap;
	width: max-content;
	will-change: transform;
}

.macchinario{
	flex: 0 0 auto;
	padding: 50px 50px;
	display: flex;
	box-sizing: border-box;
	white-space: normal;
}

.macchinario:last-child{
	padding-right:0
}

.macchinario-block{
	display:flex;
}



.macchinari .icon{
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

.macchinario .txt{
	display: flex;
	padding-left: 15px;
	flex-direction: column;
	justify-content: center;
}

.macchinari p{
	font-weight: bold;
	margin: 0 0 5px;
	color: var(--color3);
	line-height: 1;
	font-size: 20px;
}

.macchinario .tipo{
	margin: 0;
	font-size: 24px;
	color: var(--color1);
}

.macchinari img{
	width: 100px;
	height: 100px;
	display: block;
}


.macchinari-track{
	display:flex;
	flex-wrap:nowrap;
	align-items:stretch;
}

.macchinari-block{
	display:flex;
	flex-wrap:nowrap;
}

.macchinari-track .sezione{
	display:flex;
	flex:0 0 auto;
	align-items:center;
	padding:0 100px;
	margin:50px 0;
	border-right:1px solid var(--color7)!important;

}




::selection {
  background: transparent;
  color: inherit;
}

.scopri-distanza{
	display:block;
	width: 220px;
	color: var(--color3);
	font-weight: bold;
	margin-top: 25px;
	width: 350px;
	background: var(--color3);
}
.scopri-distanza:hover{
	color: var(--color1);
}

section.progetto-01 .watch-video{
	position:absolute;
	bottom: 140px;
	right: -70px;
	width: 140px;
	height: 140px;
	cursor: pointer;
	display: none;
}


section.progetto-01 .watch-video img{
width:100%;
	height:100%;
    animation: rotate 15s linear infinite;
    white-space: nowrap;
    width: auto;
}

section.progetto-01 .triangle {
   width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 20px 0 20px 40px;
   border-color: transparent transparent transparent var(--color3);
   transform: rotate(0deg);
   position:absolute;
   top:50%;
   left:50%;
   transform:translate(-50%, -50%);
   margin-left:5px;
	transition:.5s
}


section.progetto-01 .watch-video:hover .triangle {
   transform:translate(-50%, -50%) scale(.8);
}

@keyframes rotate {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}
section.progetto-01 .btn{
	background:var(--color1)!important;
	display: block!important;
	z-index: 2;
		width:360px!important;
}

section.progetto-01 .btn:hover{
	background:var(--color3)!important;
	display: block!important;
	z-index: 2;

}

section.progetto-01 .section-img img{
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	border-radius: 20px;
}

section.progetto-01 .section-img.animate-on-scroll{
	transform:translateX(-300px);
	padding-right: 50px;
	border-radius: 0;
}

section.progetto-01 .section-img.animate-on-scroll.done{
	transform:translateX(0);
}

section.progetto-01 .container{
	position:relative;
}

section.progetto-01 .container:before{
	content:"";
	width:100svw;
	height:calc(100% + 200px);
	top:-100px;
	left:20%;
	/* background:var(--color7); */
	position:absolute;
}



.hour-popup li{
	font-size:18px!important
}

.other-services .card-img{
	background:var(--color1);
	height:150px;
	color:white;
	display:flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	transition:.3s ease-in-out;
	cursor:pointer;
}

.other-services .card-img:hover,
.other-services .active .card-img{
	/* background:var(--color3); */
}

.other-services{
	background: white;
}

.other-services svg path{
	stroke:var(--color3)!important
}

.other-services .card-img h3{color:white;margin: 0;text-align: center;font-size: 30px;}


.other-services .card-img h3 br{
	display:none;
}

.other-services .card-img:hover img{
    transform:none!important;
}

.other-services .row-6{
	display:flex;
	justify-content: center;
}


.other-services{
	/* padding-bottom: 175px; */
}


.other-services .card{
	background:var(--color4);
	border-radius: 20px;
	overflow: hidden;
}


.other-services h2{
	margin-bottom:50px;
	text-align:center;
}

.other-services h3{
	text-align: center;
	margin-bottom: 0;
	font-size: 25px;
	color: var(--color1);
	margin-top: 15px;
	text-align: left;
}

.other-services .card-body{
	padding:0
}

.other-services li{
	list-style:none;
	font-family:"Nunito Sans";
	margin-bottom:5px!important;
	font-size:18px!important;
	color:var(--color5)!important
}

.other-services ul {
    margin-top: 0;
    display: block!important;
    margin-bottom: 0;
    justify-content: flex-start;
    padding: 0!important;
    margin-top: 0;
    padding: 0 30px!important;
    background: white;
    transition: .3s ease-in-out!important;
    padding: 30px!important;
    background: var(--color4)!important;
    min-height: 100%;
    max-height: 100%!important;
    height: 100%;
}

.other-services .services-list{
	/* display: flex!important; */
	flex-direction: column;
	padding-bottom: 70px!important;
}

.other-services .active ul {padding: 0;background: var(--color4);}
.other-services  li{
	display: flex;
}

.other-services  li.altri{
	background: var(--color3)!important;
	font-weight:bold;
	margin-top:30px;
	text-align:center;
	width:100%;
	flex:0 0 100%;
	min-width: 100%;
	transition:.3s ease-in-out;
	display: flex;
	justify-content: center;
	color: white!important;
	border-radius: 30px!important;
	padding: 10px;
	position:absolute;
	bottom: 0;
	left: 0;
	margin-bottom: 0!important;
	border-top-right-radius: 0!important;
	border-top-left-radius: 0 !important;
}

.other-services  li.altri:hover{
	background:var(--color1)!important
}

.other-services  li svg{
	flex:0 0 20px;
	margin-top:6px;
	margin-right:4px;
}

.other-services  .arrow-down svg{
	flex:0 0 20px;
	margin-top:0x;
	margin-right:0;
}

.other-services .row-2{
	display:flex;
	align-items: flex-start;
}


.other-services .services-list.accordion-services{
	min-height: auto;
	padding: 30px !important;
	display: block !important;
}

.other-services .services-list.accordion-services > li.service-group{
	display: block;
	margin-bottom: 12px !important;
	border-bottom: 1px solid rgba(0,0,0,.08);
	padding-bottom: 12px;
}

.other-services .services-list.accordion-services > li.service-group:last-child{
	margin-bottom: 0 !important;
	border-bottom: 0;
	padding-bottom: 0;
}

.other-services .service-toggle{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	cursor: pointer;
	text-align: left;
	font: inherit;
	color: inherit;
}

.other-services .service-title{
	display: flex;
	align-items: flex-start;
	gap: 6px;
	flex: 1 1 auto;
}

.other-services .service-title svg{
	flex: 0 0 20px;
	margin-top: 6px;
	margin-right: 0;
}

.other-services .service-title span{
	font-family: "Nunito Sans";
	font-size: 18px;
	color: var(--color5);
	font-weight: 400;
	line-height: 1.4;
}

.other-services .arrow-down{
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color3);
	transition: transform .3s ease-in-out;
	margin-top: 4px;
}

.other-services .service-group.open .arrow-down{
	transform: rotate(180deg);
}

.other-services .service-sublist{
	display: block !important;
	margin: 0 !important;
	padding: 0 0 0 26px !important;
	background: transparent !important;
	overflow: hidden;
	transition: max-height .3s ease-in-out, margin-top .3s ease-in-out;
}

.other-services .service-group .service-sublist{
	margin-top: 12px !important;
	gap: 10px 15px;
}

.other-services .service-sublist li{
	display: list-item;
	list-style: disc;
	margin-bottom: 6px !important;
	font-size: 16px !important;
	color: var(--color5) !important;
}

.other-services .service-sublist li:last-child{
	margin-bottom: 0 !important;
}

.other-services .services-list.accordion-services{
	/* min-height: 488px!important; */
	padding: 30px !important;
	display: block !important;
	max-height: initial!important;
	padding-bottom: 70px !important;
}

.other-services .services-list.accordion-services > li.service-group{
	display: block !important;
	margin-bottom: 12px !important;
	border-bottom: 1px solid rgba(0,0,0,.08);
	padding-bottom: 12px;
}

.other-services .services-list.accordion-services > li.service-group:last-child{
	margin-bottom: 0 !important;
	border-bottom: 0;
	padding-bottom: 0;
}

.other-services .service-toggle{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	cursor: pointer;
	text-align: left;
	font: inherit;
	color: inherit;
}

.other-services .service-title{
	display: flex;
	align-items: flex-start;
	gap: 6px;
	flex: 1 1 auto;
}

.other-services .service-title svg{
	flex: 0 0 20px;
	margin-top: 6px;
	margin-right: 0;
}

.other-services .service-title span{
	font-family: "Nunito Sans";
	font-size: 18px;
	color: var(--color5);
	font-weight: 400;
	line-height: 1.4;
}

.other-services .arrow-down{
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color3);
	transition: transform .3s ease-in-out;
	margin-top: 4px;
	flex: 0 0 16px;
	width: 16px;
	margin-top: 0;
}

.other-services .service-group.open .arrow-down{
	transform: rotate(180deg);
}

.other-services .service-sublist{
	display: block !important;
	margin: 0 !important;
	padding: 0 0 0 26px !important;
	background: transparent !important;
	min-height: 0 !important;
	height: 0;
	overflow: hidden;
	transition: height .3s ease-in-out, margin-top .3s ease-in-out;
	display: flex !important;
	flex-wrap: wrap;
	padding-left: 18px!important;
}

.other-services .service-group.open .service-sublist{
	margin-top: 30px !important;
	margin-bottom: 20px!important;
	/* display: flex!important; */

}

.other-services .service-sublist li{
	display: list-item;
	list-style: disc;
	margin-bottom: 6px !important;
	font-size: 16px !important;
	color: var(--color5) !important;
	/* list-style: none; */
	padding: 0;
	flex: 0 0 calc(33.333% - 10px);
}

.other-services .service-sublist li::marker{
	color: var(--color3);
}

.other-services .service-sublist li:last-child{
	margin-bottom: 0 !important;
}

section.description.servizi .card-img:hover img{
    transform:none!important;
}

section.description.servizi .row-6{
	display:flex;
	justify-content: center;
}


section.description.servizi{
	padding-bottom:75px
}


section.description.servizi .card-img {
    overflow: hidden;
    background: white;
    border-radius: 50%;
}


section.description.servizi h2{
	margin-bottom:50px;
	text-align:center;
}

section.description.servizi h3{
	text-align: center;
	margin-bottom: 0;
	font-size: 25px;
	color: var(--color1);
	margin-top: 15px;
	text-align: left;
}

section.description.servizi .card-body{
	padding:0
}

section.description.servizi li{
	list-style:none;
	font-family:"Nunito Sans";
	margin-bottom:5px!important;
	font-size:18px!important;
	color:var(--color5)!important
}

section.description.servizi ul {
    margin-top: 0;
    display: block!important;
    margin-bottom: 0;
    justify-content: flex-start;
    padding: 0!important;
	margin-top:15px!important;
}

section.description.servizi  li{
	display:flex!important;
}

section.description.servizi  li svg{
	flex:0 0 20px;
	margin-top:6px;
	margin-right:4px;
}




section.progetto .section-txt.animate-on-scroll,
.logo.animate-on-scroll {
    opacity: 0;
    transform: translateX(-25vw)!important;
    transition: .6s ease-out !important;
}
section.progetto .section-txt.animate-on-scroll.done,
.description.descrizione .block:nth-child(1) .img.animate-on-scroll.done,
.logo.animate-on-scroll.done {
    opacity: 1;
    transform: translateX(0)!important;
    transition: .6s ease-out !important;
}


.description.descrizione.promo .block:nth-child(1) .img.animate-on-scroll,
.map.animate-on-scroll {
    opacity: 0;
    transform: translateX(25vw)!important;
    transition: .6s ease-out !important;
}
.description.descrizione.promo .block:nth-child(1) .img.animate-on-scroll.done,
.map.animate-on-scroll.done {
    opacity: 1;
    transform: translateX(0)!important;
    transition: .6s ease-out !important;
}


.description.descrizione.focus .block:nth-child(1) .img.animate-on-scroll{
	 opacity: 0;
	 transform: translateX(-25vw)!important;
	   transition: .6s ease-out !important;
}


.description.descrizione.focus .block:nth-child(1) .img.animate-on-scroll.done{
	 opacity: 1;
	 transform: translateX(0)!important;
	   transition: .6s ease-out !important;
}



.description.descrizione.storia .block:nth-child(1) .img.animate-on-scroll{
	 opacity: 0;
	 transform: translateX(-25vw)!important;
	   transition: .6s ease-out !important;
}


.description.descrizione.storia .block:nth-child(1) .img.animate-on-scroll.done{
	 opacity: 1;
	 transform: translateX(0)!important;
	   transition: .6s ease-out !important;
}




.description.descrizione.linee .block:nth-child(1) .img.animate-on-scroll{
	 opacity: 0;
	 transform: translateX(25vw)!important;
	   transition: .6s ease-out !important;
}


.description.descrizione.linee .block:nth-child(1) .img.animate-on-scroll.done{
	 opacity: 1;
	 transform: translateX(0)!important;
	   transition: .6s ease-out !important;
}


.description.descrizione .block:nth-child(1) .img.animate-on-scroll.done




nav.fixed{
	border:0
}

nav li a{
	border:0
}


.promo .btn{
	display:block;
	width:300px;
	margin-top:50px
}

/* scrollbar */

/* width */
::-webkit-scrollbar {
    width: 7px;
    height: 7px;
	
}

/* Track */
::-webkit-scrollbar-track { 
    background: var(--color7);
	border-left:none;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--color1);
    transition: var(--transition);
}

/* scrollbar */



.centro-estetico.linee .container{
	max-width:100%;
	padding: 0!important;
}

section.centro-estetico.linee{
	padding:0
}

section.centro-estetico.linee .section-img{
	max-width:initial!important;
	flex:0 0 50%;
}

section.centro-estetico.linee .section-img img{
	border-radius:0
}

section.centro-estetico.linee .section-img:before{
	display:none;
}

section.progetto{
	/* padding:0; */
	background: white!important;
}


section.progetto .section-slider{
	border:0!important;
}




.description.servizi h2:first-child {
    margin-top: 100px;
}

section.servizi li svg *{
	stroke:var(--color3)!important;
}


section.faq{
	/* background:var(--color6)!important; */
}

.btn:hover{
	border:2px solid transparent!important;
	background:var(--color6)!important;
color:white!important;
}

.topbar .right .btn:nth-child(1):hover{
	color:white!important
}

.topbar .right .btn:nth-child(2):hover{
	color:white!important
}

section.basic-info .actions .btn:hover svg *{
	fill:white!important
}

.titolari h2{
	text-align:center
}

.titolari .row{
	display:flex;
	justify-content: center;
	gap: 50px;
	margin-top: 50px;
}

.titolari .card{
	background:var(--color8);
	display: block!important;
	margin: 0;
	overflow: hidden;
	flex: 0 0 calc(33.333% - 34px);
	border-radius: 20px;
}

.titolari{
	background: var(--color4)!important;
}

.titolari .card-img{
	display: block;
	height: 300px;
}

.titolari h3{
	margin:0;
	color:var(--color1);
	font-size:26px;
	text-align: center;
}

.titolari .card-img img{
	height:100%;
	width:100%;
	object-fit:cover;
}

.titolari .card-body p{
	line-height:1.2;
	font-weight:400;
	color:var(--color5);
	text-align: center;
}


.titolari .card-body{
	/* border-top:1px solid var(--color1); */
}




.topbar .left a{
	border-right:0
}

.search-bar-container input::placeholder{
	background:transparent
}

.search-bar-container .results{
	border:0
}

.search-bar-container.animate-on-scroll{
	border:0!important;
	background: white!important;
}

.search-bar-container.animate-on-scroll input{background: transparent!important;}
.topbar .right span{
	border-left:0;
}

.topbar{
	border-bottom:0;
}


svg path{
	stroke:none!important
}
section.servizi li svg *{
	stroke:var(--color3)!important;
}

.card-hour{
	width: 240px!important;
	margin-top: 30px;
	z-index: 2;
	padding-bottom: 0!important;
}

.card-hour span{
	font-size:18px!important;
    margin-top:0!important
}

.hour-popup{
	margin-top:20px!important;
	background: var(--color4)!important;
	border-radius: 0!important;
}

.attivita{
	font-weight:500;
	margin-bottom:0;
	line-height:1.1;
	font-style:italic;
}



.servizi{
	padding:0;
	background: var(--color4)!important;
}

.servizi ul{
	margin-top:0;
}


.description.social{
	padding:0;
}

.special .container{
	display:flex;
}




.special .container .img{
	flex:0 0 33.333%;
	transform: translateX(-25vw);
}

.special .container .img.done{
	flex:0 0 33.333%;
	transform: translateX(0);
}

.special .container .txt{
	padding-left:50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.special h3{
	color:var(--color3)!important;
	margin-top:20px!important
}

.special .container .img img{
	width:100%;
	height:100%;
	object-fit:contain;
}

.progetto-01{
	background: white!important;
}

section{
	background: white!important;
}
section.storia{
	background: var(--color4)!important;
}
section.focus{
	background:var(--color4)!important;
}


.description.social .block{
	padding:50px;
	flex: 0 0 33.333%;
	margin:0;
}
.description.social .block:nth-child(2){
	padding:0 50px
}

.description.social .block{
	padding: 0;
}

.description.hour .map{
	position:absolute;
	left:50%;
	width:50%;
	top: 0;
}

.description.hour .container{
	margin: 0 auto;
}

section.description.hour .row-2{
    gap:0;
    display: block;
    align-items: flex-start;
    align-content: stretch;
}


section.description.hour{
	padding:0;
}

section.description.hour{
	padding:0;
	background: white;
}

section.centro-estetico .section-img{
	max-width:600px
}

section.centro-estetico .section-img img {
    border-bottom-right-radius: 300px;
    border-bottom-left-radius: 300px;
}


.descrizione svg{
	width:30px;
	height:auto;
	cursor:pointer;
}


.descrizione .arrow-right svg {
  filter: none;
}


.descrizione .arrow-left svg path {
 fill:white!important
}

.descrizione.promo .arrow-right svg path {
 /* fill:white!important; */
}

.descrizione.promo .arrow-left svg path {
 fill:var(--color3)!important
}
.descrizione.promo .arrow-right svg{
    /* filter: drop-shadow(0 0px 6px rgba(0, 0, 0, .25)); */
}

.descrizione.promo h2{
	margin-top:0
}

.descrizione.promo .arrow-left svg{
    filter: none;
}



.descrizione.linee .arrow-right svg path {
 fill:white!important
}

.descrizione.linee .arrow-left svg path {
 fill:var(--color3)!important
}
.descrizione.linee .arrow-right svg{
    filter: drop-shadow(0 0px 6px rgba(0, 0, 0, .25));
}

.descrizione.promo h2{
	margin-top:0;
	font-size: 50px;
}

.descrizione.linee .arrow-left svg{
    filter: none;
}


.descrizione{
	position:relative;
}

.descrizione .arrow-right{
	position:absolute;
	right: 30px;
	top:50%;
	transform:translateY(-50%);
	z-index:2;
}


.descrizione .arrow-left{
	position:absolute;
	left: 30px;
	top:50%;
	transform:translateY(-50%);
		z-index:2;
}





.centro-estetico svg{
	width:30px;
	height:auto;
	cursor:pointer;
}

.centro-estetico svg{
	filter:none!important
}


.centro-estetico .container{
	position:relative;
	padding: 0 60px!important;
}

.centro-estetico .arrow-right{
	position:absolute;
	right: -10px;
	top:50%;
	transform:translateY(-50%)
}


.centro-estetico .arrow-left{
	position:absolute;
	left: -10px;
	top:50%;
	transform:translateY(-50%)
}


section.social .block{
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	border:2px solid transparent;
	transition:.3s ease-in-out;
}


section.social .block:nth-child(odd){
	background:var(--color4);
}


section.social .block:nth-child(even){
	background:var(--color4);
}

section.social .block h2{
	flex:0 0 100%;
	text-align:center;
	color: var(--color1);
	padding: 0 50px;
}


section.social .block svg{
	width: 100px;
	height: 80px;
	margin: 0;
}

section.social .block svg path{
	transition:.3s ease-in-out;
	fill: var(--color1);
}

section.social .block:hover{
	background:transparent;
}

section.social .block:hover{
	background:var(--color1);
}

section.social .block:nth-child(1):hover{
	background:var(--color4);
}

section.social .block:nth-child(1):hover h2{
	color:var(--color1)!important;
}

section.social .block:hover h2{
	color:var(--color8)!important
}

section.social .block:hover svg path{
	fill:var(--color8)!important
}


section.servizi .block{
	display:flex;
	justify-content: center;
	flex-wrap: wrap;
}





.description.descrizione .block .txt{
	padding:100px 0;
	padding-left:calc(50% + 50px);
	/* pointer-events: none; */
}
.description.descrizione .block  .img{
	position:absolute;
	left: 0;
	top:0;
	width:50%;
	height: 100%;
	pointer-events: none;
}

.description.descrizione.promo .block  .img{
	/* position:relative; */
}

.description.descrizione.promo .block .txt{
	padding-left: 0;
	padding-right: calc(50% + 50px);
}

.description.descrizione.linee .block  .img{
	position:absolute;
	right: 0;
	left:initial;
	top:0;
	width:50%;
	height: 100%;
}

.description.descrizione.linee .block .txt{
	padding-left: 0;
	padding-right: calc(50% + 50px);
}


.arrow svg {
  filter: drop-shadow(0 0px 6px rgba(0,0,0,.25));
}

.promo li{
	font-family:var(--font2);
	font-weight:300;
	color:var(--color5)
}


.description.descrizione{
	padding:0;
	display: flex;
}

.description.descrizione .block{
	position:relative;
	flex: 0 0 100%;
	display: flex;
	flex-wrap: wrap;
}



.description.descrizione .left{
	flex: 0 0 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.description.descrizione .left .pretitle{
	margin-bottom:0
}

.description.descrizione .left .pretitle strong{

}

.description.descrizione .left h3 strong{
	color:var(--color1)!important
}

.description.descrizione .left h3{margin-top:0;font-family: var(--font2);}


.description.descrizione .left .blocco{
	flex:0 0 50%;
	/* display: flex; */
	flex-wrap: wrap;
	padding: 100px 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.description.descrizione .blocco.trattamento{
	padding-left:0!important
}

.description.descrizione .left .blocco.titoli{
	display:flex;
	gap: 0!important;
	flex-direction: column;
	justify-content: center;
	padding-left: calc(50% + 50px);
	flex: 0 0 100%;
	padding-right: 0;
}


.description.descrizione.promo .container{
	margin:0 auto;
	display: flex;
}


.description.descrizione.promo .bottom .container{
	margin:0 auto;
	display: flex;
	align-items: flex-start;
}

.description.descrizione.promo .right .container{
	margin:0 auto;
	display: block;
}

.description.descrizione .left .blocco.prezzo{
	/* background: var(--color7)!important; */
	/* position: absolute; */
	/* left: 50%; */
	/* height: 100%; */
	padding-right: 0;
}


.description.descrizione .left .blocco.img{padding:0;height: 100%;transform: translateX(-25vw);opacity: 0;}


.description.descrizione .left .blocco.img.done{
	opacity:1;
	transform:translate(0)
}


.description.descrizione .left .blocco.titoli{
	transform: translateX(25vw);opacity: 0;
}

.description.descrizione .left .blocco.titoli.done{
	opacity:1;
	transform:translate(0)
}

.description.descrizione .left .top{
	position:relative;
	width: 100%;
}

.description.descrizione .left .bottom{
	position:relative;
	width: 100%;
	background: var(--color7);
}

.description.descrizione .left .bottom:before{
	content:"";
	position:absolute;
	top:0;
	left:50%;
	background:var(--color7);
	width:100%;
	height:100%;
}

.description.descrizione .right{
	/* flex:0 0 50%; */
	flex: 0 0 100%;
	padding: 75px 0;
	background: var(--color4);
}

.description.descrizione .right h3{
	font-family:var(--font2);
	margin-top: 0;
}

.description.descrizione.linee{
	background: white!important;
}

.description.descrizione .img img{
	width:100%;
	height:100%;
	object-fit: cover;
}

.servizi .card-img img,
.titolari .card-img img,
.description.descrizione.promo .img img,
.description.descrizione.focus .img img,
.description.descrizione.storia .img img,
.description.descrizione.linee .img img{
	pointer-events:none;
}



.description.descrizione .container{
	/* position:relative; */
	height: 100%;
}

.description h2{
	margin-top:40px;
}

.description.linee h2{
	margin-top:0;
}

.description h2:first-child{
	margin-top:0;
}

.basic-info{
	padding:0;
	overflow: visible;
	min-height: 50vh;
}

section.progetto .number{
	background:var(--color8);
}

section.progetto .section-txt{
	flex: 0 0 calc(50% - 25px);
	margin: 0px;
	border: 0;
	padding-right: 50px;
	height: 100%;
	/* background: var(--color7); */
}

section.progetto .row-2{
	display:flex;
	align-items: flex-start;
	align-content: stretch!important;
	gap: 0!important;
	height: inherit!important;
}

section.progetto .section-txt p{
text-align:right;
}

section.progetto .section-txt h2{
text-align:right;
}

section.progetto .section-slider{
padding-left:0;
}

section.progetto .section-slider{
	padding-bottom: 100px;
	flex: 0 0 calc(50% - 25px);
	border-left: 1px solid var(--color1);
	padding-left: 50px;
	/* background: var(--color7); */
	padding-bottom: 0;
	padding-left: 0;
}

section.progetto h3{
	font-size:2.5rem;
}

.description.hour .tabella{
	flex:0 0 calc(50% - 25px);
	margin: 0;
	width: 50%;
	padding: 100px 0;
}


.description.hour .map{
	flex:0 0 calc(50% - 25px)!important;
	height: 100%;
}



.m-slider .arrow.disable {
    opacity: .35;
    pointer-events: none;
}


.m-slider svg{
	width:30px;
	height:auto;
	cursor:pointer;
}

.m-slider svg path{
	fill:white!important;
	box-shadow:0 0 30px rgba(0,0,0,1)
}



.m-slider .arrow-right{
	position:absolute;
	right: 30px;
	top:50%;
	transform:translateY(-50%);
	z-index: 2;
}


.m-slider .arrow-left{
	position:absolute;
	left: 30px;
	top:50%;
	transform:translateY(-50%);
	z-index: 2;
}




.m-slider{
  --gap: 16px;
  --stroke: rgba(0,0,0,.10);
  --shadow: 0 18px 40px rgba(0,0,0,.10);
  --text: rgba(0,0,0,.86);
  display:block;
  padding: 0;
  position: relative;
  height: 100%;
}

.m-slider__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom: 0;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  z-index: 2;
  transform: translateY(-50%);
}

.m-slider__title{
  margin:0;
  font-size: 18px;
  letter-spacing: .2px;
  color: var(--text);
}

.m-slider__arrows{
  display:flex;
  gap:10px;
  flex: 0 0 100%;
  justify-content: space-between;
  padding: 0 30px;
}

.m-slider__arrow span{
	font-size:20px
}

.m-slider__arrow{
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid var(--stroke);
  background: rgba(255,255,255,.92);
  box-shadow: 0 10px 26px rgba(0,0,0,.10);
  display:grid;
  place-items:center;
  cursor:pointer;
  transition: transform .15s ease, opacity .15s ease, box-shadow .15s ease;
  color: rgba(0,0,0,.78);
  user-select:none;
  padding: 0;
}

.m-slider__arrow:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(0,0,0,.14);
}
.m-slider__arrow:active{ transform: translateY(0px); }
.m-slider__arrow:disabled{
  opacity: .35;
  cursor: not-allowed;
  transform:none;
  box-shadow: 0 10px 26px rgba(0,0,0,.08);
}

.m-slider__viewport{
  overflow:auto;
  scroll-snap-type: x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling: touch;
  border-radius: calc(var(--radius) + 2px);
  padding-bottom: 2px; /* evita tagli ombra */
}

/* nascondi scrollbar */
.m-slider__viewport::-webkit-scrollbar{ height:0; }
.m-slider__viewport{scrollbar-width: none;height: 100%;padding: 0;}
.m-slider__viewport::-webkit-scrollbar-thumb{ background: transparent; }

.m-slider__track{
  display: flex;
  padding: 0;
  height: 100%;
}

/* 3 per vista */
.m-slider__item{
  margin:0;
  scroll-snap-align: start;
  border-radius: 0;
  overflow:hidden;
  box-shadow: var(--shadow);
  background: #f2f2f2;
  position: relative;
  flex: 0 0 100%!important;
  height: 100%;
}

.m-slider__item img{
  width:100%;
  height: 100%;
  object-fit: cover;
  display:block;
  transform: scale(1.01);
  transition: transform .6s ease;
}

.m-slider__item::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(to top, rgba(0,0,0,.18), rgba(0,0,0,0));
  opacity:.35;
  pointer-events:none;
}

.m-slider__item:hover img{ transform: scale(1.06); }

/* 2 per vista */
@media (max-width: 980px){
  .m-slider__item{ width: calc((100% - (1 * var(--gap))) / 2); }
  .m-slider__item img{ height: 250px; }
}

/* 1 per vista */
@media (max-width: 560px){
  .m-slider__item{ width: 100%; }
  .m-slider__item img{ height: 220px; }
}




.rating{
	display:flex;
	gap: 30px;
	margin-top: 15px;
	align-items: center;
}

.rating .rate{
	display:flex;
	align-items: center;
	flex-wrap: wrap;
}

.rating .rate span{
	padding:0!important;
	font-family:var(--font2);
	color:var(--color1);
	font-weight:bold;
	height: 20px;
}

.rating .rate span.text{
	flex:0 0 100%;
	font-size:14.4px;
	margin-bottom:5px
}

.rating .rate span.number{
	font-weight:normal
}

.rating .rate .number{
	margin-right:8px;
	font-family: var(--font2);
	line-height: 1.4;
	height: 20px;
	color: var(--color5);
}

.rating .euro-rate{
	display:flex;
	align-items: center;
	height: 22px;
}


.rating svg{
	height:20px;
	width:auto; 
}

.rating .euro-rate svg{
	height: 18px;
	width:auto;
	margin-top: 2px;
}

.rating svg .empty{
	fill:var(--color3);
}

.rating svg .full{
	fill:var(--color1);
}
.rating svg .euro{ 
	fill:var(--color4);
}

.rating svg .stencil{
	fill: white;
}


.breadcrumb{
	padding-bottom:180px;
	background:var(--color7)!important;
	padding-top:75px;
}


.breadcrumb a {
    font-size: 26px!important;
 color: var(--color1)!important;
}

.breadcrumb li {
    font-size: 26px!important;
    color: var(--color5)!important;
}







.photo-slider{
    display:flex;
    padding:0;
    list-style:none;
    margin: 0;
    height: 100%;
 
    
}


.photo-slider .slide{
    flex:0 0 40%;
}

section.basic-info .row-2{
    gap:50px;
    display: flex;
    align-items: center;
}

section.basic-info .logo{
    flex: 0 0 calc(50% - 25px);
    border: 0;
    margin:0;
    border-radius: 0;
    overflow: hidden;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
}


.hour-popup li b{
	width:55px!important
}

section.basic-info .logo img{
    width:100%;
    height:100%;
    object-fit:cover;
}


section.basic-info .info{
    flex: 0 0 calc(50% - 25px);
    margin:0;
    padding: 0;
    padding-left: calc(50% + 50px);
    padding-bottom: 0;
    padding-left: 50%;
    min-height: 50vh;
    display: flex;
    align-items: center;
    padding-bottom: 134px;
    padding-top: 75px;
}

section.basic-info .info .text{
    padding-left:50px;
    padding-right: 50px;
}

section.basic-info .subtitle {
    margin: 0;
    color: var(--color3);
    font-family: var(--font2);
    font-size:26px;
    margin-top: 10px;
}

section.basic-info .today {
   font-weight:500;
   margin-top: 15px;
   margin-bottom: 0;
}




section.basic-info .breadcrumb .container{
    display:flex;
    justify-content: flex-start;
}


section.basic-info .breadcrumb{
	margin-top:0;
	margin-bottom: 30px;
}
section.basic-info .breadcrumb li{
	color:var(--color5);
	font-weight: 200;
}


section.basic-info .breadcrumb a{
	color:var(--color3)
}


section.basic-info .actions svg{
	width: 25px!important;
	height: 25px!important;
}

section.basic-info .actions svg *{
	fill:white!important;
	stroke:none;
}

section.basic-info .actions{
	display:flex;
	flex-direction: row;
	border-radius: 0;
	overflow: hidden;
	margin-top: 0;
	position: absolute;
	bottom: 0;
	width: 50%;
}

section.basic-info .actions .btn span{
	/* display:none; */
}

section.basic-info .actions .btn{
	border-radius: 0!important;
	margin: 0;
	padding:15px;
	min-width: 20%;
	width:100%;
	font-size: 13px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	max-width: 100%;
}

section.basic-info .actions .btn:first-child{
	border-top-left-radius: 0!important;
	border-bottom-left-radius: 0!important;
}

section.basic-info .actions .btn:last-child{
	border-top-right-radius:50px;
	border-bottom-right-radius:50px;
}

section.basic-info .actions .btn:hover{
	/* background:var(--color6)!important; */
}

section.basic-info .actions .btn:nth-child(odd){
	background:var(--color1);
}

section.basic-info .actions .btn:nth-child(even){
	background:var(--color3);
}



section.description.servizi ul{
	margin-top: 0;
	display:flex;
	margin-bottom: 0;
	justify-content: flex-start;
	padding-bottom: 100px;
	padding-top: 50px;
}

section.description.servizi  li{
	flex: 0 0 25%;
	margin-bottom:10px;
	font-size:21px;
	font-weight:500;
	/* font-size: 16px !important; */
}

section.description.social a{
	margin-top: 0;
	display: block;
	margin-right: 0;
	font-weight:bold;
	font-size:21px;
	color:var(--color3);
	transition:.3s ease-in-out;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 25vw;
}

.description.hour .title:before{
	content:"";
	position:absolute;
	top:0;
	right:0;
	height:100%;
	width:50vw;
	background:var(--color1);
	z-index:-1;
	display:none;
}


.description.hour .title{
	text-align: left;
	width: 100%;
	margin: 0 auto;
	background: transparent;
	color: var(--color1);
	padding: 20px;
	/* border-top-left-radius: 25px; */
	/* border-top-right-radius: 25px; */
	position:relative;
	z-index:2;
	padding: 0;
}

.description table{
	font-family:"Nunito Sans";
	width: 100%;
	margin: 0 auto;
	/* background: white; */
	padding: 0;
	margin-top: 30px;
}

.description table td{
	padding-bottom:20px;
		font-size:21px;
}

.description table tr:last-child td{
	padding-bottom:0;
}

.description table td:nth-child(1){
	padding-bottom:20px;
	width:150px;
	font-weight:bold;
	color:var(--color3);
}

.description table td:nth-child(2){
	padding-bottom:20px;
	width:300px;
	font-weight:300;
	color:var(--color5)
}



section.description .row-2{
    gap:50px;
    display: flex;
    align-items: flex-start;
    align-content: stretch;
}

section.description h3 {
    font-size: 2rem;
    font-weight: 600;
    transition: var(--transition);
    color: var(--color1);
    margin: 0;
    margin-top: 40px;
}

section.description .map{
    flex:0 0 300px;
    margin:0;
    display: flex;
    flex-direction: column;
    height: 300px;
}

section.description .map .btn{
	display:block;
	padding: 15px;
	margin-top: 0;
	border-radius: 25px;
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	border-radius: 0;
}

section.description .map iframe{
    width:100%;
    height:100%;
    object-fit:cover;
    /* border-radius: 25px; */
    border: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}


section.description .row-2 div:nth-child(2){
    flex:0 0 calc(100% - 350px);

    margin:0;
}






section.description .badge{
	padding:0;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}


section.description .badge li:nth-child(19),
section.description .badge li:nth-child(18),
section.description .badge li:nth-child(15),
section.description .badge li:nth-child(14),
section.description .badge li:nth-child(11),
section.description .badge li:nth-child(10),
section.description .badge li:nth-child(7),
section.description .badge li:nth-child(6),
section.description .badge li:nth-child(3),
section.description .badge li:nth-child(2){

}



section.description .badge li{
	list-style:none;
	font-family:var(--font2);
	color:var(--color5);
	font-size: 24px;
	white-space: nowrap;
	margin-right: 0;
	font-weight:200;
	display: flex;
	align-items: center;
	flex: 0 0 calc(33.333%);
	margin: 0;
	padding: 50px;
	padding-left: 0;
	padding-bottom: 0;
	height: 96px;
}

@media(min-width:1550px){
	section.description .badge li{

	flex: 0 0 calc(33.333%);
}

}


section.description .badge li .discount{
	color:var(--color3);
	font-weight: 500;
	margin-left:5px;
	font-size: 18px;
	margin-right: 0;
}

section.description .badge li svg{
	margin-right: 8px;
	width:20px;
	height:20px
}


section.description li svg *{
	stroke:var(--color3)
}

section.photo-gallery ul{
	margin:0;
	padding:0;
	gap:30px!important;
	margin-top:50px;
	display: flex;
	justify-content: flex-start;
}

section.photo-gallery li{
	margin:0;
	padding:0;
	list-style:none;
	border: 1px solid var(--color1);
	margin: 0;
	border-radius: 25px;
	overflow: hidden;
	cursor:pointer;
	height: 250px;
}

section.photo-gallery img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:.5s;
}


section.photo-gallery li:hover img {
    transform: scale(1.2) rotate(5deg);
}




.accordion li:nth-child(1) {

}


.accordion li:nth-child(2) {background: white;}


.accordion li:nth-child(3) {background: var(--color4);}



.accordion li{
	flex: 0 0 33.333%;
}

.accordion li.open{
	flex: 0 0 66.666%;
	background: var(--color7);
}


.accordion {
    padding-left: 0;
    margin-top: 0;
    margin-bottom: 0;
    margin: 0;
    display:flex;
    flex-direction: column;
}

.faq .title{
	text-align:center;
	width:100%;
	margin-bottom:50px;
	display: none;
}

.accordion li li{
	background:transparent!important;
	padding:15px 0;
	font-family:var(--font2);
	color: var(--color5);
}

.accordion ul{
padding:0!important
}

.accordion li {
    list-style: none;
    padding-left: 0;
    /* border-bottom: 1px solid var(--color1); */
    transition:.3s ease-in-out;
    cursor: pointer;
    padding: 50px 50px;
    background: var(--color4);
    padding: 50px 0;
}

.accordion li.open {
    list-style: none;
    /* padding-left: 0; */
    /* border-bottom: 1px solid var(--color3); */
    transition:.3s ease-in-out;
}

.accordion li p {
    margin: 0;
    margin-bottom: 15px;
    font-size: 20px;
}


.accordion li p:last-child {
    margin-bottom: 35px;
}

.accordion li .question {
    /* font-size: 18px; */
    padding: 30px;
    margin-top: 0;
    position: relative;
    padding-right: 60px;
    padding-left: 0;
}

.accordion li .question h3{
    font-size:20px;
    margin: 0;
    color: var(--color1);
    transition:.5s;
    font-size: 1.8rem;
}

.accordion li .question h3{
    font-size: 1.8rem;
}

.accordion li.open .question h3{
    /* font-size: 1.5rem; */
    margin: 0;
    /* color: var(--color3); */
}

.accordion li:last-child {
  
    border: 0;
}

.accordion li .question:before {
    content: "";
    width: 20px;
    height: 2px;
    background: var(--color1);
    position: absolute;
    right: 20px;
    top: 52px;
    transition: .3s ease-in-out
}

.accordion li .question:after {
    content: "";
    width: 2px;
    height: 20px;
    background: var(--color1);
    position: absolute;
    right: 29px;
    top: 43px;
    transition: .3s ease-in-out
}

.accordion li.open .question:after {
    transform: rotateX(90deg);
    background: var(--color3);
}
.accordion li.open .question:before {
    /* background: var(--color3); */
}



.accordion .answer {
    display: block;
    overflow: hidden;
    height: 0;
    opacity: 0;
    transition: height 0.3s ease, opacity 0.3s ease;
    padding: 0 60px;
    padding-left: 0;
}

.accordion li.open .answer {
    opacity: 1;
}


footer {
    /* margin-top: 115px; */
    padding-bottom: 45px;
}


.faq .btn{
    display:block;
    margin:0 auto;
    width:300px;
    margin-top:75px
}


section.faq{
   padding: 0;
   /* padding-top: 100px; */
}

.faq li{
	display:flex;
}

.faq li svg{
	margin-right:5px;
}

.faq li path{

    stroke: var(--color3) !important;

}
.faq li svg{
	flex:0 0 20px;
	width:20px;
	height:20px
}

section.faq .row-2{
  display:block;
}




section.other-info .accordion li .question:before {
    content: "";
    width: 36px;
    height: 4px;
    background: var(--color1);
    position: absolute;
    right: 0;
    top: 70px;
    transition: .3s ease-in-out;
	border-radius:4px;
}

section.other-info .accordion li .question:after {
    content: "";
    width: 4px;
    height: 36px;
    background: var(--color1);
    position: absolute;
    right: 16px;
    top: 54px;
    transition: .3s ease-in-out;
		border-radius:4px;
}



section.other-info .accordion .answer{
	padding:0;

}

section.other-info .accordion li .question{
	padding-left:0;
}


section.other-info table td{
	font-size: 22px;
	padding-right: 50px;
	font-family: var(--font2);
	color:var(--color5);
	padding-bottom:10px
}

section.other-info table td:nth-child(2){
	font-weight:200;
}

section.other-info .accordion li.open{
	padding-bottom:50px
}


section.other-info .subtitle {
    font-size: 2rem;
    font-weight: 600;
    transition: var(--transition);
    color: var(--color1);
    margin: 0;
    margin-bottom:30px;
    width: 100%;
}

section.other-info p{
	font-size:20px!important;
}



section.other-info .badge{
	padding:0;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 0;
}

.lb-img{
    border-radius:0!important;
}

section.other-info .badge li{
	list-style:none;
	font-family:var(--font2);
	color:var(--color5);
	font-size: 20px;
	white-space: nowrap;
	margin-right: 20px;
	font-weight:200;
	display: flex;
	align-items: center;
	padding-bottom: 0!important;
	border-bottom: 0!important;
}


section.other-info .badge li .discount{
	color:var(--color3);
	font-weight: 500;
	margin-left:5px;
	font-size: 20px;
	margin-right: 0;
}

section.other-info .badge li svg{
	margin-right: 8px;
	width:20px;
	height:20px
}


section.other-info li svg *{
	stroke:var(--color3)
}

section.other-info .block{
	margin-bottom:50px
}

section.other-info .block:last-child{
	margin-bottom:0
}

section.other-info .block p span{
font-weight:500
}

section.other-info .block a{
	color:var(--color3);
	font-weight:500;
	font-size:20px;
	margin-right:20px;
	display: inline-block;
}

section.other-info .block a:hover{
	color:var(--color1);
	
}

section.other-info .block p:last-child {
    margin-bottom: 0;
}
section.actions-fixed.active{
	bottom:30px;
	right:30px;
}


section.actions-fixed svg{
	width: 55px;
	height: 55px;
}

section.actions-fixed svg path{
	fill:#25D366;
}

section.actions-fixed .btn:hover svg path{
	fill:#25D366!important;

}

footer .post-footer{
	padding-top:45px
}


section.actions-fixed{
	position:fixed;
	bottom:-100px;
	right:-100px;
	width: 55px;
	height: 55px;
	z-index:2;
	background: transparent!important;
	padding: 25px 0;
	transition: .5s;
	border-top: 0;
	padding: 0;
	display: flex;
}

section.actions-fixed .row-2{
	display:flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
}

section.actions-fixed h2{
	flex:0 0 auto;
	margin: 0;
	font-size: 20px;
	color: var(--color4);
	display: none;
}

section.actions-fixed .actions{
	flex:0 0 auto;
}

section.actions-fixed .actions svg{
	width:20px!important;
	height:20px!important;
}

section.actions-fixed.actions svg *{
	fill:white!important;
	stroke:none;
}

section.actions-fixed .actions{
	display:flex;
	flex-direction: row;
	border-radius: 0;
	overflow: hidden;
	margin: 0;
	gap: 1px;
	padding-bottom: 0!important;
	width: 100%;
}

section.actions-fixed .btn span{
	/* display:none; */
}
section.actions-fixed .btn:hover{
	border:0!important
}

section.actions-fixed .actions .btn:hover svg *{
	fill:var(--color1)!important;
}

section.actions-fixed .actions .btn:hover span{
	color:var(--color1)!important;
}

section.actions-fixed .btn{
	border-radius:0;
	margin: 0;
	padding:15px;
	/* min-width: 20%; */
	width:100%;
	font-size: 13px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: transparent!important;
	/* margin: 0 1px; */
	border: 0!important;
	padding: 0;
}

section.actions-fixed .btn:nth-child(odd){
	background:var(--color1)
}

section.actions-fixed .btn:first-child{
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

section.actions-fixed .btn:last-child{
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

section.actions-fixed .btn span{
	color:var(--color4)
}

section.actions-fixed .btn:hover{
	/* background:var(--color6)!important; */
}




section.actions-fixed .actions svg *{
	fill:var(--color4)!important;
	stroke:none;
}


.breadcrumb {
    margin-top: 0!important;
}



@media(max-width:1199px){

	.descrizione .arrow-right{
		right:20px
	}

	.descrizione .arrow-left{
		left:20px
	}

.servizi .row-6 > * {
    flex: 0 0 calc(33.333% - 30px);

}

	.container{
		padding-right:75px!important;
		padding-left:75px!important;
	}

	

}


@media(max-width:991px){

	.description table td:nth-child(2){
		width:auto;
	}

	.description table{
		width:auto;
	}

	.description.hour .tabella{
		width: auto;
		margin: 0 auto;
	}

	.description.hour .map{
		position:relative;
		width:100%;
		padding:0!important;
		left: 0;
		height: 75dvw;
	}

	.description.hour .container{
		display:flex;
		flex-direction: column;
	}

	.other-services .row-2 > *:last-child{
		margin-bottom:0;
	}

	.other-services .services-list{
		min-height:initial!important;
	}

	.other-services .row-2 > * {
    flex: 0 0 calc(100%);
    margin: 0 auto;
    margin-bottom:50px;
    max-width: 600px;
}

	.protocollo-territoriale .txt{
		text-align:center;
	}

	.description.descrizione.promo .bottom .container{
		display:flex;
		flex-direction: column;
	}

	.description.descrizione.promo .right .container{
		padding-top:0!important;
		padding-bottom:0!important
	}

	.description.descrizione .left .blocco.prezzo{
		padding:0;
		width: 100%;
		padding-top:40px
	}

	.description.descrizione .blocco.trattamento{
		padding:0;
		padding-top: 40px;
	}

	.description.descrizione.promo .bottom .container{
		padding-top:0!important;
		padding-bottom: 0!important;
	}

	.description.descrizione .left .bottom:before{
		display:none;
	}

.description.descrizione .left .blocco.titoli{
	padding-left:0;
	flex:initial;
	padding-bottom: 0;
	padding-top: 40px;
}
	
	.description.descrizione.promo .container{
		display:flex;
		padding: 100px 75px!important;
		flex-direction: column;
		background: var(--color4);
		height: auto;
		padding-bottom: 0!important;
	}

.descrizione .arrow-left svg path,
	.descrizione.linee .arrow-right svg path {
 fill:var(--color3)!important
}

.descrizione.linee .arrow-left svg path {
 fill:var(--color3)!important
}
	.arrow svg,
	.descrizione .arrow-left svg path,
.descrizione.linee .arrow-right svg{
    filter: none!important;
}


	.description.descrizione.linee .block .txt{
		padding-right:0;
	}
	.description.descrizione.linee .block .img{
	        position: relative;
        width: 100%;
        border-radius: 20px;
        overflow: hidden;
        height: 50dvw;
	}

	.description.linee h2{
		margin-top:40px;
	}

	section.progetto .section-txt p{
text-align:left;
}

section.progetto .section-txt h2{
text-align:left;
}

	section.progetto .section-txt{
		flex: initial;
		padding:0;
		padding-bottom:50px;
	}

	section.progetto .row-2{
		display:flex;
		flex-direction: column;
	}

	.description.descrizione .block .txt{
		padding-left:0
	}


	.description.descrizione .block .img{
		position:relative;
		width: 100%;
		border-radius: 20px;
		overflow: hidden;
		height: 50dvw;
	}

	.special .container .txt{
		padding-left:0;
		padding-top:50px;
		text-align:center;
	}

	.special .container .img{
		width:450px
	}

	section.description.servizi .row-6{
		gap:50px
	}

	.protocollo-territoriale .icona {
    width:450px;
}

	.special .container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

	    .servizi .row-6 > * {
        flex: 0 0 calc(50% - 30px);
    }

	section.progetto-01 .section-img{
		padding:0!important;
		margin-bottom:50px!important
	}

	.progetto-01 .row-2{
		display:flex;
		flex-direction: column;
	}

		.progetto-01 .row-2 > div{
		margin:0
	}

	.protocollo-territoriale{
		background:var(--color7)!important;
	}

	.protocollo-territoriale .container:before {
    content: "";
    width: 100svw;
    height: 330px;
    top:initial;
    top: -100px;
    left: 0;
    background: var(--color1)!important;
    position: absolute;
}

	.protocollo-territoriale .row-2{
		display:flex;
		flex-direction: column;
	}

	.titolari .card{
		flex: 0 0 100%;
		max-width: 400px;
	}

	section.basic-info .actions{
		position:relative;
		width:100%;
		padding-top: 100px;
	}

	section.basic-info .info .text{
		width:100%;
	}

	section.basic-info .info{
		padding-left:0;
		width:100%;
		display: flex;
		flex-direction: column;
		padding-bottom: 0;
		min-height: initial;
	}

	.m-slider{
		width:100%;
	}

section.basic-info .logo{
	position:relative;
	width: 100%;
	height: 75dvw!important;
}

	
section.photo-gallery li {
  
    height: 22vw;
}

	}



@media(max-width:767px){

	.description.hour .title{
		text-align:center;
	}

	.other-services .row-2 > *{
		display:flex;
		flex-direction: column;
	}

	.description.descrizione .left .blocco.img{
		height:50dvw!important;
		flex: initial;
	}

	.description.descrizione.promo .container{
		padding-right:30px!important;
		padding-left:30px!important;
	}

	.description.descrizione .block{

	}

	.description.descrizione .block .txt{
		/* padding-bottom:0; */
	}

	.description.descrizione .container{
		height:auto!important;
	}

	
	.descrizione .arrow-right{
		top:calc(100px + 25dvw);
		right:50px
	}
.descrizione.promo .arrow-left svg path,
	.descrizione.linee .arrow-left svg path,
	.descrizione .arrow-left svg path, .descrizione.linee .arrow-right svg path,
		.descrizione .arrow-right path{
		fill:white!important;
	}


.descrizione.promo .arrow-left svg,
	.descrizione.linee .arrow-left svg,
	.descrizione .arrow-left svg, 
	.descrizione.linee .arrow-right svg,
		.descrizione .arrow-right{
filter:drop-shadow(0 0px 6px rgba(0,0,0,.25))!important;
		}
	
.descrizione .arrow-left{
		top:calc(100px + 25dvw);
		left:50px
	}
		.descrizione .arrow-left path{
		fill:white!important;
	}

	
	section.progetto .section-slider{
		padding:0!important
	}

	.special .container .img{
		width:320px
	}

section.basic-info .info span.text{
	padding:0!important
}
	
section.basic-info .info .text,
	.container {
        padding-right: 30px !important;
        padding-left: 30px !important;
    }

	.protocollo-territoriale .container:before{
		height: 260px;
	}

	.protocollo-territoriale .icona{
		width:320px;
	}

	.titolari .card{
		padding:0!important;
	}

	

	section.actions-fixed .btn span{
		display:none;
	}

	section.photo-gallery li {
  
    height: 30vw;
}

	section.photo-gallery li{
		flex:0 0 calc(33.333% - 20px)
	}

	section.description .map{
		height:75vw;
		margin-top:50px
	}

	section.description .row-2{
		width:100%;
		display: block;
	}

	section.description .row-2 div:nth-child(1){
		display:block;
		width: 100%;
		padding-right: 30px!important;
		padding-left: 30px!important;
	}

	
section.basic-info .logo{
    flex:initial!important;
    height:calc(75vw)!important;
    padding-bottom: 0!important;
}

	section.basic-info .map{
		flex:initial!important;
		height:75vw;
	}
	.breadcrumb{
		padding-bottom:250px;
	}

	section.basic-info .info{
		display:block;
		padding-bottom: 0!important;
	}

	section.basic-info .row-2{
		display:flex;
		flex-direction: column-reverse;
	}

		section.other-info .accordion li .question:before {
    width: 32px;
    right: 0;
    top: 64px;
}


	section.other-info .accordion li .question:after {
    width: 4px;
    height: 32px;
    right: 14px;
    top: 50px;

}
}


@media(max-width:500px){

	.other-services .row-2 > *{
		max-width: 100%!important;
		width:100%!important;
		flex: 0 0 100%!important;
	}

	section.description .row-2 .tabella:nth-child(1){
		padding-left:0!important;
		height:auto!important;
	}

	.tabella{
		overflow:visible
	}

	    section.description .row-2 div:nth-child(1) {
        display: block;
        width: 100%;
        padding-right: 15px !important;
        padding-left: 35px !important;
    }

	.other-services .service-sublist li {
  
    flex: 0 0 calc(50% - 10px);
}


	.description.descrizione.promo .container {
        padding-right: 15px !important;
        padding-left: 15px !important;
    }

	.descrizione.promo .arrow-left svg, .descrizione.linee .arrow-left svg, .descrizione .arrow-left svg, .descrizione.linee .arrow-right svg, .descrizione .arrow-right{
		right:30px;

	}
.descrizione .arrow-left{
	left: 30px!important;
}


	.descrizione.promo .arrow-left svg, .descrizione.linee .arrow-left svg, .descrizione .arrow-left svg, .descrizione.linee .arrow-right svg, .descrizione .arrow-right svg{
		width:20px

	}

	.accordion li .question:before {

    top: 45px;
  
}

.accordion li .question:after {

    top: 36px;

}


.accordion .answer{
	padding-right:0;
}

	
	section.description h3{
		font-size:1.8rem!important;
	}

.special .container .img.done{
	width:220px;
}
	

	section.description.servizi .card-img{
		width:220px;
		margin:0 auto;
		margin-bottom:30px;
	}

	section.description.servizi h3{
		font-size:1.8rem!important;
	}

	.servizi .row-6 > *{
		flex:0 0 100%;
		margin-top: 0;
	}

	section.progetto-01 .btn{
		width:100%!important
	}

	.protocollo-territoriale .container:before{
		height: 220px;
	}

	.protocollo-territoriale .icona{
		width:250px;
	}


    section.basic-info .info .text, .container {
        padding-right: 15px !important;
        padding-left: 15px !important;
    }
	
section.actions-fixed,
	section.actions-fixed svg{
		width:45px;
		height:45px;
	}

	section.actions-fixed.active
 {
    bottom: 15px;
    right: 15px;
}

	.m-slider .arrow-left{
	left: 15px;
}

		.m-slider .arrow-right{
	right: 15px;
}

	.m-slider svg{
		width:20px
	}

	section.basic-info .actions{
		padding-top:60px;
	}

	.scopri-distanza{
		width:100%
	}

section.basic-info .subtitle{
	font-size:1.5rem;
}
	
	.title {
        font-size: 2.5rem !important;
    }

	    section.basic-info .info {
       padding-top:40px
    }

	
		section.other-info .accordion li .question:before {
    width: 26px;
    right: 0;
    top: 60px;
}


	section.other-info .accordion li .question:after {
    width: 4px;
    height: 26px;
    right: 11px;
    top: 49px;

}

section.other-info .subtitle{
	font-size:1.6rem
}
	
	.breadcrumb{
		padding-bottom:180px;
	}

	section.photo-gallery ul{
		gap:15px!important
	}

	    section.photo-gallery li {
        flex: 0 0 calc(50% - 7.5px);
        height: 45vw;
    }

	section.description h3{
		font-size:1.3rem
	}


}