/* Topic news uses a distinct teal/blue treatment beside the existing red article buttons. */
.threat-news-link { display:inline-flex; align-items:center; justify-content:center; gap:10px; max-width:100%; padding:12px 17px; margin-top:12px; border:1px solid #75b5c9; border-radius:6px; background:linear-gradient(135deg,#e7f5fc,#e7f8f4); color:#075b70 !important; font-family:'Roboto Condensed',Arial,sans-serif; font-weight:700; line-height:1.4; text-decoration:none !important; text-align:center; box-shadow:0 2px 8px rgba(7,91,112,.07); transition:background .2s,box-shadow .2s; }
.threat-news-link:hover { background:#d1edf6; box-shadow:0 4px 12px rgba(7,91,112,.15); }
.threat-news-link:focus-visible { outline:3px solid #176d95; outline-offset:3px; }
.threat-news-icon { width:24px; height:24px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.8; }
.nav-bar .threat-news-link { margin-top:0; }
.threat-news-page { background:#f6fafb; color:#23333d; padding-bottom:55px; }
.threat-news-page * { box-sizing:border-box; }
.threat-news-page .tn-hero { padding:38px 20px; text-align:center; background:linear-gradient(135deg,#075b70,#176d95); color:#fff; border-bottom:4px solid #75b5c9; }
.threat-news-page .tn-kicker { display:block; text-transform:uppercase; letter-spacing:2px; font-size:.8rem; margin-bottom:9px; color:#cbeef5; }
.threat-news-page h1 { color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:clamp(1.9rem,4vw,3.1rem); line-height:1.2; margin:0 0 12px; overflow-wrap:anywhere; }
.threat-news-page .tn-intro { max-width:720px; margin:0 auto; color:#e4f5fa; line-height:1.6; }
.threat-news-page .tn-wrap { max-width:1200px; margin:auto; padding:0 20px; }
.threat-news-page .tn-topics { display:flex; gap:7px; flex-wrap:wrap; justify-content:center; padding:22px 0; }
.threat-news-page .tn-topics a { padding:7px 11px; border:1px solid #c5dce3; border-radius:5px; background:#fff; color:#275264; text-decoration:none; font-size:.86rem; font-weight:600; }
.threat-news-page .tn-topics a.active,.threat-news-page .tn-topics a:hover { color:#fff; background:#075b70; border-color:#075b70; }
.threat-news-page .tn-toolbar { display:flex; flex-wrap:wrap; align-items:flex-end; gap:14px; padding:20px; background:#fff; border:1px solid #d7e6eb; border-radius:8px; }
.threat-news-page .tn-field { display:flex; flex:1; flex-direction:column; gap:5px; min-width:150px; }
.threat-news-page .tn-field-search { flex:2; }
.threat-news-page label { font-size:.84rem; font-weight:700; color:#275264; }
.threat-news-page input,.threat-news-page select { height:44px; width:100%; min-width:0; padding:8px 11px; border:1px solid #bcd3dc; border-radius:4px; font-size:.9rem; background:#fff; color:#23333d; }
.threat-news-page .tn-button { display:inline-flex; gap:8px; align-items:center; justify-content:center; background:#075b70; color:#fff; padding:11px 18px; border:1px solid #075b70; border-radius:4px; text-decoration:none; line-height:1.4; font-weight:700; cursor:pointer; }
.threat-news-page .tn-button:hover { color:#fff; background:#064b5c; }
.threat-news-page .tn-info { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin:23px 0; color:#5c747f; font-size:.86rem; }
.threat-news-page .tn-info a { color:#075b70; font-weight:700; }
.threat-news-page .tn-feed-note { border-left:3px solid #75b5c9; padding:9px 13px; margin-bottom:20px; background:#edf6f8; font-size:.86rem; color:#466774; }
.threat-news-page .tn-list { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:19px; }
.threat-news-page .tn-card { display:flex; flex-direction:column; padding:25px; border:1px solid #d7e6eb; border-top:3px solid #176d95; background:#fff; border-radius:8px; height:100%; }
.threat-news-page .tn-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; margin-bottom:12px; color:#64808d; font-size:.78rem; }
.threat-news-page .tn-publisher { color:#075b70; font-weight:700; }
.threat-news-page .tn-card h2 { font-family:'Playfair Display',Georgia,serif; font-size:1.35rem; line-height:1.4; margin:0 0 13px; overflow-wrap:anywhere; }
.threat-news-page .tn-card h2 a { color:#23333d; text-decoration:none; }
.threat-news-page .tn-card h2 a:hover { color:#075b70; text-decoration:underline; }
.threat-news-page .tn-summary { margin:0 0 19px; font-size:.95rem; line-height:1.7; color:#536c78; }
.threat-news-page .tn-read { color:#075b70; font-weight:700; text-decoration:none; margin-top:auto; }
.threat-news-page .tn-read:hover { text-decoration:underline; }
.threat-news-page .tn-empty { padding:55px 25px; background:#fff; border:1px dashed #a9c7d2; border-radius:8px; text-align:center; color:#536c78; }
.threat-news-page .tn-empty h2 { font-size:1.5rem; color:#275264; }
.threat-news-page .tn-pagination { display:flex; flex-wrap:wrap; justify-content:center; gap:7px; margin:32px 0 0; }
.threat-news-page .tn-pagination a { padding:8px 13px; border:1px solid #bcd3dc; border-radius:4px; color:#075b70; text-decoration:none; background:#fff; }
.threat-news-page .tn-pagination a.active,.threat-news-page .tn-pagination a:hover { background:#075b70; color:#fff; border-color:#075b70; }
@media(max-width:650px) {
    .threat-news-page .tn-wrap { padding:0 14px; }
    .threat-news-page .tn-list { grid-template-columns:1fr; }
    .threat-news-page .tn-toolbar { padding:15px; }
    .threat-news-page .tn-field { min-width:100%; }
    .threat-news-page .tn-card { padding:20px; }
    .nav-bar .threat-news-link { margin:0 12px; max-width:calc(100% - 24px); }
    .threats-grid { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:600px) {
    .nu-studies-wrapper .masthead h1 { font-size:clamp(1.65rem,7vw,2.2rem); padding:0 14px; overflow-wrap:anywhere; }
}
/* Manually published articles share the topic news colour scheme. */
.threat-news-page .tn-article-body { max-width:900px; margin:0 auto; padding:30px; background:#fff; border:1px solid #d7e6eb; border-radius:8px; color:#344c57; line-height:1.85; overflow-wrap:anywhere; }
.threat-news-page .tn-article-body p { margin:0 0 22px; }
.threat-news-page .tn-article-lead { font-size:1.08rem; font-weight:600; color:#275264; }
@media(max-width:650px) { .threat-news-page .tn-article-body { padding:20px; } }
