/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/
/* FOOTER */
.footer{
	display: flex;
	justify-content: center;
	background-color: #164284;
}
/* FORM CONTATTI */
.contatti{
	background-color: #133870;
}
.gridContatti{
	display: flex;
}
h2.titleContatti, p.textContatti, h2.titlePopup{
	font-weight: 900;
	font-family: 'Roboto', sans-serif;
}
h2.titleContatti, h2.titlePopup{
	-webkit-text-fill-color: transparent;
	-webkit-background-clip: text !important;
	background: linear-gradient(90deg, #FCBB1A 0%, #ED671A 100%);
}
p.textContatti{
	color: white;
	margin-bottom: 0;
}
.ksf-form-main-container{
	margin: 0 !important;
	width: 100% !important;
}
.campo input, .campo input:focus, .campo input::placeholder, .campo textarea, .campo textarea:focus, .campo textarea::placeholder, label.privacyLabel, label.newsletterLabel, button.ksf-form-submit, p.info-error-text{
	font-family: 'Roboto', sans-serif !important;
}
.campo input, .campo input:focus, .campo input::placeholder, .campo textarea, .campo textarea:focus, .campo textarea::placeholder, label.privacyLabel, label.newsletterLabel, button.ksf-form-submit, button.ksf-form-submit:focus, button.ksf-form-submit:hover{
	color: white !important;
}
.campo input, .campo input:focus, .campo input::placeholder, .campo textarea, .campo textarea:focus, .campo textarea::placeholder, label.privacyLabel, label.newsletterLabel{
	font-weight: 300 !important;
}
.campo input, .campo input:focus, .campo input:-webkit-autofill, .campo input:-webkit-autofill:hover, .campo input:-webkit-autofill:focus, .campo textarea, .campo textarea:focus, .campo textarea:-webkit-autofill, .campo textarea:-webkit-autofill:hover, .campo textarea:-webkit-autofill:focus {
	outline: none !important;
	-webkit-text-fill-color: white;
	background: #164284 !important;
	border: none !important;
	-webkit-box-shadow: 0 0 0px 1000px #164284 inset;
  	transition: background-color 5000s ease-in-out 0s;
}
.boxPrivacy{
	display: flex;
	flex-direction: column;
}
.sub-boxPrivacy{
	display: flex;
}
.boxPrivacy input[type="checkbox"] {
	appearance: none;
	position: relative;
    aspect-ratio: 1 / 1;
	background-color: transparent !important;
}
.boxPrivacy input[type="checkbox"] {
	border-radius: 50%;
    border: 1px solid white !important;
}
.boxPrivacy input[type="checkbox"]:checked::after{
	top: 50%;
	left: 50%;
	content: '';
	border-radius: 50%;
	position: absolute;
	aspect-ratio: 1 / 1;
	background-color: #F1801B;
	font-weight: 900 !important;
	transform: translate(-50%, -50%);
}
button.ksf-form-submit{
	display: flex;
	align-items: center;
	padding: 0 !important;
	width: 100% !important;
	justify-content: center;
	border: none !important;
}
button.ksf-form-submit, button.ksf-form-submit:focus, button.ksf-form-submit:hover{
	background: linear-gradient(90deg, #FCBB1A 0%, #ED671A 100%) !important;
}
.ksf-form-element.ksf-error:after {
	content: '!' !important;
    color: #F1801B !important;
	background: transparent !important;
	font-family: 'Roboto', sans-serif !important;
}
p.ksf-result-submit{
	display: none !important;
}
p.info-error-text{
	margin-top: 0.4vw;
	color: #F1801B !important;
	font-weight: 700 !important;
	margin-bottom: 0 !important;
}
/* POPUP FORM */
.popupForm.showPopup {
	opacity: 1;
	z-index: 997;
 	transform: scale(1);
}
.popupForm{
 	top: 0;
	left: 0;
	opacity: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	display: flex;
	position: fixed;
	overflow-y: auto;
	transform: scale(0);
    justify-content: center;
	background-color: #0000009C;
	transition: all .3s ease-in-out;
}
.popupForm .closePopup {
	cursor: pointer;
 	position: absolute;
}
.innerPopup {
	margin: auto 0;
	overflow: auto;
	position: relative;
	height: fit-content;
	background-color: #133870;
}
.closePopup span {
	line-height: 1;
	color: white;
}
@media (max-width: 550px){
	/* FORM CONTATTI */
	.gridContatti{
		padding: 12vw 8vw;
		grid-gap: 7.5vw;
		flex-direction: column;
	}
	h2.titleContatti{
		width: 76vw;
		font-size: 10vw;
		line-height: 1.07;
		margin-bottom: 6.5vw;
	}
	p.textContatti{
		font-size: 4.5vw;
		line-height: 1.54;
	}
	.ksf-form-element.campo {
    	margin: 0 0 3.5vw !important;
	}
	.campo input.ksf-form-text, .campo textarea, label.privacyLabel, label.newsletterLabel{
		font-size: 3.6vw !important;
		line-height: 1.3 !important;
	}
	.campo input.ksf-form-text, .campo textarea, button.ksf-form-submit{
		border-radius: 8vw !important;
	}
	.campo input.ksf-form-text, .ksf-form-element.ksf-error:after{
    	height: 14vw !important;
	}
	.campo input.ksf-form-text{
		padding: 0 6vw !important;
	}
	.campo textarea {
    	min-height: 14vw;
    	padding: 4.65vw 6vw;
	}
	.boxPrivacy {
    	margin-bottom: 6vw;
	}
	.sub-boxPrivacy{
		grid-gap: 1.5vw;
		align-items: flex-start;
	}
	.sub-boxPrivacy:last-child{
		margin-top: 3.5vw;
	}
	.boxPrivacy input[type="checkbox"] {
		width: 4.1vw;
		flex: 0 0 4.1vw;
		margin-top: 0.2vw;
	}
	.boxPrivacy input[type="checkbox"]:checked::after{
		width: 2vw;
	}
	button.ksf-form-submit{
		height: 14vw;
		font-size: 4.5vw !important;
	}
	p.info-error-text{
		font-size: 3.2vw !important;
	}
	.ksf-form-element.ksf-error:after {
		width: 14vw !important;
		font-size: 6.7vw !important;
		line-height: 14vw !important;
	}
	/* POPUP FORM */
	.innerPopup {
		width: 100vw;
		height: 100vh;
    	padding: 12vw 8vw;
	}
	h2.titlePopup {
		font-size: 8.65vw;
		line-height: 1.06;
		margin-bottom: 7vw;
	}
	.closePopup {
    	top: 3vw;
    	right: 3vw;
	}
	.closePopup span {
    	font-size: 6.5vw;
	}
	/* FOOTER */
	.footer{
		padding: 7vw 0 2vw;
	}
	img.logoFooter{
		width: 42vw;
	}
}
@media (min-width: 551px) and (max-width: 766.9px){
	/* FORM CONTATTI */
	.gridContatti{
		padding: 10vw 8vw;
		grid-gap: 6vw;
		flex-direction: column;
	}
	h2.titleContatti{
		font-size: 8.54vw;
		line-height: 1.07;
		margin-bottom: 5vw;
	}
	p.textContatti{
		width: 65vw;
		font-size: 3.3vw;
		line-height: 1.54;
	}
	.ksf-form-element.campo {
    	margin: 0 0 3vw !important;
	}
	.campo input.ksf-form-text, .campo textarea, label.privacyLabel, label.newsletterLabel{
		font-size: 2.6vw !important;
		line-height: 1.3 !important;
	}
	.campo input.ksf-form-text, .campo textarea, button.ksf-form-submit{
		border-radius: 8vw !important;
	}
	.campo input.ksf-form-text, .ksf-form-element.ksf-error:after{
    	height: 10.5vw !important;
	}
	.campo input.ksf-form-text{
		padding: 0 4.5vw !important;
	}
	.campo textarea {
    	min-height: 10.5vw;
    	padding: 3.55vw 4.5vw;
	}
	.boxPrivacy {
    	margin-bottom: 4.5vw;
	}
	.sub-boxPrivacy{
		grid-gap: 1vw;
	}
	.sub-boxPrivacy:first-child{
		align-items: flex-start;
	}
	.sub-boxPrivacy:last-child{
		margin-top: 2.5vw;
		align-items: center;
	}
	.sub-boxPrivacy:first-child input[type="checkbox"]{
		margin-top: 0.2vw;
	}
	.boxPrivacy input[type="checkbox"] {
		width: 3.1vw;
		flex: 0 0 3.1vw;
	}
	.boxPrivacy input[type="checkbox"]:checked::after{
		width: 1.6vw;
	}
	button.ksf-form-submit{
		height: 10.5vw;
		font-size: 3.3vw !important;
	}
	p.info-error-text{
		font-size: 2.2vw !important;
	}
	.ksf-form-element.ksf-error:after {
		width: 10.5vw !important;
		font-size: 5vw !important;
		line-height: 10.5vw !important;
	}
	/* POPUP FORM */
	.innerPopup {
		width: 100vw;
		height: 100vh;
    	padding: 10vw 8vw;
	}
	h2.titlePopup {
		width: 74vw;
		font-size: 7.2vw;
		line-height: 1.06;
		margin-bottom: 6.5vw;
	}
	.closePopup {
    	top: 2vw;
    	right: 2vw;
	}
	.closePopup span {
    	font-size: 5vw;
	}
	/* FOOTER */
	.footer{
		padding: 6vw 0 2vw;
	}
	img.logoFooter{
		width: 35vw;
	}
}
@media (min-width: 767px) and (max-width: 899.9px){
	/* FORM CONTATTI */
	.gridContatti{
		padding: 8vw;
		grid-gap: 5vw;
		flex-direction: column;
	}
	.col2Contatti{
		width: 68vw;
	}
	h2.titleContatti{
		width: 63vw;
		font-size: 6.13vw;
		line-height: 1.07;
		margin-bottom: 4vw;
	}
	p.textContatti{
		width: 47vw;
		font-size: 2.34vw;
		line-height: 1.54;
	}
	.ksf-form-element.campo {
    	margin: 0 0 2vw !important;
	}
	.campo input.ksf-form-text, .campo textarea, label.privacyLabel, label.newsletterLabel{
		font-size: 1.89vw !important;
		line-height: 1.3 !important;
	}
	.campo input.ksf-form-text, .campo textarea, button.ksf-form-submit{
		border-radius: 5vw !important;
	}
	.campo input.ksf-form-text, .ksf-form-element.ksf-error:after{
    	height: 7.5vw !important;
	}
	.campo input.ksf-form-text{
		padding: 0 3.2vw !important;
	}
	.campo textarea {
    	min-height: 7.5vw;
    	padding: 2.51vw 3.2vw;
	}
	.boxPrivacy {
    	margin-bottom: 3.5vw;
	}
	.sub-boxPrivacy{
		grid-gap: 0.7vw;
		align-items: center;
	}
	.sub-boxPrivacy:last-child{
		margin-top: 2vw;
	}
	.boxPrivacy input[type="checkbox"] {
		width: 2.1vw;
		flex: 0 0 2.1vw;
	}
	.boxPrivacy input[type="checkbox"]:checked::after{
		width: 1vw;
	}
	button.ksf-form-submit{
		height: 7.5vw;
		font-size: 2.34vw !important;
	}
	p.info-error-text{
		font-size: 1.65vw !important;
	}
	.ksf-form-element.ksf-error:after {
		width: 7.5vw !important;
		font-size: 3.5vw !important;
		line-height: 7.5vw !important;
	}
	/* POPUP FORM */
	.innerPopup {
		width: 84vw;
    	padding: 6.5vw;
	}
	h2.titlePopup {
		font-size: 5.17vw;
		line-height: 1.06;
		margin-bottom: 4.5vw;
	}
	.closePopup {
    	top: 1.5vw;
    	right: 1.5vw;
	}
	.closePopup span {
    	font-size: 3.3vw;
	}
	/* FOOTER */
	.footer{
		padding: 5.5vw 0 2vw;
	}
	img.logoFooter{
		width: 25vw;
	}
}
@media (min-width: 900px) and (max-width: 1099.9px){
	/* FORM CONTATTI */
	.gridContatti{
		padding: 6vw 7vw;
	}
	.col1Contatti{
		flex: 1;
	}
	.col2Contatti{
		flex: 0 0 43vw;
	}
	h2.titleContatti{
		width: 40vw;
		font-size: 5.22vw;
		line-height: 1.07;
		margin-bottom: 3.5vw;
	}
	p.textContatti{
		width: 40vw;
		font-size: 2vw;
		line-height: 1.54;
	}
	.ksf-form-element.campo {
    	margin: 0 0 1.8vw !important;
	}
	.campo input.ksf-form-text, .campo textarea, label.privacyLabel, label.newsletterLabel{
		font-size: 1.61vw !important;
		line-height: 1.3 !important;
	}
	.campo input.ksf-form-text, .campo textarea, button.ksf-form-submit{
		border-radius: 3vw !important;
	}
	.campo input.ksf-form-text, .ksf-form-element.ksf-error:after{
    	height: 6vw !important;
	}
	.campo input.ksf-form-text{
		padding: 0 2.7vw !important;
	}
	.campo textarea {
    	min-height: 6vw;
    	padding: 1.95vw 2.7vw;
	}
	.boxPrivacy {
    	margin-bottom: 3vw;
	}
	.sub-boxPrivacy{
		grid-gap: 0.7vw;
	}
	.contatti .sub-boxPrivacy:first-child{
		align-items: flex-start;
	}
	.contatti .sub-boxPrivacy:last-child{
		align-items: center;
	}
	.sub-boxPrivacy:last-child{
		margin-top: 1.5vw;
	}
	.contatti .sub-boxPrivacy:first-child input[type="checkbox"]{
		margin-top: 0.2vw;
	}
	.boxPrivacy input[type="checkbox"] {
		width: 1.8vw;
		flex: 0 0 1.8vw;
	}
	.boxPrivacy input[type="checkbox"]:checked::after{
		width: 0.9vw;
	}
	button.ksf-form-submit{
		height: 6vw;
		font-size: 2vw !important;
	}
	p.info-error-text{
		font-size: 1.35vw !important;
	}
	.ksf-form-element.ksf-error:after {
		width: 6vw !important;
		font-size: 2.8vw !important;
		line-height: 6vw !important;
	}
	/* POPUP FORM */
	.innerPopup {
		width: 67vw;
    	padding: 5vw 5.5vw;
	}
	h2.titlePopup {
		width: 46vw;
		font-size: 4.41vw;
		line-height: 1.06;
		margin-bottom: 3.5vw;
	}
	.popupForm .sub-boxPrivacy{
		align-items: center;
	}
	.closePopup {
    	top: 1.2vw;
    	right: 1.2vw;
	}
	.closePopup span {
    	font-size: 2.8vw;
	}
	/* FOOTER */
	.footer{
		padding: 5vw 0 1.5vw;
	}
	img.logoFooter{
		width: 22vw;
	}
}
@media (min-width: 1100px) and (max-width: 1400px){
	/* FORM CONTATTI */
	.gridContatti{
		padding: 5vw 8vw;
	}
	.col1Contatti{
		flex: 1;
	}
	.col2Contatti{
		flex: 0 0 46vw;
	}
	h2.titleContatti{
		width: 32vw;
		font-size: 4.27vw;
		line-height: 1.07;
		margin-bottom: 3vw;
	}
	p.textContatti{
		width: 32vw;
		font-size: 1.63vw;
		line-height: 1.54;
	}
	.ksf-form-element.campo {
    	margin: 0 0 1.5vw !important;
	}
	.campo input.ksf-form-text, .campo textarea, label.privacyLabel, label.newsletterLabel{
		font-size: 1.32vw !important;
		line-height: 1.3 !important;
	}
	.campo input.ksf-form-text, .campo textarea, button.ksf-form-submit{
		border-radius: 3vw !important;
	}
	.campo input.ksf-form-text, .ksf-form-element.ksf-error:after{
    	height: 5vw !important;
	}
	.campo input.ksf-form-text{
		padding: 0 2.2vw !important;
	}
	.campo textarea {
    	min-height: 5vw;
    	padding: 1.64vw 2.2vw;
	}
	.boxPrivacy {
    	margin-bottom: 2.5vw;
	}
	.sub-boxPrivacy{
		grid-gap: 0.5vw;
		align-items: center;
	}
	.sub-boxPrivacy:last-child{
		margin-top: 1vw;
	}
	.boxPrivacy input[type="checkbox"] {
		width: 1.5vw;
		flex: 0 0 1.5vw;
	}
	.boxPrivacy input[type="checkbox"]:checked::after{
		width: 0.7vw;
	}
	button.ksf-form-submit{
		height: 5.2vw;
		font-size: 1.63vw !important;
	}
	p.info-error-text{
		font-size: 1vw !important;
	}
	.ksf-form-element.ksf-error:after {
		width: 5vw !important;
		font-size: 2.2vw !important;
		line-height: 5vw !important;
	}
	/* POPUP FORM */
	.innerPopup {
		width: 55vw;
    	padding: 4vw 5vw;
	}
	h2.titlePopup {
		width: 37vw;
		font-size: 3.6vw;
		line-height: 1.06;
		margin-bottom: 2.5vw;
	}
	.closePopup {
    	top: 1vw;
    	right: 1vw;
	}
	.closePopup span {
    	font-size: 2.4vw;
	}
	/* FOOTER */
	.footer{
		padding: 4vw 0 1.5vw;
	}
	img.logoFooter{
		width: 19vw;
	}
}
@media (min-width: 1401px){
	/* FORM CONTATTI */
	.gridContatti{
		padding: 5vw 15vw;
	}
	.col1Contatti{
		flex: 1;
	}
	.col2Contatti{
		flex: 0 0 37vw;
	}
	h2.titleContatti{
		width: 26vw;
		font-size: 3.4vw;
		line-height: 1.07;
		margin-bottom: 2.5vw;
	}
	p.textContatti{
		width: 25vw;
		font-size: 1.25vw;
		line-height: 1.54;
	}
	.ksf-form-element.campo {
    	margin: 0 0 1.2vw !important;
	}
	.campo input.ksf-form-text, .campo textarea, label.privacyLabel, label.newsletterLabel{
		font-size: 1.05vw !important;
		line-height: 1.3 !important;
	}
	.campo input.ksf-form-text, .campo textarea, button.ksf-form-submit{
		border-radius: 3vw !important;
	}
	.campo input.ksf-form-text, .ksf-form-element.ksf-error:after{
    	height: 4vw !important;
	}
	.campo input.ksf-form-text{
		padding: 0 1.8vw !important;
	}
	.campo textarea {
    	min-height: 4vw;
    	padding: 1.3vw 1.8vw;
	}
	.boxPrivacy {
    	margin-bottom: 2vw;
	}
	.sub-boxPrivacy{
		grid-gap: 0.5vw;
		align-items: center;
	}
	.sub-boxPrivacy:last-child{
		margin-top: 0.8vw;
	}
	.boxPrivacy input[type="checkbox"] {
		width: 1.2vw;
		flex: 0 0 1.2vw;
	}
	.boxPrivacy input[type="checkbox"]:checked::after{
		width: 0.6vw;
	}
	button.ksf-form-submit{
		height: 4vw;
		font-size: 1.25vw !important;
	}
	p.info-error-text{
		font-size: 0.8vw !important;
	}
	.ksf-form-element.ksf-error:after {
		width: 4vw !important;
		font-size: 1.8vw !important;
		line-height: 4vw !important;
	}
	/* POPUP FORM */
	.innerPopup {
		width: 45vw;
    	padding: 4vw;
	}
	h2.titlePopup {
		width: 29vw;
		font-size: 2.82vw;
		line-height: 1.06;
		margin-bottom: 2vw;
	}
	.closePopup {
    	top: 1vw;
    	right: 1vw;
	}
	.closePopup span {
    	font-size: 1.7vw;
	}
	/* FOOTER */
	.footer{
		padding: 4vw 0 1.5vw;
	}
	img.logoFooter{
		width: 16vw;
	}
}