/* ==========================================================================
   LOJA DO GERADOR — Polish basico (v3)
   Foco: alinhar botoes Comprar entre cards via flex.
   NAO mudar: cores, imagens, fontes, identidade visual.
   So adiciona: flexbox nos cards, espacamento, hover sutil.
   ========================================================================== */

/* Cards do Vitrine de Produtos / Featured — alinha tudo
   ----------------------------------------------------- */
#HomeNewProducts ul.ProductList,
#HomeFeaturedProducts ul.ProductList {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 8px;
}

#HomeNewProducts ul.ProductList li,
#HomeFeaturedProducts ul.ProductList li {
  display: flex !important;
  flex-direction: column;
  flex: 0 1 calc(33.333% - 8px);
  max-width: calc(33.333% - 8px);
  min-height: auto !important;
  height: auto !important;
  margin: 0;
  padding: 12px;
  box-sizing: border-box;
  list-style: none;
}

/* Center wrapper dentro do li — vira flex tambem */
#HomeNewProducts ul.ProductList li > center,
#HomeFeaturedProducts ul.ProductList li > center {
  display: flex;
  flex-direction: column;
  flex: 1;
  width: 100%;
}

/* ProductDetails ocupa o espaco do meio (entre img e botao) */
#HomeNewProducts .ProductDetails,
#HomeFeaturedProducts .ProductDetails {
  flex: 1 0 auto;
  margin-bottom: 8px;
}

/* Titulo com altura minima — alinha topos entre cards */
#HomeNewProducts .ProductDetails strong,
#HomeFeaturedProducts .ProductDetails strong {
  display: block;
  min-height: 38px;
  line-height: 1.3;
}

/* AÇAO (Comprar/Orcamento) — empurra pro fim do card */
#HomeNewProducts .ProductActionAdd,
#HomeFeaturedProducts .ProductActionAdd {
  margin-top: auto;
}

/* Quando .ProductActionAdd esta com display:none, alinhar via div seguinte (Orcamento) */
#HomeNewProducts li > center > div:last-child,
#HomeFeaturedProducts li > center > div:last-child {
  margin-top: auto;
}

/* Hover sutil no card */
#HomeNewProducts ul.ProductList li,
#HomeFeaturedProducts ul.ProductList li {
  transition: background-color 0.15s ease;
}
#HomeNewProducts ul.ProductList li:hover,
#HomeFeaturedProducts ul.ProductList li:hover {
  background-color: #fafafa;
}

/* Imagem do produto — link com hover sutil */
#HomeNewProducts .ProductImage a,
#HomeFeaturedProducts .ProductImage a,
#HomeNewProducts .ProductImage1 a,
#HomeFeaturedProducts .ProductImage1 a {
  display: inline-block;
  transition: opacity 0.15s ease;
}
#HomeNewProducts .ProductImage a:hover,
#HomeFeaturedProducts .ProductImage a:hover,
#HomeNewProducts .ProductImage1 a:hover,
#HomeFeaturedProducts .ProductImage1 a:hover {
  opacity: 0.85;
}

/* Hover sutil nos botoes Comprar/Orcamento (mantem a img original) */
.ProductActionAdd a {
  display: inline-block;
  transition: opacity 0.15s ease, transform 0.1s ease;
}
.ProductActionAdd a:hover {
  opacity: 0.88;
}
.ProductActionAdd a:active {
  transform: translateY(1px);
}

/* SearchForm — alinha input e botao no mesmo eixo
   ------------------------------------------------ */
#SearchForm form {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

#SearchForm input.Textbox {
  vertical-align: middle;
  height: 28px;
  line-height: 28px;
  box-sizing: border-box;
}

#SearchForm input.Button,
#SearchForm input[type="image"].Button {
  vertical-align: middle;
  display: inline-block;
  margin: 0;
}

/* Mobile — cards empilham
   ----------------------- */
@media (max-width: 768px) {
  #HomeNewProducts ul.ProductList li,
  #HomeFeaturedProducts ul.ProductList li {
    flex: 0 1 calc(50% - 8px);
    max-width: calc(50% - 8px);
  }
}

@media (max-width: 480px) {
  #HomeNewProducts ul.ProductList li,
  #HomeFeaturedProducts ul.ProductList li {
    flex: 0 1 100%;
    max-width: 100%;
  }
}
