.news-excerpt { width: 100%; }
.section-header { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 24px; }
.section-heading { font-size: 32px; font-weight: 800; color: var(--text); line-height: 1.2; letter-spacing: -0.02em; }
.section-heading.section-heading--h3 { font-size: 36px; }
.section-more {
  font-size: 18px; font-weight: 700; color: var(--blue);
  display: flex; align-items: center; gap: 6px;
  letter-spacing: 0.03em; white-space: nowrap;
  transition: color var(--transition), opacity var(--transition);
  text-decoration: none;
}
.section-more:hover { opacity: 1; }
.section-more i {
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; border-radius: 50%;
  border: 1.5px solid var(--blue); color: var(--blue);
  font-size: 11px; flex-shrink: 0;
  transition: background-color var(--transition), color var(--transition), border-color var(--transition);
}
.section-more:hover i { background-color: var(--blue); border-color: var(--blue); color: #fff; }

.news-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.news-item {
  position: relative;
  display: flex; flex-wrap: wrap; align-items: center;
  column-gap: 16px; row-gap: 8px;
  border: 1px solid var(--gray-200);
  border-radius: 16px;
  padding: 24px 64px 24px 24px;
  transition: border-color var(--transition), box-shadow var(--transition);
}
.news-item:hover { border-color: var(--blue-vivid); box-shadow: 0 4px 16px rgba(10,112,227,0.10); }
.news-item::after {
  content: "\f054"; font-family: "Font Awesome 6 Free"; font-weight: 900;
  position: absolute; right: 20px; top: 50%; transform: translateY(-50%);
  width: 28px; height: 28px; border-radius: 50%;
  border: 1.5px solid var(--blue); color: var(--blue);
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; transition: background-color var(--transition), color var(--transition), border-color var(--transition);
}
.news-item:hover::after { background-color: var(--blue); border-color: var(--blue); color: #fff; }
.news-item .news-title { order: 1; flex: 1 0 100%; width: 100%; font-size: 18px; font-weight: 400; color: var(--text); line-height: 1.5; }
.news-item .news-title::before { content: ""; position: absolute; inset: 0; }
.news-item .news-tag { order: 2; display: inline-block; border-radius: 4px; width: 72px; padding: 4px 0; font-size: 12px; font-weight: 700; white-space: nowrap; letter-spacing: 0.03em; text-align: center; }
.news-item .news-date { order: 3; font-size: 12px; color: var(--text); font-weight: 500; letter-spacing: 0.02em; }
.tag-important { background: #C62828; color: #fff; }
.tag-info      { background: #656568; color: #fff; }
.tag-service   { background: #1E7E34; color: #fff; }
.tag-event     { background: #005AAB; color: #fff; }

@media (max-width: 768px) {
  .section-header { margin-bottom: 20px; flex-wrap: wrap; gap: 8px; }
  .section-heading.section-heading--h3 { font-size: 24px; }
  .news-item .news-title { font-size: 12px; }
  .news-item .news-date { font-size: 10px; }
  .news-item .news-tag { font-size: 10px; }
  .section-more { font-size: 12px; }
}
