.shop-cover { background:#ffce32; border-bottom:4px solid #151310; padding:28px 0; }
.shop-cover h1 { font-style:italic; font-size:clamp(56px,7vw,100px); }
.shop-cover .premium-container { display:flex; align-items:center; justify-content:space-between; gap:28px; }
.shop-cover p { max-width:28ch; font-weight:600; }
.shop-product { display:grid; grid-template-columns:1.1fr 1fr; gap:40px; padding-block:48px; align-items:start; }
.shop-product-art { border:4px solid #151310; box-shadow:8px 8px 0 #151310; background:#201007; }
.shop-product-art img { width:100%; height:auto; }
.shop-product-caption { margin:0!important; padding:16px 20px; background:#287ec3; color:white; font-weight:700; text-transform:uppercase; border-top:4px solid #151310; }
.shop-art-details { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:24px; }
.shop-art-details img { border:3px solid #151310; }
.shop-purchase { min-width:0; }
.shop-purchase h2 { font-size:clamp(40px,4vw,58px); font-style:italic; }
.shop-purchase .shop-bundle-grid { display:block; }
.pack-order { border:3px solid #151310; box-shadow:6px 6px 0 #151310; padding:24px; background:#fff9e9; }
.pack-stock { margin:0 0 14px; border:3px solid #151310; padding:12px 16px; background:#ffce32; box-shadow:4px 4px 0 #151310; font-weight:800; text-transform:uppercase; }
.pack-stock strong { font-size:1.35em; }
.pack-order label { display:block; font-weight:700; margin-bottom:10px; }
.pack-quantity-row { display:flex; gap:12px; align-items:center; }
.pack-stepper { display:flex; border:3px solid #151310; background:white; }
.pack-stepper button { border:0; background:#ffce32; width:48px; min-height:50px; font-size:28px; cursor:pointer; }
.pack-stepper input { width:80px; min-width:0; border:0; border-inline:3px solid #151310; text-align:center; font:700 22px 'IBM Plex Sans',sans-serif; border-radius:0; }
.pack-shortcuts { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.pack-shortcuts button { border:2px solid #151310; background:white; padding:8px 14px; cursor:pointer; font-weight:700; }
.pack-shortcuts button[aria-pressed=true] { background:#ffce32; box-shadow:3px 3px 0 #151310; }
.pack-totals { margin:22px 0; }
.pack-totals div { display:flex; justify-content:space-between; gap:16px; padding:9px 0; }
.pack-totals dd { margin:0; font-weight:700; text-align:right; }
.pack-totals .pack-grand-total { border-top:3px solid #151310; margin-top:8px; font-size:24px; }
.pack-delivery { padding:14px; border:2px solid #151310; background:#ffce32; font-weight:600; }
.pack-delivery p { margin:0 0 8px; font-size:14px; }
.pack-delivery progress { width:100%; height:10px; accent-color:#151310; display:block; }
.pack-checkout { width:100%; display:flex; justify-content:center; margin-top:20px; cursor:pointer; }
.pack-checkout:disabled { opacity:.55; cursor:not-allowed; }
.pack-error { color:#9e2017; font-weight:600; }
.pack-order-note { font-size:13px; margin-bottom:0!important; }
.shop-price-ladder { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:24px 0; }
.shop-price-ladder div { padding:12px 8px; border:2px solid #151310; background:#fff9e9; text-align:center; }
.shop-price-ladder strong { display:block; font-size:24px; }
.shop-price-ladder span { font-size:13px; }
.shop-price-ladder div:last-child { background:#ffce32; }
.shop-explainer { background:#e94332; border-block:4px solid #151310; padding:48px 0; }
.shop-explainer-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; }
.shop-explainer h2 { font-size:36px; }
.shop-explainer p { font-weight:500; }
.shop-answers { padding-block:56px; max-width:900px; }
.shop-answers h2 { margin-bottom:24px; }
.shop-answers details { border-top:2px solid #151310; padding:20px 0; }
.shop-answers summary { font-weight:700; cursor:pointer; font-size:18px; }
@media(max-width:900px) { .shop-product { gap:24px; } .pack-order { padding:18px; } }
@media(max-width:760px) {
 .shop-cover .premium-container { display:block; } .shop-cover p { max-width:45ch; }
 .shop-product { grid-template-columns:1fr; padding-block:28px; gap:36px; }
 .shop-art-details { display:none; } .shop-explainer-grid { grid-template-columns:1fr; gap:12px; }
 .shop-price-ladder strong { font-size:22px; } .pack-grand-total { font-size:21px!important; }
}

.shop-art-details img { width:100%; height:auto; }
.shop-cover .toolbar-kicker { max-width:none; }
