.load-error {
    border: 1px solid red !important;
    color: red !important;
    text-align: center !important;
}

.di-background-image {
    background-image: url('https://static.whitecoatinvestor.com/images/backgrounds/disability-form-bg.jpg');
    background-position: bottom left;
    background-size: 120%;
    background-repeat: no-repeat;
}

#DIformContainer {
    border: 1px solid #B3B3B3;
    margin-bottom: 100px;
    background-color: #FFF;
    margin-top: -60px;
    z-index: 250;
}

#DIformContainer button,
#AgentsScreen button {
    color: #fff;
    background-color: #982623;
    font-size: 1.2rem;
    font-weight: 700;
    border-radius: 6px;
    border-width: 0;
    outline: none;
    padding-left: 3rem;
    padding-right: 3rem;
    filter: none;
    box-shadow: none;
}

#DIformContainer button:hover,
#AgentsScreen button:hover {
    background-color: #bb2623;
}

.form-select-lg {
    font-size: 1rem;
    padding: 1rem 2.25rem 1rem .75rem;
}
.step {
    display: none;
    transition: display .1s ease-in-out;
}
.step.active {
    display: block;
}
.step-1b,
.step-2a,
.step-2b {
    display: none;
}

.floating-label,
.form-floating { 
    position: relative; 
    padding-bottom: 32px; 
}

.form-control {
    color: #2B4274;
    background-color: #F9F9F9;
}

.floating-select {
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%232B4274' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    display: block;
    width: 100%;
    padding: 1rem 2.25rem 1rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #2B4274;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #F9F9F9;
    background-image: var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.floating-select:focus, .floating-select:not([value=""]):valid {
    padding-top: 1.625rem;
    padding-bottom: .625rem;
    line-height: 1.25;
}

.floating-select ~ label,
.form-floating ~ label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    height: 100%;
    padding: 1rem .75rem;
    overflow: hidden;
    text-align: start;
    text-overflow: ellipsis;
    background-color: transparent;
    white-space: nowrap;
    pointer-events: none;
    border: var(--bs-border-width) solid transparent;
    transform-origin: 0 0;
    transition: opacity .1s ease-in-out,transform .1s ease-in-out;
    font-size: 100%;
}

.form-floating>label {
    font-size: 100%;
}

.floating-select:focus ~ label , .floating-select:not([value=""]):valid ~ label,
.form-floating:focus ~ label {
    background-color: transparent;
    color: rgba(43,66,116,.65);
    transform: scale(.85) translateY(-.5rem) translateX(.15rem);
}

.form-floating>.form-control:not(:placeholder-shown)~label::after,
.form-floating>.form-control:focus~label::after {
    background-color: transparent;
}

/* active state */
.floating-select:focus,
.form-control:focus {
    color: #2B4274;
    background-color: #F9F9F9;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13,110,253,.25);
}

.floating-select option:hover,
.floating-select option:checked {
    box-shadow: 0 0 10px 100px #2B4274 inset;
}

.program-search {
    --bs-form-search-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' %3e%3cpath fill='%232B4274' stroke='%232B4274' stroke-linecap='round' stroke-linejoin='round' stroke-width='0' d='M4.39,5.23c-3.63,3.88-3.79,10.05-.37,14.1,3.6,4.26,9.67,4.93,14.04,2l8.07,8.07c.64.64,1.67.64,2.3,0l1.24-1.24c.64-.64.64-1.67,0-2.3l-8.21-8.21c2.25-4.05,1.67-9.25-1.77-12.68C15.45.72,8.52.81,4.39,5.23ZM18.42,16.65c-3.03,4.45-9.47,4.45-12.5,0-1.69-2.49-1.69-5.86,0-8.34,3.03-4.45,9.47-4.45,12.5,0,1.69,2.49,1.69,5.86,0,8.34Z'/%3e%3c/svg%3e");
    background-image: var(--bs-form-search-bg-img),var(--bs-form-search-bg-icon,none);
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 24px;
}

.floating-select.error,
.form-control.error {
    border-color: red;
}

.floating-label div.error,
.form-floating div.error {
    color: red;
    text-align: left;
    padding-left: 11px;
    position: absolute;
    bottom: 10px;
    font-size: 13px;
}

#FormError,
.test-banner {
    border: 1px solid red;
    color: red;
    text-align: center;
}

#SpecialtyInputContainer,
#SpecialtyOtherInputContainer,
#ProgramOtherInputContainer,
#SchoolInputContainer,
#GraduationDateInputContainer,
#EmployerInputContainer,
#IncomeInputContainer,
#IndividualBenefitInputContainer,
#AgentsScreen,
#SuccessScreen,
#DIformAgentsError,
#FormError,
.test-banner {
    display: none;
}

.text-navy {
    color: #425378;
}

#SpecialtyInputData .program-result {
    line-height: 2em;
}

#SpecialtyInputData,
#ProgramInputData {
    border-radius: 5px;
    position: absolute;
    z-index: 250;
}

.program-results-header {
    color:  #DEE2E6;
    padding: 0 10px;
    margin: 0;
    height: 12px;
    line-height: .9em;
    overflow: hidden;
    text-align: left;
}

.program-results-text {
    font-size: 14px;
    background-color: #FFFFFF;
    padding: 3px 10px;
    border: 1px solid #DEE2E6;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    text-align: left;
}

.program-result {
    background-color: #FFFFFF;
    text-align: left;
    border: 1px solid #DEE2E6;
    border-top: none;
    line-height: 1.5em;
    /* padding: 10px; */
}

.program-result:hover {
    background-color: #425378;
    color: #FFFFFF !important;
    cursor: pointer;
}

.program-result:last-child {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.program-result-name {
    font-size: 14px;
}

.program-result-info {
    font-size: 12px;
}

#DIformAgentsError {
    color: red;
    text-align: left;
    /* padding-left: 11px;
    position: absolute;
    bottom: 10px; */
    font-size: 13px;
}

.agent {
    background-color: #f2f2f2;
    color: #000000 ;
    /* padding: 15px; */
}

#SelectedAgents .agent {
    background-color: #FFF;
    border-bottom: 1px solid #2D79BD;
}

#SelectedAgents .agent-container:last-child .agent {
    border-bottom: none;
}

input.agent-check-input {
    height: 20px;
    width: 20px;
    border-color: #425378;
}

.agent.selected,
.agent.selected * {
    background-color: #425378;
    color: #FFFFFF !important;
}

.agent.disabled,
.agent.disabled * {
    color: #999999 !important;
    border-color: #999999 !important;
}

.agent.disabled img {
    opacity: .7;
}

.agent.selected .agent-check-input {
    border-color: #FFFFFF;
}

.agent-image img {
    border-radius: 50%;
    max-width: 120px;
    border: 2px solid #FFF;
    background-color: #FFF !important;
}

.agent-info {
    text-align: left;
}

.agent-company {
    color: #425378;
    margin-bottom: .1em;
    font-size: 22px;
}

.agent-name {
    color: #425378;
    font-size: 17px;
}

#SelectedAgents .agent-name {
    color: #000;
}

#SelectedAgents .agent-image img {
    border-color: #f2f2f2;
}

.agent-link-icon {
    background-size: contain;
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 25px;
    line-height: 2rem;
}

.agent-link-phone {
    background-image: url('https://static.whitecoatinvestor.com/images/icons/icon-phone-blue.svg');
}

.agent-link-schedule {
    background-image: url('https://static.whitecoatinvestor.com/images/icons/icon-schedule-blue.svg');
}

.agent-link-website {
    background-image: url('https://static.whitecoatinvestor.com/images/icons/icon-website-blue.svg');
}

.agent-link-email {
    background-image: url('https://static.whitecoatinvestor.com/images/icons/icon-email-blue.svg');
}

.agent-copy {
    color: #000;
    font-size: 14px;
    line-height: 21px;
}

.agent-custom-message {
    color: #000;
    font-size: 14px;
    line-height: 21px;
}

.agent-custom-message p {
    margin-bottom: 0px;
}

@media screen and (max-width: 782px) {
    .di-background-image {
        background-image: none;
    }
    .agent-checkbox .agent-check-input {
        height: 30px;
        width: 30px;
    }
    .agent-checkbox label {
        font-size: 22px;
    }
    .agent-image img {
        max-width: 60px;
    }
    .agent-company {
        font-size: 20px;
    }
    .floating-select ~ label,
    .form-floating ~ label,
    .form-floating>label {
        font-size: 80%;
        padding: 1.1rem .75rem;
    }
}