form,
.submitted-message {
	font-family: var(--primary_font);
	font-size: var(--body_font_font_size);
}

.lazyload-form {
	max-height: 0;
	overflow: hidden;
	
	padding-left: calc(var(--spacer_xxxxs) / 2);
	padding-right: calc(var(--spacer_xxxxs) / 2);
	transition: max-height var(--slow_transition), overflow 0s linear 0.5s;
}
.lazyload-form form.hs-form { 
	padding-top: calc(var(--spacer_xxxxs) / 2);
	padding-bottom: calc(var(--spacer_xxxxs) / 2);
}

.lazyload-form.lazyload-form--loaded {
	overflow: unset;
}


	transition: var(--slow_transition);
}

/* Form title */

.form-title {
	color: var(--form_title_font_color);
}

/* Labels */

form label {
	display: block;
	font-size: var(--body_font_font_size);
	color: var(--form_label_font_color);
	margin-bottom: var(--spacer_xxxs);
}

/* Help text */

form legend {
	font-size: var(--body_font_font_size);
	color: var(--form_help_text_font_color);
}

/* Fields */

form fieldset {
	max-width: 100%;
}

.hs-form-field {
	margin-bottom: var(--spacer_xs);
}

/* Inputs */

form input[type="text"],
form input[type="email"],
form input[type="password"],
form input[type="tel"],
form input[type="number"],
form input[type="file"],
form select,
form textarea {
	display: inline-block;
	font-family: var(--primary_font);
	font-size: var(--body_font_font_size);
	color: var(--form_field_font_color);
	padding: 0 calc(var(--spacer_sm) - var(--spacer_xxxxs));
	width: 100%;
	background-color: var(--form_field_bg_color);
	box-shadow: inset 0 0 0 var(--form_field_border_width) var(--form_field_border_color), 0 0 0 2px rgba(255, 255, 255, 0);
	border: 0;
	border-radius: var(--form_field_corner_radius);
	transition: box-shadow var(--default_transition);
}

form input[type="text"]:hover,
form input[type="email"]:hover,
form input[type="password"]:hover,
form input[type="tel"]:hover,
form input[type="number"]:hover,
form input[type="file"]:hover,
form select:hover,
form textarea:hover {
	box-shadow: inset 0 0 0 var(--form_field_border_width) var(--form_field_border_color), 0 0 0 2px var(--lightest_secondary_color);
}

form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="password"]:focus,
form input[type="tel"]:focus,
form input[type="number"]:focus,
form input[type="file"]:focus,
form select:focus,
form textarea:focus {
	outline: 0;
	box-shadow: inset 0 0 0 var(--form_field_border_width) var(--form_field_border_color), 0 0 0 2px var(--lighter_secondary_color);
}

form input[type="text"],
form input[type="email"],
form input[type="password"],
form input[type="tel"],
form input[type="number"],
form input[type="file"],
form select {
	min-height: 4.8rem;
}

form textarea {
	resize: vertical;
}

::placeholder {
	color: var(--form_field_placeholder_color);
}

/* Inputs - checkbox/radio */

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

form .inputs-list > li {
	display: block;
	margin: var(--spacer_xxxs) 0;
}

form .inputs-list input,
form .inputs-list span {
	vertical-align: middle;
}

form input[type="checkbox"],
form input[type="radio"] {
	appearance: none;
	cursor: pointer;
	margin-right: var(--spacer_xxxxs);
}

form input[type="checkbox"]:focus,
form input[type="radio"]:focus {
	outline: var(--outline_link);
	outline-offset: var(--outline_offset);
}

form input[type="checkbox"] {
	width: 16px;
	height: 16px;
	box-shadow: inset 0 0 0 1px var(--primary_color);
	background-color: var(--white_color);
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='11' viewBox='0 0 12 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5L5 9L11 1' stroke='%23FFFFFF' stroke-width='2'/%3E%3C/svg%3E%0A");
	background-position: center;
	background-size: 10px 8px;
	background-repeat: no-repeat;
	transition: background-image var(--default_transition);
}

form input[type="checkbox"]:checked {
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='11' viewBox='0 0 12 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5L5 9L11 1' stroke='%23003C58' stroke-width='2'/%3E%3C/svg%3E%0A");
}

form input[type="radio"] {
	width: 16px;
	height: 16px;
	box-shadow: inset 0 0 0 1px var(--primary_color), inset 0 0 0 8px var(--white_color), inset 0 0 0 8px var(--primary_color);
	background-color: var(--white_color);
	border-radius: var(--border_radius_50);
	transition: box-shadow var(--default_transition);
}

form input[type="radio"]:checked {
	box-shadow: inset 0 0 0 1px var(--primary_color), inset 0 0 0 4px var(--white_color), inset 0 0 0 8px var(--primary_color);
}

/* Inputs - date picker */

.hs-dateinput {
	position: relative;
}

.hs-dateinput::before {
	content:'\01F4C5';
	position: absolute;
	right: 10%;
	top: 50%;
	transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
	color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
	border-radius: 0;
	box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
	border-radius: 0 !important;
	color: #FFF;
}

.hs-fieldtype-date .input .hs-dateinput:before {
	color: var(--form_field_placeholder_color);
}

.fn-date-picker td.is-selected .pika-button {
	background-color: var(--primary_color);
}

.fn-date-picker td .pika-button:hover {
	background-color: var(--primary_color);
}

.fn-date-picker td.is-today .pika-button {
	color: var(--primary_color);
}

/* Inputs - file picker */

form input[type="file"] {
	background-color: transparent;
	border: initial;
	padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
	color: #5E6F98;
	font-size: var(--font_size_sm);
	margin: 0 0 var(--spacer_xs);
}

form .hs-richtext img {
	max-width: 100% !important;
}

/* GDPR */

form .legal-consent-container .hs-form-booleancheckbox-display > span,
form .legal-consent-container .hs-form-booleancheckbox-display > span p {
	margin-left: var(--spacer_xxxs);
}

/* Validation */

.hs-form-required {
	color: inherit;
}

.hs-input.invalid.error {
	box-shadow: inset 0 0 0 var(--form_field_border_width) var(--form_field_border_color), 0 0 0 2px var(--lighter_error_color);
}

.hs-error-msg {
	font-size: var(--font_size_xs);
	color: var(--error_color);
	margin-top: var(--spacer_xxxxs);
}
.hs-error-msgs a {
	font-size: var(--font_size_xs);
	color: var(--error_color);
}

/* Button */
form input[type="submit"],
form .hs-button {
	display: inline-block;

	appearance: none;
	border: 0;
	border-radius: var(--button_corner_radius);

	padding: var(--button_spacing);
	min-height: 4.8rem;

	font-family: var(--button_font_family);

	font-size: var(--button_font_size);
	font-weight: var(--button_font_weight);
	font-style: var(--button_text_decoration);

	cursor: pointer;
	white-space: normal;
	text-align: center;

	transition: box-shadow var(--default_transition), background-color var(--default_transition), color var(--default_transition);
}

form .hs-button,
form input[type="submit"] {
	background-color: var(--button_bg_color);
	box-shadow: inset 0 0 0 var(--button_border_width) var(--button_border_color);
	color: var(--button_color);
	text-transform: var(--button_text_transform);
}

form .hs-button:hover,
form input[type="submit"]:hover {
	color: var(--button_bg_color);
	background-color: var(--white_color);
}

form .hs-button:focus,
form input[type="submit"]:focus {
	outline: var(--outline_link);
	outline-offset: var(--outline_offset);
	border-radius: var(--border_radius_8);
}

/* Captcha */

.grecaptcha-badge {
	margin: 0 auto;
}



.one-line-form form.hs-form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}

.one-line-form .hs-form-field {
	margin-bottom: 0;
	position: relative;
}

.one-line-form .hs-form-field.hs_email.hs-email {
	flex-grow: 1;
	order: 1;
	max-width: 500px;
}
.one-line-form .hs-form-field.hs-firstname {
	order: 1;
	margin-left: 2rem;
}


@media (min-width: 992px) {
	.one-line-form form.hs-form .hs-error-msgs.inputs-list {
		position: absolute;
		top: 100%;
		left: 0;
	}
}
@media (max-width: 991px) {
	.one-line-form .hs-form-field {
		width: 100%;
	}
	
	.one-line-form .hs-form-field.hs-firstname {
		margin-left: 0;
		margin-top: var(--spacer_xxxs);
		margin-bottom: var(--spacer_xxxs);
	}
}

.one-line-form form.hs-form .hs-error-msgs.inputs-list > li {
	margin: var(--spacer_xxxxs) 0 var(--spacer_xxxs) 0;
}

.one-line-form .hs_submit.hs-submit {
	order: 2;
	margin-left: calc(var(--spacer_sm) - var(--spacer_xxxxs));
}

.one-line-form .legal-consent-container {
	order: 3;
	margin-top: var(--spacer_xxs);
}

.one-line-form .legal-consent-container a {
	text-decoration: underline;
}

.one-line-form .legal-consent-container .hs-richtext:last-of-type {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.one-line-form__container {
		background-size: cover;
		background-position: center center;
		padding: var(--spacer_sm) var(--spacer_md);
	}
	
	.one-line-form .hs-form-field.hs_email.hs-email {
		max-width: 100%;
	}
	
	.one-line-form .hs_submit.hs-submit {
		width: 100%;
		margin-left: 0;
		margin-top: var(--spacer_xxs);
	}
	
	.one-line-form form.hs-form input[type="submit"] {
		width: 100%;
	}
}
/* Table */

table {
  background-color: var(--table_bg_color);
  border-collapse: collapse;
  margin-bottom: var(--spacer_xs);
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  border-top: var(--table_border_top);
  border-right: var(--table_border_right);
  border-bottom: var(--table_border_bottom);
  border-left: var(--table_border_left);
  padding: var(--table_cell_spacing);
  color: var(--table_font_color);
}

/* Table header */

thead th {
  background-color: var(--table_head_bg_color);
  color: var(--table_head_font_color);
  vertical-align: middle;
}

/* Table footer */

tfoot td {
  background-color: var(--table_footer_bg_color);
  color: var(--table_footer_font_color);
}

.hs-search-field {
  position: relative;
}
.hs-search-field__input {
  box-sizing: border-box;
  width: 100%;
}
.hs-search-field__bar {
	margin-bottom: var(--spacer_sm);
}
.hs-search-field__bar button svg {
  height: 10px;
}

.hs-search-field__suggestions {
	border-radius: var(--border_radius_8);
}

.hs-search-field--open .hs-search-field__suggestions {
	
}

.hs-search-field__suggestions li {
  display: block;
  margin: 0;
  padding: 0;
	padding: var(--spacer_xxxs) calc(var(--spacer_sm) - var(--spacer_xxxxs));
}
.hs-search-field__suggestions #results-for {
  font-weight: bold;
}
.hs-search-field__suggestions a,
.hs-search-field__suggestions #results-for {
  display: block;
}

.result__link {
	padding-right: var(--spacer_sm);
	position: relative;
	color: var(--primary_color);
	transition: color var(--default_transition);
}

.result__link::after {
	content: "";
	position: absolute;
	top: calc(50% - 16px);
	right: 0;
	display: inline-block;
	width: 32px;
	height: 32px;
	background-image: url(data:image/svg+xml,%3Csvg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.0002 4.99991L0.859203 1.57991C0.591203 1.30991 0.591203 0.872914 0.859203 0.601914C1.1272 0.331914 1.5602 0.331914 1.8282 0.601914L5.6582 4.50991C5.9262 4.78091 5.9262 5.21891 5.6582 5.48891L1.8282 9.39691C1.5612 9.66891 1.1272 9.66691 0.859203 9.39691C0.591203 9.12791 0.591203 8.68991 0.859203 8.41891L4.0002 4.99991Z' fill='%23003C58'/%3E%3C/svg%3E%0A);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 6px 10px;
	transition: transform var(--default_transition), background-image var(--default_transition);
}

.result__link:hover {
	color: var(--secondary_color);
}

.result__link:hover::after {
	background-image: url(data:image/svg+xml,%3Csvg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.0002 4.99991L0.859203 1.57991C0.591203 1.30991 0.591203 0.872914 0.859203 0.601914C1.1272 0.331914 1.5602 0.331914 1.8282 0.601914L5.6582 4.50991C5.9262 4.78091 5.9262 5.21891 5.6582 5.48891L1.8282 9.39691C1.5612 9.66891 1.1272 9.66691 0.859203 9.39691C0.591203 9.12791 0.591203 8.68991 0.859203 8.41891L4.0002 4.99991Z' fill='%2357C0DB'/%3E%3C/svg%3E%0A);
	transform: translateX(4px);
}

.hs-search-highlight {
	font-weight: var(--font_weight_bold);
	text-decoration: underline;
}
.social-links {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.social-links__link {
	display: block;
}
.social-links__link:focus {
	outline: 2px solid var(--secondary_color);
	outline-offset: var(--spacer_xxxs);
	border-radius: var(--border_radius_8);
}

.social-links__icon {
	border-radius: 50%;
	display: inline-flex;
	height: 3.3rem;
	margin: 0 var(--spacer_xxxxs);
	position: relative;
	width: 3.3rem;
}

.social-links__icon svg {
	fill: #FFF;
	height: 3.3rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: auto;
	transition: fill var(--default_transition);
}

.social-links__icon:hover svg {
	fill: var(--secondary_color);
}

.listing-hero {
	padding-top: var(--spacer_xxxxl);
	padding-bottom: var(--spacer_xxxxl);
}

.listing-hero__texts h1 {
	color: inherit;
}
.listing-hero__texts > *:last-child {
	margin-bottom: 0;
}
.banner-newsletter__container {
	padding: var(--spacer_md);
	margin-top: var(--spacer_lg);
	margin-bottom: var(--spacer_lg);
	border-radius: var(--border_radius_8);
}
.banner-newsletter--shapes .banner-newsletter__texts {
	max-width: 700px;
}

.banner-newsletter__title {
	margin-bottom: var(--spacer_xxxs);
}
.banner-newsletter__caption {
	margin-bottom: var(--spacer_sm);
}
.banner-newsletter__caption > *:last-child {
	margin-bottom: 0;
}

.banner-newsletter__rgpd {
	margin-top: var(--spacer_xs);
}
.banner-newsletter__rgpd * {
	font-size: var(--font_size_xs);
}
.banner-newsletter__rgpd > *:last-child {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.banner-newsletter__container {
		background-size: cover;
		background-position: center center;
		padding: var(--spacer_md);
	}
}
.banner-contact__container {
	padding-top: var(--spacer_xxxxl);
	padding-bottom: var(--spacer_xxxxl);
}

.banner-contact__texts {
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}

.banner-contact__icon {
	font-size: 9.3rem;
	margin-bottom: var(--spacer_sm);
}

.banner-contact__title {
	text-align: center;
	color: inherit;
	margin-bottom: var(--spacer_xxxs);
}

.banner-contact__caption {
	text-align: center;
	margin-bottom: var(--spacer_sm);
}

.banner-contact__caption > *:last-child {
	margin-bottom: 0;
}
.footer-menu {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: auto;
	grid-column-gap: 40px;
	grid-row-gap: 40px;
}
@media (max-width: 991px) {
	.footer-menu {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 767px) {
	.footer-menu {
		grid-template-columns: repeat(1, 1fr);
	}
}

.footer-menu__item-title {
	font-size: var(--font_size_xl);
	line-height: 1.2;
	color: var(--secondary_color);
	border-bottom: 1px solid var(--secondary_color);
	padding-bottom: var(--spacer_xs);
}

.footer-menu__item-title-link {
	color: inherit;
}

.footer-menu__item-sublist-item-link {
	display: block;
	line-height: 1.75;
	padding-top: var(--spacer_xxxxs);
	padding-bottom: var(--spacer_xxxxs);
}

.footer-menu__item-sublist-item-link:focus {
	outline: 2px solid var(--secondary_color);
	outline-offset: var(--spacer_xxxxs);
	border-radius: var(--border_radius_8);
}

@media (max-width: 991px) {
	.footer-menu__item-sublist-item-link {
		padding-top: var(--spacer_xxxs);
		padding-bottom: var(--spacer_xxxs);
	}
}

.footer-menu__item-sublist-item-link span {
	transition: color var(--default_transition);
}

.footer-menu__item-sublist-item-link:hover span {
	color: var(--secondary_color);
}
/* Menu and simple menu */

.hs-menu-wrapper ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Horizontal menu */

.hs-menu-wrapper.hs-menu-flow-horizontal .hs-menu-children-wrapper {
  flex-direction: column;
}

@media (max-width: 1024px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal ul {
    flex-direction: column;
  }
}

/* Vertical menu */

.hs-menu-wrapper.hs-menu-flow-vertical ul {
  flex-direction: column;
}

/* Flyouts */

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts ul {
  display: inline-flex;
}

@media (max-width: 1024px) {
  .hs-menu-wrapper.hs-menu-flow-vertical ul {
    display: flex;
  }
}

.hs-menu-wrapper.flyouts .hs-item-has-children {
  position: relative;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper {
  left: -9999px;
  opacity: 0;
  position: absolute;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper a {
  display: block;
  white-space: nowrap;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 0;
  opacity: 1;
  top: 100%;
}

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 100%;
  opacity: 1;
  top: 0;
}

@media (max-width: 1024px) {
  .hs-menu-wrapper.flyouts .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
    left: 0;
    opacity: 1;
    position: relative;
    top: auto;
  }
}

/* CTA, logo, and rich text images */

.hs_cos_wrapper_type_cta img,
.hs_cos_wrapper_type_logo img,
.hs_cos_wrapper_type_rich_text img {
  height: auto;
  max-width: 100%;
}
div[data-global-resource-path*="footer"] {
	position: relative;
	z-index: 1;
}

.footer {
	background-color: var(--footer_bg_color);
}

.footer__container {
	padding-top: var(--spacer_xxxxl);
	padding-bottom: calc(var(--spacer_xxxxl) + var(--spacer_xxs));
}
@media (max-width: 767px) {
	.footer__container {
		padding-top: var(--spacer_lg);
		padding-bottom: var(--spacer_xl);
	}
}

.footer__menus {
	margin-bottom: var(--spacer_lg);
}

/* Footer content */

.footer p,
.footer label,
.footer span,
.footer li,
.footer img {
	color: var(--footer_font_color);
}



.footer__copyrights {
	font-size: var(--font_size_sm);
	margin-top: var(--spacer_lg);
}
.footer__copyrights > span > * {
	font-size: inherit;
}
.footer__copyrights > span > *:last-child {
	margin-bottom: 0;
}

.footer__copyrights a {
	color: inherit;
	display: inline;
	background-image: linear-gradient(to right, var(--white_color), var(--white_color));
	background-repeat: no-repeat;
	background-size: 100% 1px;
	background-position: left bottom;
	padding-bottom: 0.25rem;
	transition: color var(--default_transition), background-image var(--default_transition);
}
.footer__copyrights a:hover {
	color: var(--secondary_color);
	background-image: linear-gradient(to right, var(--secondary_color), var(--secondary_color));
}
.footer__copyrights a:focus {
	outline: 2px solid var(--secondary_color);
	outline-offset: var(--spacer_xxxxs);
	border-radius: var(--border_radius_8)
}

.footer__socials .social-links {
	padding-top: var(--spacer_xxxxs);
}