@font-face {
    font-family: 'Poppins';
    src: url("Poppins/Poppins-Regular.ttf");
}
*, .button, .sub-nav, body, button.label, h1, h2, h3, h4, h5, h6, html, textarea {
    font-family: 'Poppins', sans-serif;
}

#testheader{display:none;}

/*Message Center Title Underline*/
#security_challenge h2{
    border-bottom:4px solid #E41E2E;
    color: #E41E2E;
}

.updates {color: #000;}

.updates input[type="checkbox"]{margin: 0 0.5rem 0 0;}

.acceptCheckWrapper{display: none;}

.noTestsAvail,
.mainFormWrapper,
#maildefault, 
.msgsummary,
.inMessage,
.msgdate { color: #000;}

.mainFormWrapper input[type="radio"]{
    margin: 0 0 1rem 0;
}

/* login and home page image */
#container_12:has(#NQC_Login1_Login1_LoginButton) {
    background-image: url("../img/background.jpg");
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
}

#container_12 {
    background-image: url("../img/home-bg.jpg");
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    background-attachment: fixed;
}

#container_12:has(#NQC_Login1_Login1_LoginButton) {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.rightLoginBoxWrapper {
    background: rgb(0,0,0,0.5);
    padding-bottom: 1.5rem;
}

.rightLoginBox {
    background: none;
    border: none;
}

#NQC_Login1_Login1_Title,
#NQC_Login1_Login1_UserNameLabel,
#NQC_Login1_Login1_PasswordLabel,
#NQC_Login1_btnToggleLostPassword,
#NQC_Login1_lWelcome,
#NQC_Login1_LblApplyNow {
    color: white;
    -webkit-text-stroke: 2px #1B2046;
    paint-order: stroke fill;
}

#container_12:has(#NQC_Login1_Login1_LoginButton) button,
#container_12:has(#NQC_Login1_Login1_LoginButton) .button,
#container_12:has(#NQC_Login1_Login1_LoginButton) select,
#container_12:has(#NQC_Login1_Login1_LoginButton) input {
    border-radius: 10px;
}
/* FIN login and home page custom */


/* custom test list */
.customTestListMessageContainer {
    padding: 1rem;
}

.toggleCustomTestListMessage {
    cursor: pointer;
    margin-left: -1rem;
    margin-right: -1rem;
}

.toggleCustomTestListMessage:focus,
.toggleCustomTestListMessage:hover {
    background: #fff;
    color: #000;
}

.customTestListMessage {
    width: fit-content;
    margin: auto;
}


/* profile */
.hideInput {
    display: none;
}

i {
    font-size: 0.8rem;
}

.noVis {
    visibility: hidden;
    position: absolute;
}

.country-code {
    width: 10%;
    display: block;
    float: left;
    text-align: center;
    margin-top: 0.5rem;
}

#phone, #hid183 {
    width: 90% !important; 
    float: right;
}

.more-info {
    cursor: pointer;
    padding-bottom: 3px;
    font-size: 16px;
}

.info {
    display: none;
    font-size: 0.8rem;
}

/* end profile */

#footerButtonModals:not(.hidden) .modal {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    background: #fff;
    padding: 1rem;
    border: solid 1px #aaa;
    border-radius: 0.25rem;
    height: 90vh;
    width: min(85vw, 850px);
    overflow: auto;
    text-align: left;
}

#footerButtonModals .modal::after {
    content: "";
    width: calc(100% + 2rem);
    height: 10px;
    background: #E41E2E;
    position: relative;
    bottom: -1rem;
    display: block;
    left: -1rem;
}

#footerButtonModals:not(.hidden) .modal-backdrop:not(.hidden) {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    width: 100dvw;
    height: 100vh;
    height: 100dvh;
    background: #000;
    opacity: 0.5;
}

.modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: -1rem -1rem 0;
    padding: 0 1rem;
    background: #e41e2e;
    color: #fff;
}

.modal-header img {
    max-height: 6rem;
    max-width: 50%;
}

.modal-header .btn-close {
    background: #e41e2e;
    color: #fff;
    border: none;
    border-radius: 50%;
    padding: 0.5rem;
    margin: 0.5rem 0.5rem 1rem 1rem;
    height: 2rem;
    width: 2rem;
    line-height: 1;
    transition: background 0.2s, color 0.2s;
}

.modal-header .btn-close:focus,
.modal-header .btn-close:hover {
    background: #000;
    color: #fff;
}

#footerButtonModals .modal a {
    display: contents;
}

.d-flex{display:flex;}

.hidden{display:none !important;}

@media only screen and (max-width: 1025px){
    .mobile-only {
        display: none;
    }
}

.locations, .faq, .rewards, .testing {
    color: #000;
}

.locations h2,
.locations h3,
.faq h2{
    font-weight: bold;
}

.locations h2 {
    font-size: 1.5rem;
}

.locations h3 {
    font-size: 1.25rem;
}

.locations ol ol {
    list-style-type: lower-alpha;
}

.locations li {
    clear: both;
}

.locations p {
    padding-left: 0 ;
    text-align: justify
}

.locations .columns + .columns {
    padding: 0;
}

.homepage-help .column.small-3 {
    padding: 0;
}

/* Modal for updates */
#modalMessage {
    max-height: 60vh;
    overflow: auto;
    padding-left: 1em;
    padding-right: 1em;
}

.columns:has(.isRequired) .appformLabel:after {
    content: ' *'
}

/* age selector items */
.age-select {
    display: flex;
    align-items: stretch;
}

.age-select .columns div {
    border: 3px black solid;
    border-radius: 40px;
    margin-bottom: 1rem;
}

/*.age-select .columns:hover,*/
.age-select .selected div {
    border-color: #E41E2E;
    background-color: #E41E2E;
}

.age-select h3 {
    text-align: center;
}

.age-select img:hover {
    transform: scale(1.5)
}