
/* BEGUIGO challenge archive filters / sorting */
.be-challenge-archive-tools{
    clear:both;
    width:100%;
    margin:0 0 22px;
    padding:16px;
    border:1px solid #243248;
    border-radius:18px;
    background:linear-gradient(180deg,rgba(17,26,43,.96),rgba(11,19,32,.96));
    box-shadow:0 16px 36px rgba(0,0,0,.16);
}
.be-challenge-filter-form{margin:0}
.be-challenge-filter-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:14px;
}
.be-challenge-filter-heading>div{display:flex;flex-direction:column;gap:2px}
.be-challenge-filter-eyebrow{
    color:#8da1bf;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.be-challenge-filter-heading strong{
    color:#fff;
    font-size:1rem;
    font-weight:900;
}
.be-challenge-filter-reset{
    color:#aebbd0!important;
    font-size:.78rem;
    font-weight:800;
    text-decoration:none!important;
}
.be-challenge-filter-reset:hover{color:#fff!important}
.be-challenge-filter-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.be-ch-filter{
    display:flex;
    flex-direction:column;
    gap:6px;
    min-width:0;
}
.be-ch-filter>span{
    color:#91a4bf;
    font-size:.66rem;
    font-weight:850;
    letter-spacing:.045em;
    text-transform:uppercase;
}
.be-ch-filter select,
.woocommerce .woocommerce-ordering select{
    width:100%;
    min-height:42px;
    padding:0 38px 0 12px;
    border:1px solid #2a3a52;
    border-radius:12px;
    background:#0d1626;
    color:#f8fafc;
    font-size:.82rem;
    font-weight:750;
    outline:none;
    box-shadow:none;
}
.be-ch-filter select:focus,
.woocommerce .woocommerce-ordering select:focus{
    border-color:#6f76ef;
    box-shadow:0 0 0 3px rgba(99,102,241,.14);
}
.be-challenge-filter-chips{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:12px;
}
.be-challenge-filter-chips a{
    display:inline-flex;
    align-items:center;
    gap:5px;
    min-height:28px;
    padding:.28rem .56rem;
    border:1px solid rgba(99,102,241,.26);
    border-radius:999px;
    background:rgba(99,102,241,.10);
    color:#c7d2fe!important;
    font-size:.7rem;
    font-weight:800;
    text-decoration:none!important;
}
.be-challenge-filter-chips a:hover{background:rgba(99,102,241,.17);color:#fff!important}
.be-challenge-filter-apply{
    margin-top:12px;
    min-height:40px;
    padding:0 16px;
    border:0;
    border-radius:10px;
    background:linear-gradient(135deg,#7c83f5,#6265ee);
    color:#fff;
    font-weight:850;
}
body.tax-product_cat .woocommerce-ordering{
    float:none!important;
    width:min(100%,320px);
    margin:0 0 16px auto!important;
}
body.tax-product_cat .woocommerce-result-count{
    margin:10px 0 16px!important;
    color:#9fb1ca!important;
    font-size:.78rem;
}
@media(max-width:1100px){
    .be-challenge-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
    .be-challenge-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
    .be-challenge-archive-tools{padding:13px;border-radius:15px}
    .be-challenge-filter-grid{grid-template-columns:1fr}
    .be-challenge-filter-heading{align-items:flex-start}
    body.tax-product_cat .woocommerce-ordering{width:100%;margin-left:0!important}
}

/* Catalogue mobile/tablet sort alignment: keep the ordering control centered. */
@media (max-width:768px){
    body.tax-product_cat .woocommerce-ordering{
        float:none!important;
        width:min(100%,360px)!important;
        margin:0 auto 16px!important;
        text-align:center!important;
    }
    body.tax-product_cat .woocommerce-ordering select{
        display:block!important;
        width:100%!important;
        max-width:360px!important;
        margin-inline:auto!important;
    }
}

/* =========================================================
   CHALLENGE CATALOGUE — DYNAMIC ROW DENSITY (render-time)
========================================================= */
@media (min-width:1081px){
    ul.products.nan-catalog-density{
        --nan-catalog-gap:clamp(1rem,2.5vw,1.5rem);
        display:flex!important; flex-wrap:wrap!important; align-items:stretch!important;
        justify-content:center!important; gap:var(--nan-catalog-gap)!important;
        grid-template-columns:none!important; max-width:none!important;
    }
    ul.products.nan-catalog-density>li.product:not(.product-category){box-sizing:border-box!important;margin:0!important}
    ul.products.nan-catalog-max-1>li.product:not(.product-category){flex:0 0 100%!important;width:100%!important;max-width:100%!important}
    ul.products.nan-catalog-max-2>li.product:not(.product-category){flex:0 0 calc((100% - var(--nan-catalog-gap))/2)!important;width:calc((100% - var(--nan-catalog-gap))/2)!important;max-width:calc((100% - var(--nan-catalog-gap))/2)!important}
    ul.products.nan-catalog-max-3>li.product:not(.product-category){flex:0 0 calc((100% - 2*var(--nan-catalog-gap))/3)!important;width:calc((100% - 2*var(--nan-catalog-gap))/3)!important;max-width:calc((100% - 2*var(--nan-catalog-gap))/3)!important}
    ul.products.nan-catalog-max-4>li.product:not(.product-category){flex:0 0 calc((100% - 3*var(--nan-catalog-gap))/4)!important;width:calc((100% - 3*var(--nan-catalog-gap))/4)!important;max-width:calc((100% - 3*var(--nan-catalog-gap))/4)!important}
    ul.products.nan-catalog-max-5>li.product:not(.product-category){flex:0 0 calc((100% - 4*var(--nan-catalog-gap))/5)!important;width:calc((100% - 4*var(--nan-catalog-gap))/5)!important;max-width:calc((100% - 4*var(--nan-catalog-gap))/5)!important}
    ul.products.nan-catalog-max-6>li.product:not(.product-category){flex:0 0 calc((100% - 5*var(--nan-catalog-gap))/6)!important;width:calc((100% - 5*var(--nan-catalog-gap))/6)!important;max-width:calc((100% - 5*var(--nan-catalog-gap))/6)!important}
    ul.products.nan-catalog-density.nan-catalog-single-row:not(.nan-catalog-max-1).nan-catalog-last-1>li.product:not(.product-category):last-child{
        flex:0 0 calc((100% - var(--nan-catalog-gap))/2)!important;width:calc((100% - var(--nan-catalog-gap))/2)!important;max-width:calc((100% - var(--nan-catalog-gap))/2)!important;margin-left:auto!important;margin-right:auto!important
    }
    ul.products.nan-catalog-single-row.nan-catalog-last-2>li.product:not(.product-category):nth-last-child(-n+2){flex:0 0 calc((100% - var(--nan-catalog-gap))/2)!important;width:calc((100% - var(--nan-catalog-gap))/2)!important;max-width:calc((100% - var(--nan-catalog-gap))/2)!important}
    ul.products.nan-catalog-single-row.nan-catalog-last-3>li.product:not(.product-category):nth-last-child(-n+3){flex:0 0 calc((100% - 2*var(--nan-catalog-gap))/3)!important;width:calc((100% - 2*var(--nan-catalog-gap))/3)!important;max-width:calc((100% - 2*var(--nan-catalog-gap))/3)!important}
    ul.products.nan-catalog-single-row.nan-catalog-last-4>li.product:not(.product-category):nth-last-child(-n+4){flex:0 0 calc((100% - 3*var(--nan-catalog-gap))/4)!important;width:calc((100% - 3*var(--nan-catalog-gap))/4)!important;max-width:calc((100% - 3*var(--nan-catalog-gap))/4)!important}
    ul.products.nan-catalog-single-row.nan-catalog-last-5>li.product:not(.product-category):nth-last-child(-n+5){flex:0 0 calc((100% - 4*var(--nan-catalog-gap))/5)!important;width:calc((100% - 4*var(--nan-catalog-gap))/5)!important;max-width:calc((100% - 4*var(--nan-catalog-gap))/5)!important}
}
@media (min-width:769px) and (max-width:1080px){
    ul.products.nan-catalog-density{--nan-catalog-gap:clamp(1rem,2.5vw,1.5rem);display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:var(--nan-catalog-gap)!important;grid-template-columns:none!important;max-width:none!important}
    ul.products.nan-catalog-density>li.product:not(.product-category){box-sizing:border-box!important;flex:0 0 calc((100% - var(--nan-catalog-gap))/2)!important;width:calc((100% - var(--nan-catalog-gap))/2)!important;max-width:calc((100% - var(--nan-catalog-gap))/2)!important;margin:0!important}
    ul.products.nan-catalog-density.nan-catalog-max-1>li.product:not(.product-category){flex-basis:100%!important;width:100%!important;max-width:100%!important}
    ul.products.nan-catalog-density.nan-catalog-last-1:not(.nan-catalog-max-1)>li.product:not(.product-category):last-child{margin-left:auto!important;margin-right:auto!important}
}
@media (max-width:768px){
    ul.products.nan-catalog-density{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;max-width:none!important}
    ul.products.nan-catalog-density>li.product:not(.product-category){width:100%!important;max-width:none!important;margin:0!important}
}
