﻿body {
}
.catWrap {
    width: 100%;
    clear: both;
}
.catHeader {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 1%;
    margin: .8rem 0 1.5rem 0;
}

.catTitle {
    margin-left: 4%;
    font-weight: 600;
    color: #111;
    font-family: Arial;
}/* --- Desktop pills row --- */
.catRow--desktop {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 1%;
    align-items: center;
}

/* pill buttons */
.catPill {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.55rem 2rem;
    border-radius: 999rem;
    border: .08rem solid rgba(0,0,0,.08);
    background: rgba(255,255,255,.85);
    box-shadow: 0 .25rem .8rem rgba(0,0,0,.06);
    cursor: pointer;
    white-space: nowrap;
    margin-left: 0.3%;
    width: 11%;
}

    /* active pill */
.catPillactive {
    background: linear-gradient(135deg, #ff4d4d, #cc0000);
    color: #fff;
    border-color: transparent;
    width: 6%;
    border-radius: 6px;
    border: .08rem solid rgba(0,0,0,.08);
    margin-left: 4%;
    padding: 0.55rem 2rem;
    outline: none;
}

/* icon size */
.catIco {
    font-size: 1.05rem;
    line-height: 1;
}

.catTxt {
    font-size: .95rem;
    font-weight: 600;
}

/* --- Mobile scroll cards row --- */
.catRow--mobile {
    width: 100%;
    display: none; /* hidden on desktop */
    gap: 2%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding: .4rem 0;
    scroll-snap-type: x mandatory;
}

    /* hide scrollbar nicely */
    .catRow--mobile::-webkit-scrollbar {
        height: .4rem;
    }

    .catRow--mobile::-webkit-scrollbar-thumb {
        background: rgba(0,0,0,.15);
        border-radius: 999rem;
    }

/* each card uses % width (no px) */
.catCard {
    width: 22%; /* ✅ percentage width */
    flex: 0 0 22%;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #111;
    border: .08rem solid rgba(0,0,0,.08);
    border-radius: 1rem;
    background: rgba(255,255,255,.9);
    box-shadow: 0 .25rem .8rem rgba(0,0,0,.06);
    padding: .7rem 0;
}

/* icon + text */
.catCardIco {
    width: 60%;
    aspect-ratio: 1 / 1; /* keeps square icon area */
    display: grid;
    place-items: center;
    border-radius: 1rem;
    
    font-size: 1.2rem;
}

.catCardTxt {
    margin-top: .45rem;
    font-size: .85rem;
    font-weight: 700;
}

/* active mobile card */
.catCard.is-active {
    /*border-color: rgba(255,77,77,.35);
    box-shadow: 0 .35rem 1rem rgba(255,77,77,.15);*/
}

    .catCard.is-active .catCardIco {
        
    }

/* ✅ Breakpoint: show mobile style, hide desktop style */
@media (max-width: 1024px) {
    .catRow--desktop {
        display: none;
    }

    .catRow--mobile {
        display: flex;
    }
}

/* Optional: make cards a bit wider on very small screens */
@media (max-width: 1024px) {

    .catRow--mobile {
        display: flex;
        gap: 2%;
    }

    /* 🔥 Smaller boxes */
    .catCard {
        width: 18%; /* reduced from 22% */
        flex: 0 0 18%;
        padding: .5rem 0; /* less height */
        border-radius: .8rem;
    }

    /* smaller icon area */
    .catCardIco {
        width: 55%;
        font-size: 1rem;
        border-radius: .7rem;
    }

    /* smaller text */
    .catCardTxt {
        font-size: .75rem;
        margin-top: .3rem;
    }
    /* still % */
    .catWrap {
        margin-top: 50px;
    }
}