@charset "UTF-8";

:root {
	--main: #000000;
	--colore: #C92124;
	--colore-2: #1C5C7A;
	--colore-3: #457e9c;
	--colore-4: #1C5C7A;
	--rosso: #DA002E;
	--verde: #00A651;
	--grigio-dark: #3E4F56;
	--grigio: #8D9EA3;
	--grigio-2: #BEC8CB;
	--grigio-3: #EFF1F2;
	--grigio-4: #EFF1F2;
	--grigio-5: #EFF1F2;
	--grigio-6: #EFF1F2;
	--grigio-7: #F5F5F6;
	--bianco: #ffffff;
	--mainfont: 'Ubuntu', 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif;
	--altfont: "Zilla Slab", 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif;
	--weightlight: 400;
	--weightnormal: 400;
	--weightmedium: 500;
	--weightheavy: 600;
	--weightbold: 700;
	--weightblack: 700;
	--radius: 10px;
	--radius-more: 50px;
	--radius-less: 10px;
	--radius-small: 6px;
	--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(--bianco);
	font-family: var(--mainfont);
	font-weight: var(--weightnormal);
	color: var(--main);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	font-family: var(--altfont);
	font-weight: var(--weightbold);
	color: var(--colore-2);
	line-height: 1;
	display: block;
	font-optical-sizing: auto;
}

h1,
.h1 {
	font-size: clamp(2rem, calc(1rem + 3vw), 4.2rem);
	margin-bottom: 1.6rem;
}

h2,
.h2 {
	font-size: clamp(1.7rem, calc(1rem + 2vw), 3rem);
	margin-bottom: 1.4rem;
}

h3,
.h3 {
	font-size: clamp(1.1rem, calc(1rem + 1.4vw), 2rem);
	margin-bottom: 1.2rem;
}

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

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

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

h1 span,
.h1 span,
h2 span,
.h2 span,
h3 span,
.h3 span,
h4 span,
.h4 span,
h5 span,
.h5 span {
	color: var(--colore);
}

a {
  text-decoration:none;
  color: var(--colore);
  transition: color 0.20s linear 0s;
}
a:hover, a:active {color:var(--colore-2);}



.button,
a.button,
button,
button.wpcf7-submit,
input.wpcf7-submit,
.wp-element-button {
	color: var(--bianco);
	background-color: var(--colore);
	border: none;
	font-size: 1.1rem;
	line-height: var(--line-height);
	font-family: var(--mainfont);
	font-weight: var(--weightmedium);
	padding: .7rem 1.5rem .7rem;
	border-radius: var(--radius-more);
	transition: box-shadow 0.3s ease;
}

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

.button.big {
	padding: .7rem 1.8rem .88rem;
	font-size: 1.3rem;
}

@media (min-width: 1280px) {
	.button.big {
		font-size: 1.45rem;
	}
}
.button.small {
	font-size: .86rem;
	padding: .26rem 1rem .3rem;
}
.button.gradient
/* ,.wpcf7-submit-wrapper  */
{
	position: relative;
	background: linear-gradient(to right, var(--colore) 15%, var(--colore-2) 100%);
	z-index: 1;
	overflow: hidden;
	display: inline-block;
}

.button.gradient::before
/* ,.wpcf7-submit-wrapper::before  */
{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, var(--colore-4) -10%, var(--colore) 90%);
	z-index: -1;
	transform: translateX(-100%);
	transition: transform 0.5s ease;
}

.button.gradient:hover::before,
.wpcf7-submit-wrapper:hover::before {
	transform: translateX(0);
}

input.wpcf7-submit {
	position: relative;
	margin-bottom: 0rem;
	z-index: 2;
	background-color: var(--colore);
	color: var(--bianco);
}

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

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

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

.button.dark {
	color: var(--bianco);
	border-color: var(--main);
	background-color: var(--main);
}

.button.dark:hover {
	color: var(--main);
	border-color: var(--main);
	background-color: var(--bianco);
}

.button.secondary {
	background-color: transparent;
	color: var(--bianco);
	border: 1px solid var(--bianco);
}

.button.secondary:hover {
	background-color: var(--bianco);
	color: var(--colore);
	border: 1px solid var(--bianco);
}


.button.arrow {
	padding-right: 3.5rem;
	position: relative;
}

.button.arrow::after
/* ,.wpcf7-submit-wrapper::after  */
{
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 15px;
	width: 26px;
	height: 26px;
	background-image: url(assets/images/arrow-dots.svg);
	background-repeat: no-repeat;
	background-size: 26px;
}

.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.arrow {
	padding-right: 2.25rem;
}

.button.small.arrow::after {
	right: 8px;
	width: 18px;
	height: 18px;
	background-size: 18px;
}

.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: .28rem 1.2rem .2rem;
}

.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.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);
}

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

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



table {
  border:1px solid var(--grigio-7);
}
table tfoot, table thead,table tr:nth-of-type(2n) {background:none repeat scroll 0 0 var(--grigio-7);}
th,table tr:nth-of-type(2n) td {border-right:1px solid var(--bianco);}
td {border-right:1px solid var(--grigio-7);}


ul {
	padding: 0;
	margin: 1rem 0 0 0;
	list-style-type: none;
}
ul.bullets li {
	list-style-type: none;
	width: 100%;
	position: relative;
	font-size: inherit;
	line-height: 1.42;
	margin-bottom: .35rem;
	padding-left: 20px;
}
ul.bullets li:before {
	content: "";
	position: absolute;
	left: -29px;
	top: -11px;
	width: 46px;
	height: 46px;
	background-image: url(../images/li.svg);
	background-repeat: no-repeat;
}
ul.bullets.alt li:before {
	background-image: url(../images/li-alt.svg);
}

ol {
	padding: 0;
	margin: 1rem 0 0 0;
	list-style-type: none;
}
ol > li {
	counter-increment: step-counter;
	margin-bottom: .7rem;
	position: relative;
	padding: 0.3rem 0 0 1.9rem;
}
ol > li::before {
	content: counter(step-counter);
	background-color: var(--colore);
	width: 34px;
	height: 34px;
	line-height: 34px;
	text-align: center;
	font-size: 1.2rem;
	color: var(--bianco);
	font-weight: var(--weightbold);
	border-radius: 25px;
	position: absolute;
	top: 0;
	left: -20px;
}
ol.columns {
	padding-top: 2rem;
}
@media (min-width: 800px) {
	ol.columns {
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;
	}
	ol.columns li {
		display: inline-block;
		padding-right: 3rem;
	}
}
blockquote.wp-block-quote {
  	border-left:4px solid var(--colore);
  	padding:1.5rem 2rem 1.5rem 1.85rem;
  	margin: 2rem 0;
	line-height: 1.35;
	position: relative;
}
blockquote.wp-block-quote cite {
  	font-size: 1.2rem;
}
dl dt {font-weight:var(--weightbold);}
dl dd {margin-bottom:0.625rem;}
dl dd:last-child {margin-bottom:0;}

.grid {
	max-width: 1480px;
}
.grid.full {
  	max-width:100%;
}
.grid.blocco-stretto {
	max-width: 40rem;
}
@media (min-width: 1024px) {
	.grid.blocco-stretto {
		max-width: 50rem;
	}
}
@media (min-width: 1280px) {
	.grid.blocco-stretto {
		max-width: 60rem;
	}
}

.overlay {
	background: linear-gradient(to bottom, rgba(0, 23, 43, 0.45) 0%, rgba(0, 23, 43, 0.1) 100%);
}

@media (min-width: 768px) {
  .paragrafo_intro {
	padding-inline: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .paragrafo_intro {
	padding-inline: 2rem;
  }
}
@media (min-width: 1360px) {
  .paragrafo_intro {
	padding-inline: 4rem;
  }
}




#maincontainer {
	width: 100%;
	/* max-width: 2000px; */
	margin-inline: auto;
	background-color: var(--bianco);
	padding: 0;
	text-align: center;
}
#maincontainer > section {
	text-align: left;
}

#maincontainer>.grid {
	padding-inline: 1.25rem;
}

#maincontainer ul,
#maincontainer ol {
	padding-left: 1.25rem;
	margin-bottom: 1.5rem;
}
#maincontainer .paragrafo ul li,
.single #maincontainer article ul li,
#maincontainer .colonne ul li,
#maincontainer .grid ul li {
	list-style-type: none;
	font-family: var(--mainfont);
	width: 100%;
	position: relative;
	font-size: inherit;
	line-height: 1.25;
	margin-bottom: .6rem;
	padding-left: .75rem;
}
#maincontainer .paragrafo ul li:before,
.single #maincontainer article ul li:before,
#maincontainer .colonne ul li:before,
#maincontainer .grid ul li::before {
	content: "\2713";
	font-family: "Inter", sans-serif;
	font-weight: var(--weightbold);
	color: var(--colore);
	position: absolute;
	left: -13px;
	top: -2px;
}
@media (min-width: 1024px) {
	#maincontainer>.grid,
	#maincontainer>.box {
		padding-inline: 2rem;
	}
}

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

@media (min-width: 1440px) {
	#maincontainer>.box>.grid {
		max-width: 1344px;
	}
}

@media (min-width: 1600px) {
	#maincontainer>.grid,
	#maincontainer>.box {
		padding-inline: 1rem;
	}
	#maincontainer>.box>.grid {
		max-width: 1446px;
	}
}



#header-image {
	background-color: var(--colore-2);
}
#header-image figure {
	position: absolute;
	inset: 0;
}
#header-image .breadcrumbs {
	color: var(--bianco);
}
#header-image .breadcrumbs a {
	color: var(--grigio-3);
}
#header-image .breadcrumbs a:hover {
	color: var(--bianco);
}
#header-image .header-content {
	width: 100%;
	padding-inline: 1.25rem;
	margin-inline: auto;
	display: flex;
	align-items: center;
}
#header-image .header-content .grid {
	max-width: 1344px;
}
#header-image {
	padding: 0 !important;
	align-items: center;
}
#header-image h1 {
	color: var(--bianco);
}
.image-holder {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin-inline: auto;
	text-align: center;
}
#header-image .paragrafo {
	color: var(--bianco);
	font-weight: var(--weightmedium);
	font-size: clamp(1rem, calc(.25rem + 2vw), 1.3rem);
}
#header-image .button {
	white-space: nowrap;
}
.home #header-image {
	position: relative;
}
.home #header-image::before {
	position: absolute;
	content: '';
	bottom: 0;
	right: -30px;
	width: 250px;
	aspect-ratio: 879 / 800;
	background-image: url(assets/images/MELA-SRL-Medicina-del-Lavoro.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.home #header-image h1 {
	font-size: clamp(2.6rem, calc(1rem + 5vw), 5.5rem);
}

.home .header-content .grid {
	padding-inline: 0 !important;
}
@media (min-width: 480px) {
	.home .header-content .grid > div {
		padding-right: 20%;
	}
  .home #header-image::before {
	width: 280px;
  }
}
@media (min-width: 640px) {
	.home .header-content .grid > div {
		padding-bottom: 1rem;
		padding-right: 30%;
	}
	.home #header-image::before {
		width: 350px;
		right: -35px;
	}
}

@media (min-width: 768px) {
	.home .header-content .grid > div {
		padding-bottom: 3rem;
		padding-right: 36%;
	}
	.home #header-image::before {
		width: 450px;
		right: -45px;
	}
}

@media (min-width:1024px) {
	#header-image .header-content {
		padding-inline: 2rem;
	}
	.home .header-content .grid > div {
		padding-bottom: 1.5rem;
	}
	.home #header-image::before {
		width: 480px;
		right: -15px;
	}
}

@media (min-width:1280px) {
	#header-image .header-content {
		padding-inline: 4rem;
	}
	.home .header-content .grid > div {
		padding-top: 7rem;
		padding-bottom: 2rem;
	}
	.home #header-image::before {
		width: 560px;
	}
}
@media (min-width: 1360px) {
	.home .header-content .grid > div {
		padding-top: 9rem;
		padding-right: 42%;
	}
	.home #header-image::before {
		width:620px;
	}
}
@media (min-width: 1440px) {
	.home #header-image::before {
		width: 660px;
	}
}
@media (min-width: 1600px) {
	#header-image .header-content {
		max-width: 1446px;
		padding-inline: 0;
	}
	#header-image .header-content .grid {
		max-width: 100%;
	}
	.home .header-content .grid > div {
		padding-bottom: 3rem;
	}
	.home #header-image::before {
		width: 720px;
		right: 0;
	}
}

@media (min-width: 1800px) {
	.home .header-content .grid > div {
		padding-bottom: 4rem;
	}
	.home #header-image::before {
		width: 750px;
		right: 10px;
	}
}






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

#topbar.up {
	background-color: var(--colore);
}
@media (min-width: 1024px) {
	#topbar.up {
		background-color: transparent;
	}
}

/* #topbar::before {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	background-color: var(--grigio-7);
	opacity: .65;
	z-index: -1;
} */

#topbar .header {
	position: relative;
	background-color: transparent;
	border-radius: 0;
	max-width: none;
	transition: padding .2s ease-in-out;
}

@media (min-width: 1024px) {
	#topbar .header {
		padding-inline: 1.25rem;
	}

	#topbar.up .header {
		background-color: rgba(255, 255, 255, 0.65);
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
	}
}

@media (min-width: 1280px) {
	#topbar .header {
		padding-inline: 3.2rem;
	}
}

@media (min-width: 1500px) {
	#topbar .header {
		padding-inline: 3.9rem;
	}
}


/* @media (min-width: 1600px) {
	#topbar .header {
		padding-inline: 1rem;
	}
} */

/* @media (max-width: 1023px) {
	body:not(.show-menu) #topbar {
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
	}
} */



.logo {
	position: relative;
	z-index: 3;
	min-height: 52px;
}
.logo a {
	display: grid;
	align-items: center;
	height: 100%;
}
.logo img {
	width: 100%;
	max-width: 128px;
	transition: max-width .2s ease-in-out, transform .2s ease-in-out, opacity .2s ease-in-out;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	filter: brightness(0) invert(1);
}
/* .logo img.full {
    opacity: 1;
}
.logo img.small {
    opacity: 0;
	max-width: 44px;
}
#topbar.up .logo img.full,
.show-menu .logo img.full {
    opacity: 0;
}
#topbar.up .logo img.small,
.show-menu .logo img.small {
    opacity: 1;
} */
@media (max-width: 1023px) {
	.logo {
		grid-column: span 12 !important;
	}

	.logo img {
		margin: 0 auto;
	}
/*
  .logo img.full {
	display: none;
  }
  .logo img.small {
	opacity: 1;
  } */
}


/* @media (min-width: 1024px) {
	body:not(.show-menu) #topbar .backdrop {
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
		position: absolute;
		top: 0;
		bottom: 0;
		width: calc(100% - 2.5rem);
		left: 50%;
		transform: translateX(-50%);
		border-bottom-left-radius: var(--radius);
		border-bottom-right-radius: var(--radius);
	}
	#topbar::before {
		position: absolute;
		content: '';
		top: 0;
		bottom: 0;
		background-color: var(--grigio-7);
		opacity: .65;
		z-index: -1;
		width: calc(100% - 2.5rem);
		left: 50%;
		right: auto;
		transform: translateX(-50%);
		border-bottom-left-radius: var(--radius);
		border-bottom-right-radius: var(--radius);
	}
}
@media (min-width: 1800px) {
	body:not(.show-menu) #topbar .backdrop,
	#topbar::before {
		max-width: 1720px;
	}
}
@media (min-width: 1840px) {
	body:not(.show-menu) #topbar .backdrop,
	#topbar::before {
		max-width: 1780px;
	}
}
@media (min-width: 1900px) {
	body:not(.show-menu) #topbar .backdrop,
	#topbar::before {
		max-width: 1800px;
	}
} */


@media (min-width: 1024px) {
	.logo img {
		max-width: 140px;
		margin-block: 5px;
		left: 0;
		transform: translateX(10px);
	}
	#topbar.up .logo {
		transform: translateY(2px) translateX(10px);
	}
	#topbar.up .logo img {
		filter: none;
		max-width: 125px;
	}
	/* #topbar.up .logo::before {
		content: '';
		position: absolute;
		top: -6px;
		left: -1;
		width: 70px;
		aspect-ratio: 1 / 1;
		background-color: var(--colore);
		border-radius: var(--round);
        box-shadow: 0 5px 30px rgba(0, 0, 0, 0.18);
  } */
}

@media (min-width: 1280px) {
	.logo img {
		max-width: 150px;
	}
}
@media (min-width: 1360px) {
	.logo img {
		max-width: 160px;
	}
}
@media (min-width: 1440px) {
	.logo img {
		max-width: 165px;
	}
}




.top-nav {
	display: grid;
	justify-items: end;
}
.top-nav ul {
	padding: 0;
}

.top-nav ul ul {
	position: absolute;
	background: transparent
}

.top-nav li {
	float: left;
	list-style: none outside none;
	cursor: pointer;
}

.top-nav li a {
	font-weight: var(--weightmedium);
	color: var(--bianco);
	display: block;
	font-size: 1rem;
	padding: 1.25rem;
}

.top-nav li ul li a {
	font-size: .95rem;
	color: var(--grigio-2);
	background: transparent;
	min-width: 100%;
	padding: 0.625rem 1.25rem;
}

/* .top-nav li a:hover,
.aside-nav li a:hover,
.top-nav li.active a,
.menu-item-has-children:hover > .dropdown-toggle {
  background:var(--colore);
  color:var(--bianco);
} */
.top-nav li ul li a:hover {
	color: var(--bianco);
}

.top-nav li ul {
	display: none;
}

.top-nav li ul li,
.top-nav li ul li ul li {
	float: none;
	list-style: none outside none;
	min-width: 100%;
	padding: 0;
}

.top-nav li a {
	font-family: var(--mainfont);
}

@media (max-width: 1023px) {
	nav {
		display: block;
		cursor: pointer;
		line-height: 3;
	}

	.top-nav li a {
		background: transparent;
	}

	.top-nav>ul {
		height: 0;
		width: 100%;
		overflow: hidden;
		position: relative;
		z-index: 999;
	}

	.top-nav>ul.show-menu,
	.aside-nav.minimize-on-small>ul.show-menu {
		height: auto;
	}

	.top-nav ul ul {
		left: 0;
		margin-top: 0;
		position: relative;
		right: 0;
	}

	.top-nav li {
		float: none;
		list-style: none outside none;
		padding: 0;
		max-width: 360px;
		margin: 0;
	}

	.top-nav li a.dropdown-toggle .arrow {
		content: '';
		border-style: solid;
		border-width: 2px 2px 0 0;
		display: inline-block;
		height: 8px;
		width: 8px;
		left: .5rem;
		position: relative;
		transform: rotate(45deg);
		vertical-align: middle;
	}

	.top-nav li a.dropdown-toggle.down .arrow {
		transform: rotate(135deg);
		top: -3px;
	}

	.top-nav li a {
		font-size: 1.2rem;
		line-height: 1.2;
		color: var(--bianco);
		display: block;
		padding: .7rem 0.625rem;
		text-align: center;
		text-decoration: none;
	}

	.top-nav li a:hover,
	.top-nav li a.down,
	.top-nav li.active>a,
	.menu-item-has-children:hover>.dropdown-toggle {
		background-color: transparent;
		color: var(--grigio-2);
	}

	.top-nav li ul,
	.top-nav li ul li ul {
		display: block;
		overflow: hidden;
		height: 0;
	}

	.top-nav>ul ul.show-ul {
		display: block;
		height: auto;
		margin-bottom: .3rem;
	}

	.top-nav li ul li a {
		background: transparent;
		font-size: 1.05rem;
		padding: .35rem .7rem;
	}

	.top-nav li ul li.active a {
		background-color: transparent;
	}

	.top-nav li ul li ul li a {
		background: none repeat scroll 0 0 var(--colore);
	}

	.top-nav {
		position: fixed;
		top: 0;
		z-index: 10;
		left: -100%;
		width: 100% !important;
		bottom: 0;
		overflow-y: auto;
	}

	body.show-menu {
		overflow: hidden;
	}

	body.show-menu .top-nav {
		overflow: hidden;
	}

	.show-menu .top-nav {
		left: 0;
		right: 60px
	}

	.top-nav>ul {
		height: auto;
		overflow: auto;
		position: relative;
		top: 40px;
		padding-bottom: 90px;
	}

	.nav-text {
		color: var(--bianco);
		display: inline-block;
		margin-right: 0;
		margin-bottom: 0;
		width: auto;
		position: fixed;
		top: 7px;
		left: 20px;
		background: var(--colore);
		height: 60px;
		width: 60px;
		text-align: center;
		line-height: 60px;
		z-index: 50;
		padding-top: 5px;
	}

	.mobile-nav-right .top-nav {
		left: 100%;
		right: -100%;
	}

	.show-menu .mobile-nav-right .top-nav {
		left: 0;
		right: 0;
	}

	.mobile-nav-right .nav-text {
		margin-left: 0;
		top: 0;
		left: auto;
		right: 0;
	}
	.nav-text:after,.nav-text:before,.nav-text span {
		background-color:var(--bianco);
		border-radius:0;
		height:2px;
		margin:6px auto;
		width: 30px;
	}
	.nav-text {
		left: 16px;
		background-color: transparent;
	}

	.top-nav {
		max-width: calc(100% - 8px);
		left: 4px !important;
		bottom: 4px !important;
		justify-items: center;
		background-color: var(--colore-2);
		max-height: 0;
		overflow: hidden;
		top: 54px;
		border-radius: 0;
		max-width: 100%;
		left: 0 !important;
		bottom: 0 !important;
	}

	#topbar {
		background-color: transparent;
	}

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

	body.show-menu #topbar {
		background-color: var(--colore-2);
		border-radius: 0;
	}

	body.show-menu #topbar .header {
		border-radius: 0;
	}

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

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

@media (max-width: 767px) {
	.nav-text {
		left: 0;
	}
}

@media (max-width: 425px) {
	.nav-text {
		left: 4px;
	}
}

.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 {
		padding-top: 2px;
	}

	.top-nav>ul {
		margin-top: 0;
		padding: .68rem 1rem .65rem 0;
		transition: transform .3s ease-in-out, margin-top .3s ease-in-out;
		position: relative;
		background-color: transparent;
	}

	#topbar {
		padding-top: 20px;
		padding-inline: 0;
	}

	#topbar.up {
		padding-top: 0;
	}

	#topbar.up .top-nav>ul {
		background-color: transparent;
		padding: .7rem 1rem .8rem 1rem;
		/* border-radius: var(--radius-more); */
		/* box-shadow: var(--shadow-more); */
	}
	.top-nav li a {
		font-size: .95rem;
		color: var(--bianco);
		font-weight: var(--weightmedium);
		/* padding: .3rem .6rem 1.2rem .6rem; */
		padding: .2rem .6rem;
		text-transform: none;
	}

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

	#topbar.up .top-nav li>a {
		color: var(--main);
	}

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

	.top-nav ul ul {
		margin-top: .85rem;
		min-width: 200px;
		background-color: transparent;
		border-radius: var(--radius);
		overflow: hidden;
		box-shadow: var(--shadow-more);
		background-color: var(--colore-2);
		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='%231C5C7A'/></svg>") no-repeat center/100% 100%;
	}
	.top-nav ul ul li a {
		font-size: .88rem;
		color: var(--bianco);
		border: none !important;
		padding: .2rem 1.5rem;
	}
	#topbar.up .top-nav ul ul li a {
		color: var(--bianco);
	}
	.top-nav ul ul li a:hover,
	.top-nav ul ul li.active a {
		color: var(--colore) !important;
	}

	.top-nav ul ul li:first-of-type a {
		padding-top: 1.25rem;
	}
	.top-nav ul ul li:last-of-type a {
		padding-bottom: 1.25rem;
	}

/*
	.top-nav ul li.home {
		display: none;
	}
*/

	.top-nav ul li.contatti {
		margin-left: .8rem;
	}

	.top-nav ul li.contatti a {
		position: relative;
		color: var(--bianco);
		z-index: 1;
	}
	#topbar.up .top-nav li.contatti>a:hover,
	#topbar.up .top-nav li.contatti.active>a {
		color: var(--bianco);
	}

	.top-nav ul li.contatti a::before {
		position: absolute;
		content: '';
		top: -.1rem;
		left: -.2rem;
		right: -.2rem;
		height: 2rem;
		background-color: transparent;
		border: 1px solid var(--bianco);
		border-radius: var(--radius-more);
		z-index: -1;
	}

	#topbar.up .top-nav ul li.contatti a::before {
		border-color: var(--main);
	}

	.top-nav ul li.contatti a:hover::before,
	#topbar.up .top-nav li.contatti.active>a::before {
		background-color: var(--colore);
		border: 1px solid var(--colore);
	}
	#topbar.up .top-nav ul li.contatti a:hover::before {
		border: 1px solid var(--colore);
	}

}

@media (min-width: 1280px) {
	#topbar {
		padding-top: 30px;
	}

	.top-nav>ul {
		padding: .86rem 1rem .65rem 0;
	}

	.top-nav li a {
		font-size: .98rem;
		padding: .2rem .75rem;
	}
	.top-nav ul li.contatti {
		display: list-item;
	}
}

@media (min-width: 1440px) {
	.top-nav>ul {
		padding: 1.1rem 1rem .65rem 0;
	}

	.top-nav li a {
		font-size: 1rem;
		padding: .2rem .85rem;
	}/*

	.top-nav ul li.home {
		display: list-item;
	}
*/

}

@media (min-width: 1024px) {
	.sub-bar {
		width: 100%;
		top: 97px;
		color: var(--bianco);
		font-size: .85rem;
		z-index: 1;
		padding-inline: 20px;
	}

	.sub-bar .grid {
		padding-inline: 15px;
	}

	.sub-bar .nome-utente {
		font-weight: var(--weightmedium);
	}
}

@media (min-width: 1280px) {
	.sub-bar {
		top: 110px;
		padding-inline: 30px;
	}
}

@media (min-width: 1440px) {
	.sub-bar {
		top: 116px;
	}
}








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

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

.paragrafo img[src$=".svg"] {
    max-width: 420px;
	background-color: var(--colore);
}


/* galleria masonry */
#recensioni .recensioni_container {
	padding-inline: .5rem;
}

@media screen and (min-width: 580px) {
	#recensioni .recensioni_container {
		-webkit-column-count: 2;
		/* Chrome, Safari, Opera */
		-moz-column-count: 2;
		/* Firefox */
		column-count: 2;
		/* standard */
		-webkit-column-gap: 20px;
		-moz-column-gap: 20px;
		column-gap: 20px;
	}
}

@media (min-width: 768px) {
	#recensioni .recensioni_container {
		-webkit-column-gap: 40px;
		-moz-column-gap: 40px;
		column-gap: 40px;
	}
}

@media screen and (min-width: 1024px) {
	#recensioni .recensioni_container {
		-webkit-column-count: 3;
		/* Chrome, Safari, Opera */
		-moz-column-count: 3;
		/* Firefox */
		column-count: 3;
		/* standard */
		-webkit-column-gap: 40px;
		-moz-column-gap: 40px;
		column-gap: 40px;
	}
}

#recensioni .recensioni_container .review {
	break-inside: avoid-column;
	/* Evita che gli elementi si dividano tra le colonne */
	margin-bottom: 40px !important;
}










/* GRID LOGHI */

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

.box.loghi .grid figure img {
	margin-inline: auto;
}
@media (min-width: 580px) {
    .box.loghi .grid {
    	grid-column-gap: 30px !important;
    }
}
@media (min-width: 1024px) {
    .box.loghi .grid {
    	grid-column-gap: 50px !important;
    }
}





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

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

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

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

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

.label.strong {
	font-weight: var(--weightbold);
}

@media (max-width: 439px) {
	.wpcf7-form fieldset .s-2 {
		grid-column: span 4 !important;
	}
}

@media (max-width: 781px) {
	.wpcf7-form {
		padding-top: 3rem;
	}
}












/* 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);
	border-top-right-radius: var(--radius);
}

.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);
	border-bottom-right-radius: var(--radius);
}

.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);
	}

	.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);
	}

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



.single .breadcrumbs {
	color: var(--colore-2);
	font-size: .96rem;
}

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

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

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



.paragrafo .fotoalign-center .inner {
	width: 100%;
}



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

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

@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%;
	}
}









/* 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;
	}
}



.glide__bullet {
	border-radius: var(--radius);
}



/* TIPOLOGIE PRODOTTI HOME  */

.slider-cpt .item {
	position: relative;
}

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

/*
.slider-cpt .wrap::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--main);
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
} */

/* .slider-cpt .item:hover .wrap::after {
	opacity: 1;
} */

/* .slider-cpt .item:hover .wrap {
	transform: scale(1.03) !important;
	box-shadow: var(--shadow);
} */

.slider-cpt .item figure {
	overflow: hidden;
	margin: 0;
}

.slider-cpt .item p {
	margin: 0;
	color: var(--bianco);
	font-size: 1.1rem;
	text-transform: uppercase;
	/* opacity: 0;
	transition: opacity 0.3s ease-in-out; */
}

.slider-cpt .item .titwrap {
	position: absolute;
	display: block;
	z-index: 2;
	bottom: 22px;
	left: 26px;
	right: 10px;
	text-align: left;
	/* max-width: 80%; */
	transition: bottom 0.3s ease-in-out;
}

.slider-cpt .item .titwrap .titolo {
	margin-bottom: 0 !important;
	font-size: 1.4rem;
	color: var(--bianco);
	/* opacity: 0;
	transition: opacity 0.3s ease-in-out; */
	/* word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    hyphens: auto; */
}

/* .slider-cpt .item:hover .titwrap .titolo,
.slider-cpt .item:hover p {
	opacity: 1;
} */

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

.slider-cpt .item a figure img {
	transition: transform 0.3s ease-in-out;
}

.slider-cpt .item a:hover figure img {
	transform: scale(1.09);
}

/* .slider-cpt .item .titwrap:hover a .titolo {
	color: var(--bianco);
} */
.slider-cpt .glide__track,
.slider-cpt .glide__slides {
	padding-block: 1rem !important;
}

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

.slider-cpt .glide__arrows {
	position: absolute;
	bottom: -1.6rem !important;
	left: 0;
	width: 100%;
	text-align: center;
}

.slider-cpt .glide__arrow {
	border-radius: var(--round);
	background-color: transparent;
	border: 2px solid var(--colore);
	position: relative;
}

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

.slider-cpt .glide__arrow--right {
	right: -5px;
}

.slider-cpt .glide__arrow::before {
	border-color: var(--colore);
	top: 10px;
}

.slider-cpt .glide__arrow--left::before {
	left: 13px;
}

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

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

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

@media (min-width: 1280px) {
	.slider-cpt .glide__arrows {
		bottom: -2.5rem !important;
	}

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

	.slider-cpt .glide__arrow::before {
		top: 12px;
	}

	.slider-cpt .glide__arrow--left::before {
		left: 18px;
	}

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


	.slider-cpt .grid.full .glide__track,
	.slider-cpt .grid.full .glide__slides {
		overflow: visible !important;
		overflow-x: hidden !important;
		overflow-y: visible !important;
		padding-block: 2.25rem !important;
	}

	.slider-cpt .grid.full .glide__track {
		padding-left: 1rem !important;
		transform: translateX(-1rem);
		width: calc(100% + 1rem) !important;
	}

	.slider-cpt>.grid.full {
		display: grid;
		padding-right: 0 !important;
	}

	.slider-cpt .grid.full .glide_cpt {
		grid-column: 5 / 14;
		transform: translateY(-60px);
	}

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

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

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

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

}


@media (min-width: 1440px) {
	.slider-cpt .item .titwrap {
		bottom: 32px;
		left: 36px;
	}

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

	.slider-cpt .glide__arrow::before {
		top: 15px;
	}
}








/* GRID ARTICOLI GENERICO */

.archive-grid .inner {
	position: relative;
	height: 100%;
	border-radius: var(--radius);
}

.archive-grid figure {
	position: relative;
	overflow: hidden;
}

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

.archive-grid .testo {
	padding: 1.5rem 1.5rem 1.75rem;
}

.archive-grid .item h3 {
	font-size: 1.3rem;
}

.archive-grid .item figure {
	margin-bottom: 0 !important;
	border-top-left-radius: var(--radius);
	border-top-right-radius: var(--radius);
}

.archive-grid .item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.archive-grid .excerpt {
	--max-lines: 4;
	--this-line-height: 1.3;
	font-size: 0.86rem;
	line-height: var(--this-line-height);
	height: calc(var(--max-lines) * 0.86rem * var(--this-line-height));
	max-height: calc(var(--max-lines) * 0.86rem * var(--this-line-height));
	overflow: hidden;
	position: relative;
	color: var(--bianco);
}

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

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

@media (min-width: 425px) {
	 .archive-grid .testo {
		padding: 1.85rem 1.75rem 1.9rem;
	}
}

@media (min-width: 1360px) {
	.archive-grid .testo {
		padding: 1.85rem 2.1rem 1.9rem;
	}
}
@media (min-width: 1600px) {
	.articoli.box>.grid {
		max-width: 1500px;
	}

	.articoli.box .archive-grid {
		max-width: none;
	}

}

@media (min-width: 2000px) {
	.articoli.box>.grid {
		max-width: 1700px;
	}

	.articoli.box .archive-grid {
		max-width: none;
	}
}





/* GRIGLIA BLOG */

.blog-grid .item {
	border-radius: var(--radius);
}
.blog-grid .inner {
	background-color: var(--grigio-3);
	margin-bottom: 3rem;
}
.blog-grid .inner .testo {
	height: 100%;
}
.blog-grid .excerpt {
	color: var(--main);
}
.blog-grid .data {
	position: absolute;
	top: 5px;
    left: 5px;
    line-height: 1;
	text-align: center;
    padding: 0.66rem .76rem 0.6rem;
	margin-bottom: 0;
    font-weight: var(--weightbold);
    color: var(--main);
    background-color: var(--bianco);
    z-index: 2;
    border-radius: var(--radius-less);
}
.blog-grid .giorno {
	font-size: 1.4rem;
	display: block;
	color: var(--colore);
}
.blog-grid .mese {
	font-size: .65rem;
	display: block;
    font-weight: var(--weightnormal);
}
.blog-grid .anno {
	font-size: .65rem;
	display: block;
    font-weight: var(--weightnormal);
}
.blog-grid .inner .button {
	position: absolute;
	bottom: 1.5rem;
}
/* .blog-grid .archivio .button {
	background-color: var(--grigio);
}
.blog-grid .archivio .button:hover {
	background-color: var(--colore);
} */
@media (min-width: 520px) {
	.blog-grid .item {
		grid-column: span 12;
	}
	.blog-grid .inner {
		display: flex;
	}
	.blog-grid .inner figure {
		width: 40%;
		border-top-right-radius: 0;
    	border-bottom-left-radius: var(--radius);
	}
	.blog-grid .inner .testo {
		width: 60%;
	}
}
@media (min-width: 1024px) {
  	.blog-grid .item {
		grid-column: span 6;
	}
}




/* newsletter-brevo */

.newsletter-brevo .sib_signup_box_inside_2 {
	max-width: 1000px;
	margin: 3rem auto 0;
	text-align: left;
}
.newsletter-brevo fieldset {
	grid-template-columns: 1fr 1fr 1fr;
 }
 .newsletter-brevo label {
	font-weight: var(--weightbold);
 }
.newsletter-brevo input {
	border-color: var(--bianco) !important;
}
.newsletter-brevo input[type=checkbox] {
	margin-right: 6px;
}
.newsletter-brevo .button {
	background-color: var(--main);
}
.newsletter-brevo .button:hover {
	background-color: var(--bianco);
	color: var(--main);
}
.newsletter-brevo label.privacy {
	visibility: visible;
}

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

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

.newsletter-brevo input.wpcf7-submit {
	background-color: var(--main);
}
@media (min-width: 768px) {
 .newsletter-brevo::before {
		background-size: 800px;
	}
}
@media (min-width: 1280px) {
 .newsletter-brevo::before {
		background-size: 900px;
	}
}
@media (min-width: 1440px) {
 .newsletter-brevo::before {
		background-size: 1000px;
	}
}



/* 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: 1rem;
	border-radius: var(--radius);
	width: 100%;
	max-width: 460px;
	margin-inline: auto;
	background-color: var(--colore) !important;
	color: var(--bianco);
}

.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>.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;
	}
}




/* STAFF */

.paragrafo.staff .titolo {
	color: var(--bianco);
	padding-top: .65rem;
}

.paragrafo.staff figure img {
	max-width: 400px;
	aspect-ratio: 1 / 1;
}

.paragrafo.staff .contenuto {
	background-color: var(--colore);
	color: var(--bianco);
	border-radius: var(--radius);
	padding: 1.5rem;
}

.paragrafo.staff .contenuto ul {
	margin-bottom: 0 !important;
}

#maincontainer .paragrafo.staff ul li:before {
	color: var(--bianco);
}

@media (min-width: 580px) and (max-width: 991px) {
	.paragrafo.staff figure {
		grid-column: span 12;
	}

	.paragrafo.staff .contenuto {
		grid-column: span 12;
		padding-top: 2rem;
	}
}

@media (min-width: 992px) {
	.paragrafo.staff .contenuto {
		transform: translateX(-1.5rem);
	}
}

@media (min-width: 1240px) {
	.paragrafo.staff figure {
		grid-column: span 5;
	}

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






/* 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;
	color: var(--colore);
}
.single-post #single_header .data a {
	font-size: .8rem;
	color: var(--colore);
}
.single-post #single_header .sep {
	display: inline-block;
	padding-inline: .5rem;
	color: var(--grigio);
}


@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;
	}
}




.paginazione a {
	display: inline-block;
	padding: .3rem .85rem .4rem;
	font-size: .86rem;
	border-radius: var(--radius);
	border: 1px solid var(--main);
	background-color: var(--main);
	color: var(--bianco);
	font-weight: var(--weightmedium);
}

.paginazione a:hover {
	background-color: var(--colore-2);
	border-color: var(--colore-2);
	color: var(--colore);
}

.paginazione a span {
	font-size: 1.3rem;
	padding-inline: .25rem;
	line-height: 1;
	display: inline-block;
	transform: translateY(2px);
}

.paginazione>div.text-left a span {
	margin-left: -2px;
	padding-right: .45rem;
}

.paginazione>div.text-right a span {
	margin-right: -2px;
	padding-left: .45rem;
}

.paginazione>div.text-left {
	padding-right: .5rem;
}

.paginazione>div.text-right {
	padding-left: .5rem;
}






/* 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 {
	max-width: 232px;
}

.page-template-page-organigramma .griglia figure {
	background-color: var(--grigio-6);
	border-radius: var(--radius);
}

.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 {
	color: var(--colore);
	font-size: .88rem;
}

.page-template-page-organigramma .griglia .email a:hover {
	color: var(--colore-2);
}




/* ELENCO LOCALITA */

.elenco-localita {
	margin-bottom: 30px;
}

.elenco-localita:last-of-type {
	margin-bottom: 80px;
}

.elenco-localita .sezione {
	font-weight: var(--weightnormal);
}

.elenco-localita .items a {
	display: inline-block;
	font-size: .84rem;
	padding: .2rem .8rem;
	background-color: var(--grigio-6);
	color: var(--main);
	border-radius: var(--radius);
	margin: 0 .35rem 1rem 0;
	white-space: nowrap;
}

.elenco-localita .items a:hover {
	background-color: var(--colore);
	color: var(--bianco);
}



.punti-rilievo .item {
	border-radius: var(--radius);
	background-color: var(--bianco);
	padding: 1.5rem 1.5rem 1.25rem;
}
.punti-rilievo .item ul {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}




/* MODULI UTILI */

.moduli-utili .paragrafo_intro {
	font-size: 1.1rem;
}
.moduli-utili .downloads-container .content {
	border-radius: var(--radius);
}
.moduli-utili .grid .grid {
	max-width: 1200px;
}
.moduli-utili .file a {
	font-size: 1.1rem;
	color: var(--colore-2);
}
.moduli-utili .file a:hover {
	color: var(--colore);
}



/* MAPPA */

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



.cta .inner {
	border-radius: var(--radius);
	padding: 2rem 1.5rem 1.35rem;
	margin-bottom: 3rem;
	background-color: var(--colore-3);
	background-image: url(assets/images/cta-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--bianco);
	position: relative;
	overflow: hidden;
}
.cta .inner::before {
	position: absolute;
	content:'';
	inset: 0;
	z-index: 0;
	background: rgba(28, 92, 122, .5);
}
.cta .inner p.h2 {
	color: var(--bianco);
}
.cta .inner p.h2 span {
	display: block;
}
@media (min-width: 1280px)  {
	.cta .inner {
		margin-bottom: 4rem;
	}
}
@media (min-width: 1280px) {
  .cta .inner p.h2 {
	font-size: 2.5rem;
  }
}




/* PAGINA CONTATTI */

@media (min-width: 1240px) {

	.page-id-1215 .InnerBlocks-container {
		max-width: 1200px;
		margin-inline: auto;
		text-align: left;
	}
}



/* FSLIGHTBOX*/

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

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




/* FOOTER */

#footer {
	position: relative;
	background-color: var(--colore-2);
	background-image: url(assets/images/bg-footer.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--bianco);
	width: 100%;
	/* max-width: 2000px; */
	margin: 0 auto;
	border-top: 6px solid var(--colore);
}

/* #footer::before {
	content: '';
	background-image: url(assets/images/logo-flat.svg);
	background-repeat: no-repeat;
	background-size: 800px;
	background-position: center center;
	position: absolute;
	inset: 0;
	z-index: -1;
} */


#footer h3 {
	color: var(--bianco);
	font-size: 1.6rem;
}

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

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

#footer .footer-logo {
	width: 100%;
	max-width: 165px;
	filter: brightness(0) invert(1);
}

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

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

#top-footer,
#sub-footer {
	position: relative;
	padding-inline: 1.25rem;
}

#top-footer .blocco {
	padding-bottom: 2rem;
}

#top-footer ul {
	list-style-type: none;
	padding-left: 0;
}
#top-footer ul li {
	line-height: 1;
	margin-bottom: .5rem;
}
#top-footer .blocco-5 {
	text-align: center;
	grid-column: span 12 !important;
	margin-bottom: 0 !important;
	padding-bottom: 1rem !important;
}
#top-footer .wpcf7 input.wpcf7-text {
	margin-bottom: 1rem;
	height: 38px;
	border: none;
	padding: 5px 24px 4px 16px;
	width: calc(100% - 65px);
}

#top-footer .wpcf7 input.wpcf7-submit {
	position: absolute;
	top: 0;
	right: 0;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	border-top-right-radius: var(--radius);
	border-bottom-right-radius: var(--radius);
	padding: .5rem 1rem;
	height: 38px;
	border: none;
	font-size: .9rem;
	background-color: var(--colore);
	color: var(--bianco);
}

#top-footer .wpcf7 input.wpcf7-submit:hover {
	background-color: var(--main);
}

#top-footer .wpcf7 .privacy a {
	color: var(--main);
}

#top-footer .wpcf7 .privacy a:hover {
	color: var(--colore);
}

#sub-footer {
	padding-top: .2rem !important;
	padding-bottom: 1rem;
	text-align: center;
	font-size: .98rem;
	font-weight: var(--weightmedium);
}

#sub-footer .social-holder {
	text-align: center;
	padding-top: 1.5rem;
}

#sub-footer .email-holder {
	margin-top: .5rem;
}


/* #top-footer .blocco {
	grid-column: span 12;
} */

@media (min-width: 620px) and (max-width: 879px)  {
  	#top-footer .blocco {
		grid-column: span 6;
	}
}
@media (min-width: 880px) and (max-width: 1279px) {
  	#top-footer .blocco {
		grid-column: span 4;
	}
	#top-footer .blocco-1 {
		grid-column: span 12;
	}
}

@media (min-width: 1024px) {
	#top-footer,
	#sub-footer {
		padding-inline: 2rem;
	}
	#sub-footer .copyright {
		/* grid-column: span 7; */
		/* text-align: left; */
	}

	/* #sub-footer .legal {
		grid-column: span 5;
		text-align: right;
	} */

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

	#top-footer,
	#sub-footer {
		padding-inline: 1rem;
	}
}







.tabella .grid.full {
	max-width: 1600px;
	margin-inline: auto;
}

table th:first-child {
	border-top-left-radius: var(--radius);
	border-bottom-left-radius: var(--radius);
}

table th:last-child {
	border-top-right-radius: var(--radius);
	border-bottom-right-radius: var(--radius);
}



/* 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);
	}
}


.fslightbox-absoluted {
	padding-inline: 1rem;
}



p.big {
	font-size: 1rem;
	line-height: 1.4;
}

@media (min-width: 768px) {
	p.big {
		font-size: 1.1rem;
	}
}


.fat {
	font-family: var(--altfont);
	font-size: 1.2rem;
	line-height: 1.1;
}

@media (min-width: 768px) {
	.fat {
		font-size: 1.2rem;
	}
}

@media (min-width: 1024px) {
	.fat {
		font-size: 1.3rem;
	}
}

@media (min-width: 1280px) {
	.fat {
		font-size: 1.4rem;
	}
}

@media (min-width: 1440px) {
	.fat {
		font-size: 1.5rem;
	}
}



.medium-large {
	font-weight: var(--weightmedium);
}

@media (min-width: 768px) {
	.medium-large {
		font-size: 1.06rem;
	}
}

@media (min-width: 1100px) {
	.medium-large {
		font-size: 1.08rem;
	}
}

@media (min-width: 1280px) {
	.medium-large {
		font-size: 1.1rem;
	}
}

@media (min-width: 1360px) {
	.medium-large {
		font-size: 1.2rem;
	}
}

@media (min-width: 1600px) {
	.medium-large {
		font-size: 1.3rem;
	}
}




@media (min-width: 1280px) {
	 .testo-intro p {
		font-size: 1.05rem;
	}
}
@media (min-width: 1440px) {
	.testo-intro p {
		font-size: 1.08rem;
	}
}




/*  APPROCCIO HOME */

.approccio-home .item {
	margin-bottom: 10px !important;
}
.approccio-home .item figure {
	margin-bottom: 10px !important;
}

.approccio-home .item img {
	max-width: 110px;
}
.approccio-home .inner {
	max-width: 200px;
	margin: 0 auto;
}




/* COME OPERIAMO HOME  */

.come-operiamo-home {
	position: relative;
}
.come-operiamo-home figure {
	z-index: 2;
	display: block;
}
.come-operiamo-home figure img {
	object-fit: contain;
}
.come-operiamo-home .contenuto {
	background-color: var(--bianco);
	position: relative;
 }
 .come-operiamo-home .contenuto::before {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: -25px;
	width: 25px;
	background-color: var(--bianco);
 }
.come-operiamo-home::before,
.come-operiamo-home::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	height: 50% !important;
	width: 70%;
	background-color: var(--colore-2);
	z-index: -1;
	visibility: visible;
}
.come-operiamo-home::after {
	width: 120px;
	background-color: var(--colore);
	z-index: 0;
}
@media (min-width: 768px) {
	.come-operiamo-home .contenuto::before {
		display: none;
	}
  	.come-operiamo-home::before {
		height: 100% !important;
		width: 43%;
  	}
  	.come-operiamo-home::after {
		height: 100% !important;
		width: 80px;
  	}
	.come-operiamo-home figure img {
		transform: scale(1.07);
	}
}
@media (min-width: 1280px) {
  	.come-operiamo-home::before {
		width: 45%;
  	}
  	.come-operiamo-home::after {
		width: 100px;
  	}
}
@media (min-width: 1440px) {
  	.come-operiamo-home::before {
		width: 48%;
  	}
  	.come-operiamo-home::after {
		width: 120px;
  	}
	.come-operiamo-home figure img {
		transform: scale(1.09) translateX(1rem);
	}
}
@media (min-width: 1600px) {
	.come-operiamo-home figure img {
		transform: scale(1.09) translateX(1.5rem);
	}
}
@media (min-width: 1800px) {
  	.come-operiamo-home::after {
		width: 140px;
  	}
	.come-operiamo-home figure img {
		transform: scale(1.15) translateX(1rem);
	}
}




/* SERVIZI HOME */

.servizi-home .item {
	border-radius: var(--radius);
	padding: 1rem 1rem 1.25rem 1rem;
	grid-column: span 12;
	position: relative;
	background-color: var(--bianco);
	transition: box-shadow 0.3s ease;
}
.servizi-home .item:hover {
	box-shadow: var(--shadow);
}
.servizi-home figure img {
	max-width: 100px;
}
.servizi-home .item .link {
	color: var(--colore-2);
	font-size: 1.1rem;
	line-height: 1;
    font-weight: var(--weightmedium);
	margin-bottom: 0;
}
.servizi-home .descrizione {
	font-size: .82rem;
}
@media (min-width: 560px) {
	.servizi-home .item {
		grid-column: span 6;
	}
}
@media (min-width: 768px) {
	.servizi-home .item h3 {
		font-size: 1.6rem;
	}
}
@media (min-width: 1024px) {
	.servizi-home .item {
		grid-column: span 3;
	}
	.servizi-home .item h3 {
		font-size: 1.3rem;
	}
}
@media (min-width: 1280px) {
	.servizi-home .item h3 {
		font-size: 1.5rem;
	}
}
@media (min-width: 1360px) {
  	.servizi-home .item {
		padding: 1.3rem 1.25rem 1.35rem;
	}
}
@media (min-width: 1440px) {
	.servizi-home .item {
		padding: 1.3rem 1.5rem 1.35rem;
	}
	.servizi-home .item h3 {
		font-size: 1.6rem;
	}
}




/* PUNTI FORZA HOME */

.punti-forza-home {
	position: relative;
}
.punti-forza-home .titolo_item {
	max-width: 200px;
	margin: 0 auto;
	font-weight: var(--weightmedium);
	line-height: 1.2;
}
 .punti-forza-home .item_container {
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
}
.punti-forza-home::before,
.punti-forza-home::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	height: 100% !important;
	width: 10px;
	background-color: var(--colore);
	z-index: -1;
	visibility: visible;
}
.punti-forza-home::after {
	left: auto;
	right: 0;
}
.punti-forza-home .target::before {
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 250px;
    aspect-ratio: 1 / 1;
    background-image: url(assets/images/target.svg);
    background-repeat: no-repeat;
    background-size: contain;
	background-position: 0 100%;
}
@media (min-width: 1024px) {
	.punti-forza-home::before,
	.punti-forza-home::after {
		width: 30px;
	}
	.punti-forza-home .target::before {
		width: 270px;
	}
}
@media (min-width: 1280px) {
	.punti-forza-home::before,
	.punti-forza-home::after {
		width: 50px;
	}
	 .punti-forza-home .item_container {
		max-width: 800px;
	}
	.punti-forza-home .target::before {
		width: 320px;
	}
}
@media (min-width: 1360px) {
	 .punti-forza-home .item_container {
		max-width: 880px;
	}
}
@media (min-width: 1440px) {
	.punti-forza-home::before,
	.punti-forza-home::after {
		width: 70px;
	}
	 .punti-forza-home .item_container {
		max-width: 880px;
	}
	.punti-forza-home .target::before {
		width: 350px;
	}
}
@media (min-width: 1600px) {
  	.punti-forza-home .target::before {
		width: 400px;
	}
}
@media (min-width: 1800px) {
  	.punti-forza-home .target::before {
		width: 450px;
	}
}


/* CERTIFICATI SLIDER HOME */

.certificati-slider .titolo_intro {
	border-top-left-radius: var(--radius);
	border-top-right-radius: var(--radius);
	background-color: var(--grigio-4);
	padding: 2.5rem 1.25rem .5rem;
}
.certificati-slider .paragrafo_intro {
	margin-bottom: 0 !important;
	background-color: var(--grigio-4);
	padding: 0 1.25rem;
}
.certificati-slider .slider {
	border-bottom-left-radius: var(--radius);
	border-bottom-right-radius: var(--radius);
	background-color: var(--grigio-4);
	padding: 0 1.25rem;
}
.certificati-slider .slider figure {
	text-align: center;
}
.certificati-slider .slider img {
	border-radius: var(--radius);
	max-width: 313px;
	margin-inline: auto;
}
.certificati-slider .glide__arrows {
	display: none;
}
.certificati-slider .glide__bullets {
	margin-top: 0px;
}
.certificati-slider .glide__bullet:not(.glide__bullet--active) {
	background-color: var(--grigio-2);
}
@media (min-width: 768px) {
	.certificati-slider .titolo_intro {
		padding: 3.5rem 3.5rem .5rem;
	}
}
@media (min-width: 1280px) {
	.certificati-slider .titolo_intro {
		padding: 4.5rem 5rem .5rem;
	}
	.certificati-slider .slider {
		padding: .65rem 1.25rem;
	}
}
@media (min-width: 1600px) {
	.certificati-slider .titolo_intro {
		padding: 5rem 7rem .5rem;
	}
	.certificati-slider .slider {
		padding: 1.65rem 1.25rem;
	}
}






/* ATTIVITA CULTURALI SLIDER HOME */

.attivita-culturali-slider .wrap {
	display: flex;
	flex-direction: column;
}
.attivita-culturali-slider .wrap figure img {
	height: 100%;
	object-fit: cover;
}
.attivita-culturali-slider .wrap .content {
	background-color: var(--colore);
	color: var(--bianco);
	padding: 1.5rem 1rem;
}
.attivita-culturali-slider .wrap h3 {
	color: var(--bianco);
}
.attivita-culturali-slider .wrap .data_evento {
	font-size: .88rem;
	font-weight: var(--weightmedium);
	margin-bottom: 1.25rem;
}
.attivita-culturali-slider .wrap .button {
	padding: .51rem 1.25rem .4rem;
 }
.attivita-culturali-slider .glide__bullets {
	margin-block: 0;
	transform: translateY(-20px);
}
.attivita-culturali-slider .glide__arrows {
	display: none;
}
.attivita-culturali-slider .archivio {
	display: none;
}
@media (min-width: 1024px) {
	.attivita-culturali-slider .archivio {
		display: block;
		margin: 0 !important;
		padding: 0 !important;
	}
	.attivita-culturali-slider .button.more {
		position: absolute;
    	right: 0;
    	bottom: 0;
		background-color: var(--grigio);
		color: var(--bianco);
	}
	.attivita-culturali-slider .button.more:hover {
		background-color: var(--main);
		color: var(--bianco);
	}
	.attivita-culturali-slider .testo-intro {
		position: relative;
	}
	.attivita-culturali-slider .testo-intro p {
		max-width: 67%;
	}
	.attivita-culturali-slider .wrap {
		flex-direction: row;
	}
	.attivita-culturali-slider .wrap figure {
		width: 67%;
	}
	.attivita-culturali-slider .wrap .content {
		width: 33%;
		text-align: left;
		padding-left: 1.6rem;
	}
	.attivita-culturali-slider .wrap h3 {
		font-size: 1.6rem;
	}
}
@media (min-width: 1280px) {
	.attivita-culturali-slider .wrap .content {
		padding: 2rem 1.8rem;
	}
	.attivita-culturali-slider .wrap h3 {
		font-size: 1.85rem;
	}
}
@media (min-width: 1440px) {
	.attivita-culturali-slider .testo-intro p {
		max-width: 65%;
	}
	.attivita-culturali-slider .wrap .content {
		padding: 2.4rem 2.2rem;
	}
	.attivita-culturali-slider .wrap h3 {
		font-size: 2rem;
	}
	.attivita-culturali-slider .wrap .data_evento {
		font-size: .9rem;
		margin-bottom: 1.8rem;
	}
}
@media (min-width: 1600px) {
	.attivita-culturali-slider .testo-intro p {
		max-width: 58%;
	}
	.attivita-culturali-slider .wrap .content {
		padding: 2.5rem 2.5rem;
	}
	.attivita-culturali-slider .wrap h3 {
		font-size: 2.3rem;
	}
}





/* ATTIVITA CULTURALI GRID */

.attivita-culturali .inner {
	background-color: var(--colore);
	color: var(--bianco);
	overflow: hidden;
}
.attivita-culturali .testo {
	padding: 1.5rem 1.5rem 3.75rem;
}
.attivita-culturali h3 {
	color: var(--bianco);
}
.attivita-culturali .data_evento {
	font-size: .82rem;
    font-weight: var(--weightmedium);
    margin-bottom: 1.25rem;
	text-transform: uppercase;
}
.attivita-culturali .item .button {
	position: absolute;
	bottom: 0;
	bottom: 1.5rem;
}




/* DELF DALF TCF HOME */

.delf-dalf-tcf-home img {
	border-radius: var(--radius);
}
.delf-dalf-tcf-home h3 a:hover {
	color: var(--main);
}







/* DOCENTI & SCUOLE HOME */

.docenti-scuole-home .testo-intro p {
	margin-bottom: 0 !important;
}

.docenti-scuole-home .item {
	background-color: var(--colore);
	color: var(--bianco);
	border-radius: var(--radius);
	overflow: hidden;
}
.docenti-scuole-home .item h3 {
	color: var(--bianco);
	margin-bottom: 0;
	font-size: 1.1rem;
}
.docenti-scuole-home .item h3 a {
	display: inline-block;
	color: var(--bianco);
	padding: 1rem 1.5rem 1rem 1rem;
	background-color: var(--colore);
	border-top-right-radius: var(--radius);
	border-bottom-right-radius: var(--radius);
}
.docenti-scuole-home .item h3 a:hover {
	background-color: var(--bianco);
	color: var(--main);
}
.docenti-scuole-home figure {
	height: 100%;
	transition: transform 0.5s ease;
}
.docenti-scuole-home .item:hover figure {
	transform: scale(1.09);
}
.docenti-scuole-home .testo {
	position: absolute;
	top: 60%;
	left: 0;
	padding: 0;
	max-width: 90%;
 }
.docenti-scuole-home .data {
	display: none;
}
.docenti-scuole-home .excerpt {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
	word-break: normal;
 }
 .docenti-scuole-home .archivio {
	display: none;
 }
@media (min-width: 1024px) {
  	.docenti-scuole-home .testo-intro p {
		max-width: 67%;
	}
	.docenti-scuole-home .archivio {
		display: block;
		position: relative;
	}
	.docenti-scuole-home .testo-intro .button {
		position: absolute;
    	right: 0;
    	bottom: 0;
		background-color: var(--grigio);
		color: var(--bianco);
	}
	.docenti-scuole-home .testo-intro .button:hover {
		background-color: var(--main);
		color: var(--bianco);
	}
}
@media (min-width: 1440px) {
	.docenti-scuole-home .testo-intro p {
		max-width: 65%;
	}
}
@media (min-width: 1600px) {
	.docenti-scuole-home .testo-intro p {
		max-width: 58%;
	}
}








.logcart {
	position: absolute;
	top: 6px;
	right: 0;
	width: 100px;
	display: flex;
	transition: top .1s ease-in-out, right .1s ease-in-out;
}
.logcart .wp-block-woocommerce-customer-account a {
	color: var(--bianco) !important;
	padding: 0 .6rem;
}
.logcart .wp-block-woocommerce-customer-account a .wc-block-customer-account__account-icon {
	width: 32px;
	height: 32px;
}
.logcart .xoo-wsc-sc-cont {
	padding: .3rem .3rem .3rem .5rem;
}
.logcart span.xoo-wsc-sc-count {
	top: -9px;
	right: -11px;
	font-size: .68rem;
	font-weight: var(--weightmedium);
 }
#topbar.up .logcart span.xoo-wsc-sc-count {
	background-color: var(--main);
 }
@media (min-width: 1024px) {
  .logcart {
	top: 28px;
	right: .5rem;
  }
  #topbar.up .logcart {
	top: 24px;
  }
}
@media (min-width: 1280px) {
  .logcart {
	top: 32px;
  }
}
@media (min-width: 1440px) {
  .logcart {
	top: 37px;
  }
}








/*******************
	WOOCOOMERCE
*******************/


/* BLOCCO SLIDER PRODOTTI HOME */

.slider-prodotti ul.products.glide__slides {
	display: flex !important;
	flex-wrap: nowrap !important;
}
.slider-prodotti .titolo .categoria {
	display: block;
	text-transform: uppercase;
	font-size: 1.3rem;
	color: var(--colore2);
	padding-bottom: .2rem;
}
@media (max-width: 479px) {
	.slider-prodotti ul.products.glide__slides {
		gap: 0 !important;
	}
	.slider-prodotti ul.products.glide__slides li.product {
		max-width: 346px !important;
	}
}
@media (min-width: 480px) and (max-width: 560px) {
	.slider-prodotti ul.products li.product .button {
		background-image: none !important;
	}
}
@media (min-width: 581px) and (max-width: 717px) {
	.slider-prodotti ul.products li.product .button {
		background-image: none !important;
	}
}
@media (min-width: 580px) {
	.slider-prodotti .titolo {
		text-align: right;
		padding-top: 2.2rem;
	}
	.slider-prodotti .titolo .categoria {
		font-size: 1.12rem;
		padding-bottom: .5rem;
	}
	.slider-prodotti .titolo .collezione {
		font-size: 1.5rem;
		line-height: 1.1;
		display: block;
	}
}
@media (min-width: 768px) {
	.slider-prodotti .titolo .collezione {
		font-size: 1.65rem;
	}
}
@media (min-width: 1024px) {
	.slider-prodotti .titolo .categoria {
		font-size: 1.16rem;
		padding-bottom: .65rem;
	}
	.slider-prodotti .titolo .collezione {
		font-size: 1.85rem;
	}
}
@media (min-width: 1280px) {
	.slider-prodotti .titolo {
		padding-top: 2.8rem;
	}
	.slider-prodotti .titolo .categoria {
		font-size: 1.2rem;
	}
	.slider-prodotti .titolo .collezione {
		font-size: 2.1rem;
	}
}
@media (min-width: 1600px) {
	.slider-prodotti .titolo .categoria {
		font-size: 1.22rem;
		padding-bottom: .75rem;
	}
	.slider-prodotti .titolo .collezione {
		font-size: 2.2rem;
	}
}

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


/* RICERCA PRODOTTO */
.wp-block-search__button {
	background-size: 20px;
	background-position: 18px 10px;
}

.cart-customlocation {
	position: relative;
	display: inline-block;
	font-weight: var(--weightheavy);
    font-size: 10px;
    background-color: var(--colore);
    color: var(--bianco) !important;
    border-radius: 25px;
    padding: 3px 4px 2px;
    line-height: 1;
}
.cart-customlocation:before {
	position: absolute;
	content: '';
	left: -23px;
	width: 30px;
	height: 30px;
	background-repeat: no-repeat;
	background-image: url(assets/images/cart.svg);
}
span.xoo-wsch-close {
	font-size: 22px;
	right: 12px;
}
.xoo-wsc-header {
	background-color: var(--bianco);
	color: var(--colore);
	border: none;
}
span.xoo-wsch-text {
	font-weight: var(--weightnormal);
	text-transform: uppercase;
}
.xoo-wsc-img-col {
	padding-right: 10px;
}
.xoo-wscb-icon {
	color: var(--colore);
}
.xoo-wscb-count {
	font-weight: var(--weightheavy);
}
.xoo-wsc-footer {
	box-shadow: none !important;
	background-color: var(--bianco) !important;
}
.xoo-wsc-ft-amt,
.xoo-wsc-footer .amount {
	font-size: 1.2rem;
}
.xoo-wsc-ft-amt {
	font-weight: var(--weightbold) !important;
}
.xoo-wsc-product {
	background-color: transparent !important;
	border: none !important;
}
span.xoo-wsc-pname,
span.xoo-wsc-pname a {
	font-size: .98rem;
	font-weight: var(--weightnormal) !important;
	line-height: 1.15;
}
span.xoo-wsc-pname a:hover {
	color: var(--main);
}
.xoo-wsc-qty-price ,
.xoo-wsc-body span.amount {
	font-size: .78rem;
	color: var(--colore2);
}
span.xoo-wsc-ft-amt-label {
	font-weight: var(--weightnormal) !important;
}
span.xoo-wsc-footer-txt {
	font-size: .82rem !important;
	color: var(--colore2);
	margin-bottom: 14px;
}
.xoo-wsc-container,
.xoo-wsc-body {
	background-color: var(--bianco) !important;
}
.xoo-wsc-container .xoo-wsc-btn {
	background-color: transparent !important;
	font-size: 1rem !important;
	color: var(--main);
	border: 1px solid var(--colore) !important;
	font-weight: var(--weightnormal) !important;
	border-radius: var(--radius) !important;
	padding: .72rem 1rem !important;
}
.xoo-wsc-container .xoo-wsc-btn:hover {
	background-color: var(--grigio) !important;
	border-color: var(--grigio) !important;
	color: var(--bianco) !important;
}
.xoo-wsc-container .xoo-wsc-btn.xoo-wsc-ft-btn-checkout {
	background-color: var(--main) !important;
	color: var(--bianco) !important;
	border-color: var(--main) !important;
	padding: .92rem 1rem .86rem !important;
}
.xoo-wsc-container .xoo-wsc-btn.xoo-wsc-ft-btn-checkout:hover {
	background-color: var(--colore2) !important;
	color: var(--bianco) !important;
	border-color: var(--colore2) !important;
}
@media (min-width: 375px) {
	.xoo-wsc-container,
	.xoo-wsc-slider {
		max-width: 375px;
		right: -375px;
	}
}

.xoo-wsc-icon-basket1:before {
	position: absolute;
    content: '';
    left: -23px;
    width: 31px;
    height: 31px;
    background-repeat: no-repeat;
    background-image: url(assets/images/cart.svg);
	background-size: 25px;
}

#customer_login {
	display: flex;
	flex-wrap: wrap;
}
#customer_login > div {
	width: 100%;
	padding-bottom: 2rem;
}
#customer_login .woocommerce-LostPassword {
	padding-top: 2rem;
}
#customer_login .woocommerce-privacy-policy-text p {
	margin-bottom: 0;
}
@media (min-width: 640px) {
  	#customer_login > div {
		width: 50%;
	}
}
@media (min-width: 768px) {
  	#customer_login > div {
		padding-right: 3rem;
	}
}



#maincontainer > .woocommerce {
	margin: 0 auto;
	padding: 0 1.25rem 90px;
	max-width: calc(88rem + 2.50rem);
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
	text-align: left;
}
.woocommerce-MyAccount-navigation {
	line-height: 2.1;
}
.woocommerce-MyAccount-navigation ul {
	list-style-type: none;
	background-color: var(--grigio-3);
	padding: 1.25rem 2rem !important;
	border-radius: var(--radius-less);
	margin: 0 0 3rem !important;
}
.woocommerce-MyAccount-navigation li {
	padding-bottom: 0;
}
.woocommerce-MyAccount-navigation a {
	font-weight: var(--weightnormal);
	font-size: 1.15rem;
	color: var(--colore2);
}
.woocommerce-MyAccount-navigation li a:hover,
.woocommerce-MyAccount-navigation li.is-active a {
	color: var(--colore);
}
.woocommerce-Address {
	padding-left: 0;
	padding-bottom: 3rem;
}
.woocommerce-MyAccount-content .wc-block-components-notice-banner.is-info {
	margin-top: 0;
	border: none;
	background-color: transparent !important;
}
.woocommerce-MyAccount-content .woocommerce-info {
	background-color: transparent !important;
}
.woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button {
	display: table;
	clear: both;
}
.woocommerce-MyAccount-content .wc-block-components-notice-banner.is-info .wc-forward {
	display: none;
}
.woocommerce-MyAccount-content h2 {
	font-size: 2rem;
	margin-bottom: .8rem;
}
.woocommerce-MyAccount-content h3 {
	font-size: 1.4rem;
	margin-bottom: .8rem;
}
.woocommerce-MyAccount-content a.edit {
	background-color: var(--colore);
	font-size: .86rem;
	color: var(--bianco);
	border-radius: var(--radius);
	padding: .25rem 1rem;
	display: inline-block;
}
.woocommerce-MyAccount-content a.edit:hover {
	background-color: var(--main);
}
.woocommerce-MyAccount-content address {
	margin-top: .9rem;
	color: var(--colore2);
}
ol.woocommerce-OrderUpdates {
	list-style-type: none !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
}
ol.woocommerce-OrderUpdates li {
	padding-left: 0 !important;
}
ol.woocommerce-OrderUpdates li::before {
	display: none !important;
}
#maincontainer > .woocommerce .button {
	margin-top: 2rem;
}

.woocommerce-page table.cart td.actions .coupon {
	position: relative;
	padding: 0;
	margin-bottom: .5rem;
}
.woocommerce-cart table.cart td.actions .coupon .input-text {
	width: calc(100% - 90px);
}
.woocommerce-page table.cart td.actions .coupon .button {
	position: absolute;
	top: 0;
	right: 0;
	margin-top: 0 !important;
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
	padding: 0.78rem .85rem !important;
	height: 100% !important;
	width: 110px !important;
}
@media (min-width: 460px) {
	.woocommerce-page table.cart td.actions .coupon {
		width: 400px;
	}
}
@media (min-width: 768px) {
	.woocommerce-MyAccount-navigation {
		width: 30%;
	}
	.woocommerce-MyAccount-navigation ul {
		margin-right: 2rem !important;
		max-width: 360px;
	}
	.woocommerce-MyAccount-content {
		width: 70%;
	}
}
@media (min-width: 1024px) {
	.woocommerce-MyAccount-content h3 {
		font-size: 1.65rem;
	}
}

.woocommerce table.shop_table {
	background-color: transparent;
	border: none;
}
.woocommerce table.shop_table th {
	background-color: transparent;
	color: var(--main);
	font-weight: var(--weightheavy) !important;
}
.woocommerce table.shop_table td {
	border-bottom: none !important;
}
.woocommerce table.shop_table td del {
    color: var(--colore2);
}
.woocommerce table.shop_table td ins {
	text-decoration: none;
}
.woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals {
	padding-top: 2rem;
}
.cart_totals h2 {
	font-size: 1.5rem;
}
.select2-container .select2-selection--single {
	height: 44px;
	border: 1px solid var(--grigio);
	margin-bottom: 0;
	border-top-left-radius: var(--radius);
	border-top-right-radius: var(--radius);
}
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single {
	border-top-left-radius: var(--radius-medium);
	border-top-right-radius: var(--radius-medium);
	background-color: var(--bianco);
	border-bottom-color: var(--bianco);
}
.select2-search--dropdown .select2-search__field {
	margin-bottom: 0;
	padding-inline: .8rem;
}
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] {
	background-color: var(--colore);
}
.select2-dropdown {
	border-color: var(--colore);
}
.select2-results__option {
	padding: .25rem 1rem;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 24px;
	padding-left: 0;
	color: var(--colore);
	padding-top: 0;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 35px;
	right: 5px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
	background-image: url(assets/images/arrow.svg);
	background-repeat: no-repeat;
	background-size: 11px;
	border: none;
	width: 11px;
	height: 11px;
	margin-left: -11px;
	margin-top: 0;
}
.woocommerce form .form-row textarea.input-text {
	border-radius: var(--radius-small);
}
.woocommerce form .form-row label {
    padding-bottom: 0;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    font-size: 0.82rem;
    font-weight: var(--weightbold);
	width: 100%;
    display: block;
    margin-bottom: .25rem !important;
}
.woocommerce form .form-row.woocommerce-invalid label {
	color: var(--colore);
}
.woocommerce form .form-row .optional {
	display: none;
}
.woocommerce form #codice_fiscale_field.form-row label strong {
	font-weight: var(--weightblack);
	color: var(--colore);
}
.woocommerce form .form-row textarea {
	min-height: 80px;
}
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
	background-color: transparent;
}
#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box {
	background-color: var(--grigio-4);
	border-radius: 12px;
}
#add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: var(--grigio-4);
}
.payment_box.payment_method_xpay_build {
    margin-top: 0 !important;
    padding-inline: 0 !important;
}
#xpay-card {
    background-color: var(--bianco);
    border-color: var(--grigio) !important;
    border-radius: var(--radius);
    height: 43px !important;
    padding-top: 11px !important;
    padding-left: 14px !important;
    padding-right: 8px !important;
}
#xpay-card-errors {
    color: var(--rosso) !important;
}
.woocommerce-checkout #payment ul.payment_methods li img {
    margin-left: 0 !important;
}
#payment label {
	display: inline-block;
}
#payment input[type=radio] {
	margin: 0 .5rem 0 0 !important;
}
.woocommerce-privacy-policy-text {
	font-size: .88rem;
}
.woocommerce form .form-row.woocommerce-validated .select2-container,
.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select {
	border-color: var(--colore);
}
#customer_type_field {
	padding-top: 20px;
	padding-bottom: 0;
}
#customer_type_field label {
	display: inline;
	padding-right: 2rem;
}
#customer_type_field input[type=radio] {
	margin: 0 8px 0 0;
}


/* icone nexi */
#payment .payment_methods li[class*="payment_method_xpay"] label img {
    display: inline-block !important;
}

/* icone stripe */
.wc-stripe-card-icons-container img {
	width: 43px;
	height: 26px;
}

#customer_details .col-1 {
	padding-top: 2rem;
	padding-bottom: 1rem;
}
#customer_details .col-2 {
	padding-top: 2rem;
}
#codice_fiscale_field .optional {
    display: none;
}

#partita_iva_field .optional,
#codice_univoco_field .optional {
    position: relative;
    visibility: hidden;
}
#partita_iva_field .optional::after,
#codice_univoco_field .optional::after {
    content: '*' !important;
    display: inline-block;
    visibility: visible;
    position: absolute;
    left: 0;
}

.woocommerce-shipping-fields__field-wrapper {
	padding-bottom: 3rem;
}

#ship-to-different-address label {
	margin-top: 0;
}
#ship-to-different-address input[type=checkbox] {
	 margin-top: 9px;
}
#ship-to-different-address span {
	font-size: 1rem;
}

.woocommerce-orders-table .button {
	padding: .5rem 1rem;
	margin-top: -5px !important;
	font-size: .95rem !important;
}

.woocommerce-invalid #terms {
	outline-color: var(--rosso) !important;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {
	background-color: var(--main);
	color: var(--bianco);
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover {
	background-color: var(--colore);
}


.wc-proceed-to-checkout a.checkout-button {
	background-color: var(--colore) !important;
}
.wc-proceed-to-checkout a.checkout-button:hover {
	background-color: var(--colore2) !important;
}

.woocommerce div.product div.summary .woocommerce-breadcrumb {
	margin-bottom: 1.5rem;
	line-height: 1.25;
}
.woocommerce table.shop_table_responsive tr td {
	background-color: transparent !important;
	border-right: none;
}
.woocommerce-cart-form {
	width: 100%;
}

@media (max-width: 768px) {
	.woocommerce #content table.cart .product-thumbnail, .woocommerce table.cart .product-thumbnail, .woocommerce-page #content table.cart .product-thumbnail, .woocommerce-page table.cart .product-thumbnail {
		display: block;
	}
	.woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
		content: attr(data-title);
		font-weight: var(--weightmedium);
	}
	.woocommerce table.shop_table_responsive tr {
		padding: 0;
	}
	.woocommerce table.shop_table_responsive tr td {
		border: none;
		padding: 8px 0;
	}
	.woocommerce table.shop_table_responsive tr td.product-remove {
		position: relative;
	}
	.woocommerce a.remove {
		position: absolute;
		top: 64px;
		right: 1rem;
	}
	.woocommerce table.shop_table_responsive tr td.product-subtotal {
		padding-bottom: 4rem;
	}
	.woocommerce .quantity .qty {
		height: 30px;
	}
}
.woocommerce-cart table.cart img {
	width: 90px;
	border-radius: var(--radius-small);
}
.woocommerce-cart table.cart td.actions {
	padding-top: 1.8rem;
}
.woocommerce-cart table.cart td.actions .coupon .input-text {
	padding-left: 1rem;
}
.woocommerce-cart table.cart td.actions .coupon button {
	margin-top: 0 !important;
	background-color: var(--colore2) !important;
}
.woocommerce-cart table.cart td.actions .coupon button:hover {
	background-color: var(--colore) !important;
}
@media (max-width: 539px) {
	.woocommerce-cart table.cart td.actions .coupon button {
		margin-top: 1rem !important;
		white-space: nowrap;
		width: auto !important;
	}
}
/*
@media (min-width: 768px) {
	.woocommerce-cart table.cart td.actions .coupon .input-text {
		min-width: 210px;
	}
}
*/
@media (min-width: 769px) {
	.woocommerce-cart table.cart td.actions button {
		margin-top: 0 !important;
	}
}
/*
@media (min-width: 992px) {
	.woocommerce-cart table.cart td.actions .coupon .input-text {
		min-width: 320px;
	}
}
*/
@media (min-width: 1280px) {
	#customer_details .col-1,
	#customer_details .col-2 {
		width: 47% !important;
	}
}
.woocommerce-page table.cart td.actions .coupon .input-text+.button {
	min-height: 41px;
}

.woocommerce a.remove {
	font-family: 'Woo-Side-Cart' !important;
	color: var(--colore2) !important;
	font-size: .00000000px !important;
	transform: translateY(-10px);
}
.woocommerce a.remove:before {
    content: "\e908";
	font-size: 1.1rem !important;
	font-weight: var(--weightnormal) !important;
}

.woocommerce a.remove {
	/* color: var(--colore) !important;
	font-weight: var(--weightnormal) !important; */
}
.woocommerce a.remove:hover {
	color: var(--colore) !important;
}
.woocommerce-page table.cart td.actions > .button {
	background-color: var(--colore2) !important;
	color: var(--bianco) !important;
}
.woocommerce-page table.cart td.actions > .button:hover {
	background-color: var(--main) !important;
	color: var(--bianco) !important;
}
.woocommerce table.shop_table tfoot td {
	font-weight: var(--weightnormal);
}
.woocommerce ul#shipping_method li input {
	margin-top: 7px;
}
.woocommerce ul#shipping_method li [for="shipping_method_0_flat_rate1"] {
	font-size: .000000001px;
}
.woocommerce ul#shipping_method li [for="shipping_method_0_flat_rate1"] span {
	display: inline-block;
	font-size: .94rem;
	font-weight: var(--weightnormal);
	margin-top: 3px;
}
.woocommerce ul#shipping_method li:last-child {
	margin-bottom: 0;
}



/* FILTRI TOP */

#filtri-top {
	float: left;
	display: flex;
	gap: .65rem;
	position: relative;
	z-index: 1;
}
#filtri-top .filtro {
	position: relative;
}
#filtri-top h3 {
	font-size: .9rem;
	background-color: var(--bianco);
	border-radius: var(--radius-small);
	display: inline-block;
	padding: .3rem 1rem;
	cursor: pointer;
}
#filtri-top ul.my_attributes {
	display: none;
	min-width: 260px;
	position: absolute;
	top: 2rem;
	left: 0;
	background-color: var(--bianco);
	border-radius: var(--radius-small);
	z-index: 2;
	padding: 1rem 1.5rem !important;
	margin: 0 !important;
	list-style-type: none;
	box-shadow: var(--shadow-more);
}
#filtri-top .filtro:hover ul.my_attributes {
	display: block;
}
ul.my_attributes label {
	cursor: pointer;
}
#filtri-top a.resetta {
	display: block;
	margin-top: .2rem;
	font-size: .8rem;

	&:hover {
		color: var(--main) !important;
	}
}
@media (max-width: 420px) {
	#filtri-top .colori ul.my_attributes {
		transform: translateX(-1rem);
	}
}
@media (min-width: 768px) {
	#filtri-top {
		transform: translateY(-.2rem);
	}
}


.woocommerce .woocommerce-ordering {
	width: 100%;
	text-align: right;
	margin-bottom: 2rem;
}
.woocommerce .woocommerce-ordering select {
	max-width: 212px;
	margin-bottom: 0rem;
    padding: 0.4rem .8rem 0.5rem !important;
    height: 35px;
    font-size: .8rem !important;
    background-color: transparent;
    box-shadow: none;
    border-color: var(--colore2);
	background-position: calc(100% - 10px) 50%;
}
@media (min-width: 580px) {
	.woocommerce .woocommerce-ordering {
		transform: translateY(-.4rem);
		margin-bottom: .85rem;

		float: right;
		width: auto;
	}
}
.woocommerce .products ul::after,
.woocommerce .products ul::before,
.woocommerce ul.products::after,
.woocommerce ul.products::before {
	display: none;
}
.woocommerce .products ul,
.woocommerce ul.products,
ul.wc-block-grid__products {
	width: 100%;
	display: grid !important;
    flex-wrap: wrap;
    margin-left: 0;
    margin-right: 0;
	padding: 0 0 3rem !important;
	gap: 2rem;
	grid-template-columns: repeat(1, 1fr);
	/* justify-items: end; */
}
.wc-block-grid__product .wc-block-grid__product-link {
	width: 100%;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
li.wc-block-grid__product {
	position: relative;
	clear: none !important;
	float: none !important;
	margin: 0 auto !important;
	width: 100% !important;
	padding: 0 0 4.5rem !important;
	background-color: var(--bianco);
	border-radius: var(--radius-less);
	overflow: hidden;
	/* max-width: 346px !important; */
	border: none !important;
	text-align: left !important;
}
/*
.slider-prodotti .woocommerce ul.products li.product {
	padding: 0 0 2.7rem !important;
}
*/
li.wc-block-grid__product {
	max-width: 380px !important;
}
.woocommerce ul.products li.product figure,
.woocommerce-page ul.products li.product figure,
li.wc-block-grid__product .wc-block-grid__product-image {
	border-radius: var(--radius-less);
	overflow: hidden;
	margin-bottom: 1rem !important;
	width: 100%;
}
.woocommerce ul.products li.product figure img,
.woocommerce-page ul.products li.product figure img,
li.wc-block-grid__product figure img,
.wc-block-grid__products .wc-block-grid__product-image img {
	margin: 0 auto;
	width: 100% !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title {
	font-size: 1.15rem;
	padding: .5rem .8rem .5rem 1.35rem;
	margin: 0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title:hover,
.wc-block-grid__product-title:hover {
	color: var(--colore2);
}
.woocommerce-product-excerpt {
	padding: 0rem .8rem 0 1.35rem;
	color: var(--colore3);
}
.woocommerce ul.products li.product figure {
	aspect-ratio: 1 / 1;
	transition: visibility 0s, opacity 0.5s linear;
}

/* mostro il retro del prodotto al rollover */
/*
.woocommerce ul.products li.product figure.back-image {
    display: none;
}
.woocommerce ul.products li.product:hover figure.back-image {
    display: block;
}
.woocommerce ul.products li.product:hover figure:not(.back-image) {
    display: none;
}
*/

.woocommerce ul.products li.product {
    position: relative;
}
.woocommerce ul.products li.product figure {
    margin: 0;
    transition: opacity 0.2s ease-in-out;
}
.woocommerce ul.products li.product figure.back-image {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}
.woocommerce ul.products li.product:hover figure:not(.back-image) {
    opacity: 0;
}
.woocommerce ul.products li.product:hover figure.back-image {
    opacity: 1;
}




a.brand-name {
	display: block;
	padding: 0rem .8rem .9rem 0;
	font-size: .95rem;
	color: var(--grigio-2);
}
a.brand-name:hover {
	color: var(--colore3);
}
.woocommerce ul.products li.product .price,
.wc-block-grid__product-price {
	display: block;
	font-size: 1rem;
	color: var(--colore);
	padding: 0rem .8rem 0 1.35rem;
	margin-bottom: .5rem;
}
.wc-block-grid__product-price del {
	color: var(--grigio-2);
	font-size: 1rem;
	font-weight: var(--weightlight) !important;
}
.wc-block-grid__product-price ins,
.woocommerce ul.products li.product .price ins {
	text-decoration: none !important;
	font-weight: var(--weightnormail) !important;
}
.woocommerce ul.products li.product .button,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link {
	white-space: nowrap;
	background-color: var(--grigio-3) !important;
	padding: .85rem 1rem !important;
	margin: 1rem 1.35rem 1.25rem !important;
	display: block;
	font-size: .92rem;
	line-height: 1;
	color: var(--colore) !important;
	background-image: url(assets/images/cart.svg);
	background-repeat: no-repeat;
	background-size: 22px;
	background-position: calc(100% - 26px) 50%;
	cursor: pointer !important;
	border-radius: var(--radius);
	font-weight: var(--weightnormal);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: auto;
}
.woocommerce ul.products li.product .button:hover {
	white-space: nowrap;
	background-color: var(--colore) !important;
	color: var(--bianco) !important;
	background-image: url(assets/images/cart-w.svg);
}
.woocommerce ul.products li.product a.added_to_cart {
	display: none;
 }
 .woocommerce ul.products li.product .onsale,
 .woocommerce .product span.onsale,
 .wc-block-grid .wc-block-grid__product-onsale {
	font-size: .6rem;
	top: 28px !important;
	left: 10px !important;
    right: auto !important;
	background-color: var(--main);
	color: var(--bianco);
	font-weight: var(--weightbold);
	min-height: 1rem !important;
	line-height: 1;
	display: flex;
    align-items: center;
	padding: .58rem 1rem .45rem;
	text-transform: uppercase;
	border-radius: 4px !important;
	position: absolute;
	z-index: 1;
}
.woocommerce .product span.onsale {
	left: -7px !important;
}


@media (max-width: 579px) {
    .woocommerce .products ul,
	.woocommerce ul.products,
	ul.wc-block-grid__products {
		grid-template-columns: repeat(2, 1fr);
		gap:1rem;
	}
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.wc-block-grid__product-title {
        font-size: .95rem;
        padding: .5rem .75rem .5rem .75rem;
    }
    .woocommerce ul.products li.product .price,
    .wc-block-grid__product-price {
        padding: 0rem .75rem 0 .75rem;
    }
    .woocommerce ul.products li.product .button,
    .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link {
        margin: 1rem .55rem 1.25rem !important;
        padding: .85rem 3rem .85rem 1rem !important;
    }
}



@media (min-width: 580px) {
	.woocommerce .products ul,
	.woocommerce ul.products,
	ul.wc-block-grid__products {
		grid-template-columns: repeat(2, 1fr)
	}
	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product,
	ul.wc-block-grid__products li {
		margin: 0 !important;
	}
}

@media (min-width: 768px) and (max-width: 1279px) {
	.woocommerce ul.products li.product .button {
		padding-right: 2.4rem !important;
	}
}

@media (min-width: 768px) {
	.woocommerce .products ul,
	.woocommerce ul.products,
	ul.wc-block-grid__products {
		grid-template-columns: repeat(3, 1fr)
	}
	.woocommerce .product span.onsale {
		font-size: .72rem;
	}
}
@media (min-width: 1024px) {
	.woocommerce .products ul,
	.woocommerce ul.products,
	ul.wc-block-grid__products {
		grid-template-columns: repeat(4, 1fr)
	}
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 1.1rem;
	}
	.woocommerce ul.products li.product .onsale {
		font-size: .8rem;
		top: 38px !important;
	}
	.woocommerce .product span.onsale {
		font-size: 1rem;
		left: -8px !important;
	}
	.woocommerce div.product div.summary .woocommerce-breadcrumb {
		margin-bottom: 2.5rem;
	}
}
@media (min-width: 1280px) {
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 1.16rem;
	}
	.woocommerce ul.products li.product .onsale {
		top: 48px !important;
		left: 17px !important;
	}
	.page-template-page-products-on-sale ul.products li.product .onsale {
    	top: 38px !important;
	}
	.woocommerce .product span.onsale {
		top: 30px !important;
		left: -14px !important;
		padding: .68rem 1.1rem .55rem;
	}
}
@media (min-width: 1600px) {
	.woocommerce ul.products li.product .onsale {
		font-size: .88rem;
		top: 52px !important;
		left: 17px !important;
	}
	.page-template-page-products-on-sale ul.products li.product .onsale {
    	top: 45px !important;
	}
}



.wc-empty-cart-message {
	width: 100%;
}
.return-to-shop {
	width: 100%;
	text-align: center;
}
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.wc-block-components-notice-banner.is-error {
	background-color: var(--bianco) !important;
	width: 100%;
	border-top-width: 0 !important;
	border-radius: var(--radius-small);
	padding: .5rem .5rem .5rem 3rem;
}
.wc-block-components-notice-banner.is-success,
.wc-block-components-notice-banner.is-info {
	background-color: transparent !important;
	border-color: transparent !important;
}
.wc-block-components-notice-banner.is-info>svg {
	background-color: var(--colore) !important;
}
.wc-block-components-notice-banner ul {
	margin: 0 !important;
}
.woocommerce-notices-wrapper {
	width: 100%;
	margin-bottom: 2rem;
}
.woocommerce-notices-wrapper:empty {
    margin-bottom: 0;
}
.page-template-page-products-on-sale .woocommerce-notices-wrapper {
    display: none !important;
}
.woocommerce-notices-wrapper ul {
	list-style-type: none;
	padding-left: 0 !important;
}
ul.woocommerce-error {
	padding-left: 3.35rem !important;
}
.woocommerce-info,
.woocommerce-message {
	border-color: transparent;
}
.woocommerce-info::before,
.woocommerce-message::before {
	color: var(--main);
	top: 9px;
}
@media (min-width: 768px) {
	.woocommerce-no-products-found {
		margin-top: 2rem;
		text-align: center;
	}
}


.woocommerce-form-login {
	width: 100%;
	border: none !important;
	padding-block: 0 !important;
	margin-block: .5rem !important;
}
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
	display: block;
}
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme input#rememberme {
	margin-right: 8px;
}
.woocommerce .woocommerce-form-login button {
	margin-top: 1rem !important;
}
.woocommerce-form-login-toggle,
.woocommerce-form-coupon-toggle {
	width: 100%;
}
.woocommerce-form-coupon-toggle .is-info {
	padding-left: 0 !important;
}
.checkout_coupon {
	width: 100%;
	padding: 0 !important;
	margin-top: 0 !important;
	border: none !important;
}
.checkout_coupon p {
	margin-bottom: .5rem !important;
}
.checkout_coupon .button {
	margin-top: 0 !important;
}
.woocommerce form .form-row .required {
	color: var(--colore);
}
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
	padding: 1rem 2rem;
	font-size: 1.3rem;
	font-weight: var(--weightheavy);
	width: 100%;
	float: none;
	margin-top: 1.2rem;
	border-radius: var(--radius);
	background-color: var(--colore);
}
.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover {
	background-color: var(--colore2);
}
.woocommerce div.product {
	max-width: 96rem;
	margin: 0 auto;
}
.woocommerce div.product form.cart > div {
	display: flex;
	flex-wrap: wrap;
}
.woocommerce div.product form.cart .variations {
	width: 100%;
	margin-bottom: 0;
	background-color: transparent !important;
}
.single_variation_wrap {
	width: 100%;
}
.woocommerce div.product form.cart a.added_to_cart {
	padding: .9rem 0 0 .9rem;
	font-size: .85rem;
	color: var(--colore2);
}
.woocommerce div.product form.cart a.added_to_cart:hover {
	color: var(--colore);
}
.woocommerce div.product form.cart div.quantity {
	margin-right: 10px;
	/* display: none !important; */
}
.woocommerce .quantity .qty {
	padding-right: .5rem;
}
.woocommerce div.product form.cart .button {
	height: 3rem;
	padding: 0 4rem 0 2rem;
	border-radius: var(--radius);
	font-weight: var(--weightnormal);
	background-image: url(assets/images/cart-w.svg);
	background-repeat: no-repeat;
	background-position: calc(100% - 26px) 50%;
	background-size: 24px;
}
.woocommerce div.product form.cart .button:hover {
	background-color: var(--colore2);
}
.woocommerce div.product form.cart .button.added {
	background-image: url(assets/images/check-w.svg);
}
.woocommerce ul.products li.product .button.loading::after,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.loading::after,
.woocommerce div.product form.cart .button.loading::after {
	display: none;
}
.woocommerce ul.products li.product .button.added::after,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.added::after,
.woocommerce div.product form.cart .button.added::after {
	display: none;
}
.woocommerce div.product form.cart .button.disabled {
	background-color: var(--colore);
}
.woocommerce div.product p.price {
	font-size: 1.65rem;
	color: var(--main);
	font-weight: var(--weightlight);
	padding-top: 1.2rem;
	padding-bottom: .8rem;
}
.woocommerce-breadcrumb,
.woocommerce-breadcrumb a {
	color: var(--colore2) !important;
}
.woocommerce-breadcrumb a:hover {
	color: var(--colore) !important;
}
.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	color: var(--colore);
	font-size: 1.2rem;
	font-weight: var(--weightlight);
}
.woocommerce div.product span.price ins,
.woocommerce div.product p.price ins {
	text-decoration: none !important;
}
.woocommerce div.product span.price bdi,
.woocommerce div.product p.price bdi {
	font-weight: var(--weightnormal);
}
.woocommerce div.product .product_title {
	font-size: clamp(1.75rem, calc(1rem + 1.6vw), 2.6rem);
	margin-bottom: 1rem;
}
.woocommerce div.product .woocommerce-product-details__short-description {
	font-size: 1.25rem;
	font-weight: var(--weightlight);
}
.woocommerce-variation-price {
	margin-bottom: 1.2rem;
	margin-top: -2rem;
}
.woocommerce div.product .woocommerce-variation-price p.price,
.woocommerce div.product .woocommerce-variation-price span.price {
	color: var(--main);
	font-size: 1.7rem;
	font-weight: var(--weightbold);
}
.woocommerce div.product form.cart .variations tr {
	display: flex;
	padding: 0;
}
.woocommerce div.product form.cart .variations th,
.custom-dimensions .label {
	background: transparent;
	color: var(--main);
	padding: 0;
	padding-right: .5rem;
	line-height: 1;
	width: 105px;
	min-width: 125px;
	max-width: 125px;
}
.woocommerce div.product form.cart .variations th {
	display: none;
}
.custom-dimensions {
	padding-bottom: 1rem;
	font-size: .9rem;
}
.custom-dimensions .label {
	display: inline-block;
}
.custom-dimensions .x {
	font-size: .82rem;
	color: var(--colore);
}

.woocommerce div.product form.cart .variations tbody {
	display: flex;
	gap: 1rem;
	margin-right: 1rem; /* per browser senza supporto per gap */
}
@supports (gap: 1rem) {
	.woocommerce div.product form.cart .variations tbody {
	  margin-right: 0; /* per browser con supporto per gap */
	}
}

.woocommerce div.product form.cart {
	margin-bottom: 3rem;
}
.woocommerce div.product form.cart .variations td {
	width: 100%;
	padding: 0;
}
.woocommerce div.product form.cart .variations select {
	max-width: 300px;
	margin-bottom: .8rem;
	padding: .5rem 1rem !important;
	height: 40px;
	font-size: .9rem !important;
	background-color: transparent;
	box-shadow: none;
	border-color: var(--colore2);
}
.woocommerce div.product form.cart .reset_variations {
	display: inline-block;
	margin-bottom: 2rem;
	color: var(--colore2);
}
.woocommerce div.product form.cart .reset_variations:hover {
	color: var(--colore);
}
.product-description-container {
	font-size: .88rem;
}
.sku_wrapper {
	display: block;
	font-size: .74rem;
	font-weight: var(--weightnormal);
	padding: 1rem 0 .6rem;
	color: var(--colore);
}
.sku_wrapper .sku {
	color: var(--colore2);
}
.woocommerce div.product .posted_in {
	display: none;
}
.woocommerce div.product .tagged_as {
	font-size: .8rem;
	line-height: 1.2;
    display: block;
    padding-top: .5rem;
}
.woocommerce-variation-availability p {
	display: block;
	padding-right: 1.5rem;
}
.woocommerce-variation-availability p.in-stock {
	display: none !important;
}
@media (min-width: 680px) {
	/* .single_variation_wrap {
		width: 50%;
		text-align: right;
	} */
	.woocommerce-variation-add-to-cart {
		display: flex;
		justify-content: flex-end;
	}
	.woocommerce div.product form.cart div.quantity {
		float: none;
	}
}
@media (min-width: 1280px) {
	.woocommerce div.product form.cart {
		margin-bottom: 4rem;
	}
}

/* plugin Variation Swatches for WooCommerce */
.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item.selected:not(.no-stock) .variable-item-contents:before, .woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).image-variable-item.selected:not(.no-stock) .variable-item-contents:before {
	background-image: none !important;
}


.woocommerce-EditAccountForm fieldset {
	margin: 2rem 0 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	border: none;
}
.woocommerce-EditAccountForm legend {
	font-size: 2rem;
	padding-bottom: 1rem;
	font-weight: var(--weightheavy);
	font-family: var(--altfont);
    font-weight: var(--weightnormal);
	text-transform: none;
}
.woocommerce-EditAccountForm fieldset p {
	width: 100%;
}


/* WOOCOMMERCE RISPOSTA CHECKOUT */
.woocommerce-notice {
	text-align: center;
	font-size: 1.2rem;
	font-weight: var(--weightheavy);
	border: 2px solid var(--colore);
    padding: 1rem;
    margin-bottom: 4rem;
}
.woocommerce-order-overview {
	margin-left: 0;
	padding-left: 0;
}
.addresses .woocommerce-column--billing-address,
.addresses .woocommerce-column--shipping-address {
	margin-left: 0;
	padding-left: 0;
	padding-bottom: 2rem;
}

.woocommerce-order-received .woocommerce-order {
     flex: 1;

}

@media (min-width: 768px) {
	.woocommerce-order-received .woocommerce-order h2 {
		font-size: 1.6rem;
	}
}

.woocommerce ul.order_details {
    padding-left: 0 !important;
}
.woocommerce .woocommerce-customer-details address {
    border: none !important;
    padding: 0 !important;
}



/* WOOCOMMERCE GALLERY */

.woocommerce-product-gallery__image {
	aspect-ratio: 1 / 1;
	overflow: hidden !important;
	border-radius: var(--radius-less);
}

.woocommerce div.product div.images img {
	width: 100%;
	height: auto;
	opacity: 1;
	object-fit: cover;
}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
	opacity: .2;
}
.woocommerce div.product div.summary {
	padding-top: .75rem;
}
.woocommerce div.product div.images .flex-control-thumbs {
	overflow: visible !important;
	padding: 0 !important;
	margin: 0 !important;
}
.woocommerce div.images .flex-viewport {
	margin-bottom: 8px;
}
.woocommerce div.images ol li::before {
	display: none;
}
.woocommerce div.images ol {
	display: grid;
  	grid-template-columns: repeat(auto-fill, minmax(70px, 1fr));
  	gap: 9px;
}
.woocommerce div.images ol li {
	padding: 0;
	margin: 0 0 !important;
	float: none !important;
	clear: none !important;
	width: auto !important;
	border-radius: var(--radius-less);
	overflow: hidden;
}
@media (min-width: 540px) {
	.woocommerce div.images ol {
		grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
	}
}
@media (min-width: 769px) {
	.woocommerce div.images ol {
		grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));
	}
	.woocommerce div.product div.images img {
		max-width: 800px;
	}
	.woocommerce div.product div.images {
		width: 49.5%;
	}
	.woocommerce div.product div.summary {
		width: 47%;
	}
}
@media (min-width: 1024px) {
	.woocommerce div.images ol {
		grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
	}
}
@media (min-width: 1280px) {
	.woocommerce div.product div.summary {
		padding-top: 2rem;
		padding-left: 2rem;
		padding-right: 4rem;
	}
}
@media (min-width: 1322px) {
	.woocommerce div.images ol {
		grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
	}
}
@media (min-width: 1440px) {
	.woocommerce div.images .flex-viewport {
		margin-bottom: 10px;
	}
	.woocommerce div.product div.summary {
		padding-left: 3rem;
		padding-right: 6rem;
	}
}
@media (min-width: 1600px) {
	.woocommerce div.product div.summary {
		padding-right: 10rem;
	}
}

.table.attributes-table {
	margin: 1.2rem 0 2rem;
}
.table.attributes-table td {
	padding: .4rem 1rem .4rem 0;
}

.related.products {
	width: 100%;
	max-width: 88rem;
	margin: 0 auto;
    padding: 5rem 0 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.related.products h2:not(.woocommerce-loop-product__title) {
	text-align: center;
	font-size: clamp(1.2rem, 0.9vw + 1rem, 1.65rem);
	width: 100%;
	margin-bottom: 1.9rem;
}




/* WOOCOMMERCE CHECKOUT */

.wc-block-components-sidebar-layout {
	border: 1px solid red;
	max-width: 104rem;
}



.woocommerce div.product p.stock.in-stock {
    display: none;
}


/* SIDEBAR */
.grid.with-sidebar {
	align-items: start;
}
#secondary {
	padding: 0 0 2rem;
	margin-top: 2rem;
}
#secondary .sidebar__inner {
	background-color: var(--bianco);
	color: var(--main);
	border-radius: var(--radius-less);
	padding: 1.35rem 1.35rem;
}
@media (min-width: 768px) and (max-width: 1279px) {
	#secondary .sidebar__inner {
		padding: 1.35rem .7rem;
	}
	.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] {
		margin-right: 5px !important;
	}
}
@media (min-width: 768px) {
	#secondary {
		top: 112px;
	}
}
@media screen and (min-width: 1024px) {
	#secondary {
		top: 124px;
	}
}
@media (min-width: 1440px) {
	#secondary {
		padding-right: 1rem;
		top: 126px;
	}
}
@media (min-width: 1600px) {
	#secondary {
		padding-right: 2rem;
	}
}
#secondary .wp-block-heading,
#secondary h3 {
	font-weight: var(--weightlight);
    font-size: 1.3rem;
    color: var(--main);
	margin-top: .35rem;
	margin-bottom: 0.85rem;
}
#secondary ul {
	padding-left: 0;
	margin-bottom: 0;
	list-style-type: none;
}
#secondary ul + h3 {
	margin-top: 20px !important;
}

/* FILTRI ATTRIBUTI CUSTOM */

ul.my_attributes input[type=checkbox] {
	margin-right: 6px;
	transform: translateY(1px);
}
ul.my_attributes label {
	font-size: .86rem;
}

#secondary a.resetta {
	display: block;
	color: var(--grigio);
	margin-top: 1rem;
	font-size: .8rem;

	&:hover {
		color: var(--main) !important;
	}
}


/* ELENCO BRANDS SIDEBAR */

.my_brands li a {
	text-transform: uppercase;
}
.my_brands li.active a {
	color: var(--main);
}



.wc-block-components-checkbox {
	margin-top: .6rem !important;
}
.wc-block-components-checkbox:hover span {
	color: var(--colore3) !important;
}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] {
	width: 1rem !important;
	min-width: 1rem !important;
	height: 1rem !important;
	min-height: 1rem !important;
	transform: translateY(2px);
}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked {
	background-color: var(--colore3) !important;
}
li.wc-block-product-categories-list-item,
.marche.widget li {
	padding-bottom: .4rem;
}
li.wc-block-product-categories-list-item a,
.marche.widget li a {
	color: var(--bianco);
}
li.wc-block-product-categories-list-item a:hover,
.marche.widget li a:hover {
	color: var(--colore3);
}
.marche.widget {
	padding-bottom: .5rem;
}
.wc-block-active-filters .wc-block-active-filters__clear-all {
	float: none !important;
	padding-bottom: .7rem !important;
	margin-top: .7rem !important;
	text-decoration: none !important;
	color: var(--grigio-2) !important;

		&:hover {
			color: var(--bianco) !important;
		}
}
.wc-block-attribute-filter__actions {
	justify-content: flex-start !important;
	padding-bottom: .7rem;
}
.wc-block-components-checkbox-list li.show-more button {
	color: var(--main);
	margin-top: 1rem;
	font-size: .8rem;

		&:hover {
			color: var(--grigio-2) !important;
		}
}
.wc-block-components-filter-reset-button {
	text-decoration: none !important;
	color: var(--main) !important;

		&:hover {
			color: var(--grigio-2) !important;
		}
}
.grid.with-sidebar .woocommerce.columns-4 {
	grid-column: span 12;
}
@media (min-width: 768px) {
/*
	.grid.with-sidebar .woocommerce.columns-4 {
		grid-column: span 9;
		padding-left: 2rem;
	}
*/
	.grid.with-sidebar .woocommerce .products ul,
	.grid.with-sidebar .woocommerce ul.products {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (min-width: 1024px) {
	.grid.with-sidebar .woocommerce .products ul,
	.grid.with-sidebar .woocommerce ul.products {
		grid-template-columns: repeat(4, 1fr);
	}
}







/* MEGA MENU */

#mega-menu-main-nav li.tutto a {
	font-weight: var(--weightbold) !important;
	color: #000 !important;
}
#mega-menu-main-nav li.tutto a:hover {
	color: var(--main) !important;
}
#mega-menu-main-nav .mega-sub-menu a.mega-menu-link[href="#"] {
	cursor: default !important;
}
#mega-menu-main-nav .mega-sub-menu a.mega-menu-link[href="#"]:hover {
	color: #555 !important;
}

#mega-menu-main-nav li.mega-menu-flyout .mega-sub-menu {
	flex-direction: column;
	background-color: var(--bianco) !important;
	border-radius: var(--radius-small) !important;
	padding: 10px 0 10px 10px !important;
}
#mega-menu-main-nav li.mega-menu-flyout .mega-sub-menu li {
	width: 100% !important;
	max-width: none !important;
}
#mega-menu-main-nav li.mega-menu-flyout .mega-sub-menu li a {
	background-color: transparent !important;
}

@media (max-width: 1023px)  {
	#mega-menu-wrap-main-nav {
		overflow: auto;
	}
	#mega-menu-wrap-main-nav #mega-menu-main-nav > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item {
		padding-top: 0 !important;
		padding-left: 0 !important;
		margin-left: 0 !important;
	}
}

@media (min-width: 1024px) {
	#mega-menu-main-nav {
		max-width: calc(100% - 4.5rem) !important;
		left: 2.25rem !important;
	}
	#mega-menu-main-nav > li > .mega-sub-menu {
		display:flex !important;
		justify-content: center !important;
	}
	#mega-menu-main-nav > li > .mega-sub-menu > li {
		max-width: 220px !important;
	}
}






/* COMPLIANZ */

.cmplz-cookiebanner .cmplz-categories .cmplz-category {
	background-color: transparent !important;
}
#cmplz-cookies-overview .cmplz-dropdown, #cmplz-document .cmplz-dropdown, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown,
#cmplz-cookies-overview .cmplz-dropdown summary, #cmplz-document .cmplz-dropdown summary, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown summary,
#cmplz-manage-consent-container.cmplz-manage-consent-container .cmplz-categories .cmplz-category,
#cmplz-manage-consent-container.cmplz-manage-consent-container .cmplz-categories .cmplz-category .cmplz-category-header,
#cmplz-cookies-overview .cmplz-dropdown .cookies-per-purpose div, #cmplz-document .cmplz-dropdown .cookies-per-purpose div, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown .cookies-per-purpose div,
#cmplz-cookies-overview .cmplz-dropdown .cookies-per-purpose, #cmplz-document .cmplz-dropdown .cookies-per-purpose, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown .cookies-per-purpose {
	background-color: var(--grigio-4) !important;
}
#cmplz-cookies-overview .cmplz-dropdown .cookies-per-purpose, #cmplz-document .cmplz-dropdown .cookies-per-purpose, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown .cookies-per-purpose {
	border-color: var(--grigio-2) !important;
}
#cmplz-cookies-overview .cmplz-dropdown p, #cmplz-document .cmplz-dropdown p, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown p, #cmplz-cookies-overview .cmplz-dropdown h4, #cmplz-document .cmplz-dropdown h4, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown h4, #cmplz-cookies-overview .cmplz-dropdown ul, #cmplz-document .cmplz-dropdown ul, .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown ul {
    padding-left: 0 !important;
}



/* WOOCOMMERCE PAGINATION */

.woocommerce nav.woocommerce-pagination {
    text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
	padding: 0 !important;
	border: none !important;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li {
    display: inline-block;
	min-width: 32px;
	border-radius: var(--radius-less);
	background-color: var(--bianco);
	border: none !important;
	margin: 0 4px;
	padding: 0;
    float: none;
    overflow: hidden;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a,
.woocommerce nav.woocommerce-pagination ul li span {
    margin: 0;
    text-decoration: none;
    line-height: 1;
    font-size: 1em;
    font-weight: 400;
    padding: .5em;
    min-width: 1em;
    display: block;
}
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
	background-color: var(--main);
	color: var(--bianco);
}


