/* Styling for individual news items */
.news {
    font-family: 'Playfair Display', Georgia, serif !important;
    margin-bottom: 20px !important;
    color: black !important;
    line-height: 1.5 !important;
}

/* Headings */
.news h1,
.news h2,
.news h3,
.news h4,
.news h5,
.news h6 {
    color: #194467 !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: bold !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}
.news h1 { font-size: 2em !important; }
.news h2 { font-size: 1.75em !important; }
.news h3 { font-size: 1.5em !important; }
.news h4 { font-size: 1.25em !important; }
.news h5 { font-size: 1.125em !important; }
.news h6 { font-size: 1em !important; }

/* Paragraphs */
.news p {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1em !important;
    margin: 0 !important;
    line-height: 1.5 !important;
    color: black !important;
}

/* ================================
   LINKS — unset first, then apply brand rules
   ================================ */

/* Reset ALL link styles inside .news */
.news a,
.news a:link,
.news a:visited,
.news a:hover,
.news a:focus,
.news a:active {
    all: unset;                          /* remove all inherited styles */
    display: inline;                     /* restore inline flow */
    cursor: pointer;
    font-weight: bold;                   /* reapply bold */
    color: inherit;                      /* temporarily inherit text color */
    text-decoration: none;
    border-bottom: none;
    background-image: none;
    box-shadow: none;
}

/* Default + visited links */
.news a,
.news a:link,
.news a:visited {
    color: #194467 !important;           /* brand base color */
    text-decoration: none !important;    /* no underline normally */
}

/* Hover, focus, active */
.news a:hover,
.news a:focus,
.news a:active {
    color: #286ca4 !important;           /* lighter/different brand shade */
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

/* Reset box sizing */
.news * {
    box-sizing: border-box;
}
