/** Shopify CDN: Minification failed

Line 3904:0 Unexpected "<"
Line 4016:4 Unexpected "<"
Line 4068:146 Unterminated string token

**/
.skip-to-content-link {
  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;
}

.skip-to-content-link:focus-visible {
  z-index: 99 !important;
  width: auto;
  height: auto;
  clip: auto;
}

.shopify-challenge__container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 70vh;
  align-items: center;
  padding: 30px;
}

.shopify-challenge__container .shopify-challenge__button {
  margin-top: 20px;
}

.shopify-challenge__container .shopify-challenge__message,
.shopify-challenge__container .shopify-challenge__errors {
  text-align: center;
  padding-bottom: 10px;
}

.shopify-policy__container {
  max-width: 1000px;
  padding-top: 50px;
  padding-bottom: 50px;
}

.shopify-policy__title {
  padding-bottom: 20px;
}

.tooltip {
  position: absolute;
  inset-block-end: calc(100% + 15px);
  background: var(--text_color);
  color: var(--body_background);
  width: max-content;
  padding: 4px 10px;
  border-radius: 4px;
  transform: translate(-50%) scale(0.8);
  left: 50%;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.5s cubic-bezier(0.3, 1, 0.3, 1), opacity 0.5s cubic-bezier(0.3, 1, 0.3, 1);
}

.tooltip:after {
  content: '';
  position: absolute;
  inset-inline-start: 50%;
  transform: translateX(-50%);
  border-color: var(--text_color) transparent;
  border-style: solid;
  border-width: 10px 10px 0;
  inset-block-end: -7px;
  display: block;
  width: 0;
}

swiper-nav,
[is='hover-icons'],
[is='hover-link'],
[is='hover-li'],
[is='store-locator-context'],
[is='localization-context'] {
  /* transition: transform 0.1s linear, color 0.1s linear, background 0.15s linear; */
  will-change: transform;
  transition: transform 0.2s ease-out;
}

.king_cursor {
  display: none;
}

.payment-icons-item svg {
  width: 30px;
  height: auto;
}

/* common animation frames start */

@keyframes cross_animate {

  0%,
  100% {
    clip-path: inset(0 0 0 0);
  }

  42% {
    clip-path: inset(0 0 0 100%);
  }

  43% {
    clip-path: inset(0 100% 0 0);
  }
}

@keyframes icon_bounce {
  0% {}

  100% {
    transform: translateY(-50%);
  }
}

/* common animation frames end */

/* form error css start */

.form--message {
  padding: 10px 15px;
  border-radius: 6px;
  margin-bottom: 20px;
  font-size: var(--small_text);
}

.form--message.error {
  background: rgba(255, 0, 0, 0.05);
  color: var(--color_error_text);
}

.form--message.error * {
  color: var(--color_error_text);
}

.form--message.error.no-bg,
.form--message.success.no-bg {
  background: transparent;
}

.form--message.success {
  background: rgba(0, 128, 0, 0.05);
  color: var(--color_success_text);
}

.form--message.success * {
  color: var(--color_success_text);
}

.form--message ul li {
  margin-bottom: 2px;
}

/* form error css end */

/* social icon css start */

.social--icons-link {
  display: flex;
  width: 30px;
  height: 30px;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.social--icons-link svg {
  width: 20px;
  height: auto;
  display: block;
}

/* social icon css end */

/* empty card css start  */

.not-found-box {
  min-height: 80vh;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.empty--card {
  width: 100%;
  text-align: center;
  padding: 20px;
  min-height: 400px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--heading_color);
}

.empty--card.with-background {
  background: var(--body_alternate_background);
  border-radius: var(--card_radius);
}

.empty--card svg {
  width: 50px;
  height: auto;
  margin-bottom: 15px;
}

.empty--card-heading {
  margin-bottom: 15px;
}

.empty--card-desc {
  font-size: var(--medium_text);
  margin-bottom: 20px;
}

/* empty card css end  */

/* page banner css start  */

.page--banner {
  position: relative;
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  height: var(--banner_height);
  overflow: hidden;
  border-radius: var(--card_radius);
}

.no-container .page--banner {
  border-radius: 0;
}

.page--banner.overlay-content .page--banner-content {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 20px 0;
  overflow: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}

.page--banner.overlay-content .page--banner-content>div {
  margin-top: auto;
  margin-bottom: auto;
}

.page--title+.page--desc {
  margin-top: 20px;
}

.page--content {
  padding: 20px 0;
}

.page--banner-content .page--title {
  color: var(--image_overlay_heading);
}

.page--banner-content .page--desc,
.page--banner-content .page--desc * {
  color: var(--image_overlay_text);
}

/* page banner css end  */

/* common media css start */

.placeholder-svg {
  display: block;
  fill: var(--text_color);
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
}

.media-wrapper {
  position: relative;
  overflow: hidden;
}

.media {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding-bottom: var(--image_ratio);
  background: var(--image_bg);
}

.media-fixed {
  padding-bottom: 0;
  height: 100%;
}

.media img,
.media .placeholder-svg,
.media video,
.media iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  object-position: center;
}

.media-overlay:after {
  content: '';
  background: rgba(var(--image_overlay_background), var(--image_overlay_opacity));
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 1;
}

.animate-hover img {
  transition: 0.6s ease;
}

deferred-media,
deferred-media-video {
  display: block;
  width: 100%;
  height: 100%;
}

/* common media css end */

/* section common css start */

.section-wrapper {
  width: 100%;
  background: var(--body_background);
  color: var(--text_color);
}

.section-gradient {
  background: var(--body_background_gradient);
}

.section-spacing {
  padding-top: var(--top_spacing);
  padding-bottom: var(--bottom_spacing);
  /* isolation: isolate; */
}

.section--header {
  padding-bottom: 20px;
  display: block;
  position: relative;
}

.section--header.with--arrow {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 20px;
}

.section--header.with-button {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 20px;
}

.section--header.with--arrow.with-button {
  grid-template-columns: 1fr auto auto;
}

.section--header.with-button .section--btn {
  padding-bottom: 0;
  text-align: center;
}

.section--btn {
  padding-bottom: 20px;
}

.section--description {
  padding-top: 6px;
}

.highlight-color {
  color: var(--highlight_color);
}

.outline--text,
.outline--filled {
  position: relative;
  display: inline-block;
  text-decoration: none;
  -webkit-text-stroke: 1px var(--highlight_color);
  background: linear-gradient(var(--highlight_color) 0 100%) left / 0 no-repeat;
  color: transparent !important;
  background-clip: text;
  transition: 0.8s ease;
}

.outline-animate {
  background-size: 100%;
}

.text-background-cover {
  background-repeat: no-repeat;
  color: var(--highlight_color);
  background-image: linear-gradient(45deg, var(--highlight_background), transparent);
  transition: background-size 0.7s cubic-bezier(0.7, 0, 0.3, 1);
  background-size: 0 100%;
}

.section-in-view .text-background-cover {
  background-size: 100% 100%;
}

.background--overlay-image,
.background--overlay-image img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
  pointer-events: none;
}

.background--overlay-image:after {
  content: '';
  background: rgba(var(--image_overlay_background), var(--image_overlay_opacity));
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}

.image-overlay-heading,
.image-overlay-heading * {
  color: var(--image_overlay_heading);
}

.image-overlay-description {
  color: var(--image_overlay_text);
}

.block-gradient {
  background: var(--body_background_gradient);
}

/* section common css end */

/* button css start */

.product-checkout-buttons .shopify-payment-button__button--branded {
  height: auto;
}

.button,
button.shopify-payment-button__button,
button.shopify-payment-button__button--hidden,
.shopify-challenge__button {
  text-decoration: none;
  text-align: center;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  min-width: 120px;
  min-height: 46px;
  padding: 12px 20px 12px 20px;
  line-height: 1;
  cursor: pointer;
  border-radius: var(--button_radius);
  background: var(--button_background);
  border: 1px solid var(--button_border);
  color: var(--button_text);
  font-family: var(--button_font_family);
  font-weight: var(--button_font_weight);
  font-style: var(--button_font_style);
  text-transform: var(--button_text_transform);
  overflow: hidden;
  transition: 0.2s ease-out;
  z-index: 0;
}

shopify-accelerated-checkout,
shopify-accelerated-checkout-cart {
  --shopify-accelerated-checkout-button-block-size: 46px;
  --shopify-accelerated-checkout-button-border-radius: var(--button_radius);
  --shopify-accelerated-checkout-button-box-shadow: none;
}

.button.animated {
  padding-left: 43px;
  justify-content: flex-start;
}

.btn-icon {
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid var(--button_text);
  color: var(--button_text);
  border-radius: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.25s ease-out;
  opacity: 0;
  visibility: hidden;
}

.button.animated .btn-icon {
  opacity: 1;
  visibility: visible;
}

.btn-icon svg {
  width: 8px;
  height: auto;
  display: block;
  transition: all 0.25s ease-out;
  position: absolute;
}

.button--hover-text {
  position: absolute;
  left: 15px;
  overflow: hidden;
  color: var(--button_text_hover);
  opacity: 0;
  display: flex;
  top: 50%;
  transform: translateY(-50%);
}

.button.secondary--button,
button.shopify-payment-button__button,
button.shopify-payment-button__button--hidden {
  background: var(--secondary_button_background);
  border: 1px solid var(--secondary_button_border);
  color: var(--secondary_button_text);
}

.button.secondary--button .btn-icon {
  border: 1px solid var(--secondary_button_text);
  color: var(--secondary_button_text);
}

.button.secondary--button .button--hover-text {
  color: var(--secondary_button_text_hover);
}

.button.small-button .button--hover-text {
  left: 12px;
}

.button.large-button .button--hover-text,
.button.medium-button .button--hover-text {
  left: 20px;
}

.button--hover-text span {
  transform: translateY(18px);
  display: inline-flex;
}

.outline-button {
  background: transparent;
  border-color: var(--button_border);
  color: var(--button_border);
}

.shopify-challenge__button {
  height: 46px;
}

.shopify-cleanslate button,
.shopify-cleanslate div[role='button'] {
  min-height: 64px !important;
  height: auto !important;
  border-radius: var(--button_radius) !important;
}

.cart__dynamic-checkout-buttons .shopify-cleanslate li,
.cart__dynamic-checkout-buttons .shopify-cleanslate li {
  flex-basis: 100% !important;
  height: auto !important;
}

.shopify-cleanslate button span,
.shopify-cleanslate div[role='button'] span {
  color: inherit !important;
}

button.shopify-payment-button__button--hidden {
  display: none !important;
}

.button.button-block {
  width: 100%;
  min-width: auto !important;
  justify-content: center;
}

.button.small-button {
  min-width: 80px;
  min-height: 34px;
  font-size: 10px;
  padding: 10px 15px;
}

.button.animated.small-button {
  padding-left: 36px;
}

.button.animated.large-button {
  padding-left: 65px;
}

.small-button .btn-icon {
  left: 10px;
}

.small-button .btn-icon:before {
  left: calc(100% - 28px);
}

.button.medium-button,
button.shopify-payment-button__button {
  min-height: 56px;
  font-size: 16px;
}

shopify-accelerated-checkout,
shopify-accelerated-checkout-cart {
  --shopify-accelerated-checkout-button-block-size: 62px;
}

.button.medium-button.animated {
  padding-left: 60px;
  padding-right: 34px;
}

.button.medium-button .btn-icon {
  width: 24px;
  height: 24px;
  left: 26px;
}

.button.large-button {
  /* min-width: 240px; */
  min-height: 66px;
  font-size: 18px;
}

.button.large-button .btn-icon {
  width: 30px;
  height: 30px;
  left: 20px;
}

.button-group {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
}

.btn-loader,
.loading>span:first-child {
  display: none;
}

.loading .btn-loader {
  display: inline;
}

.btn-loader svg {
  width: 100%;
  height: 100%;
}

.arrow--btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 44px;
  height: 44px;
  background: var(--button_background);
  color: var(--button_text);
  border: 1px solid var(--button_border);
  border-radius: 50%;
  overflow: hidden;
}

.arrow--btn.outline--btn {
  background: transparent;
  border-color: var(--button_text);
}

.arrow--btn .arrow--icon {
  transition: 0.3s ease;
  width: 14px;
  height: auto;
}

.arrow--btn.large-width {
  width: 65px;
  height: 65px;
}

.arrow--btn.large-width .arrow--icon {
  width: 24px;
}

.arrow--btn.medium-width {
  width: 60px;
  height: 60px;
}

.arrow--btn.medium-width .arrow--icon {
  width: 16px;
}

.arrow--btn.small-width {
  width: 34px;
  height: 34px;
}

.arrow--btn.small-width .arrow--icon {
  width: 12px;
}

.arrow--circle {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.link-arrow {
  display: flex;
  align-items: center;
  gap: 10px;
}

.link-arrow svg {
  width: 16px;
  height: auto;
  display: block;
  transition: 0.5s ease;
}

.link-button {
  background: transparent;
  border: none;
  text-decoration: underline;
  min-height: auto;
}

.medium-button.link-button,
.large-button.link-button,
.small-button.link-button {
  min-height: auto;
  padding: 0;
}

/* button css end */

/* swiper button css */

.swiper-button:after {
  display: none;
}

.swiper-button {
  background: var(--slider_icon_background);
  width: var(--slider_arrow_width);
  height: var(--slider_arrow_width);
  color: var(--slider_icon_color);
  border-radius: var(--slider_navigation_radius);
  margin: 0;
  z-index: 1;
  border: 1px solid var(--slider_arrow_border);
}

.swiper-button-prev {
  transform: rotate(180deg);
}

.swiper-button svg {
  width: var(--slider_icon_width);
  height: 14px;
  margin: 0 auto;
  display: flex;
  position: absolute;
  top: auto;
  left: 7px;
  transform: translateX(0);
}

.swiper-button svg .draw-arrow,
.swiper-button svg .tail {
  stroke-width: 1;
  fill: none;
  stroke-dasharray: 22;
  stroke-dashoffset: 0;
  transform: matrix(1, 0, 0, 1, 0, 0);
  transition: 1s all ease;
}

.swiper--button-wrapper .swiper-button {
  bottom: 22px;
  top: auto;
}

.swiper--button-wrapper .swiper-button-prev {
  left: 15px;
}

.swiper--button-wrapper .swiper-button-next {
  left: calc(15px + var(--slider_arrow_width) + 10px);
}

.swiper--button-wrapper.right-position .swiper-button-next {
  left: unset;
  right: 15px;
}

.swiper--button-wrapper.right-position .swiper-button-prev {
  left: unset;
  right: calc(15px + var(--slider_arrow_width) + 10px);
}

.swiper--button-wrapper.right-position.no-gap .swiper-button-next {
  left: unset !important;
  right: 22px !important;
}

.swiper--button-wrapper.right-position.no-gap .swiper-button-prev {
  left: unset !important;
  right: calc(22px + var(--slider_arrow_width) + 10px) !important;
}

.swiper--custom-buttons {
  position: relative;
  gap: 12px;
}

.swiper--custom-buttons .swiper-button {
  position: relative;
  top: auto;
  right: 0;
  left: 0;
}

.swiper-pagination.swiper-pagination-bullets {
  display: flex;
  align-items: center;
  justify-content: center;
  top: unset;
  bottom: 20px;
  z-index: 1;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
}

.swiper-pagination.swiper-pagination-horizontal .swiper-pagination-bullet {
  background: transparent;
  opacity: 1;
  transition: 0.5s ease;
  border: 2px solid transparent;
  vertical-align: middle;
  margin: 0 2px;
  padding: 10px;
  position: relative;
}

.swiper-pagination.swiper-pagination-horizontal .swiper-pagination-bullet:after {
  content: '';
  background: #fff;
  width: 10px;
  height: 10px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50px;
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 12px;
  height: 12px;
  background: transparent;
  border: 2px solid var(--slider_arrow_border);
}

.swiper-button.button-circle {
  border-radius: 50px;
}

.swiper-button.button-circle svg {
  left: 50%;
  width: auto;
  transform: translateX(-50%);
}

/* swiper button css end */

/* quantity button css start */

.quantity--inner {
  display: inline-flex;
  align-items: center;
  height: 52px;
  border: 1px solid var(--text_color);
  border-radius: var(--form_radius);
}

.form-input-small .quantity--inner {
  height: 42px;
}

.form-input-small .quantity-button {
  min-width: 40px;
  max-width: 40px;
}

.quantity-button {
  background: transparent;
  min-width: 50px;
  max-width: 50px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.quantity-input {
  padding: 4px;
  max-width: 40px;
  min-height: 100%;
  text-align: center;
  border: 0;
  color: var(--text_color);
  font-size: var(--text);
  background: transparent;
  border-radius: 0;
}

.quantity-input:focus-visible {
  outline: 0;
}

.quantity-button svg {
  width: 10px;
  height: auto;
}

.small-quantity .quantity--inner {
  height: 46px;
}

.small-quantity .quantity-button {
  min-width: 40px;
  max-width: 40px;
}

.xsmall-quantity .quantity--inner {
  height: 38px;
}

.xsmall-quantity .quantity-input {
  padding: 0;
  max-width: 30px;
}

.xsmall-quantity .quantity-button {
  min-width: 28px;
  max-width: 28px;
}

/* quantity button css end */

/* custom checkbox/radio css start */

.custom-checkbox,
.radio-box {
  position: relative;
  padding-left: 30px;
}

.checkmark-input {
  border: 0;
  padding: 0;
  min-height: auto;
  position: absolute;
  opacity: 1;
  left: 0;
  top: 1px;
  margin: 0;
  appearance: none;
  -webkit-appearance: none;
  background: 0;
  width: 20px;
  height: 20px;
  cursor: pointer;
  border: 1px solid var(--text_color);
  border-radius: 2px;
}

.checkmark {
  position: absolute;
  left: 0;
  top: 1px;
  height: 20px;
  width: 20px;
  transform: scale(0);
  transform-origin: center center;
  transition: transform 0.2s ease-in 25ms;
  pointer-events: none;
}

.radio-box .checkmark {
  border-radius: 100%;
}

.checkmark-input:checked~.checkmark {
  background-color: var(--text_color);
  transform: scale(0.7);
}

.checkmark-input:checked~.checkmark:after {
  display: block;
}

.radio-box .checkmark-input:checked~.checkmark {
  background: var(--text_color);
}

.radio-box .checkmark-input {
  border-radius: 100%;
}

.custom-checkbox label {
  margin-bottom: 0;
}

/* custom checkbox/radio css end */

/* pagination css start */

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 40px 0;
  padding-bottom: 20px !important;
}

.pagination-item {
  padding: 5px;
}

.pagination-link,
.pagination-text {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--body_background);
  border: 1px solid var(--border_color);
  color: var(--text_color);
  font-size: 14px;
  transition: 0.2s ease;
  border-radius: 50px;
}

.pagination-item.active .pagination-text {
  background: var(--text_color);
  color: var(--body_background);
  border-color: var(--text_color);
}

.pagination-icon {
  font-size: 12px;
  color: var(--text_color);
}

.pagination-item.disabled .pagination-icon {
  opacity: 0.8;
}

/* pagination css end */

/* Product Filter CSS */
.collection-products--count {
  font-size: var(--h6);
  font-weight: normal;
}

.collection-products--text {
  font-size: var(--medium_text);
  font-weight: normal;
}

/* Product Filter CSS */

/* custom select / localization form */

.select-box {
  position: relative;
}

.select-box:after {
  border-bottom-style: solid;
  border-bottom-width: 2px;
  border-right-style: solid;
  border-right-width: 2px;
  content: '';
  display: inline-block;
  height: 8px;
  right: 20px;
  position: absolute;
  top: calc(50% - 4px);
  width: 8px;
  border-color: var(--form_border);
  filter: none;
  transform: rotate(45deg);
  border-radius: 2px;
}

.custom-select {
  display: inline-flex;
  position: relative;
  padding: 10px 0;
}

.custom-select.fullwidth {
  display: block;
  padding: 0;
}

.custom-select-content {
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  max-width: 250px;
  width: max-content;
  background: var(--form_background);
  box-shadow: 0 4px 6px #00000014;
  max-height: 350px;
  height: max-content;
  border-radius: 6px;
  text-align: start;
  transition: all 0.25s cubic-bezier(0.104, 0.204, 0.492, 1);
  overflow: auto;
  z-index: 3;
}

.custom-select.fullwidth .custom-select-content {
  width: 100%;
  max-width: 100%;
}

.custom-select-content.right-position {
  left: unset;
  right: 0;
}

.custom-select-content.top-position {
  bottom: 100%;
  top: unset;
}

.custom-select-item button {
  background-color: transparent;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  font-size: 14px;
  color: var(--form_text);
  text-align: left;
  padding: 10px;
  border-radius: 8px;
  transition: background-color 0.3s ease;
}

.custom-select-list {
  padding: 10px 0;
}

.custom-select-item {
  position: relative;
  padding: 3px 20px;
}

.custom-select-item label {
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.custom-select-button {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  user-select: none;
  cursor: pointer;
}

.custom-select.fullwidth .custom-select-button {
  display: flex;
  justify-content: space-between;
}

.custom-select-text {
  display: flex;
  align-items: center;
}

.custom-select-arrow {
  line-height: 0;
  margin-left: 8px;
  display: flex;
  color: inherit;
  width: 12px;
}

.custom-select-arrow svg {
  width: 100%;
  height: auto;
}

.custom-select-top .custom-select-list {
  top: auto;
  bottom: 100%;
}

.custom-select-active .custom-select-list {
  opacity: 1;
  visibility: visible;
}

.localization--current-locale {
  display: flex;
  align-items: center;
  gap: 8px;
}

.localization--current-locale svg {
  width: 14px;
  height: auto;
  display: block;
}

.localization-form-wrapper {
  padding: 10px 20px;
  padding-bottom: 60px !important;
  max-width: 100%;
  margin: 0 auto;
}

.localization-form-box+.localization-form-box {
  margin-top: 20px;
}

.localization--heading-box {
  padding-bottom: 20px;
}

.localization-form-heading {
  padding-bottom: 6px;
}

.localization-form-popup .popup-content,
.localization-form-popup .popup-content-body {
  overflow: visible;
}

.localization-form-popup .popup-dialog {
  overflow: auto;
}

/* custom select / localization form end */

/* variants css start */

option.disabled {
  color: #0000003b;
}

.product--variants-title {
  padding-bottom: 10px;
}

.product--variants-title [data-selected-variant] {
  opacity: 0.7;
}

.product--variants-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.variant--item {
  display: flex;
  align-items: center;
  position: relative;
  height: 48px;
  min-width: 60px;
}

.product--variants-list.color-option .variant--item {
  width: 32px;
  height: 33px;
  min-width: 32px;
  border-radius: 4px;
  border: 1px solid transparent;
}

.product--variants-list.color-circle .variant--item,
.product--variants-list.color-circle .variant-item-name {
  border-radius: 100%;
}

.product--variants-list input {
  position: absolute;
  cursor: pointer;
  z-index: 1;
  width: 100%;
  height: 100%;
  left: 0;
  padding: 0;
  border: 0;
  appearance: none;
  -webkit-appearance: none;
  min-height: auto;
  margin: 0;
  background: transparent;
}

.variant-item-name {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  position: relative;
  border: 1px solid var(--text_color);
  color: var(--text_color);
  background: var(--product_card_background);
  transition: 0.2s ease-out;
  margin: 0;
  border-radius: 4px;
  padding: 4px 16px;
  font-size: var(--small_text);
}

.product--variants-list.color-option .variant-item-name {
  border: 0;
  padding: 0;
  background-color: var(--swatch_color);
  box-shadow: 0px 1px 0px 0px #a8a3a336;
}

.product--variants-list.variants-image .variant-item-name {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  /* background-color: var(--image_bg); */
}

.variant--item .disabled+.variant-item-name {
  opacity: 0.8;
  pointer-events: none;
}

.product--pricing .product--cut-price span.money {
  text-decoration: line-through !important;
}

.variant--item .disabled+.variant-item-name:before {
  content: '';
  text-decoration: line-through;
  position: absolute;
  width: 100%;
  height: 100%;
  background: var(--text_color);
  top: 0;
  left: 0;
  z-index: 1;
  clip-path: polygon(3% 0, 100% 100%, 99% 100%, 2% 0);
}

.product--variants-list input:checked+.variant-item-name {
  background-color: var(--text_color);
  color: var(--product_card_background);
}

.product--variants-list.color-option .variant--item.active,
.product--variants-list.color-option .variant--item:hover,
.product--variants-list.color-option .variant--item:has(.productOption:checked) {
  border-color: var(--text_color);
  padding: 4px;
}

.product--variants-list.color-option .variant--item:has(.productOption:checked) .variant-item-name {
  background-color: var(--swatch_color);
}

.product--variants-list.color-option.color-square .variant--item.active,
.product--variants-list.color-option.color-square .variant--item:hover {
  padding: 2px;
}

.product-size-variant-list {
  position: absolute;
  bottom: 0;
  padding: 4px 8px;
  width: 100%;
  transition: opacity .35s, transform .35s, -webkit-transform .35s;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  background: rgba(var(--image_overlay_background), 10%);
  -webkit-backdrop-filter: blur(100px);
  backdrop-filter: blur(100px);
  opacity: 0;
}

.product-size-variant-list .product-variant-item {
  color: var(--image_overlay_text);
  font-size: var(--small_text);
}

/* variants css end */

/* product card css start */

.product--card.swiper-slide {
  padding: 0 5px;
}

.product--card-inner.product-background-enabled {
  background: var(--product_card_background);
  border-radius: var(--product_card_radius);
  overflow: hidden;
}

.product--card-inner.product-border-enabled {
  border: 1px solid var(--product_card_border);
  border-radius: var(--product_card_radius);
  overflow: hidden;
}

.product--card-image {
  overflow: hidden;
  border-radius: var(--product_card_radius);
  background-color: var(--image_bg);
  transition: 0.3s;
}

.product--card-inner.product-background-enabled .product--card-image,
.product--card-inner.product-border-enabled .product--card-image {
  border-radius: 0;
}

.product--card-badges {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: absolute;
  top: 15px;
  left: 15px;
}

.product--badge {
  text-transform: uppercase;
  padding: 6px 8px;
  line-height: 1;
  border-radius: 4px;
  font-size: var(--small_text);
}

.product--badge.sale {
  color: var(--sale_badge_text_color);
  background: var(--sale_badge_bg);
}

.product--badge.custom {
  color: var(--custom_badge_text_color);
  background: var(--custom_badge_bg);
}

.product--badge.preorder {
  color: var(--preorder_badge_text_color);
  background: var(--preorder_badge_bg);
}

.product--badge.sold-out {
  color: var(--soldout_badge_text_color);
  background: var(--soldout_badge_bg);
}

.product--badge.discount {
  color: var(--discount_price_text);
  background: var(--discount_price_background);
}

.product-quickview-button {
  position: absolute;
  top: 15px;
  right: 15px;
  transition: 0.3s ease-in-out;
}

.product--icon {
  width: 32px;
  height: 32px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--heading_color);
  color: var(--product_card_background);
}

.product--icon .quick--view-icon {
  width: 16px;
  height: auto;
}

.product--icon span {
  display: flex;
  align-items: center;
  justify-content: center;
}

.product--icon span .cart--icon {
  width: 15px;
}

.product--card-detail {
  overflow: hidden;
  position: relative;
  padding: 10px 0;
}

.product-background-enabled .product--card-detail,
.product-border-enabled .product--card-detail {
  padding: 10px 15px;
}

.product--card-detail-inner {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  position: relative;
  z-index: 1;
}

.product--card-detail-content {
  display: grid;
  gap: 4px;
}

.product--title {
  display: block;
}

.product--pricing {
  display: flex;
  align-items: center;
  gap: 4px 8px;
  flex-wrap: wrap;
}

.product--pricing.vertical-view {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 4px;
}

.product--pricing span {
  display: inline-block;
  vertical-align: middle;
  font-family: var(--body_font_family);
}

.product--cut-price {
  opacity: 0.8;
}

.product-discount-item span,
.total-discount-item span:last-child {
  display: inline-block;
  background: var(--discount_price_background);
  color: var(--discount_price_text);
  padding: 4px 8px;
  font-size: 11px;
  line-height: 1.2;
  border-radius: 4px;
}

.product--card-detail-button {
  display: none;
}

.product--card .product-checkout-buttons {
  padding-bottom: 0;
  grid-template-columns: 1fr;
}

.product--variant-picker-list {
  position: absolute;
  bottom: 0;
  left: 7px;
  right: 7px;
  background: #fffffff2;
  /* backdrop-filter: blur(10px); */
  transition: 0.3s ease-in-out;
  transform: translateY(110%);
  padding: 25px 25px 5px;
  border-radius: var(--product_card_radius);
  max-height: 83%;
  overflow: auto;
}

.product--variant-picker-list .product--options {
  padding-bottom: 15px;
}

.product--variant-picker-list .variant--item {
  height: 35px;
  min-width: 45px;
}

.product--variant-picker-list .product--variants-list.color-option .variant--item {
  width: 26px;
  min-width: 26px;
  height: 26px;
}

.product--card-detail-button.product-addtocart-btn {
  position: absolute;
  right: 20px;
  bottom: 30px;
}

/* product card css end */

/* horizontal product css start */

.horizontal--product-card {
  background: var(--body_alternate_background);
  border-radius: var(--product_card_radius);
  padding: 8px;
  padding-right: 20px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 25px;
  align-items: center;
  border: 1px solid transparent;
}

.horizontal--product-card+.horizontal--product-card {
  margin-top: 15px;
}

.horizontal--product-card.swiper-slide {
  margin-top: 0 !important;
}

.horizontal--product-image {
  display: block;
  border-radius: var(--product_card_radius);
  width: 90px;
}

.horizontal--product-card .product--pricing {
  margin-top: 3px;
}

.product--view-detail {
  padding-top: 5px;
}

/* horizontal product css end */

/* card style css start */

.card--image {
  border-radius: var(--card_radius);
}

.card--title {
  padding-top: 10px;
}

/* card style css end */

/* product detail css start */

.product--variants-wrapper,
.product--description,
.product--active-users,
.size-chart,
.product--pickup-availability[available],
.quantity-main-product,
.product-checkout-buttons,
.product--social-share,
.custom-icons-box,
.product-inventory,
.product-payment-icons,
.product--options,
.product--custom-content,
.product--custom-liquid,
.product-query-form,
.product--recommendations,
.shopify-app-block,
.recipient-form--wrapper .custom-checkbox {
  padding-bottom: 24px;
}

.product-title-heading {
  padding-bottom: 5px;
}

.price-wrapper {
  padding-bottom: 10px;
}

.product--custom-content-heading,
.size-chart-heading {
  padding-bottom: 10px;
}

.product--installment-form shopify-payment-terms {
  padding-bottom: 10px;
  display: block;
}

/* 
form.installment {
    padding-bottom: 20px;
} */

.size-chart-block {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.social--share-with-help {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 30px;
}

.product-checkout-buttons {
  display: grid;
  grid-template-columns: 1fr;
  align-items: flex-start;
  gap: 10px;
}

.product-checkout-buttons.dynamic-button-enable {
  grid-template-columns: 1fr 1fr;
}

.product-grid--right .product-checkout-buttons.dynamic-button-enable .button {
  min-height: 55px !important;
}

.product--submit-btn-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.sticky--add-to-cart-wrapper .sticky--product-buttons .product-checkout-buttons-outer {
  width: 100%;
}

.product--submit-btn-loader svg {
  width: 30px;
  height: 20px;
  transform: scale(1.5);
}

.recipient-checkbox {
  margin-top: 2px;
}

/* custom icon css start */

.custom-icons-list {
  row-gap: 12px;
}

.custom-icons-item {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
  margin-right: 40px;
}

.custom-icons-icon {
  width: 20px;
  height: 20px;
}

.custom-icons-icon svg {
  width: 100%;
  height: auto;
}

.custom-icons-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* custom icon css end */

/* product inventory css start */

.product-inventory-text {
  display: inline-block;
  border: 1px solid transparent;
  line-height: initial;
  padding: 0 8px 0 16px;
  border-radius: 30px;
  position: relative;
}

.product-inventory-text.in-stock {
  border-color: var(--color_success_text);
  color: var(--color_success_text);
}

.product-inventory-text.sold-out {
  border-color: var(--color_error_text);
  color: var(--color_error_text);
}

.product-inventory-text.low-stock {
  border-color: var(--color_warning_text);
  color: var(--color_warning_text);
}

.product-inventory-text.in-stock:after {
  background-color: var(--color_success_text);
}

.product-inventory-text.sold-out:after {
  background-color: var(--color_error_text);
}

.product-inventory-text.low-stock:after {
  background-color: var(--color_warning_text);
}

.product-inventory-text:after {
  content: '';
  background: transparent;
  width: 9px;
  height: 9px;
  position: absolute;
  left: 4px;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
}

/* product inventory css end */

/* pickup availability css start */

.pickup--availability-content {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  background: var(--card_background);
  padding: 15px 20px;
  border-radius: 6px;
}

.pickup--availability-inner p {
  padding-left: 26px;
}

.pickup--availability-inner .pickup--availability-heading {
  padding-bottom: 5px;
}

.pickup-icon {
  position: absolute;
  left: 20px;
  top: 18px;
  width: 16px;
  height: 16px;
  background: var(--text_color);
  color: var(--body_alternate_background);
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pickup-icon svg {
  width: 8px;
}

.pickup-availability-button {
  display: block;
  background: transparent;
  padding-top: 10px;
  text-align: right;
}

/* pickup availability css end */

/* complimentory product css start */

.product--recommendation-wrapper.swiper-wrapper {
  padding: 0;
}

.product--recommendation-header {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  padding-bottom: 12px;
}

.swiper-pagination.swiper-pagination-product--recommendations {
  position: static;
  transform: unset;
}

.product--recommendation-outer {
  z-index: 0;
}

/*  complimentory product css end */

/* product accordion css start */

.product-accordion--icon {
  width: 24px;
  height: 24px;
  transition: 0.3s ease;
}

.product-accordion--item[open] .product-accordion--icon {
  transform: rotate(45deg);
}

.product-accordion--heading {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  padding: 20px 20px 20px 0;
}

.product-accordion--heading-text {
  padding-right: 15px;
}

.product-accordion--content * {
  /* font-size: var(--medium_text); */
  margin-bottom: 10px;
}

.product-accordion--content {
  padding-bottom: 30px;
}

/* product accordion css end */

/* product image css start */

.product--wrapper.layout_2 .main--product-image-wrapper.thumbnail-enable {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.product--wrapper.layout_2 .main--product-media,
.main--product-thumbnails {
  flex: 0 0 100%;
  max-width: 100%;
}

.product--wrapper.layout_2 media-gallery {
  position: sticky;
  top: var(--dynamic_header_height);
  transition: 0.4s ease;
}

.main--product-thumbnails {
  overflow: hidden;
  display: none;
}

.main--product-thumbnail-list {
  display: flex;
  flex-direction: column;
  height: var(--thumb_height, 800px);
}

.main--product-thumbnail-item {
  overflow: hidden;
  flex: 0 0 33.333%;
  padding-bottom: 10px;
}

.product--wrapper.layout_2 .border-square .main--product-thumbnail-item {
  padding-bottom: 2px;
}

.main--product-thumbnail-img {
  height: 100%;
  overflow: hidden;
  opacity: 0.5;
}

.product--wrapper.layout_2 .border-rounded .main--product-thumbnail-img {
  border-radius: 8px;
}

.main--product-thumbnail-item.swiper-slide-thumb-active .main--product-thumbnail-img {
  opacity: 1;
}

/* product image css end */

/*product detail css end  */

/* blog css start */

.blog--image {
  display: block;
  border-radius: var(--card_radius);
}

.blog--content {
  padding-top: 20px;
}

.blog--info {
  padding-bottom: 15px;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: 10px;
}

.blog--data.comment {
  display: flex;
  align-items: center;
}

.blog--data.comment svg {
  flex: 0 0 14px;
  margin-right: 5px;
}

.blog--desc {
  padding-top: 15px;
}

.blog--content .blog--tags {
  margin-top: 15px;
}

.blog--tags-link {
  display: inline-block;
  background: var(--body_alternate_background);
  color: var(--text_color);
  padding: 2px 10px;
  border-radius: 20px;
}

.blog--button {
  padding-top: 15px;
}

/* blog css end */

/* popup css start */

.popup {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
  opacity: 0;
  transition: opacity 0.15s;
}

.popup.show {
  opacity: 1;
}

.popup-dialog {
  position: relative;
  width: 100%;
  max-width: 900px;
  padding: 20px;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  transition: 0.4s ease-out;
  transform: translateY(100px);
  opacity: 0;
  transition-delay: 0.2s;
}

.popup.show .popup-dialog {
  -webkit-transform: none;
  transform: none;
  opacity: 1;
}

.popup-dialog.small,
.popup-dialog.medium,
.popup-dialog.large {
  max-width: 95%;
}

.popup-dialog.fullwidth {
  max-width: 100%;
  padding: 0;
}

.position-top-left .popup-dialog,
.position-top-center .popup-dialog,
.position-top-right .popup-dialog {
  justify-content: flex-start;
}

.position-bottom-left .popup-dialog,
.position-bottom-center .popup-dialog,
.position-bottom-right .popup-dialog {
  justify-content: flex-end;
}

.position-top-right .popup-dialog,
.position-center-right .popup-dialog,
.position-bottom-right .popup-dialog {
  margin-left: auto;
}

.position-top-center .popup-dialog,
.position-center .popup-dialog,
.position-bottom-center .popup-dialog {
  margin-left: auto;
  margin-right: auto;
}

.popup-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: var(--body_background);
  color: var(--text_color);
  overflow: hidden;
  padding: 6px;
  border-radius: var(--card_radius);
}

.popup-content-body {
  overflow: auto;
}

.popup-close {
  width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  color: var(--text_color);
  background: transparent;
  margin-left: auto;
  border: 1px solid var(--text_color);
  border-radius: 100%;
  position: relative;
}

.popup-close svg {
  width: 12px;
  height: 12px;
  z-index: 1;
}

.product-media-popup .popup-close {
  width: 44px;
  height: 44px;
}

.product-media-popup .popup-close svg {
  width: 16px;
  height: 16px;
}

/* .popup-close:hover svg line {
    animation: cross_animate .5s ease-in-out forwards;
}

.popup-close:hover svg path {
    animation: cross_animate 0.5s ease-in-out forwards;
    animation-delay: 0.1s;
} */

/* popup css end */

/* side drawer css start */

.side-drawer {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 999;
  justify-content: flex-end;
  pointer-events: none;
  display: none;
}

.side-drawer.show {
  pointer-events: all;
}

.close-fullwidth {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background: rgba(var(--page_overlay_background), var(--page_overlay_opacity));
  transition: 0.8s cubic-bezier(0.7, 0, 0.2, 1);
}

.side-drawer.show .close-fullwidth {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}

.side--drawer-panel {
  width: 100%;
  max-height: 100%;
  padding: 20px;
  max-width: 767px;
  transition: 0.5s ease;
  transform: translateX(100%);
}

.side-drawer.show .side--drawer-panel {
  transform: unset;
}

.side--drawer-inner {
  height: 100%;
  background: var(--body_background);
  color: var(--text_color);
  overflow: hidden;
  position: relative;
  border-radius: var(--card_radius);
  display: grid;
  grid-template-rows: auto 1fr;
  height: 100%;
}

.side--drawer-header {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  padding: 25px 25px;
}

.side--drawer-body {
  padding: 0 25px 15px;
  height: 100%;
  overflow-y: auto;
}

close-drawer {
  margin-left: auto;
}

.drawer-close {
  width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid var(--text_color);
  color: var(--text_color);
  border-radius: 100%;
  position: relative;
  transition: 0.5s ease;
}

.drawer-close svg {
  width: 12px;
  height: auto;
  position: relative;
}

.drawer-close:before,
.popup-close:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--text_color);
  transition: all 0.3s ease-in-out;
  border-radius: 80px;
  transform: scale(0);
  z-index: 0;
}

/* side drawer css end */

/* store locator drawer css start */

.store--locator-location-list-item {
  padding: 15px;
  border-radius: var(--card_radius);
  overflow: hidden;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  background: var(--body_alternate_background);
  gap: 25px;
  border: 1px solid transparent;
  transition: all 0.4s linear;
}

.store--locator-location-list-item:hover {
  border-color: var(--border_color);
}

.store--locator-store-image {
  border-radius: var(--card_radius);
  max-width: 170px;
  min-width: 170px;
}

.store--locator-location-list-item+.store--locator-location-list-item {
  margin-top: 20px;
}

.store--locator-store-title {
  padding-bottom: 10px;
}

.store--locator-store-address * {
  margin-top: 0;
}

/* store locator drawer css end */

/* pickup availability drawer css start */

.pickup--availability-info {
  padding-bottom: 30px;
}

.pickup--availability-variant {
  padding-top: 5px;
}

.pickup--availability-list-item {
  padding: 25px;
  background: var(--body_alternate_background);
  border-radius: var(--card_radius);
  border: 1px solid transparent;
  transition: all 0.4s linear;
}

.pickup--availability-list-item+.pickup--availability-list-item {
  margin-top: 18px;
}

.pickup--availability-title {
  padding-bottom: 12px;
}

.pickup--availability-address .strore--phone {
  padding-top: 10px;
  display: block;
}

.pickup--availability-preview {
  padding-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.pickup--availability-preview.pickup--available {
  color: var(--color_success_text);
}

.pickup--availability-preview.pickup--unavailable {
  color: var(--color_error_text);
}

.pickup--availability-preview svg {
  width: 16px;
  height: auto;
}

/* pickup availability drawer css end */

/* quick view drawer css start */

.quickview--side-drawer .side--drawer-body {
  padding: 0;
}

.quickview--side-drawer .drawer-close {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 2;
}

.quickview--drawer-main {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.quickview--drawer-content {
  padding: 20px;
  padding-bottom: 10px;
}

/* newsletter popup css start */

.newsletter-popup--content.image-position-left,
.newsletter-popup--content.image-position-right {
  align-items: center;
  flex-wrap: wrap;
}

.newsletter-popup .popup-close {
  position: absolute;
  right: 5px;
  top: 5px;
}

.newsletter-popup:has(.mewsletter-popup--image) .popup-close {
  right: 15px;
  top: 15px;
}

.mewsletter-popup--image {
  border-radius: var(--card_radius);
  flex: 0 0 100%;
}

.newsletter-popup--text {
  padding: 20px;
  flex-grow: 1;
}

.newsletter-popup--heading {
  padding-bottom: 10px;
}

.newsletter-popup--desc {
  padding-bottom: 25px;
}

/* newsletter popup css end */

/* size chart popup css start */

.size-chart-popup .size-chart-content {
  padding: 30px;
  padding-top: 0;
}

/* size chart popup css end */

/* scroll to top start */

.scroll-to-top {
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  position: fixed;
  bottom: var(--scroll-top-vertical-position, 20px);
  cursor: pointer;
  color: var(--scroll-top-color, #000);
  background: transparent;
  opacity: 0;
  z-index: 1;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(40%);
  transition: 0.3s ease;
}

.scroll-to-top.position-right {
  right: 20px;
}

.scroll-to-top.position-center {
  left: 0;
  right: 0;
  margin: 0 auto;
}

.scroll-to-top.position-left {
  left: 20px;
}

.scroll-to-top.show {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
  transform: none;
}

.scroll-to-top-inner {
  width: 89%;
  height: 89%;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  background: var(--scroll-top-background, #fff);
  border: 1px solid var(--scroll-top-border, #eee);
  z-index: 1;
  color: var(--scroll-top-color);
}

.scroll-to-top-inner svg {
  animation: icon_bounce 1s ease infinite alternate;
}

/* scroll to top end */

button.store--details,
button.localization-form {
  background: transparent;
}

.product--wrapper.layout_2 .main--product-img .shopify-model-viewer-ui__controls-overlay .shopify-model-viewer-ui__controls-area {
  right: auto;
  left: 10px;
}

.product--wrapper .main--product-img .shopify-model-viewer-ui__controls-overlay .shopify-model-viewer-ui__controls-area {
  opacity: 1;
}

#MainContent>section:last-child .section-wrapper {
  box-shadow: 0 20px var(--body_background);
}

.product--card-inner.product-background-none .product--card-detail {
  padding: 6px 4px 16px;
}

/* .pin-spacer .pinned-content {
  overflow: hidden;
} */

@media (min-width: 415px) {

  .popup-dialog.small,
  .popup-dialog.medium,
  .popup-dialog.large {
    max-width: 500px;
  }
}

@media (min-width: 576px) {
  .popup-dialog.medium {
    max-width: 440px;
  }

  .popup-dialog.large {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  #MainContent>section:last-child .section-wrapper {
    box-shadow: 0 50px var(--body_background);
  }

  .popup-dialog.medium {
    max-width: 540px;
  }

  .popup-dialog.large {
    max-width: 740px;
  }

  .newsletter-popup--content.image-position-left,
  .newsletter-popup--content.image-position-right {
    flex-wrap: nowrap;
  }

  .newsletter-popup--content.image-position-left .mewsletter-popup--image,
  .newsletter-popup--content.image-position-right .mewsletter-popup--image {
    flex: 0 0 50%;
  }

  .page--content {
    padding: 40px 0;
  }

  .button-group {
    grid-template-columns: 1fr 1fr;
  }

  .newsletter-popup--text {
    padding: 30px;
  }

  .localization-form-wrapper {
    padding: 20px 30px;
    max-width: 90%;
  }

  .side--drawer-panel {
    padding: 20px;
    max-width: 600px;
  }

  .side--drawer-body {
    padding: 0 45px 30px;
  }

  .side--drawer-header {
    padding-left: 45px;
  }

  .pagination-link,
  .pagination-text {
    width: 44px;
    height: 44px;
    font-size: 16px;
  }

  /* product card css start */
  .product--card.swiper-slide {
    padding: 0 calc(var(--product_card_column_gap) / 2);
  }

  .product--icon {
    width: 42px;
    height: 42px;
  }

  .product--icon .quick--view-icon {
    width: 22px;
  }

  .product-background-enabled .product--card-detail,
  .product-border-enabled .product--card-detail {
    padding: 12px 20px;
  }

  .product--card-detail {
    padding: 16px 0;
  }

  /* product card css end */
  /* product detail css start */
  .product--wrapper.layout_2 .border-rounded .main--product-img {
    border-radius: 8px;
  }

  .product-info-details {
    padding-left: 35px;
  }

  .product--wrapper.layout_2 .product-info-details {
    padding-top: 45px;
  }

  .product--wrapper.layout_2 .main--product-image-wrapper.thumbnail-enable .main--product-media {
    flex: 0 0 70%;
    max-width: 70%;
  }

  .main--product-thumbnails {
    max-width: 30%;
    flex: 0 0 30%;
    padding-left: 10px;
    display: block;
  }

  .product--wrapper.layout_2 .border-square .main--product-thumbnails {
    padding-left: 2px;
  }

  .product-info-details .product-accordion--heading {
    padding: 15px 15px 15px 0;
  }

  .product-accordion--heading-text {
    font-size: var(--h5);
  }

  .product-info-details .product-accordion--heading-text {
    font-size: var(--xlarge_text);
  }

  .product-info-details .product-accordion--icon {
    width: 19px;
    height: 19px;
    transition: 0.3s ease;
  }

  /* product detail css end */
  .blog-items-column .blog--button {
    padding-top: 0;
  }

  .quickview--drawer-content {
    padding: 30px 40px;
    padding-bottom: 10px;
  }

  .product--wrapper.layout_3.product-grid-3 .main--product-item {
    flex: 0 0 33%;
  }

  .product--wrapper.layout_3.product-grid-2 .main--product-item {
    flex: 0 0 50%;
  }

  .product--wrapper.layout_1.product-grid-3 .main--product-item {
    flex: 0 0 33%;
  }

  .product--wrapper.layout_1.product-grid-2 .main--product-item {
    flex: 0 0 50%;
  }

  .section--header.with-button .section--btn {
    max-width: 200px;
    margin-left: auto;
  }

  .section-wrapper.d-border-radius-bottom:before,
  .section-wrapper.d-border-radius-top:before,
  .section-wrapper.d-border-radius-all:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    background: var(--body_background);
  }

  .section-wrapper.d-border-radius-top:before {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    border-top-left-radius: var(--card_radius);
    border-top-right-radius: var(--card_radius);
  }

  .section-wrapper.d-border-radius-all:before {
    border-bottom-left-radius: var(--card_radius);
    border-bottom-right-radius: var(--card_radius);
    border-top-left-radius: var(--card_radius);
    border-top-right-radius: var(--card_radius);
  }

  .section-wrapper.d-border-radius-bottom {
    background: var(--edge_background);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  .section-wrapper.d-border-radius-top {
    background: var(--edge_background);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

  .section-wrapper.d-border-radius-all {
    background: var(--edge_background);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}

@media (min-width: 992px) {
  .section--header {
    padding-bottom: 30px;
  }

  .input-form--fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 15px;
  }

  .popup-dialog.medium {
    max-width: 640px;
  }

  .popup-dialog.large {
    max-width: 840px;
  }
}

@media (min-width: 1025px) {
  .king_cursor {
    display: block;
    position: fixed;
    cursor: none;
    transform-origin: center;
    z-index: 1;
    left: -75px;
    top: -75px;
    width: 150px;
    height: 150px;
  }

  .swiper--button-wrapper .swiper-button-prev {
    left: 2rem;
  }

  .swiper--button-wrapper .swiper-button-next {
    left: calc(2rem + var(--slider_arrow_width) + 10px);
  }

  .swiper--button-wrapper.right-position .swiper-button-next {
    left: unset;
    right: 2rem;
  }

  .swiper--button-wrapper.right-position .swiper-button-prev {
    left: unset;
    right: calc(2rem + var(--slider_arrow_width) + 10px);
  }

  .animate-hover:hover img {
    transform: scale(1.1);
  }

  .pagination-item:hover .pagination-link {
    background: var(--text_color);
    color: var(--body_background);
    border-color: var(--text_color);
  }

  .button:hover,
  .shopify-challenge__button:hover {
    border-color: var(--button_border_hover);
    background: var(--button_background_hover);
    color: var(--button_text_hover);
  }

  .button.secondary--button:hover,
  button.shopify-payment-button__button:hover,
  button.shopify-payment-button__button--hidden:hover {
    background: var(--secondary_button_background_hover);
    border: 1px solid var(--secondary_button_border_hover);
    color: var(--secondary_button_text_hover);
  }

  .button.animated:hover .btn-icon {
    width: 100%;
    height: 100%;
    left: 0;
    color: var(--button_text_hover);
    border: 0;
  }

  .button.animated.secondary--button:hover .btn-icon {
    color: var(---secondary_button_text_hover);
  }

  .button.secondary--button .btn-icon:before {
    border-color: var(--secondary_button_text_hover);
  }

  .button.animated:hover .button--text {
    opacity: 0;
  }

  .button.secondary--button:hover .btn-icon {
    width: 100%;
    height: 100%;
    left: 0;
    transition: all 0.25s ease-out;
  }

  .button:hover .btn-icon svg {
    left: calc(100% - 28px);
  }

  .small-button.button:hover .btn-icon svg {
    left: calc(100% - 23px);
  }

  .medium-button.button:hover .btn-icon svg {
    left: calc(100% - 31px);
  }

  .large-button.button:hover .btn-icon svg {
    left: calc(100% - 40px);
  }

  .button:hover .button--hover-text span {
    transform: translateY(0);
    transition: transform 0.25s ease-out;
  }

  .button:hover .button--hover-text {
    opacity: 1;
  }

  .button.button-block:hover .button--hover-text {
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .btn-icon:before {
    content: '';
    width: 18px;
    height: 18px;
    background: transparent;
    border: 1px solid var(--button_text_hover);
    position: absolute;
    left: calc(100% - 33px);
    border-radius: 50px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.25s ease-out;
  }

  .button.medium-button .btn-icon:before {
    width: 24px;
    height: 24px;
    left: calc(100% - 39px);
  }

  .button.large-button .btn-icon:before {
    width: 30px;
    height: 30px;
    left: calc(100% - 50px);
  }

  .button:hover .btn-icon:before {
    opacity: 1;
    visibility: visible;
  }

  .arrow--btn:hover .arrow--icon {
    transform: rotate(-45deg);
  }

  .swiper-button:hover {
    background: var(--slider_icon_color);
    color: var(--slider_icon_background);
    border-color: var(--slider_icon_color);
  }

  .swiper-button:hover svg .draw-arrow {
    stroke-dashoffset: 10px;
    transform: matrix(3, 0, 0, 1, 0, 0);
    transition: 1s stroke-dashoffset ease, 0.7s 0.3s transform ease;
    fill: none;
    stroke-dasharray: 22;
    stroke-width: 1;
  }

  .swiper-button:hover svg .tail {
    transform: translateX(34px);
    transition: 0.72s 0.3s all ease;
  }

  .blog--item.horizontal-view {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    align-items: center;
    gap: 30px;
  }

  .blog--item:hover .blog--title {
    text-decoration: underline;
  }

  .blog--content {
    padding-top: 30px;
  }

  .blog--item.horizontal-view .blog--content {
    padding: 0;
  }

  .blog--desc {
    font-size: var(--medium_text);
  }

  .link-arrow:hover svg {
    transform: translateX(5px);
  }

  .drawer-close:hover:before,
  .popup-close:hover:before {
    transform: scale(1);
  }

  .drawer-close:hover {
    color: var(--body_background);
    border-color: var(--body_background);
  }

  .popup-close:hover {
    color: var(--body_background);
  }

  .horizontal--product-card:hover,
  .pickup--availability-list-item:hover {
    border-color: var(--border_color);
  }

  /* product card css start */
  .product--card-detail-inner {
    grid-template-columns: 1fr auto;
    column-gap: 30px;
  }

  .product-second-img {
    display: block;
    transform: scale(1.02);
    opacity: 0;
    background: var(--image_bg);
    backface-visibility: hidden;
    pointer-events: none;
    transition: 0.6s ease;
  }

  .product--card-inner.image-hover:hover .product-second-img {
    transform: scale(1);
    opacity: 1;
    visibility: visible;
    transition-property: transform, opacity;
    pointer-events: all;
  }

  .product-quickview-button {
    top: 20px;
    right: 20px;
  }

  .product--card-detail-button {
    display: block;
    transition: 0.4s ease;
  }

  .quickview-on-hover .product-quickview-button {
    transform: translateX(200%);
  }

  .product--card-detail-button {
    transform: translateX(200%);
  }

  .product--card-detail-button.product-addtocart-btn {
    transform: translate(0) scale(0);
  }

  .product--card:hover .product-quickview-button,
  .product--card:hover .product--card-detail-button,
  .product--card:hover .product--variant-picker-list {
    transform: unset !important;
  }

  /* product card css end */
  .product--variants-list.color-option .variant--item:hover .tooltip,
  .tooltip-parent:hover .tooltip {
    opacity: 1;
    transform: translateX(-50%) scale(1);
    transform-origin: center;
  }

  .product-loop-variants .custom-select-item:hover {
    background: var(--body_alternate_background);
  }

  .custom-select-item:hover button {
    background-color: var(--body_alternate_background);
  }

  /* product detail css start */
  .main--product-content-wrapper {
    position: absolute;
    top: calc(var(--desktop_transparent_header_height, 0px) + 3rem);
    right: 2rem;
    z-index: 1;
    width: 100%;
    max-width: 40vw;
    max-height: calc(100vh - calc(var(--header_height, 0px) + 8rem));
    /* overflow: hidden; */
    height: 100vh;
    display: flex;
    justify-content: flex-end;
  }

  .main--product-content-wrapper.content--height-section {
    max-height: calc(100% - calc(var(--header_height, 0px) + 8rem));
    height: 100%;
  }

  .main--product-content {
    display: flex;
    flex-direction: column;
    width: 100%;
    /* box-shadow: 0 0 3px #0000000d, 0 12px 24px #0000001a; */
  }

  .main--product-content-inner {
    background: var(--body_alternate_background);
    border-radius: var(--card_radius);
    padding: 30px 30px 10px;
    overflow: auto;
    box-shadow: #0000001a 0 0px 12px, #0000000f 0 0px 12px;
  }

  .product--detail-bottom-content {
    padding-top: 3rem;
    width: 100%;
    max-width: 65%;
  }

  .product--detail-bottom-content.product-content-fullwidth {
    max-width: 100%;
  }

  .product--card-image:hover .product-size-variant-list {
    opacity: 1;
    pointer-events: all;
  }


  /* product detail css end */
}

@media (min-width: 1200px) {
  .swiper--button-wrapper .swiper-button-next {
    left: calc(4rem + var(--slider_arrow_width) + 10px);
  }

  .swiper--button-wrapper .swiper-button-prev {
    left: 4rem;
  }

  .swiper--button-wrapper.right-position .swiper-button-next {
    left: unset;
    right: 4rem;
  }

  .swiper--button-wrapper.right-position .swiper-button-prev {
    left: unset;
    right: calc(4rem + var(--slider_arrow_width) + 10px);
  }

  .store--locator-drawer-header {
    padding: 34px 30px 20px;
  }

  .blog--info {
    padding-bottom: 20px;
  }

  .blog--desc {
    padding-top: 20px;
  }

  .popup-dialog.large {
    max-width: 940px;
  }

  .newsletter-popup--text {
    padding: 40px 50px;
  }

  .localization-form-wrapper {
    padding-bottom: 80px !important;
  }

  .side--drawer-panel {
    padding: 30px;
    max-width: 660px;
  }

  .main--product-content-wrapper {
    right: 4rem;
  }

  .product--detail-bottom-content {
    padding-top: 4rem;
    max-width: 55%;
  }

  .product--detail-bottom-content.product-content-fullwidth {
    max-width: 100%;
  }
}

@media (min-width: 1441px) {
  .main--product-content-wrapper {
    top: calc(var(--desktop_transparent_header_height, 0px) + 5rem);
  }

  .swiper--button-wrapper .swiper-button-next {
    left: calc(7rem + var(--slider_arrow_width) + 10px);
  }

  .swiper--button-wrapper .swiper-button-prev {
    left: 7rem;
  }

  .swiper--button-wrapper.right-position .swiper-button-next {
    left: unset;
    right: 7rem;
  }

  .swiper--button-wrapper.right-position .swiper-button-prev {
    left: unset;
    right: calc(7rem + var(--slider_arrow_width) + 10px);
  }

  .pagination {
    padding: 50px 0;
  }

  .main--product-content-inner {
    padding: 25px;
    padding-bottom: 8px;
  }

  .blog--item.horizontal-view {
    grid-template-columns: 1.5fr 1fr;
    gap: 40px;
  }

  .product-background-enabled .product--card-detail,
  .product-border-enabled .product--card-detail {
    padding: 16px 20px;
  }

  /* product detail css start */
  .product-info-details {
    padding-left: 45px;
  }

  .main--product-content-wrapper {
    right: 7rem;
    max-width: 36vw;
  }

  .main--product-content-inner {
    padding: 40px;
    padding-bottom: 15px;
  }

  .product--detail-bottom-content {
    padding-top: 6rem;
  }

  /* product detail css end */
}

@media (min-width: 1600px) {
  .main--product-content-wrapper {
    max-width: 32vw;
  }
}

@media (max-width: 1024px) {
  .tooltip {
    display: none;
  }

  .arrow--btn.medium-width {
    width: 50px;
    height: 50px;
  }

  .payment-icons-item svg {
    width: 28px;
  }

  .main--product-content-inner {
    padding: 30px 20px 0;
  }
}

@media (max-width: 767px) {
  .section--header.with--arrow {
    gap: 5px;
  }

  .section--header.with-button,
  .section--header.with--arrow.with-button {
    grid-template-columns: 1fr;
  }

  .swiper-wrapper {
    padding-bottom: 20px;
  }

  .store--locator-store-image {
    flex: 0 0 80px;
    margin-right: 16px;
  }

  .pickup--availability-content {
    flex-wrap: wrap;
  }

  .btn-loader {
    width: 22px;
    height: 22px;
  }

  .product--submit-btn-loader svg {
    width: 24px;
  }

  .button,
  .shopify-challenge__button {
    font-size: 14px;
    min-height: 40px;
  }

  .shopify-cleanslate button,
  .shopify-cleanslate div[role='button'] {
    min-height: 64px !important;
  }

  .btn-icon {
    width: 16px;
    height: 16px;
    left: 10px;
  }

  .button.animated {
    padding-left: 35px;
  }

  .button.medium-button,
  button.shopify-payment-button__button {
    min-height: 52px;
    font-size: 14px;
  }

  shopify-accelerated-checkout,
  shopify-accelerated-checkout-cart {
    --shopify-accelerated-checkout-button-block-size: 52px;
  }

  .button.medium-button.animated {
    padding-left: 50px;
    padding-right: 25px;
  }

  .button.medium-button .btn-icon {
    left: 16px;
  }

  .button.large-button {
    min-height: 56px;
    font-size: 16px;
    min-width: auto;
  }

  .arrow--btn {
    width: 36px;
    height: 36px;
  }

  .small-quantity .quantity--inner {
    height: 36px;
  }

  .small-quantity .quantity-button {
    min-width: 28px;
    max-width: 28px;
  }

  .xsmall-quantity .quantity--inner {
    height: 34px;
  }

  .xsmall-quantity .quantity-button {
    min-width: 26px;
    max-width: 26px;
  }

  .side-drawer {
    max-height: 85%;
  }

  .side--drawer-panel {
    padding: 0;
    transform: translate(0, 100%);
  }

  .side--drawer-inner {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  .drawer-close {
    width: 30px;
    height: 30px;
  }

  .popup-close svg {
    width: 16px;
    height: 16px;
  }

  .quickview--side-drawer .drawer-close {
    top: 15px;
    right: 15px;
  }

  /* product card css start */
  .product--card-badges {
    gap: 5px;
    top: 10px;
    left: 10px;
  }

  .product--badge {
    padding: 4px 9px;
  }

  .horizontal--product-card+.horizontal--product-card {
    margin-top: 10px;
  }

  /* product card css end */
  /* product detail css start */
  .product--variants-wrapper,
  .product--description,
  .product--active-users,
  .size-chart,
  .product--pickup-availability[available],
  .quantity-main-product,
  .product-checkout-buttons,
  .product--social-share,
  .custom-icons-box,
  .product-inventory,
  .product-payment-icons,
  .product--options,
  .product--custom-content,
  .product--custom-liquid,
  .product-query-form,
  .product--recommendations,
  .shopify-app-block {
    padding-bottom: 20px;
  }

  .product-info-details,
  .main--product-content-inner {
    padding: 30px 15px 0;
  }

  .product-title-heading {
    padding-bottom: 10px;
  }

  .price-wrapper {
    padding-bottom: 10px;
  }

  /* product detail css end */
  .arrow--btn.medium-width {
    width: 40px;
    height: 40px;
  }

  .arrow--btn.medium-width .arrow--icon {
    width: 14px;
  }

  .swiper--button-wrapper {
    display: none;
  }

  .product-second-img {
    display: none;
  }

  .container-fullwidth.m-pr-0 .section--header {
    padding-right: 15px;
  }

  .container-fluid.m-pr-0 .section--header {
    padding-right: 15px;
  }

  .section-wrapper.m-border-radius-bottom:before,
  .section-wrapper.m-border-radius-top:before,
  .section-wrapper.m-border-radius-all:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    background: var(--body_background);
  }

  .section-wrapper.m-border-radius-top:before {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    border-top-left-radius: var(--card_radius);
    border-top-right-radius: var(--card_radius);
  }

  .section-wrapper.m-border-radius-all:before {
    border-bottom-left-radius: var(--card_radius);
    border-bottom-right-radius: var(--card_radius);
    border-top-left-radius: var(--card_radius);
    border-top-right-radius: var(--card_radius);
  }

  .section-wrapper.m-border-radius-bottom {
    background: var(--edge_background);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  .section-wrapper.m-border-radius-top {
    background: var(--edge_background);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

  .section-wrapper.m-border-radius-all {
    background: var(--edge_background);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}

@media (max-width: 575px) {
  .arrow--btn {
    width: 24px;
    height: 24px;
  }

  .arrow--btn .arrow--icon {
    width: 8px;
  }
}

@media (max-width: 360px) {

  .button,
  .shopify-challenge__button {
    font-size: 12px;
    min-height: 38px;
    padding: 7px 10px;
  }

  .shopify-cleanslate button,
  .shopify-cleanslate div[role='button'] {
    min-height: 38px !important;
  }
}

/* simar css start 3d model */

.product__xr-button {
  background: rgba(var(--color-foreground), 0.08);
  color: rgb(var(--color-foreground));
  margin: 1rem auto;
  box-shadow: none;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
  width: max-content;
}

.button.product__xr-button:hover {
  box-shadow: none;
}

.product__xr-button[data-shopify-xr-hidden] {
  visibility: hidden;
}

.shopify-design-mode .product__xr-button[data-shopify-xr-hidden] {
  display: none;
}

@media screen and (max-width: 749px) {
  slider-component .product__xr-button {
    display: none;
  }

  .active .product__xr-button:not([data-shopify-xr-hidden]) {
    display: block;
  }
}

@media (max-width: 575px) {
  .pickup-availability-button {
    padding-left: 26px;
  }
}

@media screen and (min-width: 750px) {
  slider-component+.button.product__xr-button {
    display: none;
  }

  .product__xr-button[data-shopify-xr-hidden] {
    display: none;
  }
}

.product__xr-button .icon {
  width: 1.4rem;
  margin-right: 1rem;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  background: rgb(var(--color-background));
  border-color: rgba(var(--color-foreground), 0.04);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: rgba(var(--color-foreground), 0.75);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: rgba(var(--color-foreground), 0.55);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active,
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
  color: rgba(var(--color-foreground), 0.55);
  background: rgba(var(--color-foreground), 0.04);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  border-color: rgba(var(--color-foreground), 0.04);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  border-radius: 50%;
  color: rgb(var(--color-foreground));
  background: rgb(var(--color-background));
  border-color: rgba(var(--color-foreground), 0.1);
  transform: translate(-50%, -50%) scale(1);
  transition: transform var(--duration-short) ease, color var(--duration-short) ease;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__poster-control-icon {
  width: 4.8rem;
  height: 4.8rem;
  margin-top: 0.3rem;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover,
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
  transform: translate(-50%, -50%) scale(1.1);
}

product-model {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

product-model .shopify-model-viewer-ui {
  width: 100%;
  height: 100%;
}

product-model model-viewer {
  width: 100%;
  height: 100%;
}

button.close-product-model {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 60px;
  height: 60px;
}

/*  simar css end 3d model */

/*  simar css start product zoom */

.product-media-popup .main--product-media-item {
  position: relative;
  width: 100%;
  height: calc(100vh - 90px);
  margin: 0 auto;
}

.product-media-popup .popup-content {
  height: 100vh;
  border-radius: 0;
}

.product-media-popup .main--product-media-item img,
.product-media-popup .main--product-media-item video,
.product-media-popup .main--product-media-item iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  /* transform: translate(-50%,-50%); */
  object-fit: contain;
}

.product-media-popup .swiper--button-wrapper .swiper-button {
  top: 50%;
  transform: translateY(-50%);
}

.product-media-popup .swiper--button-wrapper .swiper-button.swiper-button-prev {
  transform: translateY(-50%) rotate(180deg);
  left: 1rem;
}

.product-media-popup .swiper--button-wrapper .swiper-button.swiper-button-next {
  right: 1rem;
  left: unset;
}

media-zoom-button {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  cursor: zoom-in;
  z-index: 1;
}

/*  simar css end product zoom */

/* Reset and isolation for bundle builder */
.product--bundle-builder-wrapper {
  position: relative;
  z-index: 1;
  margin: 20px 0;
}

.product--bundle-builder-wrapper * {
  box-sizing: border-box;
}

/* Ensure single instance */
.product-bundle-builder {
  isolation: isolate;
  position: relative;
}

/* Fix any potential overflow issues */
.bundle-builder-container {
  overflow: hidden;
  position: relative;
}
/* Hide all zoom buttons */
media-zoom-button {
  display: none !important;
}

/* Disable zoom cursor on product images */
.main--product-media-item,
.swiper-zoom-container,
[data-product-media] img,
.product-media img {
  cursor: default !important;
}

/* Disable pointer events on zoom containers */
.swiper-zoom-container {
  pointer-events: none !important;
}

/* Hide any zoom icons that might appear on hover */
.zoom-icon,
.media-zoom-icon,
[data-zoom-icon] {
  display: none !important;
}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Variant Selector CSS</title>
    <style>
        /* Variant Selector CSS for Default Inline Style ONLY */
        /* These styles only apply to non-color, non-image variants */
        
        /* Container for the variant options - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            list-style: none;
            padding: 0;
            margin: 0;
        }
        
        /* Individual variant items - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item {
            flex: 1 1 calc(33.333% - 6.67px); /* Adjusted gap calculation for 3 items */
            min-width: 80px;
        }
        
        /* When there are more than 3 variants, make them 2 per line - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image):has(.variant--item:nth-child(4)) .variant--item {
            flex: 1 1 calc(50% - 5px); /* 2 per line with gap consideration */
        }
        
        /* Hide the radio input - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item input[type="radio"] {
            position: absolute;
            opacity: 0;
            pointer-events: none;
        }
        
        /* Style the label as the button - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item .variant-item-name {
            display: block;
            width: 100%;
            padding: 12px 16px;
            text-align: center;
            border: 2px solid #e0e0e0;
            background-color: #ffffff;
            color: #333333;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.2s ease;
            box-sizing: border-box;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }
        
        /* Hover state - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item .variant-item-name:hover {
            border-color: #666666;
            background-color: #f5f5f5;
        }
        
        /* Selected state - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item input[type="radio"]:checked + .variant-item-name {
            background-color: #000000;
            color: #ffffff;
            border-color: #000000;
        }
        
        /* Disabled state - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item input[type="radio"]:disabled + .variant-item-name,
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item input[type="radio"].disabled + .variant-item-name {
            opacity: 0.5;
            cursor: not-allowed;
            background-color: #f9f9f9;
            color: #999999;
        }
        
        /* Responsive adjustments for smaller screens - only for default variants */
        @media (max-width: 480px) {
            /* Keep 3 or fewer variants on one line on mobile */
            .product--variants-list:not(.color-option):not(.variants-image):not(:has(.variant--item:nth-child(4))) .variant--item {
                flex: 1 1 calc(33.333% - 7px); /* 3 per line on mobile when 3 or fewer */
                min-width: 60px;
            }
            
            /* Only switch to 2 per line when there are 4 or more variants */
            .product--variants-list:not(.color-option):not(.variants-image):has(.variant--item:nth-child(4)) .variant--item {
                flex: 1 1 calc(50% - 5px); /* 2 per line on mobile when 4 or more */
                min-width: 70px;
            }
            
            .product--variants-list:not(.color-option):not(.variants-image) .variant--item .variant-item-name {
                padding: 10px 12px;
                font-size: 13px;
            }
        }
        
        /* Optional: Add rounded corners - only for default variants */
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item:first-child .variant-item-name {
            border-radius: 4px 0 0 4px;
        }
        
        .product--variants-list:not(.color-option):not(.variants-image) .variant--item:last-child .variant-item-name {
            border-radius: 0 4px 4px 0;
        }
        
        /* If you want all buttons rounded - only for default variants */
        /* .product--variants-list:not(.color-option):not(.variants-image) .variant--item .variant-item-name {
            border-radius: 4px;
        } */
    </style>
</head>
<body>
    <!-- Demo HTML Structure -->
    <div class="demo-container" style="max-width: 500px; margin: 50px auto; padding: 20px; font-family: Arial, sans-serif;">
        <h2>Variant Selector Demo</h2>
        
        <h3>3 Variants (Single Line)</h3>
        <div class="product--variants-box">
            <ul class="product--variants-list">
                <li class="variant--item">
                    <input type="radio" id="size-small-1" name="size-1" checked>
                    <label for="size-small-1" class="variant-item-name">Small</label>
                </li>
                <li class="variant--item">
                    <input type="radio" id="size-medium-1" name="size-1">
                    <label for="size-medium-1" class="variant-item-name">Medium</label>
                </li>
                <li class="variant--item">
                    <input type="radio" id="size-large-1" name="size-1">
                    <label for="size-large-1" class="variant-item-name">Large</label>
                </li>
            </ul>
        </div>
        
        <h3>4+ Variants (2 Per Line)</h3>
        <div class="product--variants-box">
            <ul class="product--variants-list">
                <li class="variant--item">
                    <input type="radio" id="size-xs-2" name="size-2">
                    <label for="size-xs-2" class="variant-item-name">X-Small</label>
                </li>
                <li class="variant--item">
                    <input type="radio" id="size-small-2" name="size-2" checked>
                    <label for="size-small-2" class="variant-item-name">Small</label>
                </li>
                <li class="variant--item">
                    <input type="radio" id="size-medium-2" name="size-2">
                    <label for="size-medium-2" class="variant-item-name">Medium</label>
                </li>
                <li class="variant--item">
                    <input type="radio" id="size-large-2" name="size-2">
                    <label for="size-large-2" class="variant-item-name">Large</label>
                </li>
                <li class="variant--item">
                    <input type="radio" id="size-xl-2" name="size-2" disabled>
                    <label for="size-xl-2" class="variant-item-name">X-Large</label>
                </li>
            </ul>
        </div>
        
        <p style="margin-top: 30px; color: #666; font-size: 14px;">
            Note: Extract the CSS from the &lt;style&gt; tag and add it to your theme's CSS file. The HTML structure matches your Liquid template.
        </p>
    </div>
</body>
</html>
 