﻿body {
    margin-top: 79px;
    font-family: "PT Sans", sans-serif;
    background: #f2efe9;
}

body.store-login{
    background: #fff;
}

.medium {
    font-size: 18px;
    line-height: 28px;
    font-family: "PT Sans",sans-serif;
    margin-bottom: 0;
}

.container-main {
    max-width: 1050px;
    display: flex;
    justify-content: center;
    padding: 20px 20px 60px 20px;
    margin: auto;
}

.navbar {
    min-height: 79px;
    background: #010015;
}

    .navbar .container-main {
        max-width: 1050px;
        height: 79px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }

.navbar-brand {
    padding: 0 15px;
    margin-top: 20px;
}

:focus,
a:focus,
.btn:focus,
.btn:active:focus {
    outline: #4cbe9f auto 1px;
}

.btn-primary {
    background-color: #4cbe9f;
    border: none;
    transition: background-color 0.3s ease 0s;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:active:focus {
    background-color: #46a28a;
}

.btn-primary[disabled] {
    background-color: #4cbe9f;
    border: none;
}


.btn-primary:focus {
    outline: none;
    box-shadow: 0 0 0 2px #060209, 0 0 0 3px #fff;
}

.btn-link,
.alert a {
    color: #2c7561;
}

.btn-link:hover,
.btn-link:active,
.btn-link:focus,
.alert a:hover,
.alert a:active,
.alert a:focus {
    color: #46a28a;
}

.form-control:focus {
    border-color: #47a38a;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px #47a38a;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px #46a28a;
}

 /*button and login-button/login-button-wrapper styles*/
a.button,
.button, .members-login-page .login-button {
    -webkit-transition: background-color 0.3s ease 0s;
    -moz-transition: background-color 0.3s ease 0s;
    -o-transition: background-color 0.3s ease 0s;
    transition: background-color 0.3s ease 0s;
    display: inline-block;
    color: #ffffff;
    font-family: "PT Sans", sans-serif;
    background-color: #4CBE9F;
    padding: 13px 19px;
    border-radius: 50px;
    font-size: 1.2em;
    margin-bottom: 20px;
    border: 0px;
    line-height: 1.3em;
    cursor: pointer;
}

    a.button:hover, .button:hover, .members-login-page .login-button:hover {
        color: #fff;
        background-color: #46a28a;
        text-decoration: none;
    }

    .button:focus, .members-login-page .login-button:focus {
        outline: none;
        box-shadow: 0 0 0 2px #060209, 0 0 0 3px #fff;
    }

.login-button-wrapper {
    display: flex;
    justify-content: center;
    margin-bottom: 0;
}

@media (min-width: 541px) {
    .login-button-wrapper {
        justify-content: flex-end;
    }
}

.generic-login-page .login-button-wrapper {
    justify-content: flex-end;
}


.login-button-wrapper .btn-primary {
    order: 2;
}

.login-button-wrapper .btn-link {
        margin-right: 5px;
}

.members-login-page .login-button {
    min-width: 95px;
	margin-bottom: 0;
}
/*End login-button*/

.navbar-header {
    position: relative;
    top: -4px;
}

.navbar-brand > .icon-banner {
    position: relative;
    top: -2px;
    display: inline;
    height: 50px;
}

.icon {
    position: relative;
    top: -10px;
}

.logged-out iframe {
    display: none;
    width: 0;
    height: 0;
}

.page-consent .client-logo {
    float: left;
}

    .page-consent .client-logo img {
        width: 80px;
        height: 80px;
    }

.page-consent .consent-buttons {
    margin-top: 25px;
}

.page-consent .consent-form .consent-scopecheck {
    display: inline-block;
    margin-right: 5px;
}

.page-consent .consent-form .consent-description {
    margin-left: 25px;
}

    .page-consent .consent-form .consent-description label {
        font-weight: normal;
    }

.page-consent .consent-form .consent-remember {
    padding-left: 16px;
}

.grants .page-header {
    margin-bottom: 10px;
}

.grants .grant {
    margin-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid lightgray;
}

    .grants .grant img {
        width: 100px;
        height: 100px;
    }

    .grants .grant .clientname {
        font-size: 140%;
        font-weight: bold;
    }

    .grants .grant .granttype {
        font-size: 120%;
        font-weight: bold;
    }

    .grants .grant .created {
        font-size: 120%;
        font-weight: bold;
    }

    .grants .grant .expires {
        font-size: 120%;
        font-weight: bold;
    }

    .grants .grant li {
        list-style-type: none;
        display: inline;
    }

        .grants .grant li:after {
            content: ', ';
        }

        .grants .grant li:last-child:after {
            content: '';
        }

.navbar-toggle {
    display: none;
}

label {
    font-size: 16px;
}

.panel-wrapper {
    width: 100%;
}

.login-section {
    text-align: center;
}

@media (min-width: 541px) {
    .login-section {
        text-align: left;
    }
}

.page-header {
    width: 100%;
    margin: 30px 0 0px;
    padding-bottom:0;
    border-bottom: none;
}

@media(min-width: 768px) {
    .login-page {
        margin: 60px 0 0px;
    }
}


.login-wrapper {
    flex: 0 1 400px;
}

.sign-up-wrapper {
    flex: 0 1 450px;
}
@media (min-width: 768px) {
    .sign-up-wrapper {
        flex: 0 1 45%;
    }
}


/*members-login styles*/

.members-login-page {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
   
}

@media(min-width: 768px) {
    .members-login-page {
        justify-content: space-between;
    }
}


.members-login-page .panel {
    margin-bottom: 0;
    background-color:inherit;
    border: none;
    border-radius: unset;
    box-shadow: none;
    -webkit-box-shadow: none;
}

.members-login-page .panel-body {
   padding:0;
}

.members-login-page .cancel {
    display: none;
}


.members-login-wrapper {
    flex: 0 1 450px;
}

@media (min-width: 768px) {
    .members-login-wrapper {
        flex: 0 1 45%;
    }
}


/*End members login styles*/

/*Text styles*/

.extra-large {
    margin-bottom: 15px;
    font-family: "PT Sans", sans-serif;
    font-size: 24px;
    line-height: 37px;
    color: #060209;
    text-align: center;
    font-weight: bold;
}

@media (min-width: 541px) {
    .extra-large {
        font-size: 38px;
        line-height: 45px;
        text-align: left;
        font-weight: 400;
        margin-bottom: 30px;
    }
}
.medium {
    font-size: 15px;
    line-height: 26px;
    margin-bottom: 15px;
    font-family: "PT Sans", sans-serif;
    color: #060209;
    text-align: center;
}

@media (min-width: 541px) {
    .medium {
        font-size: 18px;
        line-height: 28px;
        margin-bottom: 20px;
        text-align: left;
    }
}

/*end text styles*/

/*forgot-password styles*/

.password-label {
    display: flex;
    justify-content: space-between;
}


.forgot-password {
    display: inline-block;
    line-height: 1.5em;
}

@media (min-width: 768px) {
    .forgot-password {
        margin-top: auto;
        text-align: left;
    }
}

.forgot-password-wrapper {
    text-align: center;
}

@media (min-width: 541px) {
    .forgot-password-wrapper {
        text-align: left;
    }
}

input[type="checkbox"] {
    width: 20px;
    height: 25px;
    position: absolute;
    margin: 0;
}

/*End forgot-password styles*/

/*login-remeber styles*/

.login-remember {
    position: relative;
    text-align: center;
    align-self:flex-start;
}

.login-remember label{
    margin-bottom: 0;
}

@media (min-width: 541px) {
    .login-remember {
        margin-bottom: 0;
        text-align: left;
        align-self: unset;
    }
}

.login-remember strong {
    padding-left: 28px;
	font-size: 14px;
}

.remeber-login-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

@media (min-width: 541px) {
    .remeber-login-wrapper {
        justify-content: space-between;
        flex-direction: row;
    }
}

/*End login-remeber styles*/

@media (min-width: 541px) {
    .panel-body {
        padding: 20px 40px 30px 40px;
    }
}

@media(min-width: 541px) {
    .with-background-image {
        background-image: url(/home-hero.jpg);
        background-size: cover;
        position: relative;
        background-repeat: no-repeat;
        top: 0;
    }

}

@media(min-width: 768px) {
    .with-background-image {    
        padding: 60px 0 60px 0;
        height: calc(100vh - 79px);
    }
}

/*generic-login styles*/

.generic-login-panel-wrapper {
    flex: 0 1 100%;
}


@media (min-width: 768px) {
    .generic-login-panel-wrapper {
        flex: 0 1 45%;
    }
}

@media (min-width: 992px) {
    .generic-login-panel-wrapper {
        flex: 0 1 45%;
    }
}

.generic-login-page {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
    flex: 0 1 95%;
    margin: 0;
    align-items: center;   
}

@media (min-width: 541px) {
    .generic-login-page {
        margin-top: 40px;
    }
}


@media (min-width: 768px) {
    .generic-login-page {
        justify-content: space-between;
        flex:unset;
        margin-top:0;
    }
}

@media (min-width: 992px) {
    .generic-login-page {
        align-items: center;
    }
   .generic-login-page .page-header {
       margin: 0;
    }
}

.generic-login-page:before, .generic-login-page:after{
    display: none;
}

.generic-login-page input {
    color: rgb(102, 102, 102);
    background-color: rgb(250, 250, 250);
}

.generic-login-page .login-remember {
    text-align: left;
}

.generic-login-page .forgot-password-wrapper {
    text-align: left;
}

.generic-login-page .panel-wrapper .panel-body {
    padding:0;
}

.generic-login-page .panel-wrapper .panel {
    border: none;
    border-radius: unset;
    box-shadow: none;
    -webkit-box-shadow: none;
}

@media(max-width: 540px) {
     .panel {
        margin-bottom: 0;
        background-color: inherit;
        border: none;
        border-radius: unset;
        box-shadow: none;
        -webkit-box-shadow: none;
    }
     .panel-body {
        padding: 0;
    }
}

/*End generic login styles*/

/*partner-image styles*/
.partner-image-text-wrapper {
    flex: 0 1 100%;
    margin-top: 40px;
    text-align: center;
    /*display: none;*/
}

.partner-image-text-wrapper img{
    width: 100%;
	padding: 30px;
}

.partner-image-text-wrapper p{
    text-align: center;
}

@media (min-width: 768px) {
    .partner-image-text-wrapper {
        display: block;
        flex: 0 1 45%;
        margin-top: 0;
    }
}

/*@media (min-width: 850px) {
    .partner-image-text-wrapper {
        flex: 0 1 45%;
    }
    .partner-image-text-wrapper img{
        width: 100%;
    }
}*/

/*end partner-image styles*/

/*password validation styles*/

.password-reset-page {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

.password-toolTip {
    background: #ffffff;
    padding: 11px 10px;
    font-size: .9em;
    border-radius: 3px;
    margin: auto;
    margin-top: 20px;
    border: 3px solid #C5C3BD;
    width: 100%;
    display: none;
}


@media(min-width: 992px) {
    .password-toolTip {
        color: #666;
        background-color: #fafafa;
        padding: 15px;
        width: 250px;
        min-height: 100px;
        border: 3px solid #666666;
        text-align: left;
        font-size: 14px;
        box-shadow: 2px 2px 5px #888;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px;
        position: absolute;
        line-height: 20px;
        top: 32px;
        right: -256px;
        z-index: 99;
        margin-top: 0;
        display: none;
    }

        .password-toolTip:before {
            content: "";
            position: absolute;
            bottom: auto;
            top: 5px;
            left: -10px;
            border-width: 10px 10px 10px 0;
            border-style: solid;
            border-color: transparent #666666;
            display: block;
            width: 0;
        }

        .password-toolTip:after {
            content: "";
            position: absolute;
            bottom: auto;
            top: 5px;
            left: -6px;
            border-width: 10px 10px 10px 0;
            border-style: solid;
            border-color: transparent #fafafa;
            display: block;
            width: 0;
        }
}

.bold-error {
    font-weight: bold;
    color: #a94442;
}

.passwordShort.bold-error {
    color: #d87b29;
}

.passwordChar.bold-error {
    color: #990000;
}

.input-error {
    padding: 15px;
    background-color: #fd7878;
    border-radius: 3px 3px 3px 3px;
    display: block;
    margin-bottom: 20px;
    color: #fff;
    font-size: 14px;
    line-height: 20px;
}

.validation-summary-errors ul {
	margin-bottom:0;
}

.empty-password-error {
	margin-top: 20px;
}

.password-strength-wrapper {
	font-weight: bold;
	font-style: italic;
	margin-top: 10px;
}

#pwdStrengthShort {
    display: none;
    color: #d87b29;
    text-transform: uppercase;
}

#pwdStrengthWeak {
    display: none;
    color: #990000;
    text-transform: uppercase;
}

#pwdStrengthStrong {
    display: none;
    color: #3a3;
    text-transform: uppercase;
}

/*End password validation styles*/

/*Store login styles*/

.store-login-page {
    /*align-items: center;*/
}

.store-login .navbar{
    background: transparent url(/header-gradient.jpg) repeat-x 0 0;
    min-height:103px;
    border-bottom: none;
}

@media(min-width:1650px) {
    .store-login .navbar:before {
        background: transparent url(/header-left.jpg) no-repeat 0 0;
        content: "";
        height: 103px;
        left: 0;
        position: absolute;
        width: 320px;
    }

    .store-login .navbar:after {
        top: 0;
        background: transparent url(/header-right.jpg) no-repeat 0 0;
        content: "";
        height: 103px;
        position: absolute;
        right: -46px;
        width: 320px;
    }
}



.store-header-text {
    display: none;
}



@media(min-width: 768px) {
    .store-login .store-header-text {
        display: inline-block;
        margin-top: 40px;
    }
}

.store-header-text span {
    color: rgb(234, 93, 39);
}

.store-login .icon-banner {
    height: 54px;
    top: 4px;
}

.store-login-page input {
    border-radius: 0;
}

.store-login-page .button, .store-login-page .login-button {
    border-radius: 4px;
    padding: 10px 13px;
    min-width: 63px;
    font-weight: bold;
    font-size   :14px;
}

.store-login-page .extra-large {
    font-family: MrAlex, sans-serif;
}

.store-login-page .medium {
    font-family: Dosis, sans-serif;
}

.store-login-page .login-section, .store-login-page .login-section .medium {
    text-align: center;
}

.email-validation-error {
   margin-top: 20px;
}

.artist-login-store-image {
    background-image: url(/login-membersbg.png);
    height: 348px;
    width: 309px;
    display: block;
    margin: auto;
}

.artist-login-store-image img{
   margin: 50px 0 22px 22px;
}

.artist-login-store-image a{
   margin-bottom:0;
}

.artist-login-store-image p{
   font-family: 'Dosis', sans-serif;
    font-size: 20px;
    color: #FFF;
    line-height: 1.5;
    margin: 22px 0 0 25px;
}

.guest-register-text {
    margin-bottom: 20px;
}

.logged-out .medium {
    text-align: center;
}

.logged-out .extra-large {
    text-align: center;
}

.logged-out iframe {
    display: none;
    width: 0;
    height: 0;
}


.edit-button {
	float: right;
}


#update-your-browser-banner {
	font-family: Arial,​Verdana,​sans-serif;
	line-height: 26px;
	background-color: #ccd00a;
	font-size: 14px;
	padding: 10px;
	font-weight: bold;
	text-align: center;
	display: none;
	cursor: pointer;
	position: absolute;
	width: 100%;
}

.updateYourBrowserModal ul {
	list-style: none;
	padding-left: 0;
}


.updateYourBrowserModal li {
	float: left;
	padding: 12px 12px 34px 12px;
	text-align: center;
}

	.updateYourBrowserModal li a {
		font-size: 12px;
		color: #666;
	}

	.updateYourBrowserModal li div {
		background-image: url(../browserlogos.png);
		background-repeat: no-repeat;
		width: 100px;
		height: 100px;
	}

.updateYourBrowserModal {
	font-family: Arial,​Verdana,​sans-serif;
	float: left;
	margin: 20px;
	text-align: left;
	font-size: 12px;
	opacity: 1;
}

	.updateYourBrowserModal h2 {
		float: none;
		font-size: 24px;
		font-weight: bold;
	}

	.updateYourBrowserModal p {
		font-family: Arial,​Verdana,​sans-serif;
		line-height: 18px;
		font-size: 15px;
		margin: 20px auto;
	}

	.updateYourBrowserModal a.green {
		float: right;
	}

#lnk-chrome {
	background-position: -4px 0;
}

#lnk-firefox {
	background-position: -171px 0;
}

#lnk-safari {
	background-position: -340px 0;
}

#lnk-ie {
	background-position: -495px 0;
}

/* MODAL */

.modal2 {
	overflow: auto;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2000;
}

.modal2-content {
	border-radius: 3px;
	position: relative;
	overflow: hidden;
	text-align: center;
	padding-top: 0px;
	margin: 50px auto;
	background-color: #ffffff;
	z-index: 99999;
	width: 550px;
	min-width: 200px;
}


	.modal2-content.visible {
		visibility: inherit;
	}

.modal2-close-button-browser-detect {
	position: absolute;
	right: 11px;
	top: 12px;
	width: 29px;
	height: 27px;
	text-align: center;
	cursor: pointer;
	padding-top: 1px;
	font-size: 1.5em;
	text-decoration: none !important;
	color: #666;
}

	.modal2-close-button-browser-detect:hover {
		color: #4cbe9f;
		border-radius: 50px;
	}

.modal2-header,
.modal2-body {
	text-align: left;
	position: relative;
	padding: 13px 18px;
	border-bottom: 1px solid #E7E7E7;
}

.modal2-header {
	font-weight: bold;
	font-size: 18px;
	padding-right: 48px;
	line-height: 28px;
	padding-left: 0;
}

.modal2-bg {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999;
	opacity: 0;
	background-color: #000000;
	-webkit-transition: All 0.5s ease;
	-moz-transition: All 0.5s ease;
	-o-transition: All 0.5s ease;
	transition: All 0.5s ease;
}

	.modal2-bg.open {
		opacity: .7;
		-webkit-transition: opacity 0.5s ease;
		-moz-transition: opacity 0.5s ease;
		-o-transition: opacity 0.5s ease;
		transition: opacity 0.5s ease;
		filter: alpha(opacity=70);
	}

.close-button-wrapper {
	clear: both;
}

#updateYourBrowser {
	position: absolute;
	width: 100%;
}

.store-login #update-your-browser-banner {
	margin-top: 24px;
}

@media (max-width: 625px) {
	.modal2-content {
		width: 90%;
		margin-top: -15px;
	}

	.updateYourBrowserModal ul {
		margin: auto;
		width: 250px;
		height: 300px;
	}
}

@media (max-width: 333px) {
	.updateYourBrowserModal ul {
		width: auto;
		height: auto;
	}

	.updateYourBrowserModal li {
		float: none;
	}

		.updateYourBrowserModal li div {
			margin: auto;
		}
}
