/* Shared product information and actions, scoped to catalog/detail pages. */
.storefront-catalog{width:100%}
.catalog-product-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden}
.catalog-product-card>a{height:auto;flex:1;border-radius:0;box-shadow:none}
.catalog-product-card>a:focus-visible{outline:2px solid #111827;outline-offset:-3px}
.catalog-product-info{padding:14px 14px 12px;display:flex;flex-direction:column;gap:10px}
.catalog-product-title{min-height:3.4em;line-height:1.7;font-size:13px;font-weight:500;overflow-wrap:anywhere}
.catalog-product-facts{display:flex;flex-direction:column;gap:3px}
.catalog-product-price{font-size:18px;line-height:1.4;font-weight:700;letter-spacing:-.025em;font-variant-numeric:tabular-nums;color:#111827}
.catalog-product-original-price{font-size:12px;line-height:1.5;color:#6b7280;font-variant-numeric:tabular-nums;text-decoration:line-through}
.catalog-product-shipping{font-size:10px;color:#6b7280}
.product-share-trigger{min-height:44px;gap:8px;border-radius:10px;border-color:#d1d5db;font-size:12px;font-weight:600;line-height:1.4}
.product-share-trigger svg{width:19px;height:19px}
.product-information{min-width:0}
.product-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
#productBrand{min-width:0;overflow-wrap:anywhere}
#productShareAction{flex-shrink:0}
#productShareAction .product-share-trigger{padding:10px 16px;background:#fff}
.product-information #productTitle{overflow-wrap:anywhere}
.product-information #productDescription,.product-information #product-accessories,.product-information #product-inspection_note{overflow-wrap:anywhere}
.product-purchase-actions>button{min-height:48px;border-radius:12px;line-height:1.5}
.product-share-dialog{padding:26px;border-radius:18px}
.product-share-close{width:44px;height:44px;flex-shrink:0}
.product-share-options a,.product-share-options button{min-height:52px}
.product-share-copy button{min-height:44px}
.product-share-more{min-height:44px;display:inline-flex;align-items:center;margin-top:4px}
.product-share-status:empty{display:none}
@media(max-width:639px){
 .catalog-header-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
 .catalog-search{grid-column:1/-1;grid-row:2;max-width:none;width:100%}
 .catalog-search input{min-height:42px}
 .catalog-search>i{top:15px}
 .storefront-catalog{padding-top:22px;padding-bottom:24px}
 #productGrid{gap:12px}
 .catalog-product-info{padding:12px 11px 10px;gap:9px}
 .catalog-product-title{font-size:12px}
 .catalog-product-price{font-size:17px}
 .product-heading-row{gap:12px;margin-bottom:12px}
 .product-purchase-actions{gap:10px}
 .product-purchase-actions>button{padding:12px 8px;letter-spacing:0}
 .product-share-dialog{width:100%;max-width:none;max-height:calc(100dvh - 24px);margin:auto 0 0;padding:12px 22px max(18px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0;border-bottom:0}
 .product-share-dialog::before{content:'';display:block;width:36px;height:4px;background:#d1d5db;border-radius:4px;margin:0 auto 14px}
 .product-share-heading{margin-bottom:18px}
 .product-share-preview{margin-bottom:18px}
}
@media(max-width:767px){
 .product-page{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}
 .product-information>.product-purchase-actions{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin:0;padding:12px max(16px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -4px 20px #11182708}
 .product-purchase-actions>button{width:100%;min-height:48px;margin:0;padding:12px 8px;letter-spacing:0;box-shadow:none}
 .product-purchase-actions>p{grid-column:1/-1;margin:0;font-size:11px}
}
@media(prefers-reduced-motion:no-preference){.product-share-trigger{transition:background .15s,border-color .15s}}

/* Keep each payment icon and label together, including on narrow screens. */
.footer-payment-methods { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.footer-payment-method { display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; white-space: nowrap; }
.footer-payment-icon { display: block; width: 20px; height: 20px; flex: 0 0 20px; object-fit: contain; }

/* Product detail: keep long notes readable and the checkout notice below actions. */
.product-price-stack{display:flex;flex-direction:column;gap:2px}
.product-price-stack [hidden]{display:none}
.product-specifications>div{display:grid;grid-template-columns:7.5em minmax(0,1fr);align-items:start;gap:12px;line-height:1.8}
.product-specifications>div>span{min-width:0;overflow-wrap:anywhere}
.product-specifications>div>span:first-child{white-space:nowrap}
.product-specifications #product-condition_note{white-space:pre-wrap}
.product-notes>p{margin:0 0 18px;line-height:1.85}
.product-notes>p>strong{display:block;margin-bottom:6px;color:#374151}
.product-notes #product-accessories,.product-notes #product-inspection_note,.product-notes #productDescription{display:block;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85}
.product-information>.product-purchase-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
.product-purchase-actions>button{min-width:0;padding-left:12px;padding-right:12px}
.product-purchase-actions>p{grid-column:1/-1;margin:0;overflow-wrap:anywhere}
@media(max-width:479px){.product-specifications>div{grid-template-columns:minmax(0,1fr);gap:3px}.product-specifications>div+div{margin-top:14px}}
