.gallery-card {position: relative; border-radius: 12px; overflow: hidden; cursor: pointer;}
.gallery-card img {
    width: 100%; display: block; transition: transform 0.4s ease;
    height: 380px !important; object-fit: cover;
}
.gallery-card:hover img {transform: scale(1.05);}
.gallery-card-overlay {
    position: absolute; bottom: 0; left: 0; width: 100%; padding: 20px;
    background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0));
    color: #fff; opacity: 0; transform: translateY(20px); transition: all 0.4s ease;
}
.gallery-card:hover .gallery-card-overlay {opacity: 1; transform: translateY(0);}
.gallery-card-overlay h3 {
    font-size: 30px !important; font-weight: 500 !important;
    margin: 0 0 8px; color: #fff !important;
}
.gallery-card-btn {
    color: #fff !important; text-decoration: none; font-size: 15px;
    font-weight: 500; display: inline-block; transition: color 0.3s;
}
.gallery-card-btn:hover {color: #ff6600;}

/* === Gallery Grid Container === */
.layout-masonry {column-gap: 16px; column-fill: balance; column-count: 1;}

.sbstc-gallery-item {
    break-inside: avoid; margin: 0 0 10px 0; overflow: hidden; display: inline-block; 
    width: 100%; background-color: #fff; border-radius:10px; position: relative;
    transition: transform .2s ease, box-shadow .2s ease;
}
.sbstc-gallery-item img {display: block; width: 100%; height: auto;}
.sbstc-gallery-item h3 {
    font-size: 24px !important; font-weight: 500 !important;
    margin: 0 0 8px; color: #fff !important;
}
.sbstc-gallery-item .overlay {
    position: absolute; bottom: 0; left: 0; width: 100%; padding: 20px;
    background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0));
    color: #fff; opacity: 0; transform: translateY(20px); transition: all 0.4s ease;
}
.sbstc-gallery-item:hover .overlay {opacity: 1; transform: translateY(0);}

/* respect reduced motion */
@media (prefers-reduced-motion: reduce) {
    .sbstc-gallery-item {
        transition: none;
    }
}
@media (min-width: 600px) {
    .layout-masonry { column-count: 2;}
}
@media (min-width: 900px) {
    .layout-masonry { column-count: 3;}
}

/* Loader style */
.infinite-scroll-loader {
    text-align: center; padding: 20px; font-size: 16px;
    font-weight: 500; color: #666;
}

/* Bus route */
.sbstc-search-map-wrap {
    display: flex; justify-content: space-between;
    align-items: flex-start; gap: 20px;
}
.sbstc-search-result {width: 100%; overflow-x: auto;}
.sbstc-searched-map {width: 100%; border: 0;}
.sbstc-search-result {margin-top: 20px; font-family: 'Poppins', sans-serif;}

.sbstc-searched-data {
    width: 100%; border-collapse: collapse; font-family: 'Poppins', sans-serif; border-radius: 6px;
    font-size: 16px; color: #000000; background-color: #E7EEF4; overflow: hidden;   
}
.sbstc-searched-data th {font-weight: 500;}
.sbstc-searched-data td {font-weight: 400;}
.sbstc-searched-data thead {background-color: #0070C0; color: #fff; text-align: center;}
.sbstc-searched-data tbody {text-align: center;}
.sbstc-searched-data th,
.sbstc-searched-data td {border-bottom: 1px solid rgba(0, 0, 0, 0.1);}
.sbstc-searched-data thead:first-child tr:first-child th {border-block-start: 1px solid rgba(0, 0, 0, 0.1);}
.sbstc-searched-data tbody td:nth-child(even), 
.sbstc-searched-data tbody td:hover, table tbody>tr:nth-child(odd)>td {background-color: #E7EEF4;}
.bus-reset-button img{background-color: #0070C0; padding: 10px; border-radius: 50% !important;}


/* CSS Added By Tushar */
.top-contact-info .elementor-icon-box-content p{margin-bottom: 0px;}

.elementor-shortcode .bus-search-box{display: flex; gap: 15px; align-items: center;}
.elementor-shortcode .bus-search-box .bus-search-field{display: flex; align-items: center; gap: 15px; width: 50%;}
.elementor-shortcode .bus-search-box .bus-search-field:first-child{border-right: 1px solid #ececec; padding-right: 15px;}
.elementor-shortcode .bus-search-box .bus-search-field div{flex: 1;}
.elementor-shortcode .bus-search-box .bus-search-field .select2-selection{border: 0px;}
.elementor-shortcode .bus-search-box .bus-search-field .select2-selection__rendered{padding: 0px;}
.elementor-shortcode .bus-search-box .bus-search-field .select2-selection__arrow{display: none;}
.elementor-shortcode .bus-search-box .bus-search-field .dashicons-location{color: #0070C0; font-size: 30px;}
.elementor-shortcode .bus-search-box .bus-search-button{border-radius: 100%; width: 40px; height: 40px;}
.elementor-shortcode .bus-search-box .bus-search-button:hover,
.elementor-shortcode .bus-search-box .bus-search-button:focus{background-color: #0070C0;}


.search-route .bus-search-box{
    background-color: #FFFFFF; box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2); padding: 20px;
    display: flex; flex-direction: row; align-items: center; gap: 15px; border-radius: 8px;
}
.search-route .bus-search-box .bus-search-field{border-right: 1px solid #ececec; padding-right: 15px; width: 27%;}
.search-route .bus-search-box .bus-search-field:last-child{border-right: 0; padding-right: 0px;}
.search-route .bus-search-box .bus-search-field .dashicons-clock{color: #0070C0; font-size: 30px;}
.search-route .bus-search-box .bus-search-value input{border: 0; color: #999;}

.search-route .bus-search-box .busrSearchBtnWrap{display: flex; align-items: center; gap:10px;}
.search-route .bus-search-box .busrSearchBtnWrap .bus-reset-button{width: 55px; height: 55px;}
.search-route .bus-search-box .busrSearchBtnWrap .bus-search-button{
    background: #0070c0; background-image: linear-gradient(270deg, #119CFF 0%, #0262A7 100%);
    width: auto; border-radius: 40px; padding: 5px 34px 5px 20px;
    align-items: center; height: 50px; display: flex; gap: 10px;
}
.search-route .bus-search-box .busrSearchBtnWrap .bus-search-button:hover{
    color: #ffffff !important; 
    background-image: linear-gradient(270deg, #0262A7 0%, #119CFF 100%);
}

.book-online-btn{width: 170px;}

.notice-slider_wrap nav.elementor-pagination{position: absolute; right: 0; top: -30px; margin-top: 0 !important; display: flex;}
.notice-slider_wrap nav.elementor-pagination .page-numbers{
    border: 1px solid #119CFF; border-radius: 10px;
    padding: 5px; width: 36px; height: 36px; text-indent: 999px;
    display: block; overflow: hidden; position: relative;
}
.notice-slider_wrap nav.elementor-pagination .page-numbers:after{content: ''; position: absolute; left: 12px; top: 8px; width: 10px; height: 16px;}
.notice-slider_wrap nav.elementor-pagination .page-numbers.prev:after{background: url(../images/prev_arrow.png) 0 0 no-repeat;}
.notice-slider_wrap nav.elementor-pagination .page-numbers.next:after{background: url(../images/next_arrow.png) 0 0 no-repeat;}
.notice-slider_wrap nav.elementor-pagination span.page-numbers.prev,
.notice-slider_wrap nav.elementor-pagination span.page-numbers.next{opacity: 0.2;}

.top-sbst-email a{word-wrap: break-word;}
.footer-contact-us ul li{
    word-break: break-word;
    overflow-wrap: break-word;
    white-space: pre-wrap;
}

marquee.disclaimer p{font-weight: 400 !important; font-size: 18px; margin-bottom: 0;}
marquee.disclaimer2 p{font-weight: 400 !important; font-size: 24px; margin-bottom: 0; color: #fff; letter-spacing: 1;}

/*.fancybox-navigation .fancybox-button--arrow_left,
.fancybox-navigation .fancybox-button--arrow_right{
    opacity: 1 !important; visibility: visible !important; padding: 0 !important;
    width: 40px !important; height: 40px !important; border-radius: 0;
}
*/
/* Visitors counter – make it blend with footer */
.vistors-class .mrstar-visitor-count-display {
    background: transparent;
    padding: 0;
}

/* Each line */
.vistors-class .mrstar-visitor-count-display-item {
    margin-bottom: 6px;
}

/* Text styling */
.vistors-class .item-inline-inner {
    color: #ffffff;            /* footer text color */
    font-size: 14px;
    font-weight: 400;
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Number badge – remove box & color */
.vistors-class .item-inline-badge {
    background: transparent !important;
    color: #ffffff !important;
    padding: 0;
    border-radius: 0;
    font-weight: 500;
}

@media (max-width: 1600px) {
    .home-banner-slider .swiper-wrapper .swiper-slide h1.elementor-heading-title{
        margin: 0 100px;
    }
}

/* === Responsive === */
@media (max-width: 1200px) {
    .search-route .bus-search-box{flex-wrap: wrap; justify-content: space-between;}
    .search-route .bus-search-box .bus-search-field{width: 30%;}
}
@media (max-width: 1024px) {
    .sbstc-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .notice-slider_wrap nav.elementor-pagination{
        top: -20px;
    }

    .search-route .bus-search-box .bus-search-field,
    .search-route .bus-search-box .bus-search-field:first-child{width: 45%; border: 0; padding-right: 0px;}

    .sbstc-search-map-wrap {flex-wrap: wrap;}
}

@media (max-width:767px) {
    .top-social-media{
        display: none !important;
    }

    .sbstc-gallery-item h3 {font-size: 20px !important;}

    .search-route .bus-search-box .bus-search-field,
    .search-route .bus-search-box .bus-search-field:first-child{width: 100%; border: 0; padding-right: 0px;}   

}

@media (max-width: 600px) {
    .sbstc-gallery-grid {
        grid-template-columns: 1fr;
    }

    .home-banner-slider .swiper-wrapper .swiper-slide h1.elementor-heading-title{
        margin: 0 40px;
    }

    .elementor-shortcode .bus-search-box{flex-wrap: wrap;}
    .elementor-shortcode .bus-search-box .bus-search-field{width: 100%;}
    .elementor-shortcode .bus-search-box .bus-search-field:first-child {border-right: 0; padding-right: 0;}
    .elementor-shortcode .bus-search-box .busrSearchBtnWrap{width: 100%;}
    .elementor-shortcode .bus-search-box .bus-search-button {border-radius: 24px; width: 100%;}

    .book-online-btn, .hiring-bus-btn {width: 100%;}
    .book-online-btn a, .hiring-bus-btn a{display: block;}

    .gallery-card-overlay h3{
        line-height: 1.4 !important;
    }

    .gallery-card .gallery-card-overlay {
        opacity: 1;
        transform: translateY(0);
    }
}
