/* Wishlist page */
body[data-page-type="page"] .main-page__content {
  max-width: none;
}

body[data-page-type="page"] .custom-page-render-container {
  --talons-wishlist-gutter: 24px;
  --talons-wishlist-title-size: 24px;
  --talons-wishlist-subtitle-size: 16px;
  --talons-wishlist-price-size: var(--body2-font-size);
  --talons-wishlist-button-size: var(--body2-font-size);
  --talons-wishlist-meta-size: var(--body3-font-size);
  --talons-wishlist-compare-at-gap: 8px;
  --talons-wishlist-sale-color: #c20000;
  --talons-wishlist-origin-color: #8f8f8f;
  --talons-wishlist-sale-size-desktop: 20px;
  --talons-wishlist-sale-size-mobile: 16px;
  --talons-wishlist-origin-size-desktop: 16px;
  --talons-wishlist-origin-size-mobile: 14px;
  --talons-wishlist-origin-line-height: 18px;
  --talons-wishlist-sale-font-family: 'Jost', var(--sort-body-font, sans-serif);
  --talons-wishlist-origin-font-family: 'Jost', var(--sort-body-font, sans-serif);
  --talons-wishlist-subtitle-font-family: 'Jost', var(--sort-body-font, sans-serif);
  --talons-wishlist-sale-font-weight: 300;
  --talons-wishlist-origin-font-weight: 300;
  --talons-wishlist-subtitle-font-weight: 400;
  --talons-wishlist-badge-bg: #c10020;
  --talons-wishlist-badge-text: #ffffff;
  --talons-wishlist-badge-font-size-desktop: 14px;
  --talons-wishlist-badge-font-size-mobile: 12px;
  --talons-wishlist-badge-font-weight: 700;
  --talons-wishlist-badge-padding-x-desktop: 10px;
  --talons-wishlist-badge-padding-y-desktop: 10px;
  --talons-wishlist-badge-padding-x-mobile: 8px;
  --talons-wishlist-badge-padding-y-mobile: 4px;
  color: #000;
  font-family: var(--sort-body-font);
}

body[data-page-type="page"] .custom-page-render-container * {
  box-sizing: border-box;
}

body[data-page-type="page"] .custom-page-render-container > div {
  width: 100%;
}

body[data-page-type="page"] .custom-page-render-container .title3 {
  font-family: var(--sort-title-font);
  font-size: var(--title3-font-size);
  line-height: var(--sort-title3-line-height, 1);
  letter-spacing: var(--sort-title3-letter-spacing, normal);
  text-transform: var(--sort-title3-text-transform, none);
  gap: 12px;
}

body[data-page-type="page"] .custom-page-render-container ._back_ph8on_12 {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: fit-content;
  height: 40px;
}

body[data-page-type="page"] .custom-page-render-container ._back_ph8on_12 svg {
  width: 32px;
  height: 32px;
  margin-left: -10px;
}

body[data-page-type="page"] .custom-page-render-container .sc-ehCJOs {
  display: flex;
  align-items: center;
  gap: 12px;
}

body[data-page-type="page"] .custom-page-render-container .sc-nVkyK,
body[data-page-type="page"] .custom-page-render-container .kQjnwm {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: inherit;
  font-family: var(--sort-body-font);
  font-size: var(--body3-font-size);
  line-height: var(--sort-body-line-height, 1.4);
}

body[data-page-type="page"] .custom-page-render-container .sc-efQSVx {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-top: 32px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}

body[data-page-type="page"] .custom-page-render-container .sc-cTAqQK {
  font-family: var(--sort-body-font);
  font-size: var(--body2-font-size);
  font-weight: var(--sort-body2-font-weight, 400);
  line-height: var(--sort-body-line-height, 1.4);
}

body[data-page-type="page"] .custom-page-render-container ._operate_ph8on_16 {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

body[data-page-type="page"] .custom-page-render-container ._addToCart_ph8on_20,
body[data-page-type="page"] .custom-page-render-container ._addToCart_ph8on_20:hover,
body[data-page-type="page"] .custom-page-render-container ._addToCart_ph8on_20:focus-visible {
  min-height: 54px;
  padding: 0 24px;
  border: 1px solid #000;
  border-radius: 0;
  font-family: var(--sort-body-font);
  font-size: var(--talons-wishlist-button-size);
  font-weight: var(--body-bold-font-weight, 700);
  letter-spacing: var(--sort-body-letter-spacing, 0.08em);
  text-transform: uppercase;
  box-shadow: none;
}

body[data-page-type="page"] .custom-page-render-container .sc-dPiLbb {
  position: relative;
  display: inline-flex;
  align-items: center;
}

body[data-page-type="page"] .custom-page-render-container .sc-jObWnj {
  min-height: 54px;
  min-width: 254px;
  padding: 0 42px 0 14px;
  border: 1px solid rgb(0 0 0 / 14%);
  border-radius: 0;
  background: #fff;
  color: #000;
  font-family: var(--sort-body-font);
  font-size: var(--body3-font-size);
  line-height: 1;
  appearance: none;
}

body[data-page-type="page"] .custom-page-render-container .sc-dPiLbb > svg {
  position: absolute;
  inset-inline-end: 14px;
  pointer-events: none;
}

/* Card wrapper — let the app own the grid, just ensure full width */
body[data-page-type="page"] .custom-page-render-container .sc-cCcXHH,
body[data-page-type="page"] .custom-page-render-container .dpsAEE,
body[data-page-type="page"] .custom-page-render-container .jGKhXL {
  width: 100%;
}

/* Row spacing between grid rows */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] {
  margin-bottom: 40px !important;
}

/* Card layout */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  color: inherit;
  text-decoration: none;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:first-child {
  margin-bottom: 4px !important;
}

/* ============================
   IMAGE — mirrors .block-product-image__image-wrapper from collections
   ============================ */

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] [class*="_productImgBox_"] {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  background-color: rgb(243 243 243 / 100%) !important;
}

/* Keep img in normal flow so the app's lazy loader (lozad IntersectionObserver) triggers correctly */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] [class*="_productImgBox_"] img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transition: transform 220ms ease;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item:hover [class*="_productImgBox_"] img {
  transform: scale(1.02);
}

/* ============================
   PRODUCT INFO
   ============================ */

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) {
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin-top: 2px;
}

/* Product title — match collection card (Jost, 24px desktop, body3 mobile, weight 500) */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) > div:first-child {
  display: -webkit-box;
  overflow: hidden;
  font-family: 'Jost', var(--sort-body-font, sans-serif);
  font-size: calc( 21px * 14 / 16 );
  font-weight: 500;
  line-height: var(--talons-product-card-title-line-height, 1.15);
  text-transform: uppercase;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--talons-product-card-title-lines);
  color: #000;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-subtitle {
  padding: 4px 0 0;
  color: rgb(var(--color-text));
  font-family: var(--talons-wishlist-subtitle-font-family);
  font-size: var(--talons-wishlist-subtitle-size);
  font-weight: var(--talons-wishlist-subtitle-font-weight);
  line-height: 1.35;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-subtitle span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.2;
  min-height: 2.4em; /* line-height × max-lines = 1.2 × 2 */
}

/* Hide variant subtitle row */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) > div:nth-child(2):not(:last-child):not([data-role="st-wishlist-subtitle"]) {
  display: none;
}

/* Price row */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) > div:last-child,
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price,
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item .product-price {
  display: flex;
  font-family: var(--talons-wishlist-sale-font-family);
  font-size: var(--talons-wishlist-sale-size-desktop);
  font-weight: var(--talons-wishlist-sale-font-weight);
  line-height: 1.3;
  color: #000;
  gap: var(--talons-wishlist-compare-at-gap);
}

html.wishlist-enhancement--pending body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) > div:last-child:has(object.sales-currency-object),
body[data-page-type="page"] .custom-page-render-container.wishlist-enhancement--pending [class*="wishlist-media-box"] .wishlist-native-price,
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-native-price--hidden {
  display: none !important;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price .product-price {
  align-items: center;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price .product-price__sale {
  color: #000;
  font-family: var(--talons-wishlist-sale-font-family);
  font-size: var(--talons-wishlist-sale-size-desktop) !important;
  font-weight: var(--talons-wishlist-sale-font-weight);
  line-height: 1.3;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price.wishlist-product-price--discounted .product-price__sale {
  color: var(--talons-wishlist-sale-color);
  font-weight: var(--talons-wishlist-sale-font-weight);
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price .product-price__origin {
  color: var(--talons-wishlist-origin-color);
  font-family: var(--talons-wishlist-origin-font-family);
  font-size: var(--talons-wishlist-origin-size-desktop) !important;
  font-weight: var(--talons-wishlist-origin-font-weight);
  line-height: var(--talons-wishlist-origin-line-height);
  text-decoration: line-through;
  text-decoration-color: var(--talons-wishlist-origin-color);
  text-decoration-thickness: 1px;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) > div:last-child > span:nth-of-type(2) {
  order: 1;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) > div:last-child > span:nth-of-type(1) {
  order: 2;
}

/* Currency object (inherits sale color from theme when on sale) */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item object.sales-currency-object {
  font-family: 'Jost', var(--sort-body-font, sans-serif);
  font-size: var(--talons-wishlist-price-size);
  font-weight: 300;
  line-height: 1.3;
  pointer-events: none;
}

/* ============================
   BUTTONS — match button--fill
   ============================ */

/* Add to Cart / Sold Out button */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > button {
  width: 100%;
  min-height: 52px;
  margin-top: 2px;
  padding: 0 16px;
  border: 1px solid #000 !important;
  border-radius: 0;
  background-color: #000 !important;
  color: #fff !important;
  font-family: var(--sort-body-font, 'Jost', sans-serif);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: var(--sort-body-letter-spacing, 0.08em);
  text-transform: uppercase;
  box-shadow: none;
  cursor: pointer;
  transition: opacity 180ms ease;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > button:hover {
  opacity: 0.85;
}

/* Sold Out — disabled outline style */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > button:disabled,
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > button[disabled] {
  background-color: transparent !important;
  color: #000 !important;
  border-color: rgb(0 0 0 / 30%) !important;
  opacity: 0.6;
  cursor: not-allowed;
}

/* Add to Board link */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > [class*="_addToBoard_"] {
  margin-top: 2px;
  color: #000;
  font-family: var(--sort-body-font);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  border: 1px solid #000;
  text-transform: uppercase;
  padding: calc(var(--button-border-thickness) + 9px) calc(var(--button-border-thickness) + 18px);
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > [class*="_addToBoard_"]:hover {
  opacity: 0.72;
}

/* Delete (trash) button */
body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] [class*="popconfirm"] {
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgb(255 255 255 / 92%);
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 20px rgb(0 0 0 / 10%);
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] [class*="popconfirm"] svg {
  width: 20px;
  height: 20px;
}

body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-discount-tag {
  position: absolute;
  inset-inline-start: 0;
  inset-block-end: 0;
  z-index: 2;
  display: block;
  width: 100%;
  padding: var(--talons-wishlist-badge-padding-y-desktop) var(--talons-wishlist-badge-padding-x-desktop);
  background-color: var(--talons-wishlist-badge-bg);
  color: var(--talons-wishlist-badge-text);
  font-family: var(--sort-body-font, 'Jost', sans-serif);
  font-size: var(--talons-wishlist-badge-font-size-desktop);
  font-weight: var(--talons-wishlist-badge-font-weight);
  line-height: 1.2;
  text-align: center;
  pointer-events: none;
  text-transform: uppercase;
  border-radius: 0;
  box-sizing: border-box;
}

/* ============================
   REMOVE CONFIRMATION POPUP
   ============================ */

/* Popup container: grid layout — text on top, 2 buttons side by side below */
body[data-page-type="page"] .custom-page-render-container .sc-iCfMLu {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: stretch !important;
  gap: 8px !important;
  min-width: 240px !important;
  width: max-content !important;
  max-width: 300px !important;
  padding: 16px !important;
  background: #fff !important;
  border: 1px solid rgb(0 0 0 / 12%) !important;
  box-shadow: 0 8px 28px rgb(0 0 0 / 18%) !important;
  z-index: 999 !important;
}

/* Confirmation message — full width, spans both columns */
body[data-page-type="page"] .custom-page-render-container .sc-furwcr {
  grid-column: 1 / -1 !important;
  font-family: var(--sort-body-font);
  font-size: var(--body3-font-size);
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  margin-bottom: 4px;
}

/* Both popup buttons — shared base */
body[data-page-type="page"] .custom-page-render-container .sc-iCfMLu > button {
  min-height: 40px !important;
  padding: 0 12px !important;
  border-radius: 0 !important;
  font-family: var(--sort-body-font) !important;
  font-size: var(--body4-font-size) !important;
  font-weight: var(--body-bold-font-weight, 700) !important;
  letter-spacing: var(--sort-body-letter-spacing, 0.06em) !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: opacity 150ms ease !important;
  white-space: nowrap !important;
}

/* "Yes, remove" — column 1 (left), black fill */
body[data-page-type="page"] .custom-page-render-container .cGgPFw {
  margin-bottom: 0 !important;
}

body[data-page-type="page"] .custom-page-render-container .sc-pVTFL {
  grid-column: 1 !important;
  background-color: #000 !important;
  color: #fff !important;
  border: 1px solid #000 !important;
}

body[data-page-type="page"] .custom-page-render-container .sc-pVTFL:hover {
  opacity: 0.85 !important;
}

/* "Cancel" — column 2 (right), outline */
body[data-page-type="page"] .custom-page-render-container .sc-jrQzAO {
  grid-column: 2 !important;
  background-color: transparent !important;
  color: #000 !important;
  border: 1px solid #000 !important;
}

body[data-page-type="page"] .custom-page-render-container .sc-jrQzAO:hover {
  opacity: 0.72 !important;
}

/* Remove padding bottom from wishlist page */
body[data-page-type="page"] .custom-page-render-container .hdkhXt {
  padding-bottom: 0px;
}

body[data-page-type="page"] .custom-page-render-container .bCmUAz {
  height: auto;
}

body[data-page-type="page"] .custom-page-render-container .ihrTFQ {
  left: -20px;
}

body[data-page-type="page"] .iKQrPf button {
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: normal;
  font-family: var(--sort-body-font);
}

body[data-page-type="page"] .eptYc {
  font-size: 18px;
  letter-spacing: normal;
}

body[data-page-type="page"] .iKQrPf button:nth-of-type(1) {
  background-color: #000 !important;
  color:#fff !important;
  font-weight: 700;
}

body[data-page-type="page"] .notice-modal-fade-entered button {
  font-family: var(--sort-body-font);
  text-transform: uppercase;
  font-weight: 700 !important;
}

body[data-page-type="page"] .notice-modal-fade-entered [class*="modalTitle"] {
  font-size: 24px;
}

body[data-page-type="page"] ._modal_wkqub_1 ._modalContent_wkqub_7 {
  max-width: 100%;
}

#shopline-section-template--page--wishlist__main-page [class*="_tab_1nid8_1"] {
  font-family: var(--sort-body-font);
}

/* Variant */
.sc-iJKOTD {
  display: none !important;
}

.main-page__title {
  display: none !important;
}

/* ============================
   RESPONSIVE — MOBILE
   ============================ */

@media (max-width: 959px) {
  body[data-page-type="page"] .custom-page-render-container {
    --talons-wishlist-gutter: 16px;
    --talons-wishlist-title-size: var(--body3-font-size);
    --talons-wishlist-subtitle-size: 14px;
    --talons-wishlist-button-size: var(--body2-font-size);
  }

  body[data-page-type="page"] .custom-page-render-container .sc-efQSVx {
    margin-top: 24px;
    margin-bottom: 22px;
    gap: 14px;
  }

  body[data-page-type="page"] .custom-page-render-container ._operate_ph8on_16 {
    width: 100%;
    gap: 12px;
  }

  body[data-page-type="page"] .custom-page-render-container ._addToCart_ph8on_20 {
    width: 100%;
    min-height: 48px;
  }

  body[data-page-type="page"] .custom-page-render-container .sc-dPiLbb,
  body[data-page-type="page"] .custom-page-render-container .sc-jObWnj {
    width: 100%;
  }

  body[data-page-type="page"] .custom-page-render-container .sc-jObWnj {
    min-height: 48px;
    min-width: 0;
    font-size: var(--body4-font-size);
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] {
    margin-bottom: 28px !important;
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item {
    gap: 10px;
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > button {
    min-height: 44px;
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > [class*="_addToBoard_"] {
    font-size: var(--body4-font-size);
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price,
  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price .product-price,
  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price .product-price__sale {
    font-size: var(--talons-wishlist-sale-size-mobile) !important;
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-price .product-price__origin {
    font-size: var(--talons-wishlist-origin-size-mobile) !important;
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .wishlist-product-discount-tag {
    padding: var(--talons-wishlist-badge-padding-y-mobile) var(--talons-wishlist-badge-padding-x-mobile);
    font-size: var(--talons-wishlist-badge-font-size-mobile);
  }
}

/* ============================
   RESPONSIVE — DESKTOP
   ============================ */

@media (min-width: 960px) {
  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > button {
    font-size: 18px;
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > div:nth-of-type(2) > div:first-child {
    font-size: var(--talons-wishlist-title-size);
  }

  body[data-page-type="page"] .custom-page-render-container [class*="wishlist-media-box"] .product-item > [class*="_addToBoard_"] {
    font-size: 18px;
  }
}
