@media (max-width: 1200px) {
    .hero h1 {
        font-size: 46px;
    }

    .features-grid-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1080px) {
    .hero-points {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 980px) {
    .page-card-grid,
    .support-layout,
    .account-grid,
    .hero-inner {
        grid-template-columns: 1fr;
    }

    .hero-copy {
        padding: 32px;
    }

    .hero h1 {
        font-size: 40px;
    }

    .listing-filter-grid,
    .listing-filter-grid-auction {
        grid-template-columns: 1fr;
    }

    .listing-row {
        grid-template-columns: 1fr;
    }

    .listing-row-side {
        min-width: 0;
        text-align: left;
    }

    .balance-grid {
        grid-template-columns: 1fr;
    }

    .public-listing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .listing-gallery-main-image {
        height: min(72vw, 500px);
    }

    .listing-lightbox-dialog {
        width: min(98vw, 1280px);
        height: min(94vh, 900px);
        padding: 52px 16px 60px;
    }
}

@media (max-width: 768px) {
    .hero {
        padding: 8px 0 22px;
    }

    .features,
    .auth-section,
    .account-section {
        padding: 8px 0 24px;
    }

    .hero-copy,
    .auth-card,
    .account-card {
        padding: 24px;
    }

    .hero h1 {
        font-size: 34px;
        line-height: 1.1;
    }

    .hero-text {
        font-size: 16px;
    }

    .section-heading h2 {
        font-size: 28px;
    }

    .features-grid,
    .features-grid-4,
    .public-listing-grid {
        grid-template-columns: 1fr;
    }

    .listing-image-grid {
        grid-template-columns: 1fr 1fr;
    }

    .listing-gallery {
        grid-template-columns: 1fr;
    }

    .faq-list,
    .support-info-list {
        padding-left: 18px;
    }

    .account-box {
        padding: 18px;
    }

    .account-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .hero-actions,
    .account-actions,
    .listing-filter-actions,
    .auction-bid-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .hero-actions .btn,
    .account-actions .btn,
    .listing-filter-actions .btn,
    .auction-bid-actions .btn {
        width: 100%;
    }

    .faq-question {
        padding: 16px 18px;
        font-size: 15px;
    }

    .faq-answer {
        padding: 0 18px 18px;
    }

    .bid-row {
        grid-template-columns: 1fr;
    }

    .listing-gallery-strip {
        gap: 10px;
    }

    .listing-gallery-thumb {
        width: 78px;
        height: 78px;
    }
}

@media (max-width: 560px) {
    .hero-copy,
    .auth-card,
    .account-card {
        padding: 20px;
    }

    .hero h1 {
        font-size: 30px;
    }

    .auth-card h1,
    .account-card h1 {
        font-size: 30px;
    }

    .section-heading h2 {
        font-size: 24px;
    }

    .listing-image-grid {
        grid-template-columns: 1fr;
    }

    .public-listing-image,
    .public-listing-image-placeholder {
        height: 200px;
    }

    .listing-gallery-main-image {
        height: min(82vw, 420px);
    }

    .listing-lightbox-dialog {
        padding: 48px 12px 56px;
    }

    .listing-lightbox-close {
        top: 8px;
        right: 8px;
        width: 42px;
        height: 42px;
    }

    .listing-lightbox-nav {
        width: 46px;
        height: 46px;
        margin-top: -23px;
        font-size: 30px;
    }

    .listing-lightbox-counter {
        bottom: 10px;
        font-size: 13px;
    }
}