@font-face {
  font-family: "Sahel";
  src: url("./../fonts/SahelVariable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
html,
body {
  box-sizing: border-box;
  font-family: "Sahel", sans-serif;
  color: #636466;
  overflow-x: hidden;
}

h1,
.h1 {
  font-family: "Sahel", sans-serif;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 4rem;
  margin-bottom: 1.5rem;
}

h2,
.h2 {
  font-family: "Sahel", sans-serif;
  font-weight: 600;
  font-size: 2rem;
  line-height: 3.2rem;
  margin-bottom: 1rem;
}

h3,
.h3 {
  font-family: "Sahel", sans-serif;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 2.4rem;
}
h3.module-title,
.h3.module-title {
  margin-bottom: 1rem;
}

h4,
.h4 {
  font-family: "Sahel", sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.8rem;
  margin-bottom: 0.25rem;
}
h4.module-title,
.h4.module-title {
  font-weight: 600;
  margin-bottom: 0rem;
}

h5,
.h5 {
  font-family: "Sahel", sans-serif;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.2rem;
  margin-bottom: 0.25rem;
}

.gold {
  color: #dab066;
}

.green {
  color: #00a79e;
}

.red {
  color: #e5494d;
}

.white {
  color: white;
}

.v-line {
  width: 1;
  border-width: 0 0 0 1px;
  border-style: solid;
  -o-border-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0)) 1 100%;
     border-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0)) 1 100%;
}

.h-line {
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}

a,
button {
  display: inline-block;
  transition: all 0.25s ease-in-out;
  cursor: pointer;
}
a.ctabtn,
button.ctabtn {
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.6rem;
  cursor: pointer;
}
a.ctabtn.solid,
button.ctabtn.solid {
  border-radius: 8px;
  padding: 0.75rem 1.5rem;
}
a.ctabtn.solid.green,
button.ctabtn.solid.green {
  background: #00a79e;
  color: #ffffff !important;
}
a.ctabtn.solid.just-icon,
button.ctabtn.solid.just-icon {
  padding: 0.75rem;
}
a.ctabtn.solid.just-icon img,
button.ctabtn.solid.just-icon img {
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
}
a.ctabtn.link.gold,
button.ctabtn.link.gold {
  color: #dab066;
}
a.ctabtn.link.gold:hover,
button.ctabtn.link.gold:hover {
  color: #dab066;
}
a.ctabtn.link.has-icon img,
button.ctabtn.link.has-icon img {
  margin-left: 0.125rem;
}
a.ctabtn.outline,
button.ctabtn.outline {
  border: 2px solid;
  border-radius: 8px;
  padding: 0.75rem 1.5rem;
}
a.ctabtn.outline.green,
button.ctabtn.outline.green {
  border-color: #00a79e;
  color: #00a79e;
}
a.ctabtn:hover,
button.ctabtn:hover {
  opacity: 0.5;
}
a.ctabtn:hover.green,
button.ctabtn:hover.green {
  color: #00a79e;
}
button.ctabtn:disabled,
button.ctabtn[disabled] {
  cursor: not-allowed;
  opacity: 0.45;
}
button.ctabtn:disabled:hover,
button.ctabtn[disabled]:hover {
  opacity: 0.45;
}

ul.menu li a {
  color: #000000;
}
ul.horizontal-icon-menu {
  display: flex;
  align-items: center;
  margin: 0;
}
ul.horizontal-icon-menu li {
  list-style: none;
  margin-left: 1rem;
}
ul.horizontal-icon-menu li a {
  display: inline-block;
}
ul.horizontal-icon-menu li a svg {
  vertical-align: middle;
}
ul.vertical-menu {
  flex-grow: 1;
  margin: 0;
}
ul.vertical-menu li {
  list-style: none;
  margin-bottom: 0.5rem;
}
ul.vertical-menu li:first-child {
  margin-bottom: 0.75rem;
}
ul.vertical-menu li a {
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: 500;
  color: #636466;
}
ul.horizontal-menu {
  display: flex;
  align-items: center;
  margin: 0;
}
ul.horizontal-menu li {
  list-style: none;
  margin-left: 1rem;
}
ul.horizontal-menu li a {
  display: inline-block;
}
ul.feature-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
ul.feature-list li {
  list-style: none;
  display: flex;
  flex-direction: row;
  gap: 4px;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.6rem;
}
ul.feature-list li .feature-label {
  color: #636466;
}
ul.feature-list li .feature-value {
  color: #000000;
}
ul.product-meta {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0.5rem 0 0 0;
}
ul.product-meta li {
  list-style: none;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.2rem;
  color: #939598;
}

span.tag {
  padding: 0.25rem;
  margin-right: 0.5rem;
  font-size: 0.75rem;
  font-weight: 600;
  border-radius: 4px;
}
span.tag.new {
  background: rgba(242, 228, 212, 0.8);
  color: #dab066;
}
span.tag.discount {
  background: #e3efed;
  color: #00a79e;
}
span.tag.collections {
  background: #e0e1e2;
  color: #939598;
}
span.tag.reached {
  background: #e74040;
  color: white;
}
span.category {
  font-size: 0.75rem;
}
span.order.wait-for-payment {
  background: #e0e1e2;
  color: #939598;
}
span.order.paid {
  background: #e3efed;
  color: #00a79e;
}
span.order.inprogress {
  background: rgba(242, 228, 212, 0.8);
  color: #dab066;
}
span.order.ready-to-send {
  background: rgba(242, 228, 212, 0.8);
  color: #dab066;
}
span.order.sent {
  background: rgba(242, 228, 212, 0.8);
  color: #dab066;
}
span.order.delivered {
  background: #e3efed;
  color: #00a79e;
}
span.order.backed {
  background: #eabdbf;
  color: #e74040;
}
span.order.canceled {
  background: #eabdbf;
  color: #e74040;
}

label {
  color: #939598;
  font-size: 0.875rem;
  line-height: 1.4rem;
}

[type=text],
[type=password],
[type=date],
[type=datetime],
[type=datetime-local],
[type=month],
[type=week],
[type=email],
[type=number],
[type=search],
[type=tel],
[type=time],
[type=url],
[type=color],
textarea {
  height: auto;
  margin: 0.5rem 0 0 0;
  padding: 0.75rem 1rem;
  border: 1px solid #e0e1e2;
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: 0 0 0 transparent;
  line-height: 2rem;
  color: #939598;
}

[type=text]:focus,
[type=password]:focus,
[type=date]:focus,
[type=datetime]:focus,
[type=datetime-local]:focus,
[type=month]:focus,
[type=week]:focus,
[type=email]:focus,
[type=number]:focus,
[type=search]:focus,
[type=tel]:focus,
[type=time]:focus,
[type=url]:focus,
[type=color]:focus,
textarea:focus {
  outline: none;
  border: 1px solid #00a79e;
  background-color: #ffffff;
  box-shadow: 0 0 0 transparent;
}

.flex-container {
  display: flex;
  align-items: center;
}
.flex-container .module-title {
  margin-bottom: 0px;
}
.flex-container.vertical {
  flex-direction: column;
  align-items: flex-start;
}
.flex-container.align-top {
  align-items: flex-start;
}
.flex-container.space-between {
  justify-content: space-between;
}

.btn-group {
  display: inline-flex;
  border: 1px solid #e0e1e2;
  border-radius: 8px;
  overflow: hidden;
}
.btn-group .btn {
  flex: 1;
  background: #fff;
  color: #000000;
  border: none;
  padding: 1rem 1.5rem;
  font-size: 0.875rem;
  cursor: pointer;
  transition: all 0.25s ease;
}
.btn-group .btn:not(:last-child) {
  border-left: 1px solid #e0e1e2;
}
.btn-group .btn.active {
  background: #00a79e;
  color: #fff;
}

.tabs {
  display: flex;
  flex-direction: row;
  border: 0px solid transparent;
  margin-bottom: 1rem;
}
.tabs .tabs-title {
  float: none;
  margin-left: 1.5rem;
}
.tabs .tabs-title a {
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: 500;
  padding: 0px;
  color: #636466;
}
.tabs .tabs-title > a[aria-selected=true] {
  background: transparent;
  color: #dab066;
}

.tabs-content {
  border: 0px solid transparent;
  background: transparent;
}
.tabs-content .tabs-panel {
  padding: 0;
}

@media (hover: hover) and (pointer: fine) {
  .btn-group .btn:hover {
    background: #e0e1e2;
  }
}
.histogram-container .price-values {
  display: flex;
  justify-content: space-between;
  font-size: 0.875rem;
  line-height: 1.4rem;
  color: #636466;
  margin-bottom: 1rem;
}
.histogram-container .histogram {
  display: flex;
  align-items: flex-end;
  height: 80px;
  gap: 2px;
  margin-bottom: 0;
  padding: 0 0.5rem;
}
.histogram-container .histogram .bar {
  flex: 1;
  background: #cae1df;
  transition: opacity 0.25s ease, height 0.25s ease;
}
.histogram-container .price-slider {
  margin: 0 5px;
  background: #e0e1e2;
  border-radius: 10px;
  border: none;
  height: 6px;
}
.histogram-container .price-slider .noUi-base .noUi-connects .noUi-connect {
  background: #00a79e;
}
.histogram-container .price-slider .noUi-origin .noUi-handle {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #00a79e;
  border: 0 solid transparent;
  border: 4px solid #ffffff;
  cursor: pointer;
  top: -5px;
  box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.15);
  left: -8px;
}
.histogram-container .price-slider .noUi-origin .noUi-handle:before {
  display: none;
}
.histogram-container .price-slider .noUi-origin .noUi-handle:after {
  display: none;
}

[type=checkbox],
[type=radio] {
  margin-bottom: 0;
}

[type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 16px;
  height: 16px;
  border: 1px solid #c7c8ca;
  border-radius: 50%;
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease;
}
[type=radio]:checked::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  background: #00a79e;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

[type=checkbox] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  width: 16px;
  height: 16px;
  border: 2px solid #e1e4ea;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
}
[type=checkbox]:checked {
  background-color: #00a79e;
  border-color: #00a79e;
}
[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 4px;
  width: 4px;
  height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.custom-select {
  position: relative;
  width: 300px;
  cursor: pointer;
  z-index: 100;
  margin-left: 0;
  margin-right: auto;
}
.custom-select .selected {
  background: #f4f4f5;
  border-radius: 8px;
  padding: 0.75rem 1rem;
  color: #000000;
  font-size: 1rem;
  line-height: 1.6rem;
}
.custom-select .selected:focus {
  outline: none;
}
.custom-select .selected img {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  width: 24px !important;
  height: 24px !important;
  transition: transform 0.2s ease;
  margin: 0 !important;
}
.custom-select .options {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #ffffff;
  border: 1px solid #f4f4f5;
  border-radius: 8px;
  margin-top: 4px;
  display: none;
  list-style: none;
  padding: 0;
  transition: opacity 0.2s ease;
}
.custom-select .options li {
  padding: 10px;
}
.custom-select .options li:hover {
  color: #00a79e;
}
.custom-select.open .selected .arrow {
  transform: translateY(-50%) rotate(180deg);
}

#promotion-bar {
  background: rgba(224, 225, 226, 0.25);
  padding: 0.5rem 0;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.92rem;
}

#navbar {
  padding: 2rem;
  border-bottom: 1px solid #e0e1e2;
}
#navbar .flex-container .nav-menu {
  flex-grow: 1;
}

#header {
  padding: 5rem 0;
}
#header h1 {
  color: #00a79e;
}
#header p {
  color: #939598;
}
#header .loopslider-container {
  width: 100%;
  text-align: center;
  margin: 5rem 0;
}
#header .loopslider-container .loopslider {
  margin: 0 auto;
  height: 724px;
  position: relative;
}
#header .loopslider-container .loopslider .loopslider_wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin: 0px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul {
  height: 724px;
  display: flex;
  flex-direction: row;
  align-items: center;
  margin: 0px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li {
  list-style: none;
  margin: 0 0.5rem;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li img {
  max-width: unset;
  height: unset;
  display: block;
  object-fit: cover;
  object-position: center;
  border-radius: 8px;
  filter: grayscale(1);
  transition: filter 0.25s ease-in-out;
}
/* Keep the hero composition independent from the source image dimensions. */
#header .loopslider-container .loopslider .loopslider_wrap > ul li:nth-child(1) > img {
  width: 246px;
  height: 422px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li:nth-child(2) > img {
  width: 432px;
  height: 724px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li:nth-child(3) > img {
  width: 316px;
  height: 316px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li:nth-child(4) .slide-column img:first-child {
  width: 216px;
  height: 288px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li:nth-child(4) .slide-column img:last-child {
  width: 216px;
  height: 216px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li:nth-child(5) > img {
  width: 316px;
  height: 476px;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li img:hover {
  filter: grayscale(0);
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li .slide-column {
  display: flex;
  flex-direction: column;
}
#header .loopslider-container .loopslider .loopslider_wrap > ul li .slide-column img:first-child {
  margin-bottom: 1rem;
}

#categories {
  padding: 5rem 0;
  background: rgba(224, 225, 226, 0.25);
}
#categories .categories-list {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
#categories .categories-list a .cat {
  display: flex;
  flex-direction: row;
  align-items: center;
}
#categories .categories-list a .cat > img {
  width: 72px;
  height: 72px;
  object-fit: contain;
}
#categories .categories-list a .cat .cat-info {
  display: flex;
  flex-direction: column;
  margin-right: 1rem;
}
#categories .categories-list a .cat .cat-info h4 {
  color: #000000;
}
#categories .categories-list a .cat .cat-info p {
  color: #636466;
  margin-bottom: 0px;
}

#latest {
  padding: 5rem 0;
}
#latest .tabs.latest-links .tabs-title.is-active > a {
  background: transparent;
  color: #dab066;
}
#latest .tabs-content .tabs-panel .bento-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 250px);
  gap: 16px;
  direction: ltr;
  margin: 1.5rem 0;
}
#latest .tabs-content .tabs-panel .bento-container.reverse {
  direction: rtl;
}
#latest .tabs-content .tabs-panel .bento-container .item {
  direction: rtl;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}
#latest .tabs-content .tabs-panel .bento-container .item > a {
  position: absolute;
  inset: 0;
  display: block;
  z-index: 3;
}
#latest .tabs-content .tabs-panel .bento-container .item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
  transition: opacity 0.25s ease-in-out;
}
#latest .tabs-content .tabs-panel .bento-container .item .item-info {
  position: absolute;
  right: 24px;
  bottom: 24px;
  width: calc(100% - 24px);
  max-width: 400px;
  z-index: 2;
}
#latest .tabs-content .tabs-panel .bento-container .item .item-info h4 {
  color: white;
  margin-bottom: 0.25rem;
}
#latest .tabs-content .tabs-panel .bento-container .item .item-info p {
  margin-bottom: 0.25rem;
}
#latest .tabs-content .tabs-panel .bento-container .item .item-info p.price {
  color: #dab066;
  font-size: 1rem;
  line-height: 1.6rem;
}
#latest .tabs-content .tabs-panel .bento-container .item .item-info p.description {
  color: #e0e1e2;
  opacity: 0.7;
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#latest .tabs-content .tabs-panel .bento-container .item:after {
  content: "";
  width: 100%;
  height: 70%;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7));
  position: absolute;
  left: 0px;
  bottom: 0px;
  z-index: 1;
}
#latest .tabs-content .tabs-panel .bento-container .item:hover img {
  opacity: 0.8;
}
#latest .tabs-content .tabs-panel .bento-container .item1 {
  grid-column: 1/span 2;
  grid-row: 1/span 2;
}
#latest .tabs-content .tabs-panel .bento-container .item2 {
  grid-column: 3/span 1;
  grid-row: 1/span 2;
}
#latest .tabs-content .tabs-panel .bento-container .item3 {
  grid-column: 4/span 1;
  grid-row: 1/span 1;
}
#latest .tabs-content .tabs-panel .bento-container .item4 {
  grid-column: 4/span 1;
  grid-row: 2/span 1;
}

#collection-promo {
  padding: 5rem 0;
  background: rgba(224, 225, 226, 0.25);
}
#collection-promo .collection-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
}
#collection-promo .collection-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 150px);
  gap: 24px;
  margin-top: 2.5rem;
}
#collection-promo .collection-grid .item a {
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 100%;
}
#collection-promo .collection-grid .item a .item-image {
  width: auto;
  height: 100%;
}
#collection-promo .collection-grid .item a .item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
}
#collection-promo .collection-grid .item a .item-info {
  margin-right: 1rem;
  flex-grow: 1;
}
#collection-promo .collection-grid .item a .item-info span {
  color: #939598;
}
#collection-promo .collection-grid .item a .item-info h4 {
  color: #636466;
}
#collection-promo p {
  font-size: 0.875rem;
  line-height: 1.4rem;
  margin-top: 0.25rem;
  margin-bottom: 1rem;
}
#collection-promo p.price {
  color: #dab066;
  font-size: 1rem;
  line-height: 1.6rem;
}

#blog {
  padding: 5rem 0;
}
#blog .blog-card img {
  border-radius: 8px;
  margin-bottom: 1rem;
}
#blog .blog-card span {
  color: #939598;
}
#blog .blog-card h4 {
  margin: 0 0 0.5rem 0;
}
#blog .blog-card p {
  font-size: 1rem;
  line-height: 1.6rem;
  margin: 0px;
  color: #636466;
}
#blog .blog-card .post-author {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 1.5rem;
}
#blog .blog-card .post-author img {
  width: 48px;
  height: 48px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  margin: 0px;
}
#blog .blog-card .post-author .author-info {
  margin-right: 0.5rem;
}
#blog .blog-card .post-author .author-info h5 {
  color: #000000;
}
#blog .blog-card .post-author .author-info p {
  font-size: 0.75rem;
  line-height: 1.2rem;
  margin: 0px;
  color: #939598;
}
#blog p {
  font-size: 0.875rem;
  line-height: 1.4rem;
}

#footer {
  padding: 2rem 0;
  border-top: 1px solid #e0e1e2;
}
#footer img {
  margin-bottom: 1.5rem;
}
#footer .address,
#footer .contact-info {
  margin-bottom: 1.5rem;
}
#footer .address p,
#footer .contact-info p {
  margin: 0px;
}
#footer .address p.labels,
#footer .contact-info p.labels {
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 600;
}
#footer .address p.values,
#footer .contact-info p.values {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#footer .footer-navigation {
  align-items: flex-start;
  gap: 1.5rem;
}
#footer .footer-category-section {
  flex: 2 1 0;
  min-width: 0;
}
#footer .footer-category-section h4 {
  margin-bottom: 0.75rem;
}
#footer .footer-category-menu {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1.5rem;
}
#footer .footer-category-menu .footer-category-empty {
  grid-column: 1/-1;
}
#footer .footer-navigation > .vertical-menu {
  flex: 1 1 0;
  min-width: 0;
}
.copyright {
  padding-top: 2rem;
  border-top: 1px solid #e0e1e2;
}
.copyright .flex-container {
  justify-content: space-between;
}
.copyright p,
.copyright a {
  font-size: 0.75rem;
  line-height: 1.2rem;
  margin: 0px;
}

#breadcrumbs {
  padding-top: 1.5rem;
}
#breadcrumbs a {
  font-size: 0.75rem;
  line-height: 1.2rem;
  color: #636466;
}
#breadcrumbs img {
  margin: 0 0.25rem;
}

#head {
  padding: 2rem 0;
}
#head img {
  width: 56px;
  height: auto;
  margin-left: 0.5rem;
}
#head img.back-arrow {
  width: 32px;
  height: auto;
  margin-left: 1rem;
}
#head h1 {
  font-size: 1.5rem;
  line-height: 2.4rem;
  color: #000000;
  margin-bottom: 0;
}
#head p {
  margin-bottom: 0px;
}

#list,
#related-products {
  padding: 2rem 0;
}
#list .products,
#related-products .products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background-image: radial-gradient(rgba(0, 0, 0, 0.1) 15%, rgba(0, 0, 0, 0) 85%);
}
#list .product,
#related-products .product {
  background: #fff;
  padding: 1rem;
}
#list .product .product-image,
#related-products .product .product-image {
  position: relative;
}
#list .product .product-info h4,
#related-products .product .product-info h4 {
  font-size: 1rem;
  line-height: 1.6rem;
  color: #000000;
  margin-bottom: 0.5rem;
  text-align: center;
}
#list .product .product-info .price,
#related-products .product .product-info .price {
  color: #dab066;
  margin-bottom: 0;
  text-align: center;
}
#list .product .tags,
#related-products .product .tags {
  position: absolute;
  right: 0;
  top: 0;
  display: flex;
  flex-direction: row;
}
#list .filters,
#related-products .filters {
  position: sticky;
  top: 16px;
}
#list .filters .filters-head,
#related-products .filters .filters-head {
  margin-bottom: 2rem;
}
#list .filters .filters-head h3,
#related-products .filters .filters-head h3 {
  font-size: 1rem;
  line-height: 1.6rem;
  color: #636466;
  margin-bottom: 0.25rem;
}
#list .filters .filters-head p,
#related-products .filters .filters-head p {
  font-size: 0.875rem;
  line-height: 1.4rem;
  color: #636466;
}
#list .filters .module,
#related-products .filters .module {
  margin-bottom: 2rem;
}
#list .filters .module h3.module-title,
#related-products .filters .module h3.module-title {
  font-size: 1rem;
  line-height: 1.6rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}
#list .filters .module .flex-container,
#related-products .filters .module .flex-container {
  gap: 8px;
}
#list .filters .module .flex-container p,
#related-products .filters .module .flex-container p {
  margin: 0px;
}
#list .filters .module .flex-container label,
#related-products .filters .module .flex-container label {
  margin: 0px;
}
#list .filters .filter-switch,
#related-products .filters .filter-switch {
  position: relative;
  display: inline-block;
  width: 36px;
  height: 20px;
}
#list .filters .filter-switch input,
#related-products .filters .filter-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
#list .filters .filter-switch input:checked + .switch-slider,
#related-products .filters .filter-switch input:checked + .switch-slider {
  background-color: #00a79e;
}
#list .filters .filter-switch input:checked + .switch-slider::before,
#related-products .filters .filter-switch input:checked + .switch-slider::before {
  transform: translateX(16px);
}
#list .filters .switch-slider,
#related-products .filters .switch-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e0e1e2;
  transition: 0.4s;
  border-radius: 34px;
}
#list .filters .switch-slider::before,
#related-products .filters .switch-slider::before {
  position: absolute;
  content: "";
  height: 16px;
  width: 16px;
  left: 2px;
  bottom: 2px;
  background-color: #00a79e;
  border: 4px solid #ffffff;
  box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.15);
  transition: 0.4s;
  border-radius: 50%;
}
#list .pagination::before,
#list .pagination::after,
#related-products .pagination::before,
#related-products .pagination::after {
  display: none;
}
#list .custom-pagination,
#related-products .custom-pagination {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f4f4f5;
  border-radius: 16px;
  padding: 0.75rem 1rem;
  gap: 16px;
  margin-top: 2rem;
}
#list .custom-pagination .flex-container,
#related-products .custom-pagination .flex-container {
  gap: 4px;
}
#list .custom-pagination li,
#related-products .custom-pagination li {
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
}
#list .custom-pagination li:last-child, #list .custom-pagination li:first-child,
#related-products .custom-pagination li:last-child,
#related-products .custom-pagination li:first-child {
  width: auto;
}
#list .custom-pagination li a,
#related-products .custom-pagination li a {
  font-size: 1rem;
  line-height: 1.5rem;
  color: #00a79e;
  text-decoration: none;
}
#list .custom-pagination li a:hover,
#related-products .custom-pagination li a:hover {
  background: transparent;
}
#list .custom-pagination li.current,
#related-products .custom-pagination li.current {
  background: #00a79e;
  color: #fff;
  border-radius: 50%;
  font-weight: bold;
}
#list .custom-pagination .pagination-previous a::before,
#list .custom-pagination .pagination-next a::after,
#related-products .custom-pagination .pagination-previous a::before,
#related-products .custom-pagination .pagination-next a::after {
  display: none;
}
#list .custom-pagination .ellipsis,
#related-products .custom-pagination .ellipsis {
  color: #00a79e;
  pointer-events: none;
}

#description {
  padding: 1.5rem 0 4rem;
}
#description .hide-section {
  display: none;
}
#description.product-description {
  padding: 4rem 0;
}
#description.product-description h3.module-title {
  font-size: 1.5rem;
  line-height: 2.4rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}

#product-head {
  padding: 2rem 0;
}
#product-head .product-image .product-gallery {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
#product-head .product-image .product-gallery .main-image {
  position: relative;
  width: 100%;
  max-width: 600px;
  border: 1px solid #e0e1e2;
  border-radius: 16px;
  overflow: hidden;
}
#product-head .product-image .product-gallery .main-image img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.3s ease;
}
#product-head .product-image .product-gallery .main-image img:hover {
  transform: scale(1.15);
}
#product-head .product-image .product-gallery .main-image img.zoomed {
  cursor: move;
  touch-action: none;
  transform: scale(2);
  transform-origin: center center;
}
#product-head .product-image .product-gallery .main-image .zoom-btn {
  position: absolute;
  top: 16px;
  right: 16px;
  background: rgb(255, 255, 255);
  width: 32px;
  height: 32px;
  cursor: pointer;
  border-radius: 8px;
}
#product-head .product-image .product-gallery .thumbnails {
  display: flex;
  justify-content: flex-start;
  gap: 8px;
  margin-top: 1rem;
  width: 100%;
}
#product-head .product-image .product-gallery .thumbnails img {
  width: 80px;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
  border: 1px solid transparent;
  border-radius: 8px;
  cursor: pointer;
  opacity: 0.7;
  transition: all 0.25s ease;
  border: 1px solid #e0e1e2;
}
#product-head .product-image .product-gallery .thumbnails img.active {
  border: 1px solid #dab066;
  opacity: 1;
}
#product-head .product-info .tag {
  margin: 0;
}
#product-head .product-info h1 {
  font-size: 2rem;
  line-height: 3.2rem;
  color: #000000;
  margin: 1rem 0;
}
#product-head .product-info p {
  font-size: 1rem;
  line-height: 1.6rem;
  color: #636466;
}
#product-head .product-info .options {
  margin-bottom: 1rem;
}
#product-head .product-info .options h3.option-title {
  font-size: 1rem;
  line-height: 1.6rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}
#product-head .product-info .options .custom-select {
  margin-right: 0;
}
#product-head .product-info .price {
  padding: 1.5rem 0;
}
#product-head .product-info .price .old-price {
  text-decoration: line-through;
  font-size: 1rem;
  line-height: 1.6rem;
  color: #636466;
  margin-bottom: 0;
  font-weight: 500;
}
#product-head .product-info .price .main-price {
  font-size: 2rem;
  line-height: 3.2rem;
  color: #636466;
  margin-bottom: 0;
  font-weight: 600;
  color: #dab066;
}
#product-head .product-info .ctabtn {
  width: 100%;
  font-size: 1.125rem;
  line-height: 1.8rem;
}
#product-head .product-info .ctabtn:hover {
  color: white;
}

#related-products {
  padding: 4rem 0;
}
#related-products .flex-container {
  justify-content: space-between;
  margin-bottom: 1rem;
}
#related-products .product-image {
  text-align: center;
}
#related-products .product-image img {
  width: 241px;
  max-width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

#collection-header {
  position: relative;
}
#collection-header img {
  width: 100%;
  height: 600px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#collection-header .overlay {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.6) 70%);
}
#collection-header .collection-info {
  position: absolute;
  bottom: 80px;
  left: 50%;
  transform: translate(-50%, 0);
  text-align: center;
}
#collection-header .collection-info p {
  width: 100%;
  max-width: 700px;
  margin: 0 auto 2rem;
}

#collection-products .products {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0;
  background-image: radial-gradient(rgba(0, 0, 0, 0.1) 15%, rgba(0, 0, 0, 0) 85%);
  margin: 0 7.5rem 5rem;
}
#collection-products .product {
  background: #fff;
  padding: 1rem;
  display: flex;
  flex-direction: row;
  align-items: center;
}
#collection-products .product .product-image {
  position: relative;
  flex-grow: 1;
  width: 50%;
}
#collection-products .product .product-image a {
  width: 100%;
}
#collection-products .product .product-image a img {
  height: 400px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#collection-products .product .product-info {
  flex-grow: 1;
  width: 50%;
  display: flex;
  flex-direction: column;
  padding: 3rem;
}
#collection-products .product .product-info .category {
  color: #636466;
}
#collection-products .product .product-info h4 {
  font-size: 1.125rem;
  line-height: 1.8rem;
  color: #000000;
  margin-bottom: 0.5rem;
}
#collection-products .product .product-info p.price {
  color: #dab066;
  margin-bottom: 0;
}
#collection-products .product .product-info p:not(.price) {
  color: #636466;
  font-size: 0.875rem;
  line-height: 1.4rem;
  margin-bottom: 2rem;
}
#collection-products .product .product-info button,
#collection-products .product .product-info a.ctabtn {
  align-self: flex-start;
}
#collection-products .product .product-info button:hover,
#collection-products .product .product-info a.ctabtn:hover {
  color: #ffffff;
}
#collection-products .product:nth-child(even) .product-image {
  order: 2;
}
#collection-products .product:nth-child(even) .product-info {
  order: 1;
}

#cta {
  background: rgba(224, 225, 226, 0.25);
  padding: 5rem 0;
}

#content.fullheight {
  display: flex;
  flex-direction: column;
  min-height: calc(100vh - 580px);
  padding: 10rem 0;
}
#content.fullheight .grid-container {
  width: 100%;
}
#content.fullheight .register-box {
  border: 1px solid #e0e1e2;
  border-radius: 16px;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
#content.fullheight .register-box a {
  align-self: center;
}
#content.fullheight .register-box > a.ctabtn.solid {
  align-self: stretch;
  text-align: center;
}
#content.fullheight .register-box .otp-expiry-link {
  color: inherit;
}
#content.fullheight .register-box p {
  margin-bottom: 0px;
  color: #939598;
}
#content.fullheight .register-box .flex-container {
  width: 100%;
  justify-content: space-between;
}
#content.fullheight .register-box .flex-container.vertical {
  gap: 16px;
}
#content.fullheight .register-box .flex-container.vertical label {
  width: 100%;
}

#cart .cart-table {
  border-radius: 16px;
  border: 1px solid #e0e1e2;
  overflow: hidden;
}
#cart .cart-table .table-head {
  background: #f9f9f9;
  color: #636466;
  padding: 1rem;
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: center;
}
#cart .cart-table .table-head div {
  width: 120px;
  text-align: center;
}
#cart .cart-table .table-head div:first-child {
  flex: 1;
  width: auto;
  text-align: right;
}
#cart .cart-table .table-head div:last-child {
  width: 48px;
}
#cart .cart-table .table-body .table-row {
  padding: 1rem;
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: center;
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}
#cart .cart-table .table-body .table-row > div {
  width: 120px;
  text-align: center;
}
#cart .cart-table .table-body .table-row > div:first-child {
  flex: 1;
  width: auto;
  text-align: right;
}
#cart .cart-table .table-body .table-row > div:last-child {
  width: 48px;
}
#cart .cart-table .table-body .table-row .product .product-image img {
  width: 150px;
  height: auto;
}
#cart .cart-table .table-body .table-row .price {
  color: #636466;
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 500;
}
#cart .cart-table .table-body .table-row .quantity .counter {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: center;
  border: 1px solid #e0e1e2;
  border-radius: 8px;
  padding: 0.5rem 1rem;
  gap: 24px;
  width: 100%;
}
#cart .cart-table .table-body .table-row .quantity .quantity-control {
  width: 100%;
}
#cart .cart-table .table-body .table-row .quantity .counter .btn {
  background: none;
  border: none;
  color: #00a79e;
  font-size: 1.5rem;
  width: 24px;
  height: 24px;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
#cart .cart-table .table-body .table-row .quantity .counter .btn:disabled {
  cursor: not-allowed;
  opacity: 0.35;
}
#cart .cart-table .table-body .table-row .quantity .counter .btn:hover {
  opacity: 0.6;
}
#cart .cart-table .table-body .table-row .quantity .counter .btn:disabled:hover {
  opacity: 0.35;
}
#cart .cart-table .table-body .table-row .quantity .counter .value {
  font-size: 1rem;
  color: #000000;
  text-align: center;
}
#cart .cart-table .table-body .table-row .quantity .quantity-note {
  color: #88898b;
  display: block;
  font-size: 0.75rem;
  margin-top: 0.4rem;
  text-align: center;
}
#cart .cart-table .table-body .table-row .total {
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 500;
}
#cart .cart-table .table-body .table-row:last-child {
  border-bottom: 0px solid transparent;
}
#cart .cart-actions {
  padding: 2rem 0;
}
#cart .cart-summary {
  border-radius: 16px;
  border: 1px solid #e0e1e2;
  overflow: hidden;
  background: #f9f9f9;
  color: #636466;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
#cart .cart-summary > div {
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
  padding-bottom: 1rem;
}
#cart .cart-summary > div:last-child {
  border-bottom: 0px solid transparent;
  padding-bottom: 0rem;
}
#cart .cart-summary .summary-label {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#cart .cart-summary .summary-value {
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: 600;
}
#cart .cart-summary .summary-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
#cart .cart-summary .summary-body .summary-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
#cart .cart-summary .summary-body .summary-row .summary-value {
  color: #464547;
}
#cart .cart-summary .summary-total {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
#cart .cart-summary .summary-total .summary-label {
  font-weight: 600;
}
#cart .cart-tips {
  padding: 1rem 0;
}
#cart .cart-tips .item {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 1rem;
}
#cart .cart-tips .item p {
  margin: 0px;
  font-size: 0.875rem;
  line-height: 1.4rem;
  color: #636466;
}
#cart .cart-discount {
  border-radius: 16px;
  border: 1px solid #e0e1e2;
  overflow: hidden;
  margin-top: 1rem;
  color: #636466;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
#cart .cart-discount > div {
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
  padding-bottom: 1rem;
}
#cart .cart-discount > div:last-child {
  border-bottom: 0px solid transparent;
  padding-bottom: 0rem;
}
#cart .cart-discount .discount-box {
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: center;
}
#cart .cart-discount .discount-box [type=text] {
  padding: 0.5rem 1rem;
}
#cart .cart-discount .discount-box button {
  margin-top: 1.875rem;
  white-space: nowrap;
}
#cart .option-box {
  border-radius: 16px;
  border: 1px solid #e0e1e2;
  overflow: hidden;
  margin-bottom: 1rem;
  color: #636466;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
#cart .option-box fieldset {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 1rem;
}
#cart .option-box fieldset label {
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 500;
  color: #464547;
}
#cart .option-box fieldset label.reached {
  color: #c7c8ca;
}
#cart .option-box fieldset label input {
  margin-left: 0.5rem;
  margin-right: 0;
  transform: translateY(3px);
}
#cart .option-box fieldset label div {
  gap: 4px;
  margin-top: 0.25rem;
  margin-right: 1.5rem;
}
#cart .option-box fieldset label div p {
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: normal;
  margin-bottom: 0;
  color: #636466;
}
#cart .option-box #time-chart .tabs {
  display: flex;
  flex-direction: row;
  border: 0px solid transparent;
  border-bottom: 1px solid #e0e1e2;
  margin-bottom: 1rem;
}
#cart .option-box #time-chart .tabs .tabs-title {
  float: none;
  margin-left: 2rem;
  padding-bottom: 1rem;
}
#cart .option-box #time-chart .tabs .tabs-title.is-active {
  border-bottom: 2px solid #00a79e;
}
#cart .option-box #time-chart .tabs .tabs-title a {
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 500;
  padding: 0px;
  color: #99cbc7;
}
#cart .option-box #time-chart .tabs .tabs-title > a[aria-selected=true] {
  background: transparent;
  color: #00a79e;
}
#cart .option-box #time-chart .tabs-content {
  border: 0px solid transparent;
  background: transparent;
}
#cart .option-box #time-chart .tabs-content .tabs-panel {
  padding: 0;
}
#cart.final-invoice {
  margin-bottom: 4rem;
}
#cart .checkout-summary-column {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
#cart .checkout-main-order-summary {
  margin-bottom: 1rem;
}
#cart .checkout-main-order-summary .cart-summary {
  width: 100%;
}
#cart .checkout-collapsible-box {
  display: block;
  padding: 0;
}
#cart .checkout-collapsible-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
#cart .checkout-collapsible-summary::-webkit-details-marker {
  display: none;
}
#cart .checkout-collapsible-summary h4 {
  margin: 0;
}
#cart .checkout-collapsible-summary::after {
  content: "";
  width: 0.625rem;
  height: 0.625rem;
  flex: 0 0 auto;
  border-left: 2px solid #00a79e;
  border-bottom: 2px solid #00a79e;
  transform: rotate(-45deg);
  transition: transform 160ms ease;
}
#cart .checkout-collapsible-box[open] > .checkout-collapsible-summary::after {
  transform: rotate(135deg);
}
#cart .checkout-collapsible-summary:focus-visible {
  outline: 2px solid #00a79e;
  outline-offset: -2px;
}
#cart .checkout-collapsible-content,
#cart .cart-summary > .checkout-collapsible-content {
  margin: 0 1rem;
  padding: 1rem 0 !important;
  border-top: 1px solid #e0e1e2;
  border-bottom: 0;
  border-image: none;
}
#cart .checkout-selected-delivery .checkout-collapsible-content > a {
  display: inline-block;
  margin-top: 1rem;
}
#cart .checkout-main-discount {
  margin-top: 1rem;
}
#cart .checkout-main-discount .discount-box {
  align-items: flex-start;
  flex-direction: column;
}
#cart .checkout-main-discount .discount-box > form {
  width: 100%;
}
#cart .checkout-discount-feedback {
  width: 100%;
  margin: 0;
}
#cart .checkout-auto-save-note {
  margin: 0;
  color: #636466;
  font-size: 0.875rem;
  line-height: 1.6rem;
}
#cart [data-payment-form][aria-busy="true"] {
  opacity: 0.65;
  pointer-events: none;
}
#cart .checkout-order-summary {
  gap: 0;
}
#cart .checkout-order-summary .checkout-summary-items {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
#cart .checkout-summary-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
}
#cart .checkout-summary-item.has-image {
  grid-template-columns: 48px minmax(0, 1fr);
}
#cart .checkout-summary-item img {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  object-fit: cover;
}
#cart .checkout-summary-item-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
#cart .checkout-summary-item-copy strong {
  overflow: hidden;
  font-size: 0.875rem;
  line-height: 1.4rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#cart .checkout-summary-item-copy span,
#cart .checkout-summary-line-total {
  color: #636466;
  font-size: 0.75rem;
  line-height: 1.2rem;
}
#cart .checkout-summary-line-total {
  grid-column: 1;
  color: #00a79e;
  font-weight: 600;
}
#cart .checkout-summary-item.has-image .checkout-summary-line-total {
  grid-column: 2;
}
#cart .checkout-primary-action {
  width: 100%;
  margin: 0;
  text-align: center;
}
#cart .checkout-place-order-form {
  margin: 0;
}
#cart .checkout-option-badge {
  display: inline-flex;
  margin-right: 0.5rem;
  padding: 0.125rem 0.5rem;
  border-radius: 999px;
  background: #e7f7f5;
  color: #007f78;
  font-size: 0.75rem;
  font-weight: 500;
}
#cart .checkout-selected-delivery p {
  margin-bottom: 0.5rem;
  color: #636466;
}
#cart .checkout-delivery-details {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 0;
}
#cart .checkout-delivery-details > div {
  display: grid;
  grid-template-columns: minmax(120px, 0.25fr) minmax(0, 1fr);
  gap: 1rem;
}
#cart .checkout-delivery-details dt {
  color: #636466;
  font-size: 0.875rem;
  font-weight: 500;
}
#cart .checkout-delivery-details dd {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin: 0;
  color: #464547;
}
#cart .checkout-delivery-details dd span {
  font-size: 0.875rem;
  line-height: 1.6rem;
}
@media screen and (max-width: 640px) {
  #cart .checkout-delivery-details > div {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }
}
#cart [data-shipping-details][hidden],
#cart [data-payment-details][hidden] {
  display: none !important;
}

#modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 10001;
}
body.address-modal-open {
  overflow: hidden;
}
#modal .overlay {
  background: #464547;
  opacity: 0.7;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
#modal .modalbox {
  background: #fff;
  width: 100%;
  max-width: 500px;
  border-radius: 24px;
  position: fixed;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
#modal .modalbox.address-modal-form {
  display: flex;
  flex-direction: column;
  max-height: calc(100% - 2rem);
}
#modal .modalbox .modal-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem 2rem;
  border-bottom: 1px solid #e0e1e2;
}
#modal .modalbox .modal-body {
  padding: 2rem 1rem 0;
}
#modal .modalbox .modal-body.address-details-step {
  overflow-y: auto;
  min-height: 0;
}
#modal [hidden] {
  display: none !important;
}
#modal .modalbox .modal-body img.map {
  width: 100%;
  height: auto;
  border-radius: 8px;
}
#modal .modalbox .modal-body .address-label,
#modal .modalbox .modal-body .address-value {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#modal .modalbox .modal-body .flex-container:not(.vertical) {
  gap: 16px;
}
#modal .modalbox .modal-body .flex-container:not(.vertical) .address-label,
#modal .modalbox .modal-body .flex-container:not(.vertical) .address-value {
  margin-bottom: 0.5rem;
}
#modal .modalbox .modal-body .flex-container.vertical {
  margin-bottom: 2rem;
}
#modal .modalbox .modal-body label {
  width: 100%;
  margin-bottom: 1rem;
}
#modal .modalbox .modal-body p {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#modal .modalbox .modal-body .options {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background: #e0e1e2;
  border: 1px solid #e0e1e2;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 1rem;
}
#modal .modalbox .modal-body .options button {
  padding: 1.5rem 0.5rem;
  text-align: center;
  background: #ffffff;
  font-size: 1rem;
  line-height: 1.6rem;
  color: #464547;
}
#modal .modalbox .modal-foot {
  padding: 1rem;
}
#modal .modalbox .modal-foot button,
#modal .modalbox .modal-foot a.ctabtn {
  width: 100%;
}
#modal .modalbox .modal-foot a.ctabtn {
  text-align: center;
}
#modal .modalbox .modal-foot .address-modal-actions {
  display: flex;
  justify-content: center;
  gap: 1rem;
  margin-top: 1rem;
}
#modal .modalbox .modal-foot .address-modal-actions button {
  width: auto;
}

#information {
  padding: 5rem 0;
}
#information .information-intro {
  max-width: 800px;
  margin-bottom: 3rem;
}
#information .info-section {
  scroll-margin-top: 2rem;
  border: 1px solid #e0e1e2;
  border-radius: 16px;
  padding: 2rem;
  margin-bottom: 2rem;
}
#information .info-section:last-child {
  margin-bottom: 0;
}
#information .info-section h2 {
  color: #00a79e;
}
#information .info-section h3 {
  color: #dab066;
  margin-top: 1.5rem;
}

#userpanel-header {
  background: rgba(224, 225, 226, 0.25);
  padding-top: 4rem;
}
#userpanel-header .user-info .avatar {
  width: 90px;
  height: 90px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 45px;
  margin-left: 1rem;
}
#userpanel-header .user-info h2 {
  margin-bottom: 0;
  margin-left: 0.5rem;
  color: #464547;
}
#userpanel-header .user-info .notification {
  position: relative;
}
#userpanel-header .user-info .notification.has-notif:after {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 6px;
  background: #e5494d;
  position: absolute;
  right: 3px;
  top: 4px;
  outline: 3px solid #f7f7f8;
  outline-offset: 0;
}
#userpanel-header .user-info .wallet {
  margin-top: 0.25rem;
  margin-bottom: 2rem;
}
#userpanel-header .user-info .wallet p {
  margin-bottom: 0;
  margin-left: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: 500;
  color: #939598;
}
#userpanel-header .user-info .wallet .ctabtn {
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: 500;
}
#userpanel-header .user-info .contact-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#userpanel-header .user-info .contact-info .info-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}
#userpanel-header .user-info .contact-info .info-row .info-label {
  font-size: 0.75rem;
  line-height: 1.2rem;
  color: #7b7c7f;
  font-weight: 500;
}
#userpanel-header .user-info .contact-info .info-row .info-value {
  font-size: 0.75rem;
  line-height: 1.2rem;
  color: #7b7c7f;
  font-weight: 500;
}
#userpanel-header .user-stats .summary-label {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#userpanel-header .user-stats .summary-value {
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: 600;
}
#userpanel-header .user-stats .summary-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 320px;
  width: 100%;
}
#userpanel-header .user-stats .summary-body .summary-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
#userpanel-header .user-stats .summary-body .summary-row .summary-value {
  color: #464547;
}
#userpanel-header .user-stats .summary-body > div {
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
  padding-bottom: 1rem;
}
#userpanel-header .user-stats .summary-body > div:last-child {
  border-bottom: 0px solid transparent;
  padding-bottom: 0rem;
}
#userpanel-header .grid-y {
  gap: 64px;
}
#userpanel-header .user-menu {
  width: 100%;
  margin: 0;
  padding: 0;
}
#userpanel-header .user-menu li {
  flex-grow: 1;
  margin: 0;
  padding: 0;
  list-style: none;
}
#userpanel-header .user-menu li a {
  color: #abadb0;
  padding-bottom: 1.5rem;
  border-bottom: 4px solid transparent;
  display: block;
}
#userpanel-header .user-menu li a svg {
  display: inline-block;
  vertical-align: middle;
}
#userpanel-header .user-menu li a svg path {
  stroke: #abadb0;
}
#userpanel-header .user-menu li a.active {
  color: #00a79e;
  border-color: #00a79e;
}
#userpanel-header .user-menu li a.active svg path {
  stroke: #00a79e;
}
#userpanel-header .user-menu li:last-child a svg path {
  stroke: #e5494d;
}
#userpanel-header .user-menu li:last-child a {
  color: #e5494d;
}
#userpanel-header.inline-pages .user-stats,
#userpanel-header.inline-pages .contact-info {
  display: none;
}

#userpanel {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
#userpanel .order-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  border: 1px solid #e0e1e2;
  border-radius: 8px;
  margin-bottom: 1rem;
}
#userpanel .order-card:last-child {
  margin-bottom: 0;
}
#userpanel .order-card > div {
  padding: 1rem;
  display: flex;
  flex-direction: row;
}
#userpanel .order-card .h4 {
  margin-bottom: 0px;
  color: #636466;
}
#userpanel .order-card .card-head {
  border-bottom: 1px solid #e0e1e2;
  justify-content: space-between;
}
#userpanel .order-card .card-head .tags {
  display: flex;
  position: relative;
}
#userpanel .order-card .card-body {
  padding: 1.5rem 1rem;
  border-bottom: 1px solid #e0e1e2;
  flex-direction: column;
}
#userpanel .order-card .card-body p {
  font-size: 0.75rem;
  line-height: 1.2rem;
  font-weight: 500;
  color: #636466;
}
#userpanel .order-card .card-body img {
  width: 100%;
  max-width: 112px;
  height: auto;
}
#userpanel .order-card .card-foot {
  justify-content: space-between;
}
#userpanel .order-card.minimal .card-head {
  border-bottom: 0px solid transparent;
}
#userpanel .order-card.minimal .card-foot {
  padding-top: 0px;
}
#userpanel .order-card.minimal .card-foot p {
  font-size: 0.75rem;
  line-height: 1.2rem;
  font-weight: 500;
  color: #636466;
  margin-bottom: 0px;
}
#userpanel .order-card-date-link {
  color: inherit;
}
#userpanel .tabs {
  margin-bottom: 1.5rem;
}
#userpanel .address-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 2rem;
  font-weight: 500;
}
#userpanel .address-list > div {
  border-radius: 16px;
  border: 1px solid #e0e1e2;
  overflow: hidden;
  color: #636466;
  padding: 1rem;
}
#userpanel .address-list .address-card-link {
  display: block;
  color: inherit;
}
#userpanel .address-list .address-card-link:hover,
#userpanel .address-list .address-card-link:focus {
  color: inherit;
}
#userpanel .address-list .address-card-link:focus-visible {
  outline: 2px solid #00a79e;
  outline-offset: 4px;
}
#userpanel .address-list > div div {
  gap: 4px;
  margin-top: 0.25rem;
}
#userpanel .address-list > div div p {
  font-size: 0.875rem;
  line-height: 1.4rem;
  font-weight: normal;
  margin-bottom: 0;
  color: #636466;
}
#userpanel .transaction-table {
  border-radius: 16px;
  border: 1px solid #e0e1e2;
  overflow: hidden;
}
#userpanel .transaction-table .table-head {
  background: #f9f9f9;
  color: #636466;
  padding: 1rem;
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: center;
}
#userpanel .transaction-table .table-head div {
  width: 120px;
  text-align: center;
}
#userpanel .transaction-table .table-head div:nth-child(2) {
  width: 180px;
}
#userpanel .transaction-table .table-head div:last-child {
  flex: 1;
  width: auto;
  text-align: right;
}
#userpanel .transaction-table .table-body .table-row {
  padding: 1rem;
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: center;
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}
#userpanel .transaction-table .table-body .table-row > div {
  width: 120px;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#userpanel .transaction-table .table-body .table-row > div:nth-child(2) {
  width: 180px;
}
#userpanel .transaction-table .table-body .table-row > div:last-child {
  flex: 1;
  width: auto;
  text-align: right;
}
#userpanel .edit-box {
  padding: 2.5rem;
  border: 1px solid #e0e1e2;
  border-radius: 16px;
}
#userpanel .edit-box.user-info {
  margin-bottom: 1.5rem;
}
#userpanel .edit-box.user-info .flex-container {
  gap: 32px;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
#userpanel .edit-box.user-info .flex-container label {
  flex-grow: 1;
}
#userpanel .edit-box.user-info .custom-select {
  width: auto;
}
#userpanel .edit-box.user-info .custom-select .selected {
  height: auto;
  padding: 0.75rem 1rem;
  border: 1px solid #e0e1e2;
  background-color: #ffffff;
  line-height: 2rem;
  color: #939598;
}
#userpanel .edit-box.user-info button {
  margin-top: 1rem;
}
#userpanel .edit-box.password .flex-container {
  gap: 32px;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
#userpanel .edit-box.password .flex-container > div {
  flex-grow: 1;
  width: 50%;
}
#userpanel .edit-box.password .flex-container > div label {
  margin-bottom: 1rem;
}
#userpanel .edit-box.password .flex-container p {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#userpanel .edit-box.password .flex-container ul {
  margin-left: 0px;
  margin-right: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.4rem;
}

#order-details {
  padding-bottom: 4rem;
}
#order-details h3.section-title {
  font-size: 1rem;
  line-height: 1.6rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}
#order-details .order-table {
  overflow: hidden;
}
#order-details .order-table .table-body .table-row {
  padding: 1rem;
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: center;
  border-bottom: 1px solid transparent;
  -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
     border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  border-image-slice: 1;
}
#order-details .order-table .table-body .table-row > div {
  width: 120px;
  text-align: center;
}
#order-details .order-table .table-body .table-row > div:first-child {
  flex: 1;
  width: auto;
  text-align: right;
}
#order-details .order-table .table-body .table-row .product .product-image img {
  width: 150px;
  height: auto;
}
#order-details .order-table .table-body .table-row .price {
  color: #636466;
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 500;
}
#order-details .order-table .table-body .table-row .quantity .counter {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: center;
  border: 1px solid #e0e1e2;
  border-radius: 8px;
  padding: 0.5rem 1rem;
  gap: 24px;
  width: 100%;
}
#order-details .order-table .table-body .table-row .quantity .counter .btn {
  background: none;
  border: none;
  color: #00a79e;
  font-size: 1.5rem;
  width: 24px;
  height: 24px;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
#order-details .order-table .table-body .table-row .quantity .counter .btn:hover {
  opacity: 0.6;
}
#order-details .order-table .table-body .table-row .quantity .counter .value {
  font-size: 1rem;
  color: #000000;
  text-align: center;
}
#order-details .order-table .table-body .table-row .total {
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 500;
}
#order-details .order-table .table-body .table-row:last-child {
  border-bottom: 0px solid transparent;
}
#order-details .order-actions {
  padding: 2rem 0;
}
#order-details .order-summary {
  overflow: hidden;
  color: #636466;
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 2rem;
}
#order-details .order-summary .summary-label {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#order-details .order-summary .summary-value {
  font-size: 0.875rem;
  line-height: 1.4rem;
}
#order-details .order-summary .summary-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
#order-details .order-summary .summary-body .summary-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
#order-details .order-summary .summary-body .summary-row .summary-value {
  color: #464547;
}
#order-details .order-summary .summary-body .summary-row.vertical {
  align-items: flex-start;
  flex-direction: column;
}
@font-face {
  font-family: "Sahel";
  src: url("./../fonts/SahelVariable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@media screen and (max-width: 768px) {
  h1,
  .h1 {
    font-size: 1.5rem;
    line-height: 2.4rem;
    margin-bottom: 2rem;
  }
  h2,
  .h2 {
    font-size: 1.125rem;
    line-height: 1.8rem;
    margin-bottom: 0.5rem;
  }
  h3,
  .h3 {
    font-size: 1.125rem;
    line-height: 1.8rem;
  }
  h3.module-title,
  .h3.module-title {
    margin-bottom: 0.5rem;
  }
  h4,
  .h4 {
    font-size: 1rem;
    line-height: 1.6rem;
  }
  p {
    font-size: 0.875rem;
    line-height: 1.4rem;
  }
  a.ctabtn {
    font-size: 0.875rem;
    line-height: 1.4rem;
  }
  a.ctabtn.solid:not(.just-icon) {
    width: 100%;
    text-align: center;
  }
  span.tag {
    padding: 0.25rem;
    margin-right: 0.25rem;
    font-size: 0.625rem;
  }
  span.category {
    font-size: 0.75rem;
  }
  [type=text],
  [type=password],
  [type=date],
  [type=datetime],
  [type=datetime-local],
  [type=month],
  [type=week],
  [type=email],
  [type=number],
  [type=search],
  [type=tel],
  [type=time],
  [type=url],
  [type=color],
  textarea {
    padding: 0.5rem 0.75rem;
    line-height: 1.6;
  }
  .no-scroll {
    position: fixed;
    width: 100%;
    overflow-y: hidden;
  }
  #promotion-bar {
    font-size: 0.75rem;
    line-height: 1.2rem;
  }
  #navbar {
    padding: 1.5rem 0;
  }
  #navbar .icons {
    flex-grow: 1;
  }
  #navbar .icons h3 {
    margin-bottom: 0px;
  }
  #navbar .logo {
    flex-grow: 1;
    text-align: left;
  }
  #navbar .logo img {
    max-height: 24px;
  }
  #mobile-navbar {
    padding: 1.5rem 0;
    border-bottom: 1px solid #e0e1e2;
  }
  #mobile-navbar .flex-container {
    gap: 8px;
  }
  #mobile-navbar .flex-container img {
    width: 24px;
    height: auto;
  }
  #header {
    padding: 2.5rem 0;
  }
  #header h1,
  #header .h1 {
    margin-bottom: 0;
  }
  #mobile-categories .categories-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
  }
  #mobile-categories .categories-list a {
    background: rgba(224, 225, 226, 0.25);
    display: block;
    border-radius: 8px;
    padding: 0.5rem;
  }
  #mobile-categories .categories-list a .cat {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  #mobile-categories .categories-list a .cat img {
    width: 100%;
    max-width: 40px;
    height: auto;
  }
  #mobile-categories .categories-list a .cat .cat-info {
    display: flex;
    flex-direction: column;
    margin-right: 1rem;
  }
  #mobile-categories .categories-list a .cat .cat-info h4 {
    color: #000000;
    font-size: 0.875rem;
    margin-bottom: 0;
  }
  #latest {
    padding: 2.5rem 0;
  }
  #latest h3.module-title,
  #latest .h3.module-title {
    margin-bottom: 1rem;
  }
  #latest .tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 0px;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  #latest .tabs::-webkit-scrollbar {
    display: none;
  }
  #latest .tabs li.tabs-title {
    flex: 0 0 auto;
    margin: 1rem 2rem;
    margin-right: 0;
  }
  #latest .tabs-content .tabs-panel .bento-container {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 250px);
  }
  #latest .tabs-content .tabs-panel .bento-container .item .item-info {
    right: 0;
    bottom: 16px;
    width: 100%;
  }
  #latest .tabs-content .tabs-panel .bento-container .item .item-info h4 {
    text-align: center;
  }
  #latest .tabs-content .tabs-panel .bento-container .item .item-info p {
    text-align: center;
  }
  #latest .tabs-content .tabs-panel .bento-container .item .item-info p.price {
    font-size: 0.875rem;
    line-height: 1.4rem;
    margin-bottom: 0;
  }
  #latest .tabs-content .tabs-panel .bento-container .item1 {
    grid-column: 2/span 1;
    grid-row: 1/span 1;
  }
  #latest .tabs-content .tabs-panel .bento-container .item2 {
    grid-column: 2/span 1;
    grid-row: 2/span 1;
  }
  #latest .tabs-content .tabs-panel .bento-container .item3 {
    grid-column: 1/span 1;
    grid-row: 1/span 1;
  }
  #latest .tabs-content .tabs-panel .bento-container .item4 {
    grid-column: 1/span 1;
    grid-row: 2/span 1;
  }
  #collection-promo {
    padding: 2.5rem 0 calc(2.5rem - 16px);
  }
  #collection-promo p {
    font-size: 0.75rem;
    line-height: 1.2rem;
  }
  #collection-promo p.price {
    font-size: 0.875rem;
    line-height: 1.4rem;
    margin-bottom: 0px;
  }
  #collection-promo .collection-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(4, 112px);
    gap: 0;
    margin-top: 2.5rem;
  }
  #collection-promo .collection-grid .item {
    border-bottom: 1px solid transparent;
    -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
       border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    border-image-slice: 1;
    padding: 1rem 0;
  }
  #collection-promo .collection-grid .item:last-child {
    border-width: 0;
  }
  #blog {
    padding: 2.5rem 0;
  }
  #blog p {
    font-size: 0.75rem;
    line-height: 1.2rem;
    margin-bottom: 1.5rem;
  }
  #blog .grid-x {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  #blog .grid-x::-webkit-scrollbar {
    display: none;
  }
  #blog .grid-x .cell.large-4 {
    flex: 0 0 auto;
    width: 320px;
    margin-left: 1rem;
  }
  #blog .blog-card .post-author .author-info {
    margin-right: 0;
  }
  #mobile-footer {
    padding: 2.5rem 0;
    border-top: 1px solid #e0e1e2;
  }
  #mobile-footer img {
    margin-bottom: 1rem;
  }
  #mobile-footer p {
    font-size: 0.75rem;
    line-height: 1.2rem;
    margin-bottom: 0.25rem;
  }
  #mobile-footer .contact-bar {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.75rem;
    line-height: 1.2rem;
  }
  #mobile-footer .contact-bar .v-line {
    margin: 0 1.5rem;
    width: 1px;
    height: 24px;
  }
  #mobile-footer .contact-bar .contact-item {
    display: flex;
    align-items: center;
  }
  #mobile-footer .contact-bar .contact-item img {
    width: 16px;
    height: auto;
    margin-bottom: 0px;
    margin-left: 0.5rem;
  }
  #mobile-footer .h-line {
    margin: 2.5rem 0;
  }
  #mobile-footer .flex-container {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  #mobile-footer .copyright {
    text-align: center;
    border: 0px solid transparent;
    padding: 0;
  }
  #mobile-footer .copyright .social-icons {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    margin-bottom: 1rem;
  }
  #mobile-footer .copyright .social-icons img {
    width: 24px;
    height: 24px;
    margin-bottom: 0;
  }
  #mobile-footer .copyright p {
    margin-bottom: 1rem;
    font-size: 0.75rem;
    line-height: 1.2rem;
  }
  #mobile-footer .copyright .footer-links {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
  }
  #float-menu {
    position: fixed;
    z-index: 10000;
    background: #00a79e;
    padding: 0.5rem 1.5rem;
    border-radius: 64px;
    left: 50%;
    transform: translateX(-50%);
    bottom: 35px;
    box-shadow: 0px 20px 20px -20px rgba(0, 0, 0, 0.5);
  }
  #float-menu ul {
    margin: 0px;
    padding: 0px;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 0;
  }
  #float-menu ul li {
    list-style: none;
  }
  #float-menu ul li:nth-child(odd) {
    width: 32px;
  }
  #float-menu ul li .v-line {
    margin: 0 1rem;
    width: 1px;
    height: 40px;
    -o-border-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0)) 1 100%;
       border-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0)) 1 100%;
  }
  #float-menu ul li a {
    display: inline-block;
  }
  #float-menu ul li a img {
    vertical-align: middle;
    width: 100%;
  }
  #head {
    padding: 1.5rem 0;
  }
  #head .flex-container .custom-select {
    flex-grow: 1;
  }
  #head .flex-container .ctabtn {
    margin-right: 1rem;
  }
  #head h1 {
    font-size: 1rem;
    line-height: 1.6rem;
  }
  #list {
    padding: 0.5rem 0 1.5rem;
  }
  #list .products {
    grid-template-columns: repeat(4, 1fr);
  }
  #list .custom-pagination li a {
    font-size: 0.875rem;
    line-height: 1.5rem;
    color: #00a79e;
    text-decoration: none;
  }
  #mobile-filter {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: #ffffff;
    z-index: 10001;
    display: none;
    overflow-y: auto;
  }
  #mobile-filter .filters .filters-head {
    margin-bottom: 2rem;
    padding: 1rem 0 0;
  }
  #mobile-filter .filters .filters-head h3 {
    font-size: 1rem;
    line-height: 1.6rem;
    color: #636466;
    margin-bottom: 0.25rem;
    flex-grow: 1;
  }
  #mobile-filter .filters .filters-head p {
    font-size: 0.875rem;
    line-height: 1.4rem;
    color: #636466;
  }
  #mobile-filter .filters .module {
    margin-bottom: 2rem;
  }
  #mobile-filter .filters .module h3.module-title {
    font-size: 1rem;
    line-height: 1.6rem;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid transparent;
    -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
       border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    border-image-slice: 1;
  }
  #mobile-filter .filters .module .flex-container {
    gap: 8px;
  }
  #mobile-filter .filters .module .flex-container p {
    margin: 0px;
  }
  #mobile-filter .filters .module .flex-container label {
    margin: 0px;
  }
  #mobile-filter .filters #price-filter .price-values {
    display: flex;
    justify-content: space-between;
    font-size: 0.875rem;
    line-height: 1.4rem;
    color: #636466;
    margin-bottom: 1rem;
  }
  #mobile-filter .filters #price-filter .histogram {
    display: flex;
    align-items: flex-end;
    height: 80px;
    gap: 2px;
    margin-bottom: 0;
    padding: 0 0.5rem;
  }
  #mobile-filter .filters #price-filter .histogram .bar {
    flex: 1;
    background: #cae1df;
    transition: opacity 0.25s ease, height 0.25s ease;
  }
  #mobile-filter .filters #price-filter .price-slider {
    margin: 0 5px;
    background: #e0e1e2;
    border-radius: 10px;
    border: none;
    height: 6px;
  }
  #mobile-filter .filters #price-filter .price-slider .noUi-base .noUi-connects .noUi-connect {
    background: #00a79e;
  }
  #mobile-filter .filters #price-filter .price-slider .noUi-origin .noUi-handle {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #00a79e;
    border: 0 solid transparent;
    border: 4px solid #ffffff;
    cursor: pointer;
    top: -5px;
    box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.15);
    left: -8px;
  }
  #mobile-filter .filters #price-filter .price-slider .noUi-origin .noUi-handle:before {
    display: none;
  }
  #mobile-filter .filters #price-filter .price-slider .noUi-origin .noUi-handle:after {
    display: none;
  }
  #mobile-filter .filters .filter-switch {
    position: relative;
    display: inline-block;
    width: 36px;
    height: 20px;
  }
  #mobile-filter .filters .filter-switch input {
    opacity: 0;
    width: 0;
    height: 0;
  }
  #mobile-filter .filters .filter-switch input:checked + .switch-slider {
    background-color: #00a79e;
  }
  #mobile-filter .filters .filter-switch input:checked + .switch-slider::before {
    transform: translateX(16px);
  }
  #mobile-filter .filters .switch-slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #e0e1e2;
    transition: 0.4s;
    border-radius: 34px;
  }
  #mobile-filter .filters .switch-slider::before {
    position: absolute;
    content: "";
    height: 16px;
    width: 16px;
    left: 2px;
    bottom: 2px;
    background-color: #00a79e;
    border: 4px solid #ffffff;
    box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.15);
    transition: 0.4s;
    border-radius: 50%;
  }
  #mobile-filter .filters-bottom {
    position: fixed;
    bottom: 0;
    padding: 1.5rem 1rem;
    background: #f4f4f5;
    width: 100%;
  }
  #breadcrumbs {
    padding-top: 1rem;
  }
  #product-head {
    padding: 1rem 0;
  }
  #product-head .product-gallery {
    margin-bottom: 1.5rem;
  }
  #product-head .product-gallery .thumbnails img {
    width: 56px !important;
    height: 56px !important;
    opacity: 1 !important;
  }
  #product-head .btn-group .btn {
    padding: 1rem;
  }
  #product-head .product-info {
    display: flex;
    flex-direction: column;
  }
  #product-head .product-info .tag {
    order: 1;
    display: inline-block;
    font-size: 0.75rem;
    line-height: 1.2rem;
    align-self: flex-start;
  }
  #product-head .product-info h1 {
    margin: 0.75rem 0 0;
    font-size: 1.5rem;
    line-height: 2.4rem;
    color: #636466;
    order: 2;
  }
  #product-head .product-info p {
    font-size: 0.75rem;
    line-height: 1.2rem;
    margin-bottom: 1.5rem;
    order: 5;
  }
  #product-head .product-info .feature-list {
    order: 4;
    margin: 0;
    margin-bottom: 0.75rem;
  }
  #product-head .product-info .options.size {
    order: 6;
    margin-bottom: 1.5rem;
  }
  #product-head .product-info .options.size .btn-group {
    display: flex;
  }
  #product-head .product-info .options.weight {
    order: 7;
    margin-bottom: 0;
  }
  #product-head .product-info .options.weight .custom-select {
    width: 100%;
  }
  #product-head .product-info .price {
    order: 3;
    padding: 0.75rem 0;
  }
  #product-head .product-info .price .old-price {
    font-size: 0.75rem;
    line-height: 1.2rem;
  }
  #product-head .product-info .price .main-price {
    font-size: 1.125rem;
    line-height: 1.8rem;
  }
  #product-head .product-info .ctabtn {
    display: none;
  }
  #description.product-description {
    padding: 1rem 0;
  }
  #description.product-description h3.module-title {
    font-size: 1rem;
    line-height: 1.6rem;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
  }
  #related-products {
    padding: 4rem 0;
  }
  #related-products .products {
    grid-template-columns: repeat(2, 1fr);
  }
  #collection-header img {
    height: 300px;
  }
  #collection-header .overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.25) 30%, rgba(0, 0, 0, 0.6) 70%);
  }
  #collection-header .collection-info {
    bottom: 16px;
    width: 100%;
    padding: 0 1rem;
  }
  #collection-header .collection-info h1 {
    margin-bottom: 0.5rem;
  }
  #collection-header .collection-info p {
    margin: 0 auto 1rem;
  }
  #collection-products .products {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1px;
    background-image: radial-gradient(rgba(0, 0, 0, 0.1) 15%, rgba(0, 0, 0, 0) 85%);
    margin: 1rem 0 1.5rem;
  }
  #collection-products .products .product {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  #collection-products .products .product .product-image {
    position: relative;
    flex-grow: 1;
    width: 100%;
  }
  #collection-products .products .product .product-image a {
    width: 100%;
  }
  #collection-products .products .product .product-image a img {
    width: 100%;
    height: auto;
  }
  #collection-products .products .product .product-info {
    width: 100%;
    padding: 0px;
    align-items: center;
  }
  #collection-products .products .product .product-info h4 {
    font-size: 1rem;
    line-height: 1.6rem;
    margin-bottom: 0.25rem;
  }
  #collection-products .products .product .product-info .price {
    color: #dab066;
    margin-bottom: 0;
    font-size: 1rem;
    line-height: 1.6rem;
  }
  #collection-products .products .product:nth-child(even) .product-image {
    order: 1;
  }
  #collection-products .products .product:nth-child(even) .product-info {
    order: 2;
  }
  #content.fullheight {
    padding: 4.5rem 0;
  }
  #content.fullheight .register-box {
    padding: 2rem 1rem;
  }
  #cart .cart-table {
    border-radius: 0;
    border: 0px solid transparent;
  }
  #cart .cart-table .table-body .table-row {
    padding: 1rem 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
  }
  #cart .cart-table .table-body .table-row > div {
    width: 100%;
    text-align: right;
  }
  #cart .cart-table .table-body .table-row .product .product-image img {
    max-width: 80px;
    margin-left: 1rem;
  }
  #cart .cart-table .table-body .table-row .quantity {
    padding-right: 96px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #cart .cart-table .table-body .table-row .quantity .counter {
    width: auto;
  }
  #cart .cart-table .table-body .table-row .quantity .quantity-control {
    width: auto;
  }
  #cart .cart-table .table-body .table-row .total {
    padding-right: 96px;
    display: flex;
    justify-content: space-between;
  }
  #cart .cell.large-3 {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    display: flex;
    flex-direction: column;
  }
  #cart .cell.large-3 .cart-summary {
    margin-top: 1rem;
    padding: 2.5rem 1rem;
    border-radius: 0;
    border: 0 solid transparent;
    overflow: hidden;
    background: #f9f9f9;
    color: #636466;
    order: 2;
  }
  #cart .cell.large-3 .cart-discount {
    background: #f9f9f9;
    order: 1;
    border-radius: 0;
    border: 0 solid transparent;
    overflow: hidden;
    margin-top: 1rem;
    margin-bottom: -1rem;
    padding: 2.5rem 1rem 0;
  }
  #cart .cell.large-3 .cart-discount .discount-box label {
    lex-grow: 1;
  }
  #cart .cell.large-3 .cart-discount .discount-box button {
    padding: 0.5625rem 1.5rem;
  }
  #cart .option-box {
    border-radius: 0;
    border: 0 solid transparent;
    padding: 0;
  }
  #cart .option-box fieldset label {
    border-radius: 8px;
    border: 1px solid #e0e1e2;
    color: #636466;
    padding: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.4rem;
  }
  #cart .option-box a {
    margin-bottom: 2rem;
  }
  #cart.final-invoice {
    margin-bottom: 0;
  }
  #modal .modalbox {
    border-radius: 0;
    height: 100%;
  }
  #modal .modalbox.address-modal-form {
    max-height: 100%;
  }
  #userpanel-header {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  #userpanel-header .flex-container.space-between {
    flex-direction: column;
  }
  #userpanel-header .flex-container.user-menu {
    flex-direction: column;
    width: 100%;
    gap: 12px;
  }
  #userpanel-header .flex-container.user-menu li {
    width: 100%;
    border-bottom: 1px solid transparent;
    -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
       border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    border-image-slice: 1;
    padding-bottom: 0.75rem;
  }
  #userpanel-header .flex-container.user-menu li:last-child {
    border-bottom: 0px solid transparent;
    padding-bottom: 0rem;
  }
  #userpanel-header .flex-container.user-menu li a {
    padding-bottom: 0;
    border-bottom: 4px solid transparent;
    font-size: 0.75rem;
    line-height: 1.2rem;
    font-weight: 600;
    color: #00a79e;
  }
  #userpanel-header .flex-container.user-menu li a svg {
    width: 16px;
    height: 16px;
  }
  #userpanel-header .flex-container.user-menu li a svg path {
    stroke: #00a79e;
  }
  #userpanel-header .flex-container.user-menu li:last-child a svg path {
    stroke: #e5494d;
  }
  #userpanel-header .flex-container.user-menu li:last-child a {
    color: #e5494d;
  }
  #userpanel-header .user-info {
    width: 100%;
  }
  #userpanel-header .user-info .flex-container {
    width: 100%;
  }
  #userpanel-header .user-info .flex-container.wallet {
    justify-content: space-between;
    margin-top: 0px;
    margin-bottom: 0px;
  }
  #userpanel-header .user-info .avatar {
    width: 48px;
    height: 48px;
    border-radius: 24px;
  }
  #userpanel-header .user-info .notification {
    width: 20px;
    height: 20px;
  }
  #userpanel-header .user-info .notification.has-notif:after {
    width: 4px;
    height: 4px;
    border-radius: 4px;
    right: 4px;
    top: 5px;
    outline: 2px solid #f7f7f8;
  }
  #userpanel-header .user-stats {
    width: 100%;
    margin-top: 2rem;
  }
  #userpanel-header .user-stats .summary-body {
    max-width: 100%;
  }
  .mobile-user-menu {
    padding-top: 1.5rem;
    padding-bottom: 0;
  }
  .mobile-user-menu .user-menu {
    flex-direction: column;
    width: 100%;
    gap: 12px;
  }
  .mobile-user-menu .user-menu li {
    flex-grow: 1;
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    border-bottom: 1px solid transparent;
    -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
       border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    border-image-slice: 1;
    padding-bottom: 0.75rem;
  }
  .mobile-user-menu .user-menu li:last-child {
    border-bottom: 0px solid transparent;
    padding-bottom: 0rem;
  }
  .mobile-user-menu .user-menu li a {
    padding-bottom: 0;
    border-bottom: 4px solid transparent;
    font-size: 0.75rem;
    line-height: 1.2rem;
    font-weight: 600;
    color: #00a79e;
    display: block;
  }
  .mobile-user-menu .user-menu li a svg {
    display: inline-block;
    vertical-align: middle;
    width: 16px;
    height: 16px;
  }
  .mobile-user-menu .user-menu li a svg path {
    stroke: #00a79e;
  }
  .mobile-user-menu .user-menu li:last-child a svg path {
    stroke: #e5494d;
  }
  .mobile-user-menu .user-menu li:last-child a {
    color: #e5494d;
  }
  #userpanel {
    padding: 1.5rem 0;
  }
  #userpanel .order-card > div {
    padding: 0.75rem;
  }
  #userpanel .order-card .h4 {
    font-size: 0.875rem;
    line-height: 1.4rem;
  }
  #userpanel .order-card .card-body {
    padding: 1rem 0.75rem;
  }
  #userpanel .order-card .card-body img {
    width: 100%;
    max-width: 64px;
    height: auto;
    border: 1px solid rgba(224, 225, 226, 0.4);
    margin-left: 0.5rem;
    border-radius: 4px;
  }
  #userpanel .order-card .card-foot {
    justify-content: space-between;
  }
  #userpanel .address-list {
    margin-bottom: 1rem;
  }
  #userpanel .address-list > div {
    border-radius: 16px;
    border: 1px solid #e0e1e2;
    overflow: hidden;
    color: #636466;
    padding: 1rem;
  }
  #userpanel .transaction-table {
    border-radius: 0;
    border: 0 solid transparent;
    overflow: hidden;
  }
  #userpanel .transaction-table .table-body .table-row {
    padding: 1rem 0;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 8px;
    align-items: baseline;
    border-bottom: 1px solid transparent;
    -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
       border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    border-image-slice: 1;
  }
  #userpanel .transaction-table .table-body .table-row .note {
    grid-area: 1/1/2/2;
    text-align: right;
  }
  #userpanel .transaction-table .table-body .table-row .price {
    grid-area: 1/2/2/3;
    text-align: left;
    justify-self: end;
  }
  #userpanel .transaction-table .table-body .table-row .date {
    grid-area: 2/1/3/3;
    text-align: right;
  }
  #userpanel .transaction-table .table-body .table-row .name,
  #userpanel .transaction-table .table-body .table-row .status {
    display: none;
  }
  #userpanel .transaction-table .table-body .table-row:last-child {
    border: 0px solid transparent;
  }
  #userpanel .edit-box {
    padding: 0;
    border: 0 solid transparent;
    border-radius: 0;
  }
  #userpanel .edit-box .flex-container:not(.date-of-birth) {
    flex-direction: column;
    gap: 16px !important;
  }
  #userpanel .edit-box .flex-container:not(.date-of-birth) label {
    width: 100%;
  }
  #userpanel .edit-box .date-of-birth {
    gap: 4px !important;
  }
  #userpanel .edit-box .date-of-birth .custom-select .selected {
    padding: 0.5rem 0.75rem;
    line-height: 1.6;
  }
  #userpanel .edit-box .ctabtn {
    width: 100%;
  }
  #userpanel .edit-box.password .flex-container {
    flex-direction: column-reverse;
  }
  #userpanel .edit-box.password .flex-container > div {
    width: 100%;
  }
  #order-details {
    padding: 1.5rem 0;
  }
  #order-details .order-table .table-body .table-row {
    padding: 1rem 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    align-items: baseline;
    border-bottom: 1px solid transparent;
    -o-border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
       border-image: linear-gradient(to left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    border-image-slice: 1;
  }
  #order-details .order-table .table-body .table-row:last-child {
    border: 0px solid transparent;
  }
  #order-details .order-table .table-body .table-row .product .product-image img {
    width: 120px;
    height: auto;
  }
  #order-details .order-table .table-body .table-row .total {
    padding-right: 7.5rem;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  #order-details .tabs .tabs-title {
    margin-left: 1rem;
  }
  #related-products {
    padding: 1.5rem 0;
  }
}
@media screen and (max-width: 640px) {
  #list .products {
    grid-template-columns: repeat(2, 1fr);
  }
  #content.fullheight {
    padding: 2rem 0 0;
  }
  #content.fullheight .register-box {
    border-color: transparent;
    padding: 0;
  }
  .btn-group .btn {
    padding: 1rem 1.5rem;
  }
  .tabs .tabs-title {
    margin-left: 1rem;
  }
}
/* Dynamic catalog states */
.catalog-media-unavailable {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 10rem;
	background: #f4f1eb;
	color: #6f6f6f;
}

.catalog-empty-state,
.catalog-unavailable {
	color: #767676;
}

.catalog-price {
	display: flex;
	gap: 0.75rem;
	align-items: baseline;
	flex-wrap: wrap;
}

.compare-at-price {
	text-decoration: line-through;
	color: #767676;
}

.catalog-stock-tag {
	background: #767676;
}

.catalog-sort-select,
.catalog-price-inputs input {
	border: 1px solid #d7d1c7;
	border-radius: 0.25rem;
}

.catalog-sort-control {
	position: relative;
}

.catalog-sort-control select {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
	z-index: 2;
}

.catalog-sort-control:focus-within .selected {
	outline: 2px solid #00a79e;
	outline-offset: 2px;
}

.catalog-category-filter a {
	color: #464547;
}

.catalog-price-filter .histogram-container {
	position: relative;
	padding-bottom: 1rem;
}

.catalog-range-track {
	height: 6px;
	margin: 0 5px;
	border-radius: 10px;
	background: #00a79e;
}

.catalog-range {
	position: absolute;
	right: 0;
	bottom: 0.75rem;
	width: 100%;
	height: 6px;
	margin: 0;
	border: 0;
	background: transparent;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
}

.catalog-range::-webkit-slider-thumb {
	width: 16px;
	height: 16px;
	border: 4px solid #fff;
	border-radius: 50%;
	background: #00a79e;
	box-shadow: 0 8px 15px rgba(0, 0, 0, 0.15);
	pointer-events: auto;
	-webkit-appearance: none;
	cursor: pointer;
}

.catalog-range::-moz-range-thumb {
	width: 8px;
	height: 8px;
	border: 4px solid #fff;
	border-radius: 50%;
	background: #00a79e;
	box-shadow: 0 8px 15px rgba(0, 0, 0, 0.15);
	pointer-events: auto;
	cursor: pointer;
}

.catalog-sort-label {
	margin-left: 0.5rem;
}

.catalog-filters .ctabtn {
	margin-top: 1rem;
}

.catalog-variant-facts {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 0.5rem 1rem;
}

.catalog-variant-facts dd {
	margin: 0;
}

.catalog-inline-error,
.catalog-filter-errors {
	color: #9f2f2f;
}

.catalog-inline-error {
	font-size: 0.8125rem;
	margin-top: 0.375rem;
}

#product-head .product-info .variant-option-group {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
	width: 100%;
	gap: 1px;
	border: 1px solid #e0e1e2;
	border-radius: 8px;
	background: #e0e1e2;
	overflow: hidden;
}

#product-head .product-info .variant-option-group .btn,
#product-head .product-info .variant-option-group .btn:not(:last-child) {
	min-width: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: #fff;
	color: #000;
	font: inherit;
	font-size: 0.875rem;
	line-height: 1.4rem;
	text-align: center;
	appearance: none;
	box-shadow: none;
	outline: 0;
	transition: background-color 160ms ease, color 160ms ease, opacity 160ms ease;
}

#product-head .product-info .variant-option-group .btn.active,
#product-head .product-info .variant-option-group .btn[aria-pressed="true"] {
	background: #00a79e;
	color: #fff;
	box-shadow: none;
	outline: 0;
}

#product-head .product-info .variant-option-group .btn.is-unavailable:not(.active) {
	color: #939598;
}

#product-head .product-info .variant-option-group .btn:focus-visible {
	box-shadow: inset 0 0 0 2px #007f78;
}

@media (hover: hover) and (pointer: fine) {
	#product-head .product-info .variant-option-group .btn:not(.active):hover {
		background: #f4f4f5;
		color: #007f78;
	}

	#product-head .product-info .variant-option-group .btn.active:hover,
	#product-head .product-info .variant-option-group .btn[aria-pressed="true"]:hover {
		background: #00a79e;
		color: #fff;
	}
}

@media screen and (max-width: 640px) {
	#product-head .product-info .variant-option-group {
		grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
	}

	#product-head .product-info .variant-option-group .btn {
		padding: 0.75rem 0.5rem;
	}
}

/* Catalog index pages */
.catalog-index {
	padding: 5rem 0;
}

.catalog-index-header {
	margin-bottom: 2rem;
}

.catalog-index-header h1 {
	color: #00a79e;
}

.catalog-index-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

@media screen and (min-width: 1024px) {
	.catalog-category-index-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.catalog-category-index-grid .catalog-index-card-media {
	height: auto;
	aspect-ratio: 3 / 2;
}

.catalog-index-card {
	display: block;
	border: 1px solid #e0e1e2;
	border-radius: 8px;
	overflow: hidden;
	background: #fff;
}

.catalog-index-card-media {
	height: 18rem;
	overflow: hidden;
}

.catalog-index-card-media img,
.catalog-index-card-media .catalog-media-unavailable {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.catalog-index-card-content {
	padding: 1.5rem;
}

.catalog-index-card-content h2 {
	font-size: 1.125rem;
	line-height: 1.8rem;
	color: #000;
	margin-bottom: 0.5rem;
}

.catalog-index-card-content p {
	color: #636466;
	font-size: 0.875rem;
	line-height: 1.6rem;
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	.catalog-index {
		padding: 3rem 0;
	}

	.catalog-index-grid,
	.catalog-collection-index-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 640px) {
	.catalog-index-grid,
	.catalog-collection-index-grid {
		grid-template-columns: 1fr;
	}

	.catalog-index-card-media {
		height: 16rem;
	}
}

#content.fullheight .register-box button.ctabtn.solid {
	align-self: stretch;
	width: 100%;
}

#content.fullheight .register-box select {
	height: auto;
	margin: 0.5rem 0 0;
	padding: 0.75rem 1rem;
	border: 1px solid #e0e1e2;
	border-radius: 8px;
	background-color: #fff;
	box-shadow: none;
	color: #939598;
	line-height: 2rem;
}

#content.fullheight .register-box .auth-field-row {
	gap: 1rem;
}

#content.fullheight .register-box .auth-field-row > label {
	flex: 1 1 0;
}

#content.fullheight .register-box .form-errors {
	padding: 0.75rem 1rem;
	border: 1px solid #eabdbf;
	border-radius: 8px;
	background: rgba(234, 189, 191, 0.2);
}

#content.fullheight .register-box .form-errors p {
	color: #e74040;
}

#content.fullheight .register-box .form-status {
	color: #00a79e;
}

#content.fullheight .register-box .otp-development-notice,
#content.fullheight .register-box .optional-field {
	font-size: 0.75rem;
}

#userpanel-header .user-menu li form {
	margin: 0;
}

#userpanel-header .user-menu li .account-menu-button {
	width: 100%;
	padding: 0 0 1.5rem;
	border: 0;
	border-bottom: 4px solid transparent;
	background: transparent;
	color: #e5494d;
	font: inherit;
	text-align: right;
	cursor: pointer;
}

#userpanel-header .user-menu li .account-menu-button svg {
	display: inline-block;
	vertical-align: middle;
}

#userpanel-header .user-menu li .account-menu-button svg path {
	stroke: #e5494d;
}

@media screen and (max-width: 640px) {
	#content.fullheight .register-box .auth-field-row {
		flex-direction: column;
	}

	#content.fullheight .register-box .auth-field-row > label {
		width: 100%;
	}

	.mobile-user-menu .user-menu li .account-menu-button {
		padding-bottom: 0;
		font-size: 0.75rem;
		line-height: 1.2rem;
		font-weight: 600;
	}
}
.sensitive-account-section { margin-top: 1.5rem; }
.danger-zone { border: 1px solid #a83232; }
.danger-zone h3 { color: #a83232; }
.checkbox-label { display: flex; gap: .5rem; align-items: flex-start; }
.checkbox-label input { width: auto; margin-top: .3rem; }

/* Public search, notifications, result, error and shared page states */
.public-surface {
	padding: 4rem 0 5rem;
}

.public-surface-header {
	margin-bottom: 2rem;
}

.public-surface-header h1 {
	color: #00a79e;
	margin-bottom: 0.5rem;
}

.public-surface-header p {
	color: #636466;
	margin-bottom: 0;
}

.search-form {
	max-width: 52rem;
	margin-bottom: 2.5rem;
}

.search-form > label {
	display: block;
	margin-bottom: 0.5rem;
	font-weight: 600;
}

.search-form-row {
	display: flex;
	gap: 0.75rem;
}

.search-form-row input {
	min-width: 0;
	margin: 0;
	border: 1px solid #d7d1c7;
	border-radius: 8px;
	box-shadow: none;
}

.search-form-row .ctabtn {
	flex: 0 0 auto;
	margin: 0;
}

.search-results-heading {
	align-items: baseline;
	margin: 2rem 0 1.5rem;
}

.search-results-heading h2,
.search-results-heading span {
	margin: 0;
}

.search-results-heading span {
	color: #636466;
}

#list.search-results-list {
	padding: 0;
}

.empty-state,
.catalog-empty-state {
	width: 100%;
	padding: 2.5rem 1.5rem;
	border: 1px dashed #d7d1c7;
	border-radius: 16px;
	background: #fbfaf7;
	color: #636466;
	text-align: center;
}

.empty-state h3 {
	margin: 0.75rem 0 0.5rem;
	color: #303030;
}

.empty-state p {
	max-width: 38rem;
	margin: 0 auto 1.25rem;
}

.empty-state-mark {
	display: inline-block;
	width: 2.75rem;
	height: 2.75rem;
	border: 2px solid #d9ad72;
	border-radius: 50%;
	position: relative;
}

.empty-state-mark::before,
.empty-state-mark::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	background: #d9ad72;
	transform: translate(-50%, -50%);
}

.empty-state-mark::before {
	width: 1rem;
	height: 2px;
}

.empty-state-mark::after {
	width: 2px;
	height: 1rem;
}

.page-loading-state {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: grid;
	place-items: center;
	padding: 1.5rem;
	background: rgba(255, 255, 255, 0.78);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}

.page-loading-state[hidden] {
	display: none;
}

.page-loading-card {
	display: flex;
	min-width: 13rem;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 1.5rem 2rem;
	border: 1px solid #e0e1e2;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(0, 0, 0, 0.12);
	color: #636466;
}

.page-loading-spinner {
	width: 2.25rem;
	height: 2.25rem;
	margin-bottom: 0.5rem;
	border: 3px solid rgba(0, 167, 158, 0.2);
	border-top-color: #00a79e;
	border-radius: 50%;
	animation: delbiss-spin 0.8s linear infinite;
}

@keyframes delbiss-spin {
	to { transform: rotate(360deg); }
}

.page-is-loading {
	cursor: wait;
}

.notification-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 1rem;
	align-items: center;
	margin-bottom: 0.75rem;
	padding: 1.25rem;
	border: 1px solid #e0e1e2;
	border-radius: 12px;
	background: #fff;
	color: #303030;
	transition: border-color 150ms ease, transform 150ms ease;
}

.notification-card:hover,
.notification-card:focus-visible {
	border-color: #00a79e;
	transform: translateY(-2px);
}

.notification-card-icon,
.notification-detail-icon {
	display: grid;
	width: 3rem;
	height: 3rem;
	place-items: center;
	border-radius: 50%;
	background: rgba(0, 167, 158, 0.08);
}

.notification-card-icon img,
.notification-detail-icon img {
	width: 1.35rem;
	height: 1.35rem;
}

.notification-card-content {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 0.25rem;
}

.notification-card-content > span,
.notification-card-content time,
.notification-detail time {
	color: #767676;
	font-size: 0.8125rem;
}

.notification-card-chevron {
	width: 0.5rem;
	transform: rotate(180deg);
}

.notification-detail,
.result-card,
.error-card {
	padding: 2.5rem;
	border: 1px solid #e0e1e2;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 18px 55px rgba(47, 43, 37, 0.07);
	text-align: center;
}

.notification-detail h1 {
	margin: 1.25rem 0 0.75rem;
}

.notification-detail-icon {
	margin: 0 auto;
}

.surface-actions {
	display: flex;
	justify-content: center;
	gap: 0.75rem;
	margin-top: 1.75rem;
	flex-wrap: wrap;
}

.result-card h1 {
	margin: 1rem 0 0.75rem;
}

.result-symbol {
	display: inline-grid;
	width: 4.5rem;
	height: 4.5rem;
	place-items: center;
	border: 2px solid currentColor;
	border-radius: 50%;
	font-size: 2rem;
	font-weight: 700;
}

.result-card-success .result-symbol { color: #00a79e; }
.result-card-failure .result-symbol { color: #e5494d; }
.result-card-neutral .result-symbol { color: #d09b53; }

.result-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
	margin: 2rem 0 0;
}

.result-facts > div {
	padding: 1rem;
	border-radius: 10px;
	background: #f8f6f1;
}

.result-facts dt {
	margin-bottom: 0.35rem;
	color: #767676;
	font-size: 0.8125rem;
}

.result-facts dd {
	margin: 0;
	font-weight: 600;
}

.error-page {
	min-height: 100vh;
	background: #f8f6f1;
}

.error-surface {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2rem;
	padding: 2rem 1rem;
}

.error-logo img {
	width: 9rem;
	height: auto;
}

.error-card {
	width: min(100%, 38rem);
}

.error-code {
	display: block;
	color: #d9ad72;
	font-size: clamp(3.5rem, 10vw, 6.5rem);
	font-weight: 700;
	line-height: 1;
}

.error-card h1 {
	margin: 1rem 0 0.75rem;
	color: #00a79e;
}

.account-menu-image-icon {
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-left: 0.25rem;
	vertical-align: middle;
}

@media (prefers-reduced-motion: reduce) {
	.page-loading-spinner { animation-duration: 1.8s; }
	.notification-card { transition: none; }
}

@media screen and (max-width: 640px) {
	.public-surface {
		padding: 2rem 0 3rem;
	}

	.search-form-row,
	.surface-actions {
		flex-direction: column;
	}

	.search-form-row .ctabtn,
	.surface-actions .ctabtn {
		width: 100%;
	}

	.notification-card {
		grid-template-columns: auto minmax(0, 1fr);
		padding: 1rem;
	}

	.notification-card-chevron {
		display: none;
	}

	.notification-detail,
	.result-card,
	.error-card {
		padding: 1.5rem 1rem;
		border-radius: 16px;
	}

	.result-facts {
		grid-template-columns: 1fr;
	}
}
