/* Scss Document */
/* Imports */
/* Reset */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  font-weight: normal; }

/* HTML5 display-role reset for older browsers */
body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* Core */
/* Paper */
/* Tube lines */
/* Other lines */
/* Themes */
/* Font */
@font-face {
  font-family: johnston100-regular;
  src: url("../fonts/EOT/Johnston100W03-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/WOFF2/Johnston100W03-Regular.woff2") format("woff2"), url("../fonts/WOFF/Johnston100W03-Regular.woff") format("woff"), url("../fonts/TTF/Johnston100W03-Regular.ttf") format("truetype"), url("../fonts/SVG/Johnston100W03-Regular.svg#svgFontName") format("svg");
  /* Legacy iOS */ }
@font-face {
  font-family: johnston100-medium;
  src: url("../fonts/EOT/Johnston100W03-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/WOFF2/Johnston100W03-Medium.woff2") format("woff2"), url("../fonts/WOFF/Johnston100W03-Medium.woff") format("woff"), url("../fonts/TTF/Johnston100W03-Medium.ttf") format("truetype"), url("../fonts/SVG/Johnston100W03-Medium.svg#svgFontName") format("svg");
  /* Legacy iOS */ }
@font-face {
  font-family: johnston100-light;
  src: url("../fonts/EOT/Johnston100W03-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/WOFF2/Johnston100W03-Light.woff2") format("woff2"), url("../fonts/WOFF/Johnston100W03-Light.woff") format("woff"), url("../fonts/TTF/Johnston100W03-Light.ttf") format("truetype"), url("../fonts/SVG/Johnston100W03-Light.svg#svgFontName") format("svg");
  /* Legacy iOS */ }
/* Container */
/* .tfl-linestatus formally .tfl-status */
.tfl-linestatus {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 65.2%;
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
  color: #03071c;
  /* added from ? */
  font-family: Arial, Helvetica, sans-serif;
  font-stretch: normal;
  font-style: normal;
  font-variant-caps: normal;
  font-variant-ligatures: normal;
  font-variant-numeric: normal;
  font-weight: normal;
  line-height: 1;
  vertical-align: baseline;
  /* Night service - Header */
  /* Night service - All other lines */
  /* Closed service - All lines */ }
  .tfl-linestatus.tfl-deck-default {
    background: #0019a8; }
  .tfl-linestatus.tfl-deck-night .tfl-header {
    background: #15152e; }
  .tfl-linestatus.tfl-deck-night .tfl-card-overallstatus .tfl-goodservice {
    background: #15152e; }
  .tfl-linestatus.tfl-deck-closed .tfl-card-overallstatus .tfl-goodservice-all, .tfl-linestatus.tfl-deck-closed .tfl-card-overallstatus .tfl-goodservice-list {
    background: #637282; }

.tfl-linestatus {
  /* tfl-linestatus encapsulated */
  /* bakerloo */
  /* piccadilly */
  /* central */
  /* hammersmith */
  /* jubilee */
  /* victoria */
  /* circle */
  /* metropolitan */
  /* waterloo */
  /* district */
  /* northern */
  /* london-overground */
  /* dlr */
  /* tram */
  /* tfl-rail */
  /* Typography */
  /* Container */
  /* new to cater for dynamic structure - primary is stuck to top and uses only what is necessary */
  /* new to cater for dynamic structure - secondary is on middle and uses space available */
  /* new to cater for dynamic structure - tertiary is stuck to bottom and uses only what is necessary */
  /* tfl-linestatus encapsulated */
  /* adaption of structure goodservice elements */
  /* Cards */
  /* Component - Title */
  /* Component - Data */
  /* Component - Header */
  /* Icons -  Header */
  /* Icons - serverity */
  /* Icons - ticker */
  /* Icons - direction */
  /* Icons - Night Tube owl .mov */
  /* Animate */
  /* Pulse */
  /* Flash */
  /* Carousel Severity */
  /* Carousel Header */
  /* Carousel Cards */
  /* Carousel Dots */
  /* Carousel Other */ }
  .tfl-linestatus .tfl-bakerloo.tfl-card::before, .tfl-linestatus .tfl-bakerloo .tfl-map-line {
    background: #b26300; }
  .tfl-linestatus .tfl-piccadilly.tfl-card::before, .tfl-linestatus .tfl-piccadilly .tfl-map-line {
    background: #0019a8; }
  .tfl-linestatus .tfl-central.tfl-card::before, .tfl-linestatus .tfl-central .tfl-map-line {
    background: #dc241f; }
  .tfl-linestatus .tfl-hammersmith-city.tfl-card::before, .tfl-linestatus .tfl-hammersmith-city .tfl-map-line {
    background: #f589a6; }
  .tfl-linestatus .tfl-jubilee.tfl-card::before, .tfl-linestatus .tfl-jubilee .tfl-map-line {
    background: #838d93; }
  .tfl-linestatus .tfl-victoria.tfl-card::before, .tfl-linestatus .tfl-victoria .tfl-map-line {
    background: #039be5; }
  .tfl-linestatus .tfl-circle.tfl-card::before, .tfl-linestatus .tfl-circle .tfl-map-line {
    background: #ffc80a; }
  .tfl-linestatus .tfl-metropolitan.tfl-card::before, .tfl-linestatus .tfl-metropolitan .tfl-map-line {
    background: #9b0058; }
  .tfl-linestatus .tfl-waterloo-city.tfl-card::before, .tfl-linestatus .tfl-waterloo-city .tfl-map-line {
    background: #76d0bd; }
  .tfl-linestatus .tfl-district.tfl-card::before, .tfl-linestatus .tfl-district .tfl-map-line {
    background: #007d32; }
  .tfl-linestatus .tfl-northern.tfl-card::before, .tfl-linestatus .tfl-northern .tfl-map-line {
    background: black; }
  .tfl-linestatus .tfl-london-overground.tfl-card::before, .tfl-linestatus .tfl-london-overground .tfl-map-line {
    background: #e86a10; }
  .tfl-linestatus .tfl-dlr.tfl-card::before, .tfl-linestatus .tfl-dlr .tfl-map-line {
    background: #00afad; }
  .tfl-linestatus .tfl-tram.tfl-card::before, .tfl-linestatus .tfl-tram .tfl-map-line {
    background: #66cc00; }
  .tfl-linestatus .tfl-tfl-rail.tfl-card::before, .tfl-linestatus .tfl-tfl-rail .tfl-map-line {
    background: #0019a8; }
  .tfl-linestatus h1 {
    font-size: 10.5em;
    font-family: johnston100-medium, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-weight: normal;
    line-height: 0.952em;
    color: white;
    margin: 0; }
  .tfl-linestatus h2 {
    font-size: 3em;
    font-family: johnston100-regular, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-weight: normal;
    margin: 0; }
  .tfl-linestatus h3 {
    font-size: 3.6em;
    font-family: johnston100-medium, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-weight: normal;
    margin: 0; }
  .tfl-linestatus h4 {
    font-size: 3em;
    font-family: johnston100-regular, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-weight: normal;
    margin: 0; }
  .tfl-linestatus p {
    font-size: 2.4em;
    font-family: johnston100-light, "Helvetica Neue", Helvetica, Arial, "sans-serif"; }
  .tfl-linestatus a {
    font-family: johnston100-medium, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    color: #03071c;
    text-decoration: none;
    cursor: pointer; }
  .tfl-linestatus .tfl-font-medium {
    font-family: johnston100-medium, "Helvetica Neue", Helvetica, Arial, "sans-serif"; }
  .tfl-linestatus .tfl-cardpack-primary {
    display: block;
    background: white; }
  .tfl-linestatus .tfl-cardpack-secondary {
    display: flex;
    flex: 1 0 auto; }
  .tfl-linestatus .tfl-cardpack-tertiary {
    display: block;
    background: white; }
  .tfl-linestatus .tfl-cardgroup-status {
    display: flex;
    flex: 1;
    flex-direction: inherit;
    max-height: inherit; }
  .tfl-linestatus .tfl-cardgroup-lineinfo {
    display: flex;
    flex: 1;
    flex-direction: column;
    max-height: inherit; }
  .tfl-linestatus .tfl-cardgroup-lineinfo {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    font-weight: normal; }
  .tfl-linestatus .tfl-card-overallstatus {
    display: flex;
    flex: 1;
    flex-direction: inherit;
    max-height: inherit; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice {
      background: #0019a8;
      flex: 1;
      padding: 2em 2em 2em 5em;
      justify-content: center;
      display: flex;
      flex-direction: column; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice h3 {
      color: white;
      line-height: 1.2em; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice-medium h3 {
      font-size: 5.7em; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice-small h3 {
      font-size: 3em; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice-all {
      flex: 1;
      flex-direction: column;
      justify-content: flex-start;
      padding: 5em;
      flex-flow: column nowrap;
      background: #0019a8; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice-list {
      flex: 0;
      flex-direction: inherit;
      padding: 0em 5em 5em 5em;
      background: #0019a8;
      margin-top: -0.1em; }
      .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice-list ul {
        padding: 0;
        margin: 0;
        color: white;
        list-style: none; }
      .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice-list li {
        font-size: 3.6em;
        font-family: johnston100-medium;
        font-weight: normal;
        margin-bottom: 0.139em; }
      .tfl-linestatus .tfl-card-overallstatus .tfl-goodservice-list li:last-child {
        margin-bottom: 0em; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-closedservice {
      background: #0019a8;
      flex: 1;
      padding: 2em 2em 2em 5em;
      justify-content: center;
      display: flex;
      flex-direction: column; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-closedservice h3 {
      color: white;
      line-height: 1.2em; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-closedservice-nightservice {
      background: #15152e; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-failover-top {
      flex: 1;
      flex-direction: column;
      justify-content: flex-start;
      padding: 5em;
      flex-flow: column nowrap;
      background: #637282; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-failover-bottom {
      flex: 0;
      flex-direction: inherit;
      padding: 0em 5em 5em 5em;
      background: #637282;
      margin-top: -0.1em; }
    .tfl-linestatus .tfl-card-overallstatus .tfl-failover-top h3, .tfl-linestatus .tfl-card-overallstatus .tfl-failover-bottom h3 {
      color: white;
      line-height: 1.2em;
      font-size: 5.7em; }
  .tfl-linestatus .tfl-card-overallstatus-goodservice-all {
    flex-direction: column; }
  .tfl-linestatus .tfl-card:before {
    content: '';
    position: absolute;
    height: 100%;
    width: 3.0em; }
  .tfl-linestatus .tfl-card {
    position: relative; }
  .tfl-linestatus .tfl-card h3 {
    text-transform: lowercase; }
    .tfl-linestatus .tfl-card h3:first-letter {
      text-transform: uppercase; }
  .tfl-linestatus .tfl-card a {
    display: block;
    font-size: 2.4em; }
  .tfl-linestatus .tfl-title {
    padding: 0 2em 0 0;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    position: relative;
    padding-left: 5em;
    box-shadow: inset 0 -0.1em 0 #03071c; }
  .tfl-linestatus .tfl-title h2 {
    position: absolute;
    top: 0;
    left: 1.667em;
    background: linear-gradient(to bottom, white 70%, rgba(255, 255, 255, 0) 100%);
    z-index: 2;
    padding: 0.467em 0 0.3em 0;
    width: 42%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1; }
  .tfl-linestatus .tfl-data {
    position: relative;
    border-top: 0em solid #fff;
    padding: 1.4em 0em 1.6em 0em; }
  .tfl-linestatus .tfl-data h3 {
    font-size: 3em;
    text-align: right;
    margin: 0 0 0 50%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }
  .tfl-linestatus .tfl-data p {
    padding-top: 0.2em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: right; }
  .tfl-linestatus .tfl-title p img {
    display: inline-block;
    border: 0;
    height: 0.4em;
    padding-bottom: 0.1em; }
  .tfl-linestatus .tfl-header {
    padding: 0em 2em 0em 5em;
    color: white;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    background: #637282;
    position: relative;
    height: 5.7em; }
  .tfl-linestatus .tfl-header-ticker {
    padding: 0em 0em 0em 0em; }
  .tfl-linestatus .tfl-header h2 {
    padding: 0.4em 0em 0.5em 0;
    font-size: 3em;
    font-family: johnston100-regular;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }
  .tfl-linestatus .tfl-header-ticker h2 {
    padding: 0.4em 0em 0.5em 1.5em; }
  .tfl-linestatus .tfl-header-nightservice, .tfl-linestatus .tfl-header-nightservice .carousel-overflow-header-content {
    background: #15152e; }
  .tfl-linestatus .tfl-header-industrial-action {
    background: #bb1919; }
  .tfl-linestatus .tfl-header-icons {
    display: flex;
    flex-direction: row;
    padding-left: 2rem; }
  .tfl-linestatus .tfl-header-icons img, .tfl-linestatus .tfl-header-icons video {
    width: 4em;
    height: 4em;
    margin-top: 0.8em; }
  .tfl-linestatus .tfl-icon-container {
    display: flex;
    flex-direction: row;
    padding-left: 2rem; }
  .tfl-linestatus .tfl-icon {
    width: 4em;
    height: 4em;
    margin-top: 0.8em; }
  .tfl-linestatus .tfl-icon-nightservice {
    background: url(../images/tfl-icon-nightservice.svg) no-repeat top left;
    background-size: 100%; }
  .tfl-linestatus .tfl-icon-industrial {
    background: url(../images/tfl-icon-industrial.svg) no-repeat top left;
    background-size: 100%; }
  .tfl-linestatus .tfl-service-none {
    background: url(../images/tfl-icon-service-none.svg) no-repeat right 0.05em;
    padding: 0 1.2em 0 0;
    background-size: 0.9em;
    background: none;
    padding: 0;
    /* Hide icon */ }
  .tfl-linestatus .tfl-service-severe {
    background: url(../images/tfl-icon-service-severe.svg) no-repeat right 0.05em;
    padding: 0 1.2em 0 0;
    background-size: 0.9em;
    background: none;
    padding: 0;
    /* Hide icon */ }
  .tfl-linestatus .tfl-service-minor {
    background: url(../images/tfl-icon-service-minor.svg) no-repeat no-repeat right 0.05em;
    padding: 0 1.2em 0 0;
    background-size: 0.9em;
    background: none;
    padding: 0;
    /* Hide icon */ }
  .tfl-linestatus .tfl-service-good {
    background: url(../images/tfl-icon-service-good.svg) no-repeat no-repeat right 0.05em;
    padding: 0 1.2em 0 0;
    background-size: 0.9em;
    background: none;
    padding: 0;
    /* Hide icon */ }
  .tfl-linestatus .tfl-service-closed {
    background: url(../images/tfl-icon-service-closed.svg) no-repeat no-repeat right 0.05em;
    padding: 0 1.2em 0 0;
    background-size: 0.9em;
    background: none;
    padding: 0;
    /* Hide icon */ }
  .tfl-linestatus .tfl-service-industrial {
    padding-right: 0em !important; }
  .tfl-linestatus .tfl-service-nightservice {
    padding-right: 0em !important; }
  .tfl-linestatus .tfl-service-access {
    background: url(../images/tfl-icon-access-nostepfree.svg) no-repeat no-repeat right 0.05em;
    padding: 0 1.2em 0 0;
    background-size: 0.9em; }
  .tfl-linestatus .tfl-ticker-access-nostepfree {
    width: 1em;
    height: 1em;
    margin: 0em 0.5em 0 0.2em;
    background: url(../images/tfl-icon-access-nostepfree.svg) no-repeat top left;
    background-size: 1.0em;
    display: inline-block;
    vertical-align: top; }
  .tfl-linestatus .tfl-ticker-access-stationclosed {
    width: 1em;
    height: 1em;
    margin: 0em 0.5em 0 0.2em;
    background: url(../images/tfl-icon-access-stationclosed.svg) no-repeat top left;
    background-size: 1.0em;
    display: inline-block;
    vertical-align: top;
    /* hide */
    background: none;
    width: 0em;
    margin: 0em 0.2em 0 0em; }
  .tfl-linestatus .tfl-mode-networkrail-ticker {
    width: 1em;
    height: 1em;
    margin: 0em 0.5em 0 0em;
    background: url(../images/tfl-icon-mode-networkrail.svg) no-repeat top left;
    background-size: 1.0em;
    display: inline-block;
    vertical-align: top; }
  .tfl-linestatus .tfl-mode-buses-ticker {
    width: 1em;
    height: 1em;
    margin: 0em 0.5em 0 0em;
    background: url(../images/tfl-icon-mode-buses.svg) no-repeat top left;
    background-size: 1.0em;
    display: inline-block;
    vertical-align: top; }
  .tfl-linestatus .tfl-mode-underground-ticker {
    width: 1em;
    height: 1em;
    margin: 0em 0.5em 0 0em;
    background: url(../images/tfl-icon-mode-underground.svg) no-repeat top left;
    background-size: 1.0em;
    display: inline-block;
    vertical-align: top; }
  .tfl-linestatus .tfl-direction-single {
    background: url(../images/tfl-icon-direction-oneway.svg) top left no-repeat;
    width: 1.7em; }
  .tfl-linestatus .tfl-direction-both {
    background: url(../images/tfl-icon-direction-both.svg) top left no-repeat;
    width: 2.1em; }
  .tfl-linestatus .tfl-icon-direction {
    background-position: center;
    background-size: 100% 0.65em;
    height: 0.65em;
    display: inline-block; }
  .tfl-linestatus .tfl-icon video {
    width: 4em;
    height: 4em; }
  .tfl-linestatus .pulse {
    animation: pulse 1.5s ease-out;
    animation-iteration-count: infinite; }
@keyframes pulse {
  0% {
    opacity: 0;
    transform: scaleX(0.5); }
  50% {
    opacity: 0.5; }
  100% {
    opacity: 0;
    transform: scaleX(2.8); } }
  .tfl-linestatus .flash {
    animation: flash 2s ease-out;
    animation-fill-mode: both;
    animation-iteration-count: infinite; }
@keyframes flash {
  from,
    50%,
    to {
    opacity: 0.2; }
  25%,
    75% {
    opacity: 1; } }
  .tfl-linestatus .tfl-carousel-severity {
    width: 100%; }
  .tfl-linestatus .tfl-carousel-overflow-header {
    position: relative;
    height: 5.7em;
    background: #637282;
    color: white;
    display: flex;
    flex-direction: row; }
  .tfl-linestatus .tfl-carousel-overflow-header-blocks {
    flex-flow: wrap;
    flex-direction: row;
    width: 3em; }
  .tfl-linestatus .tfl-carousel-overflow-header h2 {
    font-size: 3em;
    font-family: johnston100-regular;
    margin: 0.4em 0 0 0.6em; }
  .tfl-linestatus .tfl-carousel-overflow-pagination-container {
    display: flex;
    flex-direction: row;
    flex-grow: 1;
    justify-content: flex-end;
    margin: 1.7em 2.1em 0 0; }
  .tfl-linestatus .tfl-carousel-overflow-pagination-container p {
    flex-shrink: 0;
    padding-left: 0.3em; }
  .tfl-linestatus .tfl-carousel-pagination {
    text-align: right;
    width: 5em; }
  .tfl-linestatus #tfl-carousel-overflow-header-blocks-0 {
    background: #637281; }
  .tfl-linestatus #tfl-carousel-overflow-header-blocks-3 .tfl-card {
    padding-top: 2.9em; }
  .tfl-linestatus #tfl-carousel-overflow-header-blocks-4 .tfl-card {
    padding-top: 2em; }
  .tfl-linestatus #tfl-carousel-overflow-header-blocks-5 .tfl-card {
    padding-top: 1.4em; }
  .tfl-linestatus #tfl-carousel-overflow-header-blocks-7 .tfl-card {
    padding-top: 0.95em; }
  .tfl-linestatus #tfl-carousel-overflow-header-blocks-8 .tfl-card {
    padding-top: 0.8em; }
  .tfl-linestatus .tfl-header-nightservice {
    background: #15152e; }
  .tfl-linestatus .tfl-carousel-overflow-cards .tfl-card .tfl-title {
    box-shadow: inset 0 0em 0 #03071c; }
  .tfl-linestatus .tfl-carousel-overflow-cards {
    box-shadow: 0 0.1em 0 #03071c; }
  .tfl-linestatus .tfl-carousel-severity-dots {
    height: 7.7em;
    position: absolute;
    top: 0.5em;
    right: 0.8em; }
  .tfl-linestatus .tfl-carousel-severity-dots .slick-dots {
    vertical-align: middle;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center; }
  .tfl-linestatus .tfl-carousel-severity-dots .slick-dots li {
    width: 0.4em;
    height: 0.4em;
    background: #c1c8d2;
    margin: 0 0 0.3em 0; }
  .tfl-linestatus .tfl-carousel-severity-dots .slick-dots li:last-child {
    margin: 0; }
  .tfl-linestatus .tfl-carousel-severity-dots li.slick-active {
    background: #03071c;
    animation: transistion 4s ease-out;
    animation-iteration-count: 1; }
@keyframes transistion {
  0% {
    background: #c1c8d2; }
  5% {
    background: #c1c8d2; }
  10% {
    background: #03071c; }
  60% {
    background: #03071c; }
  65% {
    background: #c1c8d2; }
  100% {
    background: #c1c8d2; } }
  .tfl-linestatus .tfl-carousel-severity-dots .slick-dots li button {
    display: none; }
  .tfl-linestatus .slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent; }
  .tfl-linestatus .slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0; }
  .tfl-linestatus .slick-list:focus {
    outline: none; }
  .tfl-linestatus .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }
  .tfl-linestatus .slick-slider .slick-track,
  .tfl-linestatus .slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  .tfl-linestatus .slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .tfl-linestatus .slick-track:before, .tfl-linestatus .slick-track:after {
    content: "";
    display: table; }
  .tfl-linestatus .slick-track:after {
    clear: both; }
  .tfl-linestatus .slick-loading .slick-track {
    visibility: hidden; }
  .tfl-linestatus .slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none; }
  .tfl-linestatus [dir="rtl"] .slick-slide {
    float: right; }
  .tfl-linestatus .slick-slide img {
    display: block; }
  .tfl-linestatus .slick-slide.slick-loading img {
    display: none; }
  .tfl-linestatus .slick-slide.dragging img {
    pointer-events: none; }
  .tfl-linestatus .slick-initialized .slick-slide {
    display: block; }
  .tfl-linestatus .slick-loading .slick-slide {
    visibility: hidden; }
  .tfl-linestatus .slick-vertical .slick-slide {
    display: block;
    height: auto; }
  .tfl-linestatus .slick-arrow.slick-hidden {
    display: none; }
@keyframes ticker {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    visibility: visible; }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
  .tfl-linestatus .tfl-card-tickerwrap {
    bottom: 0;
    overflow: hidden;
    background: #fff;
    padding: 1.4em 0 1.4em 0;
    padding-left: 100%; }
  .tfl-linestatus .tfl-card-tickerwrap h2 {
    font-family: johnston100-light; }
  .tfl-linestatus .tfl-ticker {
    display: inline-block;
    white-space: nowrap;
    padding-right: 100%;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-name: ticker;
    animation-name: ticker;
    -webkit-animation-duration: 25s;
    animation-duration: 25s; }
    .tfl-linestatus .tfl-ticker__item {
      display: inline-block; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-100 {
      -webkit-animation-duration: 100s;
      animation-duration: 100s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-200 {
      -webkit-animation-duration: 200s;
      animation-duration: 200s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-300 {
      -webkit-animation-duration: 300s;
      animation-duration: 300s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-400 {
      -webkit-animation-duration: 400s;
      animation-duration: 400s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-500 {
      -webkit-animation-duration: 500s;
      animation-duration: 500s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-600 {
      -webkit-animation-duration: 600s;
      animation-duration: 600s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-700 {
      -webkit-animation-duration: 700s;
      animation-duration: 700s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-800 {
      -webkit-animation-duration: 800s;
      animation-duration: 800s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-900 {
      -webkit-animation-duration: 900s;
      animation-duration: 900s; }
    .tfl-linestatus .tfl-ticker.tfl-ticker-speed-1000 {
      -webkit-animation-duration: 1000s;
      animation-duration: 1000s; }
  .tfl-linestatus .tfl-ticker-weather {
    -webkit-animation-duration: 200s;
    animation-duration: 200s; }
  .tfl-linestatus .tfl-ticker-station {
    font-family: johnston100-medium;
    padding-left: 1.0em; }

/* Responsive */
/* Large screens ESUB | Portrait */
@media only screen and (min-width: 800px) {
  .tfl-linestatus {
    font-size: 80%; } }
/* Large screens ESUB | Portrait */
@media only screen and (min-width: 900px) {
  .tfl-linestatus {
    font-size: 90%; } }
/* Large screens ESUB | Portrait */
@media only screen and (min-width: 1000px) {
  .tfl-linestatus {
    font-size: 125%; } }
/* Large screens ESUB - Landscape */
/*
@media only screen
and (min-width: 1400px) {
    .tfl-linestatus {
        font-size: 65.2%;
        flex-direction: row;
        .tfl-cardpack-primary {
            flex: 1;
            background: $core-white;
        }
        .tfl-cardpack-secondary {
            flex: 1;
        }
    }
}
*/
/* iPhone 6 - Portrait | 125% = 20px for retina */
@media only screen and (min-device-width: 375px) and (max-device-width: 667px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait) {
  .tfl-linestatus {
    font-size: 125%; } }
