.n100-announcement-surface{width:min(1200px,calc(100% - 32px));margin:24px auto;max-height:0;opacity:0;overflow:hidden;transition:max-height 220ms ease,opacity 220ms ease,margin 220ms ease}.n100-announcement-surface:empty{display:none;margin:0}.n100-announcement-surface.is-visible{max-height:2400px;opacity:1}.n100-announcement-grid{display:grid;gap:24px}.n100-announcement-secondary{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}.n100-announcement-secondary[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.n100-announcement-secondary[data-count="1"]{grid-template-columns:minmax(260px,384px);justify-content:center}.n100-announcement{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;overflow:hidden;border:1px solid rgba(193,157,77,.6);border-radius:24px;color:#fff;background:linear-gradient(135deg,#073d31,#0d5a47 56%,#0a493b);box-shadow:0 16px 38px rgba(5,49,39,.16);padding:clamp(20px,3vw,38px)}.n100-announcement::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 12% 20%,rgba(224,192,112,.28),transparent 34%),linear-gradient(110deg,transparent 44%,rgba(255,255,255,.07) 51%,transparent 58%);background-size:auto,220% 100%;animation:n100-announcement-shine 8s ease-in-out infinite}.n100-announcement::after{content:"";position:absolute;inset:10px;z-index:-1;border:1px solid rgba(255,255,255,.13);border-radius:17px;pointer-events:none}.n100-announcement--hero{height:200px;min-height:200px;max-height:200px;box-sizing:border-box}.n100-announcement--card{height:160px;min-height:160px;max-height:160px;min-width:0;box-sizing:border-box}.n100-announcement--important{border-color:#e3bd62;box-shadow:0 16px 42px rgba(194,145,37,.2)}.n100-announcement--urgent{border-color:#ef9c7f;background:linear-gradient(135deg,#5b281f,#8b3e2c 58%,#633024);animation:n100-announcement-pulse 3.2s ease-in-out infinite}.n100-announcement-type{display:inline-flex;align-self:flex-start;padding:6px 12px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:rgba(255,255,255,.09);font-size:.8rem;font-weight:800}.n100-announcement h2,.n100-announcement h3{margin:12px 0 8px;color:#fff;line-height:1.25}.n100-announcement--hero h2{font-size:clamp(1.4rem,3vw,2.35rem)}.n100-announcement p{margin:0;max-width:72ch;color:rgba(255,255,255,.87);line-height:1.75}.n100-announcement-cta{align-self:flex-start;margin-top:18px;padding:10px 18px;border-radius:12px;background:#e4c36d;color:#153e34;text-decoration:none;font-weight:900;box-shadow:0 8px 20px rgba(0,0,0,.15)}.n100-announcement-cta:hover{filter:brightness(1.06);transform:translateY(-1px)}@keyframes n100-announcement-shine{0%,70%{background-position:0 0,-80% 0}100%{background-position:0 0,160% 0}}@keyframes n100-announcement-pulse{50%{box-shadow:0 18px 48px rgba(143,58,35,.28)}}@media(max-width:760px){.n100-announcement-surface{width:min(100% - 24px,1200px);margin:16px auto}.n100-announcement-secondary,.n100-announcement-secondary[data-count="2"],.n100-announcement-secondary[data-count="1"]{grid-template-columns:1fr}.n100-announcement--hero{height:200px}.n100-announcement--card{height:160px}.n100-announcement{border-radius:20px;padding:22px}.n100-announcement-grid,.n100-announcement-secondary{gap:16px}}@media(prefers-reduced-motion:reduce){.n100-announcement-surface,.n100-announcement,.n100-announcement::before{transition:none;animation:none}}

/* Public Home spacing applies only to a revealed announcement surface. */
.n100-announcement-surface[data-announcement-placement="PUBLIC_HOME"].is-visible{margin-block:16px}

/* FIX1: bounded natural widths, consistent heights, and no empty rows. */
.n100-announcement-surface:not(.is-visible){display:none;margin:0;padding:0;height:0;min-height:0}
.n100-announcement-surface.is-visible{max-height:none;overflow:visible;animation:n100-announcement-reveal 220ms ease}
.n100-announcement-secondary{display:grid;grid-template-columns:repeat(3,minmax(0,367px));justify-content:center}
.n100-announcement-secondary[data-count="2"]{grid-template-columns:repeat(2,minmax(0,367px));justify-content:center}
.n100-announcement-secondary[data-count="1"]{grid-template-columns:minmax(0,367px);justify-content:center}
.n100-announcement-minis{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
.n100-announcement--mini{width:210px;max-width:100%;height:117px;min-height:117px;max-height:117px;flex:0 0 210px;box-sizing:border-box;border-radius:16px;padding:10px 14px}
.n100-announcement--card{padding:12px 20px}.n100-announcement--hero{padding:16px 28px}
.n100-announcement h2,.n100-announcement h3{margin:6px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.n100-announcement--hero h2{font-size:clamp(1.2rem,2.5vw,2rem)}
.n100-announcement--card h3{font-size:1.1rem}.n100-announcement--mini h3{font-size:.95rem;-webkit-line-clamp:1;margin:3px 0}
.n100-announcement p{line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}
.n100-announcement--mini p{font-size:.78rem}.n100-announcement-type{padding:3px 9px;font-size:.7rem}
.n100-announcement-cta{margin-top:8px;padding:6px 12px;font-size:.85rem}
.n100-announcement--mini .n100-announcement-type{font-size:.65rem;padding:1px 6px}.n100-announcement--mini .n100-announcement-cta{margin-top:4px;padding:3px 8px;font-size:.75rem}
/* FIX3: only uploaded artwork uses intrinsic height and complete-frame fitting. */
.n100-announcement--uploaded{height:auto;min-height:0;max-height:none;min-width:0;align-self:start;justify-content:flex-start;background:#073d31;padding:0;border:0;border-radius:0;box-shadow:none;animation:none;--n100-media-max-height:600px}
.n100-announcement--uploaded.n100-announcement--card{--n100-media-max-height:360px}
.n100-announcement--uploaded.n100-announcement--mini{--n100-media-max-height:210px}
.n100-announcement--uploaded::before,.n100-announcement--uploaded::after{display:none}
.n100-announcement-artwork{position:static;display:block;width:100%;max-width:100%;height:auto;max-height:min(var(--n100-media-max-height,600px),70vh);margin:0;object-fit:contain;object-position:center;aspect-ratio:auto;min-height:0;flex-shrink:0;border-radius:0}
.n100-announcement-whole{position:static;display:block;width:100%;min-width:0;height:auto;color:inherit}
.n100-announcement--uploaded>.n100-announcement-cta{position:static;align-self:center;max-width:calc(100% - 16px);margin:8px;box-sizing:border-box;overflow-wrap:anywhere}
@keyframes n100-announcement-reveal{from{opacity:0}to{opacity:1}}
@media(max-width:760px){.n100-announcement-secondary,.n100-announcement-secondary[data-count="2"],.n100-announcement-secondary[data-count="1"]{grid-template-columns:minmax(0,367px)}.n100-announcement-minis{gap:24px}}
@media(prefers-reduced-motion:reduce){.n100-announcement-surface.is-visible{animation:none}}
