/* Category cards: two columns on phones, three on desktop.
   Keep promotional flags in normal flow below the product photo on phones. */
@media (max-width:767px) {
  body.type-category #products > .product {
    width:50%!important; flex:0 0 50%!important; max-width:50%!important;
  }
  body.type-category #products .p > .image {
    height:auto!important; max-height:none!important; overflow:visible!important;
  }
  body.type-category #products .image > .flags {
    position:static!important; float:none!important; transform:none!important;
    width:100%!important; max-width:100%!important;
    display:flex!important; flex-direction:row!important; flex-wrap:wrap!important;
    align-items:center!important; gap:3px; margin:6px 0 0!important; padding:0!important;
  }
  body.type-category #products .image > .flags .flag {
    position:static!important; float:none!important; transform:none!important;
    display:inline-flex!important; align-items:center; justify-content:center;
    width:auto!important; min-width:0!important; max-width:100%!important;
    height:auto!important; min-height:0!important; margin:0!important;
    padding:4px 6px!important; border-radius:6px!important;
    font-size:10px!important; line-height:1.25!important; white-space:normal!important;
    text-align:center; overflow-wrap:anywhere;
  }
  body.type-category #products .image > .flags .flag-discount {
    background:#e32636!important; color:#fff!important;
    flex-direction:row!important; gap:4px;
  }
  body.type-category #products .image > .flags .flag::before {
    display:none!important;
  }
  body.type-category #products .image > .flags .flag-discount > span {
    font-size:10px!important; line-height:1.25!important; margin:0!important;
  }
}
@media (min-width:768px) {
  body.type-category #products > .product {
    width:33.333333%!important; flex:0 0 33.333333%!important; max-width:33.333333%!important;
  }
}
