/*/ ///////////////////////////////////////////// /*/
/*/ //// GLOBAL OVERRIDES */
*,
*:before,
*:after {
    overflow: visible;
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    -webkit-tap-highlight-color: transparent;
    font-size: 62.5%;
    min-height: 100%;
}


p {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

input[type="date"]{
    min-width: calc(100vw - 4em);
}

@media screen and (min-width: 600px) {
    p {
        font-size: 18px;
        line-height: 30px;
    }
}

pre {
    margin: 0;
    text-align: left;
}

ul li::marker {
    list-style-type: none;
    text-decoration: none;
}


@media only screen and (max-width: 75em) {
    html {
        font-size: 56.25%;
    }
}

@media only screen and (max-width: 56.25em) {
    html {
        font-size: 50%;
    }
}

@media only screen and (min-width: 112.5em) {
    html {
        font-size: 75%;
    }
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    select,
    textarea,
    input {
        font-size: 16px;
    }
}

body {
    font-family: "proxima-nova-condensed", sans-serif;
    font-style: normal;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #444444;
    overflow-x: hidden;
    min-width: 100vw;
    min-height: calc(100vh - 64px);
    height: 100%;
}

a,
.btn-link {
    color: #0366d6;
    text-decoration: none;
    cursor: pointer;
}

.wcag-link {
    text-decoration: underline;
}

ul,
li {
    text-decoration: none;
}

hr {
    border: 0;
    height: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

code {
    background: #333;
    color: whitesmoke;
    padding: 2px;
    font-size: 0.8rem;
}

/*/ ///////////////////////////////////////////// /*/
/*/ //// APP BACKGROUND */
.app-wrap {
    min-height: 100%;
    font-size: 17px;
    line-height: 28px;
    /*fallback for old browsers*/
    background: #eef2f3;
    /*W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+*/
    background: -o-linear-gradient(left, #eef2f3, #dae3eb);
    background: -webkit-gradient(linear, left top, right top, from(#eef2f3), to(#dae3eb));
    background: linear-gradient(to right, #eef2f3, #dae3eb);
}

#MessageLayout {
    min-height: 100vh;
    min-width: 100vw;
    font-size: 17px;
    line-height: 28px;
    /*fallback for old browsers*/
    background: #eef2f3;
    /*W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+*/
    background: -o-linear-gradient(left, #eef2f3, #dae3eb);
    background: -webkit-gradient(linear, left top, right top, from(#eef2f3), to(#dae3eb));
    background: linear-gradient(to right, #eef2f3, #dae3eb);
}

.culture-select {
    width: 15vw;
    text-align: center;
}

.button-container {
    display: flex;
    align-items: center; 
    justify-content: space-between;
}

.culture-select-container {
    margin-right: auto;
}

/*////////////////////////////////////////////// 
//// NAV*/

#navLinks * {
    font-size: 1.6rem;
}

#nav-action-btns .inner-close-nav {
    top: 1.1rem;
    left: 11rem;
}

#nav-action-btns .nav-save-btn {
    top: 1.1rem;
    left: 6.5rem;
    margin-left: -5rem;
}

#navLinks {
    padding: 1rem;
}

#navMenuBtn {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    position: fixed;
}

/*Nav Item Valid / Invalid Info Styles*/
.valid-nav-item-info-btn {
    background-color: rgba(54, 136, 58, .9);
    border: solid 3px rgba(54, 136, 58, 1);
    color: rgb(0,0,0);
}

.invalid-nav-item-info-btn {
    background-color: rgba(241, 185, 43, .9);
    border: solid 3px rgba(241, 185, 43, 1);
    color: rgb(0,0,0);
}

/*Choice Screening Logo*/

#navBar-CS-Logo > img {
    padding-left: 2rem;
    display: block;
    height: 4.5em;
}

@media only screen and (max-width: 56.25em) {
    #navBar-CS-Logo > img {
        height: calc(2.4em);
        padding-left: 1em;
    } 
}

/*Resonsive Nav - Tablet and down */
@media only screen and (max-width: 960px) {
    #navMenuLinks * {
        font-size: 2rem;
    }

    #navMenuLinks {
        padding-top: 3rem;
        padding-left: 3rem;
        position: absolute;
        width: 100vw;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }

    #nav-action-btns {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin: 0;
    }

    #nav-action-btns .inner-close-nav {
        top: 0;
        left: 0;
        padding: 0 2.5rem;
    }

    #nav-action-btns .nav-save-btn {
        top: 0;
        left: 0;
        margin-left: 0;
        padding: 0 2.5rem;
    } 
}

/*Company Logo*/
#navBar-CompanyLogo-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: right;
    -ms-flex-pack: right;
    justify-content: right;
    z-index: 10;
    padding: 0;
    margin: 0;
    height: auto;
    width: 29.5em;
}

#navBar-Company-Logo > img {
    height: calc(6.4em - 1.6em);
    display: block;
}

@media only screen and (max-width: 56.25em) {
    #navBar-Company-Logo > img {
        height: calc(2.4em);
        padding-right: 1em;
    }
}

/*/ ///////////////////////////////////////////// /*/
/*/ //// SECTIONS*/
#welcome-section ul > * {
    padding-left: 1rem;
    text-align: left;
}

#welcome-disclaimer {
    -webkit-transition: all ease 0.5s;
    -o-transition: all ease 0.5s;
    transition: all ease 0.5s;
    padding-left: 2rem;
    text-align: left;
}

#review,
#activation-page,
#legalInfo,
#noticesInfo,
#disclosuresInfo,
#completed-page,
#gdprInfo,
#completed-payment-page {
    padding-top: 1.5rem;
    padding-bottom: 2rem;
    text-align: center;
    -webkit-animation: fadeInFromNone .5s;
    animation: fadeInFromNone .5s;
    max-width: 120rem;
}


#applicantInfo {
    padding-top: 1.6rem;
    text-align: center;
    max-width: 120rem;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}

#gdprInfo {
    height: calc(100vh - 64px);
}


@media only screen and (max-width: 75em) {
    #legalInfo {
        padding-top: 1rem;
        padding-bottom: 2.5rem;
        text-align: center;
        max-width: 100vw;
    }
}

@media only screen and (max-width: 75em) {
    #gdprInfo {
        padding-top: 1rem;
        text-align: center;
        max-width: 100vw;
    }
}

@media only screen and (max-width: 75em) {
    #noticesInfo {
        padding-top: 1rem;
        text-align: center;
        max-width: 100vw;
    }
}

@media only screen and (max-width: 75em) {
    #noticesInfo {
        padding-top: 1rem;
        text-align: center;
        max-width: 100vw;
    }
}

@media only screen and (max-width: 75em) {
    #review {
        padding-top: 1rem;
        max-width: 100vw;
    }
}

.section-border {
    border: dashed .2rem rgba(0,0,0, 0.1);
    border-radius: .5rem;
    padding: 1rem;
}

/*Read only Sections*/
.read-only-section {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 1rem;
}

/*Call-to-Action Checkboxes, parentSignature*/
.parentSignature-component,
.cta-checkbox {
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 2px;
    padding-right: 10px;
    border-radius: .5rem;
    color: rgba(0,0,0,.95);
    background-color: var(--PrimaryShade1);
}

.cta-textonly-condensed,
.cta-checkbox-condensed {
    padding-right: 10px;
    font-size: 1rem;
    letter-spacing: 2px;
    border-radius: .5rem;
    background-color: var(--PrimaryShade1);
    color: rgba(0,0,0,.87);
}

.cta-textonly-child,
.cta-checkbox-child {
    background-color: var(--SecondaryShade1);
    border-radius: 0 0 .5rem .5rem;
    font-size: 18px;
    color: rgba(0,0,0,.87);
}

.cta-textonly-child {
    height: 3.4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.mdc-checkbox--selected > label {
    color: rgba(0,0,0,.95);
}


/*/ ///////////////////////////////////////////// /*/
/*/ //// INTERNATIONAL ADDRESS QUESTIONS */
.international-address-fieldset {
    padding: 1.5rem;
    border: solid 1px #0101;
    border-radius: .5rem;
}

.international-address-legend {
    padding: 0 1.5rem;
}

.international-address-question {
    margin-bottom: -.5rem;
}

/*/ ///////////////////////////////////////////// /*/
/*/ //// DEBUG COMPONENT*/
#DebugComponent > .mdc-dialog__container .mdc-dialog__surface {
    position: absolute;
    height: 80vh;
    min-width: 50vw;
}

@media only screen and (max-width: 376px) {
    #DebugComponent > .mdc-dialog__container .mdc-dialog__surface {
        min-height: 100vh;
        min-width: 100vw;
    }
}

#debug-window {
    height: 100%;
    width: 100%;
}

.debug-wrap {
    background-color: black;
    background-image: -o-radial-gradient(rgba(0, 150, 0, 0.75), black 120%);
    background-image: radial-gradient(rgba(0, 150, 0, 0.75), black 120%);
    height: auto;
    margin: 0;
    padding: 2rem;
    color: white;
    font: 2rem Inconsolata, monospace;
    text-shadow: 0 0 5px #c8c8c8;
}

.debug-stripes {
    height: 1rem;
    width: auto;
    background: -o-repeating-linear-gradient( 45deg, black, black 10px, yellow 10px, yellow 20px );
    background: repeating-linear-gradient( 45deg, black, black 10px, yellow 10px, yellow 20px );
}

.debug-btn {
    position: fixed;
    bottom: 2rem;
    left: 2rem;
    z-index: 1000;
}

.debug-close-btn {
    position: absolute;
    bottom: 1.5rem;
    left: 1rem;
    z-index: 1000;
}

@media only screen and (max-width: 376px) {
    /*iphone 6/7 and smaller*/
    .debug-btn,
    .debug-close-btn {
        -webkit-transform: scale(.60);
        -ms-transform: scale(.60);
        transform: scale(.60);
    }

    .debug-btn {
        bottom: 1rem;
        left: 1rem;
    }
}

.debug-browser-info {
    padding: 2rem;
    text-align: left;
}

/*SHELL-STYLE FOR MODELS*/
.shell-wrap {
    min-width: 75%;
    max-width: 90%;
    margin: 50px auto 0 auto;
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.4);
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.4);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    word-wrap: break-word;
    border-radius: 3px;
    overflow-wrap: break-word;
}

.shell-top-bar {
    text-align: center;
    color: #525252;
    padding: 5px 0;
    margin: 0;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
    font-size: 1em;
    border: 1px solid #cccccc;
    background: #f7f7f7;
    /* Old browsers */ /* FF3.6+ */ /* Chrome,Safari4+ */ /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient( top, #f7f7f7 0%, #b8b8b8 100% ); /* Opera 11.10+ */ /* IE10+ */
    background: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#b8b8b8));
    background: -o-linear-gradient(top, #f7f7f7 0%, #b8b8b8 100%);
    background: linear-gradient(to bottom, #f7f7f7 0%, #b8b8b8 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#B8B8B8',GradientType=0 ); /* IE6-9 */
}

.shell-body {
    display: inline-block;
    overflow-wrap: break-word;
    width: 100%;
    margin: 0;
    padding: 5px;
    list-style: none;
    background: #141414;
    color: #45d40c;
    font: 1.6em "Andale Mono", Consolas, "Courier New";
    line-height: 1.6em;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-bottomleft: 3px;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
    text-align: left;
    overflow: scroll;
}

.shell-body-inactive {
    display: inline-block;
    overflow-wrap: break-word;
    width: 100%;
    margin: 0;
    padding: 5px;
    list-style: none;
    background: #141414;
    color: #333;
    font: 1.6em "Andale Mono", Consolas, "Courier New";
    line-height: 1.6em;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-bottomleft: 3px;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
    text-align: left;
    word-wrap: break-word;
    overflow: scroll;
}

/*/ ///////////////////////////////////////////// /*/
/*/ //// FLOATING STATUS ICON BTN COMPONENT*/
#status-icon-container {
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
}

#floating-status-icon-btn {
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    z-index: 6;
}

.floating-status-btn-idle {
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
    background-color: var(--mdc-theme-secondary);
    min-width: 107px;
    max-width: 107px;
    max-height: 48px;
    min-height: 48px;
}

.floating-status-btn-saved {
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
    background-color: #388e3c;
    min-width: 107px;
    max-width: 107px;
    max-height: 48px;
    min-height: 48px;
}

.floating-status-btn-error {
    background-color: #fbc02d;
    min-width: 107px;
    max-width: 107px;
    max-height: 48px;
    min-height: 48px;
    font-size: .75rem;
}

.floating-status-btn-saved {
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
    background-color: #388e3c;
    min-width: 107px;
    max-width: 107px;
    max-height: 48px;
    min-height: 48px;
}

.status-spinner-fab {
    -webkit-box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2),0px 6px 10px 0px rgba(0, 0, 0, 0.14),0px 1px 18px 0px rgba(0,0,0,.12);
    box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2),0px 6px 10px 0px rgba(0, 0, 0, 0.14),0px 1px 18px 0px rgba(0,0,0,.12);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    border: none;
    fill: currentColor;
    text-decoration: none;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    -webkit-transition: opacity 15ms linear 30ms,-webkit-box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 15ms linear 30ms,-webkit-box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
    -o-transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),opacity 15ms linear 30ms,transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),opacity 15ms linear 30ms,transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),opacity 15ms linear 30ms,transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1),-webkit-box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
    background-color: var(--mdc-theme-secondary);
    color: #fff;
    min-width: 107px;
    max-width: 107px;
    max-height: 48px;
    min-height: 48px;
    -webkit-transition: all ease .5s;
    -o-transition: all ease .5s;
    transition: all ease .5s;
}

.status-spinner {
    margin-right: 2rem;
    position: absolute;
    left: .25rem;
    top: .3rem;
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
}

.status-spinner-svg {
    background-size: 2rem;
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
}

.status-spinner__label {
    width: 4rem;
    position: absolute;
    right: .9rem;
    top: 25%;
    bottom: 0;
    -webkit-transition: all cubic-bezier(.89,.06,1,1) .5s;
    -o-transition: all cubic-bezier(.89,.06,1,1) .5s;
    transition: all cubic-bezier(.89,.06,1,1) .5s;
}

@media only screen and (max-width: 376px) {
    /*iphone 6/7 and smaller*/
    .floating-status-btn-idle,
    .floating-status-btn-saved,
    .floating-status-btn-error,
    .status-spinner-fab {
        -webkit-transform: scale(.60);
        -ms-transform: scale(.60);
        transform: scale(.60);
    }

    #floating-status-icon-btn {
        right: 1rem;
        bottom: 1rem;
    }
}

/*/ ///////////////////////////////////////////// /*/
/*/ //// FORM VALIDATION POPUP DIALOG*/
.form-validation-summary-title {
    color: firebrick;
    font-weight: bold;
    font-size: 1.8rem;
}

.form-validation-summary .consent-model-error-list {
    font-size: 1.2rem;
    text-align: left;
    line-height: 22px;
    padding-left: 20px;
    font-weight: bold;
    color: firebrick;
}


/* Dialog Classes*/
#ESignDialog > .mdc-dialog__container .mdc-dialog__surface {
    max-width: 75%;
    min-width: 75%;
}

/*Iphone and below*/
@media only screen and (max-width: 375px) {
    .form-validation-summary .consent-model-error-list {
        text-align: left;
        padding-left: 3px;
        font-weight: normal;
        color: firebrick;
    }
}

/*/ ///////////////////////////////////////////// /*/
/*/ //// BLAZOR SPECIFIC*/

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

.loading-exception-message {
    color: red;
    font-weight: bold;
}

.mdc-text-field-helper-text--validation-msg {
    color: red !important;
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    -webkit-box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

/*/ ///////////////////////////////////////////// /*/
/*/ //// UTILITIES / HELPERS */
.pb-2 {
    padding-bottom: 2rem;
}

.pt-half {
    padding-top: 0.5rem;
}

.pt-1 {
    padding-top: 1rem;
}

.pt-2 {
    padding-top: 2rem;
}

.pt-3 {
    padding-top: 3rem;
}

.pt-4 {
    padding-top: 4rem;
}

/*Padding Left*/
.pl-0 {
    padding-left: 0;
}

.pl-half {
    padding-left: 0.5rem;
}

.pl-1 {
    padding-left: 1rem;
}

.pl-2 {
    padding-left: 2rem;
}

.pl-3 {
    padding-left: 3rem;
}

.pl-4 {
    padding-left: 4rem;
}

/*Padding Right*/
.pr-0 {
    padding-right: 0;
}

.pr-half {
    padding-right: 0.5rem;
}

.pr-1 {
    padding-right: 1rem;
}

.pr-2 {
    padding-right: 2rem;
}

.pr-3 {
    padding-right: 3rem;
}

.pr-4 {
    padding-right: 4rem;
}
/*Padding Y-Axis*/

.py-1 {
    padding: 1rem 0;
}

.py-2 {
    padding: 2rem 0;
}

.py-3 {
    padding: 3rem 0;
}

.py-4 {
    padding: 4rem 0;
}

/*Padding X-Axis*/

.px-1 {
    padding: 0 1rem;
}

.px-2 {
    padding: 0 2rem;
}

.px-3 {
    padding: 0 3rem;
}

.px-4 {
    padding: 0 4rem;
}

.pa-1 {
    padding: 1rem;
}

.pa-2 {
    padding: 2rem;
}

.pa-3 {
    padding: 3rem;
}

.pa-4 {
    padding: 4rem;
}

.pa-5 {
    padding: 5rem;
}

.t-left {
    text-align: left;
}

.t-center {
    text-align: center;
}

.t-right {
    text-align: right;
}

.strong {
    font-weight: 700;
    padding-top: 4rem;
}

.strong-cta {
    font-size: 1.3rem;
    text-align: left;
}

/*Margins*/
.mt-0 {
    margin-top: 0;
}

.mt-1 {
    margin-top: 1rem;
}

.mt-2 {
    margin-top: 2rem;
}

.mt-3 {
    margin-top: 3rem;
}

.mt-4 {
    margin-top: 4rem;
}

.mt-5 {
    margin-top: 5rem;
}

.mb-0 {
    margin-bottom: 0;
}

.baseline-text {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
}

.multiline-label {
    line-height: 2.5em;
    padding-bottom: .8em;
}

.position-relative {
    position: relative;
}

footer {
    display: flex;
    justify-content: center;

    /*W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+*/
    background: -o-linear-gradient(left, #eef2f3, #dae3eb);
    background: -webkit-gradient(linear, left top, right top, from(#eef2f3), to(#dae3eb));
    background: linear-gradient(to right, #eef2f3, #dae3eb);
}