/* ============================================
   ANGELS
============================================ */
.na-angels{
    width:100%;
    margin:20px auto;
    padding:0 20px;
}
.na-angels__grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:15px;
    align-items:stretch;
}
/* ============================================
   CARD
============================================ */
.na-angel-card{
    --card-bg:var(--theme-bg-secondary);
    --card-border:var(--angel-color);
    --card-glow:var(--angel-color);
    position:relative;
    overflow:hidden;

    border-radius:28px;

    background:var(--card-bg);

    border:1px solid var(--card-border);

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;

}
.na-angel-card:hover{

    transform:translateY(-6px);

    border-color:var(--card-border);

    box-shadow:0 0 30px var(--card-glow);

}
.na-angel-card__link{
    display:block;
    position:relative;
    text-decoration:none;
    color:inherit;
    height:100%;
}
.na-angel-card__image{
    width:100%;
    height:560px;
    object-fit:cover;
    display:block;
    transition:.45s;
}
.na-angel-card:hover .na-angel-card__image{
    transform:scale(1.04);
}
/* ============================================
   OVERLAY
============================================ */
.na-angel-card__overlay{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:32px;
    background:
    linear-gradient(
        to top,
        rgba(0,0,0,.94) 10%,
        rgba(0,0,0,.60) 45%,
        rgba(0,0,0,0) 75%
    );
}
/* ============================================
   TEXT
============================================ */
.na-angel-card__state{
color:var(--angel-color);
    text-transform:uppercase;
    letter-spacing:.22em;
    font-size:.72rem;
    margin-bottom:10px;
}
.na-angel-card__title{
    margin:0;
    font-size:1.4rem;
    color:var(--theme-title);
}
.na-angel-card__subtitle{
    margin-top:8px;
    color:var(--theme-text);
}
.na-angel-card__description{
    margin:10px 0 0;
    color:var(--theme-text-secondary);
    line-height:1.2;
}
.na-angel-card__name{
    margin-top:5px;
    font-size:1.2rem;
    letter-spacing:.15em;
    text-transform:uppercase;
    color:var(--angel-color);
    font-weight:600;
}