/** Shopify CDN: Minification failed

Line 1031:2 Expected identifier but found "*"
Line 5518:0 Unexpected "}"
Line 5774:0 Expected "}" to go with "{"

**/
/*====== Color Custom Properties ======*/

:root,
.main-background {
  --color-foreground: var(--color-base-primary-text);
  --color-background: var(--color-base-primary-background);
  --color-background-2: var(--color-base-primary-background-1);
  --color-foreground-2: var(--color-base-tertiary-text);
  --color-foreground-3: var(--color-base-primary-background-2);
  --color-foreground-4: var(--color-base-product-text);
  --color-button: var(--color-base-secondary-text);
  --color-button-text: var(--color-base-primary-background);
  --color-price-foreground: var(--color-base-modal-primary-price);
  --color-price-foreground-2: var(--color-base-modal-secondary-price);
  --color-error: var(--color-base-primary-text);
  --color-sale: var(--color-base-errors);
  --color-link: var(--color-base-primary-text);
  --color-border-input: var(--color-base-tertiary-text);
  --color-border-input-hover: rgb(var(--color-base-tertiary-text), 0.5);
  --color-label: var(--color-base-tertiary-text);
  --color-border: var(--color-base-primary-background-1);
  --color-dark-sold-out-icon: var(--color-base-modal-secondary-label);
  --color-empty-image: var(--color-base-color-background-alt);
  --hover-brightness: 0.8;
}

:root .rte p {
  color: rgb(var(--color-button));
}

.btn--dark {
  --color-button: var(--color-base-button-background-1);
  --color-button-text: var(--color-base-button-text-1);
  --hover-brightness: 0.55;
}

.btn--light {
  --color-button: var(--color-base-button-background-2);
  --color-button-text: var(--color-base-button-text-2);
}

.btn--light-2 {
  --color-button: var(--color-base-modal-secondary-price);
  --color-button-text: var(--color-base-button-text-1);
}

.btn--light-3 {
  --color-button: var(--color-base-primary-text);
  --color-button-text: var(--color-base-primary-background);
}

.btn--share {
  --color-button: var(--color-base-product-text);
  --color-button-text: var(--color-base-primary-text);
  --hover-brightness: 0.55;
}

.select--light {
  --color-button: var(--color-base-color-product-picker);
  --color-button-text: var(--color-base-product-label-text);
  --color-button-label: var(--color-base-product-label-text);
}

.background-alt {
  --color-foreground: var(--color-base-product-text);
  --color-background: var(--color-base-color-background-alt);
  --color-background-2: var(--color-base-color-background-alt);
  --color-fieldset-background: var(--color-base-color-product-picker);
  --color-fieldset-hover: var(--color-base-button-text-1);
  --color-fieldset-label: var(--color-base-product-label-text);
  --color-fieldset-legend: var(--color-base-product-label-text);
  --color-foreground-2: var(--color-base-modal-secondary-label);
  --color-foreground-3: var(--color-base-product-text-2);
  --color-foreground-4: var(--color-base-modal-primary-price);
  --color-button: var(--color-base-product-button);
  --color-button-text: var(--color-base-button-text-1);
  --color-link: var(--color-base-product-button);
  --color-border-input: var(--color-base-product-text);
  --color-border-input-hover: rgb(var(--color-base-product-text), 0.5);
  --color-label: var(--color-base-product-text);
  --color-price-foreground: var(--color-base-product-button);
  --color-picker-background: var(--color-base-color-product-picker);
  --hover-brightness: 0.55;
  --color-error: var(--color-base-errors);
}

.shopify-section-header-light {
  --color-foreground: var(--color-base-modal-primary-price);
  --color-background: var(--color-base-color-background-alt);
  --color-foreground-2: var(--color-base-primary-text);
  --color-link: var(--color-base-product-label-text);
}

.template-product {
  --color-background: var(--color-base-color-background-alt);
  --color-link: var(--color-base-product-label-text);
  background: rgb(var(--color-background));
}

.template-product .shopify-section-header-light {
  --color-foreground: var(--color-base-primary-text);
  --color-background: var(--color-base-primary-background);
  --color-foreground-2: var(--color-base-primary-text);
  --color-link: var(--color-base-primary-text);
}

.header__search {
  --color-foreground: var(--color-base-primary-text);
  --color-background: var(--color-base-primary-background);
  --color-overlay: 0, 0, 0;
}

.background-modal {
  --color-foreground: var(--color-base-modal-primary-price);
  --color-background: var(--color-base-background-modal);
  --color-foreground-2: var(--color-base-modal-secondary-label);
  --color-foreground-3: var(--color-base-product-text-2);
  --color-foreground-4: var(--color-base-product-text);
  --color-foreground-5: var(--color-base-product-button);
  --color-foreground-6: var(--color-base-product-label-text);
  --color-price-foreground: var(--color-base-product-label-text);
  --color-link: var(--color-foreground);
  --color-label: var(--color-base-modal-primary-price);
  --color-border: var(--color-base-color-background-alt);
  --color-button: var(--color-base-modal-secondary-price);
  --color-error: var(--color-base-errors);
}

.background-modal .rte p {
  color: rgb(var(--color-foreground));
}

.background-modal .btn--light {
  --color-button: var(--color-base-modal-primary-price);
  --color-button-text: var(--color-base-button-text-1);
}

.background-modal .btn--light-3 {
  --color-button: var(--color-base-modal-primary-price);
  --color-button-text: var(--color-base-primary-text);
}

.alt-background {
  --color-background: var(--color-base-alternate-background);
  --color-foreground: var(--color-base-alternate-text);
  --color-foreground-2: var(--color-base-alternate-text-2);
  --color-error: var(--color-base-alternate-text);
  --color-border-input: var(--color-base-alternate-text-2);
  --color-border-input-hover: rgb(var(--color-base-alternate-text-2), 0.5);
  --color-label: var(--color-base-alternate-text-2);
}

.alt-background .btn--light {
  --color-button: var(--color-base-alternate-text-2);
  --color-button-text: var(--color-base-alternate-background);
}

.alt-background-2 {
  --color-background: var(--color-base-alternate-background-2);
  --color-foreground: var(--color-base-alternate-text);
}

.alt-background-3 {
  --color-background: var(--color-base-alternate-background-3);
  --color-foreground: var(--color-base-primary-text);
}

.color-foreground-accent-1 {
  --color-foreground: var(--color-base-product-button);
}

:root {
  --duration-short: 100ms;
  --duration-default: 200ms;
  --duration-long: 500ms;
}

/*===== Animations ====*/

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes bouncedelay {
  0%, 80%, 100% {
    opacity: 0;
  }

  40% {
    opacity: 1;
  }
}

@keyframes skeletonLoader {
  0% {
    background-position: -100% 0;
    /* background-position: -180px 0; */
  }

  100% {
    background-position: 100% 0;
    /* background-position: 150% 0; */
  }
}

@keyframes pulseBackground {
  to {
    background: #ededed;
  }
}

/* base */

.no-js:not(html) {
  display: none !important;
}

html.no-js .no-js:not(html) {
  display: block !important;
}

.no-js-inline {
  display: none !important;
}

html.no-js .no-js-inline {
  display: inline-block !important;
}

html.no-js .no-js-hidden {
  display: none !important;
}

.page-width {
  /* *zoom: 1; */
  max-width: var(--page-width);
  margin: 0 auto;
  padding: 0 5.5rem;
}

@media only screen and (max-width: 1024px) {
  .page-width {
    padding: 0 1.5rem;
  }
}

@media only screen and (max-width: 767px) {
  .page-width.page-width--without-padding {
    padding: 0 0;
  }

  .page-width.page-width--without-padding .page-width--padding {
    padding: 0 1.25rem;
  }
}

.spaced-section {
  margin-bottom: 5rem;
}

.spaced-top-section {
  margin-top: 3rem;
}

@media screen and (min-width: 750px) {
  .spaced-section {
    margin-bottom: calc(3.5rem + var(--page-width-margin));
  }

  .spaced-top-section {
    margin-top: calc(3.5rem + var(--page-width-margin));
  }
}

/* .page-width::after {
  content: '';
  display: table;
  clear: both;
} */

/*================ GLOBAL ================*/
/*============================================================================
  #Normalize
  Based on normalize.css v3.0.2 | MIT License | git.io/normalize
==============================================================================*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

body,
html {
  background-color: rgb(var(--color-background));
}

body {
  margin: 0;
  width: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

body,
input,
textarea,
button,
select,
.disclosure__toggle {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}

a {
  background-color: transparent;
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

i {
  font-style: normal;
  line-height: 1;
  display: inline-block;
  margin: 0;
}

i:before, i:after {
  margin: 0;
  display: inline-block;
  line-height: 1em;
}

b,
strong {
  font-weight: 900;
}

em {
  font-style: italic;
}

small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  max-width: 100%;
  border: 0;
}

button,
input,
optgroup,
select,
.disclosure__toggle,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

input[type="search"], input[type="text"], input[type="number"], input[type="email"], input[type="password"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

textarea {
  overflow: auto;
  -webkit-appearance: none;
  -moz-appearance: none;
}

/*===== Corner Shape ====*/
body {
  --border-radius-form-elements: 9px;
}

body.body-shape--square {
  --border-radius-form-elements: 0px;
}

.body-shape--square button,
.body-shape--square button::after,
.body-shape--square .btn,
.body-shape--square .btn::after,
.body-shape--square .quantity,
.body-shape--square .single-option-selector__option:not(.single-option-selector__option--color),
.body-shape--square input,
.body-shape--square textarea,
.body-shape--square select,
.body-shape--square .select,
.body-shape--square .disclosure__toggle,
.body-shape--square .cart-count-bubble,
.body-shape--square .product-single__header-info,
.body-shape--square .product-single__meta .skeleton-view,
.body-shape--square .product-single__meta .product__meta-grid,
.body-shape--square .cart-page-section__box,
.body-shape--square .cart-notification,
.body-shape--square .card-tabs .card-tabs__body,
.body-shape--square .pickup-availability-popup,
.body-shape--square .additional-checkout-buttons [data-testid="grid-cell"],
.body-shape--square .faq-linked-menu-content li,
.body-shape--square .accordion,
.body-shape--square .collapsible-content__header,
.body-shape--square .share-button__button,
.body-shape--square .facets__add-more .facets__summary:after,
.body-shape--square .mobile-facets__open-wrapper:after,
.body-shape--square .facets__display,
.body-shape--square .active-facets__button-inner::after,
.body-shape--square .facets__item input[type=checkbox],
.body-shape--square .mobile-facets__highlight,
.body-shape--square .facets__summary,
.body-shape--square .mobile-facets__open-wrapper,
.body-shape--square input[type=checkbox] + label .input-check-mark,
.body-shape--square .contact-template__box,
.body-shape--square .video-column__content-item-wrap,
.body-shape--square .shopify-payment-button__button div[role=button],
.body-shape--square .breadcrumbs__list,
.body-shape--square .badge-status,
.body-shape--square .additional-checkout-buttons .dynamic-checkout__content div[role="button"],
.body-shape--square .circle-slider-nav li.slick-slide,
.body-shape--square .card-tabs,
.body-shape--square .product-form__error-message-wrapper {
  border-radius: 0 !important;
}

.body-headings--uppercase h1,
.body-headings--uppercase h2,
.body-headings--uppercase h3,
.body-headings--uppercase h4,
.body-headings--uppercase h5,
.body-headings--uppercase h6,
.body-headings--uppercase .h0,
.body-headings--uppercase .h1,
.body-headings--uppercase .h2,
.body-headings--uppercase .h3,
.body-headings--uppercase .h4,
.body-headings--uppercase .h5,
.body-headings--uppercase .h6,
.body-headings--uppercase .myaccount__order-footer .order__total th,
.body-headings--uppercase .cart-estimated-total td,
.body-headings--uppercase .cart__product-title,
.body-headings--uppercase .search__input::placeholder,
.body-headings--uppercase .header__submenu__col_img i {
  text-transform: uppercase;
}

/*===== Border ====*/

.content-border-style {
  border: solid 1px rgb(var(--color-base-content_border));
}

.content-border-style--no-lateral {
  border-left: 0;
  border-right: 0;
}

.content-border-style .archer-card__image {
  box-shadow: none;
  border-bottom: solid 1px rgb(var(--color-base-content_border));
}

.product-card__empty-image.content-border-style {
  box-shadow: none;
}

.content-border-style .color-swatch {
  box-shadow: none;
  border: solid 1px rgb(var(--color-base-content_border));
}

/*============================================================================
  Fast Tap
  enables no-delay taps (FastClick-esque) on supporting browsers
==============================================================================*/
a,
button,
[role="button"],
input,
label,
select,
.disclosure__toggle,
textarea {
  touch-action: manipulation;
}

/*============= component-grid =============*/

.grid {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2rem;
  margin-left: -0.75rem;
  padding: 0;
  list-style: none;
}

.grid.negative-margin {
  margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
  .grid {
    margin-left: -1.875rem;
  }
}

.grid__item {
  padding-left: 0.75rem;
  padding-bottom: 1rem;
  width: calc(25% - 0.75rem * 3 / 4);
  max-width: 50%;
  flex-grow: 1;
  flex-shrink: 0;
}

@media screen and (min-width: 1024px) {
  .grid__item {
    padding-left: 1.875rem;
    padding-bottom: 1.875rem;
    width: calc(25% - 1.875rem * 3 / 4);
  }
}

.grid--gapless .grid__item {
  padding-left: 0;
  padding-bottom: 0;
}

@media screen and (min-width: 767px) {
  .grid--one-half-max.grid--2-col-tablet .grid__item {
    max-width: 50%;
  }

  .grid--one-third-max.grid--3-col-tablet .grid__item {
    max-width: 33.33%;
  }

  .grid--quarter-max.grid--4-col-tablet .grid__item {
    max-width: 25%;
  }
}

.grid--1-col .grid__item {
  max-width: 100%;
  width: 100%;
}

.grid--3-col .grid__item {
  width: calc(33.33% - 0.75rem * 2 / 3);
}

@media screen and (min-width: 767px) {
  .grid--3-col .grid__item {
    width: calc(33.33% - 1.875rem * 2 / 3);
  }
}

.grid--2-col .grid__item {
  width: calc(50% - 0.5rem / 2);
}

@media screen and (min-width: 767px) {
  .grid--2-col .grid__item {
    width: calc(50% - 1.875rem / 2);
  }

  .grid--4-col-tablet .grid__item {
    width: calc(25% - 1.875rem * 3 / 4);
  }

  .grid--3-col-tablet .grid__item {
    width: calc(33.33% - 1.875rem * 2 / 3);
  }

  .grid--2-col-tablet .grid__item {
    width: calc(50% - 1.875rem / 2);
  }
}

@media screen and (min-width: 1024px) {
  .grid--4-col-desktop .grid__item {
    width: calc(25% - 1.875rem * 3 / 4);
  }

  .grid--3-col-desktop .grid__item {
    width: calc(33.33% - 1.875rem * 2 / 3);
  }

  .grid--2-col-desktop .grid__item {
    width: calc(50% - 1.875rem / 2);
  }
}

.grid__item--full-width {
  flex: 0 0 100%;
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  .grid--peek .grid__item {
    width: calc(50% - 3.75rem / 2);
  }

  .grid--peek .grid__item:first-of-type {
    padding-left: 1.5rem;
  }

  .grid--peek .grid__item:last-of-type {
    padding-right: 1.5rem;
  }
}

.section-blog .grid,
.collection-grid .grid {
  margin-bottom: 0;
}

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

.page-container {
  /* transition: all 400ms cubic-bezier(0.29, 0.63, 0.44, 1); */
  transition: all 0.4s ease-in-out;
  position: relative;
  /* overflow: hidden; */
}

.page-container .main-content {
  padding-top: 0;
}

.page-container--mixed {
  border-radius: 40px 0 40px;
}

.page-container--rounded {
  border-radius: 25px 0 25px;
}

.loader-bounce {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
}

div.loader-bounce > div {
  width: 4px;
  height: 4px;
  vertical-align: middle;
  margin-right: 4px;
  background-color: rgb(var(--color-button-text));
  border-radius: 100%;
  display: inline-block;
  -webkit-animation: bouncedelay 1.4s infinite ease-in-out;
  animation: bouncedelay 1.4s infinite ease-in-out;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.btn--secondary div.loader-bounce > div {
  background-color: rgb(var(--color-button));
}

.loader-bounce .bounce1 {
  -webkit-animation-delay: -0.48s;
  animation-delay: -0.48s;
}

.loader-bounce .bounce2 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.loader-bounce .bounce3 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

.fade-transition {
  opacity: 1;
  visibility: visible;
  transition-property: opacity, visibility;
  transition-duration: 300ms;
  transition-timing-function: ease-in-out;
}

.color-swatch {
  border-radius: var(--chip-color-media-radius);
  width: 14px;
  height: 14px;
  display: inline-block;
  margin-left: 2px;
  box-shadow: 0 0 2px rgb(var(--color-dark-sold-out-icon));
}

.chip-color--dark {
  color: rgb(var(--color-dark-sold-out-icon)) !important;
}

.chip-color--light {
  color: rgb(var(--color-background)) !important;
}

.shopify-challenge__container {
  margin: 7rem auto;
}

.shopify-challenge__container  .shopify-challenge__message {
  font-family: var(--font-heading-family);
  font-size: calc(var(--font-heading-scale) * 2.375rem);
  color: rgb(var(--color-foreground));
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: 2.125rem;
}

.shopify-challenge__button {
  margin-top: 1rem !important;
}

.section__header {
  text-align: center;
  margin-bottom: 1.875rem;
}

/*=============== Global Skeleton ====================*/
.skeleton-view {
  display: none;
}

.load-skeleton {
  position: relative;
}

html.js .skeleton-font--loading .load-skeleton > div {
  position: relative;
  opacity: 0;
}

html.js .skeleton-font--loading .load-skeleton .skeleton-view {
  opacity: 1;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  display: block;
}

.skeleton-view .skeleton-text {
  position: relative;
  min-width: 50px;
  min-height: 20px;
  margin-bottom: 0.5rem;
}

.skeleton-view .skeleton-text::after {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  min-width: 50px;
  width: 100%;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient( 90deg, #d5d4d4, #e9e9e9, #d5d4d4 );
  background-size: 200%;
  animation: skeletonLoader 1.5s linear infinite;
}

.skeleton-view .skeleton-view__margin {
  margin-top: 2.5rem;
}

.skeleton-text--s {
  max-width: 181px;
  width: 30%;
}

.skeleton-text--full {
  max-width: 100%;
}

.skeleton-text--m {
  max-width: 300px;
  width: 60%;
}

.skeleton-view--product-info .skeleton-text {
  min-height: 16px;
}

.skeleton-view--product-info__title .skeleton-text {
  display: inline-block;
  height: 38px;
  margin-bottom: 0.1875rem;
}

.skeleton-view--product-info__title .skeleton-text--name {
  max-width: 200px;
  width: 40%;
}

.skeleton-view--product-info__title .skeleton-text:last-child {
  float: right;
  width: 22%;
}

.skeleton-view--product-info .skeleton-text--full {
  margin-bottom: 2.5rem;
}

.skeleton-view--product-info .skeleton-text--block {
  min-height: 40px;
}

.skeleton-view--product-details .skeleton-text {
  margin-bottom: 0.375rem;
}

.skeleton-view--product-details .skeleton-text--title {
  min-height: 36px;
  margin-bottom: 1.25rem;
}

@media only screen and (max-width: 1000px) {
  .skeleton-view--product-info .skeleton-text {
    margin: auto auto 1rem;
  }

  .skeleton-view--product-info__title .skeleton-text {
    margin: auto auto 0.875rem;
    display: block;
  }

  .skeleton-view--product-info__title .skeleton-text:last-child {
    float: none;
  }
}

.skeleton-view--cart {
  padding-left: 15px;
  height: 90px;
}

.skeleton-view--cart-item {
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
}

.skeleton-view--cart-item__td {
  display: flex;
  width: 100%;
  flex: 1;
  align-items: baseline;
  justify-content: space-between;
}

.skeleton-view--cart-item__td:last-child {
  margin-bottom: 1px;
  align-items: flex-end;
}

.skeleton-view--cart-item__td .skeleton-text {
  margin-bottom: 0;
}

.skeleton-view--cart-item__td .skeleton-text--price {
  width: 50px;
}

.skeleton-view--cart-item__td .skeleton-text--quantity {
  width: 85px;
  height: 26px;
}

.skeleton-view--cart-item__td .skeleton-text--option {
  min-height: 12px;
}

.skeleton-view--cart-item__td .skeleton-text:last-child {
  float: right;
}

.skeleton-view--cart-footer {
  padding-left: 40px;
}

@media only screen and (max-width: 1024px) {
  .skeleton-view--cart-footer {
    padding-left: 0;
  }
}

.skeleton-view--cart-footer .skeleton-text {
  min-height: 16px;
  margin-bottom: 0px;
}

.skeleton-view--cart-footer .skeleton-text--s {
  width: 50px;
  float: right;
}

.skeleton-view--cart-footer__tr--total .skeleton-text {
  min-height: 30px;
  margin-top: 3px;
}

.skeleton-view--cart-footer__tr--total .skeleton-text--m {
  width: 120px;
}

.skeleton-view--cart-footer__tr:first-child .skeleton-text--m {
  width: 70px;
}

/*================ Build Base Grid Classes ================*/

.show {
  display: block !important;
}

.hide {
  display: none !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

.grid-view-item__link {
  display: block;
  /* position: relative; */
}

/*================ #Helper Classes ================*/
.clearfix {
  *zoom: 1;
}

.clearfix::after {
  content: '';
  display: table;
  clear: both;
}

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

.visibility-hidden {
  visibility: hidden;
}

details > * {
  box-sizing: border-box;
}

@media (prefers-reduced-motion) {
  .motion-reduce {
    transition: none !important;
  }
}

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

.visually-hidden--inline {
  margin: 0;
  height: 1em;
}

.visually-hidden--static {
  position: static !important;
}

.overflow-hidden {
  overflow: hidden;
  position: fixed;
}

.js-focus-hidden:focus {
  outline: none;
}

/* .no-js .js {
  display: none;
} */

.hidden {
  display: none !important;
}

@media screen and (max-width: 749px) {
  .small--hide {
    display: none !important;
  }
}

@media screen and (min-width: 750px) and (max-width: 989px) {
  .medium--hide {
    display: none !important;
  }
}

@media only screen and (min-width: 768px) {
  .medium-up--show {
    display: block !important;
  }

  .medium-up--hide {
    display: none !important;
  }
}

@media screen and (min-width: 990px) {
  .large-up--hide {
    display: none !important;
  }
}

.btn.skip-to-content-link {
  color: rgb(var(--color-button-text));
  font-weight: 300;
  text-transform: uppercase;
  margin: 10px;
  display: inline-block;
  left: 0;
  padding: 19px 40px;
}

.skip-to-content-link:focus {
  z-index: 9999;
  position: inherit;
  overflow: auto;
  width: auto;
  height: auto;
  clip: auto;
}

.circle-divider:after {
  content: '\2022';
  margin: 0 2px;
  display: inline-block;
  font-size: 22px;
  vertical-align: bottom;
  line-height: 0.6;
}

.circle-divider:last-of-type::after {
  display: none;
}

/*================ #Tables ================*/
table {
  margin-bottom: 44px;
}

table a {
  border-bottom: 1px solid currentColor;
}

th {
  font-family: var(--font-heading-family);
  font-style: normal;
  font-weight: 500;
}

th,
td {
  text-align: left;
  border: none;
  padding: 10px 14px;
}

tbody th,
tfoot th {
  font-weight: normal;
}

/*================ Typography ================*/
body,
input,
textarea,
button,
select,
.disclosure__toggle {
  font-family: var(--font-body-family);
  font-style: normal;
  font-weight: 100;
  color: rgb(var(--color-foreground));
  /* line-height: 1.5; */
}

input,
textarea,
select {
  font-size: 0.875rem;
}

body::placeholder,
input::placeholder,
textarea::placeholder,
button::placeholder,
select::placeholder,
.disclosure__toggle::placeholder {
  text-transform: uppercase;
  color: rgb(var(--color-foreground));
  opacity: 1;
}

body:-ms-input-placeholder,
input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
button:-ms-input-placeholder,
select:-ms-input-placeholder,
.disclosure__toggle:-ms-input-placeholder {
  text-transform: uppercase;
  color: rgb(var(--color-foreground));
  opacity: 1;
}

body::-ms-input-placeholder,
input::-ms-input-placeholder,
textarea::-ms-input-placeholder,
button::-ms-input-placeholder,
select::-ms-input-placeholder,
.disclosure__toggle::-ms-input-placeholder {
  /* Microsoft Edge */
  text-transform: uppercase;
  color: rgb(var(--color-foreground));
  opacity: 1;
}

input,
textarea,
button,
select,
.disclosure__toggle {
  font-weight: 400;
}

input,
textarea {
  padding: 0.625rem 1.875rem 0.5rem 0.875rem;
}

@media only screen and (max-width: 1024px) {
  input,
  textarea,
  select,
  .disclosure__toggle,
  button {
    font-size: 1rem;
  }
}

/*================ Headings ================*/
h1 a, .h1 a,
h2 a,
.h2 a,
h3 a,
.h3 a,
h4 a,
.h4 a,
h5 a,
.h5 a,
h6 a,
.h6 a {
  color: inherit;
  text-decoration: none;
  font-weight: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h0,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin: 0 0 1.0625rem;
  line-height: calc(1 + 0.2 / var(--font-heading-scale));
  overflow-wrap: break-word;
  word-wrap: break-word;
  color: rgb(var(--color-foreground));
  outline: none;
  font-family: var(--font-heading-family);
  font-style: var(--font-heading-style);
  font-weight: var(--font-heading-weight);
}

.h0 {
  --font-heading-size: calc(var(--font-heading-scale) * 3rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
}

@media only screen and (max-width: 1024px) {
  .h0 {
    --font-heading-size: calc(var(--font-heading-scale) * 2.5rem);
  }
}

@media only screen and (max-width: 768px) {
  .h0 {
    --font-heading-size: calc(var(--font-heading-scale) * 2.25rem);
  }
}

h1,
.h1 {
  --font-heading-size: calc(var(--font-heading-scale) * 2.375rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
}

@media only screen and (max-width: 1024px) {
  h1,
  .h1 {
    --font-heading-size: calc(var(--font-heading-scale) * 2.25rem);
  }
}

.h1-alt {
  color: rgb(var(--color-base-color-accent-6));
}

h2,
.h2 {
  --font-heading-size: calc(var(--font-heading-scale) * 2.25rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
}

@media only screen and (max-width: 1024px) {
  h2,
  .h2 {
    --font-heading-size: calc(var(--font-heading-scale) * 2.125rem);
  }
}

@media only screen and (max-width: 768px) {
  h2,
  .h2 {
    --font-heading-size: calc(var(--font-heading-scale) * 2rem);
  }
}

h3,
.h3 {
  --font-heading-size: calc(var(--font-heading-scale) * 1.875rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
}

@media only screen and (max-width: 768px) {
  h3,
  .h3 {
    --font-heading-size: calc(var(--font-heading-scale) * 1.375rem);
  }
}

h4,
.h4 {
  --font-heading-size: calc(var(--font-heading-scale) * 1.75rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
}

@media only screen and (max-width: 768px) {
  h4,
  .h4 {
    --font-heading-size: calc(var(--font-heading-scale) * 1.125rem);
  }
}

h5,
.h5 {
  --font-heading-size: calc(var(--font-heading-scale) * 1.5rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
}

@media only screen and (max-width: 768px) {
  h5,
  .h5 {
    --font-heading-size: calc(var(--font-heading-scale) * 1.125rem);
  }
}

h6,
.h6 {
  margin-block-start: 1.67em;
  margin-block-end: 1.67em;
  --font-heading-size: calc(var(--font-heading-scale) * 1.25rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
}

@media only screen and (max-width: 768px) {
  h6,
  .h6 {
    --font-heading-size: calc(var(--font-heading-scale) * 1rem);
  }
}

.decorative-title {
  position: relative;
  --font-heading-size: calc(var(--font-heading-scale) * 3rem);
  font-size: calc(var(--font-heading-size) * var(--font-section-scale, 1));
  margin-bottom: 0.75rem;
}

.decorative-line {
  display: block;
  height: 3px;
  width: 100%;
  position: relative;
  padding-top: 2.125rem;
}

.decorative-line::before {
  content: "";
  background: rgb(var(--color-foreground-2));
  width: 139px;
  height: 3px;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

@media only screen and (max-width: 1024px) {
  .decorative-title {
    --font-heading-size: calc(var(--font-heading-scale) * 2.375rem);
  }
}

@media only screen and (max-width: 768px) {
  .decorative-title {
    --font-heading-size: calc(var(--font-heading-scale) * 2.125rem);
  }
}

blockquote {
  font-size: calc(var(--font-heading-scale) * 1.5rem);
  font-family: var(--font-heading-family);
  font-style: italic;
  text-align: center;
  padding: 0 40px;
  margin: auto;
}

.rte blockquote {
  max-width: 500px;
  padding: 30px 0;
  color: rgb(var(--color-foreground-6));
}

.rte blockquote p {
  color: rgb(var(--color-foreground-6));
  font-size: 1.5rem;
}

blockquote p + cite {
  margin-top: 44px;
}

blockquote cite {
  display: block;
  font-size: 0.85em;
  font-weight: 100;
}

blockquote cite::before {
  content: '\2014 \0020';
}

.link,
.customer a {
  cursor: pointer;
  display: inline-block;
  border: none;
  box-shadow: none;
  background-color: transparent;
  font-family: inherit;
}

.link {
  font-size: 1rem;
}

/* base-details-summary */
summary {
  cursor: pointer;
  list-style: none;
  position: relative;
}

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

.disclosure-has-popup {
  position: relative;
}

.disclosure-has-popup[open] > summary::before {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: block;
  cursor: default;
  content: ' ';
  background: transparent;
}

.disclosure-has-popup > summary::before {
  display: none;
}

.disclosure-has-popup[open] > summary + * {
  z-index: 100;
}

@media screen and (min-width: 750px) {
  .disclosure-has-popup[open] > summary + * {
    z-index: 4;
  }

  .facets .disclosure-has-popup[open] > summary + * {
    z-index: 2;
  }
}

/*============================================================================
  Hover State
  Only hover style for screen with touch
==============================================================================*/
body.hasHover .btn:not([disabled]):hover::after,
body.hasHover .shopify-payment-button .shopify-payment-button__button--unbranded:not([disabled]):hover::after {
  transform: scale(1.06, 1.06);
  filter: brightness(var(--hover-brightness));
}

body.hasHover input.btn:not([disabled]):hover {
  filter: brightness(var(--hover-brightness));
}

body.hasHover .btn--secondary:not([disabled]):hover {
  filter: brightness(var(--hover-brightness));
  color: rgb(var(--color-button));
}

body.hasHover .btn--secondary:not([disabled]):hover::after {
  filter: none;
}

body.hasHover .social-sharing a:hover {
  color: rgb(var(--color-link), 0.6);
}

body.hasHover a:not(.header__icon):not(.btn):not(.btn--share):hover {
  color: rgb(var(--color-link), 0.6);
}

body.hasHover .site-footer__bottom-right .disclosure__item a.disclosure__link:hover {
  color: rgb(var(--color-foreground-6));
}

body.hasHover .header__menu-item:hover,
body.hasHover .header__menu-item:hover a:hover {
  color: rgb(var(--color-border-input));
}

body.hasHover .shopify-section-header-light a.header__menu-item:not([disabled]):hover {
  color: rgb(var(--color-link), 0.6);
}

body.hasHover .product-card-wrapper:hover,
body.hasHover .collection-grid-item:hover {
  transform: scale(1.024);
}

body.hasHover .product-card-wrapper:hover .product-card__image--hover {
  opacity: 1;
  visibility: visible;
}

body.hasHover .product-card-wrapper:hover .product-card-item__colors-content {
  max-height: 32px;
}

body.hasHover .product-card-wrapper:hover .product-card-item__colors-content:not(.colors-content--label) li {
  opacity: 1;
  visibility: visible;
  transition-delay: .3s;
}

@media only screen and (max-width: 1024px) {
  body.hasHover .product-card-wrapper:hover .product-card-item__colors-content {
    height: auto;
  }
}

body.hasHover .single-option-selector__option:not([single-option-selector__option--color]):hover {
  color: rgb(var(--color-fieldset-label));
  background: rgb(var(--color-fieldset-hover));
}

body.hasHover .collection-grid-item__link:not([disabled]):hover {
  transform: scale(1.024);
}

body.hasHover .landing-top-wrapper__box__left:hover img,
body.hasHover .landing-top-wrapper__box__right:hover img {
  transform: scale(1.04);
}

body.hasHover .btn--share .icon:hover {
  transform: scale(1.1);
}

body.hasHover .shopify-section-header-light .header__menu-item:hover,
body.hasHover .shopify-section-header-light .header__menu-item a:hover {
  color: rgb(var(--color-link));
}

body.hasHover .disclosure__item:hover {
  background-color: rgb(var(--color-empty-image));
}

body.hasHover .section-featured-product-wrap:hover .section-featured-product__image--hover {
  opacity: 1;
  visibility: visible;
}


/*================ #Icons ================*/
.icon {
  display: inline-block;
  width: 1.5625rem;
  height: 1.5625rem;
  vertical-align: middle;
  fill: currentColor;
  transition: transform .2s ease-in;
}

.no-svg .icon {
  display: none;
}

.icon-favorite {
  width: 28px;
  height: 25px;
}

.icon-check {
  width: 21px;
  height: 21px;
}

.icon-cart {
  width: 27px;
  height: 25px;
}

.icon-notify {
  width: 16px;
  height: 17px;
}

svg.icon:not(.icon--full-color) circle,
svg.icon:not(.icon--full-color) ellipse,
svg.icon:not(.icon--full-color) g,
svg.icon:not(.icon--full-color) line,
svg.icon:not(.icon--full-color) path,
svg.icon:not(.icon--full-color) polygon,
svg.icon:not(.icon--full-color) polyline,
svg.icon:not(.icon--full-color) rect,
symbol.icon:not(.icon--full-color) circle,
symbol.icon:not(.icon--full-color) ellipse,
symbol.icon:not(.icon--full-color) g,
symbol.icon:not(.icon--full-color) line,
symbol.icon:not(.icon--full-color) path,
symbol.icon:not(.icon--full-color) polygon,
symbol.icon:not(.icon--full-color) polyline,
symbol.icon:not(.icon--full-color) rect {
  fill: inherit;
  stroke: inherit;
}

.ssw-faveiticon {
  position: absolute;
}

.grid-view-item .ssw-faveiticon {
  opacity: 0;
}

.placeholder-svg {
  display: block;
  fill: rgb(var(--color-foreground), 0.35);
  background-color: rgba(var(--color-foreground), 0.1);
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  border: 1px solid rgba(var(--color-foreground), 0.2);
}

@media screen and (max-width: 767px) {
  .icon {
    width: 1.75rem;
    height: 1.75rem;
  }
}

/*============================================================================
  A generic way to visually hide content while
  remaining accessible to screen readers (h5bp.com)
==============================================================================*/
.no-svg .icon__fallback-text {
  position: static !important;
  overflow: inherit;
  clip: none;
  height: auto;
  width: auto;
  margin: 0;
}

/*================= Icons Font ===================*/

@font-face {
  font-family: 'icomoon';
  src:  url('icomoon.eot?fidxip');
  src:  url('icomoon.eot?fidxip#iefix') format('embedded-opentype'),
    url('icomoon.ttf?fidxip') format('truetype'),
    url('icomoon.woff?fidxip') format('woff'),
    url('icomoon.svg?fidxip#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/*================ #Images and Iframes ================*/
svg:not(:root) {
  overflow: hidden;
}

.video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  height: auto;
}

.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*==== Component Text ====*/
.center {
  text-align: center;
}

.right {
  text-align: right;
}

.uppercase {
  text-transform: uppercase;
}

.text-label {
  font-size: 1em;
  color: var(--color-base-solid-button-labels);
  margin-bottom: 10px;
}

a:empty,
ul:empty,
dl:empty,
section:empty,
article:empty,
p:empty,
h1:empty,
h2:empty,
h3:empty,
h4:empty,
h5:empty,
h6:empty {
  display: none;
}

/* ========= Select ========= */

.select {
	position: relative;
	width: auto;
  background: rgb(var(--color-button));
  border-radius: 5px;
  display: inline-block;
  /* overflow: hidden; */
}

.select--no-background {
  background: none;
}

.select__select {
	position: relative;
	font-family: inherit;
  color: rgb(var(--color-button-text));
	background-color: transparent;
	width: auto;
  min-width: 160px;
  padding: 22px 50px 7px 10px;
	font-size: 1.125rem;
	border-radius: 0;
	border: none;
}

.select__select:focus {
	outline: none;
  border: none;
  box-shadow: none;
}

.select .select__select {
	-moz-appearance:none;
  -webkit-appearance:none;
  appearance:none;
  background: transparent;
  width: 100%;
  /* max-width: 220px; */
}

.select .icon-chevron-down {
  position: absolute;
  width: 15px;
  right: 11px;
  top: 50%;
  transform: translateY(-50%);
  fill: rgb(var(--color-button-label));
  pointer-events: none;
}

.select--no-background .icon-chevron-down {
  fill: currentColor;
}

.select-label {
  text-transform: uppercase;
  color: rgb(var(--color-button-label));
	font-size: 1.125rem;
  line-height: 1.8;
	font-weight: normal;
	position: absolute;
	pointer-events: none;
	left: 10px;
	top: 10px;
	transition: 0.2s ease all;
}

.select-label--hidden {
  position: relative;
  display: block;
  height: 0;
  padding-right: 60px;
  opacity: 0;
  font-size: 1.125rem;
  text-transform: uppercase;
  font-weight: normal;
  pointer-events: none;
}

.select__select:focus ~ .select-label, .select__select:valid ~ .select-label {
	color: rgb(var(--color-button-label));
	top: 3px;
	transition: 0.2s ease all;
	font-size: 0.75rem;
}

.select-highlight {
	position: absolute;
	height: 60%;
	width: 100px;
	top: 25%;
	left: 0;
	pointer-events: none;
	opacity: 0.5;
}

select, .disclosure__toggle {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: right center;
  background-image: url(//cdn.shopify.com/s/files/1/0588/1531/6163/t/4/assets/ico-select.svg?v=16043144596332530589);
  background-repeat: no-repeat;
  background-position: right 10px center;
  line-height: 1.2;
  padding-right: 28px;
  text-indent: 0.01px;
  text-overflow: '';
  cursor: pointer;
  padding-top: 8px;
  padding-left: 15px;
  padding-bottom: 8px;
}

@media only screen and (min-width: 768px) {
  select, .disclosure__toggle {
    padding-top: 10px;
    padding-left: 14px;
    padding-bottom: 10px;
  }
}

.select-group {
  position: relative;
  z-index: 2;
}

.select-group select, .select-group .disclosure__toggle {
  background-image: none;
  background-color: transparent;
}

.select-group .icon {
  height: calc(8em / 16);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: calc(8em / 16);
  z-index: -1;
}

optgroup {
  font-weight: 500;
}

option {
  color: rgb(var(--color-foreground));
  background-color: rgb(var(--color-background));;
  border: none;
  font-family: var(--font-body-family);
  font: -moz-pull-down-menu;
}

option[disabled] {
  color: #808080ab;
}

option:hover {
  background: rgb(var(--color-background));
}

select::-ms-expand, .disclosure__toggle::-ms-expand {
  display: none;
}

/*================ RTE headings ================*/
.rte {
  color: rgb(var(--color-button));
  margin-bottom: 35px;
}

.rte:last-child {
  margin-bottom: 0;
}

.rte h1, .rte .h1,
.rte h2,
.rte .h2,
.rte h3,
.rte .h3,
.rte h4,
.rte .h4,
.rte h5,
.rte .h5,
.rte h6,
.rte .h6 {
  margin: 30px 0;
  color: rgb(var(--color-foreground-6));
}

.rte h1:first-child, .rte .h1:first-child,
.rte h2:first-child,
.rte .h2:first-child,
.rte h3:first-child,
.rte .h3:first-child,
.rte h4:first-child,
.rte .h4:first-child,
.rte h5:first-child,
.rte .h5:first-child,
.rte h6:first-child,
.rte .h6:first-child {
  margin-top: 0;
}

.rte h1, .rte .h1 {
  font-size: calc(var(--font-heading-scale) * 2.625rem);
}

.rte h2, .rte .h2 {
  font-size: calc(var(--font-heading-scale) * 2.25rem);
}

.rte h3, .rte .h3 {
  font-size: calc(var(--font-heading-scale) * 1.75rem);
}

.rte h4, .rte .h4 {
  font-size: calc(var(--font-heading-scale) * 1.5rem);
}

.rte h5, .rte .h5 {
  font-size: calc(var(--font-heading-scale) * 1.25rem);
}

.rte h6, .rte .h6 {
  font-size: calc(var(--font-heading-scale) * 1rem);
}

.rte li {
  margin-bottom: 4px;
  list-style: inherit;
}

.rte li:last-child {
  margin-bottom: 0;
}

.rte-setting {
  margin-bottom: 1.25rem;
}

.rte-setting:last-child {
  margin-bottom: 0;
}

/*================ Paragraph Styles ================*/
p {
  color: rgb(var(--color-foreground));
  margin: 0 0 1.1875rem;
  line-height: calc(1 + 0.25 / var(--font-body-scale));;
}

p:last-child {
  margin-bottom: 0;
}

/*================ Payment Icons ================*/
.payment-icons {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  cursor: default;
}

@media only screen and (max-width: 767px) {
  .payment-icons {
    line-height: 40px;
  }
}

.payment-icons .icon {
  width: 38px;
  height: 24px;
  fill: inherit;
}

/*================ Social Icons ================*/
.social-icons__item {
  padding: 0.75rem 0.75rem;
}

.social-icons__link {
  display: block;
}

.social-icons .icon {
  width: 30px;
  height: 30px;
  transform: scale(1);
  transition: color .2s ease-in, transform .2s ease-in;
}

@media only screen and (min-width: 768px) {
  .social-icons__item:last-child {
    padding-right: 0;
  }

  .social-icons .icon {
    width: 30px;
    height: 30px;
  }
}

.social-icons .icon.icon--wide {
  width: 40px;
}

.social-icons .icon:hover {
  transform: scale(1.1);
}

/*================ Spinner Icon ================*/
@keyframes strokeCircle {
  to {
    stroke-dashoffset: 0;
  }
}

.icon-spinner-content {
  position: relative;
  display: inline-block;
  height: 40px;
  width: 40px;
}

.icon-spinner {
  width: auto;
  height: auto;
}

.icon-spinner__circle {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  animation: strokeCircle 1.5s linear infinite;
}

.icon-spinner--arrow {
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(0);
}

/*================ Error Icons ================*/
.icon-error {
  fill: rgb(var(--color-error));
  width: 1.3125rem;
  height: 1.3125rem;
  flex-shrink: 0;
}

@media only screen and (max-width: 767px) {
  .icon-error {
    width: 1.1875rem;
    height: 1.1875rem;
  }
}

/*================ Lists ================*/
li {
  list-style: none;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

ol {
  list-style: decimal;
}

.list--inline {
  padding: 0;
  margin: 0;
}

.list--inline > li {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
}

/*================ Misc styles ================*/
.fine-print {
  font-size: 0.875em;
  font-style: italic;
}

.txt--minor {
  font-size: 80%;
}

.txt--emphasis {
  font-style: italic;
}

.txt--number {
  font-family: var(--font-body-family);
}

.title--number {
  font-family: var(--font-body-family);
}

.address {
  margin-bottom: 88px;
}

.order-discount {
  display: block;
  text-transform: uppercase;
  font-family: var(--font-body-family);
}

.order-discount .icon-saletag {
  width: 1rem;
  height: 1rem;
}

/*================ #Rich Text Editor ================*/
.rte {
  color: rgb(var(--color-foreground));
  font-weight: 300;
  font-size: calc(1rem * var(--font-section-scale, 1));
}

.rte:after {
  clear: both;
  content: '';
  display: block;
}

.rte img {
  height: auto;
  max-width: 100%;
}

.rte table {
  table-layout: fixed;
  margin: 0;
}

.rte table td {
  font-size: 0.9375rem;
  font-weight: 400;
  color: rgb(var(--color-foreground-6));
}

.rte table tr {
  border-top: solid 1px rgb(var(--color-button), 0.3);
}

.rte table tr:first-child {
  border-top: none;
}

.rte ul,
.rte ol {
  margin: 0 0 17.5px 35px;
}

.rte ul.list--inline,
.rte ol.list--inline {
  margin-left: 0;
}

.rte ul {
  list-style: disc outside;
}

.rte ul li,
.rte ol li {
  color: rgb(var(--color-foreground));
  font-weight: 300;
}

.rte ul ul {
  list-style: circle outside;
}

.rte ul ul ul {
  list-style: square outside;
}

.rte a:not(.btn) {
  padding-bottom: 1px;
}

.rte > p:first-child {
  margin-top: 0;
}

.rte > p:last-child {
  margin-bottom: 0;
}

.rte p {
  color: rgb(var(--color-foreground));
  font-weight: 300;
}

.rte a {
  font-weight: 900;
}

.text-center.rte ul,
.text-center.rte ol,
.text-center .rte ul,
.text-center .rte ol {
  margin-left: 0;
  list-style-position: inside;
}

.scrollable-wrapper {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*================ #Links and Buttons ================*/
a {
  color: rgb(var(--color-link));
  text-decoration: none;
}

a:not(.btn):focus {
  color: rgb(var(--color-link), 0.6);
}

a.classic-link {
  text-decoration: underline;
}

a[href^="tel"] {
  color: inherit;
}

.full-width-link {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

/* base-focus */
/*
  Focus ring - default (with offset)
*/

*:focus {
  outline: 0;
  box-shadow: none;
}

*:focus-visible {
  outline: 2px solid blue;
  outline-offset: 2px;
  box-shadow: 0 0 0 2px transparent, 0 0 2px 5px #ffffff59;
}

/* Fallback - for browsers that don't support :focus-visible, a fallback is set for :focus */
.focused,
.no-js *:focus {
  outline: 2px solid blue;
  outline-offset: 2px;
  box-shadow: 0 0 0 2px transparent, 0 0 2px 5px #ffffff59;
}

/* Negate the fallback side-effect for browsers that support :focus-visible */
.no-js *:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

/*
  Focus ring - inset
*/

.focus-inset:focus-visible {
  outline: 2px solid blue;
  outline-offset: -2px;
  box-shadow: 0 0 2px 0 #ffffff59;
}

.focused.focus-inset,
.no-js .focus-inset:focus {
  outline: 2px solid blue;
  outline-offset: -2px;
  box-shadow: 0 0 2px 0 #ffffff59;
}

.no-js .focus-inset:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

.card-outline::after {
  bottom: 4px;
  content: "";
  left: 4px;
  position: absolute;
  right: 4px;
  top: 4px;
  z-index: 1;
}

.card-outline:after {
  outline-offset: -2px;
}

.card-outline:focus-visible:after {
  outline: 2px solid blue;
  box-shadow: 0 0 2px 0 #ffffff59;
}

.card-outline:focus-visible {
  box-shadow: none;
  outline: 0;
}

.card-outline.content-border-style .product-card__image,
.card-outline.content-border-style .product-card__empty-image {
  box-shadow: none;
}

.card-outline--rounded {
  border-radius: 25px;
}

.card-outline--mixed {
  border-radius: 55px 0 55px;
}

.card-outline--rounded:focus-visible:after {
  border-radius: 25px;
}

.card-outline--mixed:focus-visible:after {
  border-radius: 55px 0 55px;
}

.product-grid .grid--2-col .card-outline--rounded:focus-visible:after {
  border-radius: 35px;
}

.product-grid .grid--2-col .card-outline--mixed:focus-visible:after {
  border-radius: 80px 0 80px;
}

@media screen and (min-width: 767px) {
  .grid--4-col-tablet .card-outline--mixed:focus-visible:after {
    border-radius: 40px 0 40px;
  }
}

@media only screen and (max-width: 768px) {
  .card-outline--rounded:focus-visible:after {
    border-radius: 20px;
  }

  .card-outline--mixed:focus-visible:after {
    border-radius: 40px 0 40px 0;
  }

  .product-grid .grid--2-col .card-outline--rounded:focus-visible:after {
    border-radius: 28px;
  }
}

@media (max-width: 300px) {
  .card-outline--mixed:focus-visible:after {
    border-radius: 34px 0 34px 0;
  }

  .card-outline--rounded:focus-visible:after {
    border-radius: 17px;
  }
}

/*======== component-media ======*/
.media {
  display: block;
  background-color: #D8D8D8;
  position: relative;
  overflow: hidden;
}

.media.placeholder {
  background-color: rgb(var(--color-empty-image));
}

.media--transparent {
  background-color: transparent;
}

.media--placeholder {
  background: none;
}

.media > *:not(.zoom):not(.deferred-media__poster-button):not(.media__badge):not(.media__text-content),
.media model-viewer {
  display: block;
  max-width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  font-size: 0;
}

.media > *:not(.zoom):not(.deferred-media__poster-button):not(.media__badge):not(.media__text-content):not(.media__transparent):not(.loaded):not(.lazyloaded) {
  background: linear-gradient( 90deg, #d5d4d4, #e9e9e9, #d5d4d4 );
  background-size: 200%;
  animation: skeletonLoader 1.5s linear infinite;
}

.media model-viewer {
  background: white !important;
}

.media--placeholder > * {
  background: rgba(var(--color-foreground), 0.1) !important;
}

.media > img {
  object-fit: cover;
  object-position: center center;
  transition: opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.media--square {
  padding-bottom: 100%;
}

.media--portrait {
  padding-bottom: 125%;
}

.media--landscape {
  padding-bottom: 66.6%;
}

.media--cropped {
  padding-bottom: 56%;
}

.media--16-9 {
  padding-bottom: 56.25%;
}

.media--9-16 {
  padding-bottom: 177.77%;
}

.media--5-4 {
  padding-bottom: 80%;
}

.media--4-5 {
  padding-bottom: 125%;
}

.media--circle {
  padding-bottom: 100%;
  border-radius: 50%;
}

.media.media--hover-effect > img + img {
  opacity: 0;
}

@media screen and (min-width: 990px) {
  .media--cropped {
    padding-bottom: 63%;
  }
}

deferred-media {
  display: block;
}

.parallax-image {
  background-size: cover;
  background-position: 50%;
}

.block-parallax {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.img-parallax {
  width: 100vmax;
  height: auto;
  position: absolute;
  top: 0;
  transform: translateY(0);
  pointer-events: none;
}

.scrim-layer {
  position: relative;
}

.scrim-layer:after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(var(--scrim-lightness), 0.2);
}

video-content[data-interrupted="true"] ~ * {
  pointer-events: none;
}

.media__video {
  object-fit: cover;
}

.media__video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  display: flex;
  align-items: center;
  z-index: 2;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}

.media__video-overlay--hide {
  opacity: 0;
  visibility: hidden;
}

.media__video-overlay__img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgb(var(--color-background));
}

.media__video-overlay__img svg {
  fill: rgb(var(--color-foreground), 0.35);
  background-color: rgba(var(--color-foreground), 0.1);
}

.media__overlay__inner {
  display: block;
  position: relative;
  width: 100%;
  padding: 20px;
}

.media__play {
  color: rgb(var(--color-background));
  transition: color 0.2s ease-in;
}

body.hasHover .media__play:hover {
  color: rgb(var(--color-background), 0.6);
}

.media__overlay__inner .media__play svg {
  width: 3.5em;
  height: 3.5em;
  color: inherit;
}

@media only screen and (max-width: 768px) {
  .media__play svg {
    width: 45px;
    height: 45px;
  }
}

/*================ Buttons ================*/
.btn,
.shopify-payment-button .shopify-payment-button__button--unbranded {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 1rem;
  text-transform: uppercase;
  font-family: var(--font-body-family);
  font-style: normal;
  font-weight: 300;
  padding: 19px 34px;
  position: relative;
  display: inline-flex;
  background-color: transparent;
  border: none;
  z-index: 1;
  line-height: 1;
  border-radius: 9px;
  text-align: center;
  justify-content: center;
  align-items: center;
  vertical-align: middle;
  cursor: pointer;
  width: auto;
  text-decoration: none;
  color: rgb(var(--color-button-text));
}

.shopify-payment-button__button div[role=button] {
  border-radius: 9px;
  overflow: hidden;
  min-height: 56px !important;
}

.shopify-payment-button__button .loader-bounce {
  animation: none !important;
}

.shopify-payment-button .shopify-payment-button__more-options {
  display: none;
}

.shopify-payment-button__button [role=button]:focus-visible,
.shopify-payment-button__button [role=button]:focus {
  outline: 0.2rem solid rgba(var(--color-foreground),.5) !important;
  box-shadow: 0 0 0 2px rgb(var(--color-background)), 0 0 0 4px blue !important;
}

.shopify-payment-button__button .shopify-cleanslate [role=button]:focus {
  outline: 0.2rem solid rgba(var(--color-foreground),.5) !important;
  box-shadow: 0 0 0 2px rgb(var(--color-background)), 0 0 0 4px blue !important;
}

@media only screen and (min-width: 768px) {
  .btn,
  .shopify-payment-button .shopify-payment-button__button--unbranded {
    font-size: 1.125rem;
    padding: 19px 40px;
  }
}

.btn:after,
.shopify-payment-button .shopify-payment-button__button--unbranded:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  border-radius: 9px;
  transform: scale(1, 1);
  background-color: rgb(var(--color-button));
  transition: all 0.3s;
}

.shopify-payment-button .shopify-payment-button__button--unbranded {
  color: white;
}

.shopify-payment-button .shopify-payment-button__button--unbranded:after {
  background-color: rgb(var(--color-button));
}

.btn:not([disabled]):focus:not(:focus-visible)::after,
.shopify-payment-button .shopify-payment-button__button--unbranded:not([disabled]):focus:not(:focus-visible)::after {
  filter: brightness(var(--hover-brightness));
  transform: scale(1.06, 1.06);
}

.btn[disabled],
.btn[aria-disabled],
.shopify-payment-button [disabled].shopify-payment-button__button--unbranded,
.shopify-payment-button [aria-disabled].shopify-payment-button__button--unbranded {
  cursor: default;
}

.btn__loader {
  width: 102px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  visibility: hidden;
  transition-property: opacity, visibility;
  transition-duration: 100ms;
  transition-timing-function: ease-in-out;
}

.btn--loading span:not(.btn__loader) {
  opacity: 0;
  visibility: hidden;
}

.btn--loading .btn__loader {
  opacity: 1;
  visibility: visible;
}

input.btn,
.shopify-payment-button input.shopify-payment-button__button--unbranded {
  background-color: rgb(var(--color-button));
  color: rgb(var(--color-button-text));
}

input.btn--dark {
  color: rgb(var(--color-button-text));
  background-color: rgb(var(--color-button));
}

.btn--dark {
  color: rgb(var(--color-button-text));
}

.btn--dark:after {
  background-color: rgb(var(--color-button));
}

.btn--light {
  color: rgb(var(--color-button-text));
}

.btn--light:after {
  background-color: rgb(var(--color-button));
}

.btn--light-2 {
  color: rgb(var(--color-button-text));
}

.btn--light-2:after {
  background-color: rgb(var(--color-button));
}

.btn--small {
  padding: 1.125rem 1.875rem;
  font-size: 0.875rem;
  line-height: 1;
}

.btn--large {
  padding: 1.125rem 3.5rem;
}

.btn--from {
  padding: 1.1875rem 2.3rem;
  font-size: 1rem;
}

.btn--secondary {
  color: rgb(var(--color-button));
}

.btn--secondary:after {
  border: solid 2px;
  background-color: transparent;
  transition: all 0.3s;
}

.btn--secondary:not([disabled]):focus {
  filter: brightness(var(--hover-brightness));
}

.btn--secondary:not([disabled]):focus::after {
  filter: none;
}

.btn--secondary:focus::after {
  background-color: transparent;
}

.btn--share {
  background-color: transparent;
  margin-right: 0.75rem;
  color: rgb(var(--color-button));
  display: block;
}

.btn--share .icon {
  transform: scale(1);
  transition: color .2s ease-in, transform .2s ease-in;
  vertical-align: middle;
  width: 30px;
  height: 30px;
  margin-right: 4px;
  stroke: currentColor;
}

.share-title {
  display: inline-block;
  vertical-align: middle;
}

.btn-close-modal {
  background-color: transparent;
  border: none;
  color: rgb(var(--color-fieldset-background));
  cursor: pointer;
  display: block;
  height: 2.25rem;
  padding: 0;
  width: 2.25rem;
}

.btn-close-modal .icon {
  width: 1.25rem;
  height: 1.25rem;
}

.input-group__btn {
  display: flex;
  justify-content: flex-end;
}

.input-group__btn .btn {
  margin-right: 0.625rem;
}

.input-group__btn .btn:last-child {
  margin-right: 0;
}

@media only screen and (max-width: 400px) {
  .input-group__btn {
    display: block;
    text-align: center;
  }

  .input-group__btn .btn {
    margin: 0 auto 10px;
    width: 100%;
    max-width: 250px;
  }

  .input-group__btn .btn:last-child {
    margin: 0 auto;
  }

  .btn--from {
    padding: 1.1875rem 1.3rem;
  }
}

/*================ Button Variations ================*/
@media only screen and (max-width: 767px) {
  .btn--small-wide {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.btn--link {
  background-color: transparent;
  border: 0;
  margin: 0;
  color: rgb(var(--color-link));
  text-align: left;
  transform: scale(1);
  transition: transform .2s ease-in;
}

.btn--link:not([disabled]):hover .icon, .btn--link:focus .icon {
  background-color: transparent;
  transform: scale(1.1);
}

.btn--link .icon {
  vertical-align: middle;
}

.btn--narrow {
  padding-left: 15px;
  padding-right: 15px;
}

.btn--has-icon-after .icon {
  margin-left: 10px;
}

.btn--has-icon-before .icon {
  margin-right: 10px;
}

/*================ Forms ================*/
form {
  margin: 0;
}

form .requirement-form {
  font-size: 0.75rem;
  color: rgb(var(--color-label));
  font-weight: 300;
  text-align: left;
}

fieldset {
  border: 1px solid rgb(var(--color-foreground-3));
  margin: 0 0 88px;
  padding: 44px;
}

legend {
  border: 0;
  padding: 0;
}

button {
  cursor: pointer;
}

input[type="submit"] {
  cursor: pointer;
}

label {
  text-transform: uppercase;
  font-weight: 300;
  font-size: 0.875rem;
}

[type="radio"] + label, [type="checkbox"] + label {
  display: inline-block;
  margin-bottom: 0;
}

label[for] {
  cursor: pointer;
}

input,
textarea,
select,
.disclosure__toggle {
  border: 1px solid rgb(var(--color-border-input));
  background-color: rgba(0, 0, 0, 0);
  color: rgb(var(--color-foreground));
  max-width: 100%;
  line-height: 1.2;
  border-radius: 9px;
  transition: all 0.3s ease;
  min-height: 44px;
  width: 100%;
}

input:hover,
input:focus,
textarea:hover,
textarea:focus,
select:hover,
select:focus,
.disclosure__toggle:hover,
.disclosure__toggle:focus {
  border-color: rgb(var(--color-border-input), 0.5);
}

input:not(:placeholder-shown),
textarea:not(:placeholder-shown),
select:not(:placeholder-shown),
.disclosure__toggle:not(:placeholder-shown) {
  border-color: rgb(var(--color-border-input));
}

input:focus + label .field-wrapper__label-name,
input:not(:placeholder-shown) + label .field-wrapper__label-name,
textarea:focus + label .field-wrapper__label-name,
textarea:not(:placeholder-shown) + label .field-wrapper__label-name,
select:focus + label .field-wrapper__label-name,
.disclosure__toggle:focus + label .field-wrapper__label-name,
select:not(:placeholder-shown) + label .field-wrapper__label-name,
.disclosure__toggle:not(:placeholder-shown) + label .field-wrapper__label-name,
input:hover + label .field-wrapper__label-name,
textarea:hover + label .field-wrapper__label-name,
select:hover + label .field-wrapper__label-name,
.disclosure__toggle:hover + label .field-wrapper__label-name {
  color: rgb(var(--color-label));
}

input:focus,
textarea:focus,
select:focus,
.disclosure__toggle:focus {
  outline: none;
  box-shadow: none;
}

.field-wrapper__input:focus-visible,
.select__select:focus-visible,
.customer .field-wrapper input:focus-visible,
.customer select:focus-visible,
.localization-form__select:focus-visible.localization-form__select:after {
  box-shadow: 0 0 0 1px rgb(var(--color-border-input));
  outline: 0;
  /* outline: 1px solid rgb(var(--color-border-input)); */
  /* outline-offset: -2px; */
}

input[disabled],
textarea[disabled],
select[disabled],
[disabled].disclosure__toggle {
  cursor: default;
  opacity: 0.4;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
input:-internal-autofill-selected,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
textarea:-webkit-autofill:active,
textarea:-internal-autofill-selected,
select:-webkit-autofill,
.disclosure__toggle:-webkit-autofill,
select:-webkit-autofill:hover,
.disclosure__toggle:-webkit-autofill:hover,
select:-webkit-autofill:focus,
.disclosure__toggle:-webkit-autofill:focus,
select:-webkit-autofill:active,
.disclosure__toggle:-webkit-autofill:active,
select:-internal-autofill-selected,
.disclosure__toggle:-internal-autofill-selected {
  -webkit-text-fill-color: rgb(var(--color-foreground));
  -webkit-box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0) inset;
  box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0) inset;
  transition: background-color 5000s ease-in-out 0s;
  background-color: none !important;
  border-color: rgb(var(--color-border-input));
}

input::placeholder,
textarea::placeholder,
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: transparent;
  opacity: 0;
}

::-moz-placeholder,
textarea::-moz-placeholder,
:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: transparent;
  opacity: 0;
}

input.input--dark.input--error {
  border-color: rgb(var(--color-error)) !important;
}

input.input--dark.input--error:invalid {
  border-color: rgb(var(--color-error));
}

input.input--dark.input--error:invalid + label .field-wrapper__label-name,
input.input--dark.input--error + label .field-wrapper__label-name,
.field-wrapper__input.input--dark.input--error + .field-wrapper__label .field-wrapper__label-name {
  color: rgb(var(--color-error));
}

input[type=checkbox] {
  display: none;
}

input[type=checkbox] + label {
  position: relative;
  margin-left: 5px;
  display: inline-block;
  line-height: 1.25;
}

input[type=checkbox] + label .input-check-mark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  background-color: transparent;
  border: 1px solid rgb(var(--color-border-input));
  border-radius: 3px;
  width: 12px;
  height: 12px;
  margin-left: 0.1875rem;
}

input[type=checkbox]:checked + label .input-check-mark:before {
  content: "\e903";
  font-family: 'icomoon';
  position: absolute;
  bottom: 0px;
  left: 1px;
}

.input-check-mark--margin-rigth {
  margin-right: 5px;
}

textarea {
  min-height: 100px;
  display: block;
}

.form-vertical .input-group__btn {
  margin-top: 1rem;
}

.field-group {
  display: flex;
  flex-wrap: wrap;
  gap: 0 15px;
  grid-gap: 0 15px;
}

/* .field-group > * + * {
  margin-right: 15px;
} */

.field-group > div {
  flex: 1;
  min-width: 190px;
}

/*================ Form feedback messages ================*/
.form-message {
  outline: none;
}

.form-message--success {
  background-color: transparent;
  color: rgb(var(--color-foreground-2));
  display: block;
  width: 100%;
}

.form-message--error {
  line-height: 1.3;
  color: rgb(var(--color-error));
  font-size: 0.8125rem;
  font-weight: 300;
  margin-bottom: 0;
  padding: 0;
  text-align: left;
  width: 100%;
}

.form-message--success-field {
  line-height: 1.3;
  font-size: 0.75rem;
  font-weight: 300;
  color: rgb(var(--color-foreground-4));
}

.form-message--success-field--margin {
  margin-top: 0.75rem;
}

.form-message--success-field .icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.1875rem;
}

.form-message--error .form-message__title {
  font-size: 1em;
}

.form-message--error .form-message__link,
.form-message--error a {
  display: inline-block;
  text-decoration: underline;
  text-decoration-skip-ink: auto;
  font-weight: 500;
  color: rgb(var(--color-error));
}

.form-status {
  font-size: 0.75rem;
  font-weight: 300;
  color: rgb(var(--color-foreground-4));
}

.form-status .icon {
  margin-right: 0.25rem;
  height: 0.8125rem;
  width: auto;
}

.form__message-success {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  padding: 1.875rem 2.5rem;
}

.form__message-success h2 {
  font-size: 2.125rem;
  margin-bottom: 0.875rem;
}

.form__message-success p {
  font-size: 0.875rem;
  font-weight: 300;
  color: rgb(var(--color-foreground));
}

@media screen and (max-width: 768px) {
  .form__message-success {
    padding: 1.875rem 0;
  }

  .form__message-success h2 {
    font-size: 1.5rem;
    margin-bottom: 0.3125rem;
  }
}

/*==== Component Form ====*/
.input-group__field {
  margin-bottom: 0.625rem;
  text-align: left;
  width: 100%;
  min-height: 42px;
}

.field-wrapper {
  position: relative;
  margin-top: 0.9375rem;
}

.field-wrapper label {
  color: rgb(var(--color-label));
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.field-wrapper .requirement-input {
  margin-bottom: 8px;
}

.field-wrapper .select {
  background: none;
  overflow: visible;
  width: 100%;
}

.field-wrapper select {
  width: 100%;
}

.field-wrapper .select .field-wrapper__label {
  top: 0px;
}

.field-wrapper .select .field-wrapper__label-name {
  color: rgb(var(--color-label));
  font-size: .875rem;
}

.field-wrapper .input--error + label .field-wrapper__label-name {
  color: rgb(var(--color-error));
}

.field-wrapper select:focus ~ .select-label .field-wrapper__label-name,
select:valid ~ .select-label .field-wrapper__label-name {
	top: 1px;
	transition: 0.2s ease all;
}

.field-wrapper .select .icon-chevron-down {
  fill: rgb(var(--color-label));
}

.field-wrapper .input--error + label + .icon-chevron-down {
  display: none;
}

.field-wrapper__label-name {
  padding: 1px 5px 0;
  position: absolute;
  left: 10px;
  background-color: rgb(var(--color-background));
  color: rgb(var(--color-label));
  transform: translateY(-50%);
  transition: all 0.3s ease;
  top: 21px;
}

.field-wrapper textarea + label .field-wrapper__label-name {
  top: 22px;
}

.field-wrapper textarea:focus,
.field-wrapper__input:focus,
.field-wrapper textarea:not(:placeholder-shown),
.field-wrapper_input:not(:placeholder-shown) {
  border-color: rgb(var(--color-border-input), 0.5);
}

.field-wrapper textarea:focus + label .field-wrapper__label-name,
.field-wrapper__input:focus + .field-wrapper__label .field-wrapper__label-name,
.field-wrapper textarea:not(:placeholder-shown) + label .field-wrapper__label-name,
.field-wrapper__input:not(:placeholder-shown) + .field-wrapper__label .field-wrapper__label-name {
  top: 1px;
  color: rgb(var(--color-label));
}

.field-wrapper textarea.input--error:focus + label .field-wrapper__label-name,
.field-wrapper__input.input--error:focus + .field-wrapper__label .field-wrapper__label-name,
.field-wrapper textarea.input--error:not(:placeholder-shown) + label .field-wrapper__label-name,
.field-wrapper__input.input--error:not(:placeholder-shown) + .field-wrapper__label .field-wrapper__label-name {
  color: rgb(var(--color-error));
}

.field-wrapper__input--required {
  margin-bottom: 8px;
}

.field-wrapper__icon-error {
  position: absolute;
  right: 8px;
  top: 7px;
}

.field-wrapper__icon-error .icon-error {
  width: 1.5625rem;
  height: 1.5625rem;
}

.field-wrapper__icon-check {
  position: absolute;
  width: 20px;
  height: 20px;
  right: 8px;
  top: 50%;
  margin-top: -10px;
  background: rgb(var(--color-button-text));
  line-height: 20px;
  border-radius: 4px;
}

.field-wrapper__icon-check .icon-check {
  width: 20px;
  height: 10px;
}

.input--error {
  border-color: rgb(var(--color-error)) !important;
  margin-bottom: 0.5rem;
}

.input--error.input--not-error-msg {
  margin-bottom: 0;
}

.input--error:invalid {
  border-color: rgb(var(--color-error));
}

.input--error + label .field-wrapper__label-name,
.input--error:invalid + label .field-wrapper__label-name {
  color: rgb(var(--color-error));
}

.input-error-message {
  line-height: 1.3;
  color: rgb(var(--color-error));
  font-size: 0.75rem;
  font-weight: 300;
  margin-left: 0;
  display: block;
}

.field__button {
  align-items: center;
  background-color: transparent;
  border: 0;
  color: currentColor;
  cursor: pointer;
  display: flex;
  height: 44px;
  justify-content: center;
  overflow: hidden;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 44px;
}

.field__button > svg {
  height: 1.25rem;
  width: 1.25rem;
}

.search-form__input-wrapper {
  position: relative;
}

.search-form__input-wrapper .modal__close-button.link {
  padding: 0 15px;
  width: auto;
  position: absolute;
  right: 40px;
  opacity: 0.5;
  top: 50%;
  transform: translateY(-50%);
  text-transform: uppercase;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}

.search-form__input-wrapper .modal__close-button.fadeout-transition {
  opacity: 0;
  visibility: hidden;
}

.search-form__input-wrapper .modal__close-button.link:after {
  content: "";
  width: 1px;
  height: 1.8125rem;
  background: rgb(var(--color-foreground), 0.5);
  position: absolute;
  right: 0;
}

.search__input {
  width: 100%;
  min-height: 44px;
  color: rgb(var(--color-foreground));
  background-color: rgba(0, 0, 0, 0);
  border: none;
  border-bottom: solid 1px;
  border-radius: 0;
  font-size: calc(var(--font-heading-scale) * 2.25rem);
  font-family: var(--font-heading-family);
  font-weight: 900;
  padding-left: 0;
  padding-right: 7.375rem;
}

/*===== Component Cart Count Bubble =====*/
.cart-count-bubble {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: -0.1rem;
  top: 0.3rem;
  font-weight: 600;
  background-color: rgb(var(--color-background));
  border-radius: 3px;
  color: rgb(var(--color-foreground));
  min-width: 1em;
  height: 1em;
  line-height: 1;
  padding: 0 2px;
}
.cart-count-bubble span {
  font-family: var(--font-body-family);
  font-weight: 300;
  font-size: 0.6875rem;
}

@media (max-width: 930px) {
  .cart-count-bubble {
    top: calc(4em / 16);
    right: 0;
    min-width: calc(19em / 16);
    height: calc(19em / 16);
  }
}

/* section-announcement-bar */
#shopify-section-announcement-bar {
  z-index: 4;
}

.announcement-bar {
  display: block;
  visibility: visible;
  opacity: 1;
  max-height: 100px;
  overflow: hidden;
  transition: max-height 0.3s ease-out 0.1s;
}

.announcement-bar--hide {
  max-height: 0;
}

.announcement {
  opacity: 1;
  position: relative;
  transition: opacity 0.2s ease-out;
  padding: 0 1.75rem;
}

.announcement-bar--hide .announcement {
  opacity: 0;
}

.announcement__close {
  position: absolute;
  right: -0.875rem;
  top: 3px;
}

.announcement__text {
  text-align: center;
  padding: 1rem 0;
  margin: 0;
  font-size: calc(0.875rem * var(--font-section-scale, 1));
}

.announcement__text p {
  color: inherit;
}

.announcement__text a {
  text-decoration: underline;
}

/*====== Component Quantity ======*/
.qtydiv .cart__qty-label {
  display: block;
  text-align: center;
  color: rgb(var(--color-label));
  font-size: 0.6875rem;
  font-weight: 300;
}

.quantity {
  border: solid 1px rgb(var(--color-border-input));
  border-radius: 5px;
  position: relative;
  width: 5.3125rem;
  height: 1.75rem;
  display: flex;
}

.quantity__input {
  border: none;
  color: rgb(var(--color-label));
  min-height: auto;
  font-size: 1rem;
  line-height: 1;
  font-weight: 300;
  text-align: center;
  background-color: transparent;
  border-radius: 0;
  padding: 0 0.5rem;
  width: 100%;
  min-width: 0;
  flex-grow: 1;
  -webkit-appearance: none;
  appearance: none;
}

.quantity__button {
  width: 1.5625rem;
  flex-shrink: 0;
  font-size: 1.8rem;
  line-height: 0.4;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgb(var(--color-label));
  padding: 0;
}

.quantity__button svg {
  width: 14px;
  height: 14px;
  pointer-events: none;
}

.quantity .icon-trash-can {
  width: auto;
  height: 15px;
  color: rgb(var(--color-label));
}

.quantity__button[disabled] {
  color: rgb(var(--color-label), 0.4);
}

.qtyremove:not(.hide)+.qtyminus {
  display: none;
}

.qtyremove {
  height: 100%;
}

.qtyremove .btn--link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}

.quantity__input::-webkit-outer-spin-button,
.quantity__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quantity__input[type='number'] {
  -moz-appearance: textfield;
}

.quantity noscript {
  width: 100%;
  height: 100%;
}

.no-js .quantity .select {
  width: 100%;
  height: 100%;
  color: rgb(var(--color-button));
}

.no-js .quantity .select__select {
  min-width: auto;
  height: 100%;
  color: rgb(var(--color-button));
}

.no-js .quantity .select-label {
  color: rgb(var(--color-button));
}

/* component-modal */
.modal__toggle {
  list-style-type: none;
}

.no-js details[open] .modal__toggle {
  position: absolute;
  z-index: 2;
}

.modal__toggle-close {
  display: none;
}

.no-js details[open] svg.modal__toggle-close {
  display: flex;
  z-index: 1;
  height: 1.7rem;
  width: 1.7rem;
}

.modal__toggle-open {
  display: flex;
}

.no-js details[open] .modal__toggle-open {
  display: none;
}

.no-js .modal__close-button.link {
  display: none;
}

.modal__close-button.link {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0rem;
  height: 2.875rem;
  width: 2.875rem;
  background-color: transparent;
}

.modal__close-button.link .icon {
  width: 18px;
  height: 18px;
}

.modal__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgb(var(--color-background));
  z-index: 4;
  display: flex;
  justify-content: center;
  align-items: center;
}

.media-modal {
  cursor: zoom-out;
}

.media-modal .deferred-media {
  cursor: initial;
}

@media screen and (max-width: 768px) {
  .modal__close-button.link {
    font-size: 0.875rem;
    height: 2.75rem;
    width: 2.75rem;
  }

  .modal__close-button.link .icon {
    height: 18px;
    width: 18px;
  }
}

.shopify-section-header {
  z-index: 3;
  position: sticky;
  top: -1px;
  transition: transform 0.4s ease-in-out;
}

.shopify-section-header-hidden {
  transform: translateY(-100%);
}

.shopify-section-header.animate {
  transition: transform 0.4s ease-in-out;
}

/* Main Header Layout */
.header-wrapper {
  display: block;
  position: relative;
  background-color: rgb(var(--color-background));
  transition: background-color .3s ease-in-out;
}

.shopify-section-header-light .header__heading-logo:not(.header__heading-logo--inverse) {
  opacity: 0;
}

.shopify-section-header-light .header__heading-logo--inverse {
  opacity: 1;
}

.header {
  display: grid;
  grid-template-areas: 'left-icon heading icons';
  grid-template-columns: 1fr 2fr 1fr;
  align-items: center;
  padding-top: 0.8125rem;
  padding-bottom: 0;
}

.header .header__back-button {
  display: flex;
  justify-self: left;
}

@media screen and (max-width: 990px) {
  .header {
    padding: 0.6rem 1.3rem;
  }
}

@media screen and (min-width: 990px) {
  .header--has-menu:not(.header--middle-left) {
    padding-bottom: 0;
  }

  .header--top-left {
    grid-template-areas:
      'heading icons'
      'navigation navigation';
    grid-template-columns: 1fr auto;
  }

  .header--middle-left {
    grid-template-areas: 'heading navigation icons';
    grid-template-columns: auto minmax(0, 1fr) minmax(0, max-content);
    align-items: center;
    column-gap: 2rem;
  }

  .header--top-center {
    grid-template-areas:
      'left-icon heading icons'
      'navigation navigation navigation';
  }
}

.header *[tabindex='-1']:focus {
  outline: none;
}

.header__heading {
  margin: 0;
  line-height: 0;
}

.header > .header__heading-link {
  line-height: 0;
}

.header__heading,
.header__heading-link {
  grid-area: heading;
  justify-self: center;
  overflow: hidden;
}

.header__heading-link {
  display: inline-block;
  padding: 0.15rem 0.75rem;
  text-decoration: none;
  word-break: break-word;
  position: relative;
}

.header__heading-link:hover .h2 {
  color: rgb(var(--color-foreground), 0.8);
}

.header__heading-link .h2 {
  line-height: 1;
  color: rgb(var(--color-foreground));
  font-size: calc(var(--font-heading-scale) * 1.75rem);
}

.header__heading-logo {
  height: auto;
  width: 100%;
}

.header__heading-logo--inverse {
  opacity: 0;
  transition: opacity 0.3s ease-in;
}

.header__heading-logo--absolute {
  position: absolute;
  padding: 0.15rem 0.75rem;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media screen and (max-width: 989px) {
  .header__heading,
  .header__heading-link {
    text-align: center;
  }

  .header__heading-link .h2 {
    line-height: 1;
    font-size: calc(var(--font-heading-scale) * 1.5rem);
  }
}

@media screen and (min-width: 990px) {
  .header__heading-link {
    margin-left: -0.75rem;
  }

  .header__heading,
  .header__heading-link {
    justify-self: start;
  }

  .header--top-center .header__heading-link,
  .header--top-center .header__heading {
    justify-self: center;
  }
}

/* Header icons */
.header__icons {
  display: flex;
  grid-area: icons;
  justify-self: end;
}

.header__icon:not(.header__icon--summary),
.header__icon span {
  display: flex;
  align-items: center;
  justify-content: center;
}

.header__icon span {
  height: 100%;
}

.header__icon::after {
  content: none;
}

.header__icon:hover .icon,
.modal__close-button:hover .icon,
.button--icon:hover .icon {
  transform: scale(1.1);
}

.header__icon .icon {
  /* height: 2rem;
  width: 2rem; */
  /* fill: none; */
  vertical-align: middle;
  transition: transform .2s ease-in;
}

.header__icon {
  color: rgb(var(--color-link));
  height: 2.75rem;
  width: 2.75rem;
}

.header__icon--back-button {
  padding: 0;
  margin-left: -0.5rem;
}

.header__icon--cart {
  position: relative;
  margin-right: -0.5rem;
}

@media screen and (max-width: 989px) {
  menu-drawer ~ .header__icons .header__icon--account {
    display: none;
  }

  .header__icons .header__icon--account {
    display: none;
  }

  .header__icon.small--hide {
    display: none;
  }
}

/* Search */
menu-drawer + .header__search {
  display: none;
}

.header > .header__search {
  grid-area: left-icon;
  justify-self: start;
}

.header:not(.header--has-menu) * > .header__search {
  display: none;
}

.header__search {
  display: inline-flex;
  line-height: 0;
  margin-right: 3px;
}

.header--top-center > .header__search {
  display: none;
}

.header--top-center * > .header__search {
  display: inline-flex;
}

@media screen and (min-width: 990px) {
  .header:not(.header--top-center) * > .header__search,
  .header--top-center > .header__search {
    display: inline-flex;
  }

  .header:not(.header--top-center) > .header__icon--account,
  .header--top-center * > .header__icon--account {
    display: none;
  }

  .header__search {
    margin-right: 0;
  }
}

.header__icon--search {
  width: auto;
  font-size: 0.875rem;
  font-weight: 300;
  text-transform: uppercase;
  opacity: 1;
  transition: opacity .2s ease-in;
}

.header__icon--search div {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.header__icon--search span {
  display: inline-block;
  height: auto;
}

.header__icon--search__icon {
  margin-right: 0.4375rem;
}

.header__icon--search__text {
  margin-right: 1.125rem;
}

.no-js .predictive-search {
  display: none;
}

details[open] .search-modal__content {
  opacity: 1;
  animation: animateSearchOpen 0.3s ease;
}

details:not([open]) .search-modal__content {
  opacity: 0;
  animation: animateSearchClose 0.3s ease;
}

.modal-overlay {
  opacity: 0;
  visibility: hidden;
  transition-property: opacity, visibility;
  transition-duration: 100ms;
  transition-timing-function: ease-in-out;
}

details[open] .modal-overlay {
  display: block;
  opacity: 1;
  visibility: visible;
}

details[open] .modal-overlay::after {
  position: absolute;
  content: '';
  overflow: hidden;
  background-color: rgb(var(--color-background));
  top: 100%;
  left: 0;
  right: 0;
  height: calc(100vh - 100%);
}

details[open] > .header__icon--search {
  opacity: 0;
}

.search-modal--predictive-disabled details[open] .modal-overlay::after {
  background: rgb(var(--color-overlay), 0.6);
}

.search-modal {
  top: 100%;
  height: 154px;
  border: none;
  background: rgb(var(--color-background-2));
  transition: background-color .3s ease-in-out;
}

.search-modal.content-border-style {
  border: solid 1px rgb(var(--color-base-content_border));
  border-left: 0;
  border-right: 0;
}

.search-modal.content-border-style .modal-overlay::after {
  border-top: solid 1px rgb(var(--color-base-content_border));
}

.search-modal.search-modal--light {
  background-color: rgb(var(--color-empty-image));
}

.search-modal__content {
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  line-height: 1.8;
}

.search-modal__content .modal__close-button {
  color: rgb(var(--color-foreground));
}

.search-modal__form {
  width: 100%;
}

.search-modal__form .field-wrapper {
  position: relative;
  margin: 0;
}

.search-modal__form .field-wrapper__input {
  width: 100%;
}

.search-modal__form .search__button {
  color: rgb(var(--color-foreground));
  right: -10px;
  top: 50%;
  transform: translateY(-50%);
}

.search__button .icon-search {
  height: 28px;
  width: auto;
}

.search-modal__close-button {
  position: absolute;
  right: 0.3rem;
}

.search-modal.search-modal--light .search__button,
.search-modal.search-modal--light .modal__close-button,
.search-modal.search-modal--light .search__input {
  color: rgb(var(--color-price-foreground));
}

@media screen and (max-width: 768px) {
  .search-modal {
    height: 120px;
  }

  .search-modal__close-button {
    right: 4rem;
    opacity: 0.6;
  }

  .search-modal__content {
    height: 63px;
  }

  .header__icon--search {
    width: 2.75rem;
  }

  .header__icon--search__icon {
    margin-right: 0;
  }

  .header__icon--search .header__icon--search__text {
    display: none;
  }
}

@media screen and (min-width: 990px) {
  .search-modal__close-button {
    position: initial;
    margin-left: 0.5rem;
  }
}

/* Header menu drawer */
.header__icon--menu {
  transition: opacity .25s ease-in-out;
}

.header__icon--menu .icon-close {
  display: none;
  height: 1.25rem;
  width: 1.25rem;
}

details:not([open]) > .header__icon--menu {
  opacity: 1;
}

details[open] > .header__icon--menu {
  opacity: 0;
}

.no-js details[open] > .header__icon--menu {
  opacity: 1;
}

.no-js .header__icon--menu .icon {
  display: block;
  position: absolute;
  opacity: 1;
  transition: opacity 150ms ease;
}

.no-js details:not([open]) > .header__icon--menu .icon-close,
.no-js details[open] > .header__icon--menu .icon-hamburger {
  visibility: hidden;
  opacity: 0;
}

.js details[open]:not(.menu-opening) > .header__icon--menu {
  opacity: 1;
}

.header__inline-menu details[open] > .header__submenu {
  opacity: 1;
  animation: animateMenuOpen 0.3s ease;
  z-index: 5;
}

/* .js .header__inline-menu details[open]:not(.sub-menu-opening) > .header__submenu {
  opacity: 0;
} */

.js .header__inline-menu details[open].sub-menu-opening > .header__submenu {
  opacity: 1;
}

/* Header menu */
.header__inline-menu {
  margin-left: -1.2rem;
  grid-area: navigation;
  display: none;
}

.header--top-center .header__inline-menu,
.header--top-center .header__heading-link {
  margin-left: 0;
}

@media screen and (min-width: 990px) {
  .header__inline-menu {
    display: block;
  }

  .header--top-center .header__inline-menu {
    justify-self: center;
  }

  .header--top-center .header__inline-menu > .list-menu--inline {
    justify-content: center;
  }

  .header--middle-left .header__inline-menu {
    margin-left: 0;
  }
}

.header__menu {
  padding: 0 1rem;
}

.header__menu-item {
  padding: 0 1.4375rem;
  color: rgb(var(--color-foreground));
  font-size: 0.875rem;
  text-transform: uppercase;
  font-family: var(--font-body-family);
  font-weight: 400;
}

.shopify-section-header-light .header__menu-item,
.shopify-section-header-light .header__inline-menu a {
  color: rgb(var(--color-link));
}

.header__menu-item span {
  display: block;
  padding: 0.625rem 0;
  box-sizing: border-box;
  border-top: solid 2px transparent;
  border-bottom: solid 2px transparent;
}

.header__menu-item:hover span {
  border-bottom: 2px solid;
}

.no-js details > .header__menu-item .icon-arrow-right {
  transform: rotate(90deg);
  width: 6px;
  margin-left: 4px;
}

.no-js details[open] > .header__menu-item .icon-arrow-right {
  transform: rotate(-90deg);
}

.header__active-menu-item,
.header__active-menu-item a {
  color: rgb(var(--color-button));
}

.header__active-menu-item {
  border-bottom: 2px solid;
}

.shopify-section-header-light .header__active-menu-item {
  color: rgb(var(--color-link));
}

.header__submenu {
  opacity: 0;
  transition: opacity 0.3s;
}

.header__submenu .header__submenu {
  opacity: 1;
  padding: 0;
  margin: 0;
}

.header__submenu .header__menu-item:after {
  right: 2rem;
}

.header__submenu .header__menu-item {
  margin-bottom: 9px;
  font-weight: 600;
  padding: 0;
  color: rgb(var(--color-link));
}

.header__submenu .header__submenu .header__menu-item {
  padding: 0;
  margin-bottom: 0.5625rem;
  font-weight: 300;
}

.header__submenu__categories {
  text-transform: uppercase;
  font-size: 0.875em;
}

.header__submenu__col {
  display: flex;
  width: 100%;
  flex: 1;
  max-width: 380px;
  padding-left: 20px;
  justify-content: flex-end;
}

.header__submenu__col_img {
  background-color: rgb(var(--color-background));
  position: relative;
  width: 50%;
  display: inline-block;
  overflow: hidden;
  margin: 0 5px;
}

.header__submenu__col_img--mixed {
  border-radius: 40px 0 40px;
}

.header__submenu__col_img--rounded {
  border-radius: 18px;
}

.header__submenu__col_img::before {
  content: "";
  position: absolute;
  background-color: rgb(0 0 0 / 20%);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.header__submenu__col_img .media {
  min-height: 100%;
}

.header__submenu__col_img h3,
.header__submenu__col_img .h3 {
  text-transform: uppercase;
  font-family: var(--font-body-family);
  color: rgb(var(--color-foreground));
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
  font-size: 1rem;
  font-weight: 100;
}

.header__submenu__col_img i {
  display: block;
  font-family: var(--font-heading-family);
  text-transform: capitalize;
  font-size: 1.25rem;
  font-weight: 900;
}

.header__submenu__col_img:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

details-disclosure > details {
  position: relative;
}

@keyframes animateMenuOpen {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes animateSearchOpen {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes animateSearchClose {
  0% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    transform: translateY(-100%);
  }
}

.overflow-hidden-mobile,
.overflow-hidden-tablet {
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .overflow-hidden-mobile {
    overflow: auto;
  }
}

@media screen and (min-width: 990px) {
  .overflow-hidden-tablet {
    overflow: auto;
  }
}

.global-media-settings {
  position: relative;
  overflow: visible !important;
  background-color: transparent;
}

.global-media-settings--no-shadow {
  overflow: hidden !important;
}

/*====== Product page ==========*/
.template-product-wrapper {
  padding-top: 1.125rem;
}

@media only screen and (max-width: 1279px) {
  .template-product-wrapper {
    padding-top: 1.625rem;
  }
}

@media (max-width: 1000px) {
  .template-product-wrapper {
    padding: 0;
  }
}

/* =========== Subscription Appp =========== */

.shopify_subscriptions_app__title {
  text-transform: uppercase;
  font-weight: 400;
  display: block;
  font-size: 0.875rem;
}

.shopify_subscriptions_app_block .shopify_subscriptions_app_block_label {
  padding: 0.875rem 0.875rem;
}

.shopify_subscriptions_app_block label {
  display: flex;
  align-items: center;
  line-height: 1;
  gap: 4px;
  font-size: 0.875rem;
  font-weight: 400;
  color: rgb(var(--color-fieldset-legend));
}

.shopify_subscriptions_app_block input[type=radio] {
  display: inline-block;
  width: 1.125rem;
  height: 1.125rem;
  min-height: auto;
  color: rgb(var(--color-fieldset-legend));
  background: rgb(var(--color-button-text));
  border: solid 1px rgb(var(--color-base-content_border));
}

.shopify_subscriptions_purchase_option_wrapper > label {
  font-weight: 400;
}

.shopify_subscriptions_app_block_label ul {
  margin-top: 5px !important;
  padding-left: 0 !important;
}

.shopify_subscriptions_app_block .shopify_subscriptions_app_policy {
  margin-top: 5px;
  margin-bottom: 14px;
}
/* Remove the box around the quantity selector */
.quantity, 
.product-form__input--quantity {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Optional: Add a small underline just under the number to keep it tidy */
.quantity__input {
    border-bottom: 1px solidrgb(255, 0, 0) !important; 
    width: 40px !important; /* Makes the number area smaller */
}

/* Make sure the plus and minus buttons are clean */
.quantity__button {
    background: transparent !important;
    border: none !important;
    color: #000 !important;
}
/* This renders the actual heart icon once the app is loaded */
.swym-ready i.icon-swym-wishlist:after {
    content: "\f004";
}
/* Custom "Bag" Drawer Styling */
.cart-drawer {
    background-color: #ffffff;
    border-left: 1px solid #f0f0f0;
}

.cart-drawer__heading {
    font-family: 'Assistant', sans-serif; /* Or your theme's heading font */
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-size: 1.2rem;
}

/* Make the Add to Bag button look high-end */
.product-form__submit {
    background-color: #000;
    color: #fff;
    border-radius: 0; /* Sharp corners for a luxury look */
    letter-spacing: 0.2em;
    transition: opacity 0.3s ease;
}

.product-form__submit:hover {
    opacity: 0.8;
}
/* Create a container to hold Bag and Heart side-by-side */
.header-icons-group {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important; /* This creates the individual space between them */
}

/* Ensure the Heart doesn't shrink or overlap */
.swym-wishlist {
    position: relative !important;
    display: inline-flex !important;
    margin-left: 10px; /* Extra breathing room */
    text-decoration: none;
}

/* Optional: Make the Heart slightly smaller/larger to balance the Bag */
.icon-swym-wishlist {
    font-size: 22px; 
    display: block;
}
/* This makes the icons sit in a neat, spaced-out row */
.header__icons {
    display: flex !important;
    gap: 20px !important; /* This is the "breathing room" between icons */
    align-items: center !important;
    justify-content: flex-end !important;
}
/* --- LUXURY GRID LAYOUT (Van Cleef Style) --- */

/* 1. The Container: Remove gaps and add Top/Left borders */
.product-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    column-gap: 0 !important; /* Removes space between items */
    row-gap: 0 !important;
    border-top: 1px solid #e6e6e6; /* The top line of the whole grid */
    border-left: 1px solid #e6e6e6; /* The left line of the whole grid */
}

/* 2. The Items: recalculate width since gaps are gone */
/* This ensures 4 items fit perfectly across on desktop */
@media screen and (min-width: 990px) {
    .product-grid .grid__item {
        width: 25% !important; /* 4 items per row */
        max-width: 25% !important;
    }
}

/* On Tablet/Mobile, switch to 2 items per row */
@media screen and (max-width: 989px) {
    .product-grid .grid__item {
        width: 50% !important;
        max-width: 50% !important;
    }
}

/* 3. The Card: Add Right/Bottom borders and Internal Spacing */
.card-wrapper {
    height: 100% !important; /* Forces all cards to be the same height */
    border-right: 1px solid #e6e6e6; /* The vertical divider */
    border-bottom: 1px solid #e6e6e6; /* The horizontal divider */
    box-sizing: border-box !important;
}

/* 4. Inside the Square: Center everything and add breathing room */
.card {
    height: 100% !important;
    border: none !important; /* Remove default theme borders if any */
    background: transparent !important; /* Keep it clean */
}

.card__inner {
    padding: 30px 20px 0 20px !important; /* Adjust this to move image down/up */
}

.card__content {
    padding: 20px !important; /* Space around the text at the bottom */
    text-align: center !important; /* Center align like Van Cleef */
    display: flex;
    flex-direction: column;
    justify-content: flex-end; /* Pushes text to the bottom if you want */
    flex-grow: 1;
}

/* Optional: Make the product images smaller inside the square so they don't touch the lines */
.card__media {
    width: 80% !important; /* Shrinks image slightly */
    margin: 0 auto !important; /* Centers it */
}
/* 1. This is the Base/Mobile setting (2 per row) */
  .luxury-card {
    width: 50% !important; /* Sets the phone to 2 items */
    box-sizing: border-box;
    border-right: 1px solid #E6E6E6;
    border-bottom: 1px solid #E6E6E6;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    padding: 15px; /* Slightly less padding for smaller screens */
    background: #fff;
    aspect-ratio: 1 / 1;
    position: relative;
    overflow: hidden;
  }

  /* 2. This is the Desktop setting (3 per row) */
  /* This only kicks in when the screen is larger than a tablet */
  @media (min-width: 769px) {
    .luxury-card {
      width: 33.3333% !important; /* 3 items per row on desktop */
      padding: 25px; /* More breathing room for larger screens */
    }
  }
  /* --- Featured Shops Gallery Border --- */
/* This targets the wrapper around the image but stays above the text */
.template--19031623663669__featured_shops_BNBgcL .card__inner {
  border: 1px solid #E6E6E6 !important;
  background-color: #ffffff !important; /* Forces white background inside the border */
  box-sizing: border-box !important;
  display: block !important;
  margin-bottom: 10px !important; /* Space between border and the text label */
}

/* Centers the image and gives it breathing room inside the border */
.template--19031623663669__featured_shops_BNBgcL .card__media {
  padding: 20px !important; 
  background: transparent !important;
}

/* Ensures the image doesn't stretch to touch the edges */
.template--19031623663669__featured_shops_BNBgcL .card__media img {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
}
/* --- MOVE PRODUCT INFO UP --- */
.product__info-container, 
.product-single__meta,
.product-header {
  padding-top: 0 !important;
  margin-top: -20px !important; /* Adjust this number to pull it higher or lower */
}

/* Reduces space specifically above the brand name GLYX */
.product-header__vendor {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* --- Move the Entire Variant Section Down --- */
.product-single__meta variant-radios, 
.product-single__meta variant-selects {
  display: block !important;
  margin-top: 40px !important; /* Adjust this to move the whole block up/down */
  margin-bottom: 20px !important;
}

/* Restores original internal spacing for titles */
.product-form__input .form__label {
  margin-bottom: 10px !important;
}
/* --- Shrink Variant Picker as a Unit --- */
variant-radios, 
variant-selects {
  display: block !important;
  transform: scale(0.9); /* Changes overall size (1.0 is original) */
  transform-origin: left top; /* Keeps it aligned to the left/top */
  width: 111% !important; /* Counteracts the scale to prevent weird gaps */
  margin-top: 20px !important;
}

/* Specific adjustment for mobile */
@media screen and (max-width: 749px) {
  variant-radios, 
  variant-selects {
    transform-origin: center top; /* Centers the shrink on mobile */
    width: 100% !important;
  }
}
/* --- FEATURED SHOPS SUBHEADING STYLE --- */
.vca-subheading {
  color: #888888 !important; /* The slight grey look */
  font-size: 13px !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  margin-top: 10px !important;
  margin-bottom: 40px !important;
  text-align: center;
  font-weight: 400;
  display: block;
}
/* Container and Card Styling */
.email-signup-banner .password-card-wrapper {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 40px 0 !important;
}

/* Typography for Heading and Subtitle */
.password-card__title {
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 1.6rem !important;
  color: #000 !important;
  margin-bottom: 15px !important;
}

.password-card__subtitle {
  color: #000 !important;
  letter-spacing: 1px;
  margin-bottom: 30px !important;
}

/* The Input Field - Minimal Underline Style */
.field-wrapper {
  position: relative;
  margin-bottom: 20px;
}

.field-wrapper__input {
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid #000 !important; /* Elegant black underline */
  border-radius: 0 !important;
  color: #000 !important; /* Forced black text */
  padding: 12px 0 !important;
  width: 100% !important;
  box-shadow: none !important;
  font-size: 14px !important;
}

/* Hide the box shadow/outline when typing */
.field-wrapper__input:focus {
  outline: none !important;
  box-shadow: none !important;
  border-bottom: 1.5px solid #000 !important;
}

/* Label Styling (The 'Email Address' text) */
.field-wrapper__label {
  left: 0 !important;
  color: #000 !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 10px !important;
  transition: all 0.3s ease;
}

/* The Submit Button - Boutique Style */
.email-signup-banner .btn {
  margin-top: 20px;
  background-color: transparent !important;
  color: #000 !important;
  border: 1px solid #000 !important;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 11px !important;
  padding: 12px 35px !important;
  transition: all 0.4s ease;
  width: auto !important;
  display: inline-block;
}

.email-signup-banner .btn:hover {
  background-color: #000 !important;
  color: #fff !important;
}
/* Forces the 'EMAIL' placeholder text to black */
.field-wrapper__input::placeholder {
  color: #000000 !important;
  opacity: 1 !important; /* Overrides browser default transparency */
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

/* For modern browsers using the floating label pattern */
.field-wrapper__label-name {
  color: #000000 !important;
  opacity: 1 !important;
}

/* Ensures the text stays black while you are actually typing */
.field-wrapper__input {
  color: #000000 !important;
}
/* Hide the front floating label name */
.field-wrapper__label-name {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Ensure the base placeholder is fully visible and black */
.field-wrapper__input::placeholder {
  color: #000000 !important;
  opacity: 1 !important;
}

/* Prevent the label container from interfering with clicks */
.field-wrapper__label {
  pointer-events: none !important;
}
/* 1. Force the Email Input and the Black Underline */
.newsletter-form__field-wrapper .field__input,
.field-wrapper__input {
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid #000000 !important; /* The Luxury Underline */
  border-radius: 0 !important;
  color: #000000 !important; /* Forced Black Text */
  box-shadow: none !important;
  opacity: 1 !important;
}

/* 2. Force the 'EMAIL' Placeholder to Black */
.field-wrapper__input::placeholder,
.newsletter-form__field-wrapper .field__input::placeholder {
  color: #000000 !important;
  opacity: 1 !important;
}

/* 3. Hide the floating 'label' that gets in the way */
.field-wrapper__label,
.field__label,
.field-wrapper__label-name {
  display: none !important;
}

/* 4. Force the Success/Thank You Message to Black */
.form__message,
.form-status,
.newsletter-form .form__message {
  color: #000000 !important;
  opacity: 1 !important;
}

/* 5. Center and Style the Button */
.newsletter-form__button,
.email-signup-banner .btn {
  background-color: transparent !important;
  color: #000000 !important;
  border: 1px solid #000000 !important;
  margin: 20px auto 0 !important;
  display: block !important;
  width: auto !important;
  padding: 10px 30px !important;
  text-transform: uppercase;
  letter-spacing: 2px;
}
/* 1. Fix the "THANKS!" and Success Message visibility */
.form__message, 
.form-status, 
.form-status-list,
.newsletter-form .form__message {
  color: #000000 !important; /* Forces the white text to black */
  opacity: 1 !important;
  display: block !important;
  text-align: center;
}

/* 2. Force the actual input field (when it reappears) to be black */
.newsletter-form__field-wrapper .field__input,
.field-wrapper__input {
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid #000000 !important;
  color: #000000 !important;
  opacity: 1 !important;
}

/* 3. Make sure the placeholder "EMAIL" is also black */
.field-wrapper__input::placeholder,
.newsletter-form__field-wrapper .field__input::placeholder {
  color: #000000 !important;
  opacity: 1 !important;
}
/* Force the "Thanks for subscribing" line to show in black */
.newsletter-thanks,
.form-message--title,
.newsletter__success-title {
  color: #000000 !important;   /* Black text */
}

/* Keep the confirmation body text black too */
.newsletter-success,
.newsletter-confirmation,
.form-message--success {
  color: #000000 !important;
}

/* Optional: error messages */
.form-message--error {
  color: #cc0000 !important;   /* Red for errors */
}
/* Base styling */
.header-richtext {
  width: 100%;
  padding: 1rem 0;
}

.header-richtext__content {
  font-family: "Georgia", "Times New Roman", serif; /* Elegant serif */
  font-size: 1.2rem;
  letter-spacing: 0.5px;
  color: #000000;
  line-height: 1.6;
}

/* Desktop alignment classes */
.desktop-align-left .header-richtext__content {
  text-align: left;
}
.desktop-align-center .header-richtext__content {
  text-align: center;
}
.desktop-align-right .header-richtext__content {
  text-align: right;
}

/* Mobile alignment classes */
@media (max-width: 768px) {
  .mobile-align-left .header-richtext__content {
    text-align: left;
  }
  .mobile-align-center .header-richtext__content {
    text-align: center;
  }
  .mobile-align-right .header-richtext__content {
    text-align: right;
  }
}
/* Target the desktop layout specifically */
@media screen and (min-width: 750px) {
  
  /* 1. Find the main container for the newsletter section */
  /* Note: ".newsletter__wrapper" is the standard Shopify class. 
     If it doesn't work, try ".newsletter-section" or check the specific class name. */
  .newsletter__wrapper {
    display: flex !important;
    flex-direction: column !important; /* Forces them to stack Top to Bottom */
    align-items: center !important;    /* Centers items horizontally */
    justify-content: center !important;
    text-align: center !important;     /* Centers the text inside the blocks */
  }

  /* 2. Add some spacing between the text and the email box */
  .newsletter__subheading {
    margin-bottom: 20px !important;    /* Pushes the email box down slightly */
    max-width: 600px;                  /* Optional: Keeps the text from getting too wide */
    margin-left: auto;
    margin-right: auto;
  }

  /* 3. Ensure the form itself is centered */
  .newsletter-form {
    margin: 0 auto !important;
    max-width: 500px !important;       /* Keeps the line from being super long */
    width: 100%;
  }
}
/* Make Madison header always sit above hero sections */
.shopify-section-header,
.header-wrapper,
.header {
  position: relative;
  z-index: 50;
}
/* Tighten the entire collection banner container */
.template-collection .collection-header {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Remove extra spacing Madison adds inside the bordered box */
.template-collection .collection-hero {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Remove spacing added by the full-width section wrapper */
.template-collection .spaced-section--full-width {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Tighten the border box itself */
.template-collection .content-border-style--no-lateral {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
@media screen and (max-width: 749px) {

  /* Expand the bottom variant box */
  .product-form__input--dropdown,
  .product-form__input--dropdown .select,
  .product-form__input--dropdown .select__select {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Make the dropdown itself full width */
  .product-form__input--dropdown select {
    width: 100% !important;
  }
}
/* Make sure text inside stays clean */
.single-option-selector__option__text {
  font-size: 14px;
  letter-spacing: 0.5px;
}

/* MOBILE TUNING */
@media screen and (max-width: 749px) {
  .single-option-selector__wrap-option {
    margin-bottom: 10px;
  }

  .single-option-selector__option {
    padding-bottom: 6px;
    font-size: 15px;
  }
}
/* Wrapper spacing */
.glyx-variant-picker {
  width: 100%;
}

/* Fieldset + label */
.glyx-variant-fieldset {
  border: 0;
  margin: 0 0 18px 0;
  padding: 0;
}

.glyx-variant-label {
  font-size: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 6px;
}

/* Options container */
.glyx-variant-options {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
}

/* Hide native radio */
.glyx-variant-option-wrap input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Text inside */
.glyx-variant-option-text {
  font-size: 14px;
  letter-spacing: 0.5px;
}

/* Sync active state with checked input */
.glyx-variant-option-wrap input[type="radio"]:checked + .glyx-variant-option {
  border-bottom-color: #000000;
}

/* MOBILE TUNING */
@media screen and (max-width: 749px) {
  .glyx-variant-options {
    gap: 8px 14px;
  }

  .glyx-variant-option-text {
    font-size: 15px;
  }

  .glyx-variant-option {
    padding-bottom: 6px;
  }
}
/* FORCE the bottom variant selector to full width */
.product-form__input--dropdown,
.product-form__input--dropdown .select,
.product-form__input--dropdown .select__select,
.product-form__input--dropdown select {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* Expand the wrapper that was squeezing it */
.product-form__controls-group,
.product-form__input {
  width: 100% !important;
  max-width: 100% !important;
}

/* Fix mobile squeezing */
@media (max-width: 749px) {
  .product-form__input--dropdown {
    padding-right: 0 !important;
    margin-right: 0 !important;
  }
}
/* GLYX Variant Picker Styling */
.glyx-box,
.glyx-wrap,
.glyx-option {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

.glyx-box {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

.glyx-text {
  font-size: 15px !important;
  letter-spacing: 0.4px !important;
  font-weight: 400 !important;
  padding-bottom: 3px !important;
  display: inline-block !important;
}

.glyx-option {
  cursor: pointer !important;
  padding: 0 !important;
  margin: 0 !important;
}

@media (max-width: 749px) {
  .glyx-box {
    gap: 12px 18px !important;
  }
  .glyx-text {
    font-size: 16px !important;
  }
}
.filter-item { 
  font-size: 25px; /* Change this for the actual options */
  color: #555; 
  letter-spacing: 0.5px;
  margin-bottom: 12px; 
}
.header-wrapper {
  position: absolute;
  width: 100%;
  z-index: 10;
  background: transparent;
  border-bottom: none;
}

.header-wrapper .header {
  margin-top: 20px;
}

.header-shadow .header__menu-item span,
.header-shadow .header__heading-link span,
.header-shadow .header__icon svg {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}
.mega-menu-collections {
  width: 100%;
  padding: 40px 0;
}

.mega-menu-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* change to 6 if you want */
  gap: 24px;
}

.mega-menu-item {
  text-align: center;
  display: block;
}

.mega-menu-item img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  object-fit: cover;
}

.mega-menu-item span {
  display: block;
  margin-top: 12px;
  font-size: 14px;
  font-weight: 500;
}
/* Container padding so the grid doesn't touch the edges */
.mega-menu-collections {
  width: 100%;
  padding: 40px 20px; /* added 20px left/right padding */
}

/* Make the grid smaller + add spacing */
.mega-menu-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px; /* slightly smaller gap */
  max-width: 1200px; /* keeps it from stretching too wide */
  margin: 0 auto; /* centers the grid */
}

/* Each tile */
.mega-menu-item {
  text-align: center;
  display: block;
}

/* FORCE PERFECT SQUARES */
.mega-menu-item img {
  width: 100%;
  aspect-ratio: 1 / 1; /* forces a perfect square */
  object-fit: cover;   /* crops cleanly without distortion */
  border-radius: 0px;  /* optional: softer luxury corners */
}

/* Text under each tile */
.mega-menu-item span {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  font-weight: 500;
}
/* GRA Certified Section - Luxury Contrast */
#shopify-section-template--19061282471989__media_with_text_epjdMN h2 {
    color: #000000 !important;
    font-size: 28px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
    margin-bottom: 20px !important;
}

#shopify-section-template--19061282471989__media_with_text_epjdMN p {
    color: #757575 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
}
/* Remove the box around each option */
.glyx-picker .single-option-selector__option {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
#shopify-section-template--19061282471989__media_with_text_K9iwTM h2 {
    color: #000000 !important;
    font-size: 28px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
    margin-bottom: 20px !important;
}

#shopify-section-template--19061282471989__media_with_text_K9iwTM p {
    color: #757575 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
}

/* Remove wrapper spacing that makes it look big */
.glyx-picker .single-option-selector__wrap-option {
  margin: 0 12px 0 0; /* horizontal spacing only */
}
/* Remove radio button circles */
.glyx-picker input[type="radio"] {
  display: none;
}
}
  }
  @media (max-width: 749px) {
  .product-single__header-info {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
  }
@media (max-width: 749px) {
  .product__info-container,
  .product-single__meta,
  .product__info-wrapper {
    max-width: 95% !important;
    margin: 0 auto !important;
  }
}
.header__submenu .list-menu__item,
.header__submenu .menu-drawer__menu-item {
  display: none !important;
}
/* LUXURY VARIANT SECTION MINI-RESET */

/* 1. Make Variant Labels (Size/Color) smaller */
.product-form__input .form__label {
  font-size: 10px !important;
  letter-spacing: 0.15rem !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  font-weight: 400 !important;
}

/* 2. Shrink the actual selection buttons */
.product-form__input input + label {
  font-size: 10px !important;
  padding: 5px 10px !important; /* Thinner padding for a sleeker look */
  min-width: 30px !important;
  min-height: 25px !important;
  border-radius: 0 !important;
  margin: 0 4px 4px 0 !important;
  border: 1px solid #d1d1d1 !important; /* Thinner-looking border */
}

/* 3. Tighten the space between the variant rows */
.product-form__input {
  padding-top: 0 !important;
  margin-bottom: 12px !important;
}

/* 4. Center the entire variant block */
.product-form__input {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

.product-form__input > div {
  justify-content: center !important;
}
/* LUXURY VARIANT MINI-RESET */

/* 1. Target the labels (e.g., Color, Size) */
.product-form__controls-group .form__label {
  font-size: 10px !important;
  letter-spacing: 0.12rem !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
  font-weight: 500 !important;
}

/* 2. Target the actual selection buttons (Radio buttons) */
.variants-content input + label {
  font-size: 10px !important;
  padding: 5px 12px !important; /* Makes buttons much slimmer */
  letter-spacing: 0.05rem !important;
  border-radius: 0 !important; /* High-end sharp corners */
  min-width: 30px !important;
  min-height: 20px !important;
  border: 1px solid #e2e2e2 !important;
  margin: 0 4px 4px 0 !important;
}

/* 3. Center and tighten the whole section */
variant-radios.variants-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin-bottom: 15px !important;
}

/* Ensures the buttons themselves stay centered in a row */
.variants-content fieldset {
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
@media (max-width: 749px) {
  .menu-drawer__inner-submenu .mega-menu-collections {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
  }

  .menu-drawer__inner-submenu .mega-menu-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 1.5rem !important;
    width: 100% !important;
  }

  .menu-drawer__inner-submenu .mega-menu-item {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 320px !important;
    margin: 0 auto !important;
  }
}
/* Smart Footer Desktop Layout */
@media screen and (min-width: 750px) {
  .site-footer__content {
    display: flex !important;
    /* This centers items by default, but pushes them apart if a logo exists */
    justify-content: center !important; 
    flex-wrap: wrap !important;
    gap: 40px !important;
  }

  /* If an image block exists, push menus left and logo right */
  .site-footer__content:has(.site-footer__item-inner--image) {
    justify-content: space-between !important;
  }

  .site-footer__item {
    width: auto !important;
    flex: 0 0 auto !important;
    text-align: center !important; /* Center text by default */
  }

  /* If a logo exists, align text blocks to the left instead */
  .site-footer__content:has(.site-footer__item-inner--image) .site-footer__item {
    text-align: left !important;
  }

  .site-footer__linklist-item a, 
  .site-footer__rte a, 
  .site-footer h4 {
    font-size: 11px !important;
  }

  /* Force the Logo to the absolute right */
  .site-footer__item:has(.site-footer__item-inner--image) {
    margin-left: auto !important;
    order: 99 !important;
  }
}

/* Mobile Scaling (remains the same) */
@media screen and (max-width: 749px) {
  .localization-form__select {
    transform: scale(0.85) !important;
    transform-origin: center !important;
  }
  .footer__payment, .site-footer__copyright {
    font-size: 10px !important;
  }
}
/* --- GLYX MASTER CUSTOMIZATIONS --- */

/* 1. Remove Cart Icon from Add to Bag Button */
.product-form__cart-submit-text i.icon-add-cart,
.product-form__submit svg {
  display: none !important;
}

.product-form__cart-submit-text {
  justify-content: center !important;
  display: flex !important;
  gap: 0 !important;
}

/* 2. Remove Color Preview Box in Shopping Bag */
.cart-item__details [data-cart-item-option-preview],
.cart-item__details .color-preview {
  display: none !important;
}

/* 3. Policy Page Header Spacing */
.template-policy .shopify-policy__container {
  padding-top: 250px !important;
}

@media screen and (max-width: 749px) {
  .template-policy .shopify-policy__container {
    padding-top: 150px !important;
  }
}

/* 4. Desktop Spacer Fix */
.desktop-only-spacer {
  height: 130px;
  display: block;
}

@media screen and (max-width: 749px) {
  .desktop-only-spacer {
    display: none !important;
  }
}


















  






















