.site-announcement{position:sticky;top:0;z-index:100;background:#dce9e1;color:var(--navy);border-bottom:1px solid #a4bfb0;padding:12px 64px;font:14px/1.5 'DM Sans','Segoe UI',sans-serif;animation:awp-announcement-green 5s ease-in-out infinite}
@keyframes awp-announcement-green{0%,80%,100%{background-color:#dce9e1}90%{background-color:#74c69d}}
.site-announcement[hidden]{display:none}
html[data-announcement-managed="true"] [data-announcement]:not([data-announcement-ready="true"]){display:none}
.announcement-title,.announcement-message{min-width:0;overflow-wrap:anywhere}
html[data-announcement-managed="true"] .announcement-label{white-space:normal;overflow-wrap:anywhere}
html[data-announcement-managed="true"] .announcement-action{white-space:normal;overflow-wrap:anywhere;max-width:100%}
.announcement-content{display:flex;align-items:center;justify-content:center;gap:20px;max-width:1200px;margin:auto}
.announcement-label{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--navy);white-space:nowrap}
.announcement-title{font-size:14px}
.announcement-action{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:44px;padding:10px 18px;background:var(--navy);color:#fff;white-space:nowrap;font-size:13px;font-weight:600;border-radius:2px}
.announcement-action:hover{background:#24495b}
.announcement-dismiss{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;background:transparent;color:var(--navy);font-size:25px;cursor:pointer}
.site-announcement :focus-visible{outline:3px solid var(--teal);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.site-announcement{animation:none;background:#b8ddc8}}
@media(max-width:760px){.site-announcement{padding:14px 60px 14px 22px}.announcement-content{justify-content:flex-start;flex-wrap:wrap;gap:8px 14px}.announcement-label{width:100%}.announcement-title{font-size:13px}.announcement-action{font-size:12px;min-height:44px;padding:8px 14px}.announcement-dismiss{right:8px}}

html { scroll-padding-top: calc(var(--announcement-height, 84px) + 16px); }
@media(min-width:801px) { body.paper-page .paper-toc { top: calc(var(--announcement-height, 0px) + 24px); max-height: calc(100vh - var(--announcement-height, 0px) - 48px); } }
