/* ====== HEADER RESPONSIVE ====== */

@media only screen and (max-width: 1139px) {
    .header-nav .topmenu li a { padding: 7px 10px; font-size: 12.5px; }
    .hdr-btn { padding: 8px 12px; font-size: 12px; }
}

@media only screen and (max-width: 1023px) {
    main { margin-top: 86px; }
    .header-topbar { display: none; }
    .header-nav .topmenu { gap: 2px; }
    .header-nav .topmenu li a { padding: 6px 8px; font-size: 12px; }
    .hdr-btn-outline { display: none; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
    .banner-content h1 { font-size: 28px; line-height: 40px; }
    .banner-slidder { width: 100%; }
    .banner-list ul { justify-content: flex-start; }
    .banner-list ul li { flex: 0 0 120px; min-width: 120px; max-width: 120px; }
    .certificate { padding: 25px 0; }
    .service-sec { padding: 30px 0; }
    .view li { font-size: 11px; }
    .flatbook .prolist ul li,.BPG { font-size: 10px; }
    .group-title { font-size: 13px; }
    .extra-btn { padding: 5px 12px 0; }
    .extra-btn a { font-size: 11px; width: 100%; }
    .package-box .package-button-upper li a { font-size: 13px; }
    .best_benifits>p,.accordion-body>p { font-size: 11px; }
    .packageslidebox .packagebox001 { width: 44.33%; }
    .othrepackage-list .banner-list ul { display: inline-block; }
    .othrepackage-list .banner-list ul li { display: inline-block; }
    .exculsive-deals a { font-size: 13px; }
    .innernumberb input { width: 9%; }
}

@media only screen and (max-width: 1023px) and (min-width: 768px) {
    .pkg-cards-grid { grid-template-columns: repeat(2, 1fr); }
    .svc-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    .bd-product-grid { grid-template-columns: repeat(2, 1fr); }
}

@media only screen and (max-width: 767px) {
    main { margin-top: 55px; }
    .header-topbar { display: none; }
    .header-nav { display: none; }
    .hdr-btn-outline { display: none; }
    .hdr-menu-toggle { display: flex; }
    .header-main { padding: 8px 0; }
    .logo-text { font-size: 17px; }
    .header-logo img { width: 116px; height: 45px; }
    .boxpackage {padding: 20px 0px;}
    .occasion-section {padding: 70px 0 5px;}

    .banner-content h1 { font-size: 23px; line-height: 35px; }
    .slider_ctn p { font-size: 14px; }
    .banner-slidder { width: 100%; }
    .banner-list ul { justify-content: flex-start; }
    .banner-list ul li { flex: 0 0 105px; min-width: 105px; max-width: 105px; }
    .banner-list li a h4 { font-size: 10px; }
    .banner-list li a>img { height: 130px; }
    .certificate { padding: 30px 0; }
    .certificate-image img { width: 30%; }
    .service-sec { padding: 30px 0; }
    .package-box { padding: 30px 0; }
    .package-box .package-button-upper li a { font-size: 12px; line-height: 16px; }
    .heading-bar-inner h2 { font-size: 22px; }

    .faq h2 { font-size: 21px; }
    .inner_faq .accordion-button:not(.collapsed) { font-size: 15px; }
    .inner_faq .accordion-body { font-size: 12px; }
    .reviewpoint { min-height: 200px; }
    .packageslidebox .packagebox001 { width: 77.33%; }
    .review-info h3 { font-size: 15px; }
    .review-info p { font-size: 13px; }
    .review-body p,.readmore-text { font-size: 13px; }
    .fixed_scroll { height: 79vh; }
    .popframe { height: 82vh; }
    .modeltitle { font-size: 16px; }
    .card-content .pack-price { font-size: 20px; }
    .pack1-price { font-size: 18px; }
    .othrepackage-list .banner-list ul { display: inline-block; }
    .othrepackage-list .banner-list ul li { display: inline-block; }

    .pkg-cards-grid { grid-template-columns: 1fr; }
    .svc-grid { grid-template-columns: 1fr; gap: 20px; }
    .svc-slider .slider-for img { height: 240px; }
    .slider-for .slick-slide img { height: 220px; }
    .slider-nav .slick-slide img { height: 55px; }

    /* Footer mobile */
    .footer-grid { grid-template-columns: 1fr; gap: 16px; }
    .footer-bottom-inner { flex-direction: column; text-align: center; gap: 4px; }
    footer { padding-bottom: 80px; }

    /* Occasion & Product Grid mobile */
    .occasion-card { flex: 0 0 120px; min-width: 120px; }
    .occasion-card .occasion-img-wrap { width: 120px; height: 120px; }
    .bd-product-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .bd-card-title { font-size: 12px; }
    .bd-new-price { font-size: 13px; }

    /* Detail page v2 mobile fixes */
    .boxpackage.v2 { margin-top: 60px; padding-top: 0; }
    .boxpackage.v2 .col-md-6 { padding: 0 12px; }
    .boxpackage.v2 .single-image-wrap { margin-bottom: 20px; }
    .pack-breadcrumb ul { flex-wrap: wrap; row-gap: 4px; }
    .pack-breadcrumb ul li { font-size: 11px; }
}

@media only screen and (min-width: 600px) {
    .modal-content.slideupcontent { height: 80vh; width: 70%; }
}

@media only screen and (max-width: 600px) {
    .modal-content.slideupcontent { width: 100%; height: 80vh !important; }
    .modal-content.slideupcontent.modalinner { height: 85vh !important; }
    .close-btn { position: relative !important; top: -38px !important; left: 0 !important; margin: -29px auto !important; }
    .close-btn.innerbtn { top: 38px !important; margin: -40px 20px 0 auto !important; box-shadow: none !important; color: #434343; width: 30px; height: 30px; line-height: 30px; background: #aaa; }
}

@media only screen and (max-width: 575px) {
    main { margin-top: 55px; }
    .logo-text { font-size: 15px; }
    .hdr-btn-solid { padding: 7px 11px; font-size: 12px; }
    .banner-content h1 { font-size: 20px; line-height: 30px; }
    .slider_ctn p { font-size: 13px; line-height: 22px; margin-bottom: 0; }
    .banner-slidder { width: 100%; }
    .banner-list ul { justify-content: flex-start; }
    .banner-list ul li { flex: 0 0 90px; min-width: 90px; max-width: 90px; }
    .banner-list li a>img { height: 115px; }
    .certificate { padding: 30px 0; }
    .certificate-image { scrollbar-width: none; }

    .faq h2 { font-size: 17px; font-weight: 600; }
    .inner_faq span.steps { width: 82px; }
    .inner_faq .accordion-button { font-size: 12px; }
    .inner_faq .accordion-button:not(.collapsed) { font-size: 12px; }
    footer { padding-bottom: 80px; }
    .extra-btn a { width: 85%; font-size: 13px; }
    .new-title h2 { font-size: 30px; }
    .new-title h4 { font-size: 14px; }
    .new-title h3 { font-size: 20px; }
    .homesec_postpaid .card-title { font-size: 17px; text-align: center; }
    .packageslidebox .packagebox001 { width: 83.33%; margin-right: 10px; }
    .exculsive-deals .pricedeals .price-n { font-size: 16px; }
    .exculsive-deals .pricedeals p { font-size: 11px; }
    .package-box .package-button-upper li a { font-size: 12px; line-height: 14px; padding: 5px 9px; }
    .bar-sticky.bar-stickyposition { top: 97px; }
    .heading-bar-inner h2 { font-size: 20px; }
    .review-right { padding: 20px; }
    .review-body p,.readmore-text { font-size: 12px; }
    .forMe .accordion-button { font-size: 11px; }
    .view li { font-size: 12px; }
    .packageslidebox .packagebox001 { width: 83.33%; margin-right: 10px; }
    .othrepackage-list .banner-list ul li { width: 188px; }
    .scrollfix { height: 80vh; padding-bottom: 10%; }
    .menuslide .menuitems ul li a { font-size: 13px; }
    .menuslide .menuitems { height: auto; }
    .details_form h3 { font-size: 17px; }
    .price-box ul { flex-wrap: wrap; justify-content: center; gap: 20px; }
    .price-box ul li h6 { font-size: 12px; }
    .price-box ul li img { width: 40px; }
    .innernumberb input { width: 8.5%; }

    .mobile-cta { position: fixed; bottom: 0; left: 0; width: 100%; display: flex; background: linear-gradient(135deg, #c0392b, #e8735a); box-shadow: 0 -1px 15px rgb(0 0 0 / 7%); z-index: 99; }
    .mobile-cta .btn { text-align: center; font-size: 12px; letter-spacing: 0.5px; font-weight: 300; max-width: 33.33%; flex: 0 0 33.33%; padding: 0; min-height: auto; position: relative; color: #fff; border-radius: 0; }
    .mobile-cta p { position: absolute; margin-bottom: 0; width: 100%; top: -12px; height: 150%; opacity: 0; }
    .mobile-cta .btn .icon_bg { height: 27px; width: 37px; margin: auto; display: flex; align-items: center; justify-content: center; }
    .mobile-cta .icon { width: 18px; height: 18px; object-fit: contain; display: block; margin: auto; }
}


/* ====== TESTIMONIAL RESPONSIVE ====== */
@media only screen and (max-width: 1023px) {
    .testi-grid { grid-template-columns: repeat(2, 1fr); }
    .testi-stat { padding: 0 18px; }
}
@media only screen and (max-width: 599px) {
    .testi-grid { grid-template-columns: 1fr; }
    .testi-stats { flex-direction: column; gap: 14px; }
    .testi-stat-divider { width: 80%; height: 1px; }
    .testi-stat { padding: 0; }
}
