html {
    box-sizing: border-box;
}

*, *::after, *::before {
    box-sizing: inherit;
}

body {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    background: url(/images/bg_2560.jpg) center center repeat-y;
    color: #3c3c3c;
    font-family: "Amplitude", "Arial", sans-serif;
    position: relative;
}

.page_title {
    line-height: 42px;
    font-size: 28px;
}

p {
    color: #3c3c3c;
}

nav span {
    vertical-align: middle;
}

button {
    background-color: #16577C;
    border: 1px solid #efefef;
    color: #ffffff;
    outline: none;
    height: 50px;
    line-height: 38px;
    display: inline-block;
    padding: 0 20px;
    font-weight: 700;
    margin-right: 10px;
    text-transform: uppercase;
    transition: all .2s ease;
}

button:hover {
    background-color: #3c3c3c;
    color: #ffffff;
}

button.small {
    height: 35px;
    line-height: 31px;
    font-size: 16px;
    padding: 0 20px;
}

button#register {
    float: right;
    margin: 0 0 20px 0;
}

button#register[disabled="disabled"] {
    opacity: 0.3;
    background-color: #3c3c3c;
    color: #ffffff;
}

@font-face {
    font-family: 'Amplitude Light';
    src: url("../fonts/Amplitude-Light.eot");
    src: url("../fonts/Amplitude-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Amplitude-Light.woff") format("woff"), url("../fonts/Amplitude-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Amplitude-Regular';
    src: url("../fonts/Amplitude-Regular.eot");
    src: url("../fonts/Amplitude-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Amplitude-Regular.woff") format("woff"), url("../fonts/Amplitude-Regular.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Amplitude Medium';
    src: url("../fonts/Amplitude-Medium.eot");
    src: url("../fonts/Amplitude-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Amplitude-Medium.woff") format("woff"), url("../fonts/Amplitude-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'OpenSans Light';
    src: url("../fonts/OpenSans-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'OpenSans Regular';
    src: url("../fonts/OpenSans-Regular.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'OpenSans';
    src: url("../fonts/OpenSans-Semibold.ttf") format("truetype");
    font-weight: bold;
    font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
    color: #3c3c3c;
    font-weight: 400;
}

h2 {
    font-size: 1.4em;
    margin: 0.67em 0;
}

a {
    text-decoration: none;
    color: #333333;
}

section {
    padding: 40px 0;
}

section.clear {
    overflow: hidden;
}

section.top {
    padding-top: 0;
}

section.bottom {
    padding-bottom: 0;
}

section .section-header {
    overflow: hidden;
}

section.banner {
    background-color: #043555;
    margin: 0 -60px;
    padding: 5px 20px;
    height: 80px;
    background-image: url(/images/logo-jpmorgan.png);
    background-repeat: no-repeat;
    background-position: left 20px center;
    background-size: 170px 34px;
}

section .section-header button {
    margin: 5px 0;
}

section .section-header .filters {
    margin: 10px 0;
}

section p {
    font-weight: 300;
    font-size: 18px;
    line-height: 25px;
}

form {
    background: rgba(255, 255, 255, .9);
    max-width: 600px;
    margin: 60px auto;
    padding: 0 60px 60px;
}

form::after {
    clear: both;
    content: "";
    display: table;
}

form .row {
    display: block;
}

form .row.divider {
    border-top: 1px solid #cecece;
}

form .row::after {
    clear: both;
    content: "";
    display: table;
}

form .half {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%;
}

form .half:last-child {
    margin-right: 0;
}

form .half-right {
    margin-left: 51.17883%;
}

/*form .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}*/

/* Lighten placeholder colors */
/* ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
/*  color: #5E8EA8;
}*/
/* ::-moz-placeholder { /* Firefox 19+ */
/*  color: #5E8EA8;
}*/
/* :-ms-input-placeholder { /* IE 10+ */
/*  color: #5E8EA8;
}*/
/* :-moz-placeholder { /* Firefox 18- */
/*  color: #5E8EA8;
}*/

label {
    font-weight: 500;
}

input {
    border: 1px solid #5E8EA8;
    padding: 0 10px;
    color: #3c3c3c;
    line-height: 32px;
    height: 45px;
    margin: 5px 0 20px 0;
    width: 100%;
}

::-moz-selection {
    border-color: red;
}

select {
    -webkit-appearance: menulist-button;
}

select::-ms-expand {
    display: none;
}

select.styled-select {
    position: relative;
    background: #ffffff url(/images/icon-sort.png) center right 10px no-repeat;
    background-size: 18px 15px;
    color: #3c3c3c;
    font-weight: 500;
    border: 1px solid #5E8EA8;
    display: inline-block;
    margin: 5px 25px 20px 0;
    text-align: left;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    width: 100%;
    height: 45px;
    padding: 0 35px 0 15px;
    cursor: pointer;
    -moz-box-shadow: none;
}

form select {
    color: #3c3c3c;
    line-height: 32px;
    height: 32px;
    margin: 0 10px 20px 0;
}

form legend {
    color: #3c3c3c;
    font-size: 1.17em;
    font-weight: 300;
    line-height: 25px;
    margin-bottom: 1em;
    margin-top: 1em;
    -webkit-font-smoothing: antialiased;
}

form a.help {
    line-height: 42px;
}

form a.help:hover {
    text-decoration: underline;
}

.signin {
    color: #3c3c3c;
    float: right;
    margin-top: 20px;
}

.signin a {
    text-decoration: underline;
}

.needhelp {
    margin-top: 10px;
    float: right;
    clear: both;
}

.needhelp a {
    text-decoration: underline;
}

.link_redirect {
    margin-bottom: 20px;
    display: none;
}

.link_redirect a {
    text-decoration: underline;
    color: #126BC5;
}

.required-label {
    font-family: "OpenSans";
    font-weight: bold;
    margin-bottom: 20px
}

/* Confirmation */
#confirmation {
    background: rgba(255, 255, 255, .9);
    max-width: 600px;
    margin: 60px auto;
    display: none;
    padding: 0 60px 60px;
    text-align: center;
}

#confirmation::after {
    clear: both;
    content: "";
    display: table;
}

/* Focus */
a:focus,
input:focus,
select:focus {
    outline: 3px solid Highlight;
    outline: -webkit-focus-ring-color auto 5px;
}

/*select.styled-select:focus {
  outline: auto 3px Highlight;
  outline: -webkit-focus-ring-color auto 5px;
}
*/

button#register:focus {
    outline: 3px solid Highlight;
    outline: -webkit-focus-ring-color auto 5px;
    background-color: #3c3c3c;
    color: #ffffff;
}

img.question-circle {
    margin-top: 35px;
}

.tooltip .tooltiptext {
    visibility: hidden;
    width: 170px;
    background-color: #16577C;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    position: absolute;
    z-index: 1;
    bottom: 4px;
    left: 100px;
    margin-left: -70px;
    opacity: 0;
    transition: opacity .5s;
}

.tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    top: 35%;
    left: -5px;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent #16577C transparent transparent;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

.tooltip:focus .tooltiptext {
    visibility: visible;
    opacity: 1;
}

.confirmation {
    background: rgba(255, 255, 255, 0.9) none repeat scroll 0 0;
    margin: 60px auto;
    max-width: 600px;
    padding: 0 60px 60px;
}

/* Parsley */
input.parsley-error,
select.styled-select.parsley-error,
textarea.parsley-error, div.parsley-error input {
    border-color: #BC2356;
}

.parsley-errors-list {
    background: #BC2356;
    color: #fff;
    font-weight: 500;
    min-height: 45px;
    line-height: 25px;
    list-style-type: none;
    margin: -20px 0 20px 0;
    padding: 10px;
    opacity: 0;

    transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -moz-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
}

.parsley-errors-list.filled {
    opacity: 1;
}

.parsley-errors-list li {
    background: #BC2356 url(/images/exclamation-circle.png) center left no-repeat;
    padding-left: 30px;
}

.validation-errors-container {
    display: none;
    background: #BC2356;
    max-width: 600px;
    margin: 60px auto -60px;
    padding: 30px 60px;
}

div.validation-errors-container.filled {
    display: block;
}

div.validation-errors-container .panel-heading {
    background: #BC2356 url(/images/exclamation-circle.png) center left no-repeat;
    color: white;
    padding-left: 30px;
}

div.validation-errors-container ul.validation-errors-list {
    margin: 15px 0 0;
    padding: 0;
}

div.validation-errors-container ul.validation-errors-list li {
    color: white;
    list-style-type: none;
    margin-left: 30px;
}

div.validation-errors-container ul.validation-errors-list li a {
    color: inherit;
}

div.validation-errors-container ul.validation-errors-list li a span {
    text-decoration: underline;
}

#regenerate_captcha {
    background-image: url("/images/refresh.png");
    background-position: center center;
    background-size: 22px auto;
    width: 30px;
    height: 30px;
    float: right;
    border: 1px solid #666;
    cursor: pointer;
}

.access_message_chase {
    display: none;
    margin-bottom: 20px;
}

.access_message_jpmorgan {
    margin-bottom: 20px;
    line-height: 22px;
}

body.chase {
    font-family: "OpenSans Regular";
    background: #f8f8f8;
}

body.chase .page_title {
    font-family: "OpenSans Regular";
    font-size: 26px;
}

body.chase section.banner {
    background-color: var(--chase-blue-dark);
    background-image: url(/images/logo-chase-white.png);
}

body.chase button {
    border-radius: 5px;
    height: 40px;
    line-height: 40px;
    text-transform: none;
    font-size: 16px;
}

body.chase button.primary {
    background-color: var(--chase-blue);
    border-color: var(--chase-blue);
    min-width: 216px;
}

body.chase button.primary:hover {
    background-color: var(--chase-blue-dark);
    border-color: var(--chase-blue-dark);
}

body.chase button.primary:active {
    background-color: var(--chase-blue);
    border-color: var(--chase-blue);
}

body.chase button.primary:disabled {
    background-color: #a9d5ed;
    border-color: #a9d5ed;
}

body.chase option.jpmorgan {
    display: none;
}

body.jpmorgan option.chase {
    display: none;
}

body.chase label {
    font-family: "OpenSans";
    font-weight: bold;
}

body.chase form legend {
    font-family: "OpenSans";
    font-weight: bold;
}

.chase-specific {
    display: none !important;
}

body.chase .chase-specific {
    display: block !important;
}

.jp-specific {
    display: block !important;
}

body.chase .jp-specific {
    display: none !important;
}

.partnership-request {
    font-size: 16px;
    margin-bottom: 20px;
}

@media (max-width: 600px) {
    body {
        min-width: 370px;
    }

    form {
        margin: 0 auto;
        padding: 0 10px 60px;
    }

    form .half {
        clear: both;
        width: 100%;
        margin-right: 0px;
    }

    button.primary {
        min-width: 250px;
    }

    section.banner {
        margin: 0 -10px;
    }

    .validation-errors-container {
        margin: 0px;
        padding: 30px 10px;
    }
}

.existing-client-toggle {
    width: 100%;
    height: 50px;
    border: 2px solid #ccc;
    margin: 20px 0px;
}

.existing-client-toggle > * {
    width: 50%;
    float: left;
    text-align: center;
    height: 100%;
    font-family: "OpenSans";
    font-weight: bold;
    cursor: pointer;
    padding-top: 1px;
}

.existing-client-toggle > *:first-of-type {
    border-right: 2px solid #ccc;
    padding-top: 12px;
}

body.chase .existing-client-toggle > * {
    padding-top: 12px;
}

.existing-client-toggle > *.active {
    background-color: #16577C;
    color: white;
}

body.chase .existing-client-toggle > *.active {
    background-color: var(--chase-blue);
    color: white;
}

#interested-section {
    display: none;
}

body.chase #interested-section {
    display: block;
}

#subject {
    display: block;
    margin: 10px 0px;
    height: 150px;
    width: 100%;
    resize: vertical;
    border: 1px solid #5E8EA8;
}

#details {
    display: block;
    width: 100%;
    resize: vertical;
    margin: 5px 0px 20px 0px;
    min-height: 150px;
}

/* Overlay area */
.overlay {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 300;
}

.overlay-shadow {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);
}

.overlay .information {
    font-size: 24px;
    color: #fff;
    padding-bottom: 75px;
    width: 500px;
    margin: auto;
    min-height: 100px;
    top: calc(50% - 30px);
    position: relative;
    background-size: 60px;
    line-height: 30px;
    text-align: center;
}

/* Modal specific */
.overlay-information-text {
    margin-bottom: 10px;
    font-family: "Open Sans";
    font-weight: bold;
}

.overlay .information.message {
    padding-left: 80px;
    background-position: left center;
}

.overlay-anchor {
    min-height: 200px;
}
