/* Site-wide announcement bar. Sits above the sticky header and scrolls away with the page.
   Colours reuse the sitepackage's brand custom properties (with safe fallbacks). */
.bulletin {
    background: var(--blue, #1c63b7);
    color: #fff;
    font-family: var(--body, system-ui, -apple-system, "Segoe UI", sans-serif);
    font-size: .95rem;
    line-height: 1.4;
}
.bulletin--warning {
    background: var(--amber, #ffb703);
    color: var(--navy, #0b2545);
}
.bulletin--highlight {
    background: var(--navy, #0b2545);
    color: #fff;
}

.bulletin__inner {
    display: flex;
    align-items: center;
    gap: 8px 18px;
    flex-wrap: wrap;
    padding: 11px 0;
}

.bulletin__text {
    margin: 0;
    flex: 1 1 auto;
    font-weight: 500;
}

.bulletin__cta {
    flex: 0 0 auto;
    color: inherit;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 2px;
    white-space: nowrap;
}
.bulletin__cta:hover {
    text-decoration: none;
}

.bulletin__close {
    flex: 0 0 auto;
    background: none;
    border: 0;
    color: inherit;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
    padding: 0 2px;
    margin-left: auto;
    opacity: .8;
    transition: opacity .15s;
}
.bulletin__close:hover {
    opacity: 1;
}

/* dismiss animation: collapse the bar smoothly before it's removed from the DOM */
.bulletin {
    overflow: hidden;
    max-height: 240px;
    transition: max-height .25s ease, opacity .25s ease;
}
.bulletin.is-dismissing {
    max-height: 0;
    opacity: 0;
}
