/*
Theme Name: Superior Shuttle Express
Theme URI: https://thekhabar24.info/superior-shuttle-express/
Author: MR.SARKAR.WEBDEV
Author URI: https://thekhabar24.info/
Description: A custom WordPress theme developed exclusively for Superior Shuttle Express, featuring a modern, responsive, and performance-optimized design tailored for airport shuttle, transportation, and private transfer services.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: superior-shuttle-express
Tags: transportation, shuttle, airport-transfer, business, responsive, custom-theme, bootstrap, seo-friendly
*/


/* ==========================================================================
   RESPONSIVE MEDIA QUERIES
   Supplementary responsive layer for the theme CSS provided.
   Append this AFTER your main stylesheet (or Bootstrap + theme CSS).
   Breakpoints follow Bootstrap 4 convention:
   xs: <576px | sm: >=576px | md: >=768px | lg: >=992px | xl: >=1200px
   ========================================================================== */

/* ------------------------------------------------------------------
   1. Large desktop refinement (min-width: 1400px)
------------------------------------------------------------------ */
@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
    }
    .hero-wrap,
    .hero-wrap .overlay {
        height: 900px;
    }
    .slider-text h1 {
        font-size: 68px;
    }
}

/* ------------------------------------------------------------------
   2. Small desktops / laptops (max-width: 1199.98px)
------------------------------------------------------------------ */
@media (max-width: 1199.98px) {
    .hero-wrap,
    .hero-wrap .overlay {
        height: 700px;
    }
    .slider-text {
        height: auto;
    }
    .slider-text h1 {
        font-size: 48px;
    }
    .car-details .img {
        height: 450px;
    }
    .table {
        min-width: 900px !important;
    }
    .ftco-counter .img {
        background-position: center center !important;
    }
}

/* ------------------------------------------------------------------
   3. Tablets landscape (max-width: 991.98px)
------------------------------------------------------------------ */
@media (max-width: 991.98px) {
    /* Navbar collapse + dropdowns */
    .ftco-navbar-light {
        padding: 0.8rem 1rem;
    }
    .ftco-navbar-light .navbar-collapse {
        max-height: 70vh;
        overflow-y: auto;
    }
    .ftco-navbar-light .navbar-nav .sub-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        background: transparent;
        padding-left: 20px;
        display: none;
    }
    .ftco-navbar-light .navbar-nav .menu-item.show > .sub-menu,
    .ftco-navbar-light .navbar-nav .menu-item:hover > .sub-menu {
        display: block;
    }

    /* Hero / slider */
    .hero-wrap,
    .hero-wrap .overlay {
        height: 750px;
    }
    .hero-wrap.hero-wrap-2,
    .hero-wrap.hero-wrap-2 .overlay,
    .hero-wrap.hero-wrap-2 .slider-text {
        height: 55vh !important;
    }
    .hero-block {
        height: 45vh;
    }
    .slider-text {
        height: 750px;
    }
    .slider-text h1 {
        font-size: 38px;
    }

    #map {
        height: 350px;
    }

    .ftco-counter .img {
        height: 350px;
        background-position: top center !important;
    }
    .ftco-counter .counter-wrap {
        margin-bottom: 25px;
    }

    .contact-section .contact-info .border-height {
        border-left: none;
        border-right: none;
        border-top: 1px solid rgba(0, 0, 0, 0.1);
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding: 20px 0;
    }

    .car-details .img {
        height: 380px;
    }

    .img-wrapper {
        height: 60vh;
        aspect-ratio: auto;
    }

    .about-image {
        height: 350px;
        margin-bottom: 25px;
    }

    .table {
        min-width: 760px !important;
    }
}

/* ------------------------------------------------------------------
   4. Tablets portrait & large phones (max-width: 767.98px)
------------------------------------------------------------------ */
@media (max-width: 767.98px) {
    body {
        font-size: 15px;
    }

    .navbar-brand {
        font-size: 16px;
    }
    .custom-logo-link > img {
        width: 3.5rem;
    }

    .hero-wrap,
    .hero-wrap .overlay {
        height: 550px;
    }
    .slider-text {
        height: 550px;
    }
    .slider-text h1 {
        font-size: 30px;
    }
    .slider-text .icon-wrap .heading-title:after {
        display: none;
    }
    .hero-block {
        height: 40vh;
    }

    .heading-section h2,
    .heading-section.heading-section-white h2 {
        font-size: 26px;
    }

    .request-form {
        padding: 20px;
        margin-top: 25px;
    }

    .search-property-1 .form-group {
        margin-bottom: 15px;
    }

    .owl-custom-nav {
        float: none;
        display: flex;
        justify-content: center;
        margin-top: 15px;
    }

        .car-wrap .img {
        width: 100% !important;
        height: 200px !important;
        aspect-ratio: 2 / 1;
        background-size: 100%;
        background-repeat: no-repeat;
        background-position: center;
    }
    .car-wrap .text p.d-block a {
        width: 100%;
        margin-bottom: 10px;
    }

    .car-details .img {
        height: 280px;
        margin-bottom: 25px;
    }

    .car-list {
        -webkit-overflow-scrolling: touch;
    }
    .table {
        min-width: 640px !important;
    }
    .table tbody tr td.car-image .img {
        width: 120px;
        height: 70px;
    }

    .nav-pills {
        font-size: 15px;
        display: block;
        text-align: center;
    }
    .pills .tab-pane {
        padding: 1.2em 0.5em;
    }
    .pills .review {
        display: flex;
        flex-wrap: wrap;
    }
    .pills .review .user-img {
        width: 60px;
        height: 60px;
        margin-bottom: 10px;
    }
    .pills .review .desc {
        width: 100%;
        margin-left: 0;
    }
    .pills .review .desc h4 span,
    .pills .rating-wrap .star span:first-child,
    .pills .rating-wrap .star span:last-child {
        width: 100%;
        display: block;
    }

    .services-wrap {
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .services-wrap .icon {
        margin: 0 auto 15px auto;
    }
    .services-wrap .media-body {
        width: 100%;
    }

    #map {
        height: 280px;
    }

    .block-20,
    .block-20.img {
        height: 220px;
    }

    .block-21 .blog-img {
        height: 60px;
        width: 60px;
    }
    .block-21 .text {
        width: calc(100% - 75px);
    }

    .comment-list .children {
        padding: 25px 0 0 15px;
    }
    .comment-list li .vcard {
        width: 55px;
    }
    .comment-list li .comment-body {
        width: calc(100% - 55px);
    }

    .contact-section .contact-info {
        text-align: center;
        margin-bottom: 20px;
    }

    .subscribe-form .form-group {
        display: flex;
        flex-direction: column;
    }
    .subscribe-form .form-group input,
    .subscribe-form .form-group .submit {
        width: 100%;
        border-radius: 5px !important;
    }
    .subscribe-form .form-group .submit {
        margin-top: 10px;
    }

    .sidebar-wrap {
        margin-bottom: 35px;
    }

    .ftco-footer {
        padding: 4em 0;
        text-align: center;
    }
    .ftco-footer-social {
        display: flex;
        justify-content: center;
    }
    .ftco-footer-social li {
        margin: 0 6px 10px 6px;
    }

    .media .ftco-icon {
        width: 70px;
    }

    .img-wrapper {
        height: 45vh;
    }
}

/* ------------------------------------------------------------------
   5. Phones (max-width: 575.98px)
------------------------------------------------------------------ */
@media (max-width: 575.98px) {
    .hero-wrap,
    .hero-wrap .overlay {
        height: 480px;
    }
    .slider-text {
        height: 480px;
    }
    .slider-text h1 {
        font-size: 24px;
    }
    .slider-text p {
        font-size: 14px;
    }
    .slider-text .breadcrumbs {
        font-size: 12px;
    }

    .heading-section h2 {
        font-size: 22px;
    }
    .heading-section .subheading {
        font-size: 11px;
    }

    .table {
        min-width: 520px !important;
    }

    .car-wrap .price-wrap .rate {
        font-size: 18px;
    }

    .ftco-counter .text strong.number {
        font-size: 22px;
    }
    .ftco-counter .icon {
        width: 55px;
        height: 55px;
    }
    .ftco-counter .icon span {
        font-size: 32px;
    }

    #faqAccordion .card-header button {
        font-size: 14px;
        padding: 14px 45px 14px 15px;
    }

    .search-property-1 .form-group .form-control.btn {
        margin-top: 10px;
    }

    .img-wrapper {
        height: 38vh;
    }

    .testimony-wrap {
        padding: 0 12px;
    }
    .testimony-wrap .user-img {
        width: 70px;
        height: 70px;
    }
}

/* ------------------------------------------------------------------
   6. Very small phones (max-width: 375px)
------------------------------------------------------------------ */
@media (max-width: 375px) {
    .navbar-brand {
        font-size: 14px;
    }
    .slider-text h1 {
        font-size: 20px;
    }
    .btn {
        font-size: 13px;
        padding: 0.4rem 0.9rem;
    }
    .car-wrap .text h2 {
        font-size: 16px;
    }
}

/* ------------------------------------------------------------------
   7. background-attachment: fixed breaks on iOS Safari / touch devices
------------------------------------------------------------------ */
@media (max-width: 991.98px), (hover: none) and (pointer: coarse) {
    .hero-block,
    .img,
    .blog-img,
    .user-img {
        background-attachment: scroll;
    }
}

/* ------------------------------------------------------------------
   8. Landscape phone orientation
------------------------------------------------------------------ */
@media (max-width: 767.98px) and (orientation: landscape) {
    .hero-wrap,
    .hero-wrap .overlay,
    .slider-text,
    .hero-block {
        height: 100vh;
    }
}