@media (max-width: 680px) {
    .hero-controls {
        right: auto;
        left: 50%;
        bottom: 84px;
        transform: translateX(-50%);
    }

    .hero-controls .hero-arrow {
        display: none;
    }

    .hero-dots {
        justify-content: center;
    }

    .categories-section .category-row {
        gap: 8px;
    }

    .categories-section .category {
        flex: 0 0 calc((100% - 24px) / 4);
        min-width: 0;
        height: 220px;
        padding: 16px 7px;
        border-radius: 16px;
    }

    .categories-section .category-simple-icon {
        font-size: 29px;
    }

    .categories-section .category-name {
        font-size: 0.72rem;
    }

    .categories-section .category:hover,
    .categories-section .category:focus-visible {
        flex-basis: 220px;
    }

    .experience-grid,
    .tourism-grid {
        display: flex;
        gap: 14px;
        overflow-x: auto;
        padding: 4px 1px 16px;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        overscroll-behavior-inline: contain;
    }

    .experience-grid::-webkit-scrollbar,
    .tourism-grid::-webkit-scrollbar {
        display: none;
    }

    .experience-grid .experience,
    .tourism-grid .tourism-card,
    .tourism-grid .tourism-card:first-child {
        flex: 0 0 86%;
        min-width: 0;
        grid-column: auto;
        scroll-snap-align: start;
        scroll-snap-stop: always;
    }

    .experience-grid .experience {
        min-height: 300px;
    }

    .tourism-grid .tourism-card {
        min-height: 340px;
    }
}

@media (max-width: 680px) and (prefers-reduced-motion: reduce) {
    .experience-grid,
    .tourism-grid {
        scroll-behavior: auto;
    }
}
