.elementor-25989 .elementor-element.elementor-element-e49d5df{--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-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri{writing-mode:inherit;}.elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri .elementor-heading-title{writing-mode:inherit;}.elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri div{writing-mode:inherit;}.elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > div, .elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > h1, .elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > h2, .elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > h3, .elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > h4, .elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > h5, .elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > h6, .elementor-25989 .elementor-element.elementor-element-d7f15c8.ob-harakiri > p{transform:rotate(0deg);}.elementor-25989 .elementor-element.elementor-element-d7f15c8 > div{text-indent:0px;mix-blend-mode:inherit;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.ob-postman blockquote{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor.ob-postman blockquote cite{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri{writing-mode:inherit;}.elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri .elementor-heading-title{writing-mode:inherit;}.elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri div{writing-mode:inherit;}.elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > div, .elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > h1, .elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > h2, .elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > h3, .elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > h4, .elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > h5, .elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > h6, .elementor-25989 .elementor-element.elementor-element-6cc2c87.ob-harakiri > p{transform:rotate(0deg);}.elementor-25989 .elementor-element.elementor-element-6cc2c87 > div{text-indent:0px;mix-blend-mode:inherit;}html, body{overflow-x:auto;}@media(min-width:768px){.elementor-25989 .elementor-element.elementor-element-e49d5df{--content-width:633px;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-text-editor{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor.ob-postman blockquote{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor.ob-postman blockquote cite{line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-text-editor{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor.ob-postman blockquote{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor.ob-postman blockquote cite{line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS for html, class: .elementor-element-c396e26 *//* RESET E ESTILOS GLOBAIS */
* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; }
body {
  background: #f7f7f7;
  color: #333;
  display: grid;
  place-items: center;
  padding: 32px 16px;
}

/* CARD PRINCIPAL */
.card {
  width: min(720px, 100%);
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 16px;
  box-shadow: 0 4px 25px rgba(0,0,0,0.07);
  overflow: hidden;
}

/* CABEÇALHO E BARRA DE PROGRESSO */
.header { padding: 20px 24px; border-bottom: 1px solid #eee; display: flex; align-items: center; gap: 16px; background: #fafafa; }
.header h1 { font-size: 18px; margin: 0; }
.sub { color: #666; font-size: 13px; }
.progress { width: 100%; height: 4px; background: #0001; border-radius: 999px; position: relative; overflow: hidden; }
.progress__bar { position: absolute; inset: 0 100% 0 0; background: #fe3e6d; transition: inset .4s cubic-bezier(0.4, 0, 0.2, 1); }

/* FORMULÁRIO E ETAPAS */
form { padding: 28px; }
.steps { display: grid; }
fieldset { margin: 0; padding: 0; border: 0; display: none; }
fieldset[aria-current="step"] { display: block; animation: fadeIn .5s ease-out; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: translateY(0); } }

/* LAYOUT GRIDS */
.grid { display: grid; gap: 24px; grid-template-columns: 1fr 1fr; margin-bottom: 24px; }
.grid-full { margin-bottom: 24px; }
@media (max-width: 720px) { .grid { grid-template-columns: 1fr; gap: 0; margin-bottom: 0; } .grid > div { margin-bottom: 24px; } }

/* LABELS, INPUTS E TEXTAREA */
label { display: block; font-weight: 600; margin-bottom: 8px; font-size: 14px; }
.help { color: #888; font-size: 13px; margin-top: 8px; }
input[type="text"], input[type="email"], input[type="tel"], select, textarea {
  width: 100%;
  padding: 16px;
  border-radius: 12px;
  border: 1px solid #ccc;
  background: #fff;
  color: #3b3b3b;
  font-size: 16px;
  transition: border-color .2s, box-shadow .2s;
}
input::placeholder, textarea::placeholder { color: #aaa; }
input:focus, select:focus, textarea:focus { border-color: #fe3e6d; box-shadow: 0 0 0 3px #fe3e6d30; outline: none; }
textarea { resize: vertical; }

/* GRUPOS DE PERGUNTAS */
.question-group { margin-bottom: 32px; }
.question-label { font-weight: 600; margin-bottom: 16px; font-size: 16px; color: #222; }

/* BOTÕES DE RÁDIO */
.radios, .radios-vertical { display: flex; gap: 16px; flex-wrap: wrap; }
.radios-vertical { flex-direction: column; }
.radio { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; position: relative; }
.radio input { position: absolute; opacity: 0; }
.radio .radio__control { width: 22px; height: 22px; border: 2px solid #bbb; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #fff; transition: all .2s; }
.radio .radio__control::after { content: ""; width: 12px; height: 12px; border-radius: 50%; background: #fe3e6d; transform: scale(0); transition: transform .15s ease-in-out; }
.radio input:checked + .radio__control { border-color: #fe3e6d; }
.radio input:checked + .radio__control::after { transform: scale(1); }
.radio .radio__label { color: #333; font-weight: 500; }

/* CHECKBOXES */
.checkboxes, .checkboxes-vertical, .checkboxes-grid { display: flex; flex-direction: column; gap: 12px; }
.checkboxes-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; }
@media(max-width: 500px) { .checkboxes-grid { grid-template-columns: 1fr; } }
.checkbox { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; position: relative; }
.checkbox input { position: absolute; opacity: 0; }
.checkbox .checkbox__control { width: 22px; height: 22px; border: 2px solid #bbb; border-radius: 6px; display: flex; align-items: center; justify-content: center; background: #fff; transition: all .2s; }
.checkbox .checkbox__control::after { content: '✔'; color: white; font-size: 14px; line-height: 1; transform: scale(0); transition: transform .15s ease-in-out; }
.checkbox input:checked + .checkbox__control { border-color: #fe3e6d; background-color: #fe3e6d; }
.checkbox input:checked + .checkbox__control::after { transform: scale(1); }
.checkbox .checkbox__label { color: #333; font-weight: 500; }

/* AÇÕES E BOTÕES */
.actions { display: flex; gap: 12px; justify-content: flex-end; margin-top: 16px; }
button { appearance: none; border: 0; cursor: pointer; padding: 18px 24px; border-radius: 12px; font-size: 16px; font-weight: 600; transition: background .2s, transform .1s; }
button:hover { transform: translateY(-2px); box-shadow: 0 4px 10px rgba(0,0,0,0.1); }
.btn-primary { background: #fe3e6d; color: #fff; width: 100%; }
.btn-primary:hover { background: #d1265a; }
.btn-ghost { background: transparent; border: 1px solid #ccc; color: #555; }
.btn-submit { display: flex; align-items: center; justify-content: center; gap: 8px; }
button:disabled { opacity: .6; cursor: not-allowed; transform: none; box-shadow: none; }

/* OUTROS */
.privacy-notice { font-size: 13px; color: #666; text-align: center; margin: 24px 0; }
.privacy-notice a { color: #fe3e6d; text-decoration: none; font-weight: 600; }
.status { font-size: 13px; color: #666; display: flex; align-items: center; gap: 10px; }
.status .dot { width: 8px; height: 8px; border-radius: 50%; background: #999; transition: background .3s; }
.status.ok .dot { background: #2ecc71; }
.status.err .dot { background: #ff6b6b; }
.divider { height: 1px; background: #eee; margin: 24px 0; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,1px,1px); border: 0; }/* End custom CSS */