/** Shopify CDN: Minification failed

Line 3697:49 Unexpected "*"

**/
/* Derived from base colors (theme settings) */
:root,
.color-background-1 {
  --color-foreground: var(--color-base-text);
  --color-foreground-rgb: var(--color-base-text-rgb);
  --color-background: var(--color-base-background-1);
  --color-background-rbg: var(--color-base-background-1-rgb);
  --payment-terms-background-color: var(--color-base-background-1);
}
.color-background-2 {
  --color-background: var(--color-base-background-2);
  --color-background-rbg: var(--color-base-background-2-rgb);
}
.color-inverse {
  --color-foreground: var(--color-base-background-1);
  --color-foreground-rgb: var(--color-base-background-1-rgb);
  --color-background: var(--color-base-text);
  --color-background-rbg: var(--color-base-text-rgb);
}
.color-accent-1 {
  --color-foreground: var(--color-base-solid-button-labels);
  --color-foreground-rgb: var(--color-base-solid-button-labels-rgb);
  --color-background: var(--color-base-accent-1);
  --color-background-rbg: var(--color-base-accent-1-rgb);
}
.color-accent-2 {
  --color-foreground: var(--color-base-solid-button-labels);
  --color-foreground-rgb: var(--color-base-solid-button-labels-rgb);
  --color-background: var(--color-base-accent-2);
  --color-background-rbg: var(--color-base-accent-2-rgb);
}
.color-foreground-outline-button {
  --color-foreground: var(--color-base-outline-button-labels);
  --color-foreground-rbg: var(--color-base-outline-button-labels-rgb);
}
.color-foreground-accent-1 {
  --color-foreground: var(--color-base-accent-1);
  --color-foreground-rbg: var(--color-base-accent-1-rgb);
}
.color-foreground-accent-2 {
  --color-foreground: var(--color-base-accent-2);
  --color-foreground-rbg: var(--color-base-accent-2-rgb);
}
:root,
.color-background-1,
.color-background-2,
.color-inverse,
.color-accent-1,
.color-accent-2 {
  --color-foreground-75: rgba(var(--color-foreground-rgb), 0.75);
  --color-foreground-70: rgba(var(--color-foreground-rgb), 0.7);
  --color-foreground-55: rgba(var(--color-foreground-rgb), 0.55);
  --color-foreground-50: rgba(var(--color-foreground-rgb), 0.5);
  --color-foreground-40: rgba(var(--color-foreground-rgb), 0.4);
  --color-foreground-30: rgba(var(--color-foreground-rgb), 0.3);
  --color-foreground-20: rgba(var(--color-foreground-rgb), 0.2);
  --color-foreground-10: rgba(var(--color-foreground-rgb), 0.1);
  --color-foreground-8: rgba(var(--color-foreground-rgb), 0.08);
  --color-foreground-4: rgba(var(--color-foreground-rgb), 0.04);
  --color-foreground-3: rgba(var(--color-foreground-rgb), 0.03);
}
/* Links */
:root,
.color-background-1 {
  --color-link: var(--color-base-outline-button-labels);
  --color-link-hover: rgba(var(--color-base-outline-button-labels-rgb), 0.85);
}
.color-background-2,
.color-inverse,
.color-accent-1,
.color-accent-2 {
  --color-link: var(--color-foreground);
  --color-link-hover: var(--color-foreground-70);
}
/* Primary button */
:root,
.color-background-1 {
  --color-button-background: var(--color-base-accent-1);
  --color-button-border: var(--color-base-accent-1);
  --color-button-text: var(--color-base-solid-button-labels);
  --color-button-text-rgb: var(--color-base-solid-button-labels-rgb);
}
.color-background-2,
.color-inverse,
.color-accent-1,
.color-accent-2 {
  --color-button-background: var(--color-foreground);
  --color-button-border: var(--color-foreground);
  --color-button-text: var(--color-background);
  --color-button-text-rgb: var(--color-background-rbg);
}
/* Secondary button */
.button--secondary {
  --color-button-background: transparent;
  --color-button-border: var(--color-base-outline-button-labels);
  --color-button-text: var(--color-base-outline-button-labels);
  --color-button-text-rgb: var(--color-base-outline-button-labels-rgb);
}
.color-background-2 .button--secondary,
.color-inverse .button--secondary,
.color-accent-1 .button--secondary,
.color-accent-2 .button--secondary {
  --color-button-border: var(--color-foreground);
  --color-button-text: var(--color-foreground);
  --color-button-text-rgb: var(--color-foreground-rgb);
}
/* Tertiary button */
.button--tertiary {
  --color-button-background: transparent;
  --color-button-border: rgba(var(--color-base-outline-button-labels-rgb), 0.2);
  --color-button-text: var(--color-base-outline-button-labels);
  --color-button-text-rgb: var(--color-base-outline-button-labels-rgb);
}
.color-background-2 .button--tertiary,
.color-inverse .button--tertiary,
.color-accent-1 .button--tertiary,
.color-accent-2 .button--tertiary {
  --color-button-border: var(--color-foreground-20);
  --color-button-text: var(--color-foreground);
}
/* Badges */
:root,
.color-background-1 {
  --color-badge-background: var(--color-background);
  --color-badge-border: var(--color-foreground-10);
}
.color-background-2,
.color-inverse,
.color-accent-1,
.color-accent-2 {
  --color-badge-background: var(--color-background);
  --color-badge-border: var(--color-background);
}
/* Cards and announcement bar */
:root,
.color-background-1,
.color-background-2 {
  --color-card-hover: rgba(var(--color-base-text-rgb), 0.06);
}
.color-inverse {
  --color-card-hover: rgba(var(--color-base-background-1-rgb), 0.06);
}
.color-accent-1,
.color-accent-2 {
  --color-card-hover: rgba(var(--color-base-solid-button-labels-rgb), 0.06);
}
/* 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;
}
.sca-fancybox-item.sca-fancybox-close {
  display: block;
}
html.no-js .no-js-hidden {
  display: none !important;
}
.page-width {
  max-width: 1430px;
  margin: 0 auto;
  padding: 0 15px;
}
.page-width-desktop {
  padding: 0 15px;
  margin: 0 auto;
}
#sca-brankmark a {
  display: none !important;
}
.element-margin {
  margin-top: 3rem;
}
.header__submenu a:hover {
  color: var(--color-base-accent-1);
}
.btn-group a.active {
  background-color: var(--color-base-button-background);
}
.btn-group a.active .icon {
  fill: var(--color-base-button-text);
}
.product-hover {
  cursor: pointer;
}
.spr-badge-caption {
  margin-left: 5px;
  color: var(--color-base-accent-2);
  display: none;
}
.main-container .flexslider {
      height: 750px !important;
      margin-bottom: 55px !important;
}

@media screen and (max-width: 800px) {
  .main-container .flexslider {
    height: 400px !important;
  }
}

.main-container .flexslider ul,
.main-container .flexslider li,
.main-container .flexslider img
 {
  height: 100% !important;
}
.main-container .flexslider img {
  object-fit: cover !important;
}
a {
  text-decoration: none !important;
}
.template-index .spaced-section.tm-service {
  margin-top: 0;
}
.template-index .spaced-section {
  float: left;
  width: 100%;
  margin-top: 90px;
}
.template-product .main-container.medium-up--three-quarters {
  width: 100%;
  float: left;
}
.template-product .breadcrumb_title {
  display: none;
}
#TopColumnContent .comments {
  color: #fff;
}
.item .item.list-group-item {
  width: 100%;
  max-width: 100%;
}
.spaced-section--full-width + .spaced-section--full-width {
  margin-top: 0;
}
.spaced-section--full-width:first-child {
  margin-top: 0;
}
.spaced-section--full-width:last-child {
  margin-bottom: 0;
}
#TopColumnContent {
  margin-bottom: 50px;
  background-attachment: fixed;
  background-size: cover;
}
#TopColumnContent .title-breadcrumbs {
  text-align: center;
  margin: 62px 0;
  float: left;
  width: 100%;
}
#TopColumnContent time {
  color: var(--color-base-background-1);
}
.title-breadcrumbs .page-title span {
  font-weight: 500;
  text-transform: uppercase;
}
.shopify-section-header-hidden #header-SiteCat {
  visibility: hidden;
}
.color-background-1,
.color-background-2,
.color-inverse,
.color-accent-1,
.color-accent-2 {
  color: var(--color-foreground-75);
  background-color: var(--color-background);
}
.background-secondary {
  padding: 4rem 0 5rem;
}
.grid-auto-flow {
  display: grid;
  grid-auto-flow: column;
}
.page-margin,
.shopify-challenge__container {
  margin: 7rem auto;
}
/* .rte-width {
     max-width: 82rem;
     margin: 0 auto 2rem;
}
 */
.list-unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}
.hidden {
  display: none !important;
}
.main-container.medium-up--three-quarters.without-sidebar-main-container {
  float: left;
  width: 100%;
  /*      margin-top: 30px; */
  padding: 0;
}
a {
  text-decoration: none;
  color: var(--color-base-text);
}
.caption-large,
.customer .field input,
.customer select,
.field__input,
.form__label,
.select__select {
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.04rem;
}
.main-container.medium-up--three-quarters {
  width: 81.6%;
  float: right;
  padding-left: 30px;
}
.breadcrumb a::after {
  content: "|";
  padding: 0 5px;
  color: var(--color-base-background-1);
}
.breadcrumb_title {
  color: var(--color-base-background-1);
  font-size: 32px;
  margin: 15px 0 0;
  line-height: 35px;
  text-transform: uppercase;
  font-weight: 500;
}
.collection-hero__description.rte {
  float: left;
  color: var(--color-base-background-1);
  padding: 15px 100px;
}
.breadcrumb a:last-child::after {
  content: none;
}
.side-bar.medium-up--one-quarter {
  width: 18.4%;
  float: left;
  position: relative;
}
.top_button {
  background: var(--color-base-button-background);
  top: auto !important;
  bottom: 40px !important;
  display: none;
  height: 40px;
  width: 40px;
  position: fixed;
  right: 50px;
  text-align: center;
  z-index: 9999;
  border-radius: 3px;
}
.popup-confirm-transfer-data__close .icon.icon-close {
  width: 17px;
  height: auto;
}
.popup__content .popup-confirm-transfer-data {
  padding: 25px !important;
}
.popup-confirm-transfer-data__content h4 {
  font-weight: 500;
  margin: 0 !important;
}
.top_button .icon-chevron-up {
  height: 12px;
  width: 12px;
  position: relative;
  top: 9px;
  fill: var(--color-base-background-1);
}
.template-index .main-container.medium-up--three-quarters {
  margin: 0;
  padding: 0;
}
.compare td {
  border: 1px solid var(--color-base-border);
  border-top: 0;
}
.compare__item {
  border-right: 1px solid var(--color-base-border);
  padding-top: 20px;
}
.compare__items {
  margin-top: -20px;
}
.compare__item:last-child {
  border-right: 0;
}
.compare table tr:last-child .compare__items {
  margin-bottom: -9px;
}
.compare table tr:last-child .compare__items .compare__item {
  padding-bottom: 13px;
}
.popup-compare-full__head,
.popup-wishlist-full__head {
  float: right;
}
.popup-compare-full,
.popup-wishlist-full {
  border: 10px solid #474747;
  padding: 30px !important;
  position: relative;
}
.popup-wishlist-full .icon-close,
.popup-compare-full .icon-close {
  width: 20px;
  height: auto;
}
.compare table tr:first-child .compare__items:first-child {
  margin-top: 0;
}
.compare .title,
.wishlist .title {
  justify-content: left;
  font-size: 20px;
}
.compare .btn.button,
.wishlist .btn.button {
  position: absolute;
  top: 23px;
  left: auto;
  right: 60px;
  margin-top: 0 !important;
  width: auto;
}
input.sca-qv-cartbtn {
  color: var(--color-base-background-1);
}
.name-title strong {
  font-size: 20px;
}
#sca-qv-des {
  color: var(--color-base-accent-2);
}
#sca-qv-detail {
  font-weight: 500;
}
.sca-qv-product-options {
  color: #000;
}
#sca-qv-sale {
  border-radius: 0;
  display: inline-block;
  font-size: 12px;
  line-height: 20px;
  padding: 1px 5px;
  text-align: center;
  background-color: transparent !important;
  border-color: var(--color-base-button-background);
  color: var(--color-base-accent-1);
  word-break: break-word;
  right: auto;
  left: 38px;
  top: 21px;
}
#sca-qv-quantity {
  border: 1px solid #e0e0e0;
  background-color: #f5f5f5;
}
ul {
  padding-left: 0;
}
.cm-grid__item {
  width: 25%;
  display: inline-block;
  margin: 15px;
  padding: 15px;
}
.compare table tr td h4 {
  padding: 0 15px;
  font-weight: 600;
}
.price {
  color: var(--color-base-accent-1);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.1px;
}
.compare table {
  width: auto;
  border-collapse: collapse;
  border-spacing: 0px;
  margin-bottom: 25px;
  float: left;
  border-top: 1px solid var(--color-base-border);
}
.cm-grid {
  margin: 0;
  padding: 0;
}

.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;
}
.header-menu {
  float: left;
  padding: 0;
  width: 240px;
  cursor: pointer;
  margin: 7px 0;
  margin-right: 15px;
}
.ttloader {
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999999;
}
.rotating {
  background-position: center center;
  background-repeat: no-repeat;
  bottom: 0;
  height: auto;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: auto;
  background-size: 10%;
}
.visually-hidden--inline {
  margin: 0;
  height: 1em;
}
.overflow-hidden {
  overflow: hidden;
}
.skip-to-content-link:focus {
  z-index: 9999;
  position: inherit;
  overflow: auto;
  width: auto;
  height: auto;
  clip: auto;
}
.full-width-link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
}
h1,
h2,
h3,
h4,
h5,
.h0,
.h1,
.h2,
.h3,
.h4,
.h5 {
  font-family: var(--font-heading-family);
  font-style: var(--font-heading-style);
  font-weight: 600;
  letter-spacing: 0.06rem;
  color: var(--color-foreground);
  line-height: 1.3;
}
.h0 {
  font-size: 4rem;
}
@media only screen and (min-width: 750px) {
  .h0 {
    font-size: 5.2rem;
  }
}
h1,
.h1 {
  font-size: 24px;
  font-weight: 600;
}
h2,
.h2 {
  font-size: 2rem;
}
@media only screen and (min-width: 750px) {
  h2,
  .h2 {
    font-size: 2rem;
  }
}
h3,
.h3 {
  font-size: 1.7rem;
}
@media only screen and (min-width: 750px) {
  h3,
  .h3 {
    font-size: 1.8rem;
  }
}
h5,
.h5 {
  font-size: 1.2rem;
}
@media only screen and (min-width: 750px) {
  h5,
  .h5 {
    font-size: 1.3rem;
  }
}
h6,
.h6 {
  color: var(--color-foreground-75);
  margin-block-start: 1.67em;
  margin-block-end: 1.67em;
}
blockquote {
  font-style: italic;
  color: var(--color-foreground-75);
  border-left: 0.2rem solid var(--color-foreground-20);
  padding-left: 1rem;
}
@media screen and (min-width: 750px) {
  blockquote {
    padding-left: 1.5rem;
  }
}
.caption {
  font-size: 1.2rem;
  letter-spacing: 0.07rem;
  line-height: 1.7;
}
@media screen and (min-width: 750px) {
  .caption {
    font-size: 1.3rem;
  }
}
.color-foreground {
  color: var(--color-foreground);
}
table:not([class]) {
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 1.4rem;
  border-style: hidden;
  box-shadow: none;
  border: 1px solid var(--color-base-border);
}
table:not([class]) td,
table:not([class]) th {
  padding: 1em;
  border: 1px solid var(--color-base-border);
}
@media screen and (max-width: 749px) {
  .small-hide {
    display: none;
  }
}
.hidden {
  display: none !important;
}
@media screen and (max-width: 989px) {
  .small-hide {
    display: none !important;
  }
}

@media screen and (min-width: 990px) {
  .large-up-hide {
    display: none !important;
  }
}
.center {
  text-align: center;
}
.right {
  text-align: right;
}
.uppercase {
  text-transform: uppercase;
}
.light {
  opacity: 0.7;
}
a:empty,
ul:empty,
dl:empty,
div:empty,
section:empty,
article:empty,
p:empty,
h1:empty,
h2:empty,
h3:empty,
h4:empty,
h5:empty,
h6:empty {
  display: none;
}
.link,
.customer a {
  cursor: pointer;
  display: inline-block;
  border: none;
  box-shadow: none;
  text-decoration: none;
  text-underline-offset: 0.3rem;
  color: var(--color-base-text);
  background-color: transparent;
  font-size: 14px;
  font-family: var(--font-body-family);
}
#product-grid .product-form__buttons {
  display:flex;
  flex-direction:column;
  align-items: flex-end;
}
#product-grid .product-form__buttons .product-form__submit.button {
  width: auto !important;
    font-size: 12px !important;
    border-radius: 4px !important;
    display: flex !important;
    align-items: center !important;
    gap: 1rem !important;
    color: black !important;
    padding: 0 1rem !important;
    background: var(--color-background) !important;
}
#product-grid .product-form__buttons .product-form__submit.button:hover {
  color: white !important;
  background: var(--color-base-accent-1) !important;
}
.link--text {
  color: var(--color-foreground);
}
/* .link--text:hover {
     color: var(--color-foreground-75);
}
 */
.spr-icon.spr-icon-star,
.spr-icon.spr-icon-star-empty {
  font-size: 75% !important;
}
.spr-icon.spr-icon-star {
  color: var(--color-base-accent-1);
  line-height: 0;
}
.spr-icon.spr-icon-star-empty {
  color: #c9c9c9;
  opacity: 1 !important;
}
.spr-form-input {
  padding: 1.25rem;
  border-radius: 4px;
  border: 1px solid var(--color-base-border);
}
.spr-form-review-rating .spr-form-input {
  border: 0;
  padding: 5px 0;
}
.spr-icon-star-empty:before {
  content: "\e800" !important;
}
.spr-review-header-title,
.spr-form-title {
  font-family: var(--font-body-family);
}
.spr-form-title {
  font-weight: 600;
}
.rte h3,
.rte h2 {
  font-weight: 500;
}
.link-with-icon {
  display: inline-flex;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
  text-decoration: none;
  margin-bottom: 4.5rem;
  white-space: nowrap;
}
.link-with-icon .icon {
  width: 1.5rem;
  margin-left: 1rem;
}
.circle-divider::after {
  content: "\2022";
  margin: 0 1.3rem 0 1.5rem;
}
.circle-divider:last-of-type::after {
  display: none;
}
hr {
  border: none;
  height: 0.1rem;
  background-color: var(--color-foreground-20);
  display: block;
  margin: 5rem 0;
}
@media screen and (min-width: 750px) {
  hr {
    margin: 7rem 0;
  }
}
.full-unstyled-link {
  text-decoration: none;
  color: currentColor;
  display: block;
}
.placeholder {
  background-color: var(--color-foreground-4);
  color: var(--color-foreground-55);
  fill: var(--color-foreground-55);
}
details > * {
  box-sizing: border-box;
}
.break {
  word-break: break-word;
}
.visibility-hidden {
  visibility: hidden;
}
@media (prefers-reduced-motion) {
  .motion-reduce {
    transition: none !important;
  }
}
:root {
  --duration-short: 100ms;
  --duration-default: 200ms;
  --duration-long: 500ms;
}
.underlined-link {
  color: var(--color-link-hover);
  text-underline-offset: 0.3rem;
  text-decoration-thickness: 0.1rem;
  transition: text-decoration-thickness ease 100ms;
}
.underlined-link:hover {
  color: var(--color-link);
  text-decoration-thickness: 0.2rem;
}
/* arrow animation */
.animate-arrow .icon-arrow path {
  transform: translateX(-0.25rem);
  transition: transform var(--duration-short) ease;
}
.animate-arrow:hover .icon-arrow path {
  transform: translateX(-0.05rem);
}
/* base-details-summary */
summary {
  cursor: pointer;
  list-style: none;
  position: relative;
}
summary .icon-caret {
  position: relative;
  height: 6px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 2px;
}
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;
}
/* base-focus */
/* Focus ring - default (with offset) */
/* *:focus-visible {
     outline: 0.2rem solid var(--color-foreground-50);
     outline-offset: 0.3rem;
     box-shadow: 0 0 0 0.3rem var(--color-background), 0 0 0.5rem 0.4rem var(--color-foreground-30);
}
 */
/* Fallback - for browsers that don't support :focus-visible, a fallback is set for :focus */
*:focus {
  outline: none;
  outline-offset: 0;
  box-shadow: none;
}
/* Negate the fallback side-effect for browsers that support :focus-visible */
/* *:focus:not(:focus-visible) {
     outline: 0;
     box-shadow: none;
}
 */
/* Dangerous for a11y - Use with care */
.focus-none {
  box-shadow: none !important;
  outline: 0 !important;
}
.product_tab-block .title {
  margin-bottom: 25px;
}
.template-index .title:before,
.product-recommendations .title:before {
  content: "";
  /* background: url(pattern.png) no-repeat scroll center; */
  width: 147px;
  height: 23px;
  position: absolute;
  bottom: 0;
}
.compare .title:before,
.wishlist .title:before {
  background: none;
  content: none;
}
/* component-title */
.title,
.title-wrapper-with-link {
  margin-bottom: 15px;
  font-size: 35px;
  font-weight: 500;
  line-height: 39px;
  text-transform: uppercase;
  margin-top: 0;
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  justify-content: center;
  letter-spacing: 0.3px;
  position: relative;
  padding-bottom: 35px;
}
.product-recommendations .title {
  margin-bottom: 30px;
}
.title-wrapper {
  margin-bottom: 3rem;
}
time,
.article-card__footer span {
  color: var(--color-base-accent-1);
  font-weight: 700;
  text-transform: uppercase;
}
.title--primary {
  margin: 4rem 0;
}
.breadcrumb a,
.breadcrumb span {
  font-size: 13px;
  color: var(--color-base-background-1);
  cursor: pointer;
}
.breadcrumb a:hover,
.breadcrumb span:hover {
  color: var(--color-base-accent-1);
}
.title-wrapper--self-padded-tablet-down,
.title-wrapper--self-padded-mobile {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 0;
}
@media screen and (min-width: 750px) {
  .title-wrapper--self-padded-mobile {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (min-width: 990px) {
  .title--primary {
    margin: 2rem 0;
  }
  .title-wrapper-with-link .title {
    margin-bottom: 0;
  }
  .title-wrapper--self-padded-tablet-down {
    padding-left: 0;
    padding-right: 0;
  }
}
.title-wrapper-with-link .link-with-icon {
  margin: 0;
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
.title-wrapper-with-link .link-with-icon svg {
  width: 1.5rem;
}
.title-wrapper-with-link a {
  color: var(--color-base-outline-button-labels);
  margin-top: 0;
  flex-shrink: 0;
}
@media screen and (min-width: 990px) {
  .title-wrapper-with-link.title-wrapper-with-link--no-heading {
    display: none;
  }
}
.blog_subtitle,
.subtitle {
  font-size: 13px;
  line-height: 20px;
  color: var(--color-base-accent-2);
  display: block;
  width: 100%;
  text-align: center;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
/* component-grid */
.grid {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2rem;
  margin-left: -0.5rem;
  padding: 0;
  list-style: none;
  margin: 0 -15px;
}
.grid__item {
  padding: 0;
  padding-bottom: 1.5rem;
  width: 100%;
  max-width: 100%;
  flex-grow: 0;
  flex-shrink: 0;
}
.template-index .slideshow {
  margin-top: 0;
}

.grid--gapless .grid__item {
  padding-left: 0;
  padding-bottom: 0;
}
@media screen and (max-width: 749px) {
  .grid__item.slider__slide--full-width {
    width: 100%;
    max-width: none;
  }
}
@media screen and (min-width: 576px) and (max-width: 989px) {
  .grid--one-third-max.grid--3-col-tablet .grid__item {
    max-width: 33.33%;
  }
}
@media screen and (min-width: 990px) {
  .grid--quarter-max.grid--4-col-desktop .grid__item {
    max-width: 100%;
  }
}
.grid--1-col .grid__item {
  max-width: 100%;
  width: 100%;
}
.grid--3-col .grid__item {
  width: 33.33%;
}
@media screen and (min-width: 750px) {
  .grid--3-col .grid__item {
    width: 33.33%;
  }
}
.grid--2-col .grid__item {
  width: 50%;
}
@media screen and (min-width: 1270px) {
  .grid--5-col-desktop .grid__item {
    width: 20% !important;
  }
}
@media screen and (min-width: 990px) {
  .grid--4-col-desktop .grid__item {
    width: 25%;
  }
  .grid--3-col-desktop .grid__item {
    width: 33.33%;
  }
  .grid--2-col-desktop .grid__item {
    width: 50%;
  }
}
@media screen and (min-width: 750px) {
  #ProductGridContainer .grid--3-col-desktop .grid__item {
    max-width: 33.33%;
  }
  #ProductGridContainer .grid--2-col-desktop .grid__item {
    max-width: 50%;
  }
  #ProductGridContainer .item .item.list-group-item {
    width: 100%;
    max-width: 100%;
  }
}
@media screen and (min-width: 576px) {
  #ProductGridContainer .grid--2-col-desktop .grid__item {
    max-width: 50%;
  }
  #ProductGridContainer .item .item.list-group-item {
    width: 100%;
    max-width: 100%;
  }
}
.grid__item--vertical-align {
  align-self: center;
}
.grid__item--full-width {
  flex: 0 0 100%;
  max-width: 100%;
}
@media screen and (max-width: 749px) {
  .grid--peek.slider--mobile {
    margin: 0;
    width: 100%;
  }
  .grid--peek.slider--mobile .grid__item {
    box-sizing: content-box;
    margin: 0;
  }
  .grid--peek .grid__item {
    width: calc(50% - 3.75rem / 2);
  }
  .collection-hero__description.rte {
    padding: 15px 0;
  }
}
@media screen and (min-width: 750px) and (max-width: 989px) {
  .slider--tablet.grid--peek .grid__item {
    width: calc(25% - 4rem * 3 / 4);
  }
  .slider--tablet.grid--peek.grid--3-col-tablet .grid__item {
    width: 33.33%;
  }
  .slider--tablet.grid--peek.grid--2-col-tablet .grid__item {
    width: calc(50% - 4rem / 2);
  }
}
@media screen and (max-width: 989px) {
  /*      .slider--tablet.grid--peek {
         width: 100%;
    } */
  .title-wrapper--self-padded-mobile,
  .title-wrapper--self-padded-tablet-down {
    padding-left: 0;
    padding-right: 0;
  }

  .title-wrapper-with-link .title {
    margin: 0;
  }
}
/* component-media */
.media {
  display: block;
  background-color: var(--color-base-background-1);
  position: relative;
  overflow: hidden;
}
.media--transparent {
  background-color: transparent;
}
.media > *:not(.zoom, .deferred-media__poster-button),
.media model-viewer {
  display: block;
  max-width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.media > img {
  object-fit: cover;
  object-position: center center;
  transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.media--square {
  padding-bottom: 100%;
}
.media--portrait {
  padding-bottom: 125%;
}
.media--landscape {
  padding-bottom: 100%;
}
.media--cropped {
  padding-bottom: 56%;
}
.media--16-9 {
  padding-bottom: 56.25%;
}
.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;
}
/* component-button */
/* Button - default */
.button,
.customer button,
.shopify-challenge__button {
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  text-decoration: none;
  border: 0;
  background-color: var(--color-base-button-background);
  color: var(--color-base-button-text);
  -webkit-appearance: none;
  appearance: none;
  padding: 10px 22px;
  font-family: var(--font-body-family);
  border-radius: 5px;
  transition: all var(--duration-long) ease 0s;
  -webkit-transition: all var(--duration-long) ease 0s;
  -moz-transition: all var(--duration-long) ease 0s;
  -ms-transition: all var(--duration-long) ease 0s;
  -o-transition: all var(--duration-long) ease 0s;
}
.button:hover {
  background: var(--color-base-button-background-hover);
  color: var(--color-base-button-text-hover);
}
.button,
.button-label,
.customer button,
.shopify-challenge__button {
  font-size: 13px;
  letter-spacing: 0.5px;
  line-height: 22px;
  font-weight: 700;
  text-transform: uppercase;
}
.button--tertiary {
  font-size: 1.2rem;
  padding: 1rem 1.5rem;
  min-width: 9rem;
  min-height: 3.5rem;
}
.button--small {
  padding: 1.2rem 2.6rem;
}
.customer button:hover,
.shopify-challenge__container .shopify-challenge__button:hover {
  background-color: var(--color-base-button-background-hover);
  color: var(--color-base-button-text-hover);
}
/* Button - hover */
/* .button:not([disabled]):hover, .shopify-challenge__button:hover, .customer button:hover {
     box-shadow: 0 0 0 0.2rem var(--color-button-border);
}
 */
/* Button - other */
.button:disabled,
.button[aria-disabled="true"],
.button.disabled,
.customer button:disabled,
.customer button[aria-disabled="true"],
.customer button.disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.button--full-width {
  display: flex;
  width: 100%;
}
.button.loading {
  color: transparent;
}
.button.loading:after {
  animation: loading var(--duration-long) infinite linear;
  border: 1px solid #000;
  border-left: 0.5rem solid var(--color-button-text);
  border-radius: 100%;
  box-sizing: content-box;
  content: "";
  display: block;
  height: 2rem;
  position: absolute;
  width: 2rem;
}
@keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* component-form */
.field__input,
.select__select,
.customer .field input,
.customer select {
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  border: 0;
  border-radius: 4px;
  color: var(--color-base-text);
  font-size: 14px;
  width: 100%;
  box-shadow: none;
  height: 42px;
  box-sizing: border-box;
  transition: box-shadow var(--duration-short) ease;
}
.select__select {
  font-family: var(--font-body-family);
  font-style: var(--font-body-style);
  font-weight: var(--font-body-weight);
  font-size: 14px;
}
/* .field__input:hover, .select__select:hover, .customer .field input:hover, .customer select:hover, .localization-form__select:hover {
     box-shadow: 0 0 0 0.2rem var(--color-foreground-55);
}
 */
/* .field__input:focus-visible, .select__select:focus-visible, .field input:focus-visible {
     box-shadow: 0 0 0 0.1rem var(--color-foreground-55), 0 0 0 0.3rem var(--color-background), 0 0 0.5rem 0.4rem var(--color-foreground-30);
}
 */
/* .field__input:focus, .select__select:focus, .field input:focus {
     box-shadow: 0 0 0 0.1rem var(--color-foreground-55), 0 0 0 0.3rem var(--color-background), 0 0 0.5rem 0.4rem var(--color-foreground-30);
}
 */
.text-area,
.select {
  display: inline-block;
  position: relative;
  width: 100%;
}
/* Select */
.select .icon-caret,
.customer select + svg {
  height: 0.7rem;
  pointer-events: none;
  position: absolute;
  top: calc(50% - 0.35rem);
  right: 1.5rem;
}
.select__select,
.customer select {
  cursor: pointer;
  padding: 0 4rem 0 1.5rem;
}
/* Field */
.field {
  position: relative;
  width: 100%;
  display: flex;
}
.customer .field {
  display: block;
}
.field--with-error {
  flex-wrap: wrap;
}
.customer .field input,
.field__input {
  flex-grow: 1;
  text-align: left;
  padding: 1.5rem;
  border: 1px solid #e5e5e5;
}
.field__label,
.customer .field label {
  font-size: 14px;
  left: 1.5rem;
  top: 1rem;
  margin-bottom: 0;
  pointer-events: none;
  position: absolute;
  transition: top var(--duration-short) ease,
    font-size var(--duration-short) ease;
  color: var(--color-foreground-75);
  letter-spacing: 0.1rem;
  line-height: 1.5;
}
.field__input:focus ~ .field__label,
.field__input:not(:placeholder-shown) ~ .field__label,
.field__input:-webkit-autofill ~ .field__label,
.customer .field input:focus ~ label,
.customer .field input:not(:placeholder-shown) ~ label,
.customer .field input:-webkit-autofill ~ label {
  font-size: 1rem;
  top: 0.3em;
  letter-spacing: 0.04rem;
}
.field__input:focus,
.field__input:not(:placeholder-shown),
.field__input:-webkit-autofill,
.customer .field input:focus,
.customer .field input:not(:placeholder-shown),
.customer .field input:-webkit-autofill {
  padding: 2.2rem 1.5rem 0.8rem;
}
.field__input::-webkit-search-cancel-button,
.customer .field input::-webkit-search-cancel-button {
  display: none;
}
.field__input::placeholder,
.customer .field input::placeholder {
  opacity: 0;
}
.field__button {
  align-items: center;
  background-color: transparent;
  border: 0;
  color: currentColor;
  cursor: pointer;
  display: flex;
  height: 4.4rem;
  justify-content: center;
  overflow: hidden;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 4.4rem;
}
.field__button > svg {
  height: 2.5rem;
  width: 2.5rem;
}
/* Text area */
.text-area {
  font-family: var(--font-body-family);
  font-style: var(--font-body-style);
  font-weight: var(--font-body-weight);
  padding: 1.2rem;
  min-height: 10rem;
  resize: none;
}
.text-area--resize-vertical {
  resize: vertical;
}
input[type="checkbox"] {
  display: inline-block;
  width: auto;
  margin-right: 0.5rem;
}
/* Form global */
.form__label {
  display: block;
  margin-bottom: 0.6rem;
  font-weight: 600;
  color: var(--color-base-text);
}
.form__message {
  align-items: center;
  display: flex;
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 1rem;
}
.form__message--large {
  font-size: 1.6rem;
}
.customer .field .form__message {
  font-size: 1.4rem;
  text-align: left;
}
img {
  max-width: 100%;
}
.form__message .icon,
.customer .form__message svg {
  flex-shrink: 0;
  height: 1.3rem;
  margin-right: 0.5rem;
  width: 1.3rem;
}
.form__message--large .icon,
.customer .form__message svg {
  height: 1.5rem;
  width: 1.5rem;
  margin-right: 1rem;
}
.customer .field .form__message svg {
  align-self: start;
}
.form-status {
  margin: 0;
  font-size: 1.6rem;
}
.form-status-list {
  padding: 0;
  margin: 2rem 0 4rem;
}
.form-status-list li {
  list-style-position: inside;
}
.form-status-list .link::first-letter {
  text-transform: capitalize;
}
/* component-quantity */
.quantity {
  border: 1px solid var(--color-base-border);
  position: relative;
  width: 11rem;
  display: flex;
}
.quantity__input {
  color: currentColor;
  font-size: 1.4rem;
  font-weight: 500;
  opacity: 0.85;
  text-align: center;
  background-color: transparent;
  border: 0;
  padding: 0 0.5rem;
  height: 4rem;
  width: 100%;
  flex-grow: 1;
  -webkit-appearance: none;
  appearance: none;
}
.quantity__button {
  width: 4.5rem;
  flex-shrink: 0;
  font-size: 1.8rem;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-foreground);
}
.quantity__button svg {
  width: 1rem;
  pointer-events: none;
}
.quantity__input:-webkit-autofill,
.quantity__input:-webkit-autofill:hover,
.quantity__input:-webkit-autofill:active {
  box-shadow: 0 0 0 10rem var(--color-background) inset !important;
  -webkit-box-shadow: 0 0 0 10rem var(--color-background) inset !important;
}
.quantity__input::-webkit-outer-spin-button,
.quantity__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.quantity__input[type="number"] {
  -moz-appearance: textfield;
}
/* 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: 2rem;
  width: 2rem;
  background-color: transparent;
}
.modal__close-button .icon {
  width: 1.7rem;
  height: 1.7rem;
}
.icon {
  width: 12px;
  height: 12px;
}
.modal__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--color-background);
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
}
.banner-inner {
  overflow: hidden;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  border-radius: 5px;
}
.banner-inner img {
  transition: transform var(--duration-long) ease;
  display: block;
}
.sub-banner:hover img {
  -o-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
#cart-icon-bubble {
  position: relative;
  line-height: 12px;
  cursor: pointer;
}

/* section-announcement-bar */
.shopify-section {
  width:100%;
  background: #FFFCF9;
}
.announcement-bar {
  color: var(--color-foreground);
  width: 100%;
  display: flex;
  text-align: left;
  padding: 9px 0;
  flex-shrink: 0;

}
.announcement-bar__flex {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  padding: 0 15px;
}
 .announcement-bar__link:nth-child(2) {
  justify-content:center;
}
 .announcement-bar__link:nth-child(3) {
  justify-content:flex-end;
}

.announcement-bar__link {
  display: flex;
  width: 100%;
  text-decoration: none;
}
.announcement-bar__link:hover,
.announcement-bar__link:hover p {
  color: #eee;
}
.announcement-bar .user-background:hover .icon.icon-caret {
  fill: var(--color-base-accent-1);
}
.announcement-bar__link .icon-arrow {
  display: inline-block;
  height: 1.2rem;
  pointer-events: none;
  padding-left: 1rem;
  vertical-align: middle;
  margin-bottom: 0.2rem;
}
.announcement-bar .disclosure__link {
  padding: 4px 0;
  float: left;
  width: 100%;
  text-align: left;
}
.announcement-bar .disclosure__link .language {
  text-transform: uppercase;
}
.cm-compare-button:hover .cm-compare-icon.js-popup-button,
.cm-wishlist-button:hover .cm-wishlist-icon.js-popup-button,
.cm-account-button:hover .menu-drawer__account {
  color: var(--color-base-accent-1);
}
.cm-account-button:hover .icon-lock,
.cm-compare-button:hover .icon-compare,
.cm-wishlist-button:hover .icon-heart {
  fill: var(--color-base-accent-1);
}
@media screen and (min-width: 750px) {
  .announcement-bar__link .icon-arrow {
    height: 1.3rem;
  }
}
.announcement-bar .tm_header-dropdown.site-header__icon,
.announcement-bar .tm_header-dropdown.site-header__icon.active {
  float: right;
  padding: 0 20px 0 0;
  position: relative;
  line-height: 0;
}
.tm_header-dropdown.site-header__icon .my-account {
  background: #fff none repeat scroll 0 0;
  border: 1px solid #ededed;
  display: none;
  margin: 0;
  min-width: 170px;
  padding: 15px 20px;
  position: absolute;
  right: 0;
  text-align: left;
  top: 40px;
  z-index: 9999;
}
.announcement-bar .account-label {
  line-height: 20px;
  cursor: pointer;
  float: left;
  padding-right: 2px;
}
.announcement-bar
  .tm_header-dropdown.site-header__icon
  .user-background
  .icon.icon-lag {
  width: 16px;
  height: 20px;
  cursor: pointer;
}
.announcement-bar .user-background:hover .account-label {
  color: var(--color-base-accent-1);
}
.announcement-bar
  .tm_header-dropdown.site-header__icon
  .user-background:hover
  .icon.icon-lag {
  fill: var(--color-base-accent-1);
}
.announcement-bar__link .announcement-bar__message {
  padding: 0;
}
@media screen and (max-width: 749px) {
  .announcement-bar__link:nth-child(2) {
  display: none;
}
 .announcement-bar__link:nth-child(3) {
  display: none;
}
}
.announcement-bar__message {
  text-align: center;
  margin: 0;
  letter-spacing: 0.5px;
  display: inline-block;
  font-size: 13px;
  font-weight: 400;
  font-family: var(--font-body-family);
}

.announcement-bar__message a {color: inherit !important}

/* section-header */
#shopify-section-header,
[id*="shopify-section"][id$="__header"] {
  background-color: #fff;
  z-index: 8;
}

/* .shopify-section-header-sticky {
     position: sticky;
     top: 0;
}
 .shopify-section-header-hidden {
     transform: translateY(-100%);
}
 #shopify-section-header.animate {
     transition: transform 0.15s ease-out;
     
}
 .shopify-section-header-sticky.animate .header-top-menu {
	box-shadow: 0 0 8px rgba(0,0,0,.12);
	-moz-box-shadow: 0 0 8px rgba(0,0,0,.12);
	-webkit-box-shadow: 0 0 8px rgba(0,0,0,.12);
} */

/* Main Header Layout */
.header-wrapper {
  display: block;
  position: relative;
}
.header {
  display: grid;
  grid-template-areas: "heading menu icons";
  grid-template-columns: 1fr auto;
  align-items: center;
  padding-top: 5px;
  padding-bottom: 5px;
  grid: "auto auto auto";
  grid-template-columns: .5fr 2fr .5fr;
}

#CategoryBox {
  display: none !important;
}

.site-header__search {
  justify-self: right;
}
.header *[tabindex="-1"]:focus {
  outline: none;
}
.header__heading {
  margin: 0;
  line-height: 0;
}
.header > .header__heading-link {
  line-height: 0;
}
.header__heading-link {
  display: inline-block;
  padding: 0;
  text-decoration: none;
  word-break: break-word;
}
.header__heading-link:hover .h2 {
  color: var(--color-foreground);
}
.header__heading-link .h2 {
  line-height: 1;
  color: var(--color-foreground-75);
}
.header__heading-logo {
  width: 100%;
}
@media screen and (min-width: 990px) {
  .header__heading-link {
    margin-left: 0;
  }
  .header__heading,
  .header__heading-link {
    justify-self: start;
  }
  .header--top-center .header__heading-link,
  .header--top-center .header__heading {
    justify-self: left;
  }
}
/* Header icons */
.header__icons {
  justify-self: end;
  float: right;
}
.header__icon:not(.header__icon--summary) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.tm_header-dropdown {
  display: inline-flex;
  margin: 0 0px;
  position: relative;
}
.header__icons .hearder-cart {
  margin: 0;
  float: right;
}
.account-label .icon-account {
  width: 26px;
  height: 26px;
  cursor: pointer;
}
.menu-drawer-container .header__icon span {
  height: 100%;
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-top: 5px;
}
.header__icon::after {
  content: none;
}
/* .header__icon:hover .icon, .modal__close-button:hover .icon {
     transform: scale(1.07);
}
 */
.header__icon--cart .icon {
  height: 22px;
  width: 25px;
  float: left;
  fill: #000;
}
.header__icon--cart {
  position: relative;
}
.cart-count-bubble,
.cm-compare-counter,
.cm-wishlist-counter {
  font-size: 13px;
  font-weight: 400;
  line-height: 16px;
  text-align: center;
  color: #fff;
  background-color: var(--color-base-accent-1);
  border-radius: 50%;
  padding: 0 4px;
  height: 16px;
  width: auto;
  margin-left: 0;
  top: -4px;
  right: -8px;
  position: absolute;
  min-width: 16px;
  margin: 0;
}
.my-account .cm-compare-counter,
.my-account .cm-wishlist-counter {
  position: absolute;
}
.hearder-cart #cart-icon-bubble svg {
  float: left;
}
@media screen and (max-width: 989px) {
  menu-drawer ~ .header__icons .header__icon--account {
    display: none;
  }
}
/* Search */
menu-drawer + .header__search {
  display: none;
}

.header:not(.header--has-menu) * > .header__search {
  display: none;
}
.header__search {
  display: inline-flex;
  line-height: 0;
  /* margin-right: 28px; */
}
@media (max-width: 990px) {
  margin-right: 13px;
}
@media screen and (min-width: 990px) {
  .header:not(.header--top-center) * > .header__search,
  .header--top-center > .header__search {
    display: inline-flex;
  }

}
details[open] > .search-modal {
  opacity: 1;
  animation: animateMenuOpen var(--duration-default) ease;
}

/* === Search modal: clean full-width overlay on header === */
details-modal details[open] > .search-modal {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  height: auto !important;
  min-height: 60px !important;
  max-height: 72px !important;
  background: #FFFFFF !important;
  z-index: 9998 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
  border: none !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
}
details-modal details[open] > .search-modal .search-modal__content {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  padding: 12px 20px !important;
  display: flex !important;
  align-items: center !important;
}
details-modal details[open] > .search-modal .search-modal__form,
details-modal details[open] > .search-modal .search {
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 !important;
}
details-modal details[open] > .search-modal .field {
  width: 100% !important;
  border: none !important;
  position: relative !important;
}
details-modal details[open] > .search-modal .field__input {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(0,0,0,0.15) !important;
  padding: 8px 40px 8px 40px !important;
  font-family: 'Mulish', sans-serif !important;
  font-size: 14px !important;
  color: #1a1a1a !important;
  outline: none !important;
  width: 100% !important;
  height: auto !important;
}
details-modal details[open] > .search-modal .field__label {
  position: absolute !important;
  left: 40px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  font-size: 14px !important;
  color: #999 !important;
  pointer-events: none !important;
  background: transparent !important;
  padding: 0 !important;
  font-weight: 400 !important;
  font-family: 'Mulish', sans-serif !important;
}
details-modal details[open] > .search-modal .field__input:not(:placeholder-shown) ~ .field__label,
details-modal details[open] > .search-modal .field__input:focus ~ .field__label {
  display: none !important;
}
details-modal details[open] > .search-modal .search__button {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: transparent !important;
  border: none !important;
  padding: 4px 8px !important;
  cursor: pointer !important;
  z-index: 2 !important;
}
details-modal details[open] > .search-modal .search__button svg {
  width: 18px !important;
  height: 18px !important;
  fill: #1a1a1a !important;
}
details-modal details[open] > .search-modal .search-modal__close-button {
  position: absolute !important;
  right: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: transparent !important;
  border: none !important;
  padding: 8px !important;
}
details-modal details[open] > .search-modal .search-modal__close-button svg {
  width: 18px !important;
  height: 18px !important;
  fill: #1a1a1a !important;
}
/* Hide predictive search empty state bloat */
details-modal details[open] > .search-modal .predictive-search:empty,
details-modal details[open] > .search-modal .predictive-search__loading-state:empty {
  display: none !important;
}
/* Push page content down when search is open (optional) */
body.search-open {
  padding-top: 60px;
}
.no-js details[open] > .header__icon--search {
  top: 1rem;
  right: 0.5rem;
}
.search-modal {
  opacity: 0;
  border-bottom: 0.1rem solid var(--color-foreground-20);
  height: 100%;
}
.search-modal__content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0 5rem 0 1rem;
  line-height: 1.8;
}
.search-modal__form {
  width: 100%;
}
.search-modal__close-button {
  position: absolute;
  right: 0.3rem;
}
@media screen and (min-width: 750px) {
  .search-modal__close-button {
    right: 1rem;
  }
  .search-modal__content {
    padding: 0 6rem;
  }
}
@media screen and (min-width: 990px) {
  .search-modal__form {
    max-width: 47.8rem;
  }
  .search-modal__close-button {
    position: initial;
    margin-left: 0.5rem;
  }
}
/* Header menu drawer */
.header__icon--menu .icon {
  display: block;
  position: absolute;
  opacity: 1;
  width: 20px;
  height: 20px;
}
.icon.icon-hamburger:hover {
  fill: var(--color-base-accent-1);
}
details:not([open]) > .header__icon--menu .icon-close,
details[open] > .header__icon--menu .icon-hamburger {
  visibility: hidden;
  opacity: 0;
}
.js details[open]:not(.menu-opening) > .header__icon--menu .icon-close {
  visibility: hidden;
}
.js details[open]:not(.menu-opening) > .header__icon--menu .icon-hamburger {
  visibility: visible;
  opacity: 1;
}
.header__inline-menu details[open] > .header__submenu {
  opacity: 1;
}
/* Header menu */
.header__inline-menu {
  margin-left: 0;
  display: none;
}
.header__inline-menu #header-nav li {
  margin: 0 25px;
}
.header__inline-menu #header-nav .list-menu.list-menu--disclosure li {
  margin: 0;
}
.header__inline-menu #header-nav .header__submenu.list-menu li {
  margin: 0 15px 0 0;
}
.header__inline-menu #header-nav .header__submenu.list-menu li:last-child {
  margin: 0;
}
.header__inline-menu
  #header-nav
  .header__submenu.list-menu
  .header__submenu.list-menu.motion-reduce
  li:first-child {
  margin: 10px 0 0;
}
.header__inline-menu
  #header-nav
  .header__submenu.list-menu
  .header__submenu.list-menu.motion-reduce
  li {
  margin: 0;
}
.header__inline-menu #header-nav li:first-child {
  margin-left: 0;
}
.header__inline-menu #header-nav li:last-child {
  margin-right: 0;
}
#header-nav li .header__submenu .header__menu-item::after {
  border: 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;
    width: 100%;
    float: left;
    text-align: center;
  }
  .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: 17px 0;
  text-decoration: none;
  font-size: 13px;
  line-height: 26px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  position: relative;
}
#header-nav .header__menu-item:hover {
  color: var(--color-base-accent-1);
}
#header-nav .header__menu-item :hover a {
  color: var(--color-base-assent1);
}
#header-nav li .header__menu-item::after {
  position: absolute;
  content: "";
  left: 0;
  top: auto;
  border-top: 2px solid;
  width: 0;
  opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  -ms-opacity: 0;
  -o-opacity: 0;
  -khtml-opacity: 0;
  transition: all 500ms ease 0s;
  -webkit-transition: all 600ms ease 0s;
  -moz-transition: all 600ms ease 0s;
  -ms-transition: all 600ms ease 0s;
  -o-transition: all 600ms ease 0s;
  -khtml-transition: all 600ms ease 0s;
  bottom: 0;
  border-color: var(--color-base-accent-1);
}
#header-nav li:hover .header__menu-item::after {
  opacity: 1;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  -ms-opacity: 1;
  -o-opacity: 1;
  width: 100%;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  width: 100%;
}
#header-nav li .header__menu-item:before {
  border-right: 1px solid #e5e5e5;
  content: "";
  height: 13px;
  position: absolute;
  right: -25px;
}
#header-nav li:last-child .header__menu-item:before {
  border: 0;
}
.header__active-menu-item {
  transition: text-decoration-thickness var(--duration-short) ease;
  color: var(--color-base-accent-1);
  text-decoration: none;
  text-underline-offset: 0.3rem;
}
.header__menu-item:hover .header__active-menu-item {
  text-decoration-thickness: 0.2rem;
}
.header__submenu {
  transition: opacity var(--duration-default) ease,
    transform var(--duration-default) ease;
}
.header__submenu.list-menu {
  padding: 25px;
}
.header__submenu .header__submenu {
  padding: 0;
  margin: 0;
  background: #fff none repeat scroll 0 0;
}
.header__submenu .header__menu-item:after {
  right: 2rem;
}
.header__submenu .header__menu-item {
  padding: 0;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 24px;
  letter-spacing: 0.5px;
  font-size: 13px;
  display: flex;
}
.header__submenu .header__submenu .header__menu-item {
  font-weight: 400;
  padding: 4px 0;
  font-size: 14px;
  text-transform: capitalize;
}
.header__submenu .icon-caret {
  right: 2rem;
}
details-disclosure > details {
  position: relative;
}
.rte .aboutus h3 {
  font-weight: 500;
}
.rte.info h3 {
  font-weight: 500;
}
@keyframes animateMenuOpen {
  0% {
    opacity: 0;
    transform: translateY(-1.5rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 1429px) {
  .page-width {
    max-width: 1230px;
  }
}
@media (max-width: 1269px) {
  .page-width {
    max-width: 990px;
  }
  .cm-grid__item {
    width: 28%;
  }
  .side-bar.medium-up--one-quarter {
    display: none;
  }
  .main-container.medium-up--three-quarters {
    width: 100%;
    float: left;
    padding-left: 0;
  }
  #col_5 {
    display: none;
  }
}
@media (max-width: 989px) {
  .page-width {
    max-width: 750px;
  }
  .cm-grid__item {
    width: 44%;
  }
  .template-index .spaced-section {
    margin-top: 45px;
  }
  .template-index .slideshow,
  .spaced-section--full-width + .spaced-section--full-width {
    margin-top: 0;
  }
  #col_5,
  #col_4 {
    display: none;
  }
  .header {
    grid-template-columns: auto 1fr 1fr;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .header__heading-logo {
    max-height: 88px;
  }
  .title,
  .title-wrapper-with-link {
    font-size: 25px;
    line-height: 30px;
    margin-bottom: 25px;
  }
  #TopColumnContent .title-breadcrumbs {
    margin-top: 30px;
    margin-bottom: 30px;
  }
  .site-header__search {
    display: none;
  }
  .header__search {
    margin-right: 13px;
  }
  .header__icons .cm-wishlist-button {
    margin: 0 15px;
  }
  #shopify-section-header,
  [id*="shopify-section"][id$="__header"] {
    min-height: 108px;
  }
}
@media (max-width: 749px) {
  .page-width {
    max-width: 100%;
  }
  .cm-grid__item {
    width: 100%;
    margin: 0;
    margin-bottom: 15px;
  }
  .quick-view-button {
    display: none;
  }
}
@media (max-width: 479px) {
  .header__icons {
    padding-top: 5px;
  }
  .header__heading-logo {
    max-height: 60px;
  }
  .header-menu {
    width: auto;
  }
  .template-index .spaced-section {
    float: left;
    width: 100%;
    margin-top: 40px;
  }
  .spaced-section:last-child {
    float: left;
    width: 100%;
  }
  .template-index .service-section {
    margin-top: 0;
  }
  .template-index .slideshow,
  .spaced-section--full-width + .spaced-section--full-width {
    margin-top: 0;
  }
  .template-index .spaced-section.tm-service {
    margin-top: 0;
  }
  .collection .grid__item {
    width: 50%;
  }
  .card-information__wrapper .spr-badge-caption {
    display: none;
  }
  .announcement-bar .tm_header-dropdown.site-header__icon,
  .announcement-bar .tm_header-dropdown.site-header__icon.active {
    padding-right: 10px;
  }
  .header {
    grid-template-columns: auto auto 1fr;
  }
  .header__search {
    margin-right: 10px;
  }
  .grid {
    margin: 0 -10px;
  }
  #shopify-section-header,
  [id*="shopify-section"][id$="__header"] {
    min-height: 80px;
  }
}

/******** wishlist & compare  *********/

.cm-compare-button,
.cm-wishlist-button {
  align-items: center;
  justify-content: center;
  display: flex !important;
  margin: 0 0px 0 0;
  position: relative;
  float: right;
}
.cm-compare-button {
  float: left;
}
.cm-wishlist-button {
  margin: 0 28px;
}
.my-account .cm-compare-button {
  margin-top: 10px;
}
.cm-compare-icon,
.cm-wishlist-icon {
  position: relative;
  float: left;
  font-size: 14px;
  line-height: 18px;
}
.product-hover button.active .icon.not-added {
  display: none;
}
.product-hover button.active .icon.added {
  display: inline-block;
  vertical-align: middle;
}
.product-hover button .icon.added {
  display: none;
}
.compare__grid.grid {
  column-gap: 0;
  margin: 0;
}
.compare__grid .product-card-compare {
  width: 25%;
  list-style: none;
  padding: 0;
  margin: 0;
  border: 1px solid var(--color-base-border);
  margin-inline-end: -1px;
}
.compare__grid .product-card-compare li {
  display: flex;
  border-bottom: 1px solid var(--color-base-border);
  padding: 15px;
  position: relative;
}
.compare__grid .product-card-compare li:last-child {
  border-bottom: none;
  min-height: 110px;
}
.compare__grid .product-card-compare li span {
  width: 50%;
  text-align: right;
}
.compare__grid .product-card-compare li:first-child span {
  width: auto;
  text-align: left;
}
.compare__grid .product-card-compare li .form__label {
  text-align: left;
  color: #000;
  font-weight: 500;
  margin-bottom: 0;
}
.wishlist__grid,
.compare__grid {
  column-gap: 0;
  row-gap: 30px;
  margin: 0 -15px;
}
.wishlist__grid .product-card {
  width: 25%;
  padding: 0 15px;
}
.wishlist__grid .product-hover,
.compare__grid .product-hover {
  transform: none;
  -webkit-transform: none;
  -ms-transform: none;
  -o-transform: none;
  -moz-transform: none;
  opacity: 1;
}
.wishlist__grid .product-hover {
  right: 25px;
}
.compare__grid .product-card-compare li span.color > option {
  border: 1px solid #aaa !important;
}
.wishlist__grid .caption-with-letter-spacing.light {
  opacity: 1;
}
.wishlist__grid .card-information .card-information__text.h5 {
  margin: 0 0 15px;
}
.compare__grid .card-wrapper {
  text-align: left;
}
.compare__grid .price__sale {
  justify-content: left !important;
}
.compare__grid .product-hover {
  top: 20px;
  right: 20px;
}
.compare__grid .product-hover .cm-link.btn--status,
.wishlist__grid .product-hover .cm-link.btn--status,
.wishlist__grid .product-hover .cm-link.btn--status:hover,
.compare__grid .product-hover .cm-link.btn--status:hover {
  background-color: transparent;
  box-shadow: none;
}
.compare__grid .product-hover .cm-link.btn--status:hover .icon,
.wishlist__grid .product-hover .cm-link.btn--status:hover .icon {
  fill: var(--color-base-text);
}
.wish-info,
.comp-info {
  text-align: center;
  padding: 15rem 0 20rem;
  margin: 0;
}
.no_products_data {
  font-size: 20px;
  font-weight: 400;
}
.wish-info a.link,
.comp-info a.link {
  text-decoration: underline !important;
  font-size: 16px;
  text-transform: capitalize;
}
.wish-info a.link:hover,
.comp-info a.link:hover {
  text-decoration: none !important;
}
@media (max-width: 989px) {
  .compare__grid .product-card-compare,
  .wishlist__grid .product-card {
    width: 33.33%;
  }
}
@media (max-width: 650px) {
  .compare__grid .product-card-compare,
  .wishlist__grid .product-card {
    width: 50%;
  }
}
@media (max-width: 479px) {
  .compare__grid .product-card-compare,
  .wishlist__grid .product-card {
    width: 100%;
    max-width: 280px;
  }
}

/********* end wishlist & compare **********/

/* ========================================
   PREMIUM REDESIGN OVERRIDES
   ======================================== */

/* --- Collection page: title centered, clean filter + sort --- */
.collection-hero__title {
  font-family: 'Mulish', sans-serif !important;
  font-weight: 300 !important;
  font-size: 24px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  margin: 24px 0 8px !important;
  color: #1a1a1a !important;
}
@media (max-width: 749px) {
  .collection-hero__title {
    font-size: 20px !important;
    margin: 16px 0 4px !important;
  }
}


.product-count,
.collection-hero__description .product-count {
  display: none !important;
}

/* Mobile: Filter button + Sort dropdown as separate blocks */
@media screen and (max-width: 749px) {
  /* Parent of filter+sort: make flex row with wrap */
  .collection-filters {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 12px 6px !important;
    background: transparent !important;
    align-items: stretch !important;
  }
  /* Hide desktop-only blocks on mobile */
  .collection-filters > .facets-container.desktop,
  .collection-filters > .collection-btn {
    display: none !important;
  }
  /* Active facets go to second row (full width) */
  .collection-filters > .active-facets-mobile {
    flex: 0 0 100% !important;
    width: 100% !important;
    order: 99 !important;
  }
  .facets-container {
    background: transparent !important;
  }
  .mobile-facets__wrapper {
    flex: 1 1 0 !important;
    width: auto !important;
  }
  .mobile-facets__open-wrapper {
    width: 100% !important;
    height: 38px !important;
    background: transparent !important;
    color: #2C4C18 !important;
    padding: 0 !important;
    border: 1px solid #2C4C18 !important;
    border-radius: 0 !important;
    font-family: 'Mulish', sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    text-align: center !important;
    justify-content: center !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
  /* Inner span had its own green bg — reset */
  .mobile-facets__open-wrapper .mobile-facets__open,
  .mobile-facets__open-wrapper .button {
    background: transparent !important;
    color: #2C4C18 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    min-height: auto !important;
    height: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
  }
  .mobile-facets__open-wrapper .mobile-facets__open-label {
    color: #2C4C18 !important;
    font-size: 0 !important;
  }
  .mobile-facets__open-wrapper .mobile-facets__open-label::before {
    content: "Filter";
    font-size: 11px;
    color: #2C4C18;
    letter-spacing: 1.5px;
  }
  .mobile-facets__open-wrapper .icon {
    display: none !important;
  }
  /* External Sort block next to Filter */
  .mobile-sort-external {
    flex: 1 1 0 !important;
    display: block !important;
    margin: 0 !important;
    width: auto !important;
  }
  .mobile-sort-external form {
    margin: 0 !important;
    width: 100% !important;
  }
  .mobile-sort-external .select {
    position: relative !important;
    width: 100% !important;
  }
  .mobile-sort-external__select {
    width: 100% !important;
    background: transparent !important;
    border: 1px solid #2C4C18 !important;
    color: transparent !important;
    padding: 0 30px 0 16px !important;
    font-family: 'Mulish', sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    border-radius: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: pointer !important;
    height: 38px !important;
    box-sizing: border-box !important;
    text-shadow: none !important;
  }
  /* Overlay "Sort" label on top of select */
  .mobile-sort-external .mobile-sort-external__label {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    text-align: center !important;
    width: 100% !important;
    font-family: 'Mulish', sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #2C4C18 !important;
    pointer-events: none !important;
    padding-right: 22px !important;
    box-sizing: border-box !important;
  }
  .mobile-sort-external .icon-caret {
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 10px !important;
    height: 10px !important;
    pointer-events: none !important;
    fill: #2C4C18 !important;
  }
  /* Native options dropdown must still be readable */
  .mobile-sort-external__select option {
    color: #1a1a1a !important;
    background: #FFFFFF !important;
  }
}

/* Hide external sort block on desktop (desktop has its own sidebar sort) */
@media screen and (min-width: 750px) {
  .mobile-sort-external {
    display: none !important;
  }
}

/* === Desktop category page: clean facets, no cream backgrounds === */
@media screen and (min-width: 750px) {
  /* Remove cream bg behind facet items */
  .facets__disclosure,
  .facets__summary,
  .facets__item,
  .facets__list li,
  .facets__panel,
  .facets__price-range,
  .facets__wrapper,
  .facets-wrapper,
  .js-filter,
  .FacetsWrapperDesktop {
    background: transparent !important;
  }
  .facets__item label {
    background: transparent !important;
  }
  /* Collection description/SEO text at bottom — match page bg */
  .collection-description,
  .collection__description,
  .collection-hero__description,
  .rte.collection-description,
  .collection-bottom-text,
  .collection-footer,
  [class*="collection"] .rte {
    background: transparent !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* Sort dropdown — already positioned in sidebar or above grid, keep clean */
  .facet-filters.sorting,
  .facet-filters__field,
  .facet-filters__field .select {
    background: transparent !important;
  }
  .facet-filters__sort,
  select.facet-filters__sort {
    background: #FFFFFF !important;
    border: 1px solid rgba(44, 76, 24, 0.4) !important;
  }
}

/* Also generic (applies everywhere) — kill that cream bg on facets */
.facets__disclosure,
.facets__summary.focus-offset,
.facets__item,
.facets__list li,
.facets__display,
.facets__header,
.FacetsWrapperDesktop,
.filter-total,
.filter-total.side-box,
.side-box {
  background: transparent !important;
}

/* Rich-text block at bottom of collection — same bg as page */
.rich-text.color-background-1,
.rich-text--full-width,
.rich-text {
  background: transparent !important;
}

/* (duplicate rule removed; see consolidated rule near end of file) */

/* Sort dropdown in sidebar (moved + renamed to "Sort") */
.FacetsWrapperDesktop .facet-filters.sorting {
  display: block !important;
  position: relative !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
  width: 100% !important;
}
.FacetsWrapperDesktop .facet-filters.sorting .facet-filters__field {
  width: 100% !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}
.FacetsWrapperDesktop .facet-filters.sorting .facet-filters__label,
.FacetsWrapperDesktop .facet-filters.sorting label {
  display: none !important;
}
.FacetsWrapperDesktop .facet-filters.sorting::before {
  content: "SORT";
  display: block !important;
  font-family: 'Mulish', sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
  color: #1a1a1a;
}
.FacetsWrapperDesktop .facet-filters.sorting .select {
  width: 100% !important;
  position: relative !important;
  display: block !important;
}
.FacetsWrapperDesktop .facet-filters.sorting select.facet-filters__sort {
  width: 100% !important;
  padding: 10px 32px 10px 12px !important;
  font-family: 'Mulish', sans-serif !important;
  font-size: 13px !important;
  color: #1a1a1a !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(0,0,0,0.15) !important;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  height: auto !important;
}
.FacetsWrapperDesktop .facet-filters.sorting .icon-caret {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 10px !important;
  height: 10px !important;
  pointer-events: none !important;
}

/* Price slider wrap — custom slider replaces text inputs */
.facets__price {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  width: 100% !important;
}
.price-range-slider {
  position: relative !important;
  height: 32px !important;
  width: calc(100% - 20px) !important;
  min-width: 180px !important;
  margin: 8px 10px !important;
  display: block !important;
  overflow: visible !important;
}
.price-range-slider__track {
  position: absolute !important;
  top: 14px !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: rgba(0,0,0,0.15) !important;
  border-radius: 2px !important;
  display: block !important;
}
.price-range-slider__range {
  position: absolute !important;
  top: 14px !important;
  height: 4px !important;
  background: #2C4C18 !important;
  border-radius: 2px !important;
  display: block !important;
}
.price-range-slider__thumb {
  position: absolute !important;
  top: 0 !important;
  width: 20px !important;
  height: 20px !important;
  margin-top: 6px !important;
  margin-left: -10px !important;
  background: #2C4C18 !important;
  border-radius: 50% !important;
  cursor: grab !important;
  z-index: 2 !important;
  border: 2px solid #FFFFFF !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.25) !important;
  display: block !important;
}
.price-range-slider__thumb:active {
  cursor: grabbing;
}
.price-range-values {
  display: flex;
  justify-content: space-between;
  font-family: 'Mulish', sans-serif;
  font-size: 13px;
  color: #1a1a1a;
  letter-spacing: 0.5px;
}

/* === Mobile Filter drawer: white bg, cleaner buttons === */
@media screen and (max-width: 749px) {
  /* Drawer: slide from left, constrained width */
  .mobile-facets__wrapper .mobile-facets__disclosure[open] {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    z-index: 9999 !important;
    width: 85vw !important;
    max-width: 360px !important;
    box-shadow: 0 0 20px rgba(0,0,0,0.2) !important;
  }
  .mobile-facets {
    width: 85vw !important;
    max-width: 360px !important;
    height: 100vh !important;
    box-sizing: border-box !important;
    background: #FFFFFF !important;
  }
  .mobile-facets__inner {
    background: #FFFFFF !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  /* Submenu panels (Availability / Price / etc.) — white bg too */
  .mobile-facets__submenu,
  .mobile-facets__details,
  .mobile-facets__details[open],
  .mobile-facets__main,
  .mobile-facets__main-content,
  .mobile-facets__details-content,
  .mobile-facets__inner-submenu,
  .mobile-facets__form {
    background: #FFFFFF !important;
  }
  /* "Back" button header area in submenu */
  .mobile-facets__submenu .mobile-facets__close-button,
  .mobile-facets__back {
    background: #FFFFFF !important;
  }
  /* Price from/to inputs */
  .mobile-facets__submenu input[type="number"],
  .mobile-facets__submenu input[type="text"] {
    background: #FFFFFF !important;
    border: 1px solid rgba(0,0,0,0.2) !important;
  }
  /* Header "Filter and sort" → "Filter" + hide product count */
  .mobile-facets__heading {
    font-family: 'Mulish', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    font-size: 0 !important;
  }
  .mobile-facets__heading::before {
    content: "Filter";
    font-size: 14px;
    letter-spacing: 2px;
  }
  .mobile-facets__header .product-count,
  .mobile-facets__count,
  .mobile-facets__info {
    display: none !important;
  }
  /* Footer buttons — smaller, side-by-side */
  .mobile-facets__footer {
    padding: 12px 16px !important;
    gap: 8px !important;
    display: flex !important;
    background: #FFFFFF !important;
  }
  .mobile-facets__footer .button,
  .mobile-facets__footer .mobile-facets__clear,
  .mobile-facets__clear-wrapper .button {
    flex: 1 !important;
    padding: 10px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    border-radius: 0 !important;
    height: 40px !important;
    min-height: 0 !important;
    line-height: 1 !important;
  }
  .mobile-facets__footer .mobile-facets__clear,
  .mobile-facets__clear-wrapper .button {
    background: transparent !important;
    color: #2C4C18 !important;
    border: 1px solid #2C4C18 !important;
  }
  .mobile-facets__footer .button--primary {
    background: #2C4C18 !important;
    color: #FFEEDC !important;
    border: 1px solid #2C4C18 !important;
  }
  /* Close (X) button on filter drawer */
  .mobile-facets__close,
  .mobile-facets__close-button {
    cursor: pointer !important;
  }
  .mobile-facets__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px !important;
    background: #FFFFFF !important;
  }
  .mobile-facets__close-x {
    background: transparent !important;
    border: none !important;
    padding: 8px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .mobile-facets__close-x svg {
    width: 18px !important;
    height: 18px !important;
    fill: #1a1a1a !important;
  }
  /* Sort row inside drawer */
  .mobile-facets__sort {
    padding: 16px !important;
  }
}

/* --- Typography: Premium headings --- */
h1, h2, h3, .h1, .h2, .h3,
.title-wrapper-with-link,
.featured-collection__title,
.section-header__title {
  font-family: 'Mulish', sans-serif !important;
  font-weight: 300 !important;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

h1, .h1 { font-size: 3.6rem; }
h2, .h2 { font-size: 2.8rem; }
h3, .h3 { font-size: 2rem; }

/* --- Buttons: Premium feel --- */
.button,
.shopify-challenge__button,
.customer button,
button.shopify-payment-button__button--unbranded {
  font-family: 'Mulish', sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 12px;
  font-weight: 500;
  padding: 16px 40px;
  border-radius: 0 !important;
  transition: all 0.3s ease;
}

.button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* --- Product cards: Clean and elegant --- */
.card__heading,
.card__heading a,
.product-card__title,
.product-card__title a {
  font-family: 'Mulish', sans-serif !important;
  font-size: 1.6rem;
  letter-spacing: 0.5px;
  font-weight: 500;
  text-transform: capitalize;
}

.price-item--regular,
.price-item--sale,
.product-card__price {
  font-family: 'Mulish', sans-serif;
  font-weight: 400;
  letter-spacing: 1px;
  color: #3C4A3A;
}

/* --- Product card hover effect --- */
.product-card__image-wrapper img,
.card__media img {
  transition: transform 0.6s ease, opacity 0.3s ease;
}

.product-card:hover .product-card__image-wrapper img,
.card:hover .card__media img {
  transform: scale(1.03);
}

/* --- Section spacing: More breathing room --- */
.section-template,
.shopify-section {
  margin-bottom: 0;
}

.title-wrapper-with-link {
  margin-bottom: 3rem;
  text-align: center;
}

/* --- Collection list cards: Premium overlay --- */
.collection-list .collection-card__info {
  font-family: 'Mulish', sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 1.4rem;
}

/* --- Slideshow / Hero: Better text --- */
.tm-slideshow__title,
.banner__heading {
  font-family: 'Mulish', sans-serif !important;
  font-weight: 300;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.tm-slideshow__subtitle,
.banner__text {
  font-family: 'Mulish', sans-serif;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 400;
}

/* --- Links: Subtle underline on hover --- */
a {
  transition: color 0.3s ease, opacity 0.3s ease;
}

/* --- Footer: Premium dark style --- */
.footer-section {
  font-family: 'Mulish', sans-serif;
}

.footer-section h4,
.footer-section .footer__heading {
  font-family: 'Mulish', sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 2.5px;
  font-size: 1.4rem;
  font-weight: 500;
}

.footer-section a {
  transition: opacity 0.3s ease;
}

.footer-section a:hover {
  opacity: 0.7;
}

/* --- Scrollbar: Subtle --- */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: #FDFAF6;
}
::-webkit-scrollbar-thumb {
  background: #3C4A3A;
  border-radius: 3px;
}

/* --- Selection color --- */
::selection {
  background: #3C4A3A;
  color: #fff;
}

/* --- Benefits section SVG color update --- */
.benefits__item svg g {
  stroke: #3C4A3A !important;
}

/* --- Smooth page load --- */
body {
  opacity: 0;
  animation: fadeIn 0.6s ease forwards;
}

@keyframes fadeIn {
  to { opacity: 1; }
}

/* --- Divider line between header and content --- */
.header-wrapper {
  border-bottom: 1px solid rgba(0,0,0,0.06);
}

/* ========================================
   END PREMIUM REDESIGN OVERRIDES
   ======================================== */

/* === Final overrides: category page cleanup === */

/* Product images bigger ONLY on collection pages (not homepage) */
body.template-collection #product-grid .card-wrapper .media,
body.template-collection .card-wrapper .media.media--adapt,
body.template-collection .card-wrapper .media.media--portrait,
body.template-collection #ProductGridContainer .card-wrapper .media {
  padding-bottom: 150% !important;
}

/* Clear button + active facet chips — same compact size */
.facets__reset,
.active-facets__button-remove,
.active-facets__button,
.active-facets__button--light {
  padding: 8px 14px !important;
  font-size: 11px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  min-height: auto !important;
  height: auto !important;
  line-height: 1.3 !important;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  max-width: max-content !important;
  background: transparent !important;
  color: #2C4C18 !important;
  border: 1px solid #2C4C18 !important;
  gap: 6px !important;
}
.active-facets__button-inner {
  padding: 0 !important;
  font-size: 11px !important;
  letter-spacing: 1.5px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

/* Hide alternative/top "Best selling" dropdown on desktop — keep only sidebar one */
@media screen and (min-width: 750px) {
  .collection-filters > .facet-filters.sorting,
  #ProductGridContainer ~ .facet-filters.sorting,
  .collection-toolbar,
  .collection__sort {
    display: none !important;
  }
  /* Old mobile external sort shouldn't appear on desktop */
  .mobile-sort-external {
    display: none !important;
  }
}

/* Force visibility on empty slider divs (bypass global div:empty rule) */
.price-range-slider,
.price-range-slider__track,
.price-range-slider__range,
.price-range-slider__thumb {
  display: block !important;
}

/* === Product page: hide Quantity, fix typography === */
body.template-product .product-form__input.product-form__quantity,
body.template-product .product-form__quantity,
body.template-product .quantity,
body.template-product quantity-input,
body.template-product .quantity-wrapper,
.product-form__input.product-form__quantity {
  display: none !important;
}

/* Product title + description: Mulish, dark color */
body.template-product .product__title,
body.template-product .product-title,
body.template-product h1.product__title,
body.template-product .product__description,
body.template-product .product__description *,
body.template-product .product-description,
body.template-product .rte,
body.template-product .product__info-container,
body.template-product .product__info-container * {
  font-family: 'Mulish', sans-serif !important;
  color: #1a1a1a !important;
}

body.template-product .product__title {
  font-weight: 500 !important;
  font-size: 24px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

body.template-product .product__description,
body.template-product .product__description p,
body.template-product .product__description span,
body.template-product .product__description li {
  font-weight: 300 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  letter-spacing: 0.3px !important;
  color: #1a1a1a !important;
}

/* Price on product page: dark color, Mulish */
body.template-product .price,
body.template-product .price .price-item,
body.template-product .price__regular,
body.template-product .price-item--regular {
  font-family: 'Mulish', sans-serif !important;
  color: #1a1a1a !important;
  font-weight: 500 !important;
}

/* === Product page: hide Add to Wishlist, restyle Add to Cart === */
body.template-product .cm-wishlist-button,
body.template-product .product-form__wishlist,
body.template-product [class*="wishlist"]:not(.cm-wishlist-icon),
body.template-product .add-to-wishlist {
  display: none !important;
}

/* Add to cart button — brand green bg + white text (matches announcement bar) */
body.template-product .product-form__submit.button,
body.template-product button[name="add"],
body.template-product .product-form__buttons .button {
  background: #2C4C18 !important;
  color: #FFFFFF !important;
  border: 1px solid #2C4C18 !important;
  font-family: 'Mulish', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}
body.template-product .product-form__submit.button:hover,
body.template-product button[name="add"]:hover {
  background: #1a1a1a !important;
  color: #FFFFFF !important;
  border-color: #1a1a1a !important;
}
body.template-product .product-form__submit svg,
body.template-product button[name="add"] svg,
body.template-product button[name="add"] .icon {
  display: none !important;
}

/* === Product page: hide wishlist + shipping/security/stock + full-width Add to Cart === */
body.template-product .product-com-wish,
body.template-product button[aria-label="Add to wishlist"],
body.template-product button[button-wishlist] {
  display: none !important;
}

/* Hide Shipping calc / Security payments / In stock text */
body.template-product .product__info-container p.product__text,
body.template-product .product__info-container .icon-and-text,
body.template-product .product__shipping,
body.template-product .product__inventory,
body.template-product .product__badge-security-payments,
body.template-product .icon-and-text {
  display: none !important;
}

/* Add to Cart mobile sizing handled in dedicated rule near end of file */

/* === Floral blocks ("Fresh Blooms" / "Why Choose Us") — uniform headings + black body === */
.floral-blocks-container .floral-block h2,
.floral-blocks-container .floral-block h3,
.floral-blocks-container .block-text h2,
.floral-blocks-container .block-text h3 {
  font-family: 'Mulish', sans-serif !important;
  font-weight: 500 !important;
  font-size: 18px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #1a1a1a !important;
  margin: 0 0 1rem !important;
}
.floral-blocks-container .floral-block p,
.floral-blocks-container .floral-block li,
.floral-blocks-container .block-text p,
.floral-blocks-container .block-text li,
.floral-blocks-container .block-text ul {
  color: #1a1a1a !important;
  font-family: 'Mulish', sans-serif !important;
  font-weight: 300 !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* === Shop By Category collection-list mobile: equal-size blocks === */
@media (max-width: 749px) {
  body.template-index .collection-list.grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.template-index .collection-list.grid > li,
  body.template-index .collection-list.grid > .collection-list__item {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
  }
  body.template-index .collection-list.grid .card,
  body.template-index .collection-list.grid .card-wrapper {
    height: 100% !important;
    width: 100% !important;
  }
  body.template-index .collection-list.grid .media,
  body.template-index .collection-list.grid img {
    aspect-ratio: 4 / 5 !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
  }
}

/* === Card title — bolder than price === */
.card-information__text.h5 a,
.card-information__text a,
.card-information .card-information__text a,
.card__heading a {
  font-weight: 410 !important;
}

/* === Card price — slightly lighter === */
.card-information__wrapper > .price,
.card-information .price,
.price-item--regular {
  font-weight: 400 !important;
}

/* === Newsletter (Get 10% off) — fix layout === */
.newsletter,
.newsletter-form,
.newsletter__wrapper {
  max-width: 600px !important;
  margin: 0 auto !important;
  padding: 32px 16px !important;
}
.newsletter-form__field-wrapper {
  display: flex !important;
  flex-direction: row !important;
  gap: 12px !important;
  align-items: stretch !important;
  margin: 16px 0 !important;
}
.newsletter-form__field-wrapper .field {
  flex: 1 !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.newsletter-form__field-wrapper .field__input {
  width: 100% !important;
  height: 48px !important;
  padding: 0 16px !important;
  border: 1px solid #2C4C18 !important;
  background: #FFFFFF !important;
  font-family: 'Mulish', sans-serif !important;
  font-size: 14px !important;
  border-radius: 0 !important;
}
.newsletter__button,
.newsletter-form button[type="submit"],
.newsletter-form .button {
  flex: 0 0 auto !important;
  height: 48px !important;
  padding: 0 24px !important;
  background: #2C4C18 !important;
  color: #FFEEDC !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: 'Mulish', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}
@media (max-width: 749px) {
  .newsletter-form__field-wrapper {
    flex-direction: column !important;
    gap: 16px !important;
  }
  .newsletter__button {
    width: 100% !important;
  }
}

/* Hide possible dark band before Our Benefits (rich-text empty / spacer) */
#shopify-section-rich_text_XK9iKe {
  background: transparent !important;
}
#shopify-section-rich_text_XK9iKe .rich-text,
.rich-text.color-background-2,
.rich-text.color-inverse {
  background: transparent !important;
}

/* === Hide "scroll to top" arrow === */
.cm-scroll-to-top,
.scroll-to-top,
[class*="scroll-top"],
.back-to-top,
#scroll-up,
#back-to-top,
.tm-back-top,
a.scroll-to-top,
button.scroll-to-top {
  display: none !important;
}

/* === Newsletter on PC: center everything === */
@media (min-width: 750px) {
  .newsletter,
  .newsletter__wrapper {
    text-align: center !important;
  }
  .newsletter__wrapper > * {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .newsletter h2,
  .newsletter h1,
  .newsletter__subheading {
    text-align: center !important;
  }
  .newsletter-form__field-wrapper {
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
  }
}

/* === Reduce padding between Our Process and Shop By Category on PC === */
@media (min-width: 990px) {
  body.template-index #shopify-section-template--*__custom_liquid_tw4im8,
  body.template-index [id*="custom_liquid_tw4im8"] {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  body.template-index [id*="collection_list_7LF7Rm"] {
    margin-top: 24px !important;
  }
  body.template-index .spaced-section + [id*="collection_list_7LF7Rm"] {
    margin-top: 24px !important;
  }
}

/* === Shop By Category cards: cream label background instead of dark === */
.collection-list .card__content,
.collection-list .card-information,
.collection-list .card-information__wrapper,
.collection-list .card__information,
.collection-list .card-content,
.collection-list .card__heading,
.collection-list .card__media-overlay,
.collection-list .featured_collection .title-name,
.collection-list .card .card-information {
  background: #FFEEDC !important;
  color: #1a1a1a !important;
}
.collection-list .card-information__text,
.collection-list .card__heading,
.collection-list .card__heading a,
.collection-list .card-information__text a,
.collection-list .featured_collection a,
.collection-list .card__heading > a {
  color: #1a1a1a !important;
}

/* Add bottom margin to Shop By Category section so Best Sellers below has gap */
body.template-index [id*="collection_list_7LF7Rm"] {
  margin-bottom: 40px !important;
}
@media (max-width: 749px) {
  body.template-index [id*="collection_list_7LF7Rm"] {
    margin-bottom: 30px !important;
  }
}

/* === Card titles bolder on homepage === */
body.template-index .card-information__text.h5 a,
body.template-index .card-information__text a,
body.template-index .card__heading a {
  font-weight: 600 !important;
}

/* === Footer Instagram link styling === */
.footer-social-link {
  display: inline-flex !important;
  align-items: center !important;
  color: inherit !important;
  text-decoration: none !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  transition: opacity 0.2s ease !important;
}
.footer-social-link:hover {
  opacity: 0.7 !important;
}
.footer-social-ig svg {
  flex-shrink: 0;
}

/* === Footer: remove location/home icon from Instagram address === */
.information .footer-social-ig.address,
.footer-social-ig.address,
li.footer-social-ig {
  background: none !important;
  padding-left: 0 !important;
}

/* (Removed: blanket transparent on all sections) */

/* === Hide scroll-to-top arrow (.top_button) === */
.top_button,
a.top_button {
  display: none !important;
}

/* (Removed: global section/body bg overrides — broke header/footer/colors) */

/* === Product card titles: bolder + bigger on ALL pages === */
.card-information__text.h5 a,
.card-information__text a,
.card-information .card-information__text a,
.card__heading a,
.card__heading,
body.template-index .card-information__text.h5 a,
body.template-index .card-information__text a,
body.template-index .card__heading a,
body.template-collection .card-information__text.h5 a,
body.template-collection .card-information__text a,
body.template-collection .card__heading a,
body.template-search .card-information__text a {
  font-weight: 600 !important;
  font-size: 17px !important;
  letter-spacing: 0.4px !important;
}

/* === Page content (About, Contacts) — body text dark, not accent === */
body.template-page,
body.template-page-contact,
body.template-page main,
body.template-page .rte,
body.template-page .rte p,
body.template-page .rte li,
body.template-page .rte a:not(.button),
body[class*="template-page"] .rte,
body[class*="template-page"] .rte p,
body[class*="template-page"] .rte li,
.contact-information,
.contact-information *,
.contact-form,
.contact-form * {
  color: #1a1a1a !important;
}

/* === Contact page: dark text + dark icons === */
.address_content,
.address_content *,
.contact_content,
.contact_content *,
.email_content,
.email_content *,
.info,
.info *,
.fa,
.fa-home,
.fa-phone,
.fa-envelope,
.fa-info {
  color: #1a1a1a !important;
}

/* Contact form Send button — white text */
.contact-form button[type="submit"],
.contact-form .button,
form#ContactForm button[type="submit"],
form#ContactForm .button {
  background: #2C4C18 !important;
  color: #FFFFFF !important;
  border: 1px solid #2C4C18 !important;
}
.contact-form button[type="submit"]:hover,
.contact-form .button:hover {
  background: #1a1a1a !important;
  color: #FFFFFF !important;
  border-color: #1a1a1a !important;
}

/* === Homepage Shop By Category labels: same cream as collection page === */
body.template-index .collection-list .card-information,
body.template-index .collection-list .card__heading,
body.template-index .collection-list .card-information__wrapper,
body.template-index .collection-list .featured_collection .title-name {
  background: #FFEEDC !important;
  color: #1a1a1a !important;
}
body.template-index .collection-list .card-information *,
body.template-index .collection-list .card__heading a,
body.template-index .collection-list .featured_collection a {
  color: #1a1a1a !important;
}

/* === Product page (PC): gap between header and image, title+price lower === */
@media (min-width: 990px) {
  body.template-product .product__media-wrapper,
  body.template-product .product__media,
  body.template-product .product__media-list {
    margin-top: 24px !important;
  }
  body.template-product .product__info-wrapper,
  body.template-product .product__info-container {
    margin-top: 56px !important;
    padding-top: 0 !important;
  }
}

/* mobile add-to-cart re-styled below */

/* (Removed gallery override — kept native slider) */

/* === Collection page: ensure category cards label cream (matching home) === */
.template-collection .collection-list .card-information,
.template-collection .collection-list .card__heading,
.template-list-collections .card-information {
  background: #FFEEDC !important;
  color: #1a1a1a !important;
}

/* === Collection list page (list of all collections): even grid === */
.template-list-collections .collection-list,
.template-list-collections .grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 16px !important;
}
@media (max-width: 749px) {
  .template-list-collections .collection-list,
  .template-list-collections .grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }
}
.template-list-collections .collection-list__item,
.template-list-collections .grid__item {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.template-list-collections .collection-list .media,
.template-list-collections .grid img {
  aspect-ratio: 4/5 !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/* === Product page MOBILE === */
@media (max-width: 749px) {
  /* Image full width */
  body.template-product .product__media-wrapper,
  body.template-product slider-component.slider-mobile-gutter,
  body.template-product .product__media-list,
  body.template-product .product__media-item,
  body.template-product .product__media-item img {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body.template-product .product__media-wrapper {
    padding: 0 !important;
  }

  /* Add to Cart: full-width with 7% horizontal inset on each side */
  body.template-product product-form,
  body.template-product .product-form,
  body.template-product .product-form > form,
  body.template-product .product-form__buttons {
    display: block !important;
    float: none !important;
    column-count: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: left !important;
  }
  body.template-product .product-form__buttons {
    box-sizing: border-box !important;
    padding-left: 3% !important;
    padding-right: 3% !important;
    margin-top: 14px !important;
    margin-bottom: 20px !important;
  }
  /* Spacing: title → price → add to cart on mobile */
  body.template-product .product__title {
    margin-bottom: 22px !important;
  }
  body.template-product .price-product,
  body.template-product .product-price,
  body.template-product .product__info-container .price {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
  }
  body.template-product .product-form__submit,
  body.template-product button[name="add"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
}

/* === Product page: thumbnail row + zoom overlay === */
body.template-product .product__media-wrapper {
  position: relative;
}
/* Hide native slider arrows + counter — replaced by thumbnails */
body.template-product .product__media-wrapper .slider-buttons,
body.template-product .product__media-wrapper .slider-buttons--overlay {
  display: none !important;
}
/* Magnifier zoom icon overlay */
body.template-product .product__zoom-icon {
  position: absolute;
  bottom: 16px;
  left: 16px;
  z-index: 5;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 2px 8px rgba(0,0,0,0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #1a1a1a;
  padding: 0;
}
body.template-product .product__zoom-icon:hover {
  background: #f7f4ee;
}
/* Thumbnail row */
body.template-product .product__thumbnails-row {
  display: flex;
  gap: 10px;
  margin-top: 14px;
  padding: 0 4px;
  overflow-x: auto;
  scrollbar-width: none;
}
body.template-product .product__thumbnails-row::-webkit-scrollbar { display: none; }
body.template-product .product__thumbnail-btn {
  flex: 0 0 auto;
  width: calc((100% - 30px) / 4);
  max-width: 120px;
  aspect-ratio: 1 / 1;
  padding: 0;
  border: 2px solid transparent;
  background: transparent;
  cursor: pointer;
  overflow: hidden;
  border-radius: 0;
  transition: border-color 0.15s ease;
}
body.template-product .product__thumbnail-btn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
body.template-product .product__thumbnail-btn.is-active {
  border-color: #2C4C18;
}
body.template-product .product__thumbnail-btn:hover {
  border-color: #B1BD41;
}
@media (max-width: 749px) {
  body.template-product .product__thumbnails-row {
    padding: 0 3%;
    gap: 8px;
  }
  body.template-product .product__thumbnail-btn {
    width: calc((100% - 24px) / 4);
  }
}
/* Zoom overlay (lightbox) */
.product__zoom-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: rgba(0,0,0,0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  cursor: zoom-out;
}
.product__zoom-overlay img {
  max-width: 95%;
  max-height: 95%;
  object-fit: contain;
  display: block;
}
.product__zoom-close {
  position: absolute;
  top: 16px;
  right: 20px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  color: #1a1a1a;
  border: none;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* === Footer mobile accordion: hide empty address/email/phone rows (CSS-only fix) === */
.footer-block__details-content .address:has(> span:empty),
.footer-block__details-content .contact:has(> span:empty),
.footer-block__details-content a.email:empty,
.footer-block__details-content a.email[href=""],
.footer-block__details-content a.email[href="/"] {
  display: none !important;
}
