.ofp-cards-grid{
  display:grid;
  gap:24px;
}
.ofp-cards-grid.columns-1{grid-template-columns:1fr}
.ofp-cards-grid.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ofp-cards-grid.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ofp-cards-grid.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ofp-cards-grid.columns-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.ofp-cards-grid.columns-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.ofp-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  background:#ffffff;
  box-shadow:0 12px 32px rgba(15,23,42,.08);
  transition:transform .25s ease, box-shadow .25s ease;
}
.ofp-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(15,23,42,.12);
}
.ofp-card-media img{
  display:block;
  width:100%;
  height:240px;
  object-fit:cover;
}
.ofp-card-body{
  padding:22px;
  display:flex;
  flex-direction:column;
  gap:10px;
  text-align:left;
}
.ofp-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  align-self:flex-start;
  padding:7px 12px;
  border-radius:999px;
  background:linear-gradient(135deg,#111827,#374151);
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
}
.ofp-subtitle{font-size:14px;color:#475569;margin:0}
.ofp-store{font-size:13px;font-weight:700;color:#0f172a;text-transform:uppercase;letter-spacing:.04em;margin:0}
.ofp-prices{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0}
.ofp-old-price{text-decoration:line-through;color:#94a3b8;font-size:15px}
.ofp-new-price{font-size:22px;font-weight:800;color:#0f172a}
.ofp-description{font-size:14px;color:#475569;line-height:1.6;margin:0}
.ofp-expiry{font-size:12px;color:#b45309;margin:0}
.ofp-button,
.ofp-button:visited,
.ofp-button:hover,
.ofp-button:focus,
.ofp-button:active{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  margin-top:8px;
  padding:12px 18px;
  border-radius:14px;
  background:#111827;
  color:#fff;
  text-decoration:none !important;
  font-weight:700;
  border:none;
  outline:none;
  box-shadow:none;
  -webkit-tap-highlight-color: transparent;
}
.ofp-button:focus,
.ofp-button:active{
  color:#fff;
  outline:none;
  box-shadow:none;
}
.ofp-card.is-featured{outline:2px solid rgba(17,24,39,.08)}
@media (max-width: 1200px){
  .ofp-cards-grid.columns-5,
  .ofp-cards-grid.columns-6{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 1024px){
  .ofp-cards-grid.columns-3,
  .ofp-cards-grid.columns-4,
  .ofp-cards-grid.columns-5,
  .ofp-cards-grid.columns-6{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 767px){
  .ofp-cards-grid.columns-2,
  .ofp-cards-grid.columns-3,
  .ofp-cards-grid.columns-4,
  .ofp-cards-grid.columns-5,
  .ofp-cards-grid.columns-6{grid-template-columns:1fr}
  .ofp-card-media img{height:220px}
}
