@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
input, button {
  border-radius: 8px; }

html {
  font-size: 14px;
  color: #fff;
  min-height: 100%;
  background-color: #f4f5f0;
  background-image: url("../img/login/background.84095798d279.jpg");
  background-repeat: no-repeat;
  background-position: left bottom; }

a {
  color: #7e7e7e;
  text-decoration: none; }
  a:active {
    color: black; }
  a:hover {
    color: #4b4b4b; }
  a:visited {
    color: #fff; }

.container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  z-index: 1;
  height: 100%;
  width: 100%;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center; }
  .container:after {
    content: "";
    display: table;
    clear: both; }

.login-page {
  margin: 0;
  font-family: "Lato", sans-serif;
  width: 100%; }

.login-box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 65%; }

.logo a {
  width: 101%;
  height: 8em;
  display: block;
  background-image: url("../img/login/behive_logo_orange.2ca9f1682f82.png");
  background-repeat: no-repeat;
  background-position: center top; }
  @media screen and (max-width: 375px) {
    .logo a {
      background-size: 250px; } }
  @media screen and (max-width: 736px) {
    .logo a {
      background-size: 250px; } }

.login-msg {
  font-size: 2.5em;
  margin-bottom: 1.5em; }
  @media screen and (max-width: 375px) {
    .login-msg {
      margin-bottom: 0.7em;
      margin-top: 0em;
      font-size: 1.5em; } }

.has-error {
  color: #dd2828; }
  .has-error ul {
    list-style: none;
    padding: 0; }

label {
  color: #fff; }

input:-moz-read-only {
  background-color: #ebebe4; }

input:read-only {
  background-color: #ebebe4; }

input[type='text'],
input[type='email'],
input[type='password'],
button[type='submit'] {
  -webkit-appearance: none;
  border: 1px #fff solid;
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
  font-size: 1.5em;
  text-align: center;
  background: none; }
  @media screen and (max-width: 375px) {
    input[type='text'],
    input[type='email'],
    input[type='password'],
    button[type='submit'] {
      margin-bottom: 0.8em;
      font-size: 1.1em; } }
  @media screen and (max-width: 736px) {
    input[type='text'],
    input[type='email'],
    input[type='password'],
    button[type='submit'] {
      margin-bottom: 0.8em;
      font-size: 1.1em; } }

input:-ms-input-placeholder {
  color: #888; }

input::placeholder {
  color: #888; }

input[type='text'],
input[type='email'],
input[type='password'] {
  color: #fff; }

input[type='password']:focus::-webkit-input-placeholder {
  opacity: 0.4; }

input[type='password']:focus::-moz-placeholder {
  opacity: 0.4; }

button[type='submit'] {
  margin-top: 24px;
  margin-bottom: 20px;
  cursor: pointer;
  color: #fff;
  background-color: #c01679; }
  button[type='submit']:hover {
    background-color: #e62395; }
  button[type='submit']:active {
    background-color: #92115c; }

.form-group {
  position: relative;
  margin-bottom: 16px; }

.powered {
  display: block;
  position: absolute;
  bottom: 3em;
  right: 2em;
  width: 50%;
  height: 30px;
  background-image: url("../img/login/TPlogo_white.b6263d75d351.png");
  background-position: right bottom;
  background-repeat: no-repeat; }
  @media screen and (max-width: 375px) {
    .powered {
      display: none; } }
  @media screen and (max-width: 736px) {
    .powered {
      display: none; } }

.demo {
  z-index: 2;
  cursor: pointer;
  color: #fff;
  margin-top: 42px; }
  .demo a {
    font-size: 1.4rem;
    font-weight: bold; }
  @media screen and (max-width: 375px) {
    .demo {
      display: none; } }

.demo-form {
  display: none; }

@media screen and (max-width: 375px) {
  .auth-tool a {
    text-decoration: underline; } }

@media screen and (max-width: 736px) {
  .auth-tool a {
    text-decoration: underline; } }

.oauth {
  display: block;
  width: 100%;
  text-align: center;
  margin-top: 48px;
  padding: 6px 0;
  font-size: 14px; }
  .oauth a {
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 30px;
    color: #fff; }
    .oauth a:hover {
      color: #fff; }
  .oauth a.google {
    background-image: url("../img/login/logo_google.b03e89684515.png"); }
  .oauth a.transperfect {
    background-image: url("../img/login/logo_transperfect.441bcf52f0c5.png"); }
  @media screen and (max-width: 375px) {
    .oauth {
      font-size: 1.1rem; } }

.left {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  z-index: 2;
  height: 100%;
  width: 30%; }

.right {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-direction: column;
      flex-direction: column;
  z-index: 1;
  height: 100%;
  width: 56%; }

.title {
  font-size: 60px;
  font-weight: 700; }

.subtitle {
  font-size: 20px; }

/* Login */
@keyframes rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.gradient {
  z-index: 0;
  --height: 500px;
  --width: 600px;
  --speed: 50s;
  --easing: cubic-bezier(0.8, 0.2, 0.2, 0.8);
  width: var(--width);
  height: var(--height);
  filter: blur(calc(var(--width) / 5));
  background-image: linear-gradient(#4377ef, #7befd0);
  animation: rotate var(--speed) var(--easing) alternate infinite;
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%; }

body {
  background-color: #030c18;
  position: absolute;
  inset: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  overflow: hidden; }

@media (min-width: 1200px) and (max-width: 1599px) {
  .left {
    width: 80%; }
  .right {
    width: 56%; }
  .gradient {
    z-index: 0;
    --width: 750px; } }

@media (min-width: 1600px) {
  .left {
    width: 30%; }
  .right {
    width: 30%; } }

@media (min-width: 0px) and (max-width: 1199px) {
  .left {
    width: 100%; }
  .gradient {
    display: none; }
  .right {
    display: none; }
  .demo-form {
    display: block;
    position: absolute;
    bottom: 0;
    font-size: 20px; }
  .login-box {
    width: 80%; } }

@media (max-width: 736px) {
  .input-container i {
    transform: translateY(-78%); } }


