html {
    scroll-behavior: smooth;
  }

  :target:before {
    content: "";
    display: block;
    height: 95px;
    margin: -95px 0 0;
}

body {
    font-family: "proxima-nova", sans-serif;
    background-color: #143747;
    font-size: 18px;
    font-weight: normal;
    color: #1F2224;
    line-height: 1.5;
    margin: 0;
    overflow-x: hidden;
}

h1 {
    font-family: "sofia-pro", sans-serif;
    font-weight: 600;
    font-size: 1.6em;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 30px;
    position: relative;
}

h2, h3, h4 {
    font-family: "sofia-pro", sans-serif;
    line-height: 1;
    position: relative;
}

h2 {
    font-size: 35px;
}

h3 {
    font-size: 28px;
}

p {
    position: relative;
    line-height: 1.4;
}

.page-grid {
    max-width: 1170px;
    margin: 0 auto;
}

.btn {
    font-family: "sofia-pro", sans-serif;
    font-weight: 700;
    font-size: 19px;
    padding: 15px 60px;
    background-color: #E68C22;
    border-radius: 5px;
    color: #ffffff;
    text-decoration: none;
    display: block;
    width: fit-content;

}

.btn:hover {
    background-color: #D87E15;
    transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
}


/*/ Header /*/

header {
    background-color: #133443;
}

header .page-grid {
    padding: 0 15px;
}

header .left-side {
    display: inline-block;
    width: 50%;
}

header .right-side {
    display: inline-block;
    width: 49%;
    text-align: right;
}


nav {
    padding: 5px 0;
}

nav ul li {
    display: inline-block;
    font-weight: normal;
    font-size: 16px;
    padding: 15px;
}


nav ul li a {
    color: #D0E0F3;
    font-weight: normal;
    text-decoration: underline;
    transition: all .5s ease-in-out;
}

nav ul li a:active, nav ul li a:hover {
    color: #ffffff;
}


#logo {
    height: 27px;
    width: auto;
    padding: 30px 0;
}

.mobileOnly {
    display: none;
}



.reg-warp.page-grid {
    background: #ffffff;
    max-width: 900px;
    display: flex;
    margin: 50px auto;
    box-shadow: 10px 10px 40px rgb(0 0 0 / 0.16);
    border-radius: 10px;
}



.formWarp {
    width: 60%;
    max-width: 500px;
    display: inline-block;
}

.formWarp form {
    padding: 70px;
}

.imgWarp {
    background-image: url(../images/reg_img.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    width: 400px;
    display: inline-block;
    margin: 0;
    border-bottom-right-radius: 10px;
    border-top-right-radius: 10px;
    position: relative;
}


.textOnImage {
color: #ffffff;
text-align: center;
padding: 40px;
margin: 0;
position: absolute;
top: 50%;
transform: translateY(-50%);
}

.textOnImage h2 {
    margin-bottom: 4px;
    line-height: normal;
}

.textOnImage p {
    color: #D0E0F3;
    font-size: 1.17em;
    line-height: normal;
}




/* form starting stylings ------------------------------- */
.group{
    position:relative;
    margin-bottom:20px;
  }

  input{
    font-size: 15px;
    padding: 19px 12px 10px;
    display: block;
    width: 334px;
    line-height: normal;
    border: 1px solid #DEE4E6;
    border-radius: 3px;
  }
  input:focus 		{ outline:none; }

  .group.smallInput {
    display: inline-block;
    width: 170px;

}

.group.smallInput:nth-of-type(odd) {
    margin-right: 15px;
}

  .group.smallInput input {
    width: 144px;
}

input#Terms {
    display: inline-block;
    width: auto;
}


label#phoneLabel {
    left: 52px;
}


  /* LABEL ======================================= */
  label{
    color:#999;
    font-size:15px;
    font-weight:normal;
    position:absolute;
    pointer-events:none;
    left:12px;
    top:13px;
    transition:0.2s ease all;
    -moz-transition:0.2s ease all;
    -webkit-transition:0.2s ease all;
  }

  label.termText {
    position: relative;
    color: #636769;
    font-size: 14px;
    display: inline-block;
    width: auto;
    top: -2px;
    left: 0;
}

  /* active state */
  input:focus ~ label, input:valid ~ label,  label.labelFocused {
    top:5px;
    font-size:10px;
    color:#8E9091;
  }

  input#Terms:focus ~ label, input#Terms:valid ~ label{
    top:-2px;
    font-size:14px;
    color:#636769;
  }

  input[type="checkbox"]:checked {
    color: #ffffff;

  }

  form button.btn {
    border: 0;
    width: 100%;
    padding: 12px 0 12px;
    font-size: 17px;
}



#SignInPage h1, #resetPasswordPage h1 {
    text-align: left;
}

#resetPasswordPage h1 {
    margin-bottom: 10px;
}

#SignInPage .formWarp form, #resetPasswordPage .formWarp form {
      padding: 50px 70px 30px;
}

#SignInPage .reg-warp.page-grid, #resetPasswordPage .reg-warp.page-grid{
    max-width: 500px;
}

#SignInPage .formWarp, #resetPasswordPage .formWarp {
    width: 100%;
}

.regNow {
    margin: 0 70px 20px;
    padding-top: 20px;
    border-top: 1px solid #DEE4E6;
}

.regNow a {
    background: white;
    font-size: 15px;
    color: #1F2224;
    font-weight: normal;
    border: 1px solid #E68C22;
    text-align: center;
    width: 358px;
    display: block;
    padding: 14px 0;
    text-decoration: none;
    border-radius: 5px;
    text-transform: capitalize;
    transition: all .3s ease-in-out;

}

.regNow a:hover {
    color: #ffffff;
    background: #E68C22;
}

.regNow a span {
    text-decoration: underline;
}

a#forgotPassLink {
    font-size: 13px;
    color: #636769;
    text-decoration: none;
    margin-top: 11px;
    display: block;
    transition: all .5s ease-in-out;

}

a#forgotPassLink:hover {
    color: #1F2224;
    text-decoration: underline;
}


#resetPasswordPage .formContainer p {
    font-size: 16px;
    margin-bottom: 20px;
}

.backArea p {
    display: inline-block;
    font-size: 15px;
    padding: 0 10px;
    text-align: center;
}

.backArea {display: block;text-align: center;    margin-bottom: 30px;}

.backArea p a {
    color: #636769;
    text-decoration: none;
}

.backArea p a:hover {
    text-decoration: underline;
}

.registerNow {
    display: block;
    text-align: center;
    font-size: 16px;
}

.registerNow a {
    color: #ffffff;
    text-decoration: none;
}

.registerNow a span {
    text-decoration: underline;
    color: #e68c21;
}

#resetPasswordPage .formContainer p a {
    color: #E68C22;
}



@media (max-width:920px) {

    .reg-warp.page-grid {
        width: 80vw;
    }

    .formWarp form {
        padding: 50px 40px;
    }

    h1 {
        text-align: left;
        font-size: 30px;
    }

    h2 {
        font-size: 22px;
    }

    .textOnImage p {
        font-size: 18px;
    }

    .textOnImage {
        padding: 20px;
    }

    .formWarp {
        width: 100%;
        max-width: 50vw;
        display: inline-block;
    }

    .group.smallInput {
        width: 100%;
    }

    .group.smallInput input, .group input {
        width: 90%;
    }

    label.termText {
        font-size: 12px;
        width: 90%;
    }

    #SignInPage .formWarp, #resetPasswordPage .formWarp {
        max-width: none;
    }

}




@media (max-width: 767px) {

    #logo {
        height: 22px;
    }

    .reg-warp.page-grid {
        width: 90vw;
        display: block;
    }

    .formWarp form, #SignInPage .formWarp form, #resetPasswordPage .formWarp form {
        padding: 35px 25px;
    }

    h1 {
        text-align: left;
        font-size: 30px;
    }

    h2 {
        font-size: 22px;
    }

    .textOnImage p {
        font-size: 18px;
    }

    .textOnImage {
        padding: 20px;
    }

    .formWarp {
        width: 100%;
        max-width: none;
        display: block;
    }

    .imgWarp {
        display: block;
        width: 90vw;
        height: 200px;
        border-bottom-right-radius: 10px;
        border-top-right-radius: 0;
        border-bottom-left-radius: 10px;
    }

    label.termText {
        font-size: 15px;
        width: 87%;
    }

    .mobileOnly {
        display: inline-block;
    }

    header .right-side {
        width: 48%;
    }

    .desktopOnly {
        display: none;
    }

    .backArea {
        margin-top: -15px;
        padding-bottom: 20px;
        margin-bottom: -20px;
    }

    .regNow {
        margin: 0 25px;
        padding-top: 30px;
        padding-bottom: 30px;
        width: auto;
    }

    .regNow a {
        width: 100%;
    }

    .registerNow {
        padding-bottom: 50px;
    }

}

