/*TIPOGRAFIA*/
#page *{
	font-family: "Titillium Web", sans-serif;
}
p{
	font-size:20px;
}
a{
	text-decoration:none;
}
.page h2,
.page h3,
.page h4,
.page h5,
.page h6{
	color:var(--wp--preset--color--secondary);
	font-weight:600;
}
.page h2{
	font-size:36px;
}
.page h3{
	font-size:32px;
}
.page h4{
	font-size:28px;
}
.page h5{
	font-size:26px;
}
.page h6{
	font-size:24px;
}
/*WOORDPRESS*/
html, body{
    max-width: 100%;
    
}
html {
    scroll-behavior: smooth;
  }
::-webkit-scrollbar {
    width: 5px;
}
 ::-webkit-scrollbar-track {
    box-shadow: inset 0 0 5px grey; 
 }
::-webkit-scrollbar-thumb,
::-webkit-scrollbar-thumb:hover{
    background: var(--wp--preset--color--quaternary); 
    border-radius: 5px;
}
::selection{
    background: rgba(89, 169, 223, 40%);
}
/*HEADER*/
.fadeInDownMenu {
    width: 100%;
	background: linear-gradient(45deg, var(--wp--preset--color--secondary) 30%, var(--wp--preset--color--tertiary) 100%);
    position: fixed !important;
    top: 0;
    z-index: 4;
    -webkit-transition: all 0.8s cubic-bezier(0.68, 0, 0.29, 1);
    -moz-transition: all 0.8s cubic-bezier(0.68, 0, 0.29, 1);
    transition: all 0.8s cubic-bezier(0.68, 0, 0.29, 1);
    opacity: 1;
    -webkit-animation: fadeInDown 1s alternate ease;
    -moz-animation: fadeInDown 1s alternate ease;
    animation: fadeInDown 1s alternate ease;
    -moz-box-shadow: 0px 10px 50px 0px rgba(0,0,0,0.2);
}
#content.site-content div.header{
	padding-top:97px;
	background:linear-gradient(45deg, var(--wp--preset--color--secondary) 30%, var(--wp--preset--color--tertiary) 100%);
}
.container-header{
	position: absolute;
    width: 100%;
}
#masthead.navigationFixedTop{
	background:#FFF;
	border-bottom:solid 2px var(--wp--preset--color--secondary) !important;
}
#masthead.navigationFixedTop .brand a img{
	width:200px;
}
#masthead{
	padding: 20px;
    display: flex;
    justify-content: flex-start;
    background: transparent;
    max-width: 1400px;
    margin: 0 auto;
    position: relative;
}
#masthead > nav{
	display:none;
}
.menu-hamburger .logo img,
#masthead .brand .logo img{
	max-width:120px;
}
#masthead .hamburger{
	display: flex;
    gap: 5px;
    align-items: flex-start;
    flex-direction: column;
	align-items: center;
	position:relative;
}
#masthead .hamburger .hamburger-checkbox{
    position: fixed;
    display: block;
    height: 24px;
    width: 30px;
    top: 36px;
    right: 15px;
    z-index: 9999;
    opacity: 0;
    cursor: pointer;
}
#masthead .hamburger .hamburger-lines {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 16px;
    width: 27px;
    z-index: 9998;
    float: right;
    position: fixed;
    margin: 20px;
    right: 0px;
}
#masthead .hamburger .hamburger-lines .line {
    display: block;
    height: 2px;
    width: 100%;
    border-radius:10px;
    background:#FFFFFF;
}
#masthead .hamburger .hamburger-lines .line1 {
    transform-origin: 0% 0%;
    transition: transform 0.4s ease-in-out;
}
#masthead .hamburger .hamburger-lines .line2 {
    transition: transform 0.2s ease-in-out;
}
#masthead .hamburger .hamburger-lines .line3 {
    transform-origin: 0% 100%;
    transition: transform 0.4s ease-in-out;
}
#masthead .hamburger:has(.hamburger-checkbox:checked) > span::before {
  content: "chiudi";
}
#masthead .hamburger .hamburger-checkbox:checked ~ .menu-hamburger {
    right:0vw;
}
#masthead .hamburger .hamburger-checkbox:checked + .hamburger-lines .line1 {
    transform: rotate(45deg) translateY(-3px);
}
#masthead .hamburger .hamburger-checkbox:checked + .hamburger-lines .line2 {
    transform: scaleY(0);
}
#masthead .hamburger .hamburger-checkbox:checked + .hamburger-lines .line3 {
    transform: rotate(-45deg) translatey(3px);
}
#masthead .hamburger .menu-hamburger{
	position: fixed;
	background:rgba(255,255,255,0.9);
	z-index:999;
	width: 100%;
	height: 100%;
	right:-100vw;
	top: 0;
    transition: .5s;
}
#masthead .hamburger .menu-hamburger #site-navigation{
	background:var(--wp--preset--color--quaternary);
	height: 100%;
	width: 100%;
	max-width:886px;
	float: right;
    display: grid;
    grid-template-columns: 1fr;
    padding: 5%;
    align-items: start;
}
.menu-hamburger .menu-menu-hamburger-container{
	grid-column: 1 / span 2;
}
.menu-hamburger #menu-hamburger{
	font-size: 28px;
    line-height: 52px;
	font-weight:bold;
	color:#FFF;
}
.menu-hamburger #menu-footer li a{
	font-size:18px;
	line-height:72px;
	font-weight:normal;
	color:#2B388F;
}
.menu-hamburger .social-channel span{
	font-size:16px;
	line-height:16px;
	font-weight:bold;
	color:#2B388F;
}
.menu-hamburger .social-channel a{
	font-size: 14px;
    line-height: 14px;
    font-weight: normal;
    color: #2B388F;
    display: flex;
    align-items: center;
    gap: 20px 5px;
    margin-bottom: 8px;
}
ul#menu-hamburger > li.wpml-ls-item{
	margin:50px 0;
}
nav ul li.wpml-ls-item{
	display:flex;
	gap: 10px;
}
nav ul li.wpml-ls-item > a img{
	border:solid 2px #FFF;
	border-radius: 100px;
}
nav ul li.wpml-ls-item > ul li a img{
	border:solid 2px transparent;
	opacity:0.8;
}
@media(min-width:768px){	
	#masthead{
		display:grid;
		grid-template-columns:260px 1fr;
	    align-items: center;
	}
	#masthead .hamburger{
		display: flex;
		justify-content: flex-end;
		gap: 5px;
		align-items: flex-start;
		flex-direction: row;
	}
	#masthead .hamburger .menu-label::before {
		font-size:20px;
	}
}
@media(min-width:1024px){
	#masthead .hamburger {
		display:none;
	}
	#masthead > nav {
		display: block;
	}
	#masthead > nav ul{
		display: flex;
        justify-content: flex-end;
        gap:36px;
	}
	#masthead > nav ul li a{
		color:#FFFFFF;
		font-weight:600;
		font-size:16px;
        line-height: 32px;
		width: initial;
	}
	#masthead > nav ul li:not(.button) a{
        background: linear-gradient(to right, var(--wp--preset--color--yellow) 50%, #FFF 50%);
        background-size: 200% 100%;
        background-position: right;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        transition: background-position 0.4s ease;
	}
	#masthead > nav ul li:not(.button) a:hover {
	  background-position: left;
	}
	#masthead > nav ul li.button a{
		background:var(--wp--preset--color--yellow);
		color:var(--wp--preset--color--secondary);
		font-weight:bold;
		padding:0 15px;
		border-radius:7px;
		transition: background 0.4s ease;
	}
	#masthead > nav ul li.button a:hover{
		box-shadow:0px 0px 10px rgba(0,0,0,0.5);
	}
	#masthead > nav ul li.wpml-ls-item > ul li a img:hover{
		opacity:1;
	}
}
@media(min-width:1440px){
	#masthead {
		padding: 20px 0;
	}
	#content.site-content div.header{
		padding-top:117px;
	}
	#masthead .brand .logo img{
		max-width:370px;
	}
	#masthead > nav ul li a{
		color:#FFFFFF;
		font-weight:600;
		font-size:20px;
	}
}
div.header{
	background:linear-gradient(45deg, var(--wp--preset--color--secondary) 30%, var(--wp--preset--color--tertiary) 100%);
}
div.header .header-content *{
	color:#FFFFFF;
	margin:0;
}
section[class^="section-"],
div.reviews,
div.content,
div.team > div,
div.standard-block,
div.customer > div,
div.contacts > div,
div.quarters > div,
div.case-studies > div,
div.case-study > div,
div.related-service .our-services,
div.related-service .related-service-content,
div.header .header-content{
	padding:50px 20px;
	max-width:1400px;
	margin:0 auto;
	position:relative;
}
div.header .header-content h1{
	font-weight: 600;
	font-size:36px;	
	display: inline-block;
	margin-bottom:20px;
}
.header-content > div > h1,
.header-content > div > h2,
.header-content > div > p {
	opacity: 0;
	transform: translateX(-40px);
	transition: all 0.8s ease;
}
.header-content > div > h1.visible,
.header-content > div > h2.visible,
.header-content > div > p.visible {
	opacity: 1;
	transform: translateX(0);
}
body:not(.home):not(.page-template-prism-single-post):not(.single-post):not(.single-case_studies) div.header .header-content h1,
.archive.category div.header .header-content h1,
.single-servizi div.header .header-content h1{
	border-bottom: solid 4px var(--wp--preset--color--red)
}
div.header::before{
	content:"";
	width:100%;
	height:2px;
	display:block;
	background:rgba(255,255,255,0.25);
}
@media(min-width:768px){
	.archive.category div.header .header-content p{
		transform: translateY(-62,5%);
	}
	body:not(.home):not(.page-template-prism-single-post):not(.single-post):not(.single-case_studies):not(.archive.category) div.header .header-content h1,
	.archive.category div.header .header-content h1,
	.single-servizi div.header .header-content h1,
	.page-template-servizi-single-post div.header .header-content h1{
		position: absolute;
		font-weight: 600;		
		border-bottom: solid 4px var(--wp--preset--color--red);
		top: 50%;
		transform: translateY(-50%);
	}
	div.header .header-content h1{
		font-size: 48px;
	}
}
@media(min-width:1200px){
	div.case-studies > div{
		padding:100px 20px;
	}
}
@media(min-width:1440px){
	section[class^="section-"],
	div.reviews.bottom,	
	div.team > div,
	div.standard-block,
	div.customer > div,
	div.contacts > div,
	div.quarters > div,
	div.case-study > div,
	div.related-service .related-service-content,
	div.related-service .our-services,
	body.home div.header .header-content,
	div.case-studies > div{
		padding:100px 0;
	}
	body:not(.home) div.content,
	body:not(.home) div.header .header-content{
		padding:50px 0;
	}
	#colophon .reviews{
		padding-left: 0;
		padding-right: 0;
	}
}
/*HOME*/
/*Prima sezione*/
body.home .header-content h1{
	font-size:42px;
	line-height:42px;
	font-weight:600;
}
body.home .header-content h1 strong{
	font-weight:600;
	color:var(--wp--preset--color--yellow);
}
body.home .header-content h2{
	font-size:24px;
	line-height:36px;
	font-weight:600;
    margin: 0 0 10px 0;
}
body.home .header-content p{
	font-size:18px;
	line-height:28px;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ffb900;
    color: #000;
}
body.home .header-content form{
	background:#FFFFFF;
	padding:20px;
	margin:20px 0;
}
body.home .header-content form h3{
	font-size:36px;
	line-height:36px;
	font-weight:bold;
	color:var(--wp--preset--color--primary);
}
body.home .header-content form h4{
	font-size:24px;
	line-height:36px;
	font-weight:bold;
	color:var(--wp--preset--color--secondary);
}
body.home .header-content form select,
body.home .header-content form input{
	border:solid 1px #C8C8C8;
	border-radius:7px;
	background:#FFFFFF;
	color:#000000;
}
body.home .header-content form input:not(input[type="checkbox"]):focus-visible,
body.home .header-content form select:focus-visible {
    outline-color:var(--wp--preset--color--secondary);
}
body.home .header-content form .privacy span.wpcf7-list-item-label,
body.home .header-content form label{
	font-size:13px;
	color:var(--wp--preset--color--secondary);
	font-weight:600;
    line-height: 13px;
}
body.home .header-content form label{
	padding:0 10px;
}
body.home .header-content form .privacy span.wpcf7-list-item-label a{
	color:var(--wp--preset--color--yellow);
}
body.home .header-content form select option[value=""],
body.home .header-content form select option:first-child,
body.home .header-content form input::placeholder{
	color: #5d5d5d;
	font-size:13px;
	font-style: italic;
}
body.home .header-content form select option{
	color:#000000;
}
body.home .header-content form .wrapper{
	margin:0 0 20px 0;
}
body.home .header-content form .wrapper.submit{
	margin:0px;
}
body.home .header-content form .wrapper.submit p,
body.home .header-content form .wrapper.submit p input[type="submit"]{
	display: flex;
    color: #FFFFFF;
}
body.home .header-content form input[type="submit"]{
	border:none;
}
@media(min-width:768px){
	body.home .header-content h1{
		font-size:48px;
		line-height:48px;
		font-weight:600;
	}
	form #home{
		width:100%;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap:10px 10px;
	}
	form #home h3,
	form #home h4,
	form #home .submit,
	form #home .privacy{
		grid-column: 1 / span 2;
	}
	body.home .header-content form .wrapper{
		margin:0 0 10px 0;
	}
}
@media(min-width:1024px){
	body.home .header-content{
		display: grid;
        grid-template-columns: 50% 45%;
        gap: 20px 0;
        justify-content: space-between;
		align-items: center;
	}
	body.home .header-content form{
		margin:0;
	}
	body.home .header-content h1{
		font-size:58px;
		line-height:58px;
	}
}
@media(min-width:1200px){
	body.home .header-content{
        grid-template-columns: 50% 40%;
	}
	body.home .header-content h1{
		font-size:66px;
		line-height:66px;
	}
}
/*servizi*/
.wrapper-related-service-content{
	background:var(--wp--preset--color--quaternary);
}
body.home .related-service-content h2{
	color:var(--wp--preset--color--quaternary);
	text-transform:uppercase;
	font-size:32px;
	margin:0;
	text-align:center;
}
body.home .related-service-content > div > p{
	text-align:center;
	color:var(--wp--preset--color--primary);
	max-width:768px;
	margin: 0 auto 50px auto;
	display:block;
}
.single-servizi #content div.content div ul,
.single-servizi #content div.content div ol{
	margin-left:0px;
	padding-left:25px;
}
@media(min-width:768px){
	body.home .related-service-content h2{
		font-size:48px;
	}
}
/*Recensioni*/
.reviews > div > h2{
	color: var(--wp--preset--color--red);
    font-size: 48px;
    margin: 0;
}
.reviews > div > p{
	color: var(--wp--preset--color--quaternary);
	font-weight:bold;
    font-size:17px;
    margin: 0;
}
.slider-recensioni{
	/*margin: -80px 0 100px 0;*/
	margin: -80px 0 0 0;
    padding: 100px 0 0 0;
}
/*.slider-recensioni ul li > figure{
	flex-shrink: 0;
    box-sizing: border-box;
    margin: 0px;
    display: flex;
    aspect-ratio: 2 / 1;
}*/
.slider-recensioni ul li > p{
	border-top:solid 12px var(--wp--preset--color--quaternary); 
	color: var(--wp--preset--color--quaternary);
	font-weight:bold;
    font-size:22px;
	line-height:30px;
	font-style:italic;
	padding: 10px 0 30px 0;
    margin: 0;
}
.slider-recensioni ul li > div > p{
	font-size:17px;
	margin:0;
	color: var(--wp--preset--color--quaternary);
}
/* slider */
.block-slider {
    overflow: hidden;
    width: 100%;
    display: inline-block;
    padding:0px;
}
.swiper-wrapper{
	transition-timing-function: linear !important;
}
.block-slider .container {
    padding: 0px;
    width: 100%;
}
.block-slider .container .sommario-speciale p {
    display: none;
}
.block-slider .container .slider {
    position: relative;
}
.block-slider .container .slider.slider-loghi .article-slide {
    flex-shrink: 0;
    box-sizing: border-box;	
    padding:20px;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
}
.block-slider .container .slider .article-slide img{
    max-width: 80%;
    max-height: 80%;
    object-fit: contain;
}
.block-slider .container .slider .nav {
    width: 90px;
    margin: -20px auto 0;
    background: var(--color-azzurroChiaro);
}
.block-slider .container .slider .nav a {
    float: left;
    width: 30px;
    height: 30px;
    margin-left: 10px;
    border: 3px solid var(--wp--preset--color--quaternary);
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border .2s ease;
}
.block-slider .container .slider .nav a:first-child,
.block-slider .container .slider .nav a:last-child {
    border-radius:0;
}
.block-slider .container .slider .nav a:hover {
    border-color:var(--wp--preset--color--quaternary);
}
.block-slider .container .slider .nav a svg {
    width: 20px;
    height: 20px;
}
.block-slider .container .slider .nav a svg path {
    fill: var(--color-blue) !important;
}
.block-slider .container .slider .nav:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.block-slider .container .slider .wrapper {
    display: flex;
    width: fit-content;
    list-style: none;
    padding: 0 0 30px 0;
    margin: 0px;
}
.block-slider .container .slider:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 100%;
    background-image: linear-gradient(270deg, #fff 0%, rgba(255,255,255,0) 96%);
    z-index: 2;
    display: none;
}
.block-slider .article-slide:last-child {
    margin-right: 50px;
}
.block-slider .nav {
    height: 40px;
    position: absolute;
    top:25px;
	right: 10px;
}
@media (min-width: 768px) {
	.block-slider .nav {
		top: 50px;
	}
    .block-slider .nav a {
        width: 40px;
        height: 40px;
        margin-left: 16px;
    }
    .block-slider .wrapper {
        width: calc(100% - 100px);
    }
    .block-slider .article-slide {
        font-size: 16px;
        padding-right: 16px;
    }
    .block-slider .article-slide:last-child {
        margin-right: 100px;
    }
    .block-slider .container > article {
        display: grid;
        grid-template-columns: 47% calc(53% - 30px);
        gap: 30px;
    }
}
@media (min-width: 992px) {
    .block-slider .slider {
        overflow: hidden;
    }
    .block-slider .slider:after {
        display: block;
    }
    .block-slider .article-slide {
        padding-right: 24px;
    }
}

/*case study*/
.case-study{
	background:var(--wp--preset--color--quaternary);
	color:#FFFFFF;
}
.case-study h2{
	font-size:36px;
	margin:0 0 10px 0;
}
.case-study h3{
	font-size:28px;
	line-height:28px;
	font-weight:700;
	margin:0 0 6px 0;
}
.case-study > div > article > div:first-child > div p{
	font-size:15px;
}
.case-study h2,
.case-study h3,
.case-study article > div > div > div > p strong{
	color:var(--wp--preset--color--yellow);
}
.case-study article div span{
	color:var(--wp--preset--color--orange);
	font-weight:600;
	font-size:17px;
	line-height:17px;
	display: block;
}
.case-study article div p{
	font-size:17px;
	margin:0px;
}
.case-study > div > article > div:first-child > div{
    margin: 20px 0;
    display: flex;
    gap:10px 30px;
    flex-direction: column;
}
.case-study article div figure{
	margin:0;
}
.case-study article div figure img{
	width:100%;
	border-radius:10px;
}
.case-study > div > article > div:last-child > div > div{
	display: flex;
    gap: 10px;
	padding: 30px 0;
}
.case-study > div > article > div:last-child > div > div:not(:last-child){
    border-bottom: solid 3px rgba(255, 255, 255, 0.16);   
}
.case-study article > div > div > div > p:first-child{
	font-size:42px;
	line-height:42px;
	display: block;
}
@media(min-width:768px){
	.case-study h2{
		font-size:48px;
	}
	.case-study h3{
		font-size:32px;
		line-height:32px;
	}
	.case-study > div > article > div:first-child > div{
		flex-direction: row;
	}
	.case-study > div > article > div:last-child > div > div {
		align-items: center;
	}
	.case-study > div > article > div:first-child > div > div {
		flex-basis: 33.33%;
		flex-grow: 1;
	}
}
@media(min-width:1024px){
	.case-study > div > article{
		display:grid;
		grid-template-columns:calc(65% - 100px) 35%;
		gap:0 100px;
	}
	
	.case-study article > div > div > div > p:first-child{
		font-size:56px;
		line-height:56px;
	}
}
.table-scroll{
	border:1px solid #ccc;
	border-radius: 24px;
	overflow-x: auto;
	margin: 25px 0;
}
@media(max-width:768px){
	.table-scroll{
		width: 100%;
        
        -webkit-overflow-scrolling: touch;
	}
	.table-scroll table{
		min-width: 600px; /* o 700px se vuoi più respiro */
		width: 100%;
	}
}
.standard-block h2 {
  display: flex;
  flex-direction: column;
  gap: 10px; /* distanza tra le due righe */
}
.standard-block h2 .rotator {
	text-align: left;
	display: inline-block;
	position: relative;
	min-width: 260px;
	vertical-align: bottom;
	position: relative;
	display: block;
	min-height: 1.2em;
}
.standard-block h2 .rotator strong {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transform: translateX(-40px);
	animation: slideRightClean 10s linear infinite;
	white-space: nowrap;
	position: absolute;
	right: 0;
	top: 0;
	opacity: 0;
	white-space: nowrap;
}
/* Ritardi per ogni parola */
.standard-block h2 .rotator strong:nth-of-type(1) { animation-delay: 0s; }
.standard-block h2 .rotator strong:nth-of-type(2) { animation-delay: 2s; }
.standard-block h2 .rotator strong:nth-of-type(3) { animation-delay: 4s; }
.standard-block h2 .rotator strong:nth-of-type(4) { animation-delay: 6s; }
.standard-block h2 .rotator strong:nth-of-type(5) { animation-delay: 8s; }
@keyframes slideRightClean {
  0%   { opacity: 0; transform: translateX(-20px); }
  5%   { opacity: 1; transform: translateX(0); }
  18%  { opacity: 1; transform: translateX(0); }
  20%  { opacity: 0; transform: translateX(20px); }
  100% { opacity: 0; }
}
.standard-block{
	position:relative;
}
div.standard-block div a{
    font-weight:700;
    font-size: 20px;
    line-height: 40px;
    color: var(--wp--preset--color--secondary);
    background: var(--wp--preset--color--yellow);
    padding: 0 40px;
    border-radius: 5px;
    height: 40px;
    display: inline-flex;
}
div.standard-block figure img{
	width:100%;
	height:auto;
	margin:20px 0 0 0;
}
div.standard-block.prism h2 strong{
		font-style:italic;
		color:var(--wp--preset--color--yellow);
	}
@media(min-width:768px){	
	div.standard-block h2{
		font-size:48px !important;
		margin:0 0 20px 0 !important;
	}
	.standard-block.prism:after {
		content: "";
		display: block;
		position: absolute;
		border: solid 10px #F8F8F8;
		top: 100px;
		left: -30px;
		width: 90%;
		height: 60%;
		z-index: -1;
		border-radius: 35px;
	}
	.standard-block h2 .rotator {
		text-align: right;
	}
}
@media(min-width:1024px){
	div.standard-block{
		display:grid;
		grid-template-columns:1fr 1fr;       
		gap:100px;
		align-items: center;
	}
	div.standard-block figure img{
		margin:0;
	}
}
@media(min-width:1400px){
	div.standard-block{
		min-height: 700px;
	}
	div.standard-block.prism h2{
		font-size:78px !important;
		line-height:78px;
	}
}
@media(min-width:1440px){
	.standard-block.prism:after {
        content: "";
        display: block;
        position: absolute;
        border: solid 10px #F8F8F8;
        top: 205px;
        left: -30px;
        width: 90%;
        height: 50%;
        z-index: -1;
        border-radius: 35px;
    }
}
/*single-servizi*/
.related-service{
	background:#F8f8f8;
}
.related-service div.service{
	display:grid;
	grid-template-columns:1fr;
	gap:50px 0;
}

.related-service .head h2,
.related-service .head h3{
	font-size:36px;
	font-weight:600;
	color:var(--wp--preset--color--quaternary);
	margin:0px;
}
.related-service .head p{
	margin:0 0 20px 0;
}
.related-service article.service {
	background:#FFF;
	padding:60px 25px;
	border-radius:28px;
	text-align:center;
	opacity: 0;
	transform: translateY(30px) scale(1);
	transition: all 0.6s ease;
}
.related-service article.service.visible {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.related-service article.service:hover {
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	transform: translateY(0) scale(1.05);
}
.related-service article.service h3{
	margin:0px;
	font-size:32px;
	font-weight:900;
	color:var(--wp--preset--color--quaternary);
}
.related-service article.service hr{
	margin: 20px auto;
    width: 50px;
    height: 4px;
    border-radius: 50px;
    background:var(--wp--preset--color--tertiary);
}
.related-service article.service p{
	margin:0px;
	font-size:17px;
}
div.related-service .our-services > div > h2{
	font-size:36px;
	margin:0;
	font-weight:600;
	border-bottom: solid 4px var(--wp--preset--color--tertiary);
    display: block;
    width: fit-content;
	color:var(--wp--preset--color--quaternary);
}
div.related-service .our-services > div > p{
	margin:0px;
}
div.related-service .our-services .service article{
	display: grid;
    grid-template-columns: 75px 1fr;
    align-items: center;
    gap: 10px;
}
div.related-service .our-services .service article h3{
	margin:0px;
	font-weight:600;
	font-size: 24px;
	color:var(--wp--preset--color--primary);
}
div.related-service .our-services .service article div{
	display:flex;
}
.single-servizi #content div.content h2,
.page-template-servizi-single-post div.content h2{
	color:var(--wp--preset--color--secondary);
	margin: 0;
    font-weight: 600;
	font-size:36px;
}
.single-servizi #content div.content h3,
.page-template-servizi-single-post div.content h3{
	color:var(--wp--preset--color--secondary);
	margin: 0;
    font-weight: 600;
	font-size:32px;
}
.single-servizi #content div.content p,
.page-template-servizi-single-post div.content p{
	margin:0 0 20px 0;
}
.wrapper-related-service-content .head *{
	color:#FFFFFF !important;
}
@media(min-width:768px){
	div.related-service .our-services > div{
		display: flex;
		align-items: center;
		gap: 50px;
	}
	.single-servizi main#primary div.content{
		display: grid;
		grid-template-columns:100px 1fr;
		gap: 30px;
	}
	.page-template-servizi-single-post main#primary div.content{
		display: grid;
		grid-template-columns:80px 1fr;
		gap: 30px;
	}
	.single-servizi div.content > div > img,
	.page-template-servizi-single-post div.content > div > img{
		position:sticky;
		top:160px;
	}
	.single-servizi .related-service article.service{
		padding:85px 35px;
	}
	.related-service .head h2,
	.related-service .head h3,
	div.related-service .our-services > div > h2{
		font-size:48px;
	}
	.related-service .related-service-content div.service {
		grid-template-columns: 1fr 1fr;
		gap: 50px;
	}
	.related-service .our-services div.service{
		display: flex;
		flex-direction:row;
		flex-wrap:wrap;
		gap: 50px;
		margin: 50px 0;
	}
}
@media(min-width:1024px){
	.related-service .related-service-content div.service {
		grid-template-columns: 1fr 1fr 1fr;
	}
	div.related-service .our-services > h2{	
	    float: left;
		margin: 0 60px 0 0;
	}
}
@media(min-width:1400px){
	.related-service .our-services div.service{
		flex-wrap:nowrap;
	}
}
/*BLOG*/
.single-post div.header .header-content h1{
	margin-bottom:10px;
}
.single-post #content div.content > div > div > div:last-child,
.single-post div.header .header-content > div > div{
	display: flex;
    gap: 10px;
    margin:20px 0 40px 0;
}
.single-post div.header .header-content > div svg path{
	fill:#FFFFFF;
}
.single-post #content div.content > div > div > div:last-child svg path{
	fill:var(--wp--preset--color--quaternary);
}
.single-post #content div.content > div > div:last-child > p{
	font-weight:600;
	font-size:20px;
	margin:0px;
}
.single-post #content div.content > div > div:last-child ul{
	list-style:none;
	padding:0;
	margin:0px;
}
.single-post #content div.content > div > div:last-child ul li a{
	font-size: 17px;
    margin-bottom: 10px;
    display: block;
    color: var(--wp--preset--color--secondary);
    transition: color 0.4s ease;
    border-bottom: solid 1px #ccc;
    padding-bottom: 10px;
}
.single-post #content div.content > div > div:last-child ul li a:hover{
	color: var(--wp--preset--color--primary);
}
.single-post #content div.content > figure{
	margin:0;
}
.single-post #content div.content > figure img{
	width:100%;
	height:auto;
	margin: -100px 0 35px 0;
}
.single-post #content div.content div div:first-child h2,
.single-post #content div.content div div:first-child h3{
	font-weight:bold;
	color:var(--wp--preset--color--primary);
	margin:0 0 10px 0;
}
.single-post #content div.content div div:first-child h2{
	font-size:28px;
}
.single-post #content div.content div div:first-child h3{
	font-size:24px;
}
.single-post #content div.content div div:first-child p{
	font-size:17px;
	margin:0 0 20px 0;
}
.single-post #content div.content div div:first-child ul,
.single-post #content div.content div div:first-child ol{
	margin-left:0px;
	padding-left:25px;
}
.single-post #content div.content div div:first-child a{
	color:var(--wp--preset--color--red);
}
.archive.category main,
.page-id-312 main,
.page-id-69 main{
	background:#F8F8F8;
}
.archive.category main div.header .header-content::after,
.page-id-312 main div.header .header-content::after,
.page-id-69 main div.header .header-content::after{
	content:"";
	display:block;
	height:50px;
	width:100%;
}
.archive.category main .content article,
.page-id-312 main .content article,
.page-id-69 main .content article{
	background: #FFFFFF;
    border-radius: 28px;
    display: inline-block;
    margin: 0 0 50px 0;
}
.page-id-312 main .content article:nth-child(1),
.page-id-69 main .content article:nth-child(1),
.archive.category .content article:nth-child(1){
    border-radius:0 0 28px 28px;
	margin-top:-100px;
}
.page-id-69 main .content article a img,
.page-id-312 main .content article a img,
.archive.category .content article a img{
	width:100%;
}
.page-id-69 main .content article:not(:nth-child(1)) a img,
.page-id-312 main .content article:not(:nth-child(1)) a img,
.archive.category .content article:not(:nth-child(1)) a img{
	border-radius:28px 28px 0 0;
}
.page-id-312 main .content article h3,
.page-id-69 main .content article h3,
.archive.category .content article h3{
	font-size:32px;
	font-weight:bold;
	color:var(--wp--preset--color--primary);
	margin:30px 20px 15px 20px;
}
.page-id-312 main .content article > div,
.page-id-69 main .content article > div,
.archive.category main .content article > div{
	margin:0 20px 15px 20px;
	color:var(--wp--preset--color--quaternary);
}
.page-id-312 main .content article > div p,
.page-id-69 main .content article > div p,
.archive.category main .content article > div p{
	margin:0px;
}
.page-id-312 main .content article > p,
.page-id-69 main .content article > p,
.archive.category main .content article > p{
	margin: 0 20px 30px 20px;
}
.page-id-69 main .content article > p > a,
.page-id-312 main .content article > p > a,
.archive.category main .content article > p > a{
	color:var(--wp--preset--color--quaternary);
	font-size:15px;
	font-weight:bold;
	display: flex;
    align-items: center;
    gap: 5px;
}
.page-id-69 main .content article > p > span > a,
.page-id-312 main .content article > p > span > a,
.archive.category main .content article > p > span > a{
	color:var(--wp--preset--color--quaternary);
	font-size:15px;
	font-weight:bold;
}
.page-id-312 #content div.content div:last-child > div,
.page-id-69 #content div.content div:last-child > div,
.archive.category main .content div:last-child > div{
	border-radius:28px;
	background: #FFFFFF;
}
.page-id-69 #content div.content div:last-child > div > p,
.page-id-312 #content div.content div:last-child > div > p,
.archive.category #content div.content div:last-child > div > p{
	color:var(--wp--preset--color--secondary);
	font-size:24px;
	font-weight:bold;
	padding:0 20px;
	margin: 0;
	line-height:60px;
	background:#F2EFF6;
	border-radius:28px 28px 0 0;
}
.page-id-69 #content div.content div:last-child > div > ul,
.page-id-312 #content div.content div:last-child > div > ul,
.archive.category #content div.content div:last-child > div > ul{
	list-style:none;
	margin:0;
	padding:0;
}
.page-id-69 #content div.content div:last-child > div > ul li,
.page-id-312 #content div.content div:last-child > div > ul li,
.archive.category #content div.content div:last-child > div > ul li{
	font-size:20px;
	font-weight:bold;
	margin:0 20px;
	padding:0 10px;
}
.page-id-69 #content div.content div:last-child > div > ul li:not(:last-child),
.page-id-312 #content div.content div:last-child > div > ul li:not(:last-child),
.archive.category #content div.content div:last-child > div > ul li:not(:last-child){
	border-bottom:solid 2px #F2EFF6;
}
.page-id-69 #content div.content div:last-child > div > ul li a,
.page-id-312 #content div.content div:last-child > div > ul li a,
.archive.category #content div.content div:last-child > div > ul li a{
    line-height: 66px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

@media(min-width:768px){
	.archive.category div.header .header-content p{
		transform: translateY(-125%);
	}
	.page-id-69 div.header .header-content h1,
	.page-id-312 div.header .header-content h1,
	.archive.category div.header .header-content h1{
		transform: translateY(-100%);
	}
	.page-id-69 div.header .header-content h1,
	.page-id-312 div.header .header-content h1{
		top: 35% !important;
	}
	.single-post #content div.content > figure img{
		border-radius:0 0 28px 28px;
	}
	.single-post #content div.content > div{
		display: grid;
		padding:0 65px;		
		grid-template-columns: 1fr;
	}
	.page-id-312 main .content article > p,
	.page-id-69 main .content article > p,
	.archive.category main .content article > p{
		display: flex;
		justify-content: space-between;
	}
	.page-id-312 main .content article h3,
	.page-id-69 main .content article h3,
	.archive.category .content article h3{
		margin:30px 40px 15px 40px;
	}
	.page-id-312 main .content article > div,
	.page-id-69 main .content article > div,
	.archive.category main .content article > div,
	.page-id-312 main .content article > p,
	.page-id-69 main .content article > p,
	.archive.category main .content article > p{
		margin: 0 40px 30px 40px;
	}
}
@media(min-width:1024px){
	.page-id-69 #content div.content,
	.page-id-312 #content div.content,
	.archive.category #content div.content{
		display: grid;	
		grid-template-columns: 1fr 300px;
		gap: 60px;
	}
	.single-post #content div.content > div{
		grid-template-columns: 1fr 300px;
		gap: 60px;
	}
	.page-id-69 #content div.content div:last-child > div,
	.page-id-312 #content div.content div:last-child > div,
	.archive.category #content div.content div:last-child > div{
		position:sticky;
		top:150px;
	}
}
/*Chi siamo*/
.contacts,
.customer,
.case-studies,
.team{
	background:#F8F8F8;
	margin:0px;
}
.team > div > h2{
	font-size:36px;
	font-weight:600;
	color:var(--wp--preset--color--quaternary);
	text-align:center;
}
.team > div > div{
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 50px;
}
.team > div > div div.team-member{
	flex-basis:190px;
    opacity: 0;
	transition: all 0.9s ease;
}
.team > div > div div.team-member.visible{
	opacity: 1;
}
.team > div > div div.team-member img{
	width:100%;
	height:auto;
}
.team > div > div div.team-member h3{
	font-size:24px;
	font-weight:bold;
	color:var(--wp--preset--color--quaternary);
	margin:0px;
	text-align:center;
}
.team > div > div div.team-member p{
	color:var(--wp--preset--color--quaternary);
	font-size:16px;
	margin:0px;
	text-align:center;
}
form #chi-siamo{
	background:#F8F8F8;
	border-radius:28px;
	padding:50px;
	width:100%;
	display: grid;
    grid-template-columns: 1fr 1fr;
	gap:10px 10px;
}
form #chi-siamo h3,
form #chi-siamo .telefono,
form #chi-siamo .email,
form #chi-siamo .messaggio,
form #chi-siamo .privacy,
form #chi-siamo .submit{
	grid-column: 1 / span 2;
}
form #chi-siamo h3{
	margin:0;
	font-weight:bold;
	font-size:20px;
	color:var(--wp--preset--color--orange);
}
form #chi-siamo label{
	font-weight:600;
	font-size:13px;
	color:var(--wp--preset--color--primary);
	padding:0 10px;
}
form #chi-siamo input,
form #chi-siamo textarea{
	background:#FFFFFF;
	border-radius:7px;
}
form #chi-siamo input::placeholder,
form #chi-siamo textarea::placeholder{
	color: #5d5d5d;
	font-size:13px;
	font-style: italic;
}
form .privacy .wpcf7-list-item{
	margin:0px !important;
}
form .privacy .wpcf7-list-item label{
	padding: 0px !important;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
}
form .privacy .wpcf7-list-item label a{
	color:var(--wp--preset--color--yellow);
}
.page-id-73 .content h2,
.page-id-73 .content h3{
	font-size:36px;
	font-weight:bold;
	color:var(--wp--preset--color--secondary);
}
@media(min-width:1024px){
	.page-id-73 #content .content{
		display:grid;
		grid-template-columns:60% 35%;
		gap:5%;
	}
	.team > div > div div.team-member{
		flex-basis:240px
	}
}
/*Clienti*/
.customer > div{
	display: grid;
    justify-content: center;
    gap: 50px;
    grid-template-columns:1fr;
}
.customer > div > div{
    background: #FFFFFF;
    border-radius: 28px;
    padding: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1; /* box sempre quadrato */
	opacity: 0;
    transform: translateY(20px);
    transition: all 0.3s ease;
}
.customer > div > div.visible {
    opacity: 1;
    transform: translateY(0);
}
.customer > div > div img {
    max-width: 80%;
    max-height: 80%;
    object-fit: contain;
}
@media(min-width:768px){
	.customer > div{
		grid-template-columns: 1fr 1fr;
	}
}
@media(min-width:1024px){
	.customer > div{
		display: grid;
		justify-content: center;
		gap: 50px;
		grid-template-columns:1fr 1fr 1fr 1fr;
	}
}
/*Contatti*/
.contacts > div,
.quarters > div{
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 50px;
}
.contacts > div > div {
    flex: 1 1 250px;
    max-width: 420px;
    text-align: center;
}
.contacts > div > div{
    background: #FFFFFF;
    border-radius: 28px;
    padding: 50px;
	text-align:center;
}
.contacts > div > div > *{
	margin:0px;
}
.contacts > div > div > p strong{
	color:var(--wp--preset--color--secondary);
	font-size:28px;
}
.contacts > div > div > p{
	color:var(--wp--preset--color--quaternary);
}
.contacts > div > div > a{
	font-weight: bold;
    font-size: 24px;
    line-height: 24px;
    color: var(--wp--preset--color--red);
    background: var(--wp--preset--color--yellow);
    margin-top: 50px;
    padding: 0 40px;
    border-radius: 5px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.quarters div div p{
	margin:0px;
	color:var(--wp--preset--color--quaternary);
}
.quarters > div div p:last-child{
	font-size:15px;
	color:var(--wp--preset--color--quaternary);
}
.quarters > div > div{
    display: flex;
	position: relative;
    gap: 8px;
}
.quarters > div > p{
	font-size: 32px;
	line-height:26px;
    font-weight: bold;
	margin:0px;
    /*position: absolute;
    top: -108px;
    left: 0px;*/
}
div.quarters > div{
    padding:200px 20px;
	/*justify-content: flex-start;*/
}
/*THANKYOU*/
.page-id-871 div.header .header-content{
	padding:0px !important;
}
.page-id-871,
.page-id-871 .related-service,
.page-id-871 #content.site-content div.header{
	background:var(--wp--preset--color--tertiary);
}
.page-id-871 article .content{
	text-align:center;
	padding:150px 0 !important;
}
.page-id-871 article .content h1{
	font-weight:900;
	font-size:48px;
	line-height:48px;
	margin:0px;
	color:var(--wp--preset--color--secondary);
}
.page-id-871 article .content p{
	color:#FFFFFF;
}
.page-id-871 article .content a{
	background: var(--wp--preset--color--yellow);
    color: var(--wp--preset--color--secondary);
    font-weight: bold;
    padding: 0 15px;
    border-radius: 7px;
    transition: box-shadow 0.4s ease;
    line-height: 32px;
    width: max-content;
    display: block;
    margin: auto;
    min-width: 160px;
}
.page-id-871 article .content a:hover{
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
}
.page-id-871 article .related-service::before {
    content: "";
    width: 100%;
    height: 2px;
    display: block;
    background: rgba(255, 255, 255, 0.25);
}
@media(min-width:768px){
	.page-id-871 article .content h1{
		font-weight:900;
		font-size:66px;
		line-height:66px;
	}
}
/*404*/
.error404,
.error404 .related-service,
.error404 #content.site-content div.header{
	background:var(--wp--preset--color--quaternary);
}
.error404 div.header .header-content{
	padding:0px;
}
.error404 article .content{
	text-align:center;
}
.error404 article .content h1{
	font-weight:900;
	font-size:10vw;
	margin:0px;
	color:var(--wp--preset--color--secondary);
}
.error404 article .content p{
	color:#FFFFFF;
}
.error404 article .related-service::before {
    content: "";
    width: 100%;
    height: 2px;
    display: block;
    background: rgba(255, 255, 255, 0.25);
}
/*CASE STUDY*/
#case-studies {
    scroll-margin-top: 120px;
}
.single-case_studies .header-content div:last-child{
	display: flex;
    align-items: flex-end;
}
.single-case_studies .header-content div:last-child img{
	border-radius: 10px;
    width: 100%;
    height: auto;
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.25);
    margin-bottom: -43px;
}
.single-case_studies .header-content div:first-child > p{
	font-weight:600;
	font-size:17px;
	color:var(--wp--preset--color--orange);
}
.single-case_studies .header-content div:first-child > h1{
	font-size:40px;
	line-height:48px;
}
.single-case_studies .header-content div:first-child > div{
	display: flex;
    align-items: flex-start;
	gap:20px;
	margin: 0 0 50px 0;
	flex-direction: column;
}
.single-case_studies .header-content div:first-child > div > div{
	display: flex;
    align-items: center;
	position: relative;
	flex-direction: row;
	gap: 20px;
}
.single-case_studies .header-content div:first-child > div > div span{
	color:var(--wp--preset--color--yellow);
	font-weight:bold;
}
.single-case_studies .header-content div:first-child > div > div span:first-child{
	font-size:36px;
	line-height:36px;
}
.single-case_studies .header-content div:first-child > div > div span:last-child{
	font-size:16px;
}
.single-case_studies .content div:first-child h2{
	font-size:26px;
}
.single-case_studies .content div:first-child h3{
	font-size:23px;
}
.single-case_studies .site-content .content div:first-child h2,
.single-case_studies .site-content .content div:first-child h3{
	color:var(--wp--preset--color--secondary);
	font-weight:bold;
}
.single-case_studies .site-content .content div:last-child > div{
	border: solid 3px #E3E3E3;
    display: flex;
    width: 80%;
    margin: 20px 10%;
    padding: 25px;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 1;
}
.single-case_studies .site-content .content div:last-child > div img{
    object-fit: contain;
}
.single-case_studies .site-content .content div:last-child > p{
	font-size: 17px;
	margin: 0 10% 0 10%;
}
.single-case_studies .site-content .content div:last-child > p:not(:last-child){
    margin: 0 10% 30px 10%;
    padding: 0 0 30px 0;
    border-bottom: solid 3px #E3E3E3;
}
.single-case_studies .site-content .content div:last-child > p strong{
	color:var(--wp--preset--color--secondary);
}
@media(min-width:768px){
	.single-case_studies .header-content div:first-child > div{
		display: flex;
		align-items: flex-start;
		gap:50px;
		margin: 0 0 50px 0;
		flex-direction: row;
	}
	.single-case_studies .header-content div:first-child > div > div{
		flex-direction: column;
		gap:0;
	}
	.single-case_studies .header-content div:first-child > div > div:not(:last-child):after{
		content: "";
		display: block;
		width: 3px;
		height: 80%;
		border-radius: 10px;
		background: #FFF;
		position: absolute;
		right: -26px;
		top: 10%;
		opacity: 0.15;
	}
	.single-case_studies .header-content div:first-child > div > div span:first-child{
		font-size:56px;
		line-height:56px;
	}
}
@media(min-width:1024px){
	.single-case_studies .header-content,
	.single-case_studies .site-content .content{
		display: grid;
        grid-template-columns: 55% 42%;
        gap: 3%;
		padding: 50px 0 25px 0 !important;
	}
	.single-case_studies .header-content div:first-child > div {
		margin: 0 0 0 0;
	}
}
div.case-studies > div > div:first-child{
	display: grid;
    grid-template-columns: 1fr;
    gap: 50px 0;
}

div.pagination{
    display: flex;
    justify-content: center;
    margin: 5% 0;
    gap: 20px;
    font-size: 14px;
}
div.pagination .page-numbers.current{
	font-weight:bold;
}
div.case-studies > div > div > article{
	background: #FFF;
    padding: 40px;
    border-radius: 28px;
	display: grid;
    gap: 20px 0;
}
div.case-studies > div > div > article h3{
	margin:0px;
	color:var(--wp--preset--color--quaternary);
}
div.case-studies > div > div > article > div p{
	font-size:17px;
}
div.case-studies > div > div > article > div:last-child{
    display: grid;
    grid-template-columns: 55% 45%;
    gap: 5%;
    align-items: center;
}
div.case-studies > div > div > article > div:last-child figure{
	margin:0;
	display: flex;
    align-items: center;
}
div.case-studies > div > div > article > div:last-child figure img{
	max-width: 80%;
    max-height: 80%;
    object-fit: contain
}
div.case-studies > div > div > article > div:last-child a{
	color: var(--wp--preset--color--quaternary);
    font-size: 15px;
    font-weight: bold;
    display: flex;
    align-items: center;
    gap: 5px;
}
@media (min-width: 768px) {
    div.case-studies > div > div:first-child{
        grid-template-columns: 1fr 1fr;
        gap: 50px;
    }
	div.case-studies > div > div > article > div:last-child{
		grid-template-columns: 65% 30%;
	}
}
@media (min-width: 1024px) {
    div.case-studies > div > div:first-child{
        grid-template-columns: 1fr 1fr 1fr;
    }
}



/*FORM*/
select,
input:not(input[type="checkbox"]) {
    height:45px;
	width: 100%;
    padding: 0 15px !important;
    border-radius:0px;
	background:#F2F4F2;
	border: 0;
}
input:not(input[type="checkbox"]):focus-visible{
    outline-color: transparent;
}
#prism div .wpcf7-not-valid-tip,
#chi-siamo div .wpcf7-not-valid-tip,
#home div .wpcf7-not-valid-tip{
    font-size: 12px;
	line-height: 18px;
    text-transform: lowercase !important;
    color: var(--wp--preset--color--red) !important;
}
#prism div:not(.privacy) .wpcf7-not-valid-tip,
#chi-siamo div:not(.privacy) .wpcf7-not-valid-tip,
#home div:not(.privacy) .wpcf7-not-valid-tip{
    position: absolute;
    right: 10px;
    bottom: -16px;
    z-index: 1;
    background: #FFFFFF;
    display: block;
    padding: 0 5px;   
}
input[type="submit"]{
    background-color: var(--wp--preset--color--yellow) !important;
    color: var(--wp--preset--color--secondary) !important;
    border: none;
	border-radius:7px !important;
	height:48px !important;
	width: 100% !important;
	padding:0 20px !important;
	line-height:18px;
	font-weight:bold;
	font-size:20px;
	white-space: normal;
	cursor: pointer;
}
input[type="number"]{
    width: 100px;
    margin-left: 15px;
    margin-top: 8px;
}
.wrapperMenu{
    display: flex;
    justify-content: flex-start;
    gap: 60px;
}
.wrapperMenu p{
    width: 50%;
}
input[type="checkbox"] {
    appearance: none;
    background-color: #fff;
    margin:0 4px 0 0 !important;
    font: inherit;
    color: currentColor;
    width: 1.15em;
    height: 1.15em;
    border: 0.15em solid currentColor;
    border-radius: 0.15em;
    transform: translateY(-0.075em);
    display: grid;
    place-content: center;
    float: left;
}

.form-control + .form-control {
	margin-top: 1em;
}
input[type="checkbox"]::before {
	content: "";
	width: 0.65em;
	height: 0.65em;
	transform: scale(0);
	transition: 120ms transform ease-in-out;
	box-shadow: inset 1em 1em var(--form-control-color);
	background-color: CanvasText;
	transform-origin: bottom left;
	clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
input[type="checkbox"]:checked::before {
	transform: scale(1);
}
input[type="checkbox"]:focus {
	outline: max(2px, 0.15em) solid currentColor;
	outline-offset: max(2px, 0.15em);
}
.checkboxFlex label{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
}
textarea{
	max-height:150px;
    padding:8px;
    border-radius:0px;
	background:#F2F4F2;
	border: 0;
}
.wrapper > p{
	margin:0px;
}
form.wpcf7-form{
    display: grid;
    gap: 15px;
}
.prev-form-content form.wpcf7-form{
	height: 70svh;
}
.wpcf7-spinner{
	display:none;
}
.site-content{
	/*padding: 0 20px;*/
}
form.wpcf7-form .submit{
	position: relative;
	margin-bottom:60px;
}
form.wpcf7-form #chi-siamo .submit > p{
	position: absolute;
    bottom: -80px;
}
/*PRISM*/
body.page-template-prism-single-post .header .header-content > div{
	display:grid;
}
body.page-template-prism-single-post .header .header-content > div:first-child > img{
	max-width:348px;
	width:50%;
}
body.page-template-prism-single-post .header .header-content > div > div > a{
	border-radius:5px;
	height:37px;
	line-height:36px;
	padding:0 15px;
	font-size:20px;
	font-weight:bold;
	text-align: center;
    display: inline-block;
	margin: 10px 15px 10px 0;    
}
body.page-template-prism-single-post .header .header-content > div > div > a:first-child{
	background:var(--wp--preset--color--yellow);
	color:var(--wp--preset--color--secondary);
	border:solid 1px var(--wp--preset--color--yellow);
}
body.page-template-prism-single-post .header .header-content > div > div > a:not(:first-child){
	background:trasparent;
	color:#FFF;
	border:solid 1px #FFF;
}
body.page-template-prism-single-post .header .header-content div p{
	font-size:25px;
	font-weight:600;
}
section[class^="section-"] h2{
	margin:0px;
	font-weight:bold;
}
section.section-1 > div > div > p{
	margin-top:0;
}
section.section-2 > h2,
section.section-3 > h2,
section.section-4 > h2{
	color: var(--wp--preset--color--quaternary);
	text-align:center;
}
section.section-2 > h2,
section.section-4 > h2{
	margin-bottom:30px;
}
section.section-3 > div > div > h2{
	color: var(--wp--preset--color--quaternary);
	margin-bottom:20px;
}
section.section-3 > div > div > div > p{
	margin-top:0;
}
section.section-2 > div,
section.section-4 > div{
    display: grid;
    grid-template-columns: 1fr;
    gap: 50px 0;
	margin: 0 0 50px 0;
}
section.section-2 > div > div,
section.section-4 > div > div{
	background: #FFF;
    padding: 60px 25px;
    border-radius: 28px;
    text-align: center;
	opacity: 0;
	transform: translateY(30px) scale(1);
	transition: all 0.6s ease;
}
section.section-2 > div > div.visible,
section.section-4 > div > div.visible{
	opacity: 1;
	transform: translateY(0) scale(1);
}
section.section-2 > div > div > h3,
section.section-4 > div > div > h3 {
    margin: 0px;
    font-size:30px;
    font-weight: 900;
    color: var(--wp--preset--color--quaternary);
}
section.section-2 > div > div > hr,
section.section-4 > div > div > hr{
    margin: 20px auto;
    width: 50px;
    height: 4px;
    border-radius: 50px;
    background: var(--wp--preset--color--tertiary);
}
section.section-2 > div > div > p,
section.section-4 > div > div > p{
	font-size:17px;
	margin-bottom:0px
}
.metrics-table {
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    background: #fff;
}
.metrics-table thead th {
    background: #eff4ff;
    color: #24428c;
}
.metrics-table th, .metrics-table td {
    padding: 18px 18px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid #e9eef7;
	font-size: 20px !important;
}
/*.metrics-table {
    width: 100%;
    table-layout: fixed; /* opzionale ma utile */
}*/

.metrics-table thead {
    display: table-header-group;
    width: 100%;
}

.metrics-table tbody {
    display: table-row-group;
    width: 100%;
}

.metrics-table tr {
    display: table-row;
}

.metrics-table th,
.metrics-table td {
    display: table-cell;
}
form #prism h4{
	color:var(--wp--preset--color--quaternary);
	font-size:20px;
	margin:0;
}
form #prism .wrapper label{
	font-size:13px;
	color:var(--wp--preset--color--secondary);
	margin:0 6px;
	font-weight:600;
}
form #prism .wrapper p input:not(.wpcf7-submit),
form #prism .wrapper p textarea{
	background:transparent;
	border:solid 1px #C8C8C8;
	border-radius:7px;
}
section.section-5 > div:first-child{
	text-align:center;
    margin: 6% 0;
}
section.section-5 form #prism input[type="submit"]{
	width: max-content !important;
    padding: 0 35px !important;
}
section.section-5 .richiedi-demo p{
	margin-top:0;
}
@media(min-width:768px){
	body.page-template-prism-single-post .header .header-content > div > div > a{
		margin: 20px 15px 20px 0;
	}
	body.page-template-prism-single-post .header .header-content{
		display:grid;
        align-items: center;
        grid-template-columns:48% 1fr;
        gap:12%;
	}
	section.section-1{
		display:grid;
        align-items:start;
        grid-template-columns:60% 1fr;
        gap:6%;
	}
	section[class^="section-"] h2{
		font-size:48px;
		line-height:48px;
        color:var(--wp--preset--color--quaternary);
	}
	section.section-2 > div{
        grid-template-columns: 1fr 1fr;
        gap:30px;
    }
	section.section-4 > div{
        grid-template-columns: 1fr 1fr 1fr;
        gap:30px;
    }
	form #prism{
		width: 100%;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px 10px;
	}
	form #prism h4, form #prism .email, form #prism .messaggio, form #prism .privacy, form #prism .submit{
		grid-column: 1 / span 2;
	}
}
@media (min-width: 1024px) {
    section.section-2 > div{
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
	section.section-3 > div:last-child{
		display: grid;
		grid-template-columns:1fr 1fr;
		gap: 6%;
		margin-top: 6%;
	}
	section.section-5 .richiedi-demo{
		display: grid;
        grid-template-columns: calc(40% - 60px) 60%;
        gap: 60px;
        margin-top: 3%;
	}
}
@media(min-width:1200px){
	body.page-template-prism-single-post .header .header-content h1{
		font-size:66px;
		line-height:66px;
	}
}


/*FOOTER*/
#colophon{
	background:#09070D;
	padding:17px 0 0 0;
}
#colophon > .content{
	max-width:1400px;
	margin:auto;
}
#colophon .logo img {
    max-width: 120px;
	margin:0 0 10px 0;
}
#colophon > .content{
	padding-bottom:0px;
}
#colophon > .content p,
#colophon > .content ul li a{
	color:rgba(255,255,255,1);
	font-size:13px;
	margin:0;
}
#colophon > .content ul li a{
	background: linear-gradient(to right, var(--wp--preset--color--yellow) 50%, #FFF 50%);
    background-size: 200% 150%;
    background-position: right;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: background-position 0.4s ease;
}
#colophon > .content ul li a:hover{
	        background-position: left;
}
#colophon > div > div > div > div{
	margin: 0 0 20px 0 !important;
}
#colophon div label{
	font-weight: 600;
    color: rgba(255, 255, 255, 0.32) !important;
    margin: 0 0 4px 0 !important;
    font-size: 14px;
    width: 100%;
    display: block;
	text-transform: uppercase;
}
#colophon > div > div > div > div > p{
	color:rgba(255,255,255,1) !important;
	font-weight:bold;
}
#colophon div nav ul{
	margin:0 0 40px 0;
	padding:0px;
	list-style: none;
}
#colophon div nav ul li a,
#colophon > div > div > div > div > div > p{
	font-size: 18px !important;
    line-height:22px;
    display: block;
    margin: 0 0 15px 0 !important;
}
#colophon > div > div > div > div > div > p{
	font-weight:600;
	font-size: 22px !important;
}
#colophon > div > div > div > div > div > p:after{
	content:"";
	display:block;
	width:20px;
	height:1px;
	background:#FFF;
	margin:20px 0;
}
#colophon .reviews{
	padding-top:0;
}
#colophon .reviews:before{
	content: "";
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.32);
    display: block;
    margin: 9px 0;
}
#colophon .reviews label{
	margin: -21px 0 4px 0 !important;
	background:#09070D;
	padding:0 10px 0 0;
    display: table-caption;
}
#colophon .reviews > div{
	display: flex;
    align-items: flex-start;
    gap: 20px;
}
#colophon .reviews > div a {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-start;
}
#colophon > div > div > div > p{
	color:rgba(255, 255, 255, 0.32) !important;
}
#colophon > .content > div > div:first-child > div:last-child > div{
	margin-bottom:15px;
}
#colophon .reviews a{
	transition: color 0.4s ease;
}
#colophon .reviews a:hover{
	color:rgba(255, 255, 255, 0.82) !important;
}
@media(min-width:768px){
	#colophon > .content nav ul{
		padding:0;
	}
	#colophon > .content > div{
		display:grid;
		grid-template-columns:20% 80%;
	}
	#colophon > .content > div > div:last-child > div:first-child{
		display:grid;
		grid-template-columns:30% 25% 45%;
	}
}
@media(min-width:1024px){
	#colophon > .content > div {
        display: grid;
        grid-template-columns: 30% 60%;
        gap: 0 10%;
    }
	#colophon > .content > div > div:first-child{
		display: grid;
        grid-template-columns: 1fr 1fr;
	}
}
@media(min-width:1200px){
	#colophon > .content nav ul {
        display:grid;
		grid-template-columns:1fr 1fr;
		        gap: 0 20px;
    }
	#colophon > .content > div > div:last-child > div:first-child{
		grid-template-columns:30% 20% 50%;
	}
	#colophon div nav ul {
		margin: 0 0 60px 0;
	}
}
@media(min-width:1440px){
	/*#colophon > .content > div {
        display: grid;
        grid-template-columns:18% 82%;
    }*/
	#colophon > .content > div > div:last-child > div:first-child{
		grid-template-columns:30% 15% 55%;
	}
}