/*!
Theme Name: Brega & Partners
Theme URI: https://studiobrega.it
Author: DilloStudio
Author URI: https://dillo.studio/
*/


@font-face {
    font-family: "BDOGrotesk-Regular";
    font-style: normal;
    font-stretch: normal;
	font-weight: normal;
    font-display: swap;
    src: url('fonts/BDOGrotesk-Regular.woff2') format('woff2');
}

@font-face {
    font-family: "BDOGrotesk-DemiBold";
    font-style: normal;
    font-stretch: normal;
	font-weight: normal;
    font-display: swap;
    src: url('fonts/BDOGrotesk-DemiBold.woff2') format('woff2');
}

@font-face {
    font-family: "Gambarino-Regular";
    font-style: normal;
    font-stretch: normal;
	font-weight: normal;
    font-display: swap;
    src: url('fonts/Gambarino-Regular.woff2') format('woff2');
}


*{
	margin: 0;
	padding: 0;
	text-decoration: none;
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6, p, span {
	font-weight: normal;
}


input:focus, textarea:focus, select:focus{
  outline: none;
}

body{
	font-family: "BDOGrotesk-Regular";
	font-weight: normal;
}


.grid{
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 28px;
	padding: 0px 60px;

	gap: clamp(20px, 2vw, 28px);
	padding: 0 clamp(20px, 5vw, 60px);
}

:root{
	--testiSfondoBianco: #777777;
	--testiSfondoScuro: #D9E9FC;
	--bluScuro: #051247;
	--arancio: #F18F01;
	--bianco: #fff;
	--nero: #000;
	--grigioSfondi: #F6F6F6;
	--grigioBordi: #D2D2D2;
	--link: #5B8CC4;
	--turchese: #D9E9FC;

}



.display{
	font-size: 70px;

	line-height: 1;
	font-family: "Gambarino-Regular";
}

h1,
.h1{
	font-size: 61px;

	line-height: 1;
	font-family: "Gambarino-Regular";
}

h2{
	font-size: 48px;

	line-height: 1;
	font-family: "Gambarino-Regular";
}

h3{
	font-size: 33px;

	line-height: 1;
}

h4{
	font-size: 25px;

	line-height: 1;
}

h5{
	font-size: 22px;

	line-height: 1;
}

.copyBig{
	font-size: 25px;

	line-height: 1.4;
}

p, .copy, .argomentoPost ul, span{
	font-size: 16px;

	line-height: 1.4;
	color: var(--testiSfondoBianco);
	font-weight: normal;
}

.links{
	font-size: 16px;

	line-height: 1.4;
}

.copySmall{
	font-size: 13px;
}

.cta{
	font-size: 13px;

	line-height: 1;
}

.ftrElements p,
.ftrElements a{
	font-size: 12px;

	font-family: "BDOGrotesk-Regular";
}

.ftrLinks span,
.ftrLinks a,
.ftrLinks p{
	font-size: 14px;

	color: var(--bianco);
}


.metrics h5{
	font-size: 100px;

	font-family: "Gambarino-Regular";
	line-height: 1;
}


.p3-sl1 h1,
.p5-sl1-text h1{
	font-size: 100px;

}


/***************** tipografia fluida *************************/


html { font-size: 16px; }

.display {
    font-size: clamp(3.125rem, 2.767rem + 1.786vw, 4.375rem); /* Display: 50px → 70px */
}
h1, .h1 {
    font-size: clamp(2.625rem, 2.404rem + 1.339vw, 3.8125rem); /* H1: 42px → 61px */
}
h2 {
    font-size: clamp(2rem, 1.893rem + 1.071vw, 3rem); /* H2: 32px → 48px */
}
h3 {
    font-size: clamp(1.4375rem, 1.309rem + 0.714vw, 2.0625rem); /* H3: 23px → 33px */
}
h4 {
    font-size: clamp(1.375rem, 1.354rem + 0.268vw, 1.5625rem); /* H4: 22px → 25px */
}
h5 {
    font-size: clamp(1.125rem, 1.095rem + 0.357vw, 1.375rem); /* H5: 18px → 22px */
}
.copyBig {
    font-size: clamp(1.375rem, 1.354rem + 0.268vw, 1.5625rem); /* Copy Big: 22px → 25px */
}
p, .copy, .argomentoPost ul, span {
    font-size: clamp(0.8125rem, 0.796rem + 0.214vw, 1rem); /* P, copy, span, ul: 13px → 16px */
}
.links {
    font-size: clamp(0.8125rem, 0.796rem + 0.214vw, 1rem); /* Links: 13px → 16px */
}
.copySmall {
    font-size: clamp(0.625rem, 0.609rem + 0.214vw, 0.8125rem); /* Copy Small: 10px → 13px */
}
.cta {
    font-size: 0.8125rem; /* CTA: 13px (fisso) */
}
.ftrElements p, .ftrElements a {
    font-size: 0.75rem; /* Footer Elements: 12px (fisso) */
}
.ftrLinks span, .ftrLinks a, .ftrLinks p {
    font-size: clamp(0.8125rem, 0.804rem + 0.089vw, 0.875rem); /* Footer Links: 13px → 14px */
}
.metrics h5 {
    font-size: clamp(3.75rem, 3.125rem + 3.571vw, 6.25rem); /* Metrics H5: 60px → 100px */
}
.p3-sl1 h1, .p5-sl1-text h1 {
    font-size: clamp(4.375rem, 3.571rem + 2.679vw, 6.25rem); /* P3 and P5 Section H1: 70px → 100px */
}




@media (min-width:1440px) { 
	.display{
		font-size: 4.861vw;
	}
	h1, .h1{
		font-size: 4.236vw;
	}
	h2{
		font-size: 3.333vw;
	}
	
	h3{
		font-size: 2.292vw;
	}
	
	h4{
		font-size: 1.736vw;
	}
	
	h5{
		font-size: 1.528vw;
	}
	
	.copyBig{
		font-size: 1.736vw;	
	}
	
	p, .copy, .argomentoPost ul, span{
		font-size: 16px;
		font-size: 1.111vw;
	}
	
	.links{
		font-size: 1.111vw;
	}
	
	.copySmall{
		font-size: 0.903vw;
	}
	
	.cta{
		font-size: 0.903vw;
	}
	
	.ftrElements p,
	.ftrElements a{
		font-size: 0.833vw;
	}
	
	.ftrLinks span,
	.ftrLinks a,
	.ftrLinks p{
		font-size: 0.972vw;
	}
	
	
	.metrics h5{
		font-size: 6.944vw;
	}
	
	
	.p3-sl1 h1,
	.p5-sl1-text h1{
		font-size: 6.944vw;
	}
}



/***************************/
/* NAV */
/***************************/

nav{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: auto;
}
.navbarM{
	display: none;
}

.fixedNav{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;


	z-index: 150;
	position: absolute;
	top: 0;
	left: 0;

	width: 100%;
	box-sizing: border-box;
	padding: 0 40px;
	padding-top: 32px;
	padding-bottom: 32px;
}

.logo{
	width: 127px;
	height: 43px;
	
	width: 8.819vw;
	height: 2.986vw;
	
	background: url('img/logo.svg');	
	background-position: left;
	background-size: contain;
	background-repeat: no-repeat;
}


.navbarContent{
	display: flex;
	align-items: center;
	flex-direction: row;
	gap: 32px;
}

.navbarContent span{
	display: flex;
	flex-direction: row;
	align-items: center;
}
.navbarContent span div{
	width: 8px;
	height: 8px;
	margin-left: 8px;

	background: url('img/navArrow.svg');	
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.navServices,
.navSolutions{
	background-color: var(--bianco);

	border-radius: 0px 0px 30px 30px;
	box-sizing: border-box;
	padding: 40px;
	padding-top: 120px;
	padding-bottom: 60px;

	width: 100%;
	position: absolute;
	top: 0;
	top: 100%;
	left: 0;
	z-index: 120;

	display: flex;
	flex-direction: row;
	justify-content: space-between;

	gap: 34px;

	transform: translateY(-100%);
	opacity: 0;
	pointer-events: none; /* disabilita interazione quando nascosto */
	transition: color 0.3s;

	-webkit-box-shadow: 0px 0px 9px 5px rgba(0,0,0,0.16); 
	box-shadow: 0px 0px 9px 5px rgba(0,0,0,0.16);
}


.navbarContent span:hover{
	cursor: pointer;
}

.navbarContent span.navServiceLink.active1,
.navbarContent span.navSolutionLink.active2{
	color:  var(--bluScuro);
	background-color: var(--grigioSfondi);
	border-radius: 8px;
}

.fixedNav .logo.active {
	background: url('img/logo2.svg');	
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}



.navbarContent a,
.navbarContent span{
	color: var(--bianco);
}


.navServiceLink,
.navSolutionLink,
.navbarContent a:not(.cta){
	padding: 10px 10px;
	padding-bottom: 8px;
	line-height: 1;
	border-radius: 8px;
}


.navbarContent a:hover{
	background-color: rgba(255,255,255,0.1);
}


.navbarContent .cta{
	padding: 10px 20px;
	padding-bottom: 8px;
	margin: 0;
	border: 0px;
	background-color: var(--arancio);
	color: var(--bianco);
	line-height: 1.2;
	font-size: 11px;
	font-size: 0.764vw;

	padding: 13px 20px;
	padding-bottom: 11px;
}


.navbarContent .cta:hover{
	background-color: #F3A027;
	color: var(--bianco);
	border: 0px;
}


.navServicesBox{
	max-width: 200px;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

@media (min-width:1440px) { 
	.navServicesBox{
		max-width: 13.889vw;
	}
}

.navServicesList{
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.navServicesBox a,
.navServicesList a,
.navSolutions a{
	width: fit-content;
	color: var(--nero);
}

.navServicesBox a{
	font-family: "BDOGrotesk-DemiBold";
}

.navServicesList a{
	font-family: "BDOGrotesk-Regular";
}


.navServicesBox a:hover,
.navServicesList a:hover,
.navSolutions a:hover{
	color: var(--arancio);
}


.navbarContent .navServiceLink:hover .navbarContent .cta,
.navbarContent .navSolutionLink:hover .navbarContent .cta{
	color: var(--bianco);
}


.fixedNav.scrolled {
	background-color: var(--bianco);
	-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.1); 
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.1);
}

.navbarContent a.scrolled:not(.cta):hover{
	color: var(--bluScuro);
	background-color: var(--grigioSfondi);
}

.logo.scrolled{
	background: url('img/logo2.svg');	
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.navSolutions{
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 20px;
}


.cta .scrolled{
	color: var(--bianco);
	background-color: var(--arancio);
	transition: color 0.5s ease, background-color 0.5s ease, border-color 0.5s ease;
}
.cta .scrolled:hover{
	color: var(--bianco);
	background-color: #F3A027;
}


.navbarContent a.scrolled:not(.cta),
.navbarContent span.scrolled{
	color: var(--bluScuro);
	transition: color 0.5s ease, background-color 0.5s ease, border-color 0.5s ease;
}

.navbarContent a.active:not(.cta){
	color: var(--bluScuro);
	transition: color 0.5s ease, background-color 0.5s ease, border-color 0.5s ease;
}

.navbarContent a.active:not(.cta):hover{
	color: var(--bluScuro);
	background-color: var(--grigioSfondi);
}

.navbarContent span.active{
	color: var(--bluScuro);
	transition: color 0.5s ease, background-color 0.5s ease, border-color 0.5s ease;
}

.navbarContent span.active:not(.cta):hover{
	color: var(--bluScuro);
	background-color: var(--grigioSfondi);
}











/***************************/
/* FOOTER */
/***************************/

footer{
	background-color: var(--bluScuro);
	border-radius: 30px 30px 0px 0px;

	width: 100%;
	height: auto;
	box-sizing: border-box;
	padding: 40px;
}

.ftrLinksCont{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.ftrLinks{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 40px;
}

.ftrLinks a:hover{
	color: var(--link);
}

.ftrLogo1{
	width: 53px;
	height: 53px;
	background: url('img/ftrlogo1.svg');	
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.ftrLogo2{
	width: 100%;
	height: 200px;
	height: auto;
	margin-top: 105px;
	margin-bottom: 10px;
}

.ftrElements{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.ftrLinksColumn{
	display: flex;
	flex-direction: column;
	width: 210px;
	gap: 4px;
}

.ftrLinksColumn:nth-child(4){
	gap: 12px;
}
.ftrLinksColumn:last-child{
	width: fit-content;
}

.ftrLinksColumn span{
	color: var(--testiSfondoScuro);
	margin-bottom: 15px;
}

.ftrLinks a{
	width: fit-content;
}

.ftrElements p,
.ftrElements a{
	color: #6F6F6F;
}

.ftrElements a:hover{
	color: var(--link);
}




/***************************/
/* HOMEPAGE */
/***************************/

.p1-sl1{
	width: 100%;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	overflow: hidden;
	background-color: var(--bluScuro);
}

.headerCont{
	grid-column: span 7;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 32px;
	z-index: 20;
}

.headerCont p, .headerCont h1{
	color: var(--bianco);
}

.p2-sl1 .cta:hover{
	background-color: #F3A027;
	color: var(--bianco);
}


.headerLogosCont{
	bottom: 0;
	left: 0;
	position: absolute;
	width: 100%;
	height: auto;
	z-index: 10;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 18px;
}

.headerLogosContIcon{
	display: flex;
	flex-direction: row;
	gap: 8px;
	padding-right: 50px;
	opacity: 0.5;
	color: white;
}

.headerLogosContIcon div{
	width: 18px;
	height: 18px;
	background: url('img/headerArrow.svg');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.headerLogosContIcon p{
	font-size: 13px;
	font-size: 0.903vw;
	line-height: 1;
	color: var(--bianco);
}

.p1-sl1-img{
	width: 100%;
	height: auto;

	height: 100%;
	
	position: absolute;
	top: 0%;
	left: 0%;
	transform: scale(1.2);
	/*
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	*/
	object-fit: contain;
	object-position: center;

	object-fit: cover;
	
	z-index: 1;
}

.p1-sl1-links{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 12px;
}




.cta{
	background-color: var(--arancio);
	border: 1px solid var(--arancio);
	padding: 14px 28px;
	padding-bottom: 12px;
	border-radius: 100px;
	color: var(--bianco);
	width: fit-content;

	transition: 
	color 0.5s ease,
	background-color 0.5s ease,
	border-color 0.5s ease;

	padding: 17px 28px;
	padding-bottom: 15px;
}

.cta2{
	border: 1px solid var(--bianco);
	background-color: unset;
}

.cta:hover{
	background-color: var(--bluScuro);
	border: 1px solid var(--bianco);
	color: var(--bianco);

	background-color: #F3A027;
	border: 1px solid #F3A027;
}

.cta2:hover{
	border: 1px solid var(--bluScuro);
	background-color: var(--bluScuro);
	color: var(--bianco);
}



.p1-sl1-links .cta2:hover{
	border: 1px solid var(--bianco);
	color: var(--bluScuro);
	background-color: var(--bianco);
}


.p1-sl2{
	padding-top: 200px;
}

.p1-sl2-text{
	grid-column: span 6;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.p1-sl2-carousel{
	width: 100%;
	margin-top: 64px;
	/*margin-bottom: 100px;*/
}

.cardServizi{
	padding: 40px;
	padding: clamp(1.25rem, 0.893rem + 1.786vw, 2.5rem);
	box-sizing: border-box;
	margin-right: 28px;

	width: 420px;
	height: 456px;
	height: 31.667vw;
	border-radius: 15px;

	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
	background-color: var(--bianco);

	background: url('img/cardBck1.jpg');
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid var(--grigioBordi);
}

.cardServizi:nth-child(4n+1) {
	background: url('img/cardBck2.jpg');
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var(--bianco);
}

.cardServizi:nth-child(4n+2) {
	background: url('img/cardBck1.jpg');
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var(--bianco);
}

.cardServizi:nth-child(4n+3) {
	background: url('img/cardBck3.jpg');
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var(--bianco);
}

.cardServizi:nth-child(4n+4) {
	background: url('img/cardBck4.jpg');
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var(--bianco);
}

.cardServizi img{
	width: 90px;
	height: 90px;
	object-fit: cover;
	object-position: center;
	margin-bottom: 20px;
}

.cardServizi div{
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.cardServizi h3{

}

.cardServizi p{

}

.cardServizi .cta {
	border: 1px solid black;
	color: black;
	background-color: transparent;
	transition: 
	  color 0.5s ease,
	  background-color 0.5s ease,
	  border-color 0.5s ease;
  }
  
  .cardServizi .cta:hover {
	border-color: var(--bluScuro);
	background-color: var(--bluScuro);
	color: var(--bianco);
  }
  

.splideHome .cardServizi:nth-child(1),
.splideHome .cardServizi:last-child,

.splideHome2 .cardRecensioni:nth-child(1),
.splideHome2 .cardRecensioni:last-child{
	width: 30px;	
	padding: 0;
	visibility: hidden;
}

.splideMacro .cardServizi:nth-child(1),
.splideMacro .cardServizi:last-child{
	width: 0px;	
	padding: 0;
	margin: 0;
	visibility: hidden;
}


.splideSingoloCliente .cardServizi:nth-child(1),
.splideSingoloCliente .cardServizi:last-child{
	width: 0px;	
	padding: 0;
	visibility: hidden;
}

.splideSingoloServizio .cardServizi:nth-child(1),
.splideSingoloServizio .cardServizi:last-child{
	/*
	width: 30px;	
	padding: 0;
	*/
	visibility: hidden;
}



.splideSingoloServizio .splide__track ,
.splideSingoloCliente .splide__track{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.splideSingoloServizio .splide__track ul,
.splideSingoloCliente .splide__track ul{
	align-items: center;
}


.splideMacro,
.splideSingoloCliente{
	max-width: 1440px;
	margin: auto;
}

.splideMacro .cardServizi:nth-child(4),
.splideSingoloCliente .cardServizi:nth-child(4){
	margin-right: 0px;
}









.p1-sl3{
	box-sizing: border-box;
	padding-top: 200px;
	padding-bottom: 170px;
	padding-bottom: 120px;
	align-items: center;
}

.p1-sl3 img{
	grid-column: 2/6;
	width: 100%;
	height: 520px;
	height: 36.111vw;
	border-radius: 15px;
	object-fit: cover;
	object-position: center;
}

.p1-sl3-cont{
	grid-column: 7 / 12;

	width: 100%;
	height: auto;
}

.p1-sl3-cont h2{
	width: 80%;
	margin-bottom: 32px;
}

.dropdown{
	width: 100%;
	overflow: hidden;
	border-top: 1px solid var(--grigioBordi);
	box-sizing: border-box;
	padding-bottom: 10px;
}

.dropdown:last-child{
	border-top: 1px solid var(--grigioBordi);
	border-bottom: 0px;
}

.dropdown:first-child{
	border-top: 0px;
	border-bottom: 0px;
}

.dropdown:first-of-type{
	border-top: 0px;
	border-bottom: 0px;
}
  
.dropdown:hover{
	cursor: pointer;
}


.dropdownTitle {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;

	display: flex;
	justify-content: space-between;
	align-items: center;

	box-sizing: border-box;
	padding: 0px;
	padding-top: 24px;
}

.dropdownTitleText{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 16px;
}

.dropdownTitleText h3{
	line-height: 0.8;
}

.dropdownIcon{
	min-width: 37px;
	width: 37px;
	height: 37px;
	background-color: var(--arancio);
	border-radius: 8px;
	overflow: hidden;

	background: url('img/vIcon.jpg');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.dropdownArrow {
	width: 32px;
	height: 32px;
	background: url('img/dropdownArrow.svg');
	transform-origin: center;
}

.dropdownContent{
	display: flex;
	flex-direction: column;
	overflow: hidden;
	height: 0;
	opacity: 0;
	box-sizing: border-box;
	padding-top: 15px;
	gap: 15px;
}

.dropdownContent a{
	color: var(--link);	
	text-decoration: underline;
}

.dropdownSpacer{
	width: 100%; 
	height: 10px; 
}
  
.p1-sl4{
	width: 100%;
	box-sizing: border-box;
	padding-top: 120px;
	padding-bottom: 270px;
	background-color: var(--bluScuro);
	border-radius: 30px 30px 0px 0px;
}

.p1-sl4-title{
	grid-column: 3/11;
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-bottom: 120px;

}

.p1-sl4-title h2, 
.p1-sl4-title p{
	color: var(--bianco);
	text-align: center;
	width: 80%;
	margin: auto;
}

.p1-sl4-card{
	grid-column: span 3;
	padding: 0 32px;
	border-left: 1px solid;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 430px;
	border-left: 1px solid #314491;
}

.p1-sl4-card div{
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.p1-sl4-card div h4{
	color: var(--bianco);
}

.p1-sl4-card div p{
	color: var(--testiSfondoScuro);
}

.p1-sl4-card div span:nth-child(1){
	color: var(--arancio);
}

.p1-sl4-card img{
	width: 90px;
	height: 90px;
	object-fit: cover;
	object-position: center;
}

.p1-sl4-carousel{
	width: 100%;
	height: auto;
	margin-top: 190px;
}


.cardRecensioni{
	width: 870px;
	width: 60.417vw;
	box-sizing: border-box;
	padding: 75px;
	gap: 60px;
	border-radius: 15px;
	margin: 0px;
	margin-right: 24px;
	background: linear-gradient(34deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.015) 100%);

	display: flex;
	flex-direction: column;
	justify-content: space-between;
}


.cardRecensioniInfo{
	display: flex;
	flex-direction: row;
	align-items: center;
}

.cardRecensioni p{
	color: var(--bianco);
}


.cardRecensioniName{
	display: flex;
	flex-direction: column;
}
.cardRecensioniName p{
	line-height: 1.2;
}
.cardRecensioniName p:last-child{
	color: var(--arancio);
}

.p1-sl5{
	width: 100%;
	box-sizing: border-box;
	padding-top: 170px;
	border-radius: 30px 30px 0px 0px;
	margin-top: -30px;
}

.blogSection{
	background-color: var(--bianco);
}

.blogSectionTitle{
	grid-column: span 12;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
}

.blogSectionTitle .cta{
	border: 1px solid var(--bluScuro);
	color: var(--bluScuro);
	background-color: unset;
}
.blogSectionTitle .cta:hover{
	background: var(--bluScuro);
	color: var(--bianco);
}

.newsCard{
	grid-column: span 4;
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.newsCard a{
	color: var(--link);
}
.newsCard a:hover{
	color: var(--bluScuro)
}

.newsCard img{
	height: 250px;
	height: 17.361vw;
	width: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 15px;
}

.contactBox{
	margin: auto;
	margin-top: 200px;
	margin-bottom: 180px;

	margin-top: 160px;

	grid-column: 2/12;
	box-sizing: border-box;
	padding: 106px;
	border-radius: 25px;

	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;

	border: 1px solid var(--grigioBordi);

	background: url('img/bckContactBox.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;

}
@media (min-width:1440px) { 

	.contactBox{
		max-width: 90%;
	}

}

.contactBox div{
	display: flex;
	flex-direction: row;
	gap: 12px;
}

.contactBox h3{
	width: 80%;
	line-height: 1.2;
	color: var(--bluScuro);
	font-size: 28px;
}
.contactBox h3, .contactBox p{
	text-align: center;
}
.contactBox p{
	width: 80%;
	width: 65%;
}

.contactBox .cta{
	box-sizing: border-box;
	color: var(--bianco);
	border: 1px solid var(--bluScuro);
	background: var(--bluScuro);
}

.contactBox .cta2{
	color: var(--bluScuro);
	border: 1px solid var(--bluScuro);
	background: unset;
}

.contactBox .cta:hover{
	color: var(--bianco);
	background: #2B3663;
	border: 1px solid #2B3663;
}

.contactBox .cta2:hover{
	color: var(--bianco);
	background: var(--bluScuro);
	border: 1px solid var(--bluScuro);
}



/***************************/
/* STUDIO */
/***************************/


.p2-sl1{
	width: 100%;
	height: 100vh;

	display: flex;
	align-items: flex-end;
	justify-content: flex-end;

	background-color: var(--nero);

	overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 60px;
}

.p2-sl1-text{
	grid-column: span 6;
	display: flex;
	flex-direction: column;
	gap: 32px;
	z-index: 20;
}

.p2-sl1 h1,
.p2-sl1 p{
	color: var(--bianco);
}

.p2-sl2{
	box-sizing: border-box;
	padding-top: 160px;
	padding-bottom: 200px;

}

.p2-sl2 h2{
	text-align: center;
	color: var(--nero);
	grid-column: 2/12;
	line-height: 1.2;
}

.p2-sl2-metricheCont{
	grid-column: 2/12;
	grid-column: 3/11;
	margin-top: 160px;
	margin-bottom: 200px;

	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.metrics{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
}

.metrics h5{
	color: var(--nero);
}


.p2-sl2 h4{
	grid-column: span 12;
}

.p2-sl2-sede{
	padding: 40px;
	box-sizing: border-box;

	grid-column: span 4;

	border-radius: 15px;

	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;

	background: url('img/studio/sedeBck.jpg');
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;

	border: 1px solid var(--grigioBordi);

	height: 290px;
	height: 20.139vw;
}

.p2-sl2-sede div{
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.p2-sl2-sede .cta{
	border: 1px solid var(--nero);
	color: var(--nero);
}
.p2-sl2-sede .cta:hover{
	border: 1px solid var(--bluScuro);
	background-color: var(--bluScuro);
	color: var(--bianco);
}


.p2-sl3{
	width: 100%;
	box-sizing: border-box;
	padding-top: 160px;
	padding-bottom: 200px;
	background-color: var(--bluScuro);
	border-radius: 30px 30px 0px 0px;

	grid-column: 3/11;
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-bottom: 100px;
	padding-left: 0;
	padding-right: 0;
}

.p2-sl4-title h2{
	width: 100%;
}

.timelineBox{
	grid-column: span 3;
	border-left: 1px solid var(--link);
	box-sizing: border-box;
	padding: 0 32px;

	display: flex;
	flex-direction: column;
	justify-content: space-between;

	height: 430px;
}

.timelineBox div{
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.timelineBox h3{
	color: var(--bianco);
}

.timelineBox p{
	color: var(--testiSfondoScuro);
}

.timelineBox img{
	width: 90px;
	height: 90px;
}
	  



.p2-sl4{
	width: 100%;
	box-sizing: border-box;
	padding-top: 200px;
	background-color: var(--bianco);
	border-radius: 30px 30px 0px 0px;
}

.teamSectionCont{
	margin-top: 200px;
	grid-column: span 12;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 50px;
}
.teamSectionTitle{
	display: flex;
	flex-direction: column;
	gap: 24px;
	width: 50%;
}
.teamSectionTitle h2{
	color: var(--bianco);
}
.teamSectionTitle p{
	color: var(--testiSfondoScuro);
}

.teamSectionCont .cta2:hover{
	background-color: var(--bianco);
	color: var(--bluScuro);
	border: 1px solid var(--bianco);
}

.teamCard{
	grid-column: span 4;
	height: auto;
	background: linear-gradient(34deg, rgba(255,255,255,0.07) 0%, rgba(255,255,255,0.02) 100%);

	box-sizing: border-box;
	padding: 30px;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 80px;

}
/*
.teamCard img{
	width: 100%;
	height: auto;
	border-radius: 15px;
	object-position: center;
	object-fit: cover;

	border: 1px solid green;
	height: 407px;
}
*/


.teamCard h5{
	color: var(--bianco);
}
.teamCard p{
	color: var(--arancio);
}

.p2-sl4-logos{
	width: 100%;
	height: auto;
}

.p2-sl4-title{
	grid-column: 3/11;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;	
	margin-bottom: 36px;
	margin-bottom: 80px;
}

.p2-sl4-title h2,
.p2-sl4-title p{
	text-align: center;
}

.p2-sl4-benefici{
	align-items: center;
	margin-top: 150px;
}

.p2-sl4-beneficiTitle{
	display: flex;
	flex-direction: column;
	gap: 24px;

	grid-column: 2/6;
}



.p2-sl4-beneficiCont{
	grid-column: 7/12;
}

.beneficiTitleText{
	display: flex;
	flex-direction: row;
	gap: 32px;
	align-items: center;
	box-sizing: border-box;
	padding: 20px 0px;
	border-bottom: 1px solid #D2D2D2;
}

.beneficiTitleText:last-child{
	border-bottom: 0;
}


/***************************/
/* MACRO SERVIZIO */
/***************************/

.p3-sl1{
	width: 100%;
	height: 100vh;

	display: flex;
	align-items: flex-end;
	justify-content: flex-end;

	background-color: var(--bluScuro);

	overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 60px;
}

.p3-sl1 h1{
	grid-column: span 6;
	color: var(--bianco);
	z-index: 20;
	width: 95%;
}


.p3-sl1-text{
	grid-column: span 6;
	display: flex;
	flex-direction: column;
	gap: 32px;
	z-index: 20;
	justify-content: flex-end;
}

.p3-sl1-text p{
	color: var(--bianco);
}


.p3-sl2{
	box-sizing: border-box;
	padding-top: 160px;
	padding-bottom: 200px;
}

.p3-sl2 h2{
	text-align: center;
	color: var(--nero);
	grid-column: 2/12;
	width: 96%;
	line-height: 1.2;
}

.p3-sl2 .p2-sl4-beneficiTitle h2,
.p2-sl4-beneficiTitle p{
	text-align: left;
}

.p3-sl3{
	border-radius: 30px 30px 0px 0px;
	box-sizing: border-box;
	padding-top: 160px;
	padding-bottom: 160px;
	background-color: var(--grigioSfondi);
}

.p3-sl3-text{
	grid-column: 3/11;
	margin-bottom: 60px;
	display: flex;
	flex-direction: column;
	gap: 24px;
	text-align: center;
}

.p3-sl3-text p{
	width: 80%;
	margin: auto;
}

.p3-sl4{
	box-sizing: border-box;
	padding-top: 200px;
	background-color: var(--bianco);
}


.p3-sl4-dropdownCont{
	grid-column: 2/12;
	display: flex;
	flex-direction: column;
	gap: 56px;
}

/***************************/
/* SINGOLO SERVIZIO */
/***************************/

.p4-sl1{
	width: 100%;
	height: 100vh;

	display: flex;
	align-items: flex-end;
	justify-content: flex-end;

	background-color: var(--bianco);

	overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 60px;
}

.p4-sl1 .grid{
	align-items: flex-end;
}

.p4-macroName{
	color: var(--arancio);
	margin-bottom: -10px;
}


.p4-sl1-clients{
	grid-column: 10/13;

	width: 100%;
	height: auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
	z-index: 20;
}

.p4-sl1-clients p{
	text-align: center;
	color: var(--nero);
}

.p4-sl1-clientType{
	width: 100%;
	box-sizing: border-box;
	padding: 15px 0px;
	text-align: center;
	border-radius: 15px;
	background: linear-gradient(30deg, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0.5) 100%);
}

.p4-sl2{
	width: 100%;
	height: auto;
}

.dropdownIcon2{
	background: url('img/bellIcon.jpg');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.p4-sl3{
	padding-bottom: 140px;
}

.p4-sl2{
	box-sizing: border-box;
	padding-top: 160px;
	padding-bottom: 140px;
}

.p4-sl2-benefici{
	margin-top: 0;
}


.p4-sl3-benefici{
	box-sizing: border-box;
	padding-top: 200px;
	display: flex;
	flex-direction: column;
	gap: 64px;
}

.p4-sl3-beneficiText{
	grid-column: 2/8;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.p4-sl3-beneficiText h2{
	width: 78%;
}



.beneficiCard{
	border-radius: 15px;
	border: 1px solid #DFDFDF;
	grid-column: span 5;
	padding: 40px;
	background-color: var(--bianco);

	display: flex;
	flex-direction: column;
	gap: 20px;
}
.beneficiCard:nth-child(1),
.beneficiCard:nth-child(3){
	grid-column: 2/7;
}
.beneficiCard div{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}

.beneficiCardIcon{
	width: 37px;
	height: 37px;
	min-width: 37px;
	border-radius: 8px;
	background: url('img/vIconGreen.jpg');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.beneficiCard div h5{
	width: 85%;
}

.p4-sl3-text{
	grid-column: span 12;
	text-align: center;
	margin-bottom: 40px;
	color: var(--nero);
}

.p3-sl4 .contactBox{
	margin-top: 140px;
}

.splideSingoloServizio{
	width: 100%;
}





/***************************/
/* TIPOLOGIA CLIENTI */
/***************************/

.p5-sl1{
	width: 100%;
	height: 100vh;

	display: flex;
	align-items: center;
	justify-content: center;

	background-color: var(--nero);

	overflow: hidden;
	position: relative;
}

.p5-sl1-text{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
	grid-column: 3/11;
	z-index: 20;
}

.p5-sl1-text h1,
.p5-sl1-text p{
	text-align: center;
	color: var(--bianco);
}

.p5-sl1-text p{
	max-width: 80%;
}



.postid-389 .p5-sl1-text h1{
	width: 90%;
	margin: auto;
}

.p5-sl2-img{
	grid-column: 2/6;
	border-radius: 15px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.p5-sl2{
	padding-top: 160px;
	padding-bottom: 100px;
}

.p5-sl3{
	display: flex;
	flex-direction: column;
	padding-bottom: 200px;
}

.p5-sl3 .p4-sl3-beneficiText{
	margin-bottom: 65px;
}

.p5-sl3 .p4-sl3-text{
	margin-top: 200px;
}

.p5-sl2 .p2-sl4-beneficiCont h3{
	margin-bottom: 48px;
	width: 100%;
}

/***************************/
/* NEWS */
/***************************/

.p6-sl1{
	display: flex; 
	flex-direction: column;
	align-items: center;
	gap: 32px;

	box-sizing: border-box;
	padding-top: 200px;
	padding-bottom: 90px;
}

.p6-sl1 h1{
	text-align: center;
	width: 50%;
}

.p6-sl1 p{
	text-align: center;
	width: 50%;
}

.blogCont{
	grid-row-gap: 60px;
}


.pagination{
	grid-column: span 12;
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 50px;
}

.pagination a,
.pagination .current{
	line-height: 0.9;
	padding: 10px 11px;
	padding-bottom: 8px;
	border-radius: 50%;
	font-size: 1rem;

	display: flex;
	align-items: center;
	justify-content: center;

	border: 1px solid var(--grigioBordi);
	color: var(--grigioBordi);
}

.pagination .prev, .pagination .next{
	border-radius: 100px;
}

.pagination a:hover{
	background-color: var(--bluScuro);
	border: 1px solid var(--bluScuro);
	color: var(--bianco);
}

.pagination .dots{
	color: var(--grigioBordi);
}

.pagination .prev,
.pagination .next{
	padding: 10px 15px;
}

.pagination .current{
	background-color: var(--arancio);
	border: 1px solid var(--arancio);
	color: var(--bianco);
}

/***************************/
/* SINGOLA NEWS */
/***************************/


.p7-sl1{
	box-sizing: border-box;
	padding-top: 200px;
	padding-bottom: 80px;

	grid-column: 5/13;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.p7-sl1-elements{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 48px;
}
.p7-sl1-elements p{
	color: var(--nero);
}

.p7-sl1-elements div{
	display: flex;
	flex-direction: row;
	align-items: center;
}

.p7-sl1 img{
	border-radius: 20px;
}

.author-avatar{
	background-color: var(--arancio);
	width: 29px;
	height: 29px;
	border-radius: 50%;
	margin-right: 12px;
}




.p7-sl2{
	position: relative;
}


.linkCont{
	grid-column: span 3;

	height: fit-content;

	position: sticky;
	top: 0;
	top: 80px;

	display: flex;
	flex-direction: column;
	gap: 24px;
}

.linkCont a{
	color: var(--link);
	width: fit-content;
}

.linkCont a:hover{
	color: var(--bluScuro);
}

.p7-sl2-content{
	grid-column: 5 / 13;
	display: flex;
	flex-direction: column;
	gap: 64px;

	height: auto;
}

.argomentoPost{
	display: flex;
	flex-direction: column;
	gap: 20px;

	margin-bottom: 20px;
	box-sizing: border-box;
	padding-top: 30px;
}





.argomentoPost ul,
.p7-sl1 ul{
	margin: 20px 30px;
	color: var(--testiSfondoBianco);
}

.argomentoPost ul li{
	padding-bottom: 0px;
	margin-bottom: 10px;
}

.argomentoPost ul li ul{
	margin: 0;
	margin-left: 20px;
	margin-top: 0;
	margin-bottom: 0px;
}

.argomentoPost ul li ul li{
	padding-bottom: 0px;
	margin-bottom: 0;
}


.argomentoPost b{
	font-family: "BDOGrotesk-DemiBold";
}

.argomentoPost p{
	color: var(--testiSfondoBianco) !important;
	display: block;
}

.p7-sl1 a,
.argomentoPost a{
	color: var(--link);
	text-decoration: underline;
}

.argomentoPost table{
	border-collapse: collapse;
	width: 100%;
}
.argomentoPost td, th {
	border: 1px solid var(--grigioBordi);
	padding: 8px;
}
.argomentoPost tr:nth-child(even){
	background-color: var(--grigioSfondi);
}
.argomentoPost th{
	padding-top: 12px;
	padding-bottom: 12px;
	text-align: left;
	background-color: var(--bluScuro);
	color: white;
}

.argomentoPost td, 
.argomentoPost th, 
.argomentoPost tr{
	width: 50%;
}


.argomentoPost i{
	padding: 30px;
	border-radius: 10px;
	background-color: var(--grigioSfondi);
	font-family: "BDOGrotesk-Regular";
	display: block;
	margin: 30px 0;
}

.argomentoPost .alphabetical{
	list-style: lower-alpha;
}


.p7-sl2-content{
	gap: 20px;
}

.argomentoPost{
	gap: 20px;
}


.boxArgomentoPost{
	width: 100%;
	height: auto;
	box-sizing: border-box;
	padding: 60px;

	display: flex;
	flex-direction: row;
	justify-content: space-between;

	border-radius: 25px;
	gap: 60px;
	align-items: center;

	background: url('img/bckPost.jpg');	
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;

	border: 1px solid var(--grigioBordi);

	margin-bottom: 50px;
}

.boxArgomentoPost div{
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 65%;
	color: var(--bluScuro);
}
.boxArgomentoPost div h4,
.boxArgomentoPost div p{
	color: var(--bluScuro);
}

.boxArgomentoPost .cta{
	background: var(--bluScuro);
	border: 1px solid var(--bluScuro);
}

.boxArgomentoPost .cta:hover{
	background: unset;
	color: var(--bluScuro);
	border: 1px solid var(--bluScuro);
}



.p7-sl3{
	box-sizing: border-box;
	padding-top: 200px;
	padding-bottom: 200px;
}






/***************************/
/* CAREERS */
/***************************/

.p8-sl1 h1,
.p8-sl1 p{
	width: 62%;
}

.p8-sl2{
	box-sizing: border-box;
	padding-bottom: 200px;
}

.p8-sl2-cont{
	grid-column: 2/12;
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.careersCard{
	box-sizing: border-box;
	padding: 40px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	border: 1px solid #DFDFDF;
	border-radius: 15px;
}

/***************************/
/* CONTATTI */
/***************************/

.p9-sl1{
	box-sizing: border-box;
	padding-top: 170px;
	padding-bottom: 150px;
}

.p9-sl1 h1{
	grid-column: span 12;
	margin-bottom: 20px;

	margin-bottom: 50px;
}

.p9-sl1-box1{
	grid-column: span 8;
}

.p9-sl1-box2{
	grid-column: 10/13;

	display: flex;
	flex-direction: column;
	gap: 60px;
}

.p9-sl1-maps{
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.p9-sl1-contacts{
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.p9-sl1-maps div{
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.p9-sl1-contacts p{
	color: var(--nero);
}

.p9-sl1-contacts a{
	color: var(--link);
	text-decoration: underline;
}

.p9-sl1-contacts a:hover{
	color: var(--bluScuro);
}


.p9-sl1-box2 span{
	color: var(--arancio);
    font-family: "BDOGrotesk-DemiBold";
	line-height: 0.8;
}

.p9-sl1-maps a{
	color: var(--link);
	text-decoration: underline;
}

.p9-sl1-maps a:hover{
	color: var(--bluScuro);
}



.wpcf7-form{
	/*border: 1px solid red;*/
}


.inputFieldCont{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 30px;
}

.inputField{
	padding-bottom: 10px;
	border-radius: 0px;
	background-color: unset;
	border-style: 0;
	border: 0;
	border-bottom: 1px solid #D2D2D2;
	width: 100%;
}


textarea{
	box-sizing: border-box;
	border-style: none;
	border: 0;

	width: 100%;
	padding: 20px;
}

input[type=submit]{

}



.wpcf7-spinner{
	position: absolute;
	bottom: -50px;
	margin: 0;
	left: 50%;
	transform: translateX(-50%);
}

.wpcf7 form .wpcf7-response-output{
	margin: 0px;
	margin-top: 20px;
	padding: 15px;
	color: var(--arancio);
}

.wpcf7-response-output{
	text-align: center;
	border-radius: 20px;
}

.grecaptcha-badge{
	visibility: hidden; 
}
.wpcf7-list-item{
	margin: 0;
}
.inputCont .wpcf7-not-valid-tip{
	width: 100%;
}

.wpcf7-list-item-label{
	width: 90%;
}
.wpcf7-list-item-label a{
	color: var(--link);
	text-decoration: underline;
}

.wpcf7-form-control{
	margin-top: 7px;
}

.inputFieldCont label{
	font-size: 10px;
	width: calc(50% - 15px);

	display: flex;
	flex-direction: column;
}

.form label{
	font-size: 10px;
	color: brown;
}

.wpcf7-form-control-wrap{
	width: 100%;
}

.inputFieldCont2 label{
	width: 100%;
	margin-top: 30px;
}

.inputFieldCont2 label .inputField{
	padding: 0;
}


/* Nasconde la freccia di default */
.wpcf7-form-control.wpcf7-select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding: 0px;
	padding-bottom: 8px;
	border-radius: 0;
	background-color: unset;
	border: 0;
	border-bottom: 1px solid #D2D2D2;


	background-image: url("img/dropdown.svg");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 24px;
	cursor: pointer;
	color: #333;
	width: 100%;
}
  
/* Focus e hover */
.wpcf7-form-control.wpcf7-select:focus {
	border-color: #333;
	outline: none;
}

/* Per compatibilità extra */
.wpcf7-form-control-wrap {
	position: relative;
	display: inline-block;
	width: 100%;
}

.wpcf7-submit{
	border: 0;
	border-style: none;
}

.wpcf7-submit:hover{
	border: 0;
}
  

/*CHECKBOX*/

/* Nascondi la checkbox di default */
input.checkBoxCont {
	opacity: 0;
	position: absolute;
	z-index: -1; /* Rimuove l'interazione diretta */
}
  
/* Stile del contenitore della checkbox */
.wpcf7-list-item label {
	display: flex;
	align-items: flex-start;
	cursor: pointer;
	user-select: none;
	width: 100%;

	margin: 30px 0px;

}

.wpcf7-form-control-wrap{
}


  
/* Aggiungi una checkbox personalizzata */
.wpcf7-list-item label::before {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 12px;
	background-color: #D2D2D2;
	transition: all 0.2s ease-in-out;
	position: relative;
}
  
/* Stato "checked" della checkbox */
input.checkboxcont:checked + .wpcf7-list-item-label::before {
	background-color: blue;
	border-color: red;
}

input.checkBoxCont:checked + .wpcf7-list-item-label::after {   
	content: '';    
	position: absolute;    
	left: 8px;    
	top: 16px;  
	top: 35px;  
	width: 4px;    
	height: 8px;    
	border: solid black;    

	border-width: 0 2px 2px 0;    
	-webkit-transform: rotate(45deg);    
	-ms-transform: rotate(45deg);    
	transform: rotate(45deg);
	box-sizing: border-box;
}
  

/* Stato hover */
.wpcf7-list-item label:hover::before {
	/*border-color: var(--verdeBrillante);*/
}
  
/* Disabilita il focus nativo e crea un focus personalizzato */
/*
input.checkBoxCont:focus + .wpcf7-list-item-label::before {
	outline: 1px solid var(--verdeBrillante);;
	outline-offset: 1px;
}
*/

/* END CHECKBOX*/


/***************************/
/* END CONTATTI */
/***************************/



/***************************/
/* START 404 */
/***************************/

.header404{
	display: flex;
	flex-direction: column;
	grid-column: 6/11;
	gap: 30px;

	padding-top: 200px;
	padding-bottom: 200px;
}

.header404 p{
	color: var(--arancio);
}

/***************************/
/* END 404 */
/***************************/


/***************************/
/*  POLICY */
/***************************/


.p10-sl1{
	box-sizing: border-box;
	padding-top: 200px;
	padding-bottom: 80px;

	grid-column: 5/13;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.p10-el{
	display: flex;
	flex-direction: column;
	gap: 20px;
}


.p10-cont a{
	color: var(--link);
	text-decoration: underline;
}

.p10-cont .listAlpha{
	list-style: lower-alpha;
	margin-left: 30px;
}

.p10-cont ul{
	list-style: square;
	margin-left: 30px;
}

.p10-cont li{
	color: var(--testiSfondoBianco);
}

.p10-cont .alphabetical{
	list-style: lower-alpha;
}


/***************************/
/* END POLICY */
/***************************/



.navbarM {
	display: none;
}




@media(max-width: 1024px) { 
	.navbarD {
	  display: none;
	}
	.navbarM {
	  display: block;
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  z-index: 200;
	}

	.fixedNavM {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 20px;
		/*
		background: var(--bianco);
		*/
	}
  
	.fixedNavM a{
		z-index: 200;
	}

	.logoM{
		width: 122px;
		height: 40px;
		background: url('img/logo.svg');	
		background-position: left;
		background-size: contain;
		background-repeat: no-repeat;
	}
  
	.fixedNavMbtns{
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 11px;
		z-index: 200;
	}
	.fixedNavMbtns .cta{
		padding: 18px;
		padding-top: 10px;
		padding-bottom: 8px;
	}
  
	.burger {
	  display: flex;
	  flex-direction: column;
	  gap: 3px;
	  cursor: pointer;
	}
  
	.burger span {
	  width: 24px;
	  height: 3px;
	  background: var(--bianco);
	}
  
	.mobileMenu {
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  overflow: scroll;

	  background: var(--bianco); 
	  transform: translateX(-100%);

	  transition: transform 0.3s ease;
	  overflow-y: auto;
	  padding: 80px 18px 18px;
	  box-sizing: border-box;
	  padding-top: 230px;
	}


	.mobileMenu.open {
	  transform: translateX(0);
	}

  
	.mobileMenu ul {
	  list-style: none;
	}	
	
	.navM-dropdown-toggle div {
	  width: 15px;
	  height: 10px;
	  margin-left: 8px;
	  background: url('img/navArrow.svg');
	  background-position: center;
	  background-size: cover;
	  background-repeat: no-repeat;
	  transition: all 0.5s;
	}
  
    
	.mobileMenu a {
	  color: var(--nero);
	  text-decoration: none;
	}
  
	.navM-dropdown-menu {
	  display: none;
	}

	.navM-dropdown-menu-list {
		/* background-color: red; */
		box-sizing: border-box;
		
		padding-top: 4px;
		
	}

	.mobileMenu ul .navM-dropdown:nth-child(2) .navM-dropdown-menu{
		/*background-color: red;*/
		padding-top: 24px;
	}


	.navM-dropdown-menu li a{
		/* background-color: orange; */
		font-family: "BDOGrotesk-DemiBold";

		margin: 0;
		padding: 0;
		/*margin-bottom: 4px;*/
	}

	.navM-dropdown-menu li ul{
		display: flex;
		flex-direction: column;
		gap: 4px;
	}

	.navM-dropdown-menu-list li a{
		font-family: "BDOGrotesk-Regular";
		margin-bottom: 0;
	}

	.navM-dropdown-menu ul{

	}

	.navM-dropdown-menu li{
		display: flex;
		flex-direction: column;
		margin-bottom: 0;
	}
  
	.navM-dropdown.open .navM-dropdown-menu {
	  display: block;
	}
  
	.navM-dropdown-toggle {
	  display: flex;
	  align-items: center;
	  cursor: pointer;
	  justify-content: space-between;
	  color: var(--nero);
	  transition: all 0.5s;
	}


	.navM-link{
		font-size: 40px;
	}

	.fixedNavM.scrolled{
		background-color: var(--bianco);
	}
	.logoM.scrolled{
		background: url('img/logo2.svg');	
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	.burger span.scrolled{
		background-color: var(--nero);	
	}

	.navM-dropdown-menu li a:nth-child(1){
		margin-top: 24px;
	}

	.navM-dropdown-menu li .navM-dropdown-menu-list li a{
		margin-top: 0px;
	}

	.mobileMenu ul li:nth-child(2) .navM-dropdown-menu li a{
		margin-top: 0px;
	}

	.navM-dropdown .navM-dropdown-menu{
		padding-bottom: 30px;
	}

}





@media screen and (max-width: 768px) {

	
	.grid{
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		/*
		gap: 20px;
		padding: 0px 20px;
		*/
	}

	

	/*

	h1,
	.h1{
		font-size: 42px;
	}

	h2{
		font-size: 32px;
	}

	h3{
		font-size: 23px;
	}

	h4{
		font-size: 22px;
	}

	h5{
		font-size: 18px;
	}

	.copyBig{
		font-size: 22px;
	}

	p, .copy, .argomentoPost ul, span{
		font-size: 13px;
	}

	.links{
		font-size: 13px;
	}

	.copySmall{
		font-size: 10px;
	}

	.cta{
		font-size: 13px;
	}

	.ftrElements p,
	.ftrElements a{
		font-size: 12px;
	}

	.ftrLinks span,
	.ftrLinks a,
	.ftrLinks p{
		font-size: 13px;
	}

	.metrics h5{
		font-size: 60px;
	}

	.p3-sl1 h1,
	.p5-sl1-text h1{
		font-size: 70px;
	}
	*/



	/* FOOTER M */

	footer{
		padding: 20px;
		border-radius: 30px 30px 0px 0px;
		display: flex;
		flex-direction: column;
		gap: 60px;

		min-height: 115dvh;
	}

	.ftrLogo1{
		width: 51px;
		height: 51px;
	}

	.ftrLinksCont{
		flex-direction: column;
		gap: 60px;
	}

	.ftrLinks{
		flex-direction: row;
		flex-wrap: wrap;
		gap: 10px;
		row-gap: 44px;
	}

	.ftrLinksColumn{
		width: calc(50% - 10px);
		gap: 4px;
	}

	.ftrLinksColumn span{
		margin-bottom: 4px;
	}


	.ftrLogo2{
		margin: 0;
	}

	.ftrElements{
		flex-direction: column;
		gap: 4px;
		align-items: flex-start;
		margin-top: -50px;
	}



	/* HOMEPAGE M */

	.p1-sl1{
		height: 100dvh;
	}

	.headerCont{
		gap: 32px;
		gap: 25px;
		position: relative;
	}

	.headerLogosCont .slider{
		padding: 0px;
	}

	.headerCont h1{
		margin-top: -12px;
	}

	.p1-sl1-links{
		display: flex;
		flex-direction: column;
		gap: 12px;
		position: relative;
	}

	.p1-sl1-links .cta{
		text-align: center;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		position: relative;
		display: block;
	}

	.cta{
		padding: 14px 20px;
		padding-bottom: 12px;
	}

	.headerLogosCont{
		align-items: flex-start;
		gap: 0;
	}

	.headerLogosContIcon p{
		font-size: 13px;
	}

	.headerLogosContIcon{
		padding-left: 20px;
		padding-right: 0;
	}
	.headerLogosContIcon div{
		width: 9px;
		height: auto;	
	}

	.slide,
	.slide img{
		width: 140px;
		height: 66px;
	}



	.p1-sl2{
		padding-top: 100px;
	}

	.p1-sl2-text{
		gap: 24px;
	}

	.p1-sl2-carousel{
		margin-top: 58px;
		margin-bottom: 100px;
	}
	
	.splideHome .cardServizi:nth-child(1), 
	.splideHome .cardServizi:last-child, 
	.splideHome2 .cardRecensioni:nth-child(1), 
	.splideHome2 .cardRecensioni:last-child{
		width: 0px;
	}

	.cardServizi{
		margin-right: 17px;
		/*padding: 20px;*/
		width: 260px;
		height: 316px;
		border-radius: 15px;
	}
	.cardServizi div{
		gap: 20px;
	}

	.p1-sl3{
		padding-top: 0px;
		padding-bottom: 110px;
	}
	.p1-sl3 img{
		grid-column: span 4;
		order: 2;
		height: 436px;
	}
	.p1-sl3-cont{
		grid-column: span 4;
		order: 1;
	}


	.p1-sl4{
		padding-top: 60px;
		padding-bottom: 100px;
	}

	.p1-sl4-title{
		grid-column: span 4;
		gap: 24px;
		margin-bottom: 60px;
	}
	.p1-sl4-title h2,
	.p1-sl4-title p{
		width: 100%;
	}

	.p1-sl4-card{
		grid-column: span 4;
		border-left: 0;
		border-top: 1px solid #314491;
		padding: 0;
		padding-top: 20px;
		padding-bottom: 40px;
		height: auto;
		gap: 40px;
	}
	.p1-sl4-card div{
		gap: 12px;
	}
	.p1-sl4-card img{
		width: 60px;
		height: 60px;
	}

	.p1-sl4-carousel{
		margin-top: 60px;
	}


	.cardRecensioni{
		padding: 32px;
		width: 320px;
		gap: 60px;
		border-radius: 15px;
		background: linear-gradient(34deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.03) 100%);

	}

	.cardRecensioni p{
		font-size: 16px;
	}

	.p1-sl5{
		margin-top: 0;
		padding-top: 60px;
	}

	.blogSectionTitle{
		grid-column: span 4;
		flex-direction: column;
		gap: 24px;
		align-items: flex-start;
		margin-bottom: 16px;
	}

	.newsCard{
		gap: 20px;
		margin-bottom: 12px;
	}
	.newsCard img{
		height: 212px;
	}

	.contactBox{
		grid-column: span 4;
		margin-top: 80px;
		gap: 32px;
		padding: 60px 40px;
		margin-bottom: 100px;

		background: url('img/bckContactBoxM.jpg');
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	.contactBox div{
		flex-direction: column;
		gap: 12px;
		align-items: center;
		width: 100%;
	}

	.contactBox .cta{
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		text-align: center;
	}

	.contactBox h3,
	.contactBox p{
		width: 100%;
	}
	
	/* STUDIO M */
	.p2-sl1{
		padding-bottom: 56px;
		height: 100dvh;
	}
	.p2-sl1 .p1-sl1-img{
		content: url("img/studio/headerStudioM.jpg ");
		object-position: center;
		object-fit: cover;
	}

	.p2-sl1-text{
		gap: 32px;
		grid-column: span 4;
	}
	.p2-sl1-text .cta{
		width: 100%;
		padding: 14px 0px;
		padding-bottom: 12px;
		text-align: center;		
	}

	.p2-sl2{
		padding-top: 80px;
		padding-bottom: 100px;
	}
	.p2-sl2 h2{
		text-align: left;
		grid-column: span 4;
	}
	
	.p2-sl2-metricheCont{
		grid-column: span 4;
		flex-direction: row;
		flex-wrap: wrap;
		row-gap: 32px;

		margin-top: 80px;
		margin-bottom: 110px;
		justify-content: center;
	}

	.metrics{
		width: calc(50% - 10px);
		gap: 12px;
	}

	.p2-sl2 h4{
		grid-column: span 4;
	}

	.p2-sl2-sede{
		padding: 24px;
		height: 200px;
	}
	.p2-sl2-sede div{
		gap: 12px;
	}


	.p2-sl3{
		grid-column: span 4;
		box-sizing: border-box;
		padding: 0;
		padding-top: 60px;
		padding-bottom: 160px;
		gap: 24px;
		display: flex;
		flex-direction: column;
	}


	.p1-sl4-title{
		grid-column: span 4;
		margin-bottom: 70px;
	}

	
	.timelineBox{
		grid-column: span 4;
		border-left: 0px;
		border-top: 1px solid var(--link);

		padding: 0;
		padding-top: 16px;
	
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	
		height: 230px;
		margin-bottom: 12px;
	}
	
	.timelineBox{
		grid-column: span 4;
	}

	.timelineBox div{
		gap: 15px;
	}
	
	
	.timelineBox img{
		width: 70px;
		height: 70px;
	}
	


	.teamSectionCont{
		grid-column: span 4;
		margin-top: 80px;
		flex-direction: column;
		gap: 32px;
		align-items: flex-start;
	}

	.teamSectionTitle{
		width: 100%;
		gap: 20px;
	}

	.teamCard{
		grid-column: span 4;
		gap: 40px;
		background: linear-gradient(34deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.03) 100%);
	}
	
	.teamCard img{
		height: 220px;
	}

	.p2-sl4{
		padding-top: 60px;
	}

	.p2-sl4-title{
		grid-column: span 4;
		gap: 20px;
		margin-bottom: 36px;
	}
/*
	.slide{
		width: 140px;
		height: 66px;
	}
*/

	.p2-sl4-benefici{
		margin-top: 100px;
	}

	.p2-sl4-beneficiTitle{
		grid-column: span 4;
		gap: 16px;
	}
	.beneficiTitleText{
		padding: 16px 0px;
		gap: 20px;
	}

	.dropdownIcon{
		min-width: 37px;
		width: 37px;
		height: 37px;
		border-radius: 8px;
	}

	.beneficiTitleText h5{
		width: 85%;
	}

	.p2-sl4-beneficiCont{
		grid-column: span 4;
	}

	.p5-sl2 .p2-sl4-beneficiCont h3{
		width: 100%;

		margin-top: 40px;
		margin-bottom: 24px;

	}


	/* MACRO SERVIZIO M */
	.p3-sl1{
		padding-bottom: 34px;
		height: 100dvh;
	}
	.p3-sl1 h1{
		width: 100%;
	}

	.single-macro_servizi .p3-sl1 .p1-sl1-img{
		
	}

	.p3-sl2{
		padding-top: 80px;
		padding-bottom: 70px;
	}
	.p3-sl2 h2{
		grid-column: span 4;
		text-align: left;
		width: 100%;
	}

	.p3-sl3{
		padding-top: 60px;
		padding-bottom: 100px;
	}
	.p3-sl3-text{
		grid-column: span 4;
		gap: 24px;
		margin-bottom: 40px;
	}

	.splideMacro .cardServizi:nth-child(1), 
	.splideMacro .cardServizi:last-child{
		width: 0;
	}

	.splideMacro .cardServizi:nth-child(1),
	.splideSingoloCliente .cardServizi:nth-child(1){
		margin-left: 20px;
	}

	.splideMacro .cardServizi:last-child,
	.splideSingoloCliente .cardServizi:last-child{
		margin-right: 20px;
		width: 40px;
	}

	.splideMacro, .splideSingoloCliente{
		max-width: 100%;
	}

	.p3-sl3 .cardServizi{
		height: auto;
		height: 390px;
		width: 280px;
	}

	.cardServizi img{
		width: 60px;
		height: 60px;
		margin-bottom: 0px;
	}

	.p3-sl4{
		padding-top: 100px;
	}


	.p3-sl4-dropdownCont{
		grid-column: span 4;
		gap: 32px;
	}

	.dropdown{
		padding-bottom: 10px;
	}
	.dropdownTitle{
		padding-top: 24px;
	}
	.dropdownTitleText{
		gap: 16px;
		width: 90%;
	}
	.dropdownArrow{
		width: 32px;
		height: 32px;
	}
	.dropdownContent{
		padding-top: 15px;
	}
	.p3-sl4 .contactBox{
		margin-top: 100px;
	}

	/* SINGOLO SERVIZIO M */

	.p4-sl1{
		padding-bottom: 23px;
		height: 100dvh;
	}

	.p4-sl1-clients{
		grid-column: span 4;
	}

	.p4-sl1 .grid{
		justify-content: space-between;
		padding-top: 110px;
		height: 100%;
	}

	.p4-sl1-clients{
		gap: 10px;
	}
	.p4-sl1-clientType{
		padding: 15px 0px;
	}

	.p2-sl1-text{

	}

	.p4-sl1-clients{
		border: 1px solid red;
	}

	.p4-sl2{
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.p4-sl2 .p2-sl4-benefici{
		margin-top: 0;
	}

	.dropdownTitleText h5{
		width: 80%;
	}

	.p4-sl3-benefici{
		padding-top: 100px;
		gap: 48px;
	}
	.p4-sl3-beneficiText{
		grid-column: span 4;
		gap: 16px;
	}
	.p4-sl3-beneficiText h2{
		width: 100%;
	}

	.beneficiCard:nth-child(1), 
	.beneficiCard:nth-child(3),
	.beneficiCard{
		grid-column: span 4;
		padding: 24px;
		gap: 20px;
	}

	.beneficiCardIcon{
		width: 37px;
		height: 37px;
		min-width: 37px;
	}


	.splideSingoloServizio .splide__track{
		display: block;
	}

	.splideSingoloServizio .splide__track ul{
		align-items: flex-start;
	}

	.splideSingoloServizio .cardServizi:nth-child(1),
	.splideSingoloServizio .cardServizi:last-child{
		width: 0px;
		height: 390px;
		padding: 0px;
		visibility: hidden;
	}



	/* CLIENTI M */
	.p5-sl1{
		height: 100dvh;
	}

	.p5-sl1-text{
		grid-column: span 4;
	}
	.postid-389 .p5-sl1-text h1{
		width: 100%;
		margin: auto;
	}

	.p5-sl2-img{
		grid-column: span 4;
	}
	.p5-sl3 .p4-sl3-text{
		margin-top: 100px;
	}





	/* BLOG M */
	.p6-sl1{
		padding-top: 106px;
		gap: 20px;
		padding: 0 20px;
		padding-top: 110px;
		padding-bottom: 40px;
	}

	.p6-sl1 h1{
		width: 90%;
	}
	.p6-sl1 p{
		width: 100%;
	}

	.pagination{
		margin-top: 0;
		grid-column: span 4;
	}

	.pagination .prev, 
	.pagination .next{
		display: none;
	}


	/* SINGOLO ARTICOLO M */

	.p7-sl1{
		grid-column: span 4;
		gap: 20px;
		padding-top: 125px;
		padding-bottom: 0px;
	}

	.p7-sl1-elements{
		gap: 20px;
	}

	.author-avatar{
		width: 22px;
		height: 22px;
		margin-right: 5px;
	}

	.linkCont{
		grid-column: span 4;
		gap: 16px;
		margin-top: 48px;
		margin-bottom: 28px;
	}

	.p7-sl2-content{
		grid-column: span 4;
		gap: 32px;
		margin-bottom: 100px;
	}

	.argomentoPost ul{
		margin: 20px 30px;
	}

	.boxArgomentoPost{
		padding: 40px 32px;
		flex-direction: column;
		align-items: flex-start;
		gap: 32px;
		border-radius: 16px;

		background: url('img/bckPostM.jpg');	
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}

	.boxArgomentoPost div{
		width: 100%;
	}

	.linkCont{
		margin-top: 0px;
		margin-bottom: 100px;
		position: relative;
	}

	.p7-sl3{
		box-sizing: border-box;
		padding-top: 0px;
		padding-bottom: 150px;
	}

	/* CAREERS M */
	
	.p8-sl2-cont{
		grid-column: span 4;
	}

	.p8-sl2{
		padding-bottom: 100px;
	}
	.careersCard{
		flex-direction: column;
		padding: 32px;
		padding-top: 42px;
		height: auto;
		border-radius: 15px;
		gap: 20px;
	}

	/* CONTATTI M */

	.p9-sl1{
		padding-top: 110px;
		padding-bottom: 100px;
	}
	.p9-sl1 h1{
		grid-column: span 4;
		margin-bottom: 0;

		margin-bottom: 30px;
	}

	.p9-sl1-box1{
		grid-column: span 4;
	}

	.p9-sl1-box2{
		grid-column: span 4;
		gap: 32px;
	}

	.p9-sl1-maps{
		gap: 24px;
	}

	.inputFieldCont{
		gap: 28px;
	}
	.inputFieldCont label{
		width: 100%;
	}

	.wpcf7-list-item label{
		margin-top: 28px;
		margin-bottom: 28px;
	}

	.wpcf7-submit{
		width: 100%;
	}

}