/*Basic styling for layout*/
html,
body,
header,
footer,
main {
    margin: 0;
}


.main-title {
    font-size: 26px;
    padding-top: 15px;
    padding-bottom: 15px;
}

html {
    
}

body {
    display: table;
    height: 100%;
    width: 100%;
    font-family: 'Roboto', sans-serif;
}

main {
    height: auto;
}

legend {
  font-size: 1rem;
}

@media (max-width: 767px) {
    header img {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
}
/* HEADER */
header {
    margin: 0 auto;
    height: 100px;
    display: table;
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #E8E8E8;
    padding-top: 10px;
    padding-bottom: 10px;
}


.logo {
    display: block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden;
    height: 100%;
    -webkit-transform-origin: left center;
    transform-origin: left center;
}

    .logo img {
        width: auto;
        max-width: 300px;
        height: 100%;
        max-height: 68px;
        -o-object-fit: contain;
        object-fit: contain;
        overflow: hidden;
    }


/* FOOTER */

footer {
    display: table-row;
    height: 1px;
}

.footer-content {
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-content: center;
    align-items: center;
    min-height: 80px;
    border-top: 2px solid black;
}

footer svg {
    display: block;
    margin: 0 auto;
    height: 20px;
    width: auto;
}

@media (min-width: 768px) {
    footer svg {
        height: 30px;
    }
}

footer p {
    font-size: 12px;
    text-align: center;
    margin: 8px 0px 0px;
}

footer .black {
    background: #000;
}

footer .black p {
    color: #fff;
}

/* Generic styles */
.card {
    border-radius: 0rem;
}

.card-body, .card-header {
    padding-left: 0;
    padding-right: 0
}

.fa-info-circle {
    color: #395A86;
}

.alerticon {
    color: red
}

.left {
    text-align: left
}

.float-right {
    float: right; 
}

#intro {
    padding-top: 1px;
}

input.form-control {
    border-radius: 0;
}

button.btn {
    border-radius: 0;
    min-height: 48px;
    text-transform: uppercase;
}

.btn-row {
    margin-top: 30px;
    margin-bottom: 30px;
}

.btn-block {
    max-width: 252px;
    margin: auto;
}

.smaller {
    font-size: 0.8em
}

.total-dropdown {
    display: flex;
    justify-content: flex-end;
}
.total-dropdown .smaller {
    align-self: center;
    padding-right: 5px;
}
@media(min-width: 600px) {
    .total-dropdown .smaller {
        font-size: 1em;
    }
}

.total-dropdown .btn-link {
    padding-top: 5px;
    padding-left: 5px;
}


.btn-primary:disabled {
    background: #808080;
    border: none;
    color: #ccc;
}

.btn-primary:hover {
    border: none;
}

input[type=checkbox] {
    width: 24px;
    height: 24px;
}

.form-check-input{
    margin-top:0px;
    position:relative;
    margin-left:0px;
}

.iagreelabel
{
    margin-bottom:0px;
}

.container {
    max-width:800px !important;
}

.welcome-container {
    max-width: 500px !important;
    padding: 20px 20px;
}

.accordionheading
{
    font-size: 1.2em;
}

.subhead {
    font-size: 1.1em;
    margin-top: 0;
    margin-bottom: 1rem;
}

.subhead2 {
    font-size: 1em;
    text-align: left;
}

.errorInput{
    border-color: red !important;
}

.redInput {
    border-color: #EC1313 !important;
}

.amberInput {
    border-color: #FFBD29 !important;
}

.redText {
    color: #EC1313 !important;
}

.amberText {
    color: #FFBD29 !important;
}

.link {
    text-decoration: underline;
}



.toggletip-container {
    position: absolute;
    display: inline-block;
}


.toggletip-bubble {
    display: block;
    width: 200px;
    max-width: 200px;
    background-color: black;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px 0;
    font-size: .850rem;
    position: absolute;
    z-index: 99999;
    bottom: 100%;
    left: 50%;
    margin-left: -100px;
}

.tooltip-button {
    width: 1em;
    height: 1em;
    border-radius: 50%;
    border: 0;
    background: transparent;
    color: #fff;
}


.accordion > .card {
    overflow: visible;
}

.visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

dl {
    text-align: right;
    width: 100%;
    overflow: hidden;
    padding: 0;
    margin: 0;
    margin-top: 10px;
}

dt {
    float: left;
    width: 85%;
    padding: 0;
    margin: 0;
    clear: left
}

dd {
    float: left;
    width: 15%;
    padding: 0;
    margin: 0
}

.welcome-points {
    list-style-type: square;
}

.welcome-logo {
    text-align: center;
    display: block;
    margin: 40px auto;
}

.landing-fieldset {
    padding: 10px 0;
}

#page-1, #page-2 {
    display: none;
}