@media (max-width: 1199.98px) {
    h1 {
        font-size: 3.35rem;
    }

    h2 {
        font-size: 2.25rem;
    }

    .brand-marquee,
    .brand-grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .process-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .process-step::after {
        display: none;
    }
}

@media (max-width: 991.98px) {
    body {
        padding-bottom: calc(60px + env(safe-area-inset-bottom));
    }

    .section {
        padding: 72px 0;
    }

    .main-navbar {
        min-height: 70px;
    }

    .navbar-collapse {
        padding: 16px 0 22px;
        border-top: 1px solid rgba(16, 18, 22, .08);
    }

    .navbar-nav .nav-link {
        padding: 11px 0 !important;
    }

    .navbar-nav .nav-link::after {
        left: 0;
        right: auto;
        width: 34px;
    }

    .nav-cta {
        width: 100%;
        margin-top: 8px;
    }

    .hero-section {
        min-height: 680px;
    }

    .hero-content {
        padding-top: 92px;
        padding-bottom: 170px;
    }

    .quick-enquiry-section {
        margin-top: -90px;
    }

    .section-heading.split,
    .cta-panel {
        align-items: flex-start;
        flex-direction: column;
    }

    .service-hero-icon {
        margin-left: 0;
    }

    .sticky-side {
        position: static;
    }

    .selector-steps {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-bottom .container {
        align-items: flex-start;
        flex-direction: column;
        padding-top: 18px;
        padding-bottom: 18px;
    }

    .floating-actions {
        display: none;
    }
}

@media (max-width: 767.98px) {
    h1 {
        font-size: 2.2rem;
    }

    h2 {
        font-size: 1.95rem;
    }

    .section {
        padding: 58px 0;
    }

    .brand-text small {
        display: none;
    }

    .brand-mark {
        width: 42px;
        height: 42px;
    }

    .hero-section {
        min-height: 610px;
        overflow: hidden;
    }

    .hero-overlay {
        background: linear-gradient(90deg, rgba(16, 18, 22, .94), rgba(16, 18, 22, .72));
    }

    .hero-content {
        padding-top: 72px;
        padding-bottom: 150px;
    }

    .hero-section p {
        max-width: 100%;
        font-size: 1rem;
    }

    .mobile-line-break {
        display: inline;
    }

    .hero-actions,
    .cta-actions,
    .contact-buttons {
        width: 100%;
        flex-direction: column;
    }

    .hero-actions .btn,
    .cta-actions .btn,
    .contact-buttons .btn {
        width: 100%;
    }

    .booking-form,
    .vehicle-picker,
    .booking-side,
    .contact-panel,
    .contact-info-list,
    .selector-shell,
    .related-box,
    .package-card,
    .value-card,
    .trust-card,
    .service-card,
    .cta-panel {
        padding: 22px;
    }

    .quick-enquiry,
    .quick-enquiry .booking-form {
        max-width: 100%;
        overflow: hidden;
    }

    .brand-marquee,
    .brand-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .brand-marquee a {
        min-height: 62px;
    }

    .process-grid {
        grid-template-columns: 1fr;
    }

    .two-column {
        grid-template-columns: 1fr;
    }

    .package-card.featured {
        transform: none;
    }

    .package-head {
        padding-right: 0;
    }

    .package-badge {
        position: static;
        margin-bottom: 16px;
    }

    .page-hero {
        padding: 86px 0 58px;
    }

    .service-hero-icon {
        width: 110px;
        height: 110px;
        font-size: 2.8rem;
    }

    .selector-steps {
        grid-template-columns: 1fr;
    }

    .gallery-card {
        min-height: 240px;
    }

    .gallery-card span {
        margin-top: 150px;
    }
}

@media (max-width: 430px) {
    .container {
        padding-left: 18px;
        padding-right: 18px;
    }

    h1 {
        font-size: 1.95rem;
    }

    .hero-section h1 {
        max-width: 100%;
        font-size: 1.82rem;
        line-height: 1.12;
        overflow-wrap: normal;
    }

    h2 {
        font-size: 1.72rem;
    }

    .brand-lockup {
        gap: 8px;
    }

    .brand-text strong {
        font-size: .82rem;
    }

    .mobile-actions {
        gap: 5px;
    }

    .icon-link,
    .navbar-toggler {
        width: 38px;
        height: 38px;
    }

    .trust-strip span {
        width: 100%;
    }

    .quick-enquiry-section {
        margin-top: -74px;
    }

    .service-card-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .service-card-actions .btn {
        width: 100%;
    }
}
