/** Shopify CDN: Minification failed

Line 720:0 Unexpected "}"
Line 1023:31 Expected identifier but found "!"

**/
@keyframes inventory-pulse {
  0% {
    opacity: 0.6;
  }
  to {
    transform: scale(2.5);
    opacity: 0;
  }
}
.product {
  --media-width: 58.5%;
  --product-gap: 3rem;
  gap: var(--product-gap);
}
.product--medium {
  --media-width: 50%;
}
.product--small {
  --media-width: 45%;
}
.product--no-media {
  max-width: 77rem;
  margin: 0 auto;
}

.product--slider-freemode.product--media-has-many .product__media-gallery-viewer {
  border-start-end-radius: 0;
  border-end-end-radius: 0;
}

.product__media-item {
  width: 100%;
}
@media (hover: hover) {
  .product__media-item:hover .product__media-icon {
    opacity: 1;
  }
}
.product__media-container {
  position: relative;
  display: flex;
  overflow: hidden;
}
.product__media-icon {
  position: absolute;
  top: 2rem;
  inset-inline-end: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border: 0.1rem solid rgb(var(--color-border));
  border-radius: 50%;
  background: #fff;
  color: #000;
  opacity: 0;
  transition: opacity var(--duration-default);
}
.product__media-zoom {
  display: flex;
  position: static;
}
.product__media-zoom:after {
  content: "";
  cursor: pointer;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  border-radius: 0;
}
.product__media-gallery-thumbails {
  margin: 1rem 0 0;
  --slides-view: 5;
  --item-padding: 0.6rem;
}
.product__media-gallery-thumbails .swiper-slide {
  width: calc((100% - (var(--slides-view) - 1) * var(--media-item-gap)) / var(--slides-view));
  margin-inline-end: var(--media-item-gap);
}
.product__media-gallery-thumbails .swiper-slide.swiper-slide-thumb-active .product__thumbs-container {
  padding: var(--item-padding);
}
.product__media-gallery-thumbails .swiper-slide.swiper-slide-thumb-active .product__thumbs-container:after {
  opacity: 1;
}
@media (max-width: 767.98px) {
  .product__media-gallery-viewer-wrap .swiper:not(.swiper-initialized) .swiper-slide:nth-child(n+3) {
    display: none;
  }
}

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

.product__thumbs-container {
  position: relative;
  cursor: pointer;
  border-radius: var(--medium-blocks-radius);
  transition: 0.3s padding;
}
.product__thumbs-container:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 1px solid rgba(var(--color-foreground), 1);
  opacity: 0;
  z-index: 1;
  border-radius: inherit;
  transition: 0.2s opacity;
}
.product__thumbs-inner {
  transition: 0.3s border-radius;
  border-radius: inherit;
}
.product__thumbs-badge {
  position: absolute;
  top: 1rem;
  inset-inline-end: 1rem;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #000;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
}
@media (max-width: 767.98px) {
  .product__thumbs-badge {
    width: 2.4rem;
    height: 2.4rem;
  }
  .product__thumbs-badge .icon {
    width: 1.4rem;
    height: 1.4rem;
  }
}

.blocks-corner--round .product__media-gallery-thumbails .swiper-slide.swiper-slide-thumb-active .product__thumbs-inner {
  border-radius: calc(var(--medium-blocks-radius) - var(--item-padding));
}

@media (min-width: 768px) {
  .product--vertical-carousel {
    --thumbnails-width: 7rem;
    --thumbnails-spacing: 1rem;
  }
  .product--media-has-many.product--stacked .product__media-list, .product--media-has-many.product--grid-mix .product__media-list, .product--media-has-many.product--columns .product__media-list {
    flex-flow: row wrap;
    align-items: stretch;
    box-sizing: border-box;
  }
  .product--media-has-many.product--stacked .product__media-item, .product--media-has-many.product--grid-mix .product__media-item, .product--media-has-many.product--columns .product__media-item {
    width: 50%;
  }
  .product--media-has-many.product--stacked .product__media-gallery-viewer, .product--media-has-many.product--grid-mix .product__media-gallery-viewer, .product--media-has-many.product--columns .product__media-gallery-viewer {
    margin: 0 calc(var(--media-item-gap) / -2);
  }
  .product--media-has-many.product--stacked .product__media-list, .product--media-has-many.product--grid-mix .product__media-list, .product--media-has-many.product--columns .product__media-list {
    gap: var(--media-item-gap) 0;
  }
  .product--media-has-many.product--stacked .product__media-item, .product--media-has-many.product--grid-mix .product__media-item, .product--media-has-many.product--columns .product__media-item {
    padding: 0 calc(var(--media-item-gap) / 2);
  }
  .product--media-has-many.product--stacked .product__media-item {
    width: 100%;
  }
  .product--media-has-many.product--grid-mix .product__media-item:nth-child(3n+1) {
    width: 100%;
  }
  .product--media-has-many.product--vertical-carousel .product__media-gallery-viewer-wrap {
    margin-inline-start: calc(var(--thumbnails-width) + var(--thumbnails-spacing));
  }
  .product--media-has-many.product--vertical-carousel .product__media-gallery-thumbails {
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    width: var(--thumbnails-width);
    height: 100%;
    margin: 0;
  }
  .product--media-has-many.product--vertical-carousel .product__media-gallery-thumbails .swiper-wrapper {
    flex-direction: column;
  }
  .product--media-has-many.product--vertical-carousel .product__media-gallery-thumbails .swiper-slide {
    width: 100%;
    height: auto !important;
    margin-inline-end: 0;
    margin-bottom: var(--media-item-gap);
  }
  .product:not(.product--media-has-0) .product__media-wrapper {
    max-width: var(--media-width);
    width: calc(var(--media-width) - var(--product-gap) / 2);
  }
  .product:not(.product--media-has-0) .product__info-wrapper {
    max-width: calc(100% - var(--media-width));
    width: calc(100% - var(--media-width) - var(--product-gap) / 2);
  }
  .product--odd-media.product--grid-mix.product--media-has-2 .product__media-item:last-child {
    width: 100%;
  }
  .product--odd-media.product--grid-mix:not(.product--media-has-2) .product__media-item:nth-last-child(-n+2) {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .product:not(.product--media-has-0) .product__info-wrapper {
    padding-inline-start: 2rem;
  }
  .product--vertical-carousel {
    --thumbnails-width: 8rem;
    --thumbnails-spacing: 3rem;
  }
}
@media (min-width: 1280px) {
  .product:not(.product--media-has-0) .product__info-wrapper {
    padding-inline-start: 3rem;
  }
  .product--vertical-carousel {
    --thumbnails-width: 15rem;
  }
}
@media (min-width: 1410px) {
  .product:not(.product--media-has-0) .product__info-wrapper {
    padding-inline-start: 5rem;
  }
}
.product__block {
  --product-blocks-gap: 2.4rem;
  --product-blocks-gap-large: 3.2rem;
  margin: var(--product-blocks-gap) 0;
}
.product__block iframe {
  max-width: 100%;
}
.product__block:first-child {
  margin-top: 0;
}
.product__block:first-child:empty + .product__block {
  margin-top: 0;
}
.product__block:last-child {
  margin-bottom: 0;
}
.product__block--badges:not(:empty) + .product__block--title {
  margin-top: -0.4rem;
}
.product__block--type a, .product__block--vendor a {
  color: currentColor;
}
.product__block--title .product__title {
  word-break: break-word;
  margin: 0;
}
.product__block--title > a {
  display: none;
}
.product__block--price, .product__block--description, .product__block--inventory {
  margin-top: -0.8rem;
}
.product__block--shipping + .product__block--icon-with-text, .product__block--icon-with-text + .product__block--icon-with-text, .product__block--icon-with-text + .product__block--shipping {
  margin-top: -1.2rem;
}
.product__block--addons {
  margin-top: -1.3rem;
  gap: 0 2.4rem;
}
.product__block--addons .btn {
  padding: 0 !important;
}
.product__block--pickup_availability, .product__block--buy_buttons {
  margin: var(--product-blocks-gap-large) 0;
}
.product__block--buy_buttons + .product__block--pickup_availability {
  margin-top: -1.2rem;
}
.product__block--pickup_availability + .product__block--collapsible_tab {
  margin-top: -2rem;
}
.product__block--complementary-collapsible + .product__block--collapsible_tab, .product__block--collapsible_tab + .product__block--complementary-collapsible, .product__block--collapsible_tab + .product__block--collapsible_tab {
  margin-top: calc(var(--product-blocks-gap) * -1);
}
.product__block--complementary-inline + .product__block--collapsible_tab {
  margin-top: -1.2rem;
}
.product__block--complementary .slider-controls--group {
  text-align: center;
  margin: 0.4rem 0 0;
}
.product__block--complementary-inline.has-heading .slider-controls--grouped-always .slider-controls--group {
  position: absolute;
  bottom: 100%;
  inset-inline-end: 0;
  transform: translateY(-1.2rem);
  margin: 0;
}

@media (max-width: 767.98px) {
  .product__block {
    --product-blocks-gap: 2rem;
    --product-blocks-gap-large: 2.4rem;
  }
}
.product__inventory {
  --status-color: #10a443;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0 0.8rem;
  margin: 0;
  color: var(--status-color);
}
.product__inventory-icon {
  position: relative;
  width: 1rem;
  height: 1rem;
  margin: 0 0.4rem;
  background: var(--status-color);
  border-radius: 50%;
  flex: 0 0 auto;
}
.product__inventory-icon::after, .product__inventory-icon::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: var(--status-color);
  border-radius: 50%;
  animation: inventory-pulse 2s linear infinite;
}
.product__inventory-icon::after {
  animation-delay: 1s;
}
.product__inventory--out-of-stock {
  --status-color: rgba(var(--color-foreground), 0.5);
}
.product__inventory--low-stock {
  --status-color: rgb(var(--color-foreground));
}
.product__inventory--low-stock .product__inventory-icon {
  display: none;
}
.product__inventory-stock-bar {
  margin-top: 1.4rem;
}
.product__inventory-stock-bar:before {
  --scale-x: var(--percent, 100%);
}

.product__view-details {
  gap: 0.6rem;
  margin-top: 3.2rem;
  width: 100%;
  height: 6rem;
  padding: 2rem;
  border-radius: 0;
  justify-content: space-between;
  border: 0;
  border-top: 1px solid rgb(var(--color-border));
}
.product__view-details .icon {
  width: 2rem;
  height: 2rem;
}

.product__sku.invisible::after {
  content: "#";
}

.complementary-products__heading {
  margin: 0 0 1.5rem;
}

.product__badges {
  gap: 0.6rem;
}

/* Dynamic checkout */
.shopify-payment-button__button {
  font-family: inherit;
  min-height: var(--buttons-height);
  border-radius: var(--buttons-radius);
}
.shopify-payment-button__button [role=button].focused {
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5) !important;
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.1rem rgb(var(--color-button)), 0 0 0 0.3rem rgb(var(--color-background)), 0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3) !important;
}
.shopify-payment-button__button [role=button]:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none !important;
}
.shopify-payment-button__button [role=button]:focus-visible {
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5) !important;
  box-shadow: 0 0 0 0.1rem rgb(var(--color-button)), 0 0 0 0.3rem rgb(var(--color-background)), 0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3) !important;
}
.shopify-payment-button__button--unbranded {
  background-color: rgb(var(--color-button));
  color: rgb(var(--color-button-text));
  font-size: var(--font-body-size);
  padding: 0 var(--buttons-padding);
  line-height: 30px;
  font-family: var(--font-button-family);
  font-weight: var(--font-button-weight);
  letter-spacing: var(--buttons-letter-spacing, 0);
  text-transform: var(--buttons-transform, var(--buttons-transform-default));
}
.shopify-payment-button__button--unbranded::selection {
  background-color: rgba(var(--color-button-text), 0.3);
}
@media (hover: hover) {
  .shopify-payment-button__button--unbranded:hover, .shopify-payment-button__button--unbranded:hover:not([disabled]) {
    color: rgb(var(--color-button-hover-text));
    background-color: rgb(var(--color-button-hover-background));
  }
}
.shopify-payment-button__button + .shopify-payment-button__button--hidden {
  display: none;
}
.shopify-payment-button__more-options {
  margin: 1.6rem 0 1rem;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.05rem;
  text-decoration: underline;
  text-underline-offset: 0.3rem;
}

.open-size-chart {
  font-size: var(--font-body-size);
}

/* Product form */
.product-form {
  display: block;
}
.product-form__error-message-wrapper:not([hidden]) {
  display: flex;
  align-items: flex-start;
  font-size: 1.3rem;
  line-height: 1.4;
  letter-spacing: 0.04rem;
  margin-bottom: 1.5rem;
}
.product-form__error-message-wrapper svg {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  margin-inline-end: 0.7rem;
  margin-top: 0.25rem;
}
.product-form__input {
  flex: 0 0 100%;
  padding: 0;
  min-width: fit-content;
  border: none;
  margin: 1.6rem 0 0;
}
.product-form__input:first-child {
  margin: 0;
}
.product-form__input .form__label {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 0.8rem;
  width: 100%;
  padding: 0;
  line-height: 2.6rem;
  margin: 0 0 1.2rem;
}
.product-form__buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 2rem 1.2rem;
}
.product-form__buttons .shopify-payment-button {
  width: 100%;
}
.product-form__submit {
  position: relative;
  flex-grow: 1;
  flex-shrink: 1;
}
.product-form__submit[aria-disabled=true] + .shopify-payment-button .shopify-payment-button__button[disabled], .product-form__submit[disabled] + .shopify-payment-button .shopify-payment-button__button[disabled] {
  cursor: not-allowed;
  opacity: 0.5;
}

.ask-question-form-header {
  margin: 0 0 2.4rem;
}
.ask-question-form .form-field ~ .form-field {
  margin-top: 2rem;
}
.ask-question-form .form-submit {
  margin-top: 2rem;
}

.product__sharing--title {
  margin-bottom: 1.2rem;
}
.product__sharing--inputs {
  display: flex;
  align-items: center;
  position: relative;
}
.product__sharing--inputs:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 1px solid rgb(var(--color-border));
  border-radius: var(--buttons-radius, 0);
  pointer-events: none;
}
.product__sharing--inputs input {
  border-color: transparent !important;
  background: #fff;
  text-overflow: ellipsis;
  box-shadow: none !important;
  border-end-end-radius: 0;
  border-start-end-radius: 0;
}
.product__sharing--inputs .btn {
  padding: 0 1.6rem !important;
  height: var(--buttons-height);
  border-start-start-radius: 0;
  border-end-start-radius: 0;
}
.product__sharing .sharing__links {
  display: flex;
  align-items: center;
  margin: 1.6rem -1rem 0;
}
.product__sharing .sharing__links a {
  position: relative;
  display: flex;
  padding: 0 1rem;
}
.product__sharing .sharing__links a:before {
  content: "";
  position: absolute;
  top: -1rem;
  bottom: -1rem;
  left: 0;
  right: 0;
}

/* Recipient form */
.recipient-form {
  display: block;
  position: relative;
  margin-bottom: 3.2rem;
}
.recipient-form > input[type=checkbox] {
  position: relative;
  top: 0.3rem;
  margin-inline-end: 0.4rem;
}
.recipient-form > input[type=checkbox]:checked ~ .recipient-fields {
  display: block;
  animation: fade-in-up var(--duration-default) ease;
}
.recipient-form > input[type=checkbox]:not(:checked, :disabled) ~ .recipient-fields {
  display: none;
}
.recipient-form .alert {
  margin-top: 2.4rem;
}
.recipient-form .error-message::first-letter {
  text-transform: capitalize;
}
.recipient-fields__field {
  margin: 0 0 2rem 0;
}
.recipient-fields {
  margin-top: 1.6rem;
}
.recipient-fields .field__label {
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: calc(100% - 3.5rem);
  overflow: hidden;
}
.recipient-email-label {
  display: none;
}

.js .recipient-fields {
  display: none;
}

.js .recipient-email-label.required {
  display: inline;
}

@media screen and (forced-colors: active) {
  .product-form__submit[aria-disabled=true] {
    color: Window;
  }
}

/* ============================================================
   CUSTOM ÚPRAVY pre Klenotníctvo Maskaľ (maskal.sk)
   Vyčistená verzia — duplicity odstránené.
   ============================================================ */

/* ============================================================
   PRODUCT PAGE — FULL-WIDTH SPLIT LAYOUT (LV štýl)
   ------------------------------------------------------------
   Cieľ: galéria zaberá ľavú polovicu viewportu, info pravú polovicu.
   Info-content je centrovaný v pravej polovici a obmedzený
   na čitateľnú šírku (480-520px).
   Aktívne od 1024px. Mobile layout (<1024px) ostáva nedotknutý.
   ============================================================ */
@media (min-width: 1024px) {
  /* 1. Produktová sekcia ide na full width — zrušíme page-width cap */
  body.product-template product-info.section.page-width,
  body.product-template .shopify-section product-info.section {
    max-width: none !important;
    padding-inline: 0 !important;
  }

  /* 2. Product flex container bez bočných limitov,
        celý posunutý pod transparent header (ako LV) */
  body.product-template .product.product {
    --media-width: 50%;
    --product-gap: 0;
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    margin-top: calc(var(--header-height, 90px) * -1) !important;
  }

  /* 3. Galéria zaberie presne polovicu viewportu */
  body.product-template .product:not(.product--media-has-0) .product__media-wrapper {
    max-width: 50% !important;
    width: 50% !important;
    padding: 0 !important;
    margin: 0 !important;
  }


}

  /* 4. Info-wrapper zaberie pravú polovicu, vnútorný padding pre vzdušnosť.
        padding-top: 130px posunie content (text) pod transparent header
        so vzdušnou medzerou. Biele pozadie ostáva od top: 0. */
  body.product-template .product:not(.product--media-has-0) .product__info-wrapper {
    max-width: 50% !important;
    width: 50% !important;
    padding-inline: 4rem !important;
    padding-top: 130px !important;
    margin: 0 !important;
  }

  /* 4b. Galéria sa posunie o 70px nadol (o 60px vyššie ako info-content);
        sivé pozadie ostáva od top: 0 */
  body.product-template .product__media-gallery {
    padding-top: 40px !important;
  }
  body.product-template .product__media-gallery-viewer-wrap {
    padding-top: 0 !important;
  }

  /* Zrušiť starý SKU margin-top hack — info-wrap má vlastný padding-top */
  body.product-template .product__sku {
    margin-top: 0 !important;
  }

  /* 5. Vnútorný info blok — centrovaný a obmedzený na čitateľnú šírku */
  body.product-template .product__info-container {
    max-width: 480px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 6. Sticky offset: info-container sa synchronizuje so stavom headera.
        - Header viditeľný → info na 130px (rovnaké ako padding-top)
        - Header skrytý (is-hidden) → info ide hore na 20px od topu
        Galéria má vlastný sticky offset 70px (statický). */
  body.product-template .product__info-container.sticky-element {
    top: 130px !important;
    transition: top 0.5s ease !important;
  }
  body.product-template:has(.header-section.is-hidden) .product__info-container.sticky-element {
    top: 20px !important;
  }
  body.product-template .product__media-gallery.sticky-element {
    top: 40px !important;
    transition: none !important;
  }

  /* Skryť ikonu lupy (zoom) na obrázkoch galérie */
  body.product-template .product__media-icon {
    display: none !important;
  }
}

/* Na väčších obrazovkách o niečo vzdušnejšie a širší info blok */
@media (min-width: 1536px) {
  body.product-template .product:not(.product--media-has-0) .product__info-wrapper {
    padding-inline: 6rem !important;
  }
  body.product-template .product__info-container {
    max-width: 520px !important;
  }
}

/* ============================================================
   PRODUCT INFO ÚPRAVY
   ============================================================ */

.product__sku {
  color: #000000 !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  margin-top: 0;
}

.product-tags {
  color: #b0b0b0;
  font-size: 12px;
  font-weight: 400; /* regular */
  background-color: transparent;
  padding: 0;
  border: 0;
  margin-top: -20px;
  display: block; /* aby to nevyzeralo ako štítok */
  text-align: left; /* môžeš dať center ak chceš */
}

.h4.inline-richtext {
  font-size: 15px;
  color: #000;
  font-weight: 600;
}

.product__title.h3 {
  margin-top: -10px;
  font-weight: 600;
  font-size: 20px;
}

.f-price,
.f-price * {
  text-align: left !important;
  font-size: 14px !important;
  color: #000 !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  margin-top: -17px;
  margin-bottom: 40px;
}

.accordion-details__content.rte p {
  font-size: 15px;
  color: #000;
  margin-bottom: -10px;
  font-weight: 500;
}

.accordion-details__summary {
  padding-block: 1rem;
}

.cvc-money {
  font-size: 16px;
  font-weight: 900;
}

#ProductSubmitButton-template--23562689085781__main span {
  text-transform: uppercase;
}

.shopify-payment-button__button {
  text-transform: uppercase;
}

.product__text {
  font-weight: 600;
  font-size: 16px;
}

.btn {
  text-transform: none !important;
}

.reversed-link {
  font-size: 16px;
  font-weight: 600;
}

.product__block--description {
  margin-top: 40px !important;
}

.product__block--description,
.product__block--description * {
  font-size: 14px !important;
  color: #000000 !important;
  line-height: 20px !important;
}

/* Text v accordionoch */
.main-product .accordion-details,
.main-product .accordion-details * {
  font-size: 14px !important;
  color: #000 !important;
  font-weight: 400 !important;
}

/* default – každý accordion má len spodnú čiaru */
.accordion-details {
  padding: 0px 0 !important;
}

/* menšia ikonka */
.accordion-details summary .icon-plus-toggle {
  width: 14px !important;
  height: 14px !important;
}

/* tenšie čiary ako LV */
.accordion-details summary .icon-plus-toggle path {
  stroke-width: 1px !important;
}

/* voliteľné: jemná farba ako LV (#333) miesto výraznej čiernej */
.accordion-details summary .icon-plus-toggle {
  color: #333 !important;
}

/* Zrušiť medzery medzi fotkami v product gallery */
#Slider-Gallery-template--26856559051093__main {
  gap: 0 !important;
}

#Slider-Gallery-template--26856559051093__main .swiper-slide {
  margin-right: 0 !important;
}

/* pre istotu aj kontajner vo vnútri */
#Slider-Gallery-template--26856559051093__main .product__media-container {
  margin: 0 !important;
}

#Slider-Gallery-template--26856559051093__main .product__media-item {
  padding: 0 !important;
}

.btn--advisor {
  width: 100%;
  background-color: #EFEFEF !important;   /* svetlo sivá */
  color: #000 !important;                 /* čierny text */
  border: none !important;                /* žiadny border */
  padding: 1.25rem 2rem !important;       /* rovnaký padding ako primárny */
  border-radius: 9999px !important;       /* rovnaký PILL zaoblený tvar */
  font-size: 16px !important;
  font-weight: 500 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: none;
  margin-top:-7px;
}

.product__block--pickup_availability,
.product__block--buy_buttons {
  margin: 0 !important;
  padding: 0 !important;
}



/* =============================================
   BUTTON SYSTEM — UNIFIED LV STYLE
   Štýl harmonizovaný s "Zobraziť viac" z collection page:
   - height 48px, border-radius 25px, font 14px/400, padding 0 40px
   - 3 stavy: filled black / outline black / text link
   ============================================= */

/* ---------- 1. PRIDAŤ DO KOŠÍKA — filled black (default) ---------- */

.product-form__submit,
.product-form__submit.btn--primary,
.product-form__submit.btn--secondary {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 40px !important;
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
  border-radius: 25px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  transition: background-color 0.25s ease, color 0.25s ease !important;
  box-shadow: none !important;
}

/* Vypnúť slide-in pseudo-elementy z theme.js */
.product-form__submit::after,
.product-form__submit::before {
  display: none !important;
  content: none !important;
}

/* Hover: jemné zosvetlenie (čierna ostáva, len opacity) */
.product-form__submit:hover,
.product-form__submit:focus,
.product-form__submit.btn--primary:hover,
.product-form__submit.btn--secondary:hover {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  border-color: #000 !important;
  opacity: 0.85 !important;
}

.product-form__submit:hover span,
.product-form__submit:focus span {
  color: #fff !important;
}

/* ---------- 2. KÚPIŤ (Shopify dynamic checkout) — outline (default) ---------- */

.shopify-payment-button__button,
.shopify-payment-button__button--unbranded {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 40px !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 25px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 48px !important;
  transition: box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) !important;
  box-shadow: 0 0 0 0 #000 inset !important;
}

/* Hover: ostáva transparent, border zhrubne cez box-shadow (žiadny layout shift)
   — identický prístup ako "Zobraziť viac" na collection page */
.shopify-payment-button__button:hover,
.shopify-payment-button__button:focus,
.shopify-payment-button__button--unbranded:hover,
.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  background: transparent !important;
  background-color: transparent !important;
  color: #000 !important;
  border: 1px solid #000 !important;
  box-shadow: 0 0 0 1px #000 inset !important;
}

/* Medzera medzi 2 buttonmi vnútri buy_buttons bloku */
.product-form__buttons {
  flex-direction: column !important;
  gap: 5px !important;
}

.product-form__buttons .shopify-payment-button {
  margin: 0 !important;
}

/* ---------- 3. TELEFONICKÁ KONZULTÁCIA — sivý pill button ---------- */

.btn--advisor,
a.btn--advisor,
.contact-advisor-btn,
a.contact-advisor-btn {
  display: flex !important;
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 40px !important;
  margin: 0 !important;

  background: #e8e8e8 !important;
  background-color: #e8e8e8 !important;
  color: #000 !important;
  border: 1px solid transparent !important;
  border-radius: 25px !important;
  box-shadow: none !important;

  justify-content: center !important;
  align-items: center !important;

  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important; !important;
  text-transform: none !important;
  text-decoration: none !important;

  cursor: pointer !important;
  transition: none !important;
}

/* Hover: jemne stmavnenie sivej */
.btn--advisor:hover,
a.btn--advisor:hover,
.contact-advisor-btn:hover {
  background: #d8d8d8 !important;
  background-color: #d8d8d8 !important;
  color: #000 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

/* Vypnúť slide-in pseudo-elementy */
.btn--advisor::after,
.btn--advisor::before,
.contact-advisor-btn::after,
.contact-advisor-btn::before {
  display: none !important;
  content: none !important;
}



/* Krátky popis produktu */
.product-short-desc {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}



/* Specs tabuľka */
.product-specs-table {
  width: 100%;
  border-collapse: collapse;
  border: none !important;
}

.product-specs-table tr {
  border: none !important;
}

.product-specs-table td {
  padding: 3px 0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  border: none !important;
  vertical-align: top;
  line-height: 1.4 !important;
}

.product-specs-table td:first-child {
  color: #888 !important;
  width: 40%;
  text-align: left !important;
}

.product-specs-table td:last-child {
  color: #000 !important;
  text-align: right !important;
}



/* Obrázky nepresahujú cez pozadie */
.product__media-wrapper {
  overflow: hidden !important;
}

/* Dlhý popis v accordione */
.product-description-content p {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
  line-height: 1.8 !important;
  margin-bottom: 12px !important;
  text-align: left !important;
}

.product-description-content p:last-child {
  margin-bottom: 0 !important;
}

/* ============================================================
   MASKAĽ — Product info popups CSS (v3 — clean, no separators)
   ============================================================
   NAHRADIŤ celý starý product-info-* blok v section-main-product.css.
   ============================================================ */

/* ============================================================
   PRODUCT INFO BUTTONS — bez separátorov, len vertikálny rytmus
============================================================ */
.product-info-buttons {
  margin-top: 64px;       /* veľký gap od popisu vyššie */
  padding: 0;
  border: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;              /* gap medzi buttonmi (bez čiar) */
}

@media (min-width: 768px) {
  .product-info-buttons {
    margin-top: 80px;
    gap: 20px;
  }
}

button.product-info-button,
.product-info-buttons .product-info-button {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  color: #000 !important;
  text-align: left !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  cursor: pointer !important;
  transition: opacity 0.2s ease !important;
  position: relative !important;
  overflow: visible !important;
  text-decoration: none !important;
}

/* Vypnúť slide-in ::before/::after pseudo-elementy z theme */
button.product-info-button::before,
button.product-info-button::after,
.product-info-buttons .product-info-button::before,
.product-info-buttons .product-info-button::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-color: transparent !important;
}

button.product-info-button:hover,
button.product-info-button:focus,
button.product-info-button:active,
.product-info-buttons .product-info-button:hover {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #000 !important;
  opacity: 0.6;
}

.product-info-button__label {
  flex: 1;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
}

.product-info-button__icon {
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0;
  margin-left: 16px;
  transition: transform 0.3s ease;
  color: #000;
  background: none !important;
}

.product-info-button:hover .product-info-button__icon {
  transform: translateX(4px);
}

/* ============================================================
   POPUP / MODAL
============================================================ */
.product-info-popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: stretch;
  justify-content: center;
  padding: 0;
  background: rgba(0, 0, 0, 0.55);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.product-info-popup.is-open {
  display: flex;
  opacity: 1;
}

.product-info-popup__inner {
  position: relative;
  width: 100%;
  max-width: 780px;
  margin: auto;
  background: #f5f5f5;
  transform: translateY(20px);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.product-info-popup.is-open .product-info-popup__inner {
  transform: translateY(0);
}

@media (min-width: 768px) {
  .product-info-popup { padding: 40px; }
  .product-info-popup__inner { max-height: calc(100vh - 80px); }
}

@media (max-width: 1023.98px) {
  .product-info-popup__inner {
    max-height: 100dvh;
    min-height: 100dvh;
  }
}

.product-info-popup__close {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  width: 40px !important;
  height: 40px !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: none !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #000 !important;
  cursor: pointer !important;
  z-index: 2;
  padding: 0 !important;
  transition: transform 0.3s ease !important;
}

.product-info-popup__close::before,
.product-info-popup__close::after {
  display: none !important;
  content: none !important;
}

.product-info-popup__close:hover {
  transform: rotate(90deg);
  background: none !important;
  background-color: transparent !important;
}

.product-info-popup__close svg {
  width: 20px;
  height: 20px;
  color: #000 !important;
  stroke: #000 !important;
}

.product-info-popup__close svg path {
  stroke: #000 !important;
}

.product-info-popup__content {
  flex: 1;
  overflow-y: auto;
  padding: 56px 24px 32px;

  /* Custom scrollbar — minimal čierny ako Moncler */
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.4) transparent;
}

.product-info-popup__content::-webkit-scrollbar {
  width: 6px;
}

.product-info-popup__content::-webkit-scrollbar-track {
  background: transparent;
}

.product-info-popup__content::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.35);
  border-radius: 0;
}

.product-info-popup__content::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 0, 0, 0.6);
}

@media (min-width: 768px) {
  .product-info-popup__content {
    padding: 56px 48px 40px;
  }
}

.product-info-popup__title {
  font-size: 20px !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  margin: 0 0 40px !important;
  line-height: 1.45 !important;
  color: #000 !important;
  text-transform: none !important;
  font-family: inherit !important;
}

@media (min-width: 768px) {
  .product-info-popup__title {
    font-size: 22px !important;
    line-height: 32px !important;
    margin-bottom: 56px !important;
  }
}

/* Mobile — väčší bottom padding aby posledný odsek nebol seknutý + iOS safe area */
@media (max-width: 1023.98px) {
  .product-info-popup__content {
    padding-bottom: 80px;
    padding-bottom: max(80px, calc(48px + env(safe-area-inset-bottom)));
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
}

/* ============================================================
   TABS — horizontálne taby s tenkou divider líniou pod nimi
============================================================ */
.product-info-popup__tabs {
  display: flex;
  gap: 32px;
  margin: 0 0 32px;
  padding: 0 0 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

button.product-info-popup__tab,
.product-info-popup__tab {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #8a8a8a !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  position: relative !important;
  transition: color 0.2s ease !important;
  line-height: 1.4 !important;
}

.product-info-popup__tab::before,
.product-info-popup__tab::after {
  display: none !important;
  content: none !important;
}

.product-info-popup__tab:hover {
  color: #000 !important;
  background: transparent !important;
}

.product-info-popup__tab.is-active {
  color: #000 !important;
}

.product-info-popup__tab.is-active::after {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  bottom: -17px !important;
  left: 0 !important;
  right: 0 !important;
  height: 1px !important;
  background: #000 !important;
}

.product-info-popup__panel {
  display: none;
}

.product-info-popup__panel.is-active {
  display: block;
  animation: productInfoPopupFadeIn 0.25s ease;
}

@keyframes productInfoPopupFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Prose panel — pre dlhý popis (product.description) */
.product-info-popup .info-section--prose {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
  line-height: 1.7 !important;
  max-width: 100%;
}

.product-info-popup .info-section--prose p {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
  line-height: 1.7 !important;
  margin: 0 0 16px !important;
}

.product-info-popup .info-section--prose p:last-child {
  margin-bottom: 0 !important;
}

.product-info-popup .info-section--prose h1,
.product-info-popup .info-section--prose h2,
.product-info-popup .info-section--prose h3,
.product-info-popup .info-section--prose h4 {
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  color: #000 !important;
  margin: 24px 0 12px !important;
  letter-spacing: normal !important;
}

.product-info-popup .info-section--prose ul,
.product-info-popup .info-section--prose ol {
  margin: 0 0 16px !important;
  padding-left: 20px !important;
}

.product-info-popup .info-section--prose li {
  font-size: 14px !important;
  color: #000 !important;
  line-height: 1.7 !important;
  margin: 0 0 4px !important;
}

.product-info-popup .info-section--prose a {
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

.product-info-popup .info-section--prose strong {
  font-weight: 500 !important;
}

/* ============================================================
   INFO SECTIONS — Moncler-style: bez čiar, len whitespace
============================================================ */
.product-info-popup .info-section {
  margin: 0 0 24px;
  padding: 0;
  border-bottom: 0;
}

@media (min-width: 768px) {
  .product-info-popup .info-section {
    margin: 0 0 32px;
    padding: 0;
  }
}

.product-info-popup .info-section:last-of-type {
  margin-bottom: 0;
}

/* Heading sekcie — eyebrow style ako MASKAĽ — HODINKY BREITLING */
.product-info-popup .info-section__heading {
  font-size: 14px !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: normal !important;
  color: #000 !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  font-family: inherit !important;
}

/* Meta sekcia (SKU) — diskrétna na konci */
.product-info-popup .info-section--meta {
  margin-top: 32px;
}

.product-info-popup .info-section__lede {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
  line-height: 1.6 !important;
  margin: 0 0 32px !important;
}

.product-info-popup .info-section__list {
  margin: 0;
  padding: 0;
  display: block;
}

/* INFO ROW — label vľavo + value vpravo, na všetkých veľkostiach */
.product-info-popup .info-row {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: baseline;
  padding: 8px 0;
  margin: 0;
  border: 0;
}

.product-info-popup .info-row dd,
.product-info-popup .info-row dd p {
  text-align: right !important;
}

/* Desktop ≥1024px — väčší gap, kompaktnejší padding */
@media (min-width: 1024px) {
  .product-info-popup .info-row {
    gap: 32px;
    padding: 3px 0;
  }
}

.product-info-popup .info-row dt {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #8a8a8a !important;
  margin: 0 !important;
  padding: 0 !important;
}

.product-info-popup .info-row dd {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.product-info-popup .info-row dd p {
  margin: 0 0 4px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
}

.product-info-popup .info-row dd p:last-child { margin-bottom: 0 !important; }

.product-info-popup .info-row dd strong {
  font-weight: 500 !important;
}

.product-info-popup .info-row dd a {
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* ============================================================
   CTA
============================================================ */
.product-info-popup .info-section__cta {
  margin-top: 48px;
}

.product-info-popup .info-section__cta-link {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #000 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

.product-info-popup .info-section__cta-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 32px !important;
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: opacity 0.2s ease !important;
}

.product-info-popup .info-section__cta-btn::before,
.product-info-popup .info-section__cta-btn::after {
  display: none !important;
  content: none !important;
}

.product-info-popup .info-section__cta-btn:hover {
  opacity: 0.85;
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
}

/* Body scroll lock */
body.product-info-popup-open { overflow: hidden; }

/* ============================================================
   ZACHOVANÉ PRAVIDLÁ Z PREDCHÁDZAJÚCICH ÚPRAV
   (boli v staršej verzii, v novšej chýbali — ponechané pre kompatibilitu)
   ============================================================ */

/* Text v accordionoch */
.main-product .accordion-details,
.main-product .accordion-details * {
  font-size: 14px !important;
  color: #fff !important;
  font-weight: 400 !important;
}

/* Odstránenie medzier medzi obrázkami v product gallery - stacked layout */
.product--stacked .product__media-list,
.product--columns .product__media-list {
  gap: 0 !important;
}

.product--stacked .product__media-item,
.product--columns .product__media-item {
  padding: 0 !important;
}

.badge {
  display: inline-block;
  font-size: 12px;
  font-weight: 400;
  color:rgb(121, 121, 121);
  margin-top: -20px;
}

.badge--in-stock,
.badge--order {
  background-color: #e8e8e8 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
}

/* Targetujeme h2 vo vnutri summary pri hover, prekonava !important cez specificitu */
body .accordion-details__summary:hover .h4 {
  color: #666 !important;
  transition: color 0.3s ease;
}

/* Medzera pod posledným collapsible row pred footerom */
.product__info-container {
  padding-bottom: 6rem;
}

@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  .reversed-link:not([aria-disabled]):hover {
    background-image: none !important;
    background-size: 0 0 !important;
    border-bottom: 2px solid currentColor !important;
  }
}

.reversed-link:hover {
  background-image: none !important;
  border-bottom: 2px solid currentColor !important;
}

.btn--underline {
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-thickness: 2px !important;
  border: none !important;
  padding-bottom: 1px !important;
}

.btn--underline::after,
.btn--underline::before {
  display: none !important;
  content: none !important;
}

@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  .btn--underline:hover {
    text-decoration: none !important;
  }
}

.btn--underline:hover {
  text-decoration: none !important;
}

.badge--in-stock {
  background-color: #e8e8e8 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
}

/* Transparent header na produktovej stránke — čierny obsah */

/* VŽDY sticky na produkte — nikdy absolute (inak header-section má height 0) */
body.product-template .header-section.header-transparent .header {
  position: sticky !important;
  inset-block-start: 0 !important;
  top: 0 !important;
}

/* Pri top: transparentné pozadie, čierny text */
body.product-template .header-section.header-transparent:not(.header-scrolled) .header,
body.product-template .header-section.header-transparent:not(.header-scrolled) .header__logo--text,
body.product-template .header-section.header-transparent:not(.header-scrolled) .header__logo--image {
  --header-background-opacity: 0 !important;
  color: rgb(var(--color-foreground)) !important;
}

/* Čierne logo — nastav opacity priamo (nie cez premennú) */
body.product-template .header-section.header-transparent:not(.header-scrolled) .header__logo .logo:not(.header__logo--transparent) {
  opacity: 1 !important;
}

body.product-template .header-section.header-transparent:not(.header-scrolled) .header__logo .header__logo--transparent {
  opacity: 0 !important;
}

/* Pri scroll nahor (header-scrolled): biele pozadie, čierny obsah */
body.product-template .header-section.header-transparent.header-scrolled .header {
  --header-background-opacity: 1 !important;
  color: rgb(var(--color-foreground)) !important;
}

/* (odstránené: starý negatívny margin trick @1200px — prebíjalo ho nové full-width pravidlo vyššie) */


/* =====================================================================
   ============= MOBILE / TABLET (≤1023px) — KOMPLET ===================
   - Header + galéria + info-wrapper všetko #F6F6F6 (jednotné)
   - Aspect ratio auto (originálny pomer obrázka, bez orezania)
   - Šípky vľavo + vpravo cez stred obrázka
   - Page-width padding zrušený
   - Section bottom padding zrušený
   ===================================================================== */

@media (max-width: 1023.98px) {

  /* ---------------------------------------------------------------------
     0. PAGE-WIDTH SEKCIA — full width (zrušené 1.5rem page-padding)
        Sivá farba ide edge-to-edge na celú šírku viewportu
     --------------------------------------------------------------------- */
  body.template-product product-info.section.page-width,
  body.product-template product-info.section.page-width,
  body.template-product .shopify-section product-info.section,
  body.product-template .shopify-section product-info.section {
    --page-padding: 0 !important;
    padding-inline: 0 !important;
    max-width: none !important;
  }

  /* Bottom padding produktovej sekcie — zrušíme obrovskú medzeru */
  body.template-product product-info.section--padding,
  body.product-template product-info.section--padding {
    padding-block-end: 0 !important;
    padding-block-start: 0 !important;
  }

  /* ---------------------------------------------------------------------
     1. HEADER — F6F6F6 pozadie (jednotné s celou produktovkou)
     --------------------------------------------------------------------- */
  body.template-product .header-section .header,
  body.product-template .header-section .header {
    background-color: #F6F6F6 !important;
    --color-background: 246, 246, 246 !important;
  }

  /* ---------------------------------------------------------------------
     2. PRODUCT CONTAINER — F6F6F6 + reset margin/padding/gap
        Margin-top reset prebíja desktop pravidlo `margin-top: -90px`
        --product-gap: 0 zruší 48px medzeru medzi galériou a info-wrapperom
     --------------------------------------------------------------------- */
  body.template-product .product.product,
  body.product-template .product.product,
  .product {
    --product-gap: 0 !important;
    background-color: #F6F6F6 !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none !important;
    width: 100% !important;
    gap: 0 !important;
  }

  /* ---------------------------------------------------------------------
     3. MEDIA WRAPPER — F6F6F6, žiadny padding-top
        Reset desktop max-width: 50% — na mobile ide na 100%
     --------------------------------------------------------------------- */
  body.template-product .product:not(.product--media-has-0) .product__media-wrapper,
  body.product-template .product:not(.product--media-has-0) .product__media-wrapper,
  .product__media-wrapper {
    background-color: #F6F6F6 !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    padding-inline: 0 !important;
  }
  .product__media-wrapper .media-wrapper {
    background-color: transparent !important;
  }

  /* Reset desktop media-gallery padding-top: 40px */
  body.template-product .product__media-gallery,
  body.product-template .product__media-gallery {
    padding-top: 0 !important;
  }

  /* ---------------------------------------------------------------------
     4. GALÉRIA — edge-to-edge (full-width)
        Žiadne negatívne margins netreba — info-wrapper aj page-width sú reset
     --------------------------------------------------------------------- */
  .product__media-gallery-viewer-wrap {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-top: 0 !important;
    position: relative !important;
  }

  /* ---------------------------------------------------------------------
     5. ASPECT RATIO — zrušený. Obrázok si ponecháva svoj prirodzený pomer.
        Žiadne object-fit/object-position — obrázok nie je orezávaný.
     --------------------------------------------------------------------- */
  .product__media-container {
    aspect-ratio: auto !important;
    border-radius: 0 !important;
  }
  .product__media-container .product__media img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  /* ---------------------------------------------------------------------
     6. INFO-WRAPPER — F6F6F6 pozadie (LV style — kontrast s galériou)
        Reset desktop max-width: 50% / padding-top: 130px
        padding-top = medzera medzi obrázkom a SKU
     --------------------------------------------------------------------- */
  body.template-product .product:not(.product--media-has-0) .product__info-wrapper,
  body.product-template .product:not(.product--media-has-0) .product__info-wrapper,
  .product__info-wrapper {
    background-color: #F6F6F6 !important;
    max-width: 100% !important;
    width: 100% !important;
    padding-top: 34px !important;
    padding-bottom: 20px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin: 0 !important;
  }

  /* Reset desktop info-container max-width: 480px */
  body.template-product .product__info-container,
  body.product-template .product__info-container {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* ---------------------------------------------------------------------
     7. ŠÍPKY GALÉRIE — vycentrované cez stred obrázka, vľavo + vpravo
     --------------------------------------------------------------------- */

  /* Skry fraction "1 / 5" */
  .slider-controls--group.md\:hidden .swiper-pagination-fraction {
    display: none !important;
  }

  /* Wrapper musí byť relative aby šípky mali správny anchor */
  .product__media-gallery-viewer-wrap {
    padding-bottom: 0 !important;
    position: relative !important;
    background-color: #F6F6F6 !important;
  }

  /* Vytiahni lištu z flow a umiestni cez stred obrázka */
  .slider-controls--group.md\:hidden {
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    z-index: 10 !important;
    pointer-events: none !important;
  }

  /* Šípky od krajov, space-between */
  .slider-controls--group.md\:hidden .slider-controls {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    min-width: unset !important;
    padding: 0 10px !important;
    pointer-events: none !important;
  }

  /* Šípky — čisté ikony bez pozadia/bordera */
  .slider-controls--group.md\:hidden .swiper-button-prev,
  .slider-controls--group.md\:hidden .swiper-button-next {
    position: static !important;
    pointer-events: all !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    width: 28px !important;
    height: 28px !important;
    min-width: unset !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #000 !important;
    opacity: 0.4;
    transform: none !important;
  }

  /* Aktívne šípky — vyššia viditeľnosť */
  .slider-controls--group.md\:hidden .swiper-button-prev:not(.swiper-button-disabled),
  .slider-controls--group.md\:hidden .swiper-button-next:not(.swiper-button-disabled) {
    opacity: 0.75;
  }

  /* Disabled šípka (na prvom/poslednom slide) — len jemne viditeľná */
  .slider-controls--group.md\:hidden .swiper-button-disabled {
    opacity: 0.15 !important;
  }

/* ---------------------------------------------------------------------
     8. PRODUCT TYPOGRAPHY — Moncler-style flat hierarchy
     --------------------------------------------------------------------- */

  /* SKU — menší a svetlejší (breadcrumb style) */
  body.product-template .product__sku {
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #8a8a8a !important;
    text-transform: uppercase !important;
    margin: 0 !important;
  }

  /* Title — flat 14px / 400 */
  body.product-template .product__title.h3,
  body.product-template .product__block--title .product__title {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 20px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    margin: 0 !important;
  }

  /* Cena — 14px / 400, bez uppercase */
  body.product-template .f-price,
  body.product-template .f-price *,
  body.product-template .f-price .cvc-money {
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #000 !important;
    line-height: 20px !important;
    text-align: left !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    margin: 0 !important;
  }

  /* Popis (custom_liquid s textom popisu) — typografia
     Použité pravidlá vnútri custom_liquid bloku, nie nth-child (robustné voči zmenám poradia v editore) */
  body.product-template .product__block--custom_liquid p,
  body.product-template .product__block--custom_liquid div:not(.badge):not(.btn):not(.btn--advisor):not(.contact-advisor-btn) {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 20px !important;
    color: #000 !important;
  }

  /* ---------------------------------------------------------------------
     9. MEDZERY MEDZI BLOKMI — class-based, robustné voči zmenám v editore
     
     Štruktúra:
       SKU → 20px → Badge → 5px → Title → 5px → Cena → 20px → Popis
       → 20px → Button1 → 10px → Button2 → 20px → Accordions
     
     Každé pravidlo nuluje default theme margin a nastavuje explicitnú medzeru.
     --------------------------------------------------------------------- */

  /* Reset všetkých default marginov na blokoch — preberieme kontrolu */
  body.product-template .product__blocks > .product__block,
  body.product-template .product__blocks > .product-info-buttons {
    margin: 0 !important;
  }

  /* SKU → Badge: 30px */
  body.product-template .product__block--sku + .product__block--custom_liquid {
    margin-top: 30px !important;
  }

  /* Badge → Title: 5px */
  body.product-template .product__block--custom_liquid + .product__block--title {
    margin-top: 5px !important;
  }

  /* Title → Price: 5px */
  body.product-template .product__block--title + .product__block--price {
    margin-top: 5px !important;
  }

  /* Price → Popis: 30px (popis je custom_liquid hneď za price) */
  body.product-template .product__block--price + .product__block--custom_liquid {
    margin-top: 30px !important;
  }

  /* Popis → Buy buttons: 50px */
  body.product-template .product__block--custom_liquid + .product__block--buy_buttons {
    margin-top: 50px !important;
  }

  /* Button 1 (buy_buttons) → Button 2 (advisor custom_liquid): 10px */
  body.product-template .product__block--buy_buttons + .product__block--custom_liquid {
    margin-top: 10px !important;
  }

  /* Advisor button → Accordiony: 50px */
  body.product-template .product__block--custom_liquid + .product-info-buttons {
    margin-top: 50px !important;
  }

}

/* =====================================================================
   ============= MOBILE / TABLET (≤1023px) — BANNERY ===================
   Úpravy pre image-with-text-overlay bannery:
   - na produktovej stránke (PDP)
   - na collection page (brand collections)
   - na collection-story (metaobject) — má rovnakú root class
   Cieľ: text doľava+dole, 40px padding od spodu, menšie písmo.
   ===================================================================== */
@media (max-width: 1023.98px) {

  /* Wrapper — obsah doľava a dole, 40px padding od spodu */
  body.product-template .image-with-text-overlay .image-with-text-ovelay__content-wrapper,
  body.collection-template .image-with-text-overlay .image-with-text-ovelay__content-wrapper {
    align-items: flex-start !important;
    padding: 20px 20px 40px !important;
  }

  /* Text container — zarovnanie doľava (prebíja .text-center z theme) */
  body.product-template .image-with-text-overlay .rich-text,
  body.collection-template .image-with-text-overlay .rich-text {
    text-align: left !important;
  }

  /* Subheading (eyebrow "OSOBNÁ KONZULTÁCIA", "OD ROKU 1884", "IKONA OD ROKU 1984")
     — z 16px/400 na 13px/400 */
  body.product-template .image-with-text-overlay .rich-text__subheading,
  body.collection-template .image-with-text-overlay .rich-text__subheading {
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    margin-bottom: 8px !important;
  }

  /* Heading (H2 "Poradíme vám s výberom", "Breitling", "Chronomat")
     — torsku menší: z 22.4px na 19px */
  body.product-template .image-with-text-overlay .rich-text__heading,
  body.collection-template .image-with-text-overlay .rich-text__heading {
    font-size: 19px !important;
    line-height: 1.3 !important;
  }

  /* Body text (popis pod nadpisom) — z 16px/400 na 13px/400 */
  body.product-template .image-with-text-overlay .rich-text__text,
  body.product-template .image-with-text-overlay .rich-text__text p,
  body.collection-template .image-with-text-overlay .rich-text__text,
  body.collection-template .image-with-text-overlay .rich-text__text p {
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
  }

  /* Underline button v 1. banneri ("Zavolať +421...") — zachovať vľavo */
  body.product-template .image-with-text-overlay .btn--underline,
  body.collection-template .image-with-text-overlay .btn--underline {
    align-self: flex-start !important;
  }
}

/* =====================================================================
   ============= DESKTOP (≥1024px) — PRODUCT INFO SPACING ==============
   Class-based pravidlá pre medzery medzi blokmi v info paneli.
   Robustné voči zmenám poradia v editore.

   Štruktúra:
     SKU → 30px → Badge → 10px → Title → 10px → Cena → 30px → Popis
     → 30px → Button1 → 10px → Button2 → 30px → Accordions
   ===================================================================== */

@media (min-width: 1024px) {

  /* SKU — šedý ako na mobile */
  body.product-template .product__sku {
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #8a8a8a !important;
    text-transform: uppercase !important;
  }

  /* Reset všetkých default marginov na blokoch — preberieme kontrolu */
  body.product-template .product__blocks > .product__block,
  body.product-template .product__blocks > .product-info-buttons {
    margin: 0 !important;
  }

  /* Reset extra margin-bottom z BUTTON SYSTEM section (nahradíme nižšie cez sibling +) */
  body.product-template .product__blocks > .product__block--buy_buttons {
    margin-bottom: 0 !important;
  }

/* Reset padding-bottom info-containera (default 6rem = 96px) — zruší veľkú medzeru pod accordionmi */
  body.product-template .product__info-container {
    padding-bottom: 0 !important;
  }

  /* Padding-bottom na info-wrapperu — odsadenie spodného okraja od bannera (50px) */
  body.product-template .product__info-wrapper {
    padding-bottom: 50px !important;
  }

  /* SKU → Badge: 50px */
  body.product-template .product__block--sku + .product__block--custom_liquid {
    margin-top: 40px !important;
  }

  /* Badge → Title: 20px */
  body.product-template .product__block--custom_liquid + .product__block--title {
    margin-top: 20px !important;
  }

  /* Title → Price: 20px */
  body.product-template .product__block--title + .product__block--price {
    margin-top: 25px !important;
  }

  /* Price → Popis: 50px */
  body.product-template .product__block--price + .product__block--custom_liquid {
    margin-top: 50px !important;
  }

  /* Popis → Buy buttons: 50px */
  body.product-template .product__block--custom_liquid + .product__block--buy_buttons {
    margin-top: 50px !important;
  }

  /* Button 1 (buy) → Button 2 (advisor): 10px */
  body.product-template .product__block--buy_buttons + .product__block--custom_liquid {
    margin-top: 10px !important;
  }

  /* Advisor button → Accordiony: 50px */
  body.product-template .product__block--custom_liquid + .product-info-buttons {
    margin-top: 50px !important;
  }

}/* ============================================================
   MASKAĽ — Variant picker pills (PDP) — v5
   + gift-card overrides (vyššia špecificita + Liquid fallback)
   ============================================================ */


/* ---------- 1. Legend "Hodnota:" ---------- */

.product-form__input--button > legend.form__label .font-body-bold,
.product-form__input--button > legend.form__label > span:not(.visually-hidden) {
  display: none !important;
}

.product-form__input--button > legend.form__label {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: rgb(var(--color-foreground)) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin-bottom: 12px !important;
  padding: 0 !important;
  display: block;
}


/* ---------- 2. Fieldset spacing ---------- */

.product__block--variant_picker {
  margin-block: 0;
}

.product__block--variant_picker fieldset.product-form__input--button {
  margin: 0;
  padding: 0;
  border: 0;
}


/* ---------- 3. Pills container ---------- */

.product-form__input--button > .flex.flex-wrap.gap-2,
.product-form__input--button > div[class*="flex"][class*="flex-wrap"] {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
}


/* ---------- 4. Pill ---------- */

.product-form__input--button label[for] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;

  flex: 1 1 0;
  min-width: 80px;
  min-height: 40px;
  padding: 9px 18px !important;

  background: #EEEEEE !important;
  border: 1px solid #DCDCDC !important;
  border-radius: 0 !important;
  color: rgb(var(--color-foreground)) !important;

  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: none !important;
  white-space: nowrap !important;

  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;
  user-select: none;
  box-shadow: none !important;
}

.product-form__input--button label[for]:hover {
  border-color: #000 !important;
  background: #EEEEEE !important;
}

.product-form__input--button input[type="radio"]:checked + label[for] {
  background: #000 !important;
  color: #FFF !important;
  border-color: #000 !important;
}

.product-form__input--button input[type="radio"]:checked + label[for]:hover {
  background: #000 !important;
  color: #FFF !important;
  border-color: #000 !important;
  opacity: 0.85;
}

.product-form__input--button input[type="radio"]:disabled + label[for] {
  opacity: 0.4;
  pointer-events: none;
  text-decoration: line-through;
}

.product-form__input--button label .visually-hidden.label-unavailable,
.product-form__input--button label .label-unavailable {
  display: none !important;
}

@media (max-width: 749.98px) {
  .product-form__input--button label[for] {
    flex: 0 1 auto;
    min-width: 72px;
    padding: 9px 14px !important;
  }
}


/* ============================================================
   SPACING — block_order: title → popis → variant → buy
   ============================================================ */

body.product-template .product__block--custom_liquid + .product__block--variant_picker {
  margin-top: 50px !important;
}

body.product-template .product__block--variant_picker + .product__block--buy_buttons {
  margin-top: 50px !important;
}

@media (max-width: 749.98px) {
  body.product-template .product__block--custom_liquid + .product__block--variant_picker {
    margin-top: 35px !important;
  }
  body.product-template .product__block--variant_picker + .product__block--buy_buttons {
    margin-top: 35px !important;
  }
}


/* ============================================================
   GIFT CARD OVERRIDES — body.product-gift
   vyššia špecificita pomocou body.product-template.product-gift
   ============================================================ */

/* 1. Skryť "Na objednávku" / "Na sklade" badge */
body.product-template.product-gift .badge--order,
body.product-template.product-gift .badge--in-stock,
body.product-template.product-gift span.badge {
  display: none !important;
}

/* skryť celý custom_liquid block ktorý obsahuje badge — aby tam nebola prázdna medzera */
body.product-template.product-gift .product__block--custom_liquid:has(> .badge--order),
body.product-template.product-gift .product__block--custom_liquid:has(> .badge--in-stock),
body.product-template.product-gift .product__block--custom_liquid:has(.badge) {
  display: none !important;
}

/* 2. Title — 30px medzera pod nadpisom (vyššia špecificita) */
body.product-template.product-gift .product__info-container .product__block--title,
body.product-template.product-gift .product__block--title {
  margin-bottom: 30px !important;
}

body.product-template.product-gift .product__block--title h1,
body.product-template.product-gift .product__block--title .product__title,
body.product-template.product-gift .product__title {
  margin-bottom: 0 !important;
  margin-block-end: 0 !important;
}

/* 3. Cena pod titulkom — skryť */
body.product-template.product-gift .product__block--price,
body.product-template.product-gift .price--container,
body.product-template.product-gift .product__price {
  display: none !important;
}

/* 4. Override default spacing pre title → custom_liquid */
body.product-template.product-gift .product__block--title + .product__block--custom_liquid,
body.product-template.product-gift .product__block--title + .product__block--price + .product__block--custom_liquid {
  margin-top: 0 !important;
}

/* 5. SKU → 50px medzera pod ním (badge custom_liquid je hidden, takže SKU ide rovno nad title) */
body.product-template.product-gift .product__block--sku {
  margin-bottom: 50px !important;
}


/* ============================================================
   LIQUID FALLBACK — ak Liquid súbor nebol updatovaný,
   schovať taby a ZÁKLAD sekciu cez CSS na gift card produkte
   ============================================================ */

/* Skry taby (Detaily / Popis) v gift card popup-e */
body.product-template.product-gift .product-info-popup__tabs {
  display: none !important;
}

/* Skry tab panel "detaily" (so sekciou ZÁKLAD) — necháme len panel "popis" */
body.product-template.product-gift .product-info-popup__panel[data-panel="detaily"] {
  display: none !important;
}

/* Force tab panel "popis" ako visible */
body.product-template.product-gift .product-info-popup__panel[data-panel="popis"] {
  display: block !important;
}