.ee-programme-posts { width:100%; color:#536a79; }
.ee-programme-posts, .ee-programme-posts * { box-sizing:border-box; }
.ee-programme-posts__heading { margin:0 0 28px; color:#082133; font-size:28px; font-weight:700; line-height:1.3; }
.ee-programme-posts__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ee-programme-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid #dce5eb; border-radius:7px; background:#ffffff; }
.ee-programme-card__image { display:block; position:relative; aspect-ratio:1.5; overflow:hidden; background:#edf6fa; }
.ee-programme-card__image::after { content:""; position:absolute; inset:50% 0 0; background:#000000; opacity:0.16; pointer-events:none; }
.ee-programme-card__image img.ee-programme-card__thumbnail { display:block; width:100%; height:100%; max-width:100%; margin:0; object-fit:cover; }
.ee-programme-card__placeholder { display:block; width:100%; height:100%; background:#edf6fa; }
.ee-programme-card__badge { position:absolute; top:20px; right:20px; z-index:1; max-width:calc(100% - 40px); padding:5px 9px; border-radius:3px; background:#258786; color:#ffffff; font-size:11px; font-weight:700; line-height:1.2; text-transform:uppercase; overflow-wrap:anywhere; }
.ee-programme-card__body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:40px 22px 42px; }
.ee-programme-card__title { margin:0 0 26px; font-size:21px; font-weight:600; line-height:1.35; text-transform:none; overflow-wrap:anywhere; }
.ee-programme-card__title a { color:#101010; text-decoration:none; }
.ee-programme-card__title a:hover { color:#116282; }
.ee-programme-card__excerpt { margin:0 0 44px; color:#536a79; font-size:14px; line-height:1.75; }
.ee-programme-card__more { margin-top:auto; color:#367d36; font-size:12px; font-weight:500; line-height:1.5; text-transform:uppercase; text-decoration:none; }
.ee-programme-card__more:hover { color:#082133; }
.ee-programme-card__footer { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:15px 28px; border-top:1px solid #e8e8e8; color:#97a1a8; font-size:12px; line-height:1.4; }
.ee-programme-posts a:focus-visible { outline:2px solid #116282; outline-offset:3px; }
@media(max-width:1024px) { .ee-programme-posts__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) { .ee-programme-posts__grid { grid-template-columns:minmax(0,1fr); gap:22px; } .ee-programme-card__body { padding:28px 22px; } .ee-programme-card__title { font-size:21px; margin-bottom:20px; } .ee-programme-card__excerpt { margin-bottom:28px; } }
