
/*====================================================================
root css
====================================================================*/
:root {
    --baseColor: #f1151e;
}
@media (min-width: 1500px){
	.container{
		max-width: 1400px;
	}
}
@media (min-width: 1400px){
	.container{
		max-width: 1350px;
	}
}
@media (min-width:1400px){
	#adsPromtModal .modal-dialog {
		max-width: 800px;
	}
}
@media (min-width:992px){
	#adsPromtModal .modal-dialog {
		background: transparent;
		max-width: 700px;
	}
}

@media (min-width:992px) and (max-width: 1199px) {
	.b-form-group label {
		font-size: 14px !important;
	}
	
}
@media (max-width: 991px) {
	ul.datebar li.active {
		width: 60%;
	}
	ul.datebar li:last-child {
		border-left: 0px !important;
	}
	.cancel-box {
		min-width: 250px;
		right: 0;
	}
	.single-cancel-list-wrap {
		gap: 10px;
	}
	.demoNavBar .dropdown-menu li{
		padding: 0 15px !important;
	}
	.demoNavBar .dropdown-menu li a{ 
		width: 100%;
	}
	.ring_phone {
		float: none;
		font-size: 18px;
		margin: 0 15px 0 0;
		text-decoration: none;
	}
	.w_100_mobile{
		width: 100%;
	}
	.accordion-button::after {
		width: 1rem;
		height: 1rem;
		background-size: 1rem;
	}
	.b-search-map-wrapper .search_btn {
		margin-top: 10px !important;
	}
	.b-form-group label {
		font-size: 14px !important;
	}
	.b-search-map__wrap {
		margin-bottom: 15px;
		padding: 15px;
	}
	.congratulations_row {
		flex-direction: row-reverse;
	}
	.offcanvas-start {
		border-right: 3px solid var(--baseColor) !important;
	}
	.nav-link.active::after {
		display: none;
	}
	.offcanvas-header .btn-close {
		box-shadow: none !important;
	}
	.toggle_btn {
		padding: 0;
		font-size: 24px;
		color: #000000;
		box-shadow: none !important;
		outline: 0 !important;
	}
	button.owl-prev {
		top: 50%;
		position: absolute;
		left: 0;
		right: auto;
		transform: translateY(-50%);
	}
	button.owl-next {
		top: 50%;
		position: absolute;
		right: 0;
		left: auto;
		transform: translateY(-50%);
	}
	.banner_carousel .owl-nav button span {
		width: 30px;
		height: 30px;
		line-height: 26px;
		font-size: 25px;
	}
	.demoNavBar li {
		padding: 0px 10px 2px 0px !important;
	}
	.lng_dropdown  li {
		padding: 6px 0px 6px 0px !important;
	}
	.booking-box {
		width: 100% !important;
		position: relative;
	}
	.search__panel {
		position: relative;
		top: 0 !important;
		z-index: 1;
		width: 100%;
	}
	.banner_carousel .owl-item img {
		height: auto !important;
	}
	.home_banner_section {
		min-height: auto !important;
	}
	.booking-box .booking-box__body {
		padding: 15px !important;
	}
	.booking-box {
		margin-top: -10px !important;
	}
	.download_app_image {
		height: auto !important;
	}
}

@media (max-width: 767px) {
	.ring_phone {
		font-size: 15px;
	}

	.dept-time-wrapper h4 {
		font-weight: 700;
		font-size: 13px;
	}
	.dept-time-wrapper p {
		font-size: 14px;
	}
	.site_logo {
		max-height: 55px;
	}
	.route_banner h1 {
		left: 10px;
		right: 10px;
		font-size: 26px;
	}
	.route_banner {
		height: 150px;
	}
	.dpe_ariv_wrap::before {
		display: none !important;
	}
	.dpe_ariv_wrap::after {
		display: none !important;
	}
	.box-operator-name {
		line-height: 27px;
		font-size: 14px;
		padding-left: 23px;
	}
	.box-operator-name::before {
		position: absolute;
		top: 6px !important;
		width: 16px;
		height: 16px;
	}
	.bus-place {
		font-size: 14px;
		line-height: 27px;
		padding-left: 23px;
	}
	.bus-place::before {
		top: 6px !important;
		width: 16px;
		height: 16px;
	}
	button.show_all_route_btn {
		margin-top: 0px;
		font-size: 14px;
		padding: 0 4px;
	}
	.footer_mid_link {
		text-align: center;
	}
	.offcanvas {
		max-width: 88% !important;
	}
	.offcanvas.offcanvas-bottom {
		max-width: 100% !important;
		border-top-left-radius: 30px;
		border-top-right-radius: 30px;
	}
	.congratulations_row {
		flex-direction: column-reverse;
	}
	/* Banner */
	.banner_img {
		object-fit: contain;
	}
	img.banner_img {
		height: auto !important;
	}
	.booking-box .booking-box__body {
		padding: 0px 10px 10px !important;
	}
	.banner-title {
		margin-top: 15px;
		margin-bottom: 0;
		font-size: 20px;
		line-height: 28px;
	}
	.b-form-group label {
		font-size: 14px;
	}
	.b-search-map-wrapper #searchButton {
		margin-top: 10px !important;
	}
	.banner_carousel .owl-nav {
		position: absolute;
		bottom: 50%;
		right: 0;
		width: 100%;
		left: 0;
	}
	.footer_title {
		margin: 15px 0px 5px;
	}
	.service__box {
		background-color: #fff;
		min-height: 8.4em;
		padding: 20px 10px;
		border: 2px dashed var(--baseColor);
		width: 100%;
	}
	.search_btn {
		font-size: 14px;
	}
	.form-control {
		min-height: 40px;
	}
	.ui-widget.ui-widget-content {
		min-width: auto !important;
	}
	.ui-datepicker-calendar tr td {
		padding: 3px 2px !important;
	}
	.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
		height: 33px !important;
		width: 33px !important;
		font-size: 15px !important;
		line-height: 26px !important;
	}
	.service__box img {
		filter: brightness(0);
		width: 50px;
	}
	.service__box__wrapper {
		grid-template-columns: auto;
		gap: 10px;
		margin-top: 25px;
		text-align: center;
		justify-content: initial;
	}
	.service__title {
		font-size: 16px;
		color: #000;
		font-weight: 600;
		margin: 15px 0 0;
		line-height: 20px;
		min-height: auto;
	}
	/* Why book with us */
	.why_book_us {
		padding: 30px 0px;
	}
	.section-title {
		font-size: 22px;
		padding-bottom: 10px;
	}
	.icon-box-text {
		min-height: auto;
	}
	.why_choose {
		min-height: auto;
		padding: 20px;
	}
	.service-icon-wrapper img {
		height: 50px;
		object-fit: contain;
	}
	.gall-img {
		min-height: 250px;
	}
	/* Counter */
	.counter_section {
		padding: 30px 0px;
	}
	.counter-texts p {
		font-size: 35px;
	}
	.counter-texts .count-nem {
		font-size: 16px;
	}
	.counter_section .section-title{
		font-size: 24px;
		line-height: 35px;
		font-weight: 800;
		margin: 0;
	}
	.book-us {
		gap: 60px !important;
	}
	.counter-icon {
		top: -55px;
		width: 117px;
		height: 117px;
	}
	.counter-text span {
		line-height: 25px;
		font-size: 15px;
	}
	.counter-text p {
		line-height: 30px;
		font-size: 20px;
		margin-top: 20px;
		margin-bottom: 9px;
	}
	/* Top routes */
	.bus-info {
		padding-top: 10px;
	}
	.app_sec {
		padding: 30px 0px;
	}
	.Features_subHeadingTxt {
		width: 100%;
	}
	.flat-icon {
		height: 55px;
		width: 55px;
	}
	.flat-icon i {
		font-size: 20px;
	}
	.global_presence {
		padding: 30px 0px;
	}
	.partner_section {
		padding: 30px 0px;
	}
	.popular_trips {
		padding: 30px 0px;
	}
	.route-text {
		font-size: 20px;
	}
	.trip_price {
		font-size: 18px;
		font-weight: 800;
	}
	.marquee-news h6 {
		font-size: 15px;
	}
	marquee {
		padding: 7px 0px 2px;
	}
	/* App section */
	.app_sec .section-title {
		font-size: 20px;
	}
	.app_store_btn {
		text-align: left;
	}
	.qr_code {
		width: 100px;
	}
	.app_sub_title {
		font-size: 14px;
		font-weight: 600;
		line-height: 22px;
	}
	.download_app_image {
		margin: 10px auto 0;
	}
	.qr_image {
		width: 125px;
	}
	.app_sec h2 {
		font-size: 25px;
		font-weight: 800;
		margin-top: 25px;
	}
	/* Footer */
	.b-blog-short-post {
		flex-direction: column !important;
	}
	.copy_right_text {
		font-size: 14px;
		border-bottom: 1px dashed #00000070;
		padding-bottom: 7px;
		margin-bottom: 4px;
	}
	.footer_logo {
		width: 80px !important;
		margin: 0 0 10px !important;
	}
	.footer_left {
		width: 100% !important;
	}
	footer::before {
		background: none;

	}
	.footer_top {
		display: block;
	}
	/* Search page */
	.dab-center {
		justify-content: space-around;
	}
	.ticket-src-result .b-search-map__wrap {
		padding: 10px;
	}
	.dab-center .title-4 {
		font-size: 16px;
		font-weight: 700;
		line-height: 26px;
	}
	.bdrp-box {
		margin-top: 10px;
	}
	#myModal .modal-body {
		padding: 15px 0px !important;
	}
	#myModal .modal-title {
		color: #fff;
		font-size: 16px;
	}
	.pess-dtls-box {
		min-height: auto;
	}
	.pay-details-box.pess-dtls-box.middle-box {
		margin-bottom: 15px;
	}
	.pay-details-box.pess-dtls-box.last_box {
		min-height: 480px !important;
	}
	.footer_left {
		padding: 15px 10px 15px 0px;
		margin-top: 12px;
	}
	.l-main-container {
		min-height: 200px;
	}
	.social-links a {
		font-size: 16px;
		width: 35px;
		height: 35px;
		line-height: 35px;
	}
	.social-links {
		margin-top: 5px;
	}
	.footer_right {
		width: 100%;
	}
	.footer_right_top {
		padding: 0px;
	}
	/* FAQ */
	.Frequently_section {
		padding: 30px 0px;
	}
	.section-title {
		margin-bottom: 5px;
	}
	.accordion-button h3 {
		font-size: 16px;
		line-height: 26px;
	}
	.accordion-button{
		padding: 10px 0px;
	}
	.accordion-body p {
		line-height: 28px;
		font-size: 15px;
	}
	.radio-btn {
		height: 150px;
	}
	.radio-btn .hobbies-icon img {
		margin-bottom: 10px;
		height: 80px;
	}
	.pay-infos h5 {
		font-size: 20px;
	}
	.select-ticket-row-title-flex {
		flex-wrap: wrap;
	}
}


@media (max-width: 600px) {
	.operator_name {
		font-size: 17px;
	}
	.operator_icon {
		font-size: 12px;
		width: 20px;
		height: 20px;
		line-height: 20px;
	}
	.coach_name {
		font-size: 15px;
		margin: 3px 0px;
	}
	.mbrnad-name {
		font-size: 15px;
		margin-bottom: 3px;
	}
	.price_flex_mobile {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.maker_type {
		font-size: 15px;
		margin-bottom: 3px;
	}
	.dept-time-wrapper .abs_line::before, .dept-time-wrapper .abs_line::after {
		display: none;
	}
	.duration_time_wrap {
		color: #f00;
	}
	.dept-time-wrapper .dept_time {
		font-size: 15px;
	}
	.banner-slogan {
		font-size: 20px;
		margin: 5px 0px 25px;
	}

	.b-search-map__wrap {
		border-radius: 10px;
	}

	.label-blank {
		display: none !important;
	}

	#searchButton {
		margin-top: 8px;
	}

	/* Reviews */
	.review_carousel {
		width: 412%;
	}

	/* Congratulations page */
	.ticket_box {
		padding: 10px;
		min-height: auto;
		margin-bottom: 10px;
	}

	/* Login Page */
	.login-box {
		padding: 20px;
	}
	.page_title {
		font-size: 24px;
	}
	.passenger-details-box {
		padding: 20px;
	}
	/* Download */
	.download-ticket-box {
		padding: 20px;
	}

	/* Contact */
	.b-contact-form-box {
		min-height: auto;
		padding: 20px;
	}
	.globar_presence_content img {
		width: 110px;
		height: 110px;
	}
}

@media (max-width: 575px) {
	.repeat-arrow-img-btn {
		position: absolute;
		right: 0px !important;
		top: 72px;
		transform: rotate(90deg);
	}
	.border_right_gray {
		border-bottom: 2px dashed #e3e3e3;
		padding-bottom: 10px;
		border-right: 0px !important;
	}
	.seat-status-box {
		flex-wrap: nowrap !important;
	}
	.seat_layout {
		padding: 15px 0px 4px !important;
	}
	.ticket-status-table>tbody {
		border: 0 ;
		border-top: 1px solid #ddd;
	}
}
@media (max-width: 400px) {
	.single_search_result_item ul.result_content li .item-content p {
		font-size: 16px;
	}
	.bi_arrow {
		width: 100px;
	}
	.b-form-group label {
		font-size: 12px;
	}
	.ticket-status-table>tbody>tr>td {
		padding: 5px 8px !important;
		vertical-align: middle;
	}
	.seat-status-box {
		flex-wrap: nowrap !important;
	}
	.legend-label {
		line-height: 20px;
		margin: 0px 3px;
	}

	.seat-status-box ul {
		display: flex;
		margin: 0 5px 10px;
	}
	.stearing_image {
		width: 32px;
		height: auto!important;
		object-fit: contain;
		
	}
	.psnger-no {
		padding: 0px 4px;
	}
}

@media (max-width: 340px) {
.ring_phone {
	font-size: 14px;
}
}

/* ===bus tracker=== */
@media (max-width: 767px) {
	.tracking_map_height {
		height: 400px;
	}

	.servicesResultArea {
		position: relative;
		width: 100%;
		margin-bottom: 15px;
		z-index: 1;
		box-shadow: none;
	}

	#servicesResult {
		max-height: 320px;
	}

}

@media (max-width: 768px) {
	.last_update_test {
		position: relative;
		z-index: 0;
		right: 0;
		top: 0;
		font-size: 14px;
		background: transparent;
		line-height: 10px;
		box-shadow: none;
		padding: 5px 10px;
		border-radius: 0px;
		color: #000000;
		font-weight: 500 !important;
		text-transform: capitalize;
	}
}