.elementor-2274 .elementor-element.elementor-element-cc94886{--display:flex;}.elementor-2274 .elementor-element.elementor-element-e3997c3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2274 .elementor-element.elementor-element-5a346c2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:56px 56px;--row-gap:56px;--column-gap:56px;--flex-wrap:nowrap;--padding-top:72px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-2274 .elementor-element.elementor-element-5a346c2:not(.elementor-motion-effects-element-type-background), .elementor-2274 .elementor-element.elementor-element-5a346c2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F5;}.elementor-2274 .elementor-element.elementor-element-fd81259{--display:flex;}.elementor-2274 .elementor-element.elementor-element-d64628b{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-field-type-html{padding-bottom:0px;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-button[type="submit"]{color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-2274 .elementor-element.elementor-element-e78a9f2{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-2274 .elementor-element.elementor-element-caf5c36{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2274 .elementor-element.elementor-element-8812b00{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:767px){.elementor-2274 .elementor-element.elementor-element-5a346c2{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(min-width:768px){.elementor-2274 .elementor-element.elementor-element-5a346c2{--content-width:1200px;}.elementor-2274 .elementor-element.elementor-element-fd81259{--width:44%;}.elementor-2274 .elementor-element.elementor-element-d64628b{--width:52%;}}/* Start custom CSS for container, class: .elementor-element-cc94886 *//* =========================================================
   RPMflex · Página Funcionalidades + Página Obrigado
   Onde colar: Elementor > Configurações da página (engrenagem)
   > Avançado > CSS personalizado. Use o MESMO CSS nas duas páginas.
   Tudo fica dentro da classe .rpmf para não afetar o resto do site.
   A fonte Poppins já é carregada pelo tema do site.
   ========================================================= */

.rpmf, .rpmf * { box-sizing: border-box; }
.rpmf { font-family: 'Poppins', system-ui, 'Segoe UI', sans-serif; color: #000; font-size: 16px; font-weight: 400; line-height: 1.6; }
.rpmf a { color: #007149; }
.rpmf a:hover { color: #1B6149; }
.rpmf h1, .rpmf h2, .rpmf h3, .rpmf p { margin: 0; font-family: inherit; }
.rpmf-wrap { max-width: 1200px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }

/* Botões em pílula (mesmo padrão do site) */
.rpmf .rpmf-pill { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 28px; border-radius: 30px; font-family: inherit; font-weight: 500; font-size: 16px; text-decoration: none; white-space: nowrap; transition: background-color .2s; }
.rpmf .rpmf-pill--green { background: #007149; color: #fff; }
.rpmf .rpmf-pill--green:hover { background: #1B6149; color: #fff; }
.rpmf .rpmf-pill--white { background: #fff; color: #1B6149; }
.rpmf .rpmf-pill--white:hover { background: #E9F0ED; color: #1B6149; }
.rpmf .rpmf-pill--outline { background: transparent; color: #fff; box-shadow: inset 0 0 0 1px #fff; }
.rpmf .rpmf-pill--outline:hover { background: rgba(255,255,255,.1); color: #fff; }
.rpmf .rpmf-pill--light { background: #EBEBEB; color: #000; box-shadow: inset 0 0 0 1px #1B6149; }
.rpmf .rpmf-pill--light:hover { background: #E9F0ED; color: #000; }
.rpmf .rpmf-pill:focus-visible, .rpmf a:focus-visible { outline: 3px solid #42C397; outline-offset: 2px; }

/* Etiqueta */
.rpmf-tag { display: inline-block; padding: 6px 16px; border-radius: 25px; font-size: 14px; font-weight: 500; }
.rpmf-tag--dark { border: 1px solid #42C397; color: #42C397; }
.rpmf-tag--light { border: 1px solid #1B6149; background: rgba(27,97,73,.15); color: #1B6149; }

/* Topo (hero) */
.rpmf-hero { background: #134433; color: #fff; }
.rpmf-hero .rpmf-wrap { padding-top: 140px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 24px; align-items: flex-start; }
.rpmf-hero h1 { font-weight: 500; font-size: 48px; line-height: 1.2; letter-spacing: .01em; max-width: 900px; color: #fff; text-wrap: balance; }
.rpmf-hero h1 span { color: #42C397; }
.rpmf-hero p { font-size: 18px; font-weight: 300; max-width: 760px; color: #E9F0ED; }
.rpmf-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; }

/* Funcionalidades: índice fixo + cartões */
.rpmf-main { padding-top: 56px; padding-bottom: 24px; display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 48px; align-items: start; }
.rpmf-aside { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.rpmf-toc { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.rpmf-toc h2 { margin: 0 0 4px 12px; font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: #1B6149; }
.rpmf-toc-list { display: flex; flex-direction: column; gap: 2px; }
.rpmf-toc-list a { display: flex; gap: 10px; align-items: baseline; padding: 8px 12px; border-radius: 10px; text-decoration: none; color: #2b2b2b; font-size: 14px; line-height: 1.35; }
.rpmf-toc-list a span { color: #1B6149; font-weight: 500; min-width: 20px; }
.rpmf-toc-list a:hover { background: #E9F0ED; color: #1B6149; }
.rpmf-greencard { background: #1B6149; color: #fff; border-radius: 7px 7px 15px 15px; box-shadow: 5px 5px 10px rgba(0,0,0,.25); }
.rpmf-aside-cta { padding: 22px; display: flex; flex-direction: column; gap: 12px; }
.rpmf-aside-cta strong { font-weight: 500; font-size: 17px; line-height: 1.3; }
.rpmf-aside-cta span { font-size: 14px; font-weight: 300; color: #E9F0ED; }
.rpmf-aside-cta .rpmf-pill { min-height: 40px; padding: 0 20px; font-size: 15px; }

.rpmf-themes { display: flex; flex-direction: column; gap: 32px; min-width: 0; }
.rpmf-theme { border: 1px solid #C7D8D0; border-radius: 12px; overflow: hidden; scroll-margin-top: 110px; }
.rpmf-theme-head { background: #E9F0ED; padding: 24px 28px; display: flex; gap: 16px; align-items: flex-start; border-bottom: 1px solid #C7D8D0; }
.rpmf-num { flex: 0 0 auto; width: 40px; height: 40px; border-radius: 10px; background: #1B6149; color: #42C397; display: grid; place-items: center; font-weight: 500; font-size: 16px; }
.rpmf-theme-head h2 { font-weight: 500; font-size: 26px; line-height: 1.25; color: #1B6149; }
.rpmf-theme-head p { color: #4a5a54; font-weight: 300; font-size: 15px; }
.rpmf-feats { margin: 0; padding: 6px 28px 10px; list-style: none; }
.rpmf-feats li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px 0; border-top: 1px solid #E3EAE7; margin: 0; }
.rpmf-feats li:first-child { border-top: 0; }
.rpmf-feats svg { margin-top: 1px; }

.rpmf-midcta { padding: 32px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; }
.rpmf-midcta h2 { font-weight: 500; font-size: 26px; line-height: 1.25; color: #fff; }
.rpmf-midcta p { font-size: 16px; font-weight: 300; color: #E9F0ED; }

/* Seção do kit: coluna de texto (o formulário é o widget Form do Elementor) */
.rpmf-kit-text { display: flex; flex-direction: column; gap: 20px; }
.rpmf-kit-text .rpmf-tag { align-self: flex-start; }
.rpmf-kit-text h2 { font-weight: 500; font-size: 35px; line-height: 1.2; text-wrap: balance; }
.rpmf-kit-text h2 span { color: #1B6149; }
.rpmf-kit-text > p { font-size: 17px; font-weight: 300; }
.rpmf-steps { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 16px; }
.rpmf-steps li { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 14px; align-items: start; font-weight: 300; margin: 0; }
.rpmf-steps li b { width: 36px; height: 36px; border-radius: 10px; background: #1B6149; color: #42C397; display: grid; place-items: center; font-weight: 500; }
.rpmf-steps strong { font-weight: 500; }

/* Perguntas frequentes */
.rpmf-faq .rpmf-wrap { max-width: 880px; padding-top: 72px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 12px; }
.rpmf-faq h2 { margin-bottom: 12px; font-weight: 500; font-size: 35px; text-align: center; }
.rpmf-faq details { border: 1px solid #1B6149; border-radius: 12px; background: #fff; padding: 0 22px; }
.rpmf-faq details[open] { background: #E9F0ED; }
.rpmf-faq summary { cursor: pointer; list-style: none; padding: 18px 0; font-weight: 500; font-size: 17px; display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.rpmf-faq summary::-webkit-details-marker { display: none; }
.rpmf-faq summary::after { content: "+"; color: #007149; font-size: 24px; font-weight: 400; line-height: 1; }
.rpmf-faq details[open] summary::after { content: "–"; }
.rpmf-faq details p { margin: 0 0 18px; font-weight: 300; }

/* Chamada final */
.rpmf-final { background: #134433; color: #fff; }
.rpmf-final .rpmf-wrap { padding-top: 64px; padding-bottom: 64px; display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; }
.rpmf-final h2 { font-weight: 500; font-size: 35px; line-height: 1.2; color: #fff; text-wrap: balance; }
.rpmf-final h2 span { color: #42C397; }
.rpmf-final p { font-weight: 300; color: #E9F0ED; font-size: 17px; max-width: 640px; }
.rpmf-final .rpmf-actions { justify-content: center; }

/* Página de obrigado */
.rpmf-thanks .rpmf-wrap { max-width: 860px; padding-top: 140px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 22px; }
.rpmf-check { width: 56px; height: 56px; border-radius: 50%; background: #E9F0ED; border: 1.5px solid #42C397; display: grid; place-items: center; }
.rpmf-thanks h1 { font-weight: 500; font-size: 38px; line-height: 1.2; }
.rpmf-thanks h1 span { color: #1B6149; }
.rpmf-thanks .rpmf-lead { font-size: 17px; font-weight: 300; color: #4a5a54; }
.rpmf-files { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.rpmf-files li { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 16px; border: 1px solid #C7D8D0; border-radius: 12px; background: #F7FAF9; margin: 0; }
.rpmf-files .rpmf-ext { width: 52px; height: 52px; border-radius: 10px; background: #1B6149; color: #42C397; display: grid; place-items: center; font-size: 12px; font-weight: 600; letter-spacing: .04em; }
.rpmf-files strong { display: block; font-weight: 500; font-size: 16px; }
.rpmf-files small { display: block; font-size: 14px; font-weight: 300; color: #4a5a54; }
.rpmf-files .rpmf-pill { min-height: 42px; padding: 0 22px; font-size: 15px; }
.rpmf-next { padding: 28px; display: flex; flex-direction: column; gap: 10px; }
.rpmf-next strong { font-weight: 500; font-size: 20px; }
.rpmf-next p { font-weight: 300; color: #E9F0ED; }

/* Celular e tablet */
@media (max-width: 900px) {
  .rpmf-hero .rpmf-wrap, .rpmf-thanks .rpmf-wrap { padding-top: 120px; }
  .rpmf-hero h1 { font-size: 34px; }
  .rpmf-main { grid-template-columns: 1fr; gap: 28px; }
  .rpmf-aside { position: static; }
  .rpmf-toc-list { flex-direction: row; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; }
  .rpmf-toc-list a { white-space: nowrap; border: 1px solid #1B6149; background: rgba(27,97,73,.08); }
  .rpmf-aside-cta { display: none; }
  .rpmf-midcta { grid-template-columns: 1fr; }
  .rpmf-theme-head, .rpmf-feats { padding-left: 20px; padding-right: 20px; }
  .rpmf-files li { grid-template-columns: 44px minmax(0, 1fr); }
  .rpmf-files .rpmf-ext { width: 44px; height: 44px; }
  .rpmf-files .rpmf-pill { grid-column: 1 / -1; }
  .rpmf-thanks h1, .rpmf-kit-text h2, .rpmf-faq h2, .rpmf-final h2 { font-size: 28px; }
}

/* =========================================================
   FORMULÁRIO (widget Form do Elementor Pro)
   No widget: Avançado > Classes CSS = rpmf-form
   ========================================================= */
.rpmf-form { background: #fff; border: 1px solid #1B6149; border-radius: 12px; padding: 32px; box-shadow: 0 10px 30px rgba(19,68,51,.08); font-family: 'Poppins', system-ui, sans-serif; }
.rpmf-form .elementor-field-group { margin-bottom: 16px; }
.rpmf-form .elementor-field-label { font-weight: 500; font-size: 14px; color: #000; margin-bottom: 6px; }
.rpmf-form .elementor-field-textual,
.rpmf-form select.elementor-field { min-height: 48px; padding: 10px 14px; font-family: inherit; font-size: 15px; color: #000; background: #fff; border: 1px solid #B9CBC3 !important; border-radius: 10px !important; }
.rpmf-form .elementor-field-textual:focus,
.rpmf-form select.elementor-field:focus { outline: 3px solid #42C397; outline-offset: 1px; border-color: #1B6149 !important; }
.rpmf-form .elementor-field-type-acceptance label { font-size: 13px; font-weight: 300; color: #4a5a54; }
.rpmf-form .elementor-field-type-acceptance input { accent-color: #007149; width: 18px; height: 18px; }
.rpmf-form .elementor-button { width: 100%; min-height: 52px; border-radius: 30px !important; background: #007149 !important; color: #fff !important; font-family: inherit; font-weight: 500; font-size: 16px; }
.rpmf-form .elementor-button:hover { background: #1B6149 !important; }
.rpmf-form .elementor-message { font-size: 14px; }
.rpmf-form .elementor-message-danger, .rpmf-form .elementor-error .elementor-field-textual { color: #9B1C12; }
@media (max-width: 900px) { .rpmf-form { padding: 22px; } }/* End custom CSS */
/* Start custom CSS *//* =========================================================
   RPMflex · Página Funcionalidades + Página Obrigado
   Onde colar: Elementor > Configurações da página (engrenagem)
   > Avançado > CSS personalizado. Use o MESMO CSS nas duas páginas.
   Tudo fica dentro da classe .rpmf para não afetar o resto do site.
   A fonte Poppins já é carregada pelo tema do site.
   ========================================================= */

.rpmf, .rpmf * { box-sizing: border-box; }
.rpmf { font-family: 'Poppins', system-ui, 'Segoe UI', sans-serif; color: #000; font-size: 16px; font-weight: 400; line-height: 1.6; }
.rpmf a { color: #007149; }
.rpmf a:hover { color: #1B6149; }
.rpmf h1, .rpmf h2, .rpmf h3, .rpmf p { margin: 0; font-family: inherit; }
.rpmf-wrap { max-width: 1200px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }

/* Botões em pílula (mesmo padrão do site) */
.rpmf .rpmf-pill { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 28px; border-radius: 30px; font-family: inherit; font-weight: 500; font-size: 16px; text-decoration: none; white-space: nowrap; transition: background-color .2s; }
.rpmf .rpmf-pill--green { background: #007149; color: #fff; }
.rpmf .rpmf-pill--green:hover { background: #1B6149; color: #fff; }
.rpmf .rpmf-pill--white { background: #fff; color: #1B6149; }
.rpmf .rpmf-pill--white:hover { background: #E9F0ED; color: #1B6149; }
.rpmf .rpmf-pill--outline { background: transparent; color: #fff; box-shadow: inset 0 0 0 1px #fff; }
.rpmf .rpmf-pill--outline:hover { background: rgba(255,255,255,.1); color: #fff; }
.rpmf .rpmf-pill--light { background: #EBEBEB; color: #000; box-shadow: inset 0 0 0 1px #1B6149; }
.rpmf .rpmf-pill--light:hover { background: #E9F0ED; color: #000; }
.rpmf .rpmf-pill:focus-visible, .rpmf a:focus-visible { outline: 3px solid #42C397; outline-offset: 2px; }

/* Etiqueta */
.rpmf-tag { display: inline-block; padding: 6px 16px; border-radius: 25px; font-size: 14px; font-weight: 500; }
.rpmf-tag--dark { border: 1px solid #42C397; color: #42C397; }
.rpmf-tag--light { border: 1px solid #1B6149; background: rgba(27,97,73,.15); color: #1B6149; }

/* Topo (hero) */
.rpmf-hero { background: #134433; color: #fff; }
.rpmf-hero .rpmf-wrap { padding-top: 140px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 24px; align-items: flex-start; }
.rpmf-hero h1 { font-weight: 500; font-size: 48px; line-height: 1.2; letter-spacing: .01em; max-width: 900px; color: #fff; text-wrap: balance; }
.rpmf-hero h1 span { color: #42C397; }
.rpmf-hero p { font-size: 18px; font-weight: 300; max-width: 760px; color: #E9F0ED; }
.rpmf-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; }

/* Funcionalidades: índice fixo + cartões */
.rpmf-main { padding-top: 56px; padding-bottom: 24px; display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 48px; align-items: start; }
.rpmf-aside { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.rpmf-toc { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.rpmf-toc h2 { margin: 0 0 4px 12px; font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: #1B6149; }
.rpmf-toc-list { display: flex; flex-direction: column; gap: 2px; }
.rpmf-toc-list a { display: flex; gap: 10px; align-items: baseline; padding: 8px 12px; border-radius: 10px; text-decoration: none; color: #2b2b2b; font-size: 14px; line-height: 1.35; }
.rpmf-toc-list a span { color: #1B6149; font-weight: 500; min-width: 20px; }
.rpmf-toc-list a:hover { background: #E9F0ED; color: #1B6149; }
.rpmf-greencard { background: #1B6149; color: #fff; border-radius: 7px 7px 15px 15px; box-shadow: 5px 5px 10px rgba(0,0,0,.25); }
.rpmf-aside-cta { padding: 22px; display: flex; flex-direction: column; gap: 12px; }
.rpmf-aside-cta strong { font-weight: 500; font-size: 17px; line-height: 1.3; }
.rpmf-aside-cta span { font-size: 14px; font-weight: 300; color: #E9F0ED; }
.rpmf-aside-cta .rpmf-pill { min-height: 40px; padding: 0 20px; font-size: 15px; }

.rpmf-themes { display: flex; flex-direction: column; gap: 32px; min-width: 0; }
.rpmf-theme { border: 1px solid #C7D8D0; border-radius: 12px; overflow: hidden; scroll-margin-top: 110px; }
.rpmf-theme-head { background: #E9F0ED; padding: 24px 28px; display: flex; gap: 16px; align-items: flex-start; border-bottom: 1px solid #C7D8D0; }
.rpmf-num { flex: 0 0 auto; width: 40px; height: 40px; border-radius: 10px; background: #1B6149; color: #42C397; display: grid; place-items: center; font-weight: 500; font-size: 16px; }
.rpmf-theme-head h2 { font-weight: 500; font-size: 26px; line-height: 1.25; color: #1B6149; }
.rpmf-theme-head p { color: #4a5a54; font-weight: 300; font-size: 15px; }
.rpmf-feats { margin: 0; padding: 6px 28px 10px; list-style: none; }
.rpmf-feats li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px 0; border-top: 1px solid #E3EAE7; margin: 0; }
.rpmf-feats li:first-child { border-top: 0; }
.rpmf-feats svg { margin-top: 1px; }

.rpmf-midcta { padding: 32px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; }
.rpmf-midcta h2 { font-weight: 500; font-size: 26px; line-height: 1.25; color: #fff; }
.rpmf-midcta p { font-size: 16px; font-weight: 300; color: #E9F0ED; }

/* Seção do kit: coluna de texto (o formulário é o widget Form do Elementor) */
.rpmf-kit-text { display: flex; flex-direction: column; gap: 20px; }
.rpmf-kit-text .rpmf-tag { align-self: flex-start; }
.rpmf-kit-text h2 { font-weight: 500; font-size: 35px; line-height: 1.2; text-wrap: balance; }
.rpmf-kit-text h2 span { color: #1B6149; }
.rpmf-kit-text > p { font-size: 17px; font-weight: 300; }
.rpmf-steps { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 16px; }
.rpmf-steps li { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 14px; align-items: start; font-weight: 300; margin: 0; }
.rpmf-steps li b { width: 36px; height: 36px; border-radius: 10px; background: #1B6149; color: #42C397; display: grid; place-items: center; font-weight: 500; }
.rpmf-steps strong { font-weight: 500; }

/* Perguntas frequentes */
.rpmf-faq .rpmf-wrap { max-width: 880px; padding-top: 72px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 12px; }
.rpmf-faq h2 { margin-bottom: 12px; font-weight: 500; font-size: 35px; text-align: center; }
.rpmf-faq details { border: 1px solid #1B6149; border-radius: 12px; background: #fff; padding: 0 22px; }
.rpmf-faq details[open] { background: #E9F0ED; }
.rpmf-faq summary { cursor: pointer; list-style: none; padding: 18px 0; font-weight: 500; font-size: 17px; display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.rpmf-faq summary::-webkit-details-marker { display: none; }
.rpmf-faq summary::after { content: "+"; color: #007149; font-size: 24px; font-weight: 400; line-height: 1; }
.rpmf-faq details[open] summary::after { content: "–"; }
.rpmf-faq details p { margin: 0 0 18px; font-weight: 300; }

/* Chamada final */
.rpmf-final { background: #134433; color: #fff; }
.rpmf-final .rpmf-wrap { padding-top: 64px; padding-bottom: 64px; display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; }
.rpmf-final h2 { font-weight: 500; font-size: 35px; line-height: 1.2; color: #fff; text-wrap: balance; }
.rpmf-final h2 span { color: #42C397; }
.rpmf-final p { font-weight: 300; color: #E9F0ED; font-size: 17px; max-width: 640px; }
.rpmf-final .rpmf-actions { justify-content: center; }

/* Página de obrigado */
.rpmf-thanks .rpmf-wrap { max-width: 860px; padding-top: 140px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 22px; }
.rpmf-check { width: 56px; height: 56px; border-radius: 50%; background: #E9F0ED; border: 1.5px solid #42C397; display: grid; place-items: center; }
.rpmf-thanks h1 { font-weight: 500; font-size: 38px; line-height: 1.2; }
.rpmf-thanks h1 span { color: #1B6149; }
.rpmf-thanks .rpmf-lead { font-size: 17px; font-weight: 300; color: #4a5a54; }
.rpmf-files { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.rpmf-files li { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 16px; border: 1px solid #C7D8D0; border-radius: 12px; background: #F7FAF9; margin: 0; }
.rpmf-files .rpmf-ext { width: 52px; height: 52px; border-radius: 10px; background: #1B6149; color: #42C397; display: grid; place-items: center; font-size: 12px; font-weight: 600; letter-spacing: .04em; }
.rpmf-files strong { display: block; font-weight: 500; font-size: 16px; }
.rpmf-files small { display: block; font-size: 14px; font-weight: 300; color: #4a5a54; }
.rpmf-files .rpmf-pill { min-height: 42px; padding: 0 22px; font-size: 15px; }
.rpmf-next { padding: 28px; display: flex; flex-direction: column; gap: 10px; }
.rpmf-next strong { font-weight: 500; font-size: 20px; }
.rpmf-next p { font-weight: 300; color: #E9F0ED; }

/* Celular e tablet */
@media (max-width: 900px) {
  .rpmf-hero .rpmf-wrap, .rpmf-thanks .rpmf-wrap { padding-top: 120px; }
  .rpmf-hero h1 { font-size: 34px; }
  .rpmf-main { grid-template-columns: 1fr; gap: 28px; }
  .rpmf-aside { position: static; }
  .rpmf-toc-list { flex-direction: row; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; }
  .rpmf-toc-list a { white-space: nowrap; border: 1px solid #1B6149; background: rgba(27,97,73,.08); }
  .rpmf-aside-cta { display: none; }
  .rpmf-midcta { grid-template-columns: 1fr; }
  .rpmf-theme-head, .rpmf-feats { padding-left: 20px; padding-right: 20px; }
  .rpmf-files li { grid-template-columns: 44px minmax(0, 1fr); }
  .rpmf-files .rpmf-ext { width: 44px; height: 44px; }
  .rpmf-files .rpmf-pill { grid-column: 1 / -1; }
  .rpmf-thanks h1, .rpmf-kit-text h2, .rpmf-faq h2, .rpmf-final h2 { font-size: 28px; }
}

/* =========================================================
   FORMULÁRIO (widget Form do Elementor Pro)
   No widget: Avançado > Classes CSS = rpmf-form
   ========================================================= */
.rpmf-form { background: #fff; border: 1px solid #1B6149; border-radius: 12px; padding: 32px; box-shadow: 0 10px 30px rgba(19,68,51,.08); font-family: 'Poppins', system-ui, sans-serif; }
.rpmf-form .elementor-field-group { margin-bottom: 16px; }
.rpmf-form .elementor-field-label { font-weight: 500; font-size: 14px; color: #000; margin-bottom: 6px; }
.rpmf-form .elementor-field-textual,
.rpmf-form select.elementor-field { min-height: 48px; padding: 10px 14px; font-family: inherit; font-size: 15px; color: #000; background: #fff; border: 1px solid #B9CBC3 !important; border-radius: 10px !important; }
.rpmf-form .elementor-field-textual:focus,
.rpmf-form select.elementor-field:focus { outline: 3px solid #42C397; outline-offset: 1px; border-color: #1B6149 !important; }
.rpmf-form .elementor-field-type-acceptance label { font-size: 13px; font-weight: 300; color: #4a5a54; }
.rpmf-form .elementor-field-type-acceptance input { accent-color: #007149; width: 18px; height: 18px; }
.rpmf-form .elementor-button { width: 100%; min-height: 52px; border-radius: 30px !important; background: #007149 !important; color: #fff !important; font-family: inherit; font-weight: 500; font-size: 16px; }
.rpmf-form .elementor-button:hover { background: #1B6149 !important; }
.rpmf-form .elementor-message { font-size: 14px; }
.rpmf-form .elementor-message-danger, .rpmf-form .elementor-error .elementor-field-textual { color: #9B1C12; }
@media (max-width: 900px) { .rpmf-form { padding: 22px; } }
/* ALINHAMENTO COM O MENU DO SITE (mesma largura da home: 1140px) */
.rpmf-wrap { max-width: 1140px; padding-left: 10px; padding-right: 10px; }
.e-con:has(.rpmf-hero), .e-con:has(.rpmf-main), .e-con:has(.rpmf-faq),
.e-con:has(.rpmf-final), .e-con:has(.rpmf-thanks) {
  padding: 0 !important; margin: 0 !important; max-width: 100% !important;
  --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px;
}
#kit > .e-con-inner { max-width: 1140px !important; padding-left: 10px; padding-right: 10px; }
#kit > .e-con-inner > .e-con { padding: 0 !important; --padding-left: 0px; --padding-right: 0px; }
@media (max-width: 1180px) {
  .rpmf-wrap, #kit > .e-con-inner { padding-left: 20px; padding-right: 20px; }
}/* End custom CSS */