/*--------------------------------------------------------------------- File Name: responsive.css ---------------------------------------------------------------------*/

/* Large desktops: 1200px+ handled by base CSS */

/* Medium desktops: 992px – 1199px */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .main-navbar { padding: 0 30px; }
    .hero-title { font-size: 3rem; }
    .hero-stats-bar { padding: 20px 30px; }
    .hero-owl-carousel .owl-dots { left: 30px; bottom: 32px; }
    .hero-owl-carousel .owl-nav { right: 30px; bottom: 56px; }
}

/* Tablets landscape: 768px – 991px */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .main-navbar { padding: 0 24px; }
    .navbar-nav-links, .navbar-actions { display: none !important; }
    .navbar-mobile-toggle { display: flex !important; }

    .hero-title { font-size: 2.6rem; }
    .hero-slide { padding: 130px 0 200px; }
    .hero-stats-bar { padding: 18px 24px; }
    .hero-stat-number { font-size: 1.6rem; }

    .about-content { padding-left: 0; padding-top: 32px; }

    .page-hero { padding: 120px 0 60px; }
    .page-hero h1 { font-size: 2.4rem; }

    .contact-form-card { padding: 36px; }
    .contact-info-card { padding: 36px 28px; margin-top: 32px; }

    .section-title { font-size: 2rem; }
    .layout_padding { padding-top: 70px; padding-bottom: 70px; }

    .footer-bottom { flex-direction: column; text-align: center; }
    .footer-bottom-links { justify-content: center; }
}

/* Tablets portrait + large mobile: 576px – 767px */
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .main-navbar { padding: 0 20px; }
    .navbar-nav-links, .navbar-actions { display: none !important; }
    .navbar-mobile-toggle { display: flex !important; }

    .hero-title { font-size: 2.1rem; }
    .hero-desc { font-size: 0.95rem; }
    .hero-slide { padding: 120px 0 160px; }
    .hero-btns { flex-direction: column; align-items: flex-start; gap: 12px; }
    .hero-stats-bar { display: none; }

    .about-content { padding-left: 0; padding-top: 24px; }
    .about-hero-img img { height: 280px; }

    .page-hero { padding: 110px 0 50px; }
    .page-hero h1 { font-size: 2rem; }

    .section-title { font-size: 1.85rem; }
    .layout_padding { padding-top: 60px; padding-bottom: 60px; }
    .cta_section { padding: 60px 0; }

    .contact-form-card { padding: 28px 20px; }
    .contact-info-card { padding: 30px 24px; margin-top: 28px; }

    .service-page-card-top { padding: 24px 20px 18px; }
    .service-page-card-body { padding: 22px 20px; }

    .mv-card { padding: 28px 22px; }

    .footer-bottom { flex-direction: column; text-align: center; }
    .footer-bottom-links { justify-content: center; flex-wrap: wrap; gap: 16px; }
}

/* Small mobile: max 575px */
@media (max-width: 575px) {
    .main-navbar { padding: 0 16px; height: 66px; }
    .navbar-logo img { height: 40px; }
    .navbar-nav-links, .navbar-actions { display: none !important; }
    .navbar-mobile-toggle { display: flex !important; }
    .mobile-menu { top: 66px; }

    .hero-title { font-size: 1.75rem; line-height: 1.25; }
    .hero-eyebrow { font-size: 10px; }
    .hero-desc { font-size: 0.9rem; }
    .hero-slide { padding: 110px 0 120px; }
    .hero-btns { flex-direction: column; align-items: flex-start; gap: 12px; }
    .hero-btns .btn-gold,
    .hero-btns .btn-outline-white { display: block; text-align: center; width: 100%; max-width: 260px; }
    .hero-stats-bar { display: none; }
    .hero-owl-carousel .owl-dots { left: 16px; bottom: 20px; }
    .hero-owl-carousel .owl-nav { right: 16px; bottom: 14px; }
    .hero-owl-carousel .owl-nav button { width: 38px; height: 38px; }

    .section-title { font-size: 1.65rem; }
    .layout_padding { padding-top: 56px; padding-bottom: 56px; }

    .about-content { padding-left: 0; padding-top: 20px; }
    .about-badge { padding: 14px 18px; }
    .about-badge .badge-num { font-size: 1.8rem; }
    .about-image-wrapper img { height: 300px; }

    .page-hero { padding: 100px 0 44px; }
    .page-hero h1 { font-size: 1.8rem; }
    .page-hero p { font-size: 0.9rem; }

    .cta_section { padding: 56px 0; }
    .cta-desc { font-size: 0.95rem; }
    .cta-img-wrap { display: none; }

    .contact-form-card { padding: 24px 16px; }
    .contact-info-card { padding: 28px 20px; }
    .form-submit-btn { width: 100%; justify-content: center; }

    .features-strip { padding: 56px 0; }
    .feature-card { padding: 28px 20px; }

    .service-page-card-top { padding: 22px 18px 16px; }
    .service-page-card-body { padding: 20px 18px; }

    .mv-card { padding: 24px 18px; }
    .mv-card h3 { font-size: 1.3rem; }

    .value-item { padding: 18px 16px; gap: 14px; }
    .value-num { font-size: 1.6rem; min-width: 32px; }

    .why-item { padding: 20px 16px; }
    .why-us-section { padding: 56px 0; }

    .footer_section { padding: 60px 0 0; }
    .footer-bottom { flex-direction: column; text-align: center; gap: 12px; }
    .footer-bottom-links { justify-content: center; flex-wrap: wrap; gap: 16px; }
    .footer-heading { font-size: 12px; }
}
