:root{

    --discover-gap:30px;
    --discover-radius:12px;
    --discover-transition:.3s;

    --primary-orange: #c07503;
}

/* .discover-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:var(--discover-gap);
}

.discover-card{
    display:flex;
    flex-direction:column;
    background:#fff;
    height:100%;
}

.discover-card-image img{
    width:100%;
    display:block;
}

.discover-card-content{
    padding:20px;
    display:flex;
    flex-direction:column;
    flex:1;
} */

.discover-category{
    display:block;
    margin-bottom:10px;
    font-size:13px;
    text-transform:uppercase;
    color: var(--primary-orange);
}

.discover-title{
    margin:0 0 15px;
}

.discover-title a{
    text-decoration:none;
}

.discover-excerpt{
    flex:1;
}

.discover-footer{
    margin-top:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.discover-button{
    width: fit-content;
}

.featured-footer{
    display: flex;
    flex-flow: column nowrap;
    gap: 8px;
}

.featured-meta{
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Featured: stacked on mobile, 2-col from tablet */
.featured-discover{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
    align-items:center;
    margin-bottom:40px;
}

.featured-image img{
    width:100%;
    display:block;
}

.featured-content h2{
    margin:15px 0;
}

.featured-content p{
    margin-bottom:25px;
}

.discover-category-grid{
    margin-top:40px;
}

.discover-category-card img{
    width:100%;
    display:block;
}

.discover-category-content{
    padding:20px;
}

.discover-filter{
    cursor:pointer;
    transition:var(--discover-transition);
}

.discover-filter .elementor-button{
    border-bottom:2px solid transparent;
    border-radius:0;
    transition:var(--discover-transition);
}

.discover-filter.active .elementor-button,
.discover-filter.active{
    background:transparent;
    color:inherit;
    border-bottom:2px solid #000;
}

#discover-posts{
    transition:var(--discover-transition);
}

/* Grids: 1 col on mobile */
.discover-grid,
.discover-category-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:var(--discover-gap);
}

/* Discover cards: only first visible on mobile until Load More */
.discover-grid:not(.is-expanded) .discover-card:nth-child(n+2){
    display:none;
}

.discover-grid.is-expanded .discover-card{
    display:flex;
}

.discover-card,
.discover-category-card{
    display:flex;
    flex-direction:column;
    height:100%;
    background:#fff;
}

.discover-card-image img,
.discover-category-card img{
    width:100%;
    display:block;
    aspect-ratio:16/9;
    object-fit:cover;
}

.discover-card-content,
.discover-category-content{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:20px;
}

.discover-excerpt{
    flex:1;
}

.discover-footer{
    margin-top:auto;
}

.discover-loading{

    opacity:.4;

    pointer-events:none;

}

.discover-grid{
    position:relative;
}

.discover-loading::after{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(255,255,255,.7);
    z-index:5;
}

.discover-loading::before{
    content:"";
    width:42px;
    height:42px;
    border:4px solid #ddd;
    border-top-color:#000;
    border-radius:50%;
    position:absolute;
    top:50%;
    left:50%;
    margin-top:-21px;
    margin-left:-21px;
    animation:discoverSpin .8s linear infinite;
    z-index:6;
}

@keyframes discoverSpin{
    to{
        transform:rotate(360deg);
    }
}

/* Tablet and up */
@media (min-width:768px){

    .featured-discover{
        grid-template-columns:1fr 1fr;
        gap:40px;
        margin-bottom:60px;
    }

    .discover-grid,
    .discover-category-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .discover-category-grid{
        margin-top:60px;
    }

    .discover-grid .discover-card:nth-child(n+2),
    .discover-grid:not(.is-expanded) .discover-card:nth-child(n+2){
        display:flex;
    }

}