/*=========================================
        TABLET (991px and below)
=========================================*/

@media (max-width: 991px) {

}


/*=========================================
        MOBILE (768px and below)
=========================================*/
/*==================================================
HOME PAGE
==================================================*/
@media (max-width:768px){
.short-tour-grid{
    position: relative;
    z-index: 1000;
}

.short-tour-card{
    position: relative;
    z-index: 1001;
}
    /* Header */

    .top-header{

    position:absolute;
    top:0;
    left:0;
    width:100%;
    z-index:999;

    background:rgb(255, 255, 255);

    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);

    border-bottom:1px solid rgba(255,215,0,.35);

    box-shadow:0 8px 25px rgba(0,0,0,.12);

}

.header-wrapper{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:12px;

    min-height:56px;

    padding:6px 14px;

}
    /* Logo */

        .logo{
    display:flex;
    align-items:center;
    flex-shrink:0;
}

.logo img{
    height:42px;
    width:42px;
    object-fit:contain;
}

    .logo-title{

    display:block;

    flex:1;

    min-width:0;

    font-size:12px;

    font-weight:700;

    white-space:nowrap;

    overflow:hidden;
        letter-spacing:0;


    text-overflow:clip;
}
/* Mobile Header Buttons */

.header-buttons{
    display:flex;
    align-items:center;
    gap:8px;
    margin-left:auto;
}

.call-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    padding:8px 14px;
    height:40px;

    border-radius:22px;
}

.call-btn span{
    display:inline;
}

/* WhatsApp Header Button */

.header-buttons .whatsapp-btn{
    display:flex;
    align-items:center;
    justify-content:center;

    width:40px;
    height:40px;

    padding:0;

    border-radius:50%;
}

.header-buttons .whatsapp-btn span{
    display:none;
}

.header-buttons .whatsapp-btn i{
    font-size:18px;
}

.header-buttons .book-btn{
    display:none;
}

/*=========================================
        MOBILE SIDE MENU
=========================================*/

.mobile-menu-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:30px;

}

.mobile-menu-header span{

    font-size:20px;

    font-weight:700;

}

.close-menu{

    font-size:28px;

    cursor:pointer;

}

.mobile-nav{

    display:flex;

    flex-direction:column;

    gap:14px;

}

.mobile-nav a{

    color:#222;

    font-size:16px;

    font-weight:600;

}

.mobile-buttons{

    margin-top:25px;

    display:flex;

    flex-direction:column;

    gap:10px;

}

.mobile-buttons a{
    padding:10px 16px;
    font-size:14px;
}

.menu-overlay{
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    opacity: 0;
    visibility: hidden;
}

.menu-overlay.active{
    opacity: 1;
    visibility: visible;
}

    /* Hide desktop navigation */

    .navbar-custom{
        display:none;
    }

/* Mobile Header Buttons */

.header-buttons{
    display:flex;
    align-items:center;
    gap:8px;
}

.call-btn{
    padding:8px 14px;
    height:40px;
    border-radius:22px;
}

.call-btn span{
    display:inline;
}

/* Only the HEADER WhatsApp button */
.header-buttons .whatsapp-btn{
    width:40px;
    height:40px;
    padding:0;
    border-radius:50%;
}

.header-buttons .whatsapp-btn span{
    display:none;
}

.header-buttons .book-btn{
    display:none;
}


    /* Show hamburger */

    .menu-toggle{

    display:flex;

    align-items:center;

    justify-content:center;

    width:42px;

    height:42px;

    text-align:center;


    margin-left:12px;

    flex-shrink:0;

    font-size:30px;

}
/* ============================
   HERO MOBILE
============================ */

.hero{
    height:40vh;
    min-height:430px;
}

.hero-content{
    display:flex;
    flex-direction:column;
    justify-content:flex-end;

    height:100%;

    padding:115spx 10px 5px;
    align-items:center !important;
    text-align:center !important;
    text-align:center;
}

.hero-tag{
    display:none;
}

.hero h1{
    width:100%;
    text-align:center !important;
    margin:0 auto 10px !important;
    font-size:20px !important;
    line-height:1.15;
    text-align:center;
}

.hero-content h1 span{
    display:block;
    text-align:center;
}

.hero p{

    font-size:9px;

    line-height:1.35;

    max-width:220px;

    margin:8px auto 14px;
}

.hero-buttons{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;

    margin-top:20px;
}

.hero-book-btn,
.hero-tour-btn{

    width:125px;

    padding:6px 0;

    font-size:10px;

    border-radius:22px;
}

.hero-features{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:nowrap;
    width:100%;
    gap:4px;
    margin-top:10px;
}

.hero-features div{
    display:flex;
    align-items:center;
    gap:3px;
    white-space:nowrap;
    font-size:12px !important;
}

.hero-features i{
    font-size: 12px !important;
}

.hero-prev,
.hero-next{

    width:5px;
    height:5px;
}


/* Hero Slider Dots */

.hero-dots{
    bottom:8px;
}

.hero-dots .dot{
    width:6px;
    height:6px;
    margin:0 2px;
}

.hero-dots .dot.active{
    width:16px;
}


/*=========================================
      WHY CHOOSE US - COMPACT MOBILE
=========================================*/

.why-us{
    padding:15px 0;
}

.section-title{
    margin-bottom:12px;
}

.section-title span{
    font-size:9px;
}

.section-title h2{
    font-size:18px;
    margin:4px 0;
    line-height:1.2;
}

.section-title p{
    font-size:10px;
    line-height:1.3;
    max-width:260px;
}

.why-grid{

    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:6px;

    align-items:stretch;
}

.why-card{
    padding:10px 5px;
}

.why-card i{
    font-size:18px;
    margin-bottom:4px;
}

.why-card h3{
    font-size:15px;
    margin-bottom:1px;
}

.why-card p{
    font-size:8px;
    line-height:1.1;
}

/*=========================================
    POPULAR AIRPORT ROUTES - MOBILE
=========================================*/

.airport-routes{
    padding:18px 0;
}

.airport-routes .section-title{
    margin-bottom:12px;
}

.airport-routes .section-title span{
    font-size:9px;
}

.airport-routes .section-title h2{
    font-size:18px;
    margin:5px 0;
}

.airport-routes .section-title p{
    font-size:10px;
    line-height:1.3;
    max-width:260px;
    margin:auto;
}

/* One card per row */
.routes-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
    margin-top:12px;
}

.route-card{
    border-radius:12px;
}

.route-image img{
    height:90px;
}

.route-content{
    padding:8px;
}

.route-content h3{
    font-size:11px;
    line-height:1.25;
    margin-bottom:6px;
}

.route-price div{
    padding:5px 6px;
    font-size:10px;
}

.route-price strong{
    font-size:11px;
}

.route-bottom span{
    font-size:9px;
}

.route-bottom a{
    padding:7px;
    font-size:10px;
}
/* Buttons */

.route-buttons{
    flex-direction:column;
    gap:10px;
    margin-top:18px;
}

.view-more-btn,
.services-btn{
    width:100%;
    justify-content:center;
    padding:10px;
    font-size:13px;
}

/* Hidden routes */

.more-routes.show{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:8px;
}
.more-routes .route-content{
    padding:8px;
}

.more-routes .route-content h3{
    font-size:10px;
    line-height:1.2;
}

.more-routes .route-price div{
    padding:4px;
    font-size:9px;
}

.more-routes .route-price strong{
    font-size:10px;
}

.more-routes .route-bottom{
    flex-direction:column;
    gap:4px;
}

.more-routes .route-bottom span{
    font-size:8px;
}

.more-routes .route-bottom a{
    padding:5px;
    font-size:8px;
}

/*=========================================
    OUTSTATION TAXI - MOBILE
=========================================*/

.outstation-section{
    padding:18px 0;
}

.outstation-section .section-title{
    margin-bottom:12px;
}

.outstation-section .section-title span{
    font-size:9px;
}

.outstation-section .section-title h2{
    font-size:18px;
    margin:5px 0;
}

.outstation-section .section-title p{
    font-size:10px;
    line-height:1.3;
    max-width:260px;
    margin:auto;
}

.outstation-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
    margin-top:12px;
}

.outstation-card{
    border-radius:12px;
}

.outstation-card img{
    height:90px;
}

.route-badge{
    top:6px;
    left:6px;
    padding:3px 6px;
    font-size:8px;
}

.outstation-content{
    padding:8px;
}

.outstation-content h3{
    font-size:11px;
    padding:6px;
    margin-bottom:6px;
}

.price-box{
    margin-bottom:6px;
}

.price-row{
    padding:5px 6px;
    font-size:10px;
}

.price-row strong{
    font-size:11px;
}

.trip-time{
    padding:5px;
    margin:6px 0;
    font-size:9px;
}

.book-route-btn{
    padding:7px;
    font-size:10px;
    gap:4px;
}

/* ==========================================
      PREMIUM FLEET - MOBILE
========================================== */

.fleet-section{
    padding:35px 0;
}

.fleet-header{
    margin-bottom:25px;
}

.fleet-subtitle{
    font-size:10px;
    letter-spacing:1.5px;
}

.fleet-header h2{
    font-size:24px;
    margin:8px 0;
    line-height:1.25;
}

.fleet-header p{
    font-size:12px;
    line-height:1.5;
    max-width:300px;
}

/* Slider */

/* Card */
.fleet-card{
    min-width:220px;      /* was 260px */
    border-radius:15px;
}

/* Image */
.fleet-image{
    height:145px;         /* was 170px */
}

/* Content */
.fleet-content{
    padding:12px;         /* was 16px */
}

.fleet-content h3{
    font-size:17px;       /* was 20px */
    margin-bottom:8px;
}

/* Specs */
.fleet-spec{
    font-size:11px;
    gap:6px;
    margin:6px 0;
}

.fleet-spec i{
    font-size:11px;
}

/* Price Box */
.fleet-price{
    margin:12px 0;
    padding:10px;
}

.fleet-price small{
    font-size:8px;
}

.fleet-price strong{
    font-size:22px;       /* was 28px */
}

.fleet-price span{
    font-size:10px;
}

/* Button */
.fleet-btn{
    padding:8px;
    font-size:11px;
}

/* Badge */
.fleet-badge{
    padding:4px 8px;
    font-size:8px;
}

.view-fleet-btn{
    padding:10px 22px;
    font-size:12px;
    gap:8px;
}

.fleet-footer{
    margin-top:25px;
}

/* Arrows */

.fleet-arrow{
    width:34px;
    height:34px;
    font-size:13px;
}

.fleet-prev{
    left:-8px;
}

.fleet-next{
    right:-8px;
}

/* ==========================================
        TOUR SECTION - MOBILE
========================================== */

.tour-section{
    padding:35px 0;
}

.tour-section .section-title{
    margin-bottom:22px;
}

.tour-section .section-title span{
    font-size:10px;
    letter-spacing:1.5px;
}

.tour-section .section-title h2{
    font-size:24px;
    line-height:1.3;
    margin:8px 0;
}

.tour-section .section-title p{
    font-size:12px;
    line-height:1.5;
    max-width:300px;
    margin:auto;
}

/* Two cards per row */

.tour-grid{
    grid-template-columns:repeat(2,1fr);
    gap:12px;
    margin-top:20px;
}

.tour-card{
    padding:0;
    border-radius:15px;
    overflow:hidden;
}

.tour-image img{
    width:100%;
    height:140px;
    object-fit:cover;
}

.tour-badge{
    top:8px;
    left:8px;
    padding:4px 8px;
    font-size:8px;
}

.tour-overlay{
    padding:12px;
}

.tour-overlay h3{
    font-size:14px;
    margin-bottom:8px;
}

.tour-meta{
    gap:5px;
}

.tour-meta span{
    font-size:9px;
    line-height:1.3;
}

.tour-btn{
    margin-top:10px;
    padding:7px 10px;
    font-size:10px;
    border-radius:20px;
}

/*=========================================
HOME GALLERY
=========================================*/

.home-gallery{
    padding:80px 0;
    background:linear-gradient(180deg,#071727,#0b2238);
    position:relative;
    overflow:hidden;
}

.home-gallery::before{
    content:"";
    position:absolute;
    width:550px;
    height:550px;
    border-radius:50%;
    background:rgba(255,193,7,.05);
    top:-220px;
    left:-220px;
    filter:blur(120px);
}

.home-gallery::after{
    content:"";
    position:absolute;
    width:550px;
    height:550px;
    border-radius:50%;
    background:rgba(37,211,102,.05);
    right:-220px;
    bottom:-220px;
    filter:blur(120px);
}

/* Heading */

.home-gallery .section-title{
    text-align:center;
    margin-bottom:45px;
    position:relative;
    z-index:2;
}

.home-gallery .section-title span{
    display:inline-block;
    color:#FFC107;
    font-size:16px;
    font-weight:700;
    letter-spacing:3px;
    margin-bottom:12px;
}

.home-gallery .section-title h2{
    color:#fff;
    font-size:40px;
    font-weight:800;
}

/* Slider */

.gallery-slider{
    position:relative;
    overflow:hidden;
}

/* Fade Effect */

.gallery-slider::before,
.gallery-slider::after{
    content:"";
    position:absolute;
    top:0;
    width:120px;
    height:100%;
    z-index:5;
    pointer-events:none;
}

.gallery-slider::before{
    left:0;
    background:linear-gradient(to right,#071727,transparent);
}

.gallery-slider::after{
    right:0;
    background:linear-gradient(to left,#071727,transparent);
}

/* Track */

.gallery-track{
    display:flex;
    gap:18px;
    width:max-content;
    animation:galleryScroll 45s linear infinite;
}

.gallery-slider:hover .gallery-track{
    animation-play-state:paused;
}

/* Gallery Card */

.gallery-item{
    flex:none;
    width:310px;
    height:210px;
    overflow:hidden;
    border-radius:18px;
    background:#fff;
    cursor:pointer;
    transition:.35s ease;
    box-shadow:0 15px 35px rgba(0,0,0,.30);
}

.gallery-item:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 45px rgba(255,193,7,.20);
}

.gallery-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .5s ease;
}

.gallery-item:hover img{
    transform:scale(1.08);
}

/* Button */

.gallery-footer{
    text-align:center;
    margin-top:40px;
}

.gallery-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:15px 34px;
    border-radius:50px;
    background:#25D366;
    color:#fff;
    text-decoration:none;
    font-weight:700;
    transition:.3s;
    box-shadow:0 10px 30px rgba(37,211,102,.35);
}

.gallery-btn:hover{
    transform:translateY(-4px);
    background:#1EBE5A;
}

/* Animation */

@keyframes galleryScroll{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}

/*=========================================
LIGHTBOX
=========================================*/

.gallery-lightbox{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.92);
    display:none;
    align-items:center;
    justify-content:center;
    z-index:999999;
}

.gallery-lightbox.active{
    display:flex;
}

.gallery-lightbox img{
    max-width:90%;
    max-height:85%;
    border-radius:15px;
    box-shadow:0 20px 60px rgba(0,0,0,.6);
}

.gallery-close{
    position:absolute;
    top:25px;
    right:35px;
    color:#fff;
    font-size:42px;
    cursor:pointer;
    transition:.3s;
}

.gallery-close:hover{
    color:#FFC107;
    transform:rotate(90deg);
}

.gallery-prev,
.gallery-next{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:55px;
    height:55px;
    border:none;
    border-radius:50%;
    background:#fff;
    cursor:pointer;
    font-size:18px;
    transition:.3s;
}

.gallery-prev{
    left:30px;
}

.gallery-next{
    right:30px;
}

.gallery-prev:hover,
.gallery-next:hover{
    background:#FFC107;
}

/*=========================================
TABLET
=========================================*/

@media(max-width:992px){

    .home-gallery{
        padding:70px 0;
    }

    .home-gallery .section-title h2{
        font-size:34px;
    }

    .gallery-item{
        width:260px;
        height:180px;
    }

    .gallery-slider::before,
    .gallery-slider::after{
        width:70px;
    }

}

/*=========================================
MOBILE
=========================================*/

@media(max-width:768px){

    .home-gallery{
        padding:60px 0;
    }

    .home-gallery .section-title h2{
        font-size:28px;
        line-height:1.4;
    }

    .gallery-track{
    gap:8px;
}

     .gallery-item{
        width:165px;
        height:120px;
        overflow:hidden;
    }

    .gallery-item img{
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center;
        display:block;
    }

    .gallery-slider::before,
    .gallery-slider::after{
        width:15px;
    }

    .gallery-btn{
    display:inline-flex;
    width:auto;
    padding:10px 22px;
    font-size:14px;
    border-radius:30px;
    justify-content:center;
    gap:8px;
}

    .gallery-prev,
    .gallery-next{
        width:42px;
        height:42px;
    }

    .gallery-close{
        right:20px;
        top:20px;
        font-size:32px;
    }

}

/*==================================================
        FOOTER MOBILE OPTIMIZATION
==================================================*/


/*=========================================
        COMPACT MOBILE FOOTER
=========================================*/

@media (max-width:768px){

.footer{
    padding:25px 0 10px;
}

.footer .container{
    padding:0 15px;
}

.footer-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px 15px;
    align-items:start;
}

/* Brand takes full width */
.footer-brand{
    grid-column:1/-1;
    text-align:center;
}

.footer-logo{
    width:55px;
    margin:0 auto 8px;
}

.footer-brand h3{
    font-size:18px;
    margin-bottom:8px;
}

.footer-brand p{
    font-size:12px;
    line-height:1.5;
    margin-bottom:12px;
}

/* Headings */

.footer-col h4{
    font-size:15px;
    margin-bottom:10px;
}

.footer-col h4::after{
    width:30px;
    left:0;
    transform:none;
}

/* Links */

.footer ul li{
    margin-bottom:6px;
}

.footer ul li a{
    font-size:12px;
}

/* Contact */

.footer-contact li{
    margin-bottom:8px;
    font-size:12px;
    gap:6px;
    word-break:break-word;
}

.footer-contact span{
    word-break:break-word;
    overflow-wrap:anywhere;
}

/* Social */

.footer-social{
    justify-content:center;
    gap:8px;
}

.footer-social a{
    width:34px;
    height:34px;
    font-size:14px;
}

/* Bottom */

.footer-divider{
    margin:15px 0 10px;
}

.footer-bottom{
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    gap:10px;
}

.footer-bottom p{
    font-size:11px;
}

.footer-policy{
    gap:10px;
}

.footer-policy a{
    font-size:11px;
}

.footer-disclaimer{
    font-size:8px;
    line-height:1.3;
    padding:8px 12px 0;
}

}
/*==================================================
ABOUT PAGE RESPONSIVE
==================================================*/


}
/* ===== ABOUT HERO ===== */

/* ===== ABOUT HERO MOBILE ===== */

@media (max-width: 768px) {

    .about-hero {
        height: 38vh;
        min-height: 240px;
        max-height: 280px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: 0 18px;
    }

    .about-hero-content {
        width: 100%;
        padding: 0;
    }

    .about-hero-content h1 {
        font-size: 1.4rem !important;
        font-weight: 700;
        line-height: 1.25;
        margin: 0 0 8px;
    }

    .about-hero-content p {
        font-size: 0.85rem !important;
        line-height: 1.5;
        margin: 0 auto;
        max-width: 280px;
    }
.about-hero-content {
    position: relative;
    top: 40px;   /* Try 20px first */
}

/* ===== ABOUT INTRO (MOBILE) ===== */

@media (max-width:768px){

    .about-intro{
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        text-align:center;
    padding:20px 15px;
        gap:15px;
    }

    .about-logo-box img{
        width:90px;
        height:auto;
    }

    .about-intro-text h2{
    font-size:1.2rem;
        line-height:1.3;
        margin-bottom:12px;
    }

    .about-intro-text p{
        font-size:0.9rem;
        line-height:1.5;
        margin-bottom:8px;
    }

}

}

/* ===== OUR JOURNEY (MOBILE) ===== */

@media (max-width:768px){

    .journey-section{
        padding:25px 16px;
    }

    .journey-section h2{
        font-size:1.5rem;
        margin-bottom:6px;
        text-align:center;
                color:#d99b00;

    }

    .journey-tagline{
        font-size:0.8rem;
        margin-bottom:15px;
        text-align:center;
        color:#dad60e;
    }

    .journey-content p{
        font-size:0.82rem;
        line-height:1.5;
        margin-bottom:10px;
        text-align:left;
    }

    .journey-content h3{
        font-size:0.95rem;
        line-height:1.4;
        padding:10px;
        margin-top:15px;
    }

}


/* ===== CERTIFICATES SECTION (MOBILE) ===== */

@media (max-width:768px){

    .certificate-section{
        padding:25px 16px;
        text-align:center;
    }

    .certificate-section h2{
        font-size:1.4rem;
        margin-bottom:8px;
    }

    .certificate-section > p{
        font-size:0.8rem;
        line-height:1.5;
        margin-bottom:18px;
    }

    .documents-grid{
        display:grid;
        grid-template-columns:repeat(2, 1fr);
        gap:12px;
    }

    .document-card{
        padding:10px;
        border-radius:10px;
    }

    .document-card img{
        width:100%;
        height:120px;
        object-fit:cover;
        border-radius:8px;
        margin-bottom:8px;
    }

    .document-card h3{
        font-size:0.8rem;
        line-height:1.3;
        margin-bottom:8px;
    }

    .document-card a{
        display:inline-block;
        padding:6px 10px;
        font-size:0.75rem;
        border-radius:6px;
    }

}

/* ===== LEADERSHIP SECTION (MOBILE) ===== */

@media (max-width:768px){

    .leadership-section{
        padding:25px 16px;
        text-align:center;
    }

    .leadership-section h2{
        font-size:1.4rem;
        margin-bottom:18px;
    }

    .leader-grid{
        display:grid !important;
        grid-template-columns:repeat(2,1fr);
        gap:12px;
    }

    .leader-card{
        padding:12px;
        border-radius:12px;
    }

    .leader-card img{
        width:80px;
        height:80px;
        object-fit:cover;
        border-radius:50%;
        margin-bottom:10px;
    }

    .leader-card h3{
        font-size:0.9rem;
        margin-bottom:4px;
        line-height:1.3;
    }

    .leader-card h4{
        font-size:0.75rem;
        margin-bottom:8px;
        color:#f4a100;
        font-weight:600;
    }

    .leader-card p{
        font-size:0.75rem;
        line-height:1.4;
        margin:0;
    }

}

/* ===== SERVICE COVERAGE (MOBILE) ===== */

@media (max-width:768px){

    .coverage-section{
        padding:25px 16px;
        text-align:center;
    }

    .coverage-section h2{
        font-size:1.4rem;
        margin-bottom:18px;
    }

    .coverage-grid{
        display:grid !important;
        grid-template-columns:repeat(2,1fr);
        gap:12px;
    }

    .coverage-card{
        padding:14px 10px;
        border-radius:12px;
    }

    .coverage-card i{
        font-size:1.6rem;
        margin-bottom:10px;
    }

    .coverage-card h3{
        font-size:0.9rem;
        line-height:1.3;
        margin-bottom:8px;
    }

    .coverage-card p{
        font-size:0.75rem;
        line-height:1.4;
        margin:0;
    }

}

/* ===== ABOUT CTA (MOBILE) ===== */

@media (max-width:768px){

    .about-cta{
        padding:30px 18px;
        text-align:center;
    }

    .about-cta h2{
        font-size:1.5rem;
        line-height:1.2;
        margin-bottom:10px;
    }

    .about-cta p{
        font-size:0.85rem;
        line-height:1.5;
        max-width:320px;
        margin:0 auto 20px;
    }

    .about-cta .hero-buttons{
        display:flex;
        justify-content:center;
        align-items:center;
        gap:10px;
        flex-wrap:wrap;
    }

    .about-cta .btn{
        padding:10px 18px;
        font-size:0.85rem;
        border-radius:8px;
        min-width:140px;
    }

    .about-cta .btn i{
        font-size:0.9rem;
        margin-right:6px;
    }

}

/* ===== SERVICES HERO MOBILE ===== */

@media (max-width:768px){

    .services-hero{
        height:48vh;
        min-height:320px;
        max-height:360px;

        display:flex;
        justify-content:flex-end;
        align-items:center;

        padding:20px 18px;
    }

    .services-hero .hero-content{
        width:100%;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:flex-end;

        position:relative;
        top:20px;          /* pushes everything DOWN */
    }

    .services-hero .hero-content h1{
        font-size:18px !important;
        font-weight:700;
        line-height:1.2;
        color:#fff;
        margin:0 0 8px;
        text-align:center;
    }

    .services-hero .hero-content p{
        font-size:0.75rem !important;
        color:#fff;
        line-height:1.4;
        text-align:center;
            max-width:280px;
                margin:0 auto 30px;

    }

    .services-hero .hero-buttons{
        display:flex;
        gap:8px;
        justify-content:center;
        flex-wrap:wrap;
    }

    .services-hero .btn{
        padding:7px 12px;
        font-size:.72rem;
        min-width:95px;
        border-radius:7px;
    }
}

/* ===== SERVICE INTRO (MOBILE) ===== */

@media (max-width:768px){

    .service-intro{
        padding:18px 15px;
        text-align:center;
    }

    .service-intro h2{
        font-size:.80rem;
        line-height:1.25;
        margin-bottom:8px;
        font-weight:700;
    }

    .service-intro p{
        font-size:0.40rem;
        line-height:1.45;
        max-width:300px;
        margin:0 auto;
        color:#555;
    }

}

/* ===== AIRPORT FARE TABLE (MOBILE) ===== */

@media (max-width:768px){

    .fare-section{
        padding:20px 10px;
    }

    .fare-section h2{
        font-size:1.25rem;
        text-align:center;
        margin-bottom:6px;
    }

    .fare-section > p{
        font-size:0.72rem;
        text-align:center;
        line-height:1.4;
        margin-bottom:15px;
        color:#666;
    }

    .fare-table{
        width:100%;
        overflow-x:auto;
        border-radius:10px;
    }

    .fare-head,
    .fare-row{
        display:grid;
        grid-template-columns:2.2fr 1fr 1fr .9fr;
        align-items:center;
        min-width:360px;
    }

    .fare-head{
        font-size:.75rem;
        font-weight:700;
        padding:10px 8px;
    }

    .fare-row{
        font-size:.72rem;
        padding:9px 8px;
    }

    .fare-head div,
    .fare-row div{
        padding:3px;
    }

    .fare-row a{
        display:inline-block;
        padding:4px 8px;
        font-size:.65rem;
        border-radius:5px;
        text-decoration:none;
    }

}

/* ==========================
   LOCAL TOURS MOBILE
========================== */

@media (max-width:768px){

.local-short-tours{
    padding:25px 15px;
}

.local-short-tours .container{
    width:100%;
    padding:0;
}

.section-title{
    text-align:center;
    margin-bottom:18px;
}

.section-title span{
    font-size:.7rem;
    letter-spacing:1px;
}

.section-title h2{
    font-size:1.3rem;
    margin:6px 0;
}

.section-title p{
    font-size:.75rem;
    line-height:1.45;
    max-width:300px;
    margin:auto;
}

/* Grid */

.short-tour-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

/* Card */

.short-tour-card{
    position:relative;
    overflow:hidden;
    border-radius:14px;
    background:#000;
    min-height:210px;
    box-shadow:0 8px 18px rgba(0,0,0,.18);
}

.short-tour-card img{
    width:100%;
    height:210px;
    object-fit:cover;
    display:block;
}

/* Dark Gradient */

.short-overlay{
    position:absolute;
    left:0;
    right:0;
    bottom:0;

    padding:10px;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.92),
        rgba(0,0,0,.65),
        rgba(0,0,0,0)
    );

    color:#fff;
}

/* Text */

.short-overlay h3{
    color:#fff;
    font-size:.85rem;
    margin-bottom:5px;
    line-height:1.25;
}

.short-overlay p{
    color:#eee;
    font-size:.65rem;
    line-height:1.3;
    margin-bottom:8px;

    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.tour-price{
    color:#FFD54F;
    font-size:.75rem;
    font-weight:600;
    margin-bottom:8px;
}

.tour-price strong{
    color:#FFD54F;
}

/* Button */

.tour-view-btn{
    width:100%;
    border:none;
    border-radius:6px;
    padding:7px 0;
    background:#ff9800;
    color:#fff;
    font-size:.72rem;
    font-weight:600;
    cursor:pointer;
}

.tour-view-btn:hover{
    background:#e68900;
}

}
/* ===== TOUR POPUP (MOBILE) ===== */

@media(max-width:768px){

.popup-banner{
    height:220px;
}

.popup-title{
    left:18px;
    right:18px;      /* allow text to wrap properly */
    bottom:18px;
}

.popup-title h2{
    font-size:1.4rem;
    line-height:1.25;
    margin:0 0 8px;
    font-weight:700;
}

.popup-title p{
    font-size:0.8rem;
    line-height:1.4;
    margin:0;
}

.popup-body{
    padding:18px;
}

.popup-body h3{
    font-size:1rem;
    margin:18px 0 10px;
}

.popup-description{
    font-size:0.8rem;
    line-height:1.6;
}

.popup-list,
.popup-price{
    grid-template-columns:1fr;
    gap:10px;
}

.popup-list div,
.popup-price div{
    padding:12px;
    font-size:.8rem;
}

.popup-book{
    width:100%;
    padding:12px;
    font-size:.85rem;
}

}
/* ===== FEATURED FULL DAY TOUR (MOBILE) ===== */

@media (max-width:768px){

.featured-fulltour{
    justify-content:flex-start;
    display:flex;
    flex-direction:column;
    padding:15px 12px;
    gap:12px;
}

.featured-fulltour-image img{
    width:100%;
    height:180px;
    object-fit:cover;
    border-radius:12px;
}

.featured-badge{
    font-size:.7rem;
    padding:6px 12px;
}

.featured-fulltour-content h2{
    font-size:1.35rem;
    line-height:1.25;
    margin-bottom:10px;
    text-align:center;
}

.featured-fulltour-content p{
    font-size:.78rem;
    line-height:1.5;
    text-align:center;
    margin-bottom:15px;
}

.featured-highlights{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:8px;
    margin-bottom:18px;
}

.featured-highlights div{
    font-size:.72rem;
    padding:8px;
    border-radius:8px;
    text-align:center;
}

.featured-fulltour-content h3{
    font-size:1rem;
    margin-bottom:10px;
}

.featured-places{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:18px;
}

.featured-places span{
    font-size:.68rem;
    padding:5px 8px;
    border-radius:20px;
}

.featured-price-box{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
    margin-bottom:18px;
}

.featured-price-box div{
    font-size:.7rem;
    text-align:center;
    border-radius:8px;
}
.featured-price-box strong{
    font-size:1rem;
    margin-top:3px;
}

.featured-buttons{
    display:flex;
    gap:10px;
}

.featured-buttons button,
.featured-buttons a{
    flex:1;
    padding:10px;
    font-size:.75rem;
    text-align:center;
    border-radius:8px;
}

}

/* ===== SEO CONTENT (MOBILE) ===== */

@media (max-width:768px){

    .seo-content{
    padding:45px 20px;
    text-align:center;
}

.seo-content h2{
    font-size:28px;
    margin-bottom:15px;
    line-height:1.3;
}

.seo-content p{
    max-width:900px;
    margin:0 auto;
    font-size:12px;
    line-height:1.7;
    color:#666;
}

}

/* ===== FLEET HERO (MOBILE) ===== */

@media (max-width:768px){

    .fleet-hero{
        padding:15px 8px;
        text-align:center;
        min-height:220px;

        display:flex;
        align-items:center;
        justify-content:center;
    }

    .fleet-hero .container{
        max-width:320px;
        margin:auto;
    }

    .fleet-hero .section-tag{
        display:inline-block;
        font-size:.45rem;
        padding:5px 12px;
        border-radius:20px;
        margin-bottom:10px;
        letter-spacing:1px;
    }

    .fleet-hero h1{
        font-size:1rem;
        line-height:1.25;
        margin-bottom:10px;
        font-weight:700;
    }

    .fleet-hero p{
        font-size:.50rem;
        line-height:1.5;
        color:#ddd;
        max-width:300px;
        margin:0 auto;
    }

}

/* ===== TOYOTA INNOVA (MOBILE) ===== */

/* ===== PREMIUM FLEET CARD ===== */

@media(max-width:768px){

.fleet-car{
    padding:16px 10px;
}

.fleet-car .container{
    width:100%;
    max-width:100%;
    padding:16px;
    border-radius:16px;
    overflow:hidden;
    box-sizing:border-box;
}

.car-heading{
    padding:0;
    margin-bottom:14px;
}

.car-type{

    display:inline-block;

    background:#FFF3CD;

    color:#c27b00;

    padding:5px 12px;

    border-radius:30px;

    font-size:.65rem;

    font-weight:700;

}

.car-heading h2{
    font-size:1.3rem;
    margin:6px 0;
    line-height:1.2;
    word-break:break-word;
}

.car-price{
    width:100px;
    padding:8px;
    margin:10px auto 0;
}

.car-price h3{
    font-size:1.2rem;
}

/* Image */

.car-image{

    text-align:center;

    padding:10px;

}

.car-wrapper{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.car-image img{
    width:100%;
    max-width:240px;
    margin:auto;
    display:block;
}

.car-image img:hover{

    transform:scale(1.05);

}

/* Description */

.car-info{
    width:100%;
    padding:0;
    box-sizing:border-box;
}

.car-info p{
    font-size:.72rem;
    line-height:1.45;
    margin-bottom:14px;
    text-align:center;
}

/* Specs */

.car-specs{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:8px;
    width:100%;
}

.car-specs div{
    padding:8px;
    font-size:.68rem;
    border-radius:8px;
    word-break:break-word;
}

.car-specs i{
    font-size:.9rem;
    margin-bottom:4px;
}

.car-info ul{
    margin:14px 0;
    padding:0;
}


.car-info li{
    font-size:.7rem;
    padding:8px 10px;
    margin-bottom:6px;
    line-height:1.35;
}

.car-info li i{

    color:#25D366;

}

/* Buttons */

.car-buttons{
    display:flex;
    gap:8px;
}

.car-buttons a{
    flex:1;
    padding:9px 6px;
    font-size:.7rem;
    border-radius:8px;
    white-space:nowrap;
}


}

/* ===== GALLERY HERO (MOBILE) ===== */

@media (max-width:768px){

    .gallery-hero{
        min-height:36vh;
        padding:25px 18px 20px;
    }

    .gallery-hero .hero-tag{
        font-size:.45rem;
        padding:5px 12px;
        margin-bottom:8px;
    }

    .gallery-hero h1{
        font-size:1.45rem;
        line-height:1.2;
        margin-bottom:8px;
    }

    .gallery-hero p{
        font-size:.55rem;
        line-height:1.45;
        max-width:290px;
        margin:0 auto 18px;
    }

    /* Smaller Buttons */

    .gallery-hero .hero-buttons{
        display:flex;
        justify-content:center;
        gap:8px;
        margin-bottom:8px;
    }

    .gallery-hero .hero-buttons a{
        padding:8px 14px;
        font-size:.52rem;
        border-radius:8px;
    }

    /* Bottom Features */

    .gallery-hero .hero-features{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}

.gallery-hero .hero-features div{
    padding:6px 10px;
    border-radius:20px;
    font-size:.65rem;
}

    .gallery-hero .hero-features i{
        font-size:.8rem;
        margin-right:5px;
    }

}

/* ===== GALLERY FILTER (MOBILE) ===== */

@media (max-width:768px){

    .gallery-filter{
        padding:15px 10px;
    }

    .filter-buttons{
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        gap:8px;
    }

    .filter-btn{
        padding:8px 14px;
        font-size:.72rem;
        font-weight:600;
        border-radius:25px;
        border:1px solid #ddd;
        background:#fff;
        color:#333;
        transition:.3s ease;
        cursor:pointer;
    }

    .filter-btn:hover,
    .filter-btn.active{
        background:#FFC107;
        color:#0b2238;
        border-color:#FFC107;
        transform:translateY(-2px);
        box-shadow:0 4px 10px rgba(0,0,0,.15);
    }

}

/* ===== GALLERY GRID MOBILE ===== */

@media (max-width:768px){

.gallery-section{
    padding:20px 12px;
}

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;              /* Space between cards */
}

/* Reset all desktop grid spans */

.gallery-grid .gallery-item,
.gallery-grid .gallery-item.normal,
.gallery-grid .gallery-item.tall,
.gallery-grid .gallery-item.wide,
.gallery-grid .gallery-item.large{

    grid-column:unset !important;
    grid-row:unset !important;

    width:100%;
    height:200px;

    border-radius:16px;
    overflow:hidden;
    position:relative;
    box-sizing:border-box;
}

.gallery-grid .gallery-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.gallery-overlay{
    padding:12px;
}

}

/* ===== GALLERY CTA (MOBILE) ===== */

@media (max-width:768px){

.gallery-cta{
    padding:30px 15px;
}

.gallery-cta .cta-box{
    padding:24px 18px;
    border-radius:16px;
    text-align:center;
}

.gallery-cta h2{
    font-size:1.35rem;
    line-height:1.25;
    margin-bottom:10px;
}

.gallery-cta p{
    font-size:.78rem;
    line-height:1.5;
    max-width:290px;
    margin:0 auto 18px;
}

.gallery-cta .cta-buttons{
    display:flex;
    justify-content:center;
    gap:10px;
}

.gallery-cta .cta-buttons a{
    padding:9px 16px;
    font-size:.75rem;
    border-radius:8px;
    min-width:120px;
}

.gallery-cta .cta-buttons i{
    font-size:.8rem;
    margin-right:5px;
}

}

/* ===== CONTACT INFO (MOBILE) ===== */

@media (max-width:768px){

.contact-info-section{
    padding:30px 15px;
}

.contact-info-section .section-title{
    text-align:center;
    margin-bottom:20px;
}

.contact-info-section .section-title span{
    font-size:.68rem;
    letter-spacing:1.5px;
}

.contact-info-section .section-title h2{
    font-size:1.35rem;
    line-height:1.3;
    margin:8px 0;
}

.contact-info-section .section-title p{
    font-size:.78rem;
    line-height:1.5;
    max-width:300px;
    margin:auto;
}

.contact-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.contact-card{
    padding:18px 12px;
    border-radius:16px;
    text-align:center;
    box-shadow:0 8px 20px rgba(0,0,0,.08);
    transition:.3s;
}

.contact-card:hover{
    transform:translateY(-3px);
}

.contact-icon{
    width:48px;
    height:48px;
    margin:0 auto 10px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#FFC107;
}

.contact-icon i{
    font-size:1.1rem;
    color:#0b2238;
}

.contact-card h3{
    font-size:.9rem;
    margin-bottom:8px;
}

.contact-card a,
.contact-card p{
    font-size:.72rem;
    line-height:1.45;
    word-break:break-word;
    margin:0;
}

}

/* ===== BOOKING SECTION (MOBILE) ===== */

@media (max-width:768px){

.booking-section{
    padding:30px 15px;
}

.booking-wrapper{
    display:flex;
    flex-direction:column;
    gap:20px;
}
.booking-form input,
.booking-form textarea,
.booking-form button{

    width:100%;
    max-width:100%;
    box-sizing:border-box;

}
.booking-form,
.booking-right{

    width:100%;
    max-width:100%;
    box-sizing:border-box;
    overflow:hidden;

}

.booking-form h2{
    font-size:1.35rem;
    text-align:center;
    margin-bottom:8px;
}

.booking-form p{
    font-size:.78rem;
    text-align:center;
    line-height:1.5;
    margin-bottom:18px;
}

/* Inputs */

.booking-form input,
.booking-form textarea{

    width:100%;
    padding:11px 14px;
    margin-bottom:10px;

    font-size:.78rem;

    border-radius:10px;
    box-sizing:border-box;

}

.booking-form textarea{
    min-height:90px;
    resize:none;
}

/* Button */

.booking-form button{

    width:100%;

    padding:12px;

    font-size:.82rem;

    border-radius:10px;

}

.booking-form button i{
    margin-right:6px;
}

.booking-note{

    font-size:.68rem;

    margin-top:10px;

    text-align:center;

}

/* Right Side */

.booking-right{

    text-align:center;

}

.booking-right img{

    width:90px;

    margin-bottom:16px;

}

/* Features */

.booking-features{

    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    width:100%;

}

.booking-features div{

    width:100%;
    box-sizing:border-box;
    padding:10px 8px;

    font-size:.7rem;
    line-height:1.3;

    overflow:hidden;
    word-break:break-word;

}

.booking-features i{

    color:#25D366;

    font-size:.85rem;

}

}

/* ===== GOOGLE MAP (MOBILE PREMIUM) ===== */

@media (max-width:768px){

.map-section{
    padding:35px 15px;
}

.map-section .section-title{
    text-align:center;
    margin-bottom:18px;
}

.map-section .section-title span{
    display:inline-block;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:2px;
    color:#FFC107;
    text-transform:uppercase;
    margin-bottom:6px;
}

.map-section .section-title h2{
    font-size:1.4rem;
    color:#0b2238;
    margin:0;
    line-height:1.25;
}

.map-wrapper{
    overflow:hidden;
    border-radius:18px;
    box-shadow:0 12px 30px rgba(0,0,0,.12);
    border:3px solid #fff;
}

.map-wrapper iframe{
    width:100%;
    height:240px;
    border:0;
    display:block;
}

}

/* ===== CONTACT CTA (MOBILE) ===== */

@media (max-width:768px){

.contact-cta{
    padding:35px 15px;
}

.contact-cta .container{
    background:linear-gradient(135deg,#0b2238,#16395f);
    padding:25px 18px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.15);
}

.contact-cta h2{
    font-size:1.45rem;
    color:#fff;
    line-height:1.25;
    margin-bottom:10px;
}

.contact-cta p{
    font-size:.78rem;
    color:rgba(255,255,255,.9);
    line-height:1.5;
    max-width:280px;
    margin:0 auto 18px;
}

.contact-cta .cta-buttons{
    display:flex;
    justify-content:center;
    gap:10px;
}

.contact-cta .cta-buttons a{
    flex:1;
    max-width:140px;
    padding:10px 12px;
    border-radius:10px;
    font-size:.78rem;
    font-weight:600;
    text-decoration:none;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    transition:.3s;
}

.contact-cta .call-btn{
    background:#FFC107;
    color:#0b2238;
}

.contact-cta .whatsapp-btn{
    background:#25D366;
    color:#fff;
}

.contact-cta .cta-buttons a:hover{
    transform:translateY(-2px);
}

.contact-cta .cta-buttons i{
    font-size:.9rem;
}

}

@media (max-width:768px){

/* Hero Book a Cab button - Mobile Only */
.hero-buttons .book-btn{
    padding: 8px 18px;
    font-size: 13px;
    border-radius: 22px;
}
}


@media (max-width:768px){

.long-tour-grid{
    grid-template-columns:repeat(2,1fr);
    gap:10px;
}

.tour-card{
    padding:12px;
    border-radius:14px;
}

.tour-top{
    gap:5px;
    margin-bottom:8px;
}

.tour-top h3{
    font-size:15px;
    line-height:1.25;
    margin:0;
}

.tour-top span{
    font-size:10px;
    padding:3px 8px;
}

.tour-route{
    font-size:11px;
    line-height:1.35;
    margin:8px 0 10px;
    display:-webkit-box;
    -webkit-line-clamp:4;   /* Shows only 4 lines */
    line-clamp:4;
}

.tour-card table th,
.tour-card table td{
    padding:5px 3px;
    font-size:10px;
}

.tour-btn{
    padding:8px;
    font-size:11px;
    border-radius:30px;
}

}

/* Compact Tour Note - Mobile */
@media (max-width:768px){

.tour-note{
    margin-top:18px;
    padding:12px 14px;
    border-left:4px solid #ff9800;
    border-radius:10px;
    font-size:11px;
    line-height:1.5;
}

.tour-note strong{
    font-size:12px;
}

}


@media (max-width:768px){

.featured-fulltour-content{
    padding:12px;
    margin:0;
}

.featured-fulltour-content h2{
    margin-top:8px;
}

}
@media (max-width:768px){

.featured-fulltour-image{
    margin-bottom:0;
    padding-bottom:0;
    line-height:0;
}

.featured-fulltour-image img{
    display:block;
}

}

@media (max-width:768px){

.featured-fulltour-image{
    min-height:unset;
    height:180px;
}

.featured-fulltour-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

}