/* Revisão responsiva: espaço real para conteúdo, sem esconder transbordamentos. */
.hero-grid,.contact-grid,.publication-grid,.faq-grid,.benefits-intro,.final-story-grid,.form-fields{min-width:0}
.hero-grid>*,.contact-grid>*,.publication-grid>*,.faq-grid>*,.benefits-intro>*,.final-story-grid>*,.form-fields>*{min-width:0}
h1,h2,h3{overflow-wrap:break-word}
h1 em,h2 em{display:inline-block;max-width:100%;padding:.04em .04em .14em 0;margin-bottom:-.14em;vertical-align:baseline}
.benefits .section-heading h2 em{padding-bottom:.14em}
.button{max-width:100%;white-space:normal;text-align:center}
.button>span:not(.ripple){min-width:0;overflow-wrap:break-word}
.text-link{max-width:100%;overflow-wrap:break-word}
.field input,.field select{min-width:0;width:100%}
.hero{padding-bottom:32px}
.hero-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:center;padding:24px;border:1px solid var(--line);border-radius:20px}
.hero-strip>span{max-width:none!important;min-width:0;line-height:1.6}
.benefit-grid{margin-inline:auto}
.form-heading{flex-wrap:wrap;gap:10px}
.form-heading .eyebrow{flex:1;min-width:140px}
#form-progress-text{white-space:nowrap}
.magazine-caption small{padding-inline:8px;line-height:1.6}
@media(min-width:701px) and (max-width:1000px){
 .hero-grid,.contact-grid,.publication-grid,.faq-grid,.benefits-intro,.final-cta .final-story-grid{grid-template-columns:minmax(0,1fr);gap:36px}
 .hero-grid,.contact-grid,.publication-grid,.faq-grid,.benefits-intro,.final-story-grid{max-width:680px;margin-inline:auto}
 .hero-copy{max-width:650px}
 .magazine-visual{max-width:440px;margin-inline:auto}
 .contact-portrait{max-width:330px}
 .benefits-intro{margin-bottom:40px}
 .benefits-intro .section-heading{margin:0}
 .final-story-grid .story-photo{max-width:560px}
 .hero-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hero-strip>span:first-child{grid-column:1/-1}
 .process-callout{flex-wrap:wrap;gap:24px}
 .section-heading.split{gap:30px}
}
@media(max-width:700px){
 .hero{padding-bottom:28px}
 h1{line-height:1.09}
 .home h1{line-height:1.1}
 .hero-strip{grid-template-columns:minmax(0,1fr);gap:0;padding:22px}
 .hero-strip>span{grid-column:1/-1}
 .form-fields{grid-template-columns:minmax(0,1fr)}
 .field.full{grid-column:auto}
 .contact-form{padding:28px 22px}
 .contact-phone{font-size:clamp(23px,7vw,29px)}
 .form-submit{padding-inline:16px}
 .form-submit .arrow{display:none}
 .check-panel .button{padding-inline:16px}
 .situation-options label>span:first-of-type{min-width:0}
 .home-paths h2{line-height:1.25}
 .final-story-copy h2{line-height:1.18}
 .footer-top{gap:22px}
}
@media(max-width:380px){
 .contact-form,.check-panel,.benefit-card{padding:24px 20px}
 .hero .eyebrow{letter-spacing:1.2px}
 .short-line{width:20px;margin-right:6px}
 .form-heading .eyebrow{font-size:10px}
}

/* Teste de cor: somente CTAs principais; contato flutuante preservado. */
main .button[data-wa],main .form-submit{
 color:#fff;border-color:#2457e6;background:#2457e6;
 box-shadow:0 7px 18px #2457e626;
}
main .button[data-wa]:hover,main .form-submit:hover{
 color:#fff;border-color:#1945c2;background:#1945c2;
 box-shadow:0 10px 24px #2457e638;
}
main .button[data-wa]::before,main .form-submit::before{background:none}
main .button[data-wa]:focus-visible,main .form-submit:focus-visible{
 outline:3px solid #17389a;outline-offset:4px;
}


/* Fundo branco; superfícies dos cards, tipografia e CTAs preservadas. */
body,.header,main>section[class],footer{background:#fff}
main>section.dark::before{content:none}

