.elementor-558 .elementor-element.elementor-element-a9103ce{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-558 .elementor-element.elementor-element-e78904b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-e78904b *//* EJ.MARCOM — HOME AUTOCONTIDA
   Header e Footer permanecem fora desta página.
   O desktop é estilizado inline para máxima compatibilidade com Elementor.
*/
body .elementor-widget-html:has(.ej-home-self),
body .elementor-widget-html:has(.ej-home-self)>.elementor-widget-container{margin:0!important;padding:0!important;width:100%!important}
body .e-con:has(.elementor-widget-html .ej-home-self){--padding-top:0!important;--padding-right:0!important;--padding-bottom:0!important;--padding-left:0!important;margin:0!important;padding:0!important;max-width:none!important;width:100%!important}
.ej-home-self *{box-sizing:border-box}
.ej-home-self img{display:block;max-width:100%}
.ej-home-self a{text-decoration:none}
.ej-home-self details summary::-webkit-details-marker{display:none}
.ej-home-self .ej-btn:hover{transform:translateY(-2px)}
.ej-home-self .ej-btn svg{display:block!important;width:20px!important;height:20px!important;min-width:20px!important;flex:0 0 20px!important;shape-rendering:geometricPrecision}
.ej-home-self .ej-btn span{display:inline-block}

.ej-home-self .ej-solution-card:hover .ej-solution-img{transform:scale(1.03)}
.ej-home-self .ej-post:hover .ej-post-img{transform:scale(1.03)}
.ej-home-self .ej-faq[open]{background:#fff!important;box-shadow:0 14px 34px rgba(24,29,76,.08)!important}
.ej-home-self .ej-faq[open] .ej-faq-toggle{transform:rotate(180deg)}
@media(max-width:1080px){
  .ej-home-self .ej-grid-hero,.ej-home-self .ej-grid-about,.ej-home-self .ej-grid-why,.ej-home-self .ej-grid-contact{grid-template-columns:1fr!important}
  .ej-home-self .ej-hero-visual{justify-self:start!important;width:min(100%,620px)!important;max-width:620px!important;min-height:560px!important}
  .ej-home-self .ej-solutions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ej-home-self .ej-testimonials{grid-template-columns:1fr!important}
  .ej-home-self .ej-contact-card{justify-self:start!important}
}
@media(max-width:900px){
  .ej-home-self .ej-faq-grid{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .ej-home-self .ej-container{width:100%!important;max-width:100%!important;padding-left:32px!important;padding-right:32px!important}
  .ej-home-self .ej-section{padding:76px 0!important}
  .ej-home-self .ej-h1{font-size:clamp(2.65rem,11.5vw,4rem)!important;line-height:1.04!important}
  .ej-home-self .ej-h2{font-size:clamp(2.05rem,10vw,3.05rem)!important}
  .ej-home-self .ej-hero-actions{display:grid!important;grid-template-columns:1fr!important}
  .ej-home-self .ej-btn{width:100%!important}
  .ej-home-self .ej-trust{display:grid!important;grid-template-columns:1fr!important}
  .ej-home-self .ej-hero-visual{min-height:455px!important}
  .ej-home-self .ej-hero-photo{width:88%!important;height:405px!important;border-radius:30px 30px 30px 76px!important}
  .ej-home-self .ej-hero-panel{left:0!important;bottom:6px!important;width:72%!important;padding:19px!important}
  .ej-home-self .ej-hero-bubble{right:0!important;bottom:24px!important;width:92px!important;height:92px!important;font-size:.8rem!important}
  .ej-home-self .ej-about-visual{grid-template-columns:1fr 1fr!important;grid-template-rows:230px 230px!important;gap:10px!important;min-height:470px!important}
  .ej-home-self .ej-about-orbit{left:50%!important;width:142px!important;height:142px!important}
  .ej-home-self .ej-process-grid{grid-template-columns:1fr!important;gap:42px!important}
  .ej-home-self .ej-flow{display:none!important}
  .ej-home-self .ej-solutions{grid-template-columns:1fr!important}
  .ej-home-self .ej-solution-card{min-height:420px!important}
  .ej-home-self .ej-why-model-message-b,.ej-home-self .ej-why-model-photo-b{margin-top:-16px!important}
  .ej-home-self .ej-testimonial{padding:26px 22px!important}
  .ej-home-self .ej-contact-details{grid-template-columns:1fr!important}
  .ej-home-self .ej-contact-form{grid-template-columns:1fr!important}
  .ej-home-self .ej-contact-message{grid-column:auto!important}
  .ej-home-self .ej-submit{width:100%!important}
  .ej-home-self .ej-posts{grid-template-columns:1fr!important}
}
@media(max-width:390px){
  .ej-home-self .ej-container{padding-left:24px!important;padding-right:24px!important}
}

/* HOME V9 — cards de serviços no mesmo padrão da página Soluções */
.ej-home-self .ej-home-service-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.ej-home-self .ej-solhub-card{
  position:relative;
  isolation:isolate;
  min-height:440px;
  overflow:hidden;
  border-radius:30px;
  background:#F5F7FB;
  box-shadow:0 16px 44px rgba(20,24,59,.08);
}
.ej-home-self .ej-solhub-card-img{
  position:absolute;
  inset:0;
  z-index:-3;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.9);
  transition:transform .35s ease;
}
.ej-home-self .ej-solhub-card:hover .ej-solhub-card-img{
  transform:scale(1.03);
}
.ej-home-self .ej-solhub-card-shade{
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(to bottom,rgba(16,20,47,.01) 12%,rgba(16,20,47,.28) 100%);
}
.ej-home-self .ej-solhub-card-band{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:41%;
  z-index:-1;
  border-radius:0;
  background:linear-gradient(135deg,rgba(80,180,208,.98) 0%,rgba(69,71,165,.98) 100%);
}
.ej-home-self .ej-solhub-card-content{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:20px 24px;
  color:#fff;
}
.ej-home-self .ej-solhub-card h3{
  margin:0 0 7px;
  color:#fff;
  font-family:Poppins,Inter,Arial,sans-serif;
  font-size:1.3rem;
  line-height:1.18;
}
.ej-home-self .ej-solhub-card p{
  margin:0 0 12px;
  color:#F7FBFF;
  font-size:.86rem;
  line-height:1.46;
}
.ej-home-self .ej-solhub-card a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#fff;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
  transition:transform .2s ease,opacity .2s ease;
}
.ej-home-self .ej-solhub-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  background:transparent;
  font-size:1rem;
  line-height:1;
  transition:transform .2s ease;
}
.ej-home-self .ej-solhub-card a:hover{
  transform:translateY(-1px);
}
.ej-home-self .ej-solhub-card a:hover .ej-solhub-arrow{
  transform:translateX(3px);
}
@media(max-width:1080px){
  .ej-home-self .ej-home-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .ej-home-self .ej-home-service-grid{
    grid-template-columns:1fr!important;
  }
  .ej-home-self .ej-solhub-card{
    min-height:420px;
  }
}


/* HOME V9 — reforço de grid para Elementor */
.ej-home-self .ej-solutions.ej-home-service-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}
.ej-home-self .ej-solutions.ej-home-service-grid > .ej-solhub-card{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
@media(max-width:1080px){
  .ej-home-self .ej-solutions.ej-home-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .ej-home-self .ej-solutions.ej-home-service-grid{
    grid-template-columns:1fr!important;
  }
}

/* WhatsApp: mesmo padrão visual do botão do Header */
.ej-home-self .ejh-v3-wa-icon{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:0!important;
}
.ej-home-self .ejh-v3-wa-icon svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  fill:currentColor!important;
  stroke:none!important;
}

@keyframes ejSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  .ej-home-self *, .ej-home-self *::before, .ej-home-self *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* =========================================================
   HOME V10 — RESPONSIVIDADE FINAL
   Tablet + mobile + margens laterais padronizadas
   ========================================================= */

/* Evita cortes horizontais causados por 100vw dentro do Elementor */
.ej-home-self{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  overflow-x:clip!important;
}

@supports not (overflow:clip){
  .ej-home-self{overflow-x:hidden!important}
}

/* Todos os conteúdos internos respeitam o container */
.ej-home-self .ej-container,
.ej-home-self .ej-container *{
  min-width:0;
}

.ej-home-self .ej-container{
  width:min(1240px,calc(100% - 48px))!important;
  max-width:1240px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Títulos nunca podem ultrapassar a largura disponível */
.ej-home-self .ej-h1,
.ej-home-self .ej-h2{
  max-width:100%!important;
  overflow-wrap:break-word;
  word-break:normal;
}

.ej-home-self .ej-h1 span{
  max-width:100%!important;
  white-space:normal!important;
}

/* Imagens, SVGs e campos não extrapolam a viewport */
.ej-home-self img,
.ej-home-self svg,
.ej-home-self input,
.ej-home-self textarea,
.ej-home-self select,
.ej-home-self button{
  max-width:100%;
}

.ej-home-self input,
.ej-home-self textarea,
.ej-home-self select{
  min-width:0;
}

/* ---------------- TABLET GRANDE ---------------- */
@media (max-width:1080px){

  /* Margens laterais padronizadas no tablet */
  .ej-home-self .ej-container{
    width:100%!important;
    max-width:100%!important;
    padding-left:40px!important;
    padding-right:40px!important;
  }

  .ej-home-self .ej-section{
    padding-top:88px!important;
    padding-bottom:88px!important;
  }

  /* Hero */
  .ej-home-self .ej-grid-hero,
  .ej-home-self .ej-grid-about,
  .ej-home-self .ej-grid-why,
  .ej-home-self .ej-grid-contact{
    grid-template-columns:minmax(0,1fr)!important;
    gap:48px!important;
  }

  .ej-home-self .ej-h1{
    font-size:clamp(3.4rem,6.2vw,4.25rem)!important;
    line-height:1.035!important;
    letter-spacing:-.045em!important;
  }

  .ej-home-self .ej-h2{
    font-size:clamp(2.35rem,4.8vw,3.15rem)!important;
    line-height:1.06!important;
  }

  .ej-home-self .ej-hero-visual{
    width:min(100%,620px)!important;
    max-width:620px!important;
    min-height:555px!important;
    justify-self:start!important;
  }

  /* Sobre */
  .ej-home-self .ej-about-visual{
    width:min(100%,720px)!important;
  }

  /* Processo: evita estouro dos 110px de gap e das setas */
  .ej-home-self .ej-process-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:34px!important;
    margin-top:54px!important;
  }

  .ej-home-self .ej-flow{
    display:none!important;
  }

  /* Cabeçalho das soluções passa a ser vertical no tablet */
  .ej-home-self .ej-solutions-head{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:18px!important;
  }

  .ej-home-self .ej-solutions-head > p{
    max-width:760px!important;
  }

  /* Por que nos escolher: visual alinhado à esquerda ao virar 1 coluna */
  .ej-home-self .ej-grid-why > div:last-child{
    width:min(100%,570px)!important;
    margin-left:0!important;
    justify-self:start!important;
  }

  /* Contato */
  .ej-home-self .ej-contact-card{
    width:min(100%,570px)!important;
    max-width:570px!important;
    justify-self:start!important;
  }

  /* Blog mais confortável no tablet */
  .ej-home-self .ej-posts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* ---------------- TABLET RETRATO ---------------- */
@media (max-width:820px){

  .ej-home-self .ej-container{
    padding-left:32px!important;
    padding-right:32px!important;
  }

  .ej-home-self .ej-h1{
    font-size:clamp(3rem,7.2vw,3.65rem)!important;
  }

  .ej-home-self .ej-process-grid{
    grid-template-columns:1fr!important;
    gap:42px!important;
  }

  .ej-home-self .ej-process-grid li{
    width:100%!important;
    max-width:520px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .ej-home-self .ej-process-grid li p{
    max-width:440px!important;
  }

  .ej-home-self .ej-testimonials{
    grid-template-columns:1fr!important;
  }

  .ej-home-self .ej-faq-grid{
    grid-template-columns:1fr!important;
  }
}

/* ---------------- MOBILE ---------------- */
@media (max-width:760px){

  /* Margem lateral padrão da Home no celular */
  .ej-home-self .ej-container{
    width:100%!important;
    max-width:100%!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }

  .ej-home-self .ej-section{
    padding-top:72px!important;
    padding-bottom:72px!important;
  }

  /* Hero: tamanho seguro para 320–760px */
  .ej-home-self .ej-h1{
    font-size:clamp(2.35rem,10.3vw,3.15rem)!important;
    line-height:1.06!important;
    letter-spacing:-.04em!important;
  }

  .ej-home-self .ej-h2{
    font-size:clamp(2rem,8.7vw,2.7rem)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }

  .ej-home-self .ej-hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .ej-home-self .ej-btn{
    width:100%!important;
    max-width:100%!important;
    min-height:52px!important;
    padding-left:18px!important;
    padding-right:18px!important;
    white-space:normal!important;
    text-align:center!important;
  }

  .ej-home-self .ej-trust{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .ej-home-self .ej-trust li{
    max-width:none!important;
  }

  .ej-home-self .ej-hero-visual{
    width:100%!important;
    max-width:100%!important;
    min-height:455px!important;
  }

  .ej-home-self .ej-hero-photo{
    width:90%!important;
    height:405px!important;
    right:0!important;
    border-radius:30px 30px 30px 72px!important;
  }

  .ej-home-self .ej-hero-panel{
    left:0!important;
    bottom:4px!important;
    width:min(76%,330px)!important;
    max-width:330px!important;
    padding:18px!important;
    border-radius:22px!important;
  }

  .ej-home-self .ej-hero-panel strong{
    font-size:1.2rem!important;
  }

  .ej-home-self .ej-hero-bubble{
    right:0!important;
    bottom:20px!important;
    width:88px!important;
    height:88px!important;
    font-size:.73rem!important;
  }

  /* Sobre */
  .ej-home-self .ej-about-visual{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:215px 215px!important;
    gap:10px!important;
    min-height:440px!important;
  }

  .ej-home-self .ej-about-orbit{
    left:50%!important;
    width:136px!important;
    height:136px!important;
  }

  .ej-home-self .ej-about-orbit > div{
    width:68px!important;
    height:68px!important;
    border-radius:20px!important;
    font-size:1.15rem!important;
  }

  .ej-home-self .ej-about-highlight{
    border-radius:22px!important;
    align-items:flex-start!important;
    padding:16px!important;
  }

  .ej-home-self .ej-about-highlight > span{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
  }

  .ej-home-self .ej-about-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:stretch!important;
    gap:18px!important;
  }

  .ej-home-self .ej-about-actions > div{
    justify-content:center!important;
  }

  /* Cards das soluções */
  .ej-home-self .ej-solutions.ej-home-service-grid{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }

  .ej-home-self .ej-solhub-card{
    min-height:440px!important;
    border-radius:26px!important;
  }

  .ej-home-self .ej-solhub-card-band{
    height:52%!important;
  }

  .ej-home-self .ej-solhub-card-content{
    padding:19px 20px!important;
  }

  .ej-home-self .ej-solhub-card h3{
    font-size:1.18rem!important;
  }

  .ej-home-self .ej-solhub-card p{
    font-size:.84rem!important;
    line-height:1.5!important;
  }

  /* Por que nos escolher */
  .ej-home-self .ej-grid-why{
    gap:44px!important;
  }

  .ej-home-self .ej-grid-why > div:last-child{
    width:100%!important;
    max-width:520px!important;
  }

  .ej-home-self .ej-why-model-message-b,
  .ej-home-self .ej-why-model-photo-b{
    margin-top:-10px!important;
  }

  /* Depoimentos */
  .ej-home-self .ej-testimonial{
    padding:24px 20px!important;
  }

  /* FAQ */
  .ej-home-self .ej-faq summary{
    min-height:64px!important;
    padding:12px 14px 12px 16px!important;
    font-size:.92rem!important;
  }

  .ej-home-self .ej-faq > div{
    padding-left:16px!important;
    padding-right:18px!important;
    padding-bottom:20px!important;
  }

  /* Contato */
  .ej-home-self .ej-grid-contact{
    padding-top:68px!important;
    padding-bottom:68px!important;
  }

  .ej-home-self .ej-contact-details{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .ej-home-self .ej-contact-card{
    width:100%!important;
    max-width:100%!important;
    padding:26px 20px 24px!important;
    border-radius:24px!important;
  }

  .ej-home-self .ej-contact-form{
    grid-template-columns:1fr!important;
  }

  .ej-home-self .ej-contact-message{
    grid-column:auto!important;
  }

  .ej-home-self .ej-submit{
    width:100%!important;
    min-width:0!important;
  }

  /* Blog */
  .ej-home-self .ej-posts{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }

  .ej-home-self .ej-post > div:first-child{
    height:225px!important;
  }

  .ej-home-self .ej-post-footer{
    flex-wrap:wrap!important;
    align-items:flex-start!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
}

/* ---------------- MOBILE PEQUENO ---------------- */
@media (max-width:480px){

  .ej-home-self .ej-container{
    padding-left:22px!important;
    padding-right:22px!important;
  }

  .ej-home-self .ej-h1{
    font-size:clamp(2.25rem,10.7vw,2.75rem)!important;
  }

  .ej-home-self .ej-h2{
    font-size:clamp(1.9rem,9vw,2.35rem)!important;
  }

  .ej-home-self .ej-hero-visual{
    min-height:420px!important;
  }

  .ej-home-self .ej-hero-photo{
    width:94%!important;
    height:365px!important;
  }

  .ej-home-self .ej-hero-panel{
    width:82%!important;
    padding:16px!important;
  }

  .ej-home-self .ej-hero-bubble{
    width:78px!important;
    height:78px!important;
    font-size:.66rem!important;
  }

  .ej-home-self .ej-about-visual{
    grid-template-rows:190px 190px!important;
    min-height:390px!important;
  }

  .ej-home-self .ej-about-orbit{
    width:120px!important;
    height:120px!important;
  }

  .ej-home-self .ej-about-orbit svg{
    display:none!important;
  }

  .ej-home-self .ej-about-orbit > div{
    width:64px!important;
    height:64px!important;
    font-size:1.05rem!important;
  }

  .ej-home-self .ej-solhub-card{
    min-height:430px!important;
  }

  .ej-home-self .ej-solhub-card-band{
    height:55%!important;
  }

  .ej-home-self .ej-solhub-card-content{
    padding:18px!important;
  }

  .ej-home-self .ej-grid-why > div:last-child > div{
    gap:6px!important;
  }

  .ej-home-self .ej-grid-why > div:last-child span{
    overflow-wrap:break-word;
  }
}

@media (max-width:360px){

  .ej-home-self .ej-container{
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .ej-home-self .ej-h1{
    font-size:2.2rem!important;
  }

  .ej-home-self .ej-h2{
    font-size:1.85rem!important;
  }

  .ej-home-self .ej-hero-panel{
    width:86%!important;
  }

  .ej-home-self .ej-about-highlight{
    gap:12px!important;
  }
}

/* =========================================================
   HOME V12 — espaçamento padrão do CTA
   Seção "Por que nos escolher"
   ========================================================= */
.ej-home-self .ej-why-cta{
  margin-top:36px!important;
}

@media(max-width:760px){
  .ej-home-self .ej-why-cta{
    margin-top:32px!important;
  }
}

/* HOME V13 — espaçamento interno do CTA "Conversar sobre meu cenário" */
.ej-home-self .ej-why-cta{
  gap:10px!important;
}

.ej-home-self .ej-why-cta .ejh-v3-wa-icon{
  flex:0 0 20px!important;
  margin:0!important;
}

.ej-home-self .ej-why-cta > span:last-child{
  margin:0!important;
}

/* =========================================================
   HOME V14 — compatibilidade DS Editor
   Seção "Como trabalhamos"
   Conteúdo editorial em elementos HTML simples
   ========================================================= */
.ej-home-self .ej-process-title{
  margin:0 0 8px!important;
  color:#FFFFFF!important;
  font-family:Poppins,Inter,Arial,sans-serif!important;
  font-size:1.35rem!important;
  line-height:1.25!important;
  font-weight:700!important;
}

.ej-home-self .ej-process-copy{
  max-width:290px!important;
  margin:0 auto!important;
  color:#E4E8F3!important;
  font-size:.92rem!important;
  line-height:1.65!important;
}

@media(max-width:820px){
  .ej-home-self .ej-process-copy{
    max-width:440px!important;
  }
}

/* =========================================================
   HOME V15 — ajuste da Hero no mobile
   Mais respiro para a foto e melhor enquadramento da Elenilde
   ========================================================= */
@media(max-width:760px){
  .ej-home-self .ej-hero-visual{
    min-height:490px!important;
  }

  .ej-home-self .ej-hero-photo{
    width:92%!important;
    height:430px!important;
    top:10px!important;
    right:0!important;
    object-position:center 20%!important;
  }

  .ej-home-self .ej-hero-panel{
    left:0!important;
    bottom:-10px!important;
    width:min(76%,330px)!important;
    max-width:330px!important;
    padding:18px!important;
  }

  .ej-home-self .ej-hero-bubble{
    right:0!important;
    bottom:12px!important;
  }
}

@media(max-width:480px){
  .ej-home-self .ej-hero-visual{
    min-height:455px!important;
  }

  .ej-home-self .ej-hero-photo{
    width:94%!important;
    height:395px!important;
    top:8px!important;
    object-position:center 18%!important;
  }

  .ej-home-self .ej-hero-panel{
    bottom:-8px!important;
    width:82%!important;
    padding:16px!important;
  }

  .ej-home-self .ej-hero-bubble{
    bottom:10px!important;
  }
}

/* =========================================================
   HOME V16 — ajustes mobile
   Atendimento alinhado + cards mais compactos + sem travessões
   ========================================================= */

@media(max-width:760px){

  /* Seção Sobre: atendimento alinhado à esquerda, no mesmo eixo do CTA */
  .ej-home-self .ej-about-actions{
    justify-items:stretch!important;
  }

  .ej-home-self .ej-about-actions > div{
    width:100%!important;
    justify-content:flex-start!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
  }

  /* Cards de serviços: o conteúdo começa logo após a imagem */
  .ej-home-self .ej-solhub-card{
    min-height:420px!important;
  }

  .ej-home-self .ej-solhub-card-band{
    height:50%!important;
  }

  .ej-home-self .ej-solhub-card-content{
    top:50%!important;
    bottom:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    padding:20px!important;
  }

  .ej-home-self .ej-solhub-card h3{
    margin-top:0!important;
    margin-bottom:7px!important;
  }
}

@media(max-width:480px){

  .ej-home-self .ej-solhub-card{
    min-height:410px!important;
  }

  .ej-home-self .ej-solhub-card-band{
    height:52%!important;
  }

  .ej-home-self .ej-solhub-card-content{
    top:48%!important;
    padding:18px!important;
  }
}

/* =========================================================
   HOME V17 — enquadramento das imagens dos cards no mobile
   Evita o efeito de zoom/corte excessivo do conteúdo principal
   ========================================================= */

@media(max-width:760px){

  .ej-home-self .ej-solhub-card{
    min-height:430px!important;
    background:#EEF2F6!important;
  }

  /* No mobile a imagem ocupa somente a área visual superior do card.
     Assim o object-fit calcula o enquadramento pela área real da foto,
     e não pela altura total do card. */
  .ej-home-self .ej-solhub-card-img{
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    width:100%!important;
    height:52%!important;
    object-fit:cover!important;
    transform:none!important;
  }

  .ej-home-self .ej-solhub-card:hover .ej-solhub-card-img{
    transform:none!important;
  }

  .ej-home-self .ej-solhub-card-shade{
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    height:52%!important;
    background:linear-gradient(
      to bottom,
      rgba(16,20,47,0) 55%,
      rgba(16,20,47,.16) 100%
    )!important;
  }

  .ej-home-self .ej-solhub-card-band{
    height:48%!important;
  }

  .ej-home-self .ej-solhub-card-content{
    top:52%!important;
    bottom:0!important;
    padding:18px 20px!important;
  }
}

@media(max-width:480px){

  .ej-home-self .ej-solhub-card{
    min-height:420px!important;
  }

  .ej-home-self .ej-solhub-card-img,
  .ej-home-self .ej-solhub-card-shade{
    height:54%!important;
  }

  .ej-home-self .ej-solhub-card-band{
    height:46%!important;
  }

  .ej-home-self .ej-solhub-card-content{
    top:54%!important;
    padding:17px 18px!important;
  }
}

/* =========================================================
   HOME V18 — cards de serviços mais compactos no mobile
   Remove o espaço vazio abaixo do CTA sem alterar o desktop
   ========================================================= */

@media(max-width:760px){

  .ej-home-self .ej-solhub-card{
    min-height:0!important;
    padding-top:225px!important;
    background:#EEF2F6!important;
  }

  .ej-home-self .ej-solhub-card-img,
  .ej-home-self .ej-solhub-card-shade{
    height:225px!important;
  }

  .ej-home-self .ej-solhub-card-band{
    display:none!important;
  }

  .ej-home-self .ej-solhub-card-content{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;

    display:block!important;

    min-height:0!important;
    padding:18px 20px 19px!important;

    background:linear-gradient(
      135deg,
      rgba(80,180,208,.98) 0%,
      rgba(69,71,165,.98) 100%
    )!important;
  }

  .ej-home-self .ej-solhub-card h3{
    margin:0 0 7px!important;
  }

  .ej-home-self .ej-solhub-card p{
    margin:0 0 12px!important;
  }

  .ej-home-self .ej-solhub-card a{
    margin:0!important;
  }
}

@media(max-width:480px){

  .ej-home-self .ej-solhub-card{
    padding-top:215px!important;
  }

  .ej-home-self .ej-solhub-card-img,
  .ej-home-self .ej-solhub-card-shade{
    height:215px!important;
  }

  .ej-home-self .ej-solhub-card-content{
    padding:17px 18px 18px!important;
  }
}

/* HOME V19 — heading semântico dos depoimentos */
.ej-home-self .ej-testimonial-title{
  margin:0;
  display:block;
  color:inherit;
  font-family:inherit;
  font-size:1rem;
  line-height:1.65;
  font-weight:700;
}

/* =========================================================
   HOME V21 — enquadramento dos cards sem zoom excessivo
   A imagem passa a ter uma área própria em proporção 3:2.
   Isso evita que o object-fit: cover use a altura total do card
   e corte partes importantes das imagens.
   ========================================================= */

.ej-home-self .ej-solhub-card{
  min-height:0!important;
  padding-top:66.6667%!important;
  background:#EEF2F6!important;
}

.ej-home-self .ej-solhub-card-img,
.ej-home-self .ej-solhub-card-shade{
  top:0!important;
  right:0!important;
  bottom:auto!important;
  left:0!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:3 / 2!important;
}

.ej-home-self .ej-solhub-card-img{
  object-fit:cover!important;
  transform:none!important;
  filter:saturate(.94)!important;
}

.ej-home-self .ej-solhub-card:hover .ej-solhub-card-img{
  transform:none!important;
}

.ej-home-self .ej-solhub-card-shade{
  background:linear-gradient(
    to bottom,
    rgba(16,20,47,0) 62%,
    rgba(16,20,47,.12) 100%
  )!important;
}

.ej-home-self .ej-solhub-card-band{
  display:none!important;
}

.ej-home-self .ej-solhub-card-content{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  display:block!important;
  min-height:0!important;
  padding:20px 24px 22px!important;
  background:linear-gradient(
    135deg,
    rgba(80,180,208,.98) 0%,
    rgba(69,71,165,.98) 100%
  )!important;
}

@media(max-width:1080px){
  .ej-home-self .ej-solhub-card{
    padding-top:66.6667%!important;
  }

  .ej-home-self .ej-solhub-card-img,
  .ej-home-self .ej-solhub-card-shade{
    height:auto!important;
    aspect-ratio:3 / 2!important;
  }
}

@media(max-width:760px){
  .ej-home-self .ej-solhub-card{
    padding-top:66.6667%!important;
    border-radius:26px!important;
  }

  .ej-home-self .ej-solhub-card-img,
  .ej-home-self .ej-solhub-card-shade{
    height:auto!important;
    aspect-ratio:3 / 2!important;
  }

  .ej-home-self .ej-solhub-card-content{
    padding:18px 20px 19px!important;
  }
}

@media(max-width:480px){
  .ej-home-self .ej-solhub-card{
    padding-top:66.6667%!important;
  }

  .ej-home-self .ej-solhub-card-img,
  .ej-home-self .ej-solhub-card-shade{
    height:auto!important;
    aspect-ratio:3 / 2!important;
  }

  .ej-home-self .ej-solhub-card-content{
    padding:17px 18px 18px!important;
  }
}/* End custom CSS */