/* Page-specific styles for training-gym-20.php */
.programs-intro{
    text-align: center;
    margin-bottom: 2.5rem;
}
.programs-title{
    font-family: var(--second-font);
    font-size: clamp(1.8rem, 4vw, 3rem);
    color: var(--title-color);
    margin-bottom: .5rem;
}
.programs-subtitle{
    color: var(--text-color);
    margin-bottom: 1rem;
}
.programs-grid{
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(3, 1fr);
}
.program-card{
    display: block;
    background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
    border: 1px solid rgba(255,255,255,0.04);
    padding: 1.25rem;
    border-radius: 12px;
    text-align: center;
    transition: transform .2s ease, box-shadow .2s ease;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}
.program-card:hover{ transform: translateY(-6px); box-shadow: 0 8px 20px rgba(0,0,0,0.45); }
.card-icon{ font-size: 2.1rem; margin-bottom: .75rem; }
.card-title{ color: var(--title-color); margin-bottom: .5rem; }
.card-desc{ color: var(--text-color); font-size: .95rem; line-height:1.5 }

@media screen and (max-width: 900px){
    .programs-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media screen and (max-width: 520px){
    .programs-grid{ grid-template-columns: 1fr; }
    .programs-title{ font-size: 1.6rem }
}
