/* Supplemental layout; colors and typography come from the Webflow export. */
.notice-attachments { display: grid; gap: 12px; margin-top: 20px; }
.notice-document { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 22px; border-radius: 18px; color: var(--dark-color); background: var(--light-color); text-decoration: none; font-weight: 600; overflow-wrap: anywhere; }
.notice-document:hover { background: var(--global-color); }
.notice-document:focus-visible { outline: 3px solid var(--dark-color); outline-offset: 3px; }
.notice-document-size { flex-shrink: 0; font-size: 13px; font-weight: 400; }
@media screen and (max-width: 767px) { .notice-document { flex-direction: column; align-items: flex-start; } }
.notice-board-section { padding: 80px 0 100px; }
.notice-board-header { margin-bottom: 36px; }
.notice-list { display: grid; gap: 24px; }
.notice-card { border: 1px solid var(--light-color); border-radius: 25px; padding: 32px; overflow-wrap: anywhere; }
.notice-card-header { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.notice-card h3 { margin: 0 0 12px; color: var(--dark-color); font-family: var(--heading-font); font-size: 26px; line-height: 1.35; }
.notice-meta { display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 14px; }
.notice-category { background: var(--light-color); color: var(--dark-color); border-radius: 20px; padding: 4px 14px; font-weight: 600; }
.notice-pinned { color: var(--dark-color); font-weight: 600; }
.notice-description { margin: 20px 0 0; white-space: pre-wrap; }
.notice-file-link { display: inline-flex; margin-top: 24px; text-decoration: none; }
.notice-file-link:hover { opacity: .85; }
.notice-file-link:focus-visible { outline: 3px solid var(--dark-color); outline-offset: 4px; border-radius: 30px; }
.notice-state { background: var(--light-color); padding: 28px; border-radius: 25px; }
@media screen and (max-width: 767px) {
  .notice-board-section { padding: 48px 0 64px; }
  .notice-card { padding: 22px; }
  .notice-card-header { flex-direction: column; align-items: flex-start; gap: 0; }
  .notice-category { margin-bottom: 12px; }
  .notice-card h3 { font-size: 22px; }
}
