@charset "UTF-8";

:root {
	--main: #030014;
	--colore: #6366F1;
	--colore-2: #161840;
	--colore-3: #A855F7;
	--colore-4: #EC4899;
	--colore-5: #100a29;
	--colore-6: #0a041d;
	--rosso: #BF2121;
	--verde: #00A651;
	--arancio: #FF7F00;
	--grigio: #242627;
	--grigio-2: #646B6E;
	--grigio-3: #93989B;
	--grigio-4: #BABDBF;
	--grigio-5: #DCDEDF;
	--grigio-6: #EEEFF0;
	--grigio-7: #F5F5F6;
	--grigio-8: #fafafa;
	--bianco: #ffffff;
	--mainfont: 'Poppins', 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif;
	--altfont: 'Poppins', 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif;
	--weightlight: 300;
	--weightnormal: 400;
	--weightmedium: 500;
	--weightheavy: 600;
	--weightbold: 700;
	--weightblack: 800;
	--radius-less: 20px;
	--radius: 30px;
	--radius-more: 50px;
	--radius-small: 8px;
	--round: 50%;
	--line-height: 1.4;
	--line-height-2: 1.5;
	--shadow: 1px 1px 20px rgba(0, 0, 0, 0.1);
	--shadow-less: 0 2px 12px rgba(0, 0, 0, 0.12);
	--shadow-more: 0 5px 30px rgba(0, 0, 0, 0.18);
	--text-shadow: 2px 2px 30px rgba(31, 73, 119, .5);
	--text-shadow-more: 2px 2px 30px rgba(31, 73, 119, .85);
	--text-shadow-2: 1px 1px 8px rgba(135, 166, 187, 1);
}

body {
	background-color: var(--main);
	color: var(--bianco);
}
body::before {
    content: "";
    position: fixed;
    top: -20%;
    left: -10%;
    width: 120vw;
    height: 120vh;
    z-index: 0;
    background: 
        radial-gradient(circle at 25% 20%, var(--colore), transparent 35%),
        radial-gradient(circle at 75% 35%, var(--colore-4), transparent 40%),
        radial-gradient(circle at 45% 75%, var(--colore-3), transparent 35%);
		opacity: .12;
		/* Applichiamo l'animazione */
    animation: floatingGradients 10s ease-in-out infinite alternate;
    pointer-events: none; /* Fondamentale: permette di cliccare ciò che sta sotto */
	filter: blur(40px);
	will-change: transform;
}
@keyframes floatingGradients {
    0% {
        transform: translate(0, 0) rotate(0deg);
    }
    50% {
        /* Si sposta leggermente e ruota */
        transform: translate(-5%, 5%) rotate(10deg);
    }
    100% {
        transform: translate(5%, -5%) rotate(-12deg);
    }
}
h1,
.h1 {
	font-size: clamp(2.4rem, calc(1rem + 4.5vw), 5.5rem);
	line-height: 1;
	margin-bottom: 1.6rem;
	letter-spacing: -.035rem;
}

h2,
.h2 {
	font-size: clamp(1.9rem, calc(1rem + 2.8vw), 3.1rem);
	line-height: 1;
	margin-bottom: 1.4rem;
}

h3,
.h3 {
	font-size: clamp(1.75rem, calc(1rem + 1.8vw), 2.4rem);
	line-height: 1;
	margin-bottom: 1.2rem;
}

h4,
.h4 {
	font-size: clamp(1.1rem, calc(1rem + 1vw), 1.6rem);
	line-height: 1;
	margin-bottom: .9rem;
}

h5,
.h5 {
	font-size: clamp(.8rem, calc(1rem + 0.33vw), 1.25rem);
	line-height: 1;
	margin-bottom: .8rem;
}

h6,
.h6 {
	font-size: clamp(0.7rem, calc(0.92rem + 0.08vw), 0.98rem);
	margin-bottom: .7rem;
}

.colore {
	color: var(--colore);
}

.gradient,
#footer h4 {
  /* Definiamo il gradiente usando le tue variabili */
  background: linear-gradient(to right, var(--colore), var(--colore-3), var(--colore-4));
  /* Applichiamo il background solo dove c'è il testo */
  -webkit-background-clip: text;
  background-clip: text;
  /* Rendiamo il testo trasparente per mostrare il gradiente sottostante */
  -webkit-text-fill-color: transparent;
  color: transparent; 
  /* Opzionale: aggiungiamo un font-weight alto per far risaltare il gradiente */
  font-weight: bold;
  display: inline-block; /* Aiuta a calcolare correttamente l'area del gradiente */
}

/* img {
	border-radius: var(--radius-less);
} */
img[src$=".svg"] {
	border-radius: 0;
}

.grid {
	max-width: 1340px;
}

#maincontainer {
	width: 100%;
	/* max-width: 2000px; */
	margin-inline: auto;
	background-color: var(--main);
}

@media (min-width: 1024px) {
	#maincontainer>.grid {
		padding-inline: 3rem;
	}
}

@media (min-width: 1280px) {
	#maincontainer>.grid {
		padding-inline: 4rem;
	}
}

@media (min-width: 1440px) {
	#maincontainer>.grid {
		padding-inline: 5rem;
	}
}


.button,
a.button,
button,
button.wpcf7-submit,
input.wpcf7-submit,
.wp-element-button {
	color: var(--bianco);
	background-color: var(--colore);
	border: 0px solid var(--colore);
	font-family: var(--mainfont);
	font-weight: var(--weightheavy);
	padding: .6rem 1.25rem .5rem;
	border-radius: var(--radius-more);
	letter-spacing: .04rem;
}

.button:hover,
a.button:hover,
button:hover,
input.wpcf7-submit:hover,
.wp-element-button:hover {
	background-color: var(--colore-3);
	color: var(--bianco);
	text-decoration: none !important;
}

.button.gradiente {
    padding: 0 !important;
    overflow: hidden;
    /* Bordo esterno con i 3 colori */
    background: linear-gradient(to right, var(--colore), var(--colore-3), var(--colore-4));
    border: none;
}

.button.gradiente span {
    height: calc(100% - 4px);
    color: var(--bianco);
    position: relative;
    display: block;
    text-align: center;
    z-index: 1;
    /* Sfondo dello span interno con i 3 colori */
    background: linear-gradient(to right, var(--colore), var(--colore-3), var(--colore-4));
    margin-block: 2px;
    margin-inline: 2px;
    padding: 1rem 1.6rem;
    border-radius: var(--radius);
    transition: color .3s ease-out;
}
.button.gradiente span:after {
    content: "";
    /* Effetto hover: invertiamo l'ordine o cambiamo la direzione per dinamismo */
    background: linear-gradient(to right, var(--colore-4), var(--colore-3), var(--colore));
    position: absolute;
    border-radius: var(--radius);
    top: -2px;
    right: -2px;
    bottom: -2px;
    left: -2px;
    z-index: -1;
    transform: translate(-102%);
    transition: transform .3s ease-out;
}
.button.gradiente:hover span {
    z-index: 1;
    color: var(--bianco);
}
.button.gradiente:hover span:after, 
.button.gradiente:focus span:after, 
.button.gradiente:active span:after {
    transform: translate(0);
}
.button.big.gradiente span {
	padding: 1.1rem 1.8rem;
}

.button.action:hover {
	background-color: var(--colore-3);
} 
/* input.wpcf7-submit {
	background-color: var(--colore-2);
}
input.wpcf7-submit:hover {
	background-color: var(--colore);
	color: var(--bianco);
} */

.button.alert {
	background-color: var(--rosso);
	color: var(--bianco);
	border-color: var(--rosso);
}

.button.alt {
	background-color: var(--bianco);
	color: var(--colore);
	border-color: var(--colore);
}

.button.alt:hover {
	background-color: var(--colore-2);
	color: var(--bianco);
	border-color: var(--colore-2);
}
.button.alt2 {
	background-color: transparent;
	color: var(--bianco);
	border: 1px solid var(--bianco);
}
.button.alt2:hover {
	background-color: var(--colore-3);
	color: var(--bianco);
	border-color: var(--colore-3);
}
.button.alt3 {
	background-color: var(--colore);
	color: var(--bianco);
}
.button.alt3:hover {
	background-color: var(--colore-3);
	color: var(--bianco);
}
.button.arrow {
	padding-right: 3.5rem;
	background-image: url(assets/images/arrow-dots.svg);
	background-repeat: no-repeat;
	background-size: 30px;
	background-position: calc(100% - 10px) 50%;
}

.button.booking {
	padding-right: 3.7rem;
	background-image: url(assets/images/booking.svg);
	background-repeat: no-repeat;
	background-size: 19px;
	background-position: calc(100% - 25px) 50%;
	white-space: nowrap;
}

.button.phone {
	padding-block: 1.1rem;
	font-size: 1.25rem;
	line-height: 1;
	box-shadow: var(--shadow-more);
	padding-right: 3.9rem;
	background-image: url(assets/images/phone.svg);
	background-repeat: no-repeat;
	background-size: 25px;
	background-position: calc(100% - 25px) 50%;
	white-space: nowrap;
}

.button.hoveralt:hover {
	background-color: var(--colore);
	border-color: var(--colore);
	color: var(--main);
	background-image: url(assets/images/arrow-up-dark.svg);
}

.button.small {
	font-size: .8rem;
	padding: .35rem 1rem;
}

.button.small.arrow {
	padding-right: 2.5rem;
	background-size: 20px;
	background-position: calc(100% - 7px) 50%;
}

.button.awesome {
	font-size: 1rem;
	padding: .25rem .5rem;
	background-color: var(--colore);
	border-color: var(--colore);
	border-radius: var(--radius-small);
}
.button.awesome:hover {
	background-color: var(--colore-3);
	border-color: var(--colore-3);
}

.button.smaller {
	font-size: .78rem;
	padding: .25rem .6rem .18rem;
}

.button.medium {
	font-size: .9rem;
	padding: .45rem 1.3rem .5rem;
}

.button.medium.arrow {
	padding-right: 3rem;
	background-size: 28px;
	background-position: calc(100% - 6px) 50%;
}

.button.smaller.arrow {
	padding-right: 2.2rem;
	background-size: 10px;
	background-image: url(assets/images/arrow-up.svg);
	background-position: calc(100% - 15px) 50%;
	background-repeat: no-repeat;
}


.button.big {
	padding-block: 1.1rem;
	font-size: 1.25rem;
	line-height: 1;
}

.button.icon {
	position: relative;
	padding-left: 110px;
	padding-right: 44px;
	text-align: left;
	background-color: var(--colore-2);
}

.button.big.icon:hover {
	background-color: var(--colore);
}

.button.big.icon:before {
	--icon-size: 75px;
	position: absolute;
	content: "";
	width: var(--icon-size);
	height: var(--icon-size);
	background-size: calc(var(--icon-size) - 30px);
	left: 20px;
	top: 2px;
	background-color: var(--colore2);
	background-repeat: no-repeat;
	background-position: center center;
	border-radius: var(--round);
	transition: transform 0.3s ease;
}

.button.big.icon:hover:before {
	animation: growIcon 0.7s ease-in-out infinite;
}

.button.big.icon.telefono:before {
	background-image: url(assets/images/phone.svg);
}

.button.big.icon.email:before {
	background-image: url(assets/images/whatsapp2.svg);
	background-color: var(--colore);
}

@media (min-width: 1280px) {
	.button.big {
		font-size: 1.3rem;
	}

	.button.big.icon:before {
		--icon-size: 80px;
	}
}

.button.hover_color2:hover {
	background-color: var(--colore-2);
}

.button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.paragrafo .titolo a {
	color: var(--colore-2);
}

.paragrafo img {
	border-radius: var(--radius);
	height: 100%;
	object-fit: cover;
}

#topbar {
	min-height: 68px;
	box-shadow: none;
	background-color: transparent;
	border-radius: 0;
	transition: padding .2s ease-in-out;
	width: 100%;
	padding-inline: 4px;
}

#topbar .header {
	background-color: transparent;
	/* max-width: 1800px; */
	transition: padding .2s ease-in-out;
}

.logo {
	position: relative;
	z-index: 3;
}

.logo img {
	width: 100%;
	max-width: 68px;
	/* transform: translateY(.8rem) translateX(.75rem); */
	transition: max-width .2s ease-in-out, transform .2s ease-in-out;
}
@media (min-width: 1024px) {
	.logo {
		margin-left: 1.25rem;
	}

	.logo img {
		max-width: 80px;
		margin-block: 5px;
	}
}

@media (min-width: 1280px) {
	.logo {
		margin-left: 1.5rem;
	}
}
@media (min-width: 1360px) {
	.logo img {
		max-width: 88px;
	}
}


@media (max-width: 1023px) {
	body:not(.show-menu) #topbar  {
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
	.nav-text {
		left: 11px;
		background-color: transparent;
		/* border-radius: var(--round); */
	}

	/* .safari .nav-text {
		left: 4px;
	} */
	/* body.show-menu .nav-text {
		left: 26px;
	}
	 body.safari.show-menu .nav-text {
		left: 25px;
	} */
	/* body.show-menu #maincontainer::after {
		position: absolute;
		content: '';
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		width: 100%;
		background-color: var(--grigio-7);
		z-index: 1;
	}*/
	.top-nav {
		top: 0;
		border-radius: 0;
		max-width: 100%;
		left: 0px !important;
		bottom: 0px !important;
		justify-items: center;
		background-color: var(--colore-5);
		max-height: 0;
		overflow: hidden;
		opacity: .93;
		z-index: 0;
	}

	body.show-menu .top-nav {
		max-height: none;
	}

	.safari .top-nav {
		/* top: 68px;
		left: 1.3rem !important; */
		/* 		max-width: calc(100% - 2.7rem); */
	}

	.top-nav>ul {
		max-width: calc(100% - 2.5rem);
	}

	.top-nav li a {
		border-radius: var(--radius-small);
		text-align: left;
	}
}

.top-nav ul li.lang-item {
	padding: 5px 0 0 0;
	margin-left: 12px;
}

.top-nav ul li.lang-item a {
	padding: 0 9px 0 !important;
}

.top-nav ul li.lang-item a,
.top-nav ul li.lang-item a:hover {
	font-size: .00000000000rem !important;
	color: transparent !important;
	display: block;
	width: 20px;
	height: 20px;
	background-size: contain;
	background-repeat: no-repeat;
}

.top-nav ul li.lang-item-it a {
	background-image: url(assets/images/flag-it.svg) !important;
}

.top-nav ul li.lang-item-en a {
	background-image: url(assets/images/flag-uk.svg) !important;
}

.top-nav ul li.lang-item img {
	display: none !important
}

.top-nav ul li.lang-item-en {
	margin-left: 18px;
}

@media (max-width: 1023px) {
	.top-nav ul li.lang-item {
		margin-top: 10px;
		display: inline-block !important;
	}
}

@media (min-width: 1024px) {
	.top-nav>ul {
		padding: .76rem 1rem .64rem 0;
		transition: transform .3s ease-in-out, margin-top .3s ease-in-out;
		position: relative;
		background-color: transparent;
	}

	#topbar {
		padding-inline: 20px;
	}
	#topbar.up {
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
	}
	#topbar .header {
		padding-block: 2rem;
	}
	#topbar.up .header {
		padding-block: .5rem;
	}
	#topbar.up .top-nav>ul {
		margin-top: 0;
	}

	.top-nav li a {
		color: var(--bianco);
		font-weight: var(--weightmedium);
		padding: .34rem .95rem .34rem;
		text-transform: none;
	}

	.top-nav li>a:hover,
	.top-nav li.active>a,
	.top-nav .active-item>a {
		color: var(--colore);
	}

	.top-nav ul ul {
		margin-top: 1rem;
		min-width: 200px;
		background-color: var(--colore);
		border-radius: var(--radius-less);
		overflow: visible;
	}
	.top-nav ul ul::before {
		position: absolute;
		content: '';
		top: -11px;
		left: 2rem;
		width: 21px;
		height: 11px;
		background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='21' height='11' viewBox='0 0 21 11'><path d='M0 11 C 9 0, 12 0, 21 11 Z' fill='rgba(99, 102, 241,1)'/></svg>") no-repeat center/100% 100%;
	}
	.top-nav ul ul li a {
		color: var(--bianco);
		background-color: transparent;
		border: none !important;
	}

	.top-nav ul ul li a:hover,
	.top-nav ul ul li.active a {
		background-color: var(--bianco);
		color: var(--colore);
	}

	.top-nav ul ul li:first-of-type a {
		padding-top: 1rem;
		border-top-left-radius: var(--radius-less);
		border-top-right-radius: var(--radius-less);
	}
	.top-nav ul ul li:last-of-type a {
		padding-bottom: 1rem;
		border-bottom-left-radius: var(--radius-less);
		border-bottom-right-radius: var(--radius-less);
	}

	.top-nav ul li.login,
	.top-nav ul li.dashboard,
	.top-nav ul li.webmail {
		margin-left: 1rem;
	}
	.top-nav ul li.login a,
	.top-nav ul li.dashboard a,
	.top-nav ul li.webmail a {
		color: var(--colore);
		background-color: var(--bianco);
		border-radius: var(--radius);
		padding: .5rem 2.5rem .34rem 1.1rem;
		background-image: url(assets/images/user.svg);
		background-repeat: no-repeat;
		background-position: calc(100% - 13px) 50%;
		background-size: 22px;
		transform: translateY(-2px);
	}
	.top-nav ul li.login a:hover,
	.top-nav ul li.dashboard a:hover {
		color: var(--bianco);
		background-color: var(--colore-3);	
		background-image: url(assets/images/user-w.svg);
	}
	.top-nav ul li.webmail a {
		background-color: var(--colore);
		color: var(--bianco);
		background-image: url(assets/images/email-w.svg);
		background-size: 18px;
		padding-right: 2.8rem;
		background-position: calc(100% - 16px) 50%;
	}
	.top-nav ul li.webmail a:hover {
		color: var(--bianco);
		background-color: var(--colore-3);
	}

	.top-nav ul li.icon.lingua_it a::before {
		background-image: url(assets/images/flag-it.svg);
	}

	.top-nav ul li.icon.lingua_uk a::before {
		background-image: url(assets/images/flag-uk.svg);
	}
}

@media (min-width: 1280px) {
	#topbar {
		padding-inline: 30px;
	}
	.top-nav ul li.login,
	.top-nav ul li.dashboard {
		margin-left: 2rem;
	}
}

@media (min-width: 1360px) {
	#topbar {
		padding-inline: 40px;
	}

	.top-nav>ul {
		padding: .86rem 1.15rem .84rem 0;
	}

	.top-nav li a {
		padding: .48rem 1rem .38rem;
	}
	.top-nav ul li.login,
	.top-nav ul li.dashboard {
		margin-left: 3rem;
	}
	.top-nav ul li.login a,
	.top-nav ul li.dashboard a,
	.top-nav ul li.webmail a {
		transform: translateY(0);
	}
}

@media (min-width: 1440px) {	
	.top-nav ul li.login,
	.top-nav ul li.dashboard {
		margin-left: 4rem;
	}
}




/* HEADER HOME */
.header-home {
	max-width: 1800px;
	aspect-ratio: 1 / 1.5;
}

.header-home figure {
	height: 100%
}

/* TOP SLIDER HOME */
/* .home #page-header {
	max-height: 0;
	padding-block: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 70px !important;
	overflow: hidden;
}
.home #maincontainer > .grid.topslider {
	max-width: 1800px;
	padding-left: 1.25rem !important;
	padding-right: 1.25rem !important;
}
.home .topslider figure {
	min-height: auto !important;
	height: auto !important;
	max-height: none !important;
	border-radius: var(--radius-small);
	overflow: hidden;
	aspect-ratio: 2 / 1;
}
.home .topslider .contenuto {
	align-items: flex-end !important;
	padding-bottom: 1rem;
}
.home .topslider figure img {
	height: auto !important;
	max-width: 100% !important;
}
.home .topslider .glide__bullets {
	display: none;
}
.home .topslider .glide__arrows {
	display: none;
 }
.glide__bullet {
	border-radius: var(--radius-small);
	background-color: var(--bianco);
	opacity: .3;
	width: 15px;
}
.glide__bullet--active {
	opacity: 1;
} */

/* @media (max-width: 579px) {
	.home .topslider figure {
		aspect-ratio: 1.4 / 1;
	}
	.home .topslider figure img {
		height: 100% !important;
		max-width: none !important;
	}
} */

/* @media (min-width: 620px) {
	.home .topslider .contenuto {
		padding-bottom: 2rem;
	}
}
@media (min-width: 768px) {
	.home .topslider .contenuto {
		padding-bottom: 3rem;
	}
}
@media (min-width: 1024px) {
	.home #page-header {
		margin-bottom: 80px !important;
	}
	.home .topslider .contenuto {
		padding-bottom: 4rem;
	}
}
@media (min-width: 1280px) {
	.glide__bullet {
		width: 20px;
	}
}
@media (min-width: 1440px) {
	.home .topslider .contenuto {
		padding-bottom: 6rem;
	}
}   */








/* slider testo home */
.home .slider-testo {
	max-width: 400px;
	margin-inline: auto;
	grid-column-gap: 0 !important;
}

.home .slider-testo .glide__track {
	border-radius: var(--radius-small);

}

.home .glide_testo .slide {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	background-color: var(--colore-2);
	border-radius: var(--radius-small);
}

.home .glide_testo .slide figure {
	margin: 0 !important;
	width: 100%;
}

.home .glide_testo .slide figure img {
	max-height: 100%;
	overflow: hidden;
	height: 100%;
	width: 100%;
	object-fit: cover;
	max-width: none;
	object-position: center 50%;
}

.home .glide_testo .slide .inner {
	width: 100%;
	text-align: center;
	padding: 1.5rem 1rem;
	color: var(--bianco);
	font-size: 1.1rem;
}

.home .glide_testo .slide .titolo {
	color: var(--bianco);
	text-transform: uppercase;
}

.home .glide_testo .slide .button {
	background-color: var(--colore-2);
	color: var(--bianco);
	text-transform: uppercase;
}

.home .glide_testo .slide .button:hover {
	background-color: var(--bianco);
	color: var(--colore);
}

@media (min-width: 768px) {
	.home .slider-testo {
		max-width: 1280px;
	}

	.home .glide_testo .slide {
		align-items: center;
	}

	.home .glide_testo .slide figure {
		width: 40%;
		height: 100%;
	}

	.home .glide_testo .slide .inner {
		width: 54%;
		text-align: left;
		padding-right: 50px;
	}
}



/* SLIDER LOGHI */

.box.loghi .grid {
	max-width: none;
}

.box.loghi .grid figure {
	text-align: center;
}

.box.loghi .grid figure img {
	margin-inline: auto;
	max-width: 124px;
}



/* ACCORDION HOME */

.accordion .tabs {
	max-width: 500px;
}

.accordion .tab-content {
	font-size: .9rem;
	background-color: var(--bianco);
	border-bottom-left-radius: var(--radius-small);
	border-bottom-right-radius: var(--radius-small);
}

.accordion .tab {
	margin-bottom: 5px;
}

.accordion .tab-label {
	border-radius: var(--radius-small);
	margin-bottom: 0;
	font-size: 1.2rem;
	padding: 1rem 1.25rem;
	font-weight: var(--weightheavy);
}

.accordion .tab-label:hover {
	background-color: var(--colore);
	color: var(--bianco);
}

.accordion .tab>input:checked+.tab-label {
	background-color: var(--colore);
	color: var(--bianco);
}

.accordion .tab>input:checked~.tab-content {
	padding-bottom: .25rem;
}

.accordion .background figure {
	height: 100%;
}

.accordion textarea {
	max-height: 200px;
}

.accordion input.wpcf7-submit {
	padding: .36rem 2.4rem .36rem .96rem;
	font-size: .86rem;
	margin-bottom: .5rem;
	position: relative;
	height: 36px;
}

.accordion span.arrow {
	display: inline-block;
	font-size: .86rem;
	position: relative;
}

.accordion span.arrow::after {
	content: '';
	position: absolute;
	right: 7px;
	top: 7px;
	width: 22px;
	height: 22px;
	background-image: url(assets/images/arrow-dots.svg);
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 2;
}

.accordion .wpcf7-spinner {
	display: none;
}

.accordion div.wpcf7 label.privacy {
	margin-top: -.5rem;
	padding-bottom: .75rem;
}

div.wpcf7 label sup,
fieldset label sup {
	color: var(--colore-4);
}


/* NEWS HOME */

.home .articoli h2 {
	margin-bottom: .25rem;
}

@media (min-width: 768px) and (max-width: 1140px) {
	.home .articoli .archive-grid .item:last-child {
		display: none;
	}
}



/* COUNTER HOME */

.counter-container {
	border-radius: var(--radius-less);
	max-width: 1800px;
	padding-top: 1rem;
	padding-left: 1.25rem !important;
	padding-right: 1.25rem !important;
	background-color: var(--colore-2);
}

.counter-block img {
	width: 110px;
	border: none;
	box-shadow: none;
	padding-bottom: 0;
}

.counter-block .counter {
	font-weight: var(--weightbold);
	margin-top: 0;
}

.counter-block .descrizione {
	font-weight: var(--weightmedium);
}

@media (min-width: 768px) {
	.counter-block img {
		padding-bottom: .5rem;
	}
}




.background_testo {
	width: calc(100% - 2.5rem);
	margin-inline: auto;
	border-radius: var(--radius);
}




/* 3 COLONNE ASIMM HOME */
.tre_col_asimm figure {
	margin: 0 !important;
}

.tre_col_asimm {
	max-width: 1110px;
	gap: 0 !important;
	padding-inline: 1.25rem !important;
}

.tre_col_asimm .item-2,
.tre_col_asimm .item-3 {
	height: 200px;
}

.tre_col_asimm .item-1 {
	margin: 0 !important;
	overflow: hidden;
	border-top-left-radius: var(--radius-small);
	border-top-right-radius: var(--radius-small);
}

.tre_col_asimm .item-2 {
	margin: 0 !important;
	overflow: hidden;
}

.tre_col_asimm .item-3 {
	margin: 0 !important;
	overflow: hidden;
	border-bottom-left-radius: var(--radius-small);
	border-bottom-right-radius: var(--radius-small);
}

.tre_col_asimm .item-2 figure,
.tre_col_asimm .item-3 figure {
	overflow: hidden !important;
	z-index: 0;
	height: 100%;
}

.tre_col_asimm .item-2 figure {
	background-color: var(--colore);
}

.tre_col_asimm .item-3 figure {
	background-color: var(--colore-2);
}

.tre_col_asimm .item-1 figure img,
.tre_col_asimm .item-2 figure img,
.tre_col_asimm .item-3 figure img {
	max-height: 100%;
	overflow: hidden;
	height: 100%;
	width: 100%;
	object-fit: contain;
	/* cover */
	max-width: none;
	object-position: center 50%;
	border-radius: 0;
}

.tre_col_asimm .item a {
	position: absolute;
	z-index: 9;
	display: block;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 !important;
	border-radius: 0;
	background-color: transparent !important;
}

@media (min-width: 581px) {
	.tre_col_asimm {
		max-width: 1110px;
		gap: 0 !important;
		padding-inline: 1.25rem !important;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: 1fr 1fr;
	}

	.tre_col_asimm .item-1 {
		grid-column: 1 / 2;
		grid-row: 1 / 3;
		overflow: hidden;
		position: relative;
		border-top-right-radius: 0;
		border-bottom-left-radius: var(--radius-small);
	}

	.tre_col_asimm .item-2,
	.tre_col_asimm .item-3 {
		grid-column: 2 / 3;
		grid-row: 1 / 2;
		height: 100%;
		max-height: 100%;
		overflow: hidden;
		position: relative;
		border-top-right-radius: var(--radius-small);
	}

	.tre_col_asimm .item-3 {
		grid-row: 2 / 3;
		border-top-right-radius: 0;
		border-bottom-left-radius: 0;
	}
}



.home #page-header h1 {
	color: var(--bianco);
	font-weight: var(--weightbold);
	max-width: 90%;
	margin-inline: auto;
	font-size: clamp(2.4rem, calc(1rem + 5.5vw), 6.2rem);
}
#page-header .paragrafo {
	font-weight: var(--weightmedium);
	max-width: 90%;
	margin-inline: auto;
}
#page-header .breadcrumbs {
	color: var(--colore);
}

#page-header .breadcrumbs a {
	color: var(--colore);
}

#page-header .breadcrumbs a:hover {
	color: var(--colore);
}
.home #page-header {
	padding-top: 9rem !important;
}
@media (min-width: 480px) {
	.home #page-header h1 {
		max-width: 70%;
	}
}
@media (min-width: 680px) {
	.home #page-header {
		padding-top: 11rem !important;
	}
	.home #page-header .paragrafo {
		max-width: 70%;
	}

	.home .coso-s {
		position: absolute;
		left: -199px;
		top: 150px;
		width: 186px;
		height: 628px;
		border-radius: 150px;
		transform: rotate(38deg); 
		overflow: hidden; 
		z-index: -1;
		box-shadow: 8px 0px 0px var(--colore);
	}

	.home .coso-s::before {
		content: "";
		position: absolute;    
		background-image: url('assets/images/coso-s.jpg');
		background-size: cover;
		background-position: center;
		transform: rotate(-38deg);
		top: -24%;
		left: 45%;
		width: 100%;
		height: 100%;
	}

	.home .coso-d {
		position: absolute;
		right: -190px;
		top: -215px;
		width: 186px;
		height: 628px;
		border-radius: 150px;
		transform: rotate(38deg); 
		overflow: hidden; 
		z-index: -1;
		box-shadow: 13px 0px 0px var(--colore);
	}

	.home .coso-d::before {
		content: "";
		position: absolute;    
		background-image: url('assets/images/coso-d.jpg');
		background-size: cover;
		background-position: center;
		transform: rotate(-38deg);
		top: 296px;
		left: 0%;
		width: 100%;
		height: 100%;
	}

}
@media (min-width: 768px) {
	#page-header .paragrafo {
		font-size: 1rem;
	}
}
@media (min-width: 820px) {
	#page-header .paragrafo {
		max-width: 85%;
		font-size: 1.1rem;
	}
}
@media (min-width: 900px) {
	.home .coso-s {
		left: -164px;
	}
	.home .coso-d {
		right: -158px;
	}
	.home .coso-d::before {
		top: 280px;
        left: 13%;
	}
}
@media (min-width: 1024px) {
	.home .coso-s {
		top: 190px;
	}
	.home .coso-d {
		top: -155px;
	}
	.home #page-header {
		padding-top: 12rem !important;
	}
	#page-header h1 {
		max-width: 99%;
	}
}
@media (min-width: 1280px) {
	.home #page-header {
		padding-top: 13rem !important;
		padding-bottom: 8rem;
	}
	#page-header .paragrafo {
		max-width: 70%;
	}
	.home .coso-s {
		left: -124px;
		top: 204px;
		width: 230px;
		height: 628px;
		box-shadow: 13px 0px 0px var(--colore);
	}
	.home .coso-s::before {
		top: -20%;
        left: 25%;
	}
	.home .coso-d {
		right: -128px;
		top: -63px;
		width: 230px;
		height: 628px;
		box-shadow: 13px 0px 0px var(--colore);
	}
	.home .coso-d::before {
		top: 181px;
		left: -7%;
	} 
}
@media (min-width: 1360px) {
	#page-header {
		padding-top: 9rem !important;
	}
	.home #page-header {
		padding-top: 14rem !important;
	}
	#page-header .paragrafo {
		font-size: 1.2rem;
		max-width: 936px;
	}
}
@media (min-width: 1440px) {
	.home .coso-s {
		width: 288px;
		height: 715px;
		left: -142px;
	}
	.home .coso-s::before {
		top: -20%;
        left: 20%;
	}
	.home .coso-d {
		right: -142px;
        top: -40px;
        width: 288px;
		height: 715px;
	}
	.home .coso-d::before {
		top: 151px;
		left: -13%;
		width: 104%;
		height: 104%;
	}
}
@media (min-width: 1600px) {
	.home #page-header {
		padding-top: 17rem !important;
	}
	.home #page-header h1 {
        max-width: 65%;
    }
	.home #page-header .paragrafo {
        max-width: 930px;
    }
	.home .coso-s {
        width: 288px;
        height: 765px;
        left: -117px;
    }
	.home .coso-s::before {
		width: 111%;
        height: 111%;
		left: 23%;
	}
	.home .coso-d {
		top: -50px;
		right: -99px;
		height: 772px;
	}
	.home .coso-d::before {
        top: 100px;
        left: -14%;
        width: 120%;
        height: 120%;
    }
}
@media (min-width: 1700px) {
	.home #page-header h1 {
        max-width: 55%;
    }
}
@media (min-width: 1900px) {
	.home #page-header {
		padding-top: 18rem !important;
	}
	.home .coso-s {
        width: 296px;
        height: 845px;
        left: -97px;
    }
	.home .coso-s::before {
		width: 138%;
        height: 138%;
		left: 24%;
		top: -29%;
	}
	.home .coso-d {
		top: -50px;
		right: -90px;
		height: 845px;
	}
	.home .coso-d::before {
        top: 100px;
        left: -10%;
        width: 130%;
        height: 130%;
    }
}
@media (min-width: 2000px) {
	.home #page-header {
        padding-top: 20rem !important;
    }
	.home #page-header h1 {
        max-width: 60%;
    }
	.home .coso-s {
        width: 304px;
        height: 857px;
        left: -113px;
    }
}
@media (min-width: 2200px) {
	.home #page-header {
        padding-top: 22rem !important;
    }
	.home #page-header h1 {
	    max-width: 64%;
	}
}
@media (min-width: 2300px) {
	.home #page-header {
        padding-top: 24rem !important;
    }
	.home .coso-s {
        width: 304px;
        height: 972px;
        left: -105px;
		top: 165px;
    }
	.home .coso-d {
        top: -70px;
        right: -70px;
        height: 967px;
		width: 300px;
    }
	.home .coso-d::before {
        top: 100px;
        left: 5%;
        width: 150%;
        height: 150%;
    }
}





#header-image .breadcrumbs {
	color: var(--bianco);
}

#header-image .breadcrumbs a {
	color: var(--bianco);
}

#header-image .breadcrumbs a:hover {
	color: var(--colore-2);
}

.single .breadcrumbs {
	color: var(--grigio);
	font-size: .9rem;
}

/* .single .breadcrumbs a {
	color: var(--colore-2);
}
.single .breadcrumbs a:hover {
	color: var(--colore);
} */




#header-image {
	padding: 0 !important;
}

#header-image h1 {
	color: var(--bianco);
	/* font-size: clamp(2.75rem, calc(1rem + 4vw), 4.5rem);
	line-height: 1; */
}

#header-image .paragrafo {
	color: var(--bianco);
	font-weight: var(--weightnormal);
	font-size: clamp(1rem, calc(.25rem + 1vw), 1.1rem);
}

/* #header-image .image-holder {
	left: 1.25rem;
	right: 1.25rem;
	clip-path: url("#rounded-clip");
}
.firefox #header-image .image-holder {
	left: -1.75rem;
}
@media (min-width: 1280px) {
	.firefox #header-image .image-holder {
		left: -2.75rem;
	}
}
@media (min-width: 1440px) {
	.firefox #header-image .image-holder {
		left: -3.75rem;
	}
} */

#header-image.third .grid {
    padding-bottom: 1rem !important;
}
#header-image.third,
#header-image.fourth {
    min-height: 196px !important;
}
#header-image.fourth .grid {
    padding-bottom: 1rem !important;
}
@media (min-width: 1024px) {
  	#header-image.third,
	#header-image.fourth {
		min-height: 260px !important;
	}
}
@media (min-width: 1360px) {
    #header-image.fourth .grid {
        padding-top: 6rem !important;
    }
}

.header-content {
    display: flex;
    align-items: center;
}

.home .header-content .grid {
	max-width: 100% !important;
	padding-block: 0 !important;
}

.home .header-content {

}

.home #header-image {
	min-height: 500px;
	height: 75svh;
}

.home #header-image h1 {
	color: var(--colore);
	font-size: clamp(2rem, calc(1rem + 2.6vw), 3.5rem);
}

.home .header-content .grid {
	padding-inline: 0 !important;
}

.home .header-content .grid>div {

}

.home #header-image .paragrafo {
	color: var(--main);
}

@media (max-width: 767px) {
	.home #header-image .paragrafo {
		display: none;
	}
}

@media (min-width: 425px) {
	.home .header-content .grid>div {
		padding-inline: 2rem;
	}
}

@media (min-width: 768px) {
	.home #header-image {
		min-height: 700px;
	}
}

@media (min-width:1024px) {

}

@media (min-width:1280px) {
	.home .header-content .grid>div {
		
	}

	.home .header-content h1 {
	}

	.home .header-content .paragrafo {
	}
}

@media (min-width: 1440px) {
	.home #header-image {
		min-height: 800px;
	}

	.home .header-content .grid>div {
		
	}

	.home .header-content h1 {
	}

	.home .header-content .paragrafo {
	}

	.home .header-content {
		bottom: 80px;
	}
}

@media (min-width: 1600px) {
	.home .header-content .grid>div {
	}
}

@media (min-width: 1700px) {
	.home .header-content .grid>div {
		
	}
}





.paragrafo.intro .titolo {
	max-width: 86%;
}

.paragrafo.intro .testo {
	color: var(--grigio-3);
}

@media (min-width: 520px) {
	.paragrafo.intro .titolo {
		max-width: 77%;
	}
}

@media (min-width: 600px) {
	.paragrafo.intro .titolo {
		max-width: 72%;
	}
}

@media (min-width: 660px) {
	.paragrafo.intro .titolo {
		max-width: 69%;
	}
}

@media (min-width: 768px) {
	.paragrafo.intro .titolo {
		max-width: 63%;
	}

	.paragrafo.intro .testo {
		font-size: 1.06rem;
	}
}

@media (min-width: 992px) {
	.paragrafo.intro .titolo {
		max-width: 59%;
	}
}

@media (min-width: 1280px) {
	.paragrafo.intro .titolo {
		max-width: 58%;
	}
}



/* DUE BLOCCHI GRANDI HOME */

.due-blocchi-big {
	margin-top: 6rem;
}
.due-blocchi-big .item {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	border-radius: var(--radius);
	padding: .75rem .75rem .75rem 1.25rem;
	background-color: var(--colore-2);
}
.due-blocchi-big figure {
	margin: 0 !important;
	border-radius: var(--radius-less);
	overflow: hidden;
	width: 40%;
	aspect-ratio: 1 / 1;
}
.due-blocchi-big figure img {
	width: 100%;
	height: 100%;
	width: 250px !important;
	height: 250px !important;
	max-width: none !important;
	object-fit: cover;
}
.due-blocchi-big .titolo_superiore {
	text-transform: uppercase;
	font-weight: var(--weightheavy);
	font-size: .86rem;
	color: var(--colore);
}
.due-blocchi-big .inner {
	width: 60%;
}
.due-blocchi-big .button {
	margin-top: 0rem !important;
}
.due-blocchi-big .item-2 {
	background-color: var(--colore);
}
.due-blocchi-big .item-2 .titolo_superiore {
	color: var(--colore-2);
}
.due-blocchi-big .item-2 .button {
	background-color: var(--bianco);
	color: var(--colore);
}
.due-blocchi-big .item-2 .button:hover {
	background-color: var(--colore-2);
	color: var(--bianco);
}
@media (min-width: 425px) {
	.due-blocchi-big .item {
		padding-left: 7%;
	}
}
@media (min-width: 581px) and (max-width: 767px) {
	.due-blocchi-big .item {
		flex-direction: column;
		align-items: flex-start;
		max-width: 288px;
	}
	.due-blocchi-big figure {
		width: 100%;
		max-width: 250px;
	}
	.due-blocchi-big .inner {
		width: 100%;
		padding-top: 1.5rem;
	}
	.due-blocchi-big .item {
		padding: 1.1rem;
	}
}
@media (min-width: 768px) {
	.due-blocchi-big .button {
		margin-top: 1rem !important;
	}
}
@media (min-width: 1024px) {
	 .due-blocchi-big {
		grid-column-gap: 50px !important;
	 }
	.due-blocchi-big .item {
		padding-left: 8%;
	}
}
@media (min-width: 1280px) {
	.due-blocchi-big {
		margin-top: -1rem !important;
	}
}
@media (min-width: 1600px) {
	.due-blocchi-big {
		margin-top: 2rem !important;
	}
}
@media (min-width: 1800px) {
	.due-blocchi-big {
		margin-top: 3rem !important;
	}
}
@media (min-width: 2200px) {
	.due-blocchi-big {
		margin-top: 4rem !important;
	}
}


/* SERVIZI HOME */

.servizi-home {
	color: var(--bianco);
}
.servizi-home .background figure.bg {
	height: 100%;
	border-radius: var(--radius);
	overflow: hidden;
}
.servizi-home .contenuto {
	background-color: var(--colore);
	border-radius: var(--radius);
	padding: 2rem;
}
.servizi-home ul {
	margin-bottom: 0 !important;
}
@media (max-width: 1359px) {
	.servizi-home {
		contain: initial !important;
		overflow: visible !important;
	}
	.servizi-home .contenuto {
		grid-column: 1 / 13 !important;
		margin-top: 2rem;
		margin-bottom: -2rem;
	}
	.servizi-home  {
		padding-bottom: 0 !important;
	}
}
@media (min-width: 500px) {
	.servizi-home .contenuto {
		grid-column: 3 / 13 !important;
	}
}
@media (min-width: 620px) {
	.servizi-home .contenuto {
		grid-column: 4 / 13 !important;
	}
}
@media (min-width: 860px) {
	.servizi-home .contenuto {
		grid-column: 5 / 13 !important;
		padding: 2.5rem;
	}	
}
@media (min-width: 1024px) {
	.servizi-home .background {
		padding-inline: 1.75rem;
	}
	.servizi-home .contenuto {
		grid-column: 6 / 13 !important;
	}
}
@media (min-width: 1160px) {
	.servizi-home .contenuto {
		grid-column: 7 / 13 !important;
	}
}
@media (min-width: 1280px) {
	.servizi-home {
		max-width: 1300px !important;
	}
	.servizi-home .background {
		padding-inline: 2.75rem;
	}
	.servizi-home .contenuto {
		grid-column: 7 / 13 !important;
	}
}
@media (min-width: 1440px) {
	.servizi-home .background {
		padding-left: 3.75rem;
		padding-right: 6.75rem;
	}
	.servizi-home .contenuto {
		margin-left: 2rem;
		margin-right: -1rem;
	}
}




/* PARAGRAFO ASIMM */

.paragrafo-asimm .contenuto {
	transform: translateY(-20px);
	padding: 2.25rem 1.25rem 2.25rem !important;
	border-bottom-left-radius: var(--radius);
	border-bottom-right-radius: var(--radius);
	background-color: var(--grigio-6);
}

.paragrafo-asimm.dark .contenuto {
	background-color: var(--main);
	color: var(--colore);
}

.paragrafo-asimm.rosso .contenuto {
	background-color: var(--colore);
	color: var(--bianco);
}

.paragrafo-asimm.rosso .contenuto .titolo strong {
	color: var(--bianco);
}

.paragrafo-asimm.blu .contenuto {
	background-color: var(--colore-2);
	color: var(--colore);
}

.paragrafo-asimm.dark .contenuto .titolo,
.paragrafo-asimm.dark .contenuto .testo h2,
.paragrafo-asimm.dark .contenuto .testo h3,
.paragrafo-asimm.blu .contenuto .titolo,
.paragrafo-asimm.blu .contenuto .testo h2,
.paragrafo-asimm.blu .contenuto .testo h3 {
	color: var(--colore);
}

.paragrafo-asimm.rosso .contenuto .titolo,
.paragrafo-asimm.rosso .contenuto .testo h2,
.paragrafo-asimm.rosso .contenuto .testo h3 {
	color: var(--bianco);
}

.paragrafo-asimm.rosso input.wpcf7-submit:hover {
	background-color: var(--bianco);
	color: var(--main);
}

@media (max-width: 1279px) {
	.paragrafo-asimm .titolo br {
		display: none;
	}
}

@media (max-width: 679px) {
	.paragrafo-asimm .contenuto {
		grid-column: span 12;
		order: 2 !important;
	}

	.paragrafo-asimm figure {
		grid-column: span 12 !important;
		order: 1 !important;
	}
}

@media (min-width: 520px) {
	.paragrafo-asimm .contenuto {
		padding: 2.25rem 2.25rem 2.25rem !important;
	}
}

@media (min-width: 680px) {
	.paragrafo-asimm .contenuto {
		grid-column: span 7;
		transform: translateY(0);
		padding: 2.25rem 2rem 2.25rem !important;
		border-top-left-radius: var(--radius);
		border-top-right-radius: var(--radius);
	}

	.paragrafo-asimm figure {
		grid-column: span 5 !important;
	}
}

@media (min-width: 992px) {
	.paragrafo-asimm .contenuto {
		grid-column: span 8;
	}

	.paragrafo-asimm figure {
		grid-column: span 4 !important;
	}
}

@media (min-width: 1024px) {
	.paragrafo-asimm {
		grid-column-gap: 40px !important;
	}

	.paragrafo-asimm .contenuto {
		padding: 2.25rem 2.5rem 2.5rem !important;
	}
}

@media (min-width: 1280px) {
	.paragrafo-asimm .inner {
		display: grid;
		grid-template-columns: repeat(12, 1fr);
	}

	.paragrafo-asimm .contenuto {
		padding: 3.25rem 3.75rem 2.65rem 3.8rem !important;
	}

	.paragrafo-asimm .titolo {
		grid-column: span 12;
	}

	.paragrafo-asimm .testo {
		grid-column: span 12;
		padding-left: 0rem;
	}

	.paragrafo-asimm.wide .testo {
		grid-column: span 12;
		padding-left: 0rem;
	}

	.paragrafo-asimm .button {
		grid-column: span 7;
	}

	.paragrafo-asimm figure {
		grid-column: span 4 !important;
	}
}

@media (min-width: 1440px) {
	.paragrafo-asimm figure {
		grid-column: span 5 !important;
	}

	.paragrafo-asimm .contenuto {
		grid-column: span 7;
	}

	.paragrafo-asimm .titolo {
		padding-right: 2rem;
	}
}











/* PROGETTI HOME */

.slider-cpt {
	background-color: var(--colore);
	border-radius: var(--radius);
	width: calc(100% - 2.5rem);
	padding: 3rem 3rem 2rem 3rem !important;
}
@media (max-width: 424px) {
	.slider-cpt .side {
		transform: translateX(-1rem);
		width: calc(100% + 2.2rem);
	}
}
.cpt-grid .item {
	position: relative;
}

.cpt-grid .wrap {
	position: relative;
	border-radius: var(--radius-less);
	overflow: hidden;
	transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
	max-width: 361px;
	margin-inline: auto;
}

.cpt-grid .item:hover .wrap {
	transform: scale(1.06) !important;
	box-shadow: var(--shadow-more);
}

.cpt-grid .item figure {
	border-radius: var(--radius-small);
	overflow: hidden;
	margin: 0;
}
.cpt-grid .item figure img {
	image-rendering: pixelated;
}
.cpt-grid .item .titwrap {
	position: absolute;
	display: block;
	z-index: 2;
	bottom: 40px;
	left: 0;
	text-align: left;
	max-width: 88%;
	transition: bottom 0.3s ease-in-out;
	display: none;
}

.cpt-grid .item .titwrap::before {
	content: '';
	background-color: var(--bianco);
	position: absolute;
	inset: 0;
	opacity: .9;
	border-top-right-radius: var(--radius-small);
	border-bottom-right-radius: var(--radius-small);
	z-index: -1;
	transition: background-color 0.3s ease-in-out;
}

.cpt-grid .item .titwrap:hover::before {
	background-color: var(--colore);
	opacity: .9;
}

.cpt-grid .item:hover .titwrap {
	bottom: 80px;
}

.cpt-grid .item .titwrap .titolo {
	margin-bottom: .2rem !important;
	font-size: 1.4rem;
	font-weight: var(--weightmedium);
	color: var(--colore);
}

.cpt-grid .item .titwrap .titolo strong {
	display: block;
}

.cpt-grid .item .titwrap a {
	display: inline-block;
	padding: 1rem 1.2rem .72rem .8rem;
}

.cpt-grid .item .titwrap:hover a .titolo {
	color: var(--bianco);
}

.slider-cpt .glide__track,
.slider-cpt .glide__slides {
	padding-block: .65rem !important;
}

.slider-cpt .glide__track {
	overflow: visible !important;
}

.glide__arrow {
	border-radius: var(--radius-more);
}
.glide__arrow:hover::before {
	border-color: var(--bianco);
}
@media (max-width: 9991279px) {
	.slider-cpt .glide__arrows {
		display: none;
	}
}
@media (max-width: 1023px) {
	.slider-cpt {
		margin-top: 6rem !important;
	}
	.slider-cpt .titolo {
		margin-bottom: 24px !important;
	}
}
@media (min-width: 1024px) {
	.slider-cpt {
		width: calc(100% - 6.5rem);
	}
}
@media (min-width: 768px) {
	.slider-cpt {
		contain: initial !important;
		overflow: visible !important;
		/* width: calc(100% - 10.5rem) !important; */
		padding: 0rem 3rem 3rem 3rem !important;
		position: relative;
		/* transform: translateX(-1rem); */
	}
	.slider-cpt .archivio {
		position: absolute;
		bottom: 2rem;
		left: 3rem;
	}
	.slider-cpt .glide__track,
	.slider-cpt .glide__slides {
		overflow: visible !important;
		overflow-y: visible !important;
	}

	.slider-cpt .glide__track {
		clip-path: inset(0px -18px 0px -16px);
	}

	.slider-cpt .side {
		grid-column: 1 / 6;
		padding-top: 4rem;
	}
	.slider-cpt .cpt-grid {
		grid-column: 6 / 18;
		transform: translateX(0rem) translateY(3rem);
		padding-inline: 0rem !important;
	}

	.slider-cpt>.grid>.titolo strong {
		display: block;
	}

	.slider-cpt .glide__arrows {
		transform: translateY(-50px) translateX(-186px);
	}

	.slider-cpt .glide__arrow {
		top: auto !important;
		bottom: 20% !important;
		right: auto;
		background-color: transparent;
		border: 1px solid var(--colore-2);
	}

	.slider-cpt .glide__arrow--right {
		left: 90px;
	}

	.slider-cpt .glide__arrow--left {
		left: 42px;
	}

	.glide__arrow::before {
		border-color: var(--colore-2);
	}

	.slider-cpt .glide__arrow:hover {
		background-color: var(--colore-2);
	}

	.glide__arrow:hover::before {
		border-color: var(--bianco);
	}

}
@media (min-width: 1024px) {
	.slider-cpt .cpt-grid {
		grid-column: 6 / 20;
		transform: translateX(0rem) translateY(3rem);
		margin-right: 1.5rem !important;
	}
}
@media (min-width: 1060px) {
	.slider-cpt .cpt-grid {
		transform: translateX(1rem) translateY(3rem);
		margin-right: 0rem !important;
	}
}
@media (min-width: 1080px) {
	.slider-cpt .cpt-grid {
		transform: translateX(3rem) translateY(3rem);
	}
}
@media (min-width: 1280px) {
	.slider-cpt {
		width: calc(100% - 7.5rem) !important;
		transform: translateX(0rem);
		padding: 0rem 3rem 0rem 4rem !important;
	}
	.slider-cpt .glide__track {
		clip-path: inset(0px -23px 0px -20px);
	}
	.slider-cpt .side {
		grid-column: 1 / 6;
		padding-top: 4rem;
	}
	.slider-cpt .cpt-grid {
		grid-column: 6 / 20;
		transform: translateX(2rem) translateY(2.5rem);
	}
	.slider-cpt .archivio {
		left: 4rem;
	}
}
@media (min-width: 1344px) {
	.slider-cpt {
		max-width: 1200px !important;
	}		
}
@media (min-width: 1360px) {
	.slider-cpt {
		width: calc(100% - 9.5rem) !important;
	}
	.slider-cpt .glide__track {
		max-width: 740px !important;
	}
	.slider-cpt .cpt-grid {
        transform: translateX(1rem) translateY(2.5rem);
    }
}
@media (min-width: 1440px) {
	.slider-cpt {
		max-width: 1170px !important;
		padding: 0rem 3rem 0rem 4rem !important;
	}
	.slider-cpt .cpt-grid {
		grid-column: 5 / 14;
		transform: translateX(-1.5rem) translateY(2.5rem);
	}
	.slider-cpt .glide__track {
		max-width: 750px !important;
	}
	.slider-cpt .side {
        grid-column: 1 / 5;
        padding-top: 6rem;
    }
	.slider-cpt .archivio {
		bottom: 3rem;
	}
	.slider-cpt .glide__arrows {
		transform: translateY(-60px) translateX(-188px);
	}

	.slider-cpt .glide__arrow {
		width: 42px;
		height: 42px;
	}

	.slider-cpt .glide__arrow--left {
		left: 34px;
	}

	.glide__arrow--left:before {
		width: 11px;
		height: 11px;
		top: 14px;
		left: 16px;
	}

	.glide__arrow--right:before {
		width: 11px;
		height: 11px;
		top: 14px;
		left: 11px;
	}
}



/* CERTIFICAIONI */

.certificazioni .slider {
	background-color: var(--bianco);
	border-radius: var(--radius);
	padding-inline: 1rem;
}
.certificazioni .slider .item img {
	max-width: 154px;
	margin: 0 auto;
}







/* GRID NEWS */

.archive-grid .item {
	background-color: var(--bianco);
	padding: 1rem 1rem 1.1rem;
	border-radius: var(--radius);
}

.archive-grid .inner {
	position: relative;
	height: 100%;
	padding-bottom: 3rem;
}

.archive-grid figure {
	position: relative;
	margin-bottom: 1.1rem !important;
	border-radius: var(--radius-small);
	overflow: hidden;
	background-color: var(--bianco);
}

.archive-grid figure img {
	border-radius: 0;
}

.archive-grid .item h3 {
	font-size: 1.05rem;
	font-weight: var(--weightheavy);
	line-height: 1.12;
	margin-bottom: .5rem;
}

.archive-grid .item h3 a {
	color: var(--main);
}

.archive-grid .item h3 a:hover {
	color: var(--colore);
}

.archive-grid .excerpt {
	--max-lines: 4;
	--this-line-height: 1.2;
	font-size: 0.8rem;
	line-height: var(--this-line-height);
	height: calc(var(--max-lines) * 0.8rem * var(--this-line-height));
	max-height: calc(var(--max-lines) * 0.8rem * var(--this-line-height));
	overflow: hidden;
	position: relative;
}

.archive-grid .data {
	font-weight: var(--weightheavy);
	color: var(--colore);
	padding: 0;
}

.archive-grid .button {
	position: absolute;
	bottom: 0;
	left: 0;
	background-image: url(assets/images/arrow-up.svg);
	background-color: var(--colore);
}

.archive-grid .button:hover {
	background-color: var(--colore-2);
	color: var(--bianco);
}


.category-description {
	font-size: 1.1rem;
	font-weight: var(--weightmedium);
}

#categoryForm select {
	max-width: 300px;
	height: 36px;
}


.icone-blu .foto-icona figure img {
	background-color: var(--colore-2);
	border-radius: var(--radius-small);
}




/*  SERVIZI TRATTAMENTI HOME */

.trattamenti-home.griglia .parent-gap {
	grid-column-gap: 20px !important;
}

.trattamenti-home .item {
	padding: .7rem .5rem 5rem .7rem;
	margin-bottom: 0 !important;
	position: relative;
}

.trattamenti-home .item img {
	position: relative;
	z-index: 1;
	transition: transform 0.3s ease-in-out;
}

.trattamenti-home .item:hover img {
	transform: scale(1.1);
}

.trattamenti-home .item a {
	background: linear-gradient(to right, var(--colore-2), var(--colore));
	border-radius: var(--radius-small);
	color: var(--bianco);
	display: block;
	position: absolute;
	inset: 0;
	padding: 7.5rem .5rem 0 1.25rem;
	transition: background 0.3s ease-in-out, background-color 0.3s ease-in-out, transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.trattamenti-home .item:hover a {
	background: linear-gradient(to right, var(--colore), var(--colore));
	transform: scale(1.06);
	box-shadow: var(--shadow-more);
}

.trattamenti-home .item h3 {
	font-size: 1.15rem;
}

.trattamenti-home .item h3 span {
	display: block;
	font-size: .84rem;
	padding-top: .3rem;
}

@media (min-width: 581px) and (max-width: 800px) {
	.trattamenti-home .item {
		grid-column: span 4 !important;
	}
}

@media (min-width: 1024px) {
	.trattamenti-home .item h3 {
		font-size: 1.25rem;
	}

	.trattamenti-home .item h3 span {
		font-size: .94rem;
	}
}

@media (min-width: 1280px) {
	.trattamenti-home .item {
		padding: 1rem .5rem 4.35rem 1rem;
	}

	.trattamenti-home .item a {
		padding: 8.2rem 1rem 0 1.5rem;
	}
}

@media (min-width: 1440px) {
	.trattamenti-home .item h3 {
		font-size: 1.4rem;
	}

}








/* NEWSLETTER */

.newsletter .contenuto {
	background-color: var(--colore);
	color: var(--colore);
}

.newsletter .titolo {
	grid-column: span 12;
	color: var(--colore);
}

.newsletter .testo {
	grid-column: span 12;
	padding-left: 0;
}

.newsletter label {
	visibility: hidden;
}

.newsletter .wpcf7-email {
	max-width: 480px;
}

.newsletter label.privacy {
	visibility: visible;
}

.newsletter label.privacy a {
	color: var(--main);
}

.newsletter label.privacy a:hover {
	color: var(--bianco);
}

.newsletter input.wpcf7-submit {
	background-color: var(--main);
}




/* AUDIO GALLERY */

.audio-grid {
	grid-template-columns: repeat(1, 1fr);
	gap: 36px;
}

.wp-block-audio {
	padding-top: 2rem;
	padding-bottom: 1rem;
	border-radius: var(--radius);
	width: 100%;
	max-width: 460px;
	margin-inline: auto;
}

.wp-block-audio:nth-child(3n+1) {
	background-color: var(--colore) !important;
	color: var(--colore-2);
}

.wp-block-audio:nth-child(3n+2) {
	background-color: var(--colore-2) !important;
	color: var(--colore);
}

.wp-block-audio:nth-child(3n+3) {
	background-color: var(--colore-2) !important;
	color: var(--colore);
}

.wp-block-audio audio {
	padding-inline: 2rem;
}

.wp-block-audio figcaption {
	font-size: 1.1rem;
	line-height: 1.2;
	padding-inline: 2rem;
	padding-top: .5rem;
	font-weight: var(--weightheavy);
}

@media (min-width: 425px) {
	.audio-grid {
		padding-inline: 2rem !important;
	}
}

@media (min-width: 768px) {
	.audio-grid {
		grid-template-columns: repeat(2, 1fr);
		padding-inline: 3rem !important;
	}
}

@media (min-width: 900px) {
	.audio-grid {
		max-width: 900px;
	}
}

@media (min-width: 1280px) {
	.audio-grid {
		grid-template-columns: repeat(3, 1fr);
		max-width: 1000px;
	}
}

@media (min-width: 1440px) {
	.audio-grid {
		max-width: 1160px;
	}
}



/* VIDEO GALLERY */

.videogallery {
	padding: 0;
}

.elenco_video {
	grid-template-columns: repeat(1, 1fr);
	gap: 36px;
	padding: 0;
}

.elenco_video .item {
	padding: 1.5rem;
	border-radius: var(--radius);
	width: 100%;
	max-width: 460px;
	margin-inline: auto;
}

.elenco_video img {
	border-radius: var(--radius);
}

.elenco_video .titolo_video {
	font-weight: var(--weightheavy);
	padding-top: 1.25rem;
	padding-bottom: .35rem;
}

.elenco_video .item:nth-child(3n+1) {
	background-color: var(--colore) !important;
	color: var(--colore-2);
}

.elenco_video .item:nth-child(3n+2) {
	background-color: var(--colore-2) !important;
	color: var(--colore);
}

.elenco_video .item:nth-child(3n+3) {
	background-color: var(--colore-2) !important;
	color: var(--colore);
}

@media (min-width: 680px) {
	.elenco_video {
		padding: 2rem 2rem 1rem;
	}

	.elenco_video>.grid {
		grid-column-gap: 36px;
	}

	.elenco_video>.grid>div {
		grid-column: span 6;
	}
}

@media (min-width: 768px) {
	.elenco_video {
		grid-template-columns: repeat(2, 1fr);
		padding-inline: 3rem !important;
	}
}

@media (min-width: 992px) {
	.elenco_video>.grid>div {
		grid-column: span 4;
	}
}

@media (min-width: 1280px) {
	.elenco_video {
		padding: 2.5rem 2.5rem 1rem;
	}

	.elenco_video .item {
		padding: 2rem;
	}

	.elenco_video>.grid {
		grid-column-gap: 46px;
	}
}





/* FOTO GALLERY */

.gallery figure {
	width: 100%;
	height: 100%;
	border-radius: var(--radius);
	overflow: hidden;
}

.gallery figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (min-width: 1440px) {
	.gallery .grid {
		grid-column-gap: 30px;
	}
}







/* SINGLE */

.single-post .main-image figure {
	position: relative;
}

.single-post .main-image .data {
	position: absolute;
	top: 0;
	left: 0;
	width: 86px;
	line-height: 1;
	text-align: center;
	padding: 1rem 0.6rem 1rem;
	margin-bottom: 0;
	font-weight: var(--weightbold);
	color: var(--main);
	background-color: var(--colore);
	z-index: 2;
	border-bottom-right-radius: var(--radius);
}

/*
.single-post .main-image .data::before,
.single-post .main-image .data::after {
	content: '';
	width: 25px;
	height: 25px;
	background-image: url(assets/images/corner.svg);
	background-repeat: no-repeat;
	background-size: 25px;
	position: absolute;
	top: 0;
	right: -25px;
	z-index: -1;
	display: block;
}
.single-post .main-image .data::after {
	right: auto;
	top: auto;
	bottom: -25px;
	left: 0;
	transform: rotate(0deg);
}
*/
.single-post .main-image .giorno {
	font-size: 2.15rem;
	display: block;
}

.single-post .main-image .mese {
	font-size: .6rem;
	display: block;
}

.single-post .main-image .anno {
	font-size: .8rem;
	display: block;
}

.main-image img {
	border-radius: var(--radius);
}

.single-post #single_header .data {
	font-size: .8rem;
}

.single-post #single_header .sep {
	display: inline-block;
	padding-inline: .5rem;
	color: var(--grigio-3);
}

/* .single-post article.hentry .center br {
	display: none;
 } */
@media (min-width: 768px) {
	#single_header h1 {
		padding-inline: 40px;
	}
}

@media (min-width: 1024px) {
	.single-post #single_header {
		margin-top: -1.5rem !important;
	}

	.single-post #single_header .data {
		margin-bottom: 1.5rem !important;
	}
}





/* GENERIC STUFF */

.griglia figure {
	position: relative;
	border-radius: var(--radius);
	overflow: hidden;
}

@media (min-width: 1280px) {
	.griglia .parent-gap {
		grid-column-gap: 40px !important;
	}
}




/*  PAGINA ORGANIGRAMMA */

.page-template-page-organigramma .griglia {
	margin-bottom: 4rem;
}

.page-template-page-organigramma .griglia:last-of-type {
	margin-bottom: 7rem;
}

.page-template-page-organigramma .griglia .item img {
	max-width: 210px;
}

.page-template-page-organigramma .griglia .item {
	grid-column: span 12;
}

.page-template-page-organigramma .griglia .titolo_item {
	font-size: 1.2rem;
	font-weight: var(--weightnormal);
	margin-bottom: .5rem;
}

.page-template-page-organigramma .griglia .descrizione {
	font-size: .74rem;
	color: var(--grigio-3);
	text-transform: uppercase;
	letter-spacing: .02rem;
}

.page-template-page-organigramma .griglia .descrizione p {
	margin-bottom: 0;
}

.page-template-page-organigramma .griglia .email a {
	font-size: .88rem;
}

@media (min-width: 640px) {
	.page-template-page-organigramma .griglia .item {
		grid-column: span 6;
	}
}

@media (min-width: 820px) {
	.page-template-page-organigramma .griglia .item {
		grid-column: span 4;
	}
}

@media (min-width: 1280px) {
	.page-template-page-organigramma .griglia .item {
		grid-column: span 3;
	}
}


/* MAPPA */

.google-maps {
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: var(--shadow);
}


/* PAGINA CONTATTI */

@media (min-width: 1240px) {

	.page-id-7969 .InnerBlocks-container,
	.page-id-7741 .InnerBlocks-container {
		max-width: 1200px;
		margin-inline: auto;
	}
}



/* FSLIGHTBOX*/

.fslightbox-container {
	background-color: var(--colore) !important;
}

.fslightbox-absoluted>div {
	border-radius: var(--radius);
	overflow: hidden;
}




/* FOOTER */

#footer {
	background-color: transparent;
	width: 100%;
	margin-inline: auto;
	font-size: .86rem;
	margin-top: -1px;
	border-top: 2px solid; /* Lo spessore è necessario */
    border-image-source: linear-gradient(to right, var(--colore), var(--colore-3), var(--colore-4));
    border-image-slice: 2;
}

#footer h4 {
	font-size: 1.25rem;
	line-height: 1.3;
}

#footer a {
	color: var(--bianco);
}

#footer a:hover,
#footer li.active a {
	color: var(--colore-3);
}

#footer .footer-logo {
	width: 78px;
	height: 43px;
	filter: brightness(0) invert(1);
}
#footer .credits-logo {
    display: inline-block;
    width: 34px;
    height: 19px;
    margin: 0 0 0 3px;
}
#footer .social {
	margin-top: 6px;
}

#footer .social {
	background-color: transparent;
	border-color: var(--bianco);
	color: var(--bianco);
}

#footer .social:hover {
	background-color: var(--bianco);
	border-color: var(--bianco);
	color: var(--colore);
}

#top-footer {
	background-color: transparent;
	color: var(--bianco);
	position: relative;
}

#top-footer>div {
	padding-inline: 1.25rem;
}

#top-footer ul {
	list-style-type: none;
	padding-left: 0;
}

#top-footer .blocco-1 fieldset div:last-of-type {
	max-height: 1rem;
}

#sub-footer {
	background-color: transparent;
	color: var(--bianco);
}

#sub-footer>div {
	padding-inline: 1.25rem;
}

@media (min-width: 580px) and (max-width: 767px) {
	#top-footer .blocco-1 {
		grid-column: span 12;
	}
}

@media (min-width: 768px) {
	#top-footer {
		padding-top: 75px !important;
	}	
	#top-footer .blocco-2,
	#top-footer .blocco-3 {
		padding-top: 1.3rem;
	}
}

@media (min-width: 1024px) {
	#top-footer {
		padding-top: 95px !important;
		padding-inline: 2rem !important;
	}
	#top-footer {
		padding-bottom: 10px !important;
	}
	#top-footer .blocco-2,
	#top-footer .blocco-3 {
		padding-top: 1rem;
	}
	#sub-footer {
		padding-inline: 2rem !important;
	}
}

@media (min-width: 1280px) {
	#sub-footer {
		padding-inline: 4rem !important;
	}
}





/*  CRM  */

.ticket-title p {
	margin-bottom: 0;
	--max-lines: 1;
	--this-line-height: 1.2;
	font-size: 0.85rem;
	line-height: var(--this-line-height);
	height: calc(var(--max-lines) * 0.85rem * var(--this-line-height));
	max-height: calc(var(--max-lines) * 0.85rem * var(--this-line-height));
	overflow: hidden;
	position: relative;
}

.message {
	padding: 1rem;
	border-radius: var(--radius-small);
	margin-bottom: 7px;
	border: 1px solid var(--colore);
	position: relative;
}

.message p:last-child {
	margin-bottom: 0;
}

.message .user {
	display: inline-block;
	padding-right: .7rem;
}

.message.staff-message {
	background-color: transparent;
	border-color: var(--colore);
	margin-left: 1rem;
}

.message.user-message {
	background-color: var(--colore-2);
	border-color: var(--colore-2);
}

.message.staff-message .user {
	color: var(--colore);
}
.message.internal-message {
	background-color: var(--colore);
	border-color: var(--colore);
}
.message.internal-message .user {
	color: var(--bianco);
}
.message .message-date {
	display: inline-block;
	color: var(--grigio-3);
	font-size: .86rem;
}
.message.internal-message .message-date {
	color: var(--grigio-4);
}
.message i {
	position: absolute;
	right: .4rem;
	top: .4rem;
	font-size: .7rem;
}
.ticket-details h2 {
	line-height: 1.1;
}
.ticket-details .grid {
	max-width: 100%;
	position: relative;
}
.ticket-details .right-side {
	margin-top: 3rem;
}
@media (min-width: 580px) {
	.message i {
		right: .8rem;
		top: .8rem;
		font-size: .9rem;
	}
}
@media (min-width: 768px) {
	.message.staff-message {
		margin-left: 2rem;
	}
}
@media (min-width: 1024px) {
	.message i {
		right: .9rem;
		top: .9rem;
		font-size: .98rem;
	}
	.message.staff-message {
		margin-left: 3rem;
	}
  	.ticket-details .left-side form {
		width: 49%;
	}
  	.ticket-details .right-side {
		position: absolute;
		right: 0;
		top: 0;
		width: 49%;
		margin-top: 0;
  	}
}


table.table-details tr {
	background-color: transparent;
	border-bottom: 1px solid var(--colore-2);
}

table.table-details th {
	background-color: var(--colore-2);
	width: 200px;
	border-bottom: 1px solid var(--colore-5);
}
table.table-details td {
	border-right: 0 !important;
	padding-left: .85rem;
}
table.table-details tr:last-child td {
	border-bottom: 0 !important;
}
table.table-details select {
	width: auto;
	height: 32px;
	background-position: calc(100% - 8px) 51%;
	margin-bottom: 0;
}
table.table-details select#azienda_assegnata {
    max-width: 280px;
}
.status {
	display: inline-block;
	padding: .2rem .5rem .2rem;
	line-height: 1;
	border-radius: var(--radius);
	font-size: .68rem;
	text-align: center;
	color: var(--bianco);
	font-weight: var(--weightheavy);
	white-space: nowrap;
}

.status-1 {
	background-color: var(--grigio-3);
}

.status-2 {
	background-color: var(--arancio);
}

.status-3 {
	background-color: var(--verde);
}

.priorita.alta {
	color: var(--rosso);
}

.ultimi-ticket {
	padding: 0 0 0 10px;
	font-size: 0.9em;
	padding: 1.25rem 1rem 1rem 1.25rem;
	border: 1px solid var(--grigio-5);
	border-radius: var(--radius-small);
	background-color: var(--grigio-8);
}
.ultimi-ticket h4 {
	font-size: .88rem;
	letter-spacing: 0.01rem;
	font-weight: var(--weightbold);
}
.ultimi-ticket ul {
	list-style-type: none;
	padding: 0 !important;
	margin: 0 !important;
}
.ultimi-ticket li {
	margin-bottom: 6px;
	padding-bottom: 4px;
	position: relative;
	border-bottom: 1px solid var(--grigio-5);
	overflow: hidden;
}
.ultimi-ticket li:last-child {
	border: none;
	margin-bottom: 0;
}
.ultimi-ticket li a.link {
	white-space: nowrap;
}
.ultimi-ticket li .data {
	display: block;
	font-size: .7rem;
	padding: 0;
	margin: 0;
}
.ultimi-ticket li .status {
	padding: .26rem .45rem .16rem;
	position: absolute;
	right: 0;
	top: 0;
}


/* allegati del ticket */

ul.ticket-attachments {
	list-style-type: none;
	padding-left: 0 !important;
	margin: 0 !important;
	display: flex;
	flex-wrap: wrap;
}

ul.ticket-attachments li {
	margin-right: 2rem;
}

ul.ticket-attachments li:last-of-type {
	margin-right: 0;
}

ul.ticket-attachments li a {
	white-space: nowrap;
}



/* FILTRO TICKET */

.ticket-filters {
	max-width: 100%;
	gap: 1.25rem;
	position: relative;
	background: transparent;
	padding: 1rem 0 !important;
	border-radius: 4px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.ticket-filters .filter {
	grid-column: span 1;
}
.ticket-filters .filter label {
	white-space: nowrap;
	margin-bottom: 3px !important;
}
.ticket-filters select {
	margin-bottom: 0;
}
.ticket-filters .resetta-filtri {
	position: absolute;
	top: -4rem;
	right: 0;
 }
.ticket-filters .resetta-filtri .button {
	padding: .2rem .65rem;
}
.ticket-filters .resetta-filtri .button:hover {
	background-color: var(--colore-3);
	color: var(--bianco);
}
@media (min-width: 768px) {
	.ticket-filters {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (min-width: 1024px) {
	.ticket-filters {
		grid-template-columns: repeat(6, 1fr);
	}
}


/* Rimuove l'outline predefinito del browser (solitamente blu o nero) */
/* e applica il tuo stile personalizzato */
:focus-visible {
    outline: 1px solid var(--colore-3); /* Il colore che preferisci */
    outline-offset: 0px;        /* Crea un piccolo spazio tra l'elemento e l'anello */
}


.da_associare {
	color: var(--rosso);
}
.nota-interna label {
	padding: 5px 10px; background-color: var(--colore); display: inline-block; border-radius: 4px; cursor: pointer;
}
.nota-interna input[type=checkbox] {
	float: left;
	margin: .265rem .5rem 0 0;
}


.notice {
	background-color: var(--colore);
	color: var(--bianco);
	padding: 1.1rem 1rem .1rem;
	border-radius: var(--radius-small);
	margin-top: -2rem;
	margin-bottom: 2rem;
	text-align: center;
}



/* ASSOCIAZIONE UTENTI */

#wp_user_id,
#danea_ids {
	margin-top: .5rem;
}

.crm-association-wrapper .notice {
	margin-top: 0;
}

.top-nav li.riservata,
.footer-menu li.riservata {
	display: none;
	pointer-events: none;
}
body.reserved .top-nav li.riservata,
body.reserved .footer-menu li.riservata {
	display: list-item;
	pointer-events: all;
}
body:not(.reserved) .top-nav ul li.dashboard {
	display: none;
	pointer-events: none;
}
body.reserved .top-nav ul li.login {
	display: none;
	pointer-events: none;
} 


/* BLOCCO PRODOTTO */

.product-block {
	max-width: 480px;
	margin-top: 2rem;
	margin-bottom: -2rem;
	margin-inline: auto;
	padding: 2rem 2rem 0;
	border-radius: 25px;
	border: 1px solid #f1f1f1;
	background-color: #fff;
	box-shadow: 0 0 25px 2px rgba(50, 50, 50, 0.2);
}

.product-price {
	display: flex;
	justify-content: space-between;
}

.descrizione-servizio {
	font-weight: 900;
	margin-top: 2rem;
}

.descrizione-servizio p:last-child {
	margin-bottom: 0;
}









.tabella .grid.full {
	max-width: 1600px;
	margin-inline: auto;
}
table th:first-child {
	border-top-left-radius: var(--radius-small);
	border-bottom-left-radius: 0;
}

table th:last-child {
	border-top-right-radius: var(--radius-small);
	border-bottom-right-radius: 0;
	border-right: 0;
}
table td:first-child {
	border-left: 1px solid var(--colore);
}
table tr:last-child td {
	border-bottom: 1px solid var(--colore);
}



/* MODAL DIALOG */

dialog {
	padding: 2rem;
	border: none;
	border-radius: 15px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	background: white;
	margin: 0;

	/* Posizionamento al centro */
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);

	/* Dimensioni massime */
	max-width: 1200px;
	max-height: 800px;
	width: 90%;
	/* Per schermi piccoli */
	height: auto;

	/* Gestione overflow */
	/*     overflow: hidden; */
	/* Nasconde lo scroll del dialog stesso */
}

/* Contenitore interno scrollabile */
.modal-content {
	max-height: calc(800px - 4rem);
}


/* Media query per schermi molto piccoli */
@media screen and (max-width: 600px) {
	dialog {
		width: 95%;
		padding: 1rem;
	}

	.modal-content {
		max-height: calc(100vh - 4rem);
	}
}


.closeme {
	position: absolute;
	top: 6px;
	right: 10px;
	background-color: transparent !important;
	border: none;
	padding: 0;
	color: #000 !important;
}

dialog::backdrop {
	background-color: var(--colore);
	opacity: 0.75;
}



/* GT translate */
#gt_float_wrapper {
	right: 10px !important;
	bottom: 0 !important;
}

.gt_float_switcher {
	font-size: .88rem !important;
}

.gt_float_switcher .gt_options a {
	padding: 4px 8px !important;
	font-size: .0000001rem !important;
	color: transparent !important;
}

.gt_float_switcher .gt-selected,
.gt_float_switcher {
	background-color: var(--bianco) !important;
	text-align: left;
}

.gt_float_switcher .gt_options a:hover {
	background-color: var(--colore) !important;
}

.gt_float_switcher .gt-selected .gt-current-lang {
	font-weight: var(--weightnormal) !important;
	padding: 4px 8px !important;
	text-align: left;
}

.gt_float_switcher img {
	width: 20px !important;
}

.gt_float_switcher .gt-selected .gt-current-lang span.gt-lang-code {
	display: none;
}



@keyframes growIcon {

	0%,
	100% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.2);
	}
}



.login-home {
	width: calc(98% - 5rem);
	max-width: 800px;
	margin-inline: auto;
	border-radius: var(--radius-small);
	border: 1px solid var(--grigio-2);
	padding: 2.8rem 3.8rem !important;
	box-shadow: var(--shadow);
}

@media (max-width: 640px) {
	.login-home .acf-field {
		width: 100% !important;
	}
}



/* CREA TICKET */

.hidden {
	display: none;
}

.crea-ticket .alert {
	color: var(--colore-4);
	font-weight: var(--weightmedium);
	text-align: center;
	position: absolute;
	top: 3rem;
	left: 0;
	width: 100%;
}



/* PROGETTI PAGINA  */

.griglia-prodotti .wrap {
	height: 100%;
	border-radius: var(--radius);
	box-shadow: var(--shadow);
	position: relative;
}

.griglia-prodotti figure {
	overflow: hidden;
	border-radius: var(--radius-less);
	margin: 0 auto !important;
	max-width: 361px;
	position: relative;
}
.griglia-prodotti figure img {		
	margin: 0 auto;
}
.griglia-prodotti figure::after {
	content: '';
	position: absolute;
	inset: .5rem;
	border-radius: var(--radius-less);
	background-color: var(--colore);
	padding: 3rem 2rem 2rem 2rem;
	opacity: 0;
	pointer-events: none;
}
.griglia-prodotti figcaption {
	content: '';
	position: absolute;
	inset: .5rem;
	padding: 3rem 2rem 2rem 2rem;
	opacity: 0;
	pointer-events: none;
	z-index: 1;
}
.griglia-prodotti .wrap:hover figure::after {
	opacity: 1;
}
.griglia-prodotti .titolo_item {
	font-weight: var(--weightbold);
}
.griglia-prodotti .descrizione {
	display: block;
	font-size: .88rem;
	padding: 0 .2rem .1rem;
	--max-lines: 10;
	--this-line-height: 1.2;
	line-height: var(--this-line-height);
	height: calc(var(--max-lines) * 0.88rem * var(--this-line-height));
	max-height: calc(var(--max-lines) * 0.88rem * var(--this-line-height));
	overflow: hidden;
	position: relative;	
}
.griglia-prodotti .wrap:hover figcaption {
	opacity: 1;
}

.griglia-prodotti .wrap:hover .titolo_item,
.griglia-prodotti .wrap:hover .titolo_item a {
	color: var(--bianco);
}

.griglia-prodotti .wrap:hover .descrizione {
	color: var(--bianco);
}
@media (min-width: 580px) and (max-width: 719px){
	.griglia-prodotti .descrizione {
		--max-lines: 7;
	}
}
@media (min-width: 768px) {
	.griglia-prodotti .titolo_item {
		font-size: 1.6rem;
	}
}

@media (min-width: 1024px) {
	.griglia-prodotti .descrizione {
		--max-lines: 14;
	}
	.griglia-prodotti .titolo_item {
		font-size: 1.7rem;
	}
}

@media (min-width: 1440px) {
	.griglia-prodotti .titolo_item {
		font-size: 1.8rem;
	}
}




/* Rende trasparente il corpo dell'editor */
body#tinymce {
    background: transparent !important;
    background-color: transparent !important;
	color: var(--bianco) !important;
}

/* Rende trasparente il contenitore esterno di TinyMCE */
.wp-editor-container, 
.mce-edit-area iframe, 
.mce-tinymce {
	color: var(--bianco) !important;
    background: transparent !important;
    background-color: transparent !important;
    border-color: rgba(255, 255, 255, 0.2); /* Opzionale: rende i bordi meno pesanti */
}
div.mce-panel {
	background: transparent !important;
	color: var(--bianco) !important;
}

/* Rendi trasparente e arrotonda il contenitore principale */
.wp-editor-container {
    border: 1px solid var(--colore) !important; /* Colore del bordo simile ai tuoi input */
    border-radius: 8px !important;       /* Arrotondamento */
    background: transparent !important;
    overflow: hidden;                    /* Impedisce al contenuto di uscire dagli angoli tondi */
}

/* Rimuove i bordi interni predefiniti che TinyMCE aggiunge tra toolbar e area testo */
.mce-tinymce, 
.mce-edit-area, 
.mce-statusbar {
    border: none !important;
    background: transparent !important;
}

/* Sistema il bordo della toolbar se presente */
.mce-top-part {
    border: none !important;
	background-color: var(--colore-2) !important;
}
div.mce-toolbar-grp {
	border: none !important;
}
/* Opzionale: aggiungi un effetto glow al focus come i tuoi input */
.wp-editor-container:focus-within {
    border-color: var(--colore) !important;
    box-shadow: 0 0 5px rgba(93, 93, 189, 0.5);
}

.mce-ico {
    color: var(--bianco) !important;
}

.mce-btn {
    background: transparent !important;
}

.page-template-page-profilo #message {
	margin-top: -2rem;	
	color: var(--colore-4);
}
