@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

/* Theme base styles */

/* Tools
Any animations, or functions used throughout the project.
Note: _macros.css needs to be imported into each stylesheet where macros are used and not included here
*/

/* Generic
This is where reset, normalize & box-sizing styles go.
*/

*, *:before, *:after {
  box-sizing: border-box;
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  /*font-size: 2em;*/
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct box sizing in Firefox.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Remove the inheritance of text transform in Edge and Firefox.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}


/* Elements
Base HMTL elements are styled in this section (<body>, <h1>, <a>, <p>, <button> etc.)
*/

/* The overflow-wrap is meant to prevent long/large words from breaking the mobile responsiveness of a page (e.g. horizontal scrolling). It is preferred to reduce font sizes on mobile to address this, with this CSS specifically helping with extreme scenarios where a reduction in font size is not possible. */


body {
  line-height: var(--lh-lg) !important;
  overflow-wrap: break-word;
}

/* Handles word breaking for a few specific languages which handle breaks in words differently. If your content is not translated into these languages, you can safely remove this.  */

html[lang^="ja"] body,
html[lang^="zh"] body,
html[lang^="ko"] body {
  line-break: strict;
  overflow-wrap: normal;
  word-break: break-all;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6,
p {
  margin: 0 0 1.4rem !important;  
}
h1, .h1, .h1-rubik, .h1-montserrat,
h2, .h2 {
  line-height: var(--lh-lg) !important;
  font-weight: 800 !important;
  position: relative;
  margin-bottom: var(--spacing-56) !important;
}
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  line-height: var(--lh-md) !important;
}
h4, .h4,
h5, .h5,
h6, .h6 {
  font-weight: 500;
  letter-spacing: 0.48px;
}
.h1-rubik {
  font-family: var(--font-rubik);
  font-size: 60px;
  font-weight: 800 !important;
  text-transform: uppercase;
}
h2:after, .h2:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -24px;
  width: var(--spacing-120);
  height: var(--spacing-4);
  background-color: var(--red-500);
  border-radius: var(--spacing-8);
}
h1:after, .h1:after,
h3:after, .h3:after,
h4:after, .h4:after,
h5:after, .h5:after{
  display: none;
}
h2.text-center:after, 
h2.text-lg-center:after,
h2.text-md-center:after,
h2.text-sm-center:after,
.h2.text-center:after,
.h2.text-lg-center:after,
.h2.text-md-center:after,
.h2.text-sm-center:after,
h2[style="text-align: center;"]:after {
  content: '';
  position: absolute;
  bottom: -24px;
  width: var(--spacing-120);
  height: var(--spacing-4);
  background-color: var(--red-500);
  border-radius: var(--spacing-8);
}
h2.text-start:after, 
.h2.text-start:after{
  left: 0px;
  transform: none;
}
h2.text-center:after,
.h2.text-center:after{
  left: 50%;
  transform: translateX(-50%);
}
h2.text-end:after,
.h2.text-end:after{
  left: 100%;
  transform: translateX(-100%);
}
.text-transform__none{
  text-transform: none;
}
@media (min-width: 576px){
  h2.text-sm-start:after, 
  .h2.text-sm-start:after{
    left: 0px;
    transform: none;
  }
  h2.text-sm-center:after,
  .h2.text-sm-center:after{
    left: 50%;
    transform: translateX(-50%);
  }
  h2.text-sm-end:after,
  .h2.text-sm-end:after{
    left: 100%;
    transform: translateX(-100%);
  }
}
@media (min-width: 768px){
  h2.text-md-start:after, 
  .h2.text-md-start:after{
    left: 0px;
    transform: none;
  }
  h2.text-md-center:after,
  .h2.text-md-center:after{
    left: 50%;
    transform: translateX(-50%);
  }
  h2.text-md-end:after,
  .h2.text-md-end:after{
    left: 100%;
    transform: translateX(-100%);
  }
}
@media (min-width: 992px){
  h2.text-lg-start:after, 
  .h2.text-lg-start:after{
    left: 0px;
    transform: none;
  }
  h2.text-lg-center:after,
  .h2.text-lg-center:after{
    left: 50%;
    transform: translateX(-50%);
  }
  h2.text-lg-end:after,
  .h2.text-lg-end:after{
    left: 100%;
    transform: translateX(-100%);
  }
}


/* Subtitle */
.subtitle,
.subtitle-sbold {
  font-family: var(--font-rubik);
  font-size: 24px;
  line-height: var(--lh-lg) !important;
}

/* Body Fonts */
.body-xl-light, .body-xl-sbold,
.body-lg-light, .body-lg-sbold,
.body-lg-italic,
.body-md-light, .body-md-sbold,
.body-sm-light, .body-sm-sbold,
.body-xs-light, .body-xs-sbold {
  font-family: var(--font-rubik);
  line-height: var(--lh-md) !important;
}
.subtitle,
.body-xl-light, 
.body-lg-light, 
.body-md-light, 
.body-sm-light, 
.body-xs-light,
span[style="font-weight: normal;"],
p[style="font-weight: normal;"]{
  font-weight: 300 !important;
}
.subtitle-sbold,
.body-xl-sbold, 
.body-lg-sbold, 
.body-md-sbold, 
.body-sm-sbold, 
.body-xs-sbold{
  font-weight: 600 !important;
}
strong,
span [style="font-weight: bold;"]{
  font-weight: 800 !important;
}
.body-xl-light, .body-xl-sbold {
  font-size: 20px;
}
.body-lg-light, .body-lg-sbold {
  font-size: 18px;
}
.body-lg-italic {
  font-style: italic
}
.body-md-light, .body-md-sbold {
  font-size: 16px;
}
.body-sm-light, .body-sm-sbold {
  font-size: 14px;
}
.body-xs-light, .body-xs-sbold {
  font-size: 12px;
}
.font-menu {
  font-family: var(--font-montserrat) !important;
  font-optical-sizing: auto;
  font-size: 14px;
  font-weight: 600 !important;
  line-height: var(--lh-sm);
  letter-spacing: .28px;
  text-transform: uppercase;
}
@media(min-width: 769px) and (max-width: 1140px) {
  .font-menu {
    font-size: var(--spacing-12);
  }
}
@media(max-width: 768px) {
  .h1-rubik {
    font-size: 42px;
  }
  h1, .h1, .h1-rubik, .h1-montserrat {
    font-size: 40px;
  }
  h2, .h2 {
    font-size: 34px;
  }
  h3, .h3 {
    font-size: 30px;
  }
  h4, .h4 {
    font-size: 22px;
  }
}

/* Lists */
ul,
ol {
  margin: 0 0 1.4rem;
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
}

ul.no-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
ul li,
ol li {
  margin-bottom: var(--spacing-8);
}
ul li::marker,
ol li::marker {
  color: var(--red-500) !important;
}
ul li ul,
ul li ol,
ol li ul,
ol li ol{
  margin-top: var(--spacing-8);
}

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  border-left: 2px solid;
  margin: 0 0 1.4rem;
  padding-left: 0.7rem;
}

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid #CCC;
}

/* Image alt text */

img {
  font-size: 0.583rem;
  word-break: normal;
}

/* Headers */
.right_content > :not(:first-child):is(h1, h2, h3, h4, h5, h6),
.hs_cos_wrapper_type_rich_text :not(:first-child):is(h1, h2, h3, h4, h5, h6) {
  padding-top: var(--spacing-24);
}
button,
.button,
.hs-button {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  transition: var(--transition);
  white-space: normal;
  width: fit-content;
  height: fit-content;
}

button:disabled,
.button:disabled,
.hs-button:disabled {
  background-color: #D0D0D0;
  border-color: #D0D0D0;
  color: #E6E6E6;
}

/* No button */

.no-button,
.no-button:hover,
.no-button:focus,
.no-button:active {
  background: none;
  border: none;
  border-radius: 0;
  color: initial;
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin-bottom: 0;
  padding: 0;
  text-align: left;
  text-decoration: none;
  transition: none;
}

/* Custom Buttons */
.button.arrow-text-button,
.button.arrow-button,
.arrow-link {
  display: inline-block;
  transition: var(--transition);
  vertical-align: middle;
  text-wrap: nowrap;
}
.button.arrow-text-button::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='15' viewBox='0 0 33 15' fill='none'%3E%3Cpath d='M32.7071 8.2071C33.0976 7.81658 33.0976 7.18341 32.7071 6.79289L26.3431 0.42893C25.9526 0.0384058 25.3195 0.0384059 24.9289 0.42893C24.5384 0.819455 24.5384 1.45262 24.9289 1.84314L30.5858 7.5L24.9289 13.1569C24.5384 13.5474 24.5384 14.1805 24.9289 14.5711C25.3195 14.9616 25.9526 14.9616 26.3431 14.5711L32.7071 8.2071ZM1.01096e-07 8.5L32 8.5L32 6.5L-1.01096e-07 6.5L1.01096e-07 8.5Z' fill='white'/%3E%3C/svg%3E");
  margin-left: var(--spacing-32);
  display: inline-block;
  transition: var(--transition);
}
.button.arrow-text-button--white::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='15' viewBox='0 0 33 15' fill='none'%3E%3Cpath d='M32.7071 8.2071C33.0976 7.81658 33.0976 7.18341 32.7071 6.79289L26.3431 0.42893C25.9526 0.0384058 25.3195 0.0384059 24.9289 0.42893C24.5384 0.819455 24.5384 1.45262 24.9289 1.84314L30.5858 7.5L24.9289 13.1569C24.5384 13.5474 24.5384 14.1805 24.9289 14.5711C25.3195 14.9616 25.9526 14.9616 26.3431 14.5711L32.7071 8.2071ZM1.01096e-07 8.5L32 8.5L32 6.5L-1.01096e-07 6.5L1.01096e-07 8.5Z' fill='%23E22D38'/%3E%3C/svg%3E");
}
.button.arrow-text-button--white:hover::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='15' viewBox='0 0 33 15' fill='none'%3E%3Cpath d='M32.7071 8.2071C33.0976 7.81658 33.0976 7.18341 32.7071 6.79289L26.3431 0.42893C25.9526 0.0384058 25.3195 0.0384059 24.9289 0.42893C24.5384 0.819455 24.5384 1.45262 24.9289 1.84314L30.5858 7.5L24.9289 13.1569C24.5384 13.5474 24.5384 14.1805 24.9289 14.5711C25.3195 14.9616 25.9526 14.9616 26.3431 14.5711L32.7071 8.2071ZM1.01096e-07 8.5L32 8.5L32 6.5L-1.01096e-07 6.5L1.01096e-07 8.5Z' fill='white'/%3E%3C/svg%3E");
}
.swiper-button-prev:after {
  content:""
}
.swiper-button-prev:before {
  margin: 0 var(--spacing-32) var(--spacing-8) 0;
  transform: rotate(180deg);
}
.button.arrow-button {
  width: var(--spacing-56);
  height: var(--spacing-56);
  padding: var(--spacing-16) !important;
}
.button.arrow-button::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='16' viewBox='0 0 25 16' fill='none'%3E%3Cpath d='M24.7071 8.7071C25.0976 8.31658 25.0976 7.68341 24.7071 7.29289L18.3431 0.92893C17.9526 0.538406 17.3195 0.538406 16.9289 0.92893C16.5384 1.31945 16.5384 1.95262 16.9289 2.34314L22.5858 8L16.9289 13.6569C16.5384 14.0474 16.5384 14.6805 16.9289 15.0711C17.3195 15.4616 17.9526 15.4616 18.3431 15.0711L24.7071 8.7071ZM1.09962e-07 9L24 9L24 7L-1.09962e-07 7L1.09962e-07 9Z' fill='white'/%3E%3C/svg%3E");
  display: inline-block;
  transition: var(--transition);
  /*margin-top: 2px;*/
}
a,
.text-link,
.arrow-link {
  text-decoration: none !important;
  position: relative;
}
.arrow-link {
  text-transform: uppercase;
}
.arrow-link::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='8' viewBox='0 0 25 8' fill='none'%3E%3Cpath d='M24.3536 4.35355C24.5488 4.15829 24.5488 3.84171 24.3536 3.64644L21.1716 0.464464C20.9763 0.269202 20.6597 0.269202 20.4645 0.464464C20.2692 0.659727 20.2692 0.976309 20.4645 1.17157L23.2929 4L20.4645 6.82843C20.2692 7.02369 20.2692 7.34027 20.4645 7.53553C20.6597 7.73079 20.9763 7.73079 21.1716 7.53553L24.3536 4.35355ZM4.37114e-08 4.5L24 4.5L24 3.5L-4.37114e-08 3.5L4.37114e-08 4.5Z' fill='%23E22D38'/%3E%3C/svg%3E");
  margin-left: var(--spacing-16);
  display: inline-block;
  transition: var(--transition);
}
a:not(.hs-button, .button):before,
.text-link:before,
.arrow-link:before,
button.button__nostyle:before{
  content: "";
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: currentColor;
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
}

a:not(.hs-button, .button):hover:before,
.text-link:hover:before,
.arrow-link:hover:before,
button.button__nostyle:hover:before{
  transform: scaleX(1);
  transform-origin: bottom left;
}
a:not(.hs-button, .button):active:before,
.text-link:active:before,
.arrow-link:active:before,
button.button__nostyle:active:before{
  transform: scaleX(1);
}
a:not(.hs-button, .button):active, a:not(.hs-button, .button):active:before,
.text-link:active, .text-link:active:before,
.arrow-link:active, .arrow-link:active:before {
  color: var(--red-600);
}

button:active, button:focus,
.button:active, .button:focus,
.hs-button:active,.hs-button:focus,
.text-button:active, .button.text-button:focus, 
.arrow-text-button:active, .button.arrow-text-button:focus,
.arrow-button:active, .button.arrow-button:focus,
.button-arrow:active, .button-arrow:focus,
.hs-button:active, .hs-button:focus,
.hs-blog-post-listing__post-button:active, .hs-blog-post-listing__post-button:focus {
  background: var(--red-600);
  border-color: var(--red-600);
  box-shadow: var(--boxShadow);
  transform: translateY(-4px);
}

/* NEXT & PREV button */
.button.button-arrow {
  font-size: var(--spacing-16);
  padding: var(--btn-lg-padding);
  white-space: nowrap !important;
  background: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  gap: 24px;
}
.button.button-arrow svg{
  transition: var(--transition);
}
.light-type .button.button-arrow svg path,
.white-type .button.button-arrow svg path {
  fill: var(--red-500);
}
.dark-type .button.button-arrow svg path {
  fill: var(--white);
}
.light-type .button.button-arrow,
.white-type .button.button-arrow{
  border-color: var(--red-500);
  color: var(--red-500);
}
.dark-type .button.button-arrow {
  border-color: var(--white);
  color: var(--white);
}
.button.button-arrow:hover {
  border-color: var(--red-500) !important;
  background: var(--red-500) !important;
  color: var(--white) !important;
}
/*
.button.button-arrow:active,
.button.button-arrow:focus {
  border-color: var(--red-600) !important;
  background: var(--red-600) !important;
  color: var(--white) !important;
} 
.light-type .button.button-arrow:hover svg path,
.light-type .button.button-arrow:active svg path,
.light-type .button.button-arrow:focus svg path,
.white-type .button.button-arrow:hover svg path,
.white-type .button.button-arrow:active svg path,
.white-type .button.button-arrow:focus svg path{
  fill: var(--white) !important;
}
*/
.light-type .button.button-arrow:hover svg path,
.white-type .button.button-arrow:hover svg path{
  fill: var(--white) !important;
}
button.button__nostyle{
  font-size: 1em;
  background: none !important;
  padding: 0px !important;
  border: 0px !important;
  position: relative !important;
  text-transform: none !important;
  transform: none !important;
}
button.button__nostyle:hover{
  transform: none !important;
}

/* End NEXT & PREV button */
@media(min-width: 769px) {
  button:hover,
  .button:hover,
  .hs-button:hover,
  .button.text-button:hover, 
  .button.arrow-text-button:hover,
  .button.arrow-button:hover,
  .cursor-pointer:hover .button.arrow-button,
  .button.hs-button:hover,
  .hs-blog-post-listing__post-button:hover,
  .button-arrow:hover {
    box-shadow: var(--boxShadow);
    transform: translateY(-4px);
  }
  .button.arrow-text-button:hover:after,
  .button.arrow-button:hover:after,
  .cursor-pointer:hover .button.arrow-button:after,
  .arrow-link:hover:after,
  .button-arrow-next:hover svg {
    transform: translateX(var(--spacing-8));
  }
  .button-arrow-prev:hover svg {
    transform: translateX(-8px);
  }
}
@media(max-width: 768px){
  button,
  .button,
  .button.text-button, 
  .button.arrow-text-button,
  .hs-button,
  .hs-blog-post-listing__post-button {
    font-size: var(--spacing-16);
    padding: var(--btn-sm-padding);
  }
  .button.arrow-text-button::after {
    margin-left: var(--spacing-24);
  }
  .button.button-arrow {
    padding: var(--spacing-8) var(--spacing-16);
  }
  
  button:hover,
  .button:hover,
  .hs-button:hover,
  .button.text-button:hover, 
  .button.arrow-text-button:hover,
  .button.arrow-button:hover,
  .button.hs-button:hover,
  .hs-blog-post-listing__post-button:hover,
  .button.button-arrow-prev:hover,
  .button.button-arrow-next:hover,
  a:not(.hs-button, .button):hover:before,
  .text-link:hover:before,
  .arrow-link:hover:before,
  .button.arrow-text-button:hover:after,
  .button.arrow-button:hover:after,
  .arrow-link:hover:after,
  .swiper-button-next:hover:after{
    box-shadow: none;
    transform: none;
  }
  .arrow-link:before, 
  .text-link:before, 
  a:not(.hs-button,.button):before {
    width: 0;
  }
}
/* Fields */

.hs-form-field {
  margin-bottom: 1.4rem;
}

/* Labels */

form label {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.35rem;
  font-weight: 500;
}

/* Form Title */
.form-title {
  margin-bottom: 0;
}

/* Help text */

form legend {
  font-size: var(--spacing-12) !important;
  color: var(--dark-700) !important;
}

/* Inputs */

form input[type=text],
form input[type=search],
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-size: 0.875rem;
  padding: 0.7rem;
  width: 100% !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
}

form textarea {
  resize: vertical;
}

form fieldset {
  max-width: 100% !important;
}

form input:focus-visible,
form input:focus {
  border: none;
  background: var(--red-200-25) !important;
}

fieldset.form-columns-1 .hs-input:not(.input>div>select, [type=checkbox], [type=radio], [type=tel]) {
  width: 100% !important;
}
fieldset.form-columns-2 .hs-form-field:first-of-type .input {
  margin-right: var(--spacing-16)  !important;
}
/* Inputs - checkbox/radio */

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

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

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

form input[type=checkbox],
form input[type=radio] {
  cursor: pointer;
  margin-right: 0.35rem;
  accent-color: var(--red-500) !important;
}
form input[type=checkbox], 
form input[type=radio] {
  margin-top: var(--spacing-4); !important;
}

/* 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;
}

/* Inputs - file picker */

form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
}
form input[type=file]::file-selector-button {
  text-transform: uppercase !important;
  border: 2px solid var(--red-500) !important;
  color: var(--red-500) !important;
  font-weight: 500 !important;
  background: transparent !important;
  border-radius: 50px !important;
  font-size: var(--spacing-12) !important;
  padding: var(--btn-sm-padding) !important;
  cursor: pointer !important;
}
form input[type=file]::file-selector-button:hover {
  color: var(--white) !important;
  background: var(--red-500) !important;
}


/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 0.875rem;
  margin: 0 0 1.4rem;
}

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

/* GDPR */

.hs-form-booleancheckbox-display {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: start !important;
  -moz-box-align: start !important;
  -ms-flex-align: start !important;
  align-items: flex-start !important;
  gap: var(--spacing-4) !important;
}
.legal-consent-container .hs-form-booleancheckbox-display>span, 
.legal-consent-container .hs-form-booleancheckbox-display>span p {
  margin-left: 0 !important;
}
.legal-consent-container a {
  display: inline-block;
}

label.hs-form-booleancheckbox-display {
    font-weight: 300 !important;
}

/* Validation */

.hs-form-required {
  color: #EF6B51;
}

.hs-input.invalid.error {
  border-color: var(--dark-700) !important;
}

.hs-error-msg {
  color: var(--red-600) !important;
  margin-top: 0.35rem !important;
  font-size: var(--spacing-12) !important;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}


  /* Search button input field and suggestions */
  .body-container-wrapper .hs-search-field__button {
    padding: 15px;
  }

  .body-container-wrapper .hs-search-field__bar--button-inline .hs-search-field__button {
    margin-left: 6px;
    margin-bottom: 0;
  }

  .body-container-wrapper .hs-search-field__button svg {
    height: 15px;
    fill: transparent; 
  }

  .body-container-wrapper .hs-search-field__button:hover svg {
    fill: var(--white);
  }

  .body-container-wrapper .hs-search-field__bar > form > .hs-search-field__input {
    padding: 10px;
  }

  .body-container-wrapper .hs-search-field__suggestions li a {
    color: #494A52;
    padding: 0.35rem 0.7rem;
    text-decoration: none;
    transition: background-color 0.3s;
  }

/* Table */

table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  vertical-align: top;
}

/* Table header */

thead th {
  vertical-align: bottom;
}

/* Components
Specific pieces of UI that are stylized. Typically used for global partial styling
*/

/* Header DND sections */

.header .dnd-section {
  padding: 0;
}

/* Header container */

.header__container {
  display: flex;
  justify-content: space-between;
}

.header__row-1 {
  padding-top: 1rem;
}

.header__row-1,
.header__row-2 {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

@media (max-width: 1150px) and (min-width: 767px) {
  .header__column {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .header__container {
    flex-direction: column;
    padding: 1rem 0 0;
  }

  .header__column {
    position: relative;
  }

  .header__row-1 {
    padding-top: 0;
  }

  .header__row-2 {
    justify-content: center;
    padding: 1.05rem;
  }
}

/* Navigation skipper */

.header__skip {
  height: 1px;
  left: -1000px;
  overflow: hidden;
  position: absolute;
  text-align: left;
  top: -1000px;
  width: 1px;
}

.header__skip:hover,
.header__skip:focus,
.header__skip:active {
  height: auto;
  left: 0;
  overflow: visible;
  top: 0;
  width: auto;
}

/* Logo */

.header__logo {
  align-items: center;
  display: flex;
  height: auto;
  margin-right: auto;
  max-width: 200px;
  overflow: hidden;
}

@media (max-width: 767px) {
  .header__logo {
    margin: 0 auto;
    width: 100%;
  }
}

.header__logo img {
  max-width: 100%;
}

.header__logo .logo-company-name {
  font-size: 1.167rem;
  margin-top: 0.7rem;
}

.header__logo--main {
  padding-top: 1rem;
}

/* Search bar */

.header__search {
  padding: 0 1rem;
  width: auto;
}



  .hs-search-field__form {
    position: relative;
  }

  .header__search .hs-search-field__label {
    flex-basis: auto;
  }



.header__search .hs-search-field__input {
  
  height: 45px;
  padding: 0 0.7rem;
}



  .header__search .hs-search-field__button {
    padding: 0;
    fill: #000;
    background-color: transparent;
    border: none;
    padding: 10px;
    position: absolute;
    top: 0;
    right: 0;
  }

  .header__search .hs-search-field__button svg {
    height: 25px;
  }


.header__search .hs-search-field--open .hs-search-field__input {
  border-bottom: none;
  border-radius: 6px 6px 0 0;
  max-width: 100%;
}

.header__search .hs-search-field--open .hs-search-field__suggestions {
  background-color: #FFF;
  border: 2px solid #D1D6DC;
  border-radius: 0 0 6px 6px;
  border-top-width: 1px;
  position: absolute;
  width: 100%;
  z-index: 10;
}

.header__search .hs-search-field__suggestions li {
  border-top: 1px solid #D1D6DC;
  font-size: 0.875rem;
}

.header__search .hs-search-field__suggestions li a {
  color: #494A52;
  padding: 0.35rem 0.7rem;
  text-decoration: none;
  transition: background-color 0.3s;
}

.header__search .hs-search-field__suggestions #results-for {
  display: none;
}

@media (min-width: 767px) {
  .header__search form {
    align-items: center;
    display: flex;
    flex-direction: row;
  }

  .header__search label {
    margin: 0 1rem 0 0;
  }

  .header__search .hs-search-field__input {
    width: auto;
  }
}

@media (max-width: 767px) {
  .header__search {
    border-top: 2px solid #CED4DB;
    order: 1;
    padding: 1.05rem;
  }
}

/* Language switcher */

.header__language-switcher {
  cursor: pointer;
  padding-right: 1.4rem;
}

.header__language-switcher .lang_switcher_class {
  position: static;
}

.header__language-switcher .lang_list_class {
  border: 2px solid;
  border-radius: 3px;
  box-shadow: 0 2px 9px 0 rgba(0, 0, 0, 0.2);
  display: block;
  left: calc(100% - 24px);
  opacity: 0;
  min-width: 100px;
  padding-top: 0;
  text-align: left;
  top: 100%;
  transition: opacity 0.3s;
  visibility: hidden;
}

.header__language-switcher:hover .lang_list_class,
.header__language-switcher:focus .lang_list_class {
  opacity: 1;
  transition: opacity 0.3s;
  visibility: visible;
}

.header__language-switcher .lang_list_class:before {
  left: 70%;
  top: -25px;
}

.header__language-switcher .lang_list_class:after {
  left: 70%;
  top: -22px;
}

.header__language-switcher .lang_list_class.first-active::after {
  top: -22px;
  transition: 0.3s;
}

.header__language-switcher .lang_list_class li {
  border: none;
  font-size: 18px;
  padding: 0.35rem 0.7rem;
}

.header__language-switcher .lang_list_class li:first-child {
  border-radius: 6px 6px 0 0;
  border-top: none;
}

.header__language-switcher .lang_list_class li:last-child {
  border-bottom: none;
  border-radius: 0 0 6px 6px;
}

.header__language-switcher .lang_list_class li:hover {
  transition: background-color 0.3s;
}

.header__language-switcher--label {
  display: flex;
  position: relative;
}

.header__language-switcher--label-current {
  align-items: center;
  display: flex;
  font-size: 0.75rem;
  margin-bottom: 0.175rem;
  margin-left: 0.7rem;
}

.header__language-switcher--label-current:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #494A52;
  content: "";
  display: block;
  height: 0px;
  margin-left: 0.7rem;
  margin-top: 0.175rem;
  width: 0px;
}

@media (max-width: 767px) {
  .header__language-switcher {
    border-top: 2px solid #CED4DB;
    padding-left: 1.05rem;
    padding-right: 0;
  }

  .header__language-switcher .lang_list_class {
    border: none;
    box-shadow: unset;
    display: block;
    left: 30px;
    opacity: 1;
    padding: 0 1.05rem;
    top: 0;
    visibility: visible;
  }

  .header__language-switcher .lang_list_class li {
    background-color: inherit;
    font-size: 0.917rem;
  }

  .header__language-switcher--label-current {
    display: none;
  }

  .header__language-switcher .globe_class {
    background-image: none;
  }

  .header__language-switcher .lang_list_class li:hover{
    background-color: inherit;
  }

  .header__language-switcher .lang_list_class:before,
  .header__language-switcher .lang_list_class:after {
    content: none;
  }}

/* Navigation */

#nav-toggle {
  display: none;
}

/* Mobile toggles */

@media (max-width: 767px) {
  .header__navigation,
  .header__search,
  .header__language-switcher {
    display: none;
    width: 100%;
  }

  .header__navigation.open,
  .header__search.open,
  .header__language-switcher.open {
    background-color: #F8FAFC;
    display: block;
    left: 0;
    min-height: calc(100vh - 115px);
    position: absolute;
    right: 0;
    top: 75px;
    z-index: 2;
  }

  .header__navigation--toggle,
  .header__search--toggle,
  .header__language-switcher--toggle,
  .header__close--toggle {
    cursor: pointer;
    margin: 0 5vw;
    position: relative;
  }

  .header__navigation--toggle.hide,
  .header__search--toggle.hide,
  .header__language-switcher--toggle.hide {
    display: none;
  }

  .header__navigation--toggle.open,
  .header__search--toggle.open,
  .header__language-switcher--toggle.open {
    display: block;
    margin-left: 0;
    margin-right: auto;
  }

  .header__navigation--toggle:after,
  .header__search--toggle:after,
  .header__language-switcher--toggle:after {
    display: none;
    font-size: 1.083rem;
    font-weight: 600;
    position: absolute;
    left: 40px;
    text-transform: uppercase;
    top: -10px;
  }

  .header__navigation--toggle.open:after,
  .header__search--toggle.open:after,
  .header__language-switcher--toggle.open:after {
    display: block;
    word-break: normal;
  }

  .header__navigation--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5oYW1idXJnZXI8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGcgaWQ9ImhhbWJ1cmdlciIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+ICAgICAgICA8ZyBpZD0iR3JvdXAiIHN0cm9rZT0iIzQ5NEE1MiIgc3Ryb2tlLXdpZHRoPSIzIj4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIxLjUiIHk9IjEuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNCIgeD0iMS41IiB5PSI5LjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZS1Db3B5LTUiIHg9IjEuNSIgeT0iMTcuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgIDwvZz4gICAgPC9nPjwvc3ZnPg==);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__navigation--toggle:after {
    content: "Menu";
  }

  .header__language-switcher--toggle {
    background-image: url(//static.hsappstatic.net/cos-LanguageSwitcher/static-1.1/img/globe.png);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__language-switcher--toggle:after {
    content: "Language";
  }

  .header__search--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5TZWFyY2g8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGRlZnM+ICAgICAgICA8cGF0aCBkPSJNOS4xMzg2MTUzNCwxNS44OTI1Njg1IEM1LjQxMzk1NzQyLDE1Ljg5MjU2ODUgMi4zODM4ODUyNywxMi44NjM0NDc1IDIuMzgzODg1MjcsOS4xMzkwMDM3NiBDMi4zODM4ODUyNyw1LjQxNDU2MDA1IDUuNDEzOTU3NDIsMi4zODM4ODUyNyA5LjEzODYxNTM0LDIuMzgzODg1MjcgQzEyLjg2MzI3MzMsMi4zODM4ODUyNyAxNS44OTI1Njg1LDUuNDE0NTYwMDUgMTUuODkyNTY4NSw5LjEzOTAwMzc2IEMxNS44OTI1Njg1LDEyLjg2MzQ0NzUgMTIuODYzMjczMywxNS44OTI1Njg1IDkuMTM4NjE1MzQsMTUuODkyNTY4NSBNOS4xMzg3NTI0NSwyLjQzMzYwODg3ZS0xMyBDMTQuMTc3OTk1NSwyLjQzMzYwODg3ZS0xMyAxOC4yNzY0NTM3LDQuMTAwMzI0NzEgMTguMjc2NDUzNyw5LjEzOTI3Nzk2IEMxOC4yNzY0NTM3LDExLjIyOTgyMTEgMTcuNTcxMDE2OSwxMy4xNTg0NDM0IDE2LjM4NTYzMTMsMTQuNjk5NjY5NiBMMjMuNjUwODg4MSwyMS45NjUyMjY2IEMyNC4xMTYzNzA2LDIyLjQzMDcwOTIgMjQuMTE2MzcwNiwyMy4xODU0MDU1IDIzLjY1MDg4ODEsMjMuNjUwODg4MSBDMjMuMTg1NDA1NSwyNC4xMTYzNzA2IDIyLjQzMDcwOTIsMjQuMTE2MzcwNiAyMS45NjUyMjY2LDIzLjY1MDg4ODEgTDE0LjY5OTgxMzMsMTYuMzg1NDcxMyBDMTMuMTU4NDQwNSwxNy41NzA5NTA5IDExLjIyOTU3MzgsMTguMjc2NDUzNyA5LjEzODc1MjQ1LDE4LjI3NjQ1MzcgQzQuMDk5NTA5MzgsMTguMjc2NDUzNyAtMy43MzAzNDkzNmUtMTQsMTQuMTc4MjMxMiAtMy43MzAzNDkzNmUtMTQsOS4xMzkyNzc5NiBDLTMuNzMwMzQ5MzZlLTE0LDQuMTAwMzI0NzEgNC4wOTk1MDkzOCwyLjQzMzYwODg3ZS0xMyA5LjEzODc1MjQ1LDIuNDMzNjA4ODdlLTEzIFoiIGlkPSJwYXRoLTEiPjwvcGF0aD4gICAgPC9kZWZzPiAgICA8ZyBpZD0iU2VhcmNoIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxtYXNrIGlkPSJtYXNrLTIiIGZpbGw9IndoaXRlIj4gICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPiAgICAgICAgPC9tYXNrPiAgICAgICAgPHVzZSBpZD0iSWNvbnMvQWN0aW9ucy9TZWFyY2giIGZpbGw9IiM0OTRBNTIiIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPiAgICA8L2c+PC9zdmc+);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__search--toggle:after {
    content: "Search";
  }

  .header__close--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjE5cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5jbG9zZTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZyBpZD0iY2xvc2UiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLjAwMDAwMCwgLTEuMDAwMDAwKSIgc3Ryb2tlPSIjNDk0QTUyIiBzdHJva2Utd2lkdGg9IjMiPiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLjAwMDAwMCwgMTAuNTAwMDAwKSByb3RhdGUoLTQ1LjAwMDAwMCkgdHJhbnNsYXRlKC0xMC4wMDAwMDAsIC0xMC41MDAwMDApICIgeD0iLTAuNSIgeT0iMTAuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAuMDAwMDAwLCAxMC41MDAwMDApIHJvdGF0ZSg0NS4wMDAwMDApIHRyYW5zbGF0ZSgtMTAuMDAwMDAwLCAtMTAuNTAwMDAwKSAiIHg9Ii0wLjUiIHk9IjEwLjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICA8L2c+ICAgIDwvZz48L3N2Zz4=);
    background-repeat: no-repeat;
    background-size: 110%;
    display: none;
    height: 25px;
    margin-right: 0;
    width: 25px;
  }

  .header__close--toggle.show {
    display: block;
  }
}