/* ================================================================
   Zacharias Realty Management — Contact Form 7 markup overlay
   Maps CF7's .wpcf7-* wrappers onto the theme's form vocabulary
   (.field, .field-grid, .consent-list, .consent-item look).
   Loaded only when CF7 is active, AFTER base.css + property.css.
   ================================================================ */

/* Inputs already inherit `.field input/textarea` (element selectors). Just
   make CF7's wrapper span block so the input fills the .field cell. */
.wpcf7-form .field .wpcf7-form-control-wrap { display: block; width: 100%; }
.wpcf7-form .field input.wpcf7-form-control,
.wpcf7-form .field textarea.wpcf7-form-control { width: 100%; }

/* Consent rows: each CF7 [acceptance] sits directly in .consent-list.
   Flatten its wrappers and render the <label> as the theme's consent card. */
.consent-list .wpcf7-form-control-wrap,
.consent-list .wpcf7-acceptance,
.consent-list .wpcf7-acceptance .wpcf7-list-item { display: block; margin: 0; width: 100%; }
.consent-list .wpcf7-acceptance { margin: 0 0 10px; }
.consent-list .wpcf7-acceptance:last-child { margin-bottom: 0; }

.consent-list .wpcf7-list-item label {
	display: grid;
	grid-template-columns: 28px 1fr;
	gap: 12px;
	align-items: start;
	margin: 0;
	padding: 18px;
	background: #fff;
	border: 1px solid #d6dcd2;
	border-radius: 15px;
	font-size: 14px;
	line-height: 1.5;
	box-shadow: 0 7px 18px rgba(31, 39, 28, .035);
	cursor: pointer;
}
.consent-list .wpcf7-list-item-label a { text-decoration: underline; }

/* Reapply the theme's custom checkbox to CF7's acceptance checkbox. */
.consent-list .wpcf7-list-item input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	width: 24px;
	height: 24px;
	margin: 2px 0 0;
	border: 2px solid #778073;
	border-radius: 6px;
	background: #fff;
	display: grid;
	place-content: center;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.consent-list .wpcf7-list-item input[type="checkbox"]::before {
	content: '';
	width: 7px;
	height: 12px;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	transform: rotate(45deg) scale(0);
	transform-origin: center;
	transition: transform .14s ease;
}
.consent-list .wpcf7-list-item input[type="checkbox"]:checked {
	background: #151713;
	border-color: #151713;
	box-shadow: 0 0 0 4px rgba(21, 23, 19, .09);
}
.consent-list .wpcf7-list-item input[type="checkbox"]:checked::before { transform: rotate(45deg) scale(1); }

/* Validation tips → theme's .field-error red note. */
.wpcf7-form .wpcf7-not-valid-tip { display: block; margin-top: 4px; color: #c23a2f; font-size: 13px; }
.wpcf7-form .wpcf7-not-valid { border-color: #c23a2f !important; }

/* CF7 response banner → align with the theme's .form-status. */
.wpcf7-form .wpcf7-response-output { margin: 16px 0 0; padding: 12px 16px; border-radius: 12px; border: 1px solid #d6dcd2; font-size: 14px; }
.wpcf7-form.sent .wpcf7-response-output { border-color: #2f6d43; color: #2f6d43; }
.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output { border-color: #c23a2f; color: #c23a2f; }

.wpcf7-form .wpcf7-spinner { margin: 0 0 0 10px; }
.wpcf7-form.submitting .button { opacity: .6; pointer-events: none; }
