.wp-block-custom-theme-saela-contact-form.saela-contact-form {
	background: #f5f5eb;
	padding: 5.25rem 1.5rem;
}

.saela-contact-form__inner {
	align-items: start;
	display: grid;
	gap: 3rem;
	grid-template-columns: 1.4fr 0.85fr;
	margin: 0 auto;
	max-width: 1240px;
}

/* Form card */
.saela-contact-form__card {
	background: #fff;
	border: 1px solid rgba(38, 69, 61, 0.1);
	border-radius: 18px;
	box-shadow: 0 24px 50px -30px rgba(38, 69, 61, 0.4);
	padding: 2.5rem 2.75rem;
}

.saela-contact-form__eyebrow {
	color: #ea9230;
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	margin: 0 0 0.625rem;
	text-transform: uppercase;
}

.saela-contact-form__title {
	color: #26453d;
	font-family: "DM Serif Display", Georgia, serif;
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.1;
	margin: 0 0 0.5rem;
}

.saela-contact-form__note {
	color: rgba(38, 69, 61, 0.6);
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.90625rem;
	margin: 0 0 1.625rem;
}

.saela-contact-form__terms {
	color: rgba(38, 69, 61, 0.55);
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.71875rem;
	line-height: 1.5;
	margin: 0.75rem 0 0;
}

.saela-contact-form__terms a {
	color: #ea9230;
}

/* Gravity Form inside the card */
.saela-contact-form .gform_wrapper {
	font-family: Inter, system-ui, sans-serif;
	margin: 0;
}

.saela-contact-form .gform_wrapper .gfield_label {
	color: rgba(38, 69, 61, 0.7);
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.78125rem;
	font-weight: 600;
	margin-bottom: 0.375rem;
}

.saela-contact-form .gform_wrapper input[type="text"],
.saela-contact-form .gform_wrapper input[type="tel"],
.saela-contact-form .gform_wrapper input[type="email"],
.saela-contact-form .gform_wrapper input[type="number"],
.saela-contact-form .gform_wrapper select,
.saela-contact-form .gform_wrapper textarea {
	background: #fff !important;
	border: 1px solid rgba(38, 69, 61, 0.16) !important;
	border-radius: 8px !important;
	box-sizing: border-box;
	color: #26453d !important;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 0.90625rem !important;
	outline: none;
	padding: 0.8125rem 0.875rem !important;
	width: 100%;
}

/* Pest checkboxes + customer radios as pill choices. */
.saela-contact-form .gform_wrapper .gfield_checkbox,
.saela-contact-form .gform_wrapper .gfield_radio {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.saela-contact-form .gform_wrapper .gchoice {
	margin: 0;
	position: relative;
}

.saela-contact-form .gform_wrapper .gfield_checkbox .gfield-choice-input,
.saela-contact-form .gform_wrapper .gfield_radio .gfield-choice-input {
	clip: auto;
	clip-path: none;
	cursor: pointer;
	height: 100%;
	inset: 0;
	margin: 0;
	opacity: 0;
	overflow: visible;
	padding: 0;
	position: absolute;
	width: 100%;
	z-index: 1;
}

.saela-contact-form .gform_wrapper .gfield_checkbox .gform-field-label--type-inline,
.saela-contact-form .gform_wrapper .gfield_radio .gform-field-label--type-inline {
	background: #fff;
	border: 1px solid rgba(38, 69, 61, 0.18);
	border-radius: 100px;
	color: #26453d;
	cursor: pointer;
	display: inline-block;
	font-size: 0.84375rem;
	font-weight: 500;
	margin: 0;
	max-width: 100%;
	padding: 0.5625rem 1rem;
	transition: border-color 120ms, background 120ms;
}

.saela-contact-form .gform_wrapper .gfield-choice-input:checked + label,
.saela-contact-form .gform_wrapper .gfield_checkbox .gform-field-label--type-inline:hover,
.saela-contact-form .gform_wrapper .gfield_radio .gform-field-label--type-inline:hover {
	background: rgba(234, 146, 48, 0.12);
	border-color: #ea9230;
}

.saela-contact-form .gform_wrapper .gfield-choice-input:focus-visible + label {
	outline: 2px solid #ea9230;
	outline-offset: 2px;
}

/* Consent stays a visible checkbox. */
.saela-contact-form .gform_wrapper .gfield--type-consent .ginput_container_consent {
	align-items: flex-start;
	color: rgba(38, 69, 61, 0.62);
	display: flex;
	font-size: 0.75rem;
	gap: 0.625rem;
	line-height: 1.5;
}

.saela-contact-form .gform_wrapper .gfield--type-consent input[type="checkbox"] {
	border-color: rgba(38, 69, 61, 0.35) !important;
}

.saela-contact-form .gform_wrapper .gfield--type-consent input[type="checkbox"]:checked {
	background-color: #ea9230 !important;
	border-color: #ea9230 !important;
}

.saela-contact-form .gform_wrapper .gfield--type-consent input[type="checkbox"]:focus-visible {
	outline-color: #ea9230;
}

.saela-contact-form .gform_wrapper .gfield--type-consent .gfield_consent_label {
	font-size: 0.75rem;
	line-height: 1.5;
	margin: 0;
}

.saela-contact-form .gform_wrapper .gfield_required {
	color: #ea9230;
}

.saela-contact-form .gform_wrapper .gform_button {
	background: #ea9230 !important;
	border: none !important;
	border-radius: 9px !important;
	color: #fff !important;
	cursor: pointer;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 0.9375rem !important;
	font-weight: 600 !important;
	padding: 0.9375rem 1.125rem !important;
	transition: filter 160ms ease;
	width: 100% !important;
}

.saela-contact-form .gform_wrapper .gform_button:hover {
	filter: brightness(0.88);
}

.saela-contact-form .gform_wrapper .gform_footer {
	margin: 0;
	padding: 0;
}

.saela-contact-form .gform_wrapper .gfield_validation_message {
	background: none;
	border: none;
	color: #b3261e;
	font-size: 0.75rem;
	padding: 0;
}

.saela-contact-form .gform_confirmation_message {
	background: #f5f5eb;
	border-left: 3px solid #ea9230;
	border-radius: 12px;
	color: rgba(38, 69, 61, 0.8);
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.90625rem;
	line-height: 1.6;
	padding: 1.875rem;
}

/* Sidebar */
.saela-contact-form__sidebar {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.saela-contact-form__hq {
	background: #26453d;
	border-radius: 16px;
	color: #f5f5eb;
	padding: 1.875rem;
}

.saela-contact-form__hq-label,
.saela-contact-form__hq-sublabel,
.saela-contact-form__call-label {
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	margin: 0 0 0.75rem;
	text-transform: uppercase;
}

.saela-contact-form__hq-label {
	color: #ea9230;
}

.saela-contact-form__hq-sublabel {
	color: rgba(245, 245, 235, 0.5);
}

.saela-contact-form__hq-address {
	font-family: "DM Serif Display", Georgia, serif;
	font-size: 1.25rem;
	line-height: 1.35;
	margin: 0;
}

.saela-contact-form__hq-rule {
	background: rgba(245, 245, 235, 0.16);
	border: none;
	height: 1px;
	margin: 1.375rem 0;
}

.saela-contact-form__hours {
	display: flex;
	flex-direction: column;
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.90625rem;
	gap: 0.5rem;
}

.saela-contact-form__hours > div {
	color: rgba(245, 245, 235, 0.85);
	display: flex;
	justify-content: space-between;
}

.saela-contact-form__hours > div.is-closed {
	color: rgba(245, 245, 235, 0.55);
}

.saela-contact-form__call {
	background: #fff;
	border: 1px solid rgba(38, 69, 61, 0.1);
	border-radius: 16px;
	padding: 1.625rem 1.875rem;
}

.saela-contact-form__call-title {
	color: #26453d;
	font-family: "DM Serif Display", Georgia, serif;
	font-size: 1.1875rem;
	margin: 0 0 1rem;
}

.saela-contact-form__call-row {
	margin-bottom: 1rem;
}

.saela-contact-form__call-label {
	color: rgba(38, 69, 61, 0.55);
	margin-bottom: 0.25rem;
}

.saela-contact-form__call-number {
	color: #26453d;
	font-family: "DM Serif Display", Georgia, serif;
	font-size: 1.5rem;
	text-decoration: none;
	transition: color 0.15s ease;
}

.saela-contact-form__call-number:hover {
	color: #ea9230;
}

.saela-contact-form__portal {
	border: 1px solid rgba(38, 69, 61, 0.2);
	border-radius: 8px;
	color: #26453d;
	display: block;
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.875rem;
	font-weight: 600;
	margin-top: 0.5rem;
	padding: 0.75rem 1.125rem;
	text-align: center;
	text-decoration: none;
	transition: border-color 120ms, background 120ms;
}

.saela-contact-form__portal:hover {
	background: rgba(234, 146, 48, 0.12);
	border-color: #ea9230;
}

.saela-contact-form__map {
	border: 1px solid rgba(38, 69, 61, 0.1);
	border-radius: 16px;
	overflow: hidden;
}

.saela-contact-form__map-frame {
	aspect-ratio: 4 / 3;
	border: 0;
	display: block;
	height: auto;
	width: 100%;
}

/* Contact hero path cards (rendered inside the hero block). */
.saela-contact-card {
	background: rgba(245, 245, 235, 0.06);
	border: 1px solid rgba(245, 245, 235, 0.18);
	border-radius: 16px;
	color: #f5f5eb;
	display: flex;
	flex-direction: column;
	padding: 1.875rem 1.75rem;
}

.saela-contact-card > * {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none;
}

.saela-contact-card--featured {
	background: #ea9230;
	border: none;
	color: #fff;
}

.saela-contact-card__tag {
	color: #ea9230;
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	margin: 0 0 0.75rem;
	text-transform: uppercase;
}

.saela-contact-card--featured .saela-contact-card__tag {
	color: rgba(255, 255, 255, 0.85);
}

.saela-contact-card__title {
	font-family: "DM Serif Display", Georgia, serif;
	font-size: 1.625rem;
	font-weight: 400;
	line-height: 1.1;
	margin: 0 0 0.625rem;
}

.saela-contact-card__body {
	color: rgba(245, 245, 235, 0.72);
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.875rem;
	line-height: 1.55;
	margin: 0 0 1.25rem;
}

.saela-contact-card--featured .saela-contact-card__body {
	color: rgba(255, 255, 255, 0.9);
}

.saela-contact-card__phone {
	margin: auto 0 0;
}

.saela-contact-card__phone a {
	color: inherit;
	font-family: "DM Serif Display", Georgia, serif;
	font-size: 1.875rem;
	text-decoration: none;
}

.saela-contact-card__note {
	color: rgba(245, 245, 235, 0.6);
	font-family: Inter, system-ui, sans-serif;
	font-size: 0.78125rem;
	margin: 0.25rem 0 1.125rem;
}

.saela-contact-card--featured .saela-contact-card__note {
	color: rgba(255, 255, 255, 0.85);
}

.saela-contact-card__cta .wp-block-button__link {
	border-radius: 8px;
	font-size: 0.875rem;
	font-weight: 600;
	padding: 0.75rem 1.125rem;
	text-align: center;
	width: 100%;
}

@media (max-width: 991px) {
	.saela-contact-form__inner {
		grid-template-columns: 1fr;
	}

	.saela-contact-form__card {
		padding: 1.75rem 1.5rem;
	}
}
