/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}
audio, canvas, progress, video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
progress {
  vertical-align: baseline;
}
template, [hidden] {
  display: none;
}
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}
a:active, a:hover {
  outline-width: 0;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b, strong {
  font-weight: inherit;
  font-weight: bolder;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
mark {
  background-color: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
svg:not(:root) {
  overflow: hidden;
}
code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
button, input, select, textarea {
  font: inherit;
  margin: 0;
}
optgroup {
  font-weight: bold;
}
button, input {
  overflow: visible;
}
button, select {
  text-transform: none;
}
button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
textarea {
  overflow: auto;
}
[type="checkbox"], [type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
@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, .grid, .grid-2, .grid-3, .grid-4, .grid-5, .grid-6, .grid-7, .grid-8, .grid-9, .grid-10, .grid-11, .grid-12 {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.grid-1:after, .grid:after, .grid-2:after, .grid-3:after, .grid-4:after, .grid-5:after, .grid-6:after, .grid-7:after, .grid-8:after, .grid-9:after, .grid-10:after, .grid-11:after, .grid-12:after {
  content: " ";
  display: block;
  clear: both;
}
.grid-1 > .col {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}
.grid > .col-1 {
  width: 6.77966%;
  float: left;
  margin-right: 1.69492%;
}
.grid-2 > .col {
  width: 49.15254%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-2 {
  width: 15.25424%;
  float: left;
  margin-right: 1.69492%;
}
.grid-3 > .col {
  width: 32.20339%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-3 {
  width: 23.72881%;
  float: left;
  margin-right: 1.69492%;
}
.grid-4 > .col {
  width: 23.72881%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-4 {
  width: 32.20339%;
  float: left;
  margin-right: 1.69492%;
}
.grid-5 > .col {
  width: 18.64407%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-5 {
  width: 40.67797%;
  float: left;
  margin-right: 1.69492%;
}
.grid-6 > .col {
  width: 15.25424%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-6 {
  width: 49.15254%;
  float: left;
  margin-right: 1.69492%;
}
.grid-7 > .col {
  width: 12.83293%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-7 {
  width: 57.62712%;
  float: left;
  margin-right: 1.69492%;
}
.grid-8 > .col {
  width: 11.01695%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-8 {
  width: 66.10169%;
  float: left;
  margin-right: 1.69492%;
}
.grid-9 > .col {
  width: 9.60452%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-9 {
  width: 74.57627%;
  float: left;
  margin-right: 1.69492%;
}
.grid-10 > .col {
  width: 8.47458%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-10 {
  width: 83.05085%;
  float: left;
  margin-right: 1.69492%;
}
.grid-11 > .col {
  width: 7.55008%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-11 {
  width: 91.52542%;
  float: left;
  margin-right: 1.69492%;
}
.grid-12 > .col {
  width: 6.77966%;
  float: left;
  margin-right: 1.69492%;
}
.grid > .col-12 {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}
*, *:after, *:before {
  box-sizing: border-box;
}
body {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  background: #eceff2;
}
/* =========================================================
   ALTERAÇÕES PARA LAYOUT SPLIT-SCREEN
   ========================================================= */
body.page-background {
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  overflow: hidden;
}
/* Remove position absolute e transform do .page */
body.page-background .page {
  position: relative;
  top: auto;
  left: auto;
  transform: none;
  display: flex;
  flex-direction: row;
  height: 100vh;
  width: 100vw;
}
/* Coluna esquerda (2/3) com conteúdo e imagem de fundo */
.left-side {
  flex: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.left-side .background {
  background: transparent;
  width: 100%;
}
.left-side .content {
  padding: 50px 40px;
  text-align: center;
  position: relative;
  z-index: 2;
}
.left-side .content > h1 {
  color: white;
}
.left-side .content > p {
  font-size: 1.15em;
  line-height: 1.5em;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.25) 1px 1px 1px;
}
.left-side .content > p a {
  color: white;
  display: inline-block;
  text-decoration: none;
  border-bottom: 1px solid white;
}
/* Coluna direita (1/3) fundo branco com formulário centralizado */
.right-side {
  flex: 1;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  position: relative;
  z-index: 2;
}
/* Sobrescreve container-small para não usar float */
.container-small {
  background: none;
  box-shadow: none;
  overflow: visible;
  position: relative;
  max-width: 380px;
  width: 100%;
  margin: 0 auto;
  float: none;
}
.container-small.container-color {
  overflow: visible;
}
.container-small.container-color .background {
  display: none; /* conteúdo movido para .left-side no HTML */
}
/* Sobrescreve .form para não usar float e ficar centralizado */
.container-small .form {
  float: none;
  width: 100%;
  height: auto;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
  border-radius: 4px;
  padding: 40px;
  background: white;
  position: relative;
  margin: 0 auto;
}
/* Fim das alterações split-screen */
h1 {
  font-size: 2.4em;
  margin: 0 0 40px;
  color: #35404F;
}
h2 {
  font-size: 1.5em;
  margin: 0 0 40px;
  color: #35404F;
}
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 {
  height: 320px;
  padding: 80px 0;
  background: #35404F;
  text-align: center;
  z-index: 1;
}
.header .logo {
  position: relative;
  z-index: 2;
}
.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 > .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: #35404F;
}
.form > .control .input {
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 12px;
  width: 100%;
  transition: all .3s;
}
.form > .control .input:focus {
  box-shadow: 0 0 2px rgba(53, 64, 79, 0.25);
  background: #e6eaee;
  outline: none;
}
.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 #3b8683;
  background: #4AAAA5;
  color: white;
  font-weight: bold;
  border: 1px solid #4AAAA5;
  border-radius: 4px;
  display: inline-block;
  padding: 10px 16px;
  letter-spacing: 1px;
  width: auto;
  cursor: pointer;
  transition: all .3s;
}
.form > .submit .button.button-block {
  width: 100%;
}
.form > .submit .button:hover {
  background: #429894;
}
.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 .content {
  padding-left: 40px !important;
  padding-right: 40px !important;
}
.footer {
  margin-top: 40px;
  font-size: .75em;
}
.class-links a {
  text-decoration: none;
  color: #4aaaa5;
  font-family: inherit;
  display: block;
  margin-bottom: 5px;
}
.class-links a:hover,
.class-links a:active,
.class-links a:focus {
  color: #3b8683;
  font-weight: 500;
  text-decoration: underline;
}
#id_error_display_fixed {
  left: 50%;
  transform: translate(-50%, -50%);
  top: 50%;
  padding: 15px;
  background-color: #ECEFF2;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
}
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;
  margin-top: -5px;
}
a.scButton_default {
  position: absolute;
  right: 8px;
  top: 8px;
  font-size: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 2px 5px;
  text-decoration: none;
  color: #555;
}
/* =========================================================
   MEDIA QUERIES RESPONSIVAS PARA SPLIT-SCREEN
   ========================================================= */
@media (max-width: 1200px) {
  .container-small.container-background .background,
  .container-small.container-alpha .background,
  .container-small.container-color .background {
    width: 100%;
  }
  .container-small .form {
    width: 100%;
  }
  body.page-background .page {
    width: 100%;
  }
  body.page-background {
    overflow: scroll;
    width: auto;
    height: auto;
  }
  .container-small {
    max-width: 100%;
  }
  body.page-background .page {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    margin: auto;
  }
}
@media (max-width: 768px) {
  body.page-background .page {
    flex-direction: column;
  }
  .left-side {
    flex: none;
    height: 40vh;
    min-height: 220px;
  }
  .left-side .content {
    padding: 20px;
  }
  .right-side {
    flex: none;
    height: auto;
    min-height: 60vh;
    padding: 20px;
  }
  .container-small .content {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .form {
    padding: 20px;
  }
  body.page-background {
    overflow: inherit;
  }
}
@media (max-width: 767px) {
  body.page-background .page {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    margin: auto;
  }
  body.page-background {
    position: absolute;
  }
  .form.form-center {
    width: 320px;
  }
}