/*
Theme Name: Bus
Theme URI: https://www.wikipedia.org/
Author: Wiki
Author URI: https://www.wikipedia.org/
Description: Bus Themes
Version: 1.0.3
Tags: bus
*/
@charset "UTF-8";
:root {
  --pd-tone:#235dc0;
  --pd-tone-rgb: 35, 93, 192;
  --pd-tone-bright:#c0d4fa;
  --pd-tone-gentle: #729cf2;
  --pd-tone-bold:#13356e;
  --pd-tone-100: #e6effd;
  --pd-tone-200: #c0d4fa;
  --pd-tone-300: #99b8f6;
  --pd-tone-400: #729cf2;
  --pd-tone-500: #4b80ee;
  --pd-tone-600: #235dc0;
  --pd-tone-700: #1b4997;
  --pd-tone-800: #13356e;
  --pd-tone-900: #0b2046;
  --pd-primary: #0d6efd;
}
/*--------------------------------------------------------------
# Layout
--------------------------------------------------------------*/
@media (max-width: 1199.98px) {
  .header{
    display: block;
    background-color: #235dc0;
  }
  .header .container{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
  }
  .header .hamburger{
    display: flex;
    flex: 1 1 50%;
    justify-content: flex-end;
  }
  .header .delicious{
    margin: .75rem 0 .75rem .75rem;
    width: 35px;
    height: 35px;
    background: url(images/menu.svg) no-repeat center center;
    user-select: none;
    cursor: pointer;
  }

  .header .logo{
    flex: 1 1 50%;
  }
  .logo-link{
    display: block;
    padding-left: 40px;
    background: url(/wp-content/uploads/logo/logo.png) no-repeat center left;
    background-size: contain;
    user-select: none;
  }
  .logo .logo-name {
    color: #fff;
    font-family: "Bungee Inline", sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    font-style: normal;
    line-height: 1;
  }
  .logo-slogan{
    font-size: .5rem;
    text-transform: uppercase;
    color: #c9c9c9;
  }
  .header .search, .header .action{
    display: none;
  }
  .menu{
    display: none;
  }
  .menu.active{
    display: block;
  }
  .menu{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .3);
  }
  #menu-primary{
    background-color: #0d6efd;
  }
}
@media (min-width: 1200px) {
  .header{
    display: block;
    background-color: #fff;
  }
  .header .container{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
  }
  .header .hamburger{
    display: none;
  }
  .header .logo{
    padding: 1rem 0;
  }
  
  .logo-link{
    display: block;
    padding-left: 40px;
    background: url(/wp-content/uploads/logo/logo-tone.png) no-repeat center left;
    background-size: contain;
    user-select: none;
  }
  .logo .logo-name {
    color: #235dc0;
    font-family: "Bungee Inline", sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    font-style: normal;
    line-height: 1;
  }
  .logo-slogan{
    font-size: .5rem;
    text-transform: uppercase;
    color: #000;
  }


  .header .search form{
    position: relative;
    display: block;
    width: 400px;
    height: 46px;
    line-height: 44px;
    border-radius: 5px;
    border: 1px solid #ececec;
    background-color: #f1f1f1;
  }
  .header .search input{
    display: block;
    margin: 0;
    padding: 0 15px;
    width: 100%;
    border: none;
    border-radius: 5px;
    font-size: .85em;
  }
  .header .search button{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    padding: 0 15px;
    border: none;
    border-radius: 0 5px 5px 0;
    background: #235dc0 url(images/search.svg?v=2) no-repeat center center;
    color: transparent;
  }
  .header .action{
    display: flex;
  }
  .header .action-hotline, .header .action-support{
    position: relative;
    margin-left: 10px;
    padding: 0 15px 0 40px;
    color: #000;
    font-size: .85em;
    font-weight: bold;
    text-align: center;
    background: url(images/phone-black.svg) no-repeat left center;
  }
  .header .action-hotline::after, .header .action-support::after{
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 30px;
    margin-top: -15px;
    background-color: rgba(0,0,0,.1);
  }
  .header .action-faq{
    padding-left:15px;
    text-align: right;
  }
  .menu{
    background-color: #235dc0;
    font-family: Roboto, sans-serif;
  }
  .menu ul{
  display: flex;
    margin: 0 auto;
    max-width: 1270px;
  list-style-type: none;
  }
  .menu ul>li:last-child a{
    display: inline-block;
    position: relative;
    margin: 6px;
    padding: 0 18px;
    height: 36px;
    line-height: 2.4em;
    letter-spacing: .03em;
    border: 1px solid transparent;
    border-radius: 5px;
    background-color: #235dc0;
    color: #fff;
    font-family: Roboto, sans-serif;
    font-weight: 700;
    font-size: .9em;
    text-align: center;
    text-transform: uppercase;
    box-shadow: 0 1px 3px -2px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);
    cursor: pointer;
  }
  .menu ul>li:last-child a::after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      height: 18px;
      border-radius: 5px 5px 0 0;
      background-color: hsla(0, 0%, 100%, .1);
  }
  .menu ul>li:last-child a:hover::after{
    background-color: hsla(0, 0%, 100%, .2);
  }
  .menu ul ul{
    display: none;
  }
  .menu a{
    display: block;
    padding: 0 15px;
    height: 48px;
    line-height: 48px;
    color: #fff;
    font-size: .9em;
    font-weight: 700;
    text-transform: uppercase;
  }
  .current-menu-item a{
    color: #fe6800;
  }
}

.footer{background-color:#235dc0;color:#fff}
.footer-columns{display:grid;grid-template-columns:repeat(1,1fr);gap:30px;padding-top:40px;padding-bottom:40px}
.footer-widget{display:block}
.footer-widget a{color:#fff}
.footer-widget ul{line-height:2rem}
.footer-widget-title{display:block;color:#fff;font-weight:700;text-transform:uppercase}
.footer-address{margin-bottom:5px}
.footer-address span{font-weight:700}
.footer-email{margin-bottom:5px}
.footer-email span{font-weight:700}
.footer-phone{margin-bottom:10px}
.footer-phone span{font-weight:700}
.footer-connect{display:flex;gap:5px}
.footer-connect a{width:38px;height:38px;border:2px solid #fff;border-radius:50%;color:#fff;font-size:0;white-space:nowrap}
.footer-connect .facebook{background:url(images/facebook.svg) no-repeat center center;background-size:20px}
.footer-connect .facebook:hover{border-color:#3a589d;background-color:#3a589d}
.footer-connect .tiktok{background:url(images/tiktok.svg) no-repeat center center;background-size:20px}
.footer-connect .tiktok:hover{border-color:#111;background-color:#111}
.footer-connect .youtube{background:url(images/youtube.svg) no-repeat center center;background-size:20px}
.footer-connect .youtube:hover{border-color:#c33223;background-color:#c33223}
.footer-hotline{margin:.75rem 0;padding:5px 5px 5px 45px;width:245px;height:55px;border:solid 1px #f5b921;border-radius:10px;background:#f5b921 url(images/phone.svg) no-repeat 10px center;color:#fff;font-size:14px}
.footer-contact{margin:.75rem 0;padding:5px 5px 5px 45px;width:245px;height:55px;border:solid 1px #4d4d4d;border-radius:10px;background:#4d4d4d url(images/phone.svg) no-repeat 10px center;color:#fff;font-size:14px}
.footer-copyright{display:block;padding:10px 0;background-color:#000;color:#fff;font-size:small}
@media (min-width: 768px) {
  .footer-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
}
@media (min-width: 992px) {
  .footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
}
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
@keyframes hotline-circle {
  0%{-webkit-transform:rotate(0) scale(0.5) skew(1deg);-webkit-opacity:.1}
  30%{-webkit-transform:rotate(0) scale(0.7) skew(1deg);-webkit-opacity:.5}
  100%{-webkit-transform:rotate(0) scale(1) skew(1deg);-webkit-opacity:.1}
}
@keyframes hotline-fill {
  0%{-webkit-transform:rotate(0) scale(0.7) skew(1deg);opacity:.6}
  50%{-webkit-transform:rotate(0) scale(1) skew(1deg);opacity:.6}
  100%{-webkit-transform:rotate(0) scale(0.7) skew(1deg);opacity:.6}
}
@keyframes hotline-icon {
  0%{-webkit-transform:rotate(0) scale(1) skew(1deg)}
  10%{-webkit-transform:rotate(-25deg) scale(1) skew(1deg)}
  20%{-webkit-transform:rotate(25deg) scale(1) skew(1deg)}
  30%{-webkit-transform:rotate(-25deg) scale(1) skew(1deg)}
  40%{-webkit-transform:rotate(25deg) scale(1) skew(1deg)}
  50%{-webkit-transform:rotate(0) scale(1) skew(1deg)}
  100%{-webkit-transform:rotate(0) scale(1) skew(1deg)}
}
.hotline{position:fixed;bottom:10px;left:10px;z-index:9999;user-select:none;cursor:pointer}
.hotline-ring{position:relative;bottom:0;left:0;display:block;width:110px;height:110px;background-color:transparent;transition:visibility .5s;visibility:visible;z-index:99}
.hotline-circle{position:absolute;top:10px;left:10px;width:85px;height:85px;background-color:transparent;border:2px solid #e60808;border-radius:100%;opacity:.5;transition:all .5s;transform-origin:50% 50%;animation:hotline-circle 1.2s infinite ease-in-out}
.hotline-fill{position:absolute;top:25px;left:25px;width:55px;height:55px;background-color:rgba(230,8,8,0.7);border:2px solid transparent;border-radius:100%;transition:all .5s;transform-origin:50% 50%;animation:hotline-fill 2.3s infinite ease-in-out}
.hotline-icon{position:absolute;top:37px;left:37px;display:flex;align-items:center;justify-content:center;width:33px;height:33px;background:#e60808 url(images/phone.svg) no-repeat center center;background-size:30px;border:2px solid transparent;border-radius:100%;transform-origin:50% 50%;animation:hotline-icon 1s infinite ease-in-out}
.hotline-bar{position:absolute;bottom:37px;left:33px;width:160px;height:40px;line-height:1;padding:8px 10px 8px 50px;box-shadow:0 14px 28px rgba(0,0,0,0.25),0 10px 10px rgba(0,0,0,0.1);border-radius:50px;background:rgba(230,8,8,.8);background-size:100%;color:#fff;font-size:10px;z-index:9}
.hotline-bar span{display:block;margin-top:3px;font-size:11px;font-weight:700;text-transform:uppercase}
/*--------------------------------------------------------------
# Sections
--------------------------------------------------------------*/
.list{
  margin-bottom: 30px;
}
.list .item{
  position: relative;
  border-radius: .75rem;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  transition: .4s all;
}
.item-title{
  margin: 0;
  padding: 15px;
}
.item-thumbnail{display: block;border-radius: .75rem .75rem 0 0;}
.item-description{
  position: relative;
  margin: 0;
  padding: 15px 15px 20px 15px;
  color: #334862;
}
.item-description::before{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -25px;
  width: 50px;
  height: 2px;
  background-color: rgba(0,0,0,.1);
}
.item-link::before{
  content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1010
}
@media (min-width: 768px) {
  .list{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
}
@media (min-width: 992px) {
  .list{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
}
/*--------------------------------------------------------------
# Page: Error
--------------------------------------------------------------*/
#error{position:relative;padding:2rem;background-color:#ffd217;color:#fff;text-align:center}
#error .info{margin:1rem 0 0}
#error .button{display:inline-block;margin:.5rem;padding:.5rem 2rem;background-color:#444;color:#fff;font-size:1.25rem;font-weight:300;border:0 solid;border-bottom:2px solid;border-color:#000;border-radius:.25rem}

.waves{padding-bottom:1rem;background-color:#edf5ff}
.waves h1{position: relative;padding: 1rem 0;color:#2474e5;text-align:center;text-transform:uppercase}
.waves h1::after{
  content: "";
  position: absolute;
  bottom: .5rem;
  left: 50%;
  width: 160px;
  height: 2px;
  background-color: #2474e5;
  transform: translateX(-50%);
}
.waves-cover{width:100%}
.waves-action{margin:5px 0;padding:5px 0;text-align:center}
.waves-button-text{display:inline-block;margin:10px 0 0;padding:0 40px;height:50px;line-height:46px;border:2px solid #2474e5;border-radius:30px;color:#2474e5;font-size:20px;font-weight:700}
.waves-button-icon{position:relative;display:inline-block;margin:-10px 0 0 15px;width:60px;height:60px;line-height:56px;border-radius:50%;background-color:#2474e5;vertical-align:middle;z-index:10}
.waves-button-icon:before{content:"";position:absolute;left:50%;top:50%;display:block;width:60px;height:60px;border-radius:50%;background:#2474e5 repeat scroll 0 0;transform:translateX(-50%) translateY(-50%);animation:pulse-border 1500ms ease-out infinite;z-index:0}
.waves-button-icon:after{content:"";position:absolute;left:50%;top:50%;display:block;width:60px;height:60px;border-radius:50%;background:#2474e5 repeat scroll 0 0;transform:translateX(-50%) translateY(-50%);transition:all 200ms;z-index:1}
.waves-button-icon svg{position:absolute;top:15px;left:15px;width:30px;z-index:9999}

.waves-overload{
  margin: 1rem 0;
  padding: 1rem 0 0;
}


@-webkit-keyframes ring-circle {
  0%{-webkit-transform:rotate(0) scale(0.5) skew(1deg);-webkit-opacity:.1}
  30%{-webkit-transform:rotate(0) scale(0.7) skew(1deg);-webkit-opacity:.5}
  100%{-webkit-transform:rotate(0) scale(1) skew(1deg);-webkit-opacity:.1}
}
@-webkit-keyframes ring-fill {
  0%{-webkit-transform:rotate(0) scale(0.7) skew(1deg);opacity:.6}
  50%{-webkit-transform:rotate(0) scale(1) skew(1deg);opacity:.6}
  100%{-webkit-transform:rotate(0) scale(0.7) skew(1deg);opacity:.6}
}
@-webkit-keyframes ring-icon {
  0%{-webkit-transform:rotate(0) scale(1) skew(1deg)}
  10%{-webkit-transform:rotate(-25deg) scale(1) skew(1deg)}
  20%{-webkit-transform:rotate(25deg) scale(1) skew(1deg)}
  30%{-webkit-transform:rotate(-25deg) scale(1) skew(1deg)}
  40%{-webkit-transform:rotate(25deg) scale(1) skew(1deg)}
  50%{-webkit-transform:rotate(0) scale(1) skew(1deg)}
  100%{-webkit-transform:rotate(0) scale(1) skew(1deg)}
}
@keyframes pulse-border {
  0% {transform:translateX(-50%)translateY(-50%)translateZ(0)scale(1);opacity:1}
  100% {transform:translateX(-50%)translateY(-50%)translateZ(0)scale(1.5);opacity:0}
}

.heading{
  position: relative;
  padding: 1rem 0;
  text-align: center;
  text-transform: uppercase;
  color: #2474e5;
}
.heading::after {
  content: "";
  position: absolute;
  bottom: .5rem;
  left: 50%;
  width: 160px;
  height: 2px;
  background-color: #2474e5;
  transform: translateX(-50%);
}

.routes{
  display: grid;
  gap: .75rem;
  margin-bottom: 1rem;
}
.routes .route{
  background-color: #fff;
  border-radius: .75rem;
}
.routes .route-photo{
  border-radius: .75rem .75rem 0 0;
}
.route-title{
  padding: .75rem .75rem 0 .75rem;
  text-align: center;
  
}
.route-action{
  display: flex;
  gap: 1rem;
  padding: 1rem;
}
.route-action a{
  flex: 1;
  color: #fff;
  text-align: center;
  padding: 10px;
  background-color: #235dc0;
  border-radius: .75rem;
}

.usp{
  display: grid;
  grid-template-columns:repeat(1,1fr);gap:1rem;
  margin: 0 0 1rem 0;
  padding: 0;
  list-style-type: none;
}
.usp li{
  margin: 0;
  padding: 10px 10px 10px 80px;
  border: 1px solid #235dc0;
  border-radius: .25rem;
}
.usp span{
  color: #235dc0;
  font-weight: 500;
  text-transform: uppercase;
}
.usp-brand{
  background: url(images/usp/brand.png) no-repeat 10px center;
  background-size: 60px;
}
.usp-call{
  background: url(images/usp/call.png) no-repeat 10px center;
  background-size: 60px;
}
.usp-comfort{
  background: url(images/usp/comfort.png) no-repeat 10px center;
  background-size: 60px;
}
.usp-pay{
  background: url(images/usp/pay.png) no-repeat 10px center;
  background-size: 60px;
}
.usp-quantity{
  background: url(images/usp/quantity.png) no-repeat 10px center;
  background-size: 60px;
}
.usp-shuttle{
  background: url(images/usp/shuttle.png) no-repeat 10px center;
  background-size: 60px;
}
@media (min-width: 768px) {
  .usp{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
}
@media (min-width: 992px) {
  .usp{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
}


#page{
  display: flex;
  gap: 20px;
}
#page > aside {
  width: 210px;
}
#page > main {
  flex: 1;
}

/*--------------------------------------------------------------
# Page: Archive
--------------------------------------------------------------*/
.archive{

}
.archive-title{
  position: relative;
  padding: 1rem 0;
  text-align: center;
  text-transform: uppercase;
}

.archive-title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--pd-tone);
  z-index: 1;
}
h1 span {
  position: relative;
  padding: 0 1rem;
  background-color: var(--pd-bg);
  color: var(--pd-tone);
  z-index: 2;
}
/*--------------------------------------------------------------
# Page: entry
--------------------------------------------------------------*/
.entry{
  position: relative;
  padding: 25px;
  border: 1px solid #ccc;
  background-color: #fff;
  z-index: 1;
}
.entry-title{
  position: relative;
  padding: 1rem 0;
  color: var(--pd-tone);
  text-transform: uppercase;
}
