/* Stage 03E: align desktop product details with the mobile storefront language. */
@media (min-width: 621px) {
  body.store-route-product #sharedStoreHeader.shared-store-header.topbar {
    position:fixed!important; inset:0 0 auto!important; width:100%!important; height:80px!important;
    margin:0!important; padding:12px max(24px,calc((100vw - 1480px)/2))!important;
    box-sizing:border-box; display:grid!important;
    grid-template-columns:minmax(130px,1fr) minmax(420px,1080px) minmax(130px,1fr)!important;
    gap:18px!important; background:rgba(255,255,255,.76)!important;
    border:0!important; border-bottom:1px solid #f2e7ed!important;
    border-radius:0!important; box-shadow:none!important;
    backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
    transition:background-color .22s ease,box-shadow .22s ease!important;
  }
  body.store-route-product #sharedStoreHeader.shared-store-header.topbar.scrolled-v7097 {
    background:#fff!important; box-shadow:0 4px 18px #51354a12!important;
  }
  body.store-route-product #sharedStoreHeader #menuButton { grid-column:1; grid-row:1; justify-self:start; }
  body.store-route-product #sharedStoreHeader #homeLogo { grid-column:1; grid-row:1; justify-self:start; margin-left:50px; }
  body.store-route-product #sharedStoreHeader .reiwa-search-dock { grid-column:2; grid-row:1; width:100%!important; max-width:none!important; }
  body.store-route-product #sharedStoreHeader .shared-header-actions { grid-column:3; grid-row:1; justify-self:end; }
  body.store-route-product #sharedStoreHeader .shared-icon-btn { color:#c6467a!important; }
  body.store-route-product #sharedSearchFormV708 {
    border:0!important; border-radius:999px!important; background:#fff7fb!important;
    box-shadow:inset 0 2px 8px rgba(93,45,72,.18),inset 0 0 0 1px rgba(198,70,122,.08)!important;
  }
  body.store-route-product #sharedSearchPanelV708.shared-search-panel-v708 {
    top:88px!important; left:50%!important; transform:translateX(-50%)!important;
    width:min(1080px,calc(100vw - 290px))!important;
    max-height:calc(100dvh - 104px)!important;
  }
  body.store-route-product #routePageRoot { padding-top:16px; }
  body.store-route-product #modalRoot.route-content-v703 { background:transparent!important; }
  body.store-route-product .detail {
    border:1px solid #f0dce5!important; border-radius:24px!important;
    background:rgba(255,255,255,.9)!important;
    box-shadow:0 20px 50px #51354a12;
  }
  body.store-route-product .detail-layout { gap:clamp(24px,4vw,60px)!important; }
  body.store-route-product .gallery-main {
    border-color:#efdce6!important; background:#fff9fc!important;
    box-shadow:0 8px 26px #51354a0d;
  }
  body.store-route-product .detail-info h1 { color:#34264d!important; font-weight:400!important; }
  body.store-route-product .availability>div,
  body.store-route-product .free-shipping-detail,
  body.store-route-product .product-description {
    border-color:#efdce6!important; border-radius:14px!important; background:#fff!important;
  }
  body.store-route-product .product-purchase-v707 button { transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease; }
  body.store-route-product .product-purchase-v707 button:hover:not(:disabled) { transform:translateY(-2px); box-shadow:0 7px 18px #51354a20; }
  body.store-route-product .product-purchase-v707 button:active:not(:disabled) { transform:translateY(0); }
  body:not(.store-route-page) #grid .card { transition:transform .2s ease,box-shadow .2s ease; }
  body:not(.store-route-page) #grid .card:focus-within { box-shadow:0 0 0 3px #c6467a66,0 10px 25px #51354a18; }
}
@media (min-width:621px) and (max-width:1100px) {
  body.store-route-product #sharedStoreHeader.shared-store-header.topbar {
    grid-template-columns:minmax(120px,1fr) minmax(280px,1.8fr) minmax(110px,1fr)!important;
  }
}
@media (prefers-reduced-motion:reduce) {
  body.store-route-product .product-purchase-v707 button,
  body:not(.store-route-page) #grid .card { transition:none!important; }
}

/* Stage 03F: mobile detail sections adapted into a spacious desktop layout. */
@media (min-width:621px) {
  body.store-route-product #modalRoot.route-content-v703 { max-width:1280px!important; }
  body.store-route-product #modalRoot>.detail {
    width:100%!important; max-width:none!important; min-height:0!important;
    overflow:visible!important; border:0!important; border-radius:0!important;
    background:transparent!important; box-shadow:none!important;
  }
  body.store-route-product #modalRoot .detail-layout {
    display:grid!important; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr)!important;
    align-items:start!important; gap:22px!important;
    width:100%!important; max-width:none!important; padding:0 0 48px!important;
  }
  body.store-route-product #modalRoot .gallery,
  body.store-route-product #modalRoot .detail-info,
  body.store-route-product #modalRoot .reviews-v388,
  body.store-route-product #modalRoot .related-products-v387 {
    min-width:0; border:1px solid #f0dce5!important; border-radius:22px!important;
    background:rgba(255,255,255,.92)!important; box-shadow:0 12px 34px #51354a0d;
  }
  body.store-route-product #modalRoot .gallery { padding:18px!important; }
  body.store-route-product #modalRoot .gallery-main {
    width:100%; aspect-ratio:1!important; border:0!important; border-radius:16px!important;
    overflow:hidden; background:#fff9fc!important; box-shadow:none!important;
  }
  body.store-route-product #modalRoot .gallery-main>img { object-fit:contain!important; }
  body.store-route-product #modalRoot .thumbs { margin:12px 0 0; padding:0!important; }
  body.store-route-product #modalRoot .detail-info { padding:28px!important; }
  body.store-route-product #modalRoot .detail-status-row { min-height:30px; }
  body.store-route-product #modalRoot .detail-info h1 {
    margin:17px 0 8px!important; font:400 clamp(25px,2.3vw,34px)/1.3 Alata,system-ui,sans-serif!important;
  }
  body.store-route-product #modalRoot .detail-proof-v708 { margin:0 0 21px!important; }
  body.store-route-product #modalRoot .price-box {
    margin:0!important; padding:19px 21px!important; border:1px solid #efdce6!important; border-radius:17px!important;
    background:#fff7fb!important; color:#34264d!important; box-shadow:none!important;
  }
  body.store-route-product #modalRoot .price-box>div:first-child strong { color:#c6467a!important; }
  body.store-route-product #modalRoot .price-box>div+div { border-left-color:#efdce6!important; }
  body.store-route-product #modalRoot .price-box>div+div strong { color:#51354a!important; }
  body.store-route-product #modalRoot .price-box small { color:#88747f!important; }
  body.store-route-product #modalRoot .availability { margin-top:13px!important; gap:10px!important; }
  body.store-route-product #modalRoot .availability>div,
  body.store-route-product #modalRoot .free-shipping-detail { padding:14px!important; }
  body.store-route-product #modalRoot .product-description {
    margin:22px -28px 0!important; padding:22px 28px 0!important;
    border:0!important; border-top:10px solid #f5eaf0!important;
    border-radius:0!important; background:transparent!important;
  }
  body.store-route-product #modalRoot .product-description :is(h2,h3) {
    margin:0 0 12px!important; font:400 20px/1.45 Alata,system-ui,sans-serif!important;
  }
  body.store-route-product #modalRoot .product-description p { font-size:13px!important; line-height:1.7!important; }
  body.store-route-product #modalRoot .product-purchase-v707 { margin-top:20px!important; }
  body.store-route-product #modalRoot .product-purchase-v707 .order-now { min-height:54px!important; border-radius:13px!important; }
  body.store-route-product #modalRoot .product-purchase-v707 .order-now.buy-v707 { background:#c6467a!important; }
  body.store-route-product #modalRoot .product-purchase-v707 .order-now.cart-now { border-color:#c6467a!important; color:#c6467a!important; }
  body.store-route-product #modalRoot .preorder-timeline-v60 {
    margin:22px -28px -28px!important; padding:21px 28px 26px!important;
    border:0!important; border-top:10px solid #f5eaf0!important;
    border-radius:0 0 22px 22px!important; background:transparent!important;
  }
  body.store-route-product #modalRoot .preorder-timeline-v60 h3 { font:400 20px/1.45 Alata,system-ui,sans-serif!important; }
  body.store-route-product #modalRoot .reviews-v388,
  body.store-route-product #modalRoot .related-products-v387 {
    grid-column:1/-1!important; margin:0!important; padding:26px 30px!important;
  }
  body.store-route-product #modalRoot .reviews-v388 h2,
  body.store-route-product #modalRoot .related-products-v387 h2 {
    font:400 22px/1.4 Alata,system-ui,sans-serif!important;
  }
  body.store-route-product #modalRoot .review-empty-v388 { background:#f9f4f7!important; }
}
@media (min-width:621px) and (max-width:900px) {
  body.store-route-product #modalRoot .detail-layout { grid-template-columns:minmax(0,1fr)!important; }
  body.store-route-product #modalRoot .gallery { max-width:680px; width:100%; margin:auto; }
}

/* Stage 03G: carry the sold state from catalog cards into product details. */
body.store-route-product #modalRoot .reiwa-detail-sold-v3g .gallery-main img,
body.store-route-product #modalRoot .reiwa-detail-sold-v3g .md-slide-v7106 img {
  filter:grayscale(1)!important;
}
body.store-route-product #modalRoot .reiwa-detail-sold-label-v3g {
  display:inline-flex; align-items:center; min-height:26px; padding:4px 9px;
  border-radius:7px; background:#d12838; color:#fff;
  font:400 11px/1 Alata,system-ui,sans-serif; letter-spacing:.03em;
}
body.store-route-product #modalRoot .reiwa-detail-sold-v3g .detail-status-row>.badge {
  opacity:.72;
}
