.product-detail-menu-column { display: none; }

/* Product detail header stays accessible while the page is being explored. */
.product-detail-page .site-header {
  position: sticky;
  z-index: 190;
  top: 0;
  background: rgb(255 255 255 / 98%);
  box-shadow: 0 7px 20px rgb(24 28 35 / 8%);
  isolation: isolate;
  backdrop-filter: blur(12px);
}

@media (max-width: 767.98px) {
  body:has(.product-detail-page) .layout-settings { display: none !important; }

  .product-gallery__stage,
  .product-gallery-modal__viewer { touch-action: pan-y; }
  .product-gallery__stage.is-swiping,
  .product-gallery-modal__viewer.is-swiping { cursor: grabbing; }
  .product-gallery__stage.is-swiping .product-gallery__main,
  .product-gallery-modal__viewer.is-swiping img { pointer-events: none; }

  .product-detail-page .site-header {
    min-height: 52px;
    border-bottom: 1px solid #eceef1;
    box-shadow: 0 3px 14px rgb(24 28 35 / 7%);
  }

  .product-detail-page .header-main,
  .product-detail-page .site-header.is-search-sticky .header-main {
    min-height: 52px;
    padding: 5px 12px;
    box-shadow: none;
  }

  .product-detail-page .header-main .header-container { padding-inline: 0; }

  .product-detail-page .header-main .row {
    position: relative;
    min-height: 42px;
    --bs-gutter-x: 0;
    --bs-gutter-y: 0;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: center;
    margin: 0;
  }

  .product-detail-page .mobile-search-row,
  .product-detail-page .site-header.is-search-sticky .mobile-search-row,
  .product-detail-page .category-nav,
  .product-detail-page .search-mega-menu { display: none !important; }

  .product-detail-page .header-main .header-brand-column,
  .product-detail-page .site-header.is-search-sticky .header-main .header-brand-column {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    display: block !important;
    padding: 0;
    transform: translate(-50%, -50%);
  }

  .product-detail-page .header-main .header-logo {
    display: flex;
    width: 96px;
    height: 32px;
    align-items: center;
    justify-content: center;
  }

  .product-detail-page .header-main .header-logo img {
    width: 96px;
    height: 32px;
    object-fit: contain;
    object-position: center;
  }

  .product-detail-page .product-detail-menu-column,
  .product-detail-page .site-header.is-search-sticky .product-detail-menu-column {
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 0;
    display: grid !important;
    width: 38px;
    height: 38px;
    place-items: center;
    padding: 0;
    margin-top: 0;
    transform: translateY(-50%);
  }

  .product-detail-page .product-detail-menu {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    padding: 0;
    border: 1px solid #e1e4e8;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 7px rgb(20 24 30 / 6%);
    cursor: pointer;
  }

  .product-detail-page .product-detail-menu:active { background: #f4f5f6; transform: scale(.94); }
  .product-detail-page .product-detail-menu img { width: 21px; }
  .product-detail-page .product-detail-menu.is-back img { width: 20px; }

  .product-detail-page .header-actions,
  .product-detail-page .site-header.is-search-sticky .header-main .header-actions {
    position: absolute;
    z-index: 4;
    top: 50%;
    right: 0;
    display: flex !important;
    width: auto;
    min-height: 38px;
    flex: 0 0 auto;
    align-items: center;
    gap: 5px;
    margin: 0;
    padding: 0;
    transform: translateY(-50%);
  }

  .product-detail-page .store-link,
  .product-detail-page .mobile-store-link { display: none !important; }

  .product-detail-page .account-area { order: 1; }
  .product-detail-page .cart-link { order: 2; margin: 0; }

  .product-detail-page .account-link,
  .product-detail-page .cart-link {
    width: 38px;
    min-width: 38px;
    min-height: 38px;
    justify-content: center;
    padding: 0;
    border: 1px solid #e1e4e8;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 7px rgb(20 24 30 / 6%);
  }

  .product-detail-page .account-link { gap: 0; }
  .product-detail-page .account-link .action-icon { width: 30px; height: 30px; background: transparent; }
  .product-detail-page .account-link .action-icon img,
  .product-detail-page .cart-link > img { width: 20px; }
  .product-detail-page .account-copy,
  .product-detail-page .chevron,
  .product-detail-page .cart-link span { display: none; }
  .product-detail-page .cart-link b { top: -4px; right: -4px; width: 18px; height: 18px; font-size: 10px; }

  .product-detail-page .account-menu { top: 47px; right: 0; left: auto; width: min(352px, calc(100vw - 24px)); }
  .product-detail-page .account-menu::before { right: 52px; }
  .product-detail-page .product-breadcrumb { display: none; }
  .product-detail-page .product-detail-main { padding-top: 10px; }
}

@media (max-width: 359.98px) {
  .product-detail-page .header-actions { gap: 3px; }
  .product-detail-page .account-link,
  .product-detail-page .cart-link,
  .product-detail-page .product-detail-menu { width: 36px; min-width: 36px; height: 36px; min-height: 36px; }
}

/* Mobile purchase hierarchy: quiet summary, clearly separated choices. */
@media (max-width: 575.98px) {
  /* A shared readability floor for the whole mobile product-detail flow. */
  .product-detail-main p,
  .product-detail-main li,
  .product-detail-main a,
  .product-detail-main label,
  .product-detail-main button { font-size: 12px; }

  .product-detail-main small { font-size: 11px !important; line-height: 1.35; }
  .product-detail-main h2 { font-size: 18px; line-height: 1.3; }
  .product-detail-main h3 { font-size: 15px; line-height: 1.35; }

  .product-detail-main .product-purchase h1 {
    margin: 9px 0 8px;
    font-size: 18px;
    line-height: 1.34;
  }

  .product-detail-main .product-purchase__rating { gap: 6px; font-size: 11px; }
  .product-detail-main .product-purchase__rating em,
  .product-detail-main .product-purchase__rating small { display: none; }

  .product-detail-main .product-purchase__price {
    margin: 12px 0;
    padding: 12px;
    border: 1px solid #f1dfe2;
    border-radius: 12px;
  }

  .product-detail-main .product-purchase__price strong { font-size: 25px; }
  .product-detail-main .product-purchase__price del { font-size: 11px; }
  .product-detail-main .product-purchase__price small { font-size: 11px !important; }
  .product-detail-main .product-purchase__price > span { padding: 7px 9px; }
  .product-detail-main .product-purchase__price > span b { font-size: 14px; }

  .product-detail-main .product-variant-picker { padding: 12px; border-radius: 12px; }
  .product-detail-main .product-variant-picker > header > div { font-size: 12px; }
  .product-detail-main .product-variant-picker > header > div strong { font-size: 13px; }
  .product-detail-main .product-variant-picker > header > small { font-size: 11px !important; }
  .product-detail-main .product-color-carousel { padding: 0 24px; }
  .product-detail-main .product-color-options { gap: 7px; padding-bottom: 4px; }
  .product-detail-main .product-color-options button {
    min-width: 132px;
    min-height: 58px;
    flex-basis: 132px;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 7px;
    padding: 5px;
  }
  .product-detail-main .product-color-options button.is-selected { padding: 4px; }
  .product-detail-main .product-color-options__image { width: 44px; height: 44px; }
  .product-detail-main .product-color-options button b { font-size: 12px; }
  .product-detail-main .product-color-options button small { font-size: 11px !important; }

  .product-detail-main .product-option-group {
    margin: 0 0 10px;
    padding: 11px;
    border: 1px solid #e5e8ed;
    border-radius: 12px;
    background: #fff;
  }

  .product-detail-main .product-option-group legend { margin-bottom: 9px; font-size: 13px; }
  .product-detail-main .product-option-group legend button,
  .product-detail-main .product-option-group legend small { font-size: 11px !important; }
  .product-detail-main .product-option-group [data-option] { min-height: 43px; padding: 4px; }
  .product-detail-main .product-option-group [data-option] strong { font-size: 13px; }
  .product-detail-main .product-option-group [data-option] small { font-size: 11px !important; }

  .product-detail-main .product-add-cart,
  .product-detail-main .product-buy-now { font-size: 13px; }

  .product-detail-main .product-purchase__fulfillment p b { font-size: 12px; }
  .product-detail-main .product-purchase__fulfillment p small { font-size: 11px !important; }
}
