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

video {
  height: auto;
  max-width: 100%;
  vertical-align: top;
}
img,
svg {
  height: auto;
  max-width: 100%;
  vertical-align: top;
}
/*! 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;
}

/* 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;
}
:root {
  --fontHeebo: "Heebo", sans-serif;
  --mainBlack: #312D2D;
  --mainGray: #55585A;
  --darkGray: #888A8C;
  --lightBlue: #517992;
  --rangeBackground: #312D2D;
}

/* Objects
Non-cosmetic design patterns including grid and layout classes)
*/



/* CSS variables */

:root {
  --column-gap: 2.13%;
  --column-width-multiplier: 8.333;
}

/* Mobile layout */

.row-fluid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}


  .row-fluid .span1,
  .row-fluid .span2,
  .row-fluid .span3,
  .row-fluid .span4,
  .row-fluid .span5,
  .row-fluid .span6,
  .row-fluid .span7,
  .row-fluid .span8,
  .row-fluid .span9,
  .row-fluid .span10,
  .row-fluid .span11,
  .row-fluid .span12{
  min-height: 1px;
  width: 100%;
}

/* Desktop layout */

@media (min-width: 768px) {
  .row-fluid {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  
    .row-fluid .span1 {
      width: calc(var(--column-width-multiplier) * 1% * 1 - var(--column-gap) * (11 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span2 {
      width: calc(var(--column-width-multiplier) * 1% * 2 - var(--column-gap) * (10 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span3 {
      width: calc(var(--column-width-multiplier) * 1% * 3 - var(--column-gap) * (9 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span4 {
      width: calc(var(--column-width-multiplier) * 1% * 4 - var(--column-gap) * (8 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span5 {
      width: calc(var(--column-width-multiplier) * 1% * 5 - var(--column-gap) * (7 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span6 {
      width: calc(var(--column-width-multiplier) * 1% * 6 - var(--column-gap) * (6 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span7 {
      width: calc(var(--column-width-multiplier) * 1% * 7 - var(--column-gap) * (5 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span8 {
      width: calc(var(--column-width-multiplier) * 1% * 8 - var(--column-gap) * (4 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span9 {
      width: calc(var(--column-width-multiplier) * 1% * 9 - var(--column-gap) * (3 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span10 {
      width: calc(var(--column-width-multiplier) * 1% * 10 - var(--column-gap) * (2 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span11 {
      width: calc(var(--column-width-multiplier) * 1% * 11 - var(--column-gap) * (1 * var(--column-width-multiplier) / 100));
    }
  
}
.content-wrapper,
.dnd-section > .row-fluid {
  margin: 0 auto;
  max-width: 1488px; /* 1440 + 24 + 24 */
  padding-left: 16px;
  padding-right: 16px;
}

.dnd-section,
.content-wrapper--vertical-spacing {
  padding-bottom: 31px;
  padding-top: 31px;
}
.dnd-section:first-child {
  padding-top: 0;
}

.pb {
  padding-bottom: 16px;
}
.pt {
  padding-top: 16px;
}
.mb {
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  .content-wrapper,
  .dnd-section > .row-fluid {
    padding-left: 24px;
    padding-right: 24px;
  }
  .dnd-section,
  .content-wrapper--vertical-spacing {
    padding-bottom: 34px;
    padding-top: 34px;
  }
  .pb {
    padding-bottom: 24px;
  }
  .pt {
    padding-top: 24px;
  }
}
@media (min-width: 1024px) {
  .mb {
    margin-bottom: 32px;
  }
}
@media (min-width: 1280px) {
  .pl-big {
    padding-left: 154px;
  }
  .pr-big {
    padding-right: 154px;
  }
}
@media (min-width: 1440px) {
  .dnd-section,
  .content-wrapper--vertical-spacing {
    padding-bottom: 40px;
    padding-top: 40px;
  }
  .pb {
    padding-bottom: 32px;
  }
  .pt {
    padding-top: 32px;
  }
}
@media (min-width: 1920px) {
  .pl {
    padding-left: 24px;
  }
  .pr {
    padding-right: 24px;
  }
}

/* Elements
Base HMTL elements are styled in this section (<body>, <h1>, <a>, <p>, <button> etc.)
*/

html {
  overflow-x: hidden;
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
}
body {
  background-color: #fff;
  color: var(--mainBlack);
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  overflow-x: hidden;
  overflow-wrap: break-word;
  position: relative;
  transition: background-color 300ms;
}
body.hide-scrollbar {
  padding-right: var(--scrollbarWidth);
}

@media (min-width: 768px) {
  body {
    font-size: 16px;
    line-height: 24px;
  }
}
@media (min-width: 1440px) {
  body {
    font-size: 18px;
    line-height: 26px;
  }
  body:has(.menu__mask--open) {
    background-color: #eee;
  }
}

.hide-scrollbar {
  overflow: hidden;
}

/* 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;
}

/* Paragraphs */

p {
  margin: 0 0 8px;
}

/* Anchors */

a {
  color: var(--mainBlack);
  cursor: pointer;
  transition: color 300ms;
}
a:hover,
a:focus-visible {
  color: var(--lightBlue);
}

/* Headings */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 1.4rem;
}

/* Lists */

ul,
ol {
  margin: 0 0 8px;
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
}

ul.no-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* 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;
}

.text-center {
  text-align: center;
}

.block-title {
  font-family: var(--fontHeebo);
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: 0.1px;
  margin-bottom: 20px;
  text-transform: uppercase;
}
.title {
  font-family: var(--fontHeebo);
  font-size: 36px;
  font-weight: 900;
  line-height: 44px;
  margin-bottom: 20px;
}
.subtitle {
  font-family: var(--fontHeebo);
  font-size: 36px;
  font-weight: 900;
  line-height: 44px;
  margin-bottom: 20px;
}
.subtitle--medium {
  font-family: var(--fontHeebo);
  font-size: 28px;
  font-weight: 400;
  line-height: 36px;
}
h3,
.subtitle--small {
  font-family: var(--fontHeebo);
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
}
.text:not(:last-child) {
  margin-bottom: 20px;
}
.text-big {
  font-size: 20px;
  line-height: 26px;
}

@media (min-width: 1440px) {
  .block-title {
    font-size: 20px;
    line-height: 26px;
    margin-bottom: 24px;
  }
  .block-title:has(+.title) {
    margin-bottom: 24px;
  }
  .block-title:has(+.subtitle) {
    margin-bottom: 24px;
  }
  .title {
    font-size: 48px;
    line-height: 56px;
    margin-bottom: 24px;
  }
  .subtitle {
    font-size: 40px;
    line-height: 48px;
    margin-bottom: 32px;
  }
  .subtitle--medium {
    font-size: 28px;
    line-height: 36px;
  }
  h3,
  .subtitle--small {
    font-size: 26px;
    line-height: 32px;
  }
  .text {
    font-size: 22px;
    line-height: 36px;
  }
  .text:not(:last-child) {
    margin-bottom: 32px;
  }
  .text-small {
    font-size: 16px;
    line-height: 24px;
  }
  .text-big {
    font-size: 22px;
    line-height: 34px;
  }
}
button,
.button,
.hs-button {
  border-radius: 100px;
  border: 1px solid transparent;
  cursor: pointer;
  display: inline-block;
  font-family: var(--fontHeebo);
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  outline: none;
  padding: 9px 12px;
  text-align: center;
  text-decoration: none;
  transition: all 300ms;
  user-select: none;
  white-space: normal;
  -webkit-appearance: none;
}
.button--black {
  background-color: var(--mainBlack);
  border-color: var(--mainBlack);
  color: #fff;
}
.button--black:hover,
.button--black:focus-visible {
  background-color: var(--lightBlue);
  border-color: var(--lightBlue);
  color: #fff;
}
.button--black:focus-visible {
  border-color: var(--darkGray);
  box-shadow: 0 0 0 1px var(--darkGray) inset;
}

.button--inverse {
  border-color: var(--mainBlack);
  color: var(--mainBlack);
}
.button--inverse:hover,
.button--inverse:focus-visible {
  border-color: var(--lightBlue);
  color: var(--lightBlue);
}
.button--inverse:focus-visible {
  border-color: var(--darkGray);
  box-shadow: 0 0 0 1px var(--darkGray) inset;
  color: var(--lightBlue);
}

button:disabled,
.button:disabled,
.hs-button:disabled {
  background-color: #D0D0D0;
  border-color: #D0D0D0;
  color: #E6E6E6;
}

@media (min-width: 1024px) {
  button,
  .button,
  .hs-button {
    font-size: 18px;
    line-height: 26px;
    padding: 13px 24px;
  }
}

/* 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;
}
.link {
  align-items: center;
  display: inline-flex;
  gap: 4px;
  font-family: var(--fontHeebo);
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  margin-top: 8px;
  padding: 6px 4px 10px;
  position: relative;
  text-decoration: none;
}
.link::after {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.0154 21.6532L12.5962 20.234L20.8307 11.9995L12.5962 3.76495L14.0154 2.3457L23.6692 11.9995L14.0154 21.6532Z' fill='%23312D2D'/%3E%3C/svg%3E%0A");
  background-size: 80%;
  background-position: center right;
  background-repeat: no-repeat;
  content: '';
  flex: 0 0 24px;
  height: 24px;
  transition: background-image 300ms;
  width: 24px;;
}
.link::before {
  background-color: var(--lightBlue);
  bottom: 6px;
  content: '';
  height: 2px;
  left: 4px;
  position: absolute;
  right: 4px;
  transform: scaleX(0);
  transform-origin: bottom right;
  transition: transform 300ms ease-out;
}
.link:hover::before,
.link:focus-visible::before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.link:hover::after,
.link:focus-visible::after {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.0154 21.6532L12.5962 20.234L20.8307 11.9995L12.5962 3.76495L14.0154 2.3457L23.6692 11.9995L14.0154 21.6532Z' fill='%23517992'/%3E%3C/svg%3E%0A");
}
.link:focus-visible {
  outline-color: var(--mainGray);
}

@media (min-width: 1024px) {
  .link {
    font-size: 18px;
    line-height: 26px;
    margin-top: 24px;
    padding-top: 12px;
    padding-bottom: 16px;
  }
  .link::before {
    bottom: 12px;
  }
  .link::after {
    background-size: contain;
  }
}
/* Fields */

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

/* Labels */

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

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

/* Help text */

form legend {
  font-size: 0.875rem;
}

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

form textarea {
  resize: vertical;
}

form fieldset {
  max-width: 100% !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;
}

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

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

.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  margin-left: 1rem !important;
}

/* Validation */

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

.hs-input.invalid.error {
  border-color: #EF6B51;
}

.hs-error-msg {
  color: #EF6B51;
  margin-top: 0.35rem;
}

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


/* 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
*/

/* 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;
}

/* header */
.header {
  background-color: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(50px);
  -webkit-backdrop-filter: blur(50px);
  left: 0;
  padding-bottom: 12px;
  padding-top: 12px;
  position: fixed;
  right: 0;
  top: 0;
  transition: background-color 300ms;
  z-index: 3;
}
.hide-scrollbar .header {
  right: var(--scrollbarWidth);
}
.header:has(~ .menu__mask--open),
.header:has(.header__menu.open) {
  background-color: #fff;
}
.header__mask {
  height: 64px;
}
.header .content-wrapper {
  max-width: 1838px;
}
@media (min-width: 1024px) {
  .header {
    height: 74px;
    padding-bottom: 10px;
    padding-top: 10px;
  }
  .header__mask {
    height: 74px;
  }
}
@media (min-width: 1440px) {
  .header {
    height: 94px;
    padding-bottom: 20px;
    padding-top: 20px;
  }
  .header__mask {
    height: 94px;
  }
}
.header__container {
  align-items: center;
  display: flex;
  gap: 4px;
}

/* Logo */

.header__logo {
  align-items: center;
  display: flex;
  margin-right: auto;
}
.header__logo-url {
  font-size: 0;
  line-height: 0;
}
.header__logo-url:focus-visible {
  outline-offset: 2px;
  outline-color: var(--mainGray);
}
.header__logo-img {
  height: 24px;
  fill: var(--mainBlack);
  transition: fill 300ms;
  width: auto;
}
.header__logo-img:hover {
  fill: var(--lightBlue);
}

@media (min-width: 1024px) {
  .header__logo-img {
    height: 36px;
  }
}


/* Navigation */
.header__menu {
  background-color: #fff;
  bottom: 0;
  height: calc(100vh - 64px);
  left: 0;
  position: fixed;
  right: 0;
  top: 64px;
  transform: translateX(100%);
  transition: transform 300ms;
}
.header__menu.open {
  transform: translateX(0);
}

@media (min-width: 1024px) {
  .header__menu {
    background-color: transparent;
    height: initial;
    position: static;
    transform: none;
  }
}

/* Mobile toggles */
.header__menu--toggle {
  height: 40px;
  flex: 0 0 40px;
  position: relative;
  width: 40px;
}
.header__menu--toggle-icon {
  border-color: #181B20;
  border-style: solid;
  border-width: 2px 0;
  cursor: pointer;
  height: 12px;
  left: 11px;
  position: absolute;
  top: 14px;
  transition: all 0.15s cubic-bezier(0.67, -0.03, 0.45, 1.89);
  width: 18px;
}
.header__menu--toggle.open ~ #hs_cos_wrapper_book-a-demo .header__button {
  display: block;
  left: 0;
  margin: 0 auto;
  max-width: 260px;
  position: fixed;
  right: 0;
  top: calc(var(--vh) * 100 - 76px);
}
@media (max-width: 1023px) {
  .header:has(.menu__item--has-submenu.menu__item--open) #hs_cos_wrapper_book-a-demo .header__button {
    display: none;
  }
}
@media (min-width: 1024px) {
  .header__menu--toggle {
    display: none;
  }
}
.header__menu--toggle-icon::after,
.header__menu--toggle-icon::before {
  background: #181B20;
  content: '';
  display: block;
  height: 2px;
  position: absolute;
  top: 3px;
  transition: all 0.35s cubic-bezier(0.67, -0.03, 0.45, 1.89);
  width: 18px;
}
.header__menu--toggle.open .header__menu--toggle-icon {
  border-width: 0;
  transform: rotate(90deg);
}
.header__menu--toggle.open .header__menu--toggle-icon::after {
  transform: rotate(45deg);
}
.header__menu--toggle.open .header__menu--toggle-icon::before {
  transform: rotate(-45deg);
}

/* Search bar */
.header__search--toggle {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M27.7381 29.1289L21.4381 22.8289C20.9381 23.2289 20.3631 23.5456 19.7131 23.7789C19.0631 24.0122 18.3714 24.1289 17.6381 24.1289C15.8214 24.1289 14.2839 23.4997 13.0256 22.2414C11.7672 20.9831 11.1381 19.4456 11.1381 17.6289C11.1381 15.8122 11.7672 14.2747 13.0256 13.0164C14.2839 11.7581 15.8214 11.1289 17.6381 11.1289C19.4547 11.1289 20.9922 11.7581 22.2506 13.0164C23.5089 14.2747 24.1381 15.8122 24.1381 17.6289C24.1381 18.3622 24.0214 19.0539 23.7881 19.7039C23.5547 20.3539 23.2381 20.9289 22.8381 21.4289L29.1381 27.7289L27.7381 29.1289ZM17.6381 22.1289C18.8881 22.1289 19.9506 21.6914 20.8256 20.8164C21.7006 19.9414 22.1381 18.8789 22.1381 17.6289C22.1381 16.3789 21.7006 15.3164 20.8256 14.4414C19.9506 13.5664 18.8881 13.1289 17.6381 13.1289C16.3881 13.1289 15.3256 13.5664 14.4506 14.4414C13.5756 15.3164 13.1381 16.3789 13.1381 17.6289C13.1381 18.8789 13.5756 19.9414 14.4506 20.8164C15.3256 21.6914 16.3881 22.1289 17.6381 22.1289Z' fill='%23312D2D'/%3E%3C/svg%3E%0A");
  background-size: cover;
  cursor: pointer;
  height: 40px;
  flex: 0 0 40px;
  transition: background-image 300ms;
  width: 40px;
}
.header__search--toggle:hover,
.header__search--toggle:focus-visible {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M27.7381 29.1289L21.4381 22.8289C20.9381 23.2289 20.3631 23.5456 19.7131 23.7789C19.0631 24.0122 18.3714 24.1289 17.6381 24.1289C15.8214 24.1289 14.2839 23.4997 13.0256 22.2414C11.7672 20.9831 11.1381 19.4456 11.1381 17.6289C11.1381 15.8122 11.7672 14.2747 13.0256 13.0164C14.2839 11.7581 15.8214 11.1289 17.6381 11.1289C19.4547 11.1289 20.9922 11.7581 22.2506 13.0164C23.5089 14.2747 24.1381 15.8122 24.1381 17.6289C24.1381 18.3622 24.0214 19.0539 23.7881 19.7039C23.5547 20.3539 23.2381 20.9289 22.8381 21.4289L29.1381 27.7289L27.7381 29.1289ZM17.6381 22.1289C18.8881 22.1289 19.9506 21.6914 20.8256 20.8164C21.7006 19.9414 22.1381 18.8789 22.1381 17.6289C22.1381 16.3789 21.7006 15.3164 20.8256 14.4414C19.9506 13.5664 18.8881 13.1289 17.6381 13.1289C16.3881 13.1289 15.3256 13.5664 14.4506 14.4414C13.5756 15.3164 13.1381 16.3789 13.1381 17.6289C13.1381 18.8789 13.5756 19.9414 14.4506 20.8164C15.3256 21.6914 16.3881 22.1289 17.6381 22.1289Z' fill='%23517992'/%3E%3C/svg%3E%0A");
}
.header__search--toggle:focus-visible {
  outline-color: var(--mainGray);
}
.header__search--toggle.open + .header__menu--toggle {
  display: none;
}
.header__search {
  background-color: #fff;
  display: none;
  left: 0;
  padding: 12px 16px 12px 56px;
  position: fixed;
  right: 0;
  top: 0;
}
.header__search.open {
  display: block;
}
.header__search .hs-search-field label {
  display: none;
}
.header__search .hs-search-field__input {
  background-color: #fff;
  border: none;
  font-size: 14px;
  line-height: 20px;
  outline: none;
  padding: 10px 4px;
}

.header__search .hs-search-field--open .hs-search-field__suggestions {
  background-color: #fff;
  border: none;
  border-top: 1px solid #eee;
  height: calc(100vh - 64px);
  left: 0;
  padding: 16px 8px;
  position: fixed;
  right: 0;
  top: 64px;
  z-index: 10;
}

.header__search .hs-search-field__suggestions li {
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
  margin-top: 8px;
}

.header__search .hs-search-field__suggestions li a {
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.9375 17L10.9583 12.0208C10.5417 12.3264 10.0848 12.566 9.58771 12.7396C9.09063 12.9132 8.5616 13 8.00063 13C6.61132 13 5.43056 12.5139 4.45833 11.5417C3.48611 10.5694 3 9.38889 3 8C3 6.61111 3.48611 5.43056 4.45833 4.45833C5.43056 3.48611 6.61111 3 8 3C9.38889 3 10.5694 3.48611 11.5417 4.45833C12.5139 5.43056 13 6.61132 13 8.00063C13 8.5616 12.9132 9.09063 12.7396 9.58771C12.566 10.0848 12.3264 10.5417 12.0208 10.9583L17 15.9375L15.9375 17ZM8 11.5C8.97222 11.5 9.79861 11.1597 10.4792 10.4792C11.1597 9.79861 11.5 8.97222 11.5 8C11.5 7.02778 11.1597 6.20139 10.4792 5.52083C9.79861 4.84028 8.97222 4.5 8 4.5C7.02778 4.5 6.20139 4.84028 5.52083 5.52083C4.84028 6.20139 4.5 7.02778 4.5 8C4.5 8.97222 4.84028 9.79861 5.52083 10.4792C6.20139 11.1597 7.02778 11.5 8 11.5Z' fill='%23888A8C'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: 8px center;
  display: inline-block;
  padding: 8px 8px 8px 36px;
  text-decoration: none;
  transition: color 300ms;
}
.header__search .hs-search-field__suggestions a:focus,
.header__search .hs-search-field__suggestions a:hover {
  background-color: transparent;
}

.header__search .hs-search-field__suggestions #results-for {
  color: var(--mainGray);
  font-weight: 400;
  padding-left: 8px;
}

@media (max-width: 1023px) {
  .header__search--toggle.open {
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.825 21H28V19H15.825L21.425 13.4L20 12L12 20L20 28L21.425 26.6L15.825 21Z' fill='%23312D2D'/%3E%3C/svg%3E%0A");
    left: 4px;
    position: fixed;
    top: 12px;
  }
}
@media (min-width: 1024px) {
  .header__search--toggle.open {
    position: static;
  }
  .header__search {
    height: calc(100vh - 94px);
    left: 65%;
    padding: 64px 36px;
    top: 94px;
    width: 35%;
    transform: translateX(100%);
  }
  .header__search.open {
    animation: show-search-bg 300ms ease-in-out forwards;
  }
  .header__search .hs-search-field {
    max-width: 574px;
  }
  .header__search .hs-search-field__input {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19.6 21L13.3 14.7C12.8 15.1 12.225 15.4167 11.575 15.65C10.925 15.8833 10.2333 16 9.5 16C7.68333 16 6.14583 15.3708 4.8875 14.1125C3.62917 12.8542 3 11.3167 3 9.5C3 7.68333 3.62917 6.14583 4.8875 4.8875C6.14583 3.62917 7.68333 3 9.5 3C11.3167 3 12.8542 3.62917 14.1125 4.8875C15.3708 6.14583 16 7.68333 16 9.5C16 10.2333 15.8833 10.925 15.65 11.575C15.4167 12.225 15.1 12.8 14.7 13.3L21 19.6L19.6 21ZM9.5 14C10.75 14 11.8125 13.5625 12.6875 12.6875C13.5625 11.8125 14 10.75 14 9.5C14 8.25 13.5625 7.1875 12.6875 6.3125C11.8125 5.4375 10.75 5 9.5 5C8.25 5 7.1875 5.4375 6.3125 6.3125C5.4375 7.1875 5 8.25 5 9.5C5 10.75 5.4375 11.8125 6.3125 12.6875C7.1875 13.5625 8.25 14 9.5 14Z' fill='%23312D2D'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: left center;
    border-bottom: 1px solid var(--mainBlack);
    padding: 12px 16px 16px 32px;
  }
  .header__search .hs-search-field--open .hs-search-field__suggestions {
    padding-top: 24px;
    position: static;
  }
  .header__search .hs-search-field__suggestions li {
    font-size: 16px;
    line-height: 24px;
  }
  .header__search .hs-search-field__suggestions #results-for {
    font-size: 16px;
    line-height: 22px;
  }
}

@keyframes show-search-bg {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

/* header button */
.header__button {
  background-color: #FDDF36;
  border-color: #FDDF36;
  color: var(--mainBlack);
  display: none;
}
.header__button:hover,
.header__button:focus-visible {
  background-color: #E8BC28;
  border-color: #E8BC28;
  color: var(--mainBlack);
}
.header__button:focus-visible {
  border-color: var(--darkGray);
  box-shadow: 0 0 0 1px var(--darkGray) inset;
  color: var(--mainGray);
}

@media (min-width: 1024px) {
  .header__button {
    display: inline-block;
    margin-left: 12px;
  }
}
/* footer */
.footer {
  padding-bottom: 16px;
  padding-top: 31px;
}
.footer__row {
}
.footer__info {
}
.footer a {
  color: var(--mainGray);
  text-decoration: none;
  transition: color 300ms;
}
.footer a:hover {
  color: var(--lightBlue);
}
.footer a:focus-visible {
  color: var(--lightBlue);
  outline-color: var(--mainGray);
}

@media (min-width: 768px) {
  .footer {
    padding-bottom: 32px;
    padding-top: 38px;
  }
  .footer__row {
    display: flex;
    gap: 32px;
  }
  .footer__info {
    flex: 1;
  }
}
@media (min-width: 960px) {
  .footer__row {
    gap: 48px;
  }
}
@media (min-width: 1024px) {
  .footer {
    padding-top: 40px;
  }
  .footer__row {
    gap: 56px;
  }
}
@media (min-width: 1280px) {
  .footer__row {
    gap: 96px;
  }
}
@media (min-width: 1440px) {
  .footer__row {
    gap: 160px;
  }
}

/* footer logo */
.footer__logo-url {
  display: inline-block;
  margin-bottom: 22px;
}
.footer__logo-url:focus-visible {
  outline-offset: 2px;
  outline-color: var(--mainGray);
}
.footer__logo-img {
  height: 52px;
  fill: var(--mainBlack);
  transition: fill 300ms;
  width: auto;
}
.footer__logo-img:hover {
  fill: var(--lightBlue);
}

/* footer menu */
.footer__menu-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 16px;
  margin-top: 22px;
}
.footer__menu {
  font-family: var(--fontHeebo);
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer__menu + .footer__menu {
  margin-top: 20px;
}
.footer__menu-item + .footer__menu-item {
  margin-top: 20px;
}
.footer__menu-subitem--title > .footer__menu-sublink {
  color: var(--mainBlack);
  font-size: 11px;
  font-weight: 600;
  line-height: 16px;
  margin-bottom: 8px;
  padding: 0 2px;
}
a.footer__menu-link,
span.footer__menu-link {
  color: var(--mainBlack);
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
  padding-left: 2px;
  padding-right: 2px;
}
.footer__menu-link:has(+ .footer__menu-submenu) {
  margin-bottom: 8px;
}
.footer__menu:first-child {
  grid-column: span 2;
}
.footer__menu:first-child > .footer__menu-item > .footer__menu-submenu {
  display: flex;
  gap: 16px;
}
.footer__menu:first-child > .footer__menu-item > .footer__menu-submenu .footer__menu-subitem {
  flex: 1;
}
.footer__menu-submenu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer__menu-sublink {
  display: inline-block;
  font-size: 12px;
  line-height: 16px;
  padding: 4px 2px;
}

@media (min-width: 768px) {
  .footer__menu-wrap {
    display: block;
    column-count: 3;
    margin-top: 0;
  }
  .footer__menu-item {
    -webkit-column-break-inside: avoid;
  }
  .footer__menu:first-child > .footer__menu-item > .footer__menu-submenu {
    display: block;
  }
  .footer__menu-subitem--title + .footer__menu-subitem--title {
    margin-top: 16px;
  }
  .footer__menu-subitem--title > .footer__menu-sublink {
    font-size: 12px;
    font-weight: bold;
  }
  a.footer__menu-link,
  span.footer__menu-link {
    font-size: 18px;
    line-height: 26px;
  }
  .footer__menu-sublink {
    font-size: 14px;
    line-height: 20px;
  }
}

/* social */
.social {
    display: flex;
    gap: 6px;
}
.social__icon {
  fill: var(--mainBlack);
  transition: fill 300ms;
}
.social__link:hover .social__icon,
.social__link:focus-visible .social__icon {
  fill: var(--lightBlue);
}

/* footer address */
.footer__address {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 20px 24px;
  list-style: none;
  margin: 24px 0 0;
  padding-left: 0;
}
.footer__address-item {
}
.footer__address-link {
  display: inline-block;
  font-size: 10px;
  letter-spacing: .25px;
  line-height: 14px;
  position: relative;
  padding-left: 24px;
  padding-right: 2px;
}
.footer__address-icon {
  left: 0;
  position: absolute;
  top: 0;
  transition: fill 300ms;
}
.footer__address-link:hover .footer__address-icon,
.footer__address-link:focus-visible .footer__address-icon {
  fill: var(--lightBlue);
}
.footer__address-link:hover .footer__address-title,
.footer__address-link:focus-visible .footer__address-title {
  color: var(--lightBlue);
}
.footer__address-title {
  color: var(--mainBlack);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 20px;
  margin-bottom: 4px;
  transition: color 300ms;
}
@media (min-width: 768px) {
  .footer__address {
    display: block;
    column-count: 3;
    margin-top: 32px;
  }
  .footer__address-item {
    -webkit-column-break-inside: avoid;
    margin-left: -24px;
  }
}

/* footer submenu */
.footer__submenu {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 8px 32px;
  list-style: none;
  margin: 24px 0 0;
  padding-left: 0;
}
.footer__submenu li {}
.footer__submenu a {
  display: inline-block;
  font-size: 11px;
  font-family: var(--fontHeebo);
  font-weight: 600;
  line-height: 16px;
  padding: 4px 2px;
}

@media (min-width: 768px) {
  .footer__submenu {
    display: flex;
    gap: 32px;
    margin-top: 48px;
  }
}
@media (min-width: 960px) {
  .footer__submenu {
    gap: 60px;
  }
}

/* footer copyright */
.footer__copyright {
  color: var(--mainGray);
  cursor: default;
  font-size: 10px;
  letter-spacing: .25px;
  line-height: 14px;
  margin-top: 8px;
}
.slick-row {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.slick-counter {
  align-items: center;
  color: rgba(136, 138, 140, 0.6);
  display: flex;
  font-size: 24px;
  font-weight: 600;
  gap: 8px;
  line-height: 32px;
}
.slick-counter .current {
  color: var(--mainBlack);
}

.slick-pagination {
  align-items: center;
  display: flex;
  gap: 4px;
}

.slick-icon {
  fill: var(--mainBlack);
  transition: fill 300ms;
}
.slick-arrow:hover .slick-icon,
.slick-arrow:focus-visible .slick-icon {
  fill: var(--lightBlue);
}
.slick-arrow:focus-visible {
  border-radius: 4px;
  box-shadow: 0 0 0 2px var(--mainGray) inset;
}

.slick-slide {
  outline: none;
}

@media (min-width: 1440px) {
  .slick-row {
    margin-bottom: 24px;
  }
  .slick-counter {
    font-size: 32px;
    line-height: 40px;
  }
}
.blog-slider .slick-list {
  margin-right: -1000px;
  padding-right: -1000px;
}
.blog__item {
  color: var(--mainBlack);
  display: flex;
  flex-direction: column;
  height: 100%;
  margin-left: 8px;
  margin-right: 8px;
  outline: none;
  text-decoration: none;
}
.blog__item:not(:has(.blog__image)) {
  background-color: rgba(238, 238, 238, 0.5);
  border-radius: 24px;
}
.blog__item:not(:has(.blog__image)) .blog__image-wrap {
  height: auto;
}
.blog__item:not(:has(.blog__image)) .blog__tags {
  margin: 16px;
  position: static;
}
.blog__item:not(:has(.blog__image)) .blog__title {
  margin-left: 16px;
  margin-right: 16px;
}
.blog__item:not(:has(.blog__image)) .blog__link {
  margin-right: 16px;
}
.blog__image-wrap {
  border-radius: 24px;
  height: 400px;
  overflow: hidden;
  position: relative;
}
.blog__image {
  height: 100%;
  object-fit: cover;
  transition: transform 300ms;
  width: 100%;
}
.blog__tags {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  left: 16px;
  position: absolute;
  right: 16px;;
  top: 16px;
}
.blog__tag {
  background-color: #fff;
  border-radius: 12px;
  color: var(--mainBlack);
  display: inline-block;
  font-family: var(--fontHeebo);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  padding: 4px 12px;
}
.blog__tag:first-letter {
  text-transform: uppercase;
}
.blog__content {
  align-items: flex-start;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 16px;
  padding-top: 16px;
}
.blog__title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  visibility: visible;
}
.blog__item:hover .blog__image {
  transform: scale(1.1);
}
.blog__item:hover .link::before,
.blog__item:focus-visible .link::before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.blog__item:hover .link::after,
.blog__item:focus-visible .link::after {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.0154 21.6532L12.5962 20.234L20.8307 11.9995L12.5962 3.76495L14.0154 2.3457L23.6692 11.9995L14.0154 21.6532Z' fill='%23517992'/%3E%3C/svg%3E%0A");
}
.blog__item:focus-visible .link {
  border-radius: 4px;
  outline-color: var(--mainGray);
  outline-width: 2px;
  outline-style: solid;
}
.blog__link {
  align-self: flex-end;
}

@media (min-width: 1024px) {
  .blog__tag {
    border-radius: 18px;
    font-size: 14px;
    line-height: 20px;
    padding: 8px 20px;
  }
  .blog__link {
    align-self: flex-start;
  }
  .blog__item:not(:has(.blog__image)) .blog__link {
    margin-left: 16px;
    margin-right: 0;
  }
}

@media (min-width: 1440px) {
  .blog__item:not(:has(.blog__image)) {
    border-radius: 32px;
  }
  .blog__image-wrap {
    height: 465px;
  }
}
.pagination {
  align-items: center;
  display: flex;
  gap: 4px;
  justify-content: center;
  margin-bottom: 40px;
  margin-top: 20px;
  overflow: auto;
}
.pagination a {
  align-items: center;
  border-radius: 50%;
  display: flex;
  font-size: 14px;
  flex: 0 0 32px;
  justify-content: center;
  line-height: 20px;
  outline: none;
  height: 32px;
  text-decoration: none;
  transition-duration: 300ms;
  transition-property: background-color, color;
  width: 32px;
}
.pagination .active {
  background-color: var(--mainBlack);
  color: #fff;
}
.pagination .prev,
.pagination .next {
  align-items: center;
  border-radius: 100px;
  display: inline-flex;
  gap: 8px;
  overflow: hidden;
  padding-bottom: 8px;
  padding-top: 8px;
}
.pagination .prev {
  justify-content: flex-start;
  padding-left: 12px;
  padding-right: 16px;
}
.pagination .prev::before {
  content: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.1278 13.712L8.90197 12.9541L6.49009 10.5422H15.583V9.45885H6.49009L8.90197 7.04698L8.1278 6.28906L4.41634 10.0005L8.1278 13.712Z' fill='%23312D2D'/%3E%3C/svg%3E%0A");
  flex: 0 0 20px;
  height: 20px;
  transform: translateX(-6px);
  width: 20px;
}
.pagination .next {
  justify-content: flex-end;
  padding-left: 16px;
  padding-right: 12px;
}
.pagination .next::after {
  content: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.8717 13.712L11.0975 12.9541L13.5094 10.5422H4.4165V9.45885H13.5094L11.0975 7.04698L11.8717 6.28906L15.5832 10.0005L11.8717 13.712Z' fill='%23312D2D'/%3E%3C/svg%3E%0A");
  flex: 0 0 20px;
  height: 20px;
  transform: translateX(6px);
  width: 20px;
}
.pagination a:hover,
.pagination a:focus-visible {
  background-color: #eeeeee;
  color: var(--mainBlack);
}
.pagination a:focus-visible {
  box-shadow: 0 0 0 2px var(--darkGray) inset;
}
@media (min-width: 360px) {
  .pagination {
    gap: 8px;
  }
}
@media (min-width: 768px) {
  .pagination .prev,
  .pagination .next {
    flex: 0 0 auto;
    height: auto;
    width: auto;
  }
  .pagination .prev::before {
    transform: translateX(0);
  }
  .pagination .next::after {
    transform: translateX(0);
  }
}
.tabs-wrap {
  position: relative;
}
.tabs-wrap::before,
.tabs-wrap::after {
  content: '';
  height: 48px;
  position: absolute;
  top: 0;
  width: 16px;
  z-index: 1;
}
.tabs-wrap::before {
  background-image: linear-gradient(-90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 80%, rgba(255,255,255,1) 100%);
  left: -16px;
}
.tabs-wrap::after {
  background-image: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 80%, rgba(255,255,255,1) 100%);
  right: -16px;
}

.tabs {
  align-items: center;
  display: flex;
  gap: 16px;
  overflow: auto;
  list-style: none;
  margin: -3px -16px;
  padding: 3px 16px;
}

.tab-item,
.tab-item:active,
.tab-item:focus,
.tab-item:hover {
  color: var(--darkGray);
  display: inline-block;
  font-family: var(--fontHeebo);
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  padding: 8px 4px 16px;
  position: relative;
  text-decoration: none;
  transition: color 300ms;
  white-space: nowrap;
}
.tab-item::before {
  background-color: var(--mainBlack);
  bottom: 8px;
  content: '';
  height: 2px;
  left: 4px;
  position: absolute;
  right: 4px;
  transform: scaleX(0);
  transform-origin: bottom right;
  transition: transform 300ms ease-out;
}
.tab-item:hover,
.tab-item.active,
.tab-item:focus-visible {
  color: var(--mainBlack);
}
.tab-item:hover::before,
.tab-item.active::before,
.tab-item:focus-visible::before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.tab-item:focus-visible {
  border-radius: 4px;
  outline-color: var(--mainGray);
  outline-width: 2px;
  outline-style: solid;
}
.tab-item:not(.active):hover,
.tab-item:not(.active):focus-visible {
  color: var(--lightBlue);
  cursor: pointer;
}
.tab-item:not(.active):hover::before,
.tab-item:not(.active):focus-visible::before {
  background-color: var(--lightBlue);
}

@media (min-width: 768px) {
  .tabs-wrap::before,
  .tabs-wrap::after {
    width: 24px;
  }
  .tabs-wrap::before {
    left: -24px;
  }
  .tabs-wrap::after {
    right: -24px;
  }
  .tabs {
    margin-left: -24px;
    margin-right: -24px;
    padding-left: 24px;
    padding-right: 24px;
  }
}


@media (min-width: 1024px) {
  .tabs {
    gap: 8px;
  }
  .tab-item,
  .tab-item:active,
  .tab-item:focus,
  .tab-item:hover {
    font-size: 18px;
    line-height: 26px;
  }
}
/* 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: 767px) {
  .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: 767px) {
  .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: 767px) {
  .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#hs-eu-cookie-confirmation {
  background-color: rgba(238, 238, 238, 0.5) !important;
  backdrop-filter: blur(50px);
  -webkit-backdrop-filter: blur(50px);
  border-radius: 24px;
  border-top: none !important;
  color: var(--mainBlack) !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 14px !important;
  max-width: 1036px;
  margin-left: auto;
  margin-right: auto;
  padding: 16px !important;
  right: 0;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner {
  background: transparent !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 14px !important;
  padding: 0 !important;
}
div#hs-eu-cookie-confirmation.hs-cookie-notification-position-bottom div#hs-eu-cookie-confirmation-inner {
  padding: 0 !important;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner div#hs-eu-policy-wording {
  margin-bottom: 8px !important;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner p#hs-eu-cookie-disclaimer {
  color: var(--mainBlack) !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 14px !important;
  margin: 0 !important;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner div#hs-en-cookie-confirmation-buttons-area {
  justify-content: flex-end !important;
  margin-top: 20px;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner div#hs-eu-cookie-confirmation-button-group {
  flex-direction: row-reverse !important;
  gap: 4px;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a {
  border-radius: 100px !important;
  border: 1px solid transparent !important;
  cursor: pointer;
  display: inline-block !important;
  font-family: var(--fontHeebo) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 20px !important;
  margin: 0 !important;
  outline: none;
  padding: 9px 12px !important;
  text-align: center !important;
  text-decoration: none;
  transition: all 300ms;
  user-select: none;
  white-space: normal;
  -webkit-appearance: none;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-confirmation-button {
  background-color: var(--mainBlack) !important;
  border-color: var(--mainBlack) !important;
  color: #fff !important;
  margin: 0 !important;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-confirmation-button:hover,
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-confirmation-button:focus-visible {
  background-color: var(--lightBlue) !important;
  border-color: var(--lightBlue) !important;
  color: #fff !important;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-confirmation-button:focus-visible {
  border-color: var(--darkGray) !important;
  box-shadow: 0 0 0 1px var(--darkGray) inset;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-decline-button {
  border-color: var(--mainBlack) !important;
  color: var(--mainBlack) !important;
  margin: 0 !important;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-decline-button:hover,
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-decline-button:focus-visible {
  border-color: var(--lightBlue) !important;
  color: var(--lightBlue) !important;
}
div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a#hs-eu-decline-button:focus-visible {
  border-color: var(--darkGray) !important;
  box-shadow: 0 0 0 1px var(--darkGray) inset;
  color: var(--lightBlue) !important;
}

@media (min-width: 768px) {
  div#hs-eu-cookie-confirmation {
    padding: 24px !important;
  }
}
@media (min-width: 1024px) {
  div#hs-eu-cookie-confirmation {
    border-radius: 32px;
    font-size: 14px !important;
    line-height: 20px !important;
  }
  div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner {
    font-size: 14px !important;
    line-height: 20px !important;
  }
  div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner p#hs-eu-cookie-disclaimer {
    font-size: 14px !important;
    line-height: 20px !important;
  }
  .hs-cookie-notification-position-bottom {
    margin-bottom: 16px;
  }
  div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner div#hs-en-cookie-confirmation-buttons-area {
    margin-top: 24px;
  }
  div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner #hs-en-cookie-confirmation-buttons-area a {
    font-size: 18px !important;
    line-height: 26px !important;
    padding: 13px 24px !important;
  }
}
/* hs search results */
.blog-section:has(.hs-search-results) {
  margin: 0 auto;
  max-width: 1488px; /* 1440 + 24 + 24 */
  padding-left: 16px;
  padding-right: 16px;
}
.hs-search-results .hs-search-results__listing {
  margin-top: 32px;
}
.hs-search-results .hs-search-results__title {
  color: var(--mainBlack);
  display: inline-block;
  font-family: var(--fontHeebo);
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  margin-bottom: 8px;
}
.hs-search-results .hs-search-results__description {
  margin-bottom: 24px;
}
.hs-search-results__next-page,
.hs-search-results__prev-page {
  border-radius: 100px;
  font-size: 14px;
  line-height: 20px;
  outline: none;
  padding: 8px 16px;
  text-decoration: none;
  transition-duration: 300ms;
  transition-property: background-color, color;
}
.hs-search-results__next-page:hover,
.hs-search-results__prev-page:hover,
.hs-search-results__next-page:focus-visible,
.hs-search-results__prev-page:focus-visible {
  background-color: #eeeeee;
  color: var(--mainBlack);
}
.hs-search-results__next-page:focus-visible,
.hs-search-results__prev-page:focus-visible  {
  box-shadow: 0 0 0 2px var(--darkGray) inset;
}

@media (min-width: 1440px) {
  .hs-search-results .hs-search-results__title {
    font-size: 26px;
    line-height: 32px;
  }
  .hs-search-results .hs-search-results__description {
    font-size: 16px;
    line-height: 24px;
  }
}

/* Utilities
Helper classes with ability to override anything that comes before it
*/

/* For content that needs to be visually hidden but stay visible for screenreaders */

.show-for-sr {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

@media (max-width: 767px) {
  .show-for-sr--mobile {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}