
/* V15 — HERO FOTO COMO FUNDO
   Foto ocupa todo o primeiro bloco. Gradiente azul do lado esquerdo garante
   leitura enquanto mantém a fotografia claramente visível no lado direito. */

.hero,
.hero.hero-home,
.hero.hero-inner,
.hero.hero-inner.hero-home{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:610px!important;
  background:#073f8c!important;
  color:#fff!important;
}

/* A foto deixa de ser card/coluna e passa a ser o fundo do hero. */
.hero-backdrop,
.hero-home .hero-backdrop,
.hero-inner .hero-backdrop,
.hero.hero-inner.hero-home .hero-backdrop{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center 58%!important;
  opacity:1!important;
  filter:saturate(1.03) contrast(1.03)!important;
}

.hero::after,
.hero.hero-home::after,
.hero.hero-inner::after,
.hero.hero-inner.hero-home::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,
      rgba(5,61,139,.99) 0%,
      rgba(5,61,139,.98) 25%,
      rgba(5,61,139,.90) 40%,
      rgba(5,61,139,.66) 55%,
      rgba(5,42,108,.34) 69%,
      rgba(3,19,56,.10) 100%)!important;
}

.hero-grid,
.hero-home .hero-grid,
.hero-inner .hero-grid,
.hero.hero-inner.hero-home .hero-grid{
  position:relative!important;
  z-index:2!important;
  min-height:610px!important;
  display:grid!important;
  grid-template-columns:minmax(0,585px) 1fr!important;
  align-items:center!important;
  gap:34px!important;
  padding-top:54px!important;
  padding-bottom:54px!important;
}

.hero-copy,
.hero-home .hero-copy,
.hero-inner .hero-copy{
  max-width:585px!important;
  padding:8px 0!important;
}

.hero h1,
.hero-home .hero-copy h1,
.hero-inner h1,
.hero.hero-inner.hero-home .hero-copy h1{
  max-width:575px!important;
  margin-top:10px!important;
  margin-bottom:18px!important;
  font-size:clamp(46px,4.7vw,68px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  text-wrap:balance!important;
  color:#fff!important;
  text-shadow:0 2px 24px rgba(0,16,57,.18)!important;
}

.hero-inner h1{
  font-size:clamp(44px,4.35vw,62px)!important;
}

.hero-home .hero-copy h1 .gold-line{
  display:block!important;
  margin-top:8px!important;
  color:#f0cf78!important;
}

.hero .eyebrow,
.hero .eyebrow-light{
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,16,57,.22)!important;
}

.hero-answer{
  max-width:555px!important;
  margin-top:0!important;
  color:#f4f7ff!important;
  font-size:16px!important;
  line-height:1.62!important;
  text-shadow:0 1px 14px rgba(0,16,57,.17)!important;
}

.hero-actions{margin-top:24px!important}

.hero .button-outline{
  color:#092b66!important;
  background:#fff!important;
  border-color:#fff!important;
}
.hero .button-outline:hover{background:#f1f5ff!important}

.hero-proof{
  max-width:555px!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.18)!important;
}

.hero-location-bar{
  max-width:555px!important;
  margin-top:22px!important;
  padding:17px 19px!important;
  background:rgba(4,29,82,.55)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
  box-shadow:0 14px 38px rgba(0,17,60,.16)!important;
}
.hero-location-bar span{color:#c9ddff!important}
.hero-location-bar strong,
.hero-location-bar small{color:#fff!important}
.hero-location-link{background:#fff!important;color:#092b66!important}

/* Antiga foto lateral: removida visualmente. A imagem principal é o fundo. */
.hero-media,
.hero-inner .hero-media,
.hero-home .hero-media,
.hero.hero-inner.hero-home .hero-media{
  display:none!important;
}

/* ===== LANDING PAGES DOS ANÚNCIOS ===== */

.ads-hero,
.ads-product-hero{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:610px!important;
  background:#073f8c!important;
  color:#fff!important;
}

.ads-hero-bg,
.ads-product-hero .ads-hero-bg{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 52%!important;
  opacity:1!important;
  filter:saturate(1.03) contrast(1.03)!important;
}

.ads-hero::after,
.ads-product-hero::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,
      rgba(5,61,139,.99) 0%,
      rgba(5,61,139,.98) 27%,
      rgba(5,61,139,.88) 43%,
      rgba(5,61,139,.61) 58%,
      rgba(5,42,108,.30) 72%,
      rgba(3,19,56,.08) 100%)!important;
}

.ads-hero-grid{
  position:relative!important;
  z-index:2!important;
  min-height:610px!important;
  grid-template-columns:minmax(0,600px) minmax(300px,.72fr)!important;
  gap:46px!important;
  padding-top:52px!important;
  padding-bottom:52px!important;
}

.ads-hero-copy{max-width:600px!important}

.ads-hero h1{
  max-width:590px!important;
  font-size:clamp(46px,4.7vw,68px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  color:#fff!important;
  text-shadow:0 2px 24px rgba(0,16,57,.18)!important;
}

.ads-hero h1 em{color:#f0cf78!important}
.ads-hero-lead{
  max-width:565px!important;
  color:#f3f7ff!important;
  font-size:16px!important;
  line-height:1.62!important;
}

.ads-hero .button-outline{
  color:#092b66!important;
  background:#fff!important;
  border-color:#fff!important;
}

/* O painel direito continua com o conteúdo do anúncio, mas translúcido,
   deixando a fotografia continuar sendo o elemento dominante. */
.ads-hero-card{
  justify-self:end!important;
  width:min(100%,380px)!important;
  color:#fff!important;
  background:rgba(4,27,75,.68)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  backdrop-filter:blur(12px)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.25)!important;
}
.ads-hero-card .eyebrow,
.ads-hero-card h2,
.ads-hero-card p,
.ads-hero-card li,
.ads-hero-card .ads-fineprint{color:#fff!important}
.ads-hero-card li::before{background:#17a956!important;color:#fff!important}
.ads-mini-proof span{color:#fff!important;background:rgba(255,255,255,.10)!important}

/* ===== POPUP CUPOM ===== */

/* Nenhum contexto de navegação ou último produto aparece visualmente no popup. */
.exit-context{display:none!important}

.exit-range{
  display:grid!important;
  gap:4px!important;
  margin:18px 0 20px!important;
  padding:16px 18px!important;
  border-radius:14px!important;
  background:#f3f0e8!important;
  border:1px solid #ebe5d9!important;
}
.exit-range small{
  color:#687386!important;
  text-transform:uppercase!important;
  letter-spacing:.11em!important;
  font-size:9px!important;
  font-weight:900!important;
}
.exit-range strong{
  color:#061632!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:26px!important;
  font-weight:500!important;
}
.exit-range span{
  color:#1e4e9d!important;
  font-size:12px!important;
  font-weight:800!important;
}
.v13-exit-popup h2{max-width:490px!important}
.v13-exit-popup #exit-coupon-desc{max-width:510px!important}
.exit-privacy{font-size:9px!important}

/* ===== RESPONSIVO ===== */

@media(max-width:980px){
  .hero-grid,
  .hero-home .hero-grid,
  .hero-inner .hero-grid,
  .hero.hero-inner.hero-home .hero-grid{
    grid-template-columns:minmax(0,570px) 1fr!important;
  }
  .hero::after,
  .hero.hero-home::after,
  .hero.hero-inner::after,
  .hero.hero-inner.hero-home::after{
    background:
      linear-gradient(90deg,
        rgba(5,61,139,.99) 0%,
        rgba(5,61,139,.96) 44%,
        rgba(5,61,139,.70) 67%,
        rgba(3,19,56,.20) 100%)!important;
  }
  .ads-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(280px,.58fr)!important;
    gap:28px!important;
  }
}

@media(max-width:820px){
  .hero,
  .hero.hero-home,
  .hero.hero-inner,
  .hero.hero-inner.hero-home,
  .ads-hero,
  .ads-product-hero{
    min-height:auto!important;
  }

  .hero-backdrop,
  .hero-home .hero-backdrop,
  .hero-inner .hero-backdrop,
  .hero.hero-inner.hero-home .hero-backdrop{
    object-position:57% 54%!important;
  }

  .hero::after,
  .hero.hero-home::after,
  .hero.hero-inner::after,
  .hero.hero-inner.hero-home::after,
  .ads-hero::after,
  .ads-product-hero::after{
    background:
      linear-gradient(180deg,
        rgba(5,55,127,.91) 0%,
        rgba(5,55,127,.95) 45%,
        rgba(5,39,102,.91) 72%,
        rgba(3,18,54,.87) 100%)!important;
  }

  .hero-grid,
  .hero-home .hero-grid,
  .hero-inner .hero-grid,
  .hero.hero-inner.hero-home .hero-grid{
    grid-template-columns:1fr!important;
    min-height:620px!important;
    padding-top:54px!important;
    padding-bottom:48px!important;
  }

  .hero-copy{max-width:660px!important}

  .ads-hero-grid{
    grid-template-columns:1fr!important;
    min-height:620px!important;
    padding-top:52px!important;
    padding-bottom:48px!important;
  }

  .ads-hero-card{
    justify-self:start!important;
    width:min(100%,580px)!important;
    margin-top:6px!important;
  }
}

@media(max-width:620px){
  .hero-grid,
  .hero-home .hero-grid,
  .hero-inner .hero-grid,
  .hero.hero-inner.hero-home .hero-grid{
    min-height:650px!important;
    padding-top:42px!important;
    padding-bottom:40px!important;
  }

  .hero h1,
  .hero-home .hero-copy h1,
  .hero-inner h1,
  .hero.hero-inner.hero-home .hero-copy h1{
    font-size:clamp(40px,12vw,55px)!important;
  }

  .hero-answer{font-size:15px!important}
  .hero-location-bar{padding:15px 16px!important}
  .hero-location-bar strong{font-size:16px!important}

  .ads-hero-grid{
    min-height:660px!important;
    padding-top:40px!important;
    padding-bottom:40px!important;
  }
  .ads-hero h1{font-size:clamp(40px,12vw,55px)!important}
  .ads-hero-lead{font-size:15px!important}

  .v13-exit-popup{padding:38px 22px 24px!important}
  .v13-exit-popup h2{font-size:37px!important}
  .exit-range strong{font-size:23px!important}
}
