/* Contact / B2B forms (uses the theme's --ce-* tokens). */
.ce-form { display: grid; gap: 4px; max-width: 640px; }
.ce-form__row { display: grid; gap: 6px; margin: 0 0 12px; }
.ce-form__row label { font-weight: 700; }
.ce-form__opt { font-weight: 400; color: var(--ce-muted, #4f5f66); font-size: .9em; }
.ce-form input[type="text"], .ce-form input[type="email"], .ce-form input[type="tel"], .ce-form input[type="date"], .ce-form select, .ce-form textarea {
	width: 100%; min-height: 48px; padding: 10px 14px;
	font: inherit; color: var(--ce-ink, #1d2a2e); background: #fff;
	border: 1px solid #8fa39c; border-radius: var(--ce-radius-sm, 8px);
}
.ce-form textarea { min-height: 140px; resize: vertical; }
.ce-form [aria-invalid="true"] { border-color: var(--ce-danger, #b42318); border-width: 2px; }
.ce-form__field-error { color: var(--ce-danger, #b42318); font-size: .9rem; font-weight: 600; }
.ce-form__error, .ce-form__success {
	padding: 14px 16px; border-radius: var(--ce-radius-sm, 8px); margin-bottom: 12px;
}
.ce-form__error { background: #fdecea; color: #7a1a12; }
.ce-form__success { background: var(--ce-primary-soft, #e2f3ee); color: var(--ce-ink, #1d2a2e); }
.ce-form__privacy { font-size: .9rem; color: var(--ce-muted, #4f5f66); }
.ce-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ce-form .cf-turnstile { margin-bottom: 12px; }
