/* DOSS VIP-P03C2 — imagens responsivas em duas proporções */
#dossVipTopoPublicoP03B{
  --dvp3b-a:#7f1d1d;
  --dvp3b-b:#dc2626;
  --dvp3b-c:#f97316;
  --dvp3b-accent:#fde047;
  width:100%;
  margin:12px 0;
  position:relative;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
}
#dossVipTopoPublicoP03B .dvp3b-track{
  position:relative;
  min-height:clamp(250px,34vw,410px);
  overflow:hidden;
  border-radius:22px;
  box-shadow:0 14px 34px rgba(0,0,0,.16);
}
#dossVipTopoPublicoP03B .dvp3b-slide{
  position:absolute;
  inset:0;
  display:grid;
  align-items:center;
  padding:clamp(24px,5vw,58px);
  color:#fff;
  opacity:0;
  visibility:hidden;
  transform:translateX(14px);
  transition:opacity .3s ease,transform .3s ease,visibility .3s;
  background:
    linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.16)),
    var(--dvp3b-image-desktop),
    linear-gradient(135deg,var(--dvp3b-a),var(--dvp3b-b) 60%,var(--dvp3b-c));
  background-size:cover;
  background-position:center;
}
#dossVipTopoPublicoP03B .dvp3b-slide.is-active{
  opacity:1;
  visibility:visible;
  transform:none;
}
#dossVipTopoPublicoP03B .dvp3b-slide.tema-sol{
  --dvp3b-a:#92400e;--dvp3b-b:#f59e0b;--dvp3b-c:#fde047;--dvp3b-accent:#fff
}
#dossVipTopoPublicoP03B .dvp3b-slide.tema-premium{
  --dvp3b-a:#030712;--dvp3b-b:#111827;--dvp3b-c:#92400e;--dvp3b-accent:#fbbf24
}
#dossVipTopoPublicoP03B .dvp3b-slide.tema-verde{
  --dvp3b-a:#14532d;--dvp3b-b:#15803d;--dvp3b-c:#84cc16;--dvp3b-accent:#fef08a
}
#dossVipTopoPublicoP03B .dvp3b-copy{position:relative;z-index:2;max-width:min(720px,78%)}
#dossVipTopoPublicoP03B .dvp3b-topline{
  display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:12px
}
#dossVipTopoPublicoP03B .dvp3b-kicker,
#dossVipTopoPublicoP03B .dvp3b-limited{
  padding:6px 9px;border-radius:999px;background:rgba(0,0,0,.38);
  font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em
}
#dossVipTopoPublicoP03B .dvp3b-limited{
  background:rgba(255,255,255,.92);color:#7c2d12
}
#dossVipTopoPublicoP03B h2{
  margin:0;
  max-width:720px;
  font-size:clamp(30px,5.7vw,62px);
  line-height:.98;
  letter-spacing:-.04em;
  text-shadow:0 3px 18px rgba(0,0,0,.30)
}
#dossVipTopoPublicoP03B p{
  margin:13px 0;
  max-width:650px;
  font-size:clamp(14px,2vw,20px);
  line-height:1.45;
  color:rgba(255,255,255,.94)
}
#dossVipTopoPublicoP03B .dvp3b-offer{
  display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin:13px 0
}
#dossVipTopoPublicoP03B .dvp3b-old{
  font-size:16px;text-decoration:line-through;opacity:.78
}
#dossVipTopoPublicoP03B .dvp3b-price{
  font-size:clamp(27px,4.8vw,46px);color:var(--dvp3b-accent)
}
#dossVipTopoPublicoP03B .dvp3b-coupon{
  padding:7px 10px;border-radius:10px;background:var(--dvp3b-accent);
  color:#713f12;font-size:11px;font-weight:950
}
#dossVipTopoPublicoP03B .dvp3b-bottom{
  display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-top:16px
}
#dossVipTopoPublicoP03B .dvp3b-validity{font-size:12px;font-weight:800}
#dossVipTopoPublicoP03B .dvp3b-cta{
  display:inline-flex;align-items:center;justify-content:center;
  padding:11px 17px;border-radius:12px;background:#fff;color:#9a3412;
  text-decoration:none;font-size:13px;font-weight:950;
  box-shadow:0 10px 24px rgba(0,0,0,.18)
}
#dossVipTopoPublicoP03B .dvp3b-dots{
  position:absolute;left:50%;bottom:12px;z-index:4;
  display:flex;gap:6px;transform:translateX(-50%)
}
#dossVipTopoPublicoP03B .dvp3b-dot{
  width:9px;height:9px;padding:0;border:0;border-radius:999px;
  background:rgba(255,255,255,.52);cursor:pointer;transition:.2s
}
#dossVipTopoPublicoP03B .dvp3b-dot.is-active{width:27px;background:#fff}
@media(max-width:700px){
  #dossVipTopoPublicoP03B{margin:10px 0}
  #dossVipTopoPublicoP03B .dvp3b-track{min-height:380px;border-radius:18px}
  #dossVipTopoPublicoP03B .dvp3b-slide{
    align-items:end;
    padding:23px 19px 40px;
    background:
      linear-gradient(0deg,rgba(0,0,0,.90),rgba(0,0,0,.08) 76%),
      var(--dvp3b-image-mobile,var(--dvp3b-image-desktop)),
      linear-gradient(135deg,var(--dvp3b-a),var(--dvp3b-b) 60%,var(--dvp3b-c));
    background-size:cover;
    background-position:center
  }
  #dossVipTopoPublicoP03B .dvp3b-copy{max-width:100%}
  #dossVipTopoPublicoP03B h2{font-size:clamp(29px,10vw,44px)}
  #dossVipTopoPublicoP03B p{font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  #dossVipTopoPublicoP03B .dvp3b-slide{transition:none}
}


/* VIP-P03C2B · conteúdo integral dentro do banner */
@media (min-width:701px){
  #dossVipTopoPublicoP03B .dvp3b-track{
    min-height:360px;
    max-height:460px;
    aspect-ratio:8 / 3;
  }

  #dossVipTopoPublicoP03B .dvp3b-slide{
    padding:clamp(20px,3.2vw,38px);
  }

  #dossVipTopoPublicoP03B .dvp3b-copy{
    width:min(700px,72%);
    max-width:min(700px,72%);
  }

  #dossVipTopoPublicoP03B .dvp3b-topline{
    margin-bottom:8px;
  }

  #dossVipTopoPublicoP03B h2{
    max-width:680px;
    font-size:clamp(28px,4.5vw,52px);
    line-height:.98;
  }

  #dossVipTopoPublicoP03B p{
    margin:8px 0;
    max-width:620px;
    font-size:clamp(13px,1.55vw,18px);
    line-height:1.35;
  }

  #dossVipTopoPublicoP03B .dvp3b-offer{
    gap:9px;
    margin:6px 0;
  }

  #dossVipTopoPublicoP03B .dvp3b-price{
    font-size:clamp(24px,3.6vw,38px);
    line-height:1;
  }

  #dossVipTopoPublicoP03B .dvp3b-bottom{
    gap:10px;
    margin-top:8px;
  }

  #dossVipTopoPublicoP03B .dvp3b-cta{
    padding:9px 14px;
    font-size:12px;
  }
}

@media (min-width:701px) and (max-width:980px){
  #dossVipTopoPublicoP03B .dvp3b-track{
    min-height:370px;
  }

  #dossVipTopoPublicoP03B .dvp3b-copy{
    width:min(620px,76%);
    max-width:min(620px,76%);
  }

  #dossVipTopoPublicoP03B h2{
    font-size:clamp(27px,4.8vw,44px);
  }

  #dossVipTopoPublicoP03B p{
    font-size:14px;
  }
}

@media (max-width:700px){
  #dossVipTopoPublicoP03B .dvp3b-track{
    min-height:0;
    aspect-ratio:1 / 1;
  }

  #dossVipTopoPublicoP03B .dvp3b-slide{
    padding:18px 16px 24px;
  }

  #dossVipTopoPublicoP03B .dvp3b-topline{
    margin-bottom:7px;
  }

  #dossVipTopoPublicoP03B .dvp3b-kicker,
  #dossVipTopoPublicoP03B .dvp3b-limited{
    padding:5px 8px;
    font-size:9px;
  }

  #dossVipTopoPublicoP03B h2{
    font-size:clamp(26px,9vw,38px);
    line-height:.98;
  }

  #dossVipTopoPublicoP03B p{
    margin:7px 0;
    font-size:13px;
    line-height:1.32;
  }

  #dossVipTopoPublicoP03B .dvp3b-offer{
    gap:8px;
    margin:6px 0;
  }

  #dossVipTopoPublicoP03B .dvp3b-old{
    font-size:13px;
  }

  #dossVipTopoPublicoP03B .dvp3b-price{
    font-size:clamp(23px,8vw,32px);
    line-height:1;
  }

  #dossVipTopoPublicoP03B .dvp3b-bottom{
    gap:8px;
    margin-top:6px;
  }

  #dossVipTopoPublicoP03B .dvp3b-validity{
    font-size:10px;
  }

  #dossVipTopoPublicoP03B .dvp3b-cta{
    padding:8px 12px;
    font-size:11px;
  }
}

@media (max-width:390px){
  #dossVipTopoPublicoP03B h2{
    font-size:clamp(24px,8.6vw,34px);
  }

  #dossVipTopoPublicoP03B p{
    font-size:12px;
  }

  #dossVipTopoPublicoP03B .dvp3b-price{
    font-size:27px;
  }
}
