/* V6: hero mobile refeito para integrar a foto e fechar a primeira dobra sem corte. */
.v6-hero__stage,.v6-hero__stage-copy{display:contents}
.v6-hero__mobile-visual{display:none}

@media(max-width:620px){
  .v4-hero{
    padding:18px 0 18px;
    display:block;
  }
  .v4-hero .hero__inner{display:block}
  .v4-hero .hero__copy{width:100%}
  .v4-hero .brand-logo{width:112px;margin:0 0 8px}

  .v6-hero__stage{
    display:grid;
    grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr);
    align-items:end;
    gap:0;
    min-height:320px;
    margin:0 -2px 0 0;
    position:relative;
    isolation:isolate;
  }
  .v6-hero__stage-copy{
    display:flex;
    flex-direction:column;
    align-self:center;
    position:relative;
    z-index:3;
    padding:2px 0 12px;
  }
  .v4-hero .eyebrow{
    max-width:none;
    margin:0 0 8px;
    font-size:.61rem;
    letter-spacing:.16em;
  }
  .v4-hero .hero__title{
    max-width:none;
    margin:0;
    font-size:clamp(2.45rem,10.4vw,2.78rem);
    line-height:.91;
    letter-spacing:-.012em;
  }

  /* O visual tem caixa própria: a foto pertence à composição, não flutua sobre o texto. */
  .v6-hero__mobile-visual{
    display:block;
    position:relative;
    align-self:stretch;
    min-height:320px;
    overflow:hidden;
    border-radius:90px 90px 28px 28px;
    background:linear-gradient(180deg,rgba(255,244,228,.12),rgba(248,148,30,.08));
  }
  .v6-hero__mobile-visual::before{
    content:"";
    position:absolute;
    inset:42px -38px -20px -18px;
    border-radius:52% 48% 20px 20px;
    background:linear-gradient(155deg,#fff2de 0%,#ffd89f 54%,#f7b356 100%);
    box-shadow:inset 0 0 0 1px rgba(248,148,30,.18);
  }
  .v6-hero__halo{
    position:absolute;
    width:220px;
    height:220px;
    border-radius:50%;
    right:-66px;
    top:44px;
    border:1px solid rgba(7,26,46,.12);
    box-shadow:0 0 0 30px rgba(255,255,255,.20),0 0 0 62px rgba(255,255,255,.10);
    z-index:1;
  }
  .v6-hero__mobile-portrait{
    position:absolute;
    z-index:2;
    bottom:-5px;
    left:50%;
    width:242px;
    height:auto;
    max-width:none;
    transform:translateX(-48%);
    filter:drop-shadow(0 18px 22px rgba(7,26,46,.18));
  }
  .v4-hero .hero__visual{display:none!important}

  .v4-hero .hero__subtitle{
    max-width:none;
    margin:10px 0 9px;
    padding:0;
    font-size:.78rem;
    line-height:1.52;
  }
  .v4-hero__checks{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px 10px;
    margin:8px 0 12px;
    max-width:none;
  }
  .v4-hero__checks li{
    padding-left:12px;
    font-size:.62rem;
    line-height:1.28;
  }
  .v4-hero__checks li::before{width:5px;height:5px;top:.48em}
  .v4-hero .cta--primary{width:100%;min-height:47px;padding:11px 16px;border-radius:14px;font-size:.78rem}
  .v4-hero__trust{margin:6px 0 0;text-align:center;font-size:.56rem;line-height:1.3}
}

@media(max-width:390px){
  .v4-hero{padding-top:15px;padding-bottom:15px}
  .v4-hero .brand-logo{width:104px;margin-bottom:5px}
  .v6-hero__stage{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);min-height:292px}
  .v6-hero__mobile-visual{min-height:292px}
  .v4-hero .hero__title{font-size:clamp(2.22rem,10.2vw,2.48rem)}
  .v6-hero__mobile-visual::before{inset:38px -42px -18px -22px}
  .v6-hero__mobile-portrait{width:222px;bottom:-3px}
  .v4-hero .hero__subtitle{font-size:.74rem;margin-top:8px}
  .v4-hero__checks{gap:4px 8px;margin:7px 0 10px}
  .v4-hero__checks li{font-size:.59rem}
  .v4-hero .cta--primary{min-height:44px;padding:10px 14px}
}

@media(max-width:340px){
  .v6-hero__stage{min-height:270px}
  .v6-hero__mobile-visual{min-height:270px}
  .v4-hero .hero__title{font-size:2.02rem}
  .v6-hero__mobile-portrait{width:205px}
  .v4-hero .hero__subtitle{font-size:.7rem}
  .v4-hero__checks li{font-size:.55rem}
}
