/* ------------------------------------------------------------------
   Shop landing: one Parts & Lighting product list
   Reuses the indoor catalogue classes (indoor-model-catalog,
   section-title, indoor-catalog-tools, indoor-model-grid,
   indoor-model-card) so both pages share the same layout and cards.
   Only the shop-specific details live here.
   ------------------------------------------------------------------ */
.shop-listing-section .section-title h1{margin:10px 0 0;font-size:clamp(28px,3.6vw,46px);line-height:1.08;letter-spacing:-.03em}
.shop-listing-section .section-title p{max-width:780px;margin:12px 0 0;color:#5b6965;line-height:1.7}
.shop-listing-section .indoor-catalog-tools{margin-bottom:22px}

/* one thumbnail per card, sized like the indoor cards */
.shop-listing-card .indoor-model-media img{display:block;width:100%;height:230px;object-fit:cover}
.shop-listing-card .indoor-model-media .shop-card-noimage{display:grid;place-items:center;height:230px;padding:16px;text-align:center;font-size:12px;font-weight:650;color:#6d7d76;background:linear-gradient(145deg,#eff3f0,#e5ebe7)}
.shop-listing-card .indoor-model-copy>p{margin:0 0 10px;color:#5d6d66;font-size:13px;line-height:1.6}
.shop-listing-card .model-specs{margin:0 0 14px;color:#7a8983;font-size:12px}
.shop-listing-card .indoor-card-actions{margin-top:auto}
.shop-listing-card[hidden]{display:none}

@media(max-width:600px){
  .shop-listing-card .indoor-model-media img{height:200px}
  .shop-listing-card .indoor-model-media .shop-card-noimage{height:200px}
}

/* ------------------------------------------------------------------
   Shop ranges: Parts & Accessories  /  Christmas Decoration Lights
   ------------------------------------------------------------------ */
.shop-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:44px 0 8px}
.shop-channel-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center;padding:16px;border:1px solid #e4e8ee;border-radius:16px;background:#fff;text-decoration:none;transition:transform .2s,box-shadow .2s}
.shop-channel-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px #0c302218}
.shop-channel-media{position:relative;border-radius:12px;overflow:hidden;background:#f2f4f2;aspect-ratio:1/1}
.shop-channel-media img{display:block;width:100%;height:100%;object-fit:cover}
.shop-channel-media span{position:absolute;left:8px;top:8px;padding:4px 8px;border-radius:20px;background:#17221fd9;color:#fff;font-size:10px;font-weight:700;letter-spacing:.04em}
.shop-channel-copy small{font-size:10px;letter-spacing:.14em;color:#8a9a93;font-weight:700}
.shop-channel-copy h2{margin:6px 0 8px;font-size:21px;line-height:1.2;color:#193c32}
.shop-channel-copy p{margin:0 0 12px;color:#5d6d66;font-size:13px;line-height:1.6}
.shop-channel-copy b{font-size:13px;color:#c9541f}
@media(max-width:900px){.shop-channels{grid-template-columns:1fr;padding-top:32px}}
@media(max-width:520px){.shop-channel-card{grid-template-columns:1fr}.shop-channel-media{aspect-ratio:16/9}}
