/* ===================================
   SLIDESHOW
=================================== */
.elementor-background-slideshow.swiper.swiper-fade.swiper-initialized.swiper-horizontal.swiper-pointer-events.swiper-rtl.swiper-watch-progress {
    border-radius: 0 0 56px 56px !important;
}

/* ===================================
   WPFORMS - BASE
=================================== */
.wpforms-field-container {
    font-family: 'Lato';
}
.wpforms-page-indicator-page-progress {
    background-color: #0c3eff !important;
}
span.wpforms-page-indicator-steps {
    font-family: 'Lato';
}

/* ===================================
   WPFORMS - MOBILE
=================================== */
@media only screen and (max-width: 768px) {
    /* Tamanhos de check/radio e ícones */
    #wpforms-conversational-form-page .wpforms-field-radio li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-multiple li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-checkbox li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-gdpr-checkbox li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-checkbox li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-image-choices-label:before,
    #wpforms-conversational-form-page .wpforms-icon-choices-label:after,
    #wpforms-conversational-form-page .wpforms-field-likert_scale tbody td label:after {
        height: 16px !important;
        width: 16px !important;
    }

    /* Remoção de font-size dentro do pseudo ao selecionar */
    #wpforms-conversational-form-page .wpforms-field-radio li:not([class*="-choices-item"]).wpforms-selected input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-multiple li:not([class*="-choices-item"]).wpforms-selected input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-checkbox li:not([class*="-choices-item"]).wpforms-selected input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-gdpr-checkbox li:not([class*="-choices-item"]).wpforms-selected input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-checkbox li:not([class*="-choices-item"]).wpforms-selected input[type="radio"] + label:before {
        font-size: 0 !important;
    }

    /* Label line-height */
    #wpforms-conversational-form-page .wpforms-field-radio li:not([class*="-choices-item"]) label,
    #wpforms-conversational-form-page .wpforms-field-payment-multiple li:not([class*="-choices-item"]) label,
    #wpforms-conversational-form-page .wpforms-field-payment-checkbox li:not([class*="-choices-item"]) label,
    #wpforms-conversational-form-page .wpforms-field-gdpr-checkbox li:not([class*="-choices-item"]) label,
    #wpforms-conversational-form-page .wpforms-field-checkbox li:not([class*="-choices-item"]) label {
        line-height: unset !important;
    }

    /* Posição do pseudo */
    #wpforms-conversational-form-page .wpforms-field-radio li:not([class*="-choices-item"]) input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-multiple li:not([class*="-choices-item"]) input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-checkbox li:not([class*="-choices-item"]) input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-gdpr-checkbox li:not([class*="-choices-item"]) input[type="radio"] + label:before,
    #wpforms-conversational-form-page .wpforms-field-checkbox li:not([class*="-choices-item"]) input[type="radio"] + label:before {
        top: 16px;
    }

    /* Altura e top unificados */
    #wpforms-conversational-form-page .wpforms-field-radio li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-multiple li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-checkbox li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-gdpr-checkbox li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-field-checkbox li:not([class*="-choices-item"]) label:before,
    #wpforms-conversational-form-page .wpforms-image-choices-label:before,
    #wpforms-conversational-form-page .wpforms-icon-choices-label:after,
    #wpforms-conversational-form-page .wpforms-field-likert_scale tbody td label:after {
        height: 16px !important;
        top: 16px;
    }

    /* Selecionado fixo */
    #wpforms-conversational-form-page .wpforms-field-radio li:not([class*="-choices-item"]).wpforms-selected label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-multiple li:not([class*="-choices-item"]).wpforms-selected label:before,
    #wpforms-conversational-form-page .wpforms-field-payment-checkbox li:not([class*="-choices-item"]).wpforms-selected label:before,
    #wpforms-conversational-form-page .wpforms-field-gdpr-checkbox li:not([class*="-choices-item"]).wpforms-selected label:before,
    #wpforms-conversational-form-page .wpforms-field-checkbox li:not([class*="-choices-item"]).wpforms-selected label:before {
        font-size: 0;
    }
}

/* ===================================
   WPFORMS - BOTÕES / INTERAÇÕES
=================================== */
#wpforms-conversational-form-page .wpforms-field-payment-coupon-button:hover,
#wpforms-conversational-form-page .wpforms-conversational-btn:hover,
#wpforms-conversational-form-page .wpforms-submit:hover,
#wpforms-conversational-form-page .wpforms-confirmation-container-wrapper button:hover,
#wpforms-conversational-form-page .wpforms-field-payment-coupon-button:focus,
#wpforms-conversational-form-page .wpforms-conversational-btn:focus,
#wpforms-conversational-form-page .wpforms-submit:focus,
#wpforms-conversational-form-page .wpforms-confirmation-container-wrapper button:focus {
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.15);
    background: #000 !important;
}
#wpforms-conversational-form-page .wpforms-field-payment-coupon-button,
#wpforms-conversational-form-page .wpforms-conversational-btn,
#wpforms-conversational-form-page .wpforms-submit,
#wpforms-conversational-form-page .wpforms-confirmation-container button,
#wpforms-conversational-form-page .wpforms-confirmation-container-full button {
    background-color: #0c3eff !important;
}

/* ===================================
   TEXTO / ÍCONES / HOVERS
=================================== */
label.input__checkbox_btn a {
    color: #000 !important;
    text-decoration: underline;
}
.wpcf7-submit {
    margin: 20px 0 !important;
}
.e-con-inner span {
    font-size: 1em !important;
    font-weight: 600;
}
.jet-tabs-icon svg {
    width: 2em !important;
    height: 2em !important;
}

/* STRONG hover colors */
strong.amarelo:hover { color: #FDB913; }
strong.laranja:hover { color: #FF6700; }
strong.azul:hover    { color: #007AFF; }
strong.roxo:hover    { color: #9649E8; }
strong.amarelo,
strong.laranja,
strong.azul,
strong.roxo {
    transition: .3s;
}

/* ===================================
   CATEGORIAS - SERVIÇOS (CARDS)
=================================== */
.categoria-servico-publicidade
  .elementor-element.elementor-element-0b7f60e.e-flex.e-con-boxed.e-con.e-parent.e-lazyloaded:hover {
    background: #C74A1B;
}
.categoria-servico-comportamento
  .elementor-element.elementor-element-0b7f60e.e-flex.e-con-boxed.e-con.e-parent.e-lazyloaded:hover {
    background: #C28B11;
}
.categoria-servico-concorrencia
  .elementor-element.elementor-element-0b7f60e.e-flex.e-con-boxed.e-con.e-parent.e-lazyloaded:hover {
    background: #631AB1;
}
.categoria-servico-marca-e-produto
  .elementor-element.elementor-element-0b7f60e.e-flex.e-con-boxed.e-con.e-parent.e-lazyloaded:hover {
    background: #1268C4;
}

/* Headings das categorias */
.categoria-servico-publicidade
  .elementor-element.elementor-element-df830ac.elementor-widget-mobile__width-auto.elementor-widget__width-auto.elementor-widget.elementor-widget-heading {
    background: #FF6710;
    border-radius: 24px;
}
.categoria-servico-comportamento
  .elementor-element.elementor-element-df830ac.elementor-widget-mobile__width-auto.elementor-widget__width-auto.elementor-widget.elementor-widget-heading {
    background: #FDB922;
    border-radius: 24px;
}
.categoria-servico-concorrencia
  .elementor-element.elementor-element-df830ac.elementor-widget-mobile__width-auto.elementor-widget__width-auto.elementor-widget.elementor-widget-heading {
    background: #9649E8;
    border-radius: 24px;
}
.categoria-servico-marca-e-produto
  .elementor-element.elementor-element-df830ac.elementor-widget-mobile__width-auto.elementor-widget__width-auto.elementor-widget.elementor-widget-heading {
    background: #017AFC;
    border-radius: 24px;
}

/* ===================================
   MENU / MEGA MENU
=================================== */
figure.elementor-image-box-img img {
    margin-top: 10px;
}
.btnComportamento,
.btnConcorrencia,
.btnPublicidade,
.btnMarca {
    box-sizing: border-box !important;
}
.jet-sub-mega-menu {
    background: unset !important;
    border: none !important;
    box-shadow: unset !important;
}

/* Submenus controlados por classe .botaoAtivo */
.subComportamento,
.subConcorrencia,
.subPublicidade,
.subMarca {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
}
.subComportamento.botaoAtivo,
.subConcorrencia.botaoAtivo,
.subPublicidade.botaoAtivo,
.subMarca.botaoAtivo {
    opacity: 1;
    visibility: visible;
}

/* Leia mais */
.leia_mais_texto { display: none; }
.leia_mais_button { cursor: pointer; }

/* ===================================
   FORM (CF7) - ACEITE / DROPDOWN COM CHECKBOX
=================================== */
.formularioRodape .wpcf7-acceptance input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    background-color: #fff;
    border: 2px solid #ccc;
    padding: 8px;
    border-radius: 5px;
    cursor: pointer;
    margin-right: 10px;
    position: relative;
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
}
.elementor-5656 .elementor-element.elementor-element-5162f28 .wpcf7 div.wpcf7-response-output {
    font-family: 'Lato';
}
.formularioRodape .wpcf7-acceptance input[type="checkbox"]::before {
    content: '';
    position: absolute;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    top: 2px;
    left: 6px;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.formularioRodape .wpcf7-acceptance input[type="checkbox"]:checked {
    background-color: #111;
    border-color: #111;
}
.formularioRodape .wpcf7-acceptance input[type="checkbox"]:checked::before {
    opacity: 1;
}
.formularioRodape .wpcf7-acceptance input[type="checkbox"]:hover {
    border-color: #999;
}
.formularioRodape .wpcf7-acceptance label {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-family: 'Lato';
    font-size: 14px;
}

/* Estados de botões genéricos */
[type=button]:focus,
[type=button]:hover,
[type=submit]:focus,
[type=submit]:hover,
button:focus,
button:hover {
    background-color: unset !important;
}

/* Validação CF7 */
span.wpcf7-not-valid-tip { display: none !important; }

/* Botão Submit (margem limpa para integração) */
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    margin: unset !important;
}

/* Hover (versão com !important) */
input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    background: #055ed1 !important;
    transition: .3s;
}

/* Variáveis para dropdown/checkbox */
:root {
    --dropdown-color: #FDB913;
    --checkbox-color: #FDB913;
}

/* Toggle dropdown visual */
.toggle-dropdown i {
    margin-right: 5px;
    transition: transform 0.3s ease;
}
.dropdown-checkbox-wrapper.open .toggle-dropdown i {
    transform: rotate(0deg);
}
.toggle-dropdown {
    background-color: white;
    color: black;
    padding: 0;
    font-size: 16px;
    cursor: pointer;
    border: none;
    display: inline-block;
    margin-top: 10px;
    transition: background-color 0.3s ease, color 0.3s ease;
}
.dropdown-checkbox-wrapper.open .toggle-dropdown {
    color: var(--dropdown-color);
    background-color: white;
}
.toggle-dropdown:hover {
    color: var(--dropdown-color);
}

/* Dropdown com checkboxes */
.dropdown-checkbox-wrapper .wpcf7-checkbox { display: none; }
.dropdown-checkbox-wrapper.open .wpcf7-checkbox {
    display: block;
    margin-top: 10px;
}
.wpcf7-checkbox input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    background-color: #fff;
    border: 2px solid #ccc;
    padding: 8px;
    border-radius: 5px;
    cursor: pointer;
    margin-right: 10px;
    position: relative;
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
}
.wpcf7-checkbox input[type="checkbox"]::before {
    content: '';
    position: absolute;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    top: 2px;
    left: 6px;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.dropdown-checkbox-wrapper br { display: none; }
.wpcf7-checkbox input[type="checkbox"]:checked {
    background-color: var(--checkbox-color);
    border-color: var(--checkbox-color);
}
.wpcf7-checkbox input[type="checkbox"]:checked::before { opacity: 1; }
.colunaDois br { display: none; }
.dropdown-checkbox-wrapper p { margin-block-end: -15px; }
.dropdown-checkbox-wrapper label {
    width: 100%;
    margin-bottom: 25px;
}
.wpcf7-checkbox input[type="checkbox"]:hover {
    border-color: var(--checkbox-color);
}
.wpcf7-checkbox span {
    display: block;
    cursor: pointer;
}

/* ===================================
   FORM - LAYOUT COLUNAS / CAMPOS
=================================== */
.formularioRodape {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.colunaDois input { margin: 5px 0; }
.colunaUm input {
    margin: 12px 0;
    background: #F7F7F7;
    font-family: 'Lato';
    padding: 16px;
    border: none;
    border-radius: 56px;
    font-size: 1em;
}
span.wpcf7-list-item-label a {
    color: #111;
    text-decoration: underline;
}
.colunaUm,
.colunaDois {
    width: 50%;
    padding: 2%;
}
span.passos {
    background: #878787;
    color: #fff;
    padding: 4px 16px;
    border-radius: 24px;
    font-weight: 600;
}
.wpcf7-list-item { margin: 0 2px !important; }
span.wpcf7-list-item {
    display: flex;
    align-items: center;
}

/* Dropdown ativo (reforço visual) */
.dropdown-checkbox-wrapper.open .toggle-dropdown {
    color: var(--dropdown-color);
    background-color: white;
    font-size: 1.1em;
    font-weight: 800;
}
.dropdown-checkbox-wrapper { font-family: 'Lato'; }
.dropdown-checkbox-wrapper .toggle-dropdown {
    font-size: 1.1em;
    font-weight: 800;
}

/* Submit full width + transições */
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    width: 100%;
    background: #191919;
    color: #fff;
    border: unset !important;
    transition: .3s;
}
/* Hover (segunda declaração, mantida) */
input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    background: #055ed1;
    transition: .3s;
}

/* Coluna direita bordas */
.colunaDois {
    border-left: 2px solid #eee;
    margin: 20px 0;
}

/* Disabled sem opacidade */
button[disabled],
html input[disabled] {
    opacity: unset !important;
}

/* Responsivo do form (<=768px) */
@media only screen and (max-width: 768px) {
    .colunaUm,
    .colunaDois {
        width: 100%;
    }
    .colunaDois {
        border-top: 2px solid #eee;
        border-left: unset;
        margin: unset;
    }
}

/* ===================================
   GERAL
=================================== */
body, html { overflow-x: hidden !important; }
strong, b { font-weight: 900; }
#jp-relatedposts { display: none !important; }

/* Filtros Mobile e botões genéricos */
.solucoesFiltroMobile select,
input[type=submit] {
    border-radius: 32px;
    margin: 20px;
    font-family: 'Lato';
    color: #191919;
    font-weight: 500;
    padding: 12px 18px !important;
}
.blogFiltroMobile select,
input[type=submit] {
    border-radius: 32px;
    margin: 20px;
    font-family: 'Lato';
    color: #191919;
    font-weight: 500;
    padding: 12px 18px !important;
}

/* Banner form */
.formBanner input#form-field-name { padding-left: 15px; }

/* Botão que aparece no hover do card .solucao */
.solucao:hover .btnPost {
    display: block !important;
    transition: ease-in-out .4s !important;
}
.btnPost {
    display: none;
    transition: .4s !important;
}

/* Search & Forms misc */
li.sf-field-taxonomy-categoria-de-vaga { font-family: lato; }
.elementor-field-type-acceptance a {
    color: #32373A !important;
    text-decoration: underline;
}
select.sf-input-select { font-family: lato; }
.elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper) {
    padding: 0;
}
.elementor-field-type-acceptance label {
    color: #32373A !important;
}
.elementor-field-type-acceptance { margin: 10px 0; }
.elementor-button-align-center .e-form__buttons,
.elementor-button-align-center .elementor-field-type-submit {
    justify-content: center;
    margin: 20px 0;
}
select.sf-input-select {
    font-family: lato;
    border: 1px solid #bbb;
    border-radius: 8px;
}

/* Abas / contato */
.abasContato p { text-align: center; }
.abasContato a { color: #191919; }

/* Redes sociais sticky margin */
.redesSociais.elementor-sticky--effects {
    margin-top: 6% !important;
}

/* Blog interna - hierarquia */
.blogInterna h2 { font-weight: 600 !important; font-size: 1.4em; }
.blogInterna ul { margin-bottom: 20px; }
.blogInterna h3 { font-weight: 600 !important; font-size: 1.3em; }
.blogInterna h4 { font-weight: 600 !important; font-size: 1.2em; }
.blogInterna h5 { font-weight: 600 !important; font-size: 1.1em; }
.blogInterna h6 { font-weight: 600 !important; font-size: 1.0em; }
.blogInterna a  { color: #055ED1; text-decoration: underline; }

/* Blocos coloridos por seção */
div#problemaInt { background-color: #6D00FF; }
div#problemaGeo { background-color: #FDB913; }
div#problemaMidia { background-color: #F25244; }
div#solucaoInt,
div#solucaoGeo,
div#solucaoMidia { background-color: #191919; }
div#entregaInt,
div#entregaGeo,
div#entregaMidia { background-color: #32373A; }
div#caseInt,
div#caseGeo,
div#caseMidia { background-color: #727272; }

/* Logo sizing */
.logoImg img {
    height: 100px !important;
    object-fit: contain !important;
    width: 80px !important;
}

/* Swiper next alignment */
.swiper-button-right { text-align: end; }

/* Links dentro do jet-toggle */
.jet-toggle__content-inner a {
    color: #fff !important;
}

/* ===================================
   FILTROS (DESKTOP) / BLOG CATEGORIAS
=================================== */
.solucoesFiltroDesk span.filters-item a {
    color: #fff !important;
    text-transform: uppercase;
    font-family: 'Lato';
    font-weight: 600;
    border: 1px solid #fff;
    padding: 10px;
    border-radius: 20px;
}
.categoriaBlog span.filters-item a {
    color: #999 !important;
    text-transform: uppercase;
    font-family: 'Lato';
    font-weight: 600;
    border: 1px solid #999;
    padding: 10px;
    border-radius: 20px;
}
.categoriaBlog span.filters-item,
.solucoesFiltroDesk span.filters-item {
    margin: 15px 0;
}
.categoriaBlog .filters-item.filter-active a,
.solucoesFiltroDesk .filters-item.filter-active a {
    background: #055ed1;
    border: 1px solid #055ED2;
    color: #fff !important;
}

/* ===================================
   MOBILE (AJUSTES DIVERSOS)
=================================== */
.menuMobile a.elementor-item,
.menuMobile a.elementor-sub-item {
    display: flex;
    justify-content: end;
}
.elementor-tab-content.plus-accordion-content {
    display: flex;
    align-items: center;
}
.tp-acc-hori .theplus-accordion-item.tp-acc-disable {
    pointer-events: all !important;
}

/* Ajuste específico <= 500px */
@media only screen and (max-width: 500px) {
    li.sf-field-taxonomy-categoria-de-vaga {
        text-align: center;
    }
}
