/* 
  ==============================================================================
  Reset and normalize styles
  ==============================================================================
*/

/*
  1. Prevent padding and border from affecting element width.
  2. Remove default margins and padding.
  3. Reset all borders.
*/

*,
::after,
::before,
::backdrop {
  box-sizing: border-box; /* 1*/
  margin: 0; /* 2*/
  padding: 0; /* 2*/
  border: 0 solid; /* 3*/
}

/*
  1. Use a consistent sensible line-height in all browsers.
  2. Prevent adjustments of font size after orientation changes in iOS.
  3. Use a more readable tab size.
  4. Disable tap highlights on iOS.
*/

html,
:host {
  line-height: 1.5; /* 1*/
  -webkit-text-size-adjust: 100%; /* 2*/
  tab-size: 4; /* 3*/
  font-family: system-ui, sans-serif;
  -webkit-tap-highlight-color: transparent; /* 4*/
}

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

body {
  margin: 0; /* 1*/
}

/*
  1. Add the correct height in Firefox.
  2. Correct the inheritance of border color in Firefox.
  3. Reset the default border style to a 1px solid border.
*/

hr {
  height: 0; /* 1*/
  color: inherit; /* 2*/
  border-top-width: 1px; /* 3*/
}

/*
  Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

/*
  Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
  Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
}

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

b,
strong {
  font-weight: bolder;
}

/*
  1. Improve consistency of default fonts in all browsers.
  2. Correct the odd `em` font sizing in all browsers.
*/

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

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

small {
  font-size: 80%;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
  1. Remove text indentation from table contents in Chrome and Safari.
  2. Correct table border color inheritance in all Chrome and Safari.
  3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1*/
  border-color: inherit; /* 2*/
  border-collapse: collapse; /* 3*/
}

/*
  Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

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

progress {
  vertical-align: baseline;
}

/*
  1. Add the correct display in Chrome and Safari.
*/

summary {
  cursor: pointer;
  display: list-item; /* 1 */
}

/*
  Remove summary's arrow in Chrome and Safari.
*/

::-webkit-details-marker {
  display: none;
}

/*
  Make lists unstyled by default.
*/

ol,
ul,
menu {
  list-style: none;
}

/*
  1. Make replaced elements `display: block` by default.
  2. Add `vertical-align: middle` to align replaced elements more sensibly by default.
      This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1*/
  vertical-align: middle; /* 2*/
}

/*
  Constrain images and videos to the parent width and preserve their intrinsic aspect ratio.
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/*
  1. Inherit font styles in all browsers.
  2. Remove border radius in all browsers.
  3. Remove background color in all browsers.
  4. Ensure consistent opacity for disabled states in all browsers.
*/

button,
input,
select,
optgroup,
textarea,
::file-selector-button {
  font: inherit; /* 1*/
  font-feature-settings: inherit; /* 1*/
  font-variation-settings: inherit; /* 1*/
  letter-spacing: inherit; /* 1*/
  color: inherit; /* 1*/
  border-radius: 0; /* 2*/
  background-color: transparent; /* 3*/
  opacity: 1; /* 4*/
}

/*
  Restore default font weight.
*/

:where(select:is([multiple], [size])) optgroup {
  font-weight: bolder;
}

/*
  Restore indentation.
*/

:where(select:is([multiple], [size])) optgroup option {
  padding-inline-start: 1.25em;
}

/*
  Restore space after button.
*/

::file-selector-button {
  margin-inline-end: 0.25em;
}

/*
  Reset the default placeholder opacity in Firefox.
*/

::placeholder {
  opacity: 1;
}

/*
  Set the default placeholder color to a semi-transparent version of the current text color in browsers that do not
  crash when using `color-mix(…)` with `currentColor`.
*/

@supports (not (-webkit-appearance: -apple-pay-button)) /* Not Safari*/ or (contain-intrinsic-size: 1px) /* Safari 17+ */ {
  ::placeholder {
    color: color-mix(in oklab, currentColor 50%, transparent);
  }
}

/*
  Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

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

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
  1. Ensure date/time inputs have the same height when empty in iOS Safari.
  2. Ensure text alignment can be changed on date/time inputs in iOS Safari.
*/

::-webkit-date-and-time-value {
  min-height: 1lh; /* 1*/
  text-align: inherit; /* 2*/
}

/*
  Prevent height from changing on date/time inputs in macOS Safari when the input is set to `display: block`.
*/

::-webkit-datetime-edit {
  display: inline-flex;
}

/*
  Remove excess padding from pseudo-elements in date/time inputs to ensure consistent height across browsers.
*/

::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}

::-webkit-datetime-edit,
::-webkit-datetime-edit-year-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute-field,
::-webkit-datetime-edit-second-field,
::-webkit-datetime-edit-millisecond-field,
::-webkit-datetime-edit-meridiem-field {
  padding-block: 0;
}

/*
  Remove the additional `:invalid` styles in Firefox.
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
  Correct the inability to style the border radius in iOS Safari.
*/

button,
input:where([type='button'], [type='reset'], [type='submit']),
::file-selector-button {
  appearance: button;
}

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

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
  Make elements with the HTML hidden attribute stay hidden by default.
*/

[hidden]:where(:not([hidden='until-found'])) {
  display: none !important;
}

/* 
  ==============================================================================
  Custom variables
  ==============================================================================
*/

:root {
  /* Colors */
  --root-color\.brightTurquoise: hsla(169, 100%, 60%, 1);

  --theme-color\.primary: var(--root-color\.brightTurquoise);
  /*--theme-color\.secondary: red;*/
  --theme-color\.grayscaleWhite: hsla(0, 0%, 100%, 1);
  --theme-color\.grayscaleLight: hsla(0, 0%, 90%, 1);
  --theme-color\.grayscaleNeutralLight: hsla(0, 0%, 60%, 1);
  --theme-color\.grayscaleNeutral: hsla(0, 0%, 50%, 1);
  --theme-color\.grayscaleNeutralDark: hsla(0, 0%, 40%, 1);
  --theme-color\.grayscaleDark: hsla(0, 0%, 10%, 1);
  --theme-color\.grayscaleBlack: hsla(0, 0%, 0%, 1);

  /* Font Sizes */
  --root-font-size\.64: 4rem;
  --root-font-size\.52: 3.25rem;
  --root-font-size\.44: 2.75rem;
  --root-font-size\.36: 2.25rem;
  --root-font-size\.32: 2rem;
  --root-font-size\.30: 1.875rem;
  --root-font-size\.28: 1.75rem;
  --root-font-size\.26: 1.625rem;
  --root-font-size\.24: 1.5rem;
  --root-font-size\.22: 1.375rem;
  --root-font-size\.20: 1.25rem;
  --root-font-size\.18: 1.125rem;
  --root-font-size\.16: 1rem;
  --root-font-size\.14: 0.875rem;
  --root-font-size\.12: 0.75rem;

  --theme-font-size\.display: 3.5rem;
  --theme-font-size\.huge: 2rem;
  --theme-font-size\.extraLarge: 1.5rem;
  --theme-font-size\.large: 1.375rem;
  --theme-font-size\.semiLarge: 1.25rem;
  --theme-font-size\.medium: 1.125rem;
  --theme-font-size\.normal: 1rem;
  --theme-font-size\.small: 0.875rem;
  --theme-font-size\.tiny: 0.75rem;

  /* Font Weights */
  --root-font-size\.bold: 700;
  --root-font-size\.medium: 400;
  --root-font-size\.light: 200;

  /* Durations */
  --system-duration-presto: 60ms;
  --system-duration-allegro: 125ms;
  --system-duration-andante: 500ms;

  /* Elevation */
  --system-boxShadow-slightlyRaised: 0 1px 2px 0 rgb(0 0 0 / 10%);
  --system-boxShadow-floatingBox: 0 0 30px 0 rgb(0 0 0 / 35%);
  --font-family__sans-serif: 'Brown', system-ui, sans-serif;
  --font-family__default: 'Brown', system-ui, sans-serif;
  --color-primary: initial;
}

/*
  ==============================================================================
  Custom fonts
  ==============================================================================
*/

/*@font-face{
  font-family: Brown;
  src: url(../resources/fonts/lineto-brown-pro-thin.woff2) format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap
}*/

@font-face {
  font-family: Brown;
  src: url(../resources/fonts/lineto-brown-pro-light.woff2) format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Brown;
  src: url(../resources/fonts/lineto-brown-pro-regular.woff2) format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Brown;
  src: url(../resources/fonts/lineto-brown-pro-bold.woff2) format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/*
  ==============================================================================
  Base styles
  ==============================================================================
*/

html {
  overflow-y: scroll;
  scroll-behavior: smooth;
  scrollbar-gutter: stable;
  color: hsl(0, 0%, 10%);
  font-family: 'Brown', system-ui, sans-serif;
  font-size: 1em;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: 'wdth' 100;
  line-height: 1.375;
}

body {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

body > main {
  flex-grow: 1;
}

/*
  Remove text-shadow in selection highlight and customize the background color.
*/

::selection,
::-moz-selection {
  background: var(--color-primary, initial);
  text-shadow: none;
}

/*
  A better looking default horizontal rule.
*/

hr {
  height: 0.125rem;
  border: 0;
  border-top: 0.125rem solid currentColor;
  margin-block: 1em;
}

/*
  ==============================================================================
  Custom styles
  ==============================================================================
*/

/*
  Layout
  ------------------------------------------------------------------------------
*/

[data-element='5362'] {
  padding-inline: 1rem;
}

@media (min-width: 32em) {
  [data-element='5362'] {
    padding-inline: max(5dvw, calc((100vw - 90rem) / 2));
  }
}

[data-element='1776'] {
  margin-block: 3.5rem;
  padding-inline: 1rem;
  scroll-margin-top: 6rem;
}

@media (min-width: 32em) {
  [data-element='1776'] {
    margin-block: 4rem;
    scroll-margin-top: 7.5rem;
    padding-inline: max(5dvw, calc((100vw - 90rem) / 2));
  }
}

@media (min-width: 72em) {
  [data-element='1776'] {
    margin-block: 5.25rem;
    scroll-margin-top: 9rem;
  }
}

[data-element='2335'] {
  padding-block: 3.5rem;
}

@media (min-width: 32em) {
  [data-element='2335'] {
    padding-block: 4rem;
  }
}

@media (min-width: 72em) {
  [data-element='2335'] {
    padding-block: 5.25rem;
  }
}

/*
  Animation
  ------------------------------------------------------------------------------
*/

/*
  Embedded content
  ------------------------------------------------------------------------------
*/

/*
  Header
  ------------------------------------------------------------------------------
*/

/*
  Base
*/

[data-entity='7364'] {
  /*--shadow-size: .75rem;*/
  /*--shadow-offset: calc(var(--shadow-size) + .25rem);*/
  position: sticky;
  top: 0;
  background-color: #fff;
  /*border-bottom: 1px solid hsla(0, 0%, 0%, .125);*/
  box-shadow: 0 0 0.25rem hsla(0, 0%, 0%, 0.1);
  /*box-shadow: 0 0 var(--shadow-size) 0 hsla(0, 0%, 0%, .2);*/
  z-index: 100;
}

[data-entity='9214'] {
  display: flex;
  flex-direction: row;
  place-items: center;
  place-content: space-between;
  min-height: 3.5rem;
}

/*
  Logo
*/

[data-entity='7144'] {
  color: hsla(0, 0%, 0%, 1);
}

[data-entity='9099'] {
  width: auto;
  height: 3.5rem;
  position: relative;
  bottom: -0.15rem;
}

/*
  Language selector
*/

[data-entity='4454'] {
  position: relative;
}

[data-entity='1459'] {
  display: inline-block;
  cursor: pointer;
  position: relative;
  margin: 0;
  padding: 0.5625rem;
  border: 0;
  border-radius: 100%;
  background-color: hsla(0, 0%, 90%, 0);
  line-height: 1;
  z-index: 1;
}

[data-entity='1459']::before {
  content: '';
  position: absolute;
  inset: 0.25rem;
  background-color: hsla(0, 0%, 90%, 0);
  border-radius: inherit;
  transition:
    background-color calc(1s / 4),
    inset calc(1s / 4),
    border-radius calc(1s / 4);
  z-index: -1;
}

[data-entity='1459']:hover::before {
  inset: 0;
  background-color: hsla(0, 0%, 90%, 1);
}

[data-entity='1459']:hover + [data-entity='8358'] {
  opacity: 1;
  pointer-events: auto;
}

[data-entity='0476'] {
  width: 1.25rem;
  height: 1.25rem;
}

[data-entity='8358'] {
  display: block;
  position: absolute;
  top: calc(100% - 3.5rem + 1.5rem);
  opacity: 0;
  inset-inline-end: -1rem;
  pointer-events: none;
  padding-block: 3rem 1.5rem;
  /*padding-inline: 1.5rem;*/
  padding-inline: 1rem;
  transition: opacity calc(1s / 4);
}

[data-entity='8358']:hover {
  pointer-events: auto;
  opacity: 1;
}

[data-entity='8358']::before {
  position: absolute;
  display: block;
  content: '';
  width: 2.375rem;
  /*width: 1.375rem;*/
  height: 0.25rem;
  background-color: hsl(169, 100%, 50%);
  inset-block-start: 2.175rem;
  inset-inline-end: 1rem;
  /*inset-inline-end: 2rem;*/
  border-radius: 1rem;
}

[data-entity='9443'] {
  background-color: hsla(0, 0%, 100%, 1);
  padding: 0.75rem;
  border-radius: 0.5rem;
  width: min(16rem, 60dvw);
  box-shadow: 0 0 0.5rem 0 hsla(0, 0%, 0%, 0.1);
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

[data-entity='4950'] {
  order: -1;
}

[data-entity='6580'] {
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

[data-element='2621'] {
}

[data-element='1005'] {
  cursor: pointer;
  position: relative;
  display: inline-block;
  width: 100%;
  color: hsl(0, 0%, 100%);
  background-color: hsl(0, 0%, 10%);
  padding-block: 0.75rem;
  padding-inline: 1.5rem;
  /*font-size: .875rem;*/
  /*font-weight: 600;*/
  text-transform: uppercase;
  letter-spacing: 0.03125em;
  border-radius: 10vw;
  text-align: center;
  line-height: 1;
  outline: 0.125rem solid hsl(0, 0%, 10%);
  outline-offset: -0.125rem;
  transition:
    background-color calc(1s / 4),
    color calc(1s / 4);
}

[data-element='1005']:hover {
  color: hsl(0, 0%, 10%);
  background-color: hsl(0, 0%, 100%);
  /*outline: .125rem solid hsl(258, 94%, 64%);*/
  /*outline-offset: -.125rem;*/
}

@media (min-width: 48em) {
  [data-element='1005'] {
    /*width: max-content;*/
    /*padding-block: 1rem;*/
    /*padding-inline: 2.5rem;*/
  }
}

[data-entity='2444'] {
  pointer-events: none;
  filter: contrast(0.75) opacity(0.5);
}

/*
  Main
  ------------------------------------------------------------------------------
*/

[data-entity='1760'] {
}

/*
  Hero section
*/

[data-entity='4523'] {
  position: relative;
  height: clamp(24rem, calc(100dvh - 3.5rem), 60rem);
  display: flex;
  flex-direction: column;
  justify-content: end;
  overflow: clip;
}

@media (min-width: 36em) {
  [data-entity='4523'] {
    /*height: max(calc(50dvh - 3.5rem), 32rem);*/
    height: clamp(36rem, calc(50dvh - 3.5rem), 48rem);
    justify-content: center;
  }
}

[data-entity='4652'] {
  background-color: var(--entity-theme-primary-color);
  background-image: linear-gradient(45deg, hsla(0, 0%, 0%, 0.25) 0%, transparent 25%, transparent 50%, hsla(0, 0%, 100%, 0.5) 75%, hsla(0, 0%, 100%, 0.75) 100%);
  position: absolute;
  inset: 0 0 40%;
  /*box-shadow: inset 0 -.5rem 0 0 hsl(169, 100%, 50%);*/
  border-block-end: 0.5rem solid hsl(169, 100%, 50%);
  z-index: 1;
}

@media (min-width: 36em) {
  [data-entity='4652'] {
    inset: 0;
    border-block-end: initial;
  }
}

[data-entity='0334'] {
  width: 100%;
  height: 100%;
  display: block;
}

[data-entity='3595'] {
  width: inherit;
  height: inherit;
  object-fit: cover;
  object-position: center;
}

[data-entity='5823'] {
  position: relative;
  height: 40%;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  z-index: 0;
  gap: 1.5rem;
  color: hsl(0, 0%, 0%, 1);
}

@media (min-width: 36em) {
  [data-entity='5823'] {
    height: auto;
    z-index: 1;
    align-items: center;
    color: var(--entity-theme-contrast-color, hsl(0, 0%, 100%, 1));
  }
}

[data-entity='5383'] {
  max-width: max(16rem, 50dvw);
  font-size: 2.5rem;
  line-height: 1.3;
}

@media (min-width: 36em) {
  [data-entity='5383'] {
    font-size: 2.75rem;
    line-height: 1.25;
    text-align: center;
  }
}

@media (min-width: 48em) {
  [data-entity='5383'] {
    font-size: 3.25rem;
    line-height: 1.2;
  }
}

@media (min-width: 72em) {
  [data-entity='5383'] {
    font-size: 4.25rem;
    line-height: 1.15;
  }
}

[data-entity='4299'] {
  max-width: max(16rem, 50dvw);
  font-size: 1.25rem;
}

@media (min-width: 36rem) {
  [data-entity='4299'] {
    display: initial;
    max-width: unset;
    font-size: 1.5rem;
  }
}

@media (min-width: 48rem) {
  [data-entity='4299'] {
    font-size: 1.75rem;
  }
}

[data-entity='6493'] {
  position: absolute;
  display: block;
  rotate: -90deg;
  width: 40dvh;
  max-width: 20rem;
  left: calc(100% - min(8.5rem, 17.5dvh));
  color: hsla(0, 0%, 85%);
}

@media (min-width: 36em) {
  [data-entity='6493'] {
    display: none;
  }
}

[dir='rtl'] [data-entity='6493'] {
  right: calc(100% - min(8.5rem, 17.5dvh));
  left: initial;
  rotate: 90deg;
}

[data-entity=''] {
}

/*
  Navigation
*/

[data-entity='5727'] {
  position: sticky;
  top: 3.5rem;
  z-index: 10;
  background-color: hsl(0deg 0% 97.5%);
  /*box-shadow: 0px 2px 2px hsl(0deg 0% 0% / 10%);*/
  /*border-bottom: 1px solid hsla(0, 0%, 0%, .125);*/
  /*box-shadow: 0 0 .75rem 0 hsla(0, 0%, 0%, .2);*/
  box-shadow: 0 0.25rem 0.25rem 0 hsla(0, 0%, 0%, 0.1);
  display: flex;
  align-items: center;
  flex-direction: row;
  min-height: 2.625rem;
  /*gap: 1.5rem;*/
  gap: 5dvw;
  line-height: 2;
  display: grid;
  grid-template-columns: 1fr auto;
  /*justify-content: space-between;*/
}

[data-entity='4029'] {
  color: hsl(0deg 0% 50%);
  display: inline-flex;
  flex-direction: row;
  gap: 0.5rem;
  align-items: inherit;
}

[data-entity='6182'] {
  width: 1.25rem;
  height: 1.25rem;
  line-height: 0;
}

[data-entity='8026'] {
  position: relative;
  color: hsl(0deg 0% 10%);
  text-transform: uppercase;
  display: grid;
  margin-inline-end: -1rem;
}

@media (min-width: 32em) {
  [data-entity='8026'] {
    margin-inline-end: -5dvw;
  }
}

[data-entity='8026']::before {
  pointer-events: none;
  position: absolute;
  content: '';
  display: block;
  inset-inline-start: -1px;
  inset-block: 0;
  width: 5dvw;
  /*background-color: hsla(0, 0%, 100%, 1);*/
  background-image: linear-gradient(to right, hsla(0, 0%, 97.5%, 1), transparent);
}

[dir='rtl'] [data-entity='8026']::before {
  background-image: linear-gradient(to left, hsla(0, 0%, 97.5%, 1), transparent);
}

[data-entity='1377'] {
  /*position: relative;
  display: grid;
  gap: 5vw;
  grid-auto-flow: column;
  grid-auto-columns: calc(100% - 10vw);
  overflow-x: auto;
  scroll-behavior: smooth;
  overscroll-behavior-inline: contain;
  padding-inline: 5vw;
  scroll-snap-type: inline mandatory;
  scroll-padding-inline: 5vw;
  margin-block: 1rem;*/
  /*display: grid;*/
  /*grid-auto-flow: column;*/
  gap: 1.5rem;
  osition: relative;

  display: grid;
  /*gap: 5vw;*/
  grid-auto-flow: column;
  /*grid-auto-columns: calc(100% - 10vw);*/
  grid-auto-columns: max-content;
  overflow-x: auto;
  scroll-behavior: smooth;
  overscroll-behavior-inline: contain;
  padding-inline: 5vw;
  /*padding-inline-end: 5vw;*/
  scroll-snap-type: inline mandatory;
  scroll-padding-inline: 5vw;
  /*margin-block: 1rem;*/
}

[data-entity='1377']::-webkit-scrollbar {
  display: none;
}

@media (min-width: 72em) {
  [data-entity='1377'] {
    gap: 3rem;
  }
}

[data-element='0008'] {
  scroll-snap-align: center;
  color: var(--entity-theme-color, hsla(0, 0%, 10%, 1));
}

[data-element='2306'] {
}

[data-element='2306']:hover {
  color: hsla(0, 0%, 10%, 1);
}

/*
  Subsection
*/

[data-element='4188'] {
  position: relative;
  min-height: 14rem;
  background-color: var(--entity-theme-primary-color, hsla(0, 0%, 95%, 1));
  color: var(--entity-theme-contrast-color, hsla(0, 0%, 0%, 1));
  /*background-image: linear-gradient();*/
  background-image: linear-gradient(to right, transparent 25%, hsla(0, 0%, 100%, 0.25) 50%, hsla(0, 0%, 100%, 0.5) 75%);
  padding-block: 3rem;
  padding-inline: 5dvw;
  overflow: clip;
  margin-inline: -1rem;
  min-width: 100%;
}

[dir='rtl'] [data-element='4188'] {
  background-image: linear-gradient(to left, transparent 25%, hsla(0, 0%, 100%, 0.25) 50%, hsla(0, 0%, 100%, 0.5) 75%);
}

@media (min-width: 24em) {
  [data-element='4188'] {
    grid-column: span 2 / span 2;
  }
}

@media (min-width: 32em) {
  [data-element='4188'] {
    margin-inline: -5dvw;
  }
}

@media (min-width: 48em) {
  [data-element='4188'] {
    border-radius: 1rem;
    margin-inline: auto;
    padding-inline: 3rem;
  }
}

[data-element='5461'] {
  position: absolute;
  inset: 0 0 0 50%;
}

[dir='rtl'] [data-element='5461'] {
  inset: 0 50% 0 0;
}

[data-element='7680'] {
  display: block;
  height: 100%;
  width: 100%;
}

[data-element='9239'] {
  height: inherit;
  width: inherit;
  object-fit: cover;
  object-position: left center;
}

[dir='rtl'] [data-element='9239'] {
  object-position: right center;
}

[data-element='3439'] {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  max-width: 60%;
  gap: 1.5rem;
}

[data-element='0074'] {
  font-size: 2rem;
}

@media (min-width: 48em) {
  [data-element='0074'] {
    font-size: 3.25rem;
  }
}

[data-element='1176'] {
}

[data-element='5916'] {
}

[data-element='3210'] {
  font-weight: 300;
}

@media (max-width: 48em) {
  [data-element='3210'] {
    display: none;
  }
}

/*
  Product
*/

[data-entity='3613'] {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 2.5rem 1rem;
  background-color: var(--entity-theme-tint-color, hsla(0, 0%, 100%, 1));
}

@media (min-width: 24em) {
  [data-entity='3613'] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 36em) {
  [data-entity='3613'] {
    gap: 1.5rem;
  }
}

@media (min-width: 72em) {
  [data-entity='3613'] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 96em) {
  [data-entity='3613'] {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

[data-entity=''] {
}

[data-element='4954'] {
  border-radius: 16px;
}

@media (min-width: 48em) {
  [data-element='4954'] {
    /*padding: 1.5rem;*/
    /*background-color: hsla(0, 0%, 95%, 1);*/
    background-color: hsla(0, 0%, 50%, 0.075);
  }
}

[data-element='2486'] {
  /*position: absolute;
  transform: translateX(-50%);
  left: 50%;
  width: 80dvw;
  z-index: 1;
  background: #f2f2f2;
  padding: 1rem;
  border-radius: 1rem;
  transition: all 1s;*/
  display: flex;
  flex-direction: column;
  /*display: grid;*/
  /*grid-auto-rows: auto;*/
  height: 100%;
  gap: 0.75rem;
}

@media (min-width: 48em) {
  [data-element='2486'] {
    /*gap: 0;*/
  }
}

/*
  Product media
*/

[data-element='7733'] {
  /*height: 14rem;*/
  height: auto;
  width: 100%;
  aspect-ratio: 5 / 4;
  /*width: calc(100% + 1.5rem * 2);*/
  overflow: clip;
  position: relative;
}

@media (min-width: 36em) {
  [data-element='7733'] {
    aspect-ratio: 3 / 2;
  }
}

@media (max-width: 48em) {
  [data-element='7733'] {
    border-radius: 16px;
    /*background-color: hsla(0, 0%, 95%, 1);*/
    background-color: hsla(0, 0%, 50%, 0.075);
  }
}

[data-element='9114'] {
  font-size: 0.875rem;
  /*font-weight: 400;*/
  line-height: 1;
  display: inline-flex;
  flex-direction: row;
  gap: 0.5rem;
  position: absolute;
  inset-inline-start: 0.75rem;
  inset-block-start: 0.75rem;
  z-index: 1;
}

@media (min-width: 48em) {
  [data-element='9114'] {
    inset-inline-start: 1.5rem;
  }
}

[data-element='1651'] {
  display: inline-block;
  border-radius: 0.5rem;
  background-color: hsla(0, 0%, 100%, 1);
  padding-block: 0.375rem;
  padding-inline: 0.5rem;
}

[data-element='0368'] {
  width: 100%;
  height: 100%;
  position: absolute;
  opacity: 0;
  display: none;
  /*transition: opacity 5s ease-out, display 5s;*/
  /*transition-behavior: allow-discrete;*/
}

[data-element='0368'][data-variety-active] {
  opacity: 1;
  display: block;
}

[data-element='4913'] {
  position: absolute;
  inset: 1.5rem 0 0.75rem;
}

[data-element='4582'] {
  height: 100%;
  width: 100%;
  object-fit: contain;
  scale: var(--entity-product-media-scale, 1);
}

[data-element='2089'] {
  position: absolute;
  inset: 0;
  opacity: 0;
  display: none;
}

[data-element='7092'] {
}

/*
  Product data
*/

[data-element='2101'] {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex-grow: 1;
  position: relative;
  /*height: 100%;*/
  /*padding-block: .75rem 0;*/
  /*padding-inline: 1.5rem;*/
}

@media (min-width: 48em) {
  [data-element='2101'] {
    padding-block-end: 1.5rem;
    padding-inline: 1.5rem;
  }
}

[data-element='2068'] {
}

[data-element='9520'] {
}

[data-element='0467'] {
  font-size: 0.875rem;
  font-weight: 700;
}

[data-element='3049'] {
  font-size: 1.25rem;
}

[data-element='6838'] {
  font-size: 0.875rem;
  font-weight: 300;
}

/*@media (max-width: 36em) {
  [data-element="6838"] {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
}
*/

[data-element='8597'] {
  position: relative;
  display: inline-flex;
  flex-direction: row;
  gap: 0.75rem;
  inset-inline-start: 0.1rem;
  margin-block-start: 0.75rem;
  /*margin-left: calc(.1rem + .25rem);*/
  /*margin-right: calc(.1rem + .25rem);*/
}

[data-element='7094'] {
  color: var(--entity-data-variety-color, hsla(0, 0%, 50%, 1));
}

[data-element='8558'] {
  color: inherit;
  display: block;
  width: 1rem;
  height: 1rem;
  border-radius: 100%;
  background-color: currentColor;
  background-image: linear-gradient(-90deg, var(--entity-data-variety-secondary-color, transparent) 0%, var(--entity-data-variety-secondary-color, transparent) 50%, transparent 50%);
  outline: 0.1rem solid hsla(0, 0%, 15%, 1);
  transition: outline 0.1s;
  white-space: nowrap;
  /*overflow: hidden;*/
  user-select: none;
  position: relative;
}

@media (min-width: 48em) {
  [data-element='8558']:hover {
    outline-width: 0.25rem;
    outline-color: hsla(0, 0%, 35%, 1);
  }
}


[data-variety-active] [data-element='8558'] {
  outline-width: 0.25rem;
}

[data-element='8558'][aria-label]::after {
  position: absolute;
  display: inline-block;
  content: attr(aria-label) ' ';
  padding: 0.375rem 0.75rem;
  background-color: hsla(0, 0%, 35%, 1);
  color: hsla(0, 0%, 90%, 1);
  z-index: 1;
  /*margin: .5rem;*/
  font-size: 0.75rem;
  /*text-transform: uppercase;*/
  font-weight: 700;
  letter-spacing: 1px;
  border-radius: 0.5rem;
  bottom: calc(100% + 0.75rem);
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  pointer-events: none;
}

@media (min-width: 48em) {
  [data-element='8558'][aria-label]:hover::after {
    opacity: 1;
  }
}

[data-element='8558'][aria-label]::before {
  position: absolute;
  display: block;
  content: '';
  height: 1rem;
  width: 1rem;
  background-color: hsla(0, 0%, 35%, 1);
  position: absolute;
  bottom: calc(100% + 0.5rem);
  /*left: calc(50% - 10px);*/
  /*top: -1.5rem;*/
  left: calc(50% - 0.5rem);
  transform: translateX(-50%);
  clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
  transform: rotate(-45deg);
  border-radius: 0 0 0 0.25em;
  opacity: 0;
}

@media (min-width: 48em) {
  [data-element='8558'][aria-label]:hover::before {
    opacity: 1;
  }
}

/*
  Product action
*/

[data-element='6104'] {
  flex-grow: 1;
  display: flex;
  align-items: self-end;
}

[data-element='8387'] {
  cursor: pointer;
  position: relative;
  display: inline-block;
  width: 100%;
  color: var(--entity-theme-contrast-color, hsl(0, 0%, 10%));
  background-color: var(--entity-theme-primary-color, hsl(169, 100%, 50%));
  padding-block: 0.75rem;
  padding-inline: 1.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03125em;
  border-radius: 10vw;
  text-align: center;
  line-height: 1;
  outline: 0.125rem solid var(--entity-theme-primary-color, hsl(169, 100%, 50%));
  outline-offset: -0.125rem;
  /*transform: translateY(0);*/
  transition:
    background-color calc(1s / 4),
    color calc(1s / 4);
  margin-block-start: 0.75rem;
}

[data-element='8387']:hover {
  color: hsl(0, 0%, 10%);
  background-color: hsl(0, 0%, 100%);
  /*outline: .125rem solid hsl(258, 94%, 64%);*/
  /*outline-offset: -.125rem;*/
}

@media (min-width: 48em) {
  [data-element='8387'] {
    /*width: max-content;*/
    /*padding-block: 1rem;*/
    /*padding-inline: 2.5rem;*/
  }
}

[data-element='9678'] {
  position: absolute;
  width: 100%;
  min-height: 100%;
  /*inset: auto 0 0 0;*/
  inset-block-end: 0;
  flex-direction: column;
  align-items: center;
  display: flex;
  background-color: var(--entity-theme-tint-color, hsla(0, 0%, 100%, 1));
  box-shadow:
    0.5rem 0 0 0 var(--entity-theme-tint-color, hsla(0, 0%, 100%, 1)),
    -0.5rem 0 0 0 var(--entity-theme-tint-color, hsla(0, 0%, 100%, 1));
}

[data-element='9678']::backdrop {
  /*display: none !important;*/
}

[data-element='8142'] {
  height: 2.375rem;
  line-height: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

[data-element='9249'] {
  display: inline-block;
  cursor: pointer;
  position: absolute;
  margin: 0;
  padding: 0.5625rem;
  border: 0;
  border-radius: 100%;
  background-color: hsla(0, 0%, 90%, 0);
  line-height: 1;
  z-index: 1;
  inset-inline-end: 0;
  inset-block-start: 0;
}

[data-element='9249']::before {
  content: '';
  position: absolute;
  inset: 0.25rem;
  background-color: hsla(0, 0%, 90%, 0);
  border-radius: inherit;
  transition:
    background-color calc(1s / 4),
    inset calc(1s / 4),
    border-radius calc(1s / 4);
  z-index: -1;
}

[data-element='9249']::after {
  position: relative;
  content: '';
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  /*background-color: red;*/
  background-image: url(../resources/assets/elements/other/x-lg.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.25rem;
}

[data-element='9249']:hover::before {
  inset: 0.25rem;
  background-color: hsla(0, 0%, 90%, 1);
}

[data-element='1549'] {
  flex-grow: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: start;
}

[data-element='7694'] {
  cursor: pointer;
  position: relative;
  display: inline-block;
  width: 100%;
  color: var(--entity-theme-contrast-color, hsl(0, 0%, 10%));
  background-color: var(--entity-theme-primary-color, hsl(169, 100%, 50%));
  padding-block: 0.5rem;
  padding-inline: 0.75rem;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03125em;
  border-radius: 10vw;
  text-align: center;
  line-height: 1;
  outline: 0.125rem solid var(--entity-theme-primary-color, hsl(169, 100%, 50%));
  outline-offset: -0.125rem;
  /*transform: translateY(0);*/
  transition:
    background-color calc(1s / 4),
    color calc(1s / 4);
  margin-block-start: 0.75rem;
}

[data-element='7694']:hover {
  color: hsl(0, 0%, 10%);
  background-color: hsl(0, 0%, 100%);
  /*outline: .125rem solid hsl(258, 94%, 64%);*/
  /*outline-offset: -.125rem;*/
}

@media (min-width: 48em) {
  [data-element='7694'] {
    padding-block: 0.75rem;
  }
}

[data-element='3347'] {
  display: flex;
  flex-direction: column;
  /*gap: .75rem;*/
}

@media (min-width: 36em) {
  [data-element='3347'] {
    flex-direction: row;
    gap: 0.75rem;
  }
}

[data-element=''] {
}

/*
  Footer
  ------------------------------------------------------------------------------
*/

[data-entity='6625'] {
  background-color: hsla(0, 0%, 93.75%, 1);
}

[data-entity='7185'] {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: 1fr;
  place-content: center;
  place-items: center;
  gap: 1.75rem;
}

@media (min-width: 48em) {
  [data-entity='7185'] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 3.5rem;
  }
}

/*
  Logo
*/

[data-entity='8060'] {
}

[data-entity='6982'] {
  display: block;
  padding: 1rem;
  border-radius: 100%;
  background-color: hsl(169, 100%, 50%);
  width: 4rem;
  height: 4rem;
  color: hsl(0, 0%, 0%);
}

[data-entity='1694'] {
  width: 100%;
  height: 100%;
  position: relative;
  bottom: -0.05rem;
}

/*
  Copyright
*/

[data-entity='2170'] {
  color: hsl(0, 0%, 35%);
  max-width: 40rem;
  font-size: 0.875rem;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/*
  Social links
*/

[data-entity='2851'] {
  grid-column: span 2;
  min-width: 10rem;
}

@media (min-width: 48em) {
  [data-entity='2851'] {
    margin-inline-start: auto;
  }
}

[data-entity='4945'] {
  display: flex;
  justify-content: end;
  gap: 1.5rem;
  line-height: 0;
}

[data-element='5070'] {
  position: relative;
  display: inline-block;
  padding: 0.5625rem;
  border-radius: 100%;
}

[data-element='5070']::before {
  content: '';
  position: absolute;
  inset: 0.25rem;
  background-color: hsla(0, 0%, 90%, 0);
  border-radius: inherit;
  transition:
    background-color calc(1s / 4),
    inset calc(1s / 4),
    border-radius calc(1s / 4);
}

[data-element='5070']:hover::before {
  inset: 0;
  background-color: hsla(0, 0%, 85%, 1);
}

[data-element='5183'] {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  filter: invert(35%);
}

/* 
  ==============================================================================
  Utilities
  ==============================================================================
*/

/*
  Hide visually and from screen readers.
*/

.hidden,
[hidden] {
  display: none !important;
}

/*
  Hide only visually, but have it available for screen readers.

  1. For long content, line feeds are not interpreted as spaces and small width causes content to wrap 1 word per line.
*/

.visually-hidden {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px; /* 1*/
}

/*
  Extends the .visually-hidden class to allow the element to be focusable when navigated to via the keyboard.
*/

.visually-hidden.focusable:active,
.visually-hidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
  Hide visually and from screen readers, but maintain layout.
*/

.invisible {
  visibility: hidden;
}

/*
  Clearfix: contain floats
  1. The use of `table` rather than `block` is only necessary if using `::before` to contain the top-margins of child elements.
*/

.clearfix::before,
.clearfix::after {
  content: '';
  display: table; /* 1 */
}

.clearfix::after {
  clear: both;
}

/* 
  ==============================================================================
  EXAMPLE Media Queries for Responsive Design.
  These examples override the primary ('mobile first') styles.
  Modify as content requires.
  ==============================================================================
*/

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* 
  ==============================================================================
  Print styles
  ==============================================================================
*/

@media print {
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]::after {
    content: ' (' attr(href) ')';
  }

  abbr[title]::after {
    content: ' (' attr(title) ')';
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^='#']::after,
  a[href^='javascript:']::after {
    content: '';
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}
