:root {
  --font-body-family: "Brandon Text", "Open Sans", sans-serif;
  --font-heading-family: "T-Star", sans-serif;
}

* {
  font-family: var(--font-body-family);
  font-size: 16px;
  box-sizing: border-box;
}

p,
a {
  font-family: var(--font-body-family);
  font-size: 16px;
  letter-spacing: 0px;
}
@media (max-width: 425px) {
  p,
  a {
    font-size: 14px;
  }
}

@media only screen and (max-width: 575.98px) {
  * {
    font-size: 14px;
  }
}
html {
  scroll-behavior: smooth;
  height: 100%;
  scrollbar-gutter: stable;
}

body {
  color: var(--text-primary-color);
  display: flex;
  flex-direction: column;
  min-height: 100%;
  margin: 0;
  font-size: 1.5rem;
  line-height: calc(1 + 0.8 / var(--font-body-scale));
  font-family: var(--font-body-family);
  font-style: var(--font-body-style);
  font-weight: var(--font-body-weight);
}
body.fixed {
  overflow: hidden;
}
@supports not (scrollbar-gutter: stable) {
  body.fixed {
    padding-right: var(--scrollbar-width);
  }
}

@media only screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}
main#MainContent {
  flex: 1;
}

a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  color: var(--primary-color);
}

h1,
h2,
h3,
h4,
h5,
.heading-sm,
.heading-md,
.heading-lg {
  font-family: var(--font-heading-family);
  font-style: normal;
  font-weight: 800;
  word-break: initial;
  text-transform: uppercase;
  margin: 0;
  line-height: 0.95;
}
h1 > *,
h2 > *,
h3 > *,
h4 > *,
h5 > *,
.heading-sm > *,
.heading-md > *,
.heading-lg > * {
  font-family: var(--font-heading-family);
}
h1.is-wide,
h2.is-wide,
h3.is-wide,
h4.is-wide,
h5.is-wide,
.heading-sm.is-wide,
.heading-md.is-wide,
.heading-lg.is-wide {
  letter-spacing: 0.1em;
}
h1 em,
h1 strong,
h1 i,
h1 b,
h2 em,
h2 strong,
h2 i,
h2 b,
h3 em,
h3 strong,
h3 i,
h3 b,
h4 em,
h4 strong,
h4 i,
h4 b,
h5 em,
h5 strong,
h5 i,
h5 b,
.heading-sm em,
.heading-sm strong,
.heading-sm i,
.heading-sm b,
.heading-md em,
.heading-md strong,
.heading-md i,
.heading-md b,
.heading-lg em,
.heading-lg strong,
.heading-lg i,
.heading-lg b {
  font-family: var(--font-heading-family);
}

@media only screen and (min-width: 1200px) {
  .heading-lg {
    font-size: var(--heading-lg);
  }
  .heading-lg em,
  .heading-lg strong,
  .heading-lg i,
  .heading-lg b {
    font-size: var(--heading-lg);
  }
}
@media only screen and (max-width: 575.98px) {
  .heading-md {
    font-size: var(--heading-md-mobile);
  }
}
.heading-sm {
  font-size: var(--heading-sm);
}

@media only screen and (max-width: 575.98px) {
  .heading-sm {
    font-size: var(--heading-sm-mobile);
  }
}
.heading-md {
  font-size: var(--heading-md);
}

.heading-lg {
  font-size: var(--heading-lg);
}

strong {
  font-weight: bold;
}

button:where(:not([class^=button-]):not([data-rac])) {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  border: none;
  background: none;
  cursor: pointer;
}

.jdgm-widget .jdgm-btn--solid, .button-teal-tint-outline, .button-teal-tint, .button-cyan-outline, .button-cyan, .button-orange, .button-black-outline, .button-teal-outline, .button-white-outline, .button-white, .button-black, .button-teal, .button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: -moz-max-content;
  width: max-content;
  height: -moz-max-content;
  height: max-content;
  padding: 16px 24px;
  border: solid 1px transparent;
  border-radius: 0;
  font-family: var(--font-heading-family);
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: var(--button-transition);
}
.jdgm-widget .jdgm-btn--solid, .button-teal-tint-outline, .button-teal-tint, .button-cyan-outline, .button-cyan, .button-orange, .button-black-outline, .button-teal-outline, .button-white-outline, .button-white, .button-black, .button-teal, .button, .jdgm-widget .jdgm-btn--solid *, .button-teal-tint-outline *, .button-teal-tint *, .button-cyan-outline *, .button-cyan *, .button-orange *, .button-black-outline *, .button-teal-outline *, .button-white-outline *, .button-white *, .button-black *, .button-teal *, .button * {
  font-size: 16px;
  font-family: var(--font-heading-family);
}
.jdgm-widget .jdgm-btn--solid i, .button-teal-tint-outline i, .button-teal-tint i, .button-cyan-outline i, .button-cyan i, .button-orange i, .button-black-outline i, .button-teal-outline i, .button-white-outline i, .button-white i, .button-black i, .button-teal i, .button i,
.jdgm-widget .jdgm-btn--solid svg,
.button-teal-tint-outline svg,
.button-teal-tint svg,
.button-cyan-outline svg,
.button-cyan svg,
.button-orange svg,
.button-black-outline svg,
.button-teal-outline svg,
.button-white-outline svg,
.button-white svg,
.button-black svg,
.button-teal svg,
.button svg,
.jdgm-widget .jdgm-btn--solid svg path,
.button-teal-tint-outline svg path,
.button-teal-tint svg path,
.button-cyan-outline svg path,
.button-cyan svg path,
.button-orange svg path,
.button-black-outline svg path,
.button-teal-outline svg path,
.button-white-outline svg path,
.button-white svg path,
.button-black svg path,
.button-teal svg path,
.button svg path {
  transition: var(--button-transition);
}
@media only screen and (max-width: 767.98px) {
  .jdgm-widget .jdgm-btn--solid, .button-teal-tint-outline, .button-teal-tint, .button-cyan-outline, .button-cyan, .button-orange, .button-black-outline, .button-teal-outline, .button-white-outline, .button-white, .button-black, .button-teal, .button {
    padding: 16px 15px;
  }
}

.button {
  background-color: #005050;
  color: #fff;
  border-color: #005050;
}
.button i,
.button svg,
.button i svg,
.button i svg path,
.button svg path {
  fill: #fff;
}
.button:hover {
  background-color: transparent;
  color: #007575;
  border-color: #007575;
}
.button:hover i,
.button:hover svg,
.button:hover i svg,
.button:hover i svg path,
.button:hover svg path {
  fill: #007575;
}
.button.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}

div[class^=Button__] {
  font-family: var(--font-heading-family);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
  outline: none;
  line-height: 1.15;
}
div[class^=Button__], div[class^=Button__] * {
  font-size: 16px;
}

button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: var(--text-primary-color);
}

.button-teal {
  background-color: #005050;
  color: #fff;
  border-color: #005050;
}
.button-teal i,
.button-teal svg,
.button-teal i svg,
.button-teal i svg path,
.button-teal svg path {
  fill: #fff;
}
.button-teal:hover {
  background-color: transparent;
  color: #007575;
  border-color: #007575;
}
.button-teal:hover i,
.button-teal:hover svg,
.button-teal:hover i svg,
.button-teal:hover i svg path,
.button-teal:hover svg path {
  fill: #007575;
}
.button-teal.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}

.button-black {
  background-color: #1d1d1d;
  color: #fff;
  border-color: #1d1d1d;
}
.button-black i,
.button-black svg,
.button-black i svg,
.button-black i svg path,
.button-black svg path {
  fill: #fff;
}
.button-black:hover {
  background-color: transparent;
  color: #1d1d1d;
  border-color: #1d1d1d;
}
.button-black:hover i,
.button-black:hover svg,
.button-black:hover i svg,
.button-black:hover i svg path,
.button-black:hover svg path {
  fill: #1d1d1d;
}
.button-black.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}

.button-white {
  background-color: #ffffff;
  color: #1d1d1d;
  border-color: #ffffff;
}
.button-white i,
.button-white svg,
.button-white i svg,
.button-white i svg path,
.button-white svg path {
  fill: #1d1d1d;
}
.button-white:hover {
  background-color: transparent;
  color: #ffffff;
  border-color: #ffffff;
}
.button-white:hover i,
.button-white:hover svg,
.button-white:hover i svg,
.button-white:hover i svg path,
.button-white:hover svg path {
  fill: #ffffff;
}
.button-white.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}

.button-white-outline {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
}
.button-white-outline i,
.button-white-outline svg,
.button-white-outline i svg,
.button-white-outline i svg path,
.button-white-outline svg path {
  fill: #fff;
}
.button-white-outline:hover {
  background-color: #fff;
  color: #1d1d1d;
  border-color: #fff;
}
.button-white-outline:hover i,
.button-white-outline:hover svg,
.button-white-outline:hover i svg,
.button-white-outline:hover i svg path,
.button-white-outline:hover svg path {
  fill: #1d1d1d;
}

.button-teal-outline {
  background-color: transparent;
  color: #005050;
  border-color: #005050;
}
.button-teal-outline i,
.button-teal-outline svg,
.button-teal-outline i svg,
.button-teal-outline i svg path,
.button-teal-outline svg path {
  fill: #005050;
}
.button-teal-outline:hover {
  background-color: #005050;
  color: #fff;
  border-color: #005050;
}
.button-teal-outline:hover i,
.button-teal-outline:hover svg,
.button-teal-outline:hover i svg,
.button-teal-outline:hover i svg path,
.button-teal-outline:hover svg path {
  fill: #fff;
}

.button-black-outline {
  background-color: transparent;
  color: #1d1d1d;
  border-color: #1d1d1d;
}
.button-black-outline i,
.button-black-outline svg,
.button-black-outline i svg,
.button-black-outline i svg path,
.button-black-outline svg path {
  fill: #1d1d1d;
}
.button-black-outline:hover {
  background-color: #1d1d1d;
  color: #fff;
  border-color: #1d1d1d;
}
.button-black-outline:hover i,
.button-black-outline:hover svg,
.button-black-outline:hover i svg,
.button-black-outline:hover i svg path,
.button-black-outline:hover svg path {
  fill: #fff;
}

.button-orange {
  background-color: #ff5000;
  color: #fff;
  border-color: #ff5000;
}
.button-orange i,
.button-orange svg,
.button-orange i svg,
.button-orange i svg path,
.button-orange svg path {
  fill: #fff;
}
.button-orange:hover {
  background-color: transparent;
  color: #ff5000;
  border-color: #ff5000;
}
.button-orange:hover i,
.button-orange:hover svg,
.button-orange:hover i svg,
.button-orange:hover i svg path,
.button-orange:hover svg path {
  fill: #ff5000;
}
.button-orange.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}

.button-cyan {
  background-color: #00bec8;
  color: #1d1d1d;
  border-color: #00bec8;
}
.button-cyan i,
.button-cyan svg,
.button-cyan i svg,
.button-cyan i svg path,
.button-cyan svg path {
  fill: #1d1d1d;
}
.button-cyan:hover {
  background-color: transparent;
  color: #1d1d1d;
  border-color: #00bec8;
}
.button-cyan:hover i,
.button-cyan:hover svg,
.button-cyan:hover i svg,
.button-cyan:hover i svg path,
.button-cyan:hover svg path {
  fill: #1d1d1d;
}
.button-cyan.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}

.button-cyan-outline {
  background-color: transparent;
  color: #00bec8;
  border-color: #00bec8;
}
.button-cyan-outline i,
.button-cyan-outline svg,
.button-cyan-outline i svg,
.button-cyan-outline i svg path,
.button-cyan-outline svg path {
  fill: #00bec8;
}
.button-cyan-outline:hover {
  background-color: #00bec8;
  color: #1d1d1d;
  border-color: #00bec8;
}
.button-cyan-outline:hover i,
.button-cyan-outline:hover svg,
.button-cyan-outline:hover i svg,
.button-cyan-outline:hover i svg path,
.button-cyan-outline:hover svg path {
  fill: #1d1d1d;
}

.button-teal-tint {
  background-color: #007575;
  color: #fff;
  border-color: #007575;
}
.button-teal-tint i,
.button-teal-tint svg,
.button-teal-tint i svg,
.button-teal-tint i svg path,
.button-teal-tint svg path {
  fill: #fff;
}
.button-teal-tint:hover {
  background-color: transparent;
  color: #007575;
  border-color: #007575;
}
.button-teal-tint:hover i,
.button-teal-tint:hover svg,
.button-teal-tint:hover i svg,
.button-teal-tint:hover i svg path,
.button-teal-tint:hover svg path {
  fill: #007575;
}
.button-teal-tint.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}

.button-teal-tint-outline {
  background-color: transparent;
  color: #007575;
  border-color: #007575;
}
.button-teal-tint-outline i,
.button-teal-tint-outline svg,
.button-teal-tint-outline i svg,
.button-teal-tint-outline i svg path,
.button-teal-tint-outline svg path {
  fill: #007575;
}
.button-teal-tint-outline:hover {
  background-color: #007575;
  color: #fff;
  border-color: #007575;
}
.button-teal-tint-outline:hover i,
.button-teal-tint-outline:hover svg,
.button-teal-tint-outline:hover i svg,
.button-teal-tint-outline:hover i svg path,
.button-teal-tint-outline:hover svg path {
  fill: #fff;
}

[class^=button-].hover-transparent-white:hover,
[class*=" button-"].hover-transparent-white:hover {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
}
[class^=button-].hover-transparent-white:hover i,
[class^=button-].hover-transparent-white:hover svg,
[class^=button-].hover-transparent-white:hover i svg,
[class^=button-].hover-transparent-white:hover i svg path,
[class^=button-].hover-transparent-white:hover svg path,
[class*=" button-"].hover-transparent-white:hover i,
[class*=" button-"].hover-transparent-white:hover svg,
[class*=" button-"].hover-transparent-white:hover i svg,
[class*=" button-"].hover-transparent-white:hover i svg path,
[class*=" button-"].hover-transparent-white:hover svg path {
  fill: #fff;
}

[class^=button-].hover-transparent-black:hover,
[class*=" button-"].hover-transparent-black:hover {
  background-color: transparent;
  color: #1d1d1d;
  border-color: #1d1d1d;
}
[class^=button-].hover-transparent-black:hover i,
[class^=button-].hover-transparent-black:hover svg,
[class^=button-].hover-transparent-black:hover i svg,
[class^=button-].hover-transparent-black:hover i svg path,
[class^=button-].hover-transparent-black:hover svg path,
[class*=" button-"].hover-transparent-black:hover i,
[class*=" button-"].hover-transparent-black:hover svg,
[class*=" button-"].hover-transparent-black:hover i svg,
[class*=" button-"].hover-transparent-black:hover i svg path,
[class*=" button-"].hover-transparent-black:hover svg path {
  fill: #1d1d1d;
}

[class^=button-]:disabled,
[class^=button-]:disabled:hover,
[class^=button-].disabled,
[class^=button-].disabled:hover {
  color: #1d1d1d;
  background: #dcdcdc;
  border-color: #dcdcdc;
  cursor: not-allowed;
}
[class^=button-]:disabled svg path,
[class^=button-]:disabled:hover svg path,
[class^=button-].disabled svg path,
[class^=button-].disabled:hover svg path {
  fill: #1d1d1d;
}

.page-width {
  max-width: var(--page-width);
  padding: 0 1.5rem;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .page-width {
    padding: 0 2.5rem;
  }
}
@media only screen and (max-width: 319.98px) {
  .page-width {
    padding: 0 1rem;
  }
}
.page-width-left {
  margin: 0 auto;
  width: 100%;
  padding-left: calc((100vw - var(--page-width)) / 2 + 5.5rem);
}

@media only screen and (max-width: 767.98px) {
  .page-width-left {
    padding-left: calc((100vw - var(--page-width)) / 2 + 8.3rem);
  }
}
.page-width-right {
  margin: 0 auto;
  width: 100%;
  padding-right: calc((100vw - var(--page-width)) / 2 + 5.5rem);
}

@media only screen and (max-width: 767.98px) {
  .page-width-right {
    padding-right: calc((100vw - var(--page-width)) / 2 + 8.3rem);
  }
}
.select {
  width: 100%;
  position: relative;
}

.form-errors {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  grid-column: 1/-1;
  left: 0;
  padding: 5px 10px;
  margin: 10px auto;
  color: white;
  background: #cb3840;
  border: solid 2px #b3333a;
  border-radius: 5px;
}
@media only screen and (max-width: 575.98px) {
  .form-errors {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
}
.form-errors .icon-error {
  width: 20px;
  min-width: 20px;
  height: 20px;
  min-height: 20px;
  color: #b3333a;
}
.form-errors .form__message {
  color: white;
}
.form-errors .form__message strong {
  font-weight: 700;
}
.form-errors ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.form-errors ul li {
  color: white;
}
.form-errors ul li a {
  color: inherit;
  text-decoration: underline;
}

.form__message {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #b3333a;
}
.form__message svg {
  width: 20px;
  min-width: 20px;
  height: 20px;
  min-height: 20px;
}
.form__message .icon-error {
  width: 20px;
  min-width: 20px;
  height: 20px;
  min-height: 20px;
  color: #b3333a;
}
.form__message strong {
  font-weight: 700;
}

.form-success {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 8px;
  grid-column: 1/-1;
  left: 0;
  padding: 5px 10px;
  margin: 10px auto;
  color: white;
  background: #428445;
  border: solid 2px #346937;
  border-radius: 5px;
}
@media only screen and (max-width: 575.98px) {
  .form-success {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
}
.form-success .success-icon {
  width: 20px;
  min-width: 20px;
  height: 20px;
  min-height: 20px;
}

.is-hidden {
  display: none;
}

.visually-hidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  word-wrap: normal !important;
}

.icon:not(.icon-minus), .icon:not(.icon-plus) {
  width: 32px;
  height: 32px;
}

#cookieNotice {
  position: fixed;
  padding: 10px 15px;
  border-radius: 10px;
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.25);
  z-index: 999997;
  background-color: #ffffff;
}
#cookieNotice * {
  margin: 0;
  padding: 0;
  text-decoration: none;
  list-style: none;
}
#cookieNotice.display-right {
  position: fixed;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  width: 35vw;
}
#cookieNotice .title-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 5px;
  font-size: 20px;
}
#cookieNotice p,
#cookieNotice a,
#cookieNotice ul {
  font-size: 12px;
  margin-bottom: 10px;
  text-align: center;
}
#cookieNotice .btn-wrap {
  display: flex;
  flex-direction: row;
  font-weight: 700;
  justify-content: center;
  margin: 0 -5px 0 -5px;
  flex-wrap: wrap;
}
#cookieNotice .btn-wrap button {
  flex-grow: 1;
  padding: 0 7px;
  margin: 0 5px 5px 5px;
  border-radius: 20px;
  line-height: 30px;
  cursor: pointer;
  white-space: nowrap;
  min-width: 80px;
  border: none;
  font-size: 14px;
  transition: box-shadow 0.3s;
  outline: 0;
  border: none;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

@media only screen and (max-width: 767.98px) {
  #cookieNotice.display-right {
    width: 85vw;
  }
}
.openSideCart {
  cursor: pointer;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-size: 20px !important;
  color: var(--text-primary-color);
}

.customer {
  display: flex;
}

.swiper-scrollbar .swiper-scrollbar-drag,
.swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--primary-color);
}

.margin-s {
  margin-top: var(--section-margin-s);
  margin-bottom: var(--section-margin-s);
}

.margin-m {
  margin-top: var(--section-margin-m);
  margin-bottom: var(--section-margin-m);
}

.margin-l {
  margin-top: var(--section-margin-l);
  margin-bottom: var(--section-margin-l);
}

.margin-bottom-l {
  margin-bottom: var(--section-margin-l);
}

.padding-s {
  padding-top: var(--section-padding-s);
  padding-bottom: var(--section-padding-s);
}

.padding-m {
  padding-top: var(--section-padding-m);
  padding-bottom: var(--section-padding-m);
}

.padding-l {
  padding-top: var(--section-padding-l);
  padding-bottom: var(--section-padding-l);
}

.padding-top-s {
  padding-top: var(--section-padding-s);
}

.padding-top-m {
  padding-top: var(--section-padding-m);
}

.padding-top-l {
  padding-top: var(--section-padding-l);
}

.padding-bottom-s {
  padding-bottom: var(--section-padding-s);
}

.padding-bottom-m {
  padding-bottom: var(--section-padding-m);
}

.padding-bottom-l {
  padding-bottom: var(--section-padding-l);
}

.vertical-padding {
  padding-top: var(--spacing-sections-desktop);
  padding-bottom: var(--spacing-sections-desktop);
}
@media only screen and (max-width: 767.98px) {
  .vertical-padding {
    padding-top: calc(var(--spacing-sections-desktop) * 0.6);
    padding-bottom: calc(var(--spacing-sections-desktop) * 0.6);
  }
}

.vertical-margin {
  margin-top: var(--spacing-sections-desktop);
  margin-bottom: var(--spacing-sections-desktop);
}
@media only screen and (max-width: 767.98px) {
  .vertical-margin {
    margin-top: var(--spacing-sections-desktop);
    margin-bottom: var(--spacing-sections-desktop);
  }
}

td {
  padding: 25px;
  border: solid 2px #d5d6d7;
  vertical-align: top;
}

thead tr td {
  font-weight: bold;
  padding: 10px 25px;
}

body.locked {
  overflow: hidden !important;
  touch-action: none;
}

[data-hover=anim-grow] {
  scale: 100%;
  transition: scale 0.1s ease-in-out;
}
[data-hover=anim-grow]:hover {
  scale: 110%;
}

.swiper-lazy-preloader {
  border: 4px solid var(--swiper-preloader-color, var(--primary-color)) !important;
  border-top-color: transparent !important;
}
.swiper-lazy-preloader + img {
  opacity: 0;
}

.check-circle-outer,
.spinner-circle-outer {
  --check-color: var(--accent-2-color);
  --circle-size: 50px;
  --check-width: calc(var(--circle-size) / 20);
  width: var(--circle-size);
  height: var(--circle-size);
  position: relative;
  margin: auto;
  border-radius: 50%;
  overflow: hidden;
}
.check-circle-outer .check-line-short,
.spinner-circle-outer .check-line-short {
  position: absolute;
  width: var(--check-width);
  height: 30%;
  background-color: var(--check-color);
  border-radius: 100px;
  rotate: -45deg;
  top: 0;
  left: 0;
  transform: translate(-50%, -50%);
  animation: enter 400ms ease 450ms forwards;
}
.check-circle-outer .check-line-long,
.spinner-circle-outer .check-line-long {
  --height: 60%;
  position: absolute;
  width: var(--check-width);
  height: 0;
  background-color: var(--check-color);
  border-radius: 100px;
  rotate: 45deg;
  top: 71%;
  left: 39%;
  transform: translate(-50%, -50%);
  animation: grow-line 400ms cubic-bezier(0.68, -0.55, 0.27, 1.55) 650ms forwards;
}
.check-circle-outer .check-circle,
.check-circle-outer .spinner-circle,
.spinner-circle-outer .check-circle,
.spinner-circle-outer .spinner-circle {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: var(--check-width) solid;
  border-color: var(--check-color);
  opacity: 0.2;
}
.check-circle-outer .check-circle-mask,
.check-circle-outer .spinner-circle-mask,
.spinner-circle-outer .check-circle-mask,
.spinner-circle-outer .spinner-circle-mask {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: var(--check-width) transparent solid;
  border-left-color: var(--check-color);
  opacity: 0;
}
.check-circle-outer .check-circle,
.spinner-circle-outer .check-circle {
  animation: show 300ms ease 950ms forwards;
}
.check-circle-outer .check-circle-mask,
.spinner-circle-outer .check-circle-mask {
  --spin-end: 70deg;
  animation: spin-circle 300ms ease 350ms forwards;
}
.check-circle-outer .spinner-circle-mask,
.spinner-circle-outer .spinner-circle-mask {
  --spin-end: 0deg;
  animation: spin-circle 1000ms ease forwards infinite;
}

.cross-circle-outer {
  --cross-color: #d8056b;
  --cross-size: 50px;
  --cross-width: calc(var(--cross-size) / 20);
  width: var(--cross-size);
  height: var(--cross-size);
  position: relative;
  margin: auto;
  border-radius: 50%;
  overflow: hidden;
  animation: shake 350ms ease-in-out 900ms;
}

.cross-circle {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: var(--cross-width) solid;
  border-color: var(--cross-color);
  opacity: 0.2;
  animation: show 300ms ease 600ms forwards;
}

.cross-circle-mask {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: var(--cross-width) transparent solid;
  border-left-color: var(--cross-color);
  animation: spin-circle 300ms ease forwards;
}

@keyframes spin-circle {
  0% {
    rotate: 320deg;
    opacity: 1;
  }
  99% {
    rotate: var(--spin-end);
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes enter {
  0% {
    left: 0%;
    top: 0%;
  }
  100% {
    left: 42%;
    top: 57%;
  }
}
@keyframes grow-line {
  0% {
    height: 0;
    top: 72%;
    left: 40%;
  }
  100% {
    height: var(--height);
    top: 44%;
    left: 40%;
  }
}
@keyframes show {
  to {
    opacity: 1;
  }
}
@keyframes show-message {
  from {
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}
@keyframes shake {
  0% {
    transform: translate(2px, 2px) rotate(0deg);
  }
  10% {
    transform: translate(-2px, -3px) rotate(-2deg);
  }
  20% {
    transform: translate(-5px, 0px) rotate(2deg);
  }
  30% {
    transform: translate(5px, 3px) rotate(0deg);
  }
  40% {
    transform: translate(2px, -2px) rotate(2deg);
  }
  50% {
    transform: translate(-2px, 3px) rotate(-2deg);
  }
  60% {
    transform: translate(-5px, 2px) rotate(0deg);
  }
  70% {
    transform: translate(5px, 2px) rotate(-2deg);
  }
  80% {
    transform: translate(-2px, -2px) rotate(2deg);
  }
  90% {
    transform: translate(2px, 3px) rotate(0deg);
  }
  100% {
    transform: translate(2px, -3px) rotate(-2deg);
  }
}
.loader {
  border: 16px solid #f3f3f3; /* Light grey */
  border-top: 16px solid var(--accent-1-color); /* Blue */
  border-radius: 50%;
  width: 120px;
  height: 120px;
  animation: spin 2s linear infinite;
}

@keyframes spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
.customer.reset-password {
  flex-direction: column;
  max-width: -moz-max-content;
  max-width: max-content;
  margin: 0 auto;
}
.customer.reset-password h1,
.customer.reset-password p {
  text-align: center;
}
.customer.reset-password h1 {
  font-size: 24px;
  margin-top: 60px;
}
.customer.reset-password button {
  padding: 0;
}

.visually-hidden {
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.swiper .swiper-slide:has(.product-card) {
  height: auto;
}
.swiper .swiper-slide:has(.product-card) .product-card {
  height: 100%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}
sub sup, sup sup {
  top: -0.5em;
}

.minmaxify-p-bg {
  z-index: 999999;
}

.minmaxify-p {
  position: relative;
  z-index: 9;
}

.jdgm-widget .jdgm-widget-actions-wrapper {
  display: none !important;
}
.jdgm-widget .jdgm-btn--solid {
  background-color: #00bec8;
  color: #fff;
  border-color: #00bec8;
  margin: 0 auto;
}
.jdgm-widget .jdgm-btn--solid i,
.jdgm-widget .jdgm-btn--solid svg,
.jdgm-widget .jdgm-btn--solid i svg,
.jdgm-widget .jdgm-btn--solid i svg path,
.jdgm-widget .jdgm-btn--solid svg path {
  fill: #fff;
}
.jdgm-widget .jdgm-btn--solid:hover {
  background-color: transparent;
  color: #00bec8;
  border-color: #00bec8;
}
.jdgm-widget .jdgm-btn--solid:hover i,
.jdgm-widget .jdgm-btn--solid:hover svg,
.jdgm-widget .jdgm-btn--solid:hover i svg,
.jdgm-widget .jdgm-btn--solid:hover i svg path,
.jdgm-widget .jdgm-btn--solid:hover svg path {
  fill: #00bec8;
}
.jdgm-widget .jdgm-btn--solid.is-white-hover:hover {
  border-color: #fff;
  color: #fff;
}
@media only screen and (max-width: 767.98px) {
  .jdgm-widget .jdgm-carousel__arrows {
    display: none;
  }
}
.jdgm-widget .jdgm-carousel__arrows > * {
  border-color: #1D1D1D;
}
.jdgm-widget .jdgm-carousel__arrows .jdgm-carousel__left-arrow, .jdgm-widget .jdgm-carousel__arrows .jdgm-carousel__right-arrow {
  width: 14px;
  height: 14px;
}
.jdgm-widget .jdgm-rev-widg__title {
  font-family: var(--font-heading-family);
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 24px;
}
.jdgm-widget .jdgm-rev-widg__title > * {
  font-family: var(--font-heading-family);
  font-size: inherit;
}
@media only screen and (min-width: 992px) {
  .jdgm-widget .jdgm-rev-widg__title {
    font-size: 32px;
  }
}

.landing-page-section .vertical-padding, .landing-page-section + .shopify-section .vertical-padding {
  padding-top: 64px !important;
  padding-bottom: 64px !important;
}
@media only screen and (min-width: 768px) {
  .landing-page-section .vertical-padding, .landing-page-section + .shopify-section .vertical-padding {
    padding-top: 88px !important;
    padding-bottom: 88px !important;
  }
}
.landing-page-section .page-width, .landing-page-section + .shopify-section .page-width {
  padding: 0 12px;
}
