/* VOEVODA — consolidated product page stylesheet */
/* Product page light theme — visual only. Does not change product functionality. */
html[data-theme="light"] body.page-product,
body.theme-light.page-product,
body.day-theme.page-product {
  background: #eee5d7 !important;
  color: #2f251a !important;
}

html[data-theme="light"] body.page-product .product-page,
body.theme-light.page-product .product-page,
body.day-theme.page-product .product-page {
  background: #eee5d7 !important;
  background-image: none !important;
}

html[data-theme="light"] body.page-product .product-page::before,
html[data-theme="light"] body.page-product .product-page::after,
body.theme-light.page-product .product-page::before,
body.theme-light.page-product .product-page::after,
body.day-theme.page-product .product-page::before,
body.day-theme.page-product .product-page::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

html[data-theme="light"] body.page-product .product-detail,
html[data-theme="light"] body.page-product .product-gallery,
html[data-theme="light"] body.page-product .product-info,
html[data-theme="light"] body.page-product .product-tabs,
body.theme-light.page-product .product-detail,
body.theme-light.page-product .product-gallery,
body.theme-light.page-product .product-info,
body.theme-light.page-product .product-tabs,
body.day-theme.page-product .product-detail,
body.day-theme.page-product .product-gallery,
body.day-theme.page-product .product-info,
body.day-theme.page-product .product-tabs {
  background: #f7f0e4 !important;
  color: #2f251a !important;
  border-color: #d3bea0 !important;
  box-shadow: none !important;
}

html[data-theme="light"] body.page-product .product-gallery__main,
html[data-theme="light"] body.page-product .product-gallery__thumb,
body.theme-light.page-product .product-gallery__main,
body.theme-light.page-product .product-gallery__thumb,
body.day-theme.page-product .product-gallery__main,
body.day-theme.page-product .product-gallery__thumb {
  background: #fffaf2 !important;
  border-color: #d7c6aa !important;
}

html[data-theme="light"] body.page-product .product-info h1,
html[data-theme="light"] body.page-product .product-tabs h2,
html[data-theme="light"] body.page-product .product-volume-picker strong,
html[data-theme="light"] body.page-product .product-size-picker strong,
html[data-theme="light"] body.page-product .product-color-picker strong,
body.theme-light.page-product .product-info h1,
body.theme-light.page-product .product-tabs h2,
body.theme-light.page-product .product-volume-picker strong,
body.theme-light.page-product .product-size-picker strong,
body.theme-light.page-product .product-color-picker strong,
body.day-theme.page-product .product-info h1,
body.day-theme.page-product .product-tabs h2,
body.day-theme.page-product .product-volume-picker strong,
body.day-theme.page-product .product-size-picker strong,
body.day-theme.page-product .product-color-picker strong {
  color: #2a2118 !important;
}

html[data-theme="light"] body.page-product .product-info__summary,
html[data-theme="light"] body.page-product .product-tabs p,
html[data-theme="light"] body.page-product .product-gallery__caption,
html[data-theme="light"] body.page-product .breadcrumbs,
html[data-theme="light"] body.page-product .breadcrumbs a,
body.theme-light.page-product .product-info__summary,
body.theme-light.page-product .product-tabs p,
body.theme-light.page-product .product-gallery__caption,
body.theme-light.page-product .breadcrumbs,
body.theme-light.page-product .breadcrumbs a,
body.day-theme.page-product .product-info__summary,
body.day-theme.page-product .product-tabs p,
body.day-theme.page-product .product-gallery__caption,
body.day-theme.page-product .breadcrumbs,
body.day-theme.page-product .breadcrumbs a {
  color: #655341 !important;
}

html[data-theme="light"] body.page-product .product-info__summary,
body.theme-light.page-product .product-info__summary,
body.day-theme.page-product .product-info__summary {
  max-width: 62ch;
  line-height: 1.65;
}

html[data-theme="light"] body.page-product .product-tabs__grid,
body.theme-light.page-product .product-tabs__grid,
body.day-theme.page-product .product-tabs__grid {
  align-items: start !important;
}

html[data-theme="light"] body.page-product .product-tabs__grid > div,
body.theme-light.page-product .product-tabs__grid > div,
body.day-theme.page-product .product-tabs__grid > div {
  background: #fbf7ef !important;
  border-color: #d8c7ac !important;
}

html[data-theme="light"] body.page-product .spec-table th,
html[data-theme="light"] body.page-product .spec-table td,
body.theme-light.page-product .spec-table th,
body.theme-light.page-product .spec-table td,
body.day-theme.page-product .spec-table th,
body.day-theme.page-product .spec-table td {
  background: #fffaf3 !important;
  color: #382d21 !important;
  border-color: #d8c7ac !important;
}

html[data-theme="light"] body.page-product .product-volume-option,
html[data-theme="light"] body.page-product .product-size-option,
html[data-theme="light"] body.page-product .product-color-option,
body.theme-light.page-product .product-volume-option,
body.theme-light.page-product .product-size-option,
body.theme-light.page-product .product-color-option,
body.day-theme.page-product .product-volume-option,
body.day-theme.page-product .product-size-option,
body.day-theme.page-product .product-color-option {
  background: #fffaf2 !important;
  color: #34291e !important;
  border-color: #cdb895 !important;
}

html[data-theme="light"] body.page-product .product-volume-option.is-selected,
html[data-theme="light"] body.page-product .product-size-option.is-selected,
html[data-theme="light"] body.page-product .product-color-option.is-selected,
body.theme-light.page-product .product-volume-option.is-selected,
body.theme-light.page-product .product-size-option.is-selected,
body.theme-light.page-product .product-color-option.is-selected,
body.day-theme.page-product .product-volume-option.is-selected,
body.day-theme.page-product .product-size-option.is-selected,
body.day-theme.page-product .product-color-option.is-selected {
  background: #d8b66d !important;
  color: #21190f !important;
  border-color: #b88e3f !important;
}

html[data-theme="light"] body.page-product .related-products,
body.theme-light.page-product .related-products,
body.day-theme.page-product .related-products {
  background: #eee5d7 !important;
  background-image: none !important;
}

/* VOEVODA — final equal inner spacing for product description */
html[data-theme="light"] body.page-product .product-tabs__grid,
body.theme-light.page-product .product-tabs__grid,
body.day-theme.page-product .product-tabs__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.3fr) minmax(340px, 0.9fr) !important;
  gap: 34px !important;
  align-items: start !important;
}

html[data-theme="light"] body.page-product #product-full-description,
body.theme-light.page-product #product-full-description,
body.day-theme.page-product #product-full-description {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 38px 64px 42px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

html[data-theme="light"] body.page-product .product-tabs__grid > div:last-child,
body.theme-light.page-product .product-tabs__grid > div:last-child,
body.day-theme.page-product .product-tabs__grid > div:last-child {
  width: 100% !important;
  margin: 0 !important;
  padding: 38px 40px 40px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

html[data-theme="light"] body.page-product #product-full-description h2,
html[data-theme="light"] body.page-product .product-tabs__grid > div:last-child h2,
body.theme-light.page-product #product-full-description h2,
body.theme-light.page-product .product-tabs__grid > div:last-child h2,
body.day-theme.page-product #product-full-description h2,
body.day-theme.page-product .product-tabs__grid > div:last-child h2 {
  margin: 0 0 22px !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

html[data-theme="light"] body.page-product #product-full-description p,
body.theme-light.page-product #product-full-description p,
body.day-theme.page-product #product-full-description p {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.78 !important;
  text-align: justify !important;
  text-justify: inter-word !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  box-sizing: border-box !important;
}

html[data-theme="light"] body.page-product .spec-table,
body.theme-light.page-product .spec-table,
body.day-theme.page-product .spec-table {
  width: 100% !important;
  margin: 0 !important;
}

html[data-theme="light"] body.page-product .spec-table th,
html[data-theme="light"] body.page-product .spec-table td,
body.theme-light.page-product .spec-table th,
body.theme-light.page-product .spec-table td,
body.day-theme.page-product .spec-table th,
body.day-theme.page-product .spec-table td {
  padding: 14px 16px !important;
  line-height: 1.5 !important;
  vertical-align: top !important;
}

@media (max-width: 1100px) {
  html[data-theme="light"] body.page-product .product-tabs__grid,
  body.theme-light.page-product .product-tabs__grid,
  body.day-theme.page-product .product-tabs__grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.9fr) !important;
    gap: 24px !important;
  }

  html[data-theme="light"] body.page-product #product-full-description,
  body.theme-light.page-product #product-full-description,
  body.day-theme.page-product #product-full-description {
    padding: 34px 46px 38px !important;
  }
}

@media (max-width: 900px) {
  html[data-theme="light"] body.page-product .product-tabs__grid,
  body.theme-light.page-product .product-tabs__grid,
  body.day-theme.page-product .product-tabs__grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  html[data-theme="light"] body.page-product #product-full-description,
  body.theme-light.page-product #product-full-description,
  body.day-theme.page-product #product-full-description,
  html[data-theme="light"] body.page-product .product-tabs__grid > div:last-child,
  body.theme-light.page-product .product-tabs__grid > div:last-child,
  body.day-theme.page-product .product-tabs__grid > div:last-child {
    padding: 24px 22px 28px !important;
  }

  html[data-theme="light"] body.page-product #product-full-description p,
  body.theme-light.page-product #product-full-description p,
  body.day-theme.page-product #product-full-description p {
    text-align: left !important;
  }
}

/* VOEVODA — dark theme equal inner spacing for product description and specs */
html[data-theme="dark"] body.page-product .product-tabs__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.3fr) minmax(340px, 0.9fr) !important;
  gap: 34px !important;
  align-items: start !important;
}

html[data-theme="dark"] body.page-product #product-full-description {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 38px 64px 42px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

html[data-theme="dark"] body.page-product .product-tabs__grid > div:last-child {
  width: 100% !important;
  margin: 0 !important;
  padding: 38px 40px 40px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

html[data-theme="dark"] body.page-product #product-full-description h2,
html[data-theme="dark"] body.page-product .product-tabs__grid > div:last-child h2 {
  margin: 0 0 22px !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

html[data-theme="dark"] body.page-product #product-full-description p {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.78 !important;
  text-align: justify !important;
  text-justify: inter-word !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  box-sizing: border-box !important;
}

html[data-theme="dark"] body.page-product .spec-table {
  width: 100% !important;
  margin: 0 !important;
}

html[data-theme="dark"] body.page-product .spec-table th,
html[data-theme="dark"] body.page-product .spec-table td {
  padding: 14px 16px !important;
  line-height: 1.5 !important;
  vertical-align: top !important;
}

@media (max-width: 1100px) {
  html[data-theme="dark"] body.page-product .product-tabs__grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.9fr) !important;
    gap: 24px !important;
  }

  html[data-theme="dark"] body.page-product #product-full-description {
    padding: 34px 46px 38px !important;
  }
}

@media (max-width: 900px) {
  html[data-theme="dark"] body.page-product .product-tabs__grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  html[data-theme="dark"] body.page-product #product-full-description,
  html[data-theme="dark"] body.page-product .product-tabs__grid > div:last-child {
    padding: 24px 22px 28px !important;
  }

  html[data-theme="dark"] body.page-product #product-full-description p {
    text-align: left !important;
  }
}

/* =========================================================
   VOEVODA — product gallery laptop overflow fix
   Prevents the gallery from covering the product title on
   medium/laptop viewports and keeps broken images contained.
   ========================================================= */
.page-product .product-detail--premium,
.page-product .product-gallery,
.page-product .product-gallery__layout,
.page-product .product-gallery__main,
.page-product .product-info {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.page-product .product-gallery {
  width: 100% !important;
  overflow: hidden !important;
}

.page-product .product-gallery__layout {
  grid-template-columns: 82px minmax(0, 1fr) !important;
  width: 100% !important;
}

.page-product .product-gallery__main {
  width: 100% !important;
  overflow: hidden !important;
  contain: layout paint;
}

.page-product .product-gallery__main img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  box-sizing: border-box !important;
  object-fit: contain !important;
}

.page-product .product-info {
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.page-product .product-info h1 {
  max-width: 100%;
  overflow-wrap: break-word;
}

/* Laptop layout: keep two columns, but give both sides safe shrink space. */
@media (min-width: 1181px) and (max-width: 1600px) {
  .page-product .product-detail--premium {
    grid-template-columns: minmax(0, 1fr) minmax(380px, .88fr) !important;
    gap: 18px !important;
  }

  .page-product .product-gallery__layout {
    grid-template-columns: 70px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .page-product .product-gallery__thumb {
    width: 70px !important;
    height: 62px !important;
    flex: 0 0 62px !important;
  }

  .page-product .product-gallery__caption {
    margin-left: 80px !important;
  }

  .page-product .product-info {
    padding: 24px 22px !important;
  }

  .page-product .product-info h1 {
    font-size: clamp(30px, 3.05vw, 46px) !important;
    line-height: 1.04 !important;
  }
}

/* Existing stacked tablet mode: make the main image predictable. */
@media (max-width: 1180px) {
  .page-product .product-gallery {
    overflow: visible !important;
  }

  .page-product .product-gallery__main {
    aspect-ratio: 4 / 3;
  }

  .page-product .product-gallery__main img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: auto !important;
    padding: 14px !important;
  }
}

@media (max-width: 820px) {
  .page-product .product-gallery__layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .page-product .product-gallery__caption {
    margin-left: 0 !important;
  }
}


/* STABLE V1 — gallery visibility/cache resilience */
.page-product .product-gallery__thumb[hidden] {
  display: block !important;
}
.page-product .product-gallery__thumb {
  visibility: visible !important;
}
@media (min-width: 1181px) and (max-width: 1600px) {
  .page-product .product-gallery__thumbs {
    min-height: 0 !important;
    max-height: 620px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }
}

/* VOEVODA 1.0.4 — rich short product description */
.product-info__summary--rich{overflow-wrap:anywhere}
.product-info__summary--rich> :first-child{margin-top:0}
.product-info__summary--rich> :last-child{margin-bottom:0}
.product-info__summary--rich p,.product-info__summary--rich div{margin:0 0 8px}
.product-info__summary--rich font[size="1"]{font-size:12px}
.product-info__summary--rich font[size="2"]{font-size:14px}
.product-info__summary--rich font[size="3"]{font-size:16px}
.product-info__summary--rich font[size="4"]{font-size:18px}
.product-info__summary--rich font[size="5"]{font-size:22px}
.product-info__summary--rich font[size="6"]{font-size:26px}
.product-info__summary--rich font[size="7"]{font-size:32px}

/* VOEVODA 1.0.5 — readable full product description in light theme */
html[data-theme="light"] body.page-product #product-full-description,
html[data-theme="light"] body.page-product #product-full-description .product-description-copy,
html[data-theme="light"] body.page-product #product-full-description .product-description-copy *,
body.theme-light.page-product #product-full-description,
body.theme-light.page-product #product-full-description .product-description-copy,
body.theme-light.page-product #product-full-description .product-description-copy *,
body.day-theme.page-product #product-full-description,
body.day-theme.page-product #product-full-description .product-description-copy,
body.day-theme.page-product #product-full-description .product-description-copy * {
  color: #111111 !important;
}

html[data-theme="light"] body.page-product #product-full-description h2,
body.theme-light.page-product #product-full-description h2,
body.day-theme.page-product #product-full-description h2 {
  color: #111111 !important;
}


/* VOEVODA 1.0.6 — description alignment */
.product-info__summary--rich.voevoda-text-align--left,
.product-description-copy.voevoda-text-align--left { text-align:left !important; }
.product-info__summary--rich.voevoda-text-align--center,
.product-description-copy.voevoda-text-align--center { text-align:center !important; }
.product-info__summary--rich.voevoda-text-align--right,
.product-description-copy.voevoda-text-align--right { text-align:right !important; }
.product-info__summary--rich.voevoda-text-align--justify,
.product-description-copy.voevoda-text-align--justify { text-align:justify !important; text-align-last:auto; }
.product-info__summary--rich.voevoda-text-align--left *,
.product-info__summary--rich.voevoda-text-align--center *,
.product-info__summary--rich.voevoda-text-align--right *,
.product-info__summary--rich.voevoda-text-align--justify *,
.product-description-copy.voevoda-text-align--left *,
.product-description-copy.voevoda-text-align--center *,
.product-description-copy.voevoda-text-align--right *,
.product-description-copy.voevoda-text-align--justify * { text-align:inherit !important; }

/* VOEVODA 1.0.7 — hard priority for saved product description alignment */
body.page-product .product-info__summary--rich.voevoda-text-align--left,
body.page-product .product-info__summary--rich.voevoda-text-align--left *,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--left,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--left * {
  text-align: left !important;
  text-align-last: auto !important;
}
body.page-product .product-info__summary--rich.voevoda-text-align--center,
body.page-product .product-info__summary--rich.voevoda-text-align--center *,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--center,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--center * {
  text-align: center !important;
  text-align-last: auto !important;
}
body.page-product .product-info__summary--rich.voevoda-text-align--right,
body.page-product .product-info__summary--rich.voevoda-text-align--right *,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--right,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--right * {
  text-align: right !important;
  text-align-last: auto !important;
}
body.page-product .product-info__summary--rich.voevoda-text-align--justify,
body.page-product .product-info__summary--rich.voevoda-text-align--justify *,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--justify,
body.page-product #product-full-description .product-description-copy.voevoda-text-align--justify * {
  text-align: justify !important;
  text-justify: inter-word !important;
  text-align-last: auto !important;
}


/* VOEVODA 1.0.8 — hard alignment enforcement from saved product value */
body.page-product [data-voevoda-align="left"],
body.page-product [data-voevoda-align="left"] * { text-align:left !important; text-align-last:auto !important; }
body.page-product [data-voevoda-align="center"],
body.page-product [data-voevoda-align="center"] * { text-align:center !important; text-align-last:auto !important; }
body.page-product [data-voevoda-align="right"],
body.page-product [data-voevoda-align="right"] * { text-align:right !important; text-align-last:auto !important; }
body.page-product [data-voevoda-align="justify"],
body.page-product [data-voevoda-align="justify"] * {
  text-align:justify !important;
  text-align-last:justify !important;
  text-justify:inter-word !important;
}

/* VOEVODA 1.0.15 — SKU next to product title */
.product-info__sku{
  display:flex;
  align-items:center;
  gap:7px;
  margin:-3px 0 14px;
  color:var(--muted);
  font-size:11px;
  line-height:1.3;
  letter-spacing:.045em;
}
.product-info__sku span{
  opacity:.78;
}
.product-info__sku strong{
  color:var(--gold-light);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  overflow-wrap:anywhere;
}
.product-info__sku.voevoda-text-align--center{justify-content:center}
.product-info__sku.voevoda-text-align--right{justify-content:flex-end}
.product-info__sku.voevoda-text-align--left{justify-content:flex-start}
html[data-theme="light"] body.page-product .product-info__sku strong{color:#6f4e24}
@media(max-width:760px){
  .product-info__sku{margin-top:0;margin-bottom:12px;font-size:10px}
  .product-info__sku strong{font-size:11px}
}
