.elementor-209 .elementor-element.elementor-element-47f570c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-209 .elementor-element.elementor-element-47f570c{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-209 .elementor-element.elementor-element-47f570c.e-con{--align-self:center;--flex-grow:0;--flex-shrink:1;}}/* Start custom CSS for container, class: .elementor-element-47f570c *//* ============ HOTFIX MOBILE — Mutante (colar no final do <style>) ============ */

/* evita scroll lateral por qualquer elemento “fujão” */
html, body, #auto-page { overflow-x: hidden; }

/* imagens/SVG 100% do container sempre */
#auto-page img, #auto-page svg { max-width:100%; height:auto; display:block; }

/* gutters com safe-area (iPhone etc.) */
@media (max-width: 768px){
  :root{
    --gutter-l: max(18px, env(safe-area-inset-left));
    --gutter-r: max(18px, env(safe-area-inset-right));
    --section-y: 52px;   /* respiro vertical base */
  }
  .wrap{ padding-left: var(--gutter-l); padding-right: var(--gutter-r); }
  .section{ padding-top: var(--section-y); padding-bottom: var(--section-y); }
}

/* HERO — 1 coluna, tipografia e respiros */
@media (max-width: 768px){
  .hero-grid{
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    padding: 60px 0 66px !important;
  }
  .h1.hero-title{
    font-size: clamp(28px, 8.5vw, 38px) !important;
    line-height: 1.08 !important;
  }
  .hero-copy{ margin: 0 0 16px !important; }
  .hero-cta .btn{ width: 100% !important; } /* CTA cheio e bem ancorado */
  .hero-badges{ gap: 10px !important; }
}

/* HERO — media + card nunca estouram */
@media (max-width: 768px){
  .hero-media{
    margin: 6px 0 0 !important;
    border-radius: 18px !important;
    aspect-ratio: 16 / 10 !important;
    border: 1px solid rgba(255,255,255,.12);
  }
  .hero-card{
    left: 12px !important; right: 12px !important; bottom: 12px !important;
    padding: 10px 12px !important; border-radius: 14px !important;
  }
  .hero-check{ width: 34px; height: 34px; }
}

/* Cards, listas e chips com mais respiro e sem “colar” */
@media (max-width: 768px){
  .card{ padding: 14px !important; }
  .chips{ gap: 8px !important; }
}

/* Coberturas e “Para quem é” em 1 coluna */
@media (max-width: 980px){
  .benef-grid, .covers{ grid-template-columns: 1fr !important; gap: 14px !important; }
}

/* Seção de seguradoras responsiva (caso esteja nesta página) */
@media (max-width: 900px){
  .mt-insurers__list{ grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 560px){
  .mt-insurers__list{ grid-template-columns: repeat(2, 1fr) !important; }
}

/* Callout “Comparativo” — 1 coluna e shot seguro */
@media (max-width: 980px){
  .compare{
    grid-template-columns: 1fr !important;
    padding: 14px !important;
    gap: 14px !important;
  }
  .compare .shot{
    aspect-ratio: 3 / 2 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }
  .compare .shot svg{ width:100% !important; height:auto !important; }
}

/* CTA final — botão full width se faltar espaço */
@media (max-width: 640px){
  .cta-row{ gap: 12px !important; }
  .cta-row .btn{ width: 100% !important; }
}/* End custom CSS */