/*
 * WPBakery compatibility.
 *
 * The ported sections are full-bleed <section> elements that manage their own
 * width, padding and background. WPBakery wraps every element in row/column/
 * element containers that add gutters and bottom margins of their own, which
 * would otherwise inset the sections and cause horizontal overflow.
 */

.vc_row.wpb_row {
	margin-left: 0;
	margin-right: 0;
}

.vc_row .vc_column_container {
	padding-left: 0;
	padding-right: 0;
}

.vc_row .vc_column_container > .vc_column-inner {
	padding-left: 0;
	padding-right: 0;
}

.wpb-content-wrapper .wpb_content_element,
.wpb-content-wrapper .wpb_raw_code,
.wpb-content-wrapper .wpb_raw_html,
.wpb-content-wrapper .wpb_text_column,
.wpb-content-wrapper .wpb_row {
	margin-bottom: 0;
}

.wpb_raw_code .wpb_wrapper,
.wpb_text_column .wpb_wrapper {
	display: block;
}

/* ---------------------------------------------------------------------------
 * Contact Form 7
 *
 * The mockup's form was static markup; CF7 renders its own wrappers, spinner
 * and response element. These rules keep the rendered form geometrically
 * identical to the approved mockup. Values verified against the mockup in a
 * real browser, not assumed.
 * ------------------------------------------------------------------------- */

#contact .wpcf7,
#contact .wpcf7 form.wpcf7-form {
	margin: 0;
}

/*
 * The submit button is width:100%, so CF7's inline-block spinner wraps onto a
 * line of its own at rest and adds height the mockup does not have. Take it
 * out of flow -- CF7 still reveals it during submission.
 */
#contact .wpforms-submit-container {
	position: relative;
}

#contact .wpcf7-spinner {
	position: absolute;
	top: 50%;
	right: 18px;
	margin: 0;
	transform: translateY(-50%);
}

/*
 * Validation output is display:none until CF7 populates it, so it costs no
 * height at rest; style it for when it does appear against the blue section.
 */
#contact .wpcf7-response-output {
	margin: 20px 0 0;
	padding: 14px 18px;
	border-radius: var(--border-radius-sleek);
	color: var(--white);
	border-color: rgba(255, 255, 255, 0.4);
}

#contact .wpcf7-not-valid-tip {
	display: block;
	margin-top: 6px;
	font-size: 0.9em;
	color: #ffd9d9;
}
