.elementor-4734 .elementor-element.elementor-element-aa7c6fb{--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-4734 .elementor-element.elementor-element-6df8b2f{width:var( --container-widget-width, 86.957% );max-width:86.957%;--container-widget-width:86.957%;--container-widget-flex-grow:0;}.elementor-4734 .elementor-element.elementor-element-6df8b2f.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-4734 .elementor-element.elementor-element-b28b95c{--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;--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-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );background-color:var( --e-global-color-accent );}.elementor-4734 .elementor-element.elementor-element-436490f .elementor-button{background-color:#141414;}.elementor-4734 .elementor-element.elementor-element-436490f.elementor-element{--align-self:flex-end;--order:-99999 /* order start hack */;}body:not(.rtl) .elementor-4734 .elementor-element.elementor-element-436490f{right:29%;}body.rtl .elementor-4734 .elementor-element.elementor-element-436490f{left:29%;}.elementor-4734 .elementor-element.elementor-element-436490f{top:57px;background-color:#28282800;}.elementor-4734 .elementor-element.elementor-element-06d34cd{--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-4734 .elementor-element.elementor-element-560ab2f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-6df8b2f */:root {
        --texto: #1f1f1f;
        --linha: #bdbdbd;
        --destaque: #0f172a;
        --texto-principal: "Merriweather Sans", sans-serif;
      }

      * {
        box-sizing: border-box;
      }
      html {
        font-size: 62.5% !important;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
      }

      body {
        margin: 0;
        padding: 0;
        background: #f9f9f9;
        color: var(--texto);
        font-family: var(--texto-principal);
        counter-reset: page;
      }

      img {
        max-width: 100%;
        height: auto;
      }

      .a4-page {
        width: 210mm;
        min-height: 297mm;
        margin: 12mm auto;
        padding: 14mm 22mm 16mm;
        background: #ffffff;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.14);
        position: relative;
      }

      .icone-customizado {
        color: #282828;
        font-size: 1.4rem;
      }

      .icone-assinatura {
        font-size: 2.5rem;
      }

      .contrato {
        font-family: var(--texto-principal);
        font-size: 1.4rem;
        line-height: 1.45;
      }

      .topo-contrato {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        border-bottom: 1px solid var(--linha);
        margin-bottom: 14px;
        padding-bottom: 8px;
      }

      .marca {
        font-family: var(--texto-principal);
        margin: 0;
        font-size: 2.6rem;
        font-weight: 800;
        letter-spacing: 0.3px;
        color: #282828;
      }

      .submarca {
        margin: 1px 0 0;
        font-size: 1.6rem;
        color: #444;
        text-transform: uppercase;
      }

      .texto-logo {
        font-size: 2.2rem;
        font-family: var(--texto-principal);
        font-weight: 800;
        letter-spacing: 0;
      }

      h1,
      h2,
      h3 {
        margin: 0;
        color: var(--texto);
        font-family: var(--texto-principal);
      }

      h1 {
        margin-top: 8px;
        font-size: 24px;
        text-align: left;
        text-transform: uppercase;
        letter-spacing: 0;
        font-weight: 800;
      }

      h2 {
        margin-top: 6px;
        margin-bottom: 14px;
        font-size: 14px;
        text-align: left;
        font-weight: 600;
      }

      h3 {
        margin-top: 14px;
        margin-bottom: 1rem;
        font-size: 16px;
        text-transform: capitalize !important;
        border-top: 1px solid #d7d7d7;
        padding-top: 2rem;
      }

      p {
        margin: 0 0 8px;
        text-align: justify;
        text-justify: inter-word;
        font-weight: 400;
        line-height: 2.4rem;
        font-size: 1.4rem;
        hyphens: auto;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        overflow-wrap: normal;
        word-break: normal;
      }

      .bloco-abertura {
        display: grid;
        grid-template-columns: 2.15fr 1fr;
        gap: 20px;
        align-items: stretch;
        margin-bottom: 10px;
      }

      .abertura-esquerda p {
        margin-bottom: 0;
      }

      .abertura-destaque {
        background: #f9f9f9;
        color: #282828;
        padding: 0 10px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        border-radius: 10px;
      }

      .abertura-destaque i {
        font-size: 30px;
        margin-bottom: 8px;
      }

      .abertura-destaque p {
        font-family: var(--texto-principal);
        margin: 0;
        text-align: justify;
        text-justify: inter-word;
        line-height: 1.6;
        font-size: 1.5rem;
        hyphens: auto;
        -webkit-hyphens: auto;
        overflow-wrap: normal;
        word-break: normal;
      }

      /* Informacoes bancarias */
      .dados-banco-ariscred {
        display: grid;
        grid-template-columns: minmax(0, 0.88fr) 168px;
        grid-template-rows: auto auto auto auto auto auto;
        column-gap: 1px;
        row-gap: 0;
        align-items: stretch;
        margin: 2rem 0 0;
        max-width: 100%;
      }

      .dados-banco-ariscred > .nome-banco {
        font-family: var(--texto-principal);
        text-transform: uppercase;
        grid-column: 1;
        grid-row: 1;
        margin: 0 0 5px;
        padding: 0;
        font-size: 14px;
        font-weight: 700;
        text-align: left;
        color: #111;
      }

      .dados-banco-ariscred > .agencia,
      .dados-banco-ariscred > .conta-corrente,
      .dados-banco-ariscred > .titular,
      .dados-banco-ariscred > .cnpj,
      .dados-banco-ariscred > .pix-cliente,
      .dados-banco-ariscred > .pix {
        grid-column: 1;
        font-family: var(--texto-principal) !important;
        display: flex;
        align-items: baseline;
        flex-wrap: nowrap;
        gap: 0.6rem;
        width: 100%;
        margin: 0;
        padding: 0.5rem 1.3rem;
        font-size: 13px;
        line-height: 1.8;
        color: #282828;
        border: 0;
      }

      .dados-banco-ariscred > .agencia > strong,
      .dados-banco-ariscred > .conta-corrente > strong,
      .dados-banco-ariscred > .titular > strong,
      .dados-banco-ariscred > .cnpj > strong,
      .dados-banco-ariscred > .pix-cliente > strong,
      .dados-banco-ariscred > .pix > strong {
        white-space: nowrap;
        flex: 0 0 auto;
      }

      .dados-banco-ariscred > .agencia {
        grid-row: 2;
        background: #e9e9e9;
      }

      .dados-banco-ariscred > .conta-corrente {
        grid-row: 3;
        background: #ffffff;
      }

      .dados-banco-ariscred > .titular {
        grid-row: 4;
        background: #e9e9e9;
      }

      .dados-banco-ariscred > .cnpj {
        grid-row: 5;
        background: #ffffff;
      }

      .dados-banco-ariscred > .pix-cliente {
        grid-column: 1;
        grid-row: 6;
        background: #e9e9e9;
      }
      
     .dados-banco-ariscred > .pix {
        grid-column: 1;
        grid-row: 6;
        background: #e9e9e9;
      }

      .dados-banco-ariscred > .pix-bloco {
        grid-row: 1 / 6;
        align-self: start;
        justify-self: end;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 7px;
        padding-top: 0;
        min-width: 150px;
      }

      .dados-banco-ariscred > .pix-bloco p {
        margin: 0;
        font-family: var(--texto-principal);
        text-align: center;
        line-height: 1.3rem;
        font-size: 1.4rem;
        font-weight: 700;
        margin-left: 60%;
        letter-spacing: 0.3px;
        text-transform: capitalize;
        color: #111;
      }

      .dados-banco-ariscred > .pix-bloco img {
        display: block;
        width: 158px;
        height: 158px;
        margin-left: 70%;
        object-fit: contain;
      }

      ul {
        margin: 6px 0 8px 18px;
        padding: 0;
      }

      li {
        margin-bottom: 4px;
      }

      .encerramento {
        margin-top: 14px;
      }

      .assinaturas {
        margin-top: 16px;
      }

      .assinatura-item {
        break-inside: avoid;
        page-break-inside: avoid;
        margin-bottom: 5.6rem;
      }

      .assinatura-item:last-child {
        margin-bottom: 0;
      }

      .assinatura-linha {
        width: 100%;
        border-bottom: 1.5px solid #111;
        margin-top: 29px;
      }

      .assinaturas p {
        font-family: var(--texto-principal);
        margin-top: 0.5rem;
        margin-bottom: 0;
        text-align: left;
        font-size: 1.4rem;
      }

      /* Campos editaveis */
      .campo-contrato {
        display: inline;
        vertical-align: baseline;
        min-width: 1.4ch;
        min-height: 1.4em;
        padding: 0 2px;
        margin: 0 1px;
        border-bottom: 1px solid rgba(40, 40, 40, 0.48);
        background: transparent;
        box-shadow: none;
        outline: none;
        font: inherit;
        line-height: inherit;
        color: inherit;
        white-space: pre-wrap;
        overflow-wrap: anywhere;
        word-break: break-word;
        cursor: text;
        pointer-events: auto;
        position: relative;
        z-index: 2;
        -webkit-user-select: text;
        user-select: text;
      }

      .campo-contrato:focus {
        outline: none;
        background: #fff5bf;
        border-bottom-color: #3f3f3f;
      }

      .campo-contrato:empty::before {
        content: attr(data-placeholder);
        color: rgba(31, 31, 31, 0.68);
        pointer-events: none;
      }

      .contrato strong {
        display: inline;
      }

      .contrato p,
      .contrato li {
        white-space: normal;
        overflow-wrap: normal;
        word-break: normal;
      }

      .valor-extenso {
        margin-left: 0.2rem;
      }

      /* Cronograma em caixas */
      .cronograma-meses {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        margin: 10px 0 12px;
      }

      .cronograma-mes {
        border: 1px solid #111;
        overflow: hidden;
        background: #fff;
      }

      .cronograma-mes-topo {
        background: #111;
        color: #fff;
        font-size: 1.25rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.2px;
        padding: 0.65rem 1rem;
        border-bottom: 1px solid #111;
      }

      .cronograma-mes-corpo {
        padding: 0.75rem 1rem;
        font-size: 1.35rem;
        line-height: 1.5;
        color: #111;
        background: #f2f2f2;
      }

      .cronograma-mes:nth-child(even) .cronograma-mes-corpo {
        background: #ffffff;
      }

      .cronograma-mes.cronograma-carencia .cronograma-mes-corpo {
        font-weight: 700;
        text-transform: capitalize;
      }

      .cronograma-total {
        margin: 10px 0 12px;
        border: 1px solid #111;
        background: #111;
        color: #fff;
        padding: 1rem 1.2rem;
        display: flex;
        flex-direction: column;
        gap: 0.4rem;
      }

      .cronograma-total .cronograma-total-titulo {
        font-size: 1.25rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.2px;
      }

      .cronograma-total .cronograma-total-valor {
        font-size: 1.45rem;
        font-weight: 700;
        line-height: 1.5;
      }

      .cronograma-total .cronograma-total-extenso {
        font-size: 1.25rem;
        line-height: 1.45;
        color: #f2f2f2;
      }

      @page {
        size: A4;
        margin: 0;
      }

      .pagina-numero {
        display: inline;
      }

      /* Rodape tecnico repetido em todas as paginas impressas */
      .rodape-impressao {
        display: none;
        font-size: 8pt;
        line-height: 1;
        color: #000;
      }

      .rodape-linha {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding-left: 12mm;
        padding-right: 12mm;
        white-space: nowrap;
      }

      .rodape-esquerda,
      .rodape-direita {
        background: transparent;
      }

      @media (max-width: 900px) {
        .dados-banco-ariscred {
          grid-template-columns: 1fr;
        }

        .dados-banco-ariscred > .pix-bloco {
          grid-column: 1;
          grid-row: auto;
          justify-self: start;
          margin-top: 8px;
        }

        .bloco-abertura {
          grid-template-columns: 1fr;
        }

        .cronograma-meses {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      }

      @media (max-width: 600px) {
        .cronograma-meses {
          grid-template-columns: 1fr;
        }
      }

      @media print {
        html,
        body {
          margin: 0 !important;
          padding: 0 !important;
          width: 210mm !important;
          min-height: 297mm !important;
          background: #ffffff !important;
          color: #1f1f1f !important;
          -webkit-print-color-adjust: exact !important;
          print-color-adjust: exact !important;
          overflow: visible !important;
        }

        body {
          counter-reset: page;
        }

        body * {
          -webkit-print-color-adjust: exact !important;
          print-color-adjust: exact !important;
          box-sizing: border-box !important;
        }

        #imprimir-doc {
          display: none !important;
          visibility: hidden !important;
        }

        .a4-page {
          width: 210mm !important;
          min-height: auto !important;
          margin: 0 !important;
          padding: 14mm 22mm 12mm !important;
          background: #ffffff !important;
          box-shadow: none !important;
          -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
          counter-increment: page;
          overflow: visible !important;
        }

        .topo-contrato,
        .bloco-abertura,
        .dados-banco-ariscred,
        .cronograma-meses,
        .encerramento,
        section {
          break-inside: avoid-page !important;
          page-break-inside: avoid !important;
        }

        .bloco-abertura {
          display: grid !important;
          grid-template-columns: 2.15fr 1fr !important;
          gap: 20px !important;
          align-items: stretch !important;
          margin-bottom: 10px !important;
        }

        .abertura-destaque {
          background: #f9f9f9 !important;
          color: #282828 !important;
          padding: 0 10px !important;
          display: flex !important;
          flex-direction: column !important;
          justify-content: center !important;
          border-radius: 10px !important;
          overflow: visible !important;
        }

        .abertura-destaque i {
          font-size: 30px !important;
          margin-bottom: 8px !important;
        }

        .abertura-destaque p {
          margin: 0 !important;
          line-height: 1.6 !important;
          font-size: 1.5rem !important;
        }

        .dados-banco-ariscred {
          display: grid !important;
          grid-template-columns: minmax(0, 0.88fr) 168px !important;
          grid-template-rows: auto auto auto auto auto auto !important;
          column-gap: 1px !important;
          row-gap: 0 !important;
          align-items: stretch !important;
          margin: 2rem 0 0 !important;
          max-width: 100% !important;
          overflow: visible !important;
        }

        .dados-banco-ariscred > .nome-banco {
          grid-column: 1 !important;
          grid-row: 1 !important;
        }

        .dados-banco-ariscred > .agencia {
          grid-column: 1 !important;
          grid-row: 2 !important;
          background: #e9e9e9 !important;
        }

        .dados-banco-ariscred > .conta-corrente {
          grid-column: 1 !important;
          grid-row: 3 !important;
          background: #ffffff !important;
        }

        .dados-banco-ariscred > .titular {
          grid-column: 1 !important;
          grid-row: 4 !important;
          background: #e9e9e9 !important;
        }

        .dados-banco-ariscred > .cnpj {
          grid-column: 1 !important;
          grid-row: 5 !important;
          background: #ffffff !important;
        }

        .dados-banco-ariscred > .pix-cliente {
          grid-column: 1 !important;
          grid-row: 6 !important;
          background: #e9e9e9 !important;
        }
        
        .dados-banco-ariscred > .pix {
          grid-column: 1;
          grid-row: 6;
          background: #e9e9e9 !important;
        }

        .dados-banco-ariscred > .pix-bloco {
          grid-column: 2 !important;
          grid-row: 1 / 7 !important;
          align-self: start !important;
          justify-self: end !important;
          display: flex !important;
          flex-direction: column !important;
          align-items: center !important;
          gap: 7px !important;
          padding-top: 0 !important;
          min-width: 150px !important;
          margin-top: 0 !important;
          overflow: visible !important;
        }

        .dados-banco-ariscred > .pix-bloco p {
          margin: 0 !important;
          margin-left: 60% !important;
          color: #111 !important;
        }

        .dados-banco-ariscred > .pix-bloco img {
          display: block !important;
          width: 158px !important;
          height: 158px !important;
          margin-left: 70% !important;
          object-fit: contain !important;
          filter: none !important;
        }

        .cronograma-mes-topo {
          background: #111 !important;
          color: #fff !important;
        }

        .cronograma-mes-corpo {
          background: #f2f2f2 !important;
          color: #111 !important;
        }

        .cronograma-mes:nth-child(even) .cronograma-mes-corpo {
          background: #ffffff !important;
        }

        .assinaturas {
          break-inside: auto !important;
          page-break-inside: auto !important;
        }

        /* Evita página em branco no final: remove espaçamentos extras (BRs) na área de assinaturas */
        .assinaturas br {
          display: none !important;
        }

        .encerramento + br,
        .encerramento + br + br,
        .encerramento + br + br + br,
        .encerramento + br + br + br + br {
          display: none !important;
        }

        .assinatura-item {
          break-inside: avoid-page !important;
          page-break-inside: avoid !important;
          margin-top: 6.4rem !important;
          margin-bottom: 8.4rem !important;
        }

        .assinatura-item:last-child {
          margin-bottom: 0 !important;
        }

        .assinatura-linha {
          border-bottom-color: #111 !important;
        }

        .campo-contrato {
          border-bottom: 0 !important;
          background: transparent !important;
          box-shadow: none !important;
          overflow: visible !important;
          white-space: pre-wrap !important;
          word-break: normal !important;
        }

        .campo-contrato:focus {
          background: transparent !important;
          border-bottom: 0 !important;
        }

        .campo-contrato:empty::before {
          color: rgba(31, 31, 31, 0.68) !important;
        }

        .cronograma-meses {
          break-inside: auto !important;
          page-break-inside: auto !important;
        }

        .cronograma-mes {
          break-inside: avoid !important;
          page-break-inside: avoid !important;
          -webkit-column-break-inside: avoid !important;
        }

        section,
        p,
        ul,
        li {
          break-inside: auto !important;
          page-break-inside: auto !important;
          orphans: 3;
          widows: 3;
        }

        h3 {
          break-after: avoid-page;
          page-break-after: avoid;
        }

        .rodape-impressao {
          display: block !important;
          position: fixed;
          left: 0;
          bottom: 8mm;
          width: 100%;
          pointer-events: none;
          z-index: 99999;
        }

        .pagina-numero::before {
          content: "Página ";
        }

        .pagina-numero::after {
          content: counter(page);
        }

        /* Inputs do bloco bancário (inseridos) */
        .dados-banco-ariscred input {
          border: 0 !important;
          outline: none !important;
          background: transparent !important;
          box-shadow: none !important;
          -webkit-appearance: none !important;
          appearance: none !important;
        }
      }

      /* Inputs do bloco bancário (inseridos) */
      .dados-banco-ariscred input {
        border: 0;
        outline: none;
        background: transparent;
        font: inherit;
        color: inherit;
        padding: 0;
        margin: 0;
        line-height: inherit;
      }

      .dados-banco-ariscred .linha-input {
        display: inline-flex;
        align-items: baseline;
        flex-wrap: nowrap;
        gap: 0;
        max-width: 100%;
      }

      /* Remove espaçamentos extras nos spans (inclui parênteses) */
      .dados-banco-ariscred .linha-input > span {
        margin: 0;
        padding: 0;
      }

      /* Espaço apenas depois do rótulo "Banco:" */
      .dados-banco-ariscred .linha-input > span:first-of-type {
        margin-right: 0.6rem;
      }

      .dados-banco-ariscred .input-banco-nome {
        min-width: 0;
        flex: 1 1 auto;
        max-width: 100%;
        margin-right: 0.25rem; /* aproxima o (000) do nome */
      }

      .dados-banco-ariscred .input-banco-codigo {
        width: 4ch;
        text-align: left;
      }

      .dados-banco-ariscred .input-bloco {
        flex: 1 1 auto;
        min-width: 0;
        width: auto;
        max-width: 100%;
        display: inline-block;
      }

      .dados-banco-ariscred .input-invalido {
        outline: 1px solid #b91c1c;
        background: #fff0f0;
      }

      /* Campo válido sem destaque verde */
      .dados-banco-ariscred .input-valido {
        outline: none;
        background: transparent;
      }

      @media (max-width: 900px) {
        .dados-banco-ariscred .input-bloco {
          width: 100%;
        }
      }

      /* Inputs das assinaturas (inseridos) */
      .assinaturas .assinatura-input {
        display: inline;
        vertical-align: baseline;
        min-width: 1.4ch;
        min-height: 1.4em;
        padding: 0 2px;
        margin: 0 1px;
        border: 0;
        border-bottom: none;
        background: transparent;
        box-shadow: none;
        outline: none;
        font: inherit;
        line-height: inherit;
        color: inherit;
        cursor: text;
        -webkit-appearance: none;
        appearance: none;
      }

      .assinaturas .assinatura-input:focus {
        outline: none;
        background: #fff5bf;
      }

      .assinaturas .assinatura-input::placeholder {
        color: rgba(31, 31, 31, 0.68);
      }

      .assinaturas .assinatura-input-nome {
        width: 20ch;
        max-width: 120%;
      }

      .assinaturas .assinatura-input-cpf {
        width: 18ch;
      }

      @media print {
        .assinaturas .assinatura-input {
          border-bottom: 0 !important;
          background: transparent !important;
        }
      }/* End custom CSS */