@font-face {
  font-family: Haffer XH;
  src: url('../fonts/HafferXHRegular.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer Mono;
  src: url('../fonts/HafferMonoMedium.woff2') format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer Mono;
  src: url('../fonts/HafferMonoRegular.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferMedium.ttf') format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferRegular.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferThin.ttf') format("truetype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferHeavy.ttf') format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferBold.ttf') format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferBlack.ttf') format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferLight.ttf') format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Haffer;
  src: url('../fonts/HafferSemiBold.ttf') format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

body {
  color: #201d1d;
  background-color: #f4f4f4;
  font-family: Haffer, Arial, sans-serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.25;
}

.body {
  background-color: #f4f4f4;
}

.body.is--dark {
  color: #efeeec;
  background-color: #000;
}

.code-embed-css, .code-embed-js {
  pointer-events: none;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.crisp-header {
  background-color: #f4f4f4;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
  overflow: hidden;
}

.crisp-header.is--loading-finished {
  position: relative;
}

.osmo-icon-svg {
  width: 8em;
}

.noscript {
  pointer-events: none;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.crisp-loader {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 1vw;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.crisp-header__content {
  color: #f4f4f4;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 100dvh;
  padding: 2.5em;
  display: flex;
  position: relative;
}

.crisp-header__top {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.crisp-header__bottom {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  align-items: center;
  margin-top: auto;
  display: flex;
}

.crisp-header__center {
  width: 100%;
  padding: 1.5em;
  position: absolute;
  left: 0;
}

.osmo-logo {
  width: 8em;
  color: unset;
  text-decoration: none;
  display: flex;
}

.osmo-logo__svg {
  display: block;
}

.crisp-header__hamburger {
  grid-column-gap: .375em;
  grid-row-gap: .375em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 2em;
  height: 2em;
  display: flex;
}

.crisp-header__hamburger-bar {
  background-color: currentColor;
  width: 1.875em;
  height: .125em;
}

.crisp-header__h1 {
  text-align: center;
  letter-spacing: -.04em;
  margin-top: 0;
  margin-bottom: .125em;
  font-family: Haffer XH, Arial, sans-serif;
  font-size: calc(5vw + 5dvh);
  font-weight: 400;
  line-height: .95;
}

.crisp-header__p {
  text-align: center;
  font-size: 1.125em;
}

.crisp-header__a {
  color: inherit;
  text-decoration: none;
}

.crisp-loader__group {
  border-radius: .5em;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.crisp-loader__group.is--relative {
  position: relative;
  left: 100%;
}

.crisp-loader__group.is--duplicate {
  position: absolute;
}

.crisp-loader__group.is--duplicate-2 {
  position: absolute;
  left: 200%;
}

.crisp-loader__cover-img {
  object-fit: cover;
  border-radius: inherit;
  width: 100%;
  height: 100%;
  position: absolute;
}

.crisp-loader__cover-img.is--scale-down {
  will-change: transform;
}

.crisp-loader__single {
  padding-left: 1em;
  padding-right: 1em;
  position: relative;
}

.crisp-loader__groups {
  position: relative;
  overflow: hidden;
}

.crisp-loader__media {
  border-radius: .5em;
  justify-content: center;
  align-items: center;
  width: 10em;
  height: 10em;
  display: flex;
  position: relative;
}

.crisp-loader__media.is--scaling {
  will-change: transform;
  border-radius: 0;
  transition-property: border-radius;
  transition-duration: .5s;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
  display: flex;
}

.crisp-loader__media.is--scaling.is--radius {
  border-radius: .5em;
}

.crisp-loader__fade {
  pointer-events: none;
  background-image: linear-gradient(90deg, #f4f4f4 20%, #0000);
  width: 5em;
  height: calc(100% + 2px);
  position: absolute;
  top: -1px;
  left: -1px;
}

.crisp-loader__fade.is--duplicate {
  left: auto;
  right: -1px;
  transform: scaleX(-1);
}

.crisp-loader__wrap {
  font-size: var(--size-font);
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.crisp-header__slider-nav {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  padding: 1em;
  display: flex;
  position: relative;
  overflow: hidden;
}

.crisp-header__slider-nav-btn {
  cursor: pointer;
  border: 1px solid #0000;
  border-radius: .25em;
  width: 3.5em;
  height: 3.5em;
  position: relative;
}

.crisp-header__slider-nav-btn.is--current {
  border-color: #f4f4f4;
}

.img-slider__thumb {
  aspect-ratio: 1.5;
  pointer-events: auto;
  cursor: pointer;
  border: 1px solid #fff3;
  border-radius: .3125rem;
  width: 7rem;
  transition: border-color .2s;
  position: relative;
  overflow: hidden;
}

.img-slider__thumb:hover {
  border-color: #fff6;
}

.img-slider__thumb.is--current {
  border-color: #fff;
}

.img-slider {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-radius: .5em;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  height: 100vh;
  display: flex;
  position: relative;
}

.crisp-header__slider-slide-inner {
  object-fit: cover;
  will-change: transform;
  width: 100%;
  height: 100%;
  position: absolute;
}

.img-slider__nav {
  z-index: 2;
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  pointer-events: none;
  flex-flow: wrap;
  justify-content: center;
  align-items: center;
  max-width: 95vw;
  display: flex;
  position: absolute;
  bottom: 2rem;
}

.slider-thumb__img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.crisp-header__slider-slide {
  opacity: 0;
  pointer-events: none;
  will-change: transform, opacity;
  grid-area: 1 / 1 / -1 / -1;
  place-items: center;
  width: 100%;
  height: 100%;
  display: grid;
  position: relative;
  overflow: hidden;
}

.crisp-header__slider-slide.is--current {
  opacity: 1;
  pointer-events: auto;
}

.crisp-header__slider-list {
  grid-template-rows: 100%;
  grid-template-columns: 100%;
  place-items: center;
  width: 100%;
  height: 100%;
  display: grid;
  overflow: hidden;
}

.crisp-header__slider {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-radius: .5em;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
}

.nav-dropdown__content-li {
  flex: 1;
}

.nav-end {
  grid-column-gap: .75em;
  grid-row-gap: .75em;
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
}

.menu-button__line {
  background-color: #2b1d15;
  width: 100%;
  height: 1px;
}

.nav-logo {
  width: 6.75em;
}

.nav-dropdown__img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .35s cubic-bezier(.625, .05, 0, 1);
}

.nav-dropdown__link-inner {
  z-index: 1;
  justify-content: space-between;
  align-items: center;
  display: flex;
  position: relative;
}

.nav-dropdown__link {
  color: #fff;
  background-color: #ebe7e4;
  border-radius: .25em;
  flex-flow: column;
  flex: 1;
  justify-content: flex-end;
  align-items: stretch;
  height: 20em;
  padding: 1.5em;
  display: flex;
  position: relative;
  overflow: hidden;
}

.nav-dropdown__link.is--static {
  color: #2b1d15;
  transition: background-color .2s cubic-bezier(.625, .05, 0, 1);
}

.nav-dropdown__link-bg {
  position: absolute;
  inset: 0%;
}

.nav {
  z-index: 100;
  color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}

.nav-dropdown {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  width: 100%;
  padding-top: 2.5em;
  padding-bottom: 3em;
  position: fixed;
  left: 0;
  right: 0;
}

.menu-button {
  grid-column-gap: .25em;
  grid-row-gap: .25em;
  background-color: currentColor;
  border-radius: .25em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 3em;
  height: 3em;
  padding: .75em;
  display: none;
}

.nav-bg {
  background-color: #fff;
  border-bottom-right-radius: .75em;
  border-bottom-left-radius: .75em;
  width: 100%;
  height: 0;
  position: absolute;
  inset: 0% 0% auto;
}

.nav-button {
  border: 1px solid;
  border-radius: .25em;
  justify-content: center;
  align-items: center;
  height: 3em;
  padding-left: 1em;
  padding-right: 1em;
  font-size: 1em;
  line-height: 1.4;
  display: flex;
}

.nav-button.is--primary {
  color: #2b1d15;
  background-color: #fff;
  border-color: #fff;
}

.nav-dropdown__content {
  grid-column-gap: 1.25em;
  grid-row-gap: 1.25em;
  width: 100%;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  display: flex;
}

.nav-link__dropdown-icon {
  width: .875em;
}

.nav-center__list {
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  display: flex;
}

.icon {
  width: 100%;
  height: 100%;
}

.nav-link__label {
  font-size: 1.25em;
  line-height: 1;
  position: relative;
}

.nav-container {
  z-index: 1;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 3em;
  padding-right: 3em;
  position: relative;
}

.nav-inner {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-top: 2em;
  display: flex;
  position: relative;
}

.page-bg {
  z-index: 0;
  opacity: 0;
  pointer-events: none;
  background-color: #0000004d;
  width: 100%;
  height: 100vh;
  position: absolute;
  inset: 0% 0% auto;
}

.nav-dropdown__link-bubble {
  color: #fff;
  background-color: #2b1d15;
  border-radius: 100em;
  justify-content: center;
  align-items: center;
  width: 1.5em;
  height: 1.5em;
  padding: .25em;
  transition: transform .2s cubic-bezier(.625, .05, 0, 1);
  display: flex;
}

.nav-dropdown__link-label {
  font-size: 1.75em;
  transition: transform .2s cubic-bezier(.625, .05, 0, 1);
}

.nav-link {
  grid-column-gap: .375em;
  grid-row-gap: .375em;
  background-color: #0000;
  border-radius: .25em;
  justify-content: center;
  align-items: center;
  padding: .75em 1.25em;
  display: flex;
}

.nav-dropdown__img-overlay {
  z-index: 1;
  opacity: .25;
  background-image: linear-gradient(#0000, #0000 50%, #000);
  transition: opacity .2s cubic-bezier(.625, .05, 0, 1);
  position: absolute;
  inset: 0%;
}

@media screen and (max-width: 991px) {
  .crisp-loader {
    font-size: 2vw;
  }

  .img-slider__thumb {
    flex: none;
  }

  .crisp-header__slider-list {
    width: 100%;
  }

  .nav-button.md--hide {
    display: none;
  }

  .nav-link__label {
    font-size: 1em;
  }

  .nav-container {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }

  .nav-inner {
    padding-top: 1.25em;
  }

  .nav-link {
    padding-left: 1em;
    padding-right: 1em;
  }
}

@media screen and (max-width: 767px) {
  .crisp-header__content {
    padding-top: 1.75em;
    padding-left: 1.75em;
    padding-right: 1.75em;
  }

  .img-slider__thumb {
    border-radius: .25rem;
    width: 5rem;
  }

  .img-slider__nav {
    flex-flow: wrap;
  }

  .nav-end {
    z-index: 2;
    position: relative;
  }

  .nav-logo {
    z-index: 1;
    position: relative;
  }

  .nav-dropdown__overflow {
    grid-template-rows: 0fr;
    width: 100%;
    display: grid;
    position: relative;
    overflow: hidden;
  }

  .nav-dropdown__link {
    aspect-ratio: 1;
    height: auto;
    padding: 1em;
  }

  .nav-dropdown {
    opacity: 100;
    pointer-events: auto;
    visibility: visible;
    padding-top: 0;
    padding-bottom: 0;
    position: relative;
    inset: auto;
  }

  .menu-button {
    display: flex;
  }

  .nav-bg {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    height: 0;
  }

  .nav-dropdown__content {
    grid-gap: .75em;
    grid-template-columns: repeat(2, 1fr);
    padding-top: 1em;
    padding-bottom: 1em;
    display: grid;
  }

  .nav-center__list {
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch;
    height: 100%;
    padding-top: 8em;
    overflow: hidden scroll;
  }

  .nav-link__label {
    font-size: 2em;
  }

  .nav-dropdown__overflow-inner {
    flex-flow: column;
    width: 100%;
    height: 1000000%;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .nav-dropdown__link-label {
    font-size: 1.25em;
  }

  .nav-link {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 1em 1.25em;
  }

  .nav-center {
    z-index: 0;
    opacity: 0;
    visibility: hidden;
    height: 100dvh;
    position: absolute;
    top: 0;
    left: -1.25em;
    right: -1.25em;
    transform: translate(0, 1em);
  }
}

@media screen and (max-width: 479px) {
  .img-slider__thumb {
    width: 4.5rem;
  }

  .nav-end {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
  }

  .nav-logo {
    width: 5em;
  }

  .nav-dropdown__link {
    padding: .75em;
  }

  .menu-button {
    width: 2.5em;
    height: 2.5em;
  }

  .nav-button.is--primary {
    height: 2.5em;
    padding-left: .75em;
    padding-right: .75em;
  }

  .nav-dropdown__link-bubble {
    width: 1.25em;
    height: 1.25em;
    padding: .375em;
  }

  .nav-dropdown__link-label {
    font-size: 1em;
  }
}


@font-face {
  font-family: 'Haffer XH';
  src: url('../fonts/HafferXHRegular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer Mono';
  src: url('../fonts/HafferMonoMedium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer Mono';
  src: url('../fonts/HafferMonoRegular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferMedium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferRegular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferThin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferHeavy.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferBold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferBlack.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferLight.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Haffer';
  src: url('../fonts/HafferSemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}