
/* Grid & card */
.wb-featured-grid{
  --wbfi-scale: 1;
  --wbfi-gap: 20px;
  --wbfi-radius: 12px;
  --wbfi-aspect: auto;
  display:grid; gap: var(--wbfi-gap);
  font-size: calc(1rem * var(--wbfi-scale));
}
.wb-featured-grid.columns-1{grid-template-columns:1fr}
.wb-featured-grid.columns-2{grid-template-columns:repeat(2,1fr)}
.wb-featured-grid.columns-3{grid-template-columns:repeat(3,1fr)}
.wb-featured-grid.columns-4{grid-template-columns:repeat(4,1fr)}
@media (max-width: 768px){
  .wb-featured-grid.columns-3,.wb-featured-grid.columns-4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 520px){
  .wb-featured-grid{grid-template-columns:1fr}
}
.wb-featured-card{border:1px solid rgba(0,0,0,.08);border-radius:var(--wbfi-radius);background:#fff;overflow:hidden}
.wb-figure{margin:0}
.wb-figure img{display:block;width:100%;height:auto;aspect-ratio: var(--wbfi-aspect);object-fit: cover}
.wb-body{padding:14px}
.wb-row{display:flex;align-items:baseline;gap:10px}
.wb-title{margin:0}
.wb-title a{text-decoration:none}
.wb-title a:hover{text-decoration:underline}
.wb-price{margin-left:auto;font-weight:600}
.wb-desc{margin:.35rem 0 0 0;color:rgba(0,0,0,.75)}

/* Overlay mode */
.wb-figure.overlay{position:relative;color:#fff}
.wb-figure.overlay img{display:block;width:100%;height:auto}
.wb-figure.overlay figcaption{position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.55) 80%);display:flex;flex-direction:column;justify-content:flex-end;padding:18px}
.wb-figure.overlay .wb-title{color:#fff}
.wb-figure.overlay .wb-title a{color:#fff;text-decoration:none}
.wb-figure.overlay .wb-title a:hover{text-decoration:underline}
.wb-figure.overlay .wb-desc{color:rgba(255,255,255,.9)}
.wb-figure.overlay .wb-price{font-weight:700}

/* Single view */
.wbfi-single-figure{margin:0 0 16px 0}
.wbfi-single-figure img{display:block;width:100%;height:auto;border-radius:8px}
.wbfi-price-badge{
  display:inline-block; margin: 0 0 12px 0; padding:6px 10px;
  border-radius:999px; font-weight:600;
  background:#9E2A2B; color:#fff;
}
.wbfi-cta-wrap{margin: 10px 0 16px}
.wbfi-cta{
  display:inline-block; padding:10px 16px; border-radius:999px; font-weight:600;
  text-decoration:none; background:#222; color:#fff;
}
.wbfi-cta:hover{filter:brightness(.95)}
