 body
        {            
            font-size: 16px;
            position: static !important; /* Kurt addition to override wherever position: relative is coming from */
        }
/*helper classes*/
.pad-top-sm{padding-top:5px;}
.pad-top-md{padding-top:10px;}
.pad-top-lg{padding-top:15px;}

.padded-section-xs{padding:5px 0;}
.padded-section-sm{padding:15px 0;}
.padded-section-md{padding:20px 0;}
.padded-section-lg{padding:30px 0;}

.relative{position: relative;}
.absolute{position: absolute;}

.heading-font{font-family: 'Abel'}

/*page styles*/
.site-header{left: 0;position: relative;top: 0;width: 100%;z-index: 999;border-bottom:5px solid #F83040;}
.top-header{background:#053B81}

.site-data{margin-top: 0px;}
.navbar-default .navbar-toggle{color: #fff}
.navbar-default .navbar-toggle:hover{color: #053B81}

/*sec-links*/
.sec-links{float:right;padding: 0;}
.sec-links li{float:left;padding:5px 5px 5px 11px;position: relative;}
.sec-links li+li:before{content:'|';font-size: 12px;position: absolute;left: 0;top: 11px;color:#dfdfdf;}
.sec-links a{color:#e0e0e0;font-size: 14px;line-height: 30px}
.sec-links a:hover{color:#fff;}

/*home-cta*/
.home-cta{background: url(../img/home-cta.png) no-repeat top center; background-attachment: fixed; background-size: cover}

/*wells*/
.well-transparent{background: rgba(240,240,240,0.8);box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.75);}
.well-head{font-family: 'Abel', sans-serif;margin-bottom: 10px;}
.well-head h3 {background: #053b81;color: #fff;margin: 0 15px 0 -20px;padding: 5px 20px;position: relative}
.well-head h3::after {border-color: #053b81 transparent transparent;border-style: solid;border-width: 35px 15px 0 0;content: "";height: 0;position: absolute;right: -15px;top: 0;width: 0;}
.well-collapse{padding-bottom: 0;}


/*list styles*/


.circle-list li {padding: 7px 20px 8px 35px;margin:0 -20px; position: relative;}
.circle-list > li::before {color: #999;content: '\f10c';font-family: "FontAwesome";font-size: 12px;left: 20px;position: absolute;top: 17px;}
.circle-list a {font-family: "Abel";font-size: 18px;line-height: 35px;color: #333}


/*list borders and paddings*/
.alert-list li, .news-list li {margin: 0 -20px;padding: 8px 20px; position: relative;}
.circle-list li+li, .alert-list li+li, .news-list li+li {border-top: 1px solid #efefef;}


/*news styles*/
.news-module p{margin:0;font-size: 14px;}

.news-img {float: left; height: 80px;width: 80px;}
.news-head {float: right;width: calc(100% - 90px);}
.news-head small{color: #666; font-size: 12px;}

.news-content{padding: 5px 0 0;font-size: 14px;}

.news-pagi {text-align: right}
.news-pagi li{display: inline-block;}
.news-pagi a{font-size: 12px; line-height: 14px;}

/*alert module*/


.alert-total{background: rgb(217,83,79);
background: -moz-radial-gradient(center, ellipse cover, rgba(217,83,79,1) 0%, rgba(212,63,58,1) 100%);
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,rgba(217,83,79,1)), color-stop(100%,rgba(212,63,58,1)));
background: -webkit-radial-gradient(center, ellipse cover, rgba(217,83,79,1) 0%,rgba(212,63,58,1) 100%);
background: -o-radial-gradient(center, ellipse cover, rgba(217,83,79,1) 0%,rgba(212,63,58,1) 100%);
background: -ms-radial-gradient(center, ellipse cover, rgba(217,83,79,1) 0%,rgba(212,63,58,1) 100%);
background: radial-gradient(ellipse at center, rgba(217,83,79,1) 0%,rgba(212,63,58,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d9534f', endColorstr='#d43f3a',GradientType=1 );border:1px solid #c21e18;width:60px; line-height: 60px;float: left;color:#fff;border-radius: 50%;text-align: center;}

.alert-message{float: right;width: calc(100% - 70px);}
.alert-message h4{color: #053B81}
.alert-message p{font-size: 14px;}

.alert-sub{background: url(../img/my-alerts.png) no-repeat 20px 12px rgba(18, 18, 18, 0.80);text-align: right;margin:0 -20px -1px;padding: 10px 20px;margin-top:10px;}
.alert-links li{font-size: 14px; color:#fff;}
.alert-links  a+a:before{content:'|';font-size: 12px;color:#dfdfdf;margin:0 5px;}
.alert-links a{font-size: 14px; color:#fff;}

/*footer styles*/
.site-footer{background: #fefefe; padding-top: 10px; line-height: 1.6;}
.site-footer h3{margin-bottom: 20px;}
.footer-info{margin-bottom: 100px;}
.footer-content p{font-size: 14px;line-height: 22px}

.footer--map {
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0;
}

.quick-links li{float:left;position: relative;}
.quick-links li+li{padding:0 0 0 15px;margin:0 0 0 10px}
.quick-links li+li:before{content:'|';font-size: 12px;position: absolute;left: 0;top: 3px;color:#666;}


/*time-list*/
.time-list span,.time-list strong{float:left;font-size: 14px;line-height: 18px}
.time-list .day{width:100px;}

.contact-list{margin-top: 10px;}
.contact-list li+li{margin-top: 5px;}
.contact-list strong,.contact-list span{display: /* block; */inline;}
.contact-list strong{font-weight: 500;margin-bottom: 3px;font-family: 'Abel';font-size: 18px;}
.contact-list strong:before{content:'\f095 '; font-family: 'FontAwesome'; margin-right: 5px; color: #3eb4e4;}
.contact-list span{font-size: /* 14px; */15px;}


/*social icons*/
/*social icons*/
.social-links {margin-top: 15px}
.social-links li {float: left}
.social-links li+li {margin-left: 5px;}
/*.social-links a {   
   border-radius: 50%;
   font-size: 18px;
    line-height: 45px;
    text-align: center;
    width: 45px;
    color: #FFF;
    padding: 10px;
}*/

.social-links a {
    border-radius: 50%;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    width: 40px;
    height: 40px;
    color: #FFF !important;
    padding: 10px;
    transition: 0.15s all ease-in-out;
}
.social-links a:hover,
.social-links a:focus {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
    transition: 0.15s all ease-in-out;
}

.Facebook{background: #3b5998;}
.Twitter{background: #55acee;}
.Youtube{background: #cd201f;}
.Instagram{background: #3f729b;}
.Pinterest{background: #cc2127;}
.Community{background: #053B81;}

/*copyright section*/
.copyright-etc{border-top: 1px solid #ccc}

/* Document Images */
.external{ padding-right:15px!important; background:url(../img/external_10by10.png) no-repeat right 4px; }
.excel{ padding-right:17px; background:url(../img/excel_12by12.png) no-repeat right 4px; }
.word{ padding-right:17px; background:url(../img/word_12by12.png) no-repeat right 4px; }
.pdf{ padding-right:17px; background:url(../img/pdf_icon.png) no-repeat right 4px; }
.txt{ padding-right:17px; background:url(../img/text_12by12.png) no-repeat right 4px; }

/*dnn override fixes*/
#dnn_dnnLogin_loginGroup{display:none;} /*overwriting DNN login control*/
.DnnModule-DNN_HTML>a{display:none;} /*hide extra anchor generated by dnn*/

.module { letter-spacing: 0; } /* override DNN container */

/****************
Innerpage Styles
****************/

.shadow-section{border:1px solid #f1f1f1;border-top: 2px solid #053B81;box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.49);}

.lightGrayBackground {background-color: #e3e3e3;}

.sec-navbar-toggle {background: #053b81;color: #fff;display: block;line-height: 45px;margin: 0 -1px 5px;text-align: center;display: none}
.sec-navbar-toggle:active,.sec-navbar-toggle:focus,.sec-navbar-toggle:hover {color: #fff;}

.accordion.sec-nav>li{margin: 0 -1px}
.accordion.sec-nav>li>a{font-family: 'Abel'; font-size: 18px; line-height: 40px;padding: 0 20px;background: #fff;display: block;color:#333;}
.accordion.sec-nav>li>a:hover,.accordion.sec-nav>li>a.active{background: #053b81; color: #fff;}
.accordion.sec-nav .fa {float: right;line-height: inherit;}

.ada-links {background: #454545;}
.ada-links a {color: #fff;display: block;font-size: 20px;line-height: 45px;}


.sub-nav{background: #fbfbfb;padding: 5px 0;}
.sub-nav i{display: none;}
.sub-nav>li{position: relative;}
.sub-nav>li::before {color: #999;content: '\f10c';font-family: "FontAwesome";font-size: 12px;left: 20px;position: absolute;top: 7px;}
.sub-nav>li+li{margin-top:3px;}
.sub-nav>li>a{font-size: 14px; line-height: 30px;padding: 0 20px 0 35px;color:#666;display: block;}
.sub-nav>li>a.active, .sub-nav>li>a:hover{color:#053B81;}
.sub-nav>li>a.active i, .sub-nav>li>a:hover i{display: block}

.ada-links{margin: 0 -1px -1px}
.ada-links li{float:left;width:25%;text-align: center}

.aside-section{padding:15px;}
.aside-section + .aside-section {border-top: 1px solid #d8d8d8;}
.aside-date {background: #3eb4e4;color: #fff;display: block;font-style: italic;margin: 10px 0 10px -16px;padding: 5px 20px;width: 100%;position: relative}
.aside-date::after {border-color: #3eb4e4 transparent transparent;border-style: solid;border-width: 35px 15px 0 0;content: "";height: 0;position: absolute;right: -15px;top: 0;width: 0;}
.aside-content{font-size: 14px;}


/*page-content*/
.page-content-area h2,.page-content-area h3,.page-content-area h4,.page-content-area h5,.page-content-area h6{font-family: 'Abel'}
.page-content-area h2{margin-bottom: 15px}
.page-content-area h2 ~ h2{margin-top: 30px}
.page-content-area h3{margin-bottom: 15px}
.page-content-area h4{margin-bottom: 10px}
.page-content-area h5{margin-bottom: 5px}
.page-content-area h6{margin-bottom: 5px}

.page-content-area p:not(.routes-description){font-size: 14px; line-height: 18px;margin-bottom: 8px;}
.page-content-area .bullets { font-size: 14px; }

.cta-link{color:#fff;padding: 20px;}
.cta-list li{position: relative;padding: 3px 0 3px 20px}
.cta-list li::before{color: #f1f1f1;content: '\f10c';font-family: "FontAwesome";font-size: 12px;left: 0px;position: absolute;top: 3px;}
.cta-link{margin-bottom: 10px;}
.bus-stops{background: url(../img/bus-stop.png) no-repeat left top; background-size: 100%;}
.detroit-dtw{background: url(../img/detroit-dtw.png) no-repeat left top; background-size: 100%;}

.additional-row.grey-light{background: #f7f7f7}
.additional-row.grey-dark{background: #d8d8d8}
.additional-row h4{margin-bottom: 5px;font-family: 'Abel'}

.additional-links + .additional-links{margin-top: 25px;}
.additional-links a, .additional-links p{font-size: 14px;}

.partners-list li, .inline-list li{display: inline-block}
.partners-list li{width:calc(100% / 8);text-align: center }
.inline-list li+li{margin-left: 10px}


/* added by Kurt - add this to a link surrounding HTML content */
.link--image-inline { display: block; width: 100%; height: 100%; }
.link--image-inline img { display inline-block; vertical-align: middle; padding: 0 20px;}
.link--image-inline h3 { display: inline-block; vertical-align: middle; }

/* Added by Sameer */

.pt12 {padding-top: 12px;}
.pt15 {padding-top: 15px;}
.pb12 {padding-bottom: 12px;}
.pb15 {padding-bottom: 15px;}


/* Schedules styles */
#Schedules .row {
    margin: 0;
}

.schedules-selection {
    padding: 20px;
}

.schedules-selection select {
    max-width: 100%;
    margin: 5px 0;
    margin-bottom: 20px;
    display: block;
}

@media (max-width: 900px) {
    .schedules-selection select {
        width: 100%;
    }
}

.schedules-utility {
    padding: 20px;
}

.utility-links {
    background: #eee;
    width: 100%;
    border: 1px solid #aaa;
}

.utility-links li:not(:last-of-type) {
    border-bottom: 1px solid #aaa;
}

.utility-links li a {
    margin-left: 36px;
    padding: 10px 0;
    display: block;
    width: calc(100% - 36px);
    max-width: calc(100% - 36px);
}

@media (min-width: 900px) {
    .schedules-utility, .schedules-selection {
        width: 50%;
        float: left;
    }
}

.route-description {
    padding: 10px 0;
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
}

.schedules-utility-list {
    margin: 25px 0 0 0;
    border: 1px solid #ddd;
}

.schedules-utility-list li {
    border-bottom: 1px solid #ddd;
}

.schedules-utility-list li:last-child {
    border-bottom: none;
}

.schedules-utility-list a {
    text-decoration: none;
    color: #555;
    display: block;
    padding: 10px;
    background: #f7f7f7;
    font-weight: 700;
    font-size: 14px;
    font-size: 1.4rem
}

.schedules-utility-list a i {
    width: 20px;
    color: #043B81;
    font-weight: 400
}

.schedules-utility-list a:hover,
.schedules-utility-list a:focus {
    background: #111;
    color: #fff;
}

.schedules-utility-list a:hover i,
.schedules-utility-list a:focus i {
    color: #fff;
}

.schedules-step,
.cart-step {
    position: relative;
/*    padding: 20px;
    background: #f7f7f7;
    border: 1px solid #eee;*/
    margin-bottom: 20px;
}

.schedules-step .form-entry label {
    font-weight: 600;
}

/*.schedules-step #ddlRoutes {
    width: 80%;
    display: block;
}*/

.schedule-row {
    margin: 0 -10px 10px;
}

.schedule-row:after,
.group:after {
    clear: both;
    content: '';
    display: table;
}

.schedule-row__third {
    width: 100%;
    padding: 0 10px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media (min-width: 730px) {
    .schedule-row__third {
        width: 33.33333%;
        float: left;
    }
}

.schedules-description {
    font-size: 14px;
    font-size: 1.4rem;
    padding-left: 38px;
    position: relative;
}

.schedules-description:before {
    display: inline-block;
    width: 48px;
    height: 48px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    color: #fff;
    background: #111;
    line-height: 48px;
    text-align: center;
    position: absolute;
    left: -24px;
    top: 0px;
    content: 'i';
    font-weight: 700;
    font-family: 'Georgia', serif;
    font-style: italic;
    font-size: 24px;
}

.schedules-map-img {
    margin: 10px 0;
}

.print-button {
    text-transform: uppercase;
    font-weight: 700;
    position: relative;
}

.print-button:before {
    position: absolute;
    left: -60px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: url('../img/icon--printer.svg');
    width: 60px;
    height: 60px;
}

.sched-table-help,
.sched-table-legend,
.sched-table-print {
    margin-bottom: 10px;
}

@media (min-width: 730px) {
    .sched-table-row {
        display: table;
        width: 100%;
        table-layout: fixed;
        margin-bottom: 10px;
    }
    .sched-table-help,
    .sched-table-legend,
    .sched-table-print {
        display: table-cell;
        vertical-align: middle;
        margin-bottom: 0;
    }
/*    .sched-table-legend {
        text-align: right;
    }*/
    .sched-table-print {
        width: 20%;
        text-align: right;
    }
}

.scrollable-table {
    overflow: hidden;
    position: relative;
    margin-bottom: 10px;
}

.scrollable-table table {
    margin-bottom: 0
}

.scrollable-table.has-scroll:after {
    position: absolute;
    top: 0;
    left: 100%;
    width: 50px;
    height: 100%;
    border-radius: 10px 0 0 10px / 50% 0 0 50%;
    box-shadow: -5px 0 10px rgba(0, 0, 0, 0.25);
    content: ''
}

.scrollable-table__wrapper {
    overflow-x: auto;
}

.scrollable-table__wrapper::-webkit-scrollbar {
    height: 12px;
}

.scrollable-table__wrapper::-webkit-scrollbar-track {
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.15) inset;
    background: #f0f0f0;
}

.scrollable-table__wrapper::-webkit-scrollbar-thumb {
    border-radius: 6px;
    background: #043B81;
}

.heading--lined {
    border-bottom: 5px solid #E41616;
    padding-bottom: 10px;
}

.sched-header {
    background-color: #043B81;
    color: #fff !important; /* override bootstrap */
    font-weight: 700 !important; /* override bootstrap */
    padding: 10px;
    font-family: "Verdana", sans-serif !important;
}


.schedules-stop-name {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 700;
}

.schedules-table-wrapper {
    overflow-x: scroll;
}

.schedules-table {
    table-layout: fixed;
    margin: 0;
    border: none;
    box-sizing: border-box;
}

.schedules-table th,
.schedules-table td {
    width: 140px;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 10px;
    position: relative;
    border: none;
    box-sizing: border-box;
    text-align: center;
}

.schedules-table .button-mini {
    font-size: 12px;
    font-size: 1.2rem;
    border: none;
    background: none;
    text-transform: uppercase;
    font-weight: bold;
}

.schedules-table .button-reset {
    color: #E41616;
}

.schedules-table .small-cell {
    width: 90px;
}

.schedules-table td {
    border-right: 1px solid #eee;
}

/*.schedules-table tr:nth-child(2n+2) td {
    border-right: 1px solid #ccc;
}*/

.schedules-table thead {
    border: none;
    background: #fff;
}

.schedules-table th {
    border-bottom: 3px solid #043B81;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
}

.schedules-table .route-cell {
    width: 60px;
}

/*.schedules-table .first-stop,
.schedules-table .end-stop {
    padding-left: 30px;
}*/
td.alerts-item-row {
    padding: 0;
}

.alerts-pane {
    z-index: 1;
    position: absolute;
    right: 0;
    top: 135px;
    background: #fff;
    width: 100%;
}
@media (min-width: 769px) {
    .alerts-pane {
        top: 219px;
        width: calc(100% - 310px);
    }
}
/*@media (min-width: 991px) {
    .alerts-pane {
        top: 115px;
    }
}*/
/*@media (min-width: 906px) {
    .alerts-pane {
        top: 272px;
    }
}
@media (min-width: 906px) {
    .alerts-pane {
        top: 231px;
    }
}
@media (min-width: 927px) {
    .alerts-pane {
        top: 118px;
        top: 182px;
    }
}
@media (min-width: 993px) {
    .alerts-pane {
        top: 120px;
    }
}
@media (min-width: 1028px) {
    .alerts-pane {
        top: 120px;
    }
}*/
@media (min-width: 846px) {
    .alerts-pane {
        top: 178px;
    }
}
@media (min-width: 882px) {
    .alerts-pane {
        top: 118px;
    }
}
@media (min-width: 993px) {
    .alerts-pane {
        top: 182px;
    }
}
@media (min-width: 1012px) {
    .alerts-pane {
        top: 120px;
    }
}

.alerts-pane--trip {
    width: 100%;
}
@media (min-width: 769px) {
    .alerts-pane--trip {
        width: calc(100% - 420px);
    }
}

.container--home-alerts {
    position: relative;
}

.alerts--more-link {
    width: 100%;
    display: block;
    background: #000;
    color: #fff !important;
    font-weight: bold;
    padding: 10px;
    text-transform: uppercase;
    position: relative;
}
.alerts--more-link:after {
    content: '';
    border: 2px solid #F83040;
    border-left: none;
    border-bottom: none;
    width: 16px;
    height: 16px;
    position: absolute;
    transform: translateY(-50%) rotate(45deg);
    top: 50%;
    transition: 0.2s all ease-in-out;
}
.alerts--more-link:hover,
.alerts--more-link:active,
.alerts--more-link:focus {
    background: #000;
    transition: 0.2s all ease-in-out;
}
.alerts--more-link:hover:after,
.alerts--more-link:active:after,
.alerts--more-link:focus:after {
    margin-left: 10px;
    transition: 0.2s all ease-in-out;
}

.schedules-table .first-stop i,
.schedules-table .end-stop i {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    left: 5px;
}

.schedules-table .first-stop {
    background: #F1F6E1;
    color: #0c661c;
}

.schedules-table .end-stop {
    color: #D70000;
    background: #F0E2E2;
}

.schedules-table td.set-time-cell,
.schedules-table th.set-time-cell {
    width: 140px;
    text-align: center;
    overflow: hidden;
    position: relative;
    border-right: none;
}

.schedules-table tr:nth-child(2n+2) td.set-time-cell {
    border-right: none;
}

.schedules-table td.set-time-cell:after {
    content: '';
    position: absolute;
    width: 1px;
    right: -1px;
    top: -20px;
    bottom: -20px;
    box-shadow: -3px 0 10px #000;
}

.schedules-table .start-row .set-time-cell:before,
.schedules-table .end-row .set-time-cell:before {
    position: absolute;
    top: 50%;
    margin-top: -12px;
    left: 0;
    content: '';
    width: 24px;
    height: 24px;
}

.schedules-table .start-row .set-time-cell:before {
    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAA0RJREFUSA21Vm1Ik1EUfu422kw3I8N0zTSlKfbDFFNCkijUwo8oIumDxKERkUVgFLioCIJ+9WGQP2yjTISiJEmzpCATQhGDwPKjSYQMMcFyas7e7e2879x8176M8v7Ye+49z33OOfeec+4YgozdFWE6OeR7wFgheCQxxrQCnOd5KxgsJLQ64Hj6vP7naCAa5k+RZ1ipVcrkl0lZTuRyfxjPGs87eMBsdzoudphmrZ71BcHHQKFBXSKTsQfkofpPcNA5D5vTyR9pNdlapDgv74orNKeYDGbyWiUFLUlmUNLe0uQM1fehPnu3e48nAtFzOZoBgv3T4J1OB/a6IxENCGeukikGgh9LIpLXZ0OlBObswxj82hvYDTquOSeXItyJQkAJFxqMPO/ASxi2ZyNcRLt4uSkLms3H0NDvxxDdn8gJVDIhFRVQfAmULbllH1CdEy+yzoxbMDLxC9qkFERRJBQL2m5uRV3/iMuq9JeyiwOXIFvIc6/LXsSVoDDTRf6p5TgOGjNQcyMb5VXpePRxkmAq5O8zLsKlEqW3wC0Ti0iqkMqrtkArempDX1eTRDOCho4ucLSiiN6AZInGS6QCZUUV6kGqUL2XwjPJhPH6K2SF02GM96Gp6Qqa+197tKEEqvghVlypsREwIhA4YtMd1J4+hKgFAGefxJh1CL1dZpjeSqPyyzAd0oBr2w6UHj6PnempiNEsFjg33o1rxnx4qsrXxnSII/LdAWQit+Asyot2iZnEWR/j6CUDpv1AhSOiS6auGGBEb2tGQ+0obpVVSxC96HxRivK6dnFNEaXHOonWSyRumdByvRYlk1lyK1KpRkLOSRg2Jko0QJo+wWvud0LcIQotEVUX3iEvztX7flgHYJmYRbQuFbrVrrXRNzU40Xjbl3+h0OSf+7gpfYYyjlI1wxc1iZ7OJ5jTZEGvi4U6cg1i18ZCE0Y9w/4NPR1Xce6hH3IiojfC1FY/0/gXzQ6IjymBagUVxTw1uzE/PcjtoaTZLXu79vSg4ffzg8JjAcYX0JvgMex2amlf3gmenXl213bfjfchWtYnU7AqRBK/WX5PzlgkWU+jYIK/cK5H30SP/v5204zPxfhE4A5N+P6Pvy2/AU1zNQ04JbG+AAAAAElFTkSuQmCC') no-repeat;
}

.schedules-table .end-row .set-time-cell:before {
    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAkhJREFUSA21Vr9LHEEUfrM7EhVOuMIiZ+4IHEhaS6uQJo0QESy1OIhtIH9BsEhnZ6nkUoitRLgmTZBYBcRCCxtBODWVP/DMncbbHd83cZbZ292b0+jA3s58873vzex78+YEdWk/RkZeSCknmTLBT5mUKmi6EMf83uen1m63v705OjrUeMqPSMHoe7FYGBRiXhFVhBB+GsdgSqmARapNpT69rdfhONYSDjaKxXe+560wKxdjugeNIAxnXtfr6zbVswc/S6UPvhBrjN1XHDI52ELD1ox2oFcOcSFiTm1yT32lwkCpKbMT7UB/c8/bwyp6EnGTGs0wfIWYSHARUH6lig+vbdPoWD5T8mZ7iX5Nfe6cz91pzkmkos6WTkrn+OqSWo1WDPXkAF2fX8QwM4Ama89zmstJ/k5dUxFGJ8vTtLeAr9hbQ3pDGwHFIXI279lzJyeFMAEH5ZSJFOhPCuaEylIffxFla6ZFfm6Vxiv2NOdHY5O2xmborw3bfS4tOotsLKsfXp5R87RFnjQmfUQX5xRmGdzhkg8W6seog0dnX2fvFWStx9qIAaqisz0wyPtwUHOqMyG8/t0LrZNTE7rm+/5BVlmOTvLVvxjYCqJvgG52v9BOZdGGdR9lvB0ELyUui81Sqcro+wTLBvrzNFhIlgw5PGSzoj7nZRXaOj+fstghBoSqh8uCz4Qr66IVZnZQrlnL3G7aAcio31ygPv6XExaHhrkLoJs4wk96ZZqd4LLgnSwjE4B1a5rDXNjYKzc2iR2YCbwf42/LLUnR7HdyZ27+AAAAAElFTkSuQmCC') no-repeat;
}

.icon-start-time,
.icon-end-time {
    width: 24px;
    height: 24px;
    display: inline-block;
    vertical-align: middle;
}

.icon-start-time {
    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAA0RJREFUSA21Vm1Ik1EUfu422kw3I8N0zTSlKfbDFFNCkijUwo8oIumDxKERkUVgFLioCIJ+9WGQP2yjTISiJEmzpCATQhGDwPKjSYQMMcFyas7e7e2879x8176M8v7Ye+49z33OOfeec+4YgozdFWE6OeR7wFgheCQxxrQCnOd5KxgsJLQ64Hj6vP7naCAa5k+RZ1ipVcrkl0lZTuRyfxjPGs87eMBsdzoudphmrZ71BcHHQKFBXSKTsQfkofpPcNA5D5vTyR9pNdlapDgv74orNKeYDGbyWiUFLUlmUNLe0uQM1fehPnu3e48nAtFzOZoBgv3T4J1OB/a6IxENCGeukikGgh9LIpLXZ0OlBObswxj82hvYDTquOSeXItyJQkAJFxqMPO/ASxi2ZyNcRLt4uSkLms3H0NDvxxDdn8gJVDIhFRVQfAmULbllH1CdEy+yzoxbMDLxC9qkFERRJBQL2m5uRV3/iMuq9JeyiwOXIFvIc6/LXsSVoDDTRf6p5TgOGjNQcyMb5VXpePRxkmAq5O8zLsKlEqW3wC0Ti0iqkMqrtkArempDX1eTRDOCho4ucLSiiN6AZInGS6QCZUUV6kGqUL2XwjPJhPH6K2SF02GM96Gp6Qqa+197tKEEqvghVlypsREwIhA4YtMd1J4+hKgFAGefxJh1CL1dZpjeSqPyyzAd0oBr2w6UHj6PnempiNEsFjg33o1rxnx4qsrXxnSII/LdAWQit+Asyot2iZnEWR/j6CUDpv1AhSOiS6auGGBEb2tGQ+0obpVVSxC96HxRivK6dnFNEaXHOonWSyRumdByvRYlk1lyK1KpRkLOSRg2Jko0QJo+wWvud0LcIQotEVUX3iEvztX7flgHYJmYRbQuFbrVrrXRNzU40Xjbl3+h0OSf+7gpfYYyjlI1wxc1iZ7OJ5jTZEGvi4U6cg1i18ZCE0Y9w/4NPR1Xce6hH3IiojfC1FY/0/gXzQ6IjymBagUVxTw1uzE/PcjtoaTZLXu79vSg4ffzg8JjAcYX0JvgMex2amlf3gmenXl213bfjfchWtYnU7AqRBK/WX5PzlgkWU+jYIK/cK5H30SP/v5204zPxfhE4A5N+P6Pvy2/AU1zNQ04JbG+AAAAAElFTkSuQmCC') no-repeat;
}

.icon-end-time {
    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAkhJREFUSA21Vr9LHEEUfrM7EhVOuMIiZ+4IHEhaS6uQJo0QESy1OIhtIH9BsEhnZ6nkUoitRLgmTZBYBcRCCxtBODWVP/DMncbbHd83cZbZ292b0+jA3s58873vzex78+YEdWk/RkZeSCknmTLBT5mUKmi6EMf83uen1m63v705OjrUeMqPSMHoe7FYGBRiXhFVhBB+GsdgSqmARapNpT69rdfhONYSDjaKxXe+560wKxdjugeNIAxnXtfr6zbVswc/S6UPvhBrjN1XHDI52ELD1ox2oFcOcSFiTm1yT32lwkCpKbMT7UB/c8/bwyp6EnGTGs0wfIWYSHARUH6lig+vbdPoWD5T8mZ7iX5Nfe6cz91pzkmkos6WTkrn+OqSWo1WDPXkAF2fX8QwM4Ama89zmstJ/k5dUxFGJ8vTtLeAr9hbQ3pDGwHFIXI279lzJyeFMAEH5ZSJFOhPCuaEylIffxFla6ZFfm6Vxiv2NOdHY5O2xmborw3bfS4tOotsLKsfXp5R87RFnjQmfUQX5xRmGdzhkg8W6seog0dnX2fvFWStx9qIAaqisz0wyPtwUHOqMyG8/t0LrZNTE7rm+/5BVlmOTvLVvxjYCqJvgG52v9BOZdGGdR9lvB0ELyUui81Sqcro+wTLBvrzNFhIlgw5PGSzoj7nZRXaOj+fstghBoSqh8uCz4Qr66IVZnZQrlnL3G7aAcio31ygPv6XExaHhrkLoJs4wk96ZZqd4LLgnSwjE4B1a5rDXNjYKzc2iR2YCbwf42/LLUnR7HdyZ27+AAAAAElFTkSuQmCC') no-repeat;
    margin-left: 10px;
}

.highlightedTrip td {
    background: #043B81;
    color: #fff;
    font-weight: 700;
}

.highlightedTrip:nth-child(2n+2) td {
    background: #043B81;
}

.stop-input {
    width: 100px;
    padding: 14px 9px 13px 9px;
}

.or-separator {
    display: block;
    text-align: center;
    position: relative;
    color: #053B81;
    font-size: 14px;
    font-size: 1.4rem;    
}
.or-separator:before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 90px;
    height: 1px;
    background-color: #000;
    right: 70%;
}
.or-separator:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 90px;
    height: 1px;
    background-color: #000;
    left: 70%;
}

/* table classes */
.form-table {
    table-layout: fixed;
    font-size: 14px;
    font-size: 1.4rem;
}

.form-table td {
    vertical-align: bottom;
}

.form-title-row {
    font-weight: 700;
}

.form-title-row td {
    border-bottom: 2px solid #666;
    padding-top: 24px;
    color: #666;
}

.form-row {
    padding: 20px 0;
    border-bottom: 1px solid #eee;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    margin-bottom: 40px;
    border: 1px solid #ddd;
    border-bottom-width: 3px;
}

th {
    font-weight: 700;
    text-align: left;
}

th,
td {
    line-height: 1.2;
}

th {
    padding: 10px;
}

td {
    padding: 5px 10px;
    border: 1px solid #ddd;
}

tr:nth-child(2n+2) td:not(.adp-substep) {
    background: #f5f5f5;
}

/* heading */
.page-content-area h1.title-lead {
    font-family: "Abel";
    font-weight: 700;
    margin-bottom: 20px;
}

.title--subheading {
    font-family: Verdana, sans-serif !important;
    font-weight: bold;
    color: #053b81;
}

/* button link classes */
.btn--slashed--blue {
    color: #fff !important;
    background: #028BFF;
    padding: 20px 0 20px 40px;
    width: 100%;
    font-weight: bold;
    font-family: Arial, sans-serif;
    font-size: 20px;
    position: relative;
    margin-top: 20px;
    text-align: center;
}

.btn--slashed--blue:hover,
.btn--slashed--blue:active,
.btn--slashed--blue:focus {
    background: #007ce6;
}

@media (min-width: 900px) {
    .btn--slashed--blue {
        padding: 20px 80px;
        text-align: left;
    }
    .btn--slashed--blue:after {
        position: absolute;
        content: '';
        right: 0;
        bottom: 0;
        border: 40px solid #fff;
        border-left-color: transparent;
        border-top-color: transparent;
    }
}

.btn--bus-stop,
.btn--bus-track {
    position: relative;
}

.btn--bus-stop:before {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: url('../img/icon--bus-stop.svg');
    width: 40px;
    height: 40px;
}

.btn--bus-track:before {
    position: absolute;
    left: 8px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: url('../img/icon--track.png');
    width: 60px;
    height: 60px;
}

.btn--pdf {
    position: relative;
/*    text-transform: uppercase;
    color: #053b81 !important;
*/  font-weight: bold;
    margin: 10px 0 5px 36px !important;
}

/*.btn--pdf:hover,
.btn--pdf:active,
.btn--pdf:focus {
    color: #028BFF !important;
}*/

.btn--pdf:before {
    position: absolute;
    left: -36px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: url('../img/icon--pdf.svg');
    width: 36px;
}

.pdf-option {
    display: inline-block !important;
    width: inherit !important;
}

.btn--new-rider {
    position: relative;
    margin: 10px 0 10px 36px;
}

.btn--new-rider:before {
    position: absolute;
    left: -36px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    content: url('../img/icon--new-rider.svg');
    width: 36px;
}

.schedule-show-full {
    display: block;
}

.schedule-show-mobile {
    display: none;
}

/*@media (max-width: 900px) {
    .schedule-show-full {
        display: none;
    }
    .schedule-show-mobile {
        display: block;
    }
}*/

/* toggles */
.toggle-wrapper {
    text-align: center;
}

.toggle-title {
    padding: 20px 0;
    width: 100%;
    background: #053B81;
    margin-bottom: 5px;
    color: #fff;
    font-weight: bold;
    position: relative;
    cursor: pointer;
}

.toggle-title:after {
    position: absolute;
    content: '';
    right: 10px;
    top: calc(50% + 5px);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    border: 10px solid transparent;
    border-top-color: #fff;
}

.toggle-title.open:after {
    transform: translateY(-50%) rotate(180deg);
    -webkit-transform: translateY(-50%) rotate(180deg);
    top: calc(50% - 5px);
}
.toggle-hidden {
    height: 0;
    overflow: hidden;
}

.toggle-hidden.open {
    height: auto;
    width: calc(100% / 3);
    padding: 5px 0;
    display: inline-block;
}

.toggle-options--wrapper {
    /*text-align: center;*/
}

.toggle-options--title {
    padding: 20px 0;
    width: 100%;
    background: #053B81;
    margin-bottom: 5px;
    color: #fff;
    font-weight: bold;
    position: relative;
    cursor: pointer;
    text-align: center;
}

.toggle-options--title:after {
    position: absolute;
    content: '';
    right: 10px;
    top: calc(50% + 5px);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    border: 10px solid transparent;
    border-top-color: #fff;
}

.toggle-options--title.open:after {
    transform: translateY(-50%) rotate(180deg);
    -webkit-transform: translateY(-50%) rotate(180deg);
    top: calc(50% - 5px);
}
.toggle-options--title .title-group {
    margin: 0;
    border-bottom: 0;
    padding: 0;
}
.toggle-options--hidden {
    height: 0;
    overflow: hidden;
}

.toggle-options--hidden.open {
    height: auto;
    padding: 5px 0;
    display: inline-block;
    width: 100%;
}

/* Bus tracker and route maps */
.control-pane {
    position: absolute;
    width: 100%;
    z-index: 2;
    /*top: 109px;*/
    left: 0;
    height: auto;
    overflow: hidden;
    box-sizing: border-box;
    /*top: 202px;*/
    top: 93px;
}
.control-pane.open {
    background-color: #fff;
}

.control-pane:not(.plan-trip-pane) label {
    font-weight: normal;
    color: #053B81; /* dark blue */
    font-size: 14px;
    font-size: 1.4rem;
}

#chkShowAllBuses {
    margin: 0;
}
.show-all-input {
    margin-left: 5px;
}

@media (min-width: 769px) {
    .control-pane {
        width: 310px;
        /*top: 154px;*/
        top: 219px;
        bottom: 0;
        overflow-y: auto;
    }
    .plan-trip-pane {
        width: 420px;
    }
}
@media (min-width: 846px) {
    .control-pane {
        top: 178px;
    }
}
@media (min-width: 882px) {
    .control-pane {
        top: 118px;
    }
}
/*@media (min-width: 810px) {
    .control-pane.open {
        top: 151px;
    }
}
@media (min-width: 1200px) {
    .control-pane.open {
        top: 92px;
    }
}*/
/*@media (min-width: 810px) {
    .control-pane.open {
        top: 154px;
    }
}*/
/*@media (min-width: 991px) {
    .control-pane {
        OLDtop: 92px;
        top: 115px;
    }
}*/

.control-panel {
    background: #fff;
}
/*.control-panel #transitDate,
.control-panel #transitTime {
    width: 47%;
}
.control-panel #transitDate {
    margin-right: 2%;
}
.control-panel #transitTime {
    margin-left: 2%;
}*/
.control-panel-title {
    @extend .special-title;
    padding: 10px;
    margin: 0 !important;
    @include font-size(20);
    background: #f7f7f7;
    overflow: hidden;
    font-family: 'Abel';
}

.control-note {
    text-transform: uppercase;
    color: #555;
    @include font-size(12);
    font-weight: 700;
    margin: 0;
    padding: 10px;
}

.control-panel-title {
    background-color: #4074A3;
    /*border-top: 5px solid #F83040;*/
    color: #fff;
    font-style: normal;
    font-size: 20px;
    font-size: 2rem;
    position: relative;
}

.stop-number-input {
    width: 50%;
    padding: 6px;
}

.control-form-wrapper {
    height: 0;
    overflow: hidden;
}
.map-content .control-form-wrapper.open {
    overflow: visible;
}

.control-form-wrapper.open {
    height: auto;
}
.plan-trip-pane .control-form-wrapper.open {
    padding: 10px;
}

.control-form-wrapper.form-input {
    height: 36px;
}
.control-form-entry {
    padding: 10px;
    position: relative;
}
.control-form-entry select {
    display: block;
    width: 100%;
    background: none;
    height: 40px;
}
.control-form-button {
    background-color: #F83040;
    border: none;
    color: #fff;
    text-transform: uppercase;
    padding: 8px 16px;
}
.control-form-button:hover,
.control-form-button:active {
    background-color: #d40718;
}
.control-form-label {
    display: block;
    text-transform: uppercase;
    font-size: 14px;
    font-size: 1.4rem;
}
.control-form-label span {
    text-transform: none;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 400;
}

.icon--hide,
.icon--show {
    position: absolute;
    right: 30px;
    text-transform: uppercase;
    font-size: 14px;
    font-size: 1.4rem;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}
.icon--hide:after,
.icon--show:after {
    content: '';
    position: absolute;
    margin-left: 5px;
    width: 18px;
    height: 18px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}
.icon--hide:after {
    background: url('../img/icon--hide.svg');    
}
.icon--show:after {
    background: url('../img/icon--show.svg');    
}

.icon--stop {
    background: url('../img/icon--stop-map.svg') no-repeat;
    width: 15px;
    height: 18px;
    margin-right: 5px;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.icon--stop-inline {
    background: url('../img/icon--stop-map.svg') no-repeat;
    width: 15px;
    height: 18px;
    vertical-align: middle;
    display: inline-block;
}

.eta-bus-item {
    font-size: 14px;
    font-size: 1.4rem;
}
.eta-bus-item button {
    width: 100%;
    background-color: #FAF8F8;
    border: none;
    border-top: 1px solid #EFEEEE;
    border-bottom: 1px solid #EFEEEE;
    text-align: left;
    padding: 5px 20px;
}
.eta-bus-item button:hover,
.eta-bus-item button:active {
    background-color: #ECFAFF;
    border-color: #C6E1EC;
}
.eta-bus-item .bus-prediction-meta {
    font-size: 12px;
    font-size: 1.2rem;
    color: #053B81;
}

.map-modal-title {
    border-bottom: 3px solid #053B81;
    padding-bottom: 3px;
}

.map-modal-route {
    font-weight: bold;
}

.spin {
    padding: 10px;
    -webkit-animation-name: spin;
    -webkit-animation-duration: 1500ms;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out; 
    -moz-animation-name: spin;
    -moz-animation-duration: 1500ms;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: ease-in-out; 
    animation-name: spin;
    animation-duration: 1500ms;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out; 
}

@-webkit-keyframes spin {
    from { 
        -webkit-transform: rotate(0deg);
        opacity: .2;
    }
    50% {
        opacity: 1; 
    }
    to { 
        -webkit-transform: rotate(360deg);
        opacity: .2;
    }
}
@-moz-keyframes spin {
    from { 
        -moz-transform: rotate(0deg);
        opacity: .2;
    }
    50% {
        opacity: 1; 
    }
    to { 
        -moz-transform: rotate(360deg);
        opacity: .2;
    }
}
@keyframes spin {
    from { 
        transform: rotate(0deg);
        opacity: .2;
    }
    50% {
        opacity: 1; 
    }
    to { 
        transform: rotate(360deg);
        opacity: .2;
    }
}

.predictions-message {
    padding: 0 10px;
}

/*.map-modal-route,
.map-modal-bus {
    display: inline-block;
}*/

.stop-modal-title {
    border-bottom: 3px solid #F83040;
    padding-bottom: 3px;
    display: inline-block;
    width: 100%;
    position: relative;
    margin-bottom: 5px;
    min-height: 50px;
}
.stop-modal-stopname {
    display: inline-block;
    position: absolute;
    right: 0;
    vertical-align: middle;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    max-width: 75%;
    text-align: right;
}
.stop-modal-number {
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    margin-left: 20px;
}

.stop-route-row {
    padding-bottom: 10px;
}
.stop-route-row span {
}
.stop-route-detail {
    float: right;
    padding: 2px 4px;
    clear: both;
    /*background-color: #028BFF;
    color: #fff;*/
}

.stop-modal-approach {
    clear: both;
}
.stop-modal-approach .row {
    margin: 0;
    padding: 0 5px;
}
.stop-modal-approach .row:nth-child(odd) {
    background-color: #EDEDED;
}

.row-rt, .row-des, .row-prdtm {
    display: inline-block;
    vertical-align: middle;
}
.row-rt {
    width: 20px;
}
.row-des {
    width: 165px;
    padding: 0 5px;
}
.row-prdtm {
    width: 95px;
    text-align: right;
}
.row-head {
    padding: 0 5px;
    font-weight: 400;
    clear: both;
}

@media (max-width: 900px) {
    .row-des {
        width: calc(100% - 25px);
    }
    .row-prdtm {
        width: 100%;
    }
}

.bus-routes-wrapper input {
    position: relative;
}
.bus-routes-wrapper input:after {
    position: absolute;
    content: '';
    top: -8px;
    bottom: -8px;
    left: -8px;
    right: -8px;
}

/* overrides for Google default close button */
.gm-style-iw + div {
    opacity: 1 !important;
    overflow: visible !important;
    position: relative !important;
    float: right;
    background:url("../img/icon--close--modal.svg") no-repeat;
    width: 28px !important;
    height: 26px !important;
/*    top: -13px !important;
    right: -14px !important;*/
    /*left: inherit !important;    */
    margin-right: -7px;
    margin-top: -6.5px;
    top: 0 !important;
    right: 0 !important;
}
.gm-style-iw + div:after {
    content: '';
    position: absolute;
    top: -20px;
    bottom: -20px;
    left: -20px;
    right: -20px;
}
img[src="https://maps.gstatic.com/mapfiles/api-3/images/mapcnt6.png"] { 
    content:url("../img/icon--close--modal.svg");
    width: 28px !important;
    height: 26px !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    /*left: inherit !important;*/
    display: none; /* leave me alone for now */
}

/* use this for bus modal approaches */
.map-modal-approach-wrapper {
    /*padding-top: 10px;*/
}
.map-modal-approach {
    color: #4074A3;
    padding: 1px 0;
    font-weight: 400;
}

/* Route Maps styles */
.route-legend-color {
    width: 5px;
    height: 20px;
    margin: 0 5px;
    display: inline-block;
    vertical-align: middle;
}

.map-modal-next-stops {
    padding-top: 10px;
    font-weight: bold;
}

.map-toggles {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.map-panel__switch {
  font-weight: 700;
  font-size: 1.3rem;
  text-transform: uppercase;
  display: inline-block;
  border-radius: 3px;
  background: #053B81;
  padding: 4px 8px;
  color: rgba(255,255,255,.8);
  float: left;
}
.map-panel__switch.first {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;    
}
.map-panel__switch.last {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;    
}
.map-panel__switch svg {
    vertical-align: middle;
}
.map-panel__switch span {
    vertical-align: middle;
    position: relative;
    top: 1px;
}
.map-panel__switch:hover,
.map-panel__switch:focus {
    /*color: #fff;*/
    /*background: #053B81;*/
    cursor: pointer;
}
.map-panel__switch:not(.switch-open):hover,
.map-panel__switch:not(.switch-open):focus {
    color: #fff;
    outline: 1px solid #F83040;
}
.switch-open {
  background: rgba(255,255,255,.85);
  color: rgba(0,0,0,.7);
}

.bus-routes-wrapper {
    padding-top: 0;
}

.routes-description {
    text-transform: initial;
    font-size: 13px;
    font-size: 1.3rem;
}

.visually-hidden {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip-path: inset(1px, 1px, 1px, 1px);
    padding: 0;
    margin: 0;
    border: 0;
}

.loading-indicator--map {
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #fff;
    padding: 10px 20px 10px 10px;
    font-weight: bold;
    font-family: 'Abel';
    font-size: 24px;
    font-size: 2.4rem;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    z-index: 999999; /* temporary */
}
.loading-indicator--map span {
    position: relative;
}

@media (max-width: 900px) {
    .loading-indicator--map {
        padding: 10px 20px;
    }
    .loading-indicator--map span {
        display: block;
    }
}

/* DNN overrides */
.DnnModule-GravityWorksGenericHtmlRenderer > a:first-child,
#dnn_ctr3459_ContentPane > a:first-child,
#dnn_ctr3458_ContentPane > a {
    display: inline;
}

.map-content #dnn_ContentPane .DnnModule {
    height: 100%;
    margin-bottom: 0;
    position: inherit;
}

/*@media (max-width: 900px) {*/
    .toggle-info--wrapper {
        /*text-align: center;*/
    }

    .toggle-info--title {
        padding: 20px 0;
        width: 100%;
        background: #053B81;
        margin-bottom: 5px;
        color: #fff;
        font-weight: bold;
        position: relative;
        cursor: pointer;
        text-align: center;
    }

    .toggle-info--title:after {
        position: absolute;
        content: '';
        right: 10px;
        top: calc(50% + 5px);
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        border: 10px solid transparent;
        border-top-color: #fff;
    }

    .toggle-info--title:focus {
        outline: 1px solid #F83040;
    }

    .toggle-info--title.open:after {
        transform: translateY(-50%) rotate(180deg);
        -webkit-transform: translateY(-50%) rotate(180deg);
        top: calc(50% - 5px);
    }
    .toggle-info--title .title-group {
        margin: 0;
        border-bottom: 0;
        padding: 0;
    }
    .toggle-info--hidden {
        height: 0;
        overflow: hidden;
    }

    .toggle-info--hidden.open {
        height: auto;
        padding: 5px 0;
        display: inline-block;
        width: 100%;
    }  
/*}*/

/*** New homepage styles – KT ***/
.container-narrow {
    max-width: 800px;
    margin: 0 auto;
}

/* homepage tabs */
.tabs__nav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row; 
    position: relative;
    z-index: 1;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    -ms-flex-pack: center;    
}
.no-flexbox .tabs__nav,
.no-flexbox .stop-result {
    display: table;
    width: 100%;
    table-layout: fixed;
}
.no-flexbox .stop-result > *:not(.result-details){
    display: table-cell;
    vertical-align: middle;
}

.tabs__link {
    padding: 14px;
    border: none;
    width: calc(100% / 3);
    max-width: calc(100% / 3);
    background: #0A3D7F;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.5rem;
    position: relative;
    display: block;
    text-align: center;
    transition: background .3s ease-out;
    flex: 0 1 33.33333%;
    -webkit-flex: 0 1 33.33333%;
    -ms-flex: 0 1 33.33333%;
}
.no-flexbox .tabs__link {
    display: table-cell;
}
.tabs__link:focus {
    z-index: 1;
    outline: 2px solid #083267;
}
.tabs__link:not(.tabs__link--active):hover,
.tabs__link:not(.tabs__link--active):focus {
    background: #0c4897;
    cursor: pointer;
}
.tabs__link--active {
    background: #1D97C8;
    position: relative;
}
.tabs__link--active:after {
    content: '';
    position: absolute;
    border: 12px solid transparent;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 100%);
    -webkit-transform: translate(-50%, 100%);
    border-top-color: #1D97C8;
}
.tabs__link__name {
    display: block;
    margin-top: 5px;
    font-size: 20px;
    font-size: 2rem;
}
.tabs__panes {
    position: relative;
}
.tab__pane {
    background: rgba(255,255,255,.9);
    padding: 20px;
    position: relative;
    width: 100%;
    min-height: 300px;
}
.tab__pane.ng-hide-add,
.tab__pane.ng-hide-remove {
    transition: 0s linear all;
}
.tab__pane.ng-hide-add-active,
.tab__pane.ng-hide-remove-active {
    transition: all 0.3s ease-out;
}
.tab__pane.ng-hide-add {
    position: absolute;
    top: 0;
    opacity: 1;
}
.tab__pane.ng-hide-add.ng-hide-add-active {
    opacity: 0;
    transform: translateY(-40px);
    -webkit-transform: translateY(-40px);
}
.tab__pane.ng-hide-remove {
    opacity: 0;
}
.tab__pane.ng-hide-remove-active {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
}

.tab__pane select {
    display: block;
    width: 100%;
}
.select-wrapper {
    margin-bottom: 10px;
    background: #DAD9D8;
    padding: 6px 3px;
    border-radius: 5px;
    box-shadow: inset 0 1px 10px -3px #514F4F;
}
.select-wrapper input {
    width: 100%;
    padding: 5px 10px;
    border-radius: 5px;
    border: 1px solid #ccc;
    font-size: 16px;
    font-size: 1.6rem;
}

.button--option {
    border: 0;
    background: #DAD9D8;
    color: #514F4F;
    border-radius: 5px;
    font-weight: bold;
    padding: 5px 25px;
    margin-bottom: 15px;
}
.button--option.active {
    border: 2px solid #0A3D7F;
    color: #0A3D7F;
    background: #fff;
    position: relative;
}
.button--option.active:before,
.button--option.active:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 100%);
    -webkit-transform: translate(-50%, 100%);
}
.button--option.active:before {
    border: 13px solid transparent;
    border-top-color: #0A3D7F;
}
.button--option.active:after {
    border: 10px solid transparent;
    border-top-color: #fff;
}

.button-large {
    padding: 20px 40px;
}
.button--red {
    background: #DD1727;
    background: linear-gradient(#DD1727, #AD1018);
    border: 0;
    color: #fff;
    text-transform: uppercase;
    font-weight: bold;
}
.button--red:hover,
.button--red:focus {
    background: #AD1018;
}

.align-center {
    text-align: center;
}

.form-label-align-left {
    text-align: left !important; /* override Bootstrap's form label alignment */
}

.select-box {
    display: inline-block;
    background: #fff;
    position: relative;
    overflow: hidden;
    vertical-align: middle;
    border: 1px solid #ccc;
    width: 100%;
    border-radius: 5px;
    padding: 5px;
}
.select-box:before,
.select-box:after {
    content: '';
    position: absolute;
    display: block;
    pointer-events: none;
}
.select-box:before {
    width: 12px;
    height: 12px;
    right: 9px;
    top: calc(50% + 4px);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    pointer-events: none;
    z-index: 1;
    border: 8px solid transparent;
    border-top-color: #0A3D7F;
}
.select-box:after {
    width: 31px;
    height: 100%;
    background: #fff;
    right: 0;
    top: 0;
    pointer-events: none;
}
.select-box select {
    display: block;
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    border: none;
    border-radius: 0;
    background: none;
    padding: 6px 32px 6px 8px;
    max-width: 100%;
}
.select-box select::-ms-expand {
    display: none;
}
.no-csspointerevents select:before,
.no-csspointerevents select:after {
    display: none;
}
.no-csspointerevents select {
    padding: 6px 8px;
}
.select-box select:focus {
    /*box-shadow: 0 2px 0 #0A3D7F;*/
    /*border: 1px dotted #0A3D7F;*/
    background: #e8f6fc;
}

.stop-results--stopid {
    text-transform: uppercase;
}

.float-left {
    float: left;
}
.float-right {
    float: right;
}

.button-row,
.section-row {
    margin: 20px 0;
}
.button-row--right {
    text-align: right;
}
.btn-outline {
    background: transparent;
    border: 2px solid #0A3D7F;
    color: #0A3D7F !important; /* override default.css */
    font-weight: bold;
    text-transform: uppercase;
    padding: 5px 10px;
    letter-spacing: 0;
    font-family: Roboto,"Helvetica Neue",sans-serif;
}
.btn-outline:hover,
.btn-outline:focus {
    background: #0A3D7F;
    color: #fff !important; /* override default.css */
    text-decoration: none !important;
}

.stop-result {
    /*padding: 20px 0;*/
    background: #4771A7;
    color: #fff;
    font-weight: bold;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    /*align-items: center;*/
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
/*    justify-content: center;
    -webkit-justify-content: center;*/
    align-items: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    overflow-y: hidden;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
}
.stop-result:focus {
    outline: 1px solid #F83040;
}
.stop-result-wrapper {
    margin-bottom: 10px;
}
.stop-results--id {
    padding: 20px;
    background: #0A3D7F;
    font-size: 24px;
    font-size: 2.4rem;
    vertical-align: middle;
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;    
    justify-content: center;
    -webkit-justify-content: center;
    width: 60px;
}

.stop-result--has-alert {
    background: #B3111A;
    justify-content: stretch;
    -webkit-justify-content: stretch;
}
.stop-result--has-alert:focus {
    background: #CA131D;
    outline: 2px solid #0A3D7F;
}
.stop-result--has-alert .stop-results--id {
    background: #000;
}
@media (max-width: 900px) {
    .stop-results--id {
        padding: 20px 5px;
        width: 100%;
    }
}
.stop-results--name {
    padding: 0 10px;
    font-size: 20px;
    font-size: 2rem;
    vertical-align: middle;
    max-width: 380px;
    text-transform: capitalize;
}
@media (max-width: 900px) {
    .stop-results--name {
        padding: 20px 10px;
    }
}
@media (max-width: 900px) {
    .result-time--wrapper {
        overflow-y: hidden;
        text-align: center;
        padding: 5px;
        margin: 5px auto;
    }
}
@media (min-width: 900px) {
    .result-time--wrapper {
        margin-left: auto;
        text-align: right;
    }   
}
.no-flexbox .result-time--wrapper {
    max-width: 270px;
    width: 270px;
}
.stop-results--time {
    padding: 25px 10px;
    width: 80px;
    text-align: center;
    font-size: 20px;
    font-size: 2rem;
}
.stop-results--time:nth-of-type(1) {
    background: #1D97C8;
}
.stop-result--has-alert .stop-results--time:nth-of-type(1) {
    background: #8E1017;
}
.result-details {
    background: #fff;
    /*padding: 10px;*/
    display: none;
}
.result-details.open {
    display: block;
    width: 100%;
}

.results__arrivals {
    padding: 10px;
}

.icon-trip {
    background: url('../img/icon--map.svg');
    width: 75px;
    height: 75px;
    display: inline-block;
    vertical-align: middle;    
}
.icon-track {
    background: url('../img/icon--radar.svg');
    width: 75px;
    height: 75px;
    display: inline-block;
    vertical-align: middle;    
}
.icon-schedules {
    background: url('../img/icon--bus-time.svg');
    width: 75px;
    height: 75px;
    display: inline-block;
    vertical-align: middle;    
}
@media (max-width: 900px) {
    .icon-trip,
    .icon-track,
    .icon-schedules {
        width: calc(75px/2);
        height: calc(75px/2);
        background-size: cover;
    }
    .icon-trip + .tabs__link__name,
    .icon-track + .tabs__link__name,
    .icon-schedules + .tabs__link__name {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.icon-refresh {
    background: url('../img/icon--reload.svg');
    width: 26px;
    height: 22px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 2px;
}
.icon-refresh:hover,
.icon-refresh:focus {
    opacity: 0.8;
    cursor: pointer;
}
.icon-maps {
    background: url('../img/icon--maps.svg');
    width: 14px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 2px;
}
.icon-bus {
    background: url('../img/icon--bus.svg');
    width: 34px;
    height: 37px;
    margin: 0 auto;
}
.button-float-right {
    float: right;
    padding: 5px;
}
.button-float-right:hover,
.button-float-right:focus {
    cursor: pointer;
}
@media (max-width: 900px) {
    .button-float-right {
        display: block;
        width: 100%;
        text-align: right;
        float: none;
    }
}

.result-arrival {
    display: inline-block;
    width: 20%;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0;
    margin-bottom: 5px;
}
.result-scheduled {
    color: #615d5d;
    display: inline-block;
    width: 20%;
    margin: 0;
    margin-bottom: 5px;
}
.result-link {
    text-decoration: underline;
    color: #0A3D7F;
}
.result-arrow {
    height: 75px;
    width: 50px;
    position: relative;
    background: #0A3D7F;
    border: 0;
}
.stop-result--has-alert .result-arrow {
    background: #000;
}
.result-arrow:after {
    content: '';
    position: absolute;
    border-left: 2px solid #fff;
    border-top: 2px solid #fff;
    height: 15px;
    width: 15px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(225deg);
    -webkit-transform: translate(-50%, -50%) rotate(225deg);
    transition: 0.3s all;
}
.result-arrow.open:after {
    transform: translate(-50%, -50%) rotate(45deg);
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transition: 0.3s all;
}
.result-arrow:hover,
.result-arrow:focus {
    outline: 1px solid #F83040;
}
.no-flexbox .result-arrow:after {
    top: 0;
    transform: translate(-50%, 100%) rotate(225deg);
    -webkit-transform: translate(-50%, 100%) rotate(225deg);
}
.no-flexbox .result-arrow.open:after {
    transform: translate(-50%, 100%) rotate(45deg);
    -webkit-transform: translate(-50%, 100%) rotate(225deg);
}
@media (max-width: 900px) {
    .result-arrow:not(.result-arrow--static) {
        width: 100%;
    }
}

.button--bus {
    border: 2px solid #0A3D7F;
    float: right;
    /*color: #fff !important;  override default.css */
    font-weight: bold;
    text-transform: uppercase;
    padding: 5px 10px;
}
.button--bus:hover,
.button--bus:focus {
    color: #fff !important; /* override default.css */
    text-decoration: none !important; /* override default.css */
    background: #083267;
    border-color: #083267;
    cursor: pointer;
}
.button--bus:hover .icon--pin path,
.button--bus:focus .icon--pin path {
    fill: #fff;
}

.arrivals-row {
    color: #333;
}
@media (max-width: 900px) {
    .arrivals-row,
    .scheduled-row {
        display: inline-block;
        width: 30%;
    }
    .scheduled-row {
        margin-left: 5px;
    }
    .result-header {
        height: 50px;
    }
    .result-arrival,
    .result-scheduled {
        display: block;
        width: 100%;
    }
    .result-arrival {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.input--full-width {
    width: 100%;
    padding: 6px;
}

.select-wrapper.full {
    width: 100%;
}

.flex-row {
  display: flex;
  display: -webkit-flex;
  display: -ms-flexbox;
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  -ms-flex-pack: center;
  margin: 0 -20px;
}
.flex-half {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
    padding: 0 20px;
}
@media (min-width: 768px) {
    .flex-half {
        width: 50%;
        max-width: 50%;
        /*padding-right: 25px;*/
        /*margin-bottom: 0;*/
        flex: 0 1 50%;
        -webkit-flex: 0 1 50%;
        -ms-flex: 0 1 50%;
    }
}
.flex-third {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
    padding: 0 20px;
}
@media (min-width: 768px) {
    .flex-third {
        width: calc(100%/3);
        max-width: calc(100%/3);
        /*padding-right: 25px;*/
        margin-bottom: 0;
        flex: 0 1 33.33333%;
        -webkit-flex: 0 1 33.33333%;
        -ms-flex: 0 1 33.33333%;
    }
}
.flex-two-third {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
    padding: 0 20px;
}
@media (min-width: 768px) {
    .flex-two-third {
        width: calc(200%/3);
        max-width: calc(200%/3);
        /*padding-right: 25px;*/
        margin-bottom: 0;
        flex: 0 1 66.66666%;
        -webkit-flex: 0 1 66.66666%;
        -ms-flex: 0 1 66.66666%;
    }
}
.flex-quarter {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
    padding: 0 20px;
}
@media (min-width: 768px) {
    .flex-quarter {
        width: 25%;
        max-width: 25%;
        /*padding-right: 25px;*/
        margin-bottom: 0;
        padding: 20px;
        flex: 0 1 25%;
        -webkit-flex: 0 1 25%;
        -ms-flex: 0 1 25%;
    }
}
.no-flexbox:not(.flexboxtweener) .flex-row:after {
    float: clear;
}
.no-flexbox:not(.flexboxtweener) .flex-half,
.no-flexbox:not(.flexboxtweener) .flex-third,
.no-flexbox:not(.flexboxtweener) .flex-two-third,
.no-flexbox:not(.flexboxtweener) .flex-quarter {
    float: left;
}
@media (min-width: 768px) {
    .no-flexbox:not(.flexboxtweener) .flex-row {
        display: table;
    }
    .no-flexbox:not(.flexboxtweener) .flex-half,
    .no-flexbox:not(.flexboxtweener) .flex-third,
    .no-flexbox:not(.flexboxtweener) .flex-two-third,
    .no-flexbox:not(.flexboxtweener) .flex-quarter {
        display: table-cell;
        vertical-align: middle;
    }
    .no-flexbox:not(.flexboxtweener) .flex-half:nth-child(2n+3),
    .no-flexbox:not(.flexboxtweener) .flex-third:nth-child(3n+4),
    .no-flexbox:not(.flexboxtweener) .flex-quarter:nth-child(4n+5) {
        clear: both;
    }
}

.icon-calendar {
    background: url('../img/icon--calendar.svg');
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: middle;
    background-size: 100% 100%;
}
.icon-time {
    background: url('../img/icon--time.svg');
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: middle;
    background-size: 100% 100%;
}
.icon--pin { /* inline SVG */
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}
.icon-navigate {
    background: url('../img/icon--location.svg');
    width: 24px;
    height: 24px;
    display: inline-block;
    vertical-align: middle;
    background-size: 100% 100%;
}

.field-icon {
    position: relative;
    vertical-align: middle;
    display: inline-block;
    line-height: 1;
}
.field-icon input {
    padding-right: 24px;
}

.field-icon__icon {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    padding: 10px;
}
.field-icon__clickable {
    pointer-events: none;
}

.check-wrap {
  overflow: hidden;
  position: relative;
  display: inline-block;
  margin: 0 2px;
}
.check-wrap label:hover,
.check-wrap input:focus + label {
    cursor: pointer;
    border-color: #1D97C8;
    color: #1D97C8;
}
.check-wrap label {
    padding: 8px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1;
    border: 1px solid #555;
    display: block;
    border-radius: 10px;
    color: #555;
}
.check-wrap label:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 5px;
    border: 1px solid #ccc;
}
.check-wrap img {
    width: 38px;
    opacity: .3;
    vertical-align: middle;    
}
.check-wrap input[type="radio"] {
    position: absolute;
    left: -20px;
}
.check-wrap input[type="radio"]:checked + label {
    border-color: #0A3D7F;
    color: #0A3D7F;
}
.check-wrap input[type="radio"]:checked + label:before {
    border-color: #0A3D7F;
    background: #0A3D7F;
}
.check-wrap input[type="radio"]:checked img {
    opacity: 1;
}


.flex-row--margin {
    margin-bottom: 20px;
}
.flex-column {
    flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
}
.flex-item--left {
    padding-right: 5px;
}
.flex-item--right {
    padding-left: 5px;
}
@media (max-width: 768px) {
    .flex-item--left,
    .flex-item--right {
        padding: 0;
    }
}

.block-error {
    margin: 20px 0;
}

.tools-wrapper {
    background-size: cover;
    background-position: center center;
}
@media (min-width: 768px) {
    .tools-wrapper {
        padding-bottom: 40px;
    }
}

.input--padded-bottom {
    padding-bottom: 7px !important;
}
@media (min-width: 768px) {
    .padded-sides {
        padding: 0 10px;
    }
}

.schedules--front .form-entry {
    margin-bottom: 10px;
}

.stop-autocomplete {
    position: relative;
    border-radius: 5px !important;
}
.stop-autocomplete button {
    width: 24px;
    height: 24px;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}
.stop-autocomplete button span._md-visually-hidden {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip-path: inset(1px, 1px, 1px, 1px);
    padding: 0;
    margin: 0;
    border: 0;
}
.stop-autocomplete p {
    padding: 0 5px;
    margin: 5px 0;
}
.stop-autocomplete p:first-of-type {
    font-weight: 600;
}
.stop-autocomplete-result {
    background: #053B82;
    border-radius: 25px;
    color: #fff;
    padding: 2px 8px;
    text-align: center;
    font-weight: bold;
    margin: 0 1px;
}
.alert-route {
    margin: 5px 10px;
    align-self: center;
}
.stop-autocomplete-label {
    margin-right: 5px;
}

.md-whiteframe-1dp, .md-whiteframe-z1 {
    box-shadow: none !important;
}
.md-autocomplete input:not(.md-input) {
    padding: 8px !important;
}
.md-autocomplete-suggestions-container.md-default-theme li:hover, .md-autocomplete-suggestions-container li:hover, .md-autocomplete-suggestions-container.md-default-theme li.selected, .md-autocomplete-suggestions-container li.selected {
    background-color: #e8f6fc;
}

input[type="time"] {
  height: 36px;
  background: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Google Maps overrides - Plan My Trip tool */
/*.pac-container {
    margin-top: -50px;
}*/

/*img[src="https://maps.gstatic.com/mapfiles/transit/iw2/6/walk.png"] {
    float: left;
    height: 30px;
    width: 30px;
}*/

.adp-substep {
    position: relative;
    padding-left: 40px !important;
    background: #fff;
    margin-bottom: 10px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    line-height: 1.4;
}
.adp-list img,
.adp-substep img {
    height: 30px !important;
    width: 30px !important;
    position: absolute !important;
    left: 0;
    top: 50% !important;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    margin: 0 5px !important;
}
.adp-marker {
    margin: 10px;
}
.adp-placemark {
    background: #0A3D7F !important;
    border: 0 !important;
    color: #fff !important;
    font-weight: bold !important;
}
.adp-text {
    padding: 5px;
    max-width: 85%;
}
.adp-summary {
    float: right;
}
.adp-directions {
    margin: 0;
    border: 0;
}
.adp-listsel {
    background: #bce0ef !important;
}

table.adp-placemark tbody,
table.adp-placemark tr,
table.adp-placemark td,
.adp-directions tbody,
.adp-directions tr,
.adp-directions td {
    display: block;
    border: 0;
}
.adp table.adp-placemark tr {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.adp-list ol li {
    background: #fff;
    padding: 10px 5px !important;
    border-top: 1px dashed #0A3D7F;
}
/*.adp-list ol li:nth-child(even) {
    background: #8fd3e8;
}*/
.adp-list ol li:hover,
.adp-list ol li:focus {
    background: #8fd3e8;
}
.adp-list ol li img {
    position: relative !important;
    top: initial;
    left: initial;
    transform: none;
}
.adp-list .gm-arrow {
    width: 8px !important;
    height: 9px !important;
    margin: 5px 0 3px !important;
}
.adp-list {
    border: 0;
    margin: 10px 0;
    background: transparent;
}
.adp-listheader {
    font-weight: 700;
}

/*** Home – Alerts ***/
.alerts-wrapper {
    border-top: 35px solid #EFEFF1;
    border-bottom: 35px solid #EFEFF1;
}

/*** Home - News & Events ***/
.news-events-wrapper {
    background: #f5f5f5 url('../img/bg--btc.png');
    background-size: cover;
    background-position: center center;
    border-bottom: 25px solid #0A3D7F;
}

#EDNadmin table {
    width: auto;
}
#EDNadmin .module_settings .settings_category_container .category_toggle table {
    width: auto;
}
.news-wrapper {
    margin: 10px 0;
    padding: 5px 0;
    border-bottom: 1px solid #9B9B9B;
}
.news-wrapper:first-of-type {
    margin-top: 20px;
}
.news-wrapper:last-of-type {
    border: 0;
}
.news-date {
    text-transform: uppercase;
    font-size: 14px;
    font-size: 1.4rem;
    color: #555;
}
.news-subtitle {
    color: #555 !important;
}
.event-wrapper {
    background: #fff;
    box-shadow: 1px 1px 5px 0 #aaa;
    padding: 0 5px;
    position: relative;
    margin: 20px 0;
    margin-right: 30px;
}
.event-wrapper:after {
    content: '';
    background: url('../img/slant--white.svg') right top;
    position: absolute;
    width: 30px;
    top: -2px;
    height: calc(100% + 8px);
    left: calc(100% - 1px);
    background-size: 100% 100%;
}
.event-date {
    background: #BA0017;
    height: 80px;
    width: 80px;
    position: relative;
    border-radius: 250px;
    display: inline-block;
    color: #fff;
    /*font-weight: bold;*/
    text-align: center;
    vertical-align: middle;
    line-height: 1;
    padding: 16px;
    margin: 8px;
}
.event-date--month {
    display: block;
    text-transform: uppercase;
}
.event-date--day {
    font-size: 30px;
    font-size: 3rem;
}
.event-details {
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 105px);
    padding: 10px 0;
}

.lined-bottom {
    padding-bottom: 10px;
    border-bottom: 3px solid #000;
}
.lined-red {
    border-bottom-color: #BA0017;
    color: #0A3D7F;
}

.section--events {
    margin-bottom: 20px;
    padding: 0 10px;
}
.section--news {
    margin-bottom: 20px;
    padding: 0 10px;
}

.content--featured-news {
    padding: 10px 20px;
    background: rgba(0, 0, 0, 0.7);
    position: absolute;
    bottom: 0;
    width: 100%;
}
.content--featured-news .news-date {
    color: #ddd;
}
.content--featured-news h3 {
    color: #fff;
}
.featured-link:hover .h5,
.featured-link:focus .h5 {
    text-decoration: underline;
}

.featured-link {
    display: block;
    width: 100%;
    height: 100%;
}

/*** header ***/
.skip-nav {
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
    -webkit-clip-path: inset(1px 1px 1px 1px);
    clip-path: inset(1px 1px 1px 1px);
}
.skip-nav:focus {
    height: auto;
    width: 100%;
    display: block;
    overflow: auto;
    clip: auto;
    z-index: 1000;
    text-align: center;
    color: #fff !important;
    text-decoration: none;
    padding: 10px;
    background: #041b38;
    font-weight: bold;
}
.site-header {
    background: #053B81;
}
.navbar-header {
    float: none !important;
    display: inline-block;
    vertical-align: middle;
}
.header-right {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    max-width: calc(100% - 201px);
}

.navbar-default .navbar-nav>li>a {
    text-transform: uppercase;
    font-family: 'Open Sans', sans-serif !important; 
    padding: 20px;
    font-size: 16px !important;
}
.navbar-default .navbar-nav>li>a:hover,
.navbar-default .navbar-nav>li>a:focus {
    text-decoration: underline;
}

/* Hide Contact Us link beyond mobile */
@media (min-width: 768px) {
    .navbar-nav>li:last-child {
        display: none;
    }
}

.navbar-toggle {
    font-size: 24px;
    font-size: 2.4rem;
    float: none !important;
    vertical-align: middle;
    color: #fff !important;
}
@media (max-width: 768px) {
    .navbar-header {
        width: 100%;
        margin: 0 !important;
    }
    .navbar-default .navbar-nav>li>a {
        text-align: center;
    }
    .header-right {
        max-width: 100%;
    }
    .navbar-toggle {
        margin: 0 !important;
    }
    .navbar {
        min-height: 0 !important;
    }
    .tabs__link__name {
        font-size: 18px;
        font-size: 1.8rem;
        word-wrap: break-word;
    }
    .menu-bars {
        display: block;
        width: 36px;
        height: 36px;
        padding: 5px 0;
        box-sizing: border-box;
    }
    .menu-bars .menu-bar {
        display: block;
        height: 4px;
        background: #fff;
        transform-origin: center;
        -webkit-transform-origin: center;
        transition: 0.3s ease;
        margin-bottom: 6px;
    }
    .menu-bars &:nth-child(2) {
        margin: 7px 0;
    }
    .navbar-toggle[aria-expanded="true"] .menu-bars .menu-bar:nth-child(1) {
        transform: translateY(10px) rotate(45deg);
        -webkit-transform: translateY(10px) rotate(45deg);
    }
    .navbar-toggle[aria-expanded="true"] .menu-bars .menu-bar:nth-child(2) {
        opacity: 0;
    }
    .navbar-toggle[aria-expanded="true"] .menu-bars .menu-bar:nth-child(3) {
        transform: translateY(-10px) rotate(-45deg);
        -webkit-transform: translateY(-10px) rotate(-45deg);
    }        
}

.select-box--translate {
    background: #3D72A4;
    border-radius: 8px;
    padding: 0 10px;
    border: 0;
}
.select-box--translate:before {
    border-top-color: #fff;
}
.select-box--translate:after {
    background: #3D72A4;
}
.select-box--translate select {
    padding: 2px 0 2px 4px;
    color: #fff;
    width: 100%;
}
.select-box--translate select:focus {
    background: #366591;
    border-radius: 8px;
}

.site-search {
    float: left;
    padding: 5px;
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
}
.site-search > #dnn_SearchPane > .DnnModule > a {
    display: none;
}

.site-search input,
.lbl-ui.search input {
    background: #3D72A4;
    border-radius: 8px;
    padding: 6px 5px 6px 11px !important;
    border: 0;
    color: #fff;
    font-family: inherit;
    height: auto;
}
.site-search input::-webkit-input-placeholder,
.lbl-ui.search input::-webkit-input-placeholder {
    color: #fff !important;
    opacity: 1 !important;
}
.site-search input::-moz-placeholder,
.lbl-ui.search input::-moz-placeholder {
    color: #fff !important;
    opacity: 1 !important;
}
.lbl-ui.search:before,
.lbl-ui.search:after {
    display: none; /* hide search icon */
}
.site-search .dnnSearchBoxClearText {
    top: 0;
    margin-right: 24px !important;
}
.site-search .site-search__button,
.lbl-ui.search input.button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    right: 8px;
    display: block;
    text-indent: 200%;
    overflow: hidden;
    white-space: nowrap;
    background: url('../img/icon--search.png');
    width: 24px;
    height: 24px;
    border: none;
    box-shadow: none;
}
.lbl-ui.search input.button:hover,
.lbl-ui.search input.button:focus {
    box-shadow: none !important;
    border: none !important;
}

/* Google search overrides */
.gsc-tabsArea > div {
    overflow: hidden !important;
}

/*** Home – Callouts ***/
.container-inner {
    margin: 0 auto;
    max-width: 800px;
}
.callout-link {
    display: block;
    width: 100%;
    height: 100%;
}
.callout-text {
    /*color: #fff;*/
    text-align: center;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 18px;
}
.callout-icon {
    border: 3px solid #fff;
    border-radius: 50px;
    margin: 0 auto 20px;
    background-size: 50px 50px;
    background-position: center center;
    background-repeat: no-repeat;
    width: 100px;
    height: 100px;
    transition: 0.3s all ease-in-out;
    background-color: #1D97C8;
}
.callout-schedules {
    background-image: url('../img/icon--schedules.png');
}
.callout-accessible {
    background-image: url('../img/icon--wheelchair.png');
}
.callout-passes {
    background-image: url('../img/icon--card.png');
}
.callout-rider {
    background-image: url('../img/icon--rider.png');
}
.callout-link:hover .callout-icon,
.callout-link:focus .callout-icon {
    transition: 0.3s all ease-in-out;
    background-color: #083267;
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
}
.callout-link:hover .callout-text,
.callout-link:focus .callout-text {
    text-decoration: underline;
}

/*** footer ***/
.footer-lower {
    background: #f2f2f2;
    padding: 20px 0;
}
.footer-lower .float-left {
    padding-left: 20px;
}
.footer-lower .float-right {
    padding-right: 20px;
}
.gw-link {
    position: relative;
    display: inline-block;
    padding: 2px 0;
}
.gw-link span {
    display: inline-block;
}
.gw-link:hover .gw-gear,
.gw-link:focus .gw-gear {
    transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
}
.gw-link:hover .gw-text,
.gw-link:focus .gw-text {
    text-decoration: underline;
}
.gw-text {
    padding-left: 42px;
    text-align: left;
    color: #171515;
    font-size: 10px;
    font-size: 1rem;
}
.gw-text br {
    line-height: 0;
}
@media (min-width: 400px) {
    .gw-text br {
        display: none;
    }
}
.gw-gear {
    background: url('../img/gw-gear.svg') no-repeat;
    width: 32px;
    height: 32px;
    transition: transform 0.3s ease-in-out;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -16px;
}
.heading--footer {
    font-size: 24px;
    font-size: 2.4rem;
    padding-bottom: 10px;
    border-bottom: 1px solid #E9E7E7;
    margin: 10px 20px 10px 0;
}
#dnn_FooterFirstPane,
#dnn_FooterSecondPane,
#dnn_FooterThirdPane,
#dnn_FooterFourthPane {
    width: 100%;
}

@media (max-width: 768px) {
    .heading--footer {
        margin: 10px 0;
    }
    .site-footer {
        padding-top: 20px;
        text-align: center;
    }
    .footer-lower small {
        float: none;
        text-align: center;
        display: block;
        margin: 10px 0;
        padding: 0 !important;
    }
    .site-footer .flex-half ul:not(.social-links) li {
        padding: 5px 0;
    }
    .site-footer .flex-half ul:not(.social-links) li > a {
        display: block;
        width: 100%;
    }
}

/*** homepage callouts ***/
.callouts-wrapper {
/*    background: url('../img/bg--slant.png') no-repeat;
    background-size: cover;*/
    padding: 40px;
    background-color: #D8D8D8;
}

/*** alerts ***/
.alerts-item {
    cursor: pointer;
    z-index: 1;
    position: relative;
    width: 100%;
    border: 1px solid #ccc;
}
.alerts-item:hover,
.alerts-item:focus {
    background-color: #e8f6fc;
}
.alerts-item.home {
    /*background-color: #EB3C48;*/
    background-color: #908D8D;
    border: 0;
    color: #fff;
}
.alerts-item.home:hover,
.alerts-item.home:focus {
    /*background-color: #E92532;*/
    background-color: #838080;
}
.alerts-item.icon-arrow-white,
.alerts-item.icon-arrow-gray {
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transition: transform .3s ease-out;
}
.alerts-item.icon-arrow-white.alert-open,
.alerts-item.icon-arrow-gray.alert-open {
    transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
}

.alerts-item--route {
    padding: 4px;
    background: #FFE6E6;
    margin: 10px 0;
    display: flex;
}
.result-details .alerts-item--route {
    margin-top: 0;
}
.alerts-item--route .media__icon {
    display: flex;
    align-items: center;
}

.alerts-item--service {
    background: #F83040;
    padding: 10px;
    margin: 10px 0;
    color: #fff !important;
    font-weight: bold;
    position: relative;
    width: 100%;
    font-family: 'Open Sans', sans-serif;
}
.alerts-item--service:after {
    content: '';
    position: absolute;
    right: 0;
    margin-right: 10px;
    width: 10px;
    height: 10px;
    border: 5px solid transparent;
    border-left-color: #fff;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transition: 0.2s all ease-in-out;
}
.alerts-item--service:hover,
.alerts-item--service:active,
.alerts-item--service:focus {
    transition: 0.2s all ease-in-out;
    background: #F71729;
}
.alerts-item--service:hover:after,
.alerts-item--service:active:after,
.alerts-item--service:focus:after {
    margin-right: 5px;
    transition: 0.2s all ease-in-out;
}
.alerts-item--service--table {
    margin: 0;
}

.alerts-total {
    margin: 0 !important;
    padding: 0;
    float: left;
    font-size: 24px;
    line-height: 2.2;
    font-weight: 600;
    color: #053B81;
}

.alerts-desc {
    padding: 20px; /* $margin-half */
    background: rgba(0,0,0,.3);
    transition: all 0.3s ease-out;
    position: relative;
}
.alerts-desc.alerts-page {
    background: #f9f9f9;
}
.alerts-desc.ng-enter {
    opacity: 0;
    transform: translateY(-20px);
    -webkit-transform: translateY(-20px);
}
.alerts-desc.ng-enter-active {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
}
.alerts-desc.ng-leave {
    opacity: 0;
    position: absolute;
}
.alerts-desc.ng-leave-active {
    opacity: 0;
}

.alert-icon {
/*    width: 44px;
    height: 44px;*/
    width: 50px;
    height: 80px;
}
.alert-icon-small {
    /* width: 38px;
    height: 38px; */
    width: 32px;
    height: 32px;
    vertical-align: middle;
}
.alert-icon--red {
    color: #F83040;
}

.alert-detail {
    /*max-width: 400px;*/
    overflow: hidden;
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.alert-stop-wrapper {
    display: flex;
    max-width: 200px;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-content: center;
}
.alert-stop-wrapper:focus path {
    fill: #333;
}
@media (min-width: 768px) {
    .alert-stop-wrapper {
        max-width: 300px;
    }
}

.alert-login, .alert-empty {
    text-align: center;
}
.alert-empty {
    margin-bottom: 20px; /* $margin-half */
}
@media (min-width: 768px) {
    .alert-login {
        text-align: right;
    }
    .alert-empty {
        text-align: left;
        margin-bottom: 0;
    }
}
.color-warning {
    color: #fa6f19;
}
.text-thing {
    font-size: 20px;
    vertical-align: middle;
}

.affected {
    margin: 0;
    font-size: 14px; /* $ts-tiny */
}
.title-less {
    margin: 0 !important;
    padding: 0;
}
.text-note {
    color: #666;
    font-size: 14px;
}
.title-routes {
    margin: 15px 0;
}
.default-list {
    margin: 10px 0 10px 18px;
}
.default-list li {
    list-style-type: disc;
}
.alert-description ul {
    margin: 10px 0 10px 18px;
}
.alert-description li {
    list-style-type: disc;
}

/***** 2017 additions for Clever module *****/
.alerts-list__item {
    border: 2px solid #F71729;
}
.alerts-list__item:hover,
.alerts-list__item:focus,
.alerts-list__item:active {
    background: #FEDCDF;
}
.alerts-list__item:hover a,
.alerts-list__item:focus a,
.alerts-list__item:active a {
    text-decoration: none !important;
}    
.alerts-list__item .media {
    width: 100%;
}
.alerts-list__item .media__icon {
    background: #F83040;
    color: #fff;
}
.alerts-list__item .media__content {
    align-self: center;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
}
.alerts-list__item .media__arrow {
    justify-self: flex-end;
    background: #514F4F;
}
.alerts-list__item .media__arrow:after {
    border-color: #fff;
}

/***** end *****/

.routes-table {
    border: 1px solid #f5f5f5;
    margin: 20px 0;
}
.routes-table thead th {
    padding: 8px;
    background: #e8e8e8;
    border-bottom: 1px solid #053B81;
    font-weight: 700;
}
.routes-table td {
    padding: 3px 8px;
}
.routes-table label {
    color: #555;
}

.media {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    align-items: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
}
.media__title {
    margin: 0;
    font-size: 14px; /* $ts-h4 */
}
.media__content {
    flex: 1 0 0;
    -webkit-flex: 1 0 0;
    -ms-flex: 1 1 auto;
    display: block;
    overflow: hidden;
}
.media__icon + .media__content {
    padding: 8px 20px;
}
.media__meta {
    display: block;
    text-transform: uppercase;
    font-size: 14px; /* $ts-meta */
}
.media__meta__item {
    margin: 0;
}
.media__icon {
    align-self: stretch;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    padding: 0 5px;
    float: left;
}
.alerts-item.home .media__icon {
    background: #514F4F;
}
.media__icon, .media__end {
    flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
}
.media__end {
    padding-left: 10px;
    margin-left: auto;
    display: block;
}
.media__arrow {
    width: 50px;
    position: relative;
    border: 0;
    align-self: stretch;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
}
.media__arrow:after {
    content: '';
    position: absolute;
    border-left: 2px solid #333;
    border-top: 2px solid #333;
    height: 15px;
    width: 15px;
    top: 50%;
    left: calc(50% - 4px);
    transform: translate(-50%, -50%) rotate(135deg);
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
}
.alerts-item.home .media__arrow {
    background: #514F4F;
}
.alerts-item.home .media__arrow:after {
    border-color: #fff;
}
.block-item {
    margin-bottom: 20px;
}
.content-buttons {
    margin-bottom: 20px;
}
.text-strong {
    font-weight: bold;
}
.badge {
    background: #053B81 !important;
}
.btn--alt {
    background: #EDECEC;
    text-transform: uppercase;
    padding: 3px 20px !important;
    font-weight: 700 !important;
}
.btn--alt:hover,
.btn--alt:focus {
    background: #E1DFDF;
    text-decoration: none !important;
}

.block-success {
    background-color: #93DFB2;
    padding: 5px 8px;
    text-align: center;
    margin: 10px 0;
}
.block-message--inline {
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px;
}
.btn-green {
    background: #004836;
    border: 2px solid #004836;
    color: #fff !important;
    padding: 5px 12px;
    text-transform: uppercase;
    font-weight: 700;
    font-family: Roboto,"Helvetica Neue",sans-serif;
}
.btn-green:hover,
.btn-green:focus {
    background: #006249;
    border-color: #006249;
}

.btn-reset {
    background: none;
    border: 2px solid transparent;
    color: #BA0017;
    padding: 5px;
    text-transform: uppercase;
    font-weight: 700;
    font-family: Roboto,"Helvetica Neue",sans-serif;
}
.btn-reset:hover,
.btn-reset:focus {
    border: 2px solid #BA0017;
    background: #BA0017;
    color: #fff;
}

/* alerts mgmt */
.section--light {
    background-color: #f7f7f7;
}
.section--slim {
    padding: 20px;
}
@media (min-width: 768px) {
    .manage-row .flex-third + .flex-third {
        padding-left: 20px;
    }
}
.field-alert-date {
    width: 100%;
}

.icon-close {
    background: url('../img/close.svg');
    width: 24px;
    height: 24px;
    display: inline-block;
    vertical-align: middle;
}

.field-input {
    padding: 6px;
    min-height: 33px;
    width: 100%;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 0;
    box-shadow: none;
}

.field-error {
    color: #F83040;
    font-weight: bold;
    padding: 3px 0;
}

.manage-row .btn {
    background-color: transparent !important;
}

.steps {
  background: #f7f7f7;
  padding: 0 20px;
}
.steps ol {
    margin: 0;
    padding: 0;
}
.steps li {
    display: inline-block;
    list-style: none;
}
.steps-item {
  color: #888;
  font-size: 14px;
  padding: 14px 30px;
  position: relative;
  text-decoration: none;
  display: block;
}
.steps-item:before,
.steps-item:after {
    position: absolute;
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    top: 50%;
}
.steps-item:before {
    left: 14px;
    border-radius: 50%;
    border: 2px solid #ddd;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);    
}
.steps-item:after {
    border: 1px solid transparent;
    border-right-color: #ccc;
    border-bottom-color: #ccc;
    right: 0;
    transform: translateY(-50%) rotate(-45deg);
    -webkit-transform: translateY(-50%) rotate(-45deg); 
}
.active .steps-item,
.complete .steps-item {
    font-weight: 700;
}
.navigable a.steps-item {
    color: #111;
}
.navigable a.steps-item:before {
    border-color: #111;
}
.active .steps-item {
    color: #053B81;
}
.active .steps-item:before {
    border-color: #053B81;
}
.complete .steps-item {
    color: #006249;
}
.complete .steps-item:before {
    border-radius: 0;
    border: none;
    border-right: 2px solid #006249;
    border-bottom: 2px solid #006249;
    width: 8px;
    transform: translateY(-7px) rotate(35deg);
    -webkit-transform: translateY(-7px) rotate(35deg);
}
.steps li:last-child .steps-item:after {
    display: none;
}
a.steps-item:hover,
a.steps-item:focus {
    text-decoration: underline;
}

.title-plain {
    margin: 24px 0 !important;
}

.pane {
    padding: 40px 20px 20px;
    position: relative;
    background-color: #f9f9f9;
    margin: 40px 0 60px;
}
.pane-title {
    position: absolute;
    top: -20px;
    left: 10px;
    right: 10px;
    background-color: #fff;
    font-size: 14px;
    padding: 14px;
    margin: 0;
    color: #666;
    border: 1px solid #eee;
    font-weight: 700;
    border-right: 3px solid #053B81;
}


.dl {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #E9E7E7;
}
.dl .dt {
    flex: 0 0 160px;
    -webkit-flex: 0 0 160px;
    -ms-flex: 0 0 160px;
    font-weight: 700;
}

select:focus {
    outline: 1px solid #0A3D7F;
}

.field-entry {
    margin-bottom: 10px;
}

.alert-route-select label {
    margin: 0 5px;
    vertical-align: middle;
}
.alert-route-select input {
    margin: 0 !important;
}

/** links **/
a.md-default-theme:not(.md-button), a:not(.md-button) {
    color: #053B81;
}
a.md-default-theme:not(.md-button):hover, a:not(.md-button):hover,
a.md-default-theme:not(.md-button):focus, a:not(.md-button):focus {
    color: #021937;
    text-decoration: underline;
}
.sec-links a {color: #e0e0e0; text-transform: uppercase;}
.sec-links a:hover, .sec-links a:focus {color: #fff; text-decoration: underline;}

a { color: #053B81;}
a:hover, a:focus {text-decoration: underline;}

td:not(.sorting_desc, .sorting_asc, .sorting, .adp-substep), th:not(.sorting_desc, .sorting_asc, .sorting) {
    padding: 8px !important; /* override bootstrap */
}

.u--inherit-color {
    color: inherit !important;
}
.u--inline-block {
    display: inline-block;
}
.box-margin-sm {
    margin: 20px 0;
}

/* pagination */
.article_pager a.page {
    background: #053B81;
    border: 1px solid #053B81;
    color: #fff;
    padding: 5px 10px;
    margin-right: 5px;
    font-weight: bold;
}
.article_pager a.page.active {
    background: #fff;
    color: #053B81;
}
.article_pager a.page:not(.active):hover,
.article_pager a.page:not(.active):focus {
    background: #06469a;
    color: #fff;
}
.article_pager a:hover,
.article_pager a:focus {
    text-decoration: none;
}


/** containers **/
.container,
.container-fluid {
    max-width: 1200px;
    width: 100% !important; /* override bootstrap */
}

.no-margin { margin: 0;}
.no-padding { padding: 0;}

.margin-sm--hor {
    margin: 0 10px;
}
.margin-sm--vert {
    margin: 10px 0;
}

.text-uppercase {
    text-transform: uppercase;
}
.text-strong {
    font-weight: 700;
}

/*** datepicker plugin styles ***/
datepicker a, [datepicker] a, .datepicker a{
  color:inherit;
  text-decoration:none;
}
datepicker a:hover, [datepicker] a:hover, .datepicker a:hover{
  text-decoration:none;
}
datepicker select, datepicker select:focus, datepicker select:hover,
.datepicker select, .datepicker select:focus, .datepicker select:hover,
[datepicker] select, [datepicker] select:focus, [datepicker] select:hover{
  width:100%;
   overflow: hidden;
   /*background:none;
   color:#fff; */
   background-color: #fff;
   border-radius:2px;
   border: 0;
   margin-top:5px;
}
datepicker, .datepicker, [datepicker],
._720kb-datepicker-calendar-header,
._720kb-datepicker-calendar-body,
._720kb-datepicker-calendar-days-header,
._720kb-datepicker-calendar-years-pagination-pages {
  font-size: 13.5px;
  width: 100%;
  margin: 0 auto;
  float: left;
  clear: right;
  position: relative;
}
._720kb-datepicker-calendar {
  background: white;
  color: #333;
  position: absolute;
  z-index: 999;
  min-width: 220px;
  margin: 0 auto;
  width: 101%;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
  visibility: hidden;
  overflow:hidden;
  margin-left:-0.5%;
  padding: 0 0 2% 0;
  border-radius: 3px;
}
._720kb-datepicker-calendar._720kb-datepicker-open,._720kb-datepicker-calendar._720kb-datepicker-forced-to-open {
  visibility: visible;
}
._720kb-datepicker-calendar-header {
  text-align: center;
  font-size: 15px;
  line-height: 40px;
}
._720kb-datepicker-calendar-header:nth-child(odd) {
  background: #0A3D7F;
}
._720kb-datepicker-calendar-header:nth-child(even) {
  background: #1D97C8;
}
._720kb-datepicker-calendar-header-left,
._720kb-datepicker-calendar-header-middle,
._720kb-datepicker-calendar-header-right {
  width: 15%;
  float: left;
}
._720kb-datepicker-calendar-header-middle {
  width: 70%;
}

._720kb-datepicker-calendar-header-closed-pagination::after {
  content: " \25BE";
}

._720kb-datepicker-calendar-header-opened-pagination::after {
  content: " \25F9";
}
._720kb-datepicker-calendar-body {
  width: 96%;
  margin: 2%;
  text-align: center;
}
._720kb-datepicker-calendar-day {
  cursor: pointer;
  font-size: 12.5px;
  width: 12.2%;
  margin:5px 1%;
  padding: 9px 0;
  float: left;
  border-radius: 1px;
}
._720kb-datepicker-calendar-day:hover,._720kb-datepicker-calendar-day._720kb-datepicker-active {
  background: rgba(0, 0, 0, 0.1);
}
._720kb-datepicker-calendar-header a, ._720kb-datepicker-calendar-header a:hover {
  text-decoration:none;
  padding:3% 9% 4% 9%;
  font-size: 13.5px;
  color: #fff;
  font-weight: bold;
  border-radius: 3px;
}
._720kb-datepicker-calendar-header a:hover {
  color:rgba(0, 0, 0, 0.9);
  background: rgba(255, 255, 255, 0.45);
}
._720kb-datepicker-calendar-month {
  color:#fff;
}
._720kb-datepicker-calendar-month span {
  font-size: 13px;
  color: #fff;
}
._720kb-datepicker-calendar-month a span  i {
  font-style: normal;
  font-size:15px;
}
._720kb-datepicker-calendar-month a, ._720kb-datepicker-calendar-month a:hover {
  padding: 3px;
  margin-left:1%;
}
._720kb-datepicker-calendar-years-pagination{
  padding:2% 0 0 0;
  float:left;
  clear: right;
  width: 100%;
}
._720kb-datepicker-calendar-years-pagination a, ._720kb-datepicker-calendar-years-pagination a:hover {
  font-size:12px;
  padding:0 7px;
  font-weight: normal;
  margin:3px 1% 0 1%;
  line-height: 20px;
  display: inline-block;
}
._720kb-datepicker-calendar-years-pagination a._720kb-datepicker-active {
  color:rgba(0, 0, 0, 0.9);
  font-weight: 500;
  background: rgba(255, 255, 255, 0.45);
}
._720kb-datepicker-calendar-years-pagination-pages a,._720kb-datepicker-calendar-years-pagination-pages a:hover{
  padding:5px 10px;
}
._720kb-datepicker-calendar-days-header{
  max-width: 100%;
  margin:0 auto;
  padding:0 2% 0 2%;
  background: rgba(19, 142, 250, 0.08);
  border-bottom:1px solid rgba(0,0,0,0.02);
}
._720kb-datepicker-calendar-days-header div{
  width: 14.18%;
  font-weight: 500;
  font-size: 11.5px;
  padding:10px 0;
  float:left;
  text-align: center;
  color:rgba(0,0,0,0.7);
}
._720kb-datepicker-calendar-days
._720kb-datepicker-default-button{
  font-size: 18.5px;
  position: relative;
  bottom:-0.5px;
}
._720kb-datepicker-default-button{
  padding:0 4.5px;
}
._720kb-datepicker-calendar-header-middle._720kb-datepicker-mobile-item{
  width:95%;
  float:none;
  margin:0 auto;
}
._720kb-datepicker-item-hidden{
  visibility:hidden;
}
._720kb-datepicker-calendar-day._720kb-datepicker-disabled,
._720kb-datepicker-calendar-day._720kb-datepicker-disabled:hover,
._720kb-datepicker-calendar-years-pagination a._720kb-datepicker-disabled,
._720kb-datepicker-calendar-years-pagination a._720kb-datepicker-disabled:hover,
._720kb-datepicker-calendar-years-pagination a._720kb-datepicker-active._720kb-datepicker-disabled,
._720kb-datepicker-calendar-years-pagination a._720kb-datepicker-active._720kb-datepicker-disabled:hover{
  color:rgba(0,0,0,0.2);
  background: rgba(25,2,0,0.02);
  cursor: default;
}

@media (max-width: 700px) { /* ??? */
  .field-icon--date {
    width: 100%;
    datepicker {
      width: 100%;
      input {
        width: 100%;
        max-width: none;
      }
    }
  }
}


/* jQuery ui Datepicker */
.ui-datepicker {
  background: #fff;
  box-shadow: 0 3px 5px rgba(0,0,0,.3);
}
.ui-datepicker table {
    margin-bottom: 0;
}
.ui-datepicker a {
    text-decoration: none;
}
.ui-datepicker-header {
  background: #0A3D7F;
  text-align: center;
  color: #fff;
  padding: 5px;
}
.ui-datepicker-prev, .ui-datepicker-next {
  color: #fff !important;
  font-size: 14px;
}
.ui-datepicker-prev:hover,
.ui-datepicker-prev:focus,
.ui-datepicker-next:hover,
.ui-datepicker-next:focus {
    color: #fff !important;
    cursor: pointer;
}
.ui-datepicker-prev {
  float: left;
}
.ui-datepicker-next {
  float: right;
}
.ui-datepicker-title {
  font-weight: 700;
}
#ui-datepicker-div {
    z-index: 999 !important;
}
.ui-datepicker-calendar td, .ui-datepicker-calendar th {
    padding: 8px;
}

/* Action Form styles */
.bstrap30 .required:not(input):after {
    content: '*';
    color: #F83040;
}

/****************
RESPONSIVE STYLES
****************/

/*==========  Mobile First Method  ==========*/

/* Extra Small Devices, Phones */ 
@media only screen and (max-width : 480px) {


}

/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
    #google_translate_element {
        
        /*margin: 3px -20px 0 0;*/
        vertical-align: middle;
        /*width: 50px;*/
    }
    .site-search {
        width: 100%;
    }
    .searchInputContainer {
        display: block !important;
        margin: 0 !important;
    }
    .site-search input {
        width: 100%;
    }

    .site-header{position: static;}
    .maps-page .site-header {position: relative;}
    .site-data{margin-top: 0;}
    
    /*.top-header {background: #464444;}*/
    
    .navbar-nav{margin: 10px 0;}
    .navbar-nav li{padding: 10px 20px;}
    .navbar-nav li > a {
        padding: 0 !important;
    }
    .navbar-nav li:hover,
    .navbar-nav li:focus {
        background-color: #043068;
    }
    
    .navbar-header{float: none; text-align: center;padding: 5px 0 0;}
    .navbar-brand{float: none;}
    
    .sec-links.clearfix {float: none;margin: 0;padding: 0;text-align: center;}
    .sec-links a {color: #f8f8f8;font-size: 18px;line-height: 34px}
    /*.sec-links > li {width: 14.6666%;}*/
    .sec-links > li { width: 50%;}
    /*.sec-links li + li::before{font-size:16px;}*/
    .sec-links li + li::before{display: none;}
    /*.sec-links span {display: none;}*/
    
    .navbar-brand{padding: 5px 0 0;}
    
    .alert-sub{text-align: left;}
    .alert-sub a{display: block;line-height: 35px}
    .alert-links a + a::before{margin: 0; content: '';}
    .alert-sub{padding-bottom: 45px; background-position: 12px bottom;}
    
    /*.accordion.sec-nav>li:not(.active){display: none;}*/
    .accordion.sec-nav>li.active{border-top:none;}
    .breadcrumbs-wrap {text-align: left;padding-left: 0;padding-right: 0}
    
    .quick-links li + li{margin: 0 15px 0 0;}
    .time-list .day{width: 100%;}
    .time-list li+li{margin-top: 10px;}
    
    .social-links li{width:calc(100%/6); text-align: center;}
    .social-links li + li{margin: 0 0 10px 0}
    .inline-list li{text-align: center}
    .inline-list li + li{margin: 0 5px 5px 0}
    
    .additional-row .col-md-4 + .col-md-4{margin-top: 10px;}
    .partners-list li{width: 49%}
    
    
    .cta-link {background-size: cover;}
    
    .contact-info, .page-content-area:not(.map-content) {padding-top: 15px;}
    
    aside.shadow-section {padding-top: 15px;}
    /*.sec-navbar-toggle{display: block;}*/
    
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 469px) and (max-width : 992px) {
    .site-header{position: static;}
    .maps-page .site-header {position: relative;}
    .site-data{margin-top: 0;}
    
    .navbar-header{float: none; text-align: center;padding: 5px 0 0;}
    .navbar-brand{float: none;}
    
    .navbar-default .navbar-nav > li > a{font-size: 18px;}
    .navbar-collapse{padding: 0;}
    .navbar-nav.navbar-right{float: none !important;}
    .navbar-default .navbar-nav > li > a{padding: 19px 10px;}
    .cta-link {background-size: cover;}  
}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 993px) and (max-width : 1200px) {
    
    .site-header{position: static;}
    .maps-page .site-header {position: relative;}
    .site-data{margin-top: 0;}
    
    .navbar-header{float: none; text-align: center;padding: 5px 0 0;}
    .navbar-brand{float: none;}
    .cta-link {background-size: cover;}    

}