.wpfox_lp_form_section {
	--form-width: min(540px,calc(100vw - 80px));
	--form-overlap-top: 8em;
	--form-overlap-bottom: 3.5em;
	
	.heading-section {
		
		& > .wrapper {
			margin: 0 calc(50% - 50vw);
			padding: 0 calc(50vw - 50%);
			background-color: #002c77;
			color: #ebb700;
			border-bottom: 15px solid #ebb700;
			min-height: 15em;
			display: flex;
			flex-direction: column;
			align-items: flex-end;
			justify-content: center;

			& .section-heading {
				color: #ebb700;
				max-width: calc(100% - var(--form-width) - 40px);
				text-align: right;
				margin: 0;
				font-family: 'gill_sans', sans-serif;
				font-weight: 700;
				padding: 0.5em 0;
				font-size: 3.5em !important;
			}
			
			&::after {
				content: "";
				display: block;
				clear: both;
			}
		}
	}
	
	& .form-section {
		padding-bottom: var(--form-overlap-bottom);
		
		& > .wrapper {
			margin: -1px calc(50% - 50vw);
			padding: 1px calc(50vw - 50%);
			position: relative;
			box-shadow: 0 5px 3px rgba(0,0,0,0.15);
			
			& > .bgimage {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				
				img {
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
			
			& .form-heading {
				font-family: 'gill_sans', sans-serif;
				font-weight: 700;
				color: #002c77;
				font-size: 2.3em;
				text-align: center;
				margin: 0;
			}
			
			& .form-description {
				margin: 0.4em 0 0;
				text-align: center;
			}
			
			.form-section-inner {
				margin-top: calc(-1 * var(--form-overlap-top));
				margin-bottom: calc(-1 * var(--form-overlap-bottom));
			}
			
			.form-content {
				background-color: #fff;
				z-index: 1;
				position: relative;
				padding: 40px;
				border-radius: 15px;
				width: var(--form-width);
				box-shadow: 0 0 10px rgba(0,0,0,0.35);
				
				.gform_wrapper {
					margin: 2em 0 0;
				}
				
				.embed-code {
					
					iframe {
						border: none;
					}
				}
			}
		}
		
	}
}

@media (max-width: 63.999em) {
	.wpfox_lp_form_section {
		--form-overlap-top: 5em;
		--form-overlap-bottom: 2em;
		
		.heading-section {
			& > .wrapper {
				align-items: center;
				
				& .section-heading {
					padding: 1.5em 0 2.5em;
					max-width: none;
					text-align: center;
					font-size: 3em !important;
				}
			}
		}
	
		& .form-section {
			
			& .form-content {
				margin: 0 auto;
				
				& .form-heading {
					font-size: 2.1em;
				}
			}
		}
	}
}

@media (max-width: 39.999em) {
	.wpfox_lp_form_section {
		
		.heading-section {
			& > .wrapper {
				
				& .section-heading {
					font-size: 2.5em !important;
				}
			}
		}
	
		& .form-section {
			
			& .form-content {
				
				& .form-heading {
					font-size: 1.9em;
				}
				
			}
		}
	}
}