.c-hubspot-form {
	background: var(--hf-section-bg);
}

.c-hubspot-form__inner {
	max-width: calc(var(--width-narrow) + var(--gutter) * 2);
	padding-block: var(--block-spacing-top, var(--spacing-xl)) var(--block-spacing-bottom, var(--spacing-xl));
}

.c-hubspot-form__card {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-md);
	padding: var(--spacing-lg);
	border-radius: var(--radius-rounded);
	background: var(--color-surface-raised);
	color: var(--color-navy);
	box-shadow: var(--shadow-xs);
}

.c-hubspot-form__note {
	margin: 0;
	color: var(--color-text-muted);
	font-size: var(--text-body-sm);
	line-height: 18px;
	font-weight: var(--weight-demi);
}

.c-hubspot-form .hs-form {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-3);
	font-family: var(--font-family);
}

.c-hubspot-form fieldset {
	display: grid;
	gap: var(--spacing-md);
	min-width: 0;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.c-hubspot-form fieldset:not(:has(.hs-form-field:not([style*="display: none"]), .hs-richtext, .legal-consent-container)) {
	display: none;
}

@media (width >= 560px) {
	.c-hubspot-form .form-columns-2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.c-hubspot-form .form-columns-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.c-hubspot-form .hs-dependent-field {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-md);
}

.c-hubspot-form .hs-form-field {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-sm);
	min-width: 0;
}

.c-hubspot-form .hs-form-field > label {
	font-size: var(--text-body);
	line-height: var(--lh-body);
}

.c-hubspot-form .hs-form-field > label:has(> span:only-child:empty) {
	display: none;
}

.c-hubspot-form .hs-form-required {
	margin-left: var(--spacing-xs);
	color: var(--color-error);
}

.c-hubspot-form .hs-form-field > .hs-field-desc {
	order: 1;
	color: var(--color-text-muted);
	font-size: var(--text-label);
	line-height: 16px;
}

.c-hubspot-form .hs-form-field > .hs-error-msgs {
	order: 2;
}

.c-hubspot-form .input {
	position: relative;
}

.c-hubspot-form .hs-input:where(:not([type="checkbox"], [type="radio"], [type="hidden"])) {
	width: 100%;
	min-height: 45px;
	padding: var(--spacing-sm) var(--spacing-md);
	border: 0;
	border-radius: var(--radius-rounded);
	background: var(--color-white);
	color: var(--color-navy);
	font-family: var(--font-family);
	font-size: var(--text-body-lg);
	line-height: var(--lh-body-lg);
	font-weight: var(--weight-body);
	transition: box-shadow 0.2s ease;
	box-shadow: inset 0 0 0 1px var(--color-beige-dark);
	appearance: none;
}

.c-hubspot-form .hs-input:where(:not([type="checkbox"], [type="radio"], [type="hidden"])):hover {
	box-shadow: inset 0 0 0 1px var(--color-navy);
}

.c-hubspot-form .hs-input:where(:not([type="checkbox"], [type="radio"], [type="hidden"])):focus {
	outline: 0;
	box-shadow: inset 0 0 0 2px var(--color-navy);
}

.c-hubspot-form .hs-input.invalid:where(:not([type="checkbox"], [type="radio"], [type="hidden"])) {
	box-shadow: inset 0 0 0 1px var(--color-error);
}

.c-hubspot-form .hs-input::placeholder {
	color: var(--color-text-muted);
	opacity: 1;
}

.c-hubspot-form select.hs-input {
	padding-right: var(--spacing-5);
	cursor: pointer;
}

.c-hubspot-form select.hs-input.is-placeholder {
	color: var(--color-text-muted);
}

.c-hubspot-form .hs-fieldtype-select .input::after,
.c-hubspot-form .hs-dateinput::after {
	content: "";
	position: absolute;
	top: 50%;
	right: var(--spacing-md);
	width: 14px;
	height: 14px;
	background: var(--color-navy);
	pointer-events: none;
	translate: 0 -50%;
	mask: url("../../assets/svg/icons/icon-chevron.svg") center / contain no-repeat;
}

.c-hubspot-form .hs-dateinput {
	position: relative;
}

.c-hubspot-form .hs-dateinput::after {
	width: 16px;
	height: 16px;
	mask-image: url("../../assets/svg/icons/icon-calendar.svg");
}

.c-hubspot-form .hs-dateinput .hs-input {
	padding-right: var(--spacing-5);
	cursor: pointer;
}

.c-hubspot-form textarea.hs-input {
	min-height: 96px;
	padding: 11px;
	font-size: var(--text-body-sm);
	line-height: 18px;
	resize: vertical;
}

.c-hubspot-form .inputs-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.c-hubspot-form .hs-error-msgs {
	margin: 0;
	padding: 0;
	list-style: none;
}

.c-hubspot-form .hs-error-msg,
.c-hubspot-form .hs_error_rollup {
	color: var(--color-error);
	font-size: var(--text-label);
	line-height: 16px;
}

.c-hubspot-form .hs-richtext {
	font-size: var(--text-body);
	line-height: var(--lh-body);
}

.c-hubspot-form .hs-richtext :is(h1, h2, h3, h4) {
	margin: 0;
	font-size: var(--text-h4);
	line-height: var(--lh-h4);
	letter-spacing: var(--ls-h4);
}

.c-hubspot-form .hs-richtext > :last-child,
.c-hubspot-form .hs-richtext > div > :last-child {
	margin-bottom: 0;
}

.c-hubspot-form .legal-consent-container {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-md);
}

.c-hubspot-form .legal-consent-container .hs-richtext {
	color: var(--color-text-muted);
	font-size: var(--text-label);
	line-height: 16px;
}

.c-hubspot-form .legal-consent-container .hs-richtext p {
	margin: 0;
}

.c-hubspot-form .hs-form-booleancheckbox-display,
.c-hubspot-form .hs-form-checkbox-display,
.c-hubspot-form .hs-form-radio-display {
	display: flex;
	align-items: center;
	gap: var(--spacing-md);
	padding: var(--spacing-md);
	border-radius: var(--radius-rounded);
	background: var(--color-beige);
	font-size: var(--text-label);
	line-height: 16px;
	cursor: pointer;
	box-shadow: inset 0 0 0 1px var(--color-beige-dark);
}

.c-hubspot-form .hs-form-booleancheckbox-display p {
	margin: 0;
}

.c-hubspot-form .inputs-list:not(.inline-list) li + li {
	margin-top: var(--spacing-sm);
}

.c-hubspot-form .hs-input:is([type="checkbox"], [type="radio"]) {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	margin: 0;
	border: 0;
	border-radius: var(--radius-sm);
	background: var(--color-white) center no-repeat;
	cursor: pointer;
	box-shadow: inset 0 0 0 1.5px var(--color-navy);
	appearance: none;
}

.c-hubspot-form .hs-input[type="radio"] {
	border-radius: var(--radius-full);
}

.c-hubspot-form .hs-input:is([type="checkbox"], [type="radio"]):focus-visible {
	outline: 2px solid var(--color-blue-deep);
	outline-offset: 2px;
}

.c-hubspot-form .hs-input[type="checkbox"]:checked {
	background-color: var(--color-navy);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M16.9577 5.29561C17.3156 5.60241 17.3571 6.1413 17.0503 6.49924L8.81985 16.1014L3.05144 11.2944C2.68927 10.9926 2.64033 10.4543 2.94214 10.0921C3.24395 9.72996 3.78221 9.68103 4.14438 9.98284L8.61935 13.712L15.754 5.38819C16.0608 5.03025 16.5997 4.9888 16.9577 5.29561Z'/%3E%3C/svg%3E");
}

.c-hubspot-form .hs-input[type="radio"]:checked {
	box-shadow: inset 0 0 0 1.5px var(--color-navy), inset 0 0 0 5px var(--color-white);
	background-color: var(--color-navy);
}

.c-hubspot-form .hs_error_rollup {
	text-align: center;
}

.c-hubspot-form .hs_recaptcha .input {
	display: flex;
	justify-content: center;
}

.c-hubspot-form .hs-submit .actions {
	position: relative;
	width: fit-content;
	margin-inline: auto;
	color: var(--color-text-on-accent);
}

.c-hubspot-form .hs-button {
	padding: 12px 50px 12px 20px;
	border: 0;
	border-radius: var(--radius-full);
	background: var(--color-blue-mid);
	color: var(--color-text-on-accent);
	font-family: var(--font-family);
	font-size: var(--text-body);
	line-height: var(--lh-body);
	font-weight: var(--weight-medium);
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
	appearance: none;
}

.c-hubspot-form .hs-submit .actions::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 20px;
	background: currentColor;
	pointer-events: none;
	translate: 0 -50%;
	transition: color 0.2s ease;
	mask: url("../../assets/svg/icons/icon-contact.svg") center / contain no-repeat;
}

.c-hubspot-form .hs-submit .actions:has(.hs-button:hover) {
	color: var(--color-blue-deep);
}

.c-hubspot-form .hs-button:hover {
	background: var(--color-beige);
	color: var(--color-blue-deep);
	box-shadow: inset 0 0 0 2px var(--color-blue-deep);
}

.c-hubspot-form .hs-button:focus-visible {
	outline: 2px solid var(--color-blue-deep);
	outline-offset: 2px;
}

.c-hubspot-form .hs-datepicker {
	position: absolute;
	top: calc(100% + var(--spacing-xs));
	left: 0;
	z-index: 10;
}

.c-hubspot-form .pika-single {
	padding: var(--spacing-sm);
	border-radius: var(--radius-rounded);
	background: var(--color-white);
	color: var(--color-navy);
	font-family: var(--font-family);
	box-shadow: var(--shadow-md), inset 0 0 0 1px var(--color-beige-dark);
}

.c-hubspot-form .pika-single.is-hidden {
	display: none;
}

.c-hubspot-form .pika-title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--spacing-sm);
	position: relative;
	min-height: 32px;
	margin-bottom: var(--spacing-xs);
}

.c-hubspot-form .pika-label {
	position: relative;
	font-size: var(--text-body-sm);
	font-weight: var(--weight-demi);
}

.c-hubspot-form .pika-select {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.c-hubspot-form :is(.pika-prev, .pika-next) {
	position: absolute;
	top: 0;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: var(--radius-full);
	background: transparent;
	color: transparent;
	overflow: hidden;
	cursor: pointer;
}

.c-hubspot-form .pika-prev {
	left: 0;
}

.c-hubspot-form .pika-next {
	right: 0;
}

.c-hubspot-form :is(.pika-prev, .pika-next)::before {
	content: "";
	position: absolute;
	inset: 9px;
	background: var(--color-navy);
	rotate: 90deg;
	mask: url("../../assets/svg/icons/icon-chevron.svg") center / contain no-repeat;
}

.c-hubspot-form .pika-next::before {
	rotate: -90deg;
}

.c-hubspot-form :is(.pika-prev, .pika-next):hover {
	background: var(--color-beige);
}

.c-hubspot-form :is(.pika-prev, .pika-next).is-disabled {
	opacity: 0.3;
	pointer-events: none;
}

.c-hubspot-form .pika-table {
	border-collapse: collapse;
	border-spacing: 0;
}

.c-hubspot-form .pika-table th {
	padding-bottom: var(--spacing-xs);
	color: var(--color-text-muted);
	font-size: var(--text-label);
	font-weight: var(--weight-medium);
}

.c-hubspot-form .pika-table abbr {
	text-decoration: none;
}

.c-hubspot-form .pika-table td {
	padding: 1px;
}

.c-hubspot-form .pika-button {
	width: 36px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: var(--radius-sm);
	background: transparent;
	color: inherit;
	font-family: inherit;
	font-size: var(--text-body-sm);
	cursor: pointer;
}

.c-hubspot-form .pika-button:hover {
	background: var(--color-beige);
}

.c-hubspot-form .is-today .pika-button {
	color: var(--color-blue-mid);
	font-weight: var(--weight-bold);
}

.c-hubspot-form .is-selected .pika-button {
	background: var(--color-navy);
	color: var(--color-white);
}

.c-hubspot-form .is-disabled .pika-button {
	opacity: 0.3;
	pointer-events: none;
}

.c-hubspot-form .pika-table .is-empty {
	visibility: hidden;
}


.c-hubspot-form .hs-form-html {
	--hsf-global__font-family: var(--font-family);
	--hsf-global__font-size: var(--text-body);
	--hsf-global__color: var(--color-navy);
	--hsf-global__error-color: var(--color-error);
	--hsf-background__background-color: transparent;
	--hsf-background__padding: 0;
	--hsf-row__horizontal-spacing: var(--spacing-md);
	--hsf-row__vertical-spacing: var(--spacing-3);
	--hsf-module__vertical-spacing: 0;
	--hsf-field-label__font-size: var(--text-body);
	--hsf-field-label__color: var(--color-navy);
	--hsf-field-label-requiredindicator__color: var(--color-error);
	--hsf-field-description__font-size: var(--text-label);
	--hsf-field-description__color: var(--color-text-muted);
	--hsf-field-input__font-size: var(--text-body-lg);
	--hsf-field-input__color: var(--color-navy);
	--hsf-field-input__background-color: var(--color-white);
	--hsf-field-input__placeholder-color: var(--color-text-muted);
	--hsf-field-input__border-width: 0;
	--hsf-field-input__border-radius: var(--radius-rounded);
	--hsf-field-input__padding: var(--spacing-sm) var(--spacing-md);
	--hsf-field-dropdown-options__border-radius: var(--radius-rounded);
	--hsf-erroralert__font-size: var(--text-label);
	--hsf-infoalert__font-size: var(--text-label);
	--hsf-richtext__font-size: var(--text-body);
	--hsf-navigationrow-buttons__justify-content: center;
	--hsf-navigationrow-buttons-single__justify-content: center;
}

.c-hubspot-form .hs-form-html .hsfc-Row > div {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-sm);
	position: relative;
	min-width: 0;
}

.c-hubspot-form .hs-form-html .hsfc-FieldLabel {
	line-height: var(--lh-body);
}

.c-hubspot-form .hs-form-html .hsfc-FieldLabel__RequiredIndicator {
	margin-left: var(--spacing-xs);
}

.c-hubspot-form .hs-form-html .hsfc-FieldDescription {
	order: 1;
	margin: 0;
	line-height: 16px;
}

.c-hubspot-form .hs-form-html .hsfc-ErrorAlert {
	order: 2;
	line-height: 16px;
}

.c-hubspot-form .hs-form-html :is(.hsfc-TextInput, .hsfc-TextareaInput, .hsfc-PhoneInput__FlagAndCaret) {
	min-height: 45px;
	line-height: var(--lh-body-lg);
	transition: box-shadow 0.2s ease;
	box-shadow: inset 0 0 0 1px var(--color-beige-dark);
}

.c-hubspot-form .hs-form-html :is(.hsfc-TextInput, .hsfc-TextareaInput, .hsfc-PhoneInput__FlagAndCaret):hover {
	box-shadow: inset 0 0 0 1px var(--color-navy);
}

.c-hubspot-form .hs-form-html :is(.hsfc-TextInput, .hsfc-TextareaInput, .hsfc-PhoneInput__FlagAndCaret):focus {
	outline: 0;
	box-shadow: inset 0 0 0 2px var(--color-navy);
}

.c-hubspot-form .hs-form-html :is(.hsfc-TextInput, .hsfc-TextareaInput)[aria-invalid="true"] {
	box-shadow: inset 0 0 0 1px var(--color-error);
}

.c-hubspot-form .hs-form-html .hsfc-TextareaInput {
	min-height: 96px;
	padding: 11px;
	font-size: var(--text-body-sm);
	line-height: 18px;
	resize: vertical;
}

.c-hubspot-form .hs-form-html .hsfc-DropdownOptions__Search .hsfc-TextInput {
	min-height: 40px;
	font-size: var(--text-body);
}

.c-hubspot-form .hs-form-html .hsfc-TextInput--button {
	padding-right: var(--spacing-5);
	cursor: pointer;
}

.c-hubspot-form .hs-form-html .hsfc-DropdownInput__Caret {
	padding: 0 var(--spacing-md);
}

.c-hubspot-form .hs-form-html .hsfc-DropdownInput__Caret > span {
	width: 14px;
	height: 14px;
	border: 0;
	background: var(--color-navy);
	mask: url("../../assets/svg/icons/icon-chevron.svg") center / contain no-repeat;
}

.c-hubspot-form .hs-form-html .hsfc-Row > .hsfc-DateField {
	display: grid;
	align-content: start;
}

.c-hubspot-form .hs-form-html .hsfc-DateField > .hsfc-DateInput {
	grid-area: 2 / 1;
	padding-right: var(--spacing-6);
}

.c-hubspot-form__date-picker {
	display: flex;
	position: relative;
	grid-area: 2 / 1;
	align-self: center;
	justify-self: end;
	margin-right: var(--spacing-xs);
}

.c-hubspot-form__date-button {
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	border-radius: var(--radius-rounded);
	background: transparent;
	color: var(--color-navy);
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.c-hubspot-form__date-button::before {
	content: "";
	width: 16px;
	height: 16px;
	background: currentColor;
	mask: url("../../assets/svg/icons/icon-calendar.svg") center / contain no-repeat;
}

.c-hubspot-form__date-button:hover {
	background: var(--color-beige);
}

.c-hubspot-form__date-button:focus-visible {
	outline: 2px solid var(--color-blue-deep);
	outline-offset: 2px;
}

.c-hubspot-form__date-native {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	opacity: 0;
	pointer-events: none;
}

.c-hubspot-form .hs-form-html .hsfc-DropdownOptions {
	margin-top: var(--spacing-xs);
	background: var(--color-white);
	box-shadow: var(--shadow-md), inset 0 0 0 1px var(--color-beige-dark);
}

.c-hubspot-form .hs-form-html .hsfc-DropdownOptions__List {
	max-height: 280px;
}

.c-hubspot-form .hs-form-html .hsfc-DropdownOptions__List__ListItem {
	padding: var(--spacing-sm) var(--spacing-md);
	background: transparent;
	font-size: var(--text-body);
	line-height: var(--lh-body);
	filter: none;
}

.c-hubspot-form .hs-form-html .hsfc-DropdownOptions__List__ListItem:is(:hover, :focus) {
	background: var(--color-beige);
	filter: none;
}

.c-hubspot-form .hs-form-html .hsfc-DropdownOptions__List__ListItem--selected {
	font-weight: var(--weight-demi);
	filter: none;
}

.c-hubspot-form .hs-form-html .hsfc-PhoneInput {
	gap: var(--spacing-sm);
}

.c-hubspot-form .hs-form-html .hsfc-PhoneInput .hsfc-PhoneInput__FlagAndCaret.hsfc-PhoneInput__FlagAndCaret {
	box-sizing: border-box;
	padding: 0 var(--spacing-md);
	border: 0;
	border-radius: var(--radius-rounded);
	background: var(--color-white);
}

.c-hubspot-form .hs-form-html .hsfc-PhoneInput > .hsfc-TextInput.hsfc-TextInput {
	border: 0;
	border-radius: var(--radius-rounded);
}

.c-hubspot-form .hs-form-html :is(.hsfc-CheckboxInput, .hsfc-RadioInput) {
	box-shadow: inset 0 0 0 1.5px var(--color-navy);
}

.c-hubspot-form .hs-form-html .hsfc-RichText > :last-child {
	margin-bottom: 0;
}

.c-hubspot-form .hs-form-html .hsfc-Button {
	position: relative;
	padding: 12px 50px 12px 20px;
	border: 0;
	border-radius: var(--radius-full);
	background: var(--color-blue-mid);
	color: var(--color-text-on-accent);
	font-size: var(--text-body);
	line-height: var(--lh-body);
	font-weight: var(--weight-medium);
	transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.c-hubspot-form .hs-form-html .hsfc-Button:not(.hsfc-Button--loading)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 20px;
	background: currentColor;
	translate: 0 -50%;
	mask: url("../../assets/svg/icons/icon-contact.svg") center / contain no-repeat;
}

.c-hubspot-form .hs-form-html .hsfc-Button:not([disabled]):hover {
	background: var(--color-beige);
	color: var(--color-blue-deep);
	box-shadow: inset 0 0 0 2px var(--color-blue-deep);
	transform: none;
}

.c-hubspot-form .hs-form-html .hsfc-Button:not([disabled]):focus {
	background: var(--color-blue-mid);
	color: var(--color-text-on-accent);
}

.c-hubspot-form .hs-form-html .hsfc-Button:focus-visible {
	outline: 2px solid var(--color-blue-deep);
	outline-offset: 2px;
}
