.wpcf7-not-valid-tip {
	z-index: 10;
}

.wpcf7-checkbox {
	display:block;
	width: 100%;
	margin-bottom: 15px;
	font-size: 16px;
	font-weight: 600;
}
	
	.wpcf7-checkbox span {
		opacity: 1;
	}
	
	.wpcf7-checkbox .wpcf7-list-item label {
		display: block;
		border: 0;
		padding: 6px 0;
		font-weight: 400;
		margin: 0 0;
	}

		.wpcf7-checkbox .wpcf7-list-item label input {
			position: absolute;
			width: 1px;
			height: 1px;
			clip-path: inset(50%);
			opacity: 1;
			visibility: visible;
		}
		
		.wpcf7-checkbox label .wpcf7-list-item-label {
			display: flex;
			gap: 10px;
			font-size: 14px;
			font-weight: 400;
			opacity: 1;
			position: relative;
		}
			
			.wpcf7-checkbox label .wpcf7-list-item-label:before {
				content: "";
				display: block;
				width: 16px;
				height: 16px;
				aspect-ratio: 1 / 1;
				border-radius: 3px;
				border: 1px solid #fff;
				
				background-image: url(../img/icoCheckGreen.svg);
				background-size: 0 auto;
				background-repeat: no-repeat;
				background-position: 50% 50%;
				transition: all 0.3s ease;
			}
		
		.wpcf7-checkbox label input:checked + .wpcf7-list-item-label:before {
			background-color: #fff;
			background-size: 14px auto;
			transition: all 0.3s ease;
		}	

.wpcf7-checkbox.wpcf7-exclusive-checkbox {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 25px;
}

	label.radioLabel {
		display:block;
		width: 100%;
		margin-bottom: 15px;
		font-size: 16px;
		font-weight: 600;
	}
	
	.wpcf7-checkbox.wpcf7-exclusive-checkbox .wpcf7-list-item label {
		display: block;
		border: 0;
		padding: 5px 0;
		border-radius: 0;
		font-weight: 400;
	}

		.wpcf7-checkbox.wpcf7-exclusive-checkbox .wpcf7-list-item label input {
			position: absolute;
			width: 1px;
			height: 1px;
			clip-path: inset(50%);
			opacity: 1;
			visibility: visible;
		}
		
		.wpcf7-checkbox.wpcf7-exclusive-checkbox .wpcf7-list-item label .wpcf7-list-item-label {
			display: flex;
			align-items: center;
			gap: 10px;
			font-size: 16px;
			
			position: relative;
		}
			
			.wpcf7-checkbox.wpcf7-exclusive-checkbox .wpcf7-list-item label .wpcf7-list-item-label:before {
				content: "";
				display: block;
				width: 20px;
				height: 20px;
				border-radius: 50%;
				border: 1px solid #fff;
				
				background-image: url(../img/icoCheckGreen.svg);
				background-size: 0 auto;
				background-repeat: no-repeat;
				background-position: 50% 50%;
				transition: all 0.3s ease;
			}
		
		.wpcf7-checkbox.wpcf7-exclusive-checkbox .wpcf7-list-item label input:checked + .wpcf7-list-item-label:before {
			background-color: #fff;
			background-size: 14px auto;
			transition: all 0.3s ease;
		}

form.greenBg {
	
}

	form.greenBg label {
		display: block;
		font-size: 16px;
		font-weight: 400;
		margin: 25px 0;
	}
	
	form.greenBg input.wpcf7-text, 
	form.greenBg input.wpcf7-textarea,
	form.greenBg input.wpcf7-nip {
		margin-bottom: 30px;
		padding: 18px 16px;
		display: block;
		width: 100%;
		border: 0;
		border-radius: 10px;
		font-family: "Geist";
		font-size: 1.6rem;
		font-weight: 500;
	}
	

	form.greenBg input.wpcf7-file.invalid + .cf7addons-file,
	form.greenBg input.wpcf7-text.invalid, 
	form.greenBg input.wpcf7-textarea.invalid,
	form.greenBg input.wpcf7-nip.invalid {
		background: #ffd8d8 !important;
	}
		
	form.greenBg textarea {
		resize: unset;
		width: 100%;
		height: 120px;
	}
	
	form.greenBg .submitButton {
		margin-top: 20px;
		text-align: center;
	}
	
	form.greenBg button.btn-sms-verify,
	form.greenBg button.wpcf7-submit {
		position: relative;
		display: inline-block;
		background-color: #000000;
		cursor: pointer;
		border: 1px solid transparent;
		border-radius: 34px;
		font-weight: 300;
		letter-spacing: 0.55px;
		color: #ffffff;
        padding: 12px 25px;
        line-height: 2.7rem;
		font-size: 1.5rem;
		transition: all 0.2s ease;
	}

		form.greenBg button.btn-sms-verify:after,
		form.greenBg button.wpcf7-submit:after {
			content: "";
			position: relative;
			right: 0;
			display: inline-block;
			margin-left: 30px;
			margin-bottom: -2px;
			background-image: url("../img/ico_arrow.svg");
			background-size: cover;
			width: 20px;
			height: 16px;
			transition: 0.55s;
		}

	form.greenBg button.btn-sms-verify:hover,
	form.greenBg button.wpcf7-submit:hover {
        background-color: #333333;
    }
    
		form.greenBg button.btn-sms-verify:hover:after,
		form.greenBg button.wpcf7-submit:hover:after {
			right: -10px;
		}
		
	form.greenBg .wpcf7-response-output {
		background: #165d37;
		border: 0px;
		color: #fff;
		margin: 20px 0 0 0 !important;
		padding: 15px;
		box-sizing: border-box;
		font-weight: 500;
		font-size: 16px;
		line-height: 1.4;
		border-radius: 8px;
		text-align: center;
	}

	form.greenBg .cf7-hubspot-sms-container {
		border-radius: 8px;
		background: #165d37;
		border: 0 !important;
		padding: 20px;
		box-sizing: border-box;
		text-align: center;
	}

		form.greenBg .cf7-hubspot-sms-container input {
			padding: 18px 16px;
			display: block;
			width: 100%;
			max-width: 300px !important;
			margin: 0 auto 15px auto !important;
			border: 0;
			border-radius: 10px;
			font-family: "Geist";
			font-size: 1.6rem;
			font-weight: 500;
			background: #fff;
		}
		
		
form.lightBg {
	padding: 0 10%;
	box-sizing: border-box;
	color: #000;
}

	form.lightBg label {
		display: block;
		font-size: 16px;
		font-weight: 400;	
		color: #000;
		margin: 25px 0;
	}

		form.lightBg label strong {
			display: block;
			margin-bottom: 10px;
		}

		form.lightBg label input::placeholder {
			color: #bbb;
			font-weight:300;
		}
		
	form.lightBg input.wpcf7-text, 
	form.lightBg input.wpcf7-textarea,
	form.lightBg input.wpcf7-nip {
		margin-bottom: 0;
		padding: 18px 16px;
		display: block;
		width: 100%;
		border: 0;
		border-radius: 10px;
		font-family: "Geist";
		font-size: 1.6rem;
		font-weight: 500;
	}

		form.lightBg .wpcf7-checkbox label .wpcf7-list-item-label:before {
			border: 1px solid #000;
				background-image: url(../img/icoCheck.svg);
		}
		
		form.lightBg .wpcf7-checkbox label input:checked + .wpcf7-list-item-label:before {
			border: 1px solid #389764;
			background-color: #389764;
			background-size: 14px auto;
			transition: all 0.3s ease;
		}	

	form.lightBg .wpcf7-select {
		min-height: 20px;
	}

		form.lightBg .wpcf7-select .ts-control {
			border: 0 !important;
			margin-bottom: 0;
			padding: 18px 16px !important;
			display: block;
			width: 100%;
			height: unset !important;
			border: 0;
			border-radius: 10px;
			font-family: "Geist";
			font-size: 1.6rem;
			font-weight: 500;
			box-shadow: unset !important;
			background-color: #fff;
			background-image: unset;
		}
			
		form.lightBg .wpcf7-select .ts-control:after {
			border: 0 !important;
		}
		
		
	form.lightBg .formInfo {
		font-size: 16px;
		margin: 30px 0;
	}	
			
	form.lightBg textarea {
		resize: unset;
		width: 100%;
		height: 120px;
	}
	
	form.lightBg .submitButton {
		margin-top: 20px;
		text-align: center;
	}
	
	form.lightBg button.btn-sms-verify,
	form.lightBg button.wpcf7-submit {
		position: relative;
		display: inline-block;
		background-color: #000000;
		cursor: pointer;
		border: 1px solid transparent;
		border-radius: 34px;
		font-weight: 300;
		letter-spacing: 0.55px;
		color: #ffffff;
        padding: 12px 25px;
        line-height: 2.7rem;
		font-size: 1.5rem;
		transition: all 0.2s ease;
	}

		form.lightBg button.btn-sms-verify:after,
		form.lightBg button.wpcf7-submit:after {
			content: "";
			position: relative;
			right: 0;
			display: inline-block;
			margin-left: 30px;
			margin-bottom: -2px;
			background-image: url("../img/ico_arrow.svg");
			background-size: cover;
			width: 20px;
			height: 16px;
			transition: 0.55s;
		}

	form.lightBg button.btn-sms-verify:hover,
	form.lightBg button.wpcf7-submit:hover {
        background-color: #333333;
    }
    
		form.lightBg button.btn-sms-verify:hover:after,
		form.lightBg button.wpcf7-submit:hover:after {
			right: -10px;
		}
		
	form.lightBg .wpcf7-response-output {
		background: #165d37;
		border: 0px;
		color: #fff;
		margin: 20px 0 0 0 !important;
		padding: 15px;
		box-sizing: border-box;
		font-weight: 500;
		font-size: 16px;
		line-height: 1.4;
		border-radius: 8px;
		text-align: center;
	}

	form.lightBg .cf7-hubspot-sms-container {
		border-radius: 8px;
		background: #165d37;
		border: 0 !important;
		padding: 20px;
		color: #fff;
		box-sizing: border-box;
		text-align: center;
	}

		form.lightBg .cf7-hubspot-sms-container input {
			padding: 18px 16px;
			display: block;
			width: 100%;
			max-width: 300px !important;
			margin: 0 auto 15px auto !important;
			border: 0;
			border-radius: 10px;
			font-family: "Geist";
			font-size: 1.6rem;
			font-weight: 500;
			background: #fff;
		}
		
		
.ts-wrapper.single .ts-control:after {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
	transform: translateY(-50%);
	border: 0 !important;
	width: 18px;
	height: 18px;
	
	background-image: url(../img/icoArrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	transition: all 0.2s ease;
}

.ts-wrapper.single .ts-control:not(.rtl):after {
    right: 15px;
}

.ts-wrapper.single.dropdown-active .ts-control:after {
	transform: translateY(-50%) rotate(180deg);
	transition: all 0.2s ease;
}



form.newsletter {
	
}

	form.newsletter label {
		display: block;
		font-size: 16px;
		font-weight: 400;
		margin: 25px 0;
	}
	
	form.newsletter input.wpcf7-text {
		margin-bottom: 30px;
		padding: 18px 16px;
		display: block;
		width: 100%;
		border: 0;
		border-radius: 10px;
		font-family: "Geist";
		font-size: 1.6rem;
		font-weight: 500;
	}
	
	form.newsletter input.wpcf7-text.invalid {
		background: #ffd8d8;
	}
	
	form.newsletter .formInfo {
		font-size: 14px;
		margin: 20px 0;
		line-height: 1.4;
	}	
			
	form.newsletter button.wpcf7-submit {
		position: relative;
		display: inline-block;
		background-color: #389764;
		cursor: pointer;
		border: 1px solid transparent;
		border-radius: 34px;
		font-weight: 300;
		letter-spacing: 0.55px;
		color: #ffffff;
        padding: 12px 25px;
        line-height: 2.7rem;
		font-size: 1.5rem;
		transition: all 0.2s ease;
	}

		form.newsletter button.wpcf7-submit:after {
			content: "";
			position: relative;
			right: 0;
			display: inline-block;
			margin-left: 30px;
			margin-bottom: -2px;
			background-image: url("../img/ico_arrow.svg");
			background-size: cover;
			width: 20px;
			height: 16px;
			transition: 0.55s;
		}

	form.newsletter button.wpcf7-submit:hover {
        background-color: #333333;
    }
    
		form.newsletter button.wpcf7-submit:hover:after {
			right: -10px;
		}

form.greenBg button.wpcf7-submit.is-loading:after,
form.lightBg button.wpcf7-submit.is-loading:after,
form.newsletter button.wpcf7-submit.is-loading:after {
	content: "";
	position: relative;
	right: 0;
	display: inline-block;
	margin-left: 30px;
	margin-bottom: -2px;
	width: 16px;
	height: 16px;
	border: 2px solid #ffffff;
	border-right-color: transparent;
	border-radius: 50%;
	animation: cf7forms-spin 0.8s linear infinite;
	background-image: none;
}

@keyframes cf7forms-spin {
	to { transform: rotate(360deg); }
}
