/* HOME "Latest News" section ([srs_latest_news]): centred heading, 3 cards like the Latest News page, "Read More" button. */
.srs-nh{ width:calc(100% - 40px) !important; max-width:1200px !important; margin:0 auto 56px !important; padding:0 0 56px; border-bottom:1px solid #dcdcdc; }
.srs-nh-title{ margin:0 0 6px; text-align:center; font-size:40px; font-weight:400; line-height:1.2; color:#333; }
.srs-nh-sub{ margin:0 0 34px; text-align:center; font-size:20px; line-height:1.5; color:#555; }

.srs-nh-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; align-items:stretch; }
.srs-nh-card{
  position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid #f3f4f6; border-radius:8px; overflow:hidden;
  box-shadow:0 1px 2px rgba(0,0,0,.05); transition:box-shadow .2s ease;
}
.srs-nh-card:hover{ box-shadow:0 8px 24px rgba(0,0,0,.10); }
.srs-nh-cover{ position:absolute; inset:0; z-index:2; }
.srs-nh-img{ background:#f3f4f6; aspect-ratio:3 / 2; }
.srs-nh-img img{ display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.srs-nh-body{ display:flex; flex-direction:column; flex:1; padding:22px 24px 24px; }
.srs-nh-body h3{ margin:0 0 6px; font-size:18px; font-weight:500; line-height:1.4; color:#111827; }
.srs-nh-card:hover .srs-nh-body h3{ color:#2563eb; }
.srs-nh-date{ display:block; margin:0 0 8px; font-size:13px; color:#9ca3af; }
.srs-nh-body p{
  margin:0; font-size:14px; line-height:1.7; color:#6b7280;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.srs-nh-more{ margin-top:auto; padding-top:16px; font-size:14px; font-weight:500; color:#2563eb; transition:padding-left .2s ease; }
.srs-nh-card:hover .srs-nh-more{ padding-left:4px; }

@media (max-width:921px){ .srs-nh-grid{ grid-template-columns:repeat(2,1fr); } }
/* tablet: with exactly 3 news posts, show 2 (a lone third card in a second row looks lopsided). Phones show all 3 in one column. */
@media (min-width:601px) and (max-width:921px){
  .srs-nh-grid:has(> .srs-nh-card:nth-child(3):last-child) > .srs-nh-card:nth-child(3){ display:none; }
}
@media (max-width:900px){ .srs-nh{ width:100% !important; } }
@media (max-width:600px){
  .srs-nh{ margin-bottom:30px !important; padding-bottom:30px; }
  .srs-nh-title{ font-size:30px; }
  .srs-nh-sub{ font-size:17px; margin-bottom:24px; }
  .srs-nh-grid{ grid-template-columns:1fr; }
}
