.news-container {
    height: 70vh;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    background-color: #ffffff;
}
.bulletin-section {
        background: #f8f9fa;
        padding: 3rem 0;
    }

    .bulletin-title {
        color: #013b71;
        font-size: 1.5rem;
        font-weight: 600;
        margin-bottom: 1.5rem;        
    }

    .bulletin-list {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .bulletin-item {
        padding: 0.8rem 0;
        border-bottom: 1px solid #dee2e6;
        text-align: left;
    }

    .bulletin-item:last-child {
        border-bottom: none;
    }

    .bulletin-item a {
        color: #2d7db8;
        text-decoration: none;
        display: flex;
        justify-content: space-between;
        align-items: center;
        transition: color 0.2s;
    }

    .bulletin-item a:hover {
        color: #013b71;
    }

    .bulletin-date {
        font-size: 0.875rem;
        color: #6c757d;
    }

/* Accordion trigger should look like bulletin link */
.bulletin-toggle {
    width: 100%;
    border: 0;
    background: transparent;
    color: #2d7db8;
    text-decoration: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: color 0.2s;
    padding: 0; /* inherits spacing from .bulletin-item */
    font: inherit;
}

.bulletin-toggle:hover,
.bulletin-toggle:focus {
    color: #013b71;
    outline: none;
}

/* Keep date style consistent */
.bulletin-toggle .bulletin-date {
    font-size: 0.875rem;
    color: #6c757d;
    margin-left: 1rem;
    white-space: nowrap;
}
.bulletin-item a > span:first-of-type {
    flex: 1 1 auto;
    min-width: 0;           /* lets long titles ellipsis if you add overflow */
    margin-right: 0.75rem;
}

.bulletin-item a .bulletin-date {
    flex: 0 0 auto;         /* don’t grow */
    width: 5.5rem;          /* tweak: 5rem–7rem for Y-m-d */
    text-align: right;
    white-space: nowrap;
}

.bulletin-item a > span:first-of-type {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Accordion body integrated with bulletin row */
.news-collapse {
    margin-top: 0.6rem;
}

.news-collapse .card {
    border: 1px solid #dee2e6;
    border-radius: 0.35rem;
    box-shadow: none;
}

.news-collapse .card-body {
    padding: 0.75rem 1rem;
    color: #495057;
    line-height: 1.6;
}

.news-collapse a {
    color: #2d7db8;
    text-decoration: none;
}

.news-collapse a:hover {
    color: #013b71;
    text-decoration: underline;
}
