.program-container {
    .program-list {
        display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; counter-reset: item;
        .program-card {
            background: #f3f5f7; padding: 20px; border-radius: 5px; border: 1px solid #dadee1; counter-increment: item; position: relative; overflow: hidden; min-height: 150px; word-break: keep-all;
            &:after {
                content: counter(item); position: absolute; right: 10px; bottom: -20px; font-size: 14rem; font-weight: 800; color: #1e3a5f; opacity: 0.08; line-height: 1;
            }
            .label {
                border:1px solid; margin-bottom: 15px; padding: 2px 12px; border-radius: 30px; font-size: 1.4rem; font-weight: 700; margin-right: 5px; display: inline-block;
                &.type-1 {
                    border-color: var(--blue); color: var(--blue);
                }
                &.type-2 {
                    border-color: var(--pink); color: var(--pink);
                }
            }
            .card-title {
                font-size: 1.9rem; font-weight: 800; color: var(--navy); margin-bottom: 7px; word-break: keep-all; line-height: 1.3;
            }
            .card-info {
                font-size: 1.6rem; color: #333; line-height: 1.4; word-break: keep-all;
            }
            .link-more {
                font-size: 1.4rem; font-weight: 600; color: #1c779b; margin-top: 15px; display: inline-block;
                &:hover {
                    text-decoration: underline;
                }
            }
        }
    }
}

@media (max-width: 900px) {
    .program-container {
        .program-list {
            grid-template-columns: repeat(2, 1fr); gap: 7px;
            .program-card {
                padding: 10px;
                &:after {
                    font-size: 10rem;
                }
                .label {
                    margin-bottom: 10px; font-size: 1.2rem;
                }
                .card-title {
                    font-size: 1.5rem;
                }
                .card-info {
                    font-size: 1.4rem;
                }
                .link-more {
                    font-size: 1.2rem; margin-top: 10px;
                }
            }
        }
    }
}