/** TAE Platform 2.5 — componentes e correções de integração */

/* Tipografia: sem serifas em toda a interface TAE. */
.tae-home h1,.tae-home h2,.tae-home h3,
.tae-directory-header h1,.tae-single-enterprise-page h1,
.tae-public-enterprise h1,.tae-public-enterprise h2,.tae-home-about h2{
  font-family:var(--tae-font-display)!important;
}

/* Remove o azul residual das áreas mais visíveis da Home. */
.tae-audience-card--consumer{
  background:linear-gradient(145deg,var(--tae-color-terracotta-900),var(--tae-color-terracotta-700))!important;
  color:#fff!important;
}
.tae-audience-card--producer{
  background:linear-gradient(145deg,#EFF4EC,var(--tae-color-primary-100))!important;
  color:var(--tae-color-primary-900)!important;
}
.tae-audience-card--producer .tae-button{
  background:var(--tae-color-primary-700)!important;
}
.tae-home-section .tae-section-heading h2,
.tae-directory-header h1,.tae-home-stats strong{
  color:var(--tae-color-primary-900)!important;
}

/* Botões TAE: somente componentes TAE recebem tamanho estrutural. */
.tae-button,.tae-btn{
  width:auto;
  max-width:100%;
  min-height:44px;
  padding:0 18px;
  font-size:15px;
  border-radius:12px;
}

/* WooCommerce: aplica somente cor. Recupera dimensões compactas da vitrine. */
.woocommerce ul.products li.product :is(a.button,button.button),
.woocommerce-page ul.products li.product :is(a.button,button.button){
  display:inline-flex!important;
  width:auto!important;
  min-width:0!important;
  min-height:38px!important;
  height:auto!important;
  padding:9px 14px!important;
  margin-top:10px!important;
  border-radius:10px!important;
  font-size:13px!important;
  line-height:1.2!important;
  white-space:normal;
}
.woocommerce ul.products li.product .button + .button{margin-left:6px!important}

/* Escala de camadas: mapas e indicadores nunca passam sobre o cabeçalho. */
.leaflet-container,.tae-directory-map,.tae-single-map,.tae-location-picker{
  position:relative;
  z-index:var(--tae-layer-base)!important;
  isolation:isolate;
}
.leaflet-pane,.leaflet-control{z-index:auto}
.tae-home-stats,.tae-stats-section-layer,
body:not(.elementor-editor-active) .elementor-element-e100008,
body:not(.elementor-editor-active) .elementor-element-e100008 .tae-home-stats{
  z-index:var(--tae-layer-card)!important;
}
#header,.ct-header,.site-header,[data-header*="type"],header.site-header{
  position:relative;
  z-index:var(--tae-layer-header)!important;
}
#wpadminbar{z-index:999999!important}
.tae-search-suggestions,.tae-search-suggestions--portal{
  z-index:var(--tae-layer-dropdown)!important;
}

/* Evita que a barra de indicadores invada a navegação/identidade visual. */
body:not(.elementor-editor-active) .tae-stats-section-layer,
body:not(.elementor-editor-active) .elementor-element-e100008{
  transform:none!important;
}

/* Foco alinhado à nova paleta. */
.tae-global-filter input:focus,.tae-global-filter select:focus,
.tae-product-filter input:focus,.tae-product-filter select:focus,
.tae-field input:focus,.tae-field select:focus,.tae-field textarea:focus{
  outline:3px solid rgba(53,107,69,.16)!important;
  border-color:var(--tae-color-primary-700)!important;
}

/* =========================================================
   TAE 2.5.1 — Home alinhada à página do empreendimento
   Esta folha é carregada por último.
   ========================================================= */
body.tae-home-page{
  background:var(--tae-color-background)!important;
}

/* Neutraliza os blocos azuis legados do modelo Elementor. */
body.tae-home-page .tae-elementor-cta,
body.tae-home-page .tae-home-about{
  background:linear-gradient(135deg,var(--tae-color-terracotta-900),var(--tae-color-terracotta-700))!important;
  color:#fff!important;
}
body.tae-home-page .tae-elementor-cta span,
body.tae-home-page .tae-elementor-cta h2,
body.tae-home-page .tae-home-about h2{
  color:#fff!important;
}
body.tae-home-page .tae-elementor-cta .tae-button,
body.tae-home-page .tae-home-about .tae-button{
  background:var(--tae-color-surface)!important;
  border-color:var(--tae-color-surface)!important;
  color:var(--tae-color-terracotta-900)!important;
}
body.tae-home-page .tae-elementor-cta .tae-button:hover,
body.tae-home-page .tae-home-about .tae-button:hover{
  background:var(--tae-color-ochre-100)!important;
  color:var(--tae-color-terracotta-900)!important;
}
body.tae-home-page .tae-audience-card--consumer{
  background:linear-gradient(145deg,var(--tae-color-terracotta-900),var(--tae-color-terracotta-700))!important;
}
body.tae-home-page .tae-audience-card--producer{
  background:linear-gradient(145deg,#F5F0E6,var(--tae-color-primary-100))!important;
}

/* Títulos e links da Home deixam de herdar o azul do tema/modelo. */
body.tae-home-page :is(.tae-home-section,.tae-elementor-territories,.tae-elementor-enterprises,.tae-elementor-products) h2,
body.tae-home-page .tae-section-heading :is(h2,a),
body.tae-home-page .tae-home-stats strong{
  color:var(--tae-color-primary-900)!important;
}

/* A vitrine da Home usa a mesma linguagem dos produtos do empreendimento. */
body.tae-home-page .tae-elementor-products ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  margin:0!important;
}
body.tae-home-page .tae-elementor-products ul.products::before,
body.tae-home-page .tae-elementor-products ul.products::after{display:none!important}
body.tae-home-page .tae-elementor-products ul.products li.product{
  float:none!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0 0 18px!important;
  overflow:hidden!important;
  border:1px solid var(--tae-color-border)!important;
  border-radius:16px!important;
  background:var(--tae-color-surface)!important;
  box-shadow:var(--tae-shadow-sm)!important;
}
body.tae-home-page .tae-elementor-products ul.products li.product:hover{
  transform:translateY(-3px);
  box-shadow:var(--tae-shadow-md)!important;
}
body.tae-home-page .tae-elementor-products ul.products li.product img{
  margin:0 0 15px!important;
  border-radius:0!important;
}
body.tae-home-page .tae-elementor-products ul.products li.product :is(.woocommerce-loop-product__title,.price,.tae-loop-meta){
  margin-left:16px!important;
  margin-right:16px!important;
}
body.tae-home-page .tae-elementor-products ul.products li.product .woocommerce-loop-product__title{
  padding:0!important;
  color:var(--tae-color-text)!important;
  font-size:17px!important;
  line-height:1.35!important;
}
body.tae-home-page .tae-elementor-products ul.products li.product .price{
  color:var(--tae-color-primary-700)!important;
  font-size:15px!important;
  font-weight:800!important;
}
body.tae-home-page .tae-elementor-products ul.products li.product :is(a.button,button.button){
  display:inline-flex!important;
  width:auto!important;
  min-width:0!important;
  min-height:36px!important;
  margin:12px 16px 0!important;
  padding:8px 13px!important;
  border-radius:9px!important;
  font-size:12px!important;
  line-height:1.2!important;
}

@media(max-width:1024px){
  body.tae-home-page .tae-elementor-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  body.tae-home-page .tae-elementor-products ul.products{grid-template-columns:1fr!important}
}


/* =========================================================
   TAE 2.5.2 — correção independente da identificação da Home
   Seletores aplicados diretamente aos componentes renderizados.
   ========================================================= */

/* Identidade natural aplicada mesmo quando o tema não informa a Home ao plugin. */
.tae-elementor-cta,
.tae-home-about,
.tae-audience-card--consumer {
  background: linear-gradient(135deg, #7F3F2B, #B65E3C) !important;
  background-color: #B65E3C !important;
  color: #fff !important;
  border-color: rgba(127,63,43,.25) !important;
}
.tae-elementor-cta :is(span,h1,h2,h3,p),
.tae-home-about :is(span,h1,h2,h3,p),
.tae-audience-card--consumer :is(span,h1,h2,h3,p) {
  color: #fff !important;
}
.tae-audience-card--producer {
  background: linear-gradient(145deg, #F7F1E7, #E4EEE4) !important;
  background-color: #F7F1E7 !important;
  color: #214832 !important;
}
.tae-audience-card--producer :is(span,h1,h2,h3,p) { color:#214832 !important; }

/* Vitrine da Home — mesmo padrão visual compacto da página do empreendimento. */
.tae-elementor-products.woocommerce ul.products {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
  margin:0 !important;
  padding:0 !important;
}
.tae-elementor-products.woocommerce ul.products::before,
.tae-elementor-products.woocommerce ul.products::after { display:none !important; content:none !important; }
.tae-elementor-products.woocommerce ul.products li.product {
  float:none !important;
  clear:none !important;
  width:auto !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 0 16px !important;
  overflow:hidden !important;
  border:1px solid #E5DDD2 !important;
  border-radius:16px !important;
  background:#FFF !important;
  box-shadow:0 5px 18px rgba(67,53,43,.08) !important;
}
.tae-elementor-products.woocommerce ul.products li.product img {
  width:100% !important;
  aspect-ratio:1/1 !important;
  object-fit:cover !important;
  margin:0 0 14px !important;
  border-radius:0 !important;
}
.tae-elementor-products.woocommerce ul.products li.product :is(.woocommerce-loop-product__title,.price,.tae-loop-meta) {
  margin-left:16px !important;
  margin-right:16px !important;
}
.tae-elementor-products.woocommerce ul.products li.product .woocommerce-loop-product__title {
  padding:0 !important;
  color:#43352B !important;
  font-family:Inter,Manrope,system-ui,-apple-system,"Segoe UI",sans-serif !important;
  font-size:16px !important;
  line-height:1.35 !important;
}
.tae-elementor-products.woocommerce ul.products li.product .price {
  color:#356B45 !important;
  font-size:15px !important;
  font-weight:800 !important;
}
.tae-elementor-products.woocommerce ul.products li.product :is(a.button,button.button,.added_to_cart) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  max-width:calc(100% - 32px) !important;
  min-height:36px !important;
  height:auto !important;
  margin:12px 16px 0 !important;
  padding:9px 13px !important;
  border:0 !important;
  border-radius:9px !important;
  background:#356B45 !important;
  color:#fff !important;
  font-size:12px !important;
  line-height:1.2 !important;
  box-shadow:none !important;
}

/* Remove azul herdado dos títulos, links e botões dos componentes da Home. */
:is(.tae-home-section,.tae-elementor-territories,.tae-elementor-enterprises,.tae-elementor-products,.tae-home-stats) :is(h1,h2,h3,a:not(.tae-button):not(.button)) {
  color:#214832 !important;
}
:is(.tae-elementor-territories,.tae-elementor-enterprises) a:hover :is(h2,h3) { color:#A94F32 !important; }

@media(max-width:1024px){
  .tae-elementor-products.woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:620px){
  .tae-elementor-products.woocommerce ul.products { grid-template-columns:1fr !important; }
}

/* =========================================================
   Categorias de produtos — v2.6
   ========================================================= */
body.tae-product-category-page{font-family:Inter,Manrope,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;background:#f7f7f3}
/* A página de categoria usa sans-serif de forma explícita para impedir que estilos
   tipográficos serifados do tema sejam herdados por títulos, formulários e cards. */
body.tae-product-category-page .tae-category-page,
body.tae-product-category-page .tae-category-page :is(h1,h2,h3,h4,h5,h6,p,a,span,label,input,select,button,textarea,strong,small,div){
  font-family:Inter,Manrope,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;
}
body.tae-product-category-page .site-main{padding:0}
.tae-category-page{background:#f7f7f3;color:#17352d}
.tae-category-container{width:min(1280px,calc(100% - 48px));margin-inline:auto}
.tae-category-hero{position:relative;min-height:340px;display:flex;align-items:flex-end;background:#e8eee8;overflow:hidden}
.tae-category-hero.has-image{background-image:var(--tae-category-image);background-size:cover;background-position:center}
.tae-category-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,45,37,.88) 0%,rgba(13,45,37,.67) 48%,rgba(13,45,37,.15) 100%)}
.tae-category-hero:not(.has-image) .tae-category-hero__overlay{background:radial-gradient(circle at 85% 20%,rgba(202,111,58,.20),transparent 35%),linear-gradient(135deg,#173e33,#2f6554)}
.tae-category-hero__content{position:relative;z-index:1;padding-block:34px 54px;color:#fff}
.tae-category-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:56px;font-size:13px;color:rgba(255,255,255,.76)}
.tae-category-breadcrumb a{color:inherit;text-decoration:none}.tae-category-breadcrumb a:hover{color:#fff}
.tae-category-hero__copy{max-width:720px}.tae-category-kicker,.tae-category-toolbar__eyebrow{display:block;margin-bottom:10px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.tae-category-hero h1{margin:0 0 14px;color:#fff;font-family:inherit;font-size:clamp(42px,5vw,68px);font-weight:800;line-height:.98;letter-spacing:-.045em}
.tae-category-description,.tae-category-hero__copy>p{max-width:680px;margin:0;font-size:17px;line-height:1.62;color:rgba(255,255,255,.9)}
.tae-category-description p{margin:0}
.tae-category-content{padding-block:0 80px}
.tae-category-filters{position:relative;z-index:8;display:grid;grid-template-columns:minmax(300px,1.5fr) minmax(190px,.7fr) minmax(190px,.7fr) auto auto;gap:12px;align-items:end;margin-top:-28px;padding:18px;border:1px solid rgba(20,54,45,.09);border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(25,54,45,.10)}
.tae-category-filters label{display:block;margin:0 0 7px;font-size:12px;font-weight:750;color:#496159}
.tae-category-filters input,.tae-category-filters select{width:100%;height:48px;margin:0;border:1px solid #d8dfdb;border-radius:11px;background:#fff;color:#17352d;font-family:inherit;font-size:14px;box-shadow:none}
.tae-category-filters input:focus,.tae-category-filters select:focus{border-color:#28735e;box-shadow:0 0 0 3px rgba(40,115,94,.12);outline:0}
.tae-category-filters .tae-button{height:48px;padding-inline:24px;white-space:nowrap;border-radius:11px}
.tae-category-filters .tae-filter-clear{align-self:center;font-size:13px;font-weight:700;color:#586d65;white-space:nowrap}
.tae-category-catalog{padding-top:62px}
.tae-category-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}
.tae-category-toolbar h2,.tae-category-section-heading h2{margin:0;color:#17352d;font-family:inherit;font-size:clamp(28px,3vw,40px);font-weight:800;line-height:1.08;letter-spacing:-.035em}
.tae-category-toolbar__eyebrow,.tae-category-section-heading>div>span{color:#b65f31}
.tae-category-toolbar__controls{display:flex;align-items:center;gap:18px;color:#65756f;font-size:13px}
.tae-category-toolbar__controls .woocommerce-result-count{margin:0}
.tae-category-toolbar__controls .woocommerce-ordering{margin:0}.tae-category-toolbar__controls select{min-width:190px;height:44px;border-radius:10px;border-color:#d8dfdb;background:#fff;font-family:inherit}
body.tae-product-category-page .tae-category-catalog ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:30px 22px!important;margin:0!important}
body.tae-product-category-page .tae-category-catalog ul.products:before,body.tae-product-category-page .tae-category-catalog ul.products:after{display:none!important}
body.tae-product-category-page .tae-category-catalog ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:0 0 18px!important;border:1px solid #e0e5e1!important;border-radius:16px!important;background:#fff!important;overflow:hidden;box-shadow:0 8px 26px rgba(21,50,42,.055);transition:transform .22s ease,box-shadow .22s ease}
body.tae-product-category-page .tae-category-catalog ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(21,50,42,.10)}
body.tae-product-category-page .tae-category-catalog ul.products li.product>a.woocommerce-LoopProduct-link{display:block;text-decoration:none}
body.tae-product-category-page .tae-category-catalog ul.products li.product img{width:100%!important;aspect-ratio:1/1;object-fit:cover;margin:0 0 16px!important;border-radius:0!important}
body.tae-product-category-page .tae-category-catalog ul.products li.product .woocommerce-loop-product__title{padding:0 16px!important;margin:0 0 8px!important;color:#17352d!important;font-family:inherit!important;font-size:16px!important;font-weight:750!important;line-height:1.3!important}
body.tae-product-category-page .tae-category-catalog ul.products li.product .price{display:block;padding:0 16px;margin:0 0 10px!important;color:#17352d!important;font-size:16px!important;font-weight:800!important}
body.tae-product-category-page .tae-category-catalog ul.products li.product .tae-loop-meta{padding:0 16px;margin:4px 0 12px;gap:3px;font-size:12px}
body.tae-product-category-page .tae-category-catalog ul.products li.product .tae-loop-enterprise{color:#9c542d;font-weight:750;text-decoration:none}
body.tae-product-category-page .tae-category-catalog ul.products li.product .tae-loop-location{color:#65756f}
body.tae-product-category-page .tae-category-catalog ul.products li.product .button{margin:3px 16px 0!important;width:calc(100% - 32px);min-height:42px;display:flex;align-items:center;justify-content:center;border-radius:10px!important;background:#245f4f!important;color:#fff!important;font-size:13px!important;font-weight:750!important}
body.tae-product-category-page .tae-category-catalog ul.products li.product .star-rating,body.tae-product-category-page .tae-category-catalog ul.products li.product .ct-woo-card-actions{display:none!important}
body.tae-product-category-page .woocommerce-pagination{margin-top:42px}
.tae-category-empty{padding:54px;text-align:center;border:1px dashed #cbd5cf;border-radius:18px;background:#fff}.tae-category-empty strong{display:block;margin-bottom:8px;font-size:22px}.tae-category-empty p{margin:0 0 22px;color:#687a73}
.tae-category-producers{margin-top:82px;padding-top:58px;border-top:1px solid #dfe5e1}
.tae-category-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.tae-category-section-heading>div>span{display:block;margin-bottom:8px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tae-category-section-heading>a{font-weight:750;color:#245f4f;text-decoration:none}
.tae-category-producers__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.tae-category-producer-card{overflow:hidden;border:1px solid #dfe5e1;border-radius:16px;background:#fff}.tae-category-producer-card__media{display:block;aspect-ratio:16/10;background:#dfe8e3;overflow:hidden}.tae-category-producer-card__media img{width:100%;height:100%;object-fit:cover}.tae-category-producer-card__media>span{display:grid;height:100%;place-items:center;font-size:46px;font-weight:800;color:#245f4f}.tae-category-producer-card>div{padding:18px}.tae-category-producer-card>div>span{font-size:12px;font-weight:750;color:#a75a31}.tae-category-producer-card h3{margin:6px 0 14px;font-family:inherit;font-size:18px;line-height:1.25}.tae-category-producer-card h3 a{color:#17352d;text-decoration:none}.tae-category-producer-card__link{font-size:13px;font-weight:750;color:#245f4f;text-decoration:none}
@media(max-width:1100px){.tae-category-filters{grid-template-columns:1.4fr 1fr 1fr auto}.tae-category-filters .tae-filter-clear{display:none}body.tae-product-category-page .tae-category-catalog ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}.tae-category-producers__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.tae-category-container{width:min(100% - 28px,1280px)}.tae-category-hero{min-height:315px}.tae-category-hero__content{padding-block:24px 44px}.tae-category-breadcrumb{margin-bottom:38px}.tae-category-filters{grid-template-columns:1fr 1fr;margin-top:-20px;padding:14px}.tae-category-search{grid-column:1/-1}.tae-category-filters .tae-button{width:100%}.tae-category-toolbar{align-items:flex-start;flex-direction:column}.tae-category-toolbar__controls{width:100%;justify-content:space-between}.tae-category-toolbar__controls .woocommerce-result-count{display:none}body.tae-product-category-page .tae-category-catalog ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 12px!important}.tae-category-producers__grid{grid-template-columns:1fr}.tae-category-section-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.tae-category-hero h1{font-size:40px}.tae-category-description,.tae-category-hero__copy>p{font-size:15px}.tae-category-filters{grid-template-columns:1fr}.tae-category-search{grid-column:auto}.tae-category-catalog{padding-top:48px}body.tae-product-category-page .tae-category-catalog ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;padding-inline:12px!important}body.tae-product-category-page .tae-category-catalog ul.products li.product .price,body.tae-product-category-page .tae-category-catalog ul.products li.product .tae-loop-meta{padding-inline:12px}body.tae-product-category-page .tae-category-catalog ul.products li.product .button{margin-inline:12px!important;width:calc(100% - 24px);font-size:12px!important}}


/* =========================================================
   TAE 2.7.0 — página pública do empreendimento
   ========================================================= */
.tae-single-enterprise-page,
.tae-single-enterprise-page :is(h1,h2,h3,p,a,span,strong,label,input,select,button){
  font-family:Inter,Manrope,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
.tae-single-enterprise-page{background:#f8f6f1;padding:26px 0 80px}
.tae-single-enterprise-page .tae-single-container{width:min(1320px,calc(100% - 40px));margin-inline:auto}
.tae-enterprise-breadcrumb{display:flex;align-items:center;gap:8px;margin:0 0 20px;color:#6d675f;font-size:14px;overflow:hidden;white-space:nowrap}
.tae-enterprise-breadcrumb a{color:#356b45;text-decoration:none}.tae-enterprise-breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis}
.tae-public-enterprise{display:grid;gap:32px}
.tae-enterprise-hero{position:relative;min-height:520px;display:flex;align-items:flex-end;overflow:hidden;border-radius:24px;background:linear-gradient(135deg,#244c34,#47765a);box-shadow:0 20px 55px rgba(43,54,45,.16);isolation:isolate}
.tae-enterprise-hero.has-image{background-image:var(--tae-enterprise-cover);background-size:cover;background-position:center}
.tae-enterprise-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,40,28,.90) 0%,rgba(21,40,28,.62) 48%,rgba(21,40,28,.16) 100%);z-index:-1}
.tae-enterprise-hero__content{width:100%;padding:56px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;color:#fff}
.tae-enterprise-hero__identity{display:flex;align-items:center;gap:22px;max-width:850px}
.tae-enterprise-hero__logo{width:112px;height:112px;flex:0 0 112px;object-fit:cover;border:5px solid rgba(255,255,255,.88);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.22)}
.tae-enterprise-hero__logo--placeholder{display:grid;place-items:center;color:#356b45;font-size:42px;font-weight:800}
.tae-enterprise-hero__kicker{margin-bottom:8px;color:#e7eadf;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800}
.tae-enterprise-hero h1{margin:0!important;color:#fff!important;font-size:clamp(38px,5vw,66px)!important;line-height:1.02!important;letter-spacing:-.045em!important}
.tae-enterprise-hero__location{margin:14px 0 0;color:#fff;font-size:18px;font-weight:700}
.tae-enterprise-hero__summary{margin:10px 0 0;max-width:680px;color:rgba(255,255,255,.88);font-size:16px;line-height:1.6}
.tae-enterprise-hero__actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:230px}
.tae-enterprise-hero__actions .tae-button{justify-content:center;text-align:center;text-decoration:none}
.tae-button--light{background:#fff!important;border-color:#fff!important;color:#214832!important}
.tae-enterprise-nav{position:sticky;top:16px;z-index:30;display:flex;justify-content:center;gap:8px;flex-wrap:wrap;width:max-content;max-width:100%;margin:-12px auto 0;padding:8px;border:1px solid #e7e0d6;border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(67,53,43,.10);backdrop-filter:blur(12px)}
.tae-enterprise-nav a{padding:10px 15px;border-radius:10px;color:#356b45;font-size:14px;font-weight:750;text-decoration:none}.tae-enterprise-nav a:hover{background:#eff4ec}
.tae-enterprise-overview{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr);gap:56px;align-items:start;padding:42px 48px;border-radius:22px;background:#fff;border:1px solid #e8e1d7}
.tae-enterprise-overview__intro h2{margin:6px 0 12px!important;color:#214832!important;font-size:32px!important;line-height:1.15!important}.tae-enterprise-overview__intro p{margin:0;color:#6b625a;line-height:1.7}
.tae-enterprise-overview__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tae-enterprise-overview__facts div{padding:20px;border-radius:14px;background:#f6f4ee}.tae-enterprise-overview__facts span{display:block;margin-bottom:6px;color:#80766c;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.tae-enterprise-overview__facts strong{display:block;color:#2c4435;font-size:17px;line-height:1.3}
.tae-public-section{scroll-margin-top:100px}
.tae-enterprise-story{display:grid!important;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:64px!important;align-items:start;padding:56px!important;border-radius:22px!important;background:#f0eadf!important;border:0!important}
.tae-enterprise-story__heading h2{margin:8px 0 0!important;color:#214832!important;font-size:36px!important;line-height:1.15!important}.tae-enterprise-story__content{color:#4e463f;font-size:18px;line-height:1.85}.tae-enterprise-story__content p:first-child{margin-top:0}.tae-enterprise-story__content p:last-child{margin-bottom:0}
.tae-enterprise-contact-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.tae-enterprise-contact-links a{display:inline-flex;padding:10px 15px;border:1px solid #cfdccb;border-radius:999px;color:#356b45;font-size:14px;font-weight:750;text-decoration:none;background:#fff}.tae-enterprise-contact-links a:hover{background:#eff4ec}
.tae-store-information,.tae-enterprise-products,.tae-v2-related{padding:48px!important;border-radius:22px!important;background:#fff!important;border:1px solid #e8e1d7!important;box-shadow:none!important}
.tae-store-information h2,.tae-enterprise-products h2,.tae-v2-related h2{color:#214832!important;font-size:32px!important;line-height:1.2!important}
.tae-enterprise-location-anchor{scroll-margin-top:100px}.tae-enterprise-location-anchor .tae-single-map,.tae-enterprise-location-anchor .tae-public-section{border-radius:22px!important;overflow:hidden}
.tae-enterprise-products ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}.tae-enterprise-products ul.products:before,.tae-enterprise-products ul.products:after{display:none!important}.tae-enterprise-products ul.products li.product{float:none!important;width:auto!important;margin:0!important}
@media(max-width:1024px){.tae-enterprise-hero__content{padding:42px;align-items:flex-start;flex-direction:column}.tae-enterprise-hero__actions{flex-direction:row;min-width:0}.tae-enterprise-overview{grid-template-columns:1fr;gap:30px}.tae-enterprise-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){.tae-single-enterprise-page{padding-top:18px}.tae-single-enterprise-page .tae-single-container{width:min(100% - 28px,1320px)}.tae-enterprise-hero{min-height:540px;border-radius:18px}.tae-enterprise-hero__overlay{background:linear-gradient(0deg,rgba(21,40,28,.94) 0%,rgba(21,40,28,.68) 62%,rgba(21,40,28,.22) 100%)}.tae-enterprise-hero__content{padding:28px}.tae-enterprise-hero__identity{align-items:flex-start;flex-direction:column}.tae-enterprise-hero__logo{width:86px;height:86px;flex-basis:86px;border-radius:17px}.tae-enterprise-hero h1{font-size:38px!important}.tae-enterprise-hero__actions{width:100%;flex-direction:column}.tae-enterprise-nav{position:static;width:100%;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto}.tae-enterprise-overview{padding:28px}.tae-enterprise-overview__facts{grid-template-columns:1fr}.tae-enterprise-story{grid-template-columns:1fr;gap:24px!important;padding:30px!important}.tae-store-information,.tae-enterprise-products,.tae-v2-related{padding:28px!important}.tae-enterprise-products ul.products{grid-template-columns:1fr!important}}

/* v2.8 — Página pública de território */
.tae-territory-public,
.tae-territory-public * { font-family: inherit; }
.tae-territory-container { width: min(1320px, calc(100% - 40px)); margin: 0 auto; padding: 28px 0 80px; }
.tae-territory-hero { position: relative; min-height: 520px; border-radius: 24px; overflow: hidden; display: grid; align-items: end; background: linear-gradient(135deg,#174f3d,#28745b); color: #fff; isolation: isolate; }
.tae-territory-hero.has-image { background-image: var(--tae-territory-cover); background-size: cover; background-position: center; }
.tae-territory-hero__overlay { position:absolute; inset:0; z-index:-1; background: linear-gradient(90deg,rgba(10,35,28,.88) 0%,rgba(10,35,28,.58) 53%,rgba(10,35,28,.16) 100%),linear-gradient(0deg,rgba(9,31,25,.48),transparent 55%); }
.tae-territory-hero__content { max-width: 760px; padding: 72px; }
.tae-territory-hero h1 { color:#fff; margin:10px 0 18px; font-size:clamp(42px,6vw,76px); line-height:.98; letter-spacing:-.04em; font-weight:800; }
.tae-territory-hero__content p { margin:0 0 28px; max-width:650px; color:rgba(255,255,255,.9); font-size:clamp(18px,2vw,22px); line-height:1.55; }
.tae-territory-hero__stats { position:absolute; right:34px; bottom:34px; display:grid; grid-template-columns:repeat(3,minmax(110px,1fr)); gap:1px; overflow:hidden; border-radius:16px; background:rgba(255,255,255,.2); backdrop-filter:blur(16px); }
.tae-territory-hero__stats div { padding:18px 20px; background:rgba(13,47,37,.58); }
.tae-territory-hero__stats strong,.tae-territory-hero__stats span { display:block; color:#fff; }
.tae-territory-hero__stats strong { font-size:24px; line-height:1; }
.tae-territory-hero__stats span { margin-top:6px; font-size:12px; opacity:.82; }
.tae-territory-about { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr); gap:80px; align-items:start; }
.tae-territory-about h2,.tae-territory-cities h2,.tae-territory-enterprises h2,.tae-territory-products h2,.tae-territory-cta h2 { font-family:inherit; font-weight:800; letter-spacing:-.025em; }
.tae-territory-about__content { font-size:18px; line-height:1.8; color:var(--tae-text-muted,#52635c); }
.tae-city-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.tae-city-card { position:relative; display:flex; min-height:126px; flex-direction:column; justify-content:flex-end; padding:22px; border:1px solid rgba(25,87,66,.14); border-radius:16px; background:#fff; text-decoration:none!important; transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.tae-city-card:hover { transform:translateY(-3px); border-color:rgba(25,87,66,.34); box-shadow:0 16px 36px rgba(26,66,53,.09); }
.tae-city-card span { color:#183e32; font-size:17px; font-weight:750; line-height:1.25; }
.tae-city-card small { margin-top:7px; color:#697a73; }
.tae-city-card b { position:absolute; top:18px; right:19px; color:#ba603e; font-size:18px; }
.tae-section-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:30px; }
.tae-section-heading h2 { margin:5px 0 0; font-size:clamp(30px,4vw,46px); }
.tae-section-heading>a { color:#1d654d; font-weight:700; text-decoration:none; }
.tae-territory-enterprises .tae-enterprise-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.tae-territory-products ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:28px!important; }
.tae-territory-products ul.products:before,.tae-territory-products ul.products:after { display:none!important; }
.tae-territory-products ul.products li.product { width:auto!important; margin:0!important; float:none!important; }
.tae-territory-cta { margin-top:76px; padding:48px; border-radius:22px; display:grid; grid-template-columns:1fr 1.1fr; gap:48px; align-items:center; background:#f2eee5; }
.tae-territory-cta h2 { margin:7px 0 0; font-size:clamp(28px,4vw,44px); }
.tae-territory-cta__links { display:grid; gap:10px; }
.tae-territory-cta__links a { display:flex; justify-content:space-between; align-items:center; padding:15px 17px; border-radius:12px; background:#fff; color:#21483b; font-weight:700; text-decoration:none; }
.tae-territory-preview img { display:block; max-width:260px; height:auto; margin:10px 0; border-radius:8px; }
@media (max-width:1100px) {
 .tae-territory-hero__content { padding:50px; padding-bottom:150px; }
 .tae-territory-hero__stats { left:30px; right:auto; }
 .tae-city-grid,.tae-territory-enterprises .tae-enterprise-grid,.tae-territory-products ul.products { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (max-width:720px) {
 .tae-territory-container { width:min(100% - 28px,1320px); padding-top:18px; }
 .tae-territory-hero { min-height:580px; border-radius:18px; }
 .tae-territory-hero__content { padding:34px 26px 190px; }
 .tae-territory-hero__stats { left:18px; right:18px; bottom:18px; grid-template-columns:repeat(3,1fr); }
 .tae-territory-hero__stats div { padding:14px 10px; }
 .tae-territory-hero__stats strong { font-size:20px; }
 .tae-territory-about { grid-template-columns:1fr; gap:22px; }
 .tae-city-grid { grid-template-columns:1fr 1fr; gap:12px; }
 .tae-city-card { min-height:112px; padding:17px; }
 .tae-territory-enterprises .tae-enterprise-grid,.tae-territory-products ul.products { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:14px!important; }
 .tae-territory-cta { grid-template-columns:1fr; padding:30px 24px; gap:25px; }
}
@media (max-width:440px) {
 .tae-city-grid { grid-template-columns:1fr; }
 .tae-territory-enterprises .tae-enterprise-grid { grid-template-columns:1fr!important; }
}

/* v2.8.1 — Discovery: busca como ação principal, filtros como refinamento */
.tae-discovery-search{
  grid-template-columns:minmax(320px,1.7fr) minmax(190px,.75fr) minmax(190px,.75fr) minmax(150px,.55fr);
  gap:14px;
  align-items:end;
}
.tae-discovery-search .tae-filter-search{grid-column:1/-1}
.tae-discovery-search .tae-filter-search input{min-height:54px;font-size:16px;padding-inline:18px}
.tae-discovery-search .tae-filter-field select{min-height:48px}
.tae-discovery-search .tae-filter-actions{display:flex;align-items:center;min-height:48px}
.tae-discovery-search .tae-filter-submit{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.tae-filter-status{display:inline-flex;align-items:center;gap:8px;min-height:24px;font-size:13px;font-weight:650;color:#586d65}
.tae-filter-status.is-loading::before{content:"";width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:taeDiscoverySpin .7s linear infinite}
@keyframes taeDiscoverySpin{to{transform:rotate(360deg)}}
@media(max-width:900px){.tae-discovery-search{grid-template-columns:1fr 1fr}.tae-discovery-search .tae-filter-search{grid-column:1/-1}.tae-discovery-search .tae-filter-order{grid-column:auto}}
@media(max-width:620px){.tae-discovery-search{grid-template-columns:1fr}.tae-discovery-search .tae-filter-search{grid-column:auto}.tae-discovery-search .tae-filter-actions{min-height:24px}}


/* =========================================================
   TAE 2.9.0 — refinamento incremental da Home
   ========================================================= */
body.tae-home-page .tae-home-hero{
  padding-top:82px;
  padding-bottom:72px;
}
body.tae-home-page .tae-home-hero__content{
  max-width:1180px;
}
body.tae-home-page .tae-home-hero h1{
  max-width:820px;
  font-size:clamp(42px,6vw,70px);
  line-height:1.02;
}
body.tae-home-page .tae-home-hero__content>p{
  max-width:760px;
  margin-bottom:30px;
}
body.tae-home-page .tae-home-section{
  margin-top:68px;
}
body.tae-home-page .tae-home-section .tae-section-heading{
  gap:24px;
  margin-bottom:28px;
}
body.tae-home-page .tae-home-section .tae-section-heading>a{
  white-space:nowrap;
}

/* Oito produtos formam duas linhas completas de quatro colunas. */
body.tae-home-page .tae-home-products ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  margin:0!important;
}
body.tae-home-page .tae-home-products ul.products::before,
body.tae-home-page .tae-home-products ul.products::after{
  display:none!important;
}
body.tae-home-page .tae-home-products ul.products li.product{
  float:none!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
}

@media(max-width:1024px){
  body.tae-home-page .tae-home-products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  body.tae-home-page .tae-home-hero{
    padding-top:58px;
    padding-bottom:54px;
  }
  body.tae-home-page .tae-home-hero h1{
    font-size:clamp(38px,12vw,48px);
  }
  body.tae-home-page .tae-home-section{
    margin-top:54px;
  }
  body.tae-home-page .tae-home-products ul.products{
    grid-template-columns:1fr!important;
  }
}
