

@font-face {
    font-family: "Roboto Regular";
    src: url(https://id-content.subway.com/content/assets/fonts/Roboto-Regular.ttf) format("truetype");
}

@font-face {
    font-family: "Roboto Bold";
    src: url(https://id-content.subway.com/content/assets/fonts/Roboto-Bold.ttf) format("truetype");
}

@font-face {
    font-family: "Roboto Black";
    src: url(https://id-content.subway.com/content/assets/fonts/Roboto-Black.ttf) format("truetype");
}

@font-face {
    font-family: "Roboto Light";
    src: url(https://id-content.subway.com/content/assets/fonts/Roboto-Light.ttf) format("truetype");
}

@font-face {
    font-family: "Graphik";
    src: url(https://id-content.subway.com/content/assets/fonts/GraphikRegular.otf) format("opentype");
}

@font-face {
    font-family: "Graphik Bold";
    src: url(https://id-content.subway.com/content/assets/fonts/GraphikBold.otf) format("opentype");
}

@font-face {
    font-family: "Graphik Black";
    src: url(https://id-content.subway.com/content/assets/fonts/GraphikBlack.otf) format("opentype");
}

@font-face {
    font-family: "Graphik Light";
    src: url(https://id-content.subway.com/content/assets/fonts/GraphikLight.otf) format("opentype");
}

@font-face {
    font-family: "Graphik Cond";
    src: url(https://id-content.subway.com/content/assets/fonts/GraphikCond.woff2) format("opentype");
}

@font-face {
    font-family: "Subway Sans LCG";
    src: url(https://id-content.subway.com/content/assets/fonts/SubwaySansLCG-Regular.woff2) format("opentype");
}

@font-face {
    font-family: "Subway Sans LCG Medium";
    src: url(https://id-content.subway.com/content/assets/fonts/SubwaySansLCG-Regular.woff2) format("opentype");
}

@font-face {
    font-family: "Subway Sans LCG Bold";
    src: url(https://id-content.subway.com/content/assets/fonts/SubwaySansLCG-Bold.woff2) format("opentype");
}

/*  Need to avoid this until we can fix webpack config

    @font-face {
    font-family: "Roboto";
    src: url('https://fonts.googleapis.com/css?family=Roboto');
}*/



/*-
    -�Roboto Light� for body copy (replaces Subway Six-Inch)
    -�Roboto Bold� for headlines/subheads (replaces Subway Footlong)
    -�Roboto Regular� for body copy that needs emphasis/heavier weight (do not use the �Bold� font for such purposes)*/

.body_text {
    font-family: Roboto Light;
    font-size: 16px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.5;
    text-align: center;
    color: #393839;
    color: var(--grey4);
}

.link_text {
    font-family: Roboto Light;
    font-size: 14px;
    font-weight: 500;
    font-style: normal;
    font-stretch: normal;
    text-align: left;
    color: #77787b;
    color: var(--grey3);
}

.policy_text {
    font-family: Roboto Light;
    font-size: 12px;
    font-weight: 500;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.33;
    text-align: center;
    color: #77787b;
    color: var(--grey3);
}

.agree_text {
    font-family: Roboto Light;
    font-size: 12px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.33;
    text-align: center;
    color: #b1b3b6;
    color: var(--grey2);
}

.offer_text {
    font-family: Roboto Light;
    font-size: 12px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    color: #393839;
    color: var(--grey4);
}

.code_text {
    font-family: Roboto Light;
    font-size: 11px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    text-align: center;
    color: #b1b3b6;
    color: var(--grey2);
}

.required_text {
    font-family: Roboto Light;
    font-size: 11px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    text-align: left;
    color: #23b054;
    color: var(--green);
}

.hint_text {
    font-family: Roboto Light;
    font-size: 11px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    text-align: left;
    color: #b1b3b6;
    color: var(--grey2);
}

.error_text {
    font-family: Roboto Light;
    font-size: 11px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    text-align: left;
    color: #ef3e24;
    color: var(--red);
}
:root {
    --green: #00833c;
    --grey3: #545454;
    --grey2: #999999;
    --grey1: #CCCCCC;
    --red: #DF0000;
    --orange: #EE7600;
    --magenta: #9F1A65;
    --white: #FFF;
}

body {
    font-family: "Roboto Light", "Arial", "Helvetica", "sans-serif" !important;
    color: #545454 !important;
}

#header {
    border-bottom: 1px dotted #c9c9c9;
    margin-bottom: 18px;
}

    #header img {
        /*width: 329px;
        height: 66px;*/
        max-height: 66px;
        margin: 23px 20px 18px 0;
    }

#pageTitle {
    display: inline-block;
    vertical-align: bottom;
    margin: 0 0 14px 0;
    font-size: 32px;
    color: #00833c;
    font-family: "Roboto Regular", "Arial", "Helvetica", "sans-serif";
}

#header span.glyphicon.glyphicon-remove-sign {
    margin: 23px 25px 0 0;
    width: 44px;
    height: 44px;
    font-size: 44px;
    color: #00833c;
    float: right;
    cursor: pointer;
}

#intro {
    color: #545454;
    font-size: 24px;
    margin: 28px 0 45px 0;
    line-height: 30px;
}

label {
    padding-top: 0 !important;
    font-size: 24px !important;
    color: #545454 !important;
    font-weight: 100 !important;
}


input {
    height: 40px !important;
    width: 600px !important;
    color: #545454 !important;
    font-size: 21px !important;
    border-radius: 0 !important;
}

    input:focus, textarea:focus {
        box-shadow: 0 0 5px rgba(81, 203, 238, 1) !important;
        padding: 3px 0px 3px 3px;
        border: 1px solid rgba(81, 203, 238, 1) !important;
    }

.entry-item label span {
    color: #00833c !important;
    margin-left: auto;
    margin-right: auto
}

.entry-item {
    margin-left: auto;
    margin-right: auto
}

#closeIcon {
    background-color: Transparent !important;
    background-repeat: no-repeat;
    border: none;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    float: right;
    width: auto !important;
}

    #closeIcon:focus {
        box-shadow: 0 0 5px rgba(81, 203, 238, 1) !important;
        padding: 3px 0px 3px 3px;
        outline: 5px auto -webkit-focus-ring-color !important;
        border: 1px solid rgba(81, 203, 238, 1) !important;
    }

.clearButton {
    background-color: Transparent !important;
    background-repeat: no-repeat;
    border: none;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    float: right;
}

    .clearButton:focus {
        border: 0 !important;
        box-shadow: 0 0 0 rgb(94,158,214) !important;
    }

.buttons {
    max-width: 400px !important;
    height: auto !important;
    background-color: #00833c !important;
    color: #FFF !important;
    font-family: "Roboto Bold" !important;
    font-size: 32px !important;
    cursor: pointer !important;
    margin: 0 auto !important;
    text-align: center !important;
    vertical-align: middle !important;
    margin-bottom: 27px !important;
}

    .buttons:focus {
        border: 1px solid rgb(94,158,214) !important;
        box-shadow: 0 0 5px rgb(94,158,214) !important;
    }

button {
    background-color: #00833c !important;
    width: 400px !important;
}

    button:disabled {
        background-color: #ededed !important;
        color: #bababa !important;
    }

    button:focus {
        box-shadow: 0 0 5px rgba(81, 203, 238, 1) !important;
        padding: 3px 0px 3px 3px;
        border: 1px solid rgba(81, 203, 238, 1) !important;
    }

#next:active, #continue:active {
    background-color: #fff;
    color: #23b054;
    transition: background-color 0.3s;
}


.clicked {
    border: 1px solid #23b054 !important;
    background-color: #fff !important;
    color: #23b054 !important;
    transition: background-color 0.3s;
}

#forgotPassword {
    color: #545454 !important;
    font-size: 24px !important;
    text-decoration: underline !important;
    display: block !important;
    margin-bottom: 55px !important;
    width: 100%;
    max-width: 450px;
    margin-left: 35%;
    text-align: left;
}

.hint-block {
    margin: 20px 0;
    font-size: 18px;
    color: #545454;
}

.error.itemLevel {
    display: none !important;
}

.error-block, .error {
    font-size: 14px;
    color: #DF0000;
}


@media (max-width: 991px), (max-device-width: 991px) and (orientation: portrait){
    #forgotPassword {
        margin-left: 3.33%;
    }
}

#secondary {
    text-align: center;
    font-size: 24px;
    text-decoration: none;
    margin-top: 30px;
}

    #secondary a {
        color: #545454;
    }

        #secondary a span {
            color: #00833c;
            text-decoration: underline;
            font-family: "Roboto Bold";
        }

p {
    text-align: center !important;
    font-size: 24px !important;
    text-decoration: none !important;
    margin-top: 30px !important;
    font-family: "Roboto Light" !important;
}

    p a {
        color: #00833c !important;
        text-decoration: underline !important;
        font-family: "Roboto Bold" !important;
        padding: 10px;
    }



.showHide {
    display: block;
    position: absolute;
    right: 25px;
    top: 4px;
    font-size: 24px;
    color: #545454;
    background-color: Transparent !important;
    background-repeat: no-repeat;
    border: none;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    float: right;
    width: auto !important;
}

input#password {
    padding-right: 100px !important;
}

select {
    width: 100%;
    height: 40px;
    padding-left: 10px;
    font-size: 21px;
    border: 1px solid #999999;
    border-radius: 0 !important;
    background-color: #fff;
    background: url("https://cdn4.iconfinder.com/data/icons/ionicons/512/icon-arrow-down-b-128.png") no-repeat right #fff;
    background-size: contain;
    -webkit-appearance: none;
    -moz-appearance: none;
}

    /*for IE10*/
    select::-ms-expand {
        display: none;
    }

.intl-tel-input {
    width: 100%;
}

/* override Firefox styling for required inputs */
:-moz-ui-invalid:not(output) {
    box-shadow: none;
}

@media only screen and (max-width: 768px) {
    #header {
        text-align: center;
        margin-bottom: 18px;
    }

        #header img {
            margin: 26px 0 17px 0;
            /*width: 60%;
            height: 60%;*/
            max-height: 66px;
        }

        #header div span.glyphicon {
            display: block;
            position: absolute;
            right: 0;
        }

        #header span.glyphicon.glyphicon-remove-sign {
            font-size: 30px;
            margin-right: 0;
        }

    #pageTitle {
        display: block;
    }
}

@media only screen and (max-width: 992px) {
    #header div span.glyphicon {
        display: block;
        position: absolute;
        right: 0;
    }
}


.highlightError {
    border: 1px solid #DF0000 !important;
}

    .highlightError:focus {
        outline: 1px !important;
    }

.hint-block {
    margin: 20px 0;
    font-size: 18px;
    color: #545454;
}

.error-block, .error {
    font-size: 14px;
    color: #DF0000;
}

.tick-mark {
    font-size: 28px;
    display: none;
    height: 40px;
    align-items: center;
    color: #00833c;
}

#api {
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 768px) {
    #api {
        width: 750px;
    }
}

@media (min-width: 992px) {
    #api {
        width: 970px;
    }
}

#api .localAccount {
    margin: auto;
}

    #api .localAccount .entry .entry-item {
        position: relative;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 30px !important;
    }

@media (min-width: 992px) {
    #api .localAccount .entry .entry-item {
        text-align: right;
    }
}

#api .localAccount .entry .entry-item label {
    display: block;
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

@media (min-width: 992px) {
    #api .localAccount .entry .entry-item label {
        display: inline;
    }
}

@media (min-width: 992px) {
    #api .localAccount .entry .entry-item .password-label {
        display: inline;
        width: 63.33%;
    }
}

#api .localAccount .entry .entry-item input {
    position: relative;
    min-height: 1px;
    margin-right: 15px;
    margin-left: 15px;
    width: 100%;
    height: 40px;
    padding: 6px 12px;
    border-width: 2px;
    border: 0.5px solid #999999;
}

#api .localAccount .entry .entry-item .error-block {
    font-size: 18px !important;
    margin-top: 5px !important;
    margin-bottom: 10px !important;
    width: 100%;
    max-width: 500px;
    margin-left: 34.66%;
    text-align: left !important;
    font-family: "Roboto Light" !important;
}

@media (min-width: 992px) {
    #api .localAccount .entry .entry-item input {
        width: 58.33333%;
    }
}

@media (max-width: 786px) {
    #api .localAccount .entry .entry-item input {
        width: 96% !important;
    }
}

#api .localAccount .entry .entry-item .forgot-password {
    margin-left: 34.6666%;
    text-align: left;
    padding-top: 15px;
}

@media (max-width: 991px) {
    #api .localAccount .entry .entry-item .forgot-password {
        margin-left: 2%;
    }

    #api .localAccount .entry .entry-item .error-block {
        margin-left: 3%;
    }
}

@media (max-width: 991px), (max-device-width: 991px) {
    #api .localAccount .entry .entry-item .showHide {
        top: 40px;
        right: 115px;
    }
}

@media (max-width: 786px), (max-device-width: 786px) {
    #api .localAccount .entry .entry-item .showHide {
        right: 21px;
    }
}

#api .localAccount .entry .buttons button {
    width: 100% !important;
    max-width: 400px !important;
    border: 0;
}



@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
    #api .localAccount .entry .entry-item .showHide {
        top: 0px;
        right: 21px;
    }

}