[data-product-catalog], [data-related-products] { width: 100%; }

.catalog-product-card { min-width: 0 !important; color: inherit !important; text-decoration: none !important; display: grid !important; grid-template-rows: minmax(0, 9fr) minmax(0, 2fr) !important; aspect-ratio: 8 / 11 !important; overflow: hidden !important; position: relative !important; border: 1px solid #e2e2df !important; border-radius: 30px !important; background: #ffffff !important; box-shadow: 0 5px 18px rgb(0 0 0 / 0.06) !important; transition: transform .22s ease, box-shadow .22s ease; }
.catalog-product-card:hover { transform: translateY(-3px) !important; box-shadow: 0 12px 28px rgb(0 0 0 / .11) !important; }
.catalog-product-image-frame { position: relative !important; width: 100% !important; height: 100% !important; min-height: 0 !important; aspect-ratio: auto !important; overflow: hidden !important; background: #efefec !important; }
.catalog-product-image { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important; transition: transform .32s ease !important; }
.catalog-product-card:hover .catalog-product-image { transform: scale(1.025) !important; }
.catalog-image-missing::after { content: "Add PP.jpg to this product folder"; position: absolute; inset: 0; display: grid; place-items: center; padding: 20px; color: #6f6a61; font-size: 13px; line-height: 1.4; text-align: center; }
.catalog-product-card-label { position: static !important; inset: auto !important; min-height: 0 !important; display: flex !important; flex-direction: column !important; justify-content: center !important; gap: 2px !important; padding: 8px 16px 10px !important; background: #ffffff !important; z-index: 2 !important; }
.catalog-product-meta { display: block !important; margin: 0 0 2px !important; color: #858585 !important; font-size: 9px !important; font-weight: 700 !important; letter-spacing: .09em !important; line-height: 1.15 !important; text-transform: uppercase !important; opacity: 1 !important; }
.catalog-product-card .product-card-title { min-height: 0 !important; margin: 0 !important; color: #151515 !important; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important; font-size: 15px !important; font-style: normal !important; font-weight: 620 !important; line-height: 1.2 !important; text-align: left !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; }
.catalog-product-card .product-card-price { margin: 2px 0 0 !important; color: #4d4d4d !important; font-size: 13px !important; font-weight: 520 !important; line-height: 1.2 !important; text-align: left !important; }

.story-edit { box-sizing: border-box; width: min(100%,1260px); margin: 0 auto; padding: clamp(56px,8vw,104px) 20px; border-top: 1px solid #ded5c8; color: #30251d; }
.story-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:36px; }
.story-intro { max-width:620px; }
.story-eyebrow { margin:0 0 10px; color:#8e4500; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.story-intro h2 { margin:0; color:#30251d; font-size:clamp(30px,4.4vw,54px); font-weight:500; line-height:1.02; letter-spacing:-.025em; }
.story-intro > p:last-child { max-width:50ch; margin:14px 0 0; color:#76695c; font-size:14px; line-height:1.65; }
.story-all { flex-shrink:0; padding:12px 0; border-bottom:1px solid #8e7761; color:#36271a; font-size:13px; text-decoration:none; }
.story-all span { margin-left:20px; }
.story-edit .story-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; width:100%; max-width:none; padding:0; }
.story-edit .catalog-product-card { display:block !important; position:relative !important; grid-template-rows:none !important; aspect-ratio:auto !important; overflow:visible !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:#30251d !important; }
.story-edit .catalog-product-card:hover { box-shadow:none !important; transform:none !important; }
.story-edit .catalog-product-image-frame { width:100% !important; height:auto !important; min-height:0 !important; aspect-ratio:4/5 !important; overflow:hidden !important; border-radius:3px !important; background:#e8dfd3 !important; }
.story-edit .catalog-product-image { width:100% !important; height:100% !important; object-fit:cover !important; transition:transform .4s ease !important; }
.story-edit .catalog-product-card:hover .catalog-product-image { transform:scale(1.025) !important; }
.story-edit .catalog-product-card-label { position:relative !important; inset:auto !important; min-height:0 !important; display:block !important; padding:18px 52px 18px 0 !important; border-bottom:1px solid #ded5c8 !important; background:transparent !important; }
.story-edit .catalog-product-meta { margin:0 0 7px !important; color:#8e4500 !important; font-size:10px !important; font-weight:700 !important; letter-spacing:.1em !important; line-height:1.2 !important; text-transform:uppercase !important; opacity:1 !important; }
.story-edit .product-card-title { min-height:0 !important; margin:0 !important; color:#30251d !important; font-size:clamp(18px,1.7vw,24px) !important; font-weight:500 !important; line-height:1.22 !important; text-align:left !important; }
.story-edit .product-card-price { margin:6px 0 0 !important; color:#76695c !important; font-size:13px !important; font-weight:500 !important; line-height:1.4 !important; text-align:left !important; }
.story-edit .catalog-product-card-label::after { content:"↗"; position:absolute; top:18px; right:0; display:grid; place-items:center; width:36px; height:36px; border:1px solid #d4c6b6; border-radius:50%; transition:background .2s ease,color .2s ease; }
.story-edit .catalog-product-card:hover .catalog-product-card-label::after { background:#30251d; color:#fffaf0; }
.catalog-message { grid-column:1/-1; padding:28px 0; text-align:center; opacity:.65; }
.catalog-error { opacity:.85; }
.catalog-pagination { display:flex; justify-content:center; align-items:center; gap:14px; margin:28px 0 0; }
.catalog-pagination button { border:1px solid currentColor; border-radius:999px; padding:8px 14px; background:transparent; color:inherit; cursor:pointer; }
.catalog-pagination button:disabled { opacity:.35; cursor:default; }

@media(max-width:900px){
  .catalog-product-card { border-radius:26px !important; }
  .story-heading { display:block; }
  .story-all { display:inline-block; margin-top:20px; }
  .story-edit .story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 18px; }
}
@media(max-width:560px){
  .catalog-product-card { border-radius:22px !important; }
  .catalog-product-card .product-card-title { font-size:14px !important; }
  .catalog-product-card .product-card-price { font-size:12px !important; }
  .story-edit .story-grid { grid-template-columns:1fr; gap:32px; }
  .story-edit .catalog-product-image-frame { aspect-ratio:4/3 !important; }
}
