﻿@import url('https://fonts.googleapis.com/css?family=Raleway:500,600,700|Roboto:400,500|Open+Sans:400,600');
/* HTML Tags ----------------------------------- */
html, body, body form {
    margin: 0;
    padding: 0;
}

body, .buttons {
    background-color: #bbbbbb;
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 10pt;
    color: #787474;
    line-height: 20px;
}

/* Headings ----------------------------------- */
h1 {
    font-size: 21pt;
    font-family: 'Raleway', sans-serif;
    font-style: normal;
    font-weight: 600;
}

h2 {
    font-size: 15pt;
    font-family: 'Raleway', sans-serif;
    font-style: normal;
    font-weight: 600;
    margin: 5px 0px 20px 0px;
    line-height: 25px;
}

h3, h5 {
    font-size: 14pt;
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 400;
    margin-top: 30px;
    line-height: 30px;
}

h4 {
    font-size: 11pt;
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 500;
    margin-bottom: 0px;
}

h5 {
    margin-bottom: 0px;
}

p {
    margin-top: 6px;
    margin-bottom: 6px;
}

hr {
    border: 0;
    border-top: 1px solid #8c8c8c;
    border-bottom: 1px solid #fff;
}

/* Links styling ------------------------------------------*/
a.expandingblockwidetemplate, a.registerbutton, a#linkForgotPassword {
    font-style: normal;
    font-weight: 500;
    line-height: 35px;
    font-size: 12pt;
}

a.registerbutton {
    font-size: 14pt;
}

.registerbuttonWrapper {
    position: relative;
}

.forgottendropdown {
    width: 75% !important;
    max-width: 75% !important;
    margin: 15px 0px !important;
}

/* Banner Background ----------------------------------- */
#banner {
    background-image: url('Custom/Images/banner.png');
    background-repeat: no-repeat;
    border-bottom: none;
    height: 110px;
    width: 100%;
    padding: 0;
    margin: 0;
    max-width: 100%;
}

.sitename {
    float: right;
    position: relative;
    right: 80px;
    text-align: right;
    line-height: 105px;
    height: 105px;
    width: 600px;
    vertical-align: middle;
}

.sitename h1{
    margin: 0px;
}

.sitename h1 #lblWebsiteName{
    display:inline-block;
    vertical-align: middle;
    line-height: 30px;
}

#bannerright {
    position: absolute;
    right: 10px;
    top: 5px;
    display: none;
}

/* Overall layout -------------------------------------------*/
#topcontainer {
    background-color: #ffffff;
    width: 1280px;
    margin: 0 auto;
    height: 100%;
}

#content /* container surrounding containing three columns below */ {
    width: 100%;
    max-width: 1200px;
    padding: 0;
    background-color: #ffffff;
}

.column1 /* spacer on left*/ {
    display: inline-block;
    vertical-align: top;
    width: 10%;
}

.column2 /* main column with login fields and text below them */ {
    display: inline-block;
    vertical-align: top;
    width: 60%;
    max-width: 530px;
    margin-top: 100px;
}

.column3 /* Logos - right side content*/ {
    display: inline-block;
    vertical-align: top;
    width: 34%;
    border-left: 1px solid #8c8c8c;
    padding-left: 50px;
    margin-top: 100px;
}


/* Form layout -------------------------------------------- */
.formNewRow {
    display: block;
    padding-top: 3px;
    padding-bottom: 3px;
}

.formFieldName, .checkboxlabel {
    font-size: 11pt;
    font-weight: normal;
    display: block;
    padding-left: 0px;
    margin-bottom: 8px;
    width: 100%;
}

.formFieldValue {
    display: inline-block;
    vertical-align: middle;
}

#panelLogin > div > div:nth-child(2) > div.formFieldName {
    margin-top: 20px;
}


/* Form fields ---------------------------------------------------------------- */
.textbox {
    color: #2e7e2f;
    font-size: 16px;
    border: 2px solid #95989a;
    border-radius: 11px;
    height: 27px;
    -moz-box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    -webkit-box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    width: 500px;
    margin-bottom: 25px;
    -webkit-appearance: none;
}

.loginstyle {
    padding-left: 40px;
    width: 280px;
    margin-bottom: 0px;
}

.appendInput {
    background: linear-gradient(to left, #dddddd 50%,transparent 50%);
    background-size: 135%;
}

.buttons {
    font-size: 11pt;
    font-weight: 400;
    color: #ffffff;
    width: 100%;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    border-radius: 8px;
    border: none;
    display: inline-block;
    cursor: pointer;
    color: #ffffff;
    padding: 6px 24px;
    text-decoration: none;
    text-shadow: none;
    -moz-box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    -webkit-box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


#linkForgotPassword {
    position: relative;
    top: 38px;
    float: right;
    right: -211px;
}

a#linkForgotPassword, a#hforgottenpassword {
    font-family: 'Open Sans', sans-serif;
    font-style: italic;
    font-size: 10pt;
    line-height: 0px;
}

a#hforgottenpassword {
    color: #6cbb45;
}

#panelRegisterButton {
    text-align: left;
    position: absolute;
    margin-top: 120px;
}

#panelRememberMe {
    margin-top: -11px;
}

#panelLogin > div > div:nth-child(4) > div.formFieldValue {
    float: right;
    position: relative;
    right: 198px;
}

.usernameinputimage, .passwordinputimage {
    position: absolute;
    width: 25px;
    height: 25px;
    margin: -28px 0px 0px 6px;
}

_::-webkit-full-page-media, _:future, :root .usernameinputimage, .passwordinputimage {
    margin: -30px 0px 0px 6px;
}

.usernameinputimage {
    background: url(Custom/Images/face.svg) no-repeat 3px 2px;
    background-size: 20px;
}

.passwordinputimage {
    background: url(Custom/Images/lock.svg) no-repeat 3px 2px;
    background-size: 13px;
}


@media all and (-ms-high-contrast:none) {
    /* IE10 */
    *::-ms-backdrop, .passwordinputimage {
        background-size: 18px;
    }

    *::-ms-backdrop, #panelRememberMe {
        margin-top: -8px;
    }
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus input:-webkit-autofill,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    -webkit-transition-delay: 9999s !important;
    -webkit-transition: color 9999s ease-out, background-color transparant ease-out;
}

#lblMessage {
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    color: #787474;
    padding: 10px;
    background-color: #f9d0c8;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    display: block;
    width: 60%;
}

    #lblMessage:empty {
        display: none;
    }

.browserMessage {
    display: none;
}

html.ie8 .browserMessage, html.ie9 .browserMessage {
    display: block;
    margin-top: 20px;
    width: 350px;
    background-color: #FFF9C4;
    padding: 10px;
}

.errorfield[style*="inline"] {
    position: absolute;
    display: block !important;
    width: 80%;
    margin-top: 11px;
    line-height: 0px;
}

.formRequired[style*="inline"] {
    margin-top: -13px;
}

.floatrightbutton {
    float: right;
    margin-right: 25px;
}

/* Check box styling --------------------------------------------------- */
.showPassword {
    float: right;
    height: 19px;
    position: relative;
    right: 86px;
    top: 7px;
}

/* Safari 7.1+ */
_::-webkit-full-page-media, _:future, :root .showPassword {
    margin-left: -25px;
}


.showPassword input[type=checkbox] {
    position: relative;
    top: 0;
    width: 12px;
    height: 12px;
    outline: 2px solid #95989a;
    background-color: #ffffff;
}

.showPassword .checkboxlabel {
    font-size: 10pt;
    position: relative;
    top: -1px;
    left: -3px;
}

_::-webkit-full-page-media, _:future, :root #panelRememberMe > div.formFieldValue {
    margin-top: 20px;
}

/* IE fix for show password funtion */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    *::-ms-backdrop, .appendInput[type=text] {
        width: 55%;
        margin-right: -4px;
    }
}
/* ================================== */

input::-ms-clear, input::-ms-reveal {
    display: none;
}

.checkbox {
    width: 20px;
    position: relative;
    margin: 20px auto;
}

    .checkbox label {
        width: 18px;
        height: 18px;
        cursor: pointer;
        position: absolute;
        top: -3px;
        left: 0;
        background: #ffffff;
        border: 2px solid #95989a;
    }

.smallcbx label {
    width: 16px;
    height: 16px;
    border: 2px solid #c2c2c1;
}

html[data-useragent*='MSIE 10.0'] .smallcbx label {
    top: -10px;
}

.checkbox input[type=checkbox]:checked + label:after {
    opacity: 1;
}

.checkbox label:after {
    content: '';
    width: 9px;
    height: 5px;
    display: block !important;
    position: absolute;
    top: 3px;
    left: 3px;
    border: 3px solid #3698d3;
    background: transparent;
    opacity: 0;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.smallcbx label:after {
    top: 2px;
    left: 2px;
}

.checkboxlabel {
    margin: -20px 0px 0px 30px;
}

.checkbox {
    font-size: 11pt;
}

/* 404 error page ----------------------------- */
body.errorPage {
    background-color: white;
    line-height: normal;
    font-family: 'Open Sans', sans;
    font-style: normal;
    font-weight: 400;
}

body.errorPage a {
    color: #2e7e2f;
    font-weight: 600;
    text-decoration:none;
}

body.errorPage a:hover{
    color:#6cbb45;
}

.errorTopSection, .errorMiddleSection, .errorBottomSection {
    text-align: center;
}

.errorTopSection {
    width: 40%;
    margin: 0 auto;
    text-transform: uppercase;
    margin-top: 30px;
    color: #7AC143;
}

    .errorTopSection > div:nth-child(1) {
        color: #337E3E;
        font-size:95px;
    }

    .errorTopSection > div:nth-child(2) {
        font-size: 34px;
        position:relative;
        top:-20px;
    }

    .errorTopSection > div:nth-child(3) {
        font-size: 47px;
        position: relative;
        top: -38px;
        border-bottom: 1px solid #787474;
    }
    
.errorMiddleSection {
    position:relative;
    top:-20px;
}

    .errorMiddleSection > div:nth-child(1) {
        text-transform: uppercase;
        color: #219996;
        font-size: 25px;
    }

    .errorMiddleSection > div:nth-child(2) {
        position: relative;
        top: -8px;
        font-size: 18px;
    }

.errorBottomSection ul li {
    text-align: left;
}

.errorBottomSection > div:nth-child(1) {
    width:40%;
    margin:0 auto;
    border-top: 1px solid #787474;
    padding-top: 30px;
    font-weight:600;
    font-style:italic;
    font-size: 14px;
    margin-top:-10px;
}

.columnsContainer {
    position: relative;
    max-width: 765px;
    height: auto;
    margin: .5em auto;
    background-color: #f1f1f3;
    padding-bottom: 15px;
}

.leftColumn, .rightColumn {
    display:inline-block;
    width:55%;
}

.leftColumn {
    vertical-align: top;
    width: 44%;
}

.leftColumnImg {
    background: url("Custom/Images/sad-dog.png") no-repeat left center;
    background-position-y: -116px;
    background-size: 130%;
    position: absolute;
    height: auto;
    width: inherit;
    min-height: 100% !important;
}

/* END 404 Styling------------------------------*/

/* Messages ----------------------------------- */
.regulartxt {
    font-size: 13px;
    font-weight: bold;
}

.successtxt {
    font-size: 12pt;
}

.errortxt,
.errorsummary,
.errorfield,
.required {
    font-size: 10pt;
    font-weight: 400;
}

.required {
    vertical-align: top;
}

/* Expanding block if needed -------------------------------------------- */
.rogerwide {
    background-color: #e4f0f6;
    border: 1px solid #3698D3;
    margin: 0px;
    margin-left: 20px;
    padding: 10px;
    -moz-box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    -webkit-box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
    box-shadow: 5px 5px 10px -3px rgba(204, 204, 204, 0.35);
}

.expandicon {
    vertical-align: text-bottom;
    margin: 0px 10px 3px 1px;
}

#dforgottenpassword > p:nth-child(1) {
    font-weight: 500;
}

/* Partner Logo Styling ------------------------------------------------- */
.PartnerLogos {
    margin-top: 50px;
    width: 100%;
    display: none;
}

.pl1 {
    float: left;
    width: 230px;
    height: 100px;
}

.pl2 {
    float: right;
}

/* Smartphones (portrait and landscape) ----------- */
@media only screen and (min-device-width : 275px) and (max-device-width : 480px) {
    html, body {
        background-color: white;
    }

    /* Overall layout -------------------------------------------*/
    #content /* container surrounding containing three columns below */ {
        max-width: 480px;
        width: 90%;
        margin: 0 5%;
        display: block;
        text-align: center;
        background-color: #FFFFFF;
        padding-bottom: 25px;
    }

        #content.formLayout {
            margin-top: 100px;
        }

            #content.formLayout .formFieldValue {
                max-width: 100%;
            }

            #content.formLayout .textbox {
                max-width: 94%;
            }

    .column1 {
        display: none;
    }

    .column2 /* main column with login fields and text below them */ {
        width: 100%;
        margin: 0;
        text-align: left;
        top: 38px;
        position: relative;
    }

    .column3 {
        width: 100%;
        border: none;
        padding: 0;
        text-align: left;
    }

        .column3 > p {
            width: 100% !important;
            margin-bottom: 10px !important;
        }

        .column3 > h2:nth-child(5) {
            width: 101%;
        }

    #content.formLayout .column2 {
        margin-top: -65px;
        padding-bottom: 20px;
        display: block;
    }


    .pl1, .pl2 {
        float: none;
    }

    #topcontainer {
        width: 100%;
    }

    /* Banner --------------------------------------------------------- */

    #banner {
        background-size: 149%;
    }

    #bannerbackground {
        background: none;
        height: 50px;
    }

    #banner.formBanner {
        height: 130px;
    }

    /* Headings -------------------------------------------------------- */

    h1 {
        font-size: 18pt;
    }

    h2 {
        font-size: 14pt;
    }

    h3 {
        font-size: 13pt;
        margin-top: 3px;
    }

    .sitename {
        float: left;
        position: relative;
        top: 55px;
        left: 14px;
    }


    /* Form layout -------------------------------------------- */
    .form-wrapper {
        margin: -20px 0px 0px 0px;
        width: 280px;
        display: inline-block;
        text-align: left;
    }

    .showPassword {
        top: -26px;
        right: 15px;
    }

    /* Safari 9.0 (iOS Only) */
    @supports (-webkit-text-size-adjust:none) and (not (-ms-ime-align:auto)) and (not (-moz-appearance:none)) {

        #txtUserName, #txtPassword {
            max-width: 230px !important;
        }

        #RequiredFieldValidator3 {
            margin-top: -8px;
        }
    }

    #panelRememberMe {
        margin-top: -30px;
    }

    #RequiredFieldValidator3 {
        margin-top: -8px;
    }

    #panelLogin > div > div:nth-child(2) {
        margin-top: -50px;
    }

    #panelLogin > div > div:nth-child(4) > div.formFieldValue {
        width: 100%;
        position: inherit;
    }

    #panelLogin {
        width: 90%;
        text-align: center;
        display: block;
        margin-top: 30px;
    }

    .usernameinputimage {
        margin: -48px 0px 0px 6px;
    }

    #panelRegisterButton {
        margin-top: 140px;
    }

    hr {
        width: 95%;
        margin: 90px 0px 30px 0px !important;
    }

    .errorfield {
        position: absolute;
        margin-top: -10px;
    }

    #lblMessage {
        position: relative;
        padding: 5px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        border-radius: 10px;
        margin-top: -50px;
        width: 90%;
    }


    .rogerwide {
        width: 90%;
        max-width: 90%;
        margin-left: 5px;
    }

    .PartnerLogos {
        margin: 0 auto;
        display: inline-block;
        width: 80%;
        text-align: center;
    }

    .loginstyle {
        width: 110%;
    }

    .appendInput {
        width: 152px;
    }

    #txtUserName, #txtPassword {
        width: 108%;
        max-width: 236px;
    }

    #linkForgotPassword {
        right: -150px;
    }

    #btnLogin {
        position: relative;
    }

    #RequiredFieldValidator1 {
        margin-top: -10px;
    }

    #rc-imageselect, .g-recaptcha {
        transform: scale(0.90);
        -webkit-transform: scale(0.90);
        transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
    }

    .floatrightbutton {
        float: left;
        margin: 0;
        width: 98%;
    }

    .passwordinputimage {
        margin: -49px 0px 0px 6px;
    }
    /* 404 Error page --------------*/
    .leftColumn {
        margin-right: 19.5em;
    }

    .rightColumn {
        position: absolute;
        top: 0;
        right: 0;
        width: 18.75em;
    }
}


/* iPads ----------- */
@media only screen and (min-device-width : 480px) and (max-device-width : 768px) {
    body {
        background-color: #FFFFFF;
    }

    #content /* container surrounding containing three columns below */ {
        max-width: 768px;
        margin: 0 auto;
        position: absolute;
        top: 120px;
        height: 100vh;
    }

    .column2 /* main column with login fields and text below them */ {
        margin: 0 20%;
    }

    .column3 {
        width: 80%;
        border: none;
        margin: 0px 0px 0px 80px;
        padding: 0;
        position: relative;
        top: 370px;
    }

    #content.formLayout .column2 {
        margin-top: 50px;
        padding-bottom: 20px;
    }

    #topcontainer {
        width: 100%;
    }

    #banner {
        background-size: 149%;
    }

    #bannerbackground {
        background: none;
        height: 50px;
    }

    #banner.formBanner {
        height: 130px;
    }

    #content.formLayout .column2 {
        margin-top: -20px;
        padding-bottom: 20px;
    }

    h1 {
        font-size: 18pt;
    }

    h2 {
        font-size: 14pt;
    }

    .column3 > h2:nth-child(5) {
        width: 101%;
    }

    h3 {
        font-size: 13pt;
        margin-top: 3px;
    }

    .usernameinputimage, .passwordinputimage {
        margin: -28px 0px 0px 6px;
    }

    #panelRegisterButton {
        margin-top: 130px;
    }

    hr {
        margin: 65px 0px 8px 0px;
    }

    .errorfield {
        position: absolute;
        margin: -20px 0px 0px -4px;
    }

    #lblMessage {
        position: relative;
        padding: 5px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        border-radius: 10px;
        margin-top: -50px;
        width: 90%;
    }

    .rogerwide {
        width: 96%;
    }

    .loginstyle {
        width: 273px;
    }

    #linkForgotPassword {
        right: -203px;
    }

    #btnlogin {
        position: relative;
        top: -40px;
    }

    #panelLogin > div > div:nth-child(4) > div.formFieldValue {
        margin-right: 10%;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) {
    body {
        background-color: #FFFFFF;
    }


    .floatrightbutton {
        float: left;
        margin: 0;
        width: 111%;
        margin-top: 20px;
    }

    /* Safari 7.1+ */
    _::-webkit-full-page-media, _:future, :root #panelLogin > div > div:nth-child(4) > div.formFieldValue {
        margin-right: 11%;
    }

    _::-webkit-full-page-media, _:future, :root #content {
        top: 160px;
    }

    _::-webkit-full-page-media, _:future, :root #banner {
        height: 150px;
    }

    _::-webkit-full-page-media, _:future, :root .column3, hr {
        width: 80%;
    }

    _::-webkit-full-page-media, _:future, :root #linkForgotPassword {
        right: -215px;
    }

    _::-webkit-full-page-media, _:future, :root .showPassword {
        right: 70px;
        top: 10px;
    }
}

/* Desktops and laptops ----------- */
@media only screen and (min-width : 1024px) {

    html, body, body form {
        height: 100%;
        min-height: 100%;
    }

    #content /* container surrounding containing three columns below */ {
        max-width: 1280px;
        padding: 0;
    }

    .column2 /* main column with login fields and text below them */ {
        width: 60%;
        max-width: 520px;
        padding-bottom: 20px;
    }

    .column3 {
        width: 40%;
        padding-bottom: 20px;
        height: 370px;
    }
}
