@media (max-width: 991.98px) {

    .col-lg-4:has(.services-list) {
        position: sticky;
        top: 70px; /* adjust to match your header height */
        z-index: 10;
        background: #eff6f5;
        /*box-shadow: 0 2px 8px rgba(0,0,0,0.06);*/
    }

    .services-list {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
        gap: 10px;
        padding: 6px 16px;
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none;
        position: relative;
    }

    .services-list::-webkit-scrollbar {
        display: none; /* Chrome/Safari */
    }

    .services-list .tour-link {
        flex: 0 0 auto;
        scroll-snap-align: start;
        white-space: nowrap;
        padding: 10px 20px;
        border-radius: 30px;
        background: #f7f7f7;
        border: 1.5px solid #ececec;
        color: #444;
        font-size: 13.5px;
        font-weight: 500;
        transition: all 0.25s ease;
        display: inline-flex;
        align-items: center;
        gap: 6px;
    }

    .services-list .tour-link:active {
        transform: scale(0.96);
    }

    .services-list .tour-link.active {
        background: #fda701;
        border-color: #fda701;
        color: #fff;
        font-weight: 600;
        box-shadow: 0 3px 10px rgba(253, 167, 1, 0.35);
    }

    /* Fade gradient hints on left/right edges - shows there's more to scroll */
    .service-details .row.gy-4 {
        position: relative;
    }

    .col-lg-4::after {
        content: "";
        position: absolute;
        top: 8px;
        right: 0;
        bottom: 8px;
        width: 28px;
        background: linear-gradient(to right, transparent, #fff 85%);
        pointer-events: none;
        z-index: 2;
    }
}

/* Small screens - tighten spacing further */
@media (max-width: 480px) {
    .services-list .tour-link {
        padding: 9px 16px;
        font-size: 13px;
    }
}