/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Alterar a família de fontes padrão em todos os navegadores (opinativo).
 * 2. Prevenir ajustes de tamanho de fonte após mudanças de orientação no IE e iOS.
 */

 html {
    font-family: sans-serif; /* 1 */
    -ms-text-size-adjust: 100%; /* 2 */
    -webkit-text-size-adjust: 100%; /* 2 */
  }
  
  /**
   * Remover a margem em todos os navegadores (opinativo).
   */
  
  body {
    margin: 0;
  }
  
  /* Definições de exibição HTML5
     ========================================================================== */
  
  /**
   * Adicionar a exibição correta no IE 9-.
   * 1. Adicionar a exibição correta no Edge, IE e Firefox.
   * 2. Adicionar a exibição correta no IE.
   */
  
  article,
  aside,
  details, /* 1 */
  figcaption,
  figure,
  footer,
  header,
  main, /* 2 */
  menu,
  nav,
  section,
  summary { /* 1 */
    display: block;
  }
  
  /**
   * Adicionar a exibição correta no IE 9-.
   */
  
  audio,
  canvas,
  progress,
  video {
    display: inline-block;
  }
  
  /**
   * Adicionar a exibição correta no iOS 4-7.
   */
  
  audio:not([controls]) {
    display: none;
    height: 0;
  }
  
  /**
   * Adicionar o alinhamento vertical correto no Chrome, Firefox e Opera.
   */
  
  progress {
    vertical-align: baseline;
  }
  
  /**
   * Adicionar a exibição correta no IE 10-.
   * 1. Adicionar a exibição correta no IE.
   */
  
  template, /* 1 */
  [hidden] {
    display: none;
  }
  
  /* Links
     ========================================================================== */
  
  /**
   * 1. Remover o fundo cinza em links ativos no IE 10.
   * 2. Remover lacunas no sublinhado de links no iOS 8+ e Safari 8+.
   */
  
  a {
    background-color: transparent; /* 1 */
    -webkit-text-decoration-skip: objects; /* 2 */
  }
  
  /**
   * Remover o contorno em links com foco quando também estão ativos ou com hover
   * em todos os navegadores (opinativo).
   */
  
  a:active,
  a:hover {
    outline-width: 0;
  }
  
  /* Semântica em nível de texto
     ========================================================================== */
  
  /**
   * 1. Remover a borda inferior no Firefox 39-.
   * 2. Adicionar a decoração de texto correta no Chrome, Edge, IE, Opera e Safari.
   */
  
  abbr[title] {
    border-bottom: none; /* 1 */
    text-decoration: underline; /* 2 */
    text-decoration: underline dotted; /* 2 */
  }
  
  /**
   * Prevenir a aplicação duplicada de `bolder` pela próxima regra no Safari 6.
   */
  
  b,
  strong {
    font-weight: inherit;
  }
  
  /**
   * Adicionar o peso de fonte correto no Chrome, Edge e Safari.
   */
  
  b,
  strong {
    font-weight: bolder;
  }
  
  /**
   * Adicionar o estilo de fonte correto no Android 4.3-.
   */
  
  dfn {
    font-style: italic;
  }
  
  /**
   * Corrigir o tamanho da fonte e margem em elementos `h1` dentro de contextos
   * `section` e `article` no Chrome, Firefox e Safari.
   */
  
  h1 {
    font-size: 2em;
    margin: 0.67em 0;
  }
  
  /**
   * Adicionar o fundo e cor corretos no IE 9-.
   */
  
  mark {
    background-color: #ff0;
    color: #000;
  }
  
  /**
   * Adicionar o tamanho de fonte correto em todos os navegadores.
   */
  
  small {
    font-size: 80%;
  }
  
  /**
   * Prevenir que elementos `sub` e `sup` afetem a altura da linha
   * em todos os navegadores.
   */
  
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  
  sub {
    bottom: -0.25em;
  }
  
  sup {
    top: -0.5em;
  }
  
  /* Conteúdo incorporado
     ========================================================================== */
  
  /**
   * Remover a borda em imagens dentro de links no IE 10-.
   */
  
  img {
    border-style: none;
  }
  
  /**
   * Ocultar o overflow no IE.
   */
  
  svg:not(:root) {
    overflow: hidden;
  }
  
  /* Agrupamento de conteúdo
     ========================================================================== */
  
  /**
   * 1. Corrigir a herança e escala do tamanho de fonte em todos os navegadores.
   * 2. Corrigir o dimensionamento de fonte `em` estranho em todos os navegadores.
   */
  
  code,
  kbd,
  pre,
  samp {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
  }
  
  /**
   * Adicionar a margem correta no IE 8.
   */
  
  figure {
    margin: 1em 40px;
  }
  
  /**
   * 1. Adicionar o box sizing correto no Firefox.
   * 2. Mostrar o overflow no Edge e IE.
   */
  
  hr {
    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
    overflow: visible; /* 2 */
  }
  
  /* Formulários
     ========================================================================== */
  
  /**
   * 1. Alterar propriedades de fonte para `inherit` em todos os navegadores (opinativo).
   * 2. Remover a margem no Firefox e Safari.
   */
  
  button,
  input,
  select,
  textarea {
    font: inherit; /* 1 */
    margin: 0; /* 2 */
  }
  
  /**
   * Restaurar o peso de fonte desfeito pela regra anterior.
   */
  
  optgroup {
    font-weight: bold;
  }
  
  /**
   * Mostrar o overflow no IE.
   * 1. Mostrar o overflow no Edge.
   */
  
  button,
  input { /* 1 */
    overflow: visible;
  }
  
  /**
   * Remover a herança de transformação de texto no Edge, Firefox e IE.
   * 1. Remover a herança de transformação de texto no Firefox.
   */
  
  button,
  select { /* 1 */
    text-transform: none;
  }
  
  /**
   * 1. Prevenir um bug do WebKit onde (2) destrói controles nativos `audio` e `video`
   *    no Android 4.
   * 2. Corrigir a incapacidade de estilizar tipos clicáveis no iOS e Safari.
   */
  
  button,
  html [type="button"], /* 1 */
  [type="reset"],
  [type="submit"] {
    -webkit-appearance: button; /* 2 */
  }
  
  /**
   * Remover a borda interna e padding no Firefox.
   */
  
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
  }
  
  /**
   * Restaurar os estilos de foco desfeitos pela regra anterior.
   */
  
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
  }
  
  /**
   * Alterar a borda, margem e padding em todos os navegadores (opinativo).
   */
  
  fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
  }
  
  /**
   * 1. Corrigir a quebra de texto no Edge e IE.
   * 2. Corrigir a herança de cor de elementos `fieldset` no IE.
   * 3. Remover o padding para que desenvolvedores não sejam pegos de surpresa
   *    ao zerar elementos `fieldset` em todos os navegadores.
   */
  
  legend {
    box-sizing: border-box; /* 1 */
    color: inherit; /* 2 */
    display: table; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */
    white-space: normal; /* 1 */
  }
  
  /**
   * Remover a barra de rolagem vertical padrão no IE.
   */
  
  textarea {
    overflow: auto;
  }
  
  /**
   * 1. Adicionar o box sizing correto no IE 10-.
   * 2. Remover o padding no IE 10-.
   */
  
  [type="checkbox"],
  [type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
  }
  
  /**
   * Corrigir o estilo do cursor dos botões de incremento e decremento no Chrome.
   */
  
  [type="number"]::-webkit-inner-spin-button,
  [type="number"]::-webkit-outer-spin-button {
    height: auto;
  }
  
  /**
   * 1. Corrigir a aparência estranha no Chrome e Safari.
   * 2. Corrigir o estilo de contorno no Safari.
   */
  
  [type="search"] {
    -webkit-appearance: textfield; /* 1 */
    outline-offset: -2px; /* 2 */
  }
  
  /**
   * Remover o padding interno e botões de cancelar no Chrome e Safari no OS X.
   */
  
  [type="search"]::-webkit-search-cancel-button,
  [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  
  /**
   * Corrigir o estilo de texto dos placeholders no Chrome, Edge e Safari.
   */
  
  ::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.54;
  }
  
  /**
   * 1. Corrigir a incapacidade de estilizar tipos clicáveis no iOS e Safari.
   * 2. Alterar propriedades de fonte para `inherit` no Safari.
   */
  
  ::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
  }
  @import "https://fonts.googleapis.com/css?family=Roboto:400,700";
  .container {
    width: 1240px;
    margin: 0 auto;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .container:after {
      content: " ";
      display: block;
      clear: both; }
  
  .textAlign-center {
    text-align: center; }
  
  .hide {
    display: none; }
  
  .grid-1 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-1:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-1 > .col {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; }
      .grid-1 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-1 {
      width: 6.77966%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-1:last-child {
        margin-right: 0; }
  
  .grid-2 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-2:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-2 > .col {
      width: 49.15254%;
      float: left;
      margin-right: 1.69492%; }
      .grid-2 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-2 {
      width: 15.25424%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-2:last-child {
        margin-right: 0; }
  
  .grid-3 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-3:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-3 > .col {
      width: 32.20339%;
      float: left;
      margin-right: 1.69492%; }
      .grid-3 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-3 {
      width: 23.72881%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-3:last-child {
        margin-right: 0; }
  
  .grid-4 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-4:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-4 > .col {
      width: 23.72881%;
      float: left;
      margin-right: 1.69492%; }
      .grid-4 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-4 {
      width: 32.20339%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-4:last-child {
        margin-right: 0; }
  
  .grid-5 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-5:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-5 > .col {
      width: 18.64407%;
      float: left;
      margin-right: 1.69492%; }
      .grid-5 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-5 {
      width: 40.67797%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-5:last-child {
        margin-right: 0; }
  
  .grid-6 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-6:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-6 > .col {
      width: 15.25424%;
      float: left;
      margin-right: 1.69492%; }
      .grid-6 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-6 {
      width: 49.15254%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-6:last-child {
        margin-right: 0; }
  
  .grid-7 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-7:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-7 > .col {
      width: 12.83293%;
      float: left;
      margin-right: 1.69492%; }
      .grid-7 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-7 {
      width: 57.62712%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-7:last-child {
        margin-right: 0; }
  
  .grid-8 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-8:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-8 > .col {
      width: 11.01695%;
      float: left;
      margin-right: 1.69492%; }
      .grid-8 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-8 {
      width: 66.10169%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-8:last-child {
        margin-right: 0; }
  
  .grid-9 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-9:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-9 > .col {
      width: 9.60452%;
      float: left;
      margin-right: 1.69492%; }
      .grid-9 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-9 {
      width: 74.57627%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-9:last-child {
        margin-right: 0; }
  
  .grid-10 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-10:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-10 > .col {
      width: 8.47458%;
      float: left;
      margin-right: 1.69492%; }
      .grid-10 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-10 {
      width: 83.05085%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-10:last-child {
        margin-right: 0; }
  
  .grid-11 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-11:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-11 > .col {
      width: 7.55008%;
      float: left;
      margin-right: 1.69492%; }
      .grid-11 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-11 {
      width: 91.52542%;
      float: left;
      margin-right: 1.69492%; }
      .grid > .col-11:last-child {
        margin-right: 0; }
  
  .grid-12 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid-12:after {
      content: " ";
      display: block;
      clear: both; }
    .grid-12 > .col {
      width: 6.77966%;
      float: left;
      margin-right: 1.69492%; }
      .grid-12 > .col:last-child {
        margin-right: 0; }
  
  .grid {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    .grid:after {
      content: " ";
      display: block;
      clear: both; }
    .grid > .col-12 {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; }
      .grid > .col-12:last-child {
        margin-right: 0; }
  
  *,
  *:after,
  *:before {
    box-sizing: border-box; }
  
  body {
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    background: #F3F4F6; }
    body.page-sidebar, body.page-background {
      background-repeat: no-repeat;
      background-size: cover;
      background-attachment: fixed;
      overflow: hidden;
      min-height: 100vh; }
      body.page-sidebar .page, body.page-background .page {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
      body.page-sidebar .content, body.page-background .content {
        padding: 50px 0; }
        body.page-sidebar .content > h1, body.page-background .content > h1 {
          color: white; }
        body.page-sidebar .content > p, body.page-background .content > p {
          font-size: 1.15em;
          line-height: 1.5em;
          color: white;
          text-shadow: rgba(0, 0, 0, 0.25) 1px 1px 1px; }
          body.page-sidebar .content > p a, body.page-background .content > p a {
            color: white;
            display: inline-block;
            text-decoration: none;
            border-bottom: 1px solid white; }
      body.page-sidebar:before, body.page-background:before {
        background: rgba(0, 0, 0, 0.4);
        content: "";
        display: block;
        height: 100%;
        width: 100%;
        left: 0;
        top: 0 !important;
        position: absolute;
        z-index: -1; }
    body.page-sidebar:before {
      top: -500px; }
    body.page-sidebar .form {
      box-shadow: none; }
      body.page-sidebar .form:after {
        background: white;
        content: "";
        display: block;
        height: 9999px;
        width: 9999px;
        left: 0;
        top: -500px;
        position: absolute;
        z-index: -1; }
  
  h1 {
    font-size: 2.4em;
    margin: 0 0 40px;
    color: #1F2937; }

  h2 {
    font-size: 1.5em;
    margin: 0 0 40px;
    color: #1F2937; }
  
  h4 {
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 0;
    opacity: .5; }
  
  hr {
    border: none;
    border-top: 3px solid rgba(221, 221, 221, 0.25);
    margin: 35px 0; }
  
  .header {
    min-height: 200px;
    padding: 40px 20px;
    background: #F3F4F6;
    text-align: center;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column; }
    .header .logo {
      position: relative;
      z-index: 2;
      max-width: 200px;
      width: 100%;
      height: auto; }
    .header img {
      max-width: 100%;
      height: auto; }
    .header.header-background {
      background-repeat: no-repeat;
      background-position: center center;
      background-size: cover;
      overflow: hidden;
      display: table;
      width: 100%;
      position: relative; }
      .header.header-background:after {
        background: rgba(53, 64, 79, 0.9);
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        display: block;
        width: 100%;
        height: 100%; }
  
  .form {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
    border-radius: 4px;
    padding: 40px;
    background: white;
    position: relative; }
    .form.form-center {
      width: 90%;
      max-width: 450px;
      margin: -40px auto 0;
      z-index: 1; }
    .form.form-alpha {
      background: none;
      box-shadow: none; }
      .form.form-alpha h2 {
        color: white; }
    .form > .control {
      margin-bottom: 25px; }
      .form > .control .label,
      .form > .control .input {
        display: block; }
      .form > .control .label {
        text-transform: uppercase;
        font-weight: bold;
        margin-bottom: 5px;
        font-size: 1em;
        color: #1F2937; }
      .form > .control .input {
        border: 1px solid #ddd;
        border-radius: 4px;
        padding: 12px;
        width: 100%;
        transition: all .3s;
        font-size: 16px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none; }
        .form > .control .input:focus {
          box-shadow: 0 0 2px rgba(37, 99, 235, 0.25);
          background: #EFF6FF;
          outline: none;
          border-color: #2563EB; }
        .form > .control .input::placeholder {
          color: #9CA3AF; }
        .form > .control .input.input-outline {
          background: none;
          color: white; }
          .form > .control .input.input-outline:focus {
            color: white; }
    .form > .submit {
      margin-top: 35px;
      margin-bottom: 20px;}
      .form > .submit .button {
        box-shadow: 0 3px 0px #1D4ED8;
        background: #2563EB;
        color: white;
        font-weight: bold;
        border: 1px solid #2563EB;
        border-radius: 4px;
        display: inline-block;
        padding: 12px 16px;
        letter-spacing: 1px;
        width: auto;
        cursor: pointer;
        transition: all .3s;
        font-size: 16px; }
        .form > .submit .button.button-block {
          width: 100%; }
        .form > .submit .button:hover {
          background: #1D4ED8;
          box-shadow: 0 3px 0px #1E40AF; }
        .form > .submit .button:active {
          transform: translateY(2px);
          box-shadow: 0 1px 0px #1D4ED8; }
  
  .sidebar {
    background: white;
    position: relative; }
    .sidebar:after {
      background: white;
      content: "";
      display: block;
      height: 9999px;
      width: 9999px;
      left: 0;
      position: absolute;
      top: 0;
      z-index: -1; }
    .sidebar .form {
      box-shadow: none;
      margin: 0 auto;
      padding: 80px 50px; }
  
  .container-small {
    background: #2563EB;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
    overflow: hidden;
    position: relative;
    max-width: 860px; }
    .container-small.container-background, .container-small.container-alpha, .container-small.container-color {
      overflow: hidden; }
      .container-small.container-background .background, .container-small.container-alpha .background, .container-small.container-color .background {
        background-size: cover;
        background-position: center left;
        background-repeat: no-repeat;
        float: left;
        width: 60%;
        height: auto;
        overflow: hidden;
        position: relative; }
        .container-small.container-background .background .content, .container-small.container-alpha .background .content, .container-small.container-color .background .content {
          position: relative;
          z-index: 2; }
    .container-small.container-alpha {
      border-radius: 4px;
      background: rgba(255, 255, 255, 0.25); }
    .container-small.container-background .background:after {
      background: rgba(0, 0, 0, 0.5);
      content: "";
      display: block;
      height: 9999px;
      width: 9999px;
      left: 0;
      position: absolute;
      top: 0;
      z-index: 1; }
    .container-small .form {
      float: right;
      width: 40%;
      height: auto; }
    .container-small .content {
      padding-left: 40px !important;
      padding-right: 40px !important; }
    .container-small .form {
      border-radius: 0;
      box-shadow: none; }
  
  .footer {
    margin-top: 40px;
    font-size: .75em;
    text-align: center;
    color: #6B7280;
    padding: 20px; }

  .page {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center; }
            
  
  /*menulinks*/
  .class-links a {
      text-decoration: none;
      color: #2563EB;
      font-family: inherit;
      display: block;
      margin-bottom: 5px;
      transition: color 0.3s ease; }
  .class-links a:hover,
  .class-links a:active,
  .class-links a:focus{
      color: #1D4ED8;
      font-weight: 500;
      text-decoration: underline; }

  /* Melhorias de acessibilidade */
  input:focus,
  button:focus {
    outline: 2px solid #2563EB;
    outline-offset: 2px; }

  /* Animações suaves */
  * {
    -webkit-tap-highlight-color: transparent; }
  /*fim-menulinks*/	  
  /*mensagem*/
  #id_error_display_fixed {
      left: 50%;
      transform: translateX(-50%);
      top: 10px;
      padding: 15px;
      background-color: #ECEFF2;
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
      position: fixed;
      z-index: 9999;
      border-radius: 6px;
  }
  td.scFormErrorMessage {
      padding: 25px 0 5px !important;
  }
  td.scFormErrorTitleFont{
      color: rgba(0, 0, 0, 0);
      position: relative;
      top: 8px;
  }
  td.scFormErrorTitleFont img {
      position: absolute;
      left: 50%;
      margin-left: -15px;
  }
  a.scButton_default {
      position: absolute;
      right: 15px;
      top: 15px;
  }
  td.scFormErrorTitleFont img {
      margin-top: -5px;
  }
  a.scButton_default {
      font-size: 10px;
      border: 1px solid #ccc;
      border-radius: 5px;
      padding: 2px 5px;
      text-decoration: none;
      color: #555;
      right: 8px;
      top: 8px;
  }
  
  /*fim mensagem*/

  /* Media Queries para Responsividade GovD */

  /* Telas muito pequenas (< 480px) */
  @media (max-width: 480px) {
    .header {
      min-height: 150px;
      padding: 30px 15px; }
      .header .logo {
        max-width: 150px; }
    .form.form-center {
      width: 95%;
      margin: -30px auto 0;
      padding: 25px 20px; }
      .form.form-center h2 {
        font-size: 1.3em;
        margin: 0 0 25px; }
    .form > .control .input {
      font-size: 16px;
      padding: 12px 10px; }
    .form > .submit .button {
      padding: 14px 16px;
      font-size: 16px; }
    .container-small.container-background .background,
    .container-small.container-alpha .background,
    .container-small.container-color .background {
      width: 100%; }
    .container-small .form {
      width: 100%;
      padding: 25px 20px; }
    body.page-sidebar .page,
    body.page-background .page {
      width: 95%;
      position: relative;
      top: 0;
      left: 0;
      transform: none;
      margin: 20px auto; }
    body.page-sidebar,
    body.page-background {
      overflow: auto;
      width: auto;
      height: auto; }
    body.page-sidebar .content,
    body.page-background .content {
      padding: 15px 0; }
    .container-small {
      max-width: 100%; }
    body.page-sidebar.bg-half-img .page,
    body.page-background.bg-half-img .page {
      width: 100%;
      background: rgba(0, 0, 0, 0.4); }
    body.page-sidebar.bg-half-img:before,
    body.page-background.bg-half-img:before {
      background: none; }
  }

  /* Tablets e mobiles (481px - 768px) */
  @media (min-width: 481px) and (max-width: 768px) {
    .header {
      min-height: 180px;
      padding: 35px 20px; }
      .header .logo {
        max-width: 180px; }
    .form.form-center {
      width: 90%;
      margin: -35px auto 0;
      padding: 30px 25px; }
    .container-small.container-background .background,
    .container-small.container-alpha .background,
    .container-small.container-color .background {
      width: 100%; }
    .container-small .form {
      width: 100%;
      padding: 30px 25px; }
    body.page-sidebar .page,
    body.page-background .page {
      width: 90%;
      position: relative;
      top: 0;
      left: 0;
      transform: none;
      margin: 30px auto; }
    body.page-sidebar,
    body.page-background {
      overflow: auto;
      width: auto;
      height: auto; }
    body.page-sidebar .content,
    body.page-background .content {
      padding: 20px 0; }
    .container-small {
      max-width: 100%; }
  }

  /* Laptops e tablets grandes (769px - 1024px) */
  @media (min-width: 769px) and (max-width: 1024px) {
    .header {
      min-height: 200px;
      padding: 40px 25px; }
      .header .logo {
        max-width: 200px; }
    .form.form-center {
      width: 85%;
      max-width: 400px;
      margin: -40px auto 0; }
    .container-small.container-background .background,
    .container-small.container-alpha .background,
    .container-small.container-color .background {
      width: 100%; }
    .container-small .form {
      width: 100%; }
    body.page-sidebar .page,
    body.page-background .page {
      width: 85%;
      position: relative;
      top: 0;
      left: 0;
      transform: none;
      margin: 40px auto; }
    body.page-sidebar,
    body.page-background {
      overflow: auto;
      width: auto;
      height: auto; }
    .container-small {
      max-width: 100%; }
  }

  /* Desktops grandes (> 1024px) */
  @media (min-width: 1025px) {
    .header {
      min-height: 220px;
      padding: 45px 30px; }
      .header .logo {
        max-width: 220px; }
    .form.form-center {
      width: 450px;
      margin: -50px auto 0; }
    body.page-sidebar .page,
    body.page-background .page {
      width: 450px; }
  }

  /* Media queries específicas para layouts com background */
  @media (max-width: 1200px) {
    body.page-sidebar.bg-half-img,
    body.page-background.bg-half-img {
      overflow: hidden;
      position: inherit; }
    body.page-sidebar .form.half-size {
      height: auto;
      width: 100%; }
    body.page-sidebar .form:after {
      height: auto;
      width: auto; }
    body.page-sidebar.page-background.bg-half-img {
      background-size: 151% !important; }
  }

  /* Ajustes para telas muito pequenas */
  @media (max-width: 320px) {
    .form.form-center {
      width: 100%;
      padding: 20px 15px; }
      .form.form-center h2 {
        font-size: 1.2em; }
    .form > .control .input {
      padding: 10px 8px; }
  }