.elementor-9902 .elementor-element.elementor-element-de803e8{--display:flex;--min-height:100vh;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9902 .elementor-element.elementor-element-de803e8.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-9902 .elementor-element.elementor-element-62bb83e{width:100%;max-width:100%;}.elementor-9902 .elementor-element.elementor-element-62bb83e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-9902 .elementor-element.elementor-element-62bb83e.elementor-element{--align-self:center;}@media(min-width:768px){.elementor-9902 .elementor-element.elementor-element-de803e8{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-62bb83e *//* ===================================================================
   REATIVAÇÃO COMERCIAL — Form CSS
   ===================================================================

   PARA USAR NO ELEMENTOR:
   1. Cole o CONTEÚDO INTEIRO deste arquivo em:
      Widget HTML > Avançado > CSS Personalizado
      (NÃO precisa fazer find/replace — usa .rcr-scope direto)
   2. As regras html/body do final do arquivo vão em:
      Configurações do Site > CSS Personalizado (NÃO no widget)

   PARA TESTE LOCAL:
   Funciona como está, basta abrir o form.html no browser.
   =================================================================== */


/* ---------- TOKENS ---------- */
.rcr-scope {
    /* paleta */
    --rcr-page-bg:        #eef0f5;
    --rcr-card-bg:        #fcfcfc;
    --rcr-text-primary:   #101828;
    --rcr-text-secondary: #475467;
    --rcr-text-tertiary:  #667085;
    --rcr-placeholder:    #98a2b3;
    --rcr-border:         #d0d5dd;
    --rcr-border-soft:    #e4e7ec;
    --rcr-accent:         #3d5a80;
    --rcr-accent-soft:    rgba(61, 90, 128, 0.16);
    --rcr-accent-tint:    rgba(61, 90, 128, 0.04);
    --rcr-error:          #b85450;
    --rcr-error-tint:     rgba(184, 84, 80, 0.08);
    --rcr-black:          #0c111d;
    --rcr-black-hover:    #1d2939;
    --rcr-success:        #6b8e6f;

    /* tipografia */
    --rcr-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    /* timing */
    --rcr-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
    --rcr-fast: 180ms;
    --rcr-base: 250ms;
    --rcr-slow: 320ms;

    /* layout */
    --rcr-radius-card: 20px;
    --rcr-radius-input: 8px;
    --rcr-radius-pill: 999px;
}


/* ---------- RESET / SCOPE ---------- */
.rcr-scope,
.rcr-scope * {
    box-sizing: border-box;
}

.rcr-scope {
    font-family: var(--rcr-font);
    font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11';
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: var(--rcr-text-primary);
    line-height: 1.5;
    /* garante que o scope ocupe a largura toda do widget Elementor */
    display: block;
    width: 100%;
}

.rcr-scope button {
    font-family: inherit;
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    color: inherit;
}

.rcr-scope input,
.rcr-scope select,
.rcr-scope textarea {
    font-family: inherit;
}


/* ---------- PAGE / CARD ---------- */
.rcr-scope.rcr-page,
.rcr-scope .rcr-page {
    background: var(--rcr-page-bg, #eef0f5);
    min-height: 100vh;
    min-height: 100svh;
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 24px 16px;
    box-sizing: border-box;
}

.rcr-scope .rcr-card {
    width: 100%;
    max-width: 760px;          /* literal, sem var — mais robusto */
    margin-left: auto;          /* fallback de centralização caso o flex não pegue */
    margin-right: auto;
    background: var(--rcr-card-bg, #fcfcfc);
    border-radius: var(--rcr-radius-card, 20px);
    box-shadow: 0 1px 3px rgba(16, 24, 40, 0.04),
                0 12px 32px rgba(16, 24, 40, 0.05);
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}


/* ---------- PROGRESS ---------- */
.rcr-scope .rcr-progress {
    height: 3px;
    width: 100%;
    background: var(--rcr-border-soft);
    position: relative;
}

.rcr-scope .rcr-progress__fill {
    height: 100%;
    background: var(--rcr-accent);
    width: 50%;
    transition: width var(--rcr-base) var(--rcr-ease);
}


/* ---------- HEADER ---------- */
.rcr-scope .rcr-header {
    padding: 24px 36px 16px;
}

.rcr-scope .rcr-step-indicator {
    font-size: 13px;
    font-weight: 500;
    color: var(--rcr-text-tertiary);
    letter-spacing: 0.01em;
    margin-bottom: 10px;
}

.rcr-scope .rcr-title {
    font-size: 28px;
    line-height: 1.25;
    font-weight: 600;
    color: var(--rcr-text-primary);
    margin: 0 0 6px 0;
    letter-spacing: -0.02em;
}

.rcr-scope .rcr-subtitle {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 400;
    color: var(--rcr-text-secondary);
    margin: 0;
}


/* ---------- STEPS (fade only) ---------- */
.rcr-scope .rcr-form {
    padding: 4px 36px 0;
    position: relative;
}

.rcr-scope .rcr-step {
    display: none;
    opacity: 0;
}

.rcr-scope .rcr-step.is-active {
    display: block;
    animation: rcr-fade-in var(--rcr-base) var(--rcr-ease) forwards;
}

/* step 2 precisa ser flex column pra que o `order` dos rows funcione */
.rcr-scope .rcr-step[data-step="2"].is-active {
    display: flex;
    flex-direction: column;
}

@keyframes rcr-fade-in {
    from { opacity: 0; }
    to   { opacity: 1; }
}


/* ---------- ROWS / FIELDS ---------- */
.rcr-scope .rcr-row {
    margin-bottom: 14px;
}

.rcr-scope .rcr-row:last-child {
    margin-bottom: 0;
}

.rcr-scope .rcr-row--2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.rcr-scope .rcr-field {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.rcr-scope .rcr-label {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
    color: var(--rcr-text-primary);
    margin-bottom: 6px;
}


/* ---------- INPUTS ---------- */
.rcr-scope .rcr-input,
.rcr-scope .rcr-select {
    width: 100%;
    height: 44px;
    padding: 10px 14px;
    background: transparent;
    border: 1px solid var(--rcr-border);
    border-radius: var(--rcr-radius-input);
    font-size: 15px;
    line-height: 1.5;
    color: var(--rcr-text-primary);
    transition: border-color var(--rcr-fast) var(--rcr-ease),
                box-shadow var(--rcr-fast) var(--rcr-ease);
    appearance: none;
    -webkit-appearance: none;
}

.rcr-scope .rcr-input::placeholder {
    color: var(--rcr-placeholder);
    font-weight: 400;
}

.rcr-scope .rcr-input:hover,
.rcr-scope .rcr-select:hover {
    border-color: #b3bac5;
}

.rcr-scope .rcr-input:focus,
.rcr-scope .rcr-select:focus,
.rcr-scope .rcr-input:focus-visible,
.rcr-scope .rcr-select:focus-visible {
    outline: none;
    border-color: var(--rcr-accent);
    box-shadow: 0 0 0 4px var(--rcr-accent-soft);
}

.rcr-scope .rcr-input.is-invalid,
.rcr-scope .rcr-select.is-invalid {
    border-color: var(--rcr-error);
    box-shadow: 0 0 0 4px var(--rcr-error-tint);
}


/* ---------- SELECT (chevron custom) ---------- */
.rcr-scope .rcr-select {
    padding-right: 38px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 16px;
    cursor: pointer;
}

/* placeholder de select */
.rcr-scope .rcr-select:invalid,
.rcr-scope .rcr-select option[value=""] {
    color: var(--rcr-placeholder);
}

.rcr-scope .rcr-select option {
    color: var(--rcr-text-primary);
    background: #ffffff;
}


/* ---------- PHONE (DDI + número) ---------- */
.rcr-scope .rcr-phone {
    position: relative;
    display: flex;
    gap: 8px;
    align-items: stretch;
}

.rcr-scope .rcr-phone__country {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 12px;
    height: 44px;
    background: transparent;
    border: 1px solid var(--rcr-border);
    border-radius: var(--rcr-radius-input);
    font-size: 14px;
    color: var(--rcr-text-primary);
    transition: border-color var(--rcr-fast) var(--rcr-ease),
                box-shadow var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-phone__country:hover {
    border-color: #b3bac5;
}

.rcr-scope .rcr-phone__country:focus-visible {
    outline: none;
    border-color: var(--rcr-accent);
    box-shadow: 0 0 0 4px var(--rcr-accent-soft);
}

.rcr-scope .rcr-phone__flag {
    font-size: 16px;
    line-height: 1;
}

.rcr-scope .rcr-phone__code {
    font-size: 13px;
    font-weight: 500;
    color: var(--rcr-text-tertiary);
    letter-spacing: -0.01em;
}

.rcr-scope .rcr-phone__ddi {
    font-size: 14px;
    font-weight: 500;
    color: var(--rcr-text-primary);
}

.rcr-scope .rcr-phone__chevron {
    width: 14px;
    height: 14px;
    color: var(--rcr-text-tertiary);
    margin-left: 2px;
    transition: transform var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-phone__country[aria-expanded="true"] .rcr-phone__chevron {
    transform: rotate(180deg);
}

.rcr-scope .rcr-phone__number {
    flex: 1 1 auto;
    min-width: 0;
}

/* dropdown de países */
.rcr-scope .rcr-phone__dropdown {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    width: 320px;
    max-width: 100%;
    max-height: 320px;
    background: #ffffff;
    border: 1px solid var(--rcr-border);
    border-radius: 12px;
    box-shadow: 0 10px 32px rgba(16, 24, 40, 0.12);
    z-index: 10;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-4px);
    pointer-events: none;
    transition: opacity var(--rcr-fast) var(--rcr-ease),
                transform var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-phone__dropdown.is-open {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.rcr-scope .rcr-phone__search-wrap {
    padding: 10px;
    border-bottom: 1px solid var(--rcr-border-soft);
}

.rcr-scope .rcr-phone__search {
    width: 100%;
    height: 36px;
    padding: 8px 10px 8px 32px;
    background: var(--rcr-page-bg);
    border: 1px solid transparent;
    border-radius: 6px;
    font-size: 14px;
    color: var(--rcr-text-primary);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='8'/><path d='m21 21-4.3-4.3'/></svg>");
    background-repeat: no-repeat;
    background-position: 10px center;
}

.rcr-scope .rcr-phone__search::placeholder {
    color: var(--rcr-placeholder);
}

.rcr-scope .rcr-phone__search:focus {
    outline: none;
    border-color: var(--rcr-accent);
    background-color: #ffffff;
}

.rcr-scope .rcr-phone__list {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 6px;
    mask-image: linear-gradient(180deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%);
    -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%);
}

.rcr-scope .rcr-phone__option {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 14px;
    color: var(--rcr-text-primary);
    text-align: left;
    transition: background-color var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-phone__option:hover,
.rcr-scope .rcr-phone__option.is-focused {
    background: var(--rcr-accent-tint);
}

.rcr-scope .rcr-phone__option.is-selected {
    background: var(--rcr-accent-tint);
    font-weight: 500;
}

.rcr-scope .rcr-phone__option-name {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rcr-scope .rcr-phone__option-ddi {
    color: var(--rcr-text-tertiary);
    font-variant-numeric: tabular-nums;
}

.rcr-scope .rcr-phone__empty {
    padding: 16px;
    text-align: center;
    color: var(--rcr-text-tertiary);
    font-size: 13px;
}


/* ---------- CARDS DE PÚBLICO (radiogroup) ---------- */
.rcr-scope .rcr-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.rcr-scope .rcr-card-option {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    background: transparent;
    border: 1px solid var(--rcr-border);
    border-radius: var(--rcr-radius-input);
    text-align: left;
    transition: border-color var(--rcr-fast) var(--rcr-ease),
                background-color var(--rcr-fast) var(--rcr-ease),
                box-shadow var(--rcr-fast) var(--rcr-ease);
    min-height: 56px;
}

.rcr-scope .rcr-card-option:hover {
    border-color: #b3bac5;
    background: rgba(16, 24, 40, 0.015);
}

.rcr-scope .rcr-card-option:focus-visible {
    outline: none;
    border-color: var(--rcr-accent);
    box-shadow: 0 0 0 4px var(--rcr-accent-soft);
}

.rcr-scope .rcr-card-option[aria-checked="true"] {
    border-color: var(--rcr-accent);
    background: var(--rcr-accent-tint);
    box-shadow: 0 0 0 1px var(--rcr-accent) inset;
}

.rcr-scope .rcr-card-option__icon {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(16, 24, 40, 0.04);
    border-radius: 8px;
    color: var(--rcr-text-primary);
    transition: background-color var(--rcr-fast) var(--rcr-ease),
                color var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-card-option[aria-checked="true"] .rcr-card-option__icon {
    background: var(--rcr-accent);
    color: #ffffff;
}

.rcr-scope .rcr-card-option__icon svg {
    width: 18px;
    height: 18px;
}

.rcr-scope .rcr-card-option__label {
    flex: 1 1 auto;
    font-size: 14px;
    font-weight: 500;
    color: var(--rcr-text-primary);
    line-height: 1.35;
}

.rcr-scope .rcr-card-option__check {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rcr-accent);
    opacity: 0;
    transform: scale(0.7);
    transition: opacity var(--rcr-fast) var(--rcr-ease),
                transform var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-card-option__check svg {
    width: 18px;
    height: 18px;
}

.rcr-scope .rcr-card-option[aria-checked="true"] .rcr-card-option__check {
    opacity: 1;
    transform: scale(1);
}


/* ---------- COMPOSITE (UF + CRM) ---------- */
.rcr-scope .rcr-composite {
    display: flex;
    gap: 12px;
    align-items: stretch;
}

.rcr-scope .rcr-composite__uf {
    flex: 0 0 110px;
}

.rcr-scope .rcr-composite__crm {
    flex: 1 1 auto;
    min-width: 0;
}


/* ---------- ERRO INLINE POR FIELD ---------- */
.rcr-scope .rcr-error-msg {
    display: none;
    font-size: 13px;
    line-height: 1.4;
    color: var(--rcr-error);
    margin-top: 6px;
    animation: rcr-fade-in var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-field.is-invalid .rcr-error-msg {
    display: block;
}


/* ---------- FOOTER / BOTÕES ---------- */
.rcr-scope .rcr-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 36px 24px;
    margin-top: 4px;
}

.rcr-scope .rcr-footer__error {
    flex: 1 1 auto;
    text-align: center;
    font-size: 13px;
    color: var(--rcr-error);
    padding: 0 8px;
    animation: rcr-fade-in var(--rcr-fast) var(--rcr-ease);
}

.rcr-scope .rcr-footer__spacer {
    flex: 1 1 auto;
}

.rcr-scope .rcr-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 44px;
    padding: 0 22px;
    font-size: 14px;
    font-weight: 500;
    border-radius: var(--rcr-radius-pill);
    transition: background-color var(--rcr-fast) var(--rcr-ease),
                border-color var(--rcr-fast) var(--rcr-ease),
                box-shadow var(--rcr-fast) var(--rcr-ease),
                transform var(--rcr-fast) var(--rcr-ease);
    white-space: nowrap;
}

.rcr-scope .rcr-btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px var(--rcr-accent-soft);
}

.rcr-scope .rcr-btn--primary {
    background: var(--rcr-black);
    color: #ffffff;
    border: 1px solid var(--rcr-black);
}

.rcr-scope .rcr-btn--primary:hover {
    background: var(--rcr-black-hover);
    border-color: var(--rcr-black-hover);
}

.rcr-scope .rcr-btn--primary.is-ready {
    box-shadow: 0 6px 18px rgba(61, 90, 128, 0.28);
}

.rcr-scope .rcr-btn--primary.is-ready:focus-visible {
    box-shadow: 0 6px 18px rgba(61, 90, 128, 0.28),
                0 0 0 4px var(--rcr-accent-soft);
}

.rcr-scope .rcr-btn--primary.is-loading {
    pointer-events: none;
    color: transparent;
    position: relative;
}

.rcr-scope .rcr-btn--primary.is-loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 18px;
    margin: -9px 0 0 -9px;
    border: 2px solid rgba(255, 255, 255, 0.35);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: rcr-spin 0.65s linear infinite;
}

@keyframes rcr-spin {
    to { transform: rotate(360deg); }
}

.rcr-scope .rcr-btn--secondary {
    background: transparent;
    color: var(--rcr-text-primary);
    border: 1px solid var(--rcr-border);
}

.rcr-scope .rcr-btn--secondary:hover {
    background: rgba(16, 24, 40, 0.03);
    border-color: #b3bac5;
}


/* ---------- TELA DE SUCESSO ---------- */
.rcr-scope .rcr-success {
    padding: 56px 40px 64px;
    text-align: center;
    animation: rcr-fade-in var(--rcr-slow) var(--rcr-ease);
}

.rcr-scope .rcr-success__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    background: rgba(107, 142, 111, 0.12);
    border-radius: 50%;
    color: var(--rcr-success);
    margin-bottom: 20px;
}

.rcr-scope .rcr-success__icon svg {
    width: 28px;
    height: 28px;
}

.rcr-scope .rcr-success__title {
    font-size: 24px;
    font-weight: 600;
    color: var(--rcr-text-primary);
    margin: 0 0 8px 0;
    letter-spacing: -0.02em;
}

.rcr-scope .rcr-success__text {
    font-size: 15px;
    color: var(--rcr-text-secondary);
    margin: 0;
    line-height: 1.5;
}


/* ---------- "OUTRO" reveal ---------- */
.rcr-scope .rcr-reveal {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height var(--rcr-base) var(--rcr-ease),
                opacity var(--rcr-base) var(--rcr-ease),
                margin-top var(--rcr-base) var(--rcr-ease);
    margin-top: 0;
}

.rcr-scope .rcr-reveal.is-open {
    max-height: 120px;
    opacity: 1;
    margin-top: 16px;
}


/* ---------- VISUALMENTE ESCONDIDO (mas acessível) ---------- */
.rcr-scope [hidden],
.rcr-scope .is-hidden {
    display: none !important;
}


/* ---------- MOBILE ---------- */
@media (max-width: 640px) {
    .rcr-scope .rcr-page {
        padding: 16px 12px 32px;
    }

    .rcr-scope .rcr-header {
        padding: 28px 24px 20px;
    }

    .rcr-scope .rcr-form {
        padding: 4px 24px 0;
    }

    .rcr-scope .rcr-footer {
        padding: 24px 24px 28px;
    }

    .rcr-scope .rcr-title {
        font-size: 24px;
    }

    .rcr-scope .rcr-row--2col {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .rcr-scope .rcr-cards {
        grid-template-columns: 1fr;
    }

    .rcr-scope .rcr-phone__dropdown {
        width: 280px;
        max-height: 280px;
    }

    .rcr-scope .rcr-btn {
        padding: 0 18px;
    }
}


/* ---------- DESKTOP WIDE (≥1024px) ---------- */
/* Centraliza o card verticalmente em telas grandes pra não ficar
   "flutuando" no topo com vazio embaixo. Mantém max-width 760px.
   safe center previne corte caso card > viewport em zoom alto. */
@media (min-width: 1024px) {
    .rcr-scope.rcr-page,
    .rcr-scope .rcr-page {
        align-items: center;
        align-items: safe center;
        padding-top: 32px;
        padding-bottom: 32px;
    }
}


/* ===================================================================
   REGRAS GLOBAIS (body/html) — colar em Configurações do Site > CSS
   =================================================================== */

html, body {
    background: #eef0f5;
    overscroll-behavior-y: none;
}/* End custom CSS */