/*
 * Registration form 2.
 *
 * The presentation layer is intentionally scoped to this form so Gravity
 * Forms and Divi components elsewhere on the site keep their native styling.
 */
#gform_wrapper_2,
#gform_wrapper_2[data-form-index="0"].gform-theme {
	--highlights-form-navy: #003464;
	--highlights-form-navy-deep: #00284e;
	--highlights-form-navy-soft: #315873;
	--highlights-form-teal: #00e8b8;
	--highlights-form-teal-dark: #008f78;
	--highlights-form-ink: #17374f;
	--highlights-form-muted: #627788;
	--highlights-form-line: rgba(0, 52, 100, 0.14);
	--highlights-form-line-strong: rgba(0, 52, 100, 0.24);
	--highlights-form-surface: #ffffff;
	--highlights-form-surface-soft: #f5faf9;
	--highlights-form-surface-cool: #f7fafc;
	--highlights-form-error: #b42318;
	--highlights-form-radius-panel: 22px;
	--highlights-form-radius-section: 16px;
	--highlights-form-radius-control: 10px;
	--gf-color-primary: #003464 !important;
	--gf-color-primary-rgb: 0, 52, 100 !important;
	--gf-color-primary-contrast: #ffffff !important;
	--gf-color-in-ctrl-primary: #003464 !important;
	--gf-radius: 10px !important;
	max-width: 980px;
	margin-inline: auto;
	color: var(--highlights-form-ink);
	font-family: 'rubikLight', Helvetica, Arial, Lucida, sans-serif;
}

#gform_wrapper_2 {
	position: relative;
	box-sizing: border-box;
	padding: clamp(26px, 4vw, 44px);
	overflow: hidden;
	border: 1px solid var(--highlights-form-line);
	border-radius: var(--highlights-form-radius-panel);
	background: var(--highlights-form-surface);
	box-shadow: 0 24px 64px rgba(0, 52, 100, 0.1);
	scroll-margin-top: 120px;
}

#gform_wrapper_2::before {
	position: absolute;
	inset: 0 0 auto;
	height: 4px;
	background: var(--highlights-form-teal);
	content: '';
}

#gform_wrapper_2 *,
#gform_wrapper_2 *::before,
#gform_wrapper_2 *::after {
	box-sizing: border-box;
}

#gform_wrapper_2 .gform_heading {
	display: none;
}

#gform_wrapper_2 .gform_description:empty {
	display: none;
}

#gform_wrapper_2 .gform_required_legend {
	margin: 0;
	color: var(--highlights-form-muted);
	font-size: 11px;
	line-height: 1.4;
	text-align: right;
}

#gform_wrapper_2 .gfield_required {
	color: var(--highlights-form-error);
}

/* Compact progress rail */
#gform_wrapper_2 .gf_page_steps {
	position: relative;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 500px;
	gap: 0;
	margin: 0 0 28px !important;
	padding: 0 !important;
	border: 0 !important;
}

#gform_wrapper_2 .gf_page_steps::before {
	position: absolute;
	z-index: 0;
	top: 18px;
	right: 18px;
	left: 18px;
	height: 1px;
	background: var(--highlights-form-line-strong);
	content: '';
}

#gform_wrapper_2 .gf_step {
	position: relative;
	z-index: 1;
	display: flex !important;
	gap: 10px;
	align-items: center;
	min-height: 38px;
	margin: 0 !important;
	padding: 0 !important;
	opacity: 1 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--highlights-form-muted);
	box-shadow: none !important;
}

#gform_wrapper_2 .gf_step:last-child {
	justify-content: flex-end;
}

#gform_wrapper_2 .gf_step_number {
	display: grid !important;
	width: 36px !important;
	height: 36px !important;
	flex: 0 0 36px;
	place-items: center;
	margin: 0 !important;
	border: 1px solid var(--highlights-form-line-strong) !important;
	border-radius: 50% !important;
	background: var(--highlights-form-surface) !important;
	color: var(--highlights-form-navy) !important;
	box-shadow: 0 0 0 5px var(--highlights-form-surface);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 13px !important;
	line-height: 1 !important;
}

#gform_wrapper_2 .gf_step_number::before,
#gform_wrapper_2 .gf_step_number::after {
	display: none !important;
}

#gform_wrapper_2 .gf_step_label {
	padding: 0 !important;
	color: inherit !important;
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 12px !important;
	line-height: 1.2;
	letter-spacing: 0.02em;
}

#gform_wrapper_2 .gf_step_active {
	color: var(--highlights-form-navy);
}

#gform_wrapper_2 .gf_step_active .gf_step_number {
	border-color: var(--highlights-form-teal) !important;
	background: var(--highlights-form-teal) !important;
	color: var(--highlights-form-navy-deep) !important;
}

#gform_wrapper_2 .gf_step_completed .gf_step_number {
	border-color: var(--highlights-form-navy) !important;
	background: var(--highlights-form-navy) !important;
	color: #ffffff !important;
}

/* Page title and context */
#gform_wrapper_2 .highlights-form-intro {
	display: flex;
	gap: 24px;
	align-items: flex-start;
	justify-content: space-between;
	margin: 0 0 6px;
	padding: 0 0 28px;
	border-bottom: 1px solid var(--highlights-form-line);
}

#gform_wrapper_2 .highlights-form-intro__copy {
	max-width: 670px;
}

#gform_wrapper_2 .highlights-form-intro__eyebrow {
	display: block;
	margin: 0 0 7px;
	color: var(--highlights-form-teal-dark);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 11px;
	line-height: 1.25;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

#gform_wrapper_2 .highlights-form-intro__title {
	margin: 0;
	color: var(--highlights-form-navy);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: clamp(27px, 3.1vw, 36px);
	font-weight: 400;
	line-height: 1.12;
}

#gform_wrapper_2 .highlights-form-intro__description {
	max-width: 620px;
	margin: 9px 0 0;
	color: var(--highlights-form-muted);
	font-size: 14px;
	line-height: 1.55;
}

#gform_wrapper_2 .highlights-form-intro__position {
	flex: 0 0 auto;
	margin-top: 6px;
	padding: 7px 11px;
	border: 1px solid var(--highlights-form-line);
	border-radius: 999px;
	background: var(--highlights-form-surface-cool);
	color: var(--highlights-form-navy);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 11px;
	line-height: 1;
}

#gform_wrapper_2 .gform_page:focus {
	outline: 0;
}

#gform_wrapper_2 .highlights-form-live {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Step 1 information architecture */
#gform_wrapper_2 #gform_fields_2.highlights-form-fields--structured {
	display: flex !important;
	flex-direction: column;
	gap: 0 !important;
}

#gform_wrapper_2 .highlights-form-section {
	display: grid;
	grid-template-columns: minmax(150px, 190px) minmax(0, 1fr);
	gap: clamp(24px, 4vw, 42px);
	padding: 27px 0;
	border-bottom: 1px solid var(--highlights-form-line);
}

#gform_wrapper_2 .highlights-form-section:last-of-type {
	border-bottom: 0;
}

#gform_wrapper_2 .highlights-form-section__heading {
	display: grid;
	grid-template-columns: 3px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
}

#gform_wrapper_2 .highlights-form-section__marker {
	width: 3px;
	height: 30px;
	margin-top: 2px;
	border-radius: 999px;
	background: var(--highlights-form-teal);
}

#gform_wrapper_2 .highlights-form-section__heading h4 {
	margin: 0;
	color: var(--highlights-form-navy);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.3;
}

#gform_wrapper_2 .highlights-form-section__heading p {
	margin: 6px 0 0;
	color: var(--highlights-form-muted);
	font-size: 12px;
	line-height: 1.5;
}

#gform_wrapper_2 .highlights-form-section__fields {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 19px 18px;
	align-items: start;
}

#gform_wrapper_2 .highlights-form-section--identity #field_2_1,
#gform_wrapper_2 .highlights-form-section--identity #field_2_3 {
	grid-column: span 6;
}

#gform_wrapper_2 .highlights-form-section--identity #field_2_60,
#gform_wrapper_2 .highlights-form-section--billing #field_2_4 {
	grid-column: 1 / -1;
}

#gform_wrapper_2 .highlights-form-section--billing #field_2_5 {
	grid-column: span 8;
}

#gform_wrapper_2 .highlights-form-section--contact #field_2_6,
#gform_wrapper_2 .highlights-form-section--contact #field_2_7,
#gform_wrapper_2 .highlights-form-section--contact #field_2_8,
#gform_wrapper_2 .highlights-form-section--contact #field_2_33 {
	grid-column: span 6;
}

/* Core fields and inputs */
#gform_wrapper_2 .gfield_label,
#gform_wrapper_2 legend.gfield_label {
	margin: 0 0 7px;
	color: var(--highlights-form-navy);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 11.5px;
	line-height: 1.42;
	letter-spacing: 0.025em;
}

#gform_wrapper_2 .highlights-field-importance {
	display: inline-flex;
	align-items: center;
	margin-left: 9px;
	padding: 3px 8px;
	border: 1px solid rgba(0, 143, 120, 0.24);
	border-radius: 999px;
	background: rgba(0, 232, 184, 0.1);
	color: var(--highlights-form-navy-soft);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 10px;
	font-weight: 400;
	line-height: 1.25;
	letter-spacing: 0.015em;
	text-transform: none;
	vertical-align: middle;
	white-space: nowrap;
}

#gform_wrapper_2 input[type='text'],
#gform_wrapper_2 input[type='email'],
#gform_wrapper_2 input[type='tel'],
#gform_wrapper_2 input[type='number'],
#gform_wrapper_2 input[type='url'],
#gform_wrapper_2 select,
#gform_wrapper_2 textarea {
	width: 100% !important;
	min-height: 50px !important;
	margin: 0 !important;
	padding: 12px 14px !important;
	border: 1px solid var(--highlights-form-line-strong) !important;
	border-radius: var(--highlights-form-radius-control) !important;
	outline: 0;
	background: var(--highlights-form-surface-cool) !important;
	color: var(--highlights-form-ink) !important;
	box-shadow: inset 0 1px 1px rgba(0, 52, 100, 0.025) !important;
	font-family: 'rubikLight', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 16px !important;
	line-height: 1.35 !important;
	transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

#gform_wrapper_2 textarea {
	min-height: 104px !important;
	resize: vertical;
}

#gform_wrapper_2 input[type='text']:hover,
#gform_wrapper_2 input[type='email']:hover,
#gform_wrapper_2 input[type='tel']:hover,
#gform_wrapper_2 input[type='number']:hover,
#gform_wrapper_2 input[type='url']:hover,
#gform_wrapper_2 select:hover,
#gform_wrapper_2 textarea:hover {
	border-color: rgba(0, 143, 120, 0.48) !important;
	background: #ffffff !important;
}

#gform_wrapper_2 input[type='text']:focus,
#gform_wrapper_2 input[type='email']:focus,
#gform_wrapper_2 input[type='tel']:focus,
#gform_wrapper_2 input[type='number']:focus,
#gform_wrapper_2 input[type='url']:focus,
#gform_wrapper_2 select:focus,
#gform_wrapper_2 textarea:focus {
	border-color: var(--highlights-form-navy) !important;
	background: #ffffff !important;
	box-shadow: 0 0 0 4px rgba(0, 232, 184, 0.2) !important;
}

#gform_wrapper_2 .gfield_description,
#gform_wrapper_2 .highlights-field-helper {
	margin: 6px 0 0;
	color: var(--highlights-form-muted);
	font-size: 11.5px;
	line-height: 1.48;
}

#gform_wrapper_2 #highlights-vat-helper .highlights-field-importance {
	margin: 6px 0 0;
}

/* Fiscal address is one coherent sub-surface, not four unrelated fields. */
#gform_wrapper_2 #field_2_4 {
	margin: 0;
	padding: 18px;
	border: 1px solid rgba(0, 143, 120, 0.25);
	border-radius: var(--highlights-form-radius-section);
	background: var(--highlights-form-surface-soft);
}

#gform_wrapper_2 #field_2_4 > legend.gfield_label {
	width: auto;
	margin: 0 0 14px;
	padding: 0;
	color: var(--highlights-form-navy);
	font-size: 12px;
	letter-spacing: 0.055em;
}

@media (max-width: 520px) {
	#gform_wrapper_2 .highlights-field-importance {
		display: flex;
		width: fit-content;
		margin: 6px 0 0;
	}
}

#gform_wrapper_2 #field_2_4 .ginput_complex {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(105px, 0.7fr) minmax(0, 0.9fr) minmax(145px, 1fr);
	gap: 13px;
}

#gform_wrapper_2 #field_2_4 .ginput_complex > span {
	display: flex;
	width: 100%;
	max-width: none;
	min-width: 0;
	flex: none;
	flex-direction: column;
	gap: 6px;
	padding: 0;
}

#gform_wrapper_2 #field_2_4 .gf_clear_complex {
	display: none;
}

#gform_wrapper_2 #field_2_4 .address_line_1 {
	order: 1;
}

#gform_wrapper_2 #field_2_4 .address_zip {
	order: 2;
}

#gform_wrapper_2 #field_2_4 .address_city {
	order: 3;
}

#gform_wrapper_2 #field_2_4 .address_country {
	order: 4;
}

#gform_wrapper_2 #field_2_4 .gform-field-label--type-sub {
	order: -1;
	margin: 0;
	color: var(--highlights-form-navy-soft);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 10.5px;
	line-height: 1.3;
}

#gform_wrapper_2 #field_2_4 input,
#gform_wrapper_2 #field_2_4 select {
	background: #ffffff !important;
}

/* Segmented choice controls */
#gform_wrapper_2 #field_2_33 .gfield_radio,
#gform_wrapper_2 #field_2_22 .gfield_radio,
#gform_wrapper_2 #field_2_24 .gfield_radio {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 7px;
}

#gform_wrapper_2 #field_2_33 .gchoice,
#gform_wrapper_2 #field_2_22 .gchoice,
#gform_wrapper_2 #field_2_24 .gchoice {
	position: relative;
	display: block;
	min-width: 0;
	margin: 0;
	padding: 0;
}

#gform_wrapper_2 #field_2_33 .gchoice input[type='radio'],
#gform_wrapper_2 #field_2_22 .gchoice input[type='radio'],
#gform_wrapper_2 #field_2_24 .gchoice input[type='radio'] {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	opacity: 0;
}

#gform_wrapper_2 #field_2_33 .gchoice label,
#gform_wrapper_2 #field_2_22 .gchoice label,
#gform_wrapper_2 #field_2_24 .gchoice label {
	display: grid;
	width: 100%;
	min-height: 44px;
	place-items: center;
	margin: 0;
	padding: 8px 12px;
	border: 1px solid var(--highlights-form-line-strong);
	border-radius: 999px;
	background: #ffffff;
	color: var(--highlights-form-navy);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: 12px;
	line-height: 1.15;
	text-align: center;
	cursor: pointer;
	transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

#gform_wrapper_2 #field_2_33 .gchoice:hover label,
#gform_wrapper_2 #field_2_22 .gchoice:hover label,
#gform_wrapper_2 #field_2_24 .gchoice:hover label {
	border-color: var(--highlights-form-teal-dark);
}

#gform_wrapper_2 #field_2_33 .gchoice:focus-within label,
#gform_wrapper_2 #field_2_22 .gchoice:focus-within label,
#gform_wrapper_2 #field_2_24 .gchoice:focus-within label {
	outline: 3px solid rgba(0, 232, 184, 0.26);
	outline-offset: 2px;
}

#gform_wrapper_2 #field_2_33 .gchoice:has(input:checked) label,
#gform_wrapper_2 #field_2_22 .gchoice:has(input:checked) label,
#gform_wrapper_2 #field_2_24 .gchoice:has(input:checked) label,
#gform_wrapper_2 #field_2_33 .gchoice.highlights-choice-selected label,
#gform_wrapper_2 #field_2_22 .gchoice.highlights-choice-selected label,
#gform_wrapper_2 #field_2_24 .gchoice.highlights-choice-selected label {
	border-color: var(--highlights-form-teal);
	background: var(--highlights-form-teal);
	color: var(--highlights-form-navy-deep);
	box-shadow: 0 5px 14px rgba(0, 143, 120, 0.13);
}

/* Step 2: independent column stacks remove the false empty grid row. */
#gform_wrapper_2 #gform_fields_2_2.highlights-form-fields--attendance {
	display: block !important;
}

#gform_wrapper_2 .highlights-attendance-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	align-items: start;
	padding: 28px 0 0;
}

#gform_wrapper_2 .highlights-attendance-column {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 18px;
}

#gform_wrapper_2 #field_2_22,
#gform_wrapper_2 #field_2_24,
#gform_wrapper_2 #field_2_21 {
	width: auto;
	margin: 0;
	padding: 20px;
	border: 1px solid var(--highlights-form-line);
	border-radius: var(--highlights-form-radius-section);
	background: var(--highlights-form-surface-cool);
	box-shadow: 0 10px 30px rgba(0, 52, 100, 0.05);
}

#gform_wrapper_2 #field_2_24 #field_2_26 {
	width: auto;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

#gform_wrapper_2 #field_2_22 .gfield--type-section,
#gform_wrapper_2 #field_2_24 .gfield--type-section {
	margin: 0 0 4px;
	padding: 0 0 15px;
	border-bottom: 1px solid rgba(0, 143, 120, 0.28);
}

#gform_wrapper_2 #field_2_22 .gsection_title,
#gform_wrapper_2 #field_2_24 .gsection_title {
	margin: 0;
	color: var(--highlights-form-navy);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	font-size: clamp(20px, 2.2vw, 25px);
	font-weight: 400;
	line-height: 1.2;
}

#gform_wrapper_2 #field_2_22 fieldset.gfield--type-radio,
#gform_wrapper_2 #field_2_24 fieldset.gfield--type-radio {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 126px;
	gap: 12px;
	align-items: center;
	margin: 0;
	padding: 12px 0;
	border-bottom: 1px solid rgba(0, 52, 100, 0.09);
}

#gform_wrapper_2 #field_2_22 fieldset.gfield--type-radio:last-of-type,
#gform_wrapper_2 #field_2_24 fieldset.gfield--type-radio:last-of-type {
	border-bottom: 0;
}

#gform_wrapper_2 #field_2_22 fieldset.gfield--type-radio > legend,
#gform_wrapper_2 #field_2_24 fieldset.gfield--type-radio > legend {
	margin: 0;
	color: var(--highlights-form-navy-soft);
	font-family: 'rubikLight', Helvetica, Arial, Lucida, sans-serif;
	font-size: 12px;
	line-height: 1.42;
	letter-spacing: 0;
}

#gform_wrapper_2 #field_2_22 .ginput_container_radio,
#gform_wrapper_2 #field_2_24 .ginput_container_radio {
	width: 100%;
	margin: 0;
}

#gform_wrapper_2 #field_2_32 {
	margin-top: 9px;
	padding-top: 14px;
	border-top: 1px solid rgba(0, 52, 100, 0.09);
}

#gform_wrapper_2 #field_2_21 {
	background: #ffffff;
	box-shadow: none;
}

#gform_wrapper_2 #field_2_21 textarea {
	min-height: 94px !important;
}

#gform_wrapper_2 #field_2_28,
#gform_wrapper_2 #field_2_42,
#gform_wrapper_2 #field_2_54,
#gform_wrapper_2 #field_2_57 {
	display: none !important;
}

/* One calm legal surface, with the full supplied text kept visible. */
#gform_wrapper_2 #field_2_56.highlights-consent-panel {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 24px;
	margin: 18px 0 0;
	padding: 22px;
	border: 1px solid var(--highlights-form-line);
	border-radius: var(--highlights-form-radius-section);
	background: var(--highlights-form-surface-soft);
}

#gform_wrapper_2 #field_2_56 > .highlights-form-section__heading {
	grid-column: 1 / -1;
	margin: 0 0 6px;
	padding: 0 0 15px;
	border-bottom: 1px solid var(--highlights-form-line);
}

#gform_wrapper_2 #field_2_53,
#gform_wrapper_2 #field_2_55 {
	min-width: 0;
	margin: 0;
	padding: 16px 0 0;
}

#gform_wrapper_2 #field_2_53 .gchoice,
#gform_wrapper_2 #field_2_55 .gchoice {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

#gform_wrapper_2 #field_2_53 input[type='checkbox'],
#gform_wrapper_2 #field_2_55 input[type='checkbox'] {
	width: 19px !important;
	height: 19px !important;
	margin: 1px 0 0 !important;
	accent-color: var(--highlights-form-navy);
}

#gform_wrapper_2 #field_2_53 .gform-field-label,
#gform_wrapper_2 #field_2_55 .gform-field-label {
	margin: 0;
	color: var(--highlights-form-ink);
	font-family: 'rubikLight', Helvetica, Arial, Lucida, sans-serif;
	font-size: 12px;
	line-height: 1.52;
}

#gform_wrapper_2 #field_2_53 a,
#gform_wrapper_2 #field_2_55 a {
	color: var(--highlights-form-teal-dark);
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

#gform_wrapper_2 [hidden],
#gform_wrapper_2 .highlights-field-collapsed {
	display: none !important;
}

/* Navigation buttons */
#gform_wrapper_2 .gform-page-footer {
	display: flex !important;
	gap: 10px;
	align-items: center;
	justify-content: flex-end;
	margin: 26px 0 0 !important;
	padding: 20px 0 0 !important;
	border-top: 1px solid var(--highlights-form-line);
}

#gform_wrapper_2 .gform-page-footer input[type='button'],
#gform_wrapper_2 .gform-page-footer input[type='submit'],
#gform_wrapper_2 .gform_button {
	width: auto !important;
	min-width: 154px;
	min-height: 50px !important;
	margin: 0 !important;
	padding: 12px 22px !important;
	border: 1px solid var(--highlights-form-navy) !important;
	border-radius: var(--highlights-form-radius-control) !important;
	background: var(--highlights-form-navy) !important;
	color: #ffffff !important;
	box-shadow: 0 9px 22px rgba(0, 52, 100, 0.15) !important;
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 12px !important;
	line-height: 1.2 !important;
	letter-spacing: 0.035em;
	text-align: center;
	cursor: pointer;
	transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

#gform_wrapper_2 .gform-page-footer input[type='button']:hover,
#gform_wrapper_2 .gform-page-footer input[type='submit']:hover,
#gform_wrapper_2 .gform_button:hover {
	border-color: var(--highlights-form-teal) !important;
	background: var(--highlights-form-teal) !important;
	color: var(--highlights-form-navy-deep) !important;
	box-shadow: 0 11px 26px rgba(0, 52, 100, 0.16) !important;
	transform: translateY(-1px);
}

#gform_wrapper_2 .gform-page-footer input[type='button']:focus-visible,
#gform_wrapper_2 .gform-page-footer input[type='submit']:focus-visible,
#gform_wrapper_2 .gform_button:focus-visible {
	outline: 3px solid rgba(0, 232, 184, 0.35) !important;
	outline-offset: 3px;
}

#gform_wrapper_2 .gform_previous_button {
	border-color: var(--highlights-form-line-strong) !important;
	background: var(--highlights-form-surface) !important;
	color: var(--highlights-form-navy) !important;
	box-shadow: none !important;
	text-decoration: none !important;
}

#gform_wrapper_2 .gform_previous_button:hover,
#gform_wrapper_2 .gform_previous_button:focus,
#gform_wrapper_2 .gform_previous_button:active {
	border-color: var(--highlights-form-navy) !important;
	background: var(--highlights-form-surface-cool) !important;
	color: var(--highlights-form-navy) !important;
	text-decoration: none !important;
}

/* Validation and linked error summary */
#gform_wrapper_2 .gform_validation_errors {
	margin: 0 0 24px !important;
	padding: 17px 19px !important;
	border: 1px solid rgba(180, 35, 24, 0.25) !important;
	border-left: 4px solid var(--highlights-form-error) !important;
	border-radius: 12px !important;
	background: #fff7f5 !important;
	box-shadow: none !important;
}

#gform_wrapper_2 .gform_validation_errors:focus {
	outline: 3px solid rgba(180, 35, 24, 0.2);
	outline-offset: 3px;
}

#gform_wrapper_2 .gform_submission_error {
	color: #7a271a !important;
	font-family: 'rubikMedium', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
}

#gform_wrapper_2 .highlights-error-links {
	display: grid;
	gap: 5px;
	margin: 11px 0 0;
	padding-left: 20px;
}

#gform_wrapper_2 .highlights-error-links a {
	color: #7a271a;
	text-decoration: underline;
	text-underline-offset: 2px;
}

#gform_wrapper_2 .gfield_error input,
#gform_wrapper_2 .gfield_error select,
#gform_wrapper_2 .gfield_error textarea {
	border-color: var(--highlights-form-error) !important;
	background: #fffafa !important;
}

#gform_wrapper_2 .gfield_validation_message,
#gform_wrapper_2 .validation_message {
	margin-top: 7px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--highlights-form-error) !important;
	font-size: 11.5px !important;
	line-height: 1.45;
}

@media (max-width: 900px) {
	#gform_wrapper_2 .highlights-form-section {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	#gform_wrapper_2 .highlights-form-section__heading {
		max-width: 540px;
	}

	#gform_wrapper_2 #field_2_4 .ginput_complex {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#gform_wrapper_2 #field_2_4 .address_line_1,
	#gform_wrapper_2 #field_2_4 .address_country {
		grid-column: 1 / -1;
	}
}

@media (max-width: 767px) {
	#gform_wrapper_2 {
		left: 50%;
		width: calc(100vw - 24px);
		max-width: 520px;
		padding: 23px 18px 25px;
		border-radius: 18px;
		transform: translateX(-50%);
	}

	#gform_wrapper_2 .gform_heading {
		display: none;
	}

	#gform_wrapper_2 .gf_page_steps {
		margin-bottom: 23px !important;
	}

	#gform_wrapper_2 .highlights-form-intro {
		margin-bottom: 2px;
		padding-bottom: 22px;
	}

	#gform_wrapper_2 .highlights-form-intro__description {
		font-size: 13px;
	}

	#gform_wrapper_2 .highlights-form-section {
		padding: 22px 0;
	}

	#gform_wrapper_2 .highlights-form-section__fields {
		gap: 17px 14px;
	}

	#gform_wrapper_2 .highlights-form-section--billing #field_2_5 {
		grid-column: 1 / -1;
	}

	#gform_wrapper_2 .highlights-attendance-columns {
		grid-template-columns: 1fr;
		gap: 16px;
		padding-top: 23px;
	}

	#gform_wrapper_2 .highlights-attendance-column {
		gap: 16px;
	}

	#gform_wrapper_2 #field_2_22,
	#gform_wrapper_2 #field_2_24,
	#gform_wrapper_2 #field_2_21 {
		padding: 17px;
	}

	#gform_wrapper_2 #field_2_56.highlights-consent-panel {
		grid-template-columns: 1fr;
		padding: 17px;
	}

	#gform_wrapper_2 #field_2_55 {
		margin-top: 15px;
		padding-top: 16px;
		border-top: 1px solid var(--highlights-form-line);
	}
}

@media (max-width: 600px) {
	#gform_wrapper_2 .gf_step_label {
		font-size: 11px !important;
	}

	#gform_wrapper_2 .highlights-form-intro {
		display: block;
	}

	#gform_wrapper_2 .highlights-form-intro__position {
		display: inline-block;
		margin-top: 13px;
	}

	#gform_wrapper_2 .highlights-form-section--identity #field_2_1,
	#gform_wrapper_2 .highlights-form-section--identity #field_2_3,
	#gform_wrapper_2 .highlights-form-section--identity #field_2_60,
	#gform_wrapper_2 .highlights-form-section--contact #field_2_6,
	#gform_wrapper_2 .highlights-form-section--contact #field_2_7,
	#gform_wrapper_2 .highlights-form-section--contact #field_2_8,
	#gform_wrapper_2 .highlights-form-section--contact #field_2_33 {
		grid-column: 1 / -1;
	}

	#gform_wrapper_2 #field_2_4 {
		padding: 15px;
	}

	#gform_wrapper_2 #field_2_4 .ginput_complex {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px 10px;
	}

	#gform_wrapper_2 #field_2_4 .address_line_1,
	#gform_wrapper_2 #field_2_4 .address_country {
		grid-column: 1 / -1;
	}

	#gform_wrapper_2 #field_2_33 .gfield_radio {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#gform_wrapper_2 #field_2_22 fieldset.gfield--type-radio,
	#gform_wrapper_2 #field_2_24 fieldset.gfield--type-radio {
		grid-template-columns: minmax(0, 1fr) 120px;
		gap: 9px;
		padding: 11px 0;
	}

	#gform_wrapper_2 #field_2_22 .gchoice label,
	#gform_wrapper_2 #field_2_24 .gchoice label {
		min-height: 44px;
		padding-inline: 7px;
	}

	#gform_wrapper_2 .gform-page-footer input[type='button'],
	#gform_wrapper_2 .gform-page-footer input[type='submit'],
	#gform_wrapper_2 .gform_button {
		min-width: 0;
	}

	#gform_wrapper_2 .gform_previous_button {
		flex: 0 0 108px;
	}

	#gform_wrapper_2 .gform_button {
		flex: 1 1 auto;
	}
}

@media (max-width: 380px) {
	#gform_wrapper_2 {
		width: calc(100vw - 18px);
		padding-inline: 14px;
	}

	#gform_wrapper_2 .gf_step {
		gap: 7px;
	}

	#gform_wrapper_2 .gf_step_number {
		width: 33px !important;
		height: 33px !important;
		flex-basis: 33px;
	}

	#gform_wrapper_2 .gf_page_steps::before {
		top: 16px;
	}

	#gform_wrapper_2 #field_2_22 fieldset.gfield--type-radio,
	#gform_wrapper_2 #field_2_24 fieldset.gfield--type-radio {
		grid-template-columns: 1fr;
	}

	#gform_wrapper_2 .gform-page-footer {
		flex-direction: column;
	}

	#gform_wrapper_2 .gform-page-footer input[type='button'],
	#gform_wrapper_2 .gform-page-footer input[type='submit'],
	#gform_wrapper_2 .gform_button {
		width: 100% !important;
		flex: 1 1 auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	#gform_wrapper_2 *,
	#gform_wrapper_2 *::before,
	#gform_wrapper_2 *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}

	#gform_wrapper_2 .gform-page-footer input:hover {
		transform: none;
	}
}

/* Explicit, auditable alternatives for the two mandatory free-text fields. */
.highlights-explicit-choice {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: 12px;
	padding: 10px 14px;
	border: 1px solid rgba( 7, 61, 107, 0.16 );
	border-radius: 999px;
	background: rgba( 13, 226, 196, 0.08 );
	color: #073d6b;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.highlights-explicit-choice__input {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	accent-color: #00d9bd;
}

.highlights-explicit-choice-selected input[type='text'],
.highlights-explicit-choice-selected textarea {
	background: rgba( 13, 226, 196, 0.07 ) !important;
	border-color: rgba( 0, 176, 155, 0.45 ) !important;
}

.highlights-explicit-choice:focus-within {
	outline: 3px solid rgba( 0, 217, 189, 0.24 );
	outline-offset: 2px;
}
