/* Rede Territórios 2.14.1 — card único de produto */
.woocommerce ul.products,
.woocommerce-page ul.products,
.tae-elementor-products ul.products,
.tae-enterprise-products ul.products,
.tae-territory-products ul.products,
.tae-product-related ul.products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:32px!important;
  margin:0!important;
  padding:0!important;
}
.woocommerce ul.products::before,.woocommerce ul.products::after,
.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{display:none!important;content:none!important}
.woocommerce ul.products li.product.tae-product-card,
.woocommerce-page ul.products li.product.tae-product-card{
  position:relative!important;display:flex!important;flex-direction:column!important;
  float:none!important;clear:none!important;width:auto!important;min-width:0!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
  border:1px solid #ddd8cf!important;border-radius:18px!important;background:#fff!important;
  box-shadow:0 10px 28px rgba(41,61,49,.07)!important;
  transition:transform .22s ease,box-shadow .22s ease!important;
}
.woocommerce ul.products li.product.tae-product-card:hover{transform:translateY(-3px)!important;box-shadow:0 17px 38px rgba(41,61,49,.11)!important}
.tae-product-card__media{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#f1efe9;text-decoration:none!important}
.tae-product-card__media img{display:block!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;margin:0!important;border-radius:0!important}
.tae-product-card__sale{position:absolute;z-index:3;top:18px;left:0;padding:9px 12px;background:#a85335;color:#fff;font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}
.tae-product-card__body{display:flex;flex:1;flex-direction:column;align-items:center;padding:32px 26px 28px;text-align:center}
.tae-product-card__title{margin:0!important;padding:0!important;font-family:inherit!important;font-size:clamp(25px,2vw,36px)!important;font-weight:800!important;line-height:1.08!important;letter-spacing:-.04em!important}
.tae-product-card__title a{color:#213d2e!important;text-decoration:none!important}
.tae-product-card__enterprise{margin-top:22px;color:#315f3d!important;font-size:14px;font-weight:800;text-decoration:none!important}
.tae-product-card__location{margin-top:6px;color:#6b7972;font-size:14px;line-height:1.45}
.tae-product-card__categories{margin-top:20px;color:#315f3d;font-size:13px;font-weight:800;line-height:1.45;letter-spacing:.055em;text-transform:uppercase}
.tae-product-card__footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:72px;border-top:1px solid #e3dfd7}
.tae-product-card__price{min-width:0;padding:18px 24px;color:#356b45;text-align:left!important;font-size:21px;font-weight:850;line-height:1.15}
.tae-product-card__price del{display:inline;margin-left:7px;color:#929892;font-size:13px;font-weight:600;opacity:.85}
.tae-product-card__price ins{text-decoration:none}
.woocommerce ul.products li.product .tae-product-card__buy,
.woocommerce-page ul.products li.product .tae-product-card__buy{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  width:auto!important;min-width:max-content!important;max-width:none!important;min-height:0!important;height:auto!important;
  margin:0!important;padding:18px 24px!important;border:0!important;border-left:1px solid #e3dfd7!important;
  border-radius:0!important;background:transparent!important;color:#315f3d!important;
  font-size:15px!important;font-weight:750!important;line-height:1.2!important;white-space:nowrap!important;text-decoration:none!important;box-shadow:none!important;
}
.woocommerce ul.products li.product .tae-product-card__buy:hover,
.woocommerce-page ul.products li.product .tae-product-card__buy:hover{
  background:transparent!important;color:#a85335!important;text-decoration:underline!important;text-underline-offset:4px!important
}
.tae-product-card__buy b{font-size:18px;font-weight:500;transition:transform .18s ease}.tae-product-card__buy:hover b{transform:translateX(3px)}
@media(max-width:1024px){.woocommerce ul.products,.woocommerce-page ul.products,.tae-elementor-products ul.products,.tae-enterprise-products ul.products,.tae-territory-products ul.products,.tae-product-related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.woocommerce ul.products,.woocommerce-page ul.products,.tae-elementor-products ul.products,.tae-enterprise-products ul.products,.tae-territory-products ul.products,.tae-product-related ul.products{grid-template-columns:1fr!important;gap:24px!important}.tae-product-card__footer{grid-template-columns:1fr auto}.tae-product-card__price,.woocommerce ul.products li.product .tae-product-card__buy{padding-inline:18px!important}.tae-product-card__title{font-size:30px!important}}

/* Rede Territórios 2.14.2 — acabamento definitivo do card */
/* Remove a faixa vazia causada pelas regras antigas de miniatura quadrada. */
.woocommerce ul.products li.product.tae-product-card a.tae-product-card__media,
.woocommerce-page ul.products li.product.tae-product-card a.tae-product-card__media,
.tae-enterprise-products ul.products li.product.tae-product-card a.tae-product-card__media,
.tae-product-related ul.products li.product.tae-product-card a.tae-product-card__media{
  display:block!important;
  width:100%!important;
  aspect-ratio:4/5!important;
  min-height:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:17px 17px 0 0!important;
  background:#f1efe9!important;
}
.woocommerce ul.products li.product.tae-product-card a.tae-product-card__media img,
.woocommerce-page ul.products li.product.tae-product-card a.tae-product-card__media img,
.tae-enterprise-products ul.products li.product.tae-product-card a.tae-product-card__media img,
.tae-product-related ul.products li.product.tae-product-card a.tae-product-card__media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
}
/* Garante o mesmo acabamento em todos os contextos, inclusive relacionados. */
.woocommerce ul.products li.product.tae-product-card,
.woocommerce-page ul.products li.product.tae-product-card,
.tae-enterprise-products ul.products li.product.tae-product-card,
.tae-product-related ul.products li.product.tae-product-card{
  overflow:hidden!important;
  border:1px solid #ddd8cf!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(41,61,49,.07)!important;
}
.tae-product-card__footer{
  grid-template-columns:minmax(0,1fr) minmax(132px,auto)!important;
  border-top:1px solid #e3dfd7!important;
}
.woocommerce ul.products li.product .tae-product-card__buy,
.woocommerce-page ul.products li.product .tae-product-card__buy,
.tae-enterprise-products ul.products li.product .tae-product-card__buy,
.tae-product-related ul.products li.product .tae-product-card__buy{
  border-left:1px solid #e3dfd7!important;
  background:transparent!important;
  border-radius:0!important;
  white-space:nowrap!important;
}
.woocommerce ul.products li.product .tae-product-card__buy:hover,
.woocommerce-page ul.products li.product .tae-product-card__buy:hover,
.tae-enterprise-products ul.products li.product .tae-product-card__buy:hover,
.tae-product-related ul.products li.product .tae-product-card__buy:hover{
  background:transparent!important;
}
/* Relacionados: três itens, sem quarta coluna órfã. */
.tae-product-related ul.products{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:32px!important;
}
@media(max-width:1024px){
  .tae-product-related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
  .tae-product-related ul.products{grid-template-columns:1fr!important}
}



/* ===== Rede Territórios 2.14.8 — componente final de produto ===== */
/* Este bloco é carregado depois das folhas legadas e padroniza todos os loops. */
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) ul.products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:32px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) ul.products::before,
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) ul.products::after{
  display:none!important;content:none!important;
}
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) ul.products>li.product.tae-product-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  float:none!important;
  clear:none!important;
  width:auto!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #ddd8cf!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(41,61,49,.07)!important;
  transition:transform .22s ease,box-shadow .22s ease!important;
}
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) ul.products>li.product.tae-product-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 17px 38px rgba(41,61,49,.11)!important;
}
.tae-product-card__media{
  position:relative!important;
  display:block!important;
  width:100%!important;
  aspect-ratio:4/5!important;
  min-height:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:17px 17px 0 0!important;
  background:#f1efe9!important;
}
.tae-product-card__media img,
:is(.woocommerce,.woocommerce-page) ul.products li.product.tae-product-card .tae-product-card__media img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
}
.tae-product-card__body{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:center!important;
  padding:30px 24px 26px!important;
  text-align:center!important;
}
.tae-product-card__title{
  min-height:2.16em!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  font-size:clamp(25px,2vw,36px)!important;
  line-height:1.08!important;
}
.tae-product-card__enterprise{margin-top:20px!important}
.tae-product-card__location{min-height:1.45em!important}
.tae-product-card__categories{margin-top:auto!important;padding-top:18px!important}
.tae-product-card__footer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(118px,auto)!important;
  align-items:stretch!important;
  min-height:72px!important;
  border-top:1px solid #e3dfd7!important;
}
.tae-product-card__price{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  padding:18px 22px!important;
  text-align:left!important;
}
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) .tae-product-card__buy{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:18px 22px!important;
  border:0!important;
  border-left:1px solid #e3dfd7!important;
  border-radius:0!important;
  background:transparent!important;
  color:#315f3d!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) .tae-product-card__buy:hover,
:is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) .tae-product-card__buy:focus-visible{
  background:transparent!important;
  color:#9a452e!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}
@media(max-width:1024px){
  :is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:24px!important;
  }
}
@media(max-width:640px){
  :is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) ul.products{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .tae-product-card__body{padding:26px 20px 22px!important}
  .tae-product-card__title{font-size:29px!important}
  .tae-product-card__footer{grid-template-columns:minmax(0,1fr) auto!important}
  .tae-product-card__price,
  :is(.woocommerce,.woocommerce-page,.tae-elementor-products,.tae-enterprise-products,.tae-territory-products,.tae-city-product-loop,.tae-product-related) .tae-product-card__buy{padding:16px 18px!important}
}


/* v11.1.3 - História em card branco */
.tae-history,
.tae-history-card,
.tea-history,
.empreendimento-historia,
.section-history{
    background:#fff !important;
    border:1px solid #e7e4da !important;
    border-radius:28px;
    box-shadow:0 12px 32px rgba(0,0,0,.05);
}
