/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/project/general/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* stylelint-disable-next-line scss/at-rule-no-unknown */
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.plus-minus-icon {
  position: relative;
  cursor: pointer;
  --crest-icon-size: 14px;
}
.plus-minus-icon::before, .plus-minus-icon::after {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  background-color: #004547;
  transition: transform 0.3s ease;
}
.plus-minus-icon::before {
  height: 2px;
  width: var(--crest-icon-size);
  transform: translateY(-50%);
}
.plus-minus-icon::after {
  height: var(--crest-icon-size);
  width: 2px;
  transform: translate(-5.8px, -50%);
}
.plus-minus-icon.active::after, .is-expanded > .plus-minus-icon::after {
  transform: translate(-5.8px, -50%) rotate(-90deg);
}

@font-face {
  font-family: Gotham-light;
  font-display: swap;
  font-style: normal;
  font-weight: 300;
  src: url(/dist/fonts/Gotham_Light.woff2) format("woff2"), url(/dist/fonts/Gotham_Light.woff) format("woff");
}
@font-face {
  font-family: Gotham-book;
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  src: url(/dist/fonts/Gotham_Book.woff2) format("woff2"), url(/dist/fonts/Gotham_Book.woff) format("woff");
}
@font-face {
  font-family: Gotham-medium;
  font-display: swap;
  font-style: normal;
  font-weight: 500;
  src: url(/dist/fonts/Gotham_Medium.woff2) format("woff2"), url(/dist/fonts/Gotham_Medium.woff) format("woff");
}
@font-face {
  font-family: Gotham-bold;
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  src: url(/dist/fonts/Gotham_Bold.woff2) format("woff2"), url(/dist/fonts/Gotham_Bold.woff) format("woff");
}
/*  reset default styles */
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

a {
  color: #004547;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

img {
  vertical-align: top;
}

[data-whatinput=mouse] *:focus,
[data-whatintent=touch] *:focus,
[data-whatinput=mouse] *:focus-visible,
[data-whatintent=touch] *:focus-visible {
  outline: none;
}

.is-mobile-and-tablet {
  display: none;
}
@media screen and (max-width: 1023px) {
  .is-mobile-and-tablet {
    display: block;
  }
}

.spacing-wrapper {
  overflow: hidden;
  padding-top: var(--sw-top-size);
  padding-bottom: var(--sw-bottom-size);
}

.spacing-none {
  --sw-bottom-size: 0;
}

.spacing-top-none {
  --sw-top-size: 0;
}

.spacing-small {
  --sw-bottom-size: 25px;
}
@media screen and (min-width: 1024px) {
  .spacing-small {
    --sw-bottom-size: 25px;
  }
}

.spacing-top-small {
  --sw-top-size: 25px;
}
@media screen and (min-width: 1024px) {
  .spacing-top-small {
    --sw-top-size: 25px;
  }
}

.spacing-medium {
  --sw-bottom-size: 40px;
}
@media screen and (min-width: 1024px) {
  .spacing-medium {
    --sw-bottom-size: 70px;
  }
}

.spacing-top-medium {
  --sw-top-size: 40px;
}
@media screen and (min-width: 1024px) {
  .spacing-top-medium {
    --sw-top-size: 55px;
  }
}

.spacing-large {
  --sw-bottom-size: 40px;
}
@media screen and (min-width: 1024px) {
  .spacing-large {
    --sw-bottom-size: 80px;
  }
}

.spacing-top-large {
  --sw-top-size: 40px;
}
@media screen and (min-width: 1024px) {
  .spacing-top-large {
    --sw-top-size: 80px;
  }
}

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

:root {
  --header-mobile-height: 66px;
  --header-desktop-height: 80px;
  --full-size-vh: calc(var(--vh, 1vh) * 100);
}

html {
  -webkit-text-size-adjust: 100%;
}
html.scroll-locked {
  overflow: hidden;
  height: 100%;
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  overflow-y: auto;
  margin: 0;
  font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
@media screen and (max-width: 1023px) {
  body.nav-open {
    position: fixed;
  }
}
body.product-page {
  padding-bottom: 80px;
}
.scroll-locked body {
  overflow: hidden;
}

.visually-hidden {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(100%);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  white-space: nowrap;
}

.container-narrow {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
}
@media screen and (min-width: 768px) {
  .container-narrow {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.container-medium {
  max-width: 1056px;
  box-sizing: content-box;
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
}
@media screen and (min-width: 768px) {
  .container-medium {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.container-wide {
  max-width: 1324px;
  box-sizing: content-box;
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
}
@media screen and (min-width: 768px) {
  .container-wide {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.container {
  max-width: 1600px;
  box-sizing: content-box;
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
}
@media screen and (min-width: 768px) {
  .container {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.umb-block-grid__layout-item {
  overflow-y: visible;
}

.button {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  position: relative;
  height: 48px;
  line-height: 48px;
  padding: 0 31px;
  border-radius: 24px;
  font-size: 14px;
  letter-spacing: -0.01em;
  background: #004547;
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: 400;
  color: #ffffff;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color 0.3s ease;
}
.button:hover {
  background: #1a5859;
}
.button--massive {
  width: 100%;
  height: 72px;
  line-height: 72px;
  border-radius: 36px;
  text-align: center;
  justify-content: center;
}
.button--lime {
  background: #e5ff66;
  color: #004547;
  --arrow-color: #004547 !important;
  --before-icon-color: #004547 !important;
}
.button--lime:hover {
  background: #d9f35a;
}
.button--grey {
  background: #edebeb;
  color: #004547;
  --arrow-color: #004547 !important;
  --before-icon-color: #004547 !important;
}
.button--grey:hover {
  background: #004547;
  color: #ffffff;
  --arrow-color: #ffffff !important;
  --before-icon-color: #ffffff !important;
}
.button--keyline {
  color: #004547;
  background: transparent;
  border: 2px solid rgba(0, 69, 71, 0.2);
  --arrow-color: #004547 !important;
  --before-icon-color: #004547 !important;
  transition: border-color 0.3s ease;
}
.button--keyline:hover {
  background: transparent;
  border-color: #004547;
}
.button--keyline-dark {
  background: transparent;
  color: #ffffff;
  border: 2px solid rgba(255, 255, 255, 0.2);
  --arrow-color: #ffffff;
  --before-icon-color: #ffffff;
  transition: border-color 0.3s ease;
}
.button--keyline-dark:hover {
  background: transparent;
  border-color: #ffffff;
}
.button--arrow-right, .button--cta {
  --arrow-position-x-offset: 0;
  --arrow-position-x: calc(1px + var(--arrow-position-x-offset));
  --arrow-width: 10px;
  --arrow-color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 18px 28px;
}
.button--arrow-right::after, .button--cta::after {
  display: block;
  position: relative;
  content: "";
  background-color: var(--arrow-color);
  mask-image: url(/dist/images/right-angle-ef7a9faaa3f76aed73a9.svg);
  mask-repeat: repeat-x;
  mask-position: var(--arrow-position-x) center;
  mask-size: var(--arrow-width) 11px;
  width: var(--arrow-width);
  height: 11px;
  transition: background-color, mask-position 0.3s ease;
}
.button--arrow-right:hover, .button--arrow-right:focus-visible, .button--cta:hover, .button--cta:focus-visible {
  --arrow-position-x-offset: var(--arrow-width);
}
.button--search {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 31px 0 51px;
  --before-icon-color: #ffffff;
}
.button--search::before {
  position: absolute;
  content: "";
  left: 26px;
  top: 16px;
  width: 16px;
  height: 16px;
  background: var(--before-icon-color);
  mask-image: url(/dist/images/search-a2665c3776c2671615cf.svg);
  mask-repeat: no-repeat;
  mask-size: contain;
}
.button--arrow-round-left, .button--arrow-round-right {
  --arrow-position-x-offset: 0;
  --arrow-position-x: calc(1px + var(--arrow-position-x-offset));
  --arrow-width: 30px;
  --arrow-color: #004547;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border-radius: 50%;
}
.button--arrow-round-left::after, .button--arrow-round-right::after {
  display: block;
  position: relative;
  content: "";
  background-color: var(--arrow-color);
  mask-image: url(/dist/images/right-angle-ef7a9faaa3f76aed73a9.svg);
  mask-repeat: repeat-x;
  mask-position: var(--arrow-position-x) center;
  mask-size: var(--arrow-width) 15px;
  width: var(--arrow-width);
  height: 15px;
  transition: background-color, mask-position 0.3s ease;
}
.button--arrow-round-left.is-on-white, .button--arrow-round-right.is-on-white {
  background: transparent;
  border: 2px solid rgba(0, 69, 71, 0.2);
}
.button--arrow-round-left.is-on-white:hover, .button--arrow-round-left.is-on-white:focus-visible, .button--arrow-round-right.is-on-white:hover, .button--arrow-round-right.is-on-white:focus-visible {
  border: 2px solid #004547;
}
.button--arrow-round-left.is-grey, .button--arrow-round-right.is-grey {
  border: none;
  background: #edebeb;
  --arrow-color: #004547;
}
.button--arrow-round-left.is-grey:hover, .button--arrow-round-left.is-grey:focus-visible, .button--arrow-round-right.is-grey:hover, .button--arrow-round-right.is-grey:focus-visible {
  background: #e5ff66;
}
.button--arrow-round-left.is-lime, .button--arrow-round-right.is-lime {
  background: #e5ff66;
  --arrow-color: #004547;
}
.button--arrow-round-left.is-on-dark, .button--arrow-round-right.is-on-dark {
  border: 2px solid rgba(255, 255, 255, 0.3);
  --arrow-color: #ffffff;
  transition: border-color 0.3s ease;
}
.button--arrow-round-left.is-on-dark:hover, .button--arrow-round-right.is-on-dark:hover {
  background: transparent;
  border-color: #ffffff;
}
.button--arrow-round-left:hover, .button--arrow-round-left:focus-visible, .button--arrow-round-right:hover, .button--arrow-round-right:focus-visible {
  --arrow-position-x-offset: var(--arrow-width);
}
.button--arrow-round-left::after {
  transform: rotate(180deg);
}

.button__text {
  padding-top: 0.1cap;
}

.umbraco-forms-field-wrapper,
.form__input {
  position: relative;
}
.umbraco-forms-field-wrapper:has(input)::after,
.form__input:has(input)::after {
  position: absolute;
  content: "";
  background-color: #004547;
  width: 0;
  height: 4px;
  bottom: 0;
  left: 0;
  transition: width 0.3s ease;
}
.umbraco-forms-field-wrapper:focus-visible::after, .umbraco-forms-field-wrapper:focus-within::after, .umbraco-forms-field-wrapper:hover::after,
.form__input:focus-visible::after,
.form__input:focus-within::after,
.form__input:hover::after {
  width: 100%;
}
.umbraco-forms-field-wrapper:has(input.input-validation-error)::after,
.form__input:has(input.input-validation-error)::after {
  top: 32px;
  left: unset;
  right: 0;
  width: 15px;
  height: 15px;
  background-size: cover;
  background-color: transparent;
  background-image: url(/dist/images/crest-icon-5f74ef7e1f9ad6170dcc.svg);
}
.umbraco-forms-field-wrapper:has(input.valid)::after,
.form__input:has(input.valid)::after {
  top: 32px;
  left: unset;
  right: 0;
  width: 19px;
  height: 15px;
  background-size: cover;
  background-color: transparent;
  background-image: url(/dist/images/form-tick-success-e1f1f5633a7758bfb5a5.svg);
}
.umbraco-forms-field-wrapper input[type=text],
.umbraco-forms-field-wrapper input[type=number],
.umbraco-forms-field-wrapper input[type=email],
.form__input input[type=text],
.form__input input[type=number],
.form__input input[type=email] {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  width: 100%;
  border: none;
  border-bottom: 4px solid #edebeb;
  height: 69px;
  font-size: 32px;
  font-weight: 750;
  letter-spacing: -0.01em;
  color: #004547;
  padding-bottom: 20px;
  text-transform: uppercase;
  transition: border-color 0.3s ease;
}
.umbraco-forms-field-wrapper input[type=text]::placeholder,
.umbraco-forms-field-wrapper input[type=number]::placeholder,
.umbraco-forms-field-wrapper input[type=email]::placeholder,
.form__input input[type=text]::placeholder,
.form__input input[type=number]::placeholder,
.form__input input[type=email]::placeholder {
  color: rgba(0, 69, 71, 0.3);
}
.umbraco-forms-field-wrapper input[type=text].input-validation-error,
.umbraco-forms-field-wrapper input[type=number].input-validation-error,
.umbraco-forms-field-wrapper input[type=email].input-validation-error,
.form__input input[type=text].input-validation-error,
.form__input input[type=number].input-validation-error,
.form__input input[type=email].input-validation-error {
  border-color: #ca3a3a;
}
.umbraco-forms-field-wrapper input[type=text].valid,
.umbraco-forms-field-wrapper input[type=number].valid,
.umbraco-forms-field-wrapper input[type=email].valid,
.form__input input[type=text].valid,
.form__input input[type=number].valid,
.form__input input[type=email].valid {
  border-color: #004547;
}
.umbraco-forms-field-wrapper input[type=text]:focus, .umbraco-forms-field-wrapper input[type=text]:focus-visible, .umbraco-forms-field-wrapper input[type=text]:hover,
.umbraco-forms-field-wrapper input[type=number]:focus,
.umbraco-forms-field-wrapper input[type=number]:focus-visible,
.umbraco-forms-field-wrapper input[type=number]:hover,
.umbraco-forms-field-wrapper input[type=email]:focus,
.umbraco-forms-field-wrapper input[type=email]:focus-visible,
.umbraco-forms-field-wrapper input[type=email]:hover,
.form__input input[type=text]:focus,
.form__input input[type=text]:focus-visible,
.form__input input[type=text]:hover,
.form__input input[type=number]:focus,
.form__input input[type=number]:focus-visible,
.form__input input[type=number]:hover,
.form__input input[type=email]:focus,
.form__input input[type=email]:focus-visible,
.form__input input[type=email]:hover {
  outline: none;
}
.umbraco-forms-field-wrapper input[type=checkbox],
.form__input input[type=checkbox] {
  appearance: none;
  padding-left: 26px;
  position: relative;
  height: auto;
}
.umbraco-forms-field-wrapper input[type=checkbox]::before,
.form__input input[type=checkbox]::before {
  content: "";
  width: 24px;
  height: 24px;
  border: 2px solid #ccdada;
  top: 0;
  left: 0;
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  transition: background-color, border-color 0.3s ease;
}
.umbraco-forms-field-wrapper input[type=radio],
.form__input input[type=radio] {
  appearance: none;
  padding-left: 26px;
  position: relative;
  height: auto;
}
.umbraco-forms-field-wrapper input[type=radio]::before,
.form__input input[type=radio]::before {
  content: "";
  width: 24px;
  height: 24px;
  border: 2px solid #ccdada;
  border-radius: 50%;
  top: 0;
  left: 0;
  position: absolute;
  transform: translateY(calc(-50% - 3px));
  transition: background-color, border-color 0.3s ease;
}
.umbraco-forms-field-wrapper input[type=checkbox]:checked::before,
.form__input input[type=checkbox]:checked::before {
  border-color: #004547;
  background-color: #004547;
}
.umbraco-forms-field-wrapper input[type=radio]:checked::before,
.form__input input[type=radio]:checked::before {
  border-color: #004547;
}
.umbraco-forms-field-wrapper input[type=radio]:checked::after,
.form__input input[type=radio]:checked::after {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  top: 0;
  left: 0;
  position: absolute;
  background-color: #004547;
  transform: translate(50%, calc(-50% - 3px));
}
.umbraco-forms-field-wrapper input[type=checkbox]::before,
.form__input input[type=checkbox]::before {
  background-image: url(/dist/images/tick-icon-6332aa91e0b639aad024.svg);
}
.umbraco-forms-field-wrapper:has(input[type=checkbox])::after, .umbraco-forms-field-wrapper:has(input[type=radio])::after,
.form__input:has(input[type=checkbox])::after,
.form__input:has(input[type=radio])::after {
  display: none;
}
.umbraco-forms-field-wrapper:has(input[type=checkbox]) input[type=checkbox]:focus-visible::before,
.umbraco-forms-field-wrapper:has(input[type=checkbox]) input[type=radio]:focus-visible::before, .umbraco-forms-field-wrapper:has(input[type=radio]) input[type=checkbox]:focus-visible::before,
.umbraco-forms-field-wrapper:has(input[type=radio]) input[type=radio]:focus-visible::before,
.form__input:has(input[type=checkbox]) input[type=checkbox]:focus-visible::before,
.form__input:has(input[type=checkbox]) input[type=radio]:focus-visible::before,
.form__input:has(input[type=radio]) input[type=checkbox]:focus-visible::before,
.form__input:has(input[type=radio]) input[type=radio]:focus-visible::before {
  outline: 1px solid #004547;
  outline-offset: 4px;
}
.umbraco-forms-field-wrapper label.data-consent,
.form__input label.data-consent {
  font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 14px;
  display: inline-block;
  width: calc(100% - 50px);
  transition: opacity 0.3s ease;
}
.umbraco-forms-field-wrapper label.data-consent:hover,
.form__input label.data-consent:hover {
  cursor: pointer;
  opacity: 0.7;
}
.umbraco-forms-field-wrapper h1,
.umbraco-forms-field-wrapper h2,
.umbraco-forms-field-wrapper h3,
.umbraco-forms-field-wrapper h4,
.umbraco-forms-field-wrapper h5,
.form__input h1,
.form__input h2,
.form__input h3,
.form__input h4,
.form__input h5 {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 40px;
  line-height: 0.72;
  letter-spacing: -0.01em;
  color: #004547;
  margin-bottom: 24px;
  text-transform: uppercase;
}
@media screen and (min-width: 1024px) {
  .umbraco-forms-field-wrapper h1,
  .umbraco-forms-field-wrapper h2,
  .umbraco-forms-field-wrapper h3,
  .umbraco-forms-field-wrapper h4,
  .umbraco-forms-field-wrapper h5,
  .form__input h1,
  .form__input h2,
  .form__input h3,
  .form__input h4,
  .form__input h5 {
    font-size: 48px;
  }
}
.umbraco-forms-field-wrapper p,
.form__input p {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: -0.01em;
}
.umbraco-forms-field-wrapper .data-consent,
.form__input .data-consent {
  color: #004547;
}
.umbraco-forms-field-wrapper .data-consent a,
.form__input .data-consent a {
  color: inherit;
  border-color: inherit;
  text-decoration: none;
  padding-bottom: 2px;
  border-bottom: 1px solid;
  transition: opacity 0.3s ease;
}
.umbraco-forms-field-wrapper .data-consent a:hover, .umbraco-forms-field-wrapper .data-consent a:focus-visible,
.form__input .data-consent a:hover,
.form__input .data-consent a:focus-visible {
  opacity: 0.7;
}
@media screen and (min-width: 1024px) {
  .umbraco-forms-field-wrapper .ss-main, .umbraco-forms-field-wrapper select,
  .form__input .ss-main,
  .form__input select {
    max-width: 30%;
  }
}

.umbraco-forms-field:has(input.input-validation-error) label,
.umbraco-forms-field:has(input.input-validation-error) input[type=text],
.umbraco-forms-field:has(input.input-validation-error) input[type=email] {
  color: #ca3a3a;
}

.umbraco-forms-field + .umbraco-forms-field {
  margin-top: 32px;
}

.field-validation-error {
  font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 14px;
  letter-spacing: -0.01em;
  color: #ca3a3a;
  margin-top: 24px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.field-validation-error::before {
  content: "";
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  background-size: cover;
  background-image: url(/dist/images/form-alert-c2abb3510ff90c12ad70.svg);
}

.umbraco-forms-navigation {
  margin-top: 32px;
}
.umbraco-forms-navigation button[type=submit] {
  font-size: 14px;
}

.umbraco-forms-form textarea {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 32px;
}
@media screen and (min-width: 1024px) {
  .umbraco-forms-form textarea {
    font-size: 32px;
  }
}
.umbraco-forms-form textarea {
  resize: none;
  padding: 32px;
  width: 100%;
  border: 4px solid #edebeb;
  border-radius: 4px;
  transition: border-color 0.3s ease;
}
.umbraco-forms-form textarea:focus {
  outline: none;
}
.umbraco-forms-form textarea:focus-visible {
  border-color: #004547;
}
.umbraco-forms-form textarea.input-validation-error {
  border-color: #ca3a3a;
}

.umbraco-forms-label,
.umbraco-forms-legend {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 16px;
  letter-spacing: -0.01em;
  color: #004547;
  margin-bottom: 24px;
}

.umbraco-forms-tooltip {
  display: flex;
  align-items: center;
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.7;
  color: #004547;
  gap: 8px;
}
.umbraco-forms-tooltip .tooltip {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 24px;
  height: 24px;
  background-color: #edebeb;
  transition: color, background-color 0.3s ease;
}
.umbraco-forms-tooltip .tooltip:focus {
  outline: none;
}
.umbraco-forms-tooltip .tooltip:hover, .umbraco-forms-tooltip .tooltip:focus-visible {
  background-color: #004547;
}
.umbraco-forms-tooltip .tooltip:hover .tooltip-question, .umbraco-forms-tooltip .tooltip:focus-visible .tooltip-question {
  color: #ffffff;
}
.umbraco-forms-tooltip .tooltip:hover .tooltip__body, .umbraco-forms-tooltip .tooltip:focus-visible .tooltip__body {
  display: block;
}
.umbraco-forms-tooltip .tooltip-question {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: 750;
  color: #004547;
  font-size: 23px;
  line-height: 1;
  padding-top: 3px;
  transition: color 0.3s ease;
}
.umbraco-forms-tooltip .tooltip__body {
  display: none;
  width: 280px;
  position: absolute;
  bottom: calc(100% + 21px);
  left: 0;
  padding: 21px;
  background-color: #004547;
  color: #ffffff;
  line-height: 1.4;
  text-align: left;
}
.umbraco-forms-tooltip .tooltip__body::after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 0;
  border: 9px solid transparent;
  border-left: 9px solid #004547;
  border-top: 9px solid #004547;
}
@media screen and (max-width: 767px) {
  .umbraco-forms-tooltip .tooltip__body {
    transform: translateX(-100%);
  }
  .umbraco-forms-tooltip .tooltip__body::after {
    left: unset;
    right: 0;
    transform: rotate(90deg);
  }
}

@media screen and (max-width: 1023px) {
  .umbraco-forms-field.dataconsent input[type=checkbox] {
    height: 14px;
  }
}

.form__input-radio-check:has(input[type=checkbox]) label, .form__input-radio-check:has(input[type=radio]) label {
  display: flex;
  height: 100%;
}

.form__container {
  max-width: 920px;
  margin: 0 auto;
}

.umbraco-forms-ronseal .checkbox-list,
.umbraco-forms-ronseal .radio-list {
  display: grid;
  gap: 10px;
}
.umbraco-forms-ronseal .checkbox-list label,
.umbraco-forms-ronseal .radio-list label {
  font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #004547;
  font-size: 14px;
  transition: opacity 0.3s ease;
}
.umbraco-forms-ronseal .checkbox-list label:hover,
.umbraco-forms-ronseal .radio-list label:hover {
  cursor: pointer;
  opacity: 0.7;
}

.input__label {
  color: #004547;
}

/* global styles for SVG */
.icon {
  vertical-align: top;
  fill: currentColor;
}
.icon path {
  fill: inherit;
}

.responsive-media > img, .responsive-media > video {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.of-cover {
  object-fit: cover;
}

.of-contain {
  object-fit: contain;
}

.op-top {
  object-position: 50% 0;
}

.op-bottom {
  object-position: 50% 100%;
}

.op-left {
  object-position: 0 50%;
}

.op-right {
  object-position: 100% 50%;
}

.op-top-left {
  object-position: 0 0;
}

.op-top-right {
  object-position: 100% 0;
}

.op-bottom-left {
  object-position: 0 100%;
}

.op-bottom-right {
  object-position: 100% 100%;
}

.transparent-overlay::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1;
}

.has-theme-deep-teal {
  --font-colour: #ffffff;
  --bg-colour: #004547;
  --dots-colour: 255, 255, 255;
  --current-dot-colour: #e5ff66;
}

.has-theme-stone {
  --font-colour: #004547;
  --bg-colour: #edebeb;
  --dots-colour: 00, 45, 47;
  --current-dot-colour: #004547;
}

.has-theme-bright-teal {
  --font-colour: #004547;
  --bg-colour: #94f5d4;
  --dots-colour: 00, 45, 47;
  --current-dot-colour: #004547;
}

.has-theme-violet {
  --font-colour: #004547;
  --bg-colour: #adb5ff;
  --dots-colour: 00, 45, 47;
  --current-dot-colour: #004547;
}

.link-underlined {
  color: #004547;
  display: inline-block;
  position: relative;
  text-decoration: none;
  white-space: nowrap;
}
.link-underlined:before {
  display: block;
  content: "";
  position: absolute;
  height: 1px;
  width: 100%;
  bottom: -4px;
  background: rgba(0, 69, 71, 0.3);
}
.link-underlined:after {
  display: block;
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -4px;
  background: #004547;
  transition: width 0.3s ease;
}
.link-underlined:hover, .link-underlined:focus, .link-underlined:active {
  color: #004547;
  text-decoration: none;
}
.link-underlined:hover:after, .link-underlined:focus:after, .link-underlined:active:after {
  width: 100%;
}

.richtext {
  color: #004547;
  font-size: 16px;
}
.spacing-wrapper .richtext {
  max-width: 1056px;
  box-sizing: content-box;
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
}
@media screen and (min-width: 768px) {
  .spacing-wrapper .richtext {
    padding-left: 50px;
    padding-right: 50px;
  }
}
.richtext h1,
.richtext h2,
.richtext h3,
.richtext h4,
.richtext h5,
.richtext h6 {
  color: #004547;
  margin-bottom: 20px;
}
.richtext h1 {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 56px;
}
@media screen and (min-width: 1024px) {
  .richtext h1 {
    font-size: 88px;
  }
}
.richtext h2 {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .richtext h2 {
    font-size: 80px;
  }
}
.richtext h3 {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .richtext h3 {
    font-size: 72px;
  }
}
.richtext h3.sans-heading {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 20px;
  line-height: 1.3;
  text-transform: none;
  margin-bottom: 20px;
}
@media screen and (min-width: 1024px) {
  .richtext h3.sans-heading {
    font-size: 28px;
    line-height: 3.2;
    margin-bottom: 0;
  }
}
.richtext .sans-header {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .richtext .sans-header {
    font-size: 72px;
  }
}
.richtext .sans-header {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 20px;
  line-height: 1.3;
  text-transform: none;
  margin-bottom: 20px;
  color: #004547;
}
@media screen and (min-width: 1024px) {
  .richtext .sans-header {
    font-size: 28px;
    line-height: 3.2;
    margin-bottom: 0;
  }
}
.richtext h4 {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .richtext h4 {
    font-size: 64px;
  }
}
.richtext h5 {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 40px;
}
@media screen and (min-width: 1024px) {
  .richtext h5 {
    font-size: 48px;
  }
}
.richtext h6 {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 26px;
}
@media screen and (min-width: 1024px) {
  .richtext h6 {
    font-size: 32px;
  }
}
.richtext p {
  margin-bottom: 20px;
  line-height: 1.6;
}
.richtext p:last-child {
  margin-bottom: 0;
}
.richtext blockquote {
  margin-bottom: 30px;
  line-height: 1.6;
  position: relative;
  padding-left: 32px;
  color: #004547;
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .richtext blockquote {
    font-size: 64px;
  }
}
.richtext blockquote::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 9px;
  height: 100%;
  background: #e5ff66;
}
@media screen and (min-width: 768px) {
  .richtext blockquote {
    margin-bottom: 40px;
  }
}
.richtext blockquote:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .richtext blockquote:last-child {
    margin-bottom: 0;
  }
}
.richtext ul {
  margin-bottom: 20px;
  line-height: 1.6;
}
.richtext ul:last-child {
  margin-bottom: 0;
}
.richtext ul li {
  position: relative;
  padding: 0 0 4px 23px;
}
.richtext ul li:last-child {
  padding-bottom: 0;
}
.richtext ul li::before {
  display: block;
  position: absolute;
  content: "";
  background: #004547;
  left: 10px;
  top: 9px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
}
.richtext ul li > .tick {
  display: inline-block;
  position: relative;
  padding-left: 6px;
}
.richtext ul li > .tick::before, .richtext ul li > .tick::after {
  display: block;
  position: absolute;
  content: "";
  left: -23px;
  top: 0;
  width: 19px;
  height: 25px;
}
.richtext ul li > .tick::before {
  background: #ffffff;
}
.richtext ul li > .tick::after {
  background: #004547;
  mask-image: url(/dist/images/tick-icon-6332aa91e0b639aad024.svg);
  mask-repeat: no-repeat;
  mask-size: 19px 25px;
  mask-position: 0 0;
}
.richtext ol {
  margin-top: 0;
  padding: 0;
  margin-bottom: 20px;
  line-height: 1.6;
  padding-left: 23px;
}
.richtext ol:last-child {
  margin-bottom: 0;
}
.richtext ol li {
  padding: 0 0 20px;
}
.richtext ol li::marker {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
.richtext table {
  border-left: none;
  border-right: none;
  color: #004547;
}
.richtext table th,
.richtext table td {
  padding: 15px 0;
  border-color: #1a5859;
  border-left: none;
  border-right: none;
  text-align: left;
}
.richtext table th {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
.richtext a {
  color: #004547;
  display: inline-block;
  position: relative;
  text-decoration: none;
  white-space: nowrap;
}
.richtext a:before {
  display: block;
  content: "";
  position: absolute;
  height: 1px;
  width: 100%;
  bottom: -4px;
  background: rgba(0, 69, 71, 0.3);
}
.richtext a:after {
  display: block;
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -4px;
  background: #004547;
  transition: width 0.3s ease;
}
.richtext a:hover, .richtext a:focus, .richtext a:active {
  color: #004547;
  text-decoration: none;
}
.richtext a:hover:after, .richtext a:focus:after, .richtext a:active:after {
  width: 100%;
}
.richtext a:before, .richtext a:after {
  bottom: 5px;
}
.richtext img {
  max-width: 100%;
  height: auto;
}

#cookiebanner {
  box-sizing: border-box;
  opacity: 1;
  padding: 0;
  position: fixed;
  z-index: 2147483645;
  bottom: -800px;
  width: 100%;
}
#cookiebanner .c-header,
#cookiebanner .cb__title {
  margin-bottom: 16px;
  font-size: 18px;
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
#cookiebanner .c-message {
  font-size: 14px;
  line-height: 1.4em;
  text-align: left;
  margin-bottom: 40px;
}

.cookie-container {
  padding: 45px 30px;
  background: #336a6c;
  color: #ffffff;
  box-shadow: 0 16px 36px 0 rgba(0, 0, 0, 0.17);
  text-align: left;
}
@media screen and (min-width: 768px) {
  .cookie-container {
    padding: 55px 50px;
  }
}

.c-close-btn {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  display: block;
  position: absolute;
  top: 27px;
  right: 27px;
  cursor: pointer;
  width: 15px;
  height: 15px;
  place-items: center;
  border: none;
  padding: 0;
}
.c-close-btn::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #ffffff;
  mask-image: url(/dist/images/large-crest-icon-b5d97542cfca400dc111.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  width: 100%;
  height: 100%;
}

#c-buttons {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
#c-buttons .button {
  width: 100%;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  #c-buttons {
    flex-direction: row;
    gap: 8px;
    justify-content: flex-start;
  }
  #c-buttons .button {
    width: auto;
  }
}

#settings {
  display: none;
  width: 0;
  height: 0;
}

.settings-header {
  font-size: 18px;
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  text-transform: none;
  margin-bottom: 32px;
}

.cookie-settings-wrapper {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .cookie-settings-wrapper {
    flex-direction: row;
  }
}

.settings-buttons {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.settings-cookie {
  display: flex;
  flex-direction: column;
  flex: 1;
  font-size: 14px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .settings-cookie {
    margin-right: 32px;
  }
}

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

.show {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.cb__checkbox {
  display: none;
}
.cb__checkbox + label {
  display: block;
  position: relative;
  width: 45px;
  height: 24px;
  font-size: 0;
  line-height: 0;
  background-color: #777772;
  border-radius: 13px;
  cursor: pointer;
  margin-bottom: 14px;
}
.cb__checkbox + label:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 3px;
  width: 20px;
  height: 20px;
  background-color: #ffffff;
  border-radius: 10px;
  transition: all 0.2s ease-in-out;
}
.cb__checkbox + label:before {
  content: "";
  position: absolute;
  top: 12px;
  right: 10px;
  font-size: 14px;
  color: #ffffff;
}
.cb__checkbox:checked + label {
  background-color: #e5ff66;
}
.cb__checkbox:checked + label:after {
  left: calc(100% - 23px);
}
.cb__checkbox:checked + label:before {
  content: "";
  position: absolute;
  right: auto;
  left: 10px;
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/project/lazysizes/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
  transition: opacity 300ms;
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/header/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.header {
  background-color: #ffffff;
  height: var(--header-mobile-height);
  width: 100%;
  position: relative;
  z-index: 11;
}
@media screen and (min-width: 1024px) {
  .header {
    height: var(--header-desktop-height);
  }
}
.header__inner {
  position: fixed;
  top: 0;
  z-index: 1;
  width: 100%;
  height: var(--header-mobile-height);
  background: #ffffff;
  transition: all 0.5s ease;
}
@media screen and (min-width: 1024px) {
  .header__inner {
    height: var(--header-desktop-height);
  }
}
.header.is-hidden .header__inner {
  top: -90px;
  transform: translateY(-90px);
}
.header.is-bordered .header__inner {
  border-bottom: 1px solid #e3e3e3;
}
.header__container {
  position: static;
  height: var(--header-mobile-height);
  display: flex;
  flex-flow: row wrap;
}
@media screen and (min-width: 768px) {
  .header__container {
    padding-right: 24px;
  }
}
@media screen and (min-width: 1024px) {
  .header__container {
    height: var(--header-desktop-height);
    padding-right: 0;
    max-width: 1650px;
  }
}
.header__logo {
  flex-grow: 1;
  align-items: start;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-right: 50px;
}
.header__logo .icon {
  width: 108px;
  height: 18px;
}
@media screen and (min-width: 1024px) {
  .header__logo {
    flex-grow: initial;
  }
  .header__logo .icon {
    width: 137px;
    height: 22px;
  }
}
.header__search {
  width: 22px;
  height: var(--header-mobile-height);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-right: 28px;
}
.header__search .icon {
  width: 22px;
  height: 22px;
  stroke: #004547;
  stroke-width: 1.5px;
  stroke-linecap: square;
  stroke-linejoin: round;
}
.header__search-link {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
}
@media screen and (min-width: 1024px) {
  .header__search {
    width: var(--header-desktop-height);
    height: var(--header-desktop-height);
    margin-right: 0;
  }
}
@media screen and (min-width: 1024px) {
  .header__menu-mobile-cta {
    display: none;
  }
}
.header__menu-mobile-cta {
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  width: 20px;
  height: var(--header-mobile-height);
}
.header__menu-icon {
  width: 20px;
  cursor: pointer;
  padding: 0;
  display: inline-block;
  position: relative;
}
.header__menu-icon span {
  position: relative;
  height: 4px;
  width: 18px;
  display: block;
  margin: 0 auto;
}
.header__menu-icon span.middle {
  transition: all 0.3s ease;
  background-color: #004547;
  height: 2px;
}
.header__menu-icon span.middle:before, .header__menu-icon span.middle:after {
  content: "";
  position: absolute;
  left: 0;
  height: 2px;
  background-color: #004547;
  transition: all 0.3s ease;
}
.header__menu-icon span.middle:before {
  top: -6px;
  width: 18px;
  transition-property: top, transform;
}
.header__menu-icon span.middle:after {
  bottom: -6px;
  width: 9px;
  right: 0;
  left: auto;
  transition-property: bottom, transform;
}
.nav-open .header__menu-icon span.middle {
  background-color: transparent;
  transition-delay: 0s;
}
.nav-open .header__menu-icon span.middle:before {
  top: 0;
  transform: rotate(-45deg);
}
.nav-open .header__menu-icon span.middle:after {
  top: 0;
  transform: rotate(45deg);
}
.nav-open .header__menu-icon span.middle:before, .nav-open .header__menu-icon span.middle:after {
  width: 18px;
}

.nav {
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  transition: left 0.3s ease;
  background-color: #004547;
  color: #ffffff;
  z-index: 700;
  height: calc(var(--full-size-vh) - var(--header-mobile-height));
  margin-top: var(--header-mobile-height);
}
.nav-open .nav {
  left: 0;
}
@media screen and (min-width: 1024px) {
  .nav {
    position: static;
    flex-grow: 1;
    width: auto;
    height: auto;
    margin: 0;
    background: transparent;
    color: #004547;
  }
}
.nav__primary {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
@media screen and (min-width: 1024px) {
  .nav__primary {
    justify-content: flex-start;
  }
}
.nav__item {
  display: inline-block;
  width: 100%;
  border-bottom: 1px solid #1a5859;
}
@media screen and (max-width: 1023px) {
  .nav__item .nav__link .icon {
    display: none;
  }
  .nav__item.has-child .nav__link {
    padding-right: 64px;
  }
  .nav__item.has-child .nav__link .icon {
    display: block;
  }
}
@media screen and (min-width: 1024px) {
  .nav__item {
    width: auto;
    height: var(--header-desktop-height);
    border: none;
  }
  .nav__item.has-child .nav__link {
    padding-right: 37px;
    position: relative;
  }
  .nav__item.has-child .nav__link .icon {
    display: block;
    position: absolute;
    width: 7px;
    height: 13px;
    padding: 0;
    right: 18px;
    top: 33px;
    transform: rotate(-90deg);
    transform-origin: 50% 50%;
    stroke: #004547;
    stroke-width: 2px;
  }
  .nav__item.has-child .nav__link:hover:after, .nav__item.has-child .nav__link.active:after {
    right: 37px;
  }
  .nav__item.has-child:hover .nav__mega-menu {
    opacity: 1;
    visibility: visible;
  }
}
.nav__link {
  position: relative;
  font-size: 16px;
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #ffffff;
  text-decoration: none;
  height: 100%;
  display: block;
  padding: 23px 24px;
  text-align: left;
  cursor: pointer;
}
.nav__link:hover, .nav__link.is-active {
  background: #00393a;
}
.nav__link .icon {
  position: absolute;
  top: 0;
  right: 0;
  height: 65px;
  width: 64px;
  padding: 25px 28px;
  stroke: #e5ff66;
  stroke-width: 2px;
  transform: rotate(180deg);
}
@media screen and (min-width: 1024px) {
  .nav__link {
    color: #004547;
    text-align: center;
    padding: 0 18px;
    line-height: var(--header-desktop-height);
  }
  .nav__link .icon {
    display: none;
  }
  .nav__link:hover, .nav__link.is-active {
    background: transparent;
  }
  .nav__link:hover:after, .nav__link.is-active:after {
    display: block;
    content: "";
    position: absolute;
    bottom: 26px;
    left: 18px;
    right: 18px;
    height: 1px;
    background: #004547;
  }
}
.nav__mega-menu {
  position: absolute;
  top: 0;
  left: auto;
  right: -250%;
  width: 100%;
  transition: all 0.8s cubic-bezier(0.58, 0, 0, 0.75);
  background-color: #004547;
  z-index: 101;
  padding: 0 0 40px;
  overflow: auto;
  opacity: 1;
  visibility: visible;
  height: 100%;
}
.nav__mega-menu.open {
  transition: all 0.8s cubic-bezier(0.42, 0, 0, 0.98);
  right: 0;
  padding: 0 0 75px;
}
@media screen and (min-width: 1024px) {
  .nav__mega-menu {
    position: absolute;
    width: calc(100% - 50px * 2);
    max-width: 1600px;
    top: 100%;
    height: auto;
    left: 50%;
    transform: translateX(-50%);
    visibility: hidden;
    opacity: 0;
    background-color: #ffffff;
    border-top: 1px solid #e3e3e3;
    z-index: 5;
    padding: 0;
    border-radius: 0 0 16px 16px;
    box-shadow: 0 68px 44px 0 rgba(0, 0, 0, 0.35);
    display: flex;
    flex-flow: nowrap row;
    overflow: hidden;
    transition: opacity 0.3s ease;
  }
  .nav__mega-menu.open {
    padding: 0;
    right: auto;
  }
}
@media screen and (max-width: 1023px) {
  .nav__mega-menu .nav__banner {
    display: none;
  }
}
.nav__back-btn {
  width: 40px;
  height: 40px;
  border-radius: 20px;
  margin: 24px;
}
@media screen and (min-width: 1024px) {
  .nav__back-btn {
    display: none;
  }
}
.nav__banner {
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .nav__banner {
    background: #94f5d4;
    width: 460px;
    padding: 47px 90px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    text-align: center;
  }
}
@media screen and (min-width: 1024px) {
  .nav__banner--mobile {
    display: none;
  }
}
@media screen and (max-width: 1023px) {
  .nav__banner--mobile {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    margin: 22px 25px;
    background: #94f5d4;
    border-radius: 8px;
    color: #004547;
    padding: 22px 0 22px 22px;
  }
  .nav__banner--mobile .nav__img {
    margin-top: -20px;
    margin-bottom: -20px;
    margin-left: -30px;
    width: 200px;
  }
  .nav__banner--mobile .nav__banner-link {
    position: absolute;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    font-size: 0;
    text-indent: -1000em;
  }
}
.nav__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: 700;
  text-transform: uppercase;
  color: #004547;
  font-size: 32px;
  text-align: left;
  line-height: 0.8;
  min-width: 50%;
  text-wrap: inherit;
}
@media screen and (min-width: 1024px) {
  .nav__title {
    font-size: 40px;
    text-align: center;
    line-height: 0.8;
    min-width: auto;
  }
}
.nav__secondary {
  display: block;
}
@media screen and (min-width: 1024px) {
  .nav__secondary {
    display: block !important;
    max-height: none !important;
    columns: 2;
    column-gap: 20px;
    padding: 37px 55px 7px;
    flex-grow: 1;
  }
  .nav__secondary .nav__secondary {
    columns: 1;
    padding: 0;
  }
}
@media screen and (min-width: 1280px) {
  .nav__secondary {
    columns: 3;
  }
}
@media screen and (min-width: 1366px) {
  .nav__secondary {
    columns: 4;
  }
}
.nav__item-secondary {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
@media screen and (min-width: 1024px) {
  .nav__item-secondary {
    break-inside: avoid-column;
    padding-bottom: 30px;
  }
  .nav__item-secondary .nav__item-secondary {
    padding-bottom: 0;
    font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  }
}
@media screen and (min-width: 1024px) and (min-width: 1024px) {
  .nav__item-secondary .nav__item-secondary .nav__link-secondary .icon-arrow {
    display: none;
  }
}
@media screen and (min-width: 1024px) {
  .nav__item-secondary .nav__accordion-trigger {
    display: none;
  }
}
@media screen and (max-width: 1023px) {
  .nav__item-secondary {
    position: relative;
    display: block;
    width: 100%;
    background: #00393a;
    border-bottom: 1px solid #1a5859;
  }
  .nav__item-secondary:first-child {
    border-top: 1px solid #1a5859;
  }
  .nav__item-secondary .nav__item-secondary {
    background: #002c2d;
    font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  }
  .nav__item-secondary .nav__item-secondary:last-child {
    border-bottom: none;
  }
  .nav__item-secondary .nav__item-secondary .nav__link-secondary {
    padding: 20px 24px;
  }
  .nav__item-secondary .nav__accordion-trigger {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    height: 64px;
    width: 64px;
    z-index: 15;
    cursor: pointer;
  }
}
.nav__link-secondary {
  display: block;
  text-decoration: none;
  color: #ffffff;
}
.nav__link-secondary.has-child .icon-arrow {
  display: none;
}
@media screen and (min-width: 1024px) {
  .nav__link-secondary {
    display: inline-block;
    margin-bottom: 15px;
    color: #004547;
  }
  .nav__link-secondary:hover {
    color: #004547;
    text-decoration: none;
  }
  .nav__link-secondary .icon-arrow {
    display: none;
  }
  .nav__link-secondary[href]:hover {
    color: #004547;
    text-decoration: underline;
  }
  .nav__link-secondary[href] .icon-arrow {
    display: inline-block;
    stroke: #004547;
    stroke-width: 2px;
    width: 7px;
    height: 13px;
    margin-left: 10px;
    transform: rotate(180deg);
    vertical-align: middle;
  }
}
@media screen and (max-width: 1023px) {
  .nav__link-secondary {
    padding: 23px 25px;
  }
  .nav__link-secondary .icon-arrow {
    position: absolute;
    top: 22px;
    right: 32px;
    height: 15px;
    width: 8px;
    stroke: #e5ff66;
    stroke-width: 2px;
    transform: rotate(180deg);
  }
}
.nav__link-secondary.plus-minus-icon:before, .nav__link-secondary.plus-minus-icon:after {
  background-color: #e5ff66;
}
@media screen and (min-width: 1024px) {
  .nav__link-secondary.plus-minus-icon:before, .nav__link-secondary.plus-minus-icon:after {
    display: none;
  }
}
@media screen and (max-width: 1023px) {
  .nav__link-secondary.plus-minus-icon .icon-arrow {
    display: none;
  }
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/footer/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.footer {
  padding-top: 48px;
  padding-bottom: 26px;
  color: #004547;
}
@media screen and (min-width: 1024px) {
  .footer {
    padding-top: 64px;
    padding-bottom: 32px;
  }
}

.footer__container {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "logo" "navigation" "cta" "social" "copyright";
  row-gap: 40px;
}
@media screen and (min-width: 1024px) {
  .footer__container {
    grid-template-columns: 375px 1fr 375px;
    grid-template-areas: "logo navigation cta" ". navigation cta" "social . ." "copyright . .";
    row-gap: 0;
  }
}

.footer__logo {
  grid-area: logo;
}

.footer__navigation {
  grid-area: navigation;
}
@media screen and (min-width: 1024px) {
  .footer__navigation {
    margin-bottom: 103px;
    max-width: 750px;
  }
}

.footer__navigation-column {
  align-self: stretch;
}
.footer__navigation-column:nth-of-type(1) .footer__navigation-col-button {
  border-top: 1px solid rgba(0, 69, 71, 0.2);
}

.footer__navigation-col-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media screen and (max-width: 1023px) {
  .footer__navigation-col-list {
    padding: 0 16px;
    border-bottom: 1px solid rgba(0, 69, 71, 0.2);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }
  .footer__navigation-col-list > li:first-child {
    padding-top: 9px;
  }
  .footer__navigation-col-list > li:last-child {
    padding-bottom: 48px;
  }
}

.footer__navigation-col-title {
  display: block;
  margin-bottom: 24px;
}
@media screen and (max-width: 1023px) {
  .footer__navigation-col-title {
    display: none;
  }
}

.footer__navigation-col-button {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  padding: 0 16px;
  width: 100%;
  height: 72px;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 1024px) {
  .footer__navigation-col-button {
    display: none;
  }
}

.footer__navigation-col-title,
.footer__navigation-col-button {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #004547;
}

@media screen and (min-width: 1024px) {
  .footer__navigation-list {
    display: flex;
    flex-wrap: wrap;
    column-gap: 154px;
    row-gap: 35px;
  }
}

.footer__navigation-link {
  font-size: 16px;
  letter-spacing: -0.01em;
  color: #004547;
  text-decoration: none;
}
.footer__navigation-link:hover, .footer__navigation-link:focus-visible {
  text-decoration: underline;
}

.footer__social {
  grid-area: social;
}

.footer__cta {
  grid-area: cta;
}
@media screen and (max-width: 1023px) {
  .footer__cta {
    max-width: 345px;
  }
}

.footer__cta-title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 32px;
  line-height: 1;
  font-weight: 750;
  margin-bottom: 16px;
  text-transform: uppercase;
  letter-spacing: -0.01em;
}

.footer__cta-text {
  font-size: 16px;
  margin-bottom: 32px;
}

.footer__copyright {
  grid-area: copyright;
  font-size: 12px;
  letter-spacing: -0.01em;
}
@media screen and (min-width: 1024px) {
  .footer__copyright {
    margin-top: 40px;
  }
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/modal/scss/index.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.modal {
  --modal-bg-color: rgba(0, 0, 0, 0.5);
  position: fixed;
  inset: 0;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  transition: background-color, translate 0.3s ease;
  height: var(--full-size-vh);
  overflow-y: hidden;
  animation-duration: 187.5ms;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}
.modal > .modal__close {
  position: absolute;
  right: 24px;
  top: 24px;
}
@media screen and (max-width: 1023px) {
  .modal > .modal__close {
    right: 16px;
    top: 16px;
    z-index: 2;
  }
}
@media screen and (min-width: 1024px) {
  .modal {
    animation-duration: 750ms;
  }
}
.modal.open {
  animation-name: overlayFadeIn;
}
.modal.close {
  animation-name: overlayFadeOut;
}
@media screen and (max-width: 1023px) {
  .modal--white-bg-mobile {
    --modal-bg-color: #ffffff;
    transition: none;
    animation: none;
  }
  .modal--white-bg-mobile.open {
    background-color: var(--modal-bg-color);
  }
}
.modal--with-top-offset {
  transform: translateY(var(--offset-top));
}

@keyframes overlayFadeIn {
  from {
    background: rgba(0, 0, 0, 0);
  }
  to {
    background: var(--modal-bg-color);
  }
}
@keyframes overlayFadeOut {
  from {
    background: var(--modal-bg-color);
  }
  to {
    background: rgba(0, 0, 0, 0);
  }
}
.modal__close {
  flex-shrink: 0;
  cursor: pointer;
  width: 40px;
  height: 40px;
  background-color: #edebeb;
  border-radius: 50%;
  display: flex;
  place-items: center;
  border: none;
  padding: 0;
  transition: background-color 0.3s ease;
}
.modal__close::after {
  content: "";
  background-color: #004547;
  mask-image: url(/dist/images/large-crest-icon-b5d97542cfca400dc111.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  width: 100%;
  height: 14px;
  transition: background-color 0.3s ease;
}
.modal__close:hover, .modal__close:focus-visible {
  background-color: #004547;
}
.modal__close:hover::after, .modal__close:focus-visible::after {
  background-color: #ffffff;
}

/*** Dotter modal override ***/
.dtr-modal-container .dtr-modal-content {
  max-height: 75vh !important;
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/select/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.ss-main {
  --ss-border-color: #ccdada;
  --ss-primary-color: #004547;
  margin-bottom: 20px;
  height: 48px;
  color: #004547;
  border-width: 2px;
  border-radius: 8px;
}
.ss-main:hover, .ss-main:focus, .ss-main.ss-open-below {
  box-shadow: none;
  border-color: #004547;
  border-radius: 8px;
}

.ss-content.ss-open-below {
  border: none;
  background: #edebeb;
  border-radius: 8px;
  transform: translateY(10px);
}

.ss-content .ss-list .ss-option {
  display: flex;
  align-items: center;
  height: 48px;
  line-height: 22px;
  padding: 0 6px 0 12px;
  color: #004547;
  transition: background 0.3s ease, color 0.3s ease;
}
.ss-content .ss-list .ss-option > span {
  display: inline-block;
  margin-right: 12px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
}
.ss-content .ss-list .ss-option.ss-selected, .ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected, .ss-content .ss-list .ss-option:hover {
  background: #004547;
}
.ss-content .ss-list .ss-option.ss-selected > span, .ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected > span, .ss-content .ss-list .ss-option:hover > span {
  border: 1px solid #ffffff;
}

.ss-single {
  align-items: center;
  height: 38px;
  line-height: 19px;
  padding: 0 10px 0 6px;
  color: #004547;
}
.ss-single > span {
  display: inline-block;
  margin-right: 12px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
}

.ss-main .ss-arrow {
  width: 24px;
  height: 14px;
  padding-right: 10px;
}
.ss-main .ss-arrow path {
  stroke: #004547;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/signup-form/scss/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.signup-form {
  display: flex;
  flex-direction: column;
  padding: 18px 16px 38px 16px;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 20px 44px 0px rgba(0, 0, 0, 0.3490196078);
  transition: transform, opacity 0.3s ease;
  width: 345px;
  min-height: 548px;
  max-height: calc(var(--full-size-vh) - 30px);
  overflow-y: auto;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}
@media screen and (max-width: 1023px) {
  .signup-form {
    animation-duration: 187.5ms;
    opacity: 0;
  }
  .signup-form button[type=submit] {
    width: 100%;
  }
}
@media screen and (min-width: 1024px) {
  .signup-form {
    animation-duration: 750ms;
    position: fixed;
    bottom: 32px;
    right: 32px;
    width: 428px;
    min-height: 548px;
    transform: translateX(100vw);
    padding: 18px 16px 30px 16px;
  }
}
.signup-form h1,
.signup-form h2,
.signup-form h3,
.signup-form h4,
.signup-form h5 {
  max-width: 70%;
}

.signup-form__content {
  padding: 0 8px;
}
@media screen and (min-width: 1024px) {
  .signup-form__content {
    padding: 0 16px;
  }
}

.signup-form__close {
  align-self: flex-end;
}
.signup-form__close::after {
  mask-image: url(/dist/images/crest-icon-5f74ef7e1f9ad6170dcc.svg);
}

.open .signup-form {
  animation-name: bubbleIn;
}
@media screen and (min-width: 1024px) {
  .open .signup-form {
    animation-name: slideIn;
  }
}

.close .signup-form {
  animation-name: bubbleOut;
}
@media screen and (min-width: 1024px) {
  .close .signup-form {
    animation-name: slideOut;
  }
}

@keyframes bubbleIn {
  from {
    transform: scale(0.9);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes bubbleOut {
  from {
    transform: scale(1);
    opacity: 1;
  }
  to {
    transform: scale(0.9);
    opacity: 0;
  }
}
@keyframes slideIn {
  0% {
    transform: translateX(100vw);
  }
  70% {
    transform: translateX(-25px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slideOut {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100vw);
  }
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/single-image/scss/index.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.single-image {
  margin: 0 auto;
  max-width: 1328px;
}
@media screen and (max-width: 1023px) {
  .single-image {
    max-width: 100%;
  }
}

.single-image__description {
  color: #004547;
  font-family: Gotham-light, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 14px;
  letter-spacing: -0.01em;
  padding: 11px 16px;
  margin-top: 16px;
  border-left: 4px solid #e5ff66;
  vertical-align: middle;
}

.single-image__container {
  position: relative;
}
.single-image__container img {
  max-width: 100%;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/inspect-modal/scss/index.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.inspect-modal__content {
  width: 1056px;
  height: calc(var(--vh, 1vh) * 71);
  min-height: 180px;
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: 0px 20px 44px 0px rgba(0, 0, 0, 0.3490196078);
  display: grid;
  grid-template-columns: 48% 52%;
  overflow: hidden;
}
@media screen and (max-width: 1023px) {
  .inspect-modal__content {
    align-self: end;
    display: flex;
    flex-direction: column;
    width: 100vw;
    height: calc(var(--full-size-vh) - 98px);
    max-width: 400px;
    margin: 0 24px;
    gap: 32px;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
  }
  .inspect-modal__content::before {
    content: "";
    position: fixed;
    top: 73px;
    left: 0;
    width: 100vw;
    background-color: #ccdada;
    height: 1px;
  }
}

.inspect-modal__image {
  background-color: #edebeb;
}
.inspect-modal__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 1023px) {
  .inspect-modal__image {
    height: 235px;
  }
}

.inspect-modal__products {
  padding: 48px 58px 48px 56px;
  overflow-y: auto;
}
@media screen and (max-width: 1023px) {
  .inspect-modal__products {
    padding: 0;
    padding-bottom: 32px;
  }
}

.inspect-modal__products-title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 32px;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  color: #004547;
  margin-bottom: 23px;
}
@media screen and (max-width: 1023px) {
  .inspect-modal__products-title {
    font-size: 26px;
  }
}

.inspect-modal__products-list {
  display: grid;
  grid-template-columns: 202px 202px;
  gap: 24px;
}
@media screen and (max-width: 1023px) {
  .inspect-modal__products-list {
    grid-template-columns: repeat(auto-fill, minmax(154px, 0.5fr));
    gap: 16px;
  }
}

.inspect-modal__product-item {
  position: relative;
}

.inspect-modal__product-img {
  width: 202px;
  height: 202px;
  border-radius: 4px;
  overflow: hidden;
  background-color: var(--product-bg-color, #edebeb);
  margin-bottom: 24px;
}
.inspect-modal__product-img img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 1023px) {
  .inspect-modal__product-img {
    width: auto;
    height: 164px;
    border-radius: 3px;
  }
}

.inspect-modal__product-info {
  display: flex;
  flex-direction: column;
  gap: 16px;
  color: #004547;
  letter-spacing: -0.01em;
}

.inspect-modal__product-name a {
  text-decoration: none;
  color: #004547;
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 16px;
  transition: opacity 0.3s ease;
}
.inspect-modal__product-name a::before {
  position: absolute;
  content: "";
  inset: 0;
}
.inspect-modal__product-name a:hover, .inspect-modal__product-name a:focus-visible {
  opacity: 0.7;
}

.inspect-modal__product-color {
  position: relative;
  font-size: 14px;
  display: grid;
  align-items: center;
  gap: 8px;
  grid-template-columns: 20px 1fr;
}
.inspect-modal__product-color::before {
  content: "";
  width: 20px;
  height: 20px;
  background-color: var(--product-bg-color, transparent);
  border-radius: 50%;
}

.inspect-modal__button {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 5.5px;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 48px;
  height: 48px;
  background-color: rgba(0, 69, 71, 0.8);
  transition: background-color 0.3s ease;
}
.inspect-modal__button:hover, .inspect-modal__button:focus-visible {
  background-color: #e5ff66;
}
.inspect-modal__button:hover .inspect-modal__icon, .inspect-modal__button:focus-visible .inspect-modal__icon {
  background-color: #004547;
}

.inspect-modal__icon {
  width: 32px;
  height: 25px;
  background-color: #ffffff;
  mask-image: url(/dist/images/inspect-icon-da834ff4b7ee05b4a9a3.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  transition: background-color 0.3s ease;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/accordion/scss/index.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.accordion {
  border-top: 1px solid #ccdada;
  color: #004547;
}
.accordion__title {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  padding: 25px 55px 25px 25px;
  border-bottom: 1px solid #ccdada;
  transition: background 0.3s ease, color 0.3s ease;
}
.accordion__title:hover {
  background: #f2f6f6;
}
.is-expanded > .accordion__title {
  background: #004547;
  color: #ffffff;
}
.is-expanded > .accordion__title:after {
  background: #ffffff;
}
.is-expanded > .accordion__content {
  border-bottom: 1px solid #ccdada;
}
.accordion__content-inner {
  padding: 24px;
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/hero/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.hero {
  padding: 0 24px;
  min-height: 164px;
  background: var(--bg-colour);
}
@media screen and (min-width: 768px) {
  .hero {
    padding: 0 50px;
    min-height: 330px;
  }
}
.hero.has-text-center {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.hero.has-text-center .container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.hero__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 56px;
  line-height: 0.8;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  padding: 24px 0;
  max-width: 625px;
  color: var(--font-colour);
}
@media screen and (min-width: 768px) {
  .hero__title {
    padding: 50px 0;
  }
}
@media screen and (min-width: 1024px) {
  .hero__title {
    font-size: 88px;
    line-height: 0.8;
  }
}
.hero.has-text-left .hero__title {
  text-align: left;
}
.hero.has-text-center .hero__title {
  text-align: center;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/hero-standard/scss/index.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.hero-standard {
  background: var(--bg-colour);
  min-height: 504px;
  position: relative;
  color: #ffffff;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .hero-standard {
    min-height: 460px;
  }
}
@media screen and (min-width: 768px) {
  .hero-standard--large-height {
    min-height: 670px;
  }
}
.hero-standard--full-sized {
  display: flex;
  color: #ffffff;
}
.hero-standard--half-sized {
  display: flex;
  flex-direction: column;
  color: var(--font-colour);
}
@media screen and (min-width: 768px) {
  .hero-standard--half-sized {
    flex-direction: row-reverse;
  }
}
.hero-standard__image {
  position: relative;
}
.hero-standard--full-sized .hero-standard__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.hero-standard--half-sized .hero-standard__image {
  animation: clip 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-standard--half-sized .hero-standard__image img {
  animation: scale 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-standard--half-sized .hero-standard__image .inspect-modal__button {
  animation: slide 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media screen and (min-width: 768px) {
  .hero-standard--half-sized .hero-standard__image {
    width: 50%;
  }
}
.hero-standard__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-standard__image .inspect-modal__button {
  z-index: 5;
}
.hero-standard__content {
  position: relative;
  z-index: 5;
}
.hero-standard--full-sized .hero-standard__content {
  width: 100%;
  margin-top: 48px;
  margin-bottom: 48px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hero-standard--half-sized .hero-standard__content {
  max-width: none !important;
  width: 100%;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .hero-standard--half-sized .hero-standard__content {
    width: 50%;
    padding-top: 55px;
    padding-bottom: 55px;
  }
}
@media screen and (min-width: 768px) {
  .hero-standard--half-sized .hero-standard__content-inner {
    max-width: 750px;
    margin-left: auto;
  }
}
.hero-standard__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 56px;
}
@media screen and (min-width: 1024px) {
  .hero-standard__title {
    font-size: 88px;
  }
}
.hero-standard__title {
  color: #ffffff;
  margin-bottom: 30px;
  opacity: 0;
}
.hero-standard__title.is-visible {
  opacity: 1;
}
.hero-standard__title span {
  display: block;
  animation: clipUp 1000ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-standard--half-sized .hero-standard__title {
  color: var(--font-color);
}
@media screen and (min-width: 768px) {
  .hero-standard--half-sized .hero-standard__title {
    max-width: 575px;
  }
}
.hero-standard__text {
  font-size: 16px;
  line-height: 1.6;
  animation: fadeIn 750ms linear;
}
@media screen and (min-width: 1024px) {
  .hero-standard__text {
    font-size: 18px;
    line-height: 1.6;
  }
}
@media screen and (min-width: 768px) {
  .hero-standard--half-sized .hero-standard__text {
    max-width: 575px;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes clip {
  0% {
    clip-path: inset(100% 0 0 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes scale {
  0% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes slide {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes clipUp {
  0% {
    clip-path: inset(0 0 100% 0);
    transform: translateY(100%);
  }
  100% {
    clip-path: inset(0 0 0 0);
    transform: translateY(0);
  }
}
/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/hero-big/scss/index.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.hero-big {
  position: relative;
}
@media screen and (min-width: 768px) {
  .hero-big {
    min-height: 670px;
  }
}
.hero-big .swiper-wrapper {
  align-items: stretch;
  flex-direction: row;
}
.hero-big__slide {
  height: auto;
  align-self: stretch;
  display: flex;
  align-items: stretch;
  justify-content: stretch;
}
.hero-big__slide > div {
  flex-grow: 1;
}
.hero-big__slide.swiper-slide-active {
  z-index: 10;
}
.hero-big__pagination {
  position: absolute;
  display: flex;
  flex-direction: row;
  gap: 15px;
  bottom: 0;
  color: #ffffff;
  z-index: 10;
  padding-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .hero-big__pagination {
    padding-bottom: 80px;
  }
}
.hero-big__pagination .swiper-pagination-bullet {
  position: relative;
  color: #ffffff;
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  width: 32px;
  height: 32px;
  line-height: 30px;
  text-align: center;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.2);
  overflow: visible;
  cursor: pointer;
}
.hero-big__pagination .swiper-pagination-bullet svg {
  --progress: 0;
  position: absolute;
  left: -2px;
  top: -2px;
  z-index: 10;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  stroke-width: 2px;
  stroke: #ffffff;
  fill: none;
  stroke-dashoffset: calc(113.3px * (1 - var(--progress)));
  stroke-dasharray: 113.3px;
  transform: rotate(-90deg);
}
.hero-big.without-autoplay .hero-big__pagination .swiper-pagination-bullet svg {
  stroke-dashoffset: 113.3px;
}
.hero-big.without-autoplay .hero-big__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active svg {
  stroke-dashoffset: 0;
}
@media screen and (min-width: 768px) {
  .hero-big__pagination .swiper-pagination-bullet {
    width: 40px;
    height: 40px;
    line-height: 37px;
  }
}
.hero-big .inspect-modal__button {
  z-index: 10;
}

.title-line {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 56px;
}
@media screen and (min-width: 1024px) {
  .title-line {
    font-size: 88px;
  }
}
.title-line {
  visibility: hidden;
  position: absolute;
}

.hero-item1 {
  position: relative;
  overflow: hidden;
  --font-colour: #ffffff;
}
.hero-item1--colour-white {
  --font-colour: #ffffff;
}
.hero-item1--colour-deep-teal {
  --font-colour: #004547;
}
@media screen and (min-width: 768px) {
  .hero-item1 {
    min-height: 670px;
  }
}
.hero-item1--transparent-overlay::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1;
}
.hero-item1__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  height: 213px;
  z-index: 0;
  animation: clip 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-item1__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  animation: scale 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media screen and (min-width: 768px) {
  .hero-item1__background {
    height: 100%;
    width: 75%;
  }
}
.hero-item1__content {
  color: var(--font-colour);
  position: relative;
  z-index: 3;
  padding-top: 265px;
}
@media screen and (min-width: 768px) {
  .hero-item1__content {
    height: 100%;
    padding-top: 0;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}
.hero-item1__image {
  position: absolute;
  top: 0;
  right: 0;
  width: 70%;
  animation: slide 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-item1__image img {
  display: block;
  width: 100%;
  height: 410px;
  object-fit: contain;
}
@media screen and (min-width: 768px) {
  .hero-item1__image {
    width: 45%;
    position: relative;
    margin-right: -50px;
  }
  .hero-item1__image img {
    height: auto;
    max-height: 589px;
  }
}
@media screen and (min-width: 1024px) {
  .hero-item1__image {
    margin-right: -75px;
  }
}
.hero-item1__text {
  padding-bottom: 87px;
}
@media screen and (min-width: 768px) {
  .hero-item1__text {
    padding-top: 87px;
    padding-left: 60px;
  }
}
.hero-item1__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 56px;
}
@media screen and (min-width: 1024px) {
  .hero-item1__title {
    font-size: 88px;
  }
}
.hero-item1__title {
  color: var(--font-colour);
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .hero-item1__title {
    max-width: 350px;
  }
}
.swiper-slide:first-child .hero-item1__title {
  opacity: 0;
}
.swiper-slide:first-child .hero-item1__title.is-visible {
  opacity: 1;
}
.hero-item1__title sup {
  font-size: 0.6em;
}
.hero-item1__title span {
  display: block;
  animation: clipUp 1000ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-item1__descr {
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.6;
  animation: fadeIn 750ms linear;
}
@media screen and (min-width: 1024px) {
  .hero-item1__descr {
    font-size: 18px;
    line-height: 1.6;
  }
}
.hero-item1__btn {
  animation: fadeIn 750ms linear;
}
.hero-item1 .inspect-modal__button {
  animation: slide 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes clip {
  0% {
    clip-path: inset(100% 0 0 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes scale {
  0% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes slide {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes clipUp {
  0% {
    clip-path: inset(0 0 100% 0);
    transform: translateY(100%);
  }
  100% {
    clip-path: inset(0 0 0 0);
    transform: translateY(0);
  }
}
.hero-item2 {
  background: var(--bg-colour, #004547);
  color: var(--font-colour, #ffffff);
}
@media screen and (min-width: 768px) {
  .hero-item2 {
    min-height: 670px;
  }
}
.hero-item2--transparent-overlay::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1;
}
.hero-item2__content {
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .hero-item2__content {
    height: 100%;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
  }
}
.hero-item2__image {
  width: 80%;
  margin: 0 -24px 45px auto;
  animation: clip 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media screen and (min-width: 768px) {
  .hero-item2__image {
    width: 60%;
    margin: 0;
    align-self: flex-start;
  }
}
.hero-item2__image img {
  width: 100%;
  object-fit: contain;
}
.hero-item2__text {
  width: 75%;
  min-width: 290px;
  padding-bottom: 87px;
}
@media screen and (min-width: 768px) {
  .hero-item2__text {
    width: auto;
    max-width: 460px;
    padding-top: 87px;
    padding-left: 60px;
  }
}
.hero-item2__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 56px;
}
@media screen and (min-width: 1024px) {
  .hero-item2__title {
    font-size: 88px;
  }
}
.hero-item2__title {
  color: var(--font-colour);
  margin-bottom: 30px;
}
.swiper-slide:first-child .hero-item2__title {
  opacity: 0;
}
.swiper-slide:first-child .hero-item2__title.is-visible {
  opacity: 1;
}
.hero-item2__title sup {
  font-size: 0.6em;
}
.hero-item2__title span {
  display: block;
  animation: clipUp 1000ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-item2__descr {
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.6;
  animation: fadeIn 750ms linear;
}
@media screen and (min-width: 1024px) {
  .hero-item2__descr {
    font-size: 18px;
    line-height: 1.6;
  }
}
.hero-item2__btn {
  animation: fadeIn 750ms linear;
}
.hero-item2 .inspect-modal__button {
  animation: slide 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes clip {
  0% {
    clip-path: inset(100% 0 0 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes slide {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes clipUp {
  0% {
    clip-path: inset(0 0 100% 0);
    transform: translateY(100%);
  }
  100% {
    clip-path: inset(0 0 0 0);
    transform: translateY(0);
  }
}
.hero-item3 {
  min-height: 620px;
  background: #004547;
}
@media screen and (min-width: 768px) {
  .hero-item3 {
    min-height: 670px;
  }
}
.hero-item3__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.hero-item3__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  animation: scaleOpacity 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-item3--transparent-overlay .hero-item3__background::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1;
}
.hero-item3__content {
  position: relative;
  height: 100%;
  text-align: center;
  padding-bottom: 87px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .hero-item3__content {
    padding-top: 87px;
    padding-left: 60px;
  }
}
.hero-item3__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 56px;
}
@media screen and (min-width: 1024px) {
  .hero-item3__title {
    font-size: 88px;
  }
}
.hero-item3__title {
  color: #ffffff;
  margin-bottom: 30px;
}
.swiper-slide:first-child .hero-item3__title {
  opacity: 0;
}
.swiper-slide:first-child .hero-item3__title.is-visible {
  opacity: 1;
}
.hero-item3__title sup {
  font-size: 0.6em;
}
.hero-item3__title span {
  display: block;
  animation: clipUp 1000ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.hero-item3__descr {
  margin-bottom: 30px;
  color: #ffffff;
  font-size: 16px;
  line-height: 1.6;
  animation: fadeIn 750ms linear;
}
@media screen and (min-width: 1024px) {
  .hero-item3__descr {
    font-size: 18px;
    line-height: 1.6;
  }
}
.hero-item3__btn {
  align-self: center;
  animation: fadeIn 750ms linear;
}
.hero-item3 .inspect-modal__button {
  animation: slide 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes scaleOpacity {
  0% {
    opacity: 0;
    transform: scale(1.2);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes slide {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes clipUp {
  0% {
    clip-path: inset(0 0 100% 0);
    transform: translateY(100%);
  }
  100% {
    clip-path: inset(0 0 0 0);
    transform: translateY(0);
  }
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/crumbs/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.crumbs {
  background: #f2f6f6;
  color: #004547;
  height: 48px;
}

.crumbs__list {
  display: flex;
  align-items: center;
  margin: 0;
}
.crumbs__list.mobile {
  display: none;
}
@media screen and (max-width: 1023px) {
  .crumbs__list.mobile {
    display: flex;
  }
}
.crumbs__list.desktop {
  display: flex;
}
@media screen and (max-width: 1023px) {
  .crumbs__list.desktop {
    display: none;
  }
}

.crumbs__item {
  position: relative;
  font-size: 14px;
}

.crumbs__link {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 14px;
}

.crumbs__link.link-underlined {
  display: block;
}

.crumbs__text {
  overflow: hidden;
  display: block; /* Fallback for non-webkit */
  display: -webkit-box;
  height: 14px; /* Fallback for non-webkit */
  font-size: 14px;
  line-height: 1;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.crumbs__item:not(:last-child) {
  padding-right: 24px;
}
.crumbs__item:not(:last-child)::after {
  content: "";
  position: absolute;
  width: 11px;
  height: 1px;
  transform: rotate(119.74deg);
  background-color: #004547;
  right: 8px;
  top: 50%;
}

.crumbs__container {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}

.crumbs__dropdown {
  display: none;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  box-shadow: 0px 12px 12px 0px rgba(0, 0, 0, 0.1490196078);
  z-index: 10;
  padding: 24px;
  background-color: #ffffff;
}
.crumbs__dropdown .crumbs__link {
  font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
@media screen and (min-width: 1024px) {
  .crumbs__dropdown {
    display: none;
  }
}

.crumbs__open-button {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  position: relative;
  width: 25px;
  height: 14px;
  border-radius: 44px;
  background-color: #ccdada;
  margin-right: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  flex-shrink: 0;
  transition: background-color 0.3s ease;
}
.crumbs__open-button span {
  flex-shrink: 0;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #004547;
  transition: background-color 0.3s ease;
}
.crumbs__open-button::after {
  content: "";
  position: absolute;
  width: 11px;
  height: 1px;
  transform: rotate(119.74deg);
  background-color: #004547;
  right: -16px;
  top: 50%;
}
@media screen and (min-width: 1024px) {
  .crumbs__open-button {
    display: none;
  }
}

@media screen and (max-width: 1023px) {
  .crumbs__container.open .crumbs__open-button {
    background-color: #004547;
  }
  .crumbs__container.open .crumbs__open-button span {
    background-color: #ffffff;
  }
  .crumbs__container.open .crumbs__dropdown {
    display: flex;
    align-items: center;
  }
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/cta-panel/scss/index.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.cta-panel__list {
  display: flex;
  gap: 32px;
}
@media screen and (max-width: 1023px) {
  .cta-panel__list {
    flex-direction: column;
  }
}

.cta-panel__item {
  --item-padding: 32px;
  flex-grow: 1;
  overflow: hidden;
  border-radius: 8px;
  aspect-ratio: 1.65;
  position: relative;
  padding: var(--item-padding);
  padding-bottom: 44px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media screen and (max-width: 1023px) {
  .cta-panel__item {
    --item-padding: 24px;
  }
}
.cta-panel__item::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(227.21deg, rgba(0, 0, 0, 0) 54.36%, rgba(0, 0, 0, 0.4) 100%);
  transition: background-color 0.3s ease;
}
.cta-panel__item:hover::after, .cta-panel__item:focus-within::after {
  background-color: rgba(0, 69, 71, 0.6);
}
.cta-panel__item:hover .cta-panel__img, .cta-panel__item:focus-within .cta-panel__img {
  transform: scale(1.1);
}
.cta-panel__item:hover .cta-panel__link::after, .cta-panel__item:focus-within .cta-panel__link::after {
  background-color: #e5ff66;
  background-position-x: 215%;
}

.cta-panel__img {
  position: absolute;
  inset: 0;
  z-index: 0;
  transition: transform 0.3s ease;
}
.cta-panel__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cta-panel__title {
  position: absolute;
  inset: 0;
  display: flex;
  z-index: 2;
}
.cta-panel__title > p {
  padding: var(--item-padding);
  align-self: end;
  box-sizing: content-box;
}

.cta-panel__text {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #ffffff;
  font-size: 48px;
  font-weight: 750;
  text-transform: uppercase;
  line-height: 0.72;
  letter-spacing: -0.01em;
  max-width: 240px;
}
@media screen and (max-width: 1023px) {
  .cta-panel__text {
    font-size: 40px;
    max-width: 223px;
  }
}

.cta-panel__link {
  padding: var(--item-padding);
  text-decoration: none;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: end;
}
.cta-panel__link:focus, .cta-panel__link:focus-visible {
  outline: none;
}
.cta-panel__link::after {
  flex-shrink: 0;
  content: "";
  width: 48px;
  height: 48px;
  background-color: #edebeb;
  border-radius: 50%;
  background-image: url(/dist/images/right-angle-ef7a9faaa3f76aed73a9.svg);
  background-repeat: repeat-x;
  background-position: center center;
  background-size: 30px 15px;
  transition: background-color, background-position 0.3s ease;
}

.cta-panel__header {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 72px;
  font-weight: 750;
  line-height: 0.72;
  letter-spacing: -0.01em;
  margin-bottom: 40px;
  text-transform: uppercase;
  color: #004547;
}
@media screen and (max-width: 1023px) {
  .cta-panel__header {
    font-size: 48px;
    margin-bottom: 32px;
  }
}

.cta-panel--x4 .cta-panel__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}
@media screen and (max-width: 1023px) {
  .cta-panel--x4 .cta-panel__list {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .cta-panel--x4 .cta-panel__item {
    width: 500px;
  }
}
@media screen and (max-width: 767px) {
  .cta-panel--x4 .cta-panel__item {
    aspect-ratio: 0.78;
  }
}
@media screen and (min-width: 1024px) {
  .cta-panel--x4 .cta-panel__item:nth-of-type(1) {
    grid-column: 1/3;
  }
  .cta-panel--x4 .cta-panel__item:nth-of-type(4) {
    grid-column: 2/-1;
  }
  .cta-panel--x4 .cta-panel__item:nth-of-type(1),
  .cta-panel--x4 .cta-panel__item:nth-of-type(4) {
    aspect-ratio: 2.64;
  }
  .cta-panel--x4 .cta-panel__item:nth-of-type(2),
  .cta-panel--x4 .cta-panel__item:nth-of-type(3) {
    aspect-ratio: 1.28;
  }
}
.cta-panel--x4 .cta-panel__pagination {
  --pagination-bg-color: rgba(0, 69, 71, 0.2);
  margin-top: 40px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: center;
}
.cta-panel--x4 .cta-panel__pagination > span {
  flex-basis: 40px;
  height: 6px;
  border-radius: 32px;
  background-color: var(--pagination-bg-color);
  transition: background-color 0.3s ease;
}
.cta-panel--x4 .cta-panel__pagination > span.swiper-pagination-bullet-active {
  background-color: #004547;
}
@media screen and (min-width: 1024px) {
  .cta-panel--x4 .cta-panel__pagination {
    display: none;
  }
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/cta-panel-x3/scss/index.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.cta-panel-x3 {
  text-align: center;
}
.cta-panel-x3__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 56px;
}
@media screen and (min-width: 1024px) {
  .cta-panel-x3__title {
    font-size: 64px;
  }
}
.cta-panel-x3__title {
  margin-bottom: 30px;
}
@media screen and (min-width: 1024px) {
  .cta-panel-x3__title {
    margin-bottom: 45px;
  }
}
.cta-panel-x3__list {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .cta-panel-x3__list {
    flex-direction: row;
    align-items: stretch;
  }
}
@media screen and (min-width: 1024px) {
  .cta-panel-x3__list {
    gap: 30px;
  }
}
.cta-panel-x3__item {
  width: 100%;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .cta-panel-x3__item {
    width: calc((100% - 40px) / 3);
  }
}
@media screen and (min-width: 1024px) {
  .cta-panel-x3__item {
    width: calc((100% - 60px) / 3);
  }
}
.cta-panel-x3__image {
  aspect-ratio: 2.87;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  overflow: hidden;
}
.cta-panel-x3__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cta-panel-x3__content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  border: 1px solid #e3e3e3;
  border-top: none;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  text-align: center;
  padding: 25px 15px 30px;
}
@media screen and (min-width: 768px) {
  .cta-panel-x3__content {
    padding: 35px 10px 45px;
  }
}
@media screen and (min-width: 1024px) {
  .cta-panel-x3__content {
    padding: 35px 25px 45px;
  }
}
.cta-panel-x3__item-title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 36px;
}
@media screen and (min-width: 1024px) {
  .cta-panel-x3__item-title {
    font-size: 48px;
  }
}
.cta-panel-x3__item-title {
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .cta-panel-x3__item-title {
    margin-bottom: 28px;
  }
}
.cta-panel-x3__description {
  flex-grow: 1;
  font-size: 16px;
  line-height: 1.6;
  max-width: 323px;
  color: #004547;
  margin: 0 auto;
}
.cta-panel-x3__btn {
  margin-top: 20px;
  align-self: center;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .cta-panel-x3__btn {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (min-width: 768px) {
  .cta-panel-x3__btn {
    margin-top: 25px;
  }
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/content-carousel/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.content-carousel {
  color: var(--font-colour);
  background: var(--bg-colour);
  height: 120px;
  overflow: hidden;
  transition: height 1s ease-in-out;
}
@media screen and (min-width: 768px) {
  .content-carousel {
    height: 205px;
  }
}
.content-carousel.is-visible > .container {
  transform: none;
}
@media screen and (max-width: 767px) {
  .content-carousel.is-visible > .container {
    transform: none;
  }
}
.content-carousel > .container {
  transform: translateY(calc(-100% + 205px));
  transition: transform 1s ease-in-out;
}
@media screen and (max-width: 767px) {
  .content-carousel > .container {
    padding-left: 0;
    padding-right: 0;
    transform: translateY(calc(-100% + 100px));
  }
}
.content-carousel__item {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .content-carousel__item {
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }
}
.content-carousel__image {
  position: relative;
  width: 100%;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: top;
}
@media screen and (min-width: 768px) {
  .content-carousel__image {
    width: 50%;
    margin: 0 0 57px;
    align-self: flex-start;
    transform: translateY(-130px);
    transition: transform 1s ease-in-out;
  }
  .content-carousel.is-visible .content-carousel__image {
    transform: none;
  }
}
.content-carousel__image.mask-bag {
  mask-image: url(/dist/images/bag-042ef6d419b6cbe30ee7.svg);
}
.content-carousel__image.mask-bucket {
  mask-image: url(/dist/images/bucket-e76ce6bbe80d00526748.svg);
}
.content-carousel__image img {
  max-width: 100%;
}
.content-carousel__content {
  padding: 40px 24px 35px;
}
@media screen and (min-width: 768px) {
  .content-carousel__content {
    width: 43%;
    padding-top: 60px;
    padding-bottom: 60px;
    padding-right: 75px;
    transform: translateY(-100px);
    transition: transform 1s ease-in-out;
  }
  .content-carousel.is-visible .content-carousel__content {
    transform: none;
  }
}
@media screen and (min-width: 768px) {
  .content-carousel__content-inner {
    max-width: 442px;
  }
}
.content-carousel__title {
  color: var(--font-colour);
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  text-transform: uppercase;
  font-size: 48px;
  letter-spacing: -0.01em;
  line-height: 0.8;
  margin-bottom: 25px;
}
@media screen and (min-width: 1024px) {
  .content-carousel__title {
    font-size: 72px;
    line-height: 0.8;
  }
}
.content-carousel__descr {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 30px;
}
.content-carousel__btn {
  margin-bottom: 22px;
}
.content-carousel__pagination {
  padding: 0 120px 57px;
  display: flex;
  flex-flow: row nowrap;
  gap: 7px;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .content-carousel__pagination {
    position: absolute;
    width: 100%;
    bottom: 0;
    z-index: 10;
  }
}
.content-carousel__pagination > span {
  display: block;
  height: 6px;
  border-radius: 3px;
  flex-basis: 40px;
  max-width: 40px;
  cursor: pointer;
  background: rgba(var(--dots-colour), 0.2);
}
.content-carousel__pagination > span.swiper-pagination-bullet-active {
  background: var(--current-dot-colour);
}
.content-carousel__next.button, .content-carousel__prev.button {
  position: absolute;
  z-index: 10;
  bottom: 35px;
  left: 58px;
}
@media screen and (min-width: 768px) {
  .content-carousel__next.button, .content-carousel__prev.button {
    top: 50%;
    transform: translateY(-50%);
    bottom: 50%;
  }
}
.content-carousel.has-theme-deep-teal .content-carousel__next.button, .content-carousel.has-theme-deep-teal .content-carousel__prev.button {
  border: 2px solid rgba(255, 255, 255, 0.3);
  --arrow-color: #ffffff;
  transition: border-color 0.3s ease;
}
.content-carousel.has-theme-deep-teal .content-carousel__next.button:hover, .content-carousel.has-theme-deep-teal .content-carousel__prev.button:hover {
  background: transparent;
  border-color: #ffffff;
}
.content-carousel.has-theme-stone .content-carousel__next.button, .content-carousel.has-theme-bright-teal .content-carousel__next.button, .content-carousel.has-theme-violet .content-carousel__next.button, .content-carousel.has-theme-stone .content-carousel__prev.button, .content-carousel.has-theme-bright-teal .content-carousel__prev.button, .content-carousel.has-theme-violet .content-carousel__prev.button {
  background: transparent;
  border: 2px solid rgba(0, 69, 71, 0.2);
}
.content-carousel.has-theme-stone .content-carousel__next.button:hover, .content-carousel.has-theme-stone .content-carousel__next.button:focus-visible, .content-carousel.has-theme-bright-teal .content-carousel__next.button:hover, .content-carousel.has-theme-bright-teal .content-carousel__next.button:focus-visible, .content-carousel.has-theme-violet .content-carousel__next.button:hover, .content-carousel.has-theme-violet .content-carousel__next.button:focus-visible, .content-carousel.has-theme-stone .content-carousel__prev.button:hover, .content-carousel.has-theme-stone .content-carousel__prev.button:focus-visible, .content-carousel.has-theme-bright-teal .content-carousel__prev.button:hover, .content-carousel.has-theme-bright-teal .content-carousel__prev.button:focus-visible, .content-carousel.has-theme-violet .content-carousel__prev.button:hover, .content-carousel.has-theme-violet .content-carousel__prev.button:focus-visible {
  border: 2px solid #004547;
}
.content-carousel.is-single .content-carousel__next.button, .content-carousel.is-single .content-carousel__prev.button {
  display: none;
}
.content-carousel__next.button.swiper-button-disabled, .content-carousel__prev.button.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.4;
}
.content-carousel__next.button {
  left: auto;
  right: 58px;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/we-recommend/scss/index.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.we-recommend {
  color: #ffffff;
  background: #004547;
  overflow-y: hidden;
}
@media screen and (max-width: 767px) {
  .we-recommend > .container {
    padding-left: 0;
    padding-right: 0;
  }
}
.we-recommend__title {
  color: #e5ff66;
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  text-transform: uppercase;
  font-size: 56px;
  letter-spacing: -0.01em;
  line-height: 0.8;
  padding: 25px 24px 0;
}
@media screen and (min-width: 768px) {
  .we-recommend__title {
    padding: 50px 50px 0;
  }
}
@media screen and (min-width: 1024px) {
  .we-recommend__title {
    font-size: 144px;
    line-height: 0.8;
  }
}
.we-recommend__carousel {
  overflow-y: visible;
  overflow-x: clip;
}
.we-recommend__item {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .we-recommend__item {
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }
}
.we-recommend__item.swiper-slide-active {
  z-index: 5;
}
.we-recommend__image {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .we-recommend__image {
    width: 50%;
    margin: 0 0 57px;
    overflow: visible;
  }
}
.we-recommend__image img {
  display: block;
  margin: 0 auto;
  max-height: 565px;
  max-width: 100%;
  opacity: 0;
}
.swiper-slide-active .we-recommend__image img, .swiper-slide-visible .we-recommend__image img, .swiper-slide-next .we-recommend__image img, .swiper-slide-prev .we-recommend__image img, .is-single .we-recommend__image img {
  opacity: 1;
}
.swiper-slide-next .we-recommend__image img {
  transform: translate(300%, 20%);
}
.swiper-slide-prev .we-recommend__image img {
  transform: translate(-300%, -20%);
}
.we-recommend__content {
  padding: 0 24px 35px;
  opacity: 0;
}
.swiper-slide-active .we-recommend__content, .is-single .we-recommend__content {
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .we-recommend__content {
    width: 50%;
    padding-right: 48px;
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 1024px) {
  .we-recommend__content {
    width: 43%;
    padding-right: 75px;
  }
}
@media screen and (min-width: 768px) {
  .we-recommend__content-inner {
    max-width: 442px;
  }
}
.we-recommend__product-title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .we-recommend__product-title {
    font-size: 64px;
  }
}
.we-recommend__product-title {
  color: #ffffff;
  margin-bottom: 25px;
}
.we-recommend__features {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 30px;
}
.we-recommend__features li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 25px;
}
.we-recommend__features li:before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  top: 2px;
  width: 25px;
  height: 15px;
  background: #e5ff66;
  mask-image: url(/dist/images/tick-icon-6332aa91e0b639aad024.svg);
  mask-repeat: no-repeat;
  mask-size: 15px 19px;
  mask-position: 0 0;
}
@media screen and (min-width: 768px) {
  .we-recommend__features li:before {
    height: 17px;
    mask-size: 17px 20px;
  }
}
.we-recommend__btn {
  margin-bottom: 22px;
}
.we-recommend__pagination {
  padding: 0 120px 57px;
  display: flex;
  flex-flow: row nowrap;
  gap: 7px;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .we-recommend__pagination {
    position: absolute;
    width: 100%;
    bottom: 0;
    z-index: 10;
  }
}
.we-recommend__pagination > span {
  display: block;
  height: 6px;
  border-radius: 3px;
  flex-basis: 40px;
  max-width: 40px;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.2);
}
.we-recommend__pagination > span.swiper-pagination-bullet-active {
  background: #e5ff66;
}
.we-recommend__next, .we-recommend__prev {
  position: absolute;
  z-index: 10;
  bottom: 35px;
  left: 58px;
}
@media screen and (min-width: 768px) {
  .we-recommend__next, .we-recommend__prev {
    top: 50%;
    transform: translateY(-50%);
    bottom: 50%;
    left: 0;
  }
}
@media screen and (min-width: 1024px) {
  .we-recommend__next, .we-recommend__prev {
    left: 58px;
  }
}
.we-recommend.is-single .we-recommend__next, .we-recommend.is-single .we-recommend__prev {
  display: none;
}
.we-recommend__next.swiper-button-disabled, .we-recommend__prev.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.4;
}
.we-recommend__next {
  left: auto;
  right: 58px;
}
@media screen and (min-width: 768px) {
  .we-recommend__next {
    left: auto;
    right: 0;
  }
}
@media screen and (min-width: 1024px) {
  .we-recommend__next {
    left: auto;
    right: 58px;
  }
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/quick-links/scss/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.quick-links {
  max-width: 1055px;
  margin: 0 auto;
  padding: 43px;
  padding-left: 54px;
  border-radius: 8px;
  background-color: #edebeb;
  width: calc(100vw - 48px);
}
@media screen and (max-width: 767px) {
  .quick-links {
    padding: 32px 20px 36px 24px;
  }
}

.quick-links__list {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .quick-links__list {
    column-gap: 38px;
  }
}
@media screen and (max-width: 767px) {
  .quick-links__list a {
    font-size: 14px;
  }
}

.quick-links__item {
  flex-grow: 1;
  flex-basis: calc(30% - 28px);
}
.quick-links__item .link-underlined {
  white-space: normal;
}
@media screen and (max-width: 767px) {
  .quick-links__item {
    flex-basis: calc(50% - 38px);
  }
  .quick-links__item .link-underlined:after, .quick-links__item .link-underlined:before {
    display: none;
  }
  .quick-links__item .link-underlined {
    text-decoration: underline;
    text-decoration-color: rgba(0, 69, 71, 0.3);
  }
  .quick-links__item .link-underlined:hover, .quick-links__item .link-underlined:focus, .quick-links__item .link-underlined:active {
    text-decoration-color: #004547;
  }
}

@media screen and (min-width: 768px) {
  .quick-links__text {
    overflow: hidden;
    display: block; /* Fallback for non-webkit */
    display: -webkit-box;
    height: 16px; /* Fallback for non-webkit */
    font-size: 16px;
    line-height: 1;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
  }
}
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/intro-area/scss/index.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.intro-area {
  color: #004547;
}
.intro-area__inner {
  padding: 0 24px;
  background: #adb5ff;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .intro-area__inner {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: stretch;
    gap: 6%;
  }
  .intro-area--image-False .intro-area__inner {
    justify-content: center;
  }
}
.intro-area__text {
  padding: 30px 0;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .intro-area__text {
    padding: 55px 12% 55px 0;
    width: calc(50% - 45px);
  }
  .intro-area--image-False .intro-area__text {
    text-align: center;
    width: 48%;
    min-width: 600px;
    padding-right: 0;
  }
}
.intro-area__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 56px;
  line-height: 0.8;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  padding: 0 0 24px;
  color: #004547;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .intro-area__title {
    padding: 0 0 30px;
  }
  .intro-area--image-False .intro-area__title {
    text-align: center;
  }
}
@media screen and (min-width: 1024px) {
  .intro-area__title {
    font-size: 64px;
    line-height: 0.8;
  }
}
.intro-area__description {
  font-size: 16px;
  line-height: 1.6;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .intro-area--image-False .intro-area__description {
    text-align: center;
  }
}
.intro-area__picture img {
  width: 68%;
}
@media screen and (min-width: 768px) {
  .intro-area__picture {
    width: calc(50% - 45px);
    position: relative;
  }
  .intro-area__picture picture {
    position: absolute;
    width: auto;
    max-width: 86%;
    bottom: 0;
    top: -27px;
    left: 14%;
  }
  .intro-area__picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: 0 100%;
  }
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/promo-panel/scss/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.promo-panel__wrapper {
  background-color: var(--bg-colour);
}

.promo-panel {
  --item-gap: 32px;
  --vertical-paddings: 40px;
  --side-paddings: 23px;
  max-width: 1700px;
  margin: 0 auto;
  padding: var(--vertical-paddings) var(--side-paddings);
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 25px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .promo-panel {
    padding-top: 0;
    flex-direction: column;
    gap: 40px;
  }
}
@media screen and (min-width: 1024px) {
  .promo-panel {
    --side-paddings: 50px;
  }
}
@media screen and (min-width: 1366px) {
  .promo-panel {
    --side-paddings: 186px;
  }
}
.promo-panel.mask-bag, .promo-panel.mask-bucket {
  justify-content: start;
  column-gap: 8vw;
  --side-paddings: 0;
  --item-gap: 40px;
}
.promo-panel.mask-bag .promo-panel__image, .promo-panel.mask-bucket .promo-panel__image {
  align-self: flex-start;
  flex-shrink: 0;
  margin-top: calc(-1 * var(--vertical-paddings));
}
.promo-panel.mask-bag .promo-panel__image img, .promo-panel.mask-bucket .promo-panel__image img {
  height: auto;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .promo-panel.mask-bag .promo-panel__image, .promo-panel.mask-bucket .promo-panel__image {
    width: 97%;
    height: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .promo-panel.mask-bag .promo-panel__image, .promo-panel.mask-bucket .promo-panel__image {
    width: 452px;
    height: 467px;
  }
}
@media screen and (min-width: 1024px) {
  .promo-panel.mask-bag .promo-panel__image, .promo-panel.mask-bucket .promo-panel__image {
    width: 678px;
    height: 640px;
  }
}
@media screen and (max-width: 767px) {
  .promo-panel.mask-bag .promo-panel__title, .promo-panel.mask-bucket .promo-panel__title {
    max-width: 80%;
  }
}
.promo-panel.mask-bag .promo-panel__cta-wrapper, .promo-panel.mask-bucket .promo-panel__cta-wrapper {
  max-width: 432px;
}
@media screen and (max-width: 767px) {
  .promo-panel.mask-bag, .promo-panel.mask-bucket {
    --item-gap: 32px;
    --side-paddings: 25px;
    gap: 15px;
    padding-bottom: 64px;
  }
}
@media screen and (min-width: 1024px) {
  .promo-panel.mask-bag, .promo-panel.mask-bucket {
    --side-paddings: 25px;
  }
}
@media screen and (min-width: 1366px) {
  .promo-panel.mask-bag, .promo-panel.mask-bucket {
    --side-paddings: 100px;
  }
}
@media screen and (min-width: 1500px) {
  .promo-panel.mask-bag, .promo-panel.mask-bucket {
    --side-paddings: 170px;
  }
}
.promo-panel.left .promo-panel__image {
  order: 0;
}
.promo-panel.left .promo-panel__cta-wrapper {
  order: 1;
}
@media screen and (max-width: 767px) {
  .promo-panel .promo-panel__image {
    width: 345px;
    height: 217px;
    order: 0;
    align-self: end;
    margin-right: calc(-1 * var(--vertical-paddings));
  }
  .promo-panel .promo-panel__cta-wrapper {
    order: 0;
    align-self: start;
  }
}
.promo-panel.mask-bag .promo-panel__image {
  mask-image: url(/dist/images/bag-042ef6d419b6cbe30ee7.svg);
}
.promo-panel.mask-bucket .promo-panel__image {
  mask-image: url(/dist/images/bucket-e76ce6bbe80d00526748.svg);
}
.promo-panel.mask- .promo-panel__image img {
  width: 100%;
  object-fit: contain;
  object-position: 50% 0;
}

.promo-panel__title,
.promo-panel__desc {
  color: var(--font-colour) !important;
}

.promo-panel__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .promo-panel__title {
    font-size: 72px;
  }
}
.promo-panel__title {
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .promo-panel__title {
    max-width: 62%;
  }
}

.promo-panel__desc {
  font-family: Gotham-light, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 16px;
  font-weight: 325;
  line-height: 1.6;
  letter-spacing: -0.01em;
}
@media screen and (max-width: 767px) {
  .promo-panel__desc {
    max-width: 82%;
  }
}

.promo-panel__image {
  order: 1;
  width: 553px;
  height: 348px;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: top;
  overflow: hidden;
}
.promo-panel__image img {
  max-width: 100%;
  height: 100%;
  object-fit: cover;
}

.promo-panel__cta-wrapper {
  order: 0;
  max-width: 462px;
  display: flex;
  gap: var(--item-gap);
  flex-direction: column;
}

.promo-panel__cta {
  --cta-bg-color: #e5ff66;
  --cta-text-color: #004547;
  max-width: max-content;
  background-color: var(--cta-bg-color);
  color: var(--cta-text-color);
}
.promo-panel__cta::before {
  background-color: var(--cta-text-color);
}

.has-theme-bright-teal .promo-panel__cta {
  --cta-bg-color: #004547;
  --cta-text-color: #ffffff;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/image-gallery/scss/index.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.image-gallery__image {
  position: relative;
}
.image-gallery__image img {
  width: 100%;
}
.image-gallery__description {
  color: #004547;
  font-family: Gotham-light, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 14px;
  letter-spacing: -0.01em;
  padding: 11px 16px;
  margin-top: 16px;
  border-left: 4px solid #e5ff66;
  vertical-align: middle;
}
.image-gallery__pagination {
  padding: 56px 120px 22px;
  display: flex;
  flex-flow: row nowrap;
  gap: 7px;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .image-gallery__pagination {
    position: absolute;
    width: 172px;
    left: 50%;
    transform: translateX(-50%);
    bottom: 116px;
    padding: 0;
    z-index: 10;
  }
}
.image-gallery__pagination > span {
  display: block;
  height: 6px;
  border-radius: 3px;
  flex-basis: 40px;
  max-width: 40px;
  cursor: pointer;
  background: rgba(0, 69, 71, 0.2);
}
.image-gallery__pagination > span.swiper-pagination-bullet-active {
  background: #004547;
}
@media screen and (min-width: 768px) {
  .image-gallery__pagination > span {
    background: rgba(255, 255, 255, 0.3);
  }
  .image-gallery__pagination > span.swiper-pagination-bullet-active {
    background: #e5ff66;
  }
}
.image-gallery__next.button, .image-gallery__prev.button {
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 58px;
}
@media screen and (max-width: 767px) {
  .image-gallery__next.button, .image-gallery__prev.button {
    background: transparent;
    border: 2px solid rgba(0, 69, 71, 0.2);
  }
  .image-gallery__next.button:hover, .image-gallery__next.button:focus-visible, .image-gallery__prev.button:hover, .image-gallery__prev.button:focus-visible {
    border: 2px solid #004547;
  }
}
@media screen and (min-width: 768px) {
  .image-gallery__next.button, .image-gallery__prev.button {
    bottom: 96px;
    left: 50%;
    transform: translateX(-164px);
    border: none;
    background: #edebeb;
    --arrow-color: #004547;
  }
  .image-gallery__next.button:hover, .image-gallery__next.button:focus-visible, .image-gallery__prev.button:hover, .image-gallery__prev.button:focus-visible {
    background: #e5ff66;
  }
}
.image-gallery.is-single .image-gallery__next.button, .image-gallery.is-single .image-gallery__prev.button {
  display: none;
}
.has-blocked-buttons .image-gallery__next.button, .has-blocked-buttons .image-gallery__prev.button {
  pointer-events: none;
}
.image-gallery__next.button.swiper-button-disabled, .image-gallery__prev.button.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.4;
}
.image-gallery__next.button {
  left: auto;
  right: 58px;
}
@media screen and (min-width: 768px) {
  .image-gallery__next.button {
    left: 50%;
    right: auto;
    transform: translateX(116px);
  }
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/related-products/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.related-products__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 40px;
}
@media screen and (min-width: 1024px) {
  .related-products__title {
    font-size: 48px;
  }
}
.related-products__title {
  margin-bottom: 25px;
}
@media screen and (min-width: 1024px) {
  .related-products__title {
    margin-bottom: 35px;
  }
}
.related-products__image {
  position: relative;
  background: #edebeb;
  border-radius: 8px;
  aspect-ratio: 1;
  overflow: hidden;
  margin-bottom: 20px;
}
.related-products__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.related-products__image-link {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
  background: rgba(0, 69, 71, 0.6);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.related-products__image:hover .related-products__image-link {
  opacity: 1;
  pointer-events: auto;
  text-decoration: none;
}
.related-products__content {
  padding-bottom: 5px;
}
.related-products__product-title {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 16px;
  margin-bottom: 8px;
  font-weight: 700;
  color: #004547;
}
@media screen and (min-width: 1024px) {
  .related-products__product-title {
    font-size: 18px;
  }
}
.related-products__link {
  font-size: 16px;
}
.related-products__pagination {
  padding: 58px 50px 0;
  display: flex;
  flex-flow: row nowrap;
  gap: 7px;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .related-products__pagination {
    display: none;
  }
}
.related-products__pagination > span {
  display: block;
  height: 6px;
  border-radius: 3px;
  flex-basis: 40px;
  max-width: 40px;
  cursor: pointer;
  background: rgba(0, 69, 71, 0.2);
}
.related-products__pagination > span.swiper-pagination-bullet-active {
  background: #004547;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/promo-video/scss/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.promo-video__wrapper {
  background-color: #adb5ff;
}

.promo-video {
  max-width: 1700px;
  margin: 0 auto;
  padding: 62px var(--side-paddings);
  color: #004547;
  display: flex;
  justify-content: space-between;
  column-gap: 25px;
}
@media screen and (max-width: 1023px) {
  .promo-video {
    padding: 48px 24px 50px 24px;
    flex-direction: column;
    gap: 40px;
  }
}
@media screen and (min-width: 1024px) {
  .promo-video {
    --side-paddings: 50px;
  }
}
@media screen and (min-width: 1280px) {
  .promo-video {
    --side-paddings: 100px;
  }
}
@media screen and (min-width: 1500px) {
  .promo-video {
    --side-paddings: 186px;
  }
}

.promo-video__text-wrapper {
  max-width: 387px;
}
@media screen and (max-width: 1023px) {
  .promo-video__text-wrapper {
    max-width: 345px;
  }
}

.promo-video__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .promo-video__title {
    font-size: 72px;
  }
}

.promo-video__desc {
  font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: -0.01em;
  margin-top: 32px;
}

.promo-video__image {
  aspect-ratio: 16/9;
  position: relative;
  max-width: 707px;
  min-width: 62%;
  cursor: pointer;
}
.promo-video__image:hover .promo-video__button {
  background-color: #e5ff66;
}
.promo-video__image:hover .promo-video__button .promo-video__icon {
  stroke: #004547;
}
.promo-video__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 1023px) {
  .promo-video__image {
    margin: 0 auto;
  }
}

.promo-video__button {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 48px;
  height: 48px;
  background-color: #004547;
  transition: background-color 0.3s ease;
}
.promo-video__button:hover, .promo-video__button:focus-visible {
  background-color: #e5ff66;
}
.promo-video__button:hover .promo-video__icon, .promo-video__button:focus-visible .promo-video__icon {
  stroke: #004547;
}

.promo-video__icon {
  width: 32px;
  height: 25px;
  stroke: #ffffff;
  stroke-width: 2px;
  transition: stroke 0.3s ease;
}

.promo-video__modal-media {
  position: relative;
  z-index: 1;
  height: calc(var(--full-size-vh) * 0.8);
  width: calc(100vw - 48px);
  max-width: 1114px;
  max-height: 626px;
  aspect-ratio: 16/9;
}
.promo-video__modal-media iframe {
  border: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/testimonial/scss/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
@media screen and (min-width: 768px) {
  .testimonial {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    gap: 30px;
  }
}
@media screen and (min-width: 1024px) {
  .testimonial {
    gap: 40px;
  }
}
.testimonial__picture {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 1;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .testimonial__picture {
    width: 345px;
    min-width: 345px;
    margin: 0;
  }
}
.testimonial__text {
  position: relative;
  flex-grow: 1;
  padding-left: 32px;
  color: #004547;
}
.testimonial__text::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 9px;
  height: 100%;
  background: #e5ff66;
}
.testimonial__quote {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .testimonial__quote {
    font-size: 64px;
  }
}
.testimonial__author {
  margin-top: 25px;
  font-size: 16px;
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/loader/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.loader {
  display: block;
  position: relative;
  --loader-size: 64px;
  --loader-color: #004547;
  --loader-line-width: calc(var(--loader-size) / 8);
  width: var(--loader-size);
  height: var(--loader-size);
}

.loader div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: var(--loader-size);
  height: var(--loader-size);
  border: var(--loader-line-width) solid var(--loader-color);
  border-radius: 50%;
  animation: loader 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: var(--loader-color) transparent transparent transparent;
}

.loader div:nth-child(1) {
  animation-delay: -0.45s;
}

.loader div:nth-child(2) {
  animation-delay: -0.3s;
}

.loader div:nth-child(3) {
  animation-delay: -0.15s;
}

@keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.loader--hidden {
  display: none;
}
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/image-with-text/scss/index.scss ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.image-with-text {
  color: #004547;
}
@media screen and (min-width: 768px) {
  .image-with-text {
    display: flex;
    flex-direction: row-reverse;
    gap: 40px;
  }
  .image-with-text.image-with-text--image-left {
    flex-direction: row;
  }
}
@media screen and (min-width: 1024px) {
  .image-with-text {
    gap: 78px;
  }
}
.image-with-text__image {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .image-with-text__image {
    width: 60%;
    min-width: 60%;
    margin-bottom: 0;
  }
}
.image-with-text__image img {
  width: 100%;
}
.image-with-text__image-wrapper {
  position: relative;
}
.image-with-text__image-description {
  position: relative;
  margin-top: 18px;
  font-size: 14px;
  padding: 8px 0 8px 19px;
}
.image-with-text__image-description::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 4px;
  height: 100%;
  background: #e5ff66;
}
.image-with-text__title {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #004547;
  font-size: 20px;
  letter-spacing: -0.01em;
  line-height: 1.3;
  margin-bottom: 20px;
}
@media screen and (min-width: 1024px) {
  .image-with-text__title {
    font-size: 28px;
    line-height: 1.3;
  }
}
.image-with-text__description p {
  font-size: 16px;
  line-height: 1.6;
}
.image-with-text__description p + p {
  margin-top: 20px;
}
.image-with-text__btn {
  margin-top: 20px;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/image-with-text-columns/scss/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.image-with-text-columns {
  color: #004547;
}
@media screen and (min-width: 768px) {
  .image-with-text-columns {
    display: flex;
    flex-direction: row;
    gap: 20px;
  }
}
@media screen and (min-width: 1024px) {
  .image-with-text-columns {
    gap: 32px;
  }
}
.image-with-text-columns__item {
  margin-bottom: 40px;
}
.image-with-text-columns__item:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .image-with-text-columns__item {
    flex-grow: 1;
    flex-basis: 0;
    margin-bottom: 0;
  }
}
.image-with-text-columns__image {
  position: relative;
  margin-bottom: 35px;
  aspect-ratio: 1.6;
}
.image-with-text-columns__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.image-with-text-columns__title {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #004547;
  font-size: 20px;
  letter-spacing: -0.01em;
  line-height: 1.3;
  margin-bottom: 20px;
}
@media screen and (min-width: 1024px) {
  .image-with-text-columns__title {
    font-size: 28px;
    line-height: 1.3;
  }
}
.image-with-text-columns__descr p {
  font-size: 16px;
  line-height: 1.6;
}
.image-with-text-columns__descr p + p {
  margin-top: 20px;
}
.image-with-text-columns__btn {
  margin-top: 30px;
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/image-with-structured-text/scss/index.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.image-with-structured-text {
  color: #004547;
}
@media screen and (min-width: 768px) {
  .image-with-structured-text {
    display: flex;
    flex-direction: row;
  }
  .image-with-structured-text--image-right {
    flex-direction: row-reverse;
  }
}
.image-with-structured-text__picture {
  position: relative;
  margin-bottom: 30px;
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 1.55;
}
@media screen and (min-width: 768px) {
  .image-with-structured-text__picture {
    width: 50%;
    min-width: 50%;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1024px) {
  .image-with-structured-text__picture {
    width: 64%;
    min-width: 64%;
  }
}
.image-with-structured-text__picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.image-with-structured-text--image-left .image-with-structured-text__picture .inspect-modal__button {
  left: 0;
  right: 0;
}
@media screen and (min-width: 768px) {
  .image-with-structured-text__content {
    position: relative;
    margin-top: 96px;
    padding: 70px 40px;
    flex-grow: 1;
    z-index: 5;
  }
  .image-with-structured-text__content:before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    left: -72px;
    right: 0;
    width: auto;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    z-index: -1;
  }
  .image-with-structured-text--image-right .image-with-structured-text__content:before {
    left: 0;
    right: -72px;
  }
}
@media screen and (min-width: 1024px) {
  .image-with-structured-text__content {
    padding: 88px 63px;
  }
}
.image-with-structured-text__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .image-with-structured-text__title {
    font-size: 64px;
  }
}
.image-with-structured-text__title {
  color: #004547;
  margin-bottom: 30px;
}
.image-with-structured-text__description {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 30px;
}
.image-with-structured-text__list {
  column-count: 2;
  margin-bottom: 35px;
}
.image-with-structured-text__list-item {
  font-size: 16px;
}
.image-with-structured-text__list-item > .link-underlined {
  margin-bottom: 10px;
}
.image-with-structured-text__btn {
  white-space: nowrap;
}
/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/image-with-text-grid/scss/index.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.image-with-text-grid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 20px;
}
@media screen and (min-width: 1024px) {
  .image-with-text-grid {
    gap: 30px;
  }
}
.image-with-text-grid__item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .image-with-text-grid__item {
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 1024px) {
  .image-with-text-grid__item {
    width: calc(50% - 15px);
  }
}
.image-with-text-grid__image {
  position: relative;
  aspect-ratio: 1.87;
  border-radius: 8px;
  margin-bottom: 30px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .image-with-text-grid__image {
    margin-bottom: 50px;
  }
}
.image-with-text-grid__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform 0.3s ease;
}
.image-with-text-grid__image:hover img {
  transform: scale(1.1);
}
.image-with-text-grid__image .inspect-modal__button,
.image-with-text-grid__image .inspect-modal__icon {
  transition: background 0.3s ease;
}
.image-with-text-grid__image:hover .inspect-modal__button {
  background: #e5ff66;
  z-index: 10;
}
.image-with-text-grid__image:hover .inspect-modal__icon {
  background: #004547;
}
.image-with-text-grid__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  font-size: 0;
  text-indent: -1000em;
}
.image-with-text-grid__link:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  transition: background 0.3s ease;
}
.image-with-text-grid__image:hover .image-with-text-grid__link:after {
  background: rgba(0, 69, 71, 0.6);
}
.image-with-text-grid__image:hover .image-with-text-grid__link:after {
  background: rgba(0, 69, 71, 0.6);
}
.image-with-text-grid__content {
  text-align: center;
}
.image-with-text-grid__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .image-with-text-grid__title {
    font-size: 64px;
  }
}
.image-with-text-grid__title {
  text-align: center;
}
.image-with-text-grid__descr {
  max-width: 420px;
  margin: 25px auto 0;
  color: #004547;
  font-size: 16px;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .image-with-text-grid__descr {
    font-size: 18px;
    line-height: 1.6;
  }
}
.image-with-text-grid__btn {
  margin: 30px 0;
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/embedded-video/scss/index.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.embedded-video {
  color: var(--font-colour);
  background-color: var(--bg-colour);
  padding-top: 72px;
  padding-bottom: 80px;
}
.embedded-video .container {
  max-width: 1290px;
}
.embedded-video__info {
  margin: 0 0 0 30%;
  width: 70%;
}
@media screen and (min-width: 768px) {
  .embedded-video__info {
    margin: 0 0 0 50%;
    width: 50%;
  }
}
.embedded-video__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .embedded-video__title {
    font-size: 72px;
  }
}
.embedded-video__title {
  margin-bottom: 32px;
  color: var(--font-colour);
  text-wrap: unset;
}
@media screen and (min-width: 1024px) {
  .embedded-video__title {
    margin-bottom: 40px;
  }
}
.embedded-video__description {
  font-size: 16px;
  line-height: 25.6px;
  letter-spacing: -0.01em;
}
.embedded-video__wrapper {
  position: relative;
  overflow: hidden;
  max-width: 920px;
  margin-bottom: 70px;
  border-radius: 8px;
}
.embedded-video__wrapper::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.3333333333%;
}
.embedded-video__wrapper.hide {
  display: none;
}
.embedded-video__image-wrapper {
  background-color: var(--font-colour);
}
.embedded-video__image-wrapper.hide {
  display: none;
}
.embedded-video__image-wrapper, .embedded-video__image, .embedded-video__player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.embedded-video__button {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: var(--bg-colour);
}
.embedded-video__button::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 48px;
  height: 48px;
  background-color: #004547;
}
@media screen and (min-width: 768px) {
  .embedded-video__button::before {
    width: 64px;
    height: 64px;
  }
}
.embedded-video__button .icon {
  position: absolute;
  bottom: 12px;
  left: 13px;
  width: 25px;
  height: 25px;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .embedded-video__button .icon {
    width: 34px;
    height: 34px;
    bottom: 15px;
    left: 16px;
  }
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/tabs/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.tabs-content {
  display: none;
}
.tabs-content.is-active {
  display: block;
}

.tabs-links {
  display: flex;
  justify-content: center;
  text-transform: uppercase;
  gap: 24px;
  margin-bottom: 27px;
}
@media screen and (min-width: 768px) {
  .tabs-links {
    margin-bottom: 40px;
  }
}
.tabs-links__item {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 40px;
  line-height: 30px;
  font-weight: 700;
  letter-spacing: -0.01em;
  opacity: 0.3;
  text-decoration: none;
  padding-bottom: 12px;
  display: block;
  position: relative;
  transition: opacity 0.3s ease;
}
.tabs-links__item::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid #004547;
  bottom: 0;
  left: 0;
  width: 0;
}
@media screen and (min-width: 1024px) {
  .tabs-links__item {
    font-size: 48px;
    line-height: 35px;
  }
}
.tabs-links__item.is-active, .tabs-links__item:hover {
  opacity: 1;
}
.tabs-links__item.is-active::after {
  width: 100%;
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/article-carousel/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.article-carousel__container {
  position: relative;
}
.article-carousel__controls.hidden {
  display: none;
}
@media screen and (min-width: 768px) {
  .article-carousel__controls {
    position: absolute;
    right: 0;
    top: -100px;
    display: flex;
    gap: 8px;
  }
}
@media screen and (max-width: 767px) {
  .article-carousel__controls {
    display: none;
  }
}
.article-carousel__carousel {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media screen and (min-width: 768px) {
  .article-carousel__carousel--mobile {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .article-carousel__carousel--desktop {
    display: none;
  }
}
.article-carousel__item {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .article-carousel__item:nth-child(n+4) {
    display: none;
  }
  .show-all .article-carousel__item:nth-child(n+4) {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .article-carousel__item {
    width: 345px;
  }
}
@media screen and (min-width: 1024px) {
  .article-carousel__item {
    width: 474px;
  }
}
.article-carousel__item::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background-color: transparent;
  transition: background-color 0.3s ease;
}
.article-carousel__item:hover::after, .article-carousel__item:focus-within::after {
  background-color: rgba(0, 69, 71, 0.6);
}
.article-carousel__item:hover .article-carousel__image, .article-carousel__item:focus-within .article-carousel__image {
  transform: scale(1.1);
}
.article-carousel__item:hover .article-carousel__info, .article-carousel__item:focus-within .article-carousel__info {
  opacity: 1;
}
.article-carousel__item:hover .article-carousel__button::after, .article-carousel__item:focus-within .article-carousel__button::after {
  background-color: #e5ff66;
  background-position-x: 215%;
}
.article-carousel__item:hover .article-carousel__content-inner, .article-carousel__item:focus-within .article-carousel__content-inner {
  transform: translateY(0);
}
.article-carousel__image {
  position: relative;
  transition: transform 0.3s ease;
}
.article-carousel__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
}
.article-carousel__image::after {
  content: "";
  display: block;
  padding-top: 100%;
  position: relative;
}
.article-carousel__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 27px 100px 27px 22px;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .article-carousel__content {
    padding: 37px 120px 37px 32px;
  }
}
@media screen and (min-width: 768px) {
  .article-carousel__content-inner {
    transform: translateY(40px);
    transition: transform 0.3s ease;
  }
}
.article-carousel__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 40px;
}
@media screen and (min-width: 1024px) {
  .article-carousel__title {
    font-size: 48px;
  }
}
.article-carousel__title {
  color: #ffffff;
}
.article-carousel__info {
  display: flex;
  color: #ffffff;
  margin-top: 17px;
}
@media screen and (min-width: 768px) {
  .article-carousel__info {
    opacity: 0;
    transition: opacity 0.3s ease;
  }
}
.article-carousel__info-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}
.article-carousel__info-item .icon {
  stroke: #ffffff;
  stroke-width: 2px;
}
.article-carousel__info-item:first-child {
  border-right: 1px solid rgba(255, 255, 255, 0.3);
  padding-right: 12px;
  margin-right: 12px;
}
.article-carousel__link {
  text-decoration: none;
}
.article-carousel__button:focus, .article-carousel__button:focus-visible {
  outline: none;
}
.article-carousel__button::after {
  content: "";
  position: absolute;
  right: 32px;
  bottom: 37px;
  width: 48px;
  height: 48px;
  background-color: #edebeb;
  border-radius: 50%;
  background-image: url(/dist/images/right-angle-ef7a9faaa3f76aed73a9.svg);
  background-repeat: repeat-x;
  background-position: center center;
  background-size: 30px 15px;
  transition: background-color, background-position 0.3s ease;
}
.article-carousel__next.button, .article-carousel__prev.button {
  background: transparent;
  border: 2px solid rgba(0, 69, 71, 0.2);
}
.article-carousel__next.button:hover, .article-carousel__next.button:focus-visible, .article-carousel__prev.button:hover, .article-carousel__prev.button:focus-visible {
  border: 2px solid #004547;
}
.article-carousel.is-single .article-carousel__next.button, .article-carousel.is-single .article-carousel__prev.button {
  display: none;
}
.article-carousel__next.button.swiper-button-disabled, .article-carousel__prev.button.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.4;
}
.article-carousel__see-more {
  position: relative;
  background-color: #ffffff;
  border: 2px solid #edebeb;
  width: max-content;
  color: #004547;
  transition: border-color 0.3s ease;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 24px 0 19px;
}
@media screen and (min-width: 768px) {
  .article-carousel__see-more {
    display: none;
  }
}
.article-carousel__see-more:hover, .article-carousel__see-more:focus-within {
  border: 2px solid #004547;
}
.article-carousel__see-more .icon {
  position: static;
  stroke: #004547;
  stroke-width: 2px;
  width: 24px;
  height: 24px;
  transform: translateY(0);
  flex-shrink: 0;
}
.article-carousel__link-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .article-carousel__link-wrapper {
    margin-top: 40px;
  }
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/colors-landing/scss/index.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.colors-landing__list {
  --item-width: 376px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(var(--item-width), 1fr));
  gap: 32px;
  margin-top: 56px;
}
@media screen and (max-width: 1023px) {
  .colors-landing__list {
    --item-width: 345px;
    gap: 24px;
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .colors-landing__list {
    --item-width: calc(100vw - 2 * 24px);
  }
}

.colors-landing__item {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #ccdada;
}

.colors-landing__title::before {
  display: none;
}
.colors-landing__title a {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 18px;
  letter-spacing: -0.01em;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 1px;
  width: fit-content;
}
.colors-landing__title a .colors-landing__underlined {
  height: 1px;
  width: 0;
  background: #004547;
  transition: width 0.3s ease;
}
.colors-landing__title a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}
.colors-landing__title a:hover, .colors-landing__title a:focus-visible {
  outline: none;
}
.colors-landing__title a:hover .colors-landing__underlined, .colors-landing__title a:focus-visible .colors-landing__underlined {
  width: 100%;
}

.colors-landing__media {
  aspect-ratio: 1.74;
}
@media screen and (max-width: 1023px) {
  .colors-landing__media {
    aspect-ratio: 2.18;
  }
}

.colors-landing__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.colors-landing__color-list {
  display: flex;
  height: 100%;
}
.colors-landing__color-list > span {
  flex-grow: 1;
}

.colors-landing__title-wrapper {
  padding: 24px;
  transition: background-color 0.3s ease;
  height: 100%;
}
.colors-landing__title-wrapper:focus-within, .colors-landing__title-wrapper:has(a:hover) {
  background-color: rgba(0, 69, 71, 0.05);
}

.colors-landing__availability {
  font-size: 14px;
  letter-spacing: -0.01em;
  color: #004547;
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/related-searches/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.related-searches {
  display: flex;
  gap: 32px;
  flex-direction: column;
}
@media screen and (min-width: 1280px) {
  .related-searches {
    flex-direction: row;
  }
}
.related-searches__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 48px;
}
@media screen and (min-width: 1024px) {
  .related-searches__title {
    font-size: 72px;
  }
}
@media screen and (min-width: 1280px) {
  .related-searches__title {
    flex-basis: 28%;
    flex-shrink: 0;
  }
}
@media screen and (max-width: 767px) {
  .related-searches__list {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
}
@media screen and (min-width: 768px) {
  .related-searches__list {
    display: grid;
    grid-gap: 32px;
    grid-template-columns: repeat(2, 1fr);
  }
}
.related-searches__item {
  position: relative;
  overflow: hidden;
  display: flex;
  border-radius: 8px;
  border: 1px solid #edebeb;
  text-decoration: none;
  height: 88px;
}
@media screen and (min-width: 1024px) {
  .related-searches__item {
    height: 129px;
  }
}
.related-searches__item:hover .related-searches__image img, .related-searches__item:focus-within .related-searches__image img {
  transform: scale(1.1);
}
.related-searches__item:hover .related-searches__content, .related-searches__item:focus-within .related-searches__content {
  background-color: #004547;
}
.related-searches__item:hover .related-searches__content::after, .related-searches__item:focus-within .related-searches__content::after {
  background-color: #e5ff66;
  background-position-x: 215%;
}
.related-searches__item:hover .related-searches__text, .related-searches__item:focus-within .related-searches__text {
  color: #ffffff;
}
.related-searches__image {
  position: relative;
  overflow: hidden;
  width: 35px;
  flex-shrink: 0;
}
@media screen and (min-width: 1024px) {
  .related-searches__image {
    width: 129px;
  }
}
.related-searches__image img {
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}
.related-searches__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  gap: 16px;
  width: 100%;
  transition: background-color 0.3s ease;
}
.related-searches__content::after {
  flex-shrink: 0;
  content: "";
  width: 48px;
  height: 48px;
  background-color: #edebeb;
  border-radius: 50%;
  background-image: url(/dist/images/right-angle-ef7a9faaa3f76aed73a9.svg);
  background-repeat: repeat-x;
  background-position: center center;
  background-size: 30px 15px;
  transition: background-color, background-position 0.3s ease;
}
.related-searches__text {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 26px;
}
@media screen and (min-width: 1024px) {
  .related-searches__text {
    font-size: 32px;
  }
}
.related-searches__text {
  transition: color 0.3s ease;
}
.related-searches__text span {
  color: #80a2a3;
}
/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/ugc-list/scss/index.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.ugc-list__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 40px;
}
@media screen and (min-width: 1024px) {
  .ugc-list__title {
    font-size: 48px;
  }
}
.ugc-list__title {
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .ugc-list__title {
    margin-bottom: 32px;
  }
}
.ugc-list__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
@media screen and (min-width: 768px) {
  .ugc-list__container {
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
  }
}
.ugc-list__item {
  border-radius: 8px;
  position: relative;
  overflow: hidden;
  aspect-ratio: 1;
  color: #ffffff;
}
.ugc-list__item::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background-color: transparent;
  transition: background-color 0.3s ease;
}
.ugc-list__item .inspect-modal__button {
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .ugc-list__item .inspect-modal__button {
    top: 0;
  }
}
.ugc-list__item:hover::after, .ugc-list__item:focus-within::after {
  background-color: rgba(0, 69, 71, 0.6);
}
.ugc-list__item:hover .ugc-list__image, .ugc-list__item:focus-within .ugc-list__image {
  transform: scale(1.1);
}
.ugc-list__item:hover .inspect-modal__button, .ugc-list__item:focus-within .inspect-modal__button {
  background-color: #e5ff66;
}
.ugc-list__item:hover .inspect-modal__icon, .ugc-list__item:focus-within .inspect-modal__icon {
  background-color: #004547;
}
.ugc-list__link {
  text-decoration: none;
  color: #ffffff;
}
.ugc-list__image {
  position: absolute;
  inset: 0;
  z-index: 0;
  transition: transform 0.3s ease;
}
.ugc-list__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ugc-list__content {
  position: relative;
  z-index: 2;
  padding: 15px 12px;
  display: flex;
  align-items: flex-end;
  height: 100%;
}
@media screen and (min-width: 1024px) {
  .ugc-list__content {
    padding: 28px 26px;
  }
}
.ugc-list__author {
  font-size: 10px;
  letter-spacing: -0.01em;
}
@media screen and (min-width: 1024px) {
  .ugc-list__author {
    font-size: 16px;
  }
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/message-modal/scss/index.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.message-modal {
  text-align: center;
  padding: 24px;
}
.message-modal__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 40px;
}
@media screen and (min-width: 1024px) {
  .message-modal__title {
    font-size: 48px;
  }
}
.message-modal__content {
  position: relative;
  overflow: auto;
  max-height: 100%;
  max-width: 750px;
  background-color: #ffffff;
  border-radius: 8px;
  padding: 95px 35px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}
@media screen and (min-width: 768px) {
  .message-modal__content {
    padding: 105px 95px;
  }
}
.message-modal__content .modal__close {
  position: absolute;
  right: 24px;
  top: 24px;
}
.message-modal__text {
  color: #004547;
  font-size: 16px;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/project-card/scss/index.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.project-card {
  border-radius: 8px;
  background: #004547;
  color: #ffffff;
  display: flex;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .project-card {
    padding: 40px 40px 0;
    min-height: 453px;
  }
}
@media screen and (max-width: 767px) {
  .project-card {
    flex-direction: column-reverse;
    padding: 37px 24px 0;
    justify-content: space-between;
  }
}
.project-card__image {
  flex-basis: 50%;
  flex-shrink: 1;
  flex-grow: 0;
  height: 356px;
  margin-top: auto;
  padding: 0;
  position: relative;
  position: relative;
}
.project-card__image > img, .project-card__image > video, .project-card__image > picture, .project-card__image > picture > img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.project-card__image > img, .project-card__image > video, .project-card__image > picture, .project-card__image > picture > img {
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .project-card__image {
    min-height: 142px;
    margin-top: 20px;
  }
}
.project-card__image img {
  object-position: bottom;
}
@media screen and (max-width: 767px) {
  .project-card__image img {
    object-position: left bottom;
  }
}
.project-card__text {
  flex-basis: 50%;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media screen and (min-width: 768px) {
  .project-card__text {
    padding: 12px 30px 60px;
    gap: 56px;
    max-width: 671px;
  }
}
.project-card__desc {
  font-size: 16px;
  line-height: 25.6px;
  letter-spacing: -0.01em;
}
@media screen and (min-width: 768px) {
  .project-card__desc {
    font-size: 18px;
    line-height: 28.8px;
  }
}
.project-card__title {
  font-size: 16px;
  line-height: 25.6px;
  letter-spacing: -0.01em;
  font-weight: 700;
  margin-bottom: 16px;
}
.project-card__icons {
  max-width: 237px;
  width: 100%;
}
.project-card__icon {
  height: 48px;
  line-height: 48px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}
.project-card__icon .icon {
  stroke: #ffffff;
}
.project-card__icon:first-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/hero-with-ctas/scss/index.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.hero-with-ctas {
  position: relative;
  min-height: 540px;
}
@media screen and (min-width: 1024px) {
  .hero-with-ctas {
    aspect-ratio: 2.4;
  }
}
.hero-with-ctas__image {
  position: relative;
}
.hero-with-ctas__image > img, .hero-with-ctas__image > video, .hero-with-ctas__image > picture, .hero-with-ctas__image > picture > img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.hero-with-ctas__image > img, .hero-with-ctas__image > video, .hero-with-ctas__image > picture, .hero-with-ctas__image > picture > img {
  object-fit: cover;
  object-position: center 33.3%;
}
.hero-with-ctas__image {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero-with-ctas__content {
  position: absolute;
  inset: 0;
  color: #ffffff;
  display: flex;
  gap: 22px;
  justify-content: center;
  flex-direction: column;
  padding: 20px;
  box-sizing: content-box;
  z-index: 5;
}
@media screen and (min-width: 768px) {
  .hero-with-ctas__content {
    padding: 120px;
    max-width: 70%;
    gap: 10px;
  }
}
.hero-with-ctas__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 80px;
}
@media screen and (min-width: 1024px) {
  .hero-with-ctas__title {
    font-size: 144px;
  }
}
.hero-with-ctas__title {
  color: #ffffff;
}
.hero-with-ctas__buttons {
  display: flex;
  gap: 16px;
  margin-top: 22px;
}
@media screen and (max-width: 767px) {
  .hero-with-ctas__buttons {
    margin-top: 10px;
    flex-direction: column;
    align-items: flex-start;
  }
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/product-carousel/scss/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.product-carousel {
  position: relative;
}
.product-carousel__header {
  display: flex;
  gap: 24px;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .product-carousel__header {
    flex-direction: column;
    gap: 16px;
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 768px) {
  .product-carousel__header {
    margin-bottom: 38px;
  }
}
.product-carousel__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 40px;
}
@media screen and (min-width: 1024px) {
  .product-carousel__title {
    font-size: 48px;
  }
}
.product-carousel__title {
  margin-bottom: 0;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .product-carousel__title {
    text-align: center;
  }
}
.product-carousel__select + div {
  width: 100%;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .product-carousel__select + div {
    max-width: 273px;
  }
}
.product-carousel__carousel {
  overflow: visible;
}
@media screen and (min-width: 768px) {
  .product-carousel__controls {
    position: absolute;
    right: 50px;
    top: 0;
    display: flex;
    gap: 8px;
    align-items: center;
  }
  .product-carousel__controls > a:first-child {
    margin-right: 18px;
  }
}
@media screen and (max-width: 767px) {
  .product-carousel__controls {
    display: none;
  }
}
@media screen and (max-width: 1023px) {
  .product-carousel__view-all {
    display: none;
  }
}
.product-carousel__item {
  width: 230px;
}
@media screen and (min-width: 768px) {
  .product-carousel__item {
    width: 363px;
  }
}
.product-carousel__image {
  background-color: #edebeb;
  border-radius: 8px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  aspect-ratio: 1;
  margin-bottom: 24px;
}
.product-carousel__content {
  padding-bottom: 5px;
}
.product-carousel__item-name {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 18px;
  line-height: 28.8px;
  letter-spacing: -0.01em;
  font-weight: 700;
  color: #004547;
  margin-bottom: 8px;
}
.product-carousel__next.button, .product-carousel__prev.button {
  background: transparent;
  border: 2px solid rgba(0, 69, 71, 0.2);
}
.product-carousel__next.button:hover, .product-carousel__next.button:focus-visible, .product-carousel__prev.button:hover, .product-carousel__prev.button:focus-visible {
  border: 2px solid #004547;
}
.product-carousel.is-single .product-carousel__next.button, .product-carousel.is-single .product-carousel__prev.button {
  display: none;
}
.product-carousel__next.button.swiper-button-disabled, .product-carousel__prev.button.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.4;
}
@media screen and (max-width: 1023px) {
  .product-carousel__link {
    display: flex;
    justify-content: center;
    margin-top: 44px;
  }
}
@media screen and (min-width: 1024px) {
  .product-carousel__link {
    display: none;
  }
}
.product-carousel__no-results {
  display: none;
  font-size: 18px;
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/search-suggestions/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.search-suggestions__content {
  padding: 24px 0 0;
  background-color: #ffffff;
  border-radius: 8px;
  height: calc(var(--vh, 1vh) * 62);
  min-height: calc(var(--vh, 1vh) * 30);
  display: flex;
  flex-direction: column;
  width: 90vw;
  max-width: 1056px;
}
.search-suggestions__content-empty {
  padding-bottom: 48px;
}
.search-suggestions__content .loader {
  --loader-size: 24px;
  margin: 0 auto 24px;
}
.search-suggestions__content > .modal__close {
  position: absolute;
  right: 24px;
  top: 24px;
}
@media screen and (max-width: 1023px) {
  .search-suggestions__content > .modal__close {
    right: 16px;
    top: 16px;
    z-index: 2;
  }
}
@media screen and (max-width: 1023px) {
  .search-suggestions__content {
    padding: 0 24px;
    padding-top: 65px;
    padding-bottom: 31px;
    height: var(--full-size-vh);
    width: 100vw;
    border-radius: unset;
    animation-timing-function: ease-in-out;
    animation-fill-mode: forwards;
    animation-duration: 500ms;
    transform: translateY(100vh);
    transition: transform 0.3s ease;
  }
}
.search-suggestions__footer {
  border-top: 1px solid rgba(0, 69, 71, 0.2);
  padding: 12px 0;
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 1023px) {
  .modal.search-suggestions__modal {
    align-items: flex-start;
  }
}

.open .search-suggestions__content {
  animation-name: animationUp;
}
@media screen and (min-width: 1024px) {
  .open .search-suggestions__content {
    animation: none;
  }
}

.close .search-suggestions__content {
  animation-name: animationDown;
}
@media screen and (min-width: 1024px) {
  .close .search-suggestions__content {
    animation: none;
  }
}

@keyframes animationUp {
  0% {
    transform: translateY(100vh);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes animationDown {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(100vh);
  }
}
.search-suggestions__footer-desktop {
  margin-top: auto;
}
@media screen and (max-width: 1023px) {
  .search-suggestions__footer-desktop {
    display: none;
  }
}

.search-suggestions__footer-mobile {
  margin-top: 10px;
}
@media screen and (min-width: 1024px) {
  .search-suggestions__footer-mobile {
    display: none;
  }
}

.ss-form {
  position: relative;
  margin: 0 48px 20px;
}
@media screen and (max-width: 1023px) {
  .ss-form {
    margin: 0;
    margin-bottom: 15px;
  }
}
.ss-form .form__input .ss-form__input[type=text] {
  padding-bottom: 0;
  height: 80px;
  padding-left: 36px;
  font-size: 48px;
}
@media screen and (max-width: 1023px) {
  .ss-form .form__input .ss-form__input[type=text] {
    height: 72px;
    font-size: 40px;
  }
}
.ss-form .form__input .ss-form__icon {
  stroke: #004547;
  position: absolute;
  top: 28px;
  left: 0;
}
@media screen and (max-width: 1023px) {
  .ss-form .form__input .ss-form__icon {
    top: 24px;
  }
}
.ss-form__btn {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  appearance: none;
  display: none;
  background-color: #004547;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 32px;
  right: 0;
  border-radius: 8px;
}
@media screen and (max-width: 1023px) {
  .ss-form__btn {
    top: 28px;
  }
}
.ss-form__btn::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 8px;
  height: 8px;
  background-color: #ffffff;
  mask-image: url(/dist/images/crest-icon-5f74ef7e1f9ad6170dcc.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}
.ss-form__btn.active {
  display: block;
}

.ss-results {
  overflow-y: auto;
  padding: 0 24px 0 32px;
  margin: 0 16px;
  scrollbar-width: thin;
  scrollbar-color: #004547 transparent;
}
@media screen and (max-width: 1023px) {
  .ss-results {
    margin: 0;
    padding: 0;
  }
}
.ss-results::-webkit-scrollbar {
  width: 8px;
}
.ss-results::-webkit-scrollbar-track {
  background: transparent;
}
.ss-results::-webkit-scrollbar-thumb {
  background-color: #004547;
}
.ss-results__title {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.01em;
  color: #004547;
  margin-bottom: 12px;
}
.ss-results__list {
  display: flex;
  flex-direction: column;
}
.ss-results__no-results {
  color: #004547;
  text-align: center;
  padding-bottom: 24px;
}

.ss-item {
  display: flex;
  gap: 12px;
  text-decoration: none;
  align-items: center;
  border-radius: 8px;
  padding: 8px;
  background-color: transparent;
  transition: background-color 0.3s ease;
}
@media screen and (max-width: 1023px) {
  .ss-item {
    padding: 4px 0;
  }
}
.ss-item__image {
  background-color: #edebeb;
  border-radius: 4px;
  width: 48px;
  height: 48px;
}
.ss-item__image-default {
  mask-image: url(/dist/images/default-b9c23a43a2f33e4c6b1e.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}
.ss-item__title {
  font-size: 16px;
  line-height: 25.6px;
  color: #004547;
}
.ss-item:hover .ss-item__title, .ss-item:focus-visible .ss-item__title {
  color: #ffffff;
}
.ss-item__title .highlight {
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
.ss-item:hover, .ss-item:focus-visible {
  outline: none;
  background-color: #004547;
}
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/form-with-text/scss/index.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.form-with-text {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  max-width: 1328px;
  margin: 0 auto;
}
.form-with-text .richtext {
  padding: 0;
}
@media screen and (max-width: 1023px) {
  .form-with-text {
    flex-direction: column;
    margin: 0;
  }
}
.form-with-text button[type=submit] {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .form-with-text button[type=submit] {
    height: 72px;
    border-radius: 72px;
  }
}

@media screen and (min-width: 1024px) {
  .form-with-text__text-wrapper {
    width: 400px;
  }
}

@media screen and (min-width: 1024px) {
  .form-with-text__form {
    width: 60%;
    max-width: 784px;
  }
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/next-prev-articles/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.next-prev-articles {
  max-width: 1328px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid #ccdada;
  border-radius: 8px;
  position: relative;
}
.next-prev-articles::after {
  content: "";
  position: absolute;
  height: 100%;
  width: 1px;
  background-color: #ccdada;
  top: 0;
  left: 50%;
}
.next-prev-articles .button {
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .next-prev-articles {
    width: 100vw;
    margin: 0 -24px;
    border-left: none;
    border-right: none;
    border-radius: 0;
  }
}

.next-prev-articles__link-container {
  padding: 0 32px;
  transition: background-color 0.3s ease;
}
.next-prev-articles__link-container:has(a:hover), .next-prev-articles__link-container:focus-within {
  background-color: #004547;
}
@media screen and (max-width: 767px) {
  .next-prev-articles__link-container {
    padding: 24px;
  }
}

.next-prev-articles__link {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 32px;
  height: 100%;
  transition: color 0.3s ease;
}
@media screen and (max-width: 767px) {
  .next-prev-articles__link {
    flex-direction: column;
    align-items: start;
    gap: 24px;
  }
}
.next-prev-articles__link:hover, .next-prev-articles__link:focus-visible {
  outline: none;
  color: #ffffff;
}
.next-prev-articles__link:hover .button, .next-prev-articles__link:focus-visible .button {
  --arrow-position-x-offset: var(--arrow-width);
  background: #e5ff66;
}

.next-prev-articles__link-wrapper {
  display: grid;
  gap: 16px;
  padding: 40px 0;
}
@media screen and (max-width: 767px) {
  .next-prev-articles__link-wrapper {
    padding: 0;
  }
}

.next-prev-articles__title {
  font-family: "roc-grotesk-compressed", -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight: bold;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 32px;
}
@media screen and (min-width: 1024px) {
  .next-prev-articles__title {
    font-size: 48px;
  }
}
.next-prev-articles__title {
  color: inherit;
}

.next-prev-articles__text {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .next-prev-articles__text {
    font-size: 14px;
  }
}

@media screen and (max-width: 767px) {
  .next-prev-articles__next-btn {
    order: -1;
  }
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[7].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[7].use[3]!./node_modules/@epegzz/sass-vars-loader/src/sassVarsLoader.js??ruleSet[1].rules[7].use[4]!./assets/components/social/scss/index.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* general mixins and helpers */
/*
    put mixins which have consistant styles for all designs
 */
.social__title {
  font-size: 16px;
  font-family: Gotham-bold, -apple-system, blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  margin-bottom: 16px;
  color: #004547;
}

.social__list {
  display: flex;
  gap: 8px;
}

.social__link {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  background-color: rgba(0, 69, 71, 0.15);
  display: flex;
  place-items: center;
  --mask-img-color: #004547;
  transition: background-color 0.3s ease;
}
.social__link:hover, .social__link:focus-visible {
  --mask-img-color: #ffffff;
  background-color: #004547;
}
.social__link.facebook {
  --mask-url: url(/dist/images/fb-icon-d8c249a8003a2f8899cc.svg);
}
.social__link.x {
  --mask-url: url(/dist/images/x-icon-bf54cca5d10dbc6a13aa.svg);
}
.social__link.email {
  --mask-url: url(/dist/images/mail-icon-d1284123e985bfc6421e.svg);
}

.social__masked-img {
  mask-image: var(--mask-url);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  background-color: var(--mask-img-color);
  width: 15px;
  height: 15px;
  margin: 0 auto;
  transition: background-color 0.3s ease;
}

.social__share-page {
  max-width: 1056px;
  margin: 0 auto;
}
