/* ENE v1.0.147 — refinamentos finais de painéis e home pública. */

/* 1) Painéis: item ativo com texto e ícone SEMPRE brancos. */
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link).active,
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link)[aria-current="page"],
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link).active > span,
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link)[aria-current="page"] > span,
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link).active > svg.icon,
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link)[aria-current="page"] > svg.icon,
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link).active svg *,
body:is(.ene-admin-body,.ene-portal-body) :is(.ene-admin-nav-link,.ene-portal-nav-link)[aria-current="page"] svg *{
  color:#fff !important;
  stroke:#fff !important;
  -webkit-text-fill-color:#fff !important;
  fill:none !important;
  opacity:1 !important;
}

/* 2) Depoimentos compactos; mesma tipografia da interface, sem novos recursos externos. */
body:not(.ene-admin-body):not(.ene-portal-body) .ene-home-summary-v1061 .container,
body:not(.ene-admin-body):not(.ene-portal-body) .ene-home-final-banner-v1061 .container{
  width:min(calc(100% - 40px), 1380px) !important;
  max-width:none !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-carousel-v1061{
  grid-template-columns:40px minmax(0,1fr) 40px;
  align-items:center;
  gap:14px;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061{
  max-width:880px !important;
  grid-template-columns:minmax(160px,205px) minmax(0,1fr) !important;
  gap:30px !important;
  align-items:center !important;
  padding:22px !important;
  border:1px solid #e3e9f3;
  border-radius:24px;
  background:#f8faff;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-photo-v1061{
  width:100%;
  max-width:205px;
  height:235px !important;
  margin:0 auto;
  border-radius:16px !important;
  overflow:hidden;
  box-shadow:none;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-photo-v1061 img{
  width:100%;height:100%;object-fit:cover;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061 > div:last-child{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  min-width:0;
  max-width:610px;
  font-family:"OpenAI Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061 blockquote{
  order:1;
  margin:0 0 18px !important;
  font-family:inherit !important;
  font-weight:500 !important;
  font-size:clamp(19px,2vw,25px) !important;
  line-height:1.4 !important;
  letter-spacing:-.012em !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061 strong{
  order:2;
  font-family:inherit !important;
  font-size:.98rem !important;
  font-weight:750 !important;
  color:#10224a !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061 span{
  order:3;
  margin-top:2px !important;
  font-family:inherit !important;
  font-size:.83rem !important;
  color:#5f6f89 !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-carousel-control-v1061{
  width:38px !important;
  height:38px !important;
}

/* Título de entrada com tipografia própria, sem carregar fontes de terceiros. */
body:not(.ene-admin-body):not(.ene-portal-body) .ene-home-hero-inner-v1061 h1{
  font-family:"Aptos Display","Segoe UI Variable Display","Trebuchet MS",Arial,sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.047em !important;
  line-height:1.06 !important;
}
/* SVG da marca WhatsApp é preenchido; ícones de interface continuam lineares. */
svg :is(use[href="#icon-whatsapp"],use[xlink\:href="#icon-whatsapp"]){fill:currentColor !important;stroke:none !important;}

/* 3) Banner “Próximo passo” — largura ampla, com imagem e overlay azul escuro. */
body:not(.ene-admin-body):not(.ene-portal-body) .ene-home-final-banner-v1061{
  padding-top:32px !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-v1061{
  min-height:420px;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr) !important;
  gap:40px !important;
  padding:54px 56px !important;
  border-radius:30px !important;
  background-size:cover !important;
  background-position:center !important;
  overflow:hidden;
  position:relative;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-v1061.has-blue-fallback-v1089{
  background-image:linear-gradient(90deg, rgba(7,20,63,.92), rgba(15,46,123,.76)), url('/assets/img/banner-next-step-default.svg') !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-v1061 > *{
  position:relative;
  z-index:1;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-v1061 h2{
  max-width:700px !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-v1061 p{
  display:none !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-art-v1061{
  display:flex !important;
  align-items:center;
  justify-content:flex-end;
  gap:16px;
  flex-wrap:wrap;
}
body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-art-v1061 a{
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:none !important;
}

/* 4) Rodapé — redes sociais apenas com ícones pequenos. */
body:not(.ene-admin-body):not(.ene-portal-body) .footer-social{
  grid-template-columns:1fr auto !important;
  align-items:center;
}
body:not(.ene-admin-body):not(.ene-portal-body) .social-links-grid{
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:10px !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .social-link-card{
  width:46px !important;
  min-width:46px !important;
  height:46px !important;
  min-height:46px !important;
  padding:0 !important;
  border-radius:14px !important;
  justify-content:center !important;
  gap:0 !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.06) !important;
  box-shadow:none !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .social-link-card:hover{
  transform:translateY(-1px) !important;
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.18) !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .social-link-card .social-text,
body:not(.ene-admin-body):not(.ene-portal-body) .social-link-card strong,
body:not(.ene-admin-body):not(.ene-portal-body) .social-link-card small{
  display:none !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .social-badge{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  border-radius:0 !important;
  background:transparent !important;
  flex:0 0 22px !important;
}
body:not(.ene-admin-body):not(.ene-portal-body) .social-badge .icon,
body:not(.ene-admin-body):not(.ene-portal-body) .social-badge svg{
  width:18px !important;
  height:18px !important;
  color:#fff !important;
  stroke:currentColor !important;
}

@media (max-width:980px){
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061{
    grid-template-columns:minmax(140px,180px) minmax(0,1fr) !important;
    gap:20px !important;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-photo-v1061{
    max-width:180px;
    height:220px !important;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-v1061{
    grid-template-columns:1fr !important;
    min-height:auto;
    padding:40px 28px !important;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-final-banner-art-v1061{
    justify-content:flex-start;
  }
}

@media (max-width:680px){
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-home-summary-v1061 .container,
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-home-final-banner-v1061 .container{
    width:min(calc(100% - 24px), 1380px) !important;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-carousel-v1061{
    grid-template-columns:36px minmax(0,1fr) 36px;
    gap:10px;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061{
    grid-template-columns:1fr !important;
    text-align:left !important;
    padding:18px !important;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-photo-v1061{
    max-width:170px;
    height:190px !important;
    margin:0;
    border-radius:16px !important;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .ene-testimonial-v1061 blockquote{
    font-size:clamp(18px,5.5vw,23px) !important;
  }
  body:not(.ene-admin-body):not(.ene-portal-body) .footer-social{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
}
