/* v22 — LP Direito Securitário. Escopo isolado em .insurance-page. */
.insurance-page{--ins:#1f5f89;--ins-dark:#071b31;--ins-soft:#f4f8fa;--ins-line:#d9e4ea}
.insurance-page .lp-hero{padding:88px 0 84px;background:linear-gradient(122deg,#fafcfd 0%,#f2f6f9 48%,#eaf2f6 100%)}
.insurance-page .lp-hero-grid{grid-template-columns:1.04fr .96fr;gap:72px}
.insurance-page .lp-hero-copy{max-width:720px}
.insurance-page .lp-hero h1{font-size:clamp(2.7rem,4.65vw,4.2rem);line-height:1.075;margin-bottom:22px}
.insurance-page .lp-hero .lead{font-size:1.04rem;line-height:1.78;margin-bottom:26px}
.insurance-page .lp-pain-points{margin:0 0 24px}
.insurance-page .lp-actions{margin-bottom:22px}.insurance-page .lp-actions .btn{min-height:52px}
.insurance-page .lp-trust{gap:9px}.insurance-page .lp-trust span{min-height:34px;padding:8px 12px}
.insurance-page .lp-visual{min-height:470px}.insurance-page .lp-photo-card{inset:0 0 32px 46px;border-radius:30px}.insurance-page .lp-floating-card{padding:23px 24px}
.insurance-page .lp-proofbar .container{grid-template-columns:repeat(4,1fr)}
.insurance-page .lp-proof{padding:25px 26px}.insurance-page .lp-proof strong{font-size:.9rem}.insurance-page .lp-proof span{font-size:.76rem;line-height:1.45}
.insurance-page .lp-section{padding:94px 0}.insurance-page .lp-section-head{margin-bottom:46px}

.ins-pain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ins-pain{min-height:210px;border:1px solid var(--ins-line);border-radius:20px;padding:27px 28px;background:#fff;box-shadow:0 8px 26px rgba(7,27,49,.035);transition:.2s}
.ins-pain:hover{transform:translateY(-3px);border-color:#c8dbe6;box-shadow:0 14px 32px rgba(7,27,49,.07)}
.ins-label{display:inline-flex;margin-bottom:14px;padding:6px 9px;border-radius:999px;background:#edf4f8;color:#275f83;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.ins-pain strong{display:block;color:#071b31;font-size:1.08rem;margin-bottom:10px}.ins-pain p{margin:0;color:#53616d;font-size:.88rem;line-height:1.65}

.ins-denial{background:linear-gradient(135deg,#071b31,#123e62);color:#fff;border-radius:26px;padding:44px 46px;box-shadow:0 20px 55px rgba(7,27,49,.18)}
.ins-denial .lp-kicker{color:#a9c9df}.ins-denial .lp-kicker:before{background:#7eabc9}.ins-denial h2{color:#fff;margin:8px 0 17px;max-width:880px;font-size:clamp(2rem,3.5vw,3rem)}.ins-denial p{color:#d3e0e9;max-width:900px;line-height:1.72}.ins-denial p strong{color:#fff}.ins-denial .btn{margin-top:14px;background:#fff!important;border-color:#fff!important;color:#0b3150!important}
.ins-quote{font-family:"Libre Baskerville",serif;font-size:clamp(2rem,3.3vw,3rem);line-height:1.26;color:#071b31;max-width:980px;margin:0 auto;text-align:center}.ins-quote span{color:#174f7d}

.ins-line{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ins-line-card{display:flex;flex-direction:column;min-height:430px;border:1px solid var(--ins-line);border-radius:22px;background:#fff;padding:32px;box-shadow:0 8px 26px rgba(7,27,49,.035)}
.ins-line-card h2{font-size:clamp(1.65rem,2.45vw,2.25rem);line-height:1.25}.ins-line-card>p{color:#566570;line-height:1.68}.ins-line-card .btn{margin-top:auto!important}
.ins-proof{border-left:4px solid #184f7d;background:#f1f6f9;padding:18px 20px;border-radius:0 14px 14px 0;color:#435461;font-size:.85rem;line-height:1.6;margin:18px 0}.ins-proof strong{color:#071b31}

.ins-signal-list{display:grid;gap:0;margin-top:18px}.ins-signal{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid #e4e9ed}.ins-signal:last-child{border-bottom:0}.ins-signal b{width:27px;height:27px;flex:0 0 27px;border-radius:50%;display:grid;place-items:center;background:#e9f2f7;color:#174f7d}.ins-signal span{color:#53616d;line-height:1.55}
.insurance-page .lp-feature-panel{border-radius:22px;padding:34px 36px}

.ins-rights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ins-right{min-height:175px;background:#fff;border:1px solid var(--ins-line);border-radius:19px;padding:25px}.ins-right h3{font-size:1.08rem;margin-bottom:9px}.ins-right p{margin:0;color:#53616d;font-size:.88rem;line-height:1.62}
.ins-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ins-type{border:1px solid var(--ins-line);border-radius:14px;padding:18px 12px;background:#fff;text-align:center;font-weight:800;color:#364655;font-size:.88rem}
.ins-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ins-step{min-height:245px;padding:25px;border:1px solid var(--ins-line);border-radius:19px;background:#fff}.ins-step .ins-step-no{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#071b31;color:#fff;font-weight:800;margin-bottom:17px}.ins-step h3{font-size:1.03rem;line-height:1.4;margin-bottom:8px}.ins-step p{margin:0;color:#53616d;font-size:.85rem;line-height:1.62}
.ins-docs{columns:2;column-gap:35px;margin:0;padding:0;list-style:none}.ins-docs li{break-inside:avoid;position:relative;padding:8px 0 8px 25px;color:#53616d}.ins-docs li:before{content:"✓";position:absolute;left:0;color:#187548;font-weight:900}
.insurance-page .faq-list{max-width:900px;margin:0 auto;border-top:1px solid var(--ins-line)}
.insurance-page .lp-contact{padding:92px 0;background:#f7f9fa}.insurance-page .lp-contact>.lp-contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--lp-line);border-radius:26px;overflow:hidden;box-shadow:var(--lp-shadow-soft);background:#fff}.insurance-page .lp-contact-side{min-height:600px;padding:44px}.insurance-page .lp-contact-form{padding:44px}
.ins-disclaimer{font-size:.76rem;color:#74808b;margin-top:16px}

@media(max-width:1040px){
 .insurance-page .lp-hero-grid{grid-template-columns:1fr;gap:42px}.insurance-page .lp-visual{max-width:660px;min-height:500px}
 .insurance-page .lp-proofbar .container{grid-template-columns:repeat(2,1fr)}
 .ins-pain-grid,.ins-rights{grid-template-columns:repeat(2,minmax(0,1fr))}.ins-line{grid-template-columns:1fr}.ins-line-card{min-height:0}.ins-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.ins-types{grid-template-columns:repeat(2,minmax(0,1fr))}
 .insurance-page .lp-contact>.lp-contact-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
 .insurance-page .lp-hero{padding:58px 0 54px}.insurance-page .lp-hero h1{font-size:2.35rem;line-height:1.14}.insurance-page .lp-hero .lead{font-size:.96rem;line-height:1.7}.insurance-page .lp-actions{display:grid}.insurance-page .lp-actions .btn{width:100%}
 .insurance-page .lp-visual{min-height:430px}.insurance-page .lp-photo-card{left:22px;bottom:32px}.insurance-page .lp-floating-card{width:88%;padding:18px}
 .insurance-page .lp-proofbar .container{grid-template-columns:1fr}.insurance-page .lp-proof{padding:17px 0;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.13)!important}.insurance-page .lp-proof:last-child{border-bottom:0!important}
 .insurance-page .lp-section{padding:70px 0}.insurance-page .lp-section-head{margin-bottom:32px}.ins-pain-grid,.ins-rights,.ins-steps,.ins-types{grid-template-columns:1fr}.ins-pain,.ins-right,.ins-step{min-height:0}.ins-denial{padding:30px 22px}.ins-line-card{padding:25px}.ins-docs{columns:1}
 .insurance-page .lp-contact{padding:70px 0}.insurance-page .lp-contact-side,.insurance-page .lp-contact-form{padding:30px 23px}
}


/* v23 — correções estruturais após revisão visual em produção */
.insurance-page [id]{scroll-margin-top:104px}
.insurance-page #faq{padding-bottom:58px}
.insurance-page .lp-contact{
  display:block!important;
  grid-template-columns:none!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  box-shadow:none!important;
  background:#f7f9fa!important;
  padding:68px 0 76px!important;
}
.insurance-page .lp-contact>.lp-contact-grid{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  display:grid!important;
  grid-template-columns:minmax(330px,.88fr) minmax(0,1.12fr)!important;
  border:1px solid var(--lp-line);
  border-radius:26px;
  overflow:hidden;
  box-shadow:var(--lp-shadow-soft);
  background:#fff;
}
.insurance-page .lp-contact-side{min-height:560px;padding:42px 40px}
.insurance-page .lp-contact-form{padding:42px 40px}
.insurance-page .lp-contact-form .form-grid{gap:16px 14px}
.insurance-page .lp-contact-form .field{margin-bottom:0}
@media(max-width:1040px){
  .insurance-page .lp-contact>.lp-contact-grid{grid-template-columns:1fr!important;width:min(760px,calc(100% - 40px))}
  .insurance-page .lp-contact-side{min-height:390px}
}
@media(max-width:700px){
  .insurance-page [id]{scroll-margin-top:86px}
  .insurance-page #faq{padding-bottom:42px}
  .insurance-page .lp-contact{padding:48px 0 56px!important}
  .insurance-page .lp-contact>.lp-contact-grid{width:calc(100% - 28px);border-radius:20px}
  .insurance-page .lp-contact-side,.insurance-page .lp-contact-form{padding:28px 22px}
}
