@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditablack-webfont.eot');
    src: url('fonts/gordita/gorditablack-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditablack-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditablack-webfont.woff') format('woff'),
    url('fonts/gordita/gorditablack-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditablack-webfont.svg#gorditablack') format('svg');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditalight-webfont.eot');
    src: url('fonts/gordita/gorditalight-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditalight-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditalight-webfont.woff') format('woff'),
    url('fonts/gordita/gorditalight-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditalight-webfont.svg#gorditalight') format('svg');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditalightitalic-webfont.eot');
    src: url('fonts/gordita/gorditalightitalic-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditalightitalic-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditalightitalic-webfont.woff') format('woff'),
    url('fonts/gordita/gorditalightitalic-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditalightitalic-webfont.svg#gorditalight_italic') format('svg');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditaregular-webfont.eot');
    src: url('fonts/gordita/gorditaregular-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditaregular-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditaregular-webfont.woff') format('woff'),
    url('fonts/gordita/gorditaregular-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditaregular-webfont.svg#gorditaregular') format('svg');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditabold-webfont.eot');
    src: url('fonts/gordita/gorditabold-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditabold-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditabold-webfont.woff') format('woff'),
    url('fonts/gordita/gorditabold-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditabold-webfont.svg#gorditabold') format('svg');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditamedium-webfont.eot');
    src: url('fonts/gordita/gorditamedium-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditamedium-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditamedium-webfont.woff') format('woff'),
    url('fonts/gordita/gorditamedium-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditamedium-webfont.svg#gorditamedium') format('svg');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditaregularitalic-webfont.eot');
    src: url('fonts/gordita/gorditaregularitalic-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditaregularitalic-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditaregularitalic-webfont.woff') format('woff'),
    url('fonts/gordita/gorditaregularitalic-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditaregularitalic-webfont.svg#gorditaregular_italic') format('svg');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'gordita';
    src: url('fonts/gordita/gorditamediumitalic-webfont.eot');
    src: url('fonts/gordita/gorditamediumitalic-webfont.eot?#iefix') format('embedded-opentype'),
    url('fonts/gordita/gorditamediumitalic-webfont.woff2') format('woff2'),
    url('fonts/gordita/gorditamediumitalic-webfont.woff') format('woff'),
    url('fonts/gordita/gorditamediumitalic-webfont.ttf') format('truetype'),
    url('fonts/gordita/gorditamediumitalic-webfont.svg#gorditamedium_italic') format('svg');
    font-weight: 500;
    font-style: italic;
}

/*
#30383b - Dark grey
#e0334d - Red
#fecd20 - Yellow
#9e62a5 - Purple
#1ab3aa - Blue
*/
/* standard */
body {
    background: #2E3638;
    font-size: 15px;
    font-family: 'gordita';
}

a:hover, a:focus {
    text-decoration: none;
    outline: none;
}

img {
    max-width: 100%;
    height: auto;
}

hr {
    border-top-color: #e5e5e5;
    clear: both;
}

/* text-sizes */
body.text-small {
    font-size: 15px;
}

body.text-medium {
    font-size: 18px;
}

body.text-large {
    font-size: 22px;
}

/* texts */
h1, .h1 {
    margin: 0 0 0.5em 0;
    line-height: 1.3em;
    font-size: 2em;
    font-weight: 700;
}

h2, .h2 {
    margin: 0 0 0.5em 0;
    line-height: 1.3em;
    font-size: 1.6em;
    font-weight: 700;
}

h3, .h3 {
    margin: 0 0 0.7em 0;
    line-height: 1.3em;
    font-size: 1.3em;
}

h4, .h4 {
    margin: 0 0 1em 0;
    line-height: 1.3em;
}

h5, .h5 {
    margin: 0 0 1em 0;
    line-height: 1.3em;
    font-size: 1em;
}

p {
    margin: 0 0 10px 0;
}

/* nav */
nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

nav ul li {
    margin: 0;
    padding: 0;
}

/*=======================================
ANIMATIONS
=======================================*/
@-moz-keyframes spin {
    100% {
        -moz-transform: rotate(360deg);
    }
}

@-webkit-keyframes spin {
    100% {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes spin {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.fade-down-box .fade-down {
    position: relative;
    top: -10px;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
}

.fade-down-box:hover .fade-down {
    top: 0px;
}

.fade-right-box .fade-right {
    position: relative;
    padding-left: 0;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
}

.fade-right-box:hover .fade-right {
    padding-left: 15px;
}

/*======================================
MOBILE CONTENT
/*======================================*/
.mobile-content {
    background-color: #fff;
}

.mobile-content .news-item-body {
    padding: 30px;
}

/*=======================================
USERCONTENT
=======================================*/
.usercontent p {
    margin: 0 0 1em 0;
    line-height: 1.7em;
}

.usercontent a {
    color: #2E3638;
    font-weight: 700;
    text-decoration: none;
}

.usercontent a:hover,
.usercontent a:focus {
    color:#C31D36;
}

.usercontent pre {
    margin: 20px 0 40px 0;
    padding: 20px 20px;
    background: none;
    border-right: none;
    border-left: none;
    border-radius: 0;
    font-family: 'Lato', sans-serif;
    font-size: 2.3em;
    font-weight: 300;
    word-break: normal;
    word-wrap: normal;
    white-space: normal;
}

.usercontent pre:before {
    content: '"';
    font-family: 'Lato', sans-serif;
}

.usercontent pre:after {
    content: '"';
    font-family: 'Lato', sans-serif;
}

.usercontent pre+address {
    margin: -53px 0 0 0;
    padding: 0 0 0 10px;
    background: #FFF;
    display: inline-block;
    font-family: 'Lato', sans-serif;
    font-weight: 700;
    font-size: 1.2em;
    float: right;
}

.usercontent ul {
    margin: 0 0 1.4em 0;
    padding: 0;
    list-style-type: none;
    line-height: 1.5em;
}

.usercontent ul li {
    position: relative;
    padding: 0 0 10px 15px;
    transition: all 0.3s ease;
}
.usercontent ul li:hover,
.usercontent ul li:focus {
    position: relative;
    padding: 0 0 10px 25px;
}

.usercontent ul li::before {
    content: " ";
    left: -5px;
    position: absolute;
    top: 16%;
    transition: all 0.3s ease 0s;
    z-index: 200;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 9px solid #C31D36;
    border-radius: 2px;
}
.usercontent ul li a {
  position: relative;
}
.usercontent ul li a::after {
    content: " ";
    left: 0;
    position: absolute;
    bottom: -1px;
    transition: all 0.3s ease 0s;
    z-index: 200;
    width: 0%;
    height: 2px;
    background-color: #C31D36;
}
.usercontent ul li a:hover::after,
.usercontent ul li a:focus::after {
  width: 100%;
}

/*=======================================
GOOGLE MAPS
=======================================*/
.gm-style img {
    max-width: none;
}

/*=======================================
WEBSYMBOLS
=======================================*/
i {
    position: relative;
    top: -1px;
    display: inline-block;
    font-family: icomoon;
    font-weight: normal;
    font-style: normal;
    text-transform: none;
    font-size: 16px;
    line-height: 0;
    vertical-align: middle;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    speak: none;
}

i.green {
    color: green;
}

i.red {
    color: red;
}

/*=======================================
FORMS
=======================================*/
form {
    margin: 0;
}

label {
    font-weight: 500;
    color: #2E3638;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
textarea,
select {
    width: 100%;
    height: 38px;
    margin: 0;
    padding: 5px 10px;
    font-size: 1em;
    color: #666;
    background: #FFF;
    border: 1px solid #ccc;
    border-radius: 3px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"] {
    margin: 0;
}

input[type="file"] {
    padding: 10px;
    border: 1px dashed #bbb;
}

input[type="number"] {
    width: auto;
}

.field_wrap {
    margin: 0 0 6px 0;
}

.input_wrap.dateselect select {
    width: 32%;
}

.input_wrap.checkboxes>label {
    display: block;
}

.input_wrap.radiobuttons>label {
    display: block;
    float: left;
    margin: 5px;
}

.submit_wrap {
    margin: 20px 0 0 0;
}

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

fieldset legend {
    display: inline-block;
    width: auto;
    margin: 0 0 -5px 0;
    padding: 0 5px;
    border: none;
    font-size: 1em;
    font-weight: normal;
}

fieldset .field_wrap {
    margin: 0;
}

.repeater_wrap {
    margin: 0 0 20px 0;
}

.repeater_item {
    margin: 0 -10px 5px -10px;
    padding: 0 10px 20px 10px;
    border-bottom: 1px solid #ddd;
}

.repeater_item .field_wrap {
    margin: 5px 0 0 0;
    overflow: hidden;
}

.repeater_item .label_wrap {
    float: left;
    width: 30%;
}

.repeater_item .input_wrap {
    float: left;
    width: 70%;
}

.repeater_controls {
    margin: 0 0 -5px 0;
}

label.error {
    color: red;
}

input.error {
    border: 1px solid red;
    background: url('../images/ico-error.png') no-repeat 99% center #ffefef;
}

input[type="number"].error {
    background-position: 88% center;
}

textarea.error {
    border: 1px solid red;
    background: url('../images/ico-error.png') no-repeat 99% 20px #ffefef;
}

select.error {
    border: 1px solid red;
    background: #ffefef;
}

.error_feedback {
    margin: 1em 0;
    background: #FFEfEf;
    padding: 15px;
    border: 1px solid #EED3D7;
}

.error_feedback ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.error_feedback ul li {
    margin: 0;
    padding: 0 0 0 25px;
    color: red;
    background: url('../images/ico-error.png') no-repeat 0 4px;
}

/*
.input_wrap.radiobuttons input { position:absolute; left:-9999px; }
.input_wrap.radiobuttons > label:before { content:" "; display:inline-block; vertical-align:top; width:15px; height:15px; margin:2px 2px 0 0; border-radius:999px; background:#FFF; border:4px solid #FFF; }
.input_wrap.radiobuttons > label:hover:before { background:#EEE; }
.input_wrap.radiobuttons > label.checked:before { background:#333; }
*/
i.disruption-icon {
    color: #f99d16;
}

/*=======================================
HELPERS
=======================================*/
.spaced {
    margin-bottom: 20px !important;
}

.confined {
    overflow: hidden !important;
}

.padded {
    padding: 20px !important;
}

.shaded {
    background-color: #f5f5f5 !important;
}

.clear {
    clear: both !important;
    float: none !important;
}

.alignright {
    float: right !important;
}

.alignleft {
    float: left !important;
}

.aligncenter {
    text-align: center !important;
}

.underlined {
    text-decoration: none !important;
    padding-bottom: 0.3em !important;
    border-bottom: 1px dotted #0088CC !important;
}

.underlined:hover {
    border-bottom: 1px solid #005580 !important;
}

.nofloat {
    float: none !important;
    margin-left: 0 !important;
}

.inline {
    display: inline !important;
}

.row.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

.row.no-gutters [class^="col-"],
.row.no-gutters [class*=" col-"] {
    padding-right: 0;
    padding-left: 0;
}

/*=======================================
BUTTONS
=======================================*/
.button,
.submit_wrap button {
    display: inline-block;
    padding: 0 16px;
    font-size: 1em;
    line-height: 50px;
    text-align: center;
    border: none;
    text-decoration: none !important;
    transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
    -o-transition: background 0.3s;
}

.button i {
    font-size: 20px;
}

.button i.iconleft, .button.iconleft i {
    display: inline-block;
    margin: 0 0px 0 -5px;
}

.button i.iconright, .button.iconright i {
    display: inline-block;
    margin: 0 -5px 0 0px;
}

.button.joinleft {
    margin-left: 1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.button.joinright {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.button.jointop {
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}

.button.joinbottom {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.button.small {
    padding: 0 18px;
    line-height: 34px;
    font-size: 0.9em;
}

.submit_wrap button, .submit_wrap button:focus, .button, .button:focus {
    display: block;
    font-size: 1.3em;
    font-weight: 400;
    padding-top: 4px;
    color: #fff;
    background: #1ab3aa;
}

.button:hover, .submit_wrap button:hover {
    background: #15948B;
}

.button.alternate,
.button.alternate:focus {
    display: block;
    margin: 0 0 20px 0;
    padding: 13px 16px;
    color: #2E3638;
    text-align: center;
    font-size: 1.1em;
    line-height: 1.8em;
    font-weight: bold;
    background: #1ab3aa;
}

.button.alternate:hover {
    color: #FFF;
    background: #0F7B76;
}

@media (min-width: 768px) {

    .button.alternate,
    .button.alternate:focus {
        font-weight: bold;
    }
}

@-moz-document url-prefix() {
    .bus-stop-search button {
        margin: 1px 0 0 0;
    }
}

.back-button {
    display: inline-block;
    margin: 15px 0;
    padding: 10px 25px;
    font-size: 16px;
    background: #e0334d;
    color: #FFF;
}

.back-button:hover {
    background: rgba(224, 51, 77, 0.8);
    color: #FFF;
}

.back-button.__news {
    display: inline-block;
    margin: 15px 0;
    padding: 10px 25px;
    background: #1ab3aa;
    color: #FFF;
}

.back-button.__news:hover {
    background: rgba(26, 179, 170, 0.8);
    color: #FFF;
}

/*=======================================
RESPONSIVE MENU
=======================================*/
@media (max-width: 767px) {
    .menu-respond {}

    .menu-respond a {
        display: block;
        line-height: 1em;
        background: #e0334d;
        color: #fff;
    }

    .menu-respond ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .menu-respond ul li {
        margin: 0;
        padding: 0;
    }

    .menu-respond ul li a {
        padding: 14px 14px;
        text-align: left;
    }

    .menu-respond ul li ul li a {
        background: rgba(224, 51, 77, 0.6);
        padding-left: 35px;
    }

    .menu-respond ul li ul li ul li a {
        padding-left: 60px;
        background: #bbb;
    }

    .menu-respond ul li>a.selected {
        background: #1ab3aa;
    }

    .menu-collapse {
        display: none;
    }

    .menu-toggle {
        position: relative;
        padding: 18px 58px 18px 14px;
    }

    .menu-toggle:after {
        content: "\ac";
        font-family: 'icomoon';
        position: absolute;
        right: 14px;
        top: 50%;
        margin-top: -16px;
        padding: 6px;
        background: rgba(255, 255, 255, 0.2);
        font-size: 20px;
        line-height: 20px;
        border-radius: 4px;
    }
}

@media (min-width:768px) {
    .menu-toggle {
        display: none !important;
    }

    .menu-toggle.visible {
        display: block !important;
    }

    .menu-collapse {
        display: block !important;
    }
    .menu-collapse.__flex {
      display: flex !important;
    }
}

/*=======================================
GRID FIFTHS
=======================================*/
.col-sm-fifth {
    position: relative;
    min-height: 1px;
}

@media (min-width:768px) {
    .col-sm-fifth {
        float: left;
        width: 20%;
        padding-left: 10px;
        padding-right: 10px;
    }
}

/*=======================================
ACCESSIBILITY
=======================================*/
.accessibility-wrap {
    display: none;
    background: #e0334d;
    text-align: right;
}

.accessibility, .contrast, #browsealoud {
    display: inline-block;
    vertical-align: middle;
    padding: 0 8px;
    height: 40px;
}

.accessibility-title, .contrast-title, .browsealoud-title {
    color: #FFF;
    margin: 0 7px 0 0;
    line-height: 45px;
}

.accessibility-small, .accessibility-medium, .accessibility-large {
    display: inline-block;
    line-height: 40px;
    font-family: arial, sans-serif;
    color: #FFF;
    font-weight: bold;
}

.accessibility-small:hover, .accessibility-medium:hover, .accessibility-large:hover, .accessibility-small:focus, .accessibility-medium:focus, .accessibility-large:focus {
    color: #EEE;
}

.accessibility-small {
    font-size: 14px;
}

.accessibility-medium {
    font-size: 18px;
}

.accessibility-large {
    font-size: 24px;
}

.accessibility-small.selected, .accessibility-medium.selected, .accessibility-large.selected {
    text-decoration: underline;
}

.contrast-box {
    display: inline-block;
    vertical-align: middle;
    width: 15px;
    height: 15px;
    margin: 0 0 4px 0;
    background: #FFF;
    border: 1px solid #e0334d;
}

.contrast-box.yellow {
    background: #FFFA00;
}

.contrast-box.selected {
    border: 3px solid #e0334d;
}

/*=======================================
PAGE WRAP
=======================================*/
.page-wrap {
    padding: 0 0 100px 0;
    background: #FFF;
    overflow: hidden;
}

.page-wrap.grey {
    background: #EEE;
}

/*=======================================
TOPBAR
=======================================*/
.topbar {
    min-height: 40px;
    text-align: right;
    background: #30383b;
}

.topbar-phone {
    text-align: center;
    vertical-align: top;
    margin: 10px 0;
    padding: 10px 5px 0;
    color: #FFF;
    line-height: 20px;
    color: #FFF;
}

.topbar-phone a {
    color: #FFF;
    font-weight: 500;
}

.topbar-account {
    text-align: center;
    display: block;
    vertical-align: top;
    background: #fff;
}

.topbar-account a {
    display: block;
    margin: 0;
    padding: 0 15px;
    background: #1ab3aa;
    position: relative;
}
.topbar-account a:hover::after {
  width: 100%;
}

.topbar-account a::before {
  content: '';
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1EBDAE;
}
.topbar-account a::after {
  content: '';
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #64D8CD;
  transition: all 0.3s ease;
}

.topbar-account a span {
  color: #2E3638;
  font-weight: bold;
  line-height: 40px;
  position: relative;
  z-index: 2;
}

.topbar-account a:hover {
    background: rgba(26, 179, 170, 0.8);
}

@media (min-width:768px) {
    .topbar-phone {
        padding: 0 15px;
        display: inline-block;
        text-align: left;
    }

    .topbar-account {
        display: inline-block;
        text-align: left;
    }
}

/*=======================================
AUXMENU
=======================================*/
.auxmenu {
    display: block;
    text-align: center;
}

.auxmenu ul li:last-child {
    display: none;
}

.auxmenu ul li {
    display: block;
    vertical-align: top;
    height: 20px;
    margin: 10px 0 0 -4px;
}

.auxmenu ul li a {
    display: block;
    vertical-align: top;
    margin: -10px 0;
    padding: 10px 5px;
    line-height: 20px;
    font-weight: 500;
    color: #FFF;
    transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
    -o-transition: background 0.3s;
    position: relative;
}

.auxmenu ul li a::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 2px;
  background-color: #19B3AB;
  transition: all 0.3s ease;
}

@media (min-width:768px) {
    .auxmenu {
        display: inline-block;
        text-align: left;
    }

    .auxmenu ul li {
        display: inline-block;
        border-right: 1px solid #ccc;
    }

    .auxmenu ul li a {
        display: inline-block;
    }

    .auxmenu ul li:first-child {
        display: inline-block;
    }

    .auxmenu ul li:last-child {
        display: inline-block;
    }

    .auxmenu ul li a {
        padding: 10px 20px;
    }

    .auxmenu ul li a:hover, .auxmenu ul li a.selected {
        color: #19B3AB;
    }
    .auxmenu ul li a:hover::before, .auxmenu ul li a.selected::before {
        width: 100%;
    }
}

/*=======================================
HEADER
=======================================*/
.header {
    background: #FFF;
    text-align: center;
    position: relative;
}

.header-logo {
    display: block;
    padding: 27px 0 25px 0;
    text-align: center;
}

@media (max-width:767px) {
    .header {
        padding: 0 0 20px 0;
    }

    .header-logo img {
        display: block;
        margin: 0 auto;
    }
}

/*=======================================
MAINMENU
=======================================*/
@media (min-width:768px) {
    .mainmenu-wrap {
        margin: 0 0 0 -25px;
        min-height: 85px;
        background: #fff;
        text-align: right;
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

    .mainmenu li {
        position: relative;
        display: inline;
        padding: 0;
        z-index: 200;
    }

    .mainmenu li>a {
        display: inline-block;
        margin: 0;
        padding: 10px 7px;
        border-bottom: 2px solid #fff;
        line-height: normal;
        background: none;
        font-size: 16px;
        font-weight: 500;
        color: #2E3638;
        text-align: center;
    }

    .welsh .mainmenu li>a {
        padding: 10px 6px;
    }

    .welsh .mainmenu li a {
        font-size: 0.76em;
    }

    .mainmenu li:hover>a {
        color: #e0334d;
        border-color: #e0334d;
    }

    .mainmenu li>a.selected {
        font-weight: 500;
        color: #e0334d;
    }

    .mainmenu li ul {
        display: none;
        position: absolute;
        left: 0;
        right: 3px;
        margin: 0 0 0 0;
        min-width: 370px;
    }

    .welsh .mainmenu li ul {
        min-width: 450px;
    }

    .mainmenu li ul li {
        display: block;
        background: #30383b;
    }

    .mainmenu li ul li a {
        display: block;
        margin: 0;
        padding: 15px;
        background: #30383b;
        border-bottom: none;
        color: #fff;
        border-radius: 0;
        font-weight: 500;
        line-height: 1em;
        text-align: left;
        transition: all 0.3s;
        position: relative;
    }

    .mainmenu li ul li a::before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        background-color: #1ab3aa;
        transition: all 0.3s;
        width: 4px;
        height: 0;
    }

    .mainmenu li ul li a:hover,
    .mainmenu li ul li a.selected {
        color: #fff;
        background: #1F2527;
        border-color: #555;
        padding-left: 20px;
    }

    .mainmenu li ul li a:hover::before,
    .mainmenu li ul li a.selected::before {
        height: 100%;
    }

    .mainmenu li:hover ul {
        display: block;
    }

    .mainmenu li:last-child ul {
        left: auto;
        right: 0;
    }

    /* .mainmenu li ul li:last-child a {
        border: none;
    } */
}

@media (min-width:992px) {
    .mainmenu li a {
        padding: 10px 9px;
        font-size: 0.9em;
    }

    .welsh .mainmenu li a {
        padding: 10px 8px;
        font-size: 0.8em;
    }
}

@media (min-width:1200px) {
    .mainmenu li a {
        padding: 10px 11px;
        font-size: 16px;
    }

    .welsh .mainmenu li a {
        padding: 10px;
        font-size: 0.83em;
    }
}

/*=======================================
SUBMENU
=======================================*/
.submenu-wrap {
    margin: 30px 0 10px 0;
    display: none;
}

/* hide the case studies page from the menu */
.submenu-wrap li.page64 {
    display: none;
}

.submenu-wrap li.page9 {
    display: none;
}

@media (min-width:768px) {
    .submenu-wrap {
        display: block;
    }

    .submenu li {
        position: relative;
        display: block;
    }

    .submenu li a {
        display: block;
        border-left: 1px solid #CCC;
        color: #333;
        font-weight: 700;
        transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -webkit-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
    }

    .submenu li a.last-child {
        border-left: 1px solid transparent;
    }

    .submenu li a span {
        position: relative;
        top: -31px;
        display: block;
        padding: 14px 30px 14px 20px;
    }

    .submenu li a span:before {
        content: " ";
        position: absolute;
        left: -5px;
        top: 43%;
        z-index: 200;
        width: 10px;
        height: 10px;
        background: #e0334d;
        border: 2px solid #e0334d;
        border-radius: 50%;
        transition: all 0.3s;
        -moz-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -o-transition: all 0.3s;
    }

    .submenu li ul span {
        padding-left: 35px;
    }

    .submenu li ul ul span {
        padding-left: 55px;
    }

    .submenu li>a.selected span:before {
        left: -5px;
        background: #fff;
    }

    .submenu li.active>a span:before {
        left: -5px;
        background: #fff;
    }

    .submenu li a span:hover:before {
        left: -5px;
        background: #fff;
    }

    .submenu li.parent.active ul li>a.selected span:before {
        content: " ";
        left: -5px;
        background: #fff;
    }
}

/*=======================================
BREADCRUMB
=======================================*/
.breadcrumb {
    display: block;
    margin: 0;
    border-radius: 0;
}
span.breadcrumb-root:before {
    display: none;
    padding: 0 10px 0 0;
}
.breadcrumb a,
.breadcrumb span {
    font-size: 0.9em;
    text-transform: uppercase;
    transition: all 0.2s ease;
    padding: 0 0 0 4px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.92px;
    color:inherit;
}
.breadcrumb a::before,
.breadcrumb span::before {
    content: "\3e";
    font-family: icomoon;
    margin: 0 5px 0 0;
    font-size: 12px;
}
.breadcrumb a:hover,
.breadcrumb a:focus {
    color: #B62D3F;
}

/*=======================================
FOOTER
=======================================*/
.footer-upper {
    background: #1D2527;
    text-align: center;
}

.footer-upper .underlinks li {
    display: block;
}

@media (min-width: 768px) {
    .footer-upper .underlinks li {
        display: inline-block;
    }
}

.footer-upper .underlinks li a {
    display: block;
    padding: 17px 15px;
    font-weight: 500;
    color: #FFF;
    transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
    -o-transition: background 0.3s;
    position: relative;
}
.footer-upper .underlinks li a::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 2px;
    width: 0%;
    background-color: #19B3AB;
    transition: all 0.3s ease;
}

.footer-upper .underlinks li a:hover,
.footer-upper .underlinks li a.selected {
    color: #19B3AB;
}
.footer-upper .underlinks li a:hover::before,
.footer-upper .underlinks li a.selected::before {
    width: 100%;
}

.footer-lower {
    padding: 30px 0 0 0;
    background: #2E3638;
}

.footer-lower .footer-logo {
    display: inline-block;
    margin: 20px 35px 20px 0;
    vertical-align: middle;
    max-height: 100px;
}

.footer-lower .footer-spindogs {
    color: #FFF;
    text-align: right;
    margin: 0;
    padding: 10px 0;
    line-height: 85px;
}

.footer-lower .footer-spindogs a {
    color: #FFF;
    font-weight: 700;
}

.footer-lower .footer-spindogs a:hover {
    text-decoration: underline;
}

.footer-lower hr {
    margin: 0 0 20px 0;
    border-top-color: #008043;
}

.footer-lower .footer-calls {
    color: #FFF;
}

.footer-lower .underlinks {
    text-align: right;
}

.footer-lower .underlinks li {
    display: inline-block;
    text-align: center;
}

.footer-lower .underlinks li a {
    display: block;
    padding: 0 8px;
    font-size: 0.9em;
    color: #FFF;
}

.footer-lower .underlinks li a:hover {
    text-decoration: underline;
}

@media (max-width:1199px) {
    .footer-upper .underlinks li a {
        padding: 10px 12px;
    }
}

@media (max-width:767px) {
    .footer-lower, .footer-lower .footer-spindogs {
        text-align: center;
    }

    .footer-lower .footer-spindogs {
        display: block;
        padding: 30px 0;
        line-height: 1.3em;
    }
}

/*=======================================
MODAL
=======================================*/
.modal-dialog {
    margin: 135px auto 30px auto;
    z-index: 9999;
}

.modal-content {
    border-radius: 0;
}

.modal-header {
    padding: 15px 25px;
    background: #F64E5D;
}

.modal-title {
    color: #FFF;
    font-size: 1.2em;
    font-weight: 500;
    line-height: 1.4;
    padding-right: 40px;
}

.modal-body {
    padding: 50px 60px;
}

.modal-footer {
    border: none;
}

.modal .close {
    position: absolute;
    top: 10px;
    right: 12px;
    color: #fff;
    opacity: 1;
    float: none;
    font-weight: 500;
    font-size: 25px;
}

#myModal .modal-body {
    text-align: center;
    padding: 20px 20px 0;
}

#myModal .modal-footer a {
    width: 100%;
}

.modal-content .field_wrap {
    margin: 0 0 25px 0;
}

.modal-content .label_wrap {
    display: block;
    vertical-align: middle;
}

.modal-content .input_wrap {
    display: block;
    vertical-align: middle;
}

.modal-content .submit_wrap {
    margin: 10px 0 30px 0;
    text-align: center;
}

.modal-content button {
    display: inline-block;
    font-size: 1.2em;
    font-weight: 400;
}

.modal-register {
    margin: 8px 0 0 0;
    text-align: center;
}

.modal-register a {
    font-weight: 500;
    text-decoration: underline;
    color: #1ab3aa;
}

#loginModal input {
    background: #eee;
    border: none;
    height: 50px;
    border-radius: 0;
}

.custom-modal-wrap {
    display: none;
    position: fixed;
    z-index: 200;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.8);
}

.custom-modal {
    background: #FFF;
    width: 200px;
    height: 200px;
    margin: 50px auto;
}

.disurption-modal {
    background: #FFF;
    width: 400px;
    height: 400px;
    margin: 50px auto;
}

.custom-modal-wrap.showModal {
    display: block;
}

@media (max-width:991px) {
    .modal-register {
        margin: 12px 0 0 0;
    }

    .modal-dialog {
        margin: 60px auto 30px auto;
    }
}

@media (max-width:767px) {
    .modal-dialog {
        margin: 30px auto;
    }

    .modal-content .label_wrap {
        display: block;
        width: 100%;
    }

    .modal-content .input_wrap {
        display: block;
        width: 100%;
    }
}

body.modal-open {
    overflow: visible;
}

/* Login Modal */
.login-modal .modal-body {
    padding: 35px 60px 50px 60px;
}

.login-modal .modal-text {
    padding-bottom: 25px;
    margin-bottom: 25px;
    border-bottom: 1px solid #ccc;
}

/* Survey Modal */
#myModal {
    width: 100%;
}

#myModal .modal-dialog {
    width: 90%;
    background: #e0334d;
}

#myModal .modal-body.survey {
    width: 100%;
    padding: 0;
    margin: 0 0px;
    text-align: left;
}

.modal-body.survey {
    width: 100%;
    background: rgba(224, 51, 77, 0.8);
}

.survey-close {
    position: absolute;
    top: -25px;
    left: -50px;
    display: block;
    padding: 16px 23px;
    font-weight: bold;
    z-index: 9;
    font-size: 20px;
    color: #000;
    width: 60px;
    height: 60px;
    background: #f8cd5f;
}

.survey-left {
    background: #eeeeee;
    min-height: 429px;
    height: auto !important;
    color: #fff;
    padding: 56px 63px 56px 58px;
}

.survey-left p {
    color: #3d3d3d;
    font-size: 17px;
    margin-bottom: 20px;
}

.survey-left h2 {
    font-size: 30px;
    color: #3d3d3d;
    font-family: 'gordita';
    font-weight: 700;
}

.survey-right {
    min-height: 429px;
    height: auto !important;
    color: #fff;
}

.survey-right hr {
    border-color: #026130;
}

.row-image {
    background: url('/images/survey-right.png') #d6424e no-repeat right bottom;
    position: relative;
}

.lower-image {
    background: url(/images/busstop-middle-bg.png) no-repeat right bottom;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0px;
    right: -40px;
    z-index: 10000;
}

.survey-button {
    background: #42b1aa;
    color: #fff;
    border: 0px;
    float: left;
    clear: both;
    display: block;
    padding: 16px 25px 15px 30px;
    border-radius: 0;
    font-size: 20px;
    font-family: 'gordita';
    font-weight: 700;
}

.survey-button span {
    display: none;
}

.survey-button:hover {
    background: #42B1D3;
    color: #fff;
}

.right-wrap {
    padding: 22px;
}

@media (min-width:1790px) and (max-width:2004px) {
    #myModal .modal-dialog {
        width: 46%;
    }
}

@media (min-width:1416px) and (max-width:1789px) {
    #myModal .modal-dialog {
        width: 55%;
    }
}

@media (min-width:901px) and (max-width:1415px) {
    #myModal .modal-dialog {
        width: 75%;
    }
}

@media (min-width:760px) and (max-width:900px) {
    #myModal .modal-dialog {
        width: 95%;
    }

    .survey-left {
        min-height: 340px;
    }
}

@media (min-width:90px) and (max-width:759px) {
    #myModal .modal-dialog {
        width: 100%;
    }

    .survey-left {
        min-height: 600px;
        height: auto !important;
        padding-bottom: 115px;
    }

    .survey-right {
        display: none;
    }

    #myModal .modal-dialog {
        width: 100%;
    }
}

/*=======================================
SOCIALMEDIA
=======================================*/
.socialmedia a:hover {
    opacity: 0.6;
}

.socialmedia i {
    font-size: 32px;
    line-height: 32px;
}

i.socialmedia-facebook:before {
    content: "\e60c";
}

i.socialmedia-twitter:before {
    content: "\e60b";
}

i.socialmedia-googleplus:before {
    content: "\e60d";
}

i.socialmedia-linkedin:before {
    content: "\e60f";
}

i.socialmedia-youtube:before {
    content: "\e625";
}

i.socialmedia-flickr:before {
    content: "\e609";
}

i.socialmedia-vimeo:before {
    content: "\e60a";
}

i.socialmedia-pinterest:before {
    content: "\e60e";
}

i.socialmedia-instagram:before {
    content: "\e618";
}

i.socialmedia-tumblr:before {
    content: "\e624";
}

i.socialmedia-email:before {
    content: "\40";
}

i.socialmedia-facebook.circular:before {
    content: "\e605";
}

i.socialmedia-twitter.circular:before {
    content: "\e604";
}

i.socialmedia-googleplus.circular:before {
    content: "\e606";
}

i.socialmedia-linkedin.circular:before {
    content: "\e601";
}

i.socialmedia-youtube.circular:before {
    content: "\e602";
}

i.socialmedia-flickr.circular:before {
    content: "\e607";
}

i.socialmedia-vimeo.circular:before {
    content: "\e608";
}

i.socialmedia-pinterest.circular:before {
    content: "\e603";
}

i.socialmedia-instagram.circular:before {
    content: "\e618";
}

i.socialmedia-tumblr.circular:before {
    content: "\e619";
}

i.socialmedia-email.circular:before {
    content: "\e600";
}

i.socialmedia-facebook.branded {
    color: #3B5998;
}

i.socialmedia-twitter.branded {
    color: #00B0ED;
}

i.socialmedia-googleplus.branded {
    color: #DF4A32;
}

i.socialmedia-linkedin.branded {
    color: #0977B5;
}

i.socialmedia-youtube.branded {
    color: #CC181E;
}

i.socialmedia-flickr.branded {}

i.socialmedia-vimeo.branded {
    color: #1AB7EA;
}

i.socialmedia-pinterest.branded {
    color: #CE2029;
}

i.socialmedia-instagram.branded {}

i.socialmedia-tumblr.branded {
    color: #34465D;
}

i.socialmedia-email.branded {}

/*=======================================
ROW HORIZONTAL
=======================================*/
.row-horizontal {
    white-space: nowrap;
}

.row-horizontal div[class^="col-"] {
    float: none;
    display: inline-block;
    vertical-align: middle;
    white-space: normal;
}

.row-horizontal div[class^="col-"]+div[class^="col-"] {
    margin-left: -3px;
}

/*=======================================
HOME BANNER
=======================================*/
.home-banner {
    position: relative;
    min-height: 578px;
    background: #e0334d url('/images/home-banner.png') center bottom no-repeat;
    /*background: #e0334d url('/images/banner_landscape_red.png') center bottom no-repeat;*/
    /* background: #e0334d url('/images/home-banner-xmas.png') center bottom no-repeat; */
    /*background: #e0334d url('/images/banner_landscape_red.png') center bottom no-repeat; */
    background-size: contain;
}

.home-banner-title {
    padding: 110px 110px 35px 110px;
    font-weight: 700;
    color: #FFF;
    line-height: 1.3em;
}

@media (max-width:1199px) {
    .home-banner-title {
        padding: 110px 85px 35px 85px;
    }
}

@media (max-width:991px) {
    .home-banner-title {
        padding: 110px 50px 35px 50px;
    }
}

@media (max-width:767px) {
    .home-banner {
        padding: 20px 0 0 0;
    }

    .home-banner-title {
        padding: 45px 5px;
        text-align: center;
    }
}

/*=======================================
DISRUPTIONS
=======================================*/
.disruptions {
    background: #2E3638;
    padding-bottom: 20px;
}

.disruptions-bar {
    min-height: 40px;
    text-align: right;
    background: #2E3638;
}

.disruptions-options {
    margin: 0;
    padding: 0;
}

.disruptions-options li {
    display: inline-block;
    vertical-align: top;
    margin: 0;
    padding: 25px 0;
}

.disruptions-options li:first-child {
    border: none;
}

.disruptions-all, .disruptions-edit {
    display: inline-block;
    margin: -5px 0;
    padding: 5px 15px;
    vertical-align: middle;
    color: #FFF;
    line-height: 30px;
    transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
    -o-transition: background 0.3s;
}

.disruptions-all:hover, .disruptions-edit:hover, .disruptions-all:focus, .disruptions-edit:focus {
    color: #FFF;
}

.disruptions-all:hover, .disruptions-edit:hover {
    background: #D25D6F;
}

.disruptions-edit i {
    margin: 0 0 0 5px;
    color: #fff;
}

.disruptions-edit:hover i {
    -webkit-animation: spin 4s linear infinite;
    -moz-animation: spin 4s linear infinite;
    animation: spin 4s linear infinite;
}

.disruptions-sign {
    margin-top: 17px;
    text-align: center;
}

.disruptions-sign img {
    max-width: 100px;
}

@media (min-width:768px) {
    .disruptions-sign img {
        max-width: 100%;
    }
}

@media (min-width:1200px) {
    .disruptions-sign {
        margin-top: -17px;
    }
}

.slideshow-wrap {
    padding: 45px 0 25px 0;
}

.slideshow-item {
    display: block;
    width: 100%;
    min-height: 100px;
    color: #FFF;
}

.slideshow-item:hover, .slideshow-item:focus {
    color: #FFF;
}

.slideshow-item .slideshow-warning {
    color: #F99D16;
    font-size: 20px;
}

.slideshow-item .slideshow-title {
    margin: 0 0 5px 0;
    font-size: 1.2em;
}

.slideshow-item .slideshow-date {
    margin: 0 0 5px 0;
    font-size: 1.1em;
}

.slideshow-item .slideshow-body {
    margin: 0;
    font-weight: 300;
}

.slideshow-item .slideshow-more {
    margin: 8px 0 0 0;
    font-weight: 500;
}

.slideshow-prev, .slideshow-next {
    display: inline-block;
    width: 40px;
    height: 40px;
    margin: 10px 0 0 0;
    padding: 10px 0;
    vertical-align: middle;
    background: #1EBDAE;
    color: #FFF;
    text-align: center;
    transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
    -o-transition: background 0.3s;
}

.slideshow-prev i, .slideshow-next i {
    font-size: 26px;
}

.slideshow-next {
    margin-top: 38px;
}

.slideshow-prev:hover, .slideshow-next:hover, .slideshow-prev:focus, .slideshow-next:focus {
    color: #FFF;
}

.slideshow-prev:hover, .slideshow-next:hover {
    background: #64D8CD;
}

@media (max-width:767px) {
    .slideshow-item .slideshow-warning {
        display: block;
        margin: 0 0 10px 0;
        line-height: 1em;
        text-align: center;
    }

    .slideshow-prev, .slideshow-next {
        margin: 10px 0;
    }

    .disruptions-all, .disruptions-edit {
        display: block;
        border: none;
    }

    .disruption-list-title {
        display: block;
        margin-bottom: 5px;
        font-weight: 700;
    }

    .disruptions-options li {
        display: block;
        border: none;
        text-align: center;
    }
}

/*=======================================
BUTTON DEPRECATED
=======================================*/
.button-deprecated {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto 20px auto;
    background: #f99d16;
    border: 0;
    border-radius: 3px;
    color: #333;
    text-align: center;
    font-size: 1.2em;
    font-weight: 700;
    -webkit-box-shadow: 0 4px 0 0 #d68206;
    box-shadow: 0 4px 0 0 #d68206;
}

.button-deprecated:hover {
    background: #F99D16;
    top: 2px;
    color: #333;
    -webkit-box-shadow: 0 2px 0 0 #d68206;
    box-shadow: 0 2px 0 0 #d68206;
}

.button-deprecated:active {
    top: 4px;
    -webkit-box-shadow: 0 0 0 0 #d68206;
    box-shadow: 0 0 0 0 #d68206;
}

.button-deprecated i {
    margin: 0 5px 0 0;
}

/*=======================================
JOURNEY PLANNER TABS
=======================================*/
.home-banner .tab-pane {
    position: relative;
    z-index: 200;
    margin: 0 0 30px 0;
    padding: 20px 35px 20px 20px;
    background: #E3E3E3;
    border-radius: 0 2px 2px 2px;
}

.home-banner .tab-pane .submit_wrap {
    width: 100%;
}

.home-banner .tab-pane .checkboxes label {
    width: 49%;
}

.label_show .label_wrap {
    display: block !important;
    font-size: 0.85em;
}

.home-banner .tab-pane .button {
    display: block;
    width: 100%;
    font-size: 1.2em;
    color: #2E3638;
    font-weight: 700;
    position: relative;
    padding: 0px 28px;
    background-color: transparent;
}

.home-banner .tab-pane .button span {
  font-weight: 700;
  color: #2E3638;
  position: relative;
  z-index: 2;
}
.home-banner .tab-pane .button:hover::after {
  width: 100%;
}

.home-banner .tab-pane .button::before {
  content: '';
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1EBDAE;
}
.home-banner .tab-pane .button::after {
  content: '';
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #64D8CD;
  transition: all 0.3s ease;
}

@media (min-width:768px) {
    .home-banner .tabbar {
        margin: 22px 0 0 0;
        overflow: hidden;
    }

    .home-banner .tabbar ul li {
        display: inline;
        width: 100%;
    }

    .home-banner .tabbar ul li:first-child a {
        border-left: none;
    }

    .home-banner .tabbar ul li a {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        float: left;
        padding: 0;
        width: 100%;
        font-weight: 500;
        font-size: 8px;
        height: 65px;
        line-height: 46px;
        border-left: 1px solid #979797;
        background: #2E3638;
        color: #fff;
        transition: background 0.3s;
        -moz-transition: background 0.3s;
        -webkit-transition: background 0.3s;
        -o-transition: background 0.3s;
    }

    .home-banner .tabbar ul li a span {
      line-height: normal;
      font-size: 10px;
    }

    .home-banner .tabbar ul li a svg {
      fill:#fff;
      color: #fff;
      height: 30px;
    }

    .home-banner .tabbar ul li a:hover {
        background: #3E4648;
        color: #fff;
    }
    .home-banner .tabbar ul li a:hover svg {
        fill:#fff!important;
    }

    .home-banner .tabbar ul li.selected a {
        background: #E3E3E3;
        color: #2E3638;
    }
    .home-banner .tabbar ul li.selected a svg {
        fill:#2E3638!important;
    }
}

@media (min-width:992px) {
    .home-banner .tabbar ul li a {
        padding: 0;
    }

    .welsh .home-banner .tabbar ul li a {
        padding: 0 8px;
    }
}

@media (min-width:1200px) {
    .home-banner .tabbar ul li a {
        padding: 0;
    }

    .welsh .home-banner .tabbar ul li a {
        padding: 0 13px;
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .home-banner .tabbar ul li a {
        font-size: 0.9em;
    }
}

@media (max-width:991px) {
    .home-banner .tab-pane {
        margin: 0 0 20px 0;
    }
}

@media (min-width:768px) and (max-width:991px) {
    .home-banner .tabbar ul li a {
        padding: 0 15px;
    }

    .welsh .home-banner .tabbar ul li a {
        padding: 0 12px;
    }
}

@media (max-width: 767px) {
    .home-banner .tabbar .menu-toggle {
        border-radius: 5px 5px 0 0;
    }

    .home-banner .tab-pane {
        border-radius: 0 0 5px 5px;
    }

    .home-banner .menu-respond a {
        background: #B2B2B2;
        color: #333;
    }

    .home-banner .menu-respond ul li.selected>a {
        background: #E3E3E3;
    }
}

/*=======================================
FEATUREBOXES
=======================================*/
.featureboxes {
    background: #EEE;
    padding: 50px 0;
}

.featurebox {
    overflow: hidden;
    position: relative;
    display: block;
    background: #FFF;
    color: #333;
    cursor: pointer;
}
@media(min-width:768px){
  .featurebox-image img {
    width: 100%;
  }
}
@media(min-width:992px){
  .featurebox {
    display:flex;
  }
  .featurebox-image {
    width:40%;
  }
  .featurebox-image img {
    height: 100%;
    width: 100%;
    object-fit: contain;
  }
  .featurebox-content {
    width:60%;
  }
}

.featurebox.left {
    margin: 0 -20px 30px 0;
}

.featurebox.middle {
    margin: 0 -10px 30px -10px;
}

.featurebox.right {
    margin: 15px 0 0 -20px;
    background: #FFF;
}

.featurebox.bottom {
    margin: 30px 0 15px -20px;
}

.featurebox.top {
    margin-top: 63px;
}

.featurebox-header {
    color: #e0334d;
    margin-bottom: 15px;
    font-size: 2.29em;
    font-weight: 600;
}

.featurebox-title {
    font-size: 1.1em;
    font-weight: 500;
    line-height: normal;
    color: #2E3638;
}

.featurebox.right .featurebox-title {
    color: #2E3638;
}

.featurebox-image {
    overflow: hidden;
    display: block;
    position: relative;
}

.featurebox-image-overlay {
    display: none;
}

/* .featurebox-image:hover .featurebox-image-overlay {
    display: block;
    position: absolute;
    color: #fff;
    text-align: center;
    top: 40%;
    width: 100%;
} */

/* .featurebox-image:hover::before {
    position: absolute;
    content: "";
    background: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
} */

.featurebox-body {
    padding: 20px;
}

.featurebox-links {
    border-top: 1px solid #C0C0C0;
    margin: 0 20px;
}

.featurebox-more {
    color: #e0334d;
    font-weight: 600;
    font-size: 1em;
}

.__blog {
    margin-top: 20px;
}

@media (min-width:992px) and (max-width:1199px) {
    .featurebox {
        min-height: 116px;
    }

    .featurebox-body {
        padding: 10px;
    }

    .featurebox-title {
        font-size: 1.1em;
    }

    .featurebox-summary {
        font-size: 0.8em;
    }
}

@media (min-width:768px) and (max-width:991px) {
    .featurebox {
        min-height: 110px;
    }

    .featurebox-body {
        padding: 10px;
    }

    .featurebox-title {
        font-size: 1em;
    }

    .featurebox-summary {
        font-size: 0.8em;
    }
}

@media (max-width:767px) {
    .featureboxes {
        padding: 30px 0 50px 0;
    }

    .featurebox {
        margin: 0 0 15px 0 !important;
        border: none !important;
    }

    .featurebox img {
        display: block;
        margin: 0 auto;
        width:100%;
    }
}

.featureboxes .featurebox-content {
    margin-bottom: 30px;
}

.feature.home-link {
    text-align: left;
    display: inline-block;
    font-size: 0.9em;
    border: 0;
    padding: 10px 0;
    line-height: 21px;
    color: #C31D36;
    font-weight: 700;
    position: relative;
}
.feature.home-link::before {
  content: '';
  position: absolute;
  bottom: 8px;
  left: 0;
  width: 0%;
  height: 2px;
  background-color: #C31D36;
  transition: all 0.3s ease;
}

.feature.home-link:hover {
    text-decoration: none;
}

.featurebox:hover .feature.home-link::before {
  width: 100%;
}

@media (max-width:767px) {
    .welsh .feature.home-link {
        padding: 10px 5px;
        font-size: 12px;
    }
}

/*=======================================
HOME LINKS
=======================================*/
.home-link {
    display: block;
    padding: 10px 0;
    font-size: 1.3em;
    font-weight: 600;
    color: #e0334d;
    text-align: center;
}

.home-link i {
    top: 0;
}

.home-link:hover {
    color: #e0334d;
    text-decoration: underline;
}

.home-link.__home {
  position: relative;
  padding: 16px 28px;
  background-color: transparent;
  display: inline-block;
}
@media(min-width:768px){
  .home-link.__home {
    margin-left: -10px;
    margin-top: 0;
  }
}

.home-link.__home:hover {
  text-decoration: none;
}

.home-link.__home span {
  font-weight: 700;
  color: #2E3638;
  position: relative;
  z-index: 2;
}
.home-link.__home:hover::after {
  width: 100%;
}

.home-link.__home::before {
  content: '';
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1EBDAE;
}
.home-link.__home::after {
  content: '';
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #64D8CD;
  transition: all 0.3s ease;
}




/*=======================================
APP BANNER
=======================================*/
.app-banner {
    background: #e0334d;
}

.app-banner-call {
    margin-top: 10px;
}

.app-banner-title {
    position: relative;
    margin: 0;
    padding: 45px 40px;
    color: #FFF;
    font-size: 1.3em;
    font-weight: 400;
}

.app-banner-title .big {
    display: block;
    margin: 4px 0;
    font-size: 1.4em;
    font-weight: 600;
}

.app-banner-download-bar {
    margin: 0 -90px 0 -15px;
    padding: 20px 30px;
    min-height: 99px;
    background: #A02635;
}

.welsh .app-banner-download-bar {
    padding: 26px 30px;
}

.app-banner-download {
    margin: 0 -90px 0 -15px;
    padding: 0 30px;
    background: #B42F44;
    color: #FFF;
}

.app-banner-download-title {
    display: inline-block;
    font-size: 18px;
    vertical-align: middle;
    padding: 28px 0;
    margin: 0 45px 0 45px;
    color: #FFF;
}

.welsh .app-banner-download-title {
    margin: 0 45px 0 0;
}

.app-banner-download-logo {
    display: inline-block;
    position: relative;
    vertical-align: middle;
    margin: 0 10px;
    z-index: 9999999;
}

.iphone-wrap {
    position: absolute;
    bottom: 0;
    right: -165px;
    min-height: 197px;
}

@media (min-width:768px) {
    .welsh .app-banner-title {
        padding: 40px 0;
    }
}

@media (max-width:1199px) {
    .app-banner-title {
        padding: 16px 0;
    }

    .app-banner-download-title {
        margin: 0 30px 0 0;
    }

    .welsh .app-banner-download-title {
        margin: 0 50px 0 0;
    }
}

@media (max-width:991px) {
    .app-banner-title {
        text-align: center;
    }

    .app-banner-download,
    .app-banner-download-bar {
        margin: 0;
        text-align: center;
    }

    .app-banner-download-logo {
        margin: 0 10px;
    }

    .app-banner-call {
        display: block;
        margin: 0 auto;
    }

    .iphone-wrap {
        display: none;
    }
}

@media (max-width:767px) {
    .app-banner-download-logo {
        margin: 20px 10px;
    }
}

/*=======================================
HOME TWITTER
=======================================*/
.home-twitter {
    padding: 30px 0;
    background: #EEE;
}

.twitter-title {
    color: #e0334d;
    font-size: 1.4em;
}

.twitter-title i {
    font-size: 30px;
}

.tweets {
    margin: 15px 0 0 0;
}

.tweets-image {
    display: none;
}

.tweets-tweet {
    margin: 0 0 20px 0;
    padding: 15px;
    background: #FFF;
}

.tweets-tweet-title {
    display: block;
    margin: 0 0 5px 0;
    color: #333;
    font-weight: 700;
    font-size: 1.2em;
}

.tweets-tweet-title:hover {
    color: #333;
}

.tweets-tweet-body a {
    color: #2E3638;
    text-decoration: underline;
}

.tweets-tweet-body a:hover {
    text-decoration: underline;
    color: #C31D36;
}
.tweets-tweet-body {
  color: #2E3638;
  font-weight: 500;
}

@media (min-width:767px) {
    .home-twitter {
        padding: 60px 0;
    }

    .tweets-tweet {
        margin: 0 0 30px 0;
        padding: 33px 20px;
    }

    .tweets-image {
        display: block;
    }
}

/*=======================================
SERVICEBOX
=======================================*/
.servicebox-wrap {
    margin: 15px 0 0 0;
}

.servicebox {
    display: flex;
    flex-direction: column;
    margin: 0 0 30px 0;
}

.servicebox:hover .underline,
.servicebox:focus .underline {
  background-size: 100% 10%;
}
.servicebox:hover .servicebox-title,
.servicebox:focus .servicebox-title {
  color: #C31D36;
}

.servicebox img {
  margin-bottom: 8.5px;
}

.servicebox-title {
  font-weight: 500;
  color: #2E3638;
  font-size: 16px;
  line-height: 22px;
  text-align: left;
  position: relative;
}

.servicebox-title:hover,
.servicebox-title:focus {
  color: #C31D36;
}

.servicebox-title:hover .underline,
.servicebox-title:focus .underline {
    background-size: 100% 10%;
}
.underline {
    /* I don't know why this is needed, I just added it and it worked in IE Edge. If we remove this width, the gradient breaks in IE Edge */
    width: calc(100%);
    background-image: linear-gradient(
        transparent calc(100% - 50px),
        #C31D36 0px
    );
    background-repeat: no-repeat;
    background-size: 0% 10%;
    background-position: left bottom;
    transition: background-size 0.5s;
}

/*=======================================
NEWSLETTER SIGNUP
=======================================*/
.newsletter {
    margin: 0 0 -100px 0;
    padding: 50px 0;
    background: #30383b;
}

.newsletter-title {
    margin: 0 0 5px 0;
    font-weight: 500;
    font-size: 1.4em;
    color: #FFF;
    text-align: center;
}

.newsletter-subtitle {
    margin: 0 0 30px 0;
    font-size: 1.1em;
    font-weight: 300;
    color: #FFF;
    text-align: center;
}

.newsletter .field_wrap {
    margin: 0 0 30px 0;
}

.newsletter input, .newsletter select {
    height: 50px;
    border-radius: 0;
}

.newsletter .submit_wrap {
    display: block;
    margin: 0 auto;
    width: 25%;
}

.newsletter button {
    width: 100%;
}

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

.g-recaptcha {
    display: inline-block;
}

@media (min-width:768px) {
    .newsletter .col-sm-6.marginright {
        padding-right: 8px;
    }

    .newsletter .col-sm-6.marginleft {
        padding-left: 8px;
    }

    .newsletter-captcha {
        margin: 0 0 20px 0;
    }
}

@media (max-width:767px) {
    .newsletter .input_wrap {
        display: block;
        float: none;
        width: 100%;
    }

    .newsletter .submit_wrap {
        display: block;
        margin: 10px 0 0 0;
        float: none;
        width: 100%;
    }
}

/*=======================================
PAGE BANNER
=======================================*/
.page-banner {
    min-height: 164px;
    margin: 0 0 40px 0;
    padding: 67px 0;
    background: #e0334d url("/images/home-banner.png") no-repeat scroll center bottom;
}

.page-banner h1 {
    color: #FFF;
    font-size: 2.5em;
    font-weight: 500;
}

.page-banner-link .button {
    display: inline-block;
    padding: 15px 20px;
    line-height: inherit;
    font-size: 14px;
}

.page-banner-link .button:hover,
.page-banner-link .button:focus {
    color: #fff;
}

@media (min-width: 992px) {
    .page-banner-link .button {
        font-size: 18px;
    }
}

/*=======================================
NEWS LIST
=======================================*/
.news-item {
    display: block;
    margin: 0 0 30px 0;
    padding: 0 0 30px 0;
    color: #2E3638;
    border-bottom: 1px solid #C0C0C0;
}

.news-item-title {
    margin: 0 0 5px 0;
    font-size: 1.3em;
    color: #2E3638;
    line-height: 1.3em;
    font-weight: 500;
}

.news-item-date {
    display: block;
    margin: 0 0 5px 0;
    color: #2E3638;
    font-size: 0.8em;
    text-transform: uppercase;
    font-weight: 500;
}

.news-item-body {
    border-bottom: 3px solid #FFF;
    transition: border-bottom 0.3s;
    -moz-transition: border-bottom 0.3s;
    -webkit-transition: border-bottom 0.3s;
    -o-transition: border-bottom 0.3s;
}

.news-item-summary {
  font-weight: 400;
  color: #2E3638;
  font-size: 1em;
  line-height: 24px;
}

.news-item-more {
    margin-top: 15px;
    color: #C31D36;
    font-size: 1em;
    font-weight: 700;
    position: relative;
    display: inline-block;
}

.news-item-more::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 2px;
  background-color: #C31D36;
  transition: all 0.3s ease;
}
.news-item-more::after {
  content: '\3e';
  font-family: icomoon;
  position: absolute;
  top: 1px;
  right: -20px;
  font-size: 15px;
  color: #C31D36;
  transition: all 0.3s ease;
}

.news-item:hover {
    color: #333;
}
.news-item:hover .news-item-more::before {
    width: 100%;
}

@media (max-width:767px) {
    .news-item img {
        display: block;
        margin: 0 auto 15px auto;
    }
}

/*=======================================
NEWS DETAIL
=======================================*/
.news-header {
    margin: -85px 0 20px 0;
}

.news-header.__nomargin {
    margin: 0 0 20px 0;
}

.news-header img {
    margin: 0 0 20px 0;
}

.news-header-text {
    border-bottom: 1px solid #CCC;
}

.news-header-title {
    margin: 0 0 7px 0;
    line-height: 1.3em;
}

.news-header-date {
    display: block;
    margin: 0 0 20px 0;
    color: #999;
    font-weight: 700;
    text-transform: uppercase;
}

@media (max-width:767px) {
    .news-header {
        margin-top: 0;
    }
}

/*=======================================
EVENT LIST
=======================================*/
.featured-event {
    display: block;
    color: #333;
    border: 1px solid #CCC;
}

.featured-event img {
    margin: 0 0 10px 0;
}

.featured-event-body {
    padding: 15px 15px 0 15px;
    border-bottom: 3px solid #FFF;
}

.featured-event-title {
    margin: 0 0 7px 0;
    font-size: 1.4em;
    line-height: 1.3em;
}

.featured-event-date {
    display: block;
    margin: 0 0 10px 0;
    color: #999;
    font-weight: 700;
    text-transform: uppercase;
}

.featured-event-more {
    margin-top: 15px;
    color: #FFF;
    text-transform: uppercase;
    font-weight: 700;
}

.featured-event.left {
    margin: 0 -15px 20px 0;
}

.featured-event.right {
    margin: 0 0 20px -15px;
    border-left: none;
}

.featured-event:hover {
    color: #333;
}

.featured-event:hover .featured-event-more {
    color: #F99D16;
}

.featured-event:hover .featured-event-body {
    border-bottom: 3px solid #F99D16;
}

@media (max-width:991px) {
    .featured-event {
        margin: 0 0 20px 0 !important;
        border: none !important;
    }

    .featured-event.left {
        border-bottom: 1px solid #CCC !important;
        padding-bottom: 20px;
    }
}

/*=======================================
ARCHIVE LIST
=======================================*/
.archive-list {
    margin: 0 0 30px 0;
}

.archive-title {
    min-height: 60px;
    padding: 22px 30px;
    margin: 0;
    font-size: 28px;
    font-weight: 600;
}

.archive-item {
    display: block;
    min-height: 60px;
    padding: 22px 30px;
    color: #333 !important;
    border-bottom: 1px solid #CCC;
}

.archive-item:hover {
    background: #FBE5E8;
    color: #333;
}

.archive-item i {
    font-size: 25px;
}

@media (max-width:767px) {
    .usercontent .archive-item {
        text-decoration: none;
    }
}

/*=======================================
DISRUPTIONS LIST
=======================================*/
.filters-title {
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    font-size: 1.4em;
    border-bottom: 1px solid #CCC;
}

.disruptions-form {
    margin: 0 0 40px 0;
}

.disruptions-form .col-lg-3 input {
    margin: 26px 0 0 0;
}

.disruptions-form .picker__input {
    width: 100% !important;
}

.disruptions-form button {
    display: block;
    width: 100%;
    padding: 0 5px;
    height: 38px;
    line-height: 38px;
}

.disruptions-form .submit_wrap {
    margin: 26px 0 0 0;
}

.disruptions-back {
    display: inline-block;
    margin: 0 0 20px 0;
    padding: 15px 40px;
    text-decoration: none !important;
    font-weight: 400;
    background: #1ab3aa;
    color: #FFF;
    text-align: center;
}

.disruptions-back:hover,
.disruptions-back:focus {
    color: #FFF;
    background: rgba(26, 179, 170, 0.8);
}

.disruptions-back.__app {
    margin: 20px 20px -20px;
}

@media (max-width:991px) {
    .disruptions-form .submit_wrap {
        text-align: right;
    }

    .disruptions-form button {
        display: inline-block;
        width: auto;
        padding: 0 18px;
    }
}

/*=======================================
BUSINESS LIST
=======================================*/
.business-item {
    display: block;
    border-bottom: 1px solid #DEDEDE;
    color: #333;
}

.business-item-title {
    font-weight: 500;
    font-size: 22px;
}

.business-item-body {
    padding: 30px 20px;
    font-size: 16px;
}

.business-item-more {
    color: #e0334d;
    font-size: 16px;
    transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
    -o-transition: background 0.3s;
}

.business-item-subtitle {
    display: inline-block;
    vertical-align: top;
    padding: 0 20px 30px;
    font-weight: 500;
}

.business-item:hover {
    color: #333;
}

.business-item:hover .business-item-more {
    color: #1ab3aa;
}

.business-item:hover .business-item-subtitle::after {
    content: "\3e";
    font-family: icomoon;
    line-height: 15px;
    font-size: 11px;
}

/*=======================================
JOURNEY PLANNER FORM
=======================================*/
.journey-planner-form .input_wrap.dateselect {
    margin-right: -15px;
}

.journey-planner-form .input_wrap.dateselect select {
    width: 47%;
    padding: 5px 5px;
}

.journey-planner-form .picker__input {
    width: 100% !important;
    background-color: #FFF !important;
}

.journey-planner-form .locationwrapper {

}

@media(min-width:992px){
  .journey-planner-form .locationwrapper {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 30px;
  }
  .journey-planner-form .locationwrapper .location-wrap {
    width: 50%;
  }
  .journey-planner-form .locationwrapper .location-switch {
    position: absolute;
    bottom: -28px;
    width: 300px;
    left: 0;
  }
}

.journey-planner-form .location-wrap {
    position: relative;
}

.journey-planner-form .location-link {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9;
    color: #e0334d;
    text-decoration: underline;
    font-weight: bold;
}

.journey-planner-form .location-wrap i {
    position: absolute;
    top: 0;
    right: -33px;
    width: 30px;
    line-height: 37px;
    z-index: 99;
    color: #2E3638;
    text-align: center;
}

.journey-planner-form .location-enquire {
    display: block;
    margin: -4px -35px 15px -20px;
    padding: 10px 50px 10px 23px;
    font-size: 0.85em;
    border-bottom: 1px solid #bebebe;
    position: relative;
}

.journey-planner-form .location-enquire a {
    font-weight: 700;
    color: #C31D36;
    position: relative;
}
.journey-planner-form .location-enquire a:hover::before {
  width: 100%;
}
.journey-planner-form .location-enquire a::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 2px;
    background-color: #C31D36;
    transition: all 0.3s ease;
}

.journey-planner-form .location-enquire i {
    display: none;
}

@media(min-width:992px) {
    .journey-planner-form .location-enquire i {
        display: block;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 10px;
        color: #2E3638;
    }
}

.journey-planner-form .location-switch {
    background-image: url('/images/icons/traveline_arrows_small_grey.png');
    background-repeat: no-repeat;
    background-size: contain;
    padding-left: 27px;
    color: #2E3638;
    font-size: 1em;
    font-weight: 500;
    line-height: normal;
    transition: all 0.3s ease;
}

.journey-planner-form .location-switch:hover,
.journey-planner-form .location-switch:focus, {
  color: #C31D36;
}

.journey-planner-sidebar-update .journey-planner-form .location-switch {
    background-image: url('/images/icons/traveline_arrows_small.png');
}

.journey-planner-form .journey-advanced {
    display: block;
    margin: 5px -20px 10px -20px;
    padding: 10px 20px;
    max-width: none;
    border-top: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    text-align: center;
}

.journey-planner-form .journey-advanced:hover {
    background: #d6d6d6;
    cursor: pointer;
}

.journey-planner-form .journey-advanced input {
    position: absolute;
    top: -9999px;
}

.journey-planner-sidebar-update .visible-advanced .label_wrap {
    display: block !important;
}

.journey-planner-sidebar-update .journey-advanced {
    margin: 0 -15px 20px -15px;
    border-top: 1px solid #1ab3aa;
    border-bottom: 1px solid #1ab3aa;
    color: #FFF;
}

.journey-planner-sidebar-update .journey-advanced:hover {
    background: #e0334d;
}

.journey-planner-sidebar-update .button {
    width: 100%;
    padding-top: 0;
}

@media (max-width:767px) {
    .journey-planner-form .location-wrap i {
        display: none;
    }
}

/*=======================================
JOURNEY PLANNER TOP BAR
=======================================*/
.journey-planner-bar {
    min-height: 50px;
    background: #DEDEDE;
    margin-bottom: 35px;
}

.journey-planner-bar .field_wrap {
    margin: 0;
    padding: 12px 0 0 0;
    height: 47px;
    overflow: hidden;
    border-left: 1px solid #c2c2c2;
    text-align: center;
}

.journey-planner-bar .field_wrap.__alt {
    background: #e5e5e5;
}

.journey-planner-bar .input_wrap.radiobuttons>label {
    float: none;
    margin: 0;
}

.journey-planner-bar .submit_wrap {
    margin: -3px 0 0 8px;
}

.journey-planner-bar .submit_wrap button,
.journey-planner-bar .submit_wrap button:focus {
    padding: 0;
    width: 100%;
    line-height: 30px;
    font-size: 1em;
}

.journey-planner-bar label {
    margin: 0;
}

@media (max-width:767px) {
    .journey-planner-bar {
        display: none;
    }
}

/*=======================================
JOURNEY PLANNER BLOCK
=======================================*/
.journey-planner-block {
    margin: 20px 0 40px 53px;
    min-height: 78px;
    background: #DEDEDE;
    border-bottom: 1px solid #CCC;
}

.journey-planner-block h4 {
    padding: 17px 10px;
    margin: 0;
    line-height: 1.3em;
    font-size: 1em;
    font-weight: 700;
    text-align: center;
}

.journey-planner-block .journey-planner-bar-toggle {
    display: block;
    min-height: 77px;
    padding: 10px 10px;
    line-height: 1.3em;
    color: #333;
    text-align: center;
}

.journey-planner-block .journey-planner-bar-toggle img {
    display: block;
    margin: 0 auto;
}

.journey-modes {
    display: none;
}

.journey-modes.selected {
    display: block;
}

.journey-planner-block .journey-planner-block-favourites {
    border-left: 1px solid #ccc;
    display: block;
    min-height: 77px;
    padding: 18px 7px;
    line-height: 1.3em;
    color: #333;
    font-weight: 700;
    text-align: center;
}

.journey-planner-block .journey-planner-block-favourites i {
    color: #F99D16;
    font-size: 20px;
}

.journey-planner-block .journey-planner-block-favourites:hover {
    background: #CCC;
}

.journey-planner-block .journey-planner-block-favourites div {
    margin-bottom: 5px;
}

.journey-planner-block .col-sm-2 .journey-planner-block-favourites {
    border: none;
}

@media (max-width:1199px) {
    .journey-planner-block h4, .journey-planner-block .journey-planner-block-favourites {
        padding: 17px 10px;
    }
}

@media (max-width:991px) {
    .journey-planner-block .journey-planner-block-favourites {
        padding: 17px 14px;
    }
}

@media (max-width:767px) {
    .journey-planner-block {
        display: none;
    }

    .journey-planner-block h4 {
        min-height: 39px;
        padding: 10px;
    }

    .journey-planner-block .journey-planner-block-favourites, .journey-planner-block .journey-planner-block-toggle {
        min-height: 39px;
        padding: 10px;
    }
}

/*=======================================
JOURNEY PLANNER SIDEBAR CHOICES
=======================================*/
.journey-planner-sidebar-choices {
    margin: -50px 0 0 0;
    padding: 0;
    background: #fff;
}

.edit-journey {
    /* margin: 0 15px 20px; */
    font-size: 1.1em;
    color: #fff;
    background-color: #e0334d;
    font-weight: bold;
    text-align: left;
}
.edit-journey i {
  font-size: 15px;
}
.edit-journey.__update {
  margin: 0;
  background-color: #CE233D;
  padding: 0px 15px;
  text-align: left;
  color: #fff;
  font-weight: normal;
  transition: all 0.3s ease;
  font-size: 1.1em;
}
.edit-journey.__update:hover {
  background-color: #ad1c32;
}
.edit-journey:hover {
  background-color: #ad1c32;
}

.edit-journey:hover {
    color: #fff;
    font-size: 1.1em;
}

.new-journey {
    display: block;
    margin: 0;
    padding: 15px;
    color: #FFF;
    font-weight: bold;
    text-align: left;
    background-color: #e0334d;
}

.new-journey.__update {
    margin: 0;
    background-color: #BB162F;
    height: 43px;
    display: flex;
    font-weight: 400;
    align-items: center;
    padding: 0 15px;
    transition: all 0.3s ease;
    cursor: pointer;
}
.new-journey:hover {
    background-color: #8c1124;
}
.new-journey.__update:hover {
    background-color: #8c1124;
}

.new-journey.__update i {
  font-size: 17px;
  padding-top: 5px;
}

.new-journey a {
    color: #FFF;
    text-decoration: none;
    margin-left: 3px;
}

.new-journey i {
    font-size: 12px;
}

.choices-title {
    margin: 0;
    padding: 15px;
    color: #FFF;
    font-weight: 700;
    font-size: 22px;
    line-height: 29px;
    background-color: #e0334d;
}

.choices-startend {
    display: block;
    padding: 15px 15px;
    color: #2E3638;
    background: #E0E0E0;
    font-weight: 700;
    border-bottom: 2px solid #B6B6B6;
}

.choices-startend svg  {
  margin-right: 5px;
}
.choices-startend:hover svg path {
  fill: #23527c;
}

.choices-startend:hover,
.choices-startend:focus {
    background: #eee;
}

#choices-later {
  border-bottom: 2px solid #B6B6B6;
}

.choices-prevnext {
    display: block;
    padding: 15px 15px;
    color: #2E3638;
    background: #E0E0E0;
    font-weight: 700;
}

.choices-prevnext:hover,
.choices-prevnext:focus {
    background: #B62D3F;
    color: #FFF;
}

.choices-journeys {
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
}

.choices-journey {
    display: flex;
    align-items: center;
    padding: 5px 0;
    background: #FFF;
    border-top: 1px solid #CCC;
    color: #333;
}

.choices-journey:after {
    content: "";
    display: table;
    clear: both;
}

.choices-journey:first-child {
    border: none;
}

.choices-journey-deparr {
    display: block;
    float: left;
    width: 36%;
    border-right: 1px solid #CCC;
    padding: 9px 10px;
    font-weight: 400;
}

.choices-journey-deparr .depart {
    margin: 0 0 5px 0;
}

.choices-journey-deparr .arrive {
    margin: 0;
}

.choices-journey-modes {
    display: block;
    float: left;
    width: 15%;
    padding: 0 5px;
}

.choices-journey-modes:after {
    content: "";
    display: table;
    clear: both;
}

.choices-journey-mode {
    max-width: 20px;
    margin: 0 auto;
}

.choices-journey-mode.extra {
    display: block;
    float: left;
}

.choices-journey-changes {
    display: block;
    float: left;
    width: 22%;
    margin: 0;
    padding: 10px 0;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    font-size: 0.95em;
    font-weight: 400;
    text-align: center;
}

.welsh .choices-journey-changes {
    font-size: 0.75em;
}

.choices-journey-changes .num {
    display: block;
    font-size: 1.25em;
}

.choices-journey-mins {
    display: block;
    float: left;
    width: 27%;
    margin: 0;
    text-align: center;
    padding: 12px 0;
    font-size: 0.95em;
    font-weight: 400;
}

.choices-journey-mins .hours {
    display: block;
}

.choices-journey-mins .minutes {
    display: block;
}

.choices-journey:hover, .choices-journey.selected {
    background: #D7D7D7;
    color: #333;
}

.choices-view-return,
.choices-view-favourite {
    display: block;
    margin: 0 !important;
    padding: 0px 16px;
    color:#2E3638;
    text-align: center;
    font-size: 1.1em;
    font-weight: 700;
}

.choices-view-favourite {
  background-color: #E0E0E0;
  padding-bottom: 25px;
}

.choices-view-return:hover {
    color:#2E3638;
}
.choices-view-return:focus {
    font-size: 1.1em;
    padding-top: 0;
    font-weight: bold;
}

.choices-view-favourite:hover {
  color: #e0334d;
  background-color: #E0E0E0;
}
.choices-view-favourite:hover svg path {
  stroke: #e0334d;
}

.choices-view-return {
    margin-top: 20px;
}
.choices-view-return:hover {
    fill:#fff;
}
.choices-view-return:hover svg path {
    fill:#2E3638;
}
.choices-view-return svg {
    margin-right: 5px;
    font-size: 15px;
}
.choices-view-favourite svg {
    margin-right: 5px;
    font-size: 15px;
}

.choices-help, .choices-phone {
    color: #FFF;
    text-align: center;
    font-weight: 700;
    background-color: #2E3638;
}

.choices-phone a {
    color: #FFF;
}

.choices-help {
    margin: 0;
    font-size: 16px;
    padding: 15px 0 5px 0px;
}

.choices-phone {
    font-size: 22px;
    padding: 5px 0 15px 0;
}

.choices-none {
    margin: 0 0 20px 0;
    padding: 20px 15px;
    background: #FFF;
    text-align: center;
}

.choices-none p {
    margin: 0;
}

.choices-destination, .choices-date {
    background: #FBE5E8;
    padding: 15px 15px 14px 15px;
    font-weight: 500;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    position: relative;
    line-height: 1.5;
}

.choices-date {
    padding-right: 60px;
    text-align: right;
}

.choices-date span.date_label {
    position: absolute;
    top: 14px;
    left: 14px;
}

.journeys-none {
    margin: 20px 0;
    padding: 20px 15px;
    text-align: center;
}

.journeys-none p {
    margin: 0;
    font-size: 1.2em;
}

.choices-loader {
    background: #FFF;
    padding: 20px 0;
}

.choices-loader img {
    display: block;
    margin: 0 auto;
}

@media (max-width:992px) {
    .choices-phone {
        margin: 0;
        font-size: 1.7em;
    }
}

@media (max-width:1199px) {
    .choices-journey-deparr {
        padding: 9px 5px 9px 5px;
        font-size: 0.9em;
    }

    .choices-journey-mode {
        max-width: 16px;
    }
}

@media (max-width:991px) {
    .edit-journey, .choices-view-return.button, .choices-view-favourite.button {
        font-size: 1em;
    }

    .choices-view-return.button, .choices-view-favourite.button {
        padding: 13px 8px;
    }

    .journey-planner-sidebar-choices {
        margin: 0;
    }

    .choices-journey-changes {
        font-size: 0.65em;
    }

    .choices-journey-modes {
        font-size: 0.9em;
    }

    .choices-journey-mode {
        max-width: 20px;
    }

    .choices-help {
        font-size: 1em;
    }

    .choices-phone {
        font-size: 1.3em;
    }
}

@media (max-width:767px) {
    .choices-journey-changes {
        font-size: 0.8em;
    }
}

/* Small devices (tablets, 768px and up) */
@media (min-width: @screen-sm-min) {}

/* Medium devices (desktops, 992px and up) */
@media (max-width:1199px) {
    .journey-planner-sidebar-choices {
        margin: 0;
    }
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: @screen-lg-min) {
    .journey-planner-sidebar-choices {
        margin: -51px 0 0 0;
    }
}

/*=======================================
JOURNEY PLANNER SIDEBAR UPDATE
=======================================*/
.journey-planner-sidebar-update {
    display: none;
    margin: -78px 0 0 0;
    padding: 20px 35px 20px 15px;
    background: #e0334d;
}

.journey-planner-sidebar-update .location-switch {
  color: #fff;
}

@media(min-width:992px){
  .journey-planner-sidebar-update .location-switch {
    bottom: -22px;
  }
}

.journey-planner-sidebar-update .label_wrap {
    display: none;
}

.journey-planner-sidebar-update label {
    color: #FFF;
}

.journey-planner-sidebar-update .submit_wrap {
    width: 100%;
}

.journey-planner-sidebar-update .checkboxes label {
    width: 49%;
}

.journey-planner-sidebar-update .location-wrap i {
    color: #fff;
}

.journey-planner-sidebar-update hr {
    border-top: 1px solid #1ab3aa;
    margin: 20px -15px;
}

.journey-planner-sidebar-update .checkboxes {
    margin-top: 20px;
}
.choices-journey {
  position: relative;
}
.choices-journey:hover,
.choices-journey.selected {
    background: #FBE5E8;
    color: #333;
}
.choices-journey::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  height: 0%;
  width: 3px;
  background-color: #E0334D;
  transition: all 0.3s ease;
}
.choices-journey:hover::before,
.choices-journey.selected::before {
    height: 100%;
}
.choices-journey:hover .choices-journey-deparr,
.choices-journey.selected .choices-journey-deparr {
    border-right: 1px solid #ccc;
}

.choices-journey:hover .choices-journey-changes,
.choices-journey.selected .choices-journey-changes {
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}

.previous-results {
    display: block;
    margin: 0 auto 20px auto;
    padding: 10px 16px;
    width: 330px;
    background: #006231;
    border-radius: 3px;
    color: #FFF;
    text-align: center;
    font-size: 1.1em;
}

.previous-results:hover {
    background: #004924;
    color: #FFF;
}

/*=======================================
JOURNEY PLANNER SIDEBAR
=======================================*/
.journey-planner-sidebar-wrap.edit .journey-planner-sidebar-update {
    display: block;
}

.journey-planner-sidebar-wrap.edit .journey-planner-sidebar-choices {
    display: block;
    margin: 20px 0 0 0;
}

/*=======================================
JOURNEY PLANNER LIST
=======================================*/
.journey-summary {
    margin: 20px 0 0 53px;
    background: #FFF;
}

.journey-summary-points, .journey-summary-view {
    display: block;
    float: left;
}

.journey-summary-points {
    border-right: 1px solid #DEDEDE;
    width: 70%;
}

.journey-summary-points.__cycle {
    min-height: 96px;
    float: none;
    width: auto;
}

.journey-summary-from, .journey-summary-to {
    display: block;
    padding: 8px 10px;
    font-weight: 700;
}

.journey-summary-from {
    border-bottom: 1px solid #DEDEDE;
}

.journey-summary-view {
    text-align: center;
    font-weight: 700;
    color: #2E3638;
    display: block;
    width: 30%;
    padding: 12px;
}

.journey-summary-view.__cycle {
    width: auto;
    padding: 0;
    height: 96px;
}

.journey-summary-view i {
    display: block;
    margin: 0 0 5px 0;
    color: #e0334d;
    font-size: 25px;
    line-height: 1em;
}

.journey-summary-view.__cycle i {
    transform: translateX(-15%);
    line-height: 96px;
}

@media(min-widht:768px) {
    .journey-summary-view.__cycle i {
        transform: translateX(-50%);
    }
}

@media(min-width:992px) {
    .journey-summary-view.__cycle i {
        transform: translateX(-100%);
    }
}

@media(min-width:1200px) {
    .journey-summary-view.__cycle i {
        transform: translateX(-50%);
    }
}

.journey-summary-view:hover {
    color: #333;
}

.journey-summary-coord {
    padding: 12px;
    font-weight: 500;
    color: #333;
    font-size: 14px;
    position: relative;
    padding: 25px 30px;
    border-right: 1px solid #DEDEDE;
    display: block;
    height: 96px;
}

.journey-summary-coord i {
    display: inline-block;
    margin: 0 0 5px 0;
    color: #2cb3ab;
    font-size: 25px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.journey-summary-print {
    display: block;
    font-weight: 500;
    border-right: 1px solid #DEDEDE;
    position: relative;
    height: 96px;
}

.journey-summary-print i {
    display: block;
    color: #2cb3ab;
    font-size: 25px;
    position: absolute;
    top: 50%;
    transform: translate(100%, -50%);
}

@media(min-width:576px) {
    .journey-summary-print i {
        transform: translate(190%, -50%);
    }
}

@media(min-width:768px) {
    .journey-summary-print i {
        transform: translate(150%, -50%);
    }
}

@media(min-width:992px) {
    .journey-summary-print i {
        transform: translate(-50%, -50%);
    }
}

.journey-summary-map {
    display: none;
    height: 600px;
}

.journey-summary.open .journey-summary-map {
    display: block;
}

.journey-legs {
    list-style: none;
    margin: 0 0 20px 10px;
    padding: 20px 0;
}

.journey-leg {
    position: relative;
    display: block;
    padding: 0 0 20px 40px;
    border-left: 3px dotted #30383B;
}

.journey-leg.alternate {
    border-left: 3px solid #30383B;
}

.journey-leg .journey-leg-badge {
    position: absolute;
    left: -10.5px;
    top: -7px;
    display: block;
    width: 16px;
    height: 16px;
    background: #FFF;
    border: 2px solid #e0334d;
    border-radius: 999px;
}

.journey-leg .journey-leg-panel {
    background: #FFF;
    border: 1px solid #D7D7D7;
}

.journey-leg .journey-leg-body {
    padding: 0 10px;
}

.journey-leg .journey-leg-heading {
    position: relative;
    min-height: 44px;
    margin: 0 0 5px 0;
    padding: 13px 0;
}

.journey-leg .journey-leg-title {
    margin: 0;
    font-size: 1.1em;
    font-weight: 500;
    line-height: 1.8;
    color: #2E3638;
    text-transform: none;
}

.journey-leg .journey-leg-title i {
    margin: 0 10px 0 0;
    color: #e0334d;
}

.journey-leg .journey-leg-title img {
    display: block;
    margin: 5px auto 0 auto;
}

.journey-leg .journey-leg-title span {
    display: inline-block;
    width: 70px;
    font-weight: 400;
}

.journey-leg .journey-leg-duration {
    margin: 0 0 0 20px;
    font-size: 0.9em;
}

.journey-leg-accessibility {
    position: absolute;
    right: -5px;
    bottom: 0;
}

.journey-leg.first .journey-leg-badge, .journey-leg.last .journey-leg-badge {
    left: -15px;
    width: 26px;
    height: 26px;
    padding: 0;
    border: 3px solid #2E3638;
    text-align: center;
    font-weight: 700;
    font-size: 14px;
}

.journey-leg.last {
    border-left: 3px solid transparent;
}

.journey-leg .journey-leg-footer {
    background: #D7D7D7;
}

.journey-leg .googlemap {
    height: 300px;
}

.journey-leg .googlemap-load {
    width: 100%;
    height: 100%;
}

.journey-leg .tabbar {
    overflow: hidden;
}

.journey-leg .tabbar ul {
    padding: 0;
}

.journey-leg .tabbar ul li {
    display: inline;
}

.journey-leg .tabbar ul li a {
    display: block;
    font-weight: 700;
    float: left;
    margin: 0;
    padding: 0 40px;
    border-right: 1px solid #C4C4C4;
    line-height: 30px;
    font-size: 0.9em;
    color: #333;
}

.journey-leg .tabbar ul li a:hover {
    background: #BEBEBE;
}

.journey-leg .tabbar ul li.active a {
    background: #BEBEBE;
}

.journey-leg .tab-pane.fares {
    padding: 5px 10px;
}

/* new occupancy stuff */
.journey-occupancy {
    padding: 16px 30px;
    border-top: solid 1px #d7d7d7;
    margin: 30px 0 0 0;
}

/* __quiet modifier */
.journey-occupancy.__quiet .journey-occupancy-body-status-inner > span {
    background: #ccc;
}
.journey-occupancy.__quiet .journey-occupancy-body-status-inner > span::before {
    background: #41c75f;
}
.journey-occupancy.__quiet .journey-occupancy-body-status-inner > span::after {
    background: #ccc;
}

/* __moderate modifier */
.journey-occupancy.__moderate .journey-occupancy-body-status-inner > span::after {
    background: #ccc;
}

/* __busy modifier */
.journey-occupancy.__busy .journey-occupancy-body-status-inner > span {
    background: #eb2929;
}
.journey-occupancy.__busy .journey-occupancy-body-status-inner > span::before,
.journey-occupancy.__busy .journey-occupancy-body-status-inner > span::after {
    background: #eb2929;
}

.journey-occupancy-head p {
    display: inline-block;
    margin: 1px 0 0 7px;
    color: #555;
    font-weight: 500;
}
.journey-occupancy-body {
    margin: 20px 0;
    border: solid 1px #e2e2e2;
    display: flex;
    flex-wrap: nowrap;
    border-radius: 2px;
}
.journey-occupancy-body-status {
    padding: 0 20px 0 40px;
}
.journey-occupancy-body-status-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
.journey-occupancy-body-status-inner > span {
    display: block;
    position: relative;
    width: 12px;
    height: 25px;
    background: #f97218;
    transform: translate(0, 5px);
}
.journey-occupancy-body-status-inner > span::before,
.journey-occupancy-body-status-inner > span::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 12px;
    background: #f97218;
}
.journey-occupancy-body-status-inner > span::before {
    transform: translate(-23px, 0);
    height: 15px;
}
.journey-occupancy-body-status-inner > span::after {
    transform: translate(10px, 0);
    height: 35px;
}
.journey-occupancy-body-status-inner > p {
    margin: 0 0 0 30px;
    font-weight: 500;
    color: #555;
}
.journey-occupancy-body-statustext {
    position: relative;
    padding: 20px;
    color: #555;
}
.journey-occupancy-body-statustext::before {
    content: '';
    position: absolute;
    background: #d0d0d0;
    width: 1px;
    height: calc(100% - 10px);
    top: 5px;
    left: 0;
}



.main-loader {
    display: none;
    padding: 50px 20px;
    text-align: center;
}

.main-loader img {
    display: inline-block;
}

.journey-disruption-button {
    display: block;
    width: 185px;
    margin: 5px 0;
    padding: 3px 10px;
    color: #FFF;
    font-size: 0.9em;
    font-weight: 700;
    background: #2E3638;
}

.journey-disruption-button i {
    top: -2px;
    margin: 0 5px 0 0;
    color: #FFCB31 !important;
}

.journey-disruption-button:hover,
.journey-disruption-button:focus {
    color: #FFF;
}

@media (max-width:767px) {
    .journey-leg {
        padding: 0 0 20px 20px;
    }

    .journey-leg .tabbar ul li a {
        border: none;
    }
}

/*=======================================
REGISTRATION
=======================================*/
.registration-header {
    margin: 0 0 40px 0;
    padding: 10px 0 25px 0;
    border-bottom: 1px solid #CCC;
}

.registration-header .h1 {
    display: block;
    margin: 0 0 15px 0;
}

.registration-form {
    margin: 0 100px 0 0;
}

.registration-form .field_wrap, .registration-form .submit_wrap {
    display: block;
    width: 50%;
    margin: 0 auto 30px auto;
}

.registration-form .submit_wrap {
    text-align: right;
}

.registration-form .submit_wrap button {
    padding: 0 40px;
    font-size: 1.3em;
    font-weight: 700;
}

@media (max-width:991px) {
    .registration-form .field_wrap, .registration-form .submit_wrap {
        width: 65%;
    }
}

@media (max-width:767px) {
    .registration-form {
        margin: 0;
    }

    .registration-form .field_wrap, .registration-form .submit_wrap {
        width: 100%;
    }
}

/*=======================================
FAVOURITES SIDEBAR
=======================================*/
.account-menu {
    list-style: none;
    padding: 0;
}

.account-menu li a {
    display: block;
    margin: 0 -15px;
    padding: 20px 15px;
    color: #FFF;
    text-transform: uppercase;
    border-bottom: 1px solid #fff;
}

.account-menu>li:first-child a {
    border-top: 1px solid #fff;
}

.account-menu li ul li {
    padding-left: 25px;
}

.account-menu li a:hover {
    background: #1ab3aa;
    color: #FFF;
}

.account-menu li a.selected {
    background: #1ab3aa;
}

.favourites-sidebar {
    margin: -40px 0 0 0;
    padding: 30px 15px;
    background: #e0334d;
}

.favourites-back {
    display: block;
    margin: 0 auto 30px auto;
    padding: 10px 16px;
    width: 100%;
    background: #006231;
    border-radius: 3px;
    color: #FFF;
    text-align: center;
    font-size: 1.3em;
}

.favourites-back:hover {
    background: #004924;
    color: #FFF;
}

.favourites-profile, .favourites-favourites {
    display: block;
    margin: 0 -15px;
    padding: 20px 15px;
    color: #FFF;
    text-transform: uppercase;
    border-bottom: 1px solid #1ab3aa;
}

.favourites-profile:hover, .favourites-favourites:hover {
    background: #1ab3aa;
    color: #FFF;
}

.favourites-profile {
    border-top: 1px solid #1ab3aa;
}

.favourites-logout {
    margin: 25px 0 0 0;
}

.favourites-logout:hover {
    color: #fff;
}

/*=======================================
FAVOURITES LIST
=======================================*/
.favourites-header {
    margin: 0 0 40px 0;
    border-bottom: 1px solid #CCC;
}

.favourites-header h1 {
    font-size: 1.3em;
}

.favourites-header .checkboxes {
    text-align: right;
}

.favourites-header .checkboxes input {
    float: right;
    margin: 5px 0 0 7px;
}

.favourites-section {
    margin: 20px 0 30px 0;
}

.favourites-section-title {
    margin: 0 0 20px 0;
    font-size: 1.15em;
    font-weight: 400;
}

.favourites-panel {
    min-height: 83px;
    margin: 0 0 18px 0;
    border-right: 1px solid #DDD;
    border-bottom: 2px solid #DDD;
    background: #FFF;
}

.favourites-panel-body {
    display: block;
    min-height: 81px;
    width: 80%;
    float: left;
    border-right: 1px solid #CCC;
}

.favourites-panel-from, .favourites-panel-to {
    display: block;
    width: 100%;
    min-height: 40px;
    padding: 9px 15px;
}

.favourites-panel-from {
    padding-bottom: 10px;
    border-bottom: 1px solid #CCC;
}

.favourites-panel-locale {
    display: block;
    width: 100%;
    min-height: 81px;
    padding: 30px 15px;
}

.favourites-panel-locale i {
    margin: 0 10px 0 0;
    color: #BBB;
    font-size: 25px;
}

.favourites-panel-options {
    display: block;
    min-height: 81px;
    width: 20%;
    float: left;
}

.favourites-panel-option {
    display: block;
    min-height: 40px;
    width: 100%;
    padding: 9px 0;
    margin: 0;
    text-align: center;
    color: #333;
    font-weight: 700;
}

.favourites-panel-option:hover {
    background: #EEE;
    color: #333;
    cursor: pointer;
}

.favourites-panel-option:first-child {
    padding-bottom: 10px;
    border-bottom: 1px solid #CCC;
    color: #e0334d;
}

.favourites-panel-option:first-child:hover {
    background: #EEE;
    color: #e0334d;
}

.favourites-panel-option input {
    position: absolute;
    left: -9999px;
}

.favourites-panel-remove {
    display: block;
    padding: 30px 0;
    text-align: center;
    color: #555;
}

.favourites-panel-remove i {
    font-size: 25px;
}

.favourites-panel-remove:hover {
    color: #333;
}

.hidden-alerts {
    background: #DDD;
    padding: 23px 15px;
}

.hidden-alerts .field_wrap, .hidden-alerts label {
    margin: 0;
}

.hidden-alerts .label_wrap {
    display: inline-block;
    vertical-align: middle;
    width: 64%;
}

.hidden-alerts label {
    font-weight: 700;
}

.hidden-alerts .input_wrap {
    display: inline-block;
    vertical-align: middle;
    width: 34%;
}

.hidden-alerts .input_wrap label {
    display: inline-block;
    vertical-align: middle;
    width: 49%;
}

@media (max-width:767px) {
    .favourites-header {
        margin: 40px 0;
    }

    .favourites-panel {
        margin: 0;
    }

    .favourites-panel-remove {
        display: inline-block;
        margin: 0 0 10px 0;
        padding: 5px 0;
    }
}

/*=======================================
BUS STOP FINDER
=======================================*/
.bus-stop-page-wrap {
    position: relative;
    margin: 0 0 -100px 0;
}

.bus-stop-finder-sidebar {
    min-height: 1100px;
    width: 300px;
    margin: 0;
    padding: 0 0 80px 0;
    background: #e0334d;
}

.bus-stop-search {
    /* padding: 20px 15px; */
}

.bus-stop-title {
    padding: 20px 15px 10px 15px;
    color: #FFF;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 0;
}

.bus-stop-search .field_wrap {
    display: block;
    float: left;
    width: 82%;
}

.bus-stop-search form {
  padding: 10px 15px 20px 15px;
  background-color: #CE233D;
}

.bus-stop-search input {
    border-radius: 0;
    padding: 14px 10px;
    height: auto;
    color: #2E3638;
}
.bus-stop-search input::placeholder {
    color: #2E3638;
}

.bus-stop-search p {
    color: #fff;
}

.bus-stop-search label {
    color: #FFF;
    display: block;
}

.bus-stop-search .submit_wrap {
    display: block;
    float: left;
    margin-top: 0;
    width: 17%;
}

.bus-stop-search button {
    width: 100%;
    padding: 0 6px;
    line-height: 51px;
    background-color: #fff;
}
.bus-stop-search button:hover,
.bus-stop-search button:focus {
    background-color: #1EBDAE;
    padding: 0 6px;
}
.bus-stop-search button:hover i,
.bus-stop-search button:focus i {
  color: #2E3638;
}

.bus-stop-search button i {
  color: #2E3638;
}

.bus-stop-search .required {
    display: none;
}

.bus-stop-location-link {
    color: #fff;
    font-weight: bold;
    text-decoration: underline;
}

.bus-stop-location-link:hover {
    color: #fff;
    text-decoration: underline;
}

.bus-stop-wrap {
    position: relative;
}

.bus-stop-results {
    border-top: 1px solid #B62D3F;
}

.bus-stop-prevnext {
    display: block;
    padding: 15px 15px;
    background: #008C45;
    color: #FFF;
    text-align: left;
}

.bus-stop-prevnext:hover {
    background: #1ab3aa;
    color: #FFF;
}

.bus-stop-results {
    text-align: center;
}

.bus-stop-result {
    display: block;
    padding: 5px 0;
    background: #FFF;
    border-top: 1px solid #CCC;
    color: #535353;
}

.bus-stop-result:first-child {
    border: none;
}

.bus-stop-service {
    margin: 0;
    padding: 9px 5px;
    font-weight: 500;
    color: #2E3638;
}

.bus-stop-name {
    min-height: 55px;
    margin: 0 0 0 -30px;
    padding: 10px 15px;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    font-size: 0.95em;
    font-weight: 500;
    text-align: left;
    color: #2E3638;
}

.bus-stop-mins {
    margin: 0 0 0 -30px;
    text-align: center;
    padding: 10px 0;
    font-size: 0.95em;
    font-weight: 500;
    color: #2E3638;
}

.bus-stop-mins .block {
    display: block;
    line-height: 1em;
}

.bus-stop-result:hover {
    background: #F3F3F3;
    color: #333;
}

.bus-stop-results-header {
    padding: 5px 0;
    color: #FFF;
    background-color: #E0E0E0;
}

.bus-stop-results-header .bus-stop-name {
    min-height: 0;
    border-left: none;
    border-right: none;
}

.bus-stop-detail {
    padding: 10px 15px 10px 0px;
    border-bottom: 1px solid #B62D3F;
    text-align: left;
    color: #FFF;
    position: relative;
}

.bus-stop-detail i {
    display: block;
    color: #1ab3aa;
    font-size: 35px;
    line-height: 42px;
    text-align: center;
}

.bus-stop-detail-desc {
    display: block;
    margin: 0 0 10px 0;
    font-weight: 500;
}

.bus-stop-detail-title {
    margin: 0 0 20px 0;
    font-size: 1.2em;
    padding-left: 55px;
    font-weight: 400;
}

.bus-stop-detail-title small {
    display: block;
    margin-top: 3px;
    color: #FFF;
    font-size: 0.85em;
}

.bus-stop-detail-title::before {
    color: #fff;
    content: "P";
    font-family: "icomoon";
    font-size: 23px;
    left: 15px;
    position: absolute;
    top: 18px;
}

.bus-stop-refresh {
    display: block;
    border-top: 1px solid #007D43;
    padding: 27px 15px;
    background: #E0334D;
    color: #FFF;
}

.bus-stop-refresh:hover, .bus-stop-refresh:focus {
    background: #1ab3aa;
    color: #FFF;
}

.bus-stop-plan {
    border-bottom: 1px solid #B62D3F;
    padding: 20px 15px;
    background-color: #fff;
}

.bus-stop-plan .buttonnew {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 7px;
}

.bus-stop-plan-title {
    color: #2E3638;
    font-weight: 700;
    font-size: 19px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.bus-stop-plan-title img {
  margin-right: 10px;
}

.bus-stop-plan .button {
    width: 100%;
    margin: 0 0 10px 0 !important;
    padding: 13px 7px 10px !important;
    font-size: 1em !important;
    white-space: normal;
}

.bus-stop-add-favourites {
  width: 270px;
  margin-top: 15px;
  margin: auto!important;
  background: none!important;
  border: 2px solid #2E3638;
}

.bus-stop-add-favourites:hover,
.bus-stop-add-favourites:focus {
  background-color: #e0334d!important;
  color: #fff!important;
}
.bus-stop-add-favourites:hover i,
.bus-stop-add-favourites:focus i {
  color: #fff;
}
.bus-stop-add-favourites:hover i svg path,
.bus-stop-add-favourites:focus i svg path {
  stroke: #fff;
}

.bus-stop-add-favourites i {
    top: -2px;
    color: #2E3638;
    margin-right: 5px;
}

.bus-stop-finder-map {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 300px;
    min-height: 750px;
    margin: 0;
}

.bus-stop-finder-map .googlemap-load {
    width: 100%;
    height: 100%;
}

.stop-disruptions-button {
    display: block;
    padding: 15px 15px;
    background: #009951;
    color: #FFF;
    24/02/2015 16: 02:05 font-weight:700;
}

.stop-disruptions-button i {
    top: -2px;
    color: #F99D16;
}

.stop-disruptions-button:hover, .stop-disruptions-button:focus {
    background: #008044;
    color: #FFF;
}

.overlay-loader {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.8);
}

.overlay-loader img {
    position: absolute;
    top: 40%;
    display: block;
    margin: 0 auto;
    left: 0;
    right: 0;
}

.ajax-loader {
    display: block;
    margin: 0 auto;
}

.stop-naptan {
    display: none !important;
}

#add-favourite {
    padding: 13px 16px 9px;
}

.favicon {
    margin: -4px 5px 0 0;
}

@media (max-width:1199px) {
    .bus-stop-plan .button.alternate {
        margin: 0 0 15px 0;
    }
}

@media (max-width:767px) {
    .bus-stop-finder-sidebar {
        width: 100%;
        min-height: 170px;
        padding: 0;
    }

    .bus-stop-results {
        overflow: hidden;
    }

    .bus-stop-finder-map {
        position: static;
        width: 100%;
        padding: 0 40px 0 0;
        background: #E0334D;
    }

    .bus-stop-finder-map .googlemap-load {
        width: 100%;
        height: 750px;
    }
}

/*=======================================
TIMETABLE SEARCH
=======================================*/
@media (max-width:767px) {
    .timetable-person {
        height: 150px;
        text-align: center;
        margin-bottom: 20px;
    }

    .timetable-person img {
        height: 100%;
    }
}

.timetable-service {
    position: relative;
    background: #FFF;
}

.timetable-location {
    position: relative;
    padding: 30px 90px 45px 90px;
    background: #FFF;
    border-right: 1px solid #DDD;
    border-bottom: 2px solid #DDD;
}

.timetable-service h2,
.timetable-location h2 {
    margin: 0 0 40px 0;
    text-align: center;
    font-size: 1.8em;
}

.timetable-service input {
    height: 68px;
    border-radius: 0;
    text-align: center;
    font-size: 18px;
}

.timetable-service .submit_wrap {
    text-align: center;
}

.timetable-service .submit_wrap button {
    margin: 0 auto;
    padding: 0 70px;
    font-size: 1.3em;
}

.timetable-location .field_wrap {
    display: block;
    margin: 4px 0;
    float: left;
    width: 85%;
}

.timetable-location .label_wrap {
    display: inline-block;
    vertical-align: middle;
    width: 25%;
}

.timetable-location .input_wrap {
    display: inline-block;
    vertical-align: middle;
    width: 74%;
}

.timetable-location .submit_wrap {
    display: block;
    margin: 8px 0 0 0;
    float: left;
    width: 15%;
}

.timetable-location .submit_wrap button {
    width: 100%;
    font-weight: 700;
    font-size: 1.3em;
    line-height: 38px;
}

.timetable-search-divider {
    margin: 50px 0 40px 0;
    border-bottom: 2px dashed #D7D7D7;
    text-align: center;
}

.timetable-search-divider-title {
    position: relative;
    top: 14px;
    display: inline-block;
    padding: 0 15px;
    background: #EEE;
    color: #e0334d;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.2em;
}

.timetable-search-help {
    display: block;
    margin: 30px 0 50px 0;
    text-align: center;
    font-size: 1.2em;
    font-weight: 500;
}

.timetable-search-help a {
    display: block;
}

@media (max-width:1199px) {
    .timetable-service .label_wrap, .timetable-service .input_wrap {
        display: block;
        width: 100%;
    }
}

@media (max-width:991px) {
    .timetable-location .label_wrap, .timetable-location .input_wrap {
        display: block;
        width: 100%;
    }

    .timetable-location .field_wrap {
        width: 75%;
    }

    .timetable-location .submit_wrap {
        width: 25%;
        margin: 30px 0 0 0;
    }
}

@media (max-width:767px) {
    .timetable-service, .timetable-location {
        padding: 30px 30px 45px 30px;
    }

    .timetable-location .field_wrap {
        float: none;
        width: 100%;
    }

    .timetable-location .submit_wrap {
        float: none;
        width: 100%;
        margin: 10px 0 0 0;
        text-align: right;
    }

    .timetable-location .submit_wrap button {
        display: inline-block;
        width: auto;
    }
}

.timetable-text {
    position: relative;
    text-align: center;
    margin-top: 50px;
    font-weight: 500;
    font-size: 1.2em;
}

.timetable-text a {
    color: #e0334d;
    text-decoration: underline;
}

.timetable-text a:hover {
    color: #B62D3F;
}

.timetable-freephone {
    display: none;
    position: absolute;
}

@media (min-width:768px) {
    .timetable-freephone {
        display: block;
        right: -150px;
        bottom: -150px;
    }
}

/*=======================================
TIMETABLE RESULTS
=======================================*/
.timetable-results-title {
    margin: 20px 0 5px 0;
}

.timetable-results-subtitle {
    margin: 0 0 30px;
    font-size: 1em;
    font-weight: 400;
}

.timetable-warning-description {
    margin: 20px 0 5px 0;
    padding-left: 40px;
    background: url("/images/warning.png") no-repeat center left;
}

.timetable-results-list {
    position: relative;
    margin: 10px 0 50px 0;
    padding: 0;
    list-style: none;
}

.timetable-results-list li a {
    position: relative;
    display: block;
    padding: 20px 30px;
    background: #FFF;
    color: #666;
    border: 1px solid #E7E7E7;
    border-top: none;
    font-size: 1em;
    font-weight: 500;
}

.timetable-results-list li a:hover {
    background: #FBE5E8;
    color: #333;
}

.timetable-results-list li:first-child a {
    border-top: 1px solid #E7E7E7;
}

.timetable-results-list li:nth-child(2n+2) a {
    background: #eee;
}

.timetable-results-list li:nth-child(2n+2) a:hover {
    background: #FBE5E8;
}

.timetable-results-list li .service-number {
    display: inline-block;
    width: 5%;
    vertical-align: middle;
    padding: 0 5px;
}

.timetable-results-list li .service-description {
    display: inline-block;
    display: inline-flex;
    width: 95%;
    vertical-align: middle;
    padding: 0 5px;
}

.timetable-results-list li .service-number+.service-description {
    width: 90%;
}

.timetable-results-list li i.big {
    display: inline-block;
    vertical-align: middle;
    width: 2%;
    padding: 0 5px;
    font-family: icomoon;
    font-size: 28px;
    line-height: 28px;
}

@media (max-width:767px) {
    .timetable-results-list li .service-number {
        width: 8%;
    }

    .timetable-results-list li .service-description {
        width: 85%;
    }
}

@media (max-width:510px) {
    .timetable-results-list li a {
        padding: 20px 15px;
    }

    .timetable-results-list li .service-number {
        width: 12%;
    }

    .timetable-results-list li .service-description {
        width: 78%;
    }
}

@media (max-width:400px) {
    .timetable-results-list li .service-number {
        width: 15%;
    }

    .timetable-results-list li .service-description {
        width: 75%;
    }

    .timetable-results-list li i {
        width: 2%;
    }
}

/*=======================================
TIMETABLE DETAIL
=======================================*/
.timetable-row {
    position: relative;
    padding: 10px;
}

.timetable-row.__message {
    padding: 10px;
    display: block;
    text-align: center;
}

.timetable-summary {
    margin: 0;
    padding: 25px 20px 20px 20px;
    background: #EEEEEE;
    text-align: center;
    box-shadow: inset 0px 14px 40px -30px #000;
    border-bottom: 1px solid #c7c7c7;
}

.timetable-summary-wrap {
    border: 1px solid #999;
    background: #FFFFFF;
    margin: 30px 0;
}


@media (min-width:768px) {
    .timetable-summary {
        text-align: left;
    }
    .timetable-row.__message {
        display: inline-block;
        text-align: left;
    }

    .timetable-row.__message,
    .changedirection,
    .download-timetable,
    .favourite-timetable {
        font-size: 17px;
        font-weight: 500
        color: #000;
    }
    .timetable-summary-wrap {
        border: none;
        background: none;
        margin: 0;
    }
}

.timetable-summary-service {
    display: inline-block;
    min-width: 58px;
    height: 58px;
    padding: 18px 0;
    background: #e0334d;
    border-radius: 999px;
    text-align: center;
    color: #FFF;
    font-weight: 500;
    font-size: 1.2em;
}
.timetable-summary-service-wrap {
    padding: 10px 0;
    display: inline-block;
}
.timetable-summary-service-wrap .changedirection {
    color: #fff;
    background: #1EBDAE url('/images/direction-change.png') no-repeat 15px center;
    padding: 7px 10px 7px 45px;
    display: inline-block;
    vertical-align: bottom;
    margin: 10px 0 0 0;
}
.timetable-summary-service-wrap .changedirection span {
    vertical-align: middle;
    max-width: 100px;
    display: inline-block;
}

.timetable-summary-route {
    display: inline-block;
    padding: 8px 0;
    list-style: none;
}

.timetable-summary-route li {
    margin-bottom: 10px;
    display: inline-block;
    vertical-align: middle;
    font-weight: 500;
    font-size: 20px;
    color: #000;
}

.timetable-summary-route li:before {
    content: "\003E";
    position: relative;
    top: -2px;
    display: inline-block;
    vertical-align: middle;
    width: 21px;
    height: 21px;
    margin: 0 10px;
    border-radius: 999px;
    font-family: icomoon;
    font-size: 16px;
    line-height: 21px;
    color: #fff;
    background: #e0334d;
    text-align: center;
}
@media (min-width:768px) {
    .timetable-summary-route li {
        font-size: 30px;
    }
    .timetable-summary-route li:before {
        font-size: 28px;
        color: #e0334d;
        background: none;
    }
    .timetable-summary-service-wrap {
        padding: 0;
    }
    .timetable-summary-service-wrap .changedirection {
        display: none;
    }
}

.timetable-summary-route li:first-child:before {
    display: none;
}

.timetable-summary-options {
    display: flex;
    flex-wrap: wrap;
}

.timetable-summary-options a {
    display: block;
    padding: 20px 15px;
    text-align: center;
    color: #333;
    font-weight: 400;
    border-top: 1px solid #dcdcdc;
}

.timetable-summary-options a.timetable-disruption-button:hover {
    background: #F99D16;
}

.timetable-summary-options .changedirection {
    width: 100%;
    display: none;
}
.timetable-summary-options .changedirection::before {
    content: url('../images/icons/logo_direction.svg');
    margin: 0 10px 0 0;
}


.timetable-summary-options .download-timetable {
    display: block;
    width: 100%;
}
.timetable-summary-options .download-timetable::before {
    content: url('../images/icons/logo_pdf.svg');
    margin: 0 10px 0 0;
}
.timetable-summary-options .favourite-timetable::before {
    content: url('../images/icons/logo_favourite.svg');
    margin: 0 10px 0 0;
}
.timetable-summary-options .favourite-timetable.__routemap::before {
    content: url('../images/icons/logo_routeicon.svg');
    margin: 0 10px 0 0;
    display: inline-block;
    position: relative;
    transform: translate(0,4px);
}

/*.timetable-summary-options .download-timetable::after {content: url("../images/download-pdf.png");};*/
.timetable-summary-options .favourite-timetable {
    width: 100%;
}

.timetable-summary-options .favourite-timetable i {
    top: -2px;
    color: #F99D16;
}

.timetable-disruption-button-wrap {
    width: 100%;
    padding: 15px 0;
}

@media (min-width:768px) {
    .timetable-summary-route {
        margin: 0 0 0 10px;
    }

    .timetable-summary-options {
        flex-wrap: nowrap;
    }

    .timetable-summary-options .changedirection,
    .timetable-summary-options .download-timetable,
    .timetable-summary-options .favourite-timetable {
        width: auto;
        display: block;
    }

    .timetable-disruption-button-wrap {
        width: auto;
        flex-grow: 1;
        text-align: right;
    }
    .timetable-summary-options a {
        float: right;
        padding: 10px 15px;
        min-height: 60px;
        border-top: none;
    }
}

.timetable-tabs {
    box-shadow: inset 0px -1px 3px #c7c7c7;
}

.timetable-disruption-button {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: 15px 25px 15px 60px;
    vertical-align: middle;
    color: #333;
    font-weight: 400;
    background: rgb(255, 191, 0);
    border-radius: 17px;
    border: none;
    box-shadow: none;
}
.timetable-disruption-button-wrap {
    border-top: 1px solid #dcdcdc;
}
@media (min-width:768px) {
    .timetable-disruption-button {
        margin: 0 0 0 25px;
    }
    .timetable-disruption-button-wrap {
        border: none;
    }
}

.timetable-disruption-button::before {
    content: url('../images/icons/logo_disruption.svg');
    position: absolute;
    top: 55%;
    left: 25px;
    transform: translate(0,-50%);
}

.timetable-disruption-button:hover,
.timetable-disruption-button:focus {
    background: rgba(255, 191, 0, 0.8);
}

@media (min-width:768px) {
    .timetable.tabbar {
        overflow: hidden;
    }

    .timetable.tabbar ul li {
        display: inline;
    }

    .timetable.tabbar ul li a {
        position: relative;
        display: block;
        float: left;
        font-weight: 500;
        font-size: 16px;
        margin: 0 1px 0 0;
        padding: 0 20px;
        border-radius: 0;
        line-height: 53px;
        color: rgb(85, 85, 85);
    }
    .timetable.tabbar ul li a::before {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        height: 3px;
        background: transparent;
        width: 100%;
    }

    .timetable.tabbar ul li a:hover {
        color: #e0334d;
    }

    .timetable.tabbar ul li.selected a {
        color: #e0334d;
    }
    .timetable.tabbar ul li.selected a::before {
        background: #e0334d;
    }
}

.timetable-wrap {
    position: relative;
    margin: 0;
    padding: 30px 0;
    background: #FFF;
}
.timetable-horscrollbar,
.timetable-vertscrollbar {
    position: absolute;
    bottom: 0;
    background: #ececec;
    overflow: hidden;
    border-radius: 5px;
}
.timetable-horscrollbar.__alt {
    bottom: auto;
    top: 0;
}




/* hiding ALLLL custom scrollbars untl i get time to fix them properly */
.timetable-horscrollbar,
.timetable-vertscrollbar {
    display: none;
}
.timetable-horscrollbar span,
.timetable-vertscrollbar span {
    position: absolute;
    top: 0;
    left: 0;
    background: #e0334d;
    cursor: pointer;
    border-radius: 5px;
}
.timetable-horscrollbar {
    height: 10px;
    left: 0;
    right: 0px;
}
.timetable-vertscrollbar {
    width: 10px;
    right: 0;
    top: 0;
    bottom: 40px;
}
.timetable-horscrollbar span {
    height: 100%;
    width: 0;
}
.timetable-vertscrollbar span {
    width: 100%;
    height: 0;
}





.service-no {
    font-size: 18px;
}

.timetable-toggle {
    display: block;
    font-size: 1em;
    font-weight: 700;
    color: #333;
}

.timetable-toggle:hover,
.timetable-toggle:focus {
    color: #333;
}

.timetable-toggle-all,
.timetable-filter {
    position: relative;
    display: inline-block;
    margin: 0 0 10px 0;
    padding: 5px 10px;
    font-size: 1em;
    font-weight: 400;
    text-align: left;
    color: #333;
}
.timetable-filter {
    padding: 5px 10px 5px 30px;
}
.timetable-filter::before {
    content: url('../images/icons/logo_filter.svg');
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);
}

.timetable-toggle-all {
    padding: 5px 10px 5px 30px;
}
.timetable-toggle-all::before {
    content: url('../images/icons/logo_list.svg');
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);
}

.top-scrollbar-wrap {
    display: none;
    width: 100%;
    height: 20px;
    overflow-x: auto;
    overflow-y: hidden;
}

.top-scrollbar {
    height: 20px;
}

.timetable.tab-content {
    margin: 0 0 80px 0;
}

.timetable .tab-pane {
    padding: 40px 0 0 0;
    background: #FFF;
}

.timetable .tab-pane h2, .timetable .tab-pane h3 {
    padding: 0 30px;
    text-align: center;
}

.timetable .tab-pane h2 {
    font-size: 1.3em;
    font-weight: 400;
}

.timetable .tab-pane h3 {
    margin: 0 0 30px 0;
    font-size: 1.1em;
    font-weight: 400;
}

.timetable .timetable-map-wrap {
    margin: 40px 0 0 0;
    background: #EEE;
}

.timetable .timetable-map {
    height: 360px;
}

.timetable-options {
    list-style: none;
    margin: 0;
    padding: 0;
}

.timetable-options li {
    display: block;
    float: left;
    width: 25%;
}

.timetable-options li a {
    display: block;
    padding: 15px 15px 12px 15px;
    border-bottom: 3px solid #FFF;
    border-left: 1px solid #EDEDED;
    text-align: center;
    color: #333;
}

.timetable-options li:first-child a {
    border-left: none;
}

.timetable-options li a:hover {
    border-bottom: 3px solid #F99D16;
}

.timetable-footnotes {
    padding: 40px;
    font-weight: 700;
}

.timetable-footnote {
    display: block;
    font-size: 1.1em;
}

.timetable-footnote-code {
    font-weight: 700;
}

.toggle-filter tbody tr {
    display: none !important;
}

.toggle-filter tbody tr.selected {
    display: table-row !important;
}

.timetable-row-options {
    padding: 0 30px 0 0;
    display: none;
}
@media (min-width:767px) {
    .timetable-row-options {
        display: block;
    }
}

.timetable-more {
    text-align: right;
    padding: 10px;
    display: none;
}

@media (max-width:991px) {
    .timetable .timetable-map-wrap {
        margin: 40px 20px 0 20px;
    }
}

/*=======================================
DISRUPTIONS MODAL
=======================================*/
@media (max-width:767px) {
    .disruptions-person {
        margin: 20px 0 -20px;
    }
}

.disruptions.modal .modal-body {
    padding: 10px;
}

.disruption-modal-item {
    display: block;
    padding: 10px 15px;
    border-top: 1px solid #CCC;
    color: #333;
}

.disruption-modal-item:first-child {
    border: none;
}

.disruption-modal-item:hover {
    background: #CCC;
    color: #333;
}

/*=======================================
TYPEAHEAD
=======================================*/
.twitter-typeahead {
    display: block !important;
}

.tt-dropdown-menu {
    width: 100%;
    background: #FFF;
    color: #555;
    border: 1px solid #CCC;
    max-height: 250px;
    overflow-y: auto;
}

.tt-suggestion {
    padding: 5px 10px;
}

.tt-suggestion p {
    margin: 0;
    color: #999;
}

.tt-hint {
    color: #BBB !important;
}

.tt-suggestion.tt-cursor {
    background: #EDEDED;
}

.tt-highlight {
    color: #333;
}

.tt-dropdown-menu:hover {
    cursor: pointer;
}

/*=======================================
TOOLTIP
=======================================*/
.tooltip-inner {
    min-width: 350px;
}

/*=======================================
GOOGLE MAPS INFO WINDOW
=======================================*/
.infobox:before, .infobox:after {
    border-color: transparent transparent transparent #212121;
    border-style: solid;
    border-width: 20px 20px 0;
    bottom: -1px;
    content: "";
    display: block;
    height: 0;
    left: -1px;
    position: absolute;
    width: 0;
    z-index: 2;
}

.infobox:after {
    border-color: transparent transparent transparent #FFFFFF;
    border-width: 24px 24px 0;
    z-index: 1;
}

.infobox .close {
    background: none repeat scroll 0 0 #212121;
    cursor: pointer;
    float: right;
    font-size: 17px;
    height: 25px;
    line-height: 22px;
    position: relative;
    right: -25px;
    text-align: center;
    top: 0;
    width: 25px;
}

.infobox .content {
    margin: 15px 15px 15px 15px;
}

.departure-iw {
    overflow-x: hidden;
}

.timetable-stop-departures {
    display: block;
    width: 276px;
}

.timetable-stop-departures-detail {
    padding: 10px;
    background: #E0344E;
}

.timetable-stop-departures-detail i {
    top: 4px;
    color: #fff;
    font-size: 20px;
}

.timetable-stop-departures-detail .col-xs-10 {
    padding: 5px 30px 5px 0;
}

.timetable-stop-departures-title {
    padding: 0 !important;
    color: #FFF;
    text-align: left !important;
    font-size: 1.5em !important;
    margin: 0;
    line-height: 1em;
}

.timetable-stop-departures-header {
    padding: 5px 0;
    background: #E0344E;
    border-top: 1px solid #1ab3aa;
    border-bottom: 1px solid #1ab3aa;
}

.timetable-stop-departures-header p {
    min-height: 30px !important;
    color: #FFF;
}

.timetable-stop-departures-header .timetable-stop-departures-name {
    border-left: 1px solid #1ab3aa;
    border-right: 1px solid #1ab3aa;
}

.timetable-stop-departures-results {
    text-align: center;
}

.timetable-stop-departures-result {
    display: block;
    padding: 5px 0;
    background: #FFF;
    border-top: 1px solid #CCC;
    color: #333;
    font-size: 0.85em;
}

.timetable-stop-departures-result.odd {
    background: #FBE5E8;
}

.timetable-stop-departures-result:first-child {
    border: none;
}

.timetable-stop-departures-result:hover {
    color: #333;
}

.timetable-stop-departures-service {
    margin: 0;
    padding: 4px 5px;
    font-weight: 700;
    font-size: 1.4em;
    text-align: center;
}

.timetable-stop-departures-name {
    margin: 0 0 0 -30px;
    padding: 4px 15px;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    font-size: 1.4em;
    font-weight: 700;
    text-align: left;
}

.timetable-stop-departures-mins {
    margin: 0 0 0 -30px;
    text-align: center;
    padding: 4px 0;
    font-size: 1.4em;
    font-weight: 700;
}

.timetable-stop-departures-mins .block {
    display: block;
    line-height: 1em;
}

.timetable-departures-loader {
    display: block;
    width: 276px;
    background: #FFF;
}

.timetable-departures-loader img {
    display: block;
    margin: 0 auto;
    padding: 40px 0;
}

/*=======================================
WELSH
=======================================*/
.welsh .journey-planner-bar .journey-planner-bar-favourites {
    padding: 18px 7px;
}

.welsh .journey-planner-bar h4 {
    padding: 28px 10px;
}

/*.welsh .bus-stop-search .submit_wrap { margin-top:47px; }*/
.welsh .favourites-panel-option:last-child {
    font-size: 0.85em;
}

.nopic-margin {
    margin-bottom: 60px;
}

.street-view-toggle {
    color: #FFF;
    font-weight: 500;
    background: rgba(0, 0, 0, 0) url("../images/icon-street-view.png") no-repeat scroll 16px 0;
    padding: 3px 0 2px 55px;
    text-decoration: none;
    position: relative;
}

.street-view-toggle::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 55px;
  height: 1px;
  background-color: #e0334d;
  transition: all 0.3s ease;
  z-index: 1;
}
.street-view-toggle::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 1px;
  background-color: #fff;
  transition: all 0.3s ease;
}

.street-view-toggle:hover,
.street-view-toggle:focus {
    text-decoration: none;
    color: #fff;
}
.street-view-toggle:hover::after,
.street-view-toggle:focus::after {
  width: 100%;
}

.street-view-toggle span {}

.close-street-button {
    display: none;
}

.bus-stop-finder-map .close-street-button {
    display: block;
    padding: 5px 12px;
    margin-right: 20px;
    font-size: 30px;
    line-height: 1em;
    background-color: #e0334d;
    color: #FFF;
    border: none;
}

/*=======================================
CALL CENTRE
=======================================*/
.call-centre .home-banner {
    background: #e0334d;
}

.call-centre .stop-naptan {
    display: block !important;
}

/*=======================================
WIDGET BOX
=======================================*/
.widget-box {
    margin: 15px 0;
    padding: 15px;
    background: #A6E0C4;
    border: 1px dotted #e0334d;
}

/*=======================================
TIMETABLE LOADER
=======================================*/
.timetable-loader {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.6);
    display: none;
}

.timetable-loader img {
    position: absolute;
    top: 10%;
    right: 0;
    left: 0;
    display: block;
    margin: 0 auto;
}

/*=======================================
OTHER
=======================================*/
.complaints-procedure-link {
    margin-top: 55px;
}

.complaints-procedure-link a {
    font-weight: 700;
    color: #e0334d;
}

.complaints-procedure-link a:hover, .complaints-procedure-link a:focus {
    text-decoration: underline;
}

/*=======================================
SIDEBAR JOURNEY PLANNER
=======================================*/
.sidebar-journeyplanner {
    max-width: 410px;
    padding: 15px;
    margin-bottom: 30px;
    border-radius: 3px;
    background: #E3E3E3;
}

.sidebar-journeyplanner i {
    display: none;
}

.sidebar-journeyplanner label {
    color: #555;
}

.sidebar-journeyplanner button {
    width: 100%;
    font-size: 16px;
}

.sidebar-journeyplanner input[type="text"],
.sidebar-journeyplanner input[type="password"],
.sidebar-journeyplanner input[type="email"],
.sidebar-journeyplanner input[type="number"],
.sidebar-journeyplanner textarea,
.sidebar-journeyplanner select {
    font-size: 0.8em;
}

/*=======================================
TWEET FEED
=======================================*/
.tweet-feed-wrap {
    margin: 30px 0 40px 0px;
}

.tweet-feed-wrap a.tweet-feed-user {
    color: #888888;
    font-weight: normal !important;
}

.tweet-feed-wrap h2 {
    padding-bottom: 2px;
}

.tweet-feed-wrap h2 i {
    margin-right: 10px;
    font-size: 23px;
    color: #C31D36;
}

.tweet-feed-wrap h2 span {
    margin-right: 10px;
    font-weight: 500;
    color: #C31D36;
    text-decoration: underline;
    font-size: 20px;
}

.tweet-feed {
    max-height: 350px;
    overflow-y: auto;
}

.tweet-feed-wrap hr {
    margin-top: 0px;
    margin-bottom: 10px !important;
}

.tweet-feed-item {
    display: block;
    padding: 0px 0 25px;
    position: relative;
}

.tweet-feed-item::before {
    content: "";
    background: #888;
    width: 30px;
    height: 1px;
    position: absolute;
    top: -12px;
    left: 0;
}

.tweet-feed-item:first-child::before {
    border: none;
}

.tweet-feed-title, .tweet-feed-text {
    display: block;
}

.tweet-feed-item a {
    color: #e0334d;
}

.tweet-feed-item a:hover {
    text-decoration: underline;
}

.tweet-feed-title {
    margin: 0 0 0em 0;
}

.tweet-feed-time {
    font-weight: 400;
}

/*=======================================
PAGINATION
=======================================*/
.pagination {
    float: right;
}

.pagination>li:last-child>a,
.pagination>li:last-child>span,
.pagination>li>a,
.pagination>li>span {
    border-radius: 0 !important;
    border: 2px solid transparent;
    color: #2E3638;
    font-weight: 700;
    font-size: 15px;
    padding: 10px 18px;
}

.pagination li:first-child a,
.pagination li:last-child a,
.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover {
    background: #1ab3aa;
    color: #2E3638;
    border: 2px solid #1ab3aa;
}

.pagination>li>a:focus,
.pagination>li>a:hover,
.pagination>li>span:focus,
.pagination>li>span:hover {
    background: transparent;
    color: #2E3638;
    border: 2px solid #2E3638;
}

/*=======================================
BANNER ALERT
=======================================*/
.alert-bar {
    background: #1ab3aa;
    padding: 11px 0;
    display: none;
}

.alert-bar:hover {
    background: rgba(26, 179, 170, 0.6);
}

.alert-bar a {
    color: #2E3638;
    line-height: 20px;
    font-weight: 700;
    display: block;
}

.alert-bar.dark {
    background: #fecd20;
}

.alert-bar.dark:hover {
    background: rgba(255, 205, 32, 0.6);
}

.alert-bar.dark a {
    line-height: 20px;
    color: #333;
    font-weight: 500;
    display: block;
}

.alert-bar i.icon-info {
    color: #333;
    font-size: 20px;
    padding: 0 15px 0 0;
}

.view-map::before {
    content: "P ";
    font-family: "icomoon";
}

.view-fares::before {
    content: "£ ";
}

.view-map::before, .view-fares::before {
    font-size: 16px;
    color: #2E3638;
}

.view-map::before, .view-fares::before {
    position: absolute;
    top: 0px;
}

.view-map::before {
    left: 18px;
}

.view-fares::before {
    left: 22px;
}

.view-map, .view-fares {
    position: relative;
}

/*=======================================
CYCLE JOURNEY PLANNER
=======================================*/
.cycle-journey {
    list-style: none;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    margin: 0;
    padding: 10px;
    background: #FFF;
}

.cycle-journey li {
    margin: 0 0 5px 0;
}

/* =====================================
STOP WATCH
======================================== */
.call-bar {
    text-align: right;
    background: #333;
}

.callbar-button {
    display: inline-block;
    padding: 10px 25px;
    text-align: center;
    font-weight: 400;
    color: #FFF;
    -webkit-transition: background 0.3s;
    -moz-transition: background 0.3s;
    transition: background 0.3s;
}

#button-start {
    background: #1ab3aa;
}

#button-start:hover, #button-start:focus {
    background: rgba(26, 179, 170, 0.8);
    color: #FFF;
}

#button-stop {
    background: #e0334d;
}

#button-stop:hover, #button-stop:focus {
    background: rgba(224, 51, 77, 0.8);
    color: #FFF;
}

.callbar-button.disabled, .callbar-button.disabled:hover, .callbar-button.disabled:focus {
    background: #777 !important;
    color: #AAA !important;
    cursor: no-drop !important;
}

.stopwatch-wrap {
    display: inline-block;
    margin-left: 20px;
    font-weight: 400;
    color: #FFF;
}

#stopwatch {
    display: inline-block;
}

/* =====================================
CONTACT CENTRE PAGE
======================================== */
.contactcentre-wrap {
    padding-top: 25%;
    overflow: hidden;
    margin-bottom: -100px;
    background-color: #ddd;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100%;
    min-height: 450px;
    position: relative;
    width: 100%;
}

.contactcentre-wrap .col-sm-10 {
    background: #fff;
}

@media (max-width:767px) {
    .contactcentre-wrap {
        padding: 0;
        background: none !important;
    }
}

/*=======================================
JOURNEY PLANNER INFO
=======================================*/
.journey-summary {
    margin: 20px 0 0;
}

.journey-info {
    margin: 20px 0 0;
    overflow: hidden;
    background: #fff;
}

.journey-info-modes {
    font-size: 1em;
    font-weight: 500;
    color: #2E3638;
    padding: 10px;
    width: 100%;
    float: left;
}

.welsh .journey-info-modes {
    font-size: 14px;
}

.journey-info-modes-title {
    float: left;
    padding-top: 6px;
    width: 33%;
}

.journey-planner-modes-wrap {
    float: left;
    width: 60%;
    text-align: center;
}

.journey-planner-bar-toggle>img {
    padding: 0 5px;
}

.journey-info-buttons {
    padding: 10px;
    width: 100%;
    float: left;
    border-top: 1px solid #666;
}

.journey-planner-bar-favourites {
    padding: 10px 0;
    width: 50%;
    text-align: center;
    float: left;
    color: #2E3638;
}

.journey-planner-bar-favourites:first-child i {
    font-size: 20px;
}

.journey-planner-bar-favourites span {
    display: block;
    font-size: 10px;
}

#del-favourite i {
    color: #ED9900;
}

.journey-date {
    background: white;
    padding: 12px 8px 8px 10px;
    font-weight: 500;
    color: #2E3638;
}

.journey-date span {
    color: #2E3638;
    font-weight: 700;
    margin-left: 2px;
}

@media (min-width:768px) {
    .journey-info-modes {
        width: 70%;
    }

    .journey-info-buttons {
        width: 30%;
        border-top: 0;
    }
    .journey-info-buttons a {
        border-left: 1px solid #666;
    }
    .journey-info-buttons a:first-of-type {
        border-left: none;
    }
    .journey-summary {
      margin: 0;
    }
    .journey-info {
        margin: 20px 0 0;
    }
}

@media (min-width:992px) {
    .journey-planner-bar-favourites span {
        font-size: 16px;
    }
    .journey-summary {
      margin-left: 53px;
    }
    .journey-date,
    .journey-info {
        margin: 20px 0 0 53px;
    }
}

/* search by oper button*/
.plansearch-oper {
    display: block;
    color: #e0334d;
    font-weight: 600;
    margin: 20px 0 0 0;
    transition: all 0.3s;
}

.plansearch-oper:after {
    content: '\3e';
    font-family: icomoon;
    vertical-align: middle;
    display: inline-block;
    transform: translateX(10px);
    transition: all 0.3s;
}

.plansearch-oper:hover,
.plansearch-oper:focus {
    color: #e0334d;
}

.plansearch-oper:hover:after,
.plansearch-oper:focus:after {
    color: #e0334d;
    transform: translateX(20px);
}

/* SEARCH OPS */
.searchoperhold {
    width: 100%;
    background: #eee;
    margin: 20px 0 0 0;
    display: none;
    z-index: 5000;
}

@media (min-width: 768px) {
    .searchoperhold {
        min-height: 365px;
    }

    .searchoperhold:after {
        content: '';
        width: 10px;
        display: block;
        position: absolute;
        top: 0;
        height: 100%;
    }
}

.searchActive {
    display: block;
}

@media (min-width: 768px) {
    .searchoperhold {
        margin: 0;
        position: absolute;
        top: 40px;
        right: -310px;
        width: 310px;
        background: #CDCDCD;
    }
}

@media (min-width: 992px) {
    .searchoperhold {
        position: absolute;
        top: 40px;
        right: -390px;
        width: 390px;
    }
}

.searchoper-closetab {
    width: 60px;
    height: 60px;
    display: inline-block;
    position: relative;
    left: 100%;
    margin: 0 0 0 -60px;
    transition: all 0.3s;
}

@media (min-width: 768px) {
    .searchoper-closetab {
        position: absolute;
        left: initial;
        right: 0;
        margin: initial;
        z-index: 999;
    }
}

.searchoper-closetab:after {
    content: '\d7';
    font-family: icomoon;
    font-size: 37px;
    color: #30383b;
    vertical-align: middle;
    font-weight: 100;
    position: absolute;
    top: 3px;
    left: 11px;
}

.searchoper-closetab:hover:after,
.searchoper-closetab:focus:after {
    color: #e0334d;
}

.searchoper {
    padding: 15px 30px;
    position: relative;
}

@media (min-width: 992px) {
    .searchoper {
        padding: 25px 50px;
        position: relative;
    }
}

.searchoper-title {
    color: #333;
    margin: 0 0 5px 0;
}

.searchoper-form form .field_wrap {
    margin: 0 0 20px 0;
}

.searchoper-hr {
    border-color: #ccc;
    margin: 20px 0;
}

.searchoper-operselect {
    display: block;
    font-size: 16px;
    color: #333;
    font-weight: 600;
    padding: 10px 0;
    position: relative;
    margin: 0 20px 0 0;
}

.searchoper-operselect:hover,
.searchoper-operselect:focus {
    color: #00773D;
}

.searchoper-operselect:hover:after,
.searchoper-operselect:focus:after {
    color: #00773D;
}

.searchoper-operselect:after {
    content: '\d7';
    font-family: icomoon;
    font-size: 20px;
    color: #333;
    vertical-align: middle;
    display: inline-block;
    font-weight: 100;
    position: absolute;
    right: -20px;
    top: 50%;
    margin: -10px 0 0 0;
}

.searchoperhold.results_page {
    top: 0px;
    right: -485px;
}

@media (min-width: 768px) {
    .searchoper {
        min-height: 365px;
    }
}

/* SIDEBAR JOURNEY PLANNER */
.journey-planner-sidebar-wrap .plansearch-oper {
    color: #fff;
}

.journey-planner-sidebar-wrap .plansearch-oper:after {
    color: #fff;
}

.journey-planner-sidebar-wrap .plansearch-oper:hover,
.journey-planner-sidebar-wrap .plansearch-oper:focus {
    color: #fff;
}

.journey-planner-sidebar-wrap .plansearch-oper:hover:after,
.journey-planner-sidebar-wrap .plansearch-oper:focus:after {
    color: #fff;
    transform: translateX(20px);
}

.journey-planner-sidebar-wrap .searchoper-hr {
    border-color: #ccc;
    margin: 20px 0;
}

@media (min-width: 768px) {
    .journey-planner-sidebar-wrap .searchoperhold {
        right: -295px;
        top: 0px;
    }
}

@media (min-width: 992px) {
    .journey-planner-sidebar-wrap .searchoperhold {
        right: -375px;
    }
}

/* SIDEBAR JOURNEY PLANNER */
/* BLOG JOURNEY PLANNER */
.sidebar-journeyplanner {
    position: relative;
}

.sidebar-journeyplanner .plansearch-oper {
    color: #e0334d;
}

.sidebar-journeyplanner .plansearch-oper:after {
    color: #e0334d;
}

.sidebar-journeyplanner .plansearch-oper:hover,
.sidebar-journeyplanner .plansearch-oper:focus {
    color: #1ab3aa;
}

.sidebar-journeyplanner .plansearch-oper:hover:after,
.sidebar-journeyplanner .plansearch-oper:focus:after {
    color: #1ab3aa;
    transform: translateX(20px);
}

.sidebar-journeyplanner .searchoper-hr {
    border-color: #ccc;
    margin: 20px 0;
}

.sidebar-journeyplanner .searchoper-closetab {
    width: 60px;
    height: 60px;
    background: #f89e16;
    display: inline-block;
    position: relative;
    left: 100%;
    margin: 0 0 0 -60px;
}

@media (min-width: 1200px) {
    .sidebar-journeyplanner .searchoper-closetab {
        position: absolute;
        top: 0;
        left: initial;
        right: -60px;
        margin: initial;
    }
}

@media (min-width: 768px) {
    .sidebar-journeyplanner .searchoperhold {
        top: initial;
        left: initial;
        right: initial;
        position: relative;
        width: 100%;
        margin: 20px 0 0 0;
    }
}

@media (min-width: 1200px) {
    .sidebar-journeyplanner .searchoperhold {
        position: absolute;
        top: 40px;
        right: -500px;
        width: 500px;
        background: #eee;
    }
}

/* BLOG JOURNEY PLANNER */
.customer-panel {}

.customer-panel p, .customer-panel-checkboxes label {
    display: inline-block;
    vertical-align: top;
    width: 49%;
}

.customer-panel p label {
    width: 90%;
}

.customer-panel p input, .customer-panel p textarea {
    width: 90%;
}

.customer-panel p textarea {
    height: 200px;
}

.customer-panel .submit_wrap {
    margin-top: 10px;
}

.customer-panel-checkboxes {
    padding: 15px;
    margin: 0 0 10px;
    width: 96%;
    background: #CCC;
}

.customer-panel-checkboxes label {
    width: 24%;
    margin-right: 0;
}

.customer-panel-checkboxes label.main-label {
    display: block;
    width: 100%;
    margin-right: 0;
    font-weight: bold;
}

.customer-panel-checkboxes input[type="checkbox"] {
    position: unset;
    margin-left: 0;
}

.customer-panel-checkboxes .indent, .customer-panel-checkboxes p {
    display: none;
}

.usercontent a.disruptions-back {
    color: white;
}

/*=======================================
ACCESSIBILITY
=======================================*/
body.yellow {
    background: #FFC926;
}

.yellow label {
    color: #000;
    font-weight: 600;
}

.yellow .page-wrap {
    background: #FFC926;
}

.yellow .accessibility-wrap {
    background: #FFC926;
}

.yellow .accessibility-title, .yellow .contrast-title {
    color: #000;
    font-weight: 600;
}

.yellow .accessibility-small, .yellow .accessibility-medium, .yellow .accessibility-large {
    color: #000;
}

.yellow .topbar {
    background: #000;
}

.yellow .auxmenu ul li a, .yellow .topbar-phone {
    color: #FFC926;
}

.yellow .topbar-account a {
    background: #FFC926;
    color: #000;
}

.yellow .auxmenu ul li a:hover, .yellow .auxmenu ul li a.selected {
    background: #FFC926;
    color: #000;
}

.yellow .mainmenu li a {
    color: #FFC926;
}

.yellow .header {
    background: #000;
}

.yellow .mainmenu-wrap {
    background: #000;
}

.yellow .mainmenu li a {
    color: #FFC926;
    font-weight: 600;
}

.yellow .mainmenu li a.selected, .yellow .mainmenu li a:hover {
    background: #FFC926;
    color: #000;
    font-weight: 600;
}

.yellow .footer-lower .underlinks li a {
    color: #FFC926;
}

.yellow .submenu li.selected>a:before {
    background: #000;
}

.yellow .submenu li a:hover:before {
    background: #000;
}

.yellow .submenu li a:before {
    background: #000;
}

.yellow .featureboxes {
    background: #000;
}

.yellow .home-twitter {
    background: #000;
}

.yellow .twitter-title {
    color: #FFC926;
}

.yellow .app-banner {
    background: #000;
}

.yellow .app-banner-title {
    color: #FFC926;
}

.yellow .app-banner-download-bar {
    background: #FFC926;
}

.yellow .page-banner {
    background: #FFC926;
}

.yellow .page-banner .h1 {
    color: #000;
}

.yellow .home-link {
    color: #FFC926;
    border-bottom: 1px solid #FFC926;
;
}

.yellow .disruptions-bar {
    background: #FFC926;
}

.yellow .disruptions-all, .yellow .disruptions-edit {
    color: #000;
}

.yellow .disruptions-all:hover, .yellow .disruptions-edit:hover {
    background: #000;
    color: #FFC926;
}

.yellow .disruptions-edit:hover i {
    color: #FFC926;
}

.yellow .disruptions-edit i {
    color: #000;
}

.yellow .footer-upper {
    background: #000;
    border-bottom: 1px solid #FFC926;
}

.yellow .footer-upper .underlinks li a {
    color: #FFC926;
}

.yellow .footer-upper .underlinks li a:hover {
    background: #FFC926;
    color: #000;
}

.yellow .footer-lower {
    background: #000;
}

.yellow .footer-lower hr {
    border-top-color: #FFC926;
}

.yellow .footer-lower .footer-spindogs {
    color: #FFC926;
}

.yellow .footer-lower .footer-spindogs a {
    color: #FFC926;
}

.yellow .footer-lower .footer-calls {
    color: #FFC926;
}

.yellow .newsletter {
    background: #000;
}

.yellow .newsletter-title, .yellow .newsletter-subtitle {
    color: #FFC926;
}

.yellow .newsletter button {
    background: #FFC926;
    color: #000;
}

.yellow .servicebox {
    background: #FFC926;
    color: #000;
}

.yellow .timetable-service label, .yellow .timetable-location label {
    color: #FFC926;
}

.yellow .timetable-search-divider {
    border-bottom: 2px dashed #000;
}

.yellow .page-wrap.grey {
    background: #FFC926;
}

.yellow input[type="text"], .yellow input[type="password"], .yellow input[type="number"], .yellow textarea, .yellow select {
    background: #FFC926;
    color: #000;
    border: 1px solid #000;
}

.yellow .journey-planner-form .picker__input {
    background: #FFC926 !important;
    color: #000 !important;
}

.yellow .picker__box {
    background: #FFC926 !important;
    display: table-cell;
    vertical-align: middle;
}

.yellow .timetable-search-divider-title {
    background: #FFC926;
    color: #000;
}

.yellow .timetable-service, .yellow .timetable-location {
    background: #000;
    color: #FFC926;
}

.yellow .timetable-results-list li a {
    background: #000;
    color: #FFC926;
}

.yellow .timetable-summary {
    background: #000;
    color: #FFC926;
}

.yellow .timetable-summary-options a:hover {
    background: #FFC926;
    color: #000;
}

.yellow .timetable-summary-options .changedirection, .yellow .timetable-summary-options .favourite-timetable {
    color: #FFC926;
}

.yellow .timetable .tab-pane {
    background: #000;
    color: #FFC926;
}

.yellow .timetable-wrap {
    border-top: 1px solid #000;
    background: #000;
}

.yellow tbody tr.alternate {
    background: #FFC926;
    color: #000;
}

.yellow tbody tr.alternate th {
    background: #FFC926;
}

.yellow tbody tr.alternate:hover {
    background: #FFC926 !important;
    color: #000;
}

.yellow .sticky-wrap th {
    background: #000;
}

.yellow tbody tr.alternate .timetable-toggle {
    color: #000;
}

.yellow tbody tr .timetable-toggle {
    color: #FFC926;
}

.yellow .timetable.tabbar ul li.selected a, .yellow .timetable.tabbar ul li a:hover {
    background: #000;
    color: #FFC926;
}

.yellow .timetable.tabbar ul li a {
    background: #FFC926;
    color: #000;
}

.yellow .timetable-summary-service {
    background: #FFC926;
    color: #000;
}

.yellow .timetable-summary-route li:before {
    background: #FFC926;
    color: #000;
}

.yellow .bus-stop-result {
    background: #000;
    color: #FFC926;
}

.yellow .bus-stop-detail-title {
    color: #000;
}

.yellow .bus-stop-detail i {
    color: #000;
}

.yellow .bus-stop-results-header {
    color: #000;
}

.yellow #bus-stop-finder label {
    font-size: 14px;
}

.yellow .featurebox {
    background: #FFC926;
    color: #000;
    font-weight: 600;
}

.yellow .featurebox-more {
    color: #000;
}

.yellow .featurebox:hover .featurebox-more {
    color: #000;
}

.yellow .featurebox-body {
    border-bottom: 3px solid #000;
}

.yellow .featurebox:hover .featurebox-body {
    border-bottom: 3px solid #000;
}

.yellow .tweets:before {
    border-bottom: 20px solid #FFC926;
}

.yellow .tweets-tweet-title {
    color: #000;
}

.yellow .tweets-tweet {
    background: #FFC926;
}

.yellow .tweets-tweet-body {
    color: #000;
}

.yellow .tweets-tweet-body a {
    color: #000;
    font-weight: 600;
}

.yellow .home-banner .tab-pane {
    background: #000;
}

.yellow .home-banner .tabbar ul li.selected a {
    background: #000;
    color: #FFC926;
}

.yellow .home-banner .tabbar ul li a {
    color: #000;
    background: #FFC926;
}

.yellow .input_wrap.radiobuttons>label {
    color: #FFC926;
}

.yellow .usercontent p {
    color: #000;
}

/* .yellow .page-banner { background: #000; } */
.yellow .news-header {
    border-bottom: 1px solid #000;
}

.yellow .news-header-date {
    color: #000;
}

.yellow .business-item {
    background: #000;
}

.yellow .business-item-title {
    color: #FFC926;
}

.yellow .business-item-body {
    color: #FFC926;
}

.yellow .business-item-subtitle {
    color: #FFC926;
}

.yellow .business-item:hover .business-item-more {
    background: #000;
}

.yellow .news-item {
    background: #000;
    color: #FFC926;
}

.yellow .news-item-date {
    color: #FFC926;
}

.yellow .bus-stop-finder-sidebar {
    background: #FFC926;
}

.yellow .bus-stop-title {
    color: #000;
}

.yellow .bus-stop-search button {
    background: #000;
    color: #FFC926;
}

.yellow table {
    background: #000;
    color: #FFC926;
}

.yellow tbody tr:hover {
    background: #000;
    color: #FFC926;
}

.yellow tbody tr.alternate-sub, .yellow tbody tr.alternate-sub:hover {
    background: #000;
    color: #FFC926;
}

.yellow tbody tr.normal-sub, .yellow tbody tr.normal-sub:hover {
    background: #000;
    color: #FFC926;
}

.yellow tbody th {
    border-right: 1px solid #FFC926;
}

.yellow tbody tr.alternate th {
    border-right: 1px solid #000;
}

.yellow .disruptions-options li:first-child {
    border-right: 0;
}

.yellow .journey-planner-sidebar-choices {
    background: #000;
}

.yellow .choices-title {
    color: #FFC926;
}

.yellow .choices-startend, .yellow .choices-startend:focus {
    background: #000;
    color: #FFC926;
}

.yellow .choices-journey:hover, .yellow .choices-journey.selected {}

.yellow .choices-journey {
    background: #000;
    color: #FFC926;
}

.yellow .choices-help {
    color: #FFC926;
}

.yellow .choices-prevnext:hover {
    background: #FFC926;
    color: #000;
}

.yellow .choices-prevnext, .yellow .choices-prevnext:focus {
    color: #FFC926;
}

.yellow .choices-phone {
    color: #FFC926;
}

.yellow .journey-leg {
    border-left: 3px solid #000;
}

.yellow .journey-leg.alternate {
    border-left: 3px dotted #000;
}

.yellow .journey-leg .journey-leg-panel {
    background: #000;
    color: #FFC926;
}

.yellow .journey-leg-summary a {
    color: #FFC926;
}

.yellow .journey-leg .journey-leg-heading {
    border-bottom: 1px dashed #FFC926;
}

.yellow .journey-leg .journey-leg-footer {
    background: #000;
    color: #FFC926;
    border-top: 1px dashed;
}

.yellow .journey-leg .tabbar ul li a {
    color: #FFC926;
}

.yellow .journey-leg .tabbar ul li a:hover {
    background: #FFC926;
    color: #000;
}

.yellow .button.alternate, .button.alternate:focus {
    background: #FFC926;
    color: #000;
}

.yellow .journey-planner-bar {
    background: #000;
}

.yellow .journey-planner-bar h4 {
    color: #FFC926;
}

.yellow .journey-planner-bar .journey-planner-bar-favourites {
    color: #FFC926;
}

.yellow .journey-planner-bar .journey-planner-bar-favourites:hover {
    background: #FFC926;
    color: #000;
}

.yellow .journey-planner-sidebar-update {
    background: #000;
}

.yellow .journey-planner-sidebar-update .journey-advanced {
    color: #FFC926;
    border-top: 0;
    border-bottom: 0;
}

.yellow .journey-planner-sidebar-update .journey-advanced:hover {
    background: #000;
}

.yellow .journey-summary {
    background: #000;
}

.yellow .journey-summary-from, .yellow .journey-summary-to, .yellow .journey-summary-view, .yellow .journey-summary-view i {
    color: #FFC926;
}

.yellow .new-journey, .yellow .new-journey a {
    color: #FFC926;
}

.yellow .journey-leg .journey-leg-badge {
    background: #000;
    color: #FFC926;
    border: 2px solid #000;
}

.yellow .journey-leg .tabbar ul li.active a {
    background: #FFC926;
    color: #000;
}

.yellow .journey-leg .tabbar ul li a:hover {
    color: #000 !important;
}

.yellow .choices-loader {
    background: #000;
}

.yellow .timetable-results-list li a:hover {
    background: #FFC926;
    color: #000;
}

.yellow .bus-stop-prevnext, .yellow .bus-stop-refresh {
    background: #000;
    color: #FFC926;
}

.yellow .bus-stop-refresh {
    border-top: 1px solid #FFC926;
}

.yellow .bus-stop-plan {
    border-bottom: 1px solid #000;
}

.yellow .bus-stop-plan-title {
    color: #000;
}

.yellow .bus-stop-add-favourites i {
    color: #000;
}

.yellow .modal-header {
    background: #FFC926;
}

.yellow .modal-title {
    color: #000;
}

.yellow .modal-body {
    background: #000;
}

.yellow .modal-body label {
    color: #FFC926;
}

.yellow .modal-register {
    color: #FFC926;
}

.yellow .modal-register a {
    color: #FFC926;
}

.yellow .favourites-sidebar {
    background: #000;
}

.yellow .account-menu li a.selected {
    background: #FFC926;
    color: #000;
    font-weight: 600;
}

.yellow .account-menu li a {
    border-bottom: 1px solid #FFC926;
}

.yellow .account-menu li a:hover {
    background: #FFC926;
    color: #000;
}

.yellow .favourites-panel {
    background: #000;
}

.yellow .favourites-panel-from, .yellow .favourites-panel-to {
    background: #000;
    color: #FFC926;
}

.yellow .favourites-panel-option:first-child {
    color: #FFC926;
}

.yellow .favourites-panel-option:first-child:hover {
    background: #FFC926;
    color: #000;
}

.yellow .favourites-panel-option:hover {
    background: #FFC926;
    color: #000;
}

.yellow .favourites-panel-option {
    color: #FFC926;
}

.yellow .favourites-section-title {
    font-weight: 600;
}

.yellow .hidden-alerts {
    background: #000;
    color: #FFC926;
}

.yellow .hidden-alerts label {
    color: #FFC926;
}

.yellow .account-menu>li:first-child a {
    border-top: 1px solid #FFC926;
}

.yellow ::-webkit-input-placeholder {
    color: #000;
}

.yellow :-moz-placeholder {
    color: #000;
}

.yellow ::-moz-placeholder {
    color: #000;
}

.yellow :-ms-input-placeholder {
    color: #000;
}

.yellow .featurebox-header {
    color: #FFC926;
}

.yellow .featurebox-content {
    color: #FFC926;
}

.yellow .timetable-text {
    color: #000;
}

.yellow .archive-item {
    border-color: #000;
}

.yellow .usercontent a {
    color: #000;
    text-decoration: underline;
}

.yellow .disruptions-back,
.yellow .back-button.__news {
    background: #000;
}

.yellow .sidebar-journeyplanner {
    background: #000;
}

.yellow .sidebar-journeyplanner label {
    color: #FFC926;
}

.yellow .usercontent table p {
    color: #FFC926;
}

.yellow .journey-leg .journey-leg-title {
    color: #FFC926;
}

.yellow .journey-info {
    background: #000;
}

.yellow .journey-info-modes {
    color: #FFC926;
}

.yellow .journey-planner-bar-favourites {
    color: #FFC926;
}

/* Header social media icons */
.headersocial {
    padding: 0 12px;
    color: white;
}

.headersocial a {
    padding: 10px !important;
    display: inline-block !important;
}

@media(min-width:768px) {
    .headersocial {
        border-left: 1px solid white;
        border-right: 2px solid white;
    }
}

/* Mobile timetable */
.stoplistheader {
    background: #19ada4;
    color: white;
    padding: 15px;
    font-weight: 400;
    position: relative;
}

.stoplistheader {
    margin-left: 48px;
}

.stoplistheader-icon {
    background: #1cbbb2;
    position: absolute;
    left: -48px;
    top: 0;
    width: 48px;
    height: 100%;
}

.stoplistheader-icon::before {
    font-family: 'icomoon';
    content: '\e903';
    position: absolute;
    font-size: 20px;
    top: 49%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.stoplistheader-icon.__active::before {
    cursor: pointer;
    font-family: 'icomoon';
    content: '\e901';
    position: absolute;
    font-size: 20px;
    top: 49%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.stoptr {
    width: 100%;
}

/*
.stoplist {
    max-height: 600px;
    overflow-y:scroll;
}*/
.stoplist-item {
    position: relative;
    padding: 18px 40px 17px 15px;
    list-style: none;
    font-weight: 500;
    border-bottom: 1px solid #eee;
    -webkit-transition: all 200ms;
    transition: all 200ms;
    cursor: pointer;
}

.stoplist-item:hover {
    background: #e0334d;
    color: white;
}

.stoplist-item:hover::after {
    color: white;
}

.stoplist-item::after {
    content: '\3e';
    font-family: 'icomoon';
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.stoplisttimes {
    padding: 18px 18px 18px 8px;
    overflow: auto;
    display: none;
}

.mobiletimetable.__alt .stoplist-item {
    padding: 18px 17px 0 15px;
    border: none;
}

.mobiletimetable.__alt .stoplistheader-icon::before {
    content: '\e904';
}

.mobiletimetable.__alt .stoplist-item::after {
    display: none;
}

.mobiletimetable.__alt .stoplist-item:hover {
    background: none;
    color: #333;
}

.mobiletimetable.__alt .stoplistwrapper:nth-child(even) {
    background: #f0f0f0;
}

.stoplisttimes.__alt {
    display: block;
    overflow-x: scroll;
    width: 100%;
    padding: 0;
    padding: 5px 0 0 5px;
}

.stoplisttimes.__alt .stoplisttimes-wrap {
    float: left;
    margin-right: -30000px;
}

.stoplisttimes.__alt .stoplisttimes-time {
    width: auto;
    padding: 7px 12px;
    text-align: center;
    border-right: 1px solid #e1e1e1;
    float: left;
    display: inline-block;
}

.stoplisttimes-time {
    width: 20%;
    float: left;
    color: #333;
    font-weight: 200;
    padding: 10px;
}

@media(max-width:779px) {
    .routevia {
        font-size: 1em !important;
        font-weight: 200 !important;
        padding: 10px 20px !important;
    }

    .routevia strong {
        display: block;
        font-size: 1.2em;
        padding: 5px 0;
    }
}

.__nopadding {
    padding: 0;
}

/* Info popup */
.infopopupoverlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    z-index: 7;
    display: none;
}

.infopopup {
    position: fixed;
    background: white;
    -webkit-box-shadow: 0px 0px 41px -10px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 0px 41px -10px rgba(0, 0, 0, 0.75);
    z-index: 8;
    width: 90%;
    left: 50%;
    top: -2000px;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    padding: 40px 25px 25px 25px;
    text-align: center;
    -webkit-transition: all 150ms;
    -o-transition: all 150ms;
    transition: all 150ms;
}

.infopopup.__active {
    top: 50%;
}

.infopopupoverlay.__active {
    display: block;
}

@media(min-width:772px) {

    .infopopupoverlay,
    .infopopup {
        display: none;
    }
}

.infopopup-title {
    padding-bottom: 20px;
    font-weight: 600;
    border-bottom: 1px solid #eee;
}

.infopopup-detail {
    margin: 0;
    color: #999;
    font-weight: 400;
    line-height: 1.4;
    margin: 20px 0;
}

.infopopup-detail span {
    display: block;
    margin-bottom: 6px;
}

.infopopup-viewall {
    color: black;
    padding: 15px;
    border: 1px solid #999;
    display: block;
    font-weight: 400;
    margin-bottom: 10px;
    -webkit-transition: all 200ms;
    -o-transition: all 200ms;
    transition: all 200ms;
}

.infopopup-viewall:hover {
    color: white;
    background: #999;
}

.infopopup-viewall i {
    color: #FFC42E;
    margin-right: 10px;
}

/* skyscraper */
.skyscraper.__planner {
    margin: 20px 0 0 0;
}

@media (min-width: 768px) {
    .skyscraper.__planner {
        margin-left: 53px;
    }
}

/*New Modal Block for Home*/
.modalblock {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background: rgba(0, 0, 0, 0.6);
    z-index: 9999;
    transition: all 2.3s;
}

.modalblock.__active {
    display: block;
}

.modalblock-container {
    background-color: #fff;
    margin: 120px auto;
    width: 95%;
    position: relative;
}

@media (min-width: 768px) {
    .modalblock-container {
        width: 95%;
    }
}

@media (min-width: 992px) {
    .modalblock-container {
        width: 80%;
    }
}

@media (min-width: 1200px) {
    .modalblock-container {
        width: 50%;
    }
}

.modalblock-content {
    padding: 60px;
}

.modalblock-content p {
    width: 65%;
    color: #30383b;
    font-size: 16px;
}

.modalblock .mapblock {
    height: 430px;
    margin: 40px 0;
}

.modalblock-title {
    font-weight: 900;
    color: #30383b;
    font-size: 32px;
    padding: 0 0 20px 0;
}

.modalblock-buttons {
    text-align: right;
}

.modalblock-close {
    display: inline-block;
    background: #e3e3e3;
    color: #e23049;
    font-size: 20px;
    font-weight: 500;
    padding: 10px 40px;
}

.modalblock-close:hover {
    cursor: pointer;
}

.modalblock-submit {
    display: inline-block;
    background: #2cb3ab;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    padding: 10px 40px;
    margin: 0 0 0 20px;
}

.modalblock-submit:hover {
    cursor: pointer;
}

.journey-planner-form .checkboxes label {
    position: relative;
    display: block;
    margin: 15px 0 !important;
    padding-left: 30px;
    cursor: pointer;
    color: #2E3638;
    width: 100% !important;
    font-weight: 500;
    padding-top: 2px;
}

.journey-planner-form .checkboxes label::before {
    content: "";
    border: 1px solid #C7C7C7;
    border-radius: 3px;
    background: #EAEAEA;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 2px;
    left: 0;
    color: transparent;
}

.journey-planner-form .checkboxes label::after {
    display: inline-block;
    text-transform: none;
    vertical-align: middle;
    font-family: 'icomoon';
    font-size: 22px;
    color: #000;
    font-weight: normal;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    speak: none;
    transition: all 0.3s;
    content: "\2f";
    font-size: 12px;
    color: $font-color;
    font-weight: 900;
    color: white;
    position: absolute;
    top: 3px;
    left: 4px;
    opacity: 0;
}

.journey-planner-form .checkboxes label.__checked::before {
    background: #2cb3ab;
    border-color: #2cb3ab;
}

.journey-planner-form .checkboxes label.__checked::after {
    opacity: 1;
}

.journey-planner-form .checkboxes input[type="checkbox"] {
    position: absolute;
    left: -9999px;
    margin: 0;
}

.buttonnew {
  position: relative;
  padding: 16px 28px;
  background-color: transparent;
}

.buttonnew span {
  font-weight: 700;
  color: #2E3638;
  position: relative;
  z-index: 2;
}
.buttonnew:hover::after {
  width: 100%;
}

.buttonnew::before {
  content: '';
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1EBDAE;
}
.buttonnew::after {
  content: '';
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #64D8CD;
  transition: all 0.3s ease;
}

.buttonaltnew {
  position: relative;
  display: inline-block;
  border: 2px solid #2E3638;
  padding: 17px 25px;
  background-color: #fff;
  color: #2E3638;
  font-weight: 700;
}
.buttonaltnew:hover,
.buttonaltnew:focus {
  border: 2px solid #C31D36;
  color: #C31D36;
}
.buttonaltnew:hover i,
.buttonaltnew:focus i {
  color: #C31D36;
}
.buttonaltnew i {
  color: #2E3638;
}

/* Newsletter 2021 AA */

.newscta {
  width:100%;
  padding: 30px 15px;
  height:auto;
  background: coral;
  display:flex;
  justify-content: center;
  align-items:center;
  position: relative;
  margin-bottom: -100px;
}

@media(min-width:768px){
  .newscta {
    height:344px;
    padding:0;
  }
}

.newscta-image {
  position:absolute;
  top: 0;
  left: 0;
  width:100%;
  height:100%;
}

.newscta-image img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.newscta-imageleft {
  position: absolute;
  bottom: 0;
  left: 10%;
  display: none;
}
.newscta-imageleft img {
  width: auto;
}
.newscta-imageright {
  position: absolute;
  bottom: 0;
  right: 10%;
  display: none;
}
.newscta-imageright img {
  width: auto;
}
@media(min-width:992px){
  .newscta-imageleft {
    left: 1%;
    display: block;
  }
  .newscta-imageright {
    right: 1%;
    display: block;
  }
}
@media(min-width:1300px){
  .newscta-imageleft {
    left: 5%;
  }
  .newscta-imageright {
    right: 5%;
  }
}
@media(min-width:1500px){
  .newscta-imageleft {
    left: 10%;
  }
  .newscta-imageright {
    right: 10%;
  }
}

.newscta-box {
  width:100%;
  background-color:#E3D7EC;
  padding: 30px 15px;
  text-align:center;
  z-index: 1;
}
@media(min-width:768px){
  .newscta-box{
    width:596px;
    height:213px;
    padding: 43px 42px 38px 42px;
  }
}
.newscta-box h2 {
  color: #2E3638;
  line-height:34px;
  font-weight:700;
  font-size:21px;
  margin-bottom:30px
}
@media(min-width:768px){
  .newscta-box h2 {
    font-size: 24px;
  }
}

.newscta-box .buttonnew {
  display: inline-block;
}

.banner-fflecsi {
    cursor: pointer;
    display: block;
    width: 100%;
    max-width: 697px;
    height: auto;
    background-color:#2E3638;
    margin-bottom:20px;
    margin-right:0px;
    margin-top:15px;
    position: relative;
    padding: 30px 15px;
}
.banner-fflecsi-col-text {
    color: #fff;
    font-size: 36px;
    font-weight: 400;
}
.banner-fflecsi-col-body {
    color: #fff;
    font-size: 16px;
    margin: 0;
}
.banner-fflecsi-col-body span {
    color: #FFCB31;
}

.banner-fflecsi-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

@media(min-width: 768px){
  .banner-fflecsi {
    display: flex;
    margin-top: 0;
    padding: 0;
  }
  .banner-fflecsi-col {
    padding: 30px;
  }
  .banner-fflecsi-col:first-of-type {
    width: 40%;
  }
  .banner-fflecsi-col-text {
    font-size: 36px;
    margin: 0;
  }
  .banner-fflecsi-col:last-of-type {
    width: 60%;
  }
}
@media(min-width: 992px){
  .banner-fflecsi-col-text {
    font-size: 43px;
  }
  .banner-fflecsi {
    margin-left:53px;
    width: auto;
  }
  .banner-fflecsi-col-body {
      font-size: 18px;
  }
}
@media(min-width: 1200px){
  .banner-fflecsi-col-text {
    font-size: 49px;
  }
}
