.fcf-vue-routes-container {
  *zoom: 1; }

.fcf-vue-routes-container:after {
  content: '';
  display: table;
  clear: both; }

.fcf-vue-routes-container .fcf-vue-routes-list {
  margin: 0;
  padding: 0;
  list-style: none; }

.fcf-vue-routes-container {
  position: relative; }
  .fcf-vue-routes-container .fcf-vue-routes-sidebar {
    width: 100%;
    max-height: 300px;
    overflow-y: auto; }
  .fcf-vue-routes-container .fcf-vue-routes-list-title {
    margin: 0;
    padding: 10px;
    font-weight: 700;
    font-size: 18px;
    background-color: #f1f2f4;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1; }
    .fcf-vue-routes-container .fcf-vue-routes-list-title.buy-miles {
      background: #a7f3cc; }
    .fcf-vue-routes-container .fcf-vue-routes-list-title.alt {
      background: #25a8d4;
      color: #fff; }
    .fcf-vue-routes-container .fcf-vue-routes-list-title.small {
      padding: 5px 10px;
      font-size: 16px;
      font-weight: 400; }
    .fcf-vue-routes-container .fcf-vue-routes-list-title.top {
      border-top: none; }
    .fcf-vue-routes-container .fcf-vue-routes-list-title .suffix {
      float: right;
      font-size: .8em;
      font-weight: 400;
      line-height: 1.8;
      color: #e3e6e8; }
  .fcf-vue-routes-container .fcf-vue-routes-list {
    position: relative;
    z-index: 10;
    background-color: #fff; }
    .fcf-vue-routes-container .fcf-vue-routes-list li {
      display: block;
      width: 100%;
      border-top: 1px solid #e1e1e1; }
      .fcf-vue-routes-container .fcf-vue-routes-list li:first-child {
        border-top: none; }
    .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] {
      display: none; }
    .fcf-vue-routes-container .fcf-vue-routes-list label {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative;
      margin-bottom: 0;
      padding: 10px;
      font-weight: 400;
      font-size: 18px;
      color: #535353;
      cursor: pointer;
      -webkit-transition: background-color .2s, color .2s;
      transition: background-color .2s, color .2s; }
      .fcf-vue-routes-container .fcf-vue-routes-list label small {
        display: block;
        margin-top: 5px;
        font-size: 65%;
        color: #535353;
        text-transform: uppercase;
        -webkit-transition: color .2s;
        transition: color .2s; }
      .fcf-vue-routes-container .fcf-vue-routes-list label .partner {
        color: #25a8d4; }
      .fcf-vue-routes-container .fcf-vue-routes-list label:hover {
        background-color: #25a8d4;
        color: #fff; }
        .fcf-vue-routes-container .fcf-vue-routes-list label:hover .partner {
          color: #a7f3cc; }
        .fcf-vue-routes-container .fcf-vue-routes-list label:hover small,
        .fcf-vue-routes-container .fcf-vue-routes-list label:hover .fcf-vue-routes-label.miles small {
          color: #fff; }
          .fcf-vue-routes-container .fcf-vue-routes-list label:hover small a,
          .fcf-vue-routes-container .fcf-vue-routes-list label:hover .fcf-vue-routes-label.miles small a {
            color: #a7f3cc; }
      .fcf-vue-routes-container .fcf-vue-routes-list label.buy-miles {
        background-color: #a7f3cc; }
        .fcf-vue-routes-container .fcf-vue-routes-list label.buy-miles:hover {
          background-color: #25a8d4;
          color: #fff; }
          .fcf-vue-routes-container .fcf-vue-routes-list label.buy-miles:hover .fa-dollar {
            color: #fff; }
    .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label {
      color: #25a8d4;
      background-color: transparent; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label .fcf-vue-routes-label .fcficon-check {
        display: inline-block;
        margin-left: 5px;
        vertical-align: middle;
        font-size: .7em; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label .fcf-vue-routes-label.points small, .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label .fcf-vue-routes-label.miles small {
        color: #1e1e1e; }
        .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label .fcf-vue-routes-label.points small a, .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label .fcf-vue-routes-label.miles small a {
          color: #25a8d4; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label .fcf-vue-routes-label.points .fcficon, .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label .fcf-vue-routes-label.miles .fcficon {
        font-size: 0.8em;
        margin-left: 0.5em; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label:hover {
        color: #25a8d4;
        background-color: transparent; }
        .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label:hover .fcf-vue-routes-label.miles small,
        .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label:hover .fcf-vue-routes-details small {
          color: #1e1e1e !important; }
        .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label:hover .fcf-vue-routes-label.miles a,
        .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"]:checked + label:hover .fcf-vue-routes-details a {
          color: #25a8d4; }
    .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.expired {
      color: #c84243; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.expired:hover {
        background: transparent;
        color: #c84243; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.expired .fcf-vue-routes-origin {
        padding: 3px;
        color: #fff;
        background-color: #c84243;
        border-radius: 2px; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.expired .fcf-vue-routes-label span,
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.expired .fcf-vue-routes-fare span {
        position: relative;
        display: inline-block; }
        .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.expired .fcf-vue-routes-label span:before,
        .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.expired .fcf-vue-routes-fare span:before {
          content: '';
          position: absolute;
          display: block;
          top: 50%;
          left: 0;
          width: 100%;
          border-top: 2px solid rgba(200, 66, 67, 0.5); }
    .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.disabled {
      color: white;
      display: none; }
      .fcf-vue-routes-container .fcf-vue-routes-list input[type="radio"] + label.disabled:hover {
        color: white;
        background-color: transparent; }
    .fcf-vue-routes-container .fcf-vue-routes-list .more {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative;
      margin-bottom: 0;
      padding: 10px;
      font-weight: 600;
      font-size: 18px;
      color: #25a8d4;
      cursor: pointer;
      text-decoration: none;
      -webkit-transition: all .2s;
      transition: all .2s;
      background-color: #f1f2f4; }
      .fcf-vue-routes-container .fcf-vue-routes-list .more:hover {
        background-color: #25a8d4;
        color: #fff; }
      .fcf-vue-routes-container .fcf-vue-routes-list .more .fa {
        position: absolute;
        right: 15px;
        top: 50%;
        font-size: 1.5em;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%); }
    .fcf-vue-routes-container .fcf-vue-routes-list .fcf-vue-routes-label {
      position: relative; }
    .fcf-vue-routes-container .fcf-vue-routes-list .fcf-vue-routes-details {
      margin-left: auto;
      text-align: right;
      line-height: 1.2; }
    .fcf-vue-routes-container .fcf-vue-routes-list .fcf-vue-routes-origin {
      display: inline-block;
      max-width: 120px;
      line-height: 1.3;
      margin-top: .5em;
      font-size: .55em;
      text-transform: uppercase; }
    .fcf-vue-routes-container .fcf-vue-routes-list .fcf-vue-routes-fare {
      display: block;
      font-size: .6em;
      text-transform: uppercase; }
  @media screen and (min-width: 768px) {
    .fcf-vue-routes-container {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
      .fcf-vue-routes-container.reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: inherit !important;
        -webkit-align-items: inherit !important;
            -ms-flex-align: inherit !important;
                align-items: inherit !important; }
      .fcf-vue-routes-container .fcf-vue-map-container + .fcf-vue-routes-sidebar {
        width: 40%; } }
