﻿html, body {
  height: 100%;
}

.page-container {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: stretch;
  height: 100%;
  min-height: 556px;
}

.hero {
  background-color: #d6001c;
  background-image: url(/images/login-hero.jpg);
  background-size: cover;
  /*background-repeat: no-repeat;
      background-position: top right;*/
  flex-grow: 1;
  height: 100%;
}

.form {
  width: 584px;
  max-width: 100vw;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background-color: #fff;
  border: 5px solid #fff;
  /* ReSharper disable once HexColorValueWithAlpha */
  /* ReSharper disable once SyntaxIsNotAllowed */
  box-shadow: inset 10px 0 6px #00000029;
}

.form-head {
  margin-top: 22px;
}

  .form-head .form-banner img {
    height: 60px;
  }

  .form-head .form-title {
    font-family: Termina !important;
    font-weight: bold;
    font-size: 30px;
    color: #0e1b43;
    margin-top: 33px;
  }

    .form-head .form-title:before {
      content: 'Customer Portal';
    }

.form-inner {
  max-width: fit-content;
  margin: 0 auto;
}

.fields {
  margin-top: 22px;
}

.v1.input-text input {
  width: 484px;
  height: 54px;
  padding: 7px 50px 6px !important;
  border-color: #707070 !important;
}

.terms {
  width: 484px;
  max-width: calc(100vw - 50px);
  text-align: left;
       }

.options {
  font-family: Termina !important;
  font-weight: bold;
  font-size: 14px;
  margin-top: 22px;
}

  .options .sep {
    margin: 0 12px;
  }

.login-button-container {
  margin-top: 20px;
}

.login-submit {
  width: 484px;
  height: 54px;
  background-color: #d6001c !important;
  border-color: #d6001c !important;
  font-size: 20px !important;
  max-width: calc(100vw - 50px);
}

  .login-submit:hover {
    background-color: #132048 !important;
    border-color: #132048 !important;
  }

.home-by {
  font-family: montserrat !important;
  font-size: 11px;
}

.footer {
  width: 484px;
  max-width: calc(100vw - 50px);
  text-align: right;
  margin-top: 22px;
}

.filler {
  flex-grow: 1;
}

.filler.bottom {
  flex-grow: 0;
}

.more-help
{
  margin-top: 20px;
  font-size: 80%;
}

.submit-msg {
  width: 484px;
  font-size: 13.5px;
  line-height: 150%;
  margin-top: -22px;
  margin-bottom: 33px;
  max-width: calc(100vw - 50px);
}

.request-account-dialog {
  max-width: 100% !important;
}

  .request-account-dialog .form-item {
    margin: 12px 0 0 0;
    float: left;
    width: 270px;
  }

  .request-account-dialog .user-level-form-item li {
    margin: 8px 0 0 10px;
  }

  .request-account-dialog .radio {
    height: 13px;
    width: 13px;
    background-image: url(/images/radio-sprite2.png);
    display: inline-block;
    margin-right: 2px;
  }

    .request-account-dialog .radio.selected {
      background-position: 0 -13px;
    }

  .request-account-dialog .form-item input[type=text],
  .request-account-dialog .form-item input[type=email],
  .request-account-dialog .form-item textarea,
  .request-account-dialog .form-item select {
    font-size: 12pt;
  }

  .request-account-dialog .location-id-form-item,
  .request-account-dialog .first-name-form-item {
    margin-right: 20px;
  }

  .request-account-dialog .required-form-item {
    font-style: italic;
    line-height: 150%;
  }

    .request-account-dialog .required-form-item hr {
      margin-top: 20px;
    }

  .request-account-dialog .submit-form-item {
    /*float: right;
    width: auto;*/
  }

  .request-account-dialog .wide-form-item {
    width: 460px;
    max-width: calc(100vw - 2.5em);
  }

  .request-account-dialog .form-item input[type=text],
  .request-account-dialog .form-item input[type=email],
  .request-account-dialog .form-item textarea {
    width: 100%;
    max-width: calc(100vw - 2.5em);
    padding: 4px;
  }

  .request-account-dialog .new-line-form-item {
    clear: both;
  }

  .request-account-dialog .error {
    background-color: #ffff60;
  }

  .request-account-dialog label {
    display: block;
    font-weight: 600;
    color: #666666;
    margin-bottom: 5px;
  }

    .request-account-dialog label span {
      font-weight: 400;
    }

  .request-account-dialog .all-stores-form-item label {
    display: inline-block;
    max-width: calc(100vw - 60px);
  }

  .request-account-dialog .request-account-location-id {
    padding: 4px;
  }

  .request-account-dialog .example-account {
    display: none;
    margin-top: 2px;
  }

@media only screen and (max-width: 999px) {
  .page-container {
    justify-content: center;
  }

  .form {
    box-shadow: none;
  }

  .hero {
    display: none;
  }
}

@media only screen and (max-width: 499px) {
  .form-head .form-banner img {
    height: 40px;
  }
}
