/* Product browsing stays compact; product and purchase facts remain complete. */
.product-search-form { display:grid; gap:10px; margin:18px 0; min-width:0; }
.product-search-form>label { font-size:14px; font-weight:650; }
.product-search-field { display:flex; align-items:stretch; gap:8px; min-width:0; }
.product-search-field input { width:100%; min-width:0; flex:1; min-height:46px; padding:12px 14px; border:1px solid var(--line); border-radius:10px; background:#fff; font:inherit; }
.product-search-field button { flex:0 0 auto; }
.product-filter-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; min-width:0; }
.product-filter-actions label { font-size:13px; color:var(--muted); }
.product-filter-actions select { width:auto; min-width:0; min-height:44px; padding:8px 12px; border:1px solid var(--line); border-radius:8px; background:#fff; }
.product-filter-actions button { margin-left:auto; min-height:44px; padding:8px 0 8px 12px; color:var(--red); border:0; background:none; text-decoration:underline; text-underline-offset:4px; }
.product-filter-actions button:disabled { color:var(--muted); cursor:default; text-decoration:none; }
.product-filter-actions .product-sort-tools { flex:1; margin:0; min-width:0; }
.product-filter-actions .product-sort-tools small { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.product-card-tags { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.product-card-tags .product-ip-label,.product-card-tags .product-language-label,.product-card-sale { margin:0!important; padding:3px 6px; font-size:11px; border-radius:5px; line-height:1.5; }
.product-card-sale { color:#44443f; border:1px solid var(--line); background:#faf9f6; }
.product-card-unit { font-size:13px; font-weight:500; color:var(--muted); letter-spacing:0; white-space:normal; }
.product-purchase-selection { display:flex; flex-direction:column; min-width:0; gap:4px; flex:1 1 220px; }
.product-purchase-variant,.product-purchase-price,.product-purchase-selection small { overflow-wrap:anywhere; white-space:normal; }
.product-purchase-variant { font-size:13px; line-height:1.5; }
.product-purchase-price { color:var(--red); font-size:20px; line-height:1.4; }
.product-purchase-cart { min-height:44px; display:inline-flex; align-items:center; padding:8px; color:var(--ink); font-size:14px; text-underline-offset:4px; }
.product-purchase-bar { grid-column:1/-1; }
/* A transformed detail card would capture its fixed mobile purchase bar. */
.multipage-site[data-page=product] .product-list>.product-detail-card:hover { transform:none; box-shadow:none; }
/* Detail content stays in its own column; each section keeps its natural height. */
@media (min-width:900px) {
  .multipage-site[data-page=product] .product-list>.product-detail-card { grid-template-rows:none; align-items:start; }
  .multipage-site[data-page=product] .product-list>.product-detail-card>* { grid-column:2; min-width:0; }
  .multipage-site[data-page=product] .product-list>.product-detail-card>.product-gallery { grid-column:1; grid-row:1/8; }
  .multipage-site[data-page=product] .product-purchase-bar { padding-top:16px; border-top:1px solid var(--line); }
}
@media (max-width:760px) {
  .multipage-site[data-page=home] .hero { display:grid; grid-template-columns:minmax(0,1fr) 88px; align-items:start; gap:14px; padding:22px 0 18px; }
  .multipage-site[data-page=home] .hero-copy { padding:0; }
  .multipage-site[data-page=home] .hero h1 { margin:10px 0 12px; font-size:29px; letter-spacing:-1px; }
  .multipage-site[data-page=home] .hero-description { font-size:13px; line-height:1.7; }
  .multipage-site[data-page=home] .hero-art { grid-column:2; grid-row:1; width:88px; height:110px; margin:12px 0 0; }
  .multipage-site[data-page=home] .hero-guide-motion { width:88px; max-width:88px; }
  .multipage-site[data-page=home] .hero-art figcaption,.multipage-site[data-page=home] .hero-bottom { display:none; }
  .multipage-site[data-page=home] .hero-actions { gap:8px 14px; margin-top:14px; }
  .multipage-site[data-page=home] .hero-actions .text-link { min-height:44px; font-size:12px; }
  .multipage-site[data-page=home] .hero-actions .primary-button { min-height:44px; padding:9px 14px; font-size:13px; }
  .multipage-site[data-page=home] .hero-actions [data-member-destination],.multipage-site[data-page=home] .hero-status { display:none; }
  .multipage-site[data-page=home] .hero-status { margin-top:10px; font-size:11px; }
  .multipage-site[data-page=home] #products { margin-top:12px; padding-top:18px; }
  .multipage-site[data-page=home] .collector-services { margin-top:32px; }
  .multipage-site .page-intro { margin-bottom:14px; padding:18px 0 12px; }
  .multipage-site .page-intro h1 { font-size:26px; margin:8px 0 0; }
  .multipage-site[data-page=shop] .page-intro { position:absolute; width:1px; height:1px; padding:0; margin:0; overflow:hidden; clip-path:inset(50%); }
  .multipage-site[data-page=shop] #products { padding-top:14px; }
  .multipage-site #products .section-heading { gap:8px; }
  .multipage-site #products .section-heading h2 { font-size:21px; }
  .multipage-site #products .section-heading .eyebrow { display:none; }
  .multipage-site #products>.section-heading+ p { display:none; }
  .multipage-site #products .section-heading .ghost-button { min-height:44px; font-size:12px; padding:8px 10px; }
  .multipage-site #products .section-heading #refresh-products { margin-left:auto; }
  .multipage-site .product-search-form { margin:14px 0 10px; gap:8px; }
  .multipage-site .product-search-form>label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .multipage-site .product-search-field input { font-size:16px; }
  .multipage-site .product-search-field button { padding:8px 12px; font-size:14px; }
  .multipage-site .product-filter-actions { display:grid; grid-template-columns:108px minmax(0,1fr) auto; gap:8px; }
  .multipage-site .product-filter-actions>label,.multipage-site .product-filter-actions .product-sort-tools label>span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .multipage-site .product-filter-actions select { font-size:14px; padding:8px; width:100%; }
  .multipage-site .product-filter-actions button { font-size:12px; margin:0; padding:8px 0; }
  .multipage-site .product-language-browser { margin:8px 0; }
  .multipage-site .product-ip-browser { margin:8px 0; }
  .multipage-site .product-language-browser h3,.multipage-site .product-ip-browser h3 { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .multipage-site .product-language-filters { gap:6px; padding:2px 0 4px; }
  .multipage-site .product-language-filter { min-height:44px; padding:7px 10px!important; font-size:12px!important; }
  .multipage-site .product-ip-filters { display:flex; flex-wrap:nowrap; gap:6px; overflow-x:auto; padding:2px 0 4px; scrollbar-width:thin; }
  .multipage-site .product-ip-filter { display:flex; flex:0 0 auto; width:auto; min-width:0; min-height:44px; gap:6px; padding:7px 10px; border-radius:8px; font-size:12px; }
  .multipage-site .product-ip-filter img { width:44px; height:22px; margin:0; object-fit:contain; }
  .multipage-site .product-ip-count { min-width:12px; font-size:11px; }
  .multipage-site .product-sort-tools { margin:0; gap:0; }
  .multipage-site .product-sort-tools label { font-size:12px; gap:8px; }
  .multipage-site .product-sort-tools select { font-size:14px; padding:8px 10px; min-height:44px; }
  .multipage-site .product-sort-tools small { font-size:11px; line-height:1.5; }
  .multipage-site[data-page=home] .product-list,.multipage-site[data-page=shop] .product-list { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:12px; }
  .multipage-site[data-page=home] .product-list>.list-card,.multipage-site[data-page=shop] .product-list>.list-card { padding:12px!important; border-radius:12px; gap:10px; }
  .multipage-site .product-list .product-detail-link { gap:10px; }
  .multipage-site[data-page=home] .product-list .product-media,.multipage-site[data-page=shop] .product-list .product-media { width:100%; height:auto; aspect-ratio:1; object-fit:contain; border-radius:8px; background:#faf9f6; margin:0; }
  .multipage-site .product-browse-card h3 { font-size:15px; line-height:1.55; white-space:normal; overflow:visible; overflow-wrap:anywhere; }
  .multipage-site .product-browse-card .meta { font-size:20px; line-height:1.45; margin:0; }
  .multipage-site .product-browse-card .product-card-unit { font-size:11px; }
  .multipage-site .product-browse-card .product-release-date { font-size:11px; line-height:1.5; }
  .multipage-site .product-browse-card .product-detail-link>.text-link { display:none; }
  .multipage-site .product-detail-link>.text-link { min-height:44px; gap:4px; font-size:12px; }
  .multipage-site[data-page=product]:has(.product-purchase-bar) .mobile-navigation { display:none; }
  .multipage-site[data-page=product]:has(.product-purchase-bar) { --purchase-bar-height:170px; padding-bottom:var(--purchase-bar-height); }
  .multipage-site[data-page=product] .product-purchase-bar { position:fixed; inset:auto 0 0; z-index:40; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 12px; margin:0; padding:12px 16px calc(12px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.98); border-top:1px solid var(--line); box-shadow:0 -4px 20px #1718190a; }
  .multipage-site[data-page=product] .product-purchase-selection { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1fr); gap:3px 12px; }
  .multipage-site[data-page=product] .product-purchase-variant { grid-column:1/-1; font-size:12px; }
  .multipage-site[data-page=product] .product-purchase-selection small { font-size:12px; align-self:center; }
  .multipage-site[data-page=product] .product-purchase-price { grid-column:1; font-size:19px; }
  .multipage-site[data-page=product] .product-purchase-cart { grid-row:2; font-size:13px; }
  .multipage-site[data-page=product] .product-purchase-bar .compact-button { grid-row:2; min-width:158px; min-height:48px; padding:10px 18px; font-size:15px; }
  .multipage-site[data-page=product].mobile-keyboard-open .product-purchase-bar { position:static; display:flex; flex-wrap:wrap; box-shadow:none; padding:12px 0; }
}
@media (max-width:350px) {
  .multipage-site .product-filter-actions { grid-template-columns:108px minmax(0,1fr); }
  .multipage-site .product-filter-actions #clear-product-filters { grid-column:1/-1; justify-self:end; }
  .multipage-site[data-page=home] .hero { grid-template-columns:minmax(0,1fr) 60px; gap:10px; }
  .multipage-site[data-page=home] .hero-art,.multipage-site[data-page=home] .hero-guide-motion { width:60px; max-width:60px; }
  .multipage-site[data-page=home] .hero h1 { font-size:26px; }
  .multipage-site[data-page=home] .product-list,.multipage-site[data-page=shop] .product-list { grid-template-columns:1fr!important; }
  .multipage-site[data-page=home] .product-list .product-media,.multipage-site[data-page=shop] .product-list .product-media { max-height:230px; }
  .multipage-site .product-browse-card h3 { font-size:17px; }
  .multipage-site[data-page=product] .product-purchase-bar .compact-button { min-width:140px; }
}
/* Keep the product name and amount easy to read before choosing a variant. */
@media (max-width:760px) {
  .multipage-site[data-page=product] .page-breadcrumb { margin:8px 0; gap:8px; line-height:1.5; }
  .multipage-site[data-page=product] .page-breadcrumb a { min-height:44px; }
  .multipage-site[data-page=product] .product-detail-page { margin:12px 0!important; }
  .multipage-site[data-page=product] .product-detail-page>.section-heading { margin:0 0 12px; }
  .multipage-site[data-page=product] .product-detail-page .product-list h1 { font-size:22px; line-height:1.45; letter-spacing:-.3px; overflow-wrap:anywhere; }
  .multipage-site[data-page=product] .product-purchase-price .product-purchase-unit { color:var(--muted); font-size:13px; line-height:1.5; font-weight:500; letter-spacing:0; white-space:normal; overflow-wrap:anywhere; }
}
