/* Brazilcomp product card — one structural contract for every product loop. */

.woocommerce ul.products li.bc-product-card,
.bc-home-store ul.products li.bc-product-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: auto !important;
  min-width: 0;
  padding: 0;
  margin: 0 !important;
  color: #132a3d;
  background: #fff;
  border: 1px solid #d7e2e8;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(8, 31, 51, .055);
  overflow: hidden;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.woocommerce ul.products li.bc-product-card:hover,
.bc-home-store ul.products li.bc-product-card:hover {
  border-color: #9fb7c4;
  box-shadow: 0 18px 40px rgba(8, 31, 51, .11);
  transform: translateY(-3px);
}

.woocommerce .bc-product-card__media,
.bc-home-store .bc-product-card__media {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  min-height: 0;
  aspect-ratio: 4 / 3;
  margin: 0;
  background:
    linear-gradient(rgba(9, 93, 128, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(9, 93, 128, .035) 1px, transparent 1px),
    #edf4f7;
  background-size: 18px 18px, 18px 18px, auto;
  border-bottom: 1px solid #d7e2e8;
  border-radius: 0;
  overflow: hidden;
}

.woocommerce .bc-product-card__media > img,
.bc-home-store .bc-product-card__media > img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  padding: 26px;
  margin: 0 !important;
  object-fit: contain;
  mix-blend-mode: multiply;
  transition: transform 240ms ease;
}

.woocommerce .bc-product-card:hover .bc-product-card__media > img,
.bc-home-store .bc-product-card:hover .bc-product-card__media > img {
  transform: scale(1.025);
}

.bc-product-card__media .bc-product-placeholder--card {
  width: 100%;
  height: 100%;
  min-height: 0;
  border: 0;
  border-radius: 0;
}

.woocommerce .bc-product-card__content,
.bc-home-store .bc-product-card__content {
  display: grid;
  grid-template-rows: 22px 4.2rem 56px 18px minmax(96px, 1fr);
  min-width: 0;
  padding: 18px;
}

.woocommerce .bc-product-card__meta,
.bc-home-store .bc-product-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  margin: 0;
}

.woocommerce .bc-product-card__meta > span,
.bc-home-store .bc-product-card__meta > span {
  min-width: 0;
  overflow: hidden;
  color: #607487;
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .075em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.woocommerce .bc-product-card__meta small,
.bc-home-store .bc-product-card__meta small {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 5px;
  color: #687b88;
  font-size: .56rem;
  white-space: nowrap;
}

.woocommerce .bc-product-card__meta small::before,
.bc-home-store .bc-product-card__meta small::before {
  content: "";
  width: 6px;
  height: 6px;
  background: #8d9ca5;
  border-radius: 50%;
}

.woocommerce .bc-product-card__meta small.is-available::before,
.bc-home-store .bc-product-card__meta small.is-available::before {
  background: #1ca66a;
}

.woocommerce .bc-product-card .woocommerce-loop-product__title,
.bc-home-store .bc-product-card .woocommerce-loop-product__title {
  display: -webkit-box;
  height: 4.05rem;
  min-height: 4.05rem !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
  color: #132a3d !important;
  font: 750 .94rem/1.44 "Manrope", sans-serif !important;
  letter-spacing: -.018em;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.woocommerce .bc-product-card .woocommerce-loop-product__title a,
.bc-home-store .bc-product-card .woocommerce-loop-product__title a {
  color: inherit !important;
}

.woocommerce .bc-product-card .woocommerce-loop-product__title a:hover,
.bc-home-store .bc-product-card .woocommerce-loop-product__title a:hover {
  color: #075f91 !important;
}

.woocommerce .bc-product-card__sku,
.bc-home-store .bc-product-card__sku {
  display: grid;
  align-content: center;
  gap: 4px;
  width: 100%;
  height: 50px;
  min-height: 50px;
  padding: 8px 10px;
  margin: 0;
  color: #19394c;
  background: #eef7f8;
  border: 1px solid #cde3e7;
  border-radius: 6px;
  overflow: hidden;
}

.woocommerce .bc-product-card__sku span,
.bc-home-store .bc-product-card__sku span {
  color: #557987;
  font-size: .5rem;
  font-weight: 800;
  letter-spacing: .085em;
  text-transform: uppercase;
}

.woocommerce .bc-product-card__sku strong,
.bc-home-store .bc-product-card__sku strong {
  max-width: 100%;
  overflow: hidden;
  color: #14374a;
  font: 800 .68rem/1.25 "DM Sans", monospace;
  letter-spacing: .025em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.woocommerce .bc-product-card__rating,
.bc-home-store .bc-product-card__rating {
  display: flex;
  align-items: center;
  min-height: 18px;
  overflow: hidden;
}

.woocommerce .bc-product-card__rating .star-rating,
.bc-home-store .bc-product-card__rating .star-rating {
  margin: 0;
  color: #e7940a;
  font-size: .68rem;
}

.woocommerce .bc-product-card__commercial,
.bc-home-store .bc-product-card__commercial {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(38px, auto) 44px;
  align-self: end;
  gap: 12px;
  min-width: 0;
  padding-top: 13px;
  margin: 0;
  border-top: 1px solid #e2e9ed;
}

.woocommerce .bc-product-card__price,
.bc-home-store .bc-product-card__price {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
}

.woocommerce .bc-product-card__price .price,
.bc-home-store .bc-product-card__price .price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-start;
  gap: 5px;
  min-height: 0 !important;
  margin: 0 !important;
  color: #102b40 !important;
  font: 800 1.05rem/1.2 "Manrope", sans-serif !important;
  text-align: left;
}

.woocommerce .bc-product-card__price .price del,
.bc-home-store .bc-product-card__price .price del {
  color: #7d8d98;
  font-size: .68em;
  font-weight: 550;
}

.woocommerce .bc-product-card__price .price ins,
.bc-home-store .bc-product-card__price .price ins {
  text-decoration: none;
}

.woocommerce .bc-product-card__commercial .button,
.bc-home-store .bc-product-card__commercial .button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-width: 0;
  min-height: 46px !important;
  height: 46px;
  padding: 0 16px !important;
  margin: 0 !important;
  overflow: hidden;
  color: #fff !important;
  background: #081f33 !important;
  border: 1px solid #081f33 !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 18px rgba(8, 31, 51, .14) !important;
  font-size: .875rem !important;
  font-weight: 800 !important;
  line-height: 1.2;
  letter-spacing: .005em;
  text-align: center;
  text-overflow: ellipsis;
  text-transform: none;
  white-space: nowrap;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.woocommerce .bc-product-card__commercial .button::before,
.bc-home-store .bc-product-card__commercial .button::before {
  display: none !important;
  content: none !important;
}

.woocommerce .bc-product-card__commercial .button:hover,
.woocommerce .bc-product-card__commercial .button:focus-visible,
.bc-home-store .bc-product-card__commercial .button:hover,
.bc-home-store .bc-product-card__commercial .button:focus-visible {
  background: #0875ad !important;
  border-color: #0875ad !important;
  box-shadow: 0 10px 22px rgba(8, 117, 173, .2) !important;
  transform: translateY(-1px);
}

.woocommerce .bc-product-card__commercial .button:active,
.bc-home-store .bc-product-card__commercial .button:active {
  box-shadow: 0 4px 10px rgba(8, 31, 51, .14) !important;
  transform: translateY(0);
}

.woocommerce .bc-product-card__commercial .button.loading,
.woocommerce .bc-product-card__commercial .button.disabled,
.bc-home-store .bc-product-card__commercial .button.loading,
.bc-home-store .bc-product-card__commercial .button.disabled {
  opacity: .68;
  cursor: wait;
  transform: none;
}

.woocommerce .bc-product-card__commercial .button:focus-visible,
.bc-home-store .bc-product-card__commercial .button:focus-visible {
  outline: 3px solid rgba(10, 109, 159, .24);
  outline-offset: 2px;
}

.woocommerce .bc-product-card__commercial .added_to_cart,
.bc-home-store .bc-product-card__commercial .added_to_cart {
  color: #075f91;
  font-size: .68rem;
  font-weight: 800;
  text-align: center;
}

@media (max-width: 580px) {
  .woocommerce .bc-product-card__content,
  .bc-home-store .bc-product-card__content {
    grid-template-rows: 22px 4.2rem 56px 18px minmax(96px, 1fr);
    padding: 16px;
  }

  .woocommerce .bc-product-card__media,
  .bc-home-store .bc-product-card__media {
    aspect-ratio: 16 / 10;
  }
}

@media (prefers-reduced-motion: reduce) {
  .woocommerce ul.products li.bc-product-card,
  .bc-home-store ul.products li.bc-product-card,
  .woocommerce .bc-product-card__media > img,
  .bc-home-store .bc-product-card__media > img,
  .woocommerce .bc-product-card__commercial .button,
  .bc-home-store .bc-product-card__commercial .button {
    transition: none;
  }

  .woocommerce ul.products li.bc-product-card:hover,
  .bc-home-store ul.products li.bc-product-card:hover,
  .woocommerce .bc-product-card__commercial .button:hover,
  .bc-home-store .bc-product-card__commercial .button:hover {
    transform: none;
  }
}
