/* Empório Pet — camada FINAL do catálogo.
   Desktop: foto completa sem recorte.
   Mobile: grade densa de marketplace com 2 produtos por linha. */

.catalog-card{min-width:0}
.catalog-card .product-illustration{width:100%;min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center}
.catalog-card .product-illustration img,
.catalog-card .product-illustration picture,
.catalog-card .product-illustration picture img{max-width:100%!important}
.catalog-card .product-illustration img,
.catalog-card .product-illustration picture img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;display:block!important}

@media (min-width:901px){
  .catalog-card .product-illustration{height:260px!important;min-height:260px!important;flex:0 0 260px!important}
  .catalog-card .product-illustration img,.catalog-card .product-illustration picture img{padding:8px!important}
}

@media (max-width:900px){
  section.catalog-grid[data-catalog],
  .catalog-grid[data-catalog],
  .catalog-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    align-items:stretch!important;
    gap:8px!important;
    padding:8px!important;
    width:100%!important;
  }
  section.catalog-grid[data-catalog] > .catalog-card,
  .catalog-grid[data-catalog] > .catalog-card,
  .catalog-grid > .catalog-card{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    grid-column:auto!important;
    grid-row:auto!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .catalog-card .product-illustration img,.catalog-card .product-illustration picture img{padding:3px!important}
}

@media (max-width:600px){
  section.catalog-grid[data-catalog],.catalog-grid[data-catalog],.catalog-grid{gap:6px!important;padding:6px!important}
  section.catalog-grid[data-catalog] > .catalog-card,.catalog-grid[data-catalog] > .catalog-card,.catalog-grid > .catalog-card{
    padding:7px!important;
    border-radius:10px!important;
    overflow:hidden!important;
  }
  .catalog-card .product-illustration{height:108px!important;min-height:108px!important;flex:0 0 108px!important;margin:0 0 5px!important}
  .catalog-card h3{
    font-size:10.5px!important;
    line-height:1.2!important;
    min-height:2.4em!important;
    max-height:2.4em!important;
    overflow:hidden!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    margin:6px 0 5px!important;
  }
  .catalog-card small{font-size:6.5px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .catalog-card footer{padding-top:7px!important;gap:3px!important;margin-top:auto!important;min-width:0!important}
  .catalog-card footer b{font-size:10.5px!important;white-space:nowrap!important}
  .catalog-card footer button,.product-detail-trigger-v2{font-size:7.5px!important;min-height:28px!important;padding:4px 0!important}
  .favorite-button{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important}
}

@media (max-width:420px){
  section.catalog-grid[data-catalog],.catalog-grid[data-catalog],.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;padding:5px!important}
  section.catalog-grid[data-catalog] > .catalog-card,.catalog-grid[data-catalog] > .catalog-card,.catalog-grid > .catalog-card{padding:6px!important}
  .catalog-card .product-illustration{height:96px!important;min-height:96px!important;flex:0 0 96px!important}
  .catalog-card h3{font-size:9.8px!important}
  .catalog-card footer b{font-size:10px!important}
}

@media (max-width:340px){
  section.catalog-grid[data-catalog],.catalog-grid[data-catalog],.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .catalog-card .product-illustration{height:86px!important;min-height:86px!important;flex-basis:86px!important}
  .catalog-card h3{font-size:9.2px!important}
}
