@media (max-width: 991.98px) {
    .dm-hero {
        padding: 50px 0;
    }

    .dm-hero h1 {
        font-size: 2.2rem;
    }

    .dm-hero .hero-stats {
        gap: 25px;
    }

    .dm-hero .hero-stat .number {
        font-size: 1.5rem;
    }

    .dm-hero-search {
        margin-top: 30px;
    }

    .dm-section {
        padding: 40px 0;
    }

    .dm-section-title {
        font-size: 1.5rem;
    }
}

@media (max-width: 767.98px) {
    .dm-hero {
        padding: 40px 0;
        text-align: center;
    }

    .dm-hero h1 {
        font-size: 1.8rem;
    }

    .dm-hero .tagline {
        font-size: 1rem;
    }

    .dm-hero .hero-stats {
        justify-content: center;
        gap: 20px;
        margin-top: 25px;
    }

    .dm-hero .hero-stat .number {
        font-size: 1.3rem;
    }

    .dm-hero-search {
        padding: 20px;
    }

    .dm-navbar .navbar-brand img {
        height: 25px;
    }

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

    .dm-navbar .nav-link.active::after {
        display: none;
    }

    .dm-navbar .navbar-toggler {
        display: none !important;
    }

    .dm-navbar .navbar-collapse {
        display: none !important;
    }

    .dm-bottom-nav {
        display: block;
    }

    body {
        padding-bottom: calc(56px + env(safe-area-inset-bottom));
    }

    .dm-back-to-top {
        bottom: calc(68px + env(safe-area-inset-bottom));
    }

    .dm-car-card .card-body {
        padding: 12px;
    }

    .dm-footer {
        padding-top: 40px;
        padding-bottom: calc(20px + 56px + env(safe-area-inset-bottom));
        text-align: center;
    }

    .dm-footer .footer-contact,
    .dm-footer .footer-links {
        padding-left: 0;
    }

    .dm-car-gallery .thumb-list img {
        width: 60px;
        height: 45px;
    }

    .dm-auth-card {
        padding: 25px;
    }

    .dm-filter {
        margin-bottom: 20px;
    }

    .dm-auction-hero {
        padding: 25px 0;
        text-align: center;
    }

    .dm-auction-hero h1 {
        font-size: 1.3rem;
    }
}

@media (max-width: 575.98px) {
    .dm-hero h1 {
        font-size: 1.5rem;
    }

    .dm-section-title {
        font-size: 1.3rem;
    }

    .dm-car-card .card-price {
        font-size: 1rem;
    }

    .dm-category-pill {
        padding: 8px 14px;
        font-size: 0.85rem;
    }

    .dm-car-specs-table td {
        padding: 10px 12px;
        font-size: 0.85rem;
    }

    .dm-car-specs-table td:first-child {
        width: 45%;
    }

    .modal-dialog {
        margin: 10px;
    }

    .btn-dm-primary.btn-lg,
    .btn-dm-dark.btn-lg {
        padding: 12px 20px;
        font-size: 0.95rem;
    }
}

@media (max-width: 767.98px) {
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="password"],
    input[type="number"],
    select,
    textarea {
        font-size: 16px !important;
    }
}

@supports (padding-top: env(safe-area-inset-top)) {
    .dm-navbar {
        padding-top: env(safe-area-inset-top);
    }
    .dm-footer {
        padding-bottom: env(safe-area-inset-bottom);
    }
}
