@media (min-width: 1920px) {
    :root {
        --carousel-card-width: 260px;
    }
    .hero { height: min(70vh, 800px); }
    .categories-grid {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    }
}

@media (max-width: 1023px) {
    .main-content { padding-top: var(--header-height); }
    .hero__title { font-size: var(--font-size-3xl); }
}

@media (max-width: 767px) {
    .main-content { padding-top: var(--header-height); }
    .hero__title { font-size: var(--font-size-2xl); }
    .hero__badge { font-size: var(--font-size-xs); }
    .categories-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 639px) {
    .hero { height: min(40vh, 300px); }
    .hero__title { font-size: var(--font-size-xl); }
    .hero__badge { display: none; }
    .categories-grid { grid-template-columns: repeat(3, 1fr); }
    .nav-link { font-size: 0.7rem; }
}

@media (max-width: 479px) {
    .hero { height: min(35vh, 260px); }
    .hero__content { padding: var(--spacing-xl) var(--content-padding); }
    .hero__title { font-size: var(--font-size-lg); margin-bottom: var(--spacing-sm); }
    .hero__meta { display: none; }
    .hero__actions { flex-direction: column; }
    .btn { width: 100%; justify-content: center; }
    .categories-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-height: 600px) and (orientation: landscape) {
    .hero { height: 100vh; max-height: 400px; }
    .hero__content { padding: var(--spacing-xl) var(--content-padding); }
    .hero__title { font-size: var(--font-size-2xl); }
    .hero__description { display: none; }
}

@media (max-width: 768px) {
    body.has-bottom-nav .main-content { padding-bottom: calc(var(--bottom-nav-height) + var(--spacing-xl)); }
}
@media (hover: none) and (pointer: coarse) {
    .content-card:hover { transform: none; }
    .btn:hover { transform: none; }
    .btn { min-height: 44px; }
    .profile-btn { min-height: 44px; min-width: 44px; }
    .carousel-track { -webkit-overflow-scrolling: touch; }
}

@media print {
    .header, .footer, .hero__controls, .hero__nav-btn, .carousel-arrow, .carousel-fade-left, .carousel-fade-right { display: none; }
    .hero { page-break-after: avoid; }
    body { background: white; color: black; }
}

@media (prefers-reduced-motion: reduce) {
    * { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}

@media (prefers-color-scheme: light) {
    body { background-color: #fafafa; }
    .content-card { background: #f0f0f0; }
}

@media (prefers-contrast: more) {
    .content-card, .btn { border-width: 2px; }
}

@media (forced-colors: active) {
    .content-card, .btn--primary, .card-badge { border: 1px solid CanvasText; }
}
