.official-section { padding-top: 105px; padding-bottom: 5px; }
.announcement-feed { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 42px; }
.announcement-card { display: flex; flex-direction: column; gap: 12px; min-height: 154px; padding: 19px 20px; background: #fff; border: 1px solid var(--line); border-top: 2px solid #9bcdb9; border-radius: 4px; }
.announcement-card:hover { border-color: #83b8a5; }
.announcement-meta, .announcement-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #7d8b86; font-size: 11px; }
.announcement-card h3 { margin: 0; line-height: 1.5; font-size: 15px; }
.announcement-card a { color: var(--ink); }.announcement-card a:hover { color: var(--green); }
.announcement-footer { margin-top: auto; }.announcement-footer span:last-child { color: var(--green); font-weight: 700; }
.feed-status { grid-column: 1 / -1; margin: 0; padding: 22px; background: #fff; border: 1px solid var(--line); color: var(--muted); }
.job-catalog { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 42px; }
.job-card { display: flex; flex-direction: column; min-height: 168px; gap: 12px; padding: 18px; background: #fff; border: 1px solid var(--line); border-radius: 4px; }
.job-card h3 { margin: 0; color: var(--ink); font-size: 15px; line-height: 1.5; }
.job-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.job-meta { display: flex; justify-content: space-between; align-items: center; gap: 8px; color: var(--muted); font-size: 11px; }
.job-card a { margin-top: auto; color: var(--green); font-size: 13px; font-weight: 700; }
.match-result .job-card { margin-top: 14px; min-height: auto; }
@media (max-width: 850px) { .job-catalog { grid-template-columns: 1fr; } }
@media (max-width: 850px) { .announcement-feed { grid-template-columns: 1fr; } }
@media (max-width: 620px) { .official-section { padding-top: 72px; padding-bottom: 76px; } }
