/* ==========================================
   Start Planning form (Gravity Forms #3)

   Scoped to #gform_wrapper_3 so it wins over the
   site-wide .gform_wrapper rules in Customizer >
   Additional CSS and the Orbital form theme.
   Colors are the Avada global colors (awb-color1-8).
   ========================================== */

body #gform_wrapper_3 {
	--hmf-white: #ffffff;
	--hmf-gray-light: #f2f3f5;
	--hmf-gray: #dcdcda;
	--hmf-aqua-light: #aeddda;
	--hmf-aqua: #89d3cf;
	--hmf-pink: #f1877f;
	--hmf-pink-hover: #f2756f;
	--hmf-blue: #1082a0;
	--hmf-blue-dark: #0c6f8a;
	--hmf-navy: #003d51;
	--hmf-muted: #4d6b77;
	--hmf-line: #cfd6d8;
	--hmf-pink-tint: #fdeceb;
	--hmf-aqua-tint: #eaf6f5;
	--hmf-error: #b3261e;
	--hmf-error-tint: #fcebea;

	/* Orbital theme variables */
	--gf-color-primary: var(--hmf-blue);
	--gf-color-primary-rgb: 16, 130, 160;
	--gf-color-primary-contrast: #fff;
	--gf-color-primary-darker: var(--hmf-blue-dark);
	--gf-color-in-ctrl-primary: var(--hmf-blue);
	--gf-ctrl-border-color: var(--hmf-line);
	--gf-ctrl-radius: 6px;
	--gf-radius: 6px;
	--gf-ctrl-label-color-primary: var(--hmf-navy);
	--gf-ctrl-label-color-secondary: var(--hmf-navy);
	--gf-ctrl-desc-color: var(--hmf-muted);
	--gf-ctrl-outline-color-focus: rgba(174, 221, 218, 0.7);

	background: var(--hmf-white);
	border: 1px solid #e6eaeb;
	border-radius: 6px;
	box-shadow: 0 10px 30px -14px rgba(0, 61, 81, 0.22);
	padding: clamp(22px, 4.5vw, 44px) !important;
	margin-bottom: 0;
	color: var(--hmf-navy);
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
}

body #gform_wrapper_3 .gform_fields {
	row-gap: 22px !important;
	column-gap: 22px !important;
}

/* ---------- Progress steps ---------- */

body #gform_wrapper_3 .gf_page_steps {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin: 0 0 36px;
	padding: 0;
	border: 0;
	gap: 0;
}

body #gform_wrapper_3 .gf_step {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	opacity: 1;
	min-width: 0;
}

/* Connector line to the previous step */
body #gform_wrapper_3 .gf_step:not(.gf_step_first)::before {
	content: "";
	position: absolute;
	top: 20px;
	left: -50%;
	right: 50%;
	height: 3px;
	margin: 0 21px;
	border-radius: 3px;
	background: var(--hmf-gray);
	z-index: 0;
}

body #gform_wrapper_3 .gf_step.gf_step_active::before,
body #gform_wrapper_3 .gf_step.gf_step_completed::before {
	background: var(--hmf-pink);
}

body #gform_wrapper_3 .gf_step .gf_step_number {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	margin: 0;
	border: 2px solid var(--hmf-gray);
	border-radius: 50%;
	background: var(--hmf-white);
	color: var(--hmf-muted);
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	transition: background-color 0.25s ease, border-color 0.25s ease;
}

body #gform_wrapper_3 .gf_step.gf_step_active .gf_step_number {
	background: var(--hmf-pink);
	border-color: var(--hmf-pink);
	color: #fff;
	box-shadow: 0 0 0 5px var(--hmf-pink-tint);
}

body #gform_wrapper_3 .gf_step.gf_step_completed .gf_step_number {
	background: var(--hmf-pink-tint);
	border-color: var(--hmf-pink);
	color: var(--hmf-pink);
	font-size: 0;
}

/* Swap the number for a check mark on completed steps */
body #gform_wrapper_3 .gf_step.gf_step_completed .gf_step_number::before {
	content: "";
	width: 18px;
	height: 18px;
	background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23f1877f' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E");
}

body #gform_wrapper_3 .gf_step.gf_step_completed .gf_step_number::after {
	display: none;
}

body #gform_wrapper_3 .gf_step .gf_step_label {
	margin: 0;
	padding: 0;
	color: var(--hmf-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.3;
	text-align: center;
	text-transform: uppercase;
}

body #gform_wrapper_3 .gf_step.gf_step_active .gf_step_label {
	color: var(--hmf-navy);
}

/* ---------- Step headings (section fields) ---------- */

body #gform_wrapper_3 .gsection {
	margin: 0;
	padding: 0 0 22px !important;
	border-bottom: 1px solid var(--hmf-gray) !important;
	border-top: 0 !important;
}

body #gform_wrapper_3 .gsection .gsection_title {
	margin: 0;
	color: var(--hmf-navy) !important;
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	font-size: 24px !important;
	font-weight: 800 !important;
	letter-spacing: -0.015em;
	line-height: 1.3;
}

/* Cinzel eyebrow, same treatment as the site's H6 labels */
body #gform_wrapper_3 #field_3_1 .gsection_title::before,
body #gform_wrapper_3 #field_3_6 .gsection_title::before,
body #gform_wrapper_3 #field_3_21 .gsection_title::before,
body #gform_wrapper_3 #field_3_63 .gsection_title::before {
	display: block;
	margin-bottom: 8px;
	color: var(--hmf-blue);
	font-family: "Cinzel", Georgia, serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.07em;
	line-height: 1.3;
	text-transform: uppercase;
}

body #gform_wrapper_3 #field_3_1 .gsection_title::before { content: "Step 1 of 4"; }
body #gform_wrapper_3 #field_3_6 .gsection_title::before { content: "Step 2 of 4"; }
body #gform_wrapper_3 #field_3_21 .gsection_title::before { content: "Step 3 of 4"; }
body #gform_wrapper_3 #field_3_63 .gsection_title::before { content: "Step 4 of 4"; }

body #gform_wrapper_3 .gsection .gsection_description {
	margin-top: 8px;
	padding: 0;
	color: var(--hmf-muted);
	font-size: 15px;
	line-height: 1.6;
}

/* ---------- Destination question groups (pink panel) ----------
   The group's section and fields are grid siblings, so each one gets the
   tint plus a matching box-shadow spread that fills the gaps between them.
   Conditional logic only ever shows one group at a time. */

body #gform_wrapper_3 :is(#field_3_22, #field_3_27, #field_3_31, #field_3_36, #field_3_42, #field_3_46, #field_3_52, #field_3_60) {
	border: 0 !important;
	padding: 0 !important;
}

body #gform_wrapper_3 :is(#field_3_22, #field_3_27, #field_3_31, #field_3_36, #field_3_42, #field_3_46, #field_3_52, #field_3_60) .gsection_title {
	font-size: 21px !important;
}

body #gform_wrapper_3 :is(
	#field_3_22, #field_3_23, #field_3_24, #field_3_25, #field_3_26,
	#field_3_27, #field_3_28, #field_3_29, #field_3_30,
	#field_3_31, #field_3_32, #field_3_33, #field_3_34, #field_3_35,
	#field_3_36, #field_3_37, #field_3_38, #field_3_68, #field_3_69, #field_3_70, #field_3_39, #field_3_40, #field_3_41,
	#field_3_42, #field_3_43, #field_3_44, #field_3_45,
	#field_3_46, #field_3_47, #field_3_48, #field_3_49, #field_3_50, #field_3_51,
	#field_3_52, #field_3_53, #field_3_54, #field_3_55, #field_3_56, #field_3_57, #field_3_58, #field_3_59,
	#field_3_60, #field_3_61
) {
	background: var(--hmf-pink-tint);
	box-shadow: 0 0 0 16px var(--hmf-pink-tint);
}

body #gform_wrapper_3 :is(#field_3_22, #field_3_27, #field_3_31, #field_3_36, #field_3_42, #field_3_46, #field_3_52, #field_3_60) {
	margin-top: 22px !important;
	border-radius: 4px 4px 0 0;
}

/* ---------- Labels and descriptions ---------- */

body #gform_wrapper_3 .gfield_label,
body #gform_wrapper_3 legend.gfield_label {
	margin-bottom: 6px;
	color: var(--hmf-navy) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.4;
}

body #gform_wrapper_3 .gfield_required,
body #gform_wrapper_3 .gfield_required_asterisk {
	color: var(--hmf-pink) !important;
	font-weight: 700;
}

body #gform_wrapper_3 .gfield_description {
	color: var(--hmf-muted) !important;
	font-size: 13.5px !important;
	line-height: 1.5;
	padding-top: 0;
}

/* Descriptions go under the input so side-by-side inputs line up.
   (The form's description placement is "above"; this reorders visually.) */
body #gform_wrapper_3 .gfield:not(.gsection) {
	display: flex;
	flex-direction: column;
}

body #gform_wrapper_3 .gfield:not(.gsection) > .gfield_label {
	order: 0;
}

body #gform_wrapper_3 .gfield:not(.gsection) > .ginput_container,
body #gform_wrapper_3 .gfield:not(.gsection) > .ginput_complex {
	order: 1;
}

body #gform_wrapper_3 .gfield:not(.gsection) > .gfield_description {
	order: 2;
	margin-top: 6px;
	margin-bottom: 0;
}

body #gform_wrapper_3 .gfield:not(.gsection) > .gfield_validation_message,
body #gform_wrapper_3 .gfield:not(.gsection) > .validation_message {
	order: 3;
}

/* Choice fields keep their hint above the options ("Pick a category...") */
body #gform_wrapper_3 .gfield--type-choice > .gfield_description:not(.validation_message) {
	order: 0;
	margin: 0 0 10px;
}

/* First/Last name use the same gap as the form grid, so the right column
   lines up with Phone below it */
body #gform_wrapper_3 #field_3_2 .ginput_complex {
	margin-inline: 0 !important;
	column-gap: 22px !important;
}

body #gform_wrapper_3 #field_3_2 .ginput_complex > span {
	padding-inline: 0 !important;
}

body #gform_wrapper_3 .gform_required_legend {
	margin: 0 0 18px;
	color: var(--hmf-muted);
	font-size: 13px;
}

body #gform_wrapper_3 .ginput_complex label,
body #gform_wrapper_3 .gform-field-label--type-sub {
	color: var(--hmf-muted) !important;
	font-size: 12.5px !important;
}

/* ---------- Inputs ---------- */

body #gform_wrapper_3 input[type="text"],
body #gform_wrapper_3 input[type="email"],
body #gform_wrapper_3 input[type="tel"],
body #gform_wrapper_3 input[type="number"],
body #gform_wrapper_3 select,
body #gform_wrapper_3 textarea {
	min-height: 48px;
	padding: 11px 14px !important;
	border: 1.5px solid var(--hmf-line) !important;
	border-radius: 6px !important;
	background-color: var(--hmf-white) !important;
	box-shadow: none !important;
	color: var(--hmf-navy) !important;
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	font-size: 16px !important;
	line-height: 1.4;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

body #gform_wrapper_3 textarea {
	min-height: 120px;
}

body #gform_wrapper_3 input::placeholder,
body #gform_wrapper_3 textarea::placeholder {
	color: #8a9ca3;
}

body #gform_wrapper_3 input:hover,
body #gform_wrapper_3 select:hover,
body #gform_wrapper_3 textarea:hover {
	border-color: #a9b8bc !important;
}

body #gform_wrapper_3 input:focus,
body #gform_wrapper_3 select:focus,
body #gform_wrapper_3 textarea:focus {
	outline: none !important;
	border-color: var(--hmf-blue) !important;
	box-shadow: 0 0 0 4px rgba(174, 221, 218, 0.7) !important;
}

body #gform_wrapper_3 select {
	appearance: none;
	-webkit-appearance: none;
	padding-right: 42px !important;
	cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1.5l6 6 6-6' fill='none' stroke='%231082a0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 16px center !important;
	background-size: 14px 9px !important;
}

/* All-inclusive checkbox: bordered row */
body #gform_wrapper_3 #field_3_37 .gchoice {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 13px 16px;
	border: 1.5px solid var(--hmf-line);
	border-radius: 6px;
	background: var(--hmf-white);
}

body #gform_wrapper_3 #field_3_37 label {
	color: var(--hmf-navy);
	font-weight: 600;
}

/* ---------- Choice cards: Destination type + trip feel ---------- */

body #gform_wrapper_3 :is(#field_3_7, #field_3_19) .gfield_radio {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px !important;
}

body #gform_wrapper_3 #field_3_19 .gfield_radio {
	grid-template-columns: repeat(3, 1fr);
}

body #gform_wrapper_3 :is(#field_3_7, #field_3_19) .gchoice,
body #gform_wrapper_3 :is(#field_3_8, #field_3_9, #field_3_10) .gchoice {
	position: relative;
	display: block !important;
	margin: 0 !important;
}

body #gform_wrapper_3 :is(#field_3_7, #field_3_8, #field_3_9, #field_3_10, #field_3_19) .gchoice input {
	position: absolute !important;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	opacity: 0;
	cursor: pointer;
	z-index: 1;
}

body #gform_wrapper_3 :is(#field_3_7, #field_3_19) .gchoice label {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 100%;
	max-width: none !important;
	margin: 0 !important;
	padding: 18px 10px 16px !important;
	border: 1.5px solid var(--hmf-line);
	border-radius: 6px;
	background: var(--hmf-white);
	color: var(--hmf-navy) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.3;
	text-align: center;
	cursor: pointer;
	transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}

body #gform_wrapper_3 #field_3_19 .gchoice label {
	padding: 14px 10px !important;
}

/* Icons */
body #gform_wrapper_3 :is(#field_3_7, #field_3_19) .gchoice label::before {
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	background: no-repeat center / contain;
}

body #gform_wrapper_3 #field_3_7 .gchoice_3_7_0 label::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%231082a0' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 27V15l10-9 10 9v12'/%3E%3Cpath d='M12 27v-7h8v7'/%3E%3Cpath d='M16 6V2l4 2-4 2'/%3E%3C/svg%3E");
}
body #gform_wrapper_3 #field_3_7 .gchoice_3_7_1 label::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%231082a0' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 29c0-8 1-14 3-18'/%3E%3Cpath d='M19 11c-4-4-9-4-12-1 4 0 7 0 12 1z'/%3E%3Cpath d='M19 11c1-5 5-7 9-6-3 2-5 4-9 6z'/%3E%3Cpath d='M19 11c4-1 8 1 9 5-3-2-6-3-9-5z'/%3E%3Cpath d='M4 29h24'/%3E%3C/svg%3E");
}
body #gform_wrapper_3 #field_3_7 .gchoice_3_7_2 label::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%231082a0' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21h24l-3 6H7z'/%3E%3Cpath d='M8 21v-6h16v6'/%3E%3Cpath d='M12 15v-5h8v5'/%3E%3Cpath d='M16 10V5'/%3E%3C/svg%3E");
}
body #gform_wrapper_3 #field_3_7 .gchoice_3_7_3 label::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%231082a0' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='16' cy='16' r='12'/%3E%3Cpath d='M4 16h24'/%3E%3Cpath d='M16 4c4 4 5 8 5 12s-1 8-5 12c-4-4-5-8-5-12s1-8 5-12z'/%3E%3C/svg%3E");
}
body #gform_wrapper_3 #field_3_19 .gchoice_3_19_0 label::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%231082a0' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='16' cy='12' r='5'/%3E%3Cpath d='M3 24c3-2 5-2 8 0s5 2 8 0 5-2 8 0'/%3E%3Cpath d='M3 29c3-2 5-2 8 0s5 2 8 0 5-2 8 0'/%3E%3C/svg%3E");
}
body #gform_wrapper_3 #field_3_19 .gchoice_3_19_1 label::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%231082a0' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 5v22'/%3E%3Cpath d='M8 27h16'/%3E%3Cpath d='M5 10h22'/%3E%3Cpath d='M5 10l-3 8h6z'/%3E%3Cpath d='M27 10l-3 8h6z'/%3E%3C/svg%3E");
}
body #gform_wrapper_3 #field_3_19 .gchoice_3_19_2 label::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%231082a0' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 26c4 0 5-18 9-18s4 14 8 14 4-10 9-10'/%3E%3Ccircle cx='12' cy='8' r='1.6'/%3E%3C/svg%3E");
}

body #gform_wrapper_3 :is(#field_3_7, #field_3_19) .gchoice:hover label {
	border-color: var(--hmf-aqua);
	background: var(--hmf-aqua-tint);
}

body #gform_wrapper_3 :is(#field_3_7, #field_3_19) .gchoice input:checked + label {
	border-color: var(--hmf-blue);
	background: var(--hmf-aqua-tint);
	box-shadow: inset 0 0 0 1.5px var(--hmf-blue);
}

body #gform_wrapper_3 :is(#field_3_7, #field_3_19) .gchoice input:focus-visible + label {
	box-shadow: 0 0 0 4px rgba(174, 221, 218, 0.9);
}

/* ---------- Destination options (buttons) ---------- */

body #gform_wrapper_3 :is(#field_3_8, #field_3_9, #field_3_10) .gfield_radio {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap;
	gap: 10px !important;
}

body #gform_wrapper_3 :is(#field_3_8, #field_3_9, #field_3_10) .gchoice label {
	display: inline-flex !important;
	align-items: center;
	max-width: none !important;
	margin: 0 !important;
	padding: 10px 18px !important;
	border: 1.5px solid var(--hmf-line);
	border-radius: 4px;
	background: var(--hmf-white);
	color: var(--hmf-navy) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.3;
	cursor: pointer;
	transition: border-color 0.15s ease, background-color 0.15s ease;
}

body #gform_wrapper_3 :is(#field_3_8, #field_3_9, #field_3_10) .gchoice:hover label {
	border-color: var(--hmf-aqua);
	background: var(--hmf-aqua-tint);
}

body #gform_wrapper_3 :is(#field_3_8, #field_3_9, #field_3_10) .gchoice input:checked + label {
	border-color: var(--hmf-blue);
	background: var(--hmf-blue);
	color: #fff !important;
}

body #gform_wrapper_3 :is(#field_3_8, #field_3_9, #field_3_10) .gchoice input:focus-visible + label {
	box-shadow: 0 0 0 4px rgba(174, 221, 218, 0.9);
}

/* ---------- Buttons: site button style ---------- */

body #gform_wrapper_3 .gform_page_footer,
body #gform_wrapper_3 .gform_footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
	margin: 34px 0 0 !important;
	padding: 24px 0 0 !important;
	border-top: 1px solid var(--hmf-gray);
}

body #gform_wrapper_3 .gform_page_footer .button,
body #gform_wrapper_3 .gform_footer .button,
body #gform_wrapper_3 input[type="submit"] {
	margin: 0 !important;
	padding: 13px 29px !important;
	border: 0 !important;
	border-radius: 4px !important;
	background: var(--hmf-blue) !important;
	box-shadow: none !important;
	color: #fff !important;
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.015em !important;
	line-height: 1.2 !important;
	text-transform: uppercase;
	cursor: pointer;
	transform: none !important;
	transition: background-color 0.15s ease;
}

body #gform_wrapper_3 .gform_next_button {
	order: 2;
	margin-left: auto !important;
}

body #gform_wrapper_3 .gform_page_footer .button:hover,
body #gform_wrapper_3 .gform_footer .button:hover {
	background: var(--hmf-blue-dark) !important;
}

body #gform_wrapper_3 .gform_page_footer .gform_previous_button {
	order: 1;
	padding-inline: 2px !important;
	background: transparent !important;
	color: var(--hmf-blue) !important;
}

body #gform_wrapper_3 .gform_page_footer .gform_previous_button:hover {
	background: transparent !important;
	color: var(--hmf-navy) !important;
}

/* Final send button: pink, like the header "Start Planning Your Trip" */
body #gform_wrapper_3 #gform_submit_button_3 {
	order: 2;
	margin-left: auto !important;
	background: var(--hmf-pink) !important;
}

body #gform_wrapper_3 #gform_submit_button_3:hover {
	background: var(--hmf-pink-hover) !important;
}

body #gform_wrapper_3 .button:focus-visible,
body #gform_wrapper_3 input[type="submit"]:focus-visible {
	outline: 3px solid var(--hmf-aqua) !important;
	outline-offset: 3px;
}

/* ---------- Validation ---------- */

body #gform_wrapper_3 .gfield_error input:not([type="radio"]):not([type="checkbox"]),
body #gform_wrapper_3 .gfield_error select,
body #gform_wrapper_3 .gfield_error textarea {
	border-color: var(--hmf-error) !important;
	background-color: var(--hmf-error-tint) !important;
}

body #gform_wrapper_3 .gfield_error :is(.gfield_radio) .gchoice label {
	border-color: var(--hmf-error);
}

body #gform_wrapper_3 .gfield_validation_message,
body #gform_wrapper_3 .validation_message {
	margin-top: 6px;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: var(--hmf-error) !important;
	font-size: 13px !important;
	font-weight: 600;
}

body #gform_wrapper_3 .gform_validation_errors {
	border-color: var(--hmf-error) !important;
	border-radius: 6px !important;
	background: var(--hmf-error-tint) !important;
	box-shadow: none !important;
}

/* ---------- Confirmation ---------- */

body #gform_confirmation_wrapper_3 {
	padding: clamp(22px, 4.5vw, 44px);
	border: 1px solid #e6eaeb;
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 10px 30px -14px rgba(0, 61, 81, 0.22);
	color: #003d51;
}

/* ---------- Phones ---------- */

@media (max-width: 680px) {
	body #gform_wrapper_3 #field_3_7 .gfield_radio {
		grid-template-columns: 1fr 1fr;
	}

	body #gform_wrapper_3 .gf_step .gf_step_label {
		display: none;
	}

	body #gform_wrapper_3 .gf_step.gf_step_active .gf_step_label {
		display: block;
		position: absolute;
		top: 52px;
		white-space: nowrap;
	}

	body #gform_wrapper_3 .gf_page_steps {
		margin-bottom: 52px;
	}

	body #gform_wrapper_3 .gform_page_footer {
		flex-wrap: wrap-reverse;
	}

	body #gform_wrapper_3 .gform_next_button,
	body #gform_wrapper_3 #gform_submit_button_3 {
		width: 100%;
	}
}

@media (max-width: 380px) {
	body #gform_wrapper_3 #field_3_19 .gfield_radio {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	body #gform_wrapper_3 * {
		transition: none !important;
	}
}
