.announcement{background:#193d33;color:#fff;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 20px;padding-top:6px;padding-bottom:6px}
.announcement .announcement-tagline{display:block;line-height:1.5}
.announcement .announcement-links{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-left:auto;flex-wrap:nowrap}
.announcement-links a{display:inline-flex;align-items:center;gap:8px;min-height:36px;font-weight:700;white-space:nowrap;color:#fff;text-decoration:none;border-radius:4px;padding:3px 4px}
.announcement-links a:hover{background:#ffffff12;text-decoration:underline;text-underline-offset:4px}
.announcement-links a:focus-visible{outline:2px solid #fff;outline-offset:3px}
.announcement-offers .announcement-sparkle{color:#ffe46d}.announcement-arrivals .announcement-sparkle{color:#8edaff}
.announcement-sparkle{flex-shrink:0;transform-origin:center;animation:announcement-glow 2.8s ease-in-out infinite}
.announcement-arrivals .announcement-sparkle{animation-delay:.7s}
@keyframes announcement-glow{0%,100%{opacity:.75;transform:scale(1);filter:drop-shadow(0 0 1px currentColor)}50%{opacity:1;transform:scale(1.08);filter:drop-shadow(0 0 5px currentColor)}}
@media(max-width:600px){.announcement .announcement-tagline{flex-basis:100%;font-size:12px}.announcement .announcement-links{width:100%;gap:20px}.announcement-links a{min-height:36px;font-size:13px}.announcement-sparkle{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){.announcement-sparkle{animation:none;filter:none}}

/* Refined Offers lettering, with the existing accessible link and sparkle. */
.announcement-links .announcement-offers{gap:9px;padding:3px 10px;color:#f7e4b3}
.announcement-offers-lettering{font-family:Georgia,"Times New Roman",serif;font-size:23px;font-style:italic;font-weight:600;letter-spacing:.035em;line-height:1.25;text-shadow:0 1px 1px #0002}
.announcement-links .announcement-offers:hover{color:#fff0ce;text-decoration:none;background:#ffffff10}
.announcement-offers:hover .announcement-offers-lettering{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
@media(max-width:600px){.announcement-offers-lettering{font-size:21px}}

/* Restrained celebration artwork behind the Offers word. */
.announcement-links .announcement-offers{position:relative;isolation:isolate;background:#14383c url('/icons/offers-fireworks.svg') center/cover no-repeat;border:1px solid #d8bc7959;border-radius:8px;box-shadow:0 2px 8px #071e2429;padding:3px 12px}
.announcement-links .announcement-offers:hover{background:#14383c url('/icons/offers-fireworks.svg') center/cover no-repeat;border-color:#e6ca87;box-shadow:0 2px 10px #e6ca8726}
.announcement-offers-lettering{color:#ffe7b3;text-shadow:none;background:linear-gradient(115deg,#fff0c9 0%,#f5cb84 22%,#b9ebef 46%,#f4d2e1 68%,#fff0c9 100%);background-size:180% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:offers-colour-glow 7s ease-in-out infinite}
@keyframes offers-colour-glow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.announcement-offers-lettering{animation:none}}
@media(forced-colors:active){.announcement-offers-lettering{background:none;-webkit-text-fill-color:LinkText;color:LinkText}.announcement-links .announcement-offers{border:1px solid LinkText}}

/* A short live fireworks burst repeats once every 15 seconds. */
.announcement-links .announcement-offers{overflow:hidden}
.announcement-offers::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('/icons/offers-fireworks.svg') center/cover no-repeat;opacity:0;transform:scale(.72);animation:offers-live-burst 15s ease-out infinite}
@keyframes offers-live-burst{0%{opacity:0;transform:scale(.72);filter:brightness(1)}2%{opacity:1;transform:scale(1);filter:brightness(2) saturate(1.8)}5%{opacity:.9;transform:scale(1.15);filter:brightness(1.6) saturate(1.6)}10%{opacity:0;transform:scale(1.4);filter:brightness(1)}100%{opacity:0;transform:scale(1.4)}}
@media(prefers-reduced-motion:reduce){.announcement-offers::after{animation:none;opacity:0}}
