/*------------------------------------*\
    
    WebFX CF7 Customizations - Global styling for all CF7 Forms

    Add custom CF7 form styling to this file if it should be applied to all CF7 forms on the site
    Otherwise, put your block-specific styles in individual block stylesheets so that various block-specific styles aren't loaded on every CF7 form

\*------------------------------------*/

/* Default Radio/Checkbox Style (if using CF7) */
.wpcf7-radio .wpcf7-list-item,
.wpcf7-checkbox .wpcf7-list-item {
	display: inline-block;
	margin-right: 20px;
	margin-left: 0;
	margin-bottom: 10px;
	/* incase items go to 2 lines */
}

.wpcf7-radio .wpcf7-list-item-label,
.wpcf7-checkbox .wpcf7-list-item-label {
	margin-left: 5px;
}

.wpcf7-radio label {
	position: relative;
	display: contents;
	align-items: center;
	line-height: inherit;
}

.wpcf7-form-control-wrap.is-filled:has(.wpcf7-radio) + label {
	font-size: 18px;
	position: relative;
	font-weight: bold;
	left: 0;
	top: 0;
	padding: 0;
	margin-bottom: 10px;
}

.form-col:has(.wpcf7-radio) {
	display: flex;
	flex-direction: column-reverse;
}

input[type="radio"] {
	pointer-events: auto;
	accent-color: black;
	position: relative;
	top: 2px;
}

/* CF7 Validation (Remove if not using CF7) */

/* Individual field error messages */
.wpcf7-not-valid-tip {
}

/* Entire form error message */
.wpcf7-response-output {
}

/* Styling for fields that have errors */
select.wpcf7-not-valid,
textarea.wpcf7-not-valid,
input.wpcf7-not-valid,
.wpcf7-not-valid .choices {
}

/* Adding CF7 Spinner for loading */
.wpcf7-spinner {
	visibility: hidden;
	display: inline-block;
	background-color: #23282d;
	/* Dark Gray 800 */
	opacity: 0.75;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 100%;
	padding: 0;
	margin: 0 24px;
	position: absolute !important;
}

form.submitting .wpcf7-spinner {
	visibility: visible;
}

.wpcf7-spinner::before {
	content: "";
	position: absolute;
	background-color: #fbfbfc;
	/* Light Gray 100 */
	top: 4px;
	left: 4px;
	width: 6px;
	height: 6px;
	border: none;
	border-radius: 100%;
	transform-origin: 8px 8px;
	animation-name: spin;
	animation-duration: 1000ms;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

.wpcf7-not-valid-tip,
.error,
.wpcf7-response-output {
	color: #ec1d30 !important;
	font-size: 14px !important;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #ec1d30 !important;
}

.wpcf7-response-output {
	margin-top: 8px;
}

.wpcf7-form-control-wrap .choices {
	margin-bottom: 0;
}

.wpcf7-form-control-wrap.is-filled + label {
	top: 1px;
	font-size: 12px;
	background-color: transparent;
}

.cf7-block__content {
	margin-bottom: 2rem;
}

.cf7-block__form-note {
	font-size: 65%;
	margin-bottom: 1.5rem;
	display: block;
	text-align: center;
}

.half-and-half-form__content .cf7-block__form-note {
	text-align: left;
}

/** CF7 #4811 */
#popmake-4805 h4 {
	margin-top: 15px;
    margin-bottom: 10px;
}
.form-col-btn input[type="submit"]{
	width: 100%;
}
/** END CF7 #4811 */

@media (prefers-reduced-motion: reduce) {
	.wpcf7-spinner::before {
		animation-name: blink;
		animation-duration: 2000ms;
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes blink {
	from {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}