/**
 * Harmonise native + plugin-generated forms inside theme-marked wrappers.
 */

.hfj-form-scope .wpcf7-form,
.elementor-widget-html .hfj-form,
.hfj-form-scope form {
	width: 100%;
}

.hfj-form-scope input[type='text'],
.hfj-form-scope input[type='email'],
.hfj-form-scope input[type='tel'],
.hfj-form-scope input[type='number'],
.hfj-form-scope input[type='url'],
.hfj-form-scope textarea,
.hfj-form-scope select {
	width: 100%;
	background-color: rgb(var(--hfj-surface-container-lowest) / 1);
	border: 1px solid rgb(var(--hfj-outline-variant) / 1);
	border-radius: 0.5rem;
	padding: 0.75rem;
	transition:
		border-color 0.15s ease,
		box-shadow 0.15s ease;
	outline: none;
}

.hfj-form-scope input:focus-visible,
.hfj-form-scope textarea:focus-visible,
.hfj-form-scope select:focus-visible {
	border-color: rgb(var(--hfj-primary) / 1);
	box-shadow: 0 0 0 1px rgb(var(--hfj-primary) / 1);
}

.hfj-form-scope label {
	display: block;
	font-weight: 600;
	font-family: inherit;
	font-size: 0.875rem;
	letter-spacing: 0.05em;
	color: rgb(var(--hfj-on-surface) / 1);
	margin-bottom: 0.5rem;
}

.hfj-form-scope p {
	margin: 0;
}

.hfj-form-scope .cta-btn[type='submit'] {
	cursor: pointer;
	border: none;
}

.gform_wrapper .gfield textarea,
.wpforms-field input[type='text'],
.wpforms-field input[type='email'] {
	width: 100%;
	border-radius: 0.5rem;
	padding: 0.75rem;
	border: 1px solid rgb(var(--hfj-outline-variant) / 1);
}
