/** Shopify CDN: Minification failed

Line 368:2 Expected ":"
Line 369:2 Expected ":"
Line 370:2 Expected ":"
Line 371:2 Expected ":"
Line 378:2 Expected ":"
Line 389:2 Expected ":"
Line 390:2 Expected ":"
Line 391:2 Expected ":"
Line 395:2 Expected ":"
Line 396:2 Expected ":"
... and 57 more hidden warnings

**/


/* CSS from section stylesheet tags */
.alt-prodshow-wrap {
    max-width: max-content;
    margin: auto;
    padding: 25px;
}
.alt-prodshow-row {
  display: flex; 
  flex-direction: row; 
  align-items: flex-start; 
  gap: 0; 
  margin-bottom: 70px;
}
.alt-prodshow-imgcol, .alt-prodshow-infocol {
  width: 50%; 
  min-width: 0; 
  display: flex; 
  align-items: flex-start; 
  justify-content: 
  flex-start; padding: 0;
}
.alt-prodshow-imgcol { 
  justify-content: flex-end; 
}
.alt-prodshow-imgcol img { 
  width: 94%; 
  max-width: 500px; 
  height: auto; 
  object-fit: cover; 
  border-radius: 0; 
  box-shadow: none; 
}
.alt-prodshow-infocol { 
  flex-direction: column; 
  justify-content: flex-start; 
  padding: 10px 0 0 44px; 
}
.alt-prod-coll { 
  font-size: 13px; 
  font-weight: 600; 
  color: #888; 
  margin-bottom: 10px; 
  text-transform: uppercase; 
  letter-spacing: 2px; 
}
.alt-prod-title { 
  font-size: 22px; 
  font-weight: bold; 
  color: #222; 
  margin-bottom: 8px; 
}
.alt-prod-desc { 
  font-size: 15px; 
  color: #444; 
  margin-bottom: 16px; 
  max-width: 480px; 
}

.alt-prod-variants-2col {
  display: flex; 
  gap: 24px; 
  margin-bottom: 20px;
}
.alt-prod-variant-col {
  display: flex; 
  flex-direction: column; 
  flex: 1; 
  min-width: 150px;
}
.alt-prod-variant-col label {
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.03em;
}
.alt-prod-variant-col select {
  font-size: 15px;
  padding: 10px 15px;
  border-radius: 0;
  border: 1.5px solid #222;
  outline: none;
  background: #fff;
  min-width: 120px;
}

.alt-prod-variants-bottom {
  display: flex; align-items: flex-end; gap: 24px; margin-bottom: 18px;
}
.alt-prod-size-col {
  display: flex; flex-direction: column; flex: 1; min-width: 150px;
}
.alt-prod-size-col label {
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: 600;
}
.alt-prod-size-col select {
  font-size: 15px;
  padding: 10px 15px;
  border-radius: 0;
  border: 1.5px solid #222;
  outline: none;
  background: #fff;
  min-width: 120px;
}
.alt-findstore {
  font-size: 15px; color: #222; text-decoration: none; font-weight: 700; margin-left: auto; padding: 0 18px 0 12px; display: flex; align-items: center; gap: 7px;
  border: none; background: none; cursor: pointer; letter-spacing: 1.2px; transition: color 0.2s;
}
.alt-findstore:hover { color: #764ba2; text-decoration: underline; }
.alt-findstore svg { vertical-align: middle; margin-right: 3px; }

.alt-prod-purchase-row { margin-top: 32px; width: 100%; }
.alt-prod-pricebtn {
  width: 100%;
  border: 1.5px solid #222;
  color: #fff;
  background: #222;
  padding: 18px 18px;
  font-size: 16px;
  font-weight: 700;
  min-width: 240px;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: all 0.2s;
  cursor: pointer;
  letter-spacing: 0.5px;
  border-radius: 0;
}
.alt-prod-pricebtn:hover {
  background: #fff;
  color: #222;
  border: 1.5px solid #222;
}
.alt-prod-price { font-weight: bold; font-size: 16px; }

@media (max-width: 950px) {
  .alt-prodshow-row { flex-direction: column; gap: 24px; }
  .alt-prodshow-imgcol, .alt-prodshow-infocol { width: 100%; max-width: 100%; padding: 0; justify-content: center; }
  .alt-prodshow-infocol { padding: 24px 0 0 0; }
  .alt-prod-variants-2col, .alt-prod-variants-bottom { flex-direction: column; gap: 14px; }
  .alt-findstore { margin-left: 0; }
}

  @media (max-width: 600px) {
  .alt-prodshow-row {
    flex-direction: column !important;
    gap: 24px;
    align-items: flex-start !important;
  }
  .alt-prodshow-imgcol,
  .alt-prodshow-infocol {
    width: 100% !important;
    max-width: 100%;
    padding: 0 !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }
  .alt-prodshow-imgcol img {
    width: 100% !important;
    max-width: 340px !important;
    height: auto;
    margin-bottom: 16px;
    border-radius: 0;
    box-shadow: none;
    display: block;
    margin-left: 0;
    margin-right: 0;
  }
  .alt-prodshow-infocol {
    padding: 0 !important;
  }
  .alt-prod-coll,
  .alt-prod-title,
  .alt-prod-desc,
  .alt-prod-variant-col label,
  .alt-prod-size-col label,
  .alt-prod-variant-col select,
  .alt-prod-size-col select,
  .alt-prod-pricebtn {
    text-align: left !important;
    align-items: flex-start !important;
  }
  .alt-prod-variants-2col,
  .alt-prod-variants-bottom {
    flex-direction: column !important;
    gap: 14px !important;
    align-items: flex-start !important;
    width: 100%;
  }
  .alt-findstore {
    margin-left: 0 !important;
    width: 100%;
    justify-content: flex-start !important;
    padding-left: 0;
    padding-right: 0;
    font-size: 16px;
  }
  .alt-prod-purchase-row {
    margin-top: 24px;
    width: 100%;
  }
  .alt-prod-pricebtn {
    min-width: 0;
    font-size: 16px;
    padding: 16px 10px;
    width: 100%;
    text-align: left;
    border-radius: 0;
  }
}
.buyall-wrap {
  max-width: 1200px;
  margin: 40px auto 24px;
  border: 1.5px solid #222;
  padding: 40px 24px;
  background: #fff;
  display: flex;
  align-items: center;
  gap: 30px;
  min-height: 300px;
  position: relative;
}
.buyall-images-row {
  display: flex;
  align-items: center;
  gap: 28px;
}
.buyall-imgbox {
  width: 200px;
  height: 200px;
  background: #f7f7f7;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  border-radius: 0;
  border: none;
  box-shadow: none;
  position: relative;
}
.buyall-imgbox img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: 0;
  display: block;
}
.buyall-plus {
  font-size: 2.4em;
  color: #888;
  font-weight: 500;
  margin: 0 12px;
  user-select: none;
}
.buyall-purchase {
  margin-left: auto;
  font-size: 1.13em;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #222;
  text-decoration: underline;
  cursor: pointer;
  transition: color 0.2s;
  white-space: nowrap;
  border: none;
  background: none;
  outline: none;
  padding: 0;
}
.buyall-purchase:hover {
  color: #764ba2;
  text-decoration: underline;
}
@media (max-width: 900px) {
  .buyall-wrap { flex-direction: column; gap: 32px; }
  .buyall-images-row { flex-wrap: wrap; justify-content: center; }
  .buyall-purchase { margin-left: 0; margin-top: 12px; }
}
@media (max-width: 600px) {
  .buyall-wrap { padding: 16px 5px; }
  .buyall-images-row { gap: 13px; }
  .buyall-imgbox { width: 105px; height: 105px; }
  .buyall-plus { font-size: 1.7em; }
}
/* --- START: Container and Control Area --- */
.stone-slider {
  width: 90%;
  margin: 50px auto; /* Removed bottom margin */
  border: none;
  position: relative; /* Essential for containing the controls */
  padding-bottom: 80px; /* Creates space for the controls below the slider */
}
/* --- END: Container and Control Area --- */


/* --- START: Minimalist Slider Styles --- */

/* Card Styling */
.stone-slider-card {
  width: auto;
  margin: 0 10px; /* Spacing between cards */
  background: #fff;
  padding: 5px 20px 5px; /* Adjusted top and bottom padding */
  text-align: center;
  border: 1px solid #eee; /* Thinner, lighter border */
  border-radius: 0; /* Sharp corners */
  transition: none; /* No transition effects */
}

.stone-slider-card:hover {
  transform: none; /* No hover effects */
  box-shadow: none; /* No hover effects */
}

/* Remove link underline and set color */
.stone-slider-card a {
  text-decoration: none;
  color: #333;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* Image styling */
.stone-slider-card img {
  width: 160px; /* Made image larger */
  height: 160px; /* Made image larger */
  object-fit: cover;
  margin: 0 auto 10px auto; /* Adjust margin below image */
  border-radius: 0; /* Sharp corners for the image */
}

/* Label Styling */
.stone-slider-label {
  font-weight: 700; /* Bolder font weight */
  font-size: 14px; /* Larger font size */
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.1em; /* Add letter spacing */
  margin-bottom: 0;
}

/* --- END: Minimalist Slider Styles --- */


.flickity-slider {
    position: absolute;
    width: 100%;
    height: 100%;
    border: none;
}

/*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
    position: relative
}

/* Remove focus outline from slider and buttons */
.flickity-enabled:focus, .flickity-viewport:focus, .flickity-button:focus {
  outline: none !important;
  box-shadow: none !important;
}


.flickity-viewport {
    overflow: hidden;
    position: relative;
    height: 100%
}

.flickity-slider {
    position: absolute;
    width: 100%;
    height: 100%;
    border: none;
}

.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.flickity-button {
    position: absolute;
    background: hsla(0,0%,100%,.75);
    border: none;
    color: #333
}

.flickity-button:hover {
    background: #fff;
    cursor: pointer
}



.flickity-button:active {
    opacity: .6
}

.flickity-button:disabled {
    opacity: .3;
    cursor: auto;
    pointer-events: none
}

.flickity-button-icon {
    fill: currentColor
}

.flickity-prev-next-button {
    top: 50%;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    transform: translateY(-50%)
}

.flickity-prev-next-button.previous {
    left: 10px
}

.flickity-prev-next-button.next {
    right: 10px
}

.flickity-rtl .flickity-prev-next-button.previous {
    left: auto;
    right: 10px
}

.flickity-rtl .flickity-prev-next-button.next {
    right: auto;
    left: 10px
}

.flickity-prev-next-button .flickity-button-icon {
    position: absolute;
    left: 20%;
    top: 20%;
    width: 60%;
    height: 60%
}

.flickity-page-dots {
    position: absolute;
    width: 100%;
    bottom: -25px;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    line-height: 1
}

.flickity-rtl .flickity-page-dots {
    direction: rtl
}

.flickity-page-dots .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 8px;
    background: #333;
    border-radius: 50%;
    opacity: .25;
    cursor: pointer
}

.flickity-page-dots .dot.is-selected {
    opacity: 1
}

/* --- START: Custom styles for button styling & positioning --- */

/* Control Buttons Styling */
.flickity-button {
  background: transparent;
  border-radius: 50%;
  border: 1px solid #888;
  box-shadow: none;
  transition: none;
}

.flickity-button:hover {
  background: #f0f0f0; /* Slight background on hover for feedback */
  transform: none;
  box-shadow: none;
}

.flickity-button .flickity-button-icon {
    fill: #333;
}


/* Repositioning the buttons and dots */
.flickity-prev-next-button {
  top: auto; /* Remove default vertical alignment */
  bottom: 20px; /* Position inside the container's padding area */
  transform: none; /* Reset default transform */
  width: 36px;
  height: 36px;
  z-index: 2; /* Ensure buttons are clickable */
}

.flickity-prev-next-button.previous {
  left: 0; /* Position to the far left of the container */
}

.flickity-prev-next-button.next {
  right: 0; /* Position to the far right of the container */
  left: auto; /* Ensure left property is not inherited */
}

.flickity-page-dots {
  bottom: 25px; /* Vertically align dots with the buttons */
}

.flickity-page-dots .dot {
  background: #ccc;
}

.flickity-page-dots .dot.is-selected {
  background: #333; /* Make selected dot darker */
}
/* --- END: Custom styles for button positioning --- */
.collection-cards-wrap {
  max-width: 1200px;
  margin: 40px auto;
  display: flex;
  justify-content: center;
  gap: 32px;
  flex-wrap: wrap;
}
.collection-card {
  width: 300px;
  background: #fff;
  border: 1.5px solid #eee;
  box-sizing: border-box;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: box-shadow 0.2s, border-color 0.2s;
  padding: 24px 18px 18px 18px;
}
.collection-card:hover {
  box-shadow: 0 8px 24px rgba(60,40,80,0.08);
  border-color: #222;
}
.collection-card-img-link {
  width: 220px;
  height: 100%;
  display: block;
  margin-bottom: 24px;
  overflow: hidden;
}
.collection-card-img-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.collection-card-title-link {
  display: block;
  text-align: center;
  color: #222;
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1.2px;
  margin-top: 0;
  margin-bottom: 2px;
  transition: color 0.2s;
}
.collection-card-title-link:hover {
  color: #764ba2;
  text-decoration: underline;
}
@media (max-width: 950px) {
  .collection-cards-wrap { gap: 20px; }
  .collection-card { width: 96vw; max-width: 350px; }
}
.ds-wrap {
  max-width: 1200px;
  margin: 48px auto 0;
  padding: 0 24px;
}
.ds-main-flex {
  display: flex;
  gap: 25px;
  justify-content: space-between;
}
.ds-media-left {
  width: 62%;
  display: flex;
  flex-direction: column;
}
.ds-video-main {
  width: 100%;
  height: 750px;
  aspect-ratio: 1/1;
  background: #222;
  position: relative;
  border-radius: 0;
  overflow: hidden;
}
.ds-video-main video, .ds-video-main iframe {
  width: 100%;
  height: 900px;
  object-fit: cover;
  display: block;
}
.ds-imgs-right {
  width: 38%;
  display: flex;
  flex-direction: column;
  gap: 0px;
  justify-content: space-between;
}
.ds-imgs-right .ds-img-half {
  width: 100%;
  aspect-ratio: 0;
  overflow: hidden;
  border-radius: 0;
}
.ds-imgs-right .ds-img-half img {
  width: 100%;
  height: 365px;
  object-fit: cover;
  display: block;
}

.ds-product-box {
  width: 100%;
  margin: 36px 0 0;
  background: #fff;
  border-radius: 0;
  border: 1px solid #eee;
  padding: 36px 40px 32px 40px;
  box-sizing: border-box;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.ds-prod-collection {
  color: #888;
  font-size: 11px;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1.1px;
  margin-bottom: 2px;
}
.ds-prod-title {
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 5px;
}
.ds-prod-desc {
  font-size: 13px;
  color: #242424;
  margin-bottom: 5px;
}
.ds-prod-bullets {
  font-size: 13px;
  color: #222;
  margin-bottom: 8px;
  padding-left: 16px;
}
.ds-prod-bullets li {
  margin-bottom: 2px;
}

.ds-prod-bottom-row {
  display: flex;
  align-items: center;
  gap: 24px;
  justify-content: space-between;
  margin-top: 12px;
}
.ds-findstore-link {
  font-size: 14px;
  color: #222;
  font-weight: 700;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 5px;
  letter-spacing: 1px;
  background: none;
  border: none;
  cursor: pointer;
  transition: color 0.2s;
}
.ds-findstore-link:hover { color: #764ba2; text-decoration: underline; }
.ds-findstore-link svg { vertical-align: middle; margin-right: 4px; }

.ds-btn-center-row {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 26px 0 0 0;
}
.ds-prod-btn {
  width: 400px;
  height: 62px;
  background: #222;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  text-align: left;
  border: none;
  outline: none;
  border-radius: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 18px;
  letter-spacing: 0.5px;
  transition: all 0.18s;
  justify-content: flex-start;
  text-decoration: none;
}
.ds-prod-btn span:last-child {
  margin-left: auto;
  font-weight: 400;
  font-size: 12px;
  opacity: 0.75;
}
.ds-prod-btn:hover {
  background: #fff;
  color: #222;
  border: 1.5px solid #222;
}
@media (max-width: 950px) {
  .ds-main-flex { flex-direction: column; gap: 22px; }
  .ds-media-left, .ds-imgs-right { width: 100%; }
  .ds-product-box { padding: 24px 10px 18px 14px; }
  .ds-btn-center-row { margin-top: 18px; }
  .ds-prod-btn { width: 98vw; max-width: 400px; }
}
.dynamic-btn-section-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 140px;
}
.dynamic-btn-main {
  width: 400px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dynamic-btn-black {
  width: 100%;
  height: 100%;
  background: #222;
  color: #fff;
  border: none;
  outline: none;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: all 0.18s;
  text-align: center;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dynamic-btn-black:hover {
  background: #fff;
  color: #222;
  border: 1.5px solid #222;
}