.fcf-vue-booking .fcf-vue-booking-steps {
  margin: 0;
  padding: 0;
  list-style: none; }

.fcf-vue-savings-booking .fcf-booking-meta {
  margin-bottom: 20px; }
  .fcf-vue-savings-booking .fcf-booking-meta h5 {
    margin-bottom: 0;
    font-weight: 500; }
  .fcf-vue-savings-booking .fcf-booking-meta .fcf-booking-phone {
    margin-top: 5px;
    font-size: 0.8em;
    font-weight: 500;
    text-transform: uppercase;
    color: #25a8d4; }

.fcf-vue-savings-booking .fcf-booking-intro {
  text-align: center; }
  .fcf-vue-savings-booking .fcf-booking-intro > div {
    padding: 15px; }
  .fcf-vue-savings-booking .fcf-booking-intro h4 {
    margin: 0; }
  .fcf-vue-savings-booking .fcf-booking-intro h5 {
    font-size: .8em;
    font-weight: 500; }
  .fcf-vue-savings-booking .fcf-booking-intro small {
    display: inline-block;
    font-size: 0.7em;
    text-transform: uppercase; }

.fcf-vue-booking {
  text-align: center; }
  .fcf-vue-booking .fcf-vue-booking-content-wrapper + .fl-button,
  .fcf-vue-booking .fcf-vue-booking-accordion-wrapper + .fl-button {
    margin: 30px 0 15px; }
  .fcf-vue-booking .fcf-vue-booking-tabs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 1em -15px 0;
    padding: 15px 15px 0;
    overflow: hidden; }
    .fcf-vue-booking .fcf-vue-booking-tabs .fcf-vue-booking-tab {
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      width: 100%;
      border: none;
      border-top: 2px solid transparent;
      font-family: "Roboto", serif;
      font-weight: 500;
      background-color: transparent;
      border-radius: 0;
      color: #5e6977;
      -webkit-transition: all .1s;
      transition: all .1s; }
      .fcf-vue-booking .fcf-vue-booking-tabs .fcf-vue-booking-tab:focus, .fcf-vue-booking .fcf-vue-booking-tabs .fcf-vue-booking-tab:active {
        top: 0; }
      .fcf-vue-booking .fcf-vue-booking-tabs .fcf-vue-booking-tab:hover {
        color: #25a8d4; }
      .fcf-vue-booking .fcf-vue-booking-tabs .fcf-vue-booking-tab.fcf-active, .fcf-vue-booking .fcf-vue-booking-tabs .fcf-vue-booking-tab:hover.fcf-active {
        color: #25a8d4;
        background-color: #fff;
        border-top-color: #25a8d4;
        -webkit-box-shadow: 0 0 10px rgba(17, 17, 17, 0.2);
                box-shadow: 0 0 10px rgba(17, 17, 17, 0.2); }
  .fcf-vue-booking .fcf-vue-booking-content-wrapper {
    background-color: #fff;
    text-align: left;
    padding: 20px;
    font-size: 0.8em;
    -webkit-box-shadow: 0 0 10px rgba(17, 17, 17, 0.2);
            box-shadow: 0 0 10px rgba(17, 17, 17, 0.2); }
  .fcf-vue-booking .fcf-vue-booking-accordion-wrapper {
    background-color: #fff;
    text-align: left;
    font-size: 0.8em;
    -webkit-box-shadow: 0 0 10px rgba(17, 17, 17, 0.2);
            box-shadow: 0 0 10px rgba(17, 17, 17, 0.2); }
  .fcf-vue-booking .fcf-vue-booking-accordion + .fcf-vue-booking-accordion {
    border-top: 1px solid #e1e1e1; }
  .fcf-vue-booking .fcf-vue-booking-accordion .fcf-vue-booking-accordion-toggle {
    position: relative;
    display: block;
    width: 100%;
    padding: 10px 50px 10px 10px;
    font-weight: 500;
    text-align: left;
    border: none;
    color: #5e6977;
    background-color: transparent; }
    .fcf-vue-booking .fcf-vue-booking-accordion .fcf-vue-booking-accordion-toggle:focus, .fcf-vue-booking .fcf-vue-booking-accordion .fcf-vue-booking-accordion-toggle:active {
      top: 0; }
    .fcf-vue-booking .fcf-vue-booking-accordion .fcf-vue-booking-accordion-toggle.fcf-active {
      color: #25a8d4; }
    .fcf-vue-booking .fcf-vue-booking-accordion .fcf-vue-booking-accordion-toggle .fcficon {
      position: absolute;
      top: 50%;
      right: 10px;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
  .fcf-vue-booking .fcf-vue-booking-accordion .fcf-vue-booking-content {
    padding: 20px; }
  .fcf-vue-booking .fcf-vue-booking-steps {
    counter-reset: steps; }
    .fcf-vue-booking .fcf-vue-booking-steps li {
      position: relative; }
      .fcf-vue-booking .fcf-vue-booking-steps li:nth-child(even) {
        background-color: transparent !important; }
      .fcf-vue-booking .fcf-vue-booking-steps li + li {
        border-top: 1px solid #e1e1e1; }
    .fcf-vue-booking .fcf-vue-booking-steps .fcf-vue-booking-step-headline-wrapper {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      padding: 10px 0; }
      .fcf-vue-booking .fcf-vue-booking-steps .fcf-vue-booking-step-headline-wrapper:before {
        counter-increment: steps;
        content: counter(steps);
        display: block;
        width: 2em;
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0;
        margin-right: 10px;
        line-height: 2em;
        text-align: center;
        color: #fff;
        background-color: #25a8d4;
        border-radius: 2em; }
      .fcf-vue-booking .fcf-vue-booking-steps .fcf-vue-booking-step-headline-wrapper .fl-button {
        margin-left: auto;
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0; }
    .fcf-vue-booking .fcf-vue-booking-steps .fcf-vue-booking-step-headline {
      font-size: 1em;
      font-weight: 500;
      margin: 0; }
    .fcf-vue-booking .fcf-vue-booking-steps .fcf-vue-booking-step-time {
      display: inline-block;
      font-weight: 400;
      font-size: 1em;
      color: #898989; }
    .fcf-vue-booking .fcf-vue-booking-steps .fcf-vue-booking-step-details {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin: 20px auto 30px; }
  .fcf-vue-booking .fcf-vue-booking-substep {
    padding-bottom: 15px;
    text-align: center;
    background-color: #fafafa;
    border: 1px solid rgba(17, 17, 17, 0.05); }
    .fcf-vue-booking .fcf-vue-booking-substep .fcf-vue-booking-substep-headline,
    .fcf-vue-booking .fcf-vue-booking-substep .fcf-vue-booking-substep-actions,
    .fcf-vue-booking .fcf-vue-booking-substep .fcf-vue-booking-substep-details {
      margin: 0;
      padding: 15px 15px 0; }
    .fcf-vue-booking .fcf-vue-booking-substep .picture {
      position: relative; }
      .fcf-vue-booking .fcf-vue-booking-substep .picture a {
        display: block; }
      .fcf-vue-booking .fcf-vue-booking-substep .picture img {
        width: 100%; }
      .fcf-vue-booking .fcf-vue-booking-substep .picture .expand {
        position: absolute;
        bottom: 10px;
        right: 10px;
        z-index: 10;
        display: inline-block;
        padding: 10px;
        font-size: 18px;
        line-height: 1;
        color: #fff;
        background-color: rgba(17, 17, 17, 0.5);
        border-radius: 3px; }
    .fcf-vue-booking .fcf-vue-booking-substep .fcf-vue-booking-substep-questions {
      padding: 15px;
      text-align: left; }
      .fcf-vue-booking .fcf-vue-booking-substep .fcf-vue-booking-substep-questions .fl-button-full {
        width: 50%;
        margin: 0 auto; }

.fcf-vue-booking-slideshow-container {
  position: relative; }
  .fcf-vue-booking-slideshow-container .fcf-vue-booking-pagination {
    text-align: center;
    margin-top: 15px;
    font-size: 1px; }
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-pagination .pagination-step {
      display: inline-block;
      margin: 0;
      padding: 0;
      width: 12px;
      height: 12px;
      border: 2px solid #25a8d4;
      background-color: transparent;
      border-radius: 50%; }
      .fcf-vue-booking-slideshow-container .fcf-vue-booking-pagination .pagination-step + .pagination-step {
        margin-left: 5px; }
      .fcf-vue-booking-slideshow-container .fcf-vue-booking-pagination .pagination-step:active, .fcf-vue-booking-slideshow-container .fcf-vue-booking-pagination .pagination-step:focus {
        top: 0; }
      .fcf-vue-booking-slideshow-container .fcf-vue-booking-pagination .pagination-step.active {
        background-color: #25a8d4; }
  .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow-nav-container {
    width: 50%;
    float: left;
    padding: 10px 0; }
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow-nav-container.prev .fcf-vue-booking-nav {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow-nav-container.next {
      text-align: right;
      float: right; }
      .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow-nav-container.next .fcf-vue-booking-nav {
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
            -ms-flex-pack: end;
                justify-content: flex-end; }
  .fcf-vue-booking-slideshow-container .fcf-vue-booking-nav {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0;
    padding: 0;
    border: none;
    color: #25a8d4;
    background: transparent; }
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-nav .btn-label {
      text-transform: uppercase; }
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-nav .fcficon {
      font-size: 2em; }
  @media screen and (min-width: 768px) {
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow-nav-container {
      width: 100%;
      max-width: 50px;
      float: none;
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow-nav-container.next {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
            -ms-flex-order: 3;
                order: 3; }
      .fcf-vue-booking-slideshow-container .fcf-vue-booking-slideshow-nav-container.prev {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
    .fcf-vue-booking-slideshow-container .slide-container {
      width: 100%;
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2; }
    .fcf-vue-booking-slideshow-container .fcf-vue-booking-nav {
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      height: 100%; }
      .fcf-vue-booking-slideshow-container .fcf-vue-booking-nav .btn-label {
        display: none; } }

.fcf-vue-booking-comparison {
  font-family: "Roboto", serif;
  text-align: center; }
  .fcf-vue-booking-comparison .table {
    margin-top: 1em;
    text-align: left;
    -webkit-box-shadow: 0 0 10px rgba(17, 17, 17, 0.2);
            box-shadow: 0 0 10px rgba(17, 17, 17, 0.2); }
    .fcf-vue-booking-comparison .table td.topic {
      width: 20%;
      vertical-align: middle;
      text-align: center; }
    .fcf-vue-booking-comparison .table td.online,
    .fcf-vue-booking-comparison .table td.phone {
      width: 40%; }
    .fcf-vue-booking-comparison .table.mobile tr.topic td {
      text-align: center;
      background-color: #1e1e1e;
      color: #fff; }
    .fcf-vue-booking-comparison .table.mobile td.topic-label {
      width: 30px;
      background-color: #fafafa;
      vertical-align: middle; }
      .fcf-vue-booking-comparison .table.mobile td.topic-label span {
        display: block;
        text-align: center;
        font-weight: 700;
        line-height: 1;
        font-size: 0.8em;
        text-transform: uppercase; }
    .fcf-vue-booking-comparison .table.mobile td.text {
      width: 100%; }
  .fcf-vue-booking-comparison thead > tr {
    border: none; }
    .fcf-vue-booking-comparison thead > tr > th {
      text-align: center;
      border: none;
      border-bottom: none;
      color: #fff;
      background-color: #1e1e1e; }
      .fcf-vue-booking-comparison thead > tr > th.topic {
        color: #fff;
        background-color: #1e1e1e; }
  .fcf-vue-booking-comparison tbody > tr > td,
  .fcf-vue-booking-comparison tfoot > tr > td {
    padding: 20px;
    background-color: #fff;
    border: 1px solid #e9e9e9;
    font-size: 0.8em; }
  .fcf-vue-booking-comparison .topic {
    font-weight: 500;
    background-color: #fafafa; }
  .fcf-vue-booking-comparison .fl-button strong {
    display: block;
    margin-bottom: 5px;
    font-size: 1.2em;
    font-weight: 500; }
