@charset "UTF-8";

:root {
	--main: #202529;
	--colore: #E9433D;
	--colore-2: #F1963D;
	--colore-3: #097EEB;
	--colore-4: #4DA0F4;
	--colore-5: #bcddfe;
	--bianco: #ffffff;
	--grigio-scuro: #4D4D4D;
	--grigio: #93989b;
	--grigio-chiaro: #a7a7a7;
	--grigio-molto-chiaro: #F9F9F9;
	--grigio-extra-chiaro: #F3F3F3;
	--mainfont: "Poppins";
	--altfont: "Poppins";
	--weightlight: 300;
	--weightnormal: 400;
	--weightmedium: 500;
	--weightheavy: 600;
	--weightbold: 700;
	--weightblack: 800;
	--box-shadow: 0 0 10px 0 rgb(50 50 50 / 30%);
	--box-shadow-2: 0 0 10px 0 rgba(233, 67, 61, 0.4);
	--box-shadow-3: 0 0 10px 0 rgba(9, 126, 235, 0.4); 
}
html {
	scroll-behavior: smooth;
}
body {
	background-color: var(--bianco);
	font-family: var(--mainfont), sans-serif;
	font-weight: var(--weightnormal);
	color: var(--main);
	font-size: 16px;
	line-height: 1.5;
	/* letter-spacing: .04rem; */
	overflow-x: hidden;
}
body.no-overflow {
	overflow: hidden;
}
/* body::before {
	content: '';
	position: fixed;
	z-index: -1;
	display: block;
	top: 0px;
	left: 0px;
	bottom: 0px;
	right: 0px;
	background-image: url(assets/images/background.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
 } */
  
p {
	font-size: inherit;
	line-height: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	font-family: var(--altfont), sans-serif;
	font-weight: var(--weightlight);
	color: var(--grigio-scuro);
	line-height: 1.05; 
	margin-bottom: 1.6rem;
	display: block;
	/* letter-spacing: .04rem; */
}

h1,
.h1 {
	font-size: clamp(2rem, 2.8vw + 1rem, 3.9rem);
	line-height: 1;
}
h2,
.h2 {
	font-size: clamp(1.8rem, 2vw + 1rem, 2.8rem)
}
h3,
.h3 {
	font-size: clamp(1.4rem, 1.4vw + 1rem, 2.3rem);
}
h4,
.h4 {
	font-size: clamp(1.2rem, 1vw + 1rem, 1.7rem);
}
h5,
.h5 {
	font-size: clamp(1rem, 0.7vw + 1rem, 1.4rem);
	line-height: 1.1;
}
h6,
.h6 {
	font-size: clamp(0.18rem, 0.6vw + 1rem, 1.2rem);
}

@media (min-width: 1024px) {
	h1,	h2,	h3,	h4,	h5,	h6,	.h1, .h2, .h3, .h4,	.h5, .h6 {
		margin-bottom: 1.9rem;
	}
}
@media (min-width: 1440px) {
	h1,	h2,	h3,	h4,	h5,	h6,	.h1, .h2, .h3, .h4,	.h5, .h6 {
		margin-bottom: 2.4rem;
	}
}


.mainfont {
	font-family: var(--mainfont), sans-serif;
}

.big {
	font-size: 110%;
}

.bigger {
	font-size: 118%;
}
.gigantic {
	font-size: clamp(1.25rem, 0.9vw + 1rem, 1.75rem);
}

.small {
	font-size: 90%;
}

.smaller {
	font-size: 80%;
}

:focus {
	outline: none;
}
a {
	color: var(--colore);
	text-decoration: none;
	transition: color 0.3s;
}
a:hover {
	color: var(--colore-3);
}
a:focus {
	color: var(--colore-3);
}

.main,
.main a {
	color: var(--main);
}
.main a:hover {
	color: var(--colore);
}
.colore,
.colore a {
	color: var(--colore);
}
.colore-2,
.colore-2 a {
	color: var(--colore-2);
}
.colore-3,
.colore-3 a {
	color: var(--colore-3);
}
.colore-4,
.colore-4 a {
	color: var(--colore-4);
}
.bianco {
	color: var(--bianco);
}
.grigio,
.grigio a {
	color: var(--grigio);
}

.bg-colore {
	background-color: var(--colore);
}
.bg-colore-2 {
	background-color: var(--colore-2);
}
.bg-colore-3 {
	background-color: var(--colore-3);
}
.bg-colore-4 {
	background-color: var(--colore-4);
}
.bg-grigio-extra-chiaro {
	background-color: var(--grigio-extra-chiaro);
}

.light {
	font-weight: var(--weightlight);
}
.regular {
	font-weight: var(--weightnormal);
}
.medium {
	font-weight: var(--weightmedium);
}
.heavy {
	font-weight: var(--weightheavy);
}
strong,
b,
.strong {
	font-weight: var(--weightheavy);
}
.stronger {
	font-weight: var(--weightbold);
}
.italic { 
	font-style: italic;
}
.normal { 
	font-style: normal;
}
.hidden {
	display: none;
}

.button,
button,
.wp-element-button {
	vertical-align: middle;
	position: relative;
	z-index: 1;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	text-shadow: none;
	text-align: center;
	line-height: 1.1;
	border-radius: 4px;
	border: none;
	text-decoration: none;
	background-color: transparent;
	color: var(--colore);
	font-family: var(--mainfont), sans-serif;
	font-weight: var(--weightbold);
	text-transform: uppercase;
	margin-bottom: 0;
	font-size: 1rem;
	padding: 4px 38px 4px 0;
	cursor: pointer;
	letter-spacing: .04rem;
	transition: background-color .4s, color .4s, border-color .4s, padding .4s;
}
.button::before,
button::before,
.wp-element-button::before {
    content: "";
    position: absolute;
    right: 0;
    top: calc(50% - 1px);
    transform: translateY(-50%);
    width: 27px;
    height: 27px;
    border-radius: 50%;
    background: transparent;
	border: 1px solid var(--colore);
	transition: background .4s,border-color .4s;
}
.button::after,
button::after,
.wp-element-button::after {
    content: "";
    position: absolute;
    right: 8px;
    top: calc(50% - 1px);
    transform: translateY(-50%);
    border-left: 8px solid var(--colore);
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
	transition: border-color .4s;
}
.button:hover,
button:hover,
.wp-element-button:hover {
	color: var(--colore-3);
	text-decoration: none !important;
	padding-right: 42px;
}
.button:hover::before,
button:hover::before,
.wp-element-button:hover::before {
	border-color: var(--colore-3);
}
.button:hover::after,
button:hover::after,
.wp-element-button:hover::after  {
	border-left: 8px solid var(--colore-3);
}

.richiesta button,
.button.bianco,
button.bianco,
.wp-element-button.bianco {
	color: var(--bianco);
}
.richiesta button::before,
.button.bianco::before,
button.bianco::before,
.wp-element-button.bianco::before {
	border: 1px solid var(--bianco);
}
.richiesta button::after,
.button.bianco::after,
button.bianco::after,
.wp-element-button.bianco::after {
	border-left: 8px solid var(--bianco);
}

.richiesta button:hover::before,
.button.bianco:hover::before,
button.bianco:hover::before,
.wp-element-button.bianco:hover::before {
	border: 1px solid var(--bianco);
	background-color: var(--bianco);
}
.richiesta button:hover::after,
.button.bianco:hover::after,
button.bianco:hover::after,
.wp-element-button.bianco:hover::after {
	border-left: 8px solid var(--colore);
}





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

.button.alt2 {
	background: var(--main);
	color: var(--bianco);
}
.button.alt2:hover {
	background: var(--colore);
	color: var(--bianco);
}

.richiesta-contatto button.wpcf7-submit {
	background-color: var(--colore);
	color: var(--bianco);
	padding: 1rem 3.6rem 1rem 1.5rem;
}
.richiesta-contatto button.wpcf7-submit:hover {
	background-color: var(--colore-3);
	color: var(--bianco);
}
.richiesta-contatto button.wpcf7-submit::before {
	border-color: var(--bianco);
	right: 19px;
	transition: right .3s;
}
.richiesta-contatto button.wpcf7-submit::after {
	border-left: 8px solid var(--bianco);
	right: 27px;
	transition: right .3s;
}
.richiesta-contatto button.wpcf7-submit:hover::before {
	right: 16px;
}
.richiesta-contatto button.wpcf7-submit:hover::after {
	right: 24px;
}



/* .button:hover::before,
button:hover::before,
button.wpcf7-submit:hover::before,
.wp-element-button:hover::before {
    background: var(--bianco);
}
.button:hover::after,
button:hover::after,
button.wpcf7-submit:hover::after,
.wp-element-button:hover::after {
    border-left: 8px solid var(--colore);
} */

.button.hover_border_white:hover {
	border-color: var(--bianco);
}
.button > span {
	vertical-align: middle;
}
.button.big {
	font-size: 1.2rem;
	padding: 20px 35px;
}
.button.small {
	font-size: 0.9rem;
}
/* .button.small::before {
    width: 23px;
    height: 23px;
	right: 18px;
}
.button.small::after {
	border-left-width: 7px;
	border-top-width: 4px;
	border-bottom-width: 5px;
	right: 25px;
} */
/* @media screen and (min-width: 1440px) {
	.button,
	button,
	button.wpcf7-submit,
	.wp-element-button {
		font-size: 1.05rem;
		padding: 18px 28px;
	}
	.button.big {
		font-size: 1.3rem;
		padding: 22px 38px;
	}
} */

.button.bianco-colore {
	background: var(--bianco);
	border: 1px solid var(--bianco);
	color: var(--colore);
}
.button.bianco-colore:hover {
	background: transparent;
	border-color: var(--bianco);
	color: var(--bianco);
}
.button.bianco-colore::before {
    background: var(--colore);
}
.button.bianco-colore::after {
    border-left: 8px solid var(--bianco);
}
.button.bianco-colore:hover::before {
    background: var(--bianco);
}
.button.bianco-colore:hover::after {
    border-left: 8px solid var(--colore);
}


.button.bianco-colore {
	background: var(--bianco);
	border: 1px solid var(--bianco);
	color: var(--colore);
}
.button.bianco-colore:hover {
	background: transparent;
	border-color: var(--bianco);
	color: var(--bianco);
}
.button.bianco-colore::before {
    background: var(--colore);
}
.button.bianco-colore::after {
    border-left: 8px solid var(--bianco);
}
.button.bianco-colore:hover::before {
    background: var(--bianco);
}
.button.bianco-colore:hover::after {
    border-left: 8px solid var(--colore);
}


.underline,
.underline-double {
	position: relative;
	display: inline-block;
	z-index: 2;
}
.underline {
	margin-bottom: 3.5rem;
}
.underline:before,
.underline-double:before,
.underline-double:after {
	content: "";
	position: absolute;
	bottom: -1.6rem;
	height: 3px;
	background-color: var(--colore);
	z-index: -1;
}
.underline.center:before {
	left: 50%;
	margin-left: -2rem;
}

.underline.alt:before,
.underline.alt:after {
	background-color: var(--colore);
}
.underline-double:before,
.underline-double:after {
	bottom: 50%;
}
.corsi-home .underline-double:before,
.corsi-home .underline-double:after {
	height: 2px;
	background-color: var(--bianco);
}
@media (min-width: 1280px) {
	.underline:before 
	.underline-double:before,
	.underline-double:after {
		height: 4px;
	}
	.corsi-home .underline-double:before,
	.corsi-home .underline-double:after {
		height: 3px;
	}
}
@media (min-width: 1440px) {
  .underline {
		margin-bottom: 4rem;
	}
}

.nowrap {
	white-space: nowrap;
}
.upper {
	text-transform: uppercase;
}
.inline {
	display: inline;
}
.inlineblock {
	display: inline-block;
}
.block {
	display: block;
}

body > #footer {
	position: sticky;
	top: 100vh;
}

.clearfix {
	content: "";
	display: block;
	clear: both;
	visibility: hidden;
	height: 0;
}

.transparent {
	background: transparent !important;
}

.overflow-h {
	overflow: hidden;
}
.round {
	border-radius: 6px;
}
.rounded {
	border-radius: 50%;
	overflow: hidden;
}

ul,
ol,
dl {
	font-size: inherit;
}
ul {
	list-style: disc;
	padding-left: 1.2rem;
}
#maincontainer .paragrafo ul:not(.bullets) li,
#maincontainer .colonne ul:not(.bullets) li,
#maincontainer .grid ul:not(.bullets) li,
.single #maincontainer article ul:not(.bullets) li {
	list-style-type: none;
	width: 100%;
	position: relative;
	font-size: inherit;
	line-height: 1.25;
	margin-bottom: .8rem;
	padding-left: 25px;
}
#maincontainer .paragrafo ul:not(.bullets) li:before,
#maincontainer .colonne ul:not(.bullets) li:before,
#maincontainer .grid ul:not(.bullets) li:before,
.single #maincontainer article ul:not(.bullets) li:before {
	content: "";
	position: absolute;
	left: -27px;
	top: -13px;
	width: 48px;
	height: 48px;
	background-image: url(assets/images/li.svg);
	background-repeat: no-repeat;
}

ul.bullets {
	padding-top: 5px;
	text-align: left;
}
ul.bullets li {
	list-style-type: none;
	width: 100%;
	position: relative;
	font-size: inherit;
	line-height: 1.25;
	margin-bottom: .8rem;
	padding-left: 22px;
}
ul.bullets li:before {
	content: "";
	position: absolute;
	background-image: url(assets/images/li-colore.svg);
	background-repeat: no-repeat;
	width: 38px;
    height: 38px;
	left: -28px;
	top: -6px;
}
ul.bullets.color li:before {
	background-image: url(assets/images/li-colore.svg);
}
@media screen and (min-width: 768px) {
	ul.bullets.colonne {
		display: flex;
		flex-flow: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	ul.bullets.colonne li {
		width: 47%;
	}
}
/* @media screen and (min-width: 1024px) {
	ul.bullets.colonne li {
		width: 33%;
	}
} */

ol {
	padding-left: 0;
	margin: 1rem 0 1rem 0;
	list-style-type: none;
}
ol > li {
	counter-increment: step-counter;
	margin-bottom: 1.7rem;
	position: relative;
	padding: 0.3rem 0 0 3rem;
}
ol > li::before {
	content: counter(step-counter);
	background-color: var(--colore);
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
	width: 32px;
	height: 32px;
	line-height: 35px;
	text-align: center;
	font-size: 1.2rem;
	color: var(--bianco);
	font-weight: var(--weightbold);
	border-radius: 25px;
	position: absolute;
	top: 0;
	left: 0;
}
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;
	}
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: var(--grigio);
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color: var(--grigio);
   opacity: 1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color: var(--grigio);
   opacity: 1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color: var(--grigio);
}
::-ms-input-placeholder { /* Microsoft Edge */
   color: var(--grigio);
}
::placeholder { /* Most modern browsers support this now. */
   color: var(--grigio);
}


table {
	border: 0;
	border-collapse: collapse;
	margin: 0;
	padding: 0;
	width: 100%;
}
table caption {
	font-size: 1.5rem;
	margin: 0.5rem 0 0.75rem;
}
table tr {
	padding: 0.35rem;
}
table th,
table td {
	padding: 0.8rem 0.94rem 0.6rem;
}
table th {
	font-size: 1.2rem;
	letter-spacing: 0.01rem;
	border-bottom: none;
	background-color: var(--colore);
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
	color: var(--bianco);
	font-weight: var(--weightmedium);
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
}

.wp-block-table { 
	margin-bottom: 3rem; 
}

@media screen and (max-width: 767px) {
	table.responsive {
		border: 0;
		margin-left: 10px;
		margin-right: 10px;
	}

	table.responsive caption {
		font-size: 1.3rem;
	}

	table.responsive thead {
		border: none;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}

	table.responsive tr {
		border-bottom: 1px solid var(--colore);
		display: block;
		margin-bottom: 0.625rem;
		padding-left: 0;
		padding-right: 0;
		padding-top: 10px;
	}

	table.responsive td {
		border-bottom: 0px solid var(--colore);
		display: block;
		font-size: 0.92rem;
		text-align: right;
		padding-right: 0;
		padding-left: 0;
		padding-bottom: 3px;
		padding-top: 3px;
	}

	table.responsive td::before {
		content: attr(data-label);
		float: left;
		font-weight: var(--weightbold);
		text-transform: uppercase;
		font-size: 92%;
		margin-top: 2px;
	}

	table.responsive td:last-child {
		border-bottom: 0;
	}

	table.responsive tbody td:empty,
	table.responsive tbody td:empty::before {
		display: none;
		content: "";
	}

	.responsive_hide {
		display: none;
	}
}

@media screen and (min-width: 768px) {
	table.alternate tr:nth-child(even) td {
		background-color: var(--grigio-extra-chiaro);
	}
}

/* tabella nativa Gutenberg */
.wp-block-table {
	overflow-x: auto;
}

.grid {
	max-width: 984px;
	padding: 30px 10px;
	justify-content: center;
}
.grid.no-col {
	padding: 20px;
}
.grid--full {
	max-width: 100% !important;
}
.grid.grid--full {
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.grid[class*=wp-block-] {
	padding: 0 30px;
}
.grid[class*=wp-block-] .background {
	min-height: 0;
}
@media (min-width: 964px) {
	.wide .grid {
		max-width: 100% !important;
		padding-left: 5px;
		padding-right: 5px;
	}
	.wide > div {
		padding-left: 0;
		padding-right: 0;
	}
}
@media (min-width: 1024px) {
	.grid[class*=wp-block-] {
		padding: 0 40px;
	}
	.wide.colonne3 .grid > div.col-33 {
		max-width: 600px;
	}
	.wide.colonne4 .grid > div.col-25 {
		max-width: 400px;
	}
}
/* .no-pad-menu {
	padding: 0 !important;
} */
.no-pad,
.no-pad [class*="col-"] {
	padding: 0 !important;
}

.row-reverse {
	flex-direction: row-reverse; /* row & reverse */
}
.container-reverse {
	flex-direction: column-reverse; /* column & reverse */
}
.container-reverse .left_bottom,
.container-reverse .right_top {
	width: 100%; /* make full width */
}

.align-center {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center; /* align vertical and center horizontally */
}
.valign-middle {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center; /* align vertical */
}
.align-right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: flex-end; /* align right horizontally */
}
.valign-top {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-start; /* align top */
}
.valign-bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-end; /* align bottom */
}

.InnerBlocks-container .wp-block-columns {
	justify-content: space-between;
}
.InnerBlocks-container .wp-block-columns > .wp-block-column {
	padding-left: 0;
	padding-right: 0;
}
.InnerBlocks-container .wp-block-columns > .wp-block-column.important { /* fix for Firefox - es. "tab-100 col-40 important" */
	flex-basis: auto !important;
}
.InnerBlocks-container
	.wp-block-columns:has([class*="col-"])
	> .wp-block-column {
	flex-basis: auto !important;
	flex-grow: inherit !important;
}
.InnerBlocks-container .inner_titolo_testo {
	padding-left: 30px !important;
	padding-right: 30px !important;
}
.InnerBlocks-container .inner_repeater_immagine_testo {
	padding-left: 40px !important;
	padding-right: 40px !important;
}
.InnerBlocks-container .inner_repeater_immagine_testo figure {
	margin-bottom: 1.3rem;
}
.InnerBlocks-container .inner_repeater_immagine_testo .titolo {
	font-size: 1.4rem;
	margin-bottom: 1rem;
}

@media (min-width: 520px) {
	.InnerBlocks-container .inner_repeater_immagine_testo .titolo {
		font-size: 1.25rem;
	}
}
@media (min-width: 1024px) {
	.InnerBlocks-container .inner_titolo_testo {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.InnerBlocks-container .inner_repeater_immagine_testo {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.InnerBlocks-container
		.inner_repeater_immagine_testo
		.item:nth-child(even) {
		padding-right: 0;
	}
	.InnerBlocks-container .inner_repeater_immagine_testo .item:nth-child(odd) {
		padding-left: 0;
	}
}

.testoalign-left {
	text-align: left;
}
.testoalign-right {
	text-align: right;
}
.testoalign-center {
	text-align: center;
}

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

img {
	max-width: 100%;
	height: auto;
	-ms-interpolation-mode: bicubic;
	display: inline-block;
	vertical-align: middle;
	border: 0;
}
.img-res {
	margin-bottom: 0;
}
img.alignleft {
	float: left;
	margin: 0 2rem 2rem 0;
}
img.alignright {
	float: right;
	margin: 0 0 2rem 2rem;
}
img.aligncenter {
	float: none;
	margin: 0 auto;
	display: block;
}
img.margin-top {
	margin-top: 2rem;
}
figure.full img,
img.full {
	width: 100%;
}
.hover-zoom figure img {
	transition: transform 0.3s ease-in-out;
}
.hover-zoom figure:hover img {
	transform: scale(1.09);
}

.shadow {
	box-shadow: var(--box-shadow);
}
.noshadow,
.noshadow img {
	box-shadow: none !important;
}

/* .shadow img { box-shadow: 0 0 30px 2px rgba(50, 50, 50, 0.3); transition: box-shadow 0.3s ease-in-out; } */

blockquote {
	font-style: italic;
	margin: 0.25em 0 2rem;
	padding: 40px 60px 40px 60px;
	line-height: 1.35;
	position: relative;
	border-left: 5px solid var(--colore-3);
	background-color: var(--grigio-molto-chiaro);
}
blockquote p {
	position: relative;
	z-index: 2;
}
blockquote::before,
blockquote::after {
	position: absolute;
	font-size: 20rem;
	color: var(--bianco);
	line-height: 1;
	z-index: 0;
	font-family: sans-serif;
}
blockquote::before {
	content: "\201c";
	left: -1.5rem;
	top: -2.5rem;
}
blockquote::after {
	content: "\201d";
	right: 3.6rem;
	bottom: 0;
	z-index: 0;
	height: 130px;
}
blockquote cite {
	position: relative;
	z-index: 2;
}

.white-transp {
	background: rgba(255, 255, 255, 0.9);
}

.gradiente {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: -moz-linear-gradient(
		left,
		rgba(0, 0, 0, 0.65) 0%,
		rgba(0, 0, 0, 0) 65%,
		rgba(0, 0, 0, 0) 100%
	);
	background: -webkit-linear-gradient(
		left,
		rgba(0, 0, 0, 0.65) 0%,
		rgba(0, 0, 0, 0) 65%,
		rgba(0, 0, 0, 0) 100%
	);
	background: linear-gradient(
		to right,
		rgba(0, 0, 0, 0.65) 0%,
		rgba(0, 0, 0, 0) 65%,
		rgba(0, 0, 0, 0) 100%
	);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=1 );
}

svg.icon {
	stroke-width: 0;
	stroke: currentColor;
	fill: currentColor;
}

.relative {
	position: relative;
}

.background {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.background.fixed {
	background-attachment: fixed;
}
.background.inner {
	height: 100%;
	position: relative;
	min-height: 170px;
}
.grid .background {
	min-height: 320px;
}
/*
.grid .overlay {
	max-height: 220px;
}
*/
@media (min-width: 768px) {
	.grid .overlay {
		max-height: none;
	}
}
/* .grid .background figure, CHECK THIS */

/* .grid .background figure img,
.background_testo figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
} */

/* .grid .background figure img {
	box-shadow: 0 0 25px 0 rgb(50 50 50 / 25%);
} */
/* .parallax-container {
	height: 100%;
	perspective: 1px;
	transform-style: preserve-3d;
	overflow-x: hidden;
	overflow-y: auto;
}
.parallax-inner {
	width: 100vw;
	height: 100%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	transform-style: preserve-3d;
}
.parallax-background {
	background-position: center center;
	background-size: cover;
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
	transform: translateZ(-1px) scale(2);
} */

.immagine p {
	margin: 0;
	padding: 0;
}

.overlay {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.background_testo.text-right .contenuto {
		text-align: left;
	}
}
@media screen and (min-width: 768px) {
	.overlay.col-50 {
		width: 50%;
	}
	.grid.bg-left .overlay {
		right: auto;
	}
	.grid.bg-right .overlay {
		left: auto;
	}
}
@media (min-width: 1600px) {
	.background_testo.bg-left:not(.grid--full) > div > .grid {
		padding-left: 30px;
	}
	.background_testo.bg-right:not(.grid--full) > div > .grid {
		padding-right: 30px;
	}
}





strong.evidenza {
	display: inline-block;
	background: var(--colore);
	color: var(--bianco);
	padding: 1px 16px;
	border-radius: 30px;
	margin-bottom: 2px;
}

.sup-titolo {
	color: var(--grigio-chiaro);
}

/* SUPBAR */

#supbar {
	display: none;
	background: var(--colore);
	color: var(--bianco);
	font-size: 0.9rem;
	font-weight: var(--weightmedium);
	padding: 6px 0;
	line-height: 1.3;
	min-height: 32px;
	transition: visibility 0.3s, opacity 0.3s, max-height 0.3s, min-height 0.3s, padding 0.3s;
}
#supbar .avviso_sinistra {
	text-align: left;
}
#supbar .avviso_destra {
	text-align: right;
}
#supbar a.skypelink strong {
	display: none;
}
#supbar a.skypelink:after {
    content: "";
    display: inline-block;
    height: 21px;
    width: 47px;
    background-image: url(assets/images/skype.svg);
	background-size: contain;
	background-repeat: no-repeat;
    vertical-align: middle;
	transition: transform 0.3s ease-in-out;
	margin-left: 4px;
}
#supbar a.skypelink:hover:after {
	transform: scale(1.09);
}
#supbar p {
	margin-bottom: 0;
}
#supbar .icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-bottom: -2px;
	margin-right: 5px;
}
#supbar a {
	color: var(--bianco);
}
#supbar a:hover {
	color: var(--main);
}
#supbar span {
	white-space: nowrap;
}
#supbar .icon-envelope {
	margin-left: 30px;
}

@media (min-width: 992px) {
	#supbar {
		display: flex;
		padding-left: 1rem;
		padding-right: 1rem;
	}
}
@media (min-width: 1024px) {
	#supbar {
		padding-left: 2.1rem;
		padding-right: 2.1rem;
	}
}
@media (min-width: 1280px) {
	#supbar {
		padding-left: 3.1rem;
		padding-right: 3.1rem;
	}
}
/* RICERCA SUPBAR - NON UTILIZZATA  */

#supbar .search-container {
	position: absolute;
	right: 6px;
	top: 8px;
	display: block;
	height: 32px;
	width: 50px;
}
#supbar .search-label,
#supbar .search-submit {
	display: block;
	height: 32px;
	width: 100%;
	line-height: 35px;
	text-align: center;
	color: var(--bianco);
	text-decoration: none;
	-moz-user-select: none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	position: relative;
	z-index: 9;
	cursor: pointer;
	position: relative;
	font-size: 2rem;
	margin: 0;
	padding: 0;
	background-color: transparent;
}
#supbar .search-submit {
	position: absolute;
	top: 0;
	right: 0;
}
#supbar .search-label:hover {
	transition-duration: 0.4s;
}
#supbar .mglass {
	display: inline-block;
	pointer-events: none;
	transform: rotate(-45deg);
}
#supbar:has(.search-field:focus) .search-label {
	transition-duration: 0.4s;
	color: var(--main);
}
#supbar .search-field {
	position: absolute;
	top: 0;
	right: 8px;
	left: auto;
	background-color: transparent;
	outline: none;
	border: none;
	padding: 0;
	width: 0;
	height: 100%;
	z-index: 1;
	transition-duration: 0.4s;
	color: var(--colore);
}
#supbar .search-field:focus {
	width: 200px;
	padding: 0 8px;
	background-color: var(--bianco);
	color: var(--main);
}

#topbar.up #supbar {
	visibility: hidden;
	opacity: 0;
	max-height: 0;
	min-height: 0;
	padding: 0 0;
}
.search-results #supbar .search-container,
.search-no-results #supbar .search-container {
	display: none;
}

/* TOPBAR */

#topbar {
	text-align: center;
	z-index: 99;
	border: none;
	background-color: var(--bianco);
    border-radius: 5px;
	transition: background-color 0.3s;
}
#topbar.fixed {
	position: fixed;
	top: 10px;
	left: 10px;
	right: 10px;
}
#topbar.up:not(.white),
.pageheader #topbar.fixed {	
	position: fixed;
}
#topbar.up:not(.white)::before,
.pageheader #topbar.fixed::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
}
#topbar.up::after {
	content: "";
	width: 100%;
	height: 10px;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	margin-top: -10px;
	box-shadow: 0 5px 8px 0px rgba(50, 50, 50, 0.13);
	z-index: -1;
}
#topbar.black {
	background-color: var(--main);
}
/* #topbar.white {
	background-color: var(--main); 
} */
#sticky-phantom { 
	height: 0; 
	width: 100%; 
}
#sticky-phantom.show { 
	height: 67px; 
}
@media screen and (min-width: 992px) {	
	#topbar {
		padding: 0;
	} 
	#topbar.fixed {
		top: 15px;
		left: 15px;
		right: 15px;
	}
	#topbar.up {
		padding: 0;
	} 
	#sticky-phantom.show { 
		height: 80px; 
	}			
}
@media screen and (min-width: 1440px) {	
	#sticky-phantom.show { 
		height: 100px; 
	}			
}

/* LOGO */

.logo {
	padding: 0;
	font-size: 1px;
	transition: left 0.3s;
	z-index: 2;
}
.logo a {
	display: block;
}
.logo img {
	display: block;
	width: 260px;
	max-width: 104px;
	height: auto;
	margin: 4px auto;
	transition: max-width 0.3s, padding 0.3s;
}
.logo span {
	display: none;
}
@media screen and (min-width: 992px) {
	.logo {
		margin: 0 0 0 2rem;
	}	
	.logo img {
		max-width: 122px;
		margin: 5px auto;
	}
	#topbar.up .logo img {
		max-width: 122px;
		margin: 5px auto;
	}
	#mainmenu {
		margin: 0 auto !important;
	}
	.navigation {
		padding: 0 !important;
	}
}
@media screen and (min-width: 1280px) {
	.logo {
		margin: 0 0 0 3rem;
	}
	.logo img {
		max-width: 145px;
		margin: 6px auto;
	}
}
@media screen and (min-width: 1440px) {
	.logo img {
		max-width: 158px;
		margin: 7px auto;
	}
}
/* @media screen and (min-width: 1600px) {
	.logo img {
		max-width: 310px;
	}
	#topbar.up .logo {
    	left: calc(50% - 94px);
	}
} */

/* .logo img.dark { display: none; }

#topbar.white .logo img.white,
#topbar.up .logo img.white,
#topbar.black .logo img.dark,
.single-post #topbar .logo img.white,
body.pageheader #topbar .logo img.white { display: none; }

#topbar.white .logo img.dark,
#topbar.black .logo img.white,
#topbar.up .logo img.dark,
.single-post #topbar .logo img.dark,
body.pageheader #topbar .logo img.dark { display: block; } */


/* HAMBURGER */

.header {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1px 25px;
	margin: 0 auto !important;
}
@media (min-width: 964px) {
	.header {
		padding: 6px 28px 6px 35px;
	}
}
.hamburger {
	position: relative;
	width: 30px;
	height: 3px;
	background-color: var(--colore);
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
	border-radius: 4px;
	cursor: pointer;
	z-index: 2;
	transition: background 0.4s;
	margin-top: 1px;
}
.hamburger:before,
.hamburger:after {
	content: "";
	position: absolute;
	height: 3px;
	right: 0;
	background-color: var(--colore);
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
	border-radius: 4px;
	transition: width 0.4s, top 0.4s, background 0.4s;
}
.hamburger:before {
	top: -10px;
	width: 20px;
}
.hamburger:after {
	top: 10px;
	width: 25px;
	background-color: var(--colore);
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
}
.navigation input.toggle-menu:hover ~ .hamburger:before,
.navigation input.toggle-menu:hover ~ .hamburger:after {
	width: 30px;
}
.navigation .toggle-menu {
	position: absolute;
	left: -6px;
	width: 34px;
	height: 34px;
	z-index: 3;
	cursor: pointer;
	opacity: 0;
}
.navigation {
	position: relative;
	float: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.navigation ul {
	transition: opacity .2s ease-out;
}

/* #topbar.up .hamburger,
#topbar.up .hamburger:before,
#topbar.up .hamburger:after,
.pageheader .hamburger,
.pageheader .hamburger:before,
.pageheader .hamburger:after{
	background: var(--colore);
} */

/* MAIN MENU */

#mainmenu {
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	z-index: 1;
	margin: 0;
	position: fixed;
	top: 0;
	right: 0; 
	width: 100%; 
	height: 100%;
	max-height: 0; 
	overflow: hidden; 
	border-radius: 0;
	box-shadow: 0 5px 8px 0px rgba(50, 50, 50, 0.13);	
	padding: 0;
	/* transition: right 0.4s, left 0.4s, max-height 0.2s, padding-bottom 0.4s, padding-top 0.4s;	 */
	margin-top: 0;
	text-align: center;
}
#mainmenu li {
	width: 100%;
	max-width: 400px;
	list-style-type: none;
	margin: 0 0 5px;
	line-height: 1;
}
#mainmenu li a {
	display: block;
	color: var(--bianco);
	font-family: var(--mainfont);
	font-weight: var(--weightmedium);
	padding: 9px 20px;
	font-size: 1.5rem;
	line-height: 1;
	letter-spacing: .04rem;
	transition: color 0.3s, background 0.3s, padding 0.3s;
}
#mainmenu li a.select,
#mainmenu li a:hover,
#mainmenu li.active a,
#mainmenu li.current-post-parent a,
.single-realizzazione #mainmenu li.menu-item-object-realizzazione a {
	background: transparent;
	color: var(--colore);
	box-shadow: none;
}
.navigation input.toggle-menu.checked ~ #mainmenu {
	/* max-height: calc(100% - 75px); */
	max-height: 100%;
	padding-top: 40px;
	/* padding-bottom: 60px; */
	overflow: auto;
	background: var(--main);	
	/* glass effect*/
	/* background-color: rgba(250, 250, 250, 0.4);
	backdrop-filter: blur(10px) saturate(100%) contrast(45%) brightness(130%);
    -webkit-backdrop-filter: blur(10px) saturate(100%) contrast(45%) brightness(130%); */
}
/* .navigation input.toggle-menu.checked ~ #mainmenu li {
	opacity: 1;
	pointer-events: all;
} */
.navigation input.toggle-menu.checked ~ .hamburger {
	background: transparent !important;
}
.navigation input.toggle-menu.checked ~ .hamburger:before {
	top: 2px;
	transform: rotate(-45deg);
	width: 32px;
	background-color: var(--colore);
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
}
.navigation input.toggle-menu.checked ~ .hamburger:after {
	top: 2px;
	transform: rotate(45deg);
	width: 32px;
	background-color: var(--colore);
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
}

@media (max-width: 991px) {
	#mainmenu li {
		padding: 0 20px;
	}
	#mainmenu li a {
		border-radius: 4px;
	}
}

/* RICERCA HEADER OK */

.header .search-container {
	position: absolute;
	right: 15px;
	top: 90px;
	display: block;
	height: 38px;
	width: 50px;
	transition: top .4s, visibility .4s, opacity .4s;
	/* visibility: hidden; */
	opacity: 0;	
}
.header .search-container.show { /* firefox support */
	/* visibility: visible; */
	opacity: 1;
}
.header:has(.navigation input.toggle-menu.checked) .search-container {
	/* visibility: visible; */
	opacity: 1;
}
.header .search-container form {
	height: 100%;
}
.header .search-label,
.header .search-submit {
	display: block;
	height: 38px;
	width: 100%;
	line-height: 40px;
	text-align: center;
	color: var(--main);
	text-decoration: none;
	-moz-user-select: none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none; 
	position: relative;
	z-index: 3;
	cursor: pointer;
	position: relative;
	font-size: 2rem;
	margin: 0;
	padding: 0;
}
.header .search-submit {
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	background-color: transparent;
	border-color: transparent;
	pointer-events: none;
}
.header .search-label:hover {
	transition-duration: 0.4s;
	color: var(--colore);
}
.header .mglass {
	display: inline-block;
	pointer-events: none;
	transform: rotate(-45deg);
	font-weight: var(--weightnormal);
	margin-top: 1px;
}
.header:has(.search-field:focus) .search-label {
	transition-duration: 0.4s;
	color: var(--colore);
}
.header .search-field {
	position: absolute;
	top: 0;
	right: 8px;
	left: auto;
	background-color: transparent;
	color: var(--main);
	outline: none;
	border: 2px solid transparent;
	border-width: 1px !important;
	padding: 0 50px 0 12px;
	width: 0;
	height: 100%;
	z-index: 2;
	transition-duration: 0.4s;
}
.search-submit.show { /* firefox support */
	pointer-events: all;
}
.header:has(.search-field:valid) .search-submit,
.header:has(.search-field:focus) .search-submit {
	pointer-events: all;
}
.search-results .header .search-container,
.search-no-results .header .search-container {
	display: none;
}

@media (min-width: 992px) {
	.header .search-container {
		/* visibility: visible; */
		opacity: 1;
		top: 26px;
	}
	.header .search-field:focus {
		width: 280px;
		background-color: transparent;
		border-color: var(--main);
	}
	.navigation {
		/* justify-content: flex-end; */
		width: 78%;
		padding-right: 0;
	}
	.navigation ul.invisible { /* firefox support */
		opacity: 0;
	}
	.header:has(.search-field:focus) .navigation ul,
	.header:has(.search-submit:focus) .search-field .navigation ul {
		opacity: 0;
	}
	.header.has-search .navigation { /* firefox support */
		margin-right: 63px;
	}
	.header:has(.search-container) .navigation {
		margin-right: 63px;
	}
	#topbar.up .header .search-container {
		top: 14px;
	}
	#topbar.up .header .search-label,
	.pageheader #topbar .header .search-label {
		color: var(--main);
	}
	#topbar.up .header .search-field:focus,
	.pageheader #topbar .header .search-field:focus {
		border-color: var(--main);
		color: var(--main);
	}
}
@media (min-width: 1280px) {
  	.navigation {
		padding-right: 40px;
  	}
}
@media (min-width: 1440px) {
	#topbar:not(.up) .header .search-container {
		top: 36px;
	}
	.navigation {
		padding-right: 60px;
  	}
}
@media (min-width: 1600px) {
	#topbar:not(.up) .header .search-container {
		top: 39px;
	}
}

@media (max-width: 991px) {
	.header.has-search #mainmenu { /* firefox support */
		padding-top: 0;
	}
	.header:has(.search-container) #mainmenu {
		padding-top: 0;
	}
	.header .search-container {
		top: 73px;
		left: 0;
		right: 0;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		height: 77px;
		padding-top: 23px;
		text-align: center;
		background-color: var(--bianco);
		z-index: 1;
	}
	.header .search-container form {
		position: relative;
		height: 42px;
		width: 315px;
		margin: 0 auto;
	}
	.header .search-label {
		position: absolute;
		right: 0;
		top: 1px;
		color: var(--main);
		width: 50px;
		transition: opacity .2s ease-out;
		opacity: 0;
		pointer-events: none;
	}
	.header .search-container.show .search-label {
		opacity: 1;
		pointer-events: all;
	}
	.header:has(.navigation input.toggle-menu.checked) .search-label {
		opacity: 1;
		pointer-events: all;
	}
	.header .search-field {
		width: 100%;
		height: 42px;
		right: 0;
		border-color: var(--main);
		color: var(--main);
		background-color: transparent;
		opacity: 0;
		z-index: -2;
		transition: opacity .2s ease-out;
	}
	.header:has(.navigation input.toggle-menu.checked) .search-field {
		border-color: var(--main);
		color: var(--main);
		opacity: 1;
		z-index: 2;
	}
	
}

.header ::-webkit-input-placeholder {
	color: transparent;
}
.header :-moz-placeholder {
	color: transparent;
}
.header ::-moz-placeholder {
	color: transparent;
}
.header :-ms-input-placeholder {
	color: transparent;
}
.header ::-ms-input-placeholder {
	color: transparent;
}
.header ::placeholder {
	color: transparent;
}

@media (min-width: 992px) and (max-width: 1119px) {
	#mainmenu li.contatti {
		display: none;
	}
}

@media (min-width: 992px) and (max-width: 1279px) {
	#mainmenu li.home {
		display: none;
	}
} 

@media screen and (min-width: 992px) {
	.header {
		padding: 0 0 !important;
	}
	.hamburger,
	.navigation .toggle-menu {
		display: none;
	}
	#mainmenu {
		position: relative;
		flex-direction: row;
		right: 1rem;
		top: auto;
		background: transparent;
		padding-top: 0;
		justify-content: flex-end;
		align-items: flex-end;
		box-shadow: none !important;
		max-height: none;
		overflow: visible;
		margin-top: 5px;
	}
	#mainmenu li {
		width: auto;
		margin: 0 18px;
	}
	#mainmenu > li > a {
		font-size: .98rem;
		font-weight: var(--weightmedium);
		padding: 20px 0 17px;
		text-transform: none;
		border-bottom: 0px solid var(--bianco);
		overflow: hidden;  
		letter-spacing: normal; 
	}	
	#mainmenu > li > a:hover,
	#mainmenu > li.dropdown:hover > a.dropdown-toggle ,
	#mainmenu > li.active > a,
	#mainmenu li a.select,
	#mainmenu li.current-post-parent a,
	.single-realizzazione #mainmenu li.menu-item-object-realizzazione a {
		border-color: var(--bianco);
		color: var(--colore) !important;	
	}
	#topbar.up #mainmenu > li > a {
		padding: 20px 0 17px;
	}	
	#mainmenu li.consulenza a,
	#topbar.up #mainmenu li.consulenza a {
		color: var(--bianco) !important;
		position: relative;
		padding-left: 13px;
		padding-right: 13px;
		text-transform: uppercase;
		font-weight: var(--weightheavy);
		transition: background-image .3s, padding .3s;
	}
	#mainmenu li.consulenza a::before,
	#mainmenu li.consulenza a::after,
	#topbar.up #mainmenu li.consulenza a::before,
	#topbar.up #mainmenu li.consulenza a::after {
		content: '';
		position: absolute;	
		display: block;
		top: 11px;
		left: 0;
		right: 0;
		height: 32px;
		border-radius: 5px;
		z-index: -1;
		transition: opacity .3s, height .3s, top .3s;
	}
	#mainmenu li.consulenza a::before {
		background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
		opacity: 1;
	} 
	#mainmenu li.consulenza a::after {
		background-image: linear-gradient(90deg, #097EEB 0%, #4DA0F4 100%);
		opacity: 0;
  		z-index: 0;
	}
	#mainmenu li.consulenza a:hover::before {
		opacity: 0;
	} 
	#mainmenu li.consulenza a:hover::after {
		opacity: 1;
  		z-index: -1;
	} 
}
@media screen and (min-width: 1280px) {	
	#mainmenu {
		right: 2rem;
	}
	#mainmenu > li > a {
		font-size: 1rem;
		padding: 24px 0 21px;
	}
	#mainmenu li.consulenza a::before,
	#mainmenu li.consulenza a::after {
		top: 15px;
		height: 33px;
	}
}
@media screen and (min-width: 1440px) {
	#mainmenu > li > a {
		padding: 26px 0 23px;
	}
	#mainmenu li.consulenza a {
		padding-left: 15px;
		padding-right: 15px;
	}
	#mainmenu li.consulenza a::before,
	#mainmenu li.consulenza a::after {
		top: 16px;
		height: 35px;
	}
}
@media screen and (min-width: 1600px) {	
	#mainmenu > li > a {
		padding: 28px 0 25px;
	}
	#mainmenu li.consulenza a::before,
	#mainmenu li.consulenza a::after {
		top: 17px;
		height: 37px;
	}
}
@media screen and (min-width: 992px) {
	body.home #topbar #mainmenu > li:not(.active) > a,
	body.foto_header #topbar #mainmenu > li:not(.active) > a,
	#mainmenu > li:not(.active) > a {
		color: var(--main);
	}
}

/* MAIN MENU DROPDOWN */

#topbar ul.dropdown-menu {
	position: relative;
	max-height: 0;
	overflow: hidden;
	overflow: scroll;
	padding: 0 15px;
	margin: -5px 0 0 0;
	min-width: 240px;
	z-index: 4;
	transition: max-height 0.1s, padding 0.1s, margin 0.1s;
	-webkit-overflow-scrolling: touch;
	/* background: var(--colore); */
}
#topbar li ul.dropdown-menu.open,
#topbar li.active ul.dropdown-menu {
	max-height: none;
	padding: 0 15px 15px 15px;
	margin: 6px 0 0;
}
#topbar ul.dropdown-menu li a {
	background: transparent;
	padding: 5px 10px;
	border: none;
	line-height: 1.2;
	color: var(--bianco);
	font-size: 1rem;
}
#topbar ul.dropdown-menu li a:hover,
#topbar ul.dropdown-menu li.active a {
	color: var(--colore);
}

@media screen and (min-width: 992px) {
	#topbar ul.dropdown-menu,
	#topbar li.active ul.dropdown-menu  {
		position: absolute;
		text-align: left;
		margin-top: 0 !important;
		margin-left: -26px !important;
		max-height: 0;
		padding: 0 8px;
		background: var(--bianco);
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
	}
	#topbar li:hover ul.dropdown-menu,
	#topbar li ul.dropdown-menu.open {
		max-height: none;	
		padding: 0 8px 17px;
		box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);		
	}
	#topbar ul.dropdown-menu li a {
		font-size: 0.84rem;
		color: var(--main);
		padding: 6px 2px;
	}
	#topbar ul.dropdown-menu li a:hover, 
	#topbar ul.dropdown-menu li.active a {
		color: var(--colore);
	}
}
@media (min-width: 1280px) {
	#topbar ul.dropdown-menu li a {
		font-size: 0.9rem;
	}
}
@media (min-width: 1440px) {
	#topbar li:hover ul.dropdown-menu, 
	#topbar li ul.dropdown-menu.open {
		padding-bottom: 19px;
	}
	#topbar ul.dropdown-menu li a {
		font-size: 0.94rem;
	}
}

/* MAINCONTAINER */

#maincontainer > .grid {
	contain: content;
	margin-bottom: 0;
}
#maincontainer {
	clear: both;
	overflow: hidden;
	margin-top: 0;
}
/* @media (min-width: 1280px) {
	#maincontainer {
		margin-top: 60px;
	}
}
@media (min-width: 1440px) {
	#maincontainer {
		margin-top: 66px;
	}
}
@media (min-width: 1600px) {
	#maincontainer {
		margin-top: 70px;
	}
} */
#maincontainer p + h2,
#maincontainer p + h3,
#maincontainer p + h4,
#maincontainer p + h5,
#maincontainer p + h6,
#maincontainer img + h2,
#maincontainer img + h3,
#maincontainer img + h4,
#maincontainer img + h5 {
	margin-top: 3rem;
	margin-bottom: 1.4rem;
}

/* GENERIC SLIDER STUFF */
.slick-track {
	display: flex !important;
	align-items: flex-start;
}
.slick-slide {
	height: auto !important;
}
.slick-initialized .slick-slide {
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
}
.slick-dotted.slick-slider {
	margin-bottom: 0 !important;
}
.slick-dots li.slick-active button:before {
	background: var(--bianco);
	opacity: 1;
}
.slick-dots li button:before {
	background: var(--bianco);
	opacity: 0.4;
}
.slick-dots li,
.slick-dots li button {
	height: 2px !important;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
.slick-dots li button:before {
	border-radius: 0 !important;
	height: 2px !important;
	content: "" !important;
}
.slick-prev,
.slick-next {
	transition: border-color 0.3s, box-shadow 0.3s;
}
.slick-prev::before,
.slick-next::before {
	border-style: solid;
	border-width: 2px 2px 0 0;
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	left: 21px;
	position: absolute;
	top: 17px;
	transform: rotate(-45deg);
	vertical-align: top;
	border-color: var(--main);
}
.slick-next:before {
	left: 14px;
	transform: rotate(45deg);
}
.slick-prev:before {
	transform: rotate(-135deg);
}
.slick-prev:hover::before,
.slick-next:hover::before {
	border-color: var(--colore);
}


/* SLIDER HOME */

#slider,
#slider .slick-list,
#slider .slick-track,
#slider .slide {
	height: 100vh;
	min-height: 660px !important;
	max-height: 100vh;		
	max-height: -webkit-fill-available !important;

	/* mod x strip */
	height: calc(100vh + 28px) ;
	min-height: calc(660px + 28px) !important;
	max-height: calc(100vh + 28px);
}
#slider {
	overflow: hidden;
	color: var(--bianco);
}
#slider .slide {
	position: relative;
	align-items: center;
}
#slider .slick-list {
	height: 100%;
}
#slider .slick-track {
	height: 100%;
}
#slider .slick-arrow {
	top: 55%;
	border-radius: 50%;
	width: 53px;
	height: 53px;
	background-color: rgba(255, 255, 255, 0.2);
}
#slider .slide figure {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
/* #slider .slide figure::after {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	content: '';
	background-color: rgba(0, 0, 0, 0.3);
} */
#slider .slide img {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	border-radius: 0;
	object-fit: cover;
}
#slider .contenuto {
	margin: 0 auto;
	z-index: 99;
	padding: 50px 30px 0;
}
#slider p:empty {
	display: none;
}
#slider .titolo {
	margin-bottom: 15px;
	color: var(--bianco);
	font-weight: var(--weightnormal);
	font-size: clamp(2.8rem, 5vw + 1rem, 7rem);
	margin-bottom: 2.3rem;
}
#slider .titolo span {
	font-weight: var(--weightbold);
}
#slider p {
	position: relative;
	margin: 0 auto;
	padding: 0;
	font-family: var(--altfont);
	font-size: clamp(1rem, 2.4vw + 1rem, 4rem);
	line-height: 1.15;
}
#slider .contenuto .buttons {
	padding-top: 34px;
}
#slider .slick-dots {
	bottom: 10px !important;
}
#slider .slick-prev,
#slider .slick-next {
	display: none !important;
	box-shadow: none;
}

@media (min-width: 580px) {
	#slider .contenuto {
		padding-top: 70px;
	}
}
@media (min-width: 750px) {
	#slider,
	#slider .slick-list,
	#slider .slick-track,
	#slider .slide {
		/* height: 88vh;
		max-height: 88vh; */
		/* height: 100%; */
		/* height: 100vh; */

		/* mod x strip */
		/* height: calc(100vh + 62px) ; */
		
	}
	#slider .contenuto {
		padding-top: 90px;
	}
	#slider .titolo {
		white-space: nowrap;
	}
	#slider p {
		max-width: 660px;
	}
}
@media screen and (min-width: 992px) {
	#slider .contenuto {
		padding-top: 80px;
	}
}
@media screen and (min-width: 1024px) {
	#slider,
	#slider .slick-list,
	#slider .slick-track,
	#slider .slide {
		/* height: 80vh;
		max-height: 80vh; */
/* 		height: calc(100vh - 138px); */
		/* min-height: 580px !important; */

		/* mod x strip */
		height: calc(100vh + 0px) ;
		min-height: calc(660px + 0px) !important;
		max-height: calc(100vh + 0px);
	}
	#slider .slick-prev {
		display: block !important;
		left: 30px;
	}
	#slider .slick-next {
		display: block !important;
		right: 30px;
	}
	#slider .slick-prev::before,
	#slider .slick-next::before {
		border-color: var(--bianco);
		transition: border-color 0.4s;
	}
	#slider .slick-arrow:hover {
		background-color: rgba(255, 255, 255, 0.45);
	}
	#slider .slick-arrow:hover::before,
	#slider .slick-arrow:hover::before {
		border-color: var(--colore);
	}
	
}
@media screen and (min-width: 1280px) {
	#slider,
	#slider .slick-list,
	#slider .slick-track,
	#slider .slide {
		/* mod x strip */
		height: calc(100vh + 48px) ;
		min-height: calc(660px + 48px) !important;
		max-height: calc(100vh + 48px);
	}	
	#slider .contenuto {
		padding-top: 90px;
	}
	#slider p {
		max-width: 840px;
	}
}
@media screen and (min-width: 1440px) {
	#slider,
	#slider .slick-list,
	#slider .slick-track,
	#slider .slide {
		/* height: 65vh;
		max-height: 65vh; */
		min-height: 720px !important;
	}
	#slider .contenuto {
		padding-top: 100px;
	}	
	#slider .slick-prev {
		left: 35px;
	}
	#slider .slick-next {
		right: 35px;
	}
}
@media screen and (min-width: 1600px) {
	#slider,
	#slider .slick-list,
	#slider .slick-track,
	#slider .slide {
		/* mod x strip */
		height: calc(100vh + 68px) ;
		min-height: calc(660px + 68px) !important;
		max-height: calc(100vh + 68px);
	}
	#slider p {
		max-width: 1000px;
	}
}
@media screen and (min-width: 2000px) {
	#slider p {
		max-width: 1100px;
	}
}



/* CUSTOM SLIDER  */

/* #slider:after {
	content: "";
	position: absolute;
	bottom: -3%;
	right: -4%;
	font-size: clamp(5.5rem, 15vw + 1rem, 20rem) !important;
	color: var(--bianco);
	font-weight: var(--weightbold);
	text-transform: uppercase;
	line-height: 1;
	opacity: 0.16;
}
@media (min-width: 768px) {
	#slider:after {
		bottom: -5.5%;
	}
}
@media (min-width: 1280px) {
	#slider:after {
		bottom: -7%;
	}
} */


/* SLIDER LOGHI */ 
.loghi-slider {
	padding-top: 10px !important;
}
@media (min-width: 992px) {
	.loghi .slick-prev {
		left: -22px !important;
	}
	.loghi .slick-next {
		right: -22px !important;
	}
}
@media (min-width: 1120px) {
	.loghi .slick-prev {
		left: -72px !important;
	}
	.loghi .slick-next {
		right: -72px !important;
	}
}


/* SLIDER POST */

#slider-post .slide {
	align-items: flex-end;
}
#slider-post .slide figure {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
#slider-post .slide img {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#slider-post .contenuto {
	margin: 0 auto;
	width: 100%;
	max-width: 1060px;
	z-index: 99;
	padding: 0 30px;
}
#slider-post .titolo {
	margin-top: 1rem;
	color: var(--bianco);
	font-size: clamp(1rem, 2vw + 1rem, 2.8rem);
	text-transform: uppercase;
}
#slider-post .titolo a {
	color: var(--bianco);
}
#slider-post .titolo a:hover {
	color: var(--colore);
}
#slider-post p {
	margin: 0 auto;
	padding: 0;
	font-size: clamp(1rem, 1.6vw + 1rem, 2.8rem);
	line-height: 1.15;
}
#slider-post .categoria {
	display: inline-block;
	background-color: var(--colore);
	color: var(--bianco);
	padding: 5px 12px;
	font-weight: var(--weightbold);
	text-transform: uppercase;
	font-size: .82rem;
}
#slider-post .categoria a {
	color: var(--bianco);
}
#slider-post {
	max-width: 1600px;
	margin: 0 auto;
	overflow: hidden;
}
#slider-post .banner-slider {
	display: flex;
	flex-direction: column;
}
#slider-post .banner-slider .slick-list,
#slider-post .banner-slider .slick-track {
	height: 100%;
}
#slider-post .slider-nav .slick-slide.thumbnail-image {
	position: relative;
	align-items: flex-end;
	cursor: pointer;
}
#slider-post .slider-nav .thumbCont {
	position: absolute;
	padding: 0 1rem;
	bottom: 0;
}
#slider-post .slider-nav .titolo {
	font-size: .7rem !important;
	margin-bottom: 1rem !important;
}
#slider-post .slider-nav .thumbImg {
	margin: 0;
	border: 4px solid var(--main);
	transition: border-color .4s;
}
#slider-post .slider-banner-image {
	height: 360px;
}
#slider-post .slider-banner-image img,
#slider-post .slider-nav .thumbImg img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	max-width: none;
}
#slider-post .slick-slide:active,
#slider-post .slick-slide:focus,
#slider-post .slick-arrow:hover,
#slider-post .slick-arrow:focus {
	outline: 0;
}
#slider-post .slider-nav .slick-slide.slick-current .thumbImg {
	border-color: var(--colore);
}
@media (min-width: 520px) {
	#slider-post .slider-nav .titolo {
		font-size: .65rem !important;
	}
}
@media screen and (min-width : 580px) {
	#slider-post .slider-banner-image {
		height: 400px;
	}
}
@media (min-width: 680px) {
	#slider-post .slider-nav .titolo {
		font-size: .72rem !important;
	}
}
@media (min-width: 768px) {
	#slider-post .contenuto {
		padding: 0 100px 0 30px;
	}
	#slider-post .titolo {
		margin-bottom: 3rem;
	}
	#slider-post .slider-banner-image {
		height: 480px;
	}
	#slider-post .slider-nav .titolo {
		font-size: .68rem !important;
	}
}  
@media (min-width: 992px) {
	#slider-post .slider.slider-for {
		max-width: 84%;
	}
	#slider-post .slider.slider-nav {
		max-width: 16%;
	}
	#slider-post .slider-banner-image {
		height: 100%;
	}
	#slider-post .banner-slider {
		flex-direction: row;
	}
	#slider-post .slider-nav .titolo {
		font-size: .6rem !important;
	}
	.safari #slider-post .slider-nav .thumbImg {
		height: 104px;
	}
}
@media (min-width: 1024px) {
	#slider-post .contenuto {
		padding: 0 110px 0 60px;
	}
	.safari #slider-post .slider-nav .thumbImg {
		height: 130px;
	}
}
@media (min-width: 1280px) {
	#slider-post .contenuto {
		padding: 0 110px 0 120px;
	}
	#slider-post .slider-nav .titolo {
		font-size: .68rem !important;
	}
	.safari #slider-post .slider-nav .thumbImg {
		height: 146px;
	}
}
@media (min-width: 1440px) {
	#slider-post .contenuto {
		padding: 0 110px 0 70px;
	}
	#slider-post .slider-nav .titolo {
		font-size: .72rem !important;
	}
	.safari #slider-post .slider-nav .thumbImg {
		height: 164px;
	}
}
@media (min-width: 1600px) {
	#slider-post .contenuto {
		padding: 0 110px 0 30px;
	}
	#slider-post .slider-nav .titolo {
		font-size: .75rem !important;
	}
}

/* SLIDER TESTO  */

.slider-testo {
	position: relative;
}
.slider-testo .inner {
	padding: 0 20px;
}
.slider-testo .titolo { 
	overflow-wrap: anywhere;
}
.slider-testo .slick-arrow {
	top: 35%;
	border-radius: 50%;
	width: 45px;
	height: 45px;
}
.slider-testo .slick-arrow,
.slider-testo .slick-arrow:hover,
.slider-testo .slick-arrow:focus {
	background-color: var(--bianco);
}
.slider-testo .slick-prev {
	left: -20px;
}
.slider-testo .slick-next {
	right: -20px;
}
.slider-testo .slick-prev:before,
.slider-testo .slick-next:before {
	top: 17px;
	left: 26px;
	width: 12px;
	height: 12px;
	border-color: var(--colore) !important;
}
.slider-testo .slick-next:before {
	left: 7px;
}
@media (min-width: 580px) {
	.slider-testo .slick-arrow {
		top: 50%;
	}
}
@media (min-width: 768px) {
	.slider-testo > div > .grid {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.slider-testo > div > .grid > div {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
	/* .slider-testo .slick-arrow {
		top: auto;
		bottom: -70px;
		border: 1px solid var(--bianco);
	}
	.slider-testo .slick-arrow:hover {
		background-color: transparent;
	}
	.slider-testo .slick-arrow:hover:before {
		border-color: var(--bianco) !important;
	}
	.slider-testo .slick-prev {
		left: calc(50% - 60px);
	}
	.slider-testo .slick-next {
		right: calc(50% - 60px);
	}
	.slider-testo .slick-prev:before {
		top: 16px;
		left: 18px;
	}
	.slider-testo .slick-next:before {
		top: 16px;
		left: 14px;
	} */
}
@media (min-width: 1024px) {
	.slider-testo > div > .grid .slick-slide {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.slider-testo > div > .grid .slick-slide .inner {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
	.slider-testo .slick-arrow {
		bottom: -80px;
	}
}

/* @media (min-width: 1440px) {
	.slider-testo .slick-arrow {
		width: 55px;
		height: 55px;
		bottom: -100px;
	}
	.slider-testo .slick-prev {
		left: calc(50% - 73px);
	}
	.slider-testo .slick-next {
		right: calc(50% - 73px);
	}
	.slider-testo .slick-prev:before {
		top: 17px;
		left: 22px;
		width: 18px;
		height: 18px;
	}
	.slider-testo .slick-next:before {
		top: 17px;
		left: 14px;
		width: 18px;
		height: 18px;
	}
} */



/* COUNTER */

.counter-block ul {
	display: flex;
	flex-flow: row;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0;
}
.counter-block li {
	list-style-type: none;
	padding: 0 20px;
	width: 100%;
	margin-top: 35px;
	margin-bottom: 35px;
}
.counter-block img {
	width: 110px;
	border: 1px solid var(--grigio-molto-chiaro);
	border-radius: 50%;
	padding: 12px;
	box-shadow: var(--box-shadow);
}
.counter-block .counter {
	display: block;
	font-family: var(--altfont), sans-serif;
	font-weight: var(--weightmedium);
	font-size: 3.8rem;
	margin-top: 1rem;
}
.counter-block .descrizione {
	display: block;
	font-size: 1.1rem;
	line-height: 1.2;
}
.counter-block .overlay {
	max-height: none;
}
@media screen and (min-width: 500px) {
	.counter-block li {
		width: 50%;
	}
	.counter-block .counter  {
		font-size: 2.8rem;
	}
}
@media screen and (min-width: 680px) {
	.counter-block li {
		width: 33.333%;
		margin-top: 25px;
		margin-bottom: 20px;
	}
}
@media screen and (min-width: 1024px) {
	.counter-block li {
		flex: 1;
	}
	.counter-block img {
		width: 85px;
	}
}
@media screen and (min-width: 1280px) {
	.counter-block img {
		width: 100px;
	}
	.counter-block .counter  {
		font-size: 3.3rem;
	}
}
@media (min-width: 1440px) {
	.counter-block img {
		width: 110px;
	}
	.counter-block .counter {
		font-size: 3.8rem;
	}
}

/* BLOCCO ARTICOLI + ARCHIVIO GRID */

.grid.archive-grid {
	justify-content: flex-start;
}
.archive-grid .inner {
	height: 100%;
	padding-bottom: 15px;
	background-color: var(--bianco);
	border-radius: 6px;
	overflow: hidden;
	box-shadow: var(--box-shadow);
}
.archive-grid figure {
	position: relative;
}
.archive-grid .contenuto {
	padding: .5rem 1.4rem;
}
.archive-grid h2,
.archive-grid h3 {
	font-size: 1.05rem;
	font-weight: var(--weightmedium);
	line-height: 1.1;
	margin-bottom: 0.7rem;
	margin-top: .8rem;
}
.archive-grid h2 a,
.archive-grid h3 a {
	color: var(--main);
}
.archive-grid h2 a:hover,
.archive-grid h3 a:hover {
	color: var(--colore);
}
.archive-grid .testo {
	padding: 1.7rem 0 0.3rem;
}
.archive-grid .data {
	font-size: 0.74rem;
	padding: 4px 10px 3px 33px;
	font-weight: var(--weightbold);
	text-transform: uppercase;
	position: absolute;
	color: var(--bianco);
	bottom: 0;
	border-top-right-radius: 6px;
	background-image: linear-gradient(90deg, #E9433D 0%, #F1963D 100%);
}
.archive-grid .data svg {
	position: absolute;
	left: 12px;
	width: 12px;
	height: 12px;
	top: 6px;
}
.archive-grid .spacer {
	display: inline-block;
	padding: 0 5px;
}
.archive-grid .cat_name {
	display: inline-block;
	padding-right: 6px;
}
.archive-grid .cat_name {
	color: var(--colore);
}
.archive-grid .cat_name:hover {
	color: var(--colore);
}
.archive-grid .excerpt {
	font-size: .85rem;
    --max-lines: 4;
    --line-height: 1.2;
    height: calc(var(--max-lines) * 1rem * var(--line-height) - 11px);
    max-height: calc(var(--max-lines) * 1rem * var(--line-height) - 11px);
    line-height: var(--line-height);
    overflow: hidden;
    position: relative;
}
.archive-grid .more {
	background: var(--colore);
	border: 0px solid var(--colore);
	color: var(--bianco);
	padding: 9px 17px;
    /* padding-right: 44px; */
}
.archive-grid .more:hover {
	border-color: var(--colore);
	color: var(--bianco);
	background: var(--colore);
}
.button.small::before {
	width: 22px;
    height: 22px;
	right: 7px;
}
.button.small::after {
	right: 14px;
	border-left-width: 6px;
    border-top-width: 4px;
    border-bottom-width: 4px;
}

#related {
	margin-top: 50px;
	margin-bottom: -50px;
}
#related h2 {
	text-transform: uppercase;
}
#related .archive-grid {
	margin-bottom: 0 !important;
}
/* .archive-grid .archivio .button {
	
}
.archive-grid .archivio .button::before {
	background-color: var(--colore);
}
.archive-grid .archivio .button::after {
	border-left: 8px solid var(--bianco);
}
.archive-grid .archivio .button:hover {
	color: var(--colore);
	border-color: var(--colore);
}
.archive-grid .archivio .button:hover::before {
	background-color: var(--colore);
} */

@media (min-width: 768px) and (max-width: 1023px) {
	.archive-grid .more {
		display: none;
	}
}
@media screen and (min-width: 520px) {
	.archive-grid h2,
	.archive-grid h3 {
		font-size: 1.1rem;
	}
}
@media screen and (min-width: 680px) {
	.archive-grid h2,
	.archive-grid h3 {
		font-size: 1.15rem;
	}
}
@media screen and (min-width: 768px) {
	.archive-grid .testo {
		padding:0 0 0 2rem;
	}	
	.archive-grid h2,
	.archive-grid h3 {
		font-size: 1.05rem;
	}
	/* .archive-grid .item:nth-child(even) .inner {
		flex-direction: row-reverse;
	}
	.archive-grid .item:nth-child(even) .testo {
		padding:0 2rem 0 0;
	} */
}
@media screen and (min-width: 1024px) {
	.archive-grid .immagine {
		width: 45%;
	}
	.archive-grid .testo {
		width: 55%;
	}	
	.home .grid.archive-grid,
	.home .archive-grid-wrap,
	.archive .grid.archive-grid,
	.archive .archive-grid-wrap,
	#related .grid.archive-grid,
	#related .archive-grid-wrap {
		padding-left: 0;
		padding-right: 0;
	}
}
@media screen and (min-width: 1280px) {
	.archive-grid .immagine {
		width: 40%;
	}
	.archive-grid .testo {
		width: 60%;
		padding:0 0 0 3rem;
	}
	/* .archive-grid .item:nth-child(even) .testo {
		padding:0 3rem 0 0;
	} */
	.archive-grid h2,
	.archive-grid h3 {
		font-size: 1.1rem;
	}
	#related {
		margin-top: 60px;
		margin-bottom: -60px;
	}
}
@media screen and (min-width: 1440px) {
	.archive-grid h2,
	.archive-grid h3 {
		font-size: 1.15rem;
	}
	#related {
		margin-top: 70px;
		margin-bottom: -70px;
	}
}


/* ARCHIVE LIST */

.archive-list h2 a {
	color: var(--main);
}
.archive-list h2 a:hover {
	color: var(--colore);
}
.archive-list .data {
	display: inline-block;
	font-size: 0.74rem;
	font-weight: var(--weightbold);
	text-transform: uppercase;
	position: relative;
	padding-left: 19px;
}
.archive-list .data svg {
	position: absolute;
	left: 0;
	width: 12px;
	height: 12px;
	top: 2px;
}
.archive-list .spacer {
	display: inline-block;
	padding: 0 5px;
}
.archive-list .cat_name {
	display: inline-block;
	padding-right: 6px;
}
@media (max-width: 767px) {
	.archive-list .excerpt {
		overflow: hidden;
		text-overflow: ellipsis;
		display: -webkit-box;
		-webkit-line-clamp: 6; /* number of lines to show */
				line-clamp: 6; 
		-webkit-box-orient: vertical;
	}
}

.titolo_superiore {
	display: block;
	margin-bottom: 1.5rem;
	font-size: 85%;
	font-weight: var(--weightnormal);
	letter-spacing: 0.04rem;
}

/* PARAGRAFO INTRO */

.paragrafo_intro {
	margin-bottom: 40px;
}

/* BLOCCO PARAGRAFO */

.paragrafo {
	position: relative;
}
.paragrafo .inner {
	width: 100%;
}
.paragrafo:not(.svg) img {
	width: 100%;
	box-shadow: var(--box-shadow);
	border-radius: 6px;
}
.paragrafo .button {
	margin-bottom: 40px;
}
.paragrafo .fotoalign-left figure,
.paragrafo .fotoalign-right figure,
.paragrafo .fotoalign-left-quadrata figure,
.paragrafo .fotoalign-right-quadrata figure {
	margin: 0 auto 3rem;
	text-align: center;
}
.paragrafo .fotoalign-center figure {
	margin: 0 auto 3rem;
	text-align: center;
}
.paragrafo .fotoalign-center figure img {
	width: auto;
}
.paragrafo img.aligncenter {
	width: auto;
	border: 1px solid green;
}
.paragrafo img.aligncenter {
	display: inline-block;
}
.paragrafo .fotoalign-full figure {
	text-align: center;
	display: block;
	margin: 0 auto 3rem;
}
.paragrafo.left-full figure {
	margin: 0 -40px 3rem 0;
}
.paragrafo.right-full figure {
	margin: 0 0 3rem -40px;
}
.paragrafo.left-full .immagine {
	padding-left: 0;
	margin-left: -20px;
}
.paragrafo.right-full .immagine {
	padding-right: 0;
	margin-right: -20px;
}
/* custom */
.paragrafo .fotoalign-left-quadrata figure,
.paragrafo .fotoalign-right-quadrata figure {
	max-width: 490px;
}
.paragrafo .fotoalign-left-quadrata figure img,
.paragrafo .fotoalign-right-quadrata figure img {
	border:10px solid var(--colore); 
	box-shadow: var(--box-shadow);
}
@media (max-width: 991px) {
	/* custom */
	.paragrafo .testoalign-right {
		text-align: left;
	}
}

@media screen and (min-width: 768px) {
	.paragrafo.left-full figure {
		margin: 0 -40px 3.5rem 0;
	}
	.paragrafo.right-full figure {
		margin: 0 0 3.5rem -40px;
	}
}
@media screen and (min-width: 992px) {
	.paragrafo .fotoalign-left,
	.paragrafo .fotoalign-left-quadrata {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
	}
	.paragrafo .fotoalign-right,
	.paragrafo .fotoalign-right-quadrata {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		flex-direction: row-reverse;
	}
	.paragrafo .fotoalign-left figure,
	.paragrafo .fotoalign-right figure,
	.paragrafo .fotoalign-left-quadrata figure,
	.paragrafo .fotoalign-right-quadrata figure {
		margin: 0 auto 0;
	}
	.paragrafo .fotoalign-left .inner,
	.paragrafo .fotoalign-left-quadrata .inner {
		padding-left: 1rem;
	}
	.paragrafo .fotoalign-right .inner,
	.paragrafo .fotoalign-right-quadrata .inner {
		padding-right: 1rem;
	}
	.paragrafo.left-full .inner {
		padding-left: 6%;
		padding-right: 11%;
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.paragrafo.right-full .inner {
		padding-left: 11%;
		padding-right: 6%;
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.paragrafo.right-full {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		flex-direction: row-reverse;
	}
	.paragrafo.left-full figure {
		margin: 0 auto 0rem 0;
	}
	.paragrafo.right-full figure {
		margin: 0 0 0rem auto;
	}
	.paragrafo.left .inner,
	.paragrafo.left-quadrata .inner {
		padding-left: 10px;
	}
	.paragrafo.right .inner,
	.paragrafo.right-quadrata .inner {
		padding-right: 10px;
	}
	.paragrafo .button {
		margin-bottom: 0;
	}
}
@media screen and (min-width: 1024px) {
	.paragrafo.left-full .immagine {
		padding-left: 10px;
		/* margin-left: -20px; */
		transform: translateX(15px) !important;
	}
	.paragrafo.left-full .inner {
		padding-left: 12%;
		padding-right: 11%;
	}
	.paragrafo.right-full .immagine {
		padding-right: 10px;
		/* margin-right: -20px; */
		transform: translateX(-15px) !important;
	}
	.paragrafo.right-full .inner {
		padding-left: 11%;
		padding-right: 12%;
	}
}
@media screen and (min-width: 1280px) {
	.paragrafo .fotoalign-center figure,
	.paragrafo .fotoalign-full figure {
		margin: 0 auto 3.5rem;
	}
	.paragrafo .fotoalign-left .inner,
	.paragrafo .fotoalign-left-quadrata .inner {
		padding-left: 2rem;
	}
	.paragrafo .fotoalign-right .inner,
	.paragrafo .fotoalign-right-quadrata .inner {
		padding-right: 2rem;
	}
	.paragrafo.left-full .inner {
		padding-left: 13%;
		padding-right: 14%;
	}
	.paragrafo.left-full .immagine {
		padding-left: 25px;
	}
	.paragrafo.right-full .inner {
		padding-left: 14%;
		padding-right: 13%;
	}
	.paragrafo.right-full .immagine {
		padding-right: 25px;
	}
	.paragrafo.left .inner,
	.paragrafo.left-quadrata .inner {
		padding-left: 25px;
	}
	.paragrafo.right .inner,
	.paragrafo.right-quadrata .inner {
		padding-right: 25px;
	}
		
}
@media screen and (min-width: 1440px) {
	.paragrafo .fotoalign-center figure,
	.paragrafo .fotoalign-full figure {
		margin: 0 auto 4.5rem;
	}
	.paragrafo .fotoalign-left .inner,
	.paragrafo .fotoalign-left-quadrata .inner {
		padding-left: 3rem;
	}
	.paragrafo .fotoalign-right .inner,
	.paragrafo .fotoalign-right-quadrata .inner {
		padding-right: 3rem;
	}
	.paragrafo.left .inner,
	.paragrafo.left-quadrata .inner {
		padding-left: 35px;
	}
	.paragrafo.right .inner,
	.paragrafo.right-quadrata .inner {
		padding-right: 35px;
	}
	.paragrafo.left-full .immagine {
		padding-left: 35px;
	}
	.paragrafo.right-full .immagine {
		padding-right: 35px;
	}
}
@media screen and (min-width: 1600px) {
	.paragrafo.left-full .inner {
		padding-left: 14%;
		padding-right: 18%;
	}
	.paragrafo.left-full .immagine {
		padding-left: 40px;
	}
	.paragrafo.right-full .inner {
		padding-left: 18%;
		padding-right: 14%;
	}
	.paragrafo.right-full .immagine {
		padding-right: 40px;
	}
	.paragrafo.left .inner,
	.paragrafo.left-quadrata .inner {
		padding-left: 50px;
	}
	.paragrafo.right .inner,
	.paragrafo.right-quadrata .inner {
		padding-right: 50px;
	}
}
@media screen and (min-width: 1800px) {
	.paragrafo .fotoalign-left .inner,
	.paragrafo .fotoalign-left-quadrata .inner {
		padding-left: 4rem;
	}
	.paragrafo .fotoalign-right .inner,
	.paragrafo .fotoalign-right-quadrata .inner {
		padding-right: 4rem;
	}
	.paragrafo.left-full .inner {
		padding-left: 14%;
		padding-right: 20%;
	}
	.paragrafo.left-full .immagine {
		padding-left: 60px;
	}
	.paragrafo.right-full .inner {
		padding-left: 20%;
		padding-right: 14%;
	}
	.paragrafo.right-full .immagine {
		padding-right: 60px;
	}
}
@media screen and (min-width: 2060px) {
	.paragrafo.left-full .inner {
		padding-left: 14%;
		padding-right: 25%;
	}
	.paragrafo.left-full .immagine {
		padding-left: 90px;
	}
	.paragrafo.right-full .inner {
		padding-left: 25%;
		padding-right: 14%;
	}
	.paragrafo.right-full .immagine {
		padding-right: 90px;
	}
}
@media screen and (min-width: 2400px) {
	.paragrafo.left-full .inner {
		padding-left: 14%;
		padding-right: 30%;
	}
	.paragrafo.right-full .inner {
		padding-left: 30%;
		padding-right: 14%;
	}
}

/* BLOCCO COLONNE */

.colonne figure {
	margin: 0 auto 2rem;
}
.colonne:not(.svg):not(.parallax) img {
	width: auto;
	margin: 0 auto;
	/* box-shadow: 0 0 25px 0 rgb(50 50 50 / 25%); */
}
.colonne .titolo {
	font-size: 1.5rem;
}

.foto-icona figure img {
	max-width: 112px;
}

@media (min-width: 768px) {
	.colonne2 .titolo,
	.colonne4 .titolo {
		font-size: 1.35rem;
	}
	.colonne3 .titolo {
		font-size: 1.35rem;
	}
}
@media (min-width: 816px) {
	/* .colonne2 .titolo,
	.colonne4 .titolo {
		font-size: 1.7rem;
	} */
	.colonne3 .titolo {
		font-size: 1.6rem;
	}
}
@media (min-width: 1024px) {
	.colonne2 .titolo {
		font-size: 1.85rem;
	}
	.colonne4 .titolo {
		font-size: 1.35rem;
	}
}
@media (min-width: 1280px) {
	.colonne2 .titolo {
		font-size: 2.2rem;
	}
	.colonne3 .titolo {
		font-size: 1.7rem;
	}
	.colonne4 .titolo {
		font-size: 1.5rem;
	}
}
@media (min-width: 1440px) {
	.colonne2 .titolo {
		font-size: 2.3rem;
	}
	.colonne3 .titolo {
		font-size: 1.8rem;
	}
	.colonne4 .titolo {
		font-size: 1.5rem;
	}
}
.colonne2 .h1 {
	font-size: clamp(2.15rem, 4.5vw + 1rem, 6rem);
	line-height: 1;
}
.colonne2 .h2 {
	font-size: clamp(2rem, 2.8vw + 1rem, 3.8rem) !important;
}

/* BLOCCO GALLERY  */

.gallery .grid,
.gallery.grid {
	justify-content: center;
}
.gallery figure {
	position: relative;
}
.gallery figcaption {
	text-align: center;
	color: var(--main);
	font-family: var(--mainfont), sans-serif;
	font-size: 90%;
	font-weight: var(--weightnormal);
	letter-spacing: 0.04rem;
	padding-top: 16px;
	line-height: 1.15;
	position: relative;
	overflow-wrap: break-word;
}
.gallery .overlay {
	opacity: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
	transition: opacity 0.4s;
}
.gallery a.dentro:hover .overlay {
	opacity: 1;
}
.gallery a.dentro figcaption {
	opacity: 0;
	margin: 0 auto;
	width: 100%;
	text-align: center;
	padding: 4px 20px 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.gallery a.dentro:hover figcaption {
	opacity: 1;
}
.gallery .item {
	margin-top: 30px;
	margin-bottom: 10px !important;
}

@media screen and (min-width: 768px) {
	.gallery .item {
		margin-bottom: 0 !important;
	}
	.gallery figure {
		margin-bottom: 10px;
	}
}
@media screen and (min-width: 1280px) {
	.gallery .item {
		margin-top: 30px;
	}
}

/* BLOCCO VIDEO GALLERY  */

.elenco_video a {
	position: relative;
	color: var(--colore);
	display: block;
}
.elenco_video a:hover {
	color: var(--bianco);
}
.elenco_video svg {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin-top: -30px;
	margin-left: -30px;
}
.elenco_video img {
	width: 100%;
}
.elenco_video .titolo_video {
	clear: both;
	font-size: 92%;
	padding-top: 1rem;
	text-align: left;
	line-height: 1.18;
	font-weight: var(--weightheavy);
}

/* BLOCCO VIDEO  */

.grid.video .video_holder .grid {
	flex: 1;
}
.grid.video a {
	position: relative;
	color: #ff0000;
	display: block;
	margin: 0 auto;
	max-width: 860px;
}
.grid.video a:hover {
	color: var(--bianco);
}
.grid.video svg {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin-top: -30px;
	margin-left: -30px;
}
.grid.video img {
	width: 100%;
}
.grid.video .titolo_video {
	clear: both;
	font-size: 1rem;
	padding-top: 1.5rem;
	text-align: left;
	line-height: 1.18;
	font-weight: var(--weightheavy);
}
@media (min-width: 1024px) {
	.grid.video {
		margin: 1rem auto;
	}
	.grid.video,
	.grid.video div {
		padding-left: 0;
		padding-right: 0;
	}
}


/* fslightbox */
.fslightbox-svg-path {
	/* fill: var(--bianco) !important; */
	fill: var(--main) !important;
}
.fslightbox-container {
	/* background: var(--main) !important; */
	background: var(--bianco) !important;
}
.fslightboxc:after {
	display: none !important;
}
.fslightboxci {
	/* color: var(--bianco) !important; */
	color: var(--main) !important;
	font-family: var(--mainfont) !important;
}
.fslightbox-toolbar {
	background: transparent !important;
}
.fslightbox-toolbar div:nth-child(1),
.fslightbox-toolbar div:nth-child(2),
.fslightbox-toolbar div:nth-child(3),
.fslightbox-toolbar div:nth-child(4) {
	display: none !important;
}
.fslightbox-slide-btn {
	background: transparent !important;
}
.fslightbox-slide-btn svg {
	display: none !important;
}
.fslightbox-slide-btn::before,
.fslightbox-slide-btn::before {
	border-style: solid;
	border-width: 2px 2px 0 0;
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	left: 0.15em;
	position: absolute;
	top: 0.69em;
	transform: rotate(-45deg);
	vertical-align: top;
	/* border-color: var(--bianco); */
	border-color: var(--main);
}
.fslightbox-slide-btn-container-previous .fslightbox-slide-btn::before {
	left: 0.74em;
	transform: rotate(-135deg);
}
.fslightbox-slide-btn-container-next .fslightbox-slide-btn::before {
	transform: rotate(45deg);
}
.fslightbox-slide-btn-container-previous,
.fslightbox-slide-btn-container-next {
	background-color: rgba(0, 0, 0, 0);
}

@media screen and (min-width: 992px) {
	.fslightbox-slide-btn-container-previous {
		left: 8px !important;
	}
	.fslightbox-slide-btn-container-next {
		right: 8px !important;
	}
}
@media screen and (min-width: 1280px) {
	.fslightbox-slide-btn-container-previous {
		left: 13px !important;
	}
	.fslightbox-slide-btn-container-next {
		right: 14px !important;
	}
}
@media screen and (min-width: 1440px) {
	.fslightbox-slide-btn-container-previous {
		left: 19px !important;
	}
	.fslightbox-slide-btn-container-next {
		right: 20px !important;
	}
}
@media screen and (min-width: 1600px) {
	.fslightbox-slide-btn-container-previous {
		left: 29px !important;
	}
	.fslightbox-slide-btn-container-next {
		right: 30px !important;
	}
}
img.fslightboxs {
	border-radius: 6px;
	box-shadow: var(--box-shadow);
}

/* BLOCCO RECENSIONI */

#recensioni .azienda-stars {
	color: #e44710;
}
#recensioni .azienda-stars svg {
	width: 18px;
	height: 18px;
	vertical-align: middle;
}
#recensioni .num_rece {
	font-size: 90%;
	color: var(--grigio);
}
#recensioni .azienda {
	font-size: 1.1rem;
	line-height: 1.15;
	font-weight: var(--weightbold);
}
#recensioni .azienda-avatar img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	box-shadow: 0 0 2px rgb(0 0 0 / 35%), 0 2px 4px rgb(0 0 0 / 35%);
}
#recensioni .azienda-rating {
	color: #e44710;
	font-size: 1.25rem;
	font-weight: var(--weightbold);
	margin: 0 6px 0 0;
	display: inline-block;
	-webkit-transform: translateY(3px);
	transform: translateY(3px);
}
#recensioni .contenuto {
	font-size: 0.86rem;
	line-height: 1.4;
	padding-top: 10px;
}
#recensioni .review {
	position: relative;
}
#recensioni .review .avatar {
	position: absolute;
	top: 0;
	left: 10px;
}
#recensioni .review .avatar img {
	width: 45px;
	height: 45px;
	border-radius: 50%;
}
#recensioni .review .content {
	padding-left: 50px;
}
#recensioni .review .rating svg {
	width: 21px;
	height: 20px;
	color: #ffb800;
}
#recensioni .button::after {
	border-left-color: var(--colore);
}
#recensioni .button:hover::before {
	background-color: var(--colore);
}
#recensioni .button:hover::after {
	border-left-color: var(--bianco);
}
@media screen and (min-width: 1280px) {
	#recensioni .review .avatar img {
		width: 60px;
		height: 60px;
	}
	#recensioni .review .content {
		padding-left: 70px;
	}
}
#recensioni .showmore,
#recensioni .showless {
	color: var(--color);
	font-weight: var(--weightbold);
	cursor: pointer;
	display: inline-block;
	padding-left: 5px;
	font-size: 97%;
}
#recensioni .moretext {
	display: none;
}
/* #recensioni .button {
	background: var(--main);
	color: var(--bianco);
}
#recensioni .button:hover {
	background: var(--colore);
	color: var(--bianco);
} */

/* BLOCCO TESTIMONIAL */

.testimonial blockquote {
	font-style: italic;
	margin: 0.25em 0;
	padding: 40px 40px;
	line-height: 1.35;
	position: relative;
	border-left: none;
	background-color: var(--grigio-molto-chiaro);
}
.testimonial blockquote figure {
	padding-bottom: 2.6rem;
}
.testimonial blockquote img {
	border-radius: 50%;
	max-width: 150px;
	display: inline-block;
	box-shadow: var(--box-shadow);
}
.testimonial blockquote .inner {
	float: left;
	width: 100%;
}
.testimonial blockquote span {
	display: block;
	margin-bottom: 8px;
}
.testimonial blockquote .descrizione {
	padding-bottom: 18px;
}
.testimonial blockquote .nome {
	font-style: normal;
	font-weight: var(--weightbold);
}
.testimonial blockquote .ruolo {
	font-style: normal;
	font-size: 0.85rem;
}
.testimonial blockquote::before,
.testimonial blockquote::after {
	position: absolute;
	font-size: 22rem;
	color: var(--bianco);
	line-height: 1;
	z-index: 0;
	font-family: sans-serif;
	height: 150px;
}
.testimonial blockquote::before {
	content: "\201c";
	left: -1.8rem;
	top: -2rem;
}
.testimonial blockquote::after {
	content: "\201d";
	right: 4rem;
	bottom: 0;
}
.testimonial .slick-prev {
	box-shadow: none;
	height: 35px;
	width: 35px;
	left: 3px;
	top: 45%;
}
.testimonial .slick-next {
	box-shadow: none;
	height: 35px;
	width: 35px;
	right: 20px;
	top: 45%;
}

@media screen and (min-width: 768px) {
	.testimonial blockquote figure {
		width: 180px;
		padding-bottom: 0;
	}
	.testimonial blockquote .inner {
		width: calc(100% - 180px);
		padding-left: 30px;
	}
}
@media screen and (min-width: 1024px) {
	.testimonial .slick-prev {
		left: -14px;
	}
	.testimonial .slick-next {
		right: 5px;
	}
}
@media screen and (min-width: 1440px) {
	.testimonial .slick-prev {
		left: -19px;
	}
	.testimonial .slick-next {
		right: 0px;
	}
}

/* BLOCCO ACCORDION */

.accordion input {
	position: absolute;
	opacity: 0;
	z-index: -1;
}
.accordion .tabs {
	margin-top: 20px;
	overflow: hidden;
}
.accordion .tab {
	width: 100%;
	color: var(--bianco);
	overflow: hidden;
}
.accordion .tab-label {
	display: flex;
	justify-content: space-between;
	padding: 1rem 1rem 0.7rem;
	font-weight: var(--weightbold);
	cursor: pointer;
	margin-bottom: 0;
	color: var(--main);
	background-color: var(--colore);
	transition: background 0.3s, color 0.3s;
}
.accordion .tab-label::after {
	content: "❯";
	width: 1em;
	height: 1em;
	text-align: center;
	transition: transform 0.3s;
}
.accordion .tab-content {
	max-height: 0;
	padding: 0 1em;
	transition: max-height 0.3s, padding 0.3s;
	color: var(--main);
	overflow: hidden;
}
.accordion .tab-close {
	display: flex;
	justify-content: flex-end;
	padding: 1em;
	font-size: 0.75em;
	background-color: var(--grigio);
	color: var(--bianco);
	cursor: pointer;
}
.accordion input:checked + .tab-label {
	background-color: var(--main);
	color: var(--bianco);
}
.accordion input:checked + .tab-label::after {
	transform: rotate(90deg);
}
.accordion input:checked ~ .tab-content {
	max-height: 100vh;
	padding: 1rem 1rem 0 1rem;
}

/* BLOCCO TIMELINE */

#timeline {
	overflow: hidden;
	margin: 0 auto;
	position: relative;
	padding-bottom: 55px;
}
#dates {
	min-width: 2300px !important;
	height: 60px;
	overflow: hidden;
	padding-left: 0;
	margin-left: 0;
}
#dates li {
	list-style: none;
	float: left;
	min-width: 100px;
	height: 50px;
	text-align: center;
	padding: 0 10px;
}
#dates a {
	font-size: .9rem;
	line-height: 38px;
	padding-bottom: 10px;
	transition: font-size 0.3s;
}
#dates a.selected {
	font-size: 1.1rem;
	font-weight: var(--weightbold);
}
#issues {
	overflow: hidden;
	padding-left: 0;
	margin-bottom: 0;
	display: flex;
    flex-wrap: nowrap;
}
#issues li {
	list-style: none;
	float: left;
}
#issues li.selected {
	float: left;
}
#issues li h3 {
	color: var(--main);
	font-size: 2rem;
	margin: 20px 0;
	padding: 0;
	text-transform: uppercase;
}
#issues li p {
	margin-right: auto;
	margin-left: auto;
	font-weight: var(--weightnormal);
	line-height: 22px;
	width: 317px;
}
#grad_left,
#grad_right {
	width: 100px;
	height: 350px;
	position: absolute;
	top: 0;
}
#grad_left {
	left: 0;
}
#grad_right {
	right: 0;
}
#timenext,
#timeprev {
	position: absolute;
	font-size: 4rem;
	bottom: 0;
	width: 60px;
	height: 60px;
	background-color: var(--colore);
	text-indent: -9999px;
	overflow: hidden;
	border-radius: 50%;
}
#timenext {
	right: 50%;
	margin-right: -70px;
}
#timeprev {
	left: 50%;
	margin-left: -70px;
}
#timenext.disabled,
#timeprev.disabled {
	opacity: 0.2;
}
#timeprev::before,
#timenext::before {
	border-style: solid;
	border-width: 2px 2px 0 0;
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	left: 0.2em;
	position: absolute;
	top: 0.285em;
	transform: rotate(-45deg);
	vertical-align: top;
	border-color: var(--bianco);
}
#timenext::before {
	transform: rotate(45deg);
}
#timeprev::before {
	left: 0.34em;
	transform: rotate(-135deg);
}

@media screen and (min-width: 414px) {
	#issues li p {
		width: 350px;
	}
}
@media screen and (min-width: 480px) {
	#issues {
		padding-left: 9%;
	}
}
@media screen and (min-width: 520px) {
	#issues {
		padding-left: 12%;
	}
}
@media screen and (min-width: 580px) {
	#issues {
		padding-left: 17%;
	}
}
@media screen and (min-width: 620px) {
	#issues {
		padding-left: 20%;
	}
}
@media screen and (min-width: 680px) {
	#issues {
		padding-left: 22%;
	}
}
@media screen and (min-width: 740px) {
	#issues {
		padding-left: 25%;
	}
}
@media screen and (min-width: 768px) {
	#issues {
		padding-left: 26%;
	}
}
@media screen and (min-width: 920px) {
	#issues {
		padding-left: 30%;
	}
}
@media screen and (min-width: 1024px) {
	#issues li h3 {
		font-size: 2.3rem;
	}
}
@media screen and (min-width: 1280px) {
	#issues {
		padding-left: 32%;
	}
}
@media screen and (min-width: 1440px) {
	#issues {
		padding-left: 34%;
	}
}

/* BLOCCO TIMELINE VERTICALE */

.timeline-container {
	width: 90%;
	padding: 30px 0;
	margin: 30px auto;
	position: relative;
	overflow: hidden;
}
.timeline-container:before {
	content: "";
	position: absolute;
	top: 0;
	left: 8px;
	width: 2px;
	margin-left: -1px;
	height: 100%;
	background: var(--grigio-molto-chiaro);
	z-index: 1;
}
.timeline-block {
	width: 100%;
	margin-bottom: 30px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	justify-content: space-between;
	clear: both;
}
.timeline-block-right {
	float: none;
}
.timeline-block-left {
	float: none;
	direction: ltr;
}
.timeline-marker {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 2px solid var(--bianco);
	background: var(--colore);
	margin-top: 10px;
	z-index: 9999;
}
.timeline-content {
	width: 95%;
	padding: 0 15px;
	color: var(--grigio);
}
.timeline-content h3 {
	margin-top: 5px;
	margin-bottom: 5px;
	font-size: 1.65rem;
}
.timeline-content span {
	font-size: 0.98rem;
	color: var(--colore);
}
.timeline-content .descrizione_evento {
	font-size: 0.85rem;
	line-height: 1.5em;
	word-spacing: 1px;
	color: var(--grigio);
}

@media screen and (min-width: 768px) {
	.timeline-container {
		width: 85%;
	}
	.timeline-container:before {
		left: 50%;
		width: 2px;
	}
	.timeline-block {
		width: -webkit-calc(50% + 8px);
		width: -moz-calc(50% + 8px);
		width: calc(50% + 8px);
	}
	.timeline-block-right {
		float: right;
	}
	.timeline-block-left {
		float: left;
		direction: rtl;
	}
}

/* BLOCCO MAPPA */
.mappa {
	margin: 0 !important;
	padding: 0 !important;
}
.google-maps {
	position: relative;
	height: 500px;
	overflow: hidden;
	margin: 0 !important;
}
.google-maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.google-maps iframe {
	pointer-events: none;
} /* disattivo lo scrollwheel automatico dalla mappa iframe - more on js */
.mappa-block.grid--full {
	padding: 0 !important;
}
.mappa-block.grid--full .google-maps {
	margin: 0 !important;
}
@media screen and (min-width: 1280px) {
	.google-maps {
		height: 700px;
	}
}
@media screen and (min-width: 1440px) {
	.google-maps {
		height: 800px;
	}
}

@media screen and (min-width: 1800px) {
	.google-maps {
		height: 900px;
	}
}
/* BLOCCO EVENTI */

table.eventi tr {
	background-color: var(--grigio-scuro);
	border: none;
	padding-top: 0;
}
table.eventi th {
	background-color: var(--main);
	color: var(--bianco);
}
table.eventi td {
	vertical-align: top;
	border: none;
	padding: 1rem;
}
table.eventi td:not(.descrizione):first-of-type {
	border-left: 5px solid var(--colore);
}
table.eventi td.locandina figure {
	text-align: left;
	margin-bottom: 0;
}
table.eventi td.locandina img {
	width: auto;
	max-width: 220px;
	margin: 0;
}
table.eventi .data_concerto,
table.eventi .locale {
	font-family: var(--mainfont);
	font-weight: var(--weightbold);
}
table.eventi td.descrizione {
	font-size: 95%;
	text-align: left;
	padding-bottom: 14px;
}
table.eventi td.descrizione p {
	margin-bottom: 0;
}
table.eventi tr.noborder {
	border-top: 20px solid var(--main);
	margin-bottom: 0;
}
table.eventi tr.noborder:first-of-type {
	border-top: none;
}
table.eventi tr.noborder,
table.eventi tr.noborder td {
	border-bottom: none !important;
}
table.eventi td.artista {
	text-transform: uppercase;
}

@media (max-width: 767px) {
	table.responsive.eventi td {
		text-align: left;
		padding-bottom: 0;
	}
	table.responsive.eventi td {
		border-left: 5px solid var(--colore);
	}
	table.responsive.eventi td.artista {
		padding-top: 1.8rem;
	}
	table.responsive.eventi td.info {
		padding-bottom: 1rem;
	}
	table.responsive.eventi tr.descr {
		display: none;
	}
	table.responsive.eventi td::before {
		content: '';
	}
	table.responsive.eventi .button {
		margin-top: 10px;
	}
}
@media screen and (min-width: 768px) {
	table.eventi td {
		line-height: 1.27;
	}
	table.eventi:not(.con-locandina) td.artista,
	table.eventi:not(.con-locandina) td.quando,
	table.eventi:not(.con-locandina) td.dove,
	table.eventi:not(.con-locandina) td.info {
		padding-top: 20px;
		padding-bottom: 15px;
	}
	table.eventi:not(.con-locandina) td.descrizione {
		padding-top: 0;
		padding-bottom: 18px;
	}
	table.eventi .data_concerto,
	table.eventi .locale {
		display: block;
	}
	table.eventi .orario,
	table.eventi .citta {
		padding-top: 4px;
		display: block;
	}
	table.eventi td.descrizione {
		padding-top: 20px;
		padding-bottom: 35px;
	}
	.safari table.eventi td.descrizione {
		padding-top: 70px;
	}
	table.eventi.con-locandina td.artista,
	table.eventi.con-locandina td.quando,
	table.eventi.con-locandina td.dove,
	table.eventi.con-locandina td.info {
		padding-top: 60px;
		padding-bottom: 0;
	}
	table.eventi td.info {
		display: none;
	}
}
@media screen and (min-width: 1024px) {
	table.eventi.con-locandina td.artista,
	table.eventi.con-locandina td.quando,
	table.eventi.con-locandina td.dove,
	table.eventi.con-locandina td.info {
		padding-top: 70px;
	}
	table.eventi .data_concerto, 
	table.eventi .locale {
		font-size: 1rem;
	}
}
@media screen and (min-width: 1280px) {
	table.eventi.con-locandina td.artista,
	table.eventi.con-locandina td.quando,
	table.eventi.con-locandina td.dove,
	table.eventi.con-locandina td.info {
		padding-top: 80px;
	}
	table.eventi .data_concerto, 
	table.eventi .locale {
		font-size: 1.1rem;
	}
	table.eventi td.info {
		max-width: 88px;
		display: table-cell;
	}
}
@media screen and (min-width: 1440px) {
	table.eventi .data_concerto, 
	table.eventi .locale {
		font-size: 1.16rem;
	}
}


/* BLOCCO TABS */

.tabs-container input.hidden {
	display: none;
}
.tabs-container input:checked + label {
	background: var(--main);
	color: var(--grigio-molto-chiaro);
}
.tabs-container input#tab1:checked ~ .content-container #c1,
.tabs-container input#tab2:checked ~ .content-container #c2,
.tabs-container input#tab3:checked ~ .content-container #c3,
.tabs-container input#tab4:checked ~ .content-container #c4,
.tabs-container input#tab5:checked ~ .content-container #c5,
.tabs-container input#tab6:checked ~ .content-container #c6,
.tabs-container input#tab7:checked ~ .content-container #c7,
.tabs-container input#tab8:checked ~ .content-container #c8,
.tabs-container input#tab9:checked ~ .content-container #c9 {
	display: block;
}
.tabs-container > label,
.tabs-container > .label {
	display: inline-block;
	font-size: 0.88rem;
	line-height: 36px;
	padding: 4px 20px 0px;
	text-align: center;
	background: var(--grigio-molto-chiaro);
	color: var(--main);
	position: relative;
	transition: 0.25s background ease;
	cursor: pointer;
	margin: 0;
}
.tabs-container .content-container {
	position: relative;
	border: 1px solid var(--main);
}
.tabs-container .content-container .content {
	width: 100%;
	display: none;
	transition: 0.25s ease;
	margin: 0;
}
.tabs-container > .label {
	font-family: inherit;
	font-weight: var(--weightnormal);
	margin: 0 0 4px 0;
}
.tabs-container .label:hover {
	background: var(--main);
	color: #fff;
}

/* DOWNLOADS */

.downloads-container .content {
	padding-left: 87px;
	border: 1px solid var(--grigio-molto-chiaro);
	border-radius: 0;
	background: #fff;
	padding-right: 15px;
	height: 100%;
}
.downloads-container .file {
	position: relative;
	font-weight: var(--weightbold);
	line-height: 1.2;
	padding-bottom: 3px;
}
.downloads-container .file svg {
	position: absolute;
	width: 45px;
	height: 45px;
	left: -65px;
	top: -5px;
}
.downloads-container .filesize {
	font-size: 85%;
}
.downloads-container .contenuto {
	font-size: 90%;
	color: var(--grigio);
	line-height: 1.2;
	padding-top: 1px;
}
.downloads-container .contenuto p {
	margin-bottom: 0;
}

@media (min-width: 1280px) {
	.downloads-container .content {
		padding-left: 97px;
	}
	.downloads-container .file svg {
		left: -70px;
	}
}

/* BLOCCO LOGHI*/

.loghi figure {
	flex: 1;
}
.loghi figure img {
	max-width: 190px;
	margin: 0 auto;
	box-shadow: none !important;
}

/* BLOCCO LOGHI MODALITA CARDS */

.loghi .card {
	perspective: 500px;
}
.loghi .card .content {
	position: relative;
	width: 100%;
	height: 100%;
	box-shadow: var(--box-shadow);
	transition: transform 0.6s;
	transform-style: preserve-3d;
	aspect-ratio: 1 / 1;
}
.loghi .card:hover .content {
	transform: rotateY(180deg);
	height: 100%;
}
.loghi .card .front,
.loghi .card .back {
	height: 100%;
	width: 100%;
	background: var(--bianco);
	border-radius: 0;
	backface-visibility: hidden;
}
.loghi .card .front {
	padding: 12px;
}
.loghi .card .back {
	position: absolute;
	top: 0;
	padding: 30px;
	font-size: 1.1rem;
	line-height: 1.25;
	text-align: left;
	background: var(--colore);
	color: var(--bianco);
	transform: rotateY(180deg);
}
.loghi .card .back p {
	margin-bottom: 10px;
}
.loghi .card .back a {
	color: var(--bianco);
	text-decoration: underline;
}
.loghi .card figure {
	padding-top: 1.5rem;
}
.loghi .card figure img {
	max-width: 226px;
}
.loghi .card figcaption {
	font-size: 0.88rem;
	line-height: 1.1;
	font-weight: var(--weightheavy);
	text-transform: uppercase;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 36px;
	transition: opacity 0.5s;
}
.loghi .card:hover figcaption {
	opacity: 0;
}
@media (min-width: 520px) {
	.loghi .card .back {
		padding: 18px;
		font-size: 0.78rem;
	}
}
@media (min-width: 620px) {
	.loghi .card .back {
		padding: 25px;
		font-size: 0.9rem;
	}
}
@media (min-width: 768px) {
	.loghi .card {
		width: 33.33%;
	}
	.loghi .card .back {
		padding: 18px;
		font-size: 0.78rem;
	}
}
@media (min-width: 992px) {
	.loghi .card .back {
		padding: 20px;
		font-size: 0.92rem;
	}
}
@media (min-width: 1024px) {
	.loghi .cards,
	.loghi .cards > .grid {
		padding-left: 0;
		padding-right: 0;
	}
	.loghi .card .back {
		padding: 25px;
		font-size: 0.98rem;
	}
}
@media (min-width: 1280px) {
	.loghi .card {
		width: 25%;
	}
	.loghi .card .back {
		padding: 20px;
		font-size: 0.82rem;
	}
}
@media (min-width: 1440px) {
	.loghi .card .back {
		padding: 25px;
		font-size: 0.95rem;
	}
}
@media (min-width: 1600px) {
	.loghi .card .back {
		padding: 30px;
		font-size: 0.98rem;
	}
}


/* BLOCCO CARATTERISTICHE */

@media (max-width: 991px) {
	.caratteristiche > div {
		width: 100%;
	}
	.caratteristiche .col-50:nth-child(2) {
		margin-top: 0 !important;
	}
}
.caratteristiche .col-50:nth-child(2) .inner {
	border-left: 6px solid var(--colore);
	padding-left: 1.86rem;
}
.caratteristiche h2 {
	margin-left: 2rem;
	font-size: clamp(1.8rem, 2vw + 1rem, 3rem) !important;
}
@media (min-width: 992px) {
	.caratteristiche .col-50:nth-child(2) .inner:before {
		content: "";
		position: absolute;
		left: -28px;
		top: 50px;
		width: 48px;
		height: 6px;
		background-color: var(--colore);
	}
	.caratteristiche .col-50:nth-child(2) .inner:after {
		content: "";
		position: absolute;
		left: -44px;
		top: 44px;
		width: 18px;
		height: 18px;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
		background-image: url(assets/images/pointer.svg);
	}
}
@media (min-width: 1440px) {
	.caratteristiche .col-50:nth-child(2) .inner:before {
		width: 60px;
		left: -40px;
	}
	.caratteristiche .col-50:nth-child(2) .inner:after {
		left: -56px;
	}
}

/* HEADER CON BACKGROUND */

#header-image {
	width: 100%;
	position: relative;
	margin-bottom: 50px;
	/* border: 15px solid var(--main);
	border-top: 60px solid var(--main); */
}
#header-image.fourth {
	height: calc(25vh + 70px);
	min-height: 280px;
}
#header-image.third {
	min-height: calc(33vh + 60px);
}
#header-image.half {
	min-height: calc(50vh + 70px);
}
#header-image.sevenfive {
	min-height: 75vh;
}
#header-image.full {
	min-height: 100vh;
}
#header-image .contenuto {
	padding-top: 60px;
	padding-bottom: 50px;
    display: flex;
	align-items: center;
}
@media screen and (min-width: 992px) {
	#header-image .contenuto {
		padding-top: 72px;
	}
	#topbar:has(#supbar) + #maincontainer #header-image .contenuto {
		padding-top: 112px;
	}
}
@media screen and (min-width: 1280px) {
	/* #header-image {
		border: 20px solid var(--main);
		border-top: 70px solid var(--main);
	} */
	#header-image.fourth {
		min-height: 300px;
	}
	#header-image .contenuto {
		padding-top: 82px;
	}
	#topbar:has(#supbar) + #maincontainer #header-image .contenuto {
		padding-top: 122px;
	}
}
@media screen and (min-width: 1440px) {
	/* #header-image {
		border-top: 75px solid var(--main);
	} */
	#header-image.fourth {
		min-height: 340px;
	}
	#header-image.sevenfive {
		min-height: calc(75vh + 120px);
	}
	#header-image .contenuto {
		padding-top: 96px;
		padding-bottom: 56px;
	}
	#topbar:has(#supbar) + #maincontainer #header-image .contenuto {
		padding-top: 136px;
	}
}
@media (min-width: 1600px) {
	/* #header-image {
		border-top: 85px solid var(--main);
	} */
	#header-image.fourth {
		min-height: 374px;
	}
	#header-image.sevenfive {
		min-height: calc(75vh + 140px);
	}
}
@media (min-width: 1800px) {
	/* #header-image {
		border-top: 90px solid var(--main);
	} */
	#header-image.fourth {
		min-height: 420px;
	}
}
#header-image .overlay {
	max-height: none;
}
#header-image::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-image: linear-gradient(90deg, #097EEB 0%, #E9433D 100%);
	z-index: 0;
	opacity: .6;
}
#header-image .inner {
	position: relative;
	flex: 1;
	z-index: 1;
	margin: 0 auto;
	transform: translateY(40px); 
}
/* @media (max-width: 640px) {
	#header-image .inner {
		padding-left: 5px !important;
	}
} */
@media (min-width: 425px) {
	#header-image .inner {
		max-width: 90%;
	}
}
@media (min-width: 680px) {
	#header-image .inner {
		/* max-width: 75%; */
		/* max-width: 85%; */
	}
}
@media (min-width: 768px) {
	#header-image .inner {
		/* max-width: 70%; */
		/* max-width: 80%; */
	}
}
@media (min-width: 992px) {
	#header-image .inner {
		/* max-width: 60%; */
		/* max-width: 70%; */
		/* transform: translateX(30px); */
	}
}
@media (min-width: 1280px) {
	#header-image .inner {
		/* max-width: 55%; */
		max-width: 85%;
		/* transform: translateX(40px); */
	}
}
@media (min-width: 1440px) {
	#header-image .inner {
		/* max-width: 50%; */
		/* max-width: 60%; */
		transform: translateY(50px);
	}
}
@media (min-width: 1600px) {
	#header-image .inner {
		/* max-width: 45%; */
		max-width: 1440px;
		/* transform: translateX(60px); */
	}
}



#header-image .background.posizione-top {
	background-position: center top;
}
#header-image .background.posizione-halftop {
	background-position: center 25%;
}
#header-image .background.posizione-center {
	background-position: center center;
}
#header-image .background.posizione-halfbottom {
	background-position: center 75%;
}
#header-image .background.posizione-bottom {
	background-position: center bottom;
}
#header-image h1,
#header-image .h1,
#header-image h2 {
	color: var(--bianco);
	text-transform: uppercase;
	margin-bottom: 0;
	padding-bottom: 0;
	text-shadow: 1px 1px 35px var(--main);
	/* line-height: 1.05; */
}
#header-image .grid {
	height: 100%;
	padding-top: 50px;
	padding-bottom: 50px;
}
#header-image .paragrafo {
	font-size: 1rem;
	font-weight: var(--weightnormal);
	padding-top: 30px;
}
#header-image .button::before {
	background-color: var(--colore);
}
#header-image .button::after {
	border-left-color: var(--bianco);
}
#header-image .button:hover::before {
	background-color: var(--bianco);
}
#header-image .button:hover::after {
	border-left-color: var(--colore);
}
/* .home #header-image .h1 {
	font-size: clamp(2.2rem, 2.8vw + 1rem, 4.5rem);
} */
/* .home #header-image .grid {
	padding-top: 30px;
}

@media (max-width: 619px) {
	.home #header-image .grid {
		padding-top: 0;
	}
} */

@media (min-width: 580px) {
	#header-image .paragrafo {
	font-size: 1.1rem;		
	}
}
@media (min-width: 768px) {
	#header-image .paragrafo {
		font-size: 1.25rem;
	}
}
/* @media (min-width: 992px) {
	#header-image .paragrafo {
		font-size: 1.35rem;
	}
} */
@media (min-width: 1280px) {
	#header-image .paragrafo {
		font-size: 1.35rem;
	}
}
/* @media (min-width: 1440px) {
	#header-image .paragrafo {
		font-size: 1.6rem;
	}
}
@media (min-width: 1600px) {
	#header-image .paragrafo {
		font-size: 1.7rem;
	}
} */
@media (min-width: 992px) {
	#header-image .grid {
		padding-top: 97px;
		padding-bottom: 97px;
	}
}
@media (min-width:1024px) {
	#header-image .grid {
		padding-top: 108px;
		padding-bottom: 108px;
	}
}
@media (min-width:1440px) {
	#header-image .grid {
		padding-top: 124px;
		padding-bottom: 124px;
	}
}


/* HEADER SENZA BACKGROUND */

#pageheader {
	padding-top: 100px;
	text-align: center;
}
@media (min-width: 992px) {
	#pageheader {
		padding-top: 120px;
	}
}
@media (min-width: 1280px) {
	#pageheader {
		padding-top: 136px;
	}
}
@media (min-width: 1440px) {
	#pageheader {
		padding-top: 150px;
	}
}
@media (min-width: 1600px) {
	#pageheader {
		padding-top: 170px;
	}
}
@media (min-width: 1800px) {
	#pageheader {
		padding-top: 180px;
	}
}

/* PAGINA DEFAULT  */

.page h1.page-title {
	color: var(--main);
}

/* SINGOLO ARTICOLO */

.single h1.page-title {
	color: var(--main);
}
.single .entry-content img {
	box-shadow: var(--box-shadow);	
}
.single .has-post-thumbnail img {
	border-radius: 6px;
}
.single #pageheader .data {
	display: inline-block;
	font-size: 0.74rem;
	font-weight: var(--weightmedium);
	margin-bottom: 1.7rem;
	text-transform: uppercase;
	position: relative;
	padding-left: 19px;
}
.single #pageheader .data svg {
	position: absolute;
	left: 0;
	width: 12px;
	height: 12px;
	top: 2px;
}
.single #pageheader .spacer {
	display: inline-block;
	padding: 0 5px;
}
.single #pageheader .cat_name {
	display: inline-block;
	padding-right: 6px;
}
.single:not(.single-realizzazione) article.hentry p:first-of-type {
	font-size: 1.1rem;
	line-height: 1.42;
}
.single-post .gallery.grid--full {
	padding-left: 0;
	padding-right: 0;
}
.single-post .gallery.grid--full > div {
	padding-left: 0;
	padding-right: 0;
}
.single .gallery figcaption {
	color: var(--bianco);
}
.single .wp-block-image {
	text-align: center;
	margin: 4rem auto 3rem;
}
.wp-block-image figcaption {
    margin-top: 1rem;
    margin-bottom: 0;
    font-size: .9rem;
	color: var(--grigio-chiaro);
}
.single .post-navigation {
	display: flex;
	justify-content: space-between;
}
@media (min-width: 964px) {
	.single .post-navigation {
		padding: 0 50px;
	}
}
@media (min-width: 1024px) {
	.single .post-navigation {
		padding: 0 60px;
	}
}

@media screen and (min-width: 1024px) {
	.single:not(.single-realizzazione) article.hentry p:first-of-type {
		font-size: 1.2rem;
	}
	.single-post .gallery {
		padding-left: 0;
		padding-right: 0;
		margin-left: -20px;
		margin-right: -20px;
	}
	.single-post .gallery > div > div {
		padding-left: 0;
		padding-right: 0;
		margin-left: -20px;
		margin-right: -20px;
	}
	.single-post .gallery.grid--full > div > div {
		width: 100vh;
		margin-inline-start: 50%;
		transform: translateX(-50%);
	}
}
@media (min-width: 1280px) {
	.single:not(.single-realizzazione) article.hentry p:first-of-type {
		font-size: 1.3rem;
	}
}

p.tags {
	border-top: 1px solid var(--grigio-molto-chiaro);
	font-size: 0.9rem !important;
}
p.tags .tags-title {
	color: var(--grigio);
	font-weight: var(--weightbold);
}
p.tags a {
	padding-right: 0.5rem;
}

#toc_container {
	padding: 17px 21px 19px;
	margin-bottom: 2rem;
}
#toc_container p.toc_title {
	text-align: left;
}

/* PAGINA EVENTO */
.single-eventi figure.locandina {
	text-align: center;
	margin-bottom: 2rem;
}
.single-eventi figure.locandina img {
	width: auto;
}
.grid.evento-info {
	background-color: var(--grigio-scuro);
	color: var(--bianco);
	padding: 32px 13px 18px;
	border-left: 5px solid var(--colore);
	margin-left: 0;
	margin-right: 0;
}
.grid.evento-info .label {
	text-transform: uppercase;
	font-size: 0.86rem;
	letter-spacing: 0.05rem;
}
@media (min-width:964px) {
	.single-eventi .grid.gallery {
		margin: 0 -30px;
	}
}
@media (min-width: 992px) {
	.grid.evento-info {
		padding: 33px 26px 20px;
	}
}
@media (min-width:1024px) {
  .single-eventi .grid.gallery { 
	padding-left: 10px;
	padding-right: 10px;
}
}

/* ARTICOLI SIDEBAR - shortcode */
.my_widget ul {
	padding: 0;
	margin: 0;
}
.my_widget ul li {
	margin: 0 0 40px;
	list-style-type: none;
	overflow: hidden;
	background: var(--bianco);
}
.my_widget h3 {
	line-height: 1.1;
	margin-top: 5px;
	margin-bottom: 12px;
	font-size: 1.15rem;
}
.my_widget h3 a {
	color: var(--main);
}
.my_widget ul li:hover a {
	color: var(--colore);
}
.my_widget .data {
	color: var(--colore);
	font-size: 0.8rem;
	font-weight: var(--weightbold);
	margin-bottom: 0.7rem;
	text-transform: uppercase;
}
.my_widget .inner {
	background: var(--grigio-molto-chiaro);
	padding: 1rem 1.35rem 0.8rem;
}
.my_widget figure {
	overflow: hidden;
	position: relative;
}
.my_widget img {
	margin: 0;
	width: 100%;
}

#maincolumns { contain: initial !important; }

@media screen and (min-width: 964px) {
	#maincolumns {
		padding-left: 0;
		padding-right: 0;
	}
	#maincontent {
		padding-left: 0;
		padding-right: 0;
	}
	
}


/* SIDEBAR */
#secondary {
	position: relative;
	margin-top: 2rem;
}
#secondary h4 {
	font-size: 1.3rem;
	text-transform: uppercase;
	color: var(--grigio);
}

@media screen and (min-width: 992px) {
	#secondary {
		margin-top: 0;
	}
}






.frc-captcha {
	margin-top: 35px;
	background-color: transparent !important;
	border: none !important;
}
.frc-button {
	box-shadow: none !important;
}

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	overflow: hidden;
	max-width: 100%;
	height: auto;
	margin-bottom: 4rem;
}

.video-container iframe,
.video-container object,
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.screen-reader-text {
	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;
}

/* CF7 */

fieldset { 
	border: 0px solid var(--colore);
	padding: 2rem 2rem 2.2rem;
    margin: 0 0 .5rem 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
/* custom */
fieldset {
	padding-top: 0;
	padding-bottom: 0;
	
}
fieldset.nopad {
	padding: 0;
	border: none;
}
@media (max-width: 781px) {
  	fieldset {
	  	padding: 0;
  	}	
}
#secondary fieldset {
	border: 1px solid var(--colore);
}
fieldset legend {
	font-size: 1.2rem;
	line-height: 1.1;
    color: var(--main); 
    text-transform: uppercase;
	font-weight: var(--weightnormal); 
    background: transparent; 
    padding: 0 0.75rem;
    margin: 0;
    margin-left: -0.75rem;
}
#secondary fieldset legend {
	color: var(--main);
	font-size: 1.85rem;
	line-height: 1;
	text-transform: none;
}
@media (min-width: 1024px) {
	#secondary fieldset legend {
		font-size: 2rem;
	}
}
@media (min-width: 1280px) {
	#secondary fieldset legend {
		font-size: 2.3rem;
	}
}
div.wpcf7 label:not(.privacy),
.label {
	display: block;
	margin: 0;
	padding-bottom: 0.26rem;
	letter-spacing: 0.06rem;
	text-transform: uppercase;
	font-size: 0.85rem;
	font-weight: var(--weightheavy);
}
.label {
	padding-bottom: 0;
}
div.wpcf7 label span {
	padding-left: 0.5rem;
}
div.wpcf7 label sup {
	padding-left: 0.1rem;
	display: inline-block;
	transform: translateY(-3px);
}
div.wpcf7 p {
	margin-bottom: 0;
}
div.wpcf7 br {
	display: none;
}
div.wpcf7 label.privacy {
	display: block;
	padding: 0 0 25px;
	margin-top: 2px;
	font-family: var(--mainfont), sans-serif;
	font-size: 0.98rem;
	font-weight: var(--weightnormal);
}
div.wpcf7 label.hide {
	display: none;
}
div.wpcf7 label.evidenza {
	font-size: 110%;
	color: var(--colore);
	text-transform: uppercase;
}
div.wpcf7 div.wide {
	width: 100%;
	clear: both;
}

input.wpcf7-text,
textarea,
.wpcf7-select,
input[type="number"],
input[type="date"] {
	font-family: var(--mainfont), sans-serif;
	font-size: 1rem;
	background: var(--bianco);
	padding: 8px 16px 9px !important;
	height: 44px;
	box-shadow: inset 0 1px 9px hsla(0, 0%, 4%, 0.11);
	border: 1px solid var(--colore);
	border-radius: 4px;
	margin-bottom: 26px;
	transition: border-color 0.4s;
}
input[type="submit"] {
	-webkit-appearance: none !important;
	appearance: none !important;
}
select,
.wpcf7-select {
	padding: 0 27px 0 13px !important;
	color: var(--main) !important;
	-webkit-appearance:none;
	background-image: url(assets/images/arrow.svg);
	background-size: 11px;
	background-repeat: no-repeat;
	background-position: 96.5% 50%;
}

input.wpcf7-text:focus,
textarea.wpcf7-textarea:focus,
textarea:focus,
.wpcf7-select:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="search"]:focus {
	border-color: var(--colore);
	outline: -webkit-focus-ring-color auto 0px;
}

textarea {
	resize: vertical;
}

textarea.wpcf7-textarea {
	min-height: 180px;
	margin-bottom: 18px;
	border-radius: 4px;
}
input[type="date"] {
	padding-right: 0;
}
div.wpcf7 input[type="file"] {
	height: 38px;
}
.wpcf7-form-control span.wpcf7-list-item {
	margin: 8px 0 0 0;
	display: block;
}
span.wpcf7-list-item label {
	padding: 0 0 25px 35px;
	margin-top: 3px !important;
	font-family: var(--mainfont), sans-serif;
	font-size: 0.98rem !important;
	font-weight: var(--weightnormal) !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	line-height: 1.18;
	position: relative;
}
span.wpcf7-list-item label span {
	padding-left: 0;
}
div.wpcf7 input[type=radio] {
	position: absolute;
	left: -3px;
}
span.wpcf7-not-valid-tip {
	/*
    position: absolute;
    left: 0;
    margin-top: -24px;
    font-size: .82rem;
*/
	display: none;
}
div.wpcf7-response-output {
	/*
    float: left;
    width: 100%;
    padding: 13px 13px 13px 0 !important;
    clear: both;
    line-height: 110%;
    margin: 15px 0 0 0 !important;
    font-size: .82rem;
    border: none !important; 
*/
	display: none;
}
div.wpcf7-validation-errors {
	display: none !important;
	background: #880000;
	color: var(--bianco);
}
p.help-text {
	display: block;
	float: left;
	width: 100%;
	margin-top: -1.5rem;
	margin-bottom: 0.65rem;
	color: var(--grigio);
}
[type="color"],
[type="date"],
[type="datetime-local"],
[type="datetime"],
[type="email"],
[type="month"],
[type="number"],
[type="password"],
[type="search"],
[type="tel"],
[type="text"],
[type="time"],
[type="url"],
[type="week"],
.wpcf7-select {
	margin-bottom: 18px;
	font-size: 1rem;
	font-family: var(--mainfont), sans-serif;
}

.wpcf7-acceptance {
	float: left;
	margin-top: -1px;
}
label.checkbox-input span {
	padding-left: 0 !important;
	text-transform: none;
}
.wpcf7-acceptance input[type="checkbox"] {
	margin-right: 14px;
	margin-top: -13px;
}
.privacy-text {
	font-weight: var(--weightnormal);
}
.fileupload {
	padding-top: 15px;
	padding-bottom: 25px;
}

.short input.wpcf7-text,
.short .wpcf7-select,
.short input[type="number"],
.short input[type="date"] {
	max-width: 6rem;
}

.medium input.wpcf7-text,
.medium .wpcf7-select,
.medium input[type="number"],
.medium input[type="date"] {
	max-width: 11rem;
}

@media screen and (min-width: 520px) and (max-width: 767px) {
	section.cf7-form > div .grid > div {
		width: 100%;
	}
}
.wpcf7 div.half {
	width: 100%;
}
.wpcf7 div.third {
	width: 100%;
}
@media screen and (min-width: 520px) {
	.wpcf7 div.half {
		width: 48%;
	}
	.wpcf7 div.third {
		width: 31%;
	}
}
@media (min-width: 782px) {
	.screen-reader-response {
		padding-left: 33px;
	}
}



/* clears the ‘X’ from Internet Explorer */
input[type="search"]::-ms-clear {
	display: none;
	width: 0;
	height: 0;
}
input[type="search"]::-ms-reveal {
	display: none;
	width: 0;
	height: 0;
}
/* clears the ‘X’ from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
	display: none;
}

/* PAGINA SEARCH */
.search .search_form_holder {
	max-width: 440px;
	margin: 0 auto;
	position: relative;
}
.search .search_form_holder input {
	margin: 0;
	height: 44px;
	border: 2px solid var(--grigio);
	border-radius: 0;
	background-color: transparent;
	color: var(--main);
}
.search .search_form_holder input:focus {
	border-color: var(--main);
}
.search .search_form_holder label {
	position: absolute;
	right: 0;
	top: 0;
	font-size: 2.4rem;
	font-weight: var(--weightnormal);
	color: var(--colore);
	margin: 0;
	padding: 0;
	line-height: 1.16;
	width: 44px;
	text-align: center;
	display: inline-block;
	pointer-events: none;
	transform: rotate(-45deg);
	transition: color .4s ease-out;
}
.search .search_form_holder:hover label {
	color: var(--colore);
}
.search .search_form_holder button {
	position: absolute;
	right: 0;
	top: 0;
	margin: 0;
	padding: 0;
	width: 44px;
	height: 100%;
	text-align: center;
	background-color: transparent;
	border-color: transparent;
	z-index: 99;
}
.search-results-list {
	padding-bottom: 0;
	border-left: 5px solid var(--colore);
}
.search-results-list a {
	color: var(--main);
}
.search-results-list a:hover {
	color: var(--colore);
}
.search p.excerpt {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2; /* number of lines to show */
			line-clamp: 2; 
	-webkit-box-orient: vertical;
}
@media (min-width: 992px) {
	.search p.excerpt {
		display: block;
	}
}

/* FORM PAGAMENTO */
#wpcf7-f1556-p1561-o1 {
	max-width: 440px;
	margin: 0 auto;
	text-align: left;
}
#wpcf7-f1556-p1561-o1 .importo input {
	max-width: 120px;
}
#wpcf7-f1556-p1561-o1 .importo {
	position: relative;
}
#wpcf7-f1556-p1561-o1 .valuta {
	position: absolute;
	left: -26px;
	font-size: 1.1rem;
}
.wpcf7-stripe span.wpcf7-not-valid-tip {
	position: relative !important;
	margin-top: 12px !important;
	margin-bottom: 10px;
	line-height: 1.2;
}
.wpcf7 .wpcf7-stripe .wpcf7-form-control-wrap {
	margin-bottom: 28px !important;
}


/* TESTO IN 2 COLONNE */

@media (min-width: 768px) {
	.testo-colonne .testo p {
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;
		column-gap: 3rem;
	}
}

@media (min-width: 1280px) {
	.testo-colonne .testo p {
		column-gap: 4rem;
	}
}

@media (min-width: 1440px) {
	.testo-colonne .testo p {
		column-gap: 5rem;
	}
}





/* COMPLIANZ */

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn,
.cmplz-btn {
	font-size: 0.88rem;
	font-weight: var(--weightnormal);
	background-image: none;
	text-transform: none;
	box-shadow: none;
}
.cmplz-btn::before,
.cmplz-btn::after {
	display: none;
}
#cmplz-document {
	padding-top: 40px;
}
#cmplz-document,
#cmplz-document p {
	max-width: 100%;
	font-size: inherit !important;
}
#cmplz-document p, .editor-styles-wrapper .cmplz-unlinked-mode p, #cmplz-document li, .editor-styles-wrapper .cmplz-unlinked-mode li, #cmplz-document td, .editor-styles-wrapper .cmplz-unlinked-mode td {
	font-size: inherit;
}
#cmplz-cookies-overview,
#cmplz-manage-consent-container.cmplz-manage-consent-container .cmplz-categories {
	margin-bottom: 40px;
}
.cmplz-blocked-content-container {
	max-height: 100% !important;
}
@media (max-width: 768px) {
	.cmplz-cookiebanner .cmplz-buttons {
		flex-direction: row !important;
	}
}

/* CUSTOM BREADCRUMBs */
.breadcrumbs {
    font-size: .8rem;
	color: var(--bianco);
}
.breadcrumbs a {
	color: var(--bianco);
}
.breadcrumbs a:hover {
    color: var(--colore);
}
.pageheader .breadcrumbs  {
	color: var(--main);
}
.pageheader .breadcrumbs a  {
	color: var(--colore);
}
.pageheader .breadcrumbs a:hover  {
	color: var(--colore-3);
}

/* PAGINAZIONE */
.page-navigation {
	clear: both;
	text-align: center;
	padding-bottom: 3rem;
}
.pagination {
	margin-left: 0;
	margin-bottom: 1rem;
	font-size: 0.88rem;
}
.pagination li:first-child,
.pagination li:last-child {
	display: inline-block;
}
.pagination li {
	display: inline-block;
	margin: 0 2px;
	border-radius: 4px;
	overflow: hidden;
	line-height: 1;
	border: 1px solid var(--grigio);
}
.pagination li:empty {
	border: none;
}
.pagination li a {
	border: none;
	background: var(--bianco);
	text-decoration: none;
	color: var(--main);
}
.pagination li a:hover {
	background: var(--colore);
	color: var(--bianco) !important;
}
.pagination .current {
	background: var(--colore);
	color: var(--bianco);
}
.pagination .current span {
	display: block;
	border: none;
}
.pagination a,
.pagination button {
	color: var(--colore);
	display: block;
	padding: 0.45rem 0.68rem 0.4rem;
}
.pagination .current {
	padding: 0.45rem 0.68rem 0.4rem;
	cursor: default;
}

/* 404 */
/* .error404 #maincontainer {
	background-color: var(--colore);
	color: var(--bianco);
} */

/* FOOTER */

#footer {
	margin: 0 auto;
	contain: content;
	background-color: var(--grigio-scuro);
	color: var(--bianco);
	font-weight: var(--weightnormal);
	background-image: url(assets/images/bg-footer4.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 0%;
	padding-top: 20px;
}
#footer::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-image: linear-gradient(90deg, #097EEB 0%, #E9433D 100%);
	z-index: -1;
	opacity: .85;
}
#footer h4 {
	color: var(--bianco);
}
#footer h4 span {
	position: relative;
	display: inline-block;
}
#footer h4 span:after {
	content: "";
	position: absolute;
	bottom: calc(50% - 3px);
	width: 26px;
	height: 3px;
	background-color: var(--colore);
	right: -50px !important;
}
#footer .social,
#footer ul.contatti .iconwrap {
	display: inline-block;
	margin: 6px 10px 8px 0;
	background-color: var(--bianco);
	color: var(--grigio-scuro);
	border: 2px solid var(--bianco);
	border-radius: 50px;
	width: 37px;
	height: 37px;
	text-align: center;
	line-height: 44px;
	transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}
#footer .social svg,
#footer ul.contatti .iconwrap svg {
	width: 21px;
	height: 21px;
}
#footer .social:hover,
#footer ul.contatti a:hover .iconwrap  {
	background-color: transparent;
	color: var(--bianco);
	transform: scale(1.08);
	border-color: var(--bianco);
}
#footer .footer-logo {
	display: block;
	margin: 0 0 20px 0;
	width: 159px;
}
#top-footer p.h4 {
	max-width: 500px !important;
	color: var(--bianco);
	line-height: 1.24;
}
#top-footer {
	padding-top: 75px;
	padding-bottom: 0;
	position: relative;
}
#top-footer ul {
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
}
#top-footer .menu li {
	padding: 0;
	margin: 0 0 .25rem 0;
	list-style-type: none;
}
#top-footer a,
#top-footer .menu li a {
	color: var(--bianco);
}
#top-footer a:hover,
#top-footer .menu li a:hover,
#top-footer .menu li.active a {
	color: var(--colore-4);
}
#top-footer .label {
	display: inline-block;
	margin-bottom: .2rem;
}
#top-footer .edit-link {
	display: none;
}
@media (min-width: 964px) {
	#top-footer {
		padding-left: 33px;
		padding-right: 33px;
	}
}
@media (min-width: 992px) {
	#top-footer .widget:nth-child(2) {
		transform: translateX(40px) !important;
	}
	#top-footer .widget:nth-child(3) {
		transform: translateX(60px) !important;
	}
}
@media (min-width: 1024px) {
	#top-footer {
		padding-left: 53px;
		padding-right: 53px;
	}
	#top-footer > div > .grid {
		padding-left: 40px;
		padding-right: 40px;
	} 
}
@media (min-width: 1280px) {
	#top-footer .widget:nth-child(1) > div {
		max-width: 400px;
	}
	#top-footer .widget:nth-child(2) {
		transform: translateX(90px) !important;
		
	}
	#top-footer .widget:nth-child(3) {
		transform: translateX(130px) !important;
	}
}
@media screen and (min-width: 1440px) {	
	#footer h4 {
		font-size: 1.4rem;
	}
	#top-footer {
		padding-top: 100px;
		padding-bottom: 30px;
	}
	#top-footer .widget:nth-child(1) > div {
		max-width: 430px;
	}
	#top-footer .widget:nth-child(2) {
		transform: translateX(130px) !important;
	}
	#top-footer .widget:nth-child(3) {
		transform: translateX(170px) !important;
	}	
}
@media screen and (min-width: 1600px) {	
	#top-footer .widget:nth-child(1) {
		transform: translateX(50px) !important;
	}
	#top-footer .widget:nth-child(2) {
		transform: translateX(190px) !important;
	}
	#top-footer .widget:nth-child(3) {
		transform: translateX(240px) !important;
	}	
}
@media screen and (min-width: 1800px) {	
	#top-footer .widget:nth-child(1) {
		transform: translateX(100px) !important;
	}
	#top-footer .widget:nth-child(2) {
		transform: translateX(230px) !important;
	}
	#top-footer .widget:nth-child(3) {
		transform: translateX(290px) !important;
	}	
}
@media screen and (min-width: 2200px) {	
	#top-footer .widget:nth-child(2) {
		transform: translateX(280px) !important;
	}
	#top-footer .widget:nth-child(3) {
		transform: translateX(340px) !important;
	}	
}

#sub-footer {
	padding: 23px 10px 20px;
	text-align: center;
	background-color: var(--bianco);
	color: var(--main);
	/* font-size: 0.9rem; */
}
#sub-footer p {
	margin-bottom: 0;
}
#sub-footer img {
	margin: 0 auto 40px;
}
#sub-footer a {
	color: var(--colore-4);
}
#sub-footer a:hover {
	color: var(--grigio-chiaro);
}
@media (min-width: 964px) {
	#sub-footer {
		padding-left: 30px;
		padding-right: 30px;
	}
}
@media (min-width: 1024px) {
	#sub-footer {
		padding-left: 50px;
		padding-right: 50px;
	}
}
@media screen and (min-width: 1280px) {
	#sub-footer {
		font-size: 0.95rem;
	}
	#sub-footer img {
		margin: 0 auto 45px;
	}
}
@media screen and (min-width: 1440px) {
	#sub-footer {
		font-size: 0.98rem;
		padding-top: 27px;
		padding-bottom: 25px;
	}
}


/* .bg-full::after {
	position: absolute;
	bottom: 30px;
	right: 30px;
	opacity: .2;
	z-index: -1;
	width: 90%;
	height: 50%;
	content: '';
	background-image: url(assets/images/logo.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 100% 100%;
} */


/* CONDIVISIONE SOCIAL */

.crunchify-social {
	text-align: center;
	margin-left: -40px;
	margin-right: -40px;
}
.crunchify-holder .crunchify-social {
	text-align: center;
	margin-left: 0;
	margin-right: auto;
}
.crunchify-holder p {
	font-family: var(--altfont);
	text-transform: uppercase;
	color: var(--main);
	font-weight: var(--weightnormal);
	font-size: 1rem;
	text-align: center;
}
.crunchify-link {
	padding: 6px 12px 5px 12px;
	color: var(--bianco);
	font-size: 0.77rem;
	font-weight: var(--weightbold);
	border-radius: 4px;
	margin: 0 10px 12px 0;
	cursor: pointer;
	display: inline-block;
	text-decoration: none;
}
.crunchify-link:hover,
.crunchify-link:active,
.crunchify-link:focus {
	color: var(--bianco);
}
.crunchify-twitter {
	background: #00aced;
}
.crunchify-twitter:hover,
.crunchify-twitter:active {
	background: #0084b4;
}
.crunchify-facebook {
	background: #3b5997;
}
.crunchify-facebook:hover,
.crunchify-facebook:active {
	background: #2d4372;
}
.crunchify-whatsapp {
	background: #43d854;
}
.crunchify-whatsapp:hover,
.crunchify-whatsapp:active {
	background: #26a535;
}
.crunchify-pinterest {
	background: #bd081c;
}
.crunchify-pinterest:hover,
.crunchify-pinterest:active {
	background: #bd081c;
}
.crunchify-linkedin {
	background: #0074a1;
}
.crunchify-linkedin:hover,
.crunchify-linkedin:active {
	background: #006288;
}


#ContactBox {
	position: fixed;
	width: 48px;
	bottom: 10px;
	right: 8px;
	display: flex;
	flex-flow: row;
	flex-wrap: wrap;
}
#whatsappContact,
#telephoneContact {
	width: 48px;
	height: 48px;
	margin-top: 12px;
	border-radius: 50%;
	background-image: url(assets/images/whatsapp.svg);
	background-repeat: no-repeat;
	background-size: cover;
	transition: box-shadow 0.3s,transform 0.3s;
	box-shadow: var(--box-shadow);
}
#telephoneContact {
	background-image: url(assets/images/telefono.svg);
}
#whatsappContact a,
#telephoneContact a {
	display: block;
	width: 100%;
	height: 100%;
}
#whatsappContact span,
#telephoneContact span {
	display: none;
}
#whatsappContact:hover,
#telephoneContact:hover {
	box-shadow: none;
	transform: scale(1.13);
}
@media screen and (min-width: 1280px) {
	#ContactBox {
		bottom: 12px;
		right: 10px;
	}
}

/* Chrome input yellow -> white */
input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px white inset !important;
}

/* iPhone 6, 6S, 7 and 8 Landscape */
@media only screen and (max-device-width: 902px) and (orientation: landscape) {
	
}

/* IE */
.warningIE {
	background-color: var(--colore);
	color: var(--bianco);
	text-align: center;
	padding: 10px 20px;
	font-weight: var(--weightheavy);
	text-transform: uppercase;
}
.warningIE p {
	margin-bottom: 0;
}

/* MAX */

@media screen and (max-width: 767px) {
	.mob-pt-0 {
		padding-top: 0 !important;
	}
	.no-pad-small {
		padding: 0 !important;
	}
	.mob-no-pad-bottom {
		padding-bottom: 0 !important;
	}
	.mob-no-marg-bottom {
		margin-bottom: 0 !important;
	}
}

@media screen and (max-width: 519px) {
	.mob-100 {
		width: 100% !important;
		flex: 0 0 100% !important;
	}
	.mob-50 {
		width: 50% !important;
	}
}

/* MIN - MAX */

@media screen and (min-width: 520px) and (max-width: 767px) {
	.xlsma-50 {
		width: 50%;
	}
	.xlsma-33 {
		width: 33.33%;
	}
	.my_widget ul {
		display: flex;
		flex-flow: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.my_widget ul li {
		width: 47%;
	}
}

@media screen and (min-width: 768px) and (max-width: 991px) {
	.my_widget ul {
		display: flex;
		flex-flow: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.my_widget ul li {
		width: 33.33%;
	}
}

/* MIN */

@media screen and (min-width: 768px) {
	.hide-for-tablet {
		display: none;
	}
	.grid.blocco-stretto {
		margin: 0 auto !important;
		width: 100%;
		max-width: 90%;
	}
}

@media screen and (min-width: 920px) {
	.grid.blocco-stretto {
		max-width: 80%;
	}
}

@media screen and (min-width: 1024px) {
	.grid {
		padding: 40px 20px;
	}
	.grid.no-col {
		padding: 40px;
	}
	.grid.blocco-stretto {
		max-width: 75%;
	}
}

@media screen and (min-width: 1280px) {
	.grid {
		max-width: 1100px;
	}
	.grid.blocco-stretto {
		max-width: 65%;
	}
	.llcol-25 {
		width: 25%;
	}
	.llcol-20 {
		width: 20%;
	}
}

@media screen and (min-width: 1440px) {
	/* body {
		font-size: 1.02rem;
	} */
	.xlcol-25 {
		width: 25%;
	}
	.grid {
		max-width: 1240px;
	}
	.grid.blocco-stretto {
		max-width: 940px;
	}
}
@media screen and (min-width: 1600px) {
	.grid {
		max-width: 1340px;
	}
	.xlcol-16 {
		width: 16%;
	}
	.xlcol-20 {
		width: 20%;
	}	
}
@media screen and (min-width: 1800px) {
	.xxlcol-16 {
		width: 16.6666%;
	}	
}



.grid:not(.parallax) figure.bg {
	position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: auto;
    z-index: -1; 
	bottom: 0;
	margin: 0 !important;
}
.grid:not(.parallax) figure.bg img {
	object-fit: cover;
	margin-top: 0 !important;
    max-width: none;
	width: 100%;
	height: 100%;

}


/* PARALLAX PER IMG NON BACKGROUND - more on JS */  
.parallax {
	  position: relative;
	  overflow: hidden;
}  
.parallax-background {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	/* height: 200%;   */
	height: 105%;  
	will-change: transform;  
	z-index: -1;
}
.parallax-background figure {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.parallax-background figure img {
	object-fit: cover;
    max-width: none;
	width: 100%;
	height: 100%;
	transform: translateY(-16%);
}
@media (min-width: 768px) {
	.parallax-background {
		height: 120%; 
  	}
}

#header-image .parallax-background figure img {
	transform: translateY(-9%);
}

.footer-parallax {
	height: 100px;
}
.footer-parallax .parallax-background {
	height: 400%;
	z-index: 1;
}
.footer-parallax figure img {
    transform: translateY(-27%);
}




.bg-full {
	min-height: 100vh;
}
.bg-full > .col-100 {
	display: flex;
	align-items: center;
}


@media (min-width: 1024px) {
  	.shift-right .contenuto {
		padding-left: 13rem;
		margin-top: -3.2rem;
		transform: translateX(1rem);
  	}
  	.shift-right .titolo_superiore {
		transform: translateX(-14rem) translateY(3.2rem) !important;
  	}
}
@media (min-width: 1280px) {
	.shift-right .contenuto {
	  padding-left: 11rem;
	}
	.shift-right .titolo_superiore {
	  transform: translateX(-15rem) translateY(3.2rem) !important;
	}
}
@media (min-width: 1440px) {
	.shift-right .contenuto {
	  padding-left: 16rem;
	}
	.shift-right .titolo_superiore {
	  transform: translateX(-20rem) translateY(3.3rem) !important;
	}
}
@media (min-width: 1600px) {
	.shift-right .contenuto {
	  padding-left: 18rem;	  
	}
	.shift-right .titolo_superiore {
	  transform: translateX(-22rem) translateY(3.4rem) !important;
	}
}
@media (min-width: 1800px) {
	.shift-right .contenuto {
	  padding-left: 12rem;
	  transform: translateX(6rem);
	}
	.shift-right .titolo_superiore {
	  transform: translateX(-26rem) translateY(3.5rem) !important;
	}
}
.shift-right .titolo_superiore.top {
	transform: translateX(0) translateY(0) !important;
}

@media (min-width: 2000px) {
	.shift-right .contenuto {
	  padding-left: 8rem;
	  transform: translateX(10rem);
	}
}


.shift-left .grid {
	max-width: none;
	justify-content: flex-start;
}
.shift-left .grid > div {
	border: 1px solid white;
	max-width: 70%;
}






/* CUSTOM HOME */

.shift-right ol {
	margin: 3rem 0;
	padding: 0;
	list-style-type: none;
}
.shift-right ol li {
	margin: 0;
	padding: 4.4rem 0 2.4rem 0;
	border-bottom: 1px solid var(--colore);	
}
.shift-right ol li:first-child {	
	border-top: 1px solid var(--colore);
}
.shift-right ol li::before {
	/* content: "0" counter(step-counter);	 */
	background-color: transparent;
	width: auto;
	height: auto;
	color: inherit;
	position: absolute;
	left: 0;
	text-align: left;
	display: block;
    margin-bottom: .2rem;
    letter-spacing: 0.04rem;
	top: 2.7rem;
	font-weight: var(--weightbold);
	font-size: 5.2rem;
	opacity: .15;
}

/* Solo per li da 1 a 9 */
.shift-right ol li:nth-child(-n+9)::before {
    content: "0" counter(step-counter);
}

/* Per li dal 10 in poi */
.shift-right ol li:nth-child(n+10)::before {
    content: counter(step-counter);
}

.shift-right ol .h3,
.shift-right ol h3 {
	font-size: 1.2rem;
	display: block;
	padding-bottom: 1rem;
	margin-bottom: 0;
	line-height: 1.1;
}
@media (min-width: 1024px) {
	.shift-right ol {
		margin: 4.5rem 0;
	}
	.shift-right ol li {
		padding: 2.1rem 0 2.6rem 0;
	}
	.shift-right ol li::before {
		font-size: 4.8rem;
		transform: translateX(-14rem) translateY(.4rem);
	}
}
@media (min-width: 1280px) {
	.shift-right ol li {
		display: flex;
	}
	.shift-right ol li::before {
		transform: translateX(-15rem) translateY(.4rem);
	}
	.shift-right ol .h3,
	.shift-right ol h3 {
		width: 40%;		
		padding-right: 4rem;
		padding-bottom: 0;
	}
	.shift-right ol .h3.smaller,
	.shift-right ol h3.smaller {
		font-size: 1.7rem;
	}
	.shift-right ol li p {
		width: 60%;
	}
}
@media (min-width: 1440px) {
	.shift-right ol li::before {
	  	transform: translateX(-20rem) translateY(.4rem);
	}
	.shift-right ol .h3,
	.shift-right ol h3 {
		font-size: 1.3rem;
	}
}
@media (min-width: 1600px) {
	.shift-right ol li::before {
	  	transform: translateX(-22rem) translateY(.4rem);
	}
}
@media (min-width: 1800px) {
	.shift-right ol li::before {
	  	transform: translateX(-26rem) translateY(.4rem);
	}
}



ol.griglia {
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
	justify-content: space-between;
}
ol.griglia li {
	border: none !important;
	background-color: var(--colore);
	padding: 2rem;
	width: 100%;
	margin: 0 0 1rem;
	flex-direction: column;
}
ol.griglia li::before {
	transform: translateX(0) translateY(0);
	font-size: 9rem;
	top: 3rem;
	left: .48rem;
	opacity: .12;
}
ol.griglia .h3 {
	width: 100%;
	font-size: 1.5rem;
	margin-bottom: 1rem;
	padding: 0;
}
ol.griglia p {
	width: 100% !important;
	font-size: .9rem;
}

ol.griglia li:hover {
	background-color: var(--bianco);
	color: var(--main);
}
ol.griglia li:hover .h3 {
	color: var(--colore);
}
@media (min-width: 768px) {
  	ol.griglia li {
		width: 48.66%;
	}
}
@media (min-width: 1280px) {
  	ol.griglia li {
		width: 31.86%;
	}
}
@media (min-width: 1440px) {
	ol.griglia .h3 {
		font-size: 1.65rem;
	}
}
@media (min-width: 1800px) {
	ol.griglia .h3 {
		font-size: 1.75rem;
	}
}






#contattaci {
	background-color: var(--grigio-extra-chiaro);
}
#contattaci .testo {
	padding-right: 40px;
}
@media (max-width: 781px) {
	#contattaci .wp-block-column:last-of-type {
		transform: translateY(-32px);
	}
	#contattaci .col-40 {
		padding-bottom: 60px;
	}
	.home #contattaci .titolo {
		margin-bottom: 0 !important;
	}
	.home #contattaci .testo {
		display: none;
	}
}

@media (min-width: 782px) {
	#contattaci .wp-block-column:first-of-type {
		width: 60%;
	}
	#contattaci fieldset {
		padding-right: 0;
	}
}
@media (min-width: 992px) {
	#contattaci .wp-block-column:first-of-type {
		width: 40%;
	}
}
@media (min-width: 1280px) {
	#contattaci .wp-block-column:first-of-type {
		padding-right: 40px;
	}
}
@media (min-width: 1440px) {
	#contattaci .col-60 {
		padding-left: 40px;
	 }
}




@media (min-width: 620px) {
	.colonne2.col1-pad-right-mix .item-1 .contenuto {
		padding-right: 35px;
	}
}
@media (min-width: 768px) {
	.colonne2.col1-pad-right-mix .item-1 .contenuto {
		padding-right: 50px;
	}
}
@media (min-width: 1024px) {
	.colonne2.col1-pad-right-mix .item-1 .contenuto {
		padding-right: 70px;
	}
}
@media (min-width: 1280px) {
	.colonne2.col1-pad-right-mix .item-1 .contenuto {
		padding-right: 100px;
	}
}
@media (min-width: 1800px) {
	.colonne2.col1-pad-right-mix .item-1 .contenuto {
		padding-right: 80px;
	}
}



@media (min-width: 1400px) {
	.colonne2.col2-pad-left-mix .item-2 .contenuto {
		padding-left: 30px;
	}
}
@media (min-width: 1600px) {
	.colonne2.col2-pad-left-mix .item-2 .contenuto {
		padding-left: 60px;
	}
}
@media (min-width: 1800px) {
	.colonne2.col2-pad-left-mix .item-2 .contenuto {
		padding-left: 80px;
	}
}



/* 
@media (min-width: 1024px) {
	.colonne2 .item-1 .contenuto {
		padding-right: 70px;
	}
}
@media (min-width: 1600px) {
	.colonne2 .item-1 .contenuto {
		padding-right: 90px;
	}
} */




@media (min-width: 2000px) {
	.xxl-py100 {
		padding-top: 100px !important;
		padding-bottom: 100px !important;
	}
	.xxl-py110 {
		padding-top: 110px !important;
		padding-bottom: 110px !important;
	}
	.xxl-py120 {
		padding-top: 120px !important;
		padding-bottom: 120px !important;
	}
	.xxl-py130 {
		padding-top: 130px !important;
		padding-bottom: 130px !important;
	}
}




/* ANIMAZIONI */

/* fade verticale */
.anim1 {
	opacity: 0;
}

@keyframes anim1 {
	from {
		transform: translateY(-50px);
		opacity: 0;
	}
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

/* fade left right */
.left_right {
	opacity: 0;
}

@keyframes left_right {
	from {
		transform: translateX(-50px);
		opacity: 0;
	}
	to {
		transform: translateX(0);
		opacity: 1;
	}
}

/* pop it */
.popit {
	opacity: 0;
}

@keyframes popit {
	from {
		opacity: 0;
		transform: scale(.02);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}







/* underline */
.underline.start:before { 
	animation: underline 1s .5s forwards ease-out
}
.underline-double.start:before { 
	animation: underline-double 1s .5s forwards ease-out
}
.underline-double.start:after { 
	animation: underline-double2 1s .5s forwards ease-out
}
@keyframes underline {
	0% { 
	   	width: 0;
	}
	100% {
	   	width: calc(0% + 4rem);
	}
}
@keyframes underline-double {
	0% { 
		left: -4rem;
	   	width: 0;
	}
	100% {
		left: -4rem;
	   	width: calc(0% + 2.4rem);
	}
} 
@keyframes underline-double2 {
	0% { 
		right: -3.9rem;
	   	width: 0;
	}
	100% {
		right: -3.9rem;
	   	width: calc(0% + 2.4rem);
	}
}




/* CUSTOM COMPANY HOME */ 
.company-home {
	min-height: 75vh;
}
.company-home > .col-100 {
	display: flex;
    align-items: center;
	justify-content: center;
}
.company-home h1 {
	font-size: clamp(2.5rem, 3.5vw + 1rem, 4.2rem);
	font-weight: var(--weightlight);
	text-shadow: 1px 1px 35px var(--colore-3);
}
.company-home .parallax-background figure img {
	transform: translateY(-5%);
}
@media (min-width: 580px) {
	.company-home .parallax-background figure img {
		transform: translateY(-5%);
	}
}
@media (min-width: 1280px) {
	.company-home h1 {
		padding-top: 30px;
	}
	.company-home .parallax-background figure img {
		transform: translateY(-10%);
	}
}
@media (min-width: 1440px) {
	.company-home h1 {
		padding-top: 50px;
	}
}
@media (min-width: 2000px) {
	.company-home .parallax-background figure img {
		transform: translateY(-12%);
	}
}
.company-home .overlay,
#header-image .overlay ,
.overlay.gradient {
	/* background: linear-gradient(to right, rgba(0,0,0,0.6) 0, rgba(0,0,0,0.15) 100%) !important; */
	/* background-color: transparent !important;
    background-image: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF00 100%);
    opacity: .98; */
}



/* MODULO RICHIESTA HOME */
.richiesta-small-home {
	margin-top: -150px;
}
.richiesta .contenuto {
	position: relative;	
	padding: 25px 25px 30px 25px;
	width: calc(100% - 20px);
	border-radius: 8px;
	background-image: linear-gradient(180deg, #E9433D 0%, #F1963D 100%);
	box-shadow: var(--box-shadow);
	max-width: 1100px;
}
.richiesta .inner {
	padding: 3px;
}
.richiesta .h2 {
	font-weight: var(--weightlight);
}
.richiesta .h2 .descrizione {
	font-size: .88rem;
	line-height: 1.1;
	display: inline-block;
	margin-top: 1.2rem;
}
.richiesta fieldset {
	margin: 0;
	padding: 0;
	position: relative;
}
.richiesta div.wpcf7 label,
.richiesta div.wpcf7 label a {
	color: var(--bianco);
}
.richiesta div.wpcf7 label a {
	border-bottom: 1px dashed var(--bianco);
}
.richiesta div.wpcf7 label a:hover {
	border-bottom: 1px solid var(--bianco);
}
.richiesta div.wpcf7 label:not(.privacy) {
	display: none;
}
.richiesta input.wpcf7-text, 
.richiesta .wpcf7-select {
	height: 40px;
	margin-bottom: 12px;
}
.richiesta div.wpcf7 textarea {
	min-height: 120px !important;
	margin-bottom: 0;
}
.richiesta div.wpcf7 label.privacy {
	padding-bottom: 10px;
	line-height: 1.1;
}
@media (min-width: 480px) and (max-width: 767px){
	.wpcf7 div.third {
		width: 48%;
	}
}
@media (min-width: 480px) {
	.richiesta .btn-holder {
		position: absolute;
		right: 0;
		bottom: -3px;
		text-align: right;
		width: 120px !important;
		z-index: 2;
	}
	.richiesta .button {
		margin: 0;
	}
	.richiesta .wpcf7-spinner {
		display: none;
	}
	.richiesta div.wpcf7 label.privacy {
		padding-bottom: 0;
		margin: 0;
		width: calc(100% - 130px);
		transform: translateY(7px);
	}
}
@media (min-width: 768px) {
	.richiesta-small-home {
		margin-top: -200px;
		width: calc(100% - 60px);
	}
}
@media (min-width: 992px) {
	.richiesta-small-home {
		margin-top: -130px;
	}
	.richiesta .inner {
		display: flex;
		flex-direction: row;
    	flex-wrap: nowrap;
		justify-content: space-between;
	}
	.richiesta .h2 {
		font-size: 1.85rem;
		width: 25%;
		margin-bottom: 0;
	}
	.richiesta .testo {
		padding-left: 2rem;
		width: 72%;
		border-left: 2px solid var(--bianco);
	}
}
@media (min-width: 1280px) {
	.richiesta .h2 {
		width: 23%;
	}
	.richiesta .testo {
		width: 74.3%;
		padding-left: 2.8rem;
	}
	.richiesta .contenuto {
		padding: 30px 30px 30px 30px;
	}
}

.richiesta-estesa-home::before,
.richiesta-estesa-home::after {
	content: '';
	position: absolute;
	display: block;	
	aspect-ratio: 2 / 1;
	background-image: url(assets/images/logo-g.svg);
	background-size: contain;
	background-repeat: no-repeat;
	opacity: .6;
}
.richiesta-estesa-home::before {
	z-index: 0;
	width: 200%;
	max-width: 1300px;
	top: -40px;
	left: 0;
	background-position: 0% 0%;
}
.richiesta-estesa-home::after {
	z-index: -1;
	width: 150%;
	max-width: 960px;
	bottom: 0;
	left: 72%;
	background-position: 0% 100%;	
}
@media (min-width: 1220px) {
	.richiesta-estesa-home .h2 {
		width: 33%;
		font-size: 2.2rem;
		padding-right: 2rem;
	}
	.richiesta-estesa-home .contenuto {
		padding: 30px;
	}
}
@media (min-width: 1440px) {
	.richiesta-estesa-home .h2 {
		width: 30%;
	}
	.richiesta-estesa-home .contenuto {
		padding: 35px;
	}
}




/* CATEGORIE HOME */
.categorie-home .grid {
	max-width: 1800px !important;
}
.categorie-home > .col-100 > .grid > .col-100 > .grid {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.categorie-home figure {
	margin: 0 !important;
	overflow: hidden;
	position: relative;
}
.categorie-home figure::after {
	position: absolute;
	bottom: -55px;
	left: 0px;
	color: var(--bianco);
	opacity: .45;
	font-size: 17rem;
	line-height: 1;
	font-weight: var(--weightbold);
}
.categorie-home .item:nth-child(1) figure::after {
	content: '1';
  }
  
  .categorie-home .item:nth-child(2) figure::after {
	content: '2';
  }
  
  .categorie-home .item:nth-child(3) figure::after {
	content: '3';
  }
  
  .categorie-home .item:nth-child(4) figure::after {
	content: '4';
  }
  
.categorie-home img {
	transition: filter 0.3s ease, transform 0.3s ease;  
}
.categorie-home .item:hover img {
	/* filter: blur(10px); */
	transform: scale(1.3); 
}
.categorie-home .inner {
	height: 100%;	
	color: var(--bianco);
	background-image: linear-gradient(90deg, #097EEB 0%, #4DA0F4 100%);
	border-radius: 6px;
	box-shadow: var(--box-shadow);
	overflow: hidden;
}
.categorie-home h3 {
	padding: 1.5rem .5rem .2rem 1.5rem; 
	margin-bottom: 0;
	font-size: 1.3rem;
	color: var(--bianco);
	font-weight: var(--weightheavy);
	text-transform: uppercase;
	transition: color 0.3s ease; 
}
.categorie-home h3 a {
	color: var(--bianco);
}
.categorie-home h3 a:hover {
	color: var(--colore-5);
}
.categorie-home .descrizione {
	position: relative;
	padding: 1rem 1.5rem .2rem; 
	transition: color 0.3s ease; 
	font-size: .78rem; 
	line-height: 1.3;
}
.categorie-home .descrizione a {
	color: var(--bianco);
	font-weight: var(--weightheavy);
}
.categorie-home .item:nth-child(even) .inner {
	background-image: var(--bianco);
	color: var(--main);
}
.categorie-home .item:nth-child(even) .descrizione a,
.categorie-home .item:nth-child(even) h3,
.categorie-home .item:nth-child(even) h3 a {
	color:var(--colore-3)
}
.categorie-home .item:nth-child(even) .descrizione a:hover,
.categorie-home .item:nth-child(even) h3 a:hover {
	color:var(--colore-4)
}
/* .categorie-home .inner::before {
	content: '';
	position: absolute;
	top: 15px;
	bottom: 15px;
	left: 15px;
	right: 15px;
	background-color: var(--bianco);
	opacity: .85;
	transition: opacity 0.3s ease;  
}
.categorie-home .inner:hover::before {
	opacity: .8;
	background-color: var(--colore);
} */
@media (min-width: 680px) {
	.categorie-home h3 {
		font-size: 1.45rem;
	}
}
@media (min-width: 768px) {
	.categorie-home h3 {
		font-size: 1.3rem;
	}
}
@media (min-width: 964px) {
	.categorie-home > .col-100,
	.categorie-home > .col-100 > .grid > .col-100 {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}
@media (min-width: 1024px) {
	.categorie-home h3 {
		font-size: 1rem;
	}
	.categorie-home > .col-100 > .grid,
	.categorie-home > .col-100 > .grid > .col-100 > .grid {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}
@media (min-width: 1280px) {
	.categorie-home h3 {
		font-size: 1.25rem;
	}
}
@media (min-width: 1440px) {
	.categorie-home h3 {
		font-size: 1.4rem;
		padding: 1.8rem 1.8rem .5rem; 
	}
	.categorie-home .descrizione {
		padding: 1rem 1.8rem .2rem; 
	}
}
@media (min-width: 1600px) {
	.categorie-home h3 {
		font-size: 1.5rem;
	}
}



.chi-siamo-home .testo {
	font-size: .9rem;
}




/* CUSTOM SERVIZI HOME */
.servizi-home .descrizione {
	font-size: .95rem;
	line-height: 1.3;
}
.slider-testo > div > .grid > div {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.slide-number {
	display: none;
}
.slider-testo .slick-track {
	display: flex;
}
.slider-testo .item {	
	height: auto !important;
	align-items: flex-start;
}
.slider-testo > div > .grid .slick-slide .inner {	
	z-index: 1;
	padding: 50px 30px 20px !important;
	color: var(--bianco);
}
.slider-testo figure {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.slider-testo .item figure::before,
.slider-testo .item figure::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  transition: opacity .3s ease-in-out;
}
.slider-testo .item figure::before {
  background: linear-gradient(to right, rgba(0,0,0,0.75) 0, rgba(0,0,0,0.25) 100%);
}
.slider-testo .item figure::after {
  background: linear-gradient(to right, var(--colore) 0, var(--colore) 100%);
  opacity: 0;
}
.slider-testo .item:hover figure::after {
  opacity: .8;
}
.slider-testo figure img {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.slider-testo .titolo-wrapper {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.slider-testo .slick-arrow {
	top: 46%;
}
.slider-testo .button {
	background-color: var(--colore);
}
.slider-testo .button:hover {
	background-color: var(--bianco);
	color: var(--colore);
}
@media (min-width: 992px) {
	.slider-testo .titolo-wrapper {
		width: 20%;
		display: flex;
		align-items: center;
	}
	.slider-testo .titolo-wrapper h2 {
		font-size: 2.34rem;
	}
	.slider-testo .slider-wrapper {
		width: 80%;
	}
	.slider-testo .slick-arrow {
		top: 50%;
	}
	.slider-testo .slick-arrow.slick-prev {
		display: none !important;
	}
}
@media (min-width: 1024px) {
	.slider-testo > div > .grid .slick-slide .inner {	
		padding: 50px 40px 20px !important;
	}
}
@media (min-width: 1280px) {
	.slider-testo .titolo-wrapper {
		width: 15%;
	}
	.slider-testo .titolo-wrapper h2 {
		font-size: 2.34rem;
	}
	.slider-testo .slider-wrapper {
		width: 85%;
	}
	.slider-testo h3 {
		font-size: 2rem;
	}
}
@media (min-width: 1440px) {
	.slider-testo > div > .grid .slick-slide .inner {	
		padding: 50px 45px 20px !important;
	}
}
@media (min-width: 1600px) {
	.slider-testo .titolo-wrapper {
		width: 12%;
	}
	.slider-testo .slider-wrapper {
		width: 88%;
	}
}
@media (min-width: 2200px) {
	.slider-testo .titolo-wrapper {
		width: 10%;
	}
	.slider-testo .slider-wrapper {
		width: 90%;
	}
}





/* CUSTOM FORMAZIONE HOME */ 
.formazione-home,
.formazione-home > div,
.formazione-home .col-33 {
	padding: 0 !important;
	margin: 0 !important;
}
.formazione-home > div > .grid {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
.formazione-home .col-33 {
	min-height: 250px;
	max-width: none !important;
	overflow: hidden;
}
.formazione-home figure {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	margin: 0 !important;
}
.formazione-home figure::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background: linear-gradient(to right, rgba(0,0,0,0.75) 0, rgba(0,0,0,0.25) 100%);
}
.formazione-home figure img {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100% !important;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease-in-out;
}
.formazione-home .col-33:hover img {
	transform: scale(1.09);
}
.formazione-home .inner {
	position: relative;
	z-index: 2;
	padding: 4rem 3rem;
}
.formazione-home h2.titolo {
	font-size: 2rem;
	color: var(--bianco);
}
@media (max-width: 767px) {
	.formazione-home .col-33 {
		width: 100%;
	}
}
@media (min-width: 640px) {
	.formazione-home h2.titolo {
		font-size: 2.2rem;
	}
}
@media (min-width: 768px) {
	.formazione-home .col-33 {
		min-height: 350px;
	}
	.formazione-home h2.titolo {
		font-size: 1.5rem;
	}
	.formazione-home .inner {
		padding: 4rem 2rem;
	}
}
@media (min-width: 992px) {
	.formazione-home h2.titolo {
		font-size: 1.8rem;
	}
	.formazione-home .inner {
		padding: 4rem 1rem 4rem 3rem;
	}
}
@media (min-width: 1280px) {
	.formazione-home .col-33 {
		min-height: 450px;
	}
	.formazione-home h2.titolo {
		font-size: 2.2rem;
	}
}
@media (min-width: 1440px) {
	.formazione-home .col-33 {
		min-height: 500px;
	}
	.formazione-home .inner {
		padding: 6rem 1rem 4rem 3rem;
	}
	.formazione-home h2.titolo {
		font-size: 2.5rem;
	}
}
@media (min-width: 1600px) {
	.formazione-home .col-33 {
		min-height: 550px;
	}
	.formazione-home .inner {
		padding: 6rem 1rem 4rem 4rem;
	}
	.formazione-home h2.titolo {
		font-size: 2.8rem;
	}
}
@media (min-width: 1800px) {
	.formazione-home .col-33 {
		min-height: 600px;
	}
	.formazione-home h2.titolo {
		font-size: 3rem;
	}
}






/* 
.rivenditore-home .contenuto {
	text-align: center;
}
.rivenditore-home img {
	max-width: 400px !important;
}
.rivenditore-home em {
	font-weight: var(--weightblack);
}
@media (min-width: 992px) {
	.rivenditore-home .contenuto {
		text-align: left;
	}
}
@media (min-width: 1600px) {
	.rivenditore-home img {
		max-width: 450px !important;
	}
} */



.lavora-home .parallax-background {
	height: 140%;
}
.lavora-home .parallax-background figure img {
	transform: translateY(-9%);
}




/* SLIDER CPT */
.slider-cpt {
	position: relative;
}
/* .slider-cpt:before {
	content: '';
	position: absolute;
	z-index: 0;
	display: block;	
	top: 0;
	bottom: 0px;
	left: calc(0px - 89%);
	right: calc(0px - 83%);
	background-image: url(assets/images/caputo.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 100%;
	opacity: .6;
} */
.slider-cpt .slick-list::before,
.slider-cpt .slick-list::after {
	content: '';	
	position: absolute;
	top: 0;
	bottom: 0;
	width: 30px; /* Larghezza della sfumatura */
	pointer-events: none; /* Permette agli eventi del mouse di passare attraverso l'overlay */
	z-index: 1;
}
.slider-cpt .slick-list::before {
  	left: 0;
  	background: linear-gradient(to right, var(--bianco), transparent);
}
.slider-cpt .slick-list::after {
  	right: 0;
  	background: linear-gradient(to left, var(--bianco), transparent);
}
@media (min-width: 768px) {
	.slider-cpt:before {
		left: calc(0px - 25%);
		right: calc(0px - 30%);
		background-position: 50% 101%;
	}
}
@media (min-width: 1024px) {
	.slider-cpt:before {
		left: calc(0px - 20%);
		right: calc(0px - 25%);
	}
}
@media (min-width: 1280px) {
	.slider-cpt:before {
		left: calc(0px - 40%);
		right: calc(0px - 26%);
	}
}
@media (min-width: 1600px) {
	.slider-cpt:before {
		background-position: 50% 105%;
	}
}


/* ARCHIVIO CPT */

.cpt-grid figure {
	padding: 0;
	border-radius: 6px;
	overflow: hidden;
}
.cpt-grid .wrap {
	overflow: hidden;
	position: relative;
	box-shadow: var(--box-shadow);
	max-width: 407px;
	margin: 0 auto;
}
.cpt-grid .wrap::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-image: linear-gradient(90deg, #097EEB 0%, #4da1f400 100%);
	z-index: 0;
	border-radius: 6px;
	opacity: .7;
}
.cpt-grid .wrap:hover::after {
	background-image: linear-gradient(90deg, #097EEB 0%, #4da1f400 100%);
	opacity: 1;
}
.cpt-grid .wrap img {	
	transition: filter 0.3s ease, transform 0.3s ease;  
}
.cpt-grid .wrap:hover img {
	filter: blur(10px);
	transform: scale(1.3); 
}
.cpt-grid a {
	position: relative;
}
.cpt-grid h3 {
	font-size: 1.5rem;
	line-height: 1;
    margin-bottom: 0rem;
	padding: 0 1.2rem 0 1.8rem;
	text-align: left;
	font-weight: var(--weightlight);
	position: absolute;	
	bottom: 1.5rem;
	z-index: 2;
}
.cpt-grid .titolo_item {
	color: var(--bianco);
}
.cpt-grid .wrap a:hover .titolo_item {
	color: var(--bianco);
}
.cpt-grid .cat {
	text-align: center;
	display: none;
}
.cpt-grid .cat a {
	display: inline-block;
	font-size: .55rem;
	font-weight: var(--weightmedium);
	color: var(--colore);
	padding: .14rem .3rem .11rem;
	margin: 0 .15rem;
	line-height: 1;	
	background-color: var(--bianco);
	border-radius: 2px;
	text-transform: uppercase;
}
.cpt-grid .cat a:hover {
	color: var(--bianco);
	background-color: var(--colore);
}
@media (min-width: 520px) {
	.cpt-grid h3 {
		font-size: 1.1rem;
	}
	.archive .cpt-grid h3 {
		padding-left: 1.5rem;
	}
}
@media (min-width: 992px) {
	.cpt-grid h3 {
		font-size: 1.2rem;
	}
	.archive .cpt-grid h3 {
		font-size: 1rem;
	}
}
@media (min-width: 1080px) {
	.cpt-grid h3 {
		font-size: 1.3rem;
	}
}
@media (min-width: 1280px) {
	.cpt-grid h3 {
		font-size: 1.4rem;
	}
	.archive .cpt-grid h3 {
		font-size: 1.1rem;
	}
}
@media (min-width: 1440px) {
	.cpt-grid h3 {
		font-size: 1.5rem;
		bottom: 1.8rem;
	}
	.archive .cpt-grid h3 {
		font-size: 1.3rem;
	}
}
@media (min-width: 1600px) {
	.home .cpt-grid {
		max-width: 1400px;
	}
	.post-type-archive-realizzazione .archive-grid-wrap {
		margin-right: -4px;
		width: calc(100% + 150px);
	}
	.archive .cpt-grid h3 {
		font-size: 1.4rem;
	}
}
@media (min-width: 1800px) {
	.home .cpt-grid {
		max-width: 1600px;
	}
	.post-type-archive-realizzazione .archive-grid-wrap {
		margin-right: -4px;
		width: calc(100% + 250px);
	}
	.post-type-archive-realizzazione .archive-grid-wrap .cpt-grid {
		max-width: 1500px;
	}
	.archive .cpt-grid h3 {
		font-size: 1.4rem;
	}
}


.slick-prev,
.slick-next {
	top: 44% !important;
	left: 10px !important;
	width: 36px !important;
	height: 36px !important;
	padding: 0 !important;
	border: 1px solid var(--grigio-chiaro) !important;
	background-color: var(--bianco) !important;
	box-shadow: var(--box-shadow);
}
.slick-prev:hover,
.slick-next:hover {
	box-shadow: none;
}
.slick-next {
	right: 11px !important;
	left: auto !important;
}
.slick-next:before {
	width: 12px !important;
	height: 12px !important;
	left: 9px !important;
	top: 11px !important;
	border-radius: 0;
}
.slick-prev:before {
	width: 12px !important;
	height: 12px !important;
	left: 13px !important;
	top: 11px !important;
	border-radius: 0;
}
.slick-next:after,
.slick-prev:after {
	display: none;
}
@media (min-width: 1080px) {
	.slick-prev {
		left: -34px !important;
	}
	.slick-next {
		right: -34px !important;
	}
}
@media (min-width: 1280px) {
	.slick-prev {
		left: -44px !important;
	}
	.slick-next {
		right: -44px !important;
	}
}




/* SCHEDA single-book */
/*
.books-slider {
	padding: 0;
	margin: 0 -5px;
}
.books-slider .item {
	padding: 0 !important;
	margin: 0 !important;
}
.books-slider .item a {
	width: 100% !important;
	padding: 5px;
}
.books-slider .item img {
	width: 100%;
}
*/

.dett_modello_cont {
	background-color: var(--grigio-extra-chiaro);
	border-bottom: 1px solid var(--grigio-molto-chiaro);
}
.dett_modello {
	font-size: 1.55rem;
	font-weight: var(--weightbold);
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
	justify-content: space-between;
}
.dett_modello h2 {
	font-size: 1.55rem;
	font-weight: var(--weightmedium);
	margin-bottom: 0;
}
.modello {
	padding-right: 3rem;
}
.euro_prezzo {
	color: var(--colore);	
}



.scheda-tecnica table tr:nth-child(odd) td {
	background-color: var(--grigio-extra-chiaro);
}
.scheda-tecnica table td:first-of-type {
	font-weight: var(--weightheavy);
}


.testo-home {
    font-size: .9rem;
}


.categorie-home {
	/* background-image: linear-gradient(180deg, #F3F3F3 0%, #F3F3F3 100%); */
	background-image: linear-gradient(180deg, rgba(243, 243, 243, 1) 0%, rgba(243, 243, 243, 0) 100%);

}
.ragioni img {
	background-color: var(--bianco);
	border-radius: 50%;
	box-shadow: var(--box-shadow-3);
	padding: 1rem;
	border: 2px solid var(--colore-3);
}
.ragioni h3 {
	margin-bottom: 0;
}


/* SCHEDA REALIZZAZIONE */
@media (min-width: 964px) {
	.gallery .grid, 
	.gallery.grid {
		margin-left: -50px;
		margin-right: -50px;
		width: calc(100% + 100px);
	}
}
@media (min-width: 1024px) {
	.gallery .grid, 
	.gallery.grid {
		margin-left: -100px;
		margin-right: -100px;
		width: calc(100% + 200px);
	}
}



.cards .grid {
	justify-content: flex-start;
}
.cards .item {
	margin-bottom: .8rem !important;
} 
.cards .inner {
	height: 100%;
} 
.cards .descrizione {
	background-color: var(--grigio-molto-chiaro);
	padding: 2rem 2rem 1.5rem;
	margin: 0;
	border-radius: 6px;
	height: 100%;
	/* box-shadow: inset 
	0 0 0.5px 1px hsla(22.35deg 100% 50% / 30%), 
	0 0 0 1px hsla(0, 0%, 0%, 0.05), 
	0 0.3px 0.4px hsla(0, 0%, 0%, 0.02), 
	0 0.9px 1.5px hsla(0, 0%, 0%, 0.045), 
	0 2px 15px hsla(0, 0%, 0%, 0.09); */
}
.cards .descrizione strong {
	line-height: 1.1;
}
.cards .descrizione p {
	margin-bottom: 1.1rem;
}
.cards .descrizione ul {
	padding: 0;
	margin: 0 0 0 1rem;
}


.single-realizzazione h3.titolo {
	text-align: center;
}







@media (min-width: 782px) {
  	.richiesta-contatto .wp-block-column:first-of-type {
		width: 30%;
	}
	.richiesta-contatto .wp-block-column:last-of-type {
		width: 70%;
	}
}
@media (min-width: 1440px) {
  .richiesta-contatto .wp-block-column:last-of-type {
	  padding-left: 40px;
  }
}