/* Style CSS Copyrigth 2024 by BusX */
@font-face {
  font-family: 'SukhumvitSet-Text';
  src: url('../plugin/font/SukhumvitSet-Text.ttf');
}

:root {
  --fz-title: 28px;
  --fw-title: bold;
  --fc-title: #333333;

  --fz-subtitle: 24px;
  --fw-subtitle: bold;
  --fc-subtitle: #333333;

  --fc-green: #04CF7A;

  --theme-bus: #2663b0;
  --text-bus: #fff;

  --box-shadow-2: 0 10px 10px -10px #2663b063, 0 10px 10px -5px #2663b000;

}

body {
  font-family: 'SukhumvitSet-Text', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #333;
  background-color: #ffffff;
}

.text-color {
  color: var(--theme-bus);
}

.bg-gray {
  background-color: #ffffff;
}

.navbar {
  background-color: var(--theme-bus);

  .container {
    max-width: 1100px;
    width: 100%;
  }

  .navbar-brand {
    img {
      width: 150px;
    }
  }

  .navbar-toggler {
    border: none !important;
    color: var(--text-bus);
  }

  .nav-link {
    /* color: #000000; */
    color: var(--text-bus);
    font-size: 16px;
    font-weight: 400;
  }

  .nav-link.active,
  .nav-link.show {
    color: var(--text-bus);
    text-decoration: underline;
  }

  .nav-link:hover {
    color: #e9e9e9;
    text-decoration: underline;
  }

  .card-language {
    display: flex;
    align-items: center;
    justify-content: center;

    .btn-language {
      color: var(--text-bus);
      padding: 5px 5px;
      text-decoration: none;
      font-weight: 400;

      img {
        width: 20px;
        height: 20px;
        margin-right: 5px;
      }

      span {
        font-size: 14px;
      }
    }

    @media (max-width: 768px) {
      justify-content: flex-start
    }
  }
}

#search .box-centent {
  border-radius: 16px;
  box-shadow: var(--box-shadow-2);
  position: relative;
  z-index: 15;
}

.form-search {
  position: relative;

  .warpper-search {
    position: relative;
    background-size: cover;
    background-position: center;
    height: 50px;
    padding: 0;

    .background {
      display: contents;

      img {
        position: absolute;
        top: 0;
        width: 100%;
        /* height: 100%; */
        object-fit: fill;
        /* object-position: 100% 100%; */
        /* opacity: 0.8;
        filter: brightness(0.9); */
      }

    }

    .content {
      position: relative;
      padding: 0 0 0 0;
      top: 480px;

      .title {
        font-size: 36px;
        font-weight: bold;
        text-align: center;
        margin: 0;

        span:first-child {
          color: var(--theme-bus);
        }

        span:last-child {
          color: rgb(0 33 67 / 80%);
        }
      }

      .box-centent {
        max-width: 1100px !important;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
        padding: 30px;

        .form-search-trip {

          .card-origin,
          .card-destination,
          .card-departure,
          .card-return,
          .card-passenger {
            background-color: #fff !important;
          }
        }
      }
    }
  }

  @media (max-width: 1980px) {
    .warpper-search {
      .content {
        top: 400px;
      }
    }
  }

  @media (max-width: 1700px) {
    .warpper-search {
      .content {
        top: 350px;
      }
    }
  }

  @media (max-width: 1440px) {
    .warpper-search {
      .content {
        top: 280px;
      }
    }
  }

  @media (max-width: 1200px) {
    .warpper-search {
      height: 50px;

      .content {
        padding: 0 45px;
        top: 165px;
      }
    }
  }

  @media (max-width: 991px) {
    .warpper-search {
      height: 50px;
    }
  }

  @media (max-width: 768px) {
    .warpper-search {

      .content {
        padding: 0 10px;
        top: 150px;

        .box-centent {
          padding: 20px;
        }
      }
    }
  }

  @media (max-width: 700px) {
    .warpper-search {
      .content {
        padding: 0 10px;
        top: 130px;
      }
    }
  }

  @media (max-width: 600px) {
    .warpper-search {
      .content {
        padding: 0 10px;
        top: 100px;
      }
    }
  }

  @media (max-width: 575px) {
    .warpper-search {

      .content {
        padding: 0 10px;

        .box-centent {
          padding: 20px;
        }
      }
    }
  }

  @media (max-width: 500px) {
    .warpper-search {
      .content {
        padding: 0 10px;
        top: 80px;
      }
    }
  }

  @media (max-width: 400px) {
    .warpper-search {
      .content {
        padding: 0 10px;
        top: 60px;
      }
    }
  }

}

.our-services {
  padding-top: 670px;

  .card-our-services {
    padding-bottom: 50px;

    .card-content {
      position: relative;

      .card-menu {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 0;

        .img-menu {
          width: 90px;
          height: 100px;
          margin-bottom: 5px;

          object {
            width: 100%;
            height: 100%;
          }
        }

        .text-menu {
          text-align: center;

          strong {
            font-size: 18px;
            font-weight: bold;
            color: #333333;
          }
        }
      }

      .owl-nav.disabled {
        display: none !important;
      }

      .owl-nav {
        position: absolute;
        top: 50%;
        width: 100%;
        transform: translateY(-50%);
        display: flex;
        justify-content: space-between;
        pointer-events: none;

        .owl-next {
          margin-right: 20px;
        }

        button {
          font-size: 50px;
          pointer-events: auto;
        }
      }

      .owl-dots .owl-dot span {
        width: 40px;
        height: 5px;
        margin: 0 5px;
        background-color: #ccc;
        border-radius: 5px;
        transition: background-color 0.3s ease;
      }

      .owl-dots .owl-dot:hover {
        span {
          background-color: #7d7d7d;
        }
      }

      .owl-dots .owl-dot.active {
        span {
          background-color: #7d7d7d;
        }
      }

    }
  }

  @media (max-width: 1980px) {
    & {
      padding-top: 630px;
    }
  }

  @media (max-width: 1440px) {
    & {
      padding-top: 550px;
    }
  }

  @media (min-width: 1200px) {
    .card-content {
      padding: 0 120px;
    }
  }

  @media (min-width: 1400px) {
    .card-content {
      padding: 0 190px;
    }
  }

  @media (max-width: 768px) {
    & {
      padding-top: 600px;
    }
  }

  @media (max-width: 575px) {
    & {
      padding-top: 550px;
    }
  }

  @media (max-width: 425px) {
    & {
      padding-top: 540px;
    }
  }

}

.news-home {
  .container {
    display: flex;
    justify-content: center;
  }

  .card-news {
    width: 100%;
    max-width: 1100px;
    padding: 50px 0;

    .card-header {
      position: relative;
      text-align: center;
      margin-bottom: 50px;

      h2 {
        font-size: var(--fz-title);
        font-weight: var(--fw-title);
        color: var(--fc-title);
        margin: 0;

        &::after {
          content: "";
          position: absolute;
          display: block;
          width: 50px;
          height: 3px;
          background: #333333;
          left: 0;
          right: 0;
          bottom: -10px;
          margin: auto;
        }
      }
    }

    /* .view-all {
      a {
        text-align: end;
        display: block;
        color: var(--fc-subtitle);
        margin-top: 20px;
        text-decoration: none;
      }
    } */

    .card-content {
      a {
        text-decoration: none;

        .card-img {
          position: relative;
          overflow: hidden;
          border-radius: 10px;
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
          }
        }
      }
    }
  }
}

.news-home.bg-gray {
  background-color: #F4F4F4 !important;
}

.popular-trips {
  .card-popular-trips {
    padding: 50px 0;

    .card-header {
      display: flex;
      justify-content: center;
      position: relative;
      margin-bottom: 24px;

      .wrapper-header-trip {
        max-width: 1100px;
        width: 100%;

        h2 {
          font-size: var(--fz-title);
          color: var(--fc-title);
          margin: 0;
        }
      }
    }

    .card-content {
      display: flex;
      justify-content: center;

      .wrapper-trip {
        position: relative;
        max-width: 1100px;
        width: 100%;
        border: 1px solid #ccc;
        border-radius: 10px;
        overflow: hidden;
        transition: 0.3s;
        margin: 10px 0px;
        padding: 20px;

        .box-img {
          width: 100%;
          height: 100%;
          overflow: hidden;
          border-radius: 10px;

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
          }

          @media (max-width:768px) {
            margin-bottom: 20px;
          }
        }

        .box-departure,
        .box-arrival {
          text-align: center;

          p {
            font-size: 30px;
            font-weight: bold;
            margin: 0;
            color: #333333;
          }

          span {
            font-size: 16px;
            font-weight: 500;
            color: #333333;
          }

          @media (max-width:768px) {
            margin-bottom: 20px;
          }
        }

        .box-time-service {
          display: grid;
          text-align: center;

          i {
            font-size: 20px;
            color: #000000;
          }

          strong {
            font-size: 16px;
            font-weight: 800;
            color: #333333;
          }

          .time-unit {
            font-size: 16px;
            font-weight: 500;
            padding-top: 10px;
            color: #6c6c6c;
          }

          a {
            display: block;
            text-decoration: none;
            font-size: 14px;
            color: #6c6c6c;
            margin-top: 10px;
          }

          @media (max-width:768px) {
            margin-bottom: 20px;
          }
        }

        .box-button {
          display: grid;
          text-align: center;
          padding: 10px;

          strong {
            font-size: 32px;
            font-weight: bold;
            color: var(--fc-green);
          }

          button {
            padding: 10px 20px;
            background-color: var(--theme-bus);
            color: #ffffff;
            border: none;
            border-radius: 5px;
            font-size: 16px;
            font-weight: bold;
            margin-top: 10px;
            cursor: pointer;
            text-decoration: none;
          }

          @media (max-width:768px) {
            margin-bottom: 20px;
          }
        }

        &:hover {
          transform: scale(1.02);
        }

        @media (max-width: 575px) {
          & {
            padding: 20px 0 0 0;
          }
        }
      }

      .wrapper-trip:hover {
        background-color: #f9f9f9;
      }


    }

  }

  .fa-arrow-right,
  .fa-arrow-down {
    color: var(--theme-bus);
  }
}

.gallery {
  background-color: #F4F4F4;

  .card-gallery {
    padding: 50px 0;

    .card-header {
      display: flex;
      justify-content: center;
      position: relative;
      margin-bottom: 24px;

      .wrapper-header-gallery {
        max-width: 1100px;
        width: 100%;

        h2 {
          font-size: var(--fz-title);
          color: var(--fc-title);
          margin: 0;
        }
      }
    }

    .card-content {
      display: flex;
      justify-content: center;

      .gallery-bus {
        max-width: 1100px;
        width: 100%;

        .card-img {
          position: relative;
          width: 100%;
          height: 100%;
          overflow: hidden;
          border-radius: 10px;
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
          transition: 0.3s;

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
          }

          &:hover {
            transform: scale(1.05);
          }
        }
      }
    }
  }
}

.banner-inc {
  position: relative;

  .card-img {
    img {
      height: 380px;
      object-fit: cover;
      width: 100%;
      opacity: 0.5;
      object-position: 10% 10%;
    }
  }

  .card-text {
    position: relative;
    top: 36%;
    left: 50%;
    transform: translate(-50%, -356%);

    .text-title {
      font-size: 30px;
      font-weight: 700;
      color: #000000;
      text-align: center;
    }

    .text-link {
      text-align: center;
      font-size: 24px;
      color: #000000;

      a {
        font-size: 24px;
        color: #000000;
        text-decoration: none;
      }
    }
  }

  .card-text-nd {
    position: relative;
    top: 36%;
    left: 50%;
    transform: translate(-50%, -270%);

    .text-title {
      font-size: 30px;
      font-weight: 700;
      color: #000000;
      text-align: center;
    }

    .text-link {
      text-align: center;
      font-size: 24px;
      color: #000000;

      a {
        font-size: 24px;
        color: #000000;
        text-decoration: none;
      }
    }
  }
}

.table tbody td {
  font-size: 16px;
}

.contact-us {

  .form-check-input:checked {
    background-color: var(--theme-bus);
    border-color: var(--theme-bus);
  }

  .btn-contact {
    color: #FFFFFF;
    background-color: var(--theme-bus);
  }

  .btn-contact:hover {
    color: var(--theme-bus);
    background-color: #FFFFFF;
    border: solid 1px var(--theme-bus);
  }

  .card-contact {
    .card {
      height: 164px;
    }
  }

  .card-title {
    color: var(--fc-subtitle) !important;
    font-weight: bold;
  }

}

.news {
  display: flex;
  justify-content: center;

  .news-content {
    max-width: 1100px;
    width: 100%;
  }

  .card {
    margin-bottom: 20px;
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 0px;

    .card-img-top {
      height: 350px;
      border-radius: 5px 5px 0 0;

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 5px;
      }
    }
  }

  .detail {
    font-size: 16px;
    margin-bottom: 0px;
    color: var(--fc-title);
  }


  .paginationjs {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;

    .paginationjs-pages {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 20px;

      li {
        list-style: none;
        margin: 0 5px;
        padding: 5px 10px;
        border: 1px solid #ddd !important;
        border-radius: 5px;
        cursor: pointer;

        a {
          background-color: #fff;
          color: var(--title-color);
          text-decoration: none;
        }

        &.active {
          background-color: #fff;
          border-color: var(--theme-bus);

          a {
            color: var(--theme-bus);
            background-color: #fff !important;
          }
        }
      }
    }

    .paginationjs-prev,
    .paginationjs-next {
      margin: 0 10px;
      padding: 5px 10px;
      border: 1px solid #ddd;
      border-radius: 5px !important;
      cursor: pointer;

      a {
        color: var(--title-color);
        text-decoration: none;
      }

      &.disabled {
        cursor: not-allowed;
        opacity: 0.5;
      }
    }
  }
}

.news-detail {
  .detail-section {
    display: flex;
    justify-content: center;

    .content-detail {
      max-width: 1000px;
      width: 100%;
    }
  }

  @media only screen and (max-width: 800px) {

    p>img,
    strong>img {
      margin-left: 0px !important;
      margin-right: 0px !important;
      width: 100% !important;
      object-fit: cover;
      height: auto !important;
    }
  }
}

.contact-us {
  display: flex;
  justify-content: center;

  .content {
    max-width: 1100px;
    width: 100%;
  }
}

.timetables {

  table {
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
    width: 90%;
    margin-top: 10px;
  }

  table thead th {
    font-size: 16px;
    color: var(--fc-subtitle);
    background-color: var(--theme-bus);
    text-align: center;
  }

  table tbody td {
    font-size: 14px;
    color: var(--fc-subtitle);
    text-align: center;
  }

  table tbody td span {
    border: solid 1px var(--theme-bus);
    color: var(--theme-bus) !important;
    border-radius: 10px;
    padding: 0 5px;
    text-align: center;
  }

  a {
    color: var(--theme-bus) !important;
    font-weight: bold;
  }

}


.navbar-light .navbar-nav .nav-link {

  color: #fff;
}

.navbar-light .navbar-nav .nav-link:hover {

  color: #fff;
}

.page-link {
  color: #0063c9;
}

.carousel-header {
  margin-top: 85px;
}

.carousel-caption {
  top: 30%;
}

@media (min-width: 576px) {
  /* img {
      max-height: 117px;
  }

  .bg-banner {
      height: 260px;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: cover;
  } */
}

@media (max-width: 767px) {

  /* .col-sm-8,
  .col-sm-4 {
      width: 100%;
  }

  .card-title {
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
  }

  .bg-banner {
      height: 260px;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: cover;
  } */
}

@media (min-width: 767px) {
  /* .card-title {
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
  } */
}

/* New Css */

/**/
.container-top {
  background: url(../resources/assets/img/bg.jpeg) center no-repeat;
  background-position: 100% 100%;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  -o-background-size: cover;

}

.progress-step.is-active .progress-marker,
.progress-step.is-complete .progress-marker,
.progress-step.is-complete::after {
  background-color: #ffcb09;
}

.btn,
.form-control {
  box-shadow: none !important;
}

.btn-primary,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled):active {
  /* background-color: #ffcb09; */
  border-color: var(--theme-bus);
  color: #fff !important;
}

.has-warning .text-help {
  color: #e64125;
  display: block;
  text-align: left;
  font-size: 16px;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary.disabled,
.btn-primary:disabled {
  color: #fff;
  background-color: var(--theme-bus) !important;
  border-color: var(--theme-bus) !important;
}

.btn-tracking {
  width: 100px;
  background-color: var(--theme-bus) !important;
}

@media (min-width: 1465px) {
  #trackingfrm .col-xl-7 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }

  #trackingfrm .col-xl-9 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
}

.text-logo {
  font-size: 35px;
}

@media (max-width: 576px) {
  .text-logo {
    font-size: 32px;
    line-height: 30px;
    text-align: center;
  }
}

@media (max-width: 767px) {
  /* .container {
      max-width: 100% !important;
  } */
}

.alert-bottom {
  margin-top: 10px;
  background-color: #FAE9A3;
  position: absolute;
  width: 100%;
  border-radius: 5px;
  border: 1px solid rgba(185, 149, 1, 0.47);
  padding: 10px;
  text-align: center;
  margin: auto;
}

.err {
  margin: 10px auto 0px;
  text-align: center;
  position: relative;
  z-index: 2;
}

.alert-bottom:before {
  width: 15px;
  height: 15px;
  background-color: #FAE9A3;
  content: "";
  position: absolute;
  left: 47.2%;
  -webkit-transform: rotate(135deg) skewX(5deg) skewY(5deg);
  -ms-transform: rotate(135deg) skewX(5deg) skewY(5deg);
  -o-transform: rotate(135deg) skewX(5deg) skewY(5deg);
  transform: rotate(135deg) skewX(5deg) skewY(5deg);
  top: -8px;
  border-left: 1px solid rgba(185, 149, 1, 0.47);
  border-bottom: 1px solid rgba(185, 149, 1, 0.47);
  box-shadow: -1px 1px 2px -1px rgba(185, 149, 1, 0.47);
}


.alert-bottom p.error {
  line-height: 20px;
}

/* New CSS */
.tracking-detail {
  padding: 3rem 0
}

#tracking {
  margin-bottom: 1rem
}

[class*=tracking-status-] p {
  margin: 0;
  font-size: 20px;
  color: #fff;
  text-transform: uppercase;
  text-align: left;
  padding-left: 20px;
}

[class*=tracking-status-] {
  padding: 0.4cm;
}

.tracking-status-intransit {
  border: 1px solid #e5e5e5;
}

.tracking-status-outfordelivery {
  background-color: #f5a551
}

.tracking-status-deliveryoffice {
  background-color: #f7dc6f
}

.tracking-status-delivered {
  background-color: #4cbb87
}

.tracking-status-attemptfail {
  background-color: #b789c7
}

.tracking-status-error,
.tracking-status-exception {
  background-color: #d26759
}

.tracking-status-expired {
  background-color: #616e7d
}

.tracking-status-pending {
  background-color: #ccc
}

.tracking-status-inforeceived {
  background-color: #214977
}

.tracking-list {
  border: 1px solid #e5e5e5
}

.tracking-item {
  border-left: 1px solid #e5e5e5;
  position: relative;
  padding: 0 1.5rem .5rem 2.5rem;
  font-size: .9rem;
  margin-left: 3rem;
  min-height: 5rem
}

.tracking-item:last-child {
  padding-bottom: 4rem
}

.tracking-item .tracking-date {
  margin-bottom: .5rem
}

.tracking-item .tracking-date span {
  color: #888;
  font-size: 85%;
  padding-left: .4rem
}

.tracking-item .tracking-content {
  text-align: left;
  padding: .5rem .8rem;
  background-color: #f4f4f4;
  border-radius: .5rem
}

.tracking-item .tracking-content span {
  display: block;
  color: #888;
  font-size: 85%
}

.tracking-item .tracking-icon {
  line-height: 2.6rem;
  position: absolute;
  left: -0.5rem;
  width: 1rem;
  height: 1rem;
  text-align: center;
  border-radius: 50%;
  font-size: 1.1rem;
  background-color: #fff;
  color: #fff
}

.copy-link {
  color: #635c5c;
}

.copy-link:hover {
  color: #635c5c;
}

.copy-popup {
  position: relative;
  display: inline-block;
}

.copy-popup .copy-popuptext {
  visibility: hidden;
  width: 140px;
  background-color: #555;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 5px;
  position: absolute;
  z-index: 1;
  bottom: 150%;
  left: 50%;
  margin-left: -75px;
  opacity: 0;
  transition: opacity 0.3s;
}

.copy-popup:hover .copy-popuptext {
  visibility: visible;
  opacity: 1;
}

@media(min-width:992px) {
  .tracking-item {
    margin-left: 10rem
  }

  .tracking-item .tracking-date {
    position: absolute;
    left: -10rem;
    width: 7.5rem;
    text-align: right;

  }

  .tracking-item .tracking-date span {
    display: block
  }

  .tracking-item .tracking-content {
    padding: 0;
    background-color: transparent;

  }
}

@media(max-width:576px) {
  .tracking-item .tracking-content {
    padding: 0rem;
    background-color: #f4f4f4;
    border-radius: .5rem;
  }

  .copy-popup .copy-popuptext {
    visibility: hidden;
    width: 140px;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    bottom: 150%;
    left: 50%;
    margin-left: -100px;
    opacity: 0;
    transition: opacity 0.3s;
  }
}

.res-sme {
  display: flex;
  justify-content: left;
}

.res-info-div-2 .res-pno {
  display: flex;
  justify-content: left;
}

.res-info-div-2 .m {
  width: 50px;
  height: 2px;
  background-image: linear-gradient(270deg, #ffea33, #ffd65d);
  position: relative;
  margin: 13px;
}

input::-webkit-input-placeholder {
  font-size: 18px !important;

}

.boxed-btn {
  background: #ffcb09;
  color: #fff !important;
  display: inline-block;
  padding: 4px 5px 2px 5px;
  font-family: 'Sukhumvit';
  font-size: 12px;
  font-weight: 400;

  border: 1px solid #ffcb09;
  letter-spacing: unset;
  text-align: center;

  text-transform: uppercase;
  cursor: pointer;
  border-radius: 6px;
}

.boxed-btn:hover {
  background: #ffcb09;
  color: #fff !important;
  border: 1px solid #ffcb09;
}

.modal-content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  pointer-events: none !important;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: .3rem;
  outline: 0;
}

.modal-dialog .close {
  margin: 7px 0px;
}

.close {
  min-width: 25px;
  height: 22px;
  cursor: pointer;
  opacity: 1;
  font-size: 26px;
  text-align: center;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
}

.float-right {
  float: right !important;
}

.card-box .card-header {
  line-height: 38px;
}

.card-box .card-header {
  /* padding: 1.5rem 2rem; */
  margin-bottom: 0;
  background-color: #ffffff;
  border-bottom: 1px solid rgba(0, 0, 0, .125);
  border-bottom-color: #d8d8d8;
  border-radius: 0;
  font-size: 21px;
  /* font-size: 19px; */
  padding: 1rem 2.5rem;
  line-height: 1.8;
}

.warpper-row {
  display: flex;
  justify-content: center;

  .warpper-body {
    max-width: 1100px;
    width: 100%;

    hr {
      margin-top: 20px;
      margin-bottom: 30px;
    }

    table {
      width: 100%;
      border-collapse: collapse;
      border-radius: 5px;
      overflow: hidden;
    }

    th,
    td {
      border: 2px solid #e7e7e7;
      padding: 10px;
      text-align: left;
    }

    th {
      background-color: #f4f4f4;
    }

    tr:first-child th:first-child {
      border-top-left-radius: 5px;
    }

    tr:first-child th:last-child {
      border-top-right-radius: 5px;
    }

    tr:last-child td:first-child {
      border-bottom-left-radius: 5px;
    }

    tr:last-child td:last-child {
      border-bottom-right-radius: 5px;
    }
  }
}

.contact-us {
  display: flex;
  justify-content: center;

  .content {
    max-width: 1100px;
    width: 100%;

    .card-info {
      .card-title {
        font-size: var(--fz-title);
        color: var(--theme-bus) !important;
        font-weight: bold;
      }

      .card-text {
        font-size: 16px;
        color: var(--fc-title);
      }
    }

    .card-contact {
      margin-top: 10px;
      border: 0;

      .card-warpper {
        position: relative;
        display: contents;
        text-align: center;

        .card-img {
          position: relative;
          left: 50%;
          transform: translateX(-50%);

          width: 40px;
          height: 40px;
          margin-bottom: 10px;

          img {
            width: 100%;
            height: 100%;
          }
        }

        .card-title {
          font-size: 18px;
          font-weight: bold;
          color: var(--theme-bus);
        }

        .card-text {
          font-size: 16px;
          position: relative;
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: nowrap;

          a {
            text-decoration: none;
            color: var(--fc-title);
          }
        }

      }

      @media (max-width: 768px) {
        & {
          margin-top: 20px;
          margin-bottom: 20px;
        }
      }

    }
  }
}

.update-multilang {
  a {
    color: var(--text-bus);
    text-decoration: none;
  }

  .warpper-row {
    flex-direction: column;
  }

  .pointer {
    cursor: pointer;
  }

  table thead th {
    font-size: 16px;
    color: var(--title-color);
    background-color: #eee;
    text-align: center;
  }

  .text-title {
    color: var(--title-color) !important;
    font-weight: bold;
    font-size: 30px;
    margin: 0;
  }

  .btn-contact {
    background-color: var(--theme-bus);
    color: #fff;
    border: 1px solid var(--theme-bus);
    border-radius: 5px;
    font-size: 16px;
    font-weight: 600;
    padding: 10px 20px;
    transition: all 0.3s;
  }

  .btn-bus-submit {
    background-color: var(--theme-bus);
    color: #fff;
    border: 1px solid var(--theme-bus);
    border-radius: 5px;
    font-size: 16px;
    font-weight: 600;
    padding: 10px 20px;
    transition: all 0.3s;
  }
}

.container-footer {
  position: relative;
  width: 100%;

  @media (max-width: 767px) {
    .container {
      max-width: 100%;
    }
  }

  .card-popular-routes {
    background-color: #F4F4F4;
    padding: 30px 0;

    .container {
      display: flex;
      justify-content: center;
      align-items: center;

      .card-wapper {
        max-width: 1100px;
        width: 100%;

        .card-header {
          position: relative;
          padding-bottom: 15px;
          text-align: start;

          h2 {
            font-size: var(--fz-title);
            color: var(--fc-title);
            margin: 0;
          }
        }

        .card-content {

          .card-link-img {
            a {
              position: relative;
              text-decoration: none;
              display: flex;
              flex-direction: column;
              justify-content: start;
              gap: 10px;

              .card-img {
                position: relative;
                overflow: hidden;
                border-radius: 10px;
                box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
                transition: 0.3s;

                &:hover {
                  transform: scale(1.05);
                }

                img {
                  width: 100%;
                  height: 100%;
                  object-fit: cover;
                  object-position: center;
                }

                .card-overlay {
                  position: absolute;
                  top: 0;
                  left: 0;
                  width: 100%;
                  height: 100%;
                  background-color: rgba(0, 0, 0, 0.5);
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  opacity: 0.5;
                }
              }

              .card-text {
                position: absolute;
                bottom: 0;
                width: 100%;
                padding: 10px 0;
                text-align: center;

                strong {
                  font-size: 16px;
                  font-weight: 900;
                  color: #ffffff;
                }
              }

            }
          }

          .card-link {
            a {
              text-decoration: none;

              .card-text {
                text-align: start;

                strong {
                  font-size: 16px;
                  font-weight: 900;
                  color: var(--theme-bus);
                }
              }

            }
          }

        }
      }
    }
  }

  .card-footer {
    background-color: #000000;

    .container {
      display: flex;
      justify-content: center;

      .card-wapper {
        max-width: 1100px;
        width: 100%;
        padding: 50px 0 30px 0;

        .card-content-left {

          h2 {
            font-size: 24px;
            font-weight: var(--fw-title);
            color: #ffffff;
            margin: 0;
          }

          h2:first-child {
            margin-bottom: 10px;
          }

          h2:nth-child(3) {
            margin-top: 20px;
            margin-bottom: 10px;
          }

          strong {
            font-size: 16px;
            font-weight: bold;
            color: #ffffff;
          }
        }

        .card-content-center {
          .card-menu {
            h2 {
              font-size: 24px;
              color: #ffffff;
              margin: 0;
            }

            a {
              text-decoration: none;
              display: block;
              font-size: 16px;
              font-weight: 400;
              color: #ffffff;
              margin-top: 10px;

              &:hover {
                color: #ffffff;
              }
            }
          }

          @media (max-width: 767px) {
            & {
              margin-top: 20px;
              margin-bottom: 10px;
            }
          }
        }

        .card-content-right {
          .card-payment-channel {
            .card-header {
              h2 {
                font-size: 24px;
                color: #ffffff;
                margin: 0;
                margin-bottom: 10px;
              }
            }

            .card-content {
              .card-list {
                display: flex;
                flex-wrap: wrap;
                gap: 10px;

                img {
                  width: auto;
                  height: 30px;
                }
              }
            }
          }

          .card-download {
            .card-header {
              h2 {
                font-size: 24px;
                color: #ffffff;
                margin: 0;
                margin-top: 20px;
                margin-bottom: 10px;
              }
            }

            .card-content {
              .card-list {
                display: flex;
                flex-wrap: wrap;
                gap: 10px;

                a {
                  text-decoration: none;
                  display: flex;
                  align-items: center;
                  justify-content: center;
                  padding: 0;

                  img {
                    width: auto;
                    height: 40px;
                  }
                }
              }
            }
          }

          @media (max-width: 768px) {
            .card-payment-channel {
              .card-header {
                margin-top: 20px;
                margin-bottom: 10px;
              }
            }

            .card-download {
              .card-header {
                margin-top: 20px;
                margin-bottom: 10px;
              }
            }
          }
        }

        .card-bottom {
          display: flex;
          justify-content: center;
          align-items: center;
          margin-top: 20px;

          .card-copyright {
            strong {
              font-size: 16px;
              font-weight: 400;
              color: #ffffff;

              span {
                font-weight: bold;
                color: #ffffff;
              }
            }
          }

          .card-referral {
            display: flex;

            a {
              text-decoration: none;
              display: flex;
              align-items: center;
              justify-content: center;
              padding: 0;
              font-size: 16px;
              font-weight: 400;
              color: #ffffff;

              &:hover {
                color: #ffffff;
              }

              &:last-child {
                color: var(--theme-bus);
              }
            }

            span {
              font-size: 16px;
              font-weight: 400;
              color: #ffffff;
            }
          }

          @media (max-width: 622px) {
            & {
              flex-direction: column;
              align-items: center;
              justify-content: center;
            }
          }

          @media (max-width: 550px) {
            flex-direction: column;

            .card-copyright {
              margin-bottom: 10px;
            }
          }

          @media (max-width: 340px) {
            & {
              margin-top: 20px;

              .card-copyright {
                strong {
                  display: grid;
                  text-align: center;
                }
              }

              .card-referral {
                display: grid;
                text-align: center;
              }
            }
          }

        }
      }
    }
  }

}