/* Refinamento global dos banners principais */
.hero,
.service-hero,
.blog-hero,
.post-hero{
  isolation:isolate;
  background-image:linear-gradient(90deg,rgba(35,44,116,.28),rgba(47,58,143,.06) 62%,transparent 82%),url('/ativos/imagens/hero-sem-microfone.webp')!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
  background-color:#17266f!important;
}
html,body{max-width:100%;overflow-x:hidden}
body .service-page .service-hero{background-image:linear-gradient(90deg,rgba(35,44,116,.28),rgba(47,58,143,.06) 62%,transparent 82%),url('/ativos/imagens/hero-sem-microfone.webp')!important;background-size:cover!important;background-position:center center!important;background-color:#17266f!important}

/* Degradê final moderno, integrando o banner à próxima seção. */
.hero::after,
.service-hero::after,
.blog-hero::after,
.post-hero::after{
  content:''!important;
  display:block!important;
  position:absolute!important;
  z-index:1!important;
  pointer-events:none!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:150px!important;
  background:linear-gradient(0deg,#fffdf9 0%,rgba(255,253,249,.72) 10%,rgba(47,58,143,.34) 46%,rgba(47,58,143,.08) 70%,transparent 100%)!important;
}
.hero-content,
.service-hero-grid,
.blog-hero .hero-content,
.post-hero .hero-content{position:relative;z-index:2}
.hero .hero-content{max-width:820px!important}
.hero .hero-content>p{max-width:720px!important}
.service-page .service-hero-text{width:min(62%,820px)!important}

/* Remove selos superiores somente dos banners. */
.hero .eyebrow,
.service-hero .eyebrow,
.blog-hero .eyebrow,
.post-hero .eyebrow{display:none!important}
body .service-page .service-hero .eyebrow{display:none!important}

/* Mantém somente a ação principal em cada banner. */
.hero-actions .btn-secondary,
.service-actions .btn-secondary,
.post-hero .btn-secondary{display:none!important}
.hero-actions,
.service-actions{justify-content:center!important;width:100%!important}

/* CTA WhatsApp premium e consistente. */
.hero-actions .btn-primary,
.service-actions .btn-primary,
header .nav>a.btn-primary,
.btn.btn-primary{
  background:linear-gradient(135deg,#25d366 0%,#16aa50 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:0 16px 34px rgba(18,166,75,.30)!important;
}
.hero-actions .btn-primary:hover,
.service-actions .btn-primary:hover,
header .nav>a.btn-primary:hover,
.btn.btn-primary:hover{
  background:linear-gradient(135deg,#2bdd70 0%,#128f43 100%)!important;
  box-shadow:0 20px 42px rgba(18,166,75,.40)!important;
  transform:translateY(-3px)!important;
}

@media(max-width:980px){
  .hero,
  .service-hero,
  .blog-hero,
  .post-hero{
    background-image:linear-gradient(180deg,rgba(25,33,105,.05) 0%,rgba(35,44,116,.16) 40%,rgba(35,44,116,.64) 72%,rgba(28,36,101,.92) 100%),url('/ativos/imagens/hero-mobile-sem-microfone.webp')!important;
    background-position:center bottom!important;
    background-size:cover!important;
  }
  body .service-page .service-hero{background-image:linear-gradient(180deg,rgba(25,33,105,.05) 0%,rgba(35,44,116,.16) 40%,rgba(35,44,116,.64) 72%,rgba(28,36,101,.92) 100%),url('/ativos/imagens/hero-mobile-sem-microfone.webp')!important;background-size:cover!important;background-position:center bottom!important}
  .hero::after,
  .service-hero::after,
  .blog-hero::after,
  .post-hero::after{height:145px!important;background:linear-gradient(0deg,#fffdf9 0%,rgba(255,253,249,.72) 15%,rgba(35,44,116,.32) 52%,transparent 100%)!important}
  .hero-actions .btn-primary,
  .service-actions .btn-primary{width:min(100%,360px)!important;text-align:center!important;justify-content:center!important}
}

/* Retrato da seção Sobre: círculo sem card sobreposto. */
#sobre .photo-wrap{
  width:min(100%,440px)!important;
  aspect-ratio:1!important;
  min-height:0!important;
  margin-inline:auto!important;
  overflow:hidden!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#f5e9dd,#fff)!important;
  border:8px solid rgba(255,255,255,.92)!important;
  outline:2px solid rgba(47,58,143,.16)!important;
  box-shadow:0 28px 70px rgba(47,58,143,.18),0 0 0 12px rgba(201,140,140,.10)!important;
}
#sobre .photo-wrap>img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 48%!important;border-radius:50%!important}
#sobre .photo-card{display:none!important}
@media(max-width:620px){#sobre .photo-wrap{width:min(88vw,380px)!important;border-width:6px!important;box-shadow:0 20px 48px rgba(47,58,143,.17),0 0 0 8px rgba(201,140,140,.10)!important}}

.copy .developer-credit{display:inline-block;margin-left:10px;padding-left:12px;border-left:1px solid rgba(255,255,255,.28)}
.copy .developer-credit a{color:inherit;font-weight:600}
@media(max-width:700px){.copy .developer-credit{display:block;margin:9px 0 0;padding:0;border:0}}

/* Mobile: conteúdo no topo e retrato abaixo, sem sobreposição. */
@media(max-width:700px){
  .hero,.service-hero,.blog-hero,.post-hero,body .service-page .service-hero{align-items:start!important;min-height:900px!important;background-size:100% auto!important;background-position:center bottom!important}
  .hero .hero-content,.service-hero .hero-content,.blog-hero .hero-content,.post-hero .hero-content,body .service-page .service-hero-text{width:88%!important;max-width:88%!important;margin:0 auto!important;padding:54px 0 370px!important}
  .hero .hero-content h1,.service-hero h1,.blog-hero h1,.post-hero h1,body .service-page .service-hero-text h1{font-size:clamp(1.9rem,9vw,2.5rem)!important;line-height:1.08!important;max-width:100%!important}
  .hero .hero-content>p,.service-hero .hero-content>p,body .service-page .service-hero-text>p{font-size:.96rem!important;line-height:1.62!important;max-width:100%!important}
  .hero::after,.service-hero::after,.blog-hero::after,.post-hero::after{height:110px!important}
}
@media(max-width:420px){
  .hero,.service-hero,.blog-hero,.post-hero,body .service-page .service-hero{min-height:920px!important}
  .hero .hero-content,.service-hero .hero-content,.blog-hero .hero-content,.post-hero .hero-content,body .service-page .service-hero-text{padding-top:44px!important;padding-bottom:390px!important}
}
