.announcement-list { display: grid; gap: 1rem; margin: 1rem 0 1.5rem; }
.announcement-card { padding: 1.25rem; border: 1px solid #bfd4ed; border-left: 5px solid #2463a6; border-radius: .65rem; background: #f2f7ff; color: #152a43; overflow-wrap: anywhere; }
.announcement-card h2 { margin: .25rem 0 .75rem; font-size: 1.25rem; color: inherit; }
.announcement-label { margin: 0; font-size: .8rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.announcement-body { white-space: pre-wrap; overflow-wrap: anywhere; }
.announcement-form { max-width: 60rem; display: grid; gap: .75rem; }
.announcement-form fieldset { min-width: 0; display: grid; gap: .75rem; padding: 1rem; border: 1px solid #94a3b8; border-radius: .5rem; }
.announcement-form input:not([type="checkbox"]):not([type="hidden"]), .announcement-form textarea, .announcement-form select { box-sizing: border-box; width: 100%; max-width: 100%; font: inherit; }
.announcement-form select[multiple] { min-height: 10rem; }
.announcement-form .announcement-checkbox, .announcement-checkbox { display: flex; align-items: flex-start; gap: .5rem; }
.announcement-checkbox input[type="checkbox"] { width: auto; flex-shrink: 0; margin-top: .25rem; }
.website-announcements { max-width: 1440px; margin: 0 auto; padding: 0 1.25rem; }
