.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.program-card{position:relative;overflow:visible}
.program-card__desc{position:absolute;left:100%;top:0;width:320px;background:#fff;padding:16px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.15);opacity:0;visibility:hidden;transform:translateX(10px);transition:.2s;z-index:10;font-size:14px;line-height:1.5;word-break:break-word;overflow-wrap:anywhere;left:calc(100% + 10px);max-width:90vw;pointer-events:none}
.program-card:hover .program-card__desc{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto}
.program-card__desc .fheader{margin:0 0 8px 0;padding:0}.program-card__desc .fheader h1{font-size:15px;line-height:1.3;margin:0;font-weight:600;white-space:normal;word-break:break-word;
overflow-wrap:anywhere}.program-card__desc .short-item{font-size:13px;line-height:1.4;color:#444}.program-card__image{aspect-ratio:16/9;overflow:hidden}
.program-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:.3s}.program-card__content{padding:10px 0}
.program-card__title{font-size:15px;font-weight:600;margin:0;line-height:1.3;word-break:break-word;overflow-wrap:anywhere}
.program-card__title a{color:#111;text-decoration:none}.program-card:hover img{filter:brightness(.7)}
@media (max-width:900px){.program-grid{grid-template-columns:repeat(2,1fr)}.program-card__desc{display:none}}
@media (max-width:600px){.program-grid{grid-template-columns:1fr}}
