/**
 * Developed by: George Rexy Vincent Z. Bacani
 * College: College of Information Technology
 * Role: System Developer / Front-End Developer
 * Development Year: 2026–2027
 * Institution: Don Mariano Marcos Memorial State University
 * Version: v1.0
 * Email: rexygeorge11@gmail.com
 * Copyright: © 2026–2027. All rights reserved.
 */

* {
    box-sizing: border-box;
}

:root {
    --green: #16623f;
    --green2: #248357;
    --dark: #0b2d1d;
    --ink: #15211a;
    --muted: #66736c;
    --gold: #efb72a;
    --blue: #2c66d7;
    --line: #dfe7e2;
    --bg: #f6f9f7;
    --white: #fff;
    --shadow: 0 22px 60px rgba(9,39,25,.12)
    ;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: Inter,Arial,sans-serif;
    color: var(--ink);
    background: #fff;
    line-height: 1.6;
}

body.modal-open {
    overflow: hidden;
}

a {
    text-decoration: none;
    color: inherit;
}

button,input,select,textarea {
    font: inherit;
}

.container {
    width: min(1180px,calc(100% - 40px));
    margin: auto;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 80;
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid var(--line);
}

.nav-wrap {
    min-height: 76px;
    display: flex;
    align-items: center;
    gap: 28px;
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-right: auto;
}

.brand img {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    object-fit: cover;
}

.brand span {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.brand strong {
    font-family: Manrope;
    font-size: 14px;
}

.brand small {
    font-size: 10px;
    letter-spacing: .16em;
    color: var(--muted);
    margin-top: 4px;
}

.main-nav {
    display: flex;
    gap: 25px;
    align-items: center;
}

.main-nav a {
    font-size: 13px;
    font-weight: 650;
    color: #47534c;
}

.main-nav a:hover {
    color: var(--green);
}

.header-cta {
    background: var(--green);
    color: #fff;
    padding: 10px 16px;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 800;
}

.nav-toggle {
    display: none;
    background: none;
    border: 0;
}

.nav-toggle span {
    display: block;
    width: 24px;
    height: 2px;
    background: var(--ink);
    margin: 5px 0;
}

.hero-slider {
    position: relative;
    height: 590px;
    overflow: hidden;
    background: #0d4c32;
}

.slides,.slide {
    position: absolute;
    inset: 0;
}

.slide {
    opacity: 0;
    visibility: hidden;
    transform: scale(1.02);
    transition: opacity .75s ease,transform 1s ease,visibility .75s;
}

.slide.active {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

.slide-1 {
    background: linear-gradient(120deg,#0e5b3a 0%,#14784a 52%,#1b8f57 100%);
}

.slide-2 {
    background: linear-gradient(120deg,#143b2b 0%,#5c4a0d 100%);
}

.slide-3 {
    background: linear-gradient(120deg,#133b56 0%,#0b6444 100%);
}

.slide:after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 76% 20%,rgba(255,255,255,.12),transparent 28%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.08),transparent 30%);
    pointer-events: none;
}

.slide-pattern {
    position: absolute;
    inset: 0;
    opacity: .15;
    background-image: linear-gradient(rgba(255,255,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.15) 1px,transparent 1px);
    background-size: 52px 52px;
    mask-image: linear-gradient(to bottom,#000,transparent 90%);
}

.slide-content {
    position: relative;
    z-index: 2;
    height: 100%;
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    gap: 70px;
    align-items: center;
    color: #fff;
}

.slide-copy {
    max-width: 700px;
}

.slide-kicker {
    display: inline-block;
    font-size: 11px;
    letter-spacing: .17em;
    font-weight: 800;
    color: #d3f0df;
    margin-bottom: 16px;
}

.slide-2 .slide-kicker {
    color: #ffeaa7;
}

.slide-3 .slide-kicker {
    color: #c8eaff;
}

.slide h1 {
    font-family: Manrope;
    font-size: clamp(48px,5.4vw,72px);
    line-height: 1.02;
    letter-spacing: -.045em;
    margin: 0 0 22px;
}

.slide p {
    font-size: 17px;
    max-width: 650px;
    color: rgba(255,255,255,.82);
    margin: 0 0 30px;
}

.slide-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border-radius: 11px;
    padding: 13px 18px;
    font-weight: 800;
    border: 1px solid transparent;
    transition: .2s;
}

.btn-light {
    background: #fff;
    color: #173527;
}

.btn-outline-light {
    border-color: rgba(255,255,255,.35);
    color: #fff;
}

.btn:hover {
    transform: translateY(-2px);
}

.slide-visual {
    display: flex;
    justify-content: center;
    align-items: center;
}

.visual-card,.archive-showcase {
    width: min(420px,100%);
    background: rgba(255,255,255,.96);
    color: var(--ink);
    border-radius: 26px;
    padding: 25px;
    box-shadow: 0 28px 70px rgba(0,0,0,.22);
    border: 1px solid rgba(255,255,255,.55);
}

.visual-card-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    color: var(--green);
}

.status-dot {
    color: #2f8f5a;
}

.visual-icon {
    width: 62px;
    height: 62px;
    border-radius: 18px;
    background: linear-gradient(135deg,var(--green2),var(--green));
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 28px;
    margin: 34px 0 20px;
}

.visual-card h3 {
    font-family: Manrope;
    font-size: 28px;
    margin: 0 0 8px;
}

.visual-card p {
    color: var(--muted);
    font-size: 13px;
    margin: 0 0 24px;
}

.mini-progress {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 6px;
}

.mini-progress span {
    height: 6px;
    border-radius: 12px;
    background: #dbe4de;
}

.mini-progress .done {
    background: #64c190;
}

.mini-progress .active {
    background: var(--gold);
}

.mini-labels {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    font-size: 9px;
    color: #7e8a82;
    text-align: center;
    margin-top: 8px;
}

.archive-showcase {
    display: grid;
    gap: 12px;
}

.doc-row {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 14px;
    align-items: center;
    padding: 14px;
    border-radius: 15px;
    background: #f7f8f7;
}

.doc-row>span {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: #fff4cc;
    color: #967000;
    display: grid;
    place-items: center;
    font-weight: 900;
}

.doc-row strong {
    display: block;
    font-size: 13px;
}

.doc-row small {
    display: block;
    font-size: 10px;
    color: var(--muted);
    margin-top: 3px;
}

.stats-visual {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.stat-card {
    background: rgba(255,255,255,.95);
    color: var(--ink);
    border-radius: 20px;
    padding: 24px;
    box-shadow: 0 20px 50px rgba(0,0,0,.16);
}

.stat-card.big {
    grid-column: 1/-1;
}

.stat-card strong {
    display: block;
    font-family: Manrope;
    font-size: 34px;
    color: var(--green);
}

.stat-card span {
    font-size: 11px;
    color: var(--muted);
}

.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 5;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.35);
    background: rgba(0,0,0,.14);
    color: #fff;
    font-size: 34px;
    line-height: 1;
    display: grid;
    place-items: center;
}

.slider-arrow:hover {
    background: rgba(0,0,0,.3);
}

.prev {
    left: 22px;
}

.next {
    right: 22px;
}

.slider-controls {
    position: absolute;
    z-index: 6;
    left: 50%;
    bottom: 28px;
    transform: translateX(-50%);
    display: flex;
    gap: 9px;
}

.dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    border: 0;
    background: rgba(255,255,255,.45);
    padding: 0;
}

.dot.active {
    width: 28px;
    border-radius: 20px;
    background: #fff;
}

.autoplay-bar {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: rgba(255,255,255,.13);
    z-index: 6;
}

.autoplay-bar span {
    display: block;
    width: 0;
    height: 100%;
    background: var(--gold);
}

.quick-services {
    background: #fff;
    position: relative;
    z-index: 10;
    margin-top: -1px;
    border-bottom: 1px solid var(--line);
}

.quick-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
}

.quick-card {
    display: grid;
    grid-template-columns: 48px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px 24px;
    border-right: 1px solid var(--line);
}

.quick-card:last-child {
    border-right: 0;
}

.quick-card:hover {
    background: #f8faf9;
}

.quick-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    color: #fff;
    font-weight: 900;
}

.quick-icon.green {
    background: var(--green);
}

.quick-icon.blue {
    background: var(--blue);
}

.quick-icon.gold {
    background: var(--gold);
    color: #493500;
}

.quick-card strong {
    display: block;
    font-size: 13px;
}

.quick-card span {
    display: block;
    font-size: 10px;
    color: var(--muted);
    margin-top: 3px;
}

.quick-card b {
    color: var(--green);
}

.section {
    padding: 90px 0;
}

.section-heading {
    max-width: 720px;
}

.section-heading.centered {
    text-align: center;
    margin: 0 auto 42px;
}

.section-tag {
    display: inline-block;
    font-size: 10px;
    letter-spacing: .15em;
    font-weight: 800;
    color: var(--green);
}

.section-heading h2,.section-copy h2,.track-copy h2,.about-grid h2 {
    font-family: Manrope;
    font-size: clamp(34px,4vw,48px);
    line-height: 1.08;
    letter-spacing: -.035em;
    margin: 12px 0 16px;
}

.section-heading p,.section-copy>p,.track-copy p {
    color: var(--muted);
    font-size: 16px;
    margin: 0;
}

.feature-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
}

.feature-card {
    position: relative;
    min-height: 350px;
    border-radius: 24px;
    padding: 30px;
    border: 1px solid var(--line);
    overflow: hidden;
}

.feature-green {
    background: linear-gradient(145deg,#edf8f2,#fff);
}

.feature-gold {
    background: linear-gradient(145deg,#fff8e5,#fff);
}

.feature-top {
    display: flex;
    justify-content: space-between;
}

.feature-number {
    font-size: 10px;
    color: var(--muted);
    font-weight: 800;
}

.feature-chip {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    background: #fff;
    padding: 7px 9px;
    border-radius: 8px;
}

.feature-mark {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: var(--green);
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 28px;
    margin: 40px 0 22px;
}

.feature-gold .feature-mark {
    background: var(--gold);
    color: #4b3500;
}

.feature-card h3 {
    font-family: Manrope;
    font-size: 26px;
    margin: 0 0 9px;
}

.feature-card p {
    color: var(--muted);
    max-width: 470px;
}

.feature-card a {
    position: absolute;
    left: 30px;
    bottom: 27px;
    font-size: 12px;
    font-weight: 800;
    color: var(--green);
}

.feature-gold a {
    color: #8c6500;
}

.esumbong-section {
    background: var(--bg);
}

.esumbong-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 70px;
    align-items: start;
}

.green-tag {
    color: var(--green);
}

.process-list {
    display: grid;
    gap: 14px;
    margin: 34px 0;
}

.process-list>div {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 14px;
    align-items: center;
}

.process-list>div>span {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid var(--line);
    display: grid;
    place-items: center;
    color: var(--green);
    font-weight: 800;
}

.process-list p {
    margin: 0;
    line-height: 1.25;
}

.process-list strong {
    display: block;
}

.process-list small {
    display: block;
    color: var(--muted);
    margin-top: 4px;
}

.form-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 26px;
    padding: 28px;
    box-shadow: 0 18px 50px rgba(20,32,26,.06);
}

.form-card-head,.doc-footer,.doc-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.form-card-head {
    padding-bottom: 19px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 22px;
}

.form-card-head>div>span {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
    color: var(--green);
}

.form-card-head h3 {
    font-family: Manrope;
    font-size: 22px;
    margin: 2px 0 0;
}

.secure-pill {
    font-size: 10px;
    background: #eef8f2;
    color: var(--green);
    padding: 7px 9px;
    border-radius: 9px;
    font-weight: 800;
}

form {
    display: grid;
    gap: 16px;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

label {
    display: grid;
    gap: 7px;
    font-size: 12px;
    font-weight: 700;
    color: #34413a;
}

input,select,textarea {
    width: 100%;
    border: 1px solid #d8e1dc;
    background: #fbfcfb;
    border-radius: 11px;
    padding: 12px 13px;
    color: var(--ink);
    outline: none;
}

input:focus,select:focus,textarea:focus {
    border-color: #68ad88;
    box-shadow: 0 0 0 3px rgba(23,122,75,.08);
    background: #fff;
}

textarea {
    resize: vertical;
    min-height: 140px;
}

.char-counter {
    text-align: right;
    font-size: 9px;
    color: #859088;
    font-weight: 500;
}

.check-line {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #f7f9f8;
    border: 1px solid #e4ebe6;
    padding: 12px;
    border-radius: 12px;
}

.check-line input {
    width: 16px;
    height: 16px;
    margin-top: 2px;
}

.check-line strong {
    display: block;
    font-size: 12px;
}

.check-line small {
    display: block;
    font-size: 9px;
    color: var(--muted);
    font-weight: 500;
}

.btn-primary {
    background: var(--green);
    color: #fff;
}

.form-submit {
    width: 100%;
    border: 0;
}

.form-disclaimer {
    text-align: center;
    color: #87928b;
    font-size: 9px;
    margin: 0;
}

.track-section {
    background: var(--dark);
    color: #fff;
    padding: 60px 0;
}

.track-card {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 40px;
    align-items: center;
}

.light-tag {
    color: #88d4aa;
}

.track-copy p {
    color: #b0c0b7;
}

.track-tool {
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 18px;
    padding: 18px;
}

.track-input {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
}

.track-input input {
    border: 0;
    background: #fff;
}

.track-input button {
    border: 0;
    background: var(--gold);
    font-weight: 800;
    border-radius: 10px;
    padding: 0 18px;
    color: #493500;
}

.track-result {
    margin-top: 13px;
    background: #fff;
    color: var(--ink);
    border-radius: 13px;
    padding: 15px;
}

.track-result strong {
    color: var(--green);
}

.track-result p {
    font-size: 12px;
    color: var(--muted);
    margin: 5px 0 0;
}

.archive-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin: 38px 0 24px;
}

.search-box {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 310px;
    border: 1px solid var(--line);
    border-radius: 11px;
    padding: 0 12px;
    background: #fafcfa;
}

.search-box input {
    border: 0;
    background: transparent;
    box-shadow: none;
    padding-left: 0;
}

.filter-tabs {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.filter-tabs button {
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 9px;
    padding: 9px 11px;
    font-size: 10px;
    font-weight: 700;
    color: #66736b;
}

.filter-tabs button.active {
    background: var(--ink);
    color: #fff;
    border-color: var(--ink);
}

.archive-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 18px;
}

.document-card {
    border: 1px solid var(--line);
    border-radius: 19px;
    padding: 21px;
    background: #fff;
    transition: .2s;
}

.document-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(20,32,26,.07);
}

.doc-icon {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    background: #fff5d8;
    color: #8d6700;
    display: grid;
    place-items: center;
    font-weight: 900;
    font-size: 11px;
    margin-bottom: 22px;
}

.doc-meta {
    font-size: 9px;
    color: #7b877f;
}

.doc-meta span:first-child {
    font-weight: 800;
    letter-spacing: .07em;
    color: #8f6700;
}

.document-card h3 {
    font-family: Manrope;
    font-size: 17px;
    line-height: 1.3;
    margin: 10px 0 8px;
}

.document-card p {
    font-size: 11px;
    color: var(--muted);
    min-height: 66px;
}

.doc-footer {
    padding-top: 14px;
    margin-top: 18px;
    border-top: 1px solid #edf1ee;
}

.doc-footer span {
    font-size: 9px;
    color: #89948d;
}

.doc-footer button {
    border: 0;
    background: none;
    color: var(--green);
    font-size: 10px;
    font-weight: 800;
}

.empty-state {
    text-align: center;
    background: #f7f9f8;
    border-radius: 18px;
    padding: 50px;
}

.empty-state p {
    color: var(--muted);
}

.about-section {
    background: #f3f7f4;
}

.about-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 70px;
    align-items: center;
}

.goal-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.goal-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 17px;
    padding: 23px;
}

.goal-card strong {
    display: block;
    font-family: Manrope;
    font-size: 28px;
    color: var(--green);
}

.goal-card span {
    font-size: 11px;
    color: var(--muted);
}

.site-footer {
    background: #091b12;
    color: #fff;
    padding: 32px 0;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 30px;
    align-items: center;
}

.footer-brand {
    display: flex;
    gap: 10px;
    align-items: center;
}

.footer-brand img {
    width: 42px;
    height: 42px;
    border-radius: 50%;
}

.footer-brand strong {
    display: block;
    font-size: 12px;
}

.footer-brand span {
    display: block;
    font-size: 9px;
    color: #9eafa5;
}

.footer-links {
    display: flex;
    gap: 18px;
}

.footer-links a {
    font-size: 10px;
    color: #c3cec8;
}

.site-footer p {
    text-align: right;
    margin: 0;
    font-size: 9px;
    color: #84988d;
}

.modal {
    position: fixed;
    inset: 0;
    z-index: 120;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.modal.open {
    display: flex;
}

.modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(5,17,11,.72);
    backdrop-filter: blur(6px);
}

.modal-card {
    position: relative;
    z-index: 2;
    width: min(470px,100%);
    background: #fff;
    border-radius: 24px;
    padding: 32px;
    text-align: center;
    box-shadow: 0 35px 90px rgba(0,0,0,.28);
}

.modal-close {
    position: absolute;
    right: 14px;
    top: 12px;
    border: 0;
    background: #f1f4f2;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    font-size: 20px;
}

.modal-check {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background: #eaf7ef;
    color: var(--green);
    display: grid;
    place-items: center;
    font-size: 26px;
    font-weight: 900;
    margin: 0 auto 17px;
}

.modal-card h2 {
    font-family: Manrope;
    font-size: 28px;
    line-height: 1.15;
}

.modal-card p {
    color: var(--muted);
    font-size: 13px;
}

.reference-code {
    font-family: monospace;
    font-size: 18px;
    font-weight: 800;
    background: #f4f7f5;
    border: 1px dashed #b5c6bc;
    padding: 13px;
    border-radius: 12px;
    margin: 18px 0;
}

.document-modal {
    text-align: left;
}

.fake-document {
    background: #f4f7f5;
    border: 1px solid var(--line);
    border-radius: 13px;
    padding: 18px;
    margin: 18px 0;
}

.fake-document div {
    height: 8px;
    background: #d9e1dc;
    border-radius: 8px;
    margin: 10px 0;
}

.fake-document div:nth-child(2) {
    width: 85%;
}

.fake-document div:nth-child(3) {
    width: 72%;
}

.fake-document div:nth-child(4) {
    width: 50%;
}

@media (max-width:1000px) {
    .main-nav,.header-cta {
        display: none;
    }
    .nav-toggle {
        display: block;
    }
    .main-nav.open {
        display: flex;
        position: absolute;
        top: 76px;
        left: 20px;
        right: 20px;
        background: #fff;
        border: 1px solid var(--line);
        border-radius: 15px;
        padding: 16px;
        flex-direction: column;
        align-items: flex-start;
        box-shadow: var(--shadow);
    }
    .hero-slider {
        height: 690px;
    }
    .slide-content,.esumbong-grid,.about-grid {
        grid-template-columns: 1fr;
    }
    .slide-content {
        gap: 28px;
        padding-top: 48px;
        padding-bottom: 62px;
    }
    .slide-copy {
        text-align: center;
        margin: auto;
    }
    .slide-actions {
        justify-content: center;
    }
    .slide-visual {
        max-width: 520px;
        margin: auto;
        width: 100%;
    }
    .quick-grid {
        grid-template-columns: 1fr;
    }
    .quick-card {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }
    .quick-card:last-child {
        border-bottom: 0;
    }
    .feature-grid {
        grid-template-columns: 1fr;
    }
    .track-card {
        grid-template-columns: 1fr;
    }
    .archive-grid {
        grid-template-columns: 1fr 1fr;
    }
    .archive-toolbar {
        flex-direction: column;
        align-items: stretch;
    }
    .filter-tabs {
        justify-content: flex-start;
    }
    .footer-grid {
        grid-template-columns: 1fr;
    }
    .site-footer p {
        text-align: left;
    }
}

@media (max-width:680px) {
    .container {
        width: min(100% - 24px,1180px);
    }
    .hero-slider {
        height: 760px;
    }
    .slide h1 {
        font-size: 43px;
    }
    .slide p {
        font-size: 15px;
    }
    .slider-arrow {
        width: 40px;
        height: 40px;
    }
    .prev {
        left: 8px;
    }
    .next {
        right: 8px;
    }
    .stats-visual {
        grid-template-columns: 1fr;
    }
    .stat-card.big {
        grid-column: auto;
    }
    .section {
        padding: 68px 0;
    }
    .form-row {
        grid-template-columns: 1fr;
    }
    .track-input {
        grid-template-columns: 1fr;
    }
    .track-input button {
        padding: 12px;
    }
    .archive-stats {
        grid-template-columns: 1fr;
    }
    .archive-stats>div {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }
    .archive-stats>div:last-child {
        border-bottom: 0;
    }
    .archive-grid {
        grid-template-columns: 1fr;
    }
    .search-box {
        min-width: 0;
    }
    .goal-grid {
        grid-template-columns: 1fr;
    }
}

/* Campus / Unit selector */

.campus-section {
    background: #fff;
}

.campus-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 16px;
}

.campus-card {
    position: relative;
    text-align: left;
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 20px;
    padding: 24px;
    min-height: 190px;
    transition: .22s ease;
    color: var(--ink);
}

.campus-card:hover,.campus-card.active {
    transform: translateY(-4px);
    border-color: #9fc8b1;
    box-shadow: 0 16px 40px rgba(20,32,26,.08);
    background: linear-gradient(145deg,#eef8f2,#fff);
}

.campus-card.active:before {
    content: "Selected";
    position: absolute;
    right: 14px;
    top: 14px;
    background: var(--green);
    color: #fff;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .08em;
    padding: 5px 7px;
    border-radius: 7px;
}

.campus-code {
    display: inline-grid;
    place-items: center;
    min-width: 58px;
    height: 38px;
    padding: 0 10px;
    border-radius: 11px;
    background: var(--green);
    color: #fff;
    font-family: Manrope;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 34px;
}

.campus-card:nth-child(2) .campus-code {
    background: var(--blue);
}

.campus-card:nth-child(3) .campus-code {
    background: #a26813;
}

.campus-card:nth-child(4) .campus-code {
    background: #6d4bc2;
}

.campus-card strong {
    display: block;
    font-family: Manrope;
    font-size: 16px;
    line-height: 1.25;
}

.campus-card small {
    display: block;
    color: var(--muted);
    font-size: 10px;
    margin-top: 6px;
}

.campus-card b {
    position: absolute;
    right: 20px;
    bottom: 18px;
    color: var(--green);
}

.campus-selected {
    margin-top: 20px;
    padding: 18px 20px;
    border: 1px solid #d8e7de;
    border-radius: 16px;
    background: #f6faf7;
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 14px;
    align-items: center;
}

.campus-selected>span {
    font-size: 9px;
    letter-spacing: .1em;
    font-weight: 800;
    color: var(--green);
    text-transform: uppercase;
}

.campus-selected strong {
    font-size: 13px;
}

.campus-selected p {
    grid-column: 2;
    margin: 2px 0 0;
    color: var(--muted);
    font-size: 10px;
}

.single-row {
    grid-template-columns: 1fr;
}

.archive-campus-filter {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 30px;
}

.archive-campus-filter span {
    font-size: 10px;
    font-weight: 800;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .08em;
}

.archive-campus-filter select {
    width: auto;
    min-width: 210px;
    background: #fff;
}

@media (max-width:1000px) {
    .campus-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width:680px) {
    .campus-grid {
        grid-template-columns: 1fr;
    }
    .campus-selected {
        grid-template-columns: 1fr;
        gap: 4px;
    }
    .campus-selected p {
        grid-column: 1;
    }
    .archive-campus-filter {
        align-items: stretch;
        flex-direction: column;
    }
    .archive-campus-filter select {
        width: 100%;
    }
}

/* Multi-campus main navigation */

.nav-dropdown {
    position: relative;
}

.nav-drop-btn {
    border: 0;
    background: transparent;
    padding: 8px 0;
    color: #47534c;
    font-size: 13px;
    font-weight: 650;
    cursor: pointer;
}

.nav-drop-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 150px;
    padding: 8px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: 0 18px 40px rgba(20,32,26,.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: .18s;
    z-index: 100;
}

.nav-dropdown:hover .nav-drop-menu,.nav-dropdown:focus-within .nav-drop-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.nav-drop-menu a {
    display: block;
    padding: 9px 10px;
    border-radius: 8px;
    font-size: 12px;
}

.nav-drop-menu a:hover {
    background: #f4f7f5;
}

.campus-card {
    display: block;
}

.campus-nluc .campus-code {
    background: #198754 !important;
}

.campus-mluc .campus-code {
    background: #c83232 !important;
}

.campus-sluc .campus-code {
    background: #2f67d8 !important;
}

.campus-ous .campus-code {
    background: #e58222 !important;
}

.campus-nluc:hover {
    border-color: #7fc9a3;
    background: linear-gradient(145deg,#eef9f3,#fff);
}

.campus-mluc:hover {
    border-color: #e0a0a0;
    background: linear-gradient(145deg,#fff2f2,#fff);
}

.campus-sluc:hover {
    border-color: #9ab8ea;
    background: linear-gradient(145deg,#f1f6ff,#fff);
}

.campus-ous:hover {
    border-color: #edbb87;
    background: linear-gradient(145deg,#fff7ef,#fff);
}

/* ===== USC Updates / Posting Homepage ===== */

.updates-home {
    padding: 78px 0;
    background: #f6f8f7;
    border-bottom: 1px solid var(--line);
}

.updates-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 320px;
    gap: 30px;
    align-items: start;
}

.updates-heading {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: end;
    margin-bottom: 24px;
}

.updates-heading h2 {
    font-family: Manrope;
    font-size: clamp(30px,3.4vw,42px);
    line-height: 1.08;
    letter-spacing: -.03em;
    margin: 8px 0 0;
    max-width: 700px;
}

.text-link {
    font-size: 11px;
    font-weight: 800;
    color: var(--green);
    white-space: nowrap;
}

.featured-post {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 22px;
    overflow: hidden;
    margin-bottom: 20px;
}

.featured-post-media {
    min-height: 280px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.campus-gradient {
    background: linear-gradient(135deg,#0f4f37,#1b7350 55%,#c49a1b);
}

.post-label {
    position: absolute;
    top: 18px;
    left: 18px;
    background: #fff;
    color: #174d36;
    border-radius: 8px;
    padding: 7px 9px;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .1em;
}

.featured-symbol {
    width: 128px;
    height: 128px;
    border-radius: 30px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
    display: grid;
    place-items: center;
    font-family: Manrope;
    font-size: 34px;
    font-weight: 800;
    backdrop-filter: blur(8px);
}

.featured-post-body {
    padding: 30px;
}

.post-meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 9px;
    color: #7c8881;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.featured-post-body h3,.post-card h3 {
    font-family: Manrope;
    line-height: 1.25;
}

.featured-post-body h3 {
    font-size: 27px;
    margin: 12px 0 11px;
}

.featured-post-body p,.post-card p {
    color: var(--muted);
}

.featured-post-body p {
    font-size: 13px;
}

.read-more,.post-card a {
    font-size: 11px;
    font-weight: 800;
    color: var(--green);
}

.post-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
}

.post-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    overflow: hidden;
    transition: .2s;
}

.post-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 36px rgba(20,32,26,.07);
}

.post-thumb {
    height: 118px;
    display: flex;
    align-items: end;
    padding: 16px;
}

.post-thumb span {
    display: inline-flex;
    border-radius: 8px;
    padding: 6px 8px;
    background: rgba(255,255,255,.93);
    font-size: 10px;
    font-weight: 900;
}

.post-thumb-green {
    background: linear-gradient(135deg,#145b3c,#26855a);
}

.post-thumb-green2 {
    background: linear-gradient(135deg,#0f6a40,#45a36f);
}

.post-thumb-red {
    background: linear-gradient(135deg,#8d2020,#d84646);
}

.post-thumb-blue {
    background: linear-gradient(135deg,#17478f,#3975dc);
}

.post-thumb-orange {
    background: linear-gradient(135deg,#a85816,#e98a2e);
}

.post-thumb-gold {
    background: linear-gradient(135deg,#9f7710,#e7b72c);
}

.post-body {
    padding: 18px;
}

.post-card h3 {
    font-size: 16px;
    margin: 9px 0 7px;
}

.post-card p {
    font-size: 11px;
    min-height: 50px;
}

.updates-sidebar {
    display: grid;
    gap: 18px;
    position: sticky;
    top: 96px;
}

.sidebar-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 20px;
}

.sidebar-label {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .12em;
    color: var(--green);
}

.sidebar-card h3 {
    font-family: Manrope;
    font-size: 18px;
    margin: 5px 0 15px;
}

.side-service {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 11px;
    align-items: center;
    padding: 10px 0;
    border-top: 1px solid #eef2ef;
}

.side-service:first-of-type {
    border-top: 0;
}

.side-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    display: grid;
    place-items: center;
    color: #fff;
    font-weight: 900;
}

.side-icon.green {
    background: var(--green);
}

.side-icon.blue {
    background: #2f67d8;
}

.side-icon.gold {
    background: #efb72a;
    color: #4a3500;
}

.side-service strong {
    display: block;
    font-size: 11px;
}

.side-service small {
    display: block;
    font-size: 9px;
    color: var(--muted);
    margin-top: 2px;
}

.campus-mini {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 9px;
    align-items: center;
    padding: 9px 0;
    border-top: 1px solid #eef2ef;
}

.campus-mini span {
    display: grid;
    place-items: center;
    height: 30px;
    border-radius: 8px;
    color: #fff;
    font-size: 9px;
    font-weight: 900;
}

.campus-mini b {
    font-size: 10px;
    font-weight: 700;
}

.nluc-mini span {
    background: #198754;
}

.mluc-mini span {
    background: #c83232;
}

.sluc-mini span {
    background: #2f67d8;
}

.ous-mini span {
    background: #e58222;
}

.record-link {
    display: block;
    padding: 10px 0;
    border-top: 1px solid #eef2ef;
}

.record-link strong {
    display: block;
    font-size: 10px;
}

.record-link small {
    font-size: 9px;
    color: var(--muted);
}

.campus-strip {
    padding: 58px 0;
    background: #fff;
    border-bottom: 1px solid var(--line);
}

.campus-strip-head {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    align-items: end;
    margin-bottom: 22px;
}

.campus-strip-head h2 {
    font-family: Manrope;
    font-size: 30px;
    margin: 6px 0 0;
}

.campus-strip-head p {
    max-width: 520px;
    color: var(--muted);
    font-size: 12px;
    margin: 0;
}

.campus-strip-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 14px;
}

.campus-strip-card {
    position: relative;
    min-height: 132px;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px;
    background: #fff;
    transition: .2s;
}

.campus-strip-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(20,32,26,.06);
}

.campus-strip-card span {
    display: inline-flex;
    color: #fff;
    font-size: 9px;
    font-weight: 900;
    padding: 6px 8px;
    border-radius: 7px;
    margin-bottom: 22px;
}

.campus-strip-card strong {
    display: block;
    font-size: 12px;
}

.campus-strip-card b {
    position: absolute;
    right: 16px;
    bottom: 14px;
    color: var(--green);
}

.nluc-card span {
    background: #198754;
}

.mluc-card span {
    background: #c83232;
}

.sluc-card span {
    background: #2f67d8;
}

.ous-card span {
    background: #e58222;
}

@media (max-width:1000px) {
    .updates-layout {
        grid-template-columns: 1fr;
    }
    .updates-sidebar {
        position: static;
        grid-template-columns: repeat(3,1fr);
    }
    .campus-strip-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:760px) {
    .featured-post {
        grid-template-columns: 1fr;
    }
    .post-grid {
        grid-template-columns: 1fr;
    }
    .updates-sidebar {
        grid-template-columns: 1fr;
    }
    .updates-heading,.campus-strip-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .campus-strip-grid {
        grid-template-columns: 1fr;
    }
}

/* ===== Editorial USC Newsroom ===== */

.news-hub {
    padding: 78px 0 88px;
    background: #fff;
}

.news-topbar {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: flex-end;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 28px;
}

.news-topbar h2 {
    font-family: Manrope;
    font-size: clamp(36px,4vw,52px);
    letter-spacing: -.04em;
    line-height: 1;
    margin: 8px 0 0;
}

.news-tools {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

.news-search {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 320px;
    border: 1px solid var(--line);
    border-radius: 11px;
    padding: 0 12px;
    background: #fafcfa;
}

.news-search input {
    border: 0;
    background: transparent;
    box-shadow: none !important;
    padding-left: 0;
}

.news-filter {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.news-filter button {
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 8px;
    padding: 7px 10px;
    font-size: 9px;
    font-weight: 800;
    color: #65716a;
}

.news-filter button.active {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff;
}

.news-dashboard {
    display: grid;
    grid-template-columns: minmax(0,1fr) 310px;
    gap: 34px;
    align-items: start;
}

.lead-story {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    border: 1px solid var(--line);
    border-radius: 22px;
    overflow: hidden;
    background: #fff;
    margin-bottom: 18px;
}

.lead-story-art {
    min-height: 310px;
    background: radial-gradient(circle at 80% 15%,rgba(239,183,42,.26),transparent 24%),
    linear-gradient(135deg,#0c3d2a,#176644 55%,#218456);
    position: relative;
}

.lead-story-art:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
    background-size: 34px 34px;
}

.lead-overlay {
    position: absolute;
    inset: 0;
    padding: 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
}

.story-badge {
    background: #fff;
    color: #14583a;
    border-radius: 8px;
    padding: 7px 9px;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .1em;
}

.lead-mark {
    width: 116px;
    height: 116px;
    border-radius: 28px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.2);
    color: #fff;
    font-family: Manrope;
    font-size: 31px;
    font-weight: 800;
    backdrop-filter: blur(8px);
}

.lead-story-copy {
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.story-meta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    color: #7c8881;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.story-meta span+span:before {
    content: "•";
    margin-right: 8px;
    color: #b0bab4;
}

.lead-story-copy h3 {
    font-family: Manrope;
    font-size: 29px;
    line-height: 1.2;
    letter-spacing: -.025em;
    margin: 12px 0;
}

.lead-story-copy p {
    font-size: 13px;
    color: var(--muted);
    margin: 0 0 16px;
}

.lead-story-copy a,.news-row-content a {
    font-size: 10px;
    font-weight: 800;
    color: var(--green);
}

.news-list {
    border-top: 1px solid var(--line);
}

.news-row {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 22px;
    padding: 20px 0;
    border-bottom: 1px solid var(--line);
}

.news-thumb {
    height: 125px;
    border-radius: 14px;
    display: flex;
    align-items: flex-end;
    padding: 14px;
    overflow: hidden;
    position: relative;
}

.news-thumb:after {
    content: "";
    position: absolute;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    right: -25px;
    top: -25px;
    background: rgba(255,255,255,.10);
}

.news-thumb span {
    position: relative;
    z-index: 2;
    background: rgba(255,255,255,.94);
    border-radius: 7px;
    padding: 6px 8px;
    font-size: 10px;
    font-weight: 900;
}

.thumb-esumbong {
    background: linear-gradient(135deg,#135d3c,#258355);
}

.thumb-mluc {
    background: linear-gradient(135deg,#8f2020,#d64343);
}

.thumb-nluc {
    background: linear-gradient(135deg,#0f6a40,#39a365);
}

.thumb-sluc {
    background: linear-gradient(135deg,#174789,#3674d8);
}

.thumb-ous {
    background: linear-gradient(135deg,#a75a17,#ed8b2d);
}

.news-row-content h3 {
    font-family: Manrope;
    font-size: 20px;
    line-height: 1.25;
    margin: 7px 0 6px;
}

.news-row-content p {
    font-size: 11px;
    color: var(--muted);
    margin: 0 0 9px;
    max-width: 720px;
}

.news-sidebar {
    display: grid;
    gap: 18px;
    position: sticky;
    top: 94px;
}

.side-panel {
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 19px;
    background: #fff;
}

.urgent-panel {
    background: linear-gradient(145deg,#f2f9f5,#fff);
}

.panel-eyebrow {
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .12em;
    color: var(--green);
}

.side-panel h3 {
    font-family: Manrope;
    font-size: 19px;
    margin: 5px 0 6px;
}

.side-panel>p {
    font-size: 10px;
    color: var(--muted);
    margin: 0 0 12px;
}

.service-shortcut {
    display: grid;
    grid-template-columns: 38px 1fr auto;
    gap: 9px;
    align-items: center;
    padding: 10px 0;
    border-top: 1px solid #eaf0ec;
}

.shortcut-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    color: #fff;
    font-weight: 900;
}

.shortcut-icon.green {
    background: #177a4b;
}

.shortcut-icon.blue {
    background: #2f67d8;
}

.shortcut-icon.gold {
    background: #efb72a;
    color: #493500;
}

.service-shortcut strong {
    display: block;
    font-size: 10px;
}

.service-shortcut small {
    display: block;
    font-size: 8px;
    color: var(--muted);
    margin-top: 2px;
}

.service-shortcut b {
    font-size: 11px;
    color: var(--green);
}

.side-panel-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 9px;
}

.side-panel-head a {
    font-size: 8px;
    font-weight: 800;
    color: var(--green);
}

.campus-link-list a {
    display: grid;
    grid-template-columns: 10px 46px 1fr;
    gap: 8px;
    align-items: center;
    padding: 9px 0;
    border-top: 1px solid #edf1ee;
}

.campus-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.campus-dot.nluc {
    background: #198754;
}

.campus-dot.mluc {
    background: #c83232;
}

.campus-dot.sluc {
    background: #2f67d8;
}

.campus-dot.ous {
    background: #e58222;
}

.campus-link-list strong {
    font-size: 9px;
}

.campus-link-list small {
    font-size: 8px;
    color: var(--muted);
}

.side-record {
    display: block;
    padding: 11px 0;
    border-top: 1px solid #edf1ee;
}

.side-record strong {
    display: block;
    font-size: 9px;
    line-height: 1.3;
}

.side-record span {
    display: block;
    font-size: 8px;
    color: var(--muted);
    margin-top: 3px;
}

.news-empty {
    margin-top: 18px;
    text-align: center;
    padding: 38px;
    border: 1px dashed #ccd8d1;
    border-radius: 16px;
    background: #f8faf9;
}

.news-empty strong {
    font-family: Manrope;
}

.news-empty p {
    font-size: 10px;
    color: var(--muted);
}

@media (max-width:1000px) {
    .news-dashboard {
        grid-template-columns: 1fr;
    }
    .news-sidebar {
        position: static;
        grid-template-columns: repeat(3,1fr);
    }
}

@media (max-width:780px) {
    .news-topbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .news-tools {
        width: 100%;
        align-items: stretch;
    }
    .news-search {
        width: 100%;
    }
    .news-filter {
        justify-content: flex-start;
    }
    .lead-story {
        grid-template-columns: 1fr;
    }
    .lead-story-art {
        min-height: 240px;
    }
    .news-row {
        grid-template-columns: 1fr;
    }
    .news-thumb {
        height: 160px;
    }
    .news-sidebar {
        grid-template-columns: 1fr;
    }
}

/* Requested adjustment: shorter slideshow, same design */

.hero-slider,
.hero {
    min-height: 460px !important;
    height: 460px !important;
}

.hero-slide,
.slide {
    min-height: 460px !important;
    height: 460px !important;
}

@media (max-width: 900px) {
    .hero-slider,
    .hero,
    .hero-slide,
    .slide {
        min-height: 430px !important;
        height: 430px !important;
    }
}

@media (max-width: 620px) {
    .hero-slider,
    .hero,
    .hero-slide,
    .slide {
        min-height: 470px !important;
        height: 470px !important;
    }
}

/* Fixed simplified navbar dropdown behavior */

.nav-dropdown.open .nav-drop-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.nav-drop-menu {
    top: calc(100% + 8px);
    white-space: nowrap;
}

.nav-drop-menu a {
    color: #34413a;
}

@media (max-width:1000px) {
    .main-nav.open .nav-dropdown {
        width: 100%;
    }
    .main-nav.open .nav-drop-btn {
        width: 100%;
        text-align: left;
    }
    .main-nav.open .nav-drop-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        border: 0;
        padding: 4px 0 4px 12px;
        display: none;
    }
    .main-nav.open .nav-dropdown.open .nav-drop-menu {
        display: block;
    }
}

/* =========================================================
PROFESSIONAL SIMPLE HOMEPAGE
========================================================= */

.home-v2 {
    background: #fff;
}

.home-v2 .site-header {
    background: rgba(255,255,255,.97);
    border-bottom: 1px solid #e4e9e6;
}

.home-v2 .nav-wrap {
    min-height: 68px;
}

.home-v2 .brand img {
    width: 42px;
    height: 42px;
}

.home-v2 .main-nav {
    gap: 24px;
}

.home-v2 .main-nav>a,
.home-v2 .nav-drop-btn {
    font-size: 12px;
}

.home-v2 .header-cta {
    padding: 10px 15px;
    border-radius: 9px;
}

.home-v2 .hero-slider {
    position: relative;
    height: 430px;
    overflow: hidden;
    background: #0f5a3b;
}

.home-v2 .slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .55s ease,visibility .55s ease;
}

.home-v2 .slide.active {
    opacity: 1;
    visibility: visible;
}

.home-v2 .slide-1 {
    background: linear-gradient(115deg,#0f5137 0%,#177a4d 58%,#24935d 100%);
}

.home-v2 .slide-2 {
    background: linear-gradient(115deg,#143f2c 0%,#41511d 54%,#74620d 100%);
}

.home-v2 .slide-3 {
    background: linear-gradient(115deg,#153b56 0%,#0e5b42 55%,#147c4d 100%);
}

.home-v2 .slide:after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
    background-size: 54px 54px;
    pointer-events: none;
}

.home-hero-grid {
    position: relative;
    z-index: 2;
    height: 100%;
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    align-items: center;
    gap: 72px;
    color: #fff;
}

.home-hero-copy {
    max-width: 680px;
}

.home-kicker {
    display: inline-block;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .14em;
    color: #d6f0e2;
    margin-bottom: 15px;
}

.home-kicker.gold {
    color: #ffe8a0;
}

.home-hero-copy h1 {
    font-family: Manrope,sans-serif;
    font-size: clamp(46px,4.9vw,66px);
    line-height: 1.02;
    letter-spacing: -.045em;
    margin: 0 0 18px;
}

.home-hero-copy p {
    font-size: 15px;
    line-height: 1.65;
    color: rgba(255,255,255,.83);
    max-width: 620px;
    margin: 0 0 24px;
}

.home-hero-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.home-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 17px;
    border-radius: 9px;
    font-size: 11px;
    font-weight: 800;
}

.home-btn.primary {
    background: #fff;
    color: #163a2a;
}

.home-btn.secondary {
    border: 1px solid rgba(255,255,255,.34);
    color: #fff;
}

.home-btn:hover {
    transform: translateY(-1px);
}

.home-hero-panel {
    background: #fff;
    color: #15211a;
    border-radius: 22px;
    padding: 24px;
    box-shadow: 0 22px 50px rgba(0,0,0,.14);
}

.panel-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.panel-top span,.panel-top b {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .1em;
    color: #177a4b;
}

.panel-icon {
    width: 54px;
    height: 54px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: #177a4b;
    color: #fff;
    font-family: Manrope;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 18px;
}

.home-hero-panel h3 {
    font-family: Manrope;
    font-size: 24px;
    margin: 0 0 7px;
}

.home-hero-panel>p {
    font-size: 11px;
    color: #6c7871;
    margin: 0;
}

.panel-status {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 6px;
    margin-top: 23px;
}

.panel-status div {
    display: grid;
    gap: 6px;
    text-align: center;
}

.panel-status div>span {
    height: 5px;
    border-radius: 20px;
    background: #dde5e0;
}

.panel-status .done {
    background: #65bf90;
}

.panel-status .active {
    background: #efb72a;
}

.panel-status small {
    font-size: 8px;
    color: #7c8881;
}

.record-line {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 12px;
    align-items: center;
    padding: 10px 0;
    border-top: 1px solid #edf1ee;
}

.record-line>span {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    display: grid;
    place-items: center;
    background: #fff4d2;
    color: #8e6800;
    font-weight: 900;
    font-size: 10px;
}

.record-line strong {
    font-size: 11px;
}

.metrics-panel {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.metric-clean {
    background: #f7f9f8;
    border: 1px solid #edf1ee;
    border-radius: 14px;
    padding: 18px;
}

.metric-clean:first-child {
    grid-column: 1/-1;
}

.metric-clean strong {
    display: block;
    font-family: Manrope;
    font-size: 26px;
    color: #177a4b;
}

.metric-clean span {
    font-size: 9px;
    color: #6c7871;
}

.home-v2 .slider-arrow {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.35);
    background: rgba(0,0,0,.13);
    color: #fff;
    display: grid;
    place-items: center;
    font-size: 28px;
}

.home-v2 .prev {
    left: 18px;
}

.home-v2 .next {
    right: 18px;
}

.home-v2 .slider-controls {
    bottom: 18px;
}

.home-v2 .dot {
    width: 8px;
    height: 8px;
}

.home-v2 .dot.active {
    width: 24px;
}

.home-v2 .autoplay-bar {
    height: 3px;
}

.home-shortcuts {
    border-bottom: 1px solid #e3e8e5;
    background: #fff;
}

.shortcut-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
}

.shortcut-item {
    min-height: 82px;
    display: grid;
    grid-template-columns: 44px 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 16px 22px;
    border-right: 1px solid #e3e8e5;
}

.shortcut-item:last-child {
    border-right: 0;
}

.shortcut-item:hover {
    background: #f9fbfa;
}

.shortcut-symbol {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    color: #fff;
    font-weight: 900;
}

.shortcut-symbol.green {
    background: #177a4b;
}

.shortcut-symbol.blue {
    background: #2f67d8;
}

.shortcut-symbol.gold {
    background: #efb72a;
    color: #493500;
}

.shortcut-item strong {
    display: block;
    font-size: 11px;
}

.shortcut-item small {
    display: block;
    font-size: 8px;
    color: #79857e;
    margin-top: 3px;
}

.shortcut-item>b {
    color: #177a4b;
    font-size: 12px;
}

.home-news {
    padding: 64px 0 72px;
    background: #f7f9f8;
}

.home-section-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 20px;
    margin-bottom: 22px;
}

.home-section-head>div>span {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .13em;
    color: #177a4b;
}

.home-section-head h2 {
    font-family: Manrope;
    font-size: 38px;
    letter-spacing: -.04em;
    margin: 6px 0 0;
}

.home-section-head>a {
    font-size: 10px;
    font-weight: 800;
    color: #177a4b;
}

.home-news-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
}

.home-news-card {
    background: #fff;
    border: 1px solid #dfe6e2;
    border-radius: 17px;
    overflow: hidden;
    transition: .2s;
}

.home-news-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(20,32,26,.06);
}

.news-accent {
    height: 7px;
}

.news-accent.usc {
    background: #177a4b;
}

.news-accent.mluc {
    background: #c83232;
}

.news-card-body {
    padding: 20px;
}

.news-card-meta {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
}

.news-card-meta span {
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .08em;
    color: #177a4b;
}

.news-card-meta time {
    font-size: 8px;
    color: #8a958e;
}

.news-card-body h3 {
    font-family: Manrope;
    font-size: 18px;
    line-height: 1.28;
    margin: 10px 0 8px;
}

.news-card-body p {
    font-size: 10px;
    line-height: 1.55;
    color: #6c7871;
    margin: 0 0 14px;
}

.news-card-body>a {
    font-size: 9px;
    font-weight: 800;
    color: #177a4b;
}

.home-footer {
    padding: 22px 0;
    background: #fff;
    border-top: 1px solid #e4e9e6;
}

.home-footer .container {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    color: #7a867f;
    font-size: 8px;
}

@media (max-width:980px) {
    .home-v2 .hero-slider {
        height: 520px;
    }
    .home-hero-grid {
        grid-template-columns: 1fr;
        gap: 24px;
        padding-top: 42px;
        padding-bottom: 52px;
    }
    .home-hero-panel {
        display: none;
    }
    .home-hero-copy {
        max-width: 720px;
        margin: auto;
        text-align: center;
    }
    .home-hero-actions {
        justify-content: center;
    }
    .shortcut-grid {
        grid-template-columns: 1fr;
    }
    .shortcut-item {
        border-right: 0;
        border-bottom: 1px solid #e3e8e5;
    }
    .shortcut-item:last-child {
        border-bottom: 0;
    }
}

@media (max-width:700px) {
    .home-v2 .hero-slider {
        height: 500px;
    }
    .home-hero-copy h1 {
        font-size: 42px;
    }
    .home-hero-copy p {
        font-size: 14px;
    }
    .home-news-grid {
        grid-template-columns: 1fr;
    }
    .home-section-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .home-footer .container {
        flex-direction: column;
    }
}

/* One-line Latest Updates — compact professional homepage */

.home-news-row {
    padding: 48px 0 58px;
}

.home-news-row .home-section-head {
    margin-bottom: 18px;
}

.one-line-updates {
    background: #fff;
    border: 1px solid #dfe6e2;
    border-radius: 16px;
    overflow: hidden;
}

.one-update {
    display: grid;
    grid-template-columns: 62px 92px minmax(0,1fr) 24px;
    align-items: center;
    gap: 16px;
    min-height: 72px;
    padding: 13px 20px;
    border-bottom: 1px solid #e8edea;
    color: #17231c;
    transition: background .18s ease;
}

.one-update:last-child {
    border-bottom: 0;
}

.one-update:hover {
    background: #f7faf8;
}

.update-campus {
    width: max-content;
    min-width: 43px;
    padding: 5px 7px;
    border-radius: 6px;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .07em;
    text-align: center;
}

.update-campus.usc {
    background: #e8f5ee;
    color: #147347;
}

.update-campus.mluc {
    background: #fbecec;
    color: #b52c2c;
}

.one-update time {
    font-size: 8px;
    color: #89948e;
    white-space: nowrap;
}

.one-update strong {
    font-family: Manrope,sans-serif;
    font-size: 14px;
    line-height: 1.3;
}

.update-arrow {
    color: #147347;
    font-weight: 800;
    text-align: right;
}

@media (max-width:700px) {
    .home-news-row {
        padding: 38px 0 48px;
    }
    .one-update {
        grid-template-columns: auto 1fr 20px;
        gap: 8px 12px;
        padding: 15px;
    }
    .one-update time {
        grid-column: 2;
    }
    .one-update strong {
        grid-column: 1/3;
        font-size: 13px;
    }
    .update-arrow {
        grid-column: 3;
        grid-row: 1/3;
    }
}

/* Larger editorial latest-updates list */

.home-news-list {
    padding: 54px 0 68px;
    background: #fff;
}

.home-news-list .home-section-head {
    margin-bottom: 18px;
}

.large-update-list {
    max-width: 1080px;
    margin: 0 auto;
    border-top: 1px solid #e2e8e4;
}

.large-update-item {
    display: grid;
    grid-template-columns: 220px minmax(0,1fr);
    gap: 28px;
    align-items: center;
    padding: 24px 0;
    border-bottom: 1px solid #e2e8e4;
}

.large-update-thumb {
    height: 150px;
    border-radius: 16px;
    display: flex;
    align-items: flex-end;
    padding: 15px;
    position: relative;
    overflow: hidden;
}

.large-update-thumb:after {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    right: -28px;
    top: -28px;
    background: rgba(255,255,255,.12);
}

.large-update-thumb span {
    position: relative;
    z-index: 2;
    display: inline-flex;
    padding: 7px 9px;
    border-radius: 7px;
    background: rgba(255,255,255,.94);
    font-size: 10px;
    font-weight: 900;
    color: #173b2a;
}

.thumb-usc {
    background: linear-gradient(135deg,#104e35,#1e8658);
}

.thumb-esumbong {
    background: linear-gradient(135deg,#176a47,#2b9767);
}

.thumb-mluc {
    background: linear-gradient(135deg,#a31f27,#d54348);
}

.thumb-nluc {
    background: linear-gradient(135deg,#11663e,#38a267);
}

.thumb-sluc {
    background: linear-gradient(135deg,#194a92,#3c77d7);
}

.thumb-ous {
    background: linear-gradient(135deg,#a85614,#e78a2e);
}

.large-update-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 9px;
    color: #7e8a83;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.large-update-meta span:before {
    content: "•";
    margin-right: 8px;
    color: #a9b3ad;
}

.large-update-content h3 {
    font-family: Manrope,sans-serif;
    font-size: 22px;
    line-height: 1.22;
    letter-spacing: -.02em;
    margin: 8px 0 7px;
}

.large-update-content p {
    margin: 0 0 11px;
    color: #6c7871;
    font-size: 11px;
    line-height: 1.55;
}

.large-update-content a {
    font-size: 10px;
    font-weight: 800;
    color: #177a4b;
}

.large-update-item:hover .large-update-content h3 {
    color: #12663f;
}

@media (max-width:760px) {
    .large-update-item {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 20px 0;
    }
    .large-update-thumb {
        height: 180px;
    }
    .large-update-content h3 {
        font-size: 19px;
    }
}

/* Latest Updates pagination — one post per page */

.home-news-list .large-update-list {
    max-width: 1080px;
}

.home-news-list .large-update-item {
    display: none;
}

.home-news-list .large-update-item.is-visible {
    display: grid;
}

.news-pagination {
    max-width: 1080px;
    margin: 22px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.page-numbers {
    display: flex;
    align-items: center;
    gap: 6px;
}

.news-pagination button {
    min-width: 38px;
    height: 38px;
    border: 1px solid #dce4df;
    background: #fff;
    color: #3e4b44;
    border-radius: 9px;
    font-size: 10px;
    font-weight: 800;
    padding: 0 12px;
}

.news-pagination button:hover {
    border-color: #a8c8b6;
    background: #f7faf8;
}

.news-pagination .page-number {
    padding: 0;
}

.news-pagination .page-number.active {
    background: #177a4b;
    border-color: #177a4b;
    color: #fff;
}

.news-pagination .page-nav[hidden] {
    display: none !important;
}

@media (max-width:760px) {
    .news-pagination {
        justify-content: space-between;
    }
    .page-numbers {
        gap: 4px;
    }
    .news-pagination button {
        min-width: 34px;
        height: 36px;
        padding: 0 9px;
    }
}

/* Pagination refinement: five news posts per page */

.home-news-list .large-update-item {
    display: none;
}

.home-news-list .large-update-item.is-visible {
    display: grid;
}

/* Simplified Latest Updates heading + search/filter tools */

.simple-news-head {
    display: block;
    margin-bottom: 18px;
}

.simple-news-head h2 {
    margin: 0;
}

.news-tools {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    margin: -58px 0 24px auto;
    width: 340px;
}

.news-search {
    width: 100%;
    height: 46px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 13px;
    border: 1px solid #d9e2dd;
    border-radius: 12px;
    background: #fff;
}

.news-search span {
    font-size: 15px;
    color: #173b2a;
    font-weight: 800;
}

.news-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    font: 600 11px Inter,sans-serif;
    color: #25352c;
}

.news-search input::placeholder {
    color: #7e8a83;
}

.news-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}

.news-filter {
    height: 32px;
    min-width: 42px;
    padding: 0 11px;
    border: 1px solid #d9e2dd;
    border-radius: 8px;
    background: #fff;
    color: #526058;
    font-size: 9px;
    font-weight: 800;
}

.news-filter:hover {
    background: #f5f8f6;
}

.news-filter.active {
    background: #142d22;
    border-color: #142d22;
    color: #fff;
}

@media (max-width:760px) {
    .news-tools {
        width: 100%;
        margin: 0 0 20px;
        align-items: stretch;
    }
    .news-filters {
        justify-content: flex-start;
    }
}

/* =========================================================
CLEAN PROFESSIONAL NEWSROOM
========================================================= */

.professional-news {
    padding: 64px 0 74px;
    background: #fff;
}

.professional-news-head {
    display: grid;
    grid-template-columns: minmax(0,1fr) 360px;
    gap: 40px;
    align-items: end;
    padding-bottom: 22px;
    border-bottom: 1px solid #dfe6e2;
    margin-bottom: 0;
}

.professional-news-head h2 {
    font-family: Manrope,sans-serif;
    font-size: 38px;
    line-height: 1;
    letter-spacing: -.04em;
    margin: 0;
}

.professional-news-head p {
    margin: 9px 0 0;
    font-size: 11px;
    color: #7b8780;
}

.professional-news-tools {
    display: grid;
    gap: 10px;
}

.professional-search {
    height: 44px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #dce4df;
    border-radius: 10px;
    padding: 0 12px;
    background: #fbfcfb;
}

.professional-search span {
    color: #174f37;
    font-weight: 900;
}

.professional-search input {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: 10px;
    font-weight: 600;
}

.professional-filters {
    display: flex;
    gap: 6px;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.professional-filters .news-filter {
    height: 30px;
    min-width: 42px;
    padding: 0 10px;
    border: 1px solid #dce4df;
    border-radius: 7px;
    background: #fff;
    color: #59665f;
    font-size: 8px;
    font-weight: 800;
}

.professional-filters .news-filter.active {
    background: #15392a;
    border-color: #15392a;
    color: #fff;
}

.professional-news-list {
    max-width: 1080px;
    margin: 0 auto;
}

.professional-news-item {
    display: grid;
    grid-template-columns: 190px minmax(0,1fr);
    gap: 26px;
    align-items: center;
    padding: 22px 0;
    border-bottom: 1px solid #e3e9e5;
}

.professional-news-item[hidden] {
    display: none !important;
}

.professional-thumb {
    height: 126px;
    border-radius: 14px;
    padding: 13px;
    display: flex;
    align-items: flex-end;
    position: relative;
    overflow: hidden;
}

.professional-thumb::after {
    content: "";
    position: absolute;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    top: -23px;
    right: -23px;
    background: rgba(255,255,255,.12);
}

.professional-thumb span {
    position: relative;
    z-index: 1;
    display: inline-flex;
    padding: 6px 8px;
    border-radius: 6px;
    background: rgba(255,255,255,.94);
    color: #173629;
    font-size: 9px;
    font-weight: 900;
}

.professional-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    color: #7f8b84;
    font-size: 8px;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.professional-meta span::before {
    content: "•";
    margin-right: 8px;
    color: #adb7b1;
}

.professional-news-copy h3 {
    font-family: Manrope,sans-serif;
    font-size: 20px;
    line-height: 1.25;
    letter-spacing: -.02em;
    margin: 7px 0 6px;
}

.professional-news-copy p {
    margin: 0 0 9px;
    color: #6e7a73;
    font-size: 10px;
    line-height: 1.55;
}

.professional-news-copy a {
    color: #147246;
    font-size: 9px;
    font-weight: 800;
}

.professional-news-copy a:hover {
    text-decoration: underline;
}

.professional-empty {
    max-width: 1080px;
    margin: 22px auto 0;
    padding: 30px;
    border: 1px dashed #ced9d2;
    border-radius: 12px;
    text-align: center;
    background: #f8faf9;
}

.professional-empty strong {
    display: block;
    font-size: 13px;
}

.professional-empty span {
    display: block;
    margin-top: 4px;
    font-size: 9px;
    color: #7d8982;
}

.professional-pagination {
    max-width: 1080px;
    margin: 24px auto 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.professional-pagination[hidden] {
    display: none !important;
}

.pagination-pages {
    display: flex;
    gap: 6px;
}

.professional-pagination button {
    height: 36px;
    border: 1px solid #dbe4de;
    border-radius: 8px;
    background: #fff;
    color: #425048;
    font-size: 9px;
    font-weight: 800;
    padding: 0 11px;
}

.pagination-page {
    width: 36px;
    padding: 0 !important;
}

.pagination-page.active {
    color: #fff !important;
    background: #177a4b !important;
    border-color: #177a4b !important;
}

.professional-pagination button:hover {
    background: #f4f8f5;
}

@media (max-width:820px) {
    .professional-news-head {
        grid-template-columns: 1fr;
        gap: 20px;
        align-items: start;
    }
    .professional-filters {
        justify-content: flex-start;
    }
}

@media (max-width:650px) {
    .professional-news {
        padding: 46px 0 56px;
    }
    .professional-news-head h2 {
        font-size: 32px;
    }
    .professional-news-item {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 20px 0;
    }
    .professional-thumb {
        height: 170px;
    }
    .professional-news-copy h3 {
        font-size: 18px;
    }
}

/* =========================================================
REFINED NEWSROOM TOOLBAR + PAGINATION
========================================================= */

.professional-news-head {
    display: block !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
    margin-bottom: 18px !important;
}

.professional-news-head h2 {
    margin: 0 !important;
    font-family: Manrope,sans-serif;
    font-size: 38px;
    line-height: 1;
    letter-spacing: -.04em;
}

.professional-news-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 0 0 18px;
    border-bottom: 1px solid #dfe6e2;
    margin-bottom: 0;
}

.professional-search {
    width: min(360px,100%);
    height: 44px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #dce4df;
    border-radius: 10px;
    padding: 0 12px;
    background: #fbfcfb;
    flex: 0 0 360px;
}

.professional-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}

.professional-filters .news-filter {
    height: 32px;
    min-width: 44px;
    padding: 0 11px;
    border: 1px solid #dce4df;
    border-radius: 8px;
    background: #fff;
    color: #59665f;
    font-size: 8px;
    font-weight: 800;
    transition: .18s ease;
}

.professional-filters .news-filter:hover {
    border-color: #b9c9c0;
    background: #f7faf8;
}

.professional-filters .news-filter.active {
    background: #15392a;
    border-color: #15392a;
    color: #fff;
}

/* Pagination mirrors the earlier intended behavior */

.professional-pagination {
    max-width: 1080px;
    margin: 26px auto 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.professional-pagination[hidden] {
    display: none !important;
}

.pagination-pages {
    display: flex;
    gap: 6px;
}

.pagination-page,
.pagination-nav {
    height: 36px;
    border: 1px solid #dbe4de;
    border-radius: 8px;
    background: #fff;
    color: #425048;
    font-size: 9px;
    font-weight: 800;
}

.pagination-page {
    width: 36px;
    padding: 0;
}

.pagination-nav {
    padding: 0 12px;
}

.pagination-page.active {
    color: #fff;
    background: #177a4b;
    border-color: #177a4b;
}

.pagination-page:hover,
.pagination-nav:hover {
    background: #f4f8f5;
    border-color: #bfd0c6;
}

@media (max-width:820px) {
    .professional-news-toolbar {
        flex-direction: column;
        align-items: stretch;
    }
    .professional-search {
        width: 100%;
        flex-basis: auto;
    }
    .professional-filters {
        justify-content: flex-start;
    }
}

/* Larger, clearer USC header and complete university name */

.site-header .brand small {
    letter-spacing: .02em;
    text-transform: none;
}

@media (min-width:981px) {
    .site-header .nav-wrap {
        min-height: 86px;
        gap: 34px;
    }
    .site-header .brand {
        gap: 14px;
        min-width: 420px;
    }
    .site-header .brand img {
        width: 52px;
        height: 52px;
    }
    .site-header .brand strong {
        font-size: 17px;
        line-height: 1.15;
    }
    .site-header .brand small {
        font-size: 10px;
        line-height: 1.25;
        margin-top: 4px;
        white-space: nowrap;
        color: #68746e;
    }
    .site-header .main-nav {
        gap: 28px;
    }
    .site-header .main-nav a,
    .site-header .nav-drop-btn {
        font-size: 14px;
        font-weight: 700;
    }
    .site-header .header-cta {
        padding: 12px 18px;
        font-size: 12.5px;
        border-radius: 11px;
    }
}

@media (max-width:980px) {
    .site-header .brand small {
        font-size: 8.5px;
        max-width: 230px;
        line-height: 1.2;
    }
}

/* =========================================================
UNIFIED USC NAVBAR — consistent across all public pages
========================================================= */

@media (min-width:981px) {
    .site-header {
        min-height: 92px !important;
    }
    .site-header .container.nav-wrap,
    .nav-wrap {
        height: 92px !important;
        min-height: 92px !important;
        display: flex !important;
        align-items: center !important;
        gap: 38px !important;
    }
    .site-header .brand,
    .brand {
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        margin-right: auto !important;
        min-width: 430px !important;
    }
    .site-header .brand img,
    .brand img {
        width: 54px !important;
        height: 54px !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        flex: 0 0 54px !important;
    }
    .site-header .brand span,
    .brand span {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        line-height: 1.15 !important;
    }
    .site-header .brand strong,
    .brand strong {
        font-family: Manrope,Inter,Arial,sans-serif !important;
        font-size: 18px !important;
        line-height: 1.15 !important;
        letter-spacing: -.015em !important;
        white-space: nowrap !important;
    }
    .site-header .brand small,
    .brand small {
        font-size: 10.5px !important;
        line-height: 1.25 !important;
        letter-spacing: .01em !important;
        text-transform: none !important;
        color: #68746e !important;
        margin-top: 5px !important;
        white-space: nowrap !important;
    }
    .site-header .main-nav,
    .main-nav {
        display: flex !important;
        align-items: center !important;
        gap: 30px !important;
    }
    .site-header .main-nav > a,
    .site-header .nav-drop-btn,
    .main-nav > a,
    .nav-drop-btn {
        font-size: 14px !important;
        font-weight: 750 !important;
        line-height: 1 !important;
        padding: 38px 0 !important;
        color: #46534c !important;
    }
    .site-header .header-cta,
    .site-header .submit-cta,
    .header-cta,.submit-cta {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 44px !important;
        padding: 0 19px !important;
        border-radius: 11px !important;
        background: #16623f !important;
        color: #fff !important;
        font-size: 12.5px !important;
        font-weight: 800 !important;
        white-space: nowrap !important;
    }
    .site-header .nav-drop-menu,
    .nav-drop-menu {
        min-width: 210px !important;
    }
    .site-header .nav-drop-menu a,
    .nav-drop-menu a {
        font-size: 12.5px !important;
        padding: 11px 12px !important;
    }
}

@media (max-width:1200px) and (min-width:981px) {
    .site-header .brand,.brand {
        min-width: 360px !important;
    }
    .site-header .brand strong,.brand strong {
        font-size: 16px !important;
    }
    .site-header .brand small,.brand small {
        font-size: 9.25px !important;
    }
    .site-header .main-nav,.main-nav {
        gap: 22px !important;
    }
    .site-header .main-nav > a,.site-header .nav-drop-btn,.main-nav > a,.nav-drop-btn {
        font-size: 12.5px !important;
    }
}

/* =========================================================
NEWS & UPDATES PAGE — dynamic professional layout
========================================================= */

.news-page {
    background: #f7faf8;
    min-height: 100vh;
}

.news-hero {
    padding: 72px 0 52px;
    background: linear-gradient(180deg,#f3f8f5 0%,#fff 100%);
    border-bottom: 1px solid var(--line);
}

.news-hero .eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--green);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.news-hero h1 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(44px,5vw,68px);
    line-height: 1;
    letter-spacing: -.045em;
    margin: 14px 0 16px;
    color: #10231a;
}

.news-hero p {
    max-width: 760px;
    margin: 0;
    color: #66736c;
    font-size: 16px;
    line-height: 1.7;
}

.news-main {
    padding: 42px 0 84px;
}

.news-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 0 0 24px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 28px;
}

.news-toolbar-left h2 {
    font-family: Manrope,Inter,sans-serif;
    font-size: 28px;
    letter-spacing: -.03em;
    margin: 0 0 4px;
}

.news-toolbar-left p {
    margin: 0;
    color: #7a8780;
    font-size: 11px;
}

.news-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.news-search-field {
    height: 44px;
    min-width: 260px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 13px;
    border: 1px solid #d9e3dd;
    background: #fff;
    border-radius: 11px;
}

.news-search-field span {
    font-size: 15px;
    color: #176640;
}

.news-search-field input {
    border: 0;
    outline: 0;
    background: transparent;
    padding: 0;
    font-size: 11px;
    box-shadow: none;
}

.news-filter {
    height: 38px;
    border: 1px solid #dce4df;
    background: #fff;
    color: #58655e;
    border-radius: 9px;
    padding: 0 12px;
    font-size: 10px;
    font-weight: 800;
    cursor: pointer;
}

.news-filter.active {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
}

.updates-page-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 20px;
}

.update-card {
    position: relative;
    background: #fff;
    border: 1px solid #dfe7e2;
    border-radius: 20px;
    padding: 24px;
    min-height: 245px;
    box-shadow: 0 10px 30px rgba(18,50,34,.035);
    transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease;
    overflow: hidden;
}

.update-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 42px rgba(18,50,34,.08);
    border-color: #c7d8cf;
}

.update-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: #16623f;
}

.update-card[data-campus="MLUC"]::before {
    background: #bd2f35;
}

.update-card[data-campus="NLUC"]::before {
    background: #248357;
}

.update-card[data-campus="SLUC"]::before {
    background: #2c66d7;
}

.update-card[data-campus="OUS"]::before {
    background: #d47e21;
}

.update-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin-bottom: 18px;
}

.update-tag {
    display: inline-flex;
    align-items: center;
    padding: 7px 9px;
    border-radius: 8px;
    background: #edf7f1;
    color: #176640;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.update-date {
    font-size: 9px;
    color: #87928c;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
}

.update-card h3 {
    font-family: Manrope,Inter,sans-serif;
    font-size: 22px;
    line-height: 1.25;
    letter-spacing: -.025em;
    margin: 0 0 10px;
    color: #13261d;
}

.update-card .excerpt {
    font-size: 12px;
    line-height: 1.65;
    color: #65736b;
    margin: 0 0 14px;
}

.update-card .content {
    font-size: 11px;
    line-height: 1.65;
    color: #7b8780;
    margin: 0;
    padding-top: 14px;
    border-top: 1px solid #edf1ee;
}

.update-card .campus-line {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 18px;
    font-size: 9px;
    font-weight: 800;
    color: #3f4d45;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.update-card .campus-line i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #16623f;
    display: inline-block;
}

.news-empty {
    grid-column: 1/-1;
    padding: 54px 24px;
    text-align: center;
    border: 1px dashed #cbd8d0;
    border-radius: 18px;
    background: #fff;
    color: #6f7c75;
    font-size: 12px;
}

.news-footer {
    background: #0b2116;
    color: #fff;
    padding: 30px 0;
}

.news-footer .footer-inner {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    font-size: 10px;
    color: #aab9b0;
}

.news-footer strong {
    color: #fff;
    font-size: 11px;
}

@media (max-width:900px) {
    .news-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .news-controls {
        justify-content: flex-start;
        width: 100%;
    }
    .news-search-field {
        width: 100%;
        min-width: 0;
    }
    .updates-page-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width:620px) {
    .news-hero {
        padding: 48px 0 36px;
    }
    .news-main {
        padding: 30px 0 60px;
    }
    .news-hero h1 {
        font-size: 40px;
    }
    .update-card {
        padding: 20px;
    }
    .update-card h3 {
        font-size: 19px;
    }
    .news-footer .footer-inner {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* =========================================================
NEWSROOM V2 — redesigned News & Updates page
========================================================= */

.newsroom-v2 {
    background: #f7faf8;
    color: #17231c;
}

.newsroom-v2 .container {
    width: min(1400px,calc(100% - 48px));
    margin: auto;
}

.newsroom-hero {
    padding: 72px 0 64px;
    background: radial-gradient(circle at 82% 10%,rgba(27,126,78,.11),transparent 30%),linear-gradient(180deg,#f5faf7 0%,#fff 100%);
    border-bottom: 1px solid #e1e9e4;
}

.newsroom-hero-grid {
    display: grid;
    grid-template-columns: minmax(0,1.25fr) minmax(380px,.75fr);
    gap: 70px;
    align-items: end;
}

.newsroom-kicker,.toolbar-kicker {
    display: inline-block;
    font-size: 10px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .16em;
    color: #176845;
}

.newsroom-hero h1 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(48px,5.3vw,76px);
    line-height: .98;
    letter-spacing: -.05em;
    margin: 16px 0 20px;
    max-width: 850px;
    color: #10271b;
}

.newsroom-hero p {
    font-size: 17px;
    line-height: 1.72;
    color: #65736b;
    max-width: 820px;
    margin: 0;
}

.newsroom-summary {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 12px;
}

.newsroom-summary div {
    background: #fff;
    border: 1px solid #dde7e1;
    border-radius: 18px;
    padding: 21px 18px;
    box-shadow: 0 12px 34px rgba(15,65,39,.045);
}

.newsroom-summary strong {
    display: block;
    font-family: Manrope;
    font-size: 25px;
    color: #145b3c;
    margin-bottom: 4px;
}

.newsroom-summary span {
    display: block;
    font-size: 10px;
    line-height: 1.35;
    color: #7b8780;
}

.newsroom-main {
    padding: 48px 0 84px;
}

.newsroom-toolbar {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    align-items: end;
    margin-bottom: 28px;
}

.newsroom-toolbar h2,.newsroom-section-head h2 {
    font-family: Manrope;
    font-size: 30px;
    line-height: 1.1;
    letter-spacing: -.035em;
    margin: 8px 0 0;
}

.newsroom-controls {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.newsroom-search {
    width: 285px;
    height: 46px;
    border: 1px solid #d8e3dc;
    background: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 14px;
}

.newsroom-search span {
    color: #176845;
    font-weight: 800;
}

.newsroom-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    font-size: 11px;
    color: #2c3932;
}

.newsroom-filters {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}

.newsroom-filters .news-filter {
    height: 40px;
    padding: 0 13px;
    border-radius: 10px;
    border: 1px solid #dae4de;
    background: #fff;
    font-size: 10px;
    font-weight: 850;
    color: #526057;
}

.newsroom-filters .news-filter.active {
    background: #145f3f;
    color: #fff;
    border-color: #145f3f;
}

.newsroom-lead {
    display: grid;
    grid-template-columns: minmax(0,1.45fr) minmax(350px,.7fr);
    gap: 22px;
    align-items: stretch;
    margin-bottom: 52px;
}

.news-featured-card {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    min-height: 390px;
    background: #fff;
    border: 1px solid #dce6e0;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(15,65,39,.055);
}

.feature-visual {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 30px;
    background: linear-gradient(145deg,#0d5035,#17784d 58%,#2b9965);
    color: #fff;
    overflow: hidden;
}

.feature-visual:after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
    background-size: 45px 45px;
}

.feature-badge,.feature-campus-mark,.feature-visual small {
    position: relative;
    z-index: 1;
}

.feature-badge {
    position: absolute;
    top: 22px;
    left: 22px;
    background: #fff;
    color: #165c3d;
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
}

.feature-campus-mark {
    font-family: Manrope;
    font-size: 60px;
    font-weight: 800;
    letter-spacing: -.05em;
    line-height: 1;
}

.feature-visual small {
    font-size: 11px;
    margin-top: 5px;
    color: rgba(255,255,255,.78);
}

.feature-content {
    padding: 34px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.entry-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.entry-meta span {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    color: #176845;
}

.entry-meta time {
    font-size: 9px;
    color: #8a958f;
}

.feature-content h2 {
    font-family: Manrope;
    font-size: clamp(28px,2.6vw,39px);
    line-height: 1.08;
    letter-spacing: -.04em;
    margin: 0 0 14px;
}

.feature-content>p {
    font-size: 13px;
    line-height: 1.7;
    color: #65736b;
    margin: 0 0 18px;
}

.read-toggle {
    align-self: flex-start;
    border: 0;
    background: transparent;
    padding: 0;
    color: #176845;
    font-size: 11px;
    font-weight: 850;
    cursor: pointer;
}

.read-toggle span {
    margin-left: 4px;
}

.entry-full {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e7ede9;
    font-size: 12px;
    line-height: 1.75;
    color: #59665f;
}

.newsroom-side-list {
    display: grid;
    grid-template-rows: repeat(3,1fr);
    gap: 12px;
}

.side-update {
    display: grid;
    grid-template-columns: 68px minmax(0,1fr) auto;
    gap: 14px;
    align-items: center;
    background: #fff;
    border: 1px solid #dde7e1;
    border-radius: 18px;
    padding: 15px;
    transition: .2s;
}

.side-update:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(15,65,39,.06);
}

.side-campus {
    height: 68px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: #e9f5ee;
    color: #176845;
    font-size: 10px;
    font-weight: 900;
}

.side-copy .entry-meta {
    margin-bottom: 6px;
}

.side-copy h3 {
    font-family: Manrope;
    font-size: 16px;
    line-height: 1.25;
    letter-spacing: -.02em;
    margin: 0 0 5px;
}

.side-copy p {
    font-size: 10px;
    line-height: 1.5;
    color: #758078;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.side-arrow {
    font-size: 18px;
    color: #176845;
}

.campus-mluc {
    background: #fff0f0 !important;
    color: #a92b31 !important;
}

.campus-nluc {
    background: #eaf7ef !important;
    color: #18774d !important;
}

.campus-sluc {
    background: #edf3ff !important;
    color: #275ebf !important;
}

.campus-ous {
    background: #fff4e8 !important;
    color: #b26316 !important;
}

.feature-visual.campus-mluc {
    background: linear-gradient(145deg,#741b20,#ba3035 58%,#da5559) !important;
    color: #fff !important;
}

.feature-visual.campus-nluc {
    background: linear-gradient(145deg,#104d31,#1b8051 58%,#43a56f) !important;
    color: #fff !important;
}

.feature-visual.campus-sluc {
    background: linear-gradient(145deg,#163c7f,#2d66c7 58%,#4f83dd) !important;
    color: #fff !important;
}

.feature-visual.campus-ous {
    background: linear-gradient(145deg,#934d0e,#d7771f 58%,#ee9e52) !important;
    color: #fff !important;
}

.newsroom-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    padding-top: 10px;
    margin-bottom: 22px;
}

.results-count {
    font-size: 10px;
    font-weight: 800;
    color: #79857e;
}

.newsroom-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px;
}

.newsroom-card {
    background: #fff;
    border: 1px solid #dde7e1;
    border-radius: 19px;
    padding: 22px;
    min-height: 255px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 9px 26px rgba(15,65,39,.035);
    transition: .2s;
}

.newsroom-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 34px rgba(15,65,39,.07);
}

.card-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 20px;
}

.campus-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    height: 30px;
    padding: 0 9px;
    border-radius: 8px;
    background: #edf7f1;
    color: #176845;
    font-size: 9px;
    font-weight: 900;
}

.card-topline time {
    font-size: 9px;
    color: #8c9791;
}

.category-label {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    color: #6c7971;
}

.newsroom-card h3 {
    font-family: Manrope;
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: -.025em;
    margin: 8px 0 9px;
}

.newsroom-card>p {
    font-size: 11px;
    line-height: 1.65;
    color: #6d7972;
    margin: 0 0 16px;
}

.read-toggle.compact {
    margin-top: auto;
}

.newsroom-empty {
    padding: 54px 26px;
    text-align: center;
    border: 1px dashed #cbd9d0;
    border-radius: 18px;
    background: #fff;
    color: #69766f;
    font-size: 12px;
}

.news-entry[hidden] {
    display: none !important;
}

@media (max-width:1080px) {
    .newsroom-hero-grid {
        grid-template-columns: 1fr;
    }
    .newsroom-summary {
        max-width: 650px;
    }
    .newsroom-lead {
        grid-template-columns: 1fr;
    }
    .newsroom-side-list {
        grid-template-columns: repeat(3,1fr);
        grid-template-rows: none;
    }
    .side-update {
        grid-template-columns: 56px 1fr;
    }
    .side-campus {
        height: 56px;
    }
    .side-arrow {
        display: none;
    }
    .newsroom-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width:760px) {
    .newsroom-v2 .container {
        width: min(100% - 28px,1400px);
    }
    .newsroom-hero {
        padding: 48px 0;
    }
    .newsroom-hero h1 {
        font-size: 44px;
    }
    .newsroom-summary {
        grid-template-columns: 1fr;
    }
    .newsroom-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .newsroom-controls {
        width: 100%;
        justify-content: flex-start;
    }
    .newsroom-search {
        width: 100%;
    }
    .news-featured-card {
        grid-template-columns: 1fr;
    }
    .feature-visual {
        min-height: 220px;
    }
    .feature-content {
        padding: 24px;
    }
    .newsroom-side-list,.newsroom-grid {
        grid-template-columns: 1fr;
    }
    .newsroom-section-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .newsroom-main {
        padding-top: 34px;
    }
}

/* =========================================================
NEWSROOM V3 — compact, balanced, PHP dynamic newsroom
========================================================= */

.news3-page {
    background: #f7faf8;
    color: #17231c;
    min-height: 100vh;
}

.news3-page .container {
    width: min(1360px,calc(100% - 56px));
    margin-inline: auto;
}

.news3-hero {
    padding: 54px 0 48px;
    background: linear-gradient(120deg,#f4faf6 0%,#fff 58%,#eef8f2 100%);
    border-bottom: 1px solid #dfe8e2;
}

.news3-hero-inner {
    display: grid;
    grid-template-columns: minmax(0,1.45fr) minmax(360px,.55fr);
    align-items: center;
    gap: 68px;
}

.news3-eyebrow,.news3-toolbar-title>span,.news3-list-head>div>span {
    display: inline-block;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .16em;
    color: #166640;
}

.news3-hero h1 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(44px,4.6vw,64px);
    line-height: 1;
    letter-spacing: -.045em;
    color: #10261a;
    margin: 12px 0 14px;
}

.news3-hero p {
    max-width: 760px;
    font-size: 15px;
    line-height: 1.7;
    color: #66736c;
    margin: 0;
}

.news3-overview {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    background: #fff;
    border: 1px solid #dce7e0;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 14px 36px rgba(15,65,39,.045);
}

.news3-overview div {
    padding: 22px 18px;
    border-right: 1px solid #e5ece8;
}

.news3-overview div:last-child {
    border-right: 0;
}

.news3-overview strong {
    display: block;
    font-family: Manrope;
    font-size: 25px;
    line-height: 1;
    color: #155f3e;
    margin-bottom: 7px;
}

.news3-overview span {
    font-size: 9.5px;
    color: #79857e;
}

.news3-content {
    padding: 42px 0 76px;
}

.news3-toolbar {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 24px;
}

.news3-toolbar-title h2,.news3-list-head h2 {
    font-family: Manrope;
    font-size: 28px;
    line-height: 1.08;
    letter-spacing: -.03em;
    margin: 7px 0 0;
    color: #15251c;
}

.news3-tools {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.news3-search {
    width: 310px;
    height: 44px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 13px;
    background: #fff;
    border: 1px solid #d8e3dc;
    border-radius: 11px;
}

.news3-search>span {
    color: #176845;
    font-weight: 800;
}

.news3-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    font: inherit;
    font-size: 11px;
    color: #35433b;
}

.news3-filters {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.news3-filters .news-filter {
    height: 38px;
    min-width: 45px;
    padding: 0 12px;
    border: 1px solid #d8e3dc;
    border-radius: 9px;
    background: #fff;
    color: #526057;
    font-size: 9.5px;
    font-weight: 850;
    cursor: pointer;
}

.news3-filters .news-filter:hover {
    background: #f2f7f4;
}

.news3-filters .news-filter.active {
    background: #166640;
    border-color: #166640;
    color: #fff;
}

.news3-featured {
    display: grid;
    grid-template-columns: 340px minmax(0,1fr);
    min-height: 330px;
    background: #fff;
    border: 1px solid #dce7e0;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 14px 38px rgba(15,65,39,.05);
    margin-bottom: 42px;
}

.news3-feature-identity {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 30px;
    background: linear-gradient(145deg,#0e5135,#19794d);
    color: #fff;
    overflow: hidden;
}

.news3-feature-identity:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
    background-size: 42px 42px;
}

.news3-feature-identity>* {
    position: relative;
    z-index: 1;
}

.news3-feature-tag {
    position: absolute;
    top: 22px;
    left: 22px;
    padding: 8px 10px;
    border-radius: 8px;
    background: #fff;
    color: #166640;
    font-size: 8.5px;
    font-weight: 900;
    letter-spacing: .08em;
}

.news3-feature-identity img {
    width: 82px;
    height: 82px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    margin-bottom: 20px;
    box-shadow: 0 10px 24px rgba(0,0,0,.14);
}

.news3-feature-identity div strong {
    display: block;
    font-family: Manrope;
    font-size: 28px;
    line-height: 1;
}

.news3-feature-identity div span {
    display: block;
    margin-top: 6px;
    font-size: 10px;
    color: rgba(255,255,255,.78);
}

.news3-feature-copy {
    padding: 38px 42px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.news3-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.news3-meta span {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    color: #176845;
}

.news3-meta time {
    font-size: 9px;
    color: #8b9690;
}

.news3-feature-copy h2 {
    max-width: 780px;
    font-family: Manrope;
    font-size: clamp(30px,3vw,42px);
    line-height: 1.08;
    letter-spacing: -.04em;
    margin: 0 0 14px;
    color: #14251b;
}

.news3-feature-copy>p {
    max-width: 820px;
    font-size: 13px;
    line-height: 1.7;
    color: #65736b;
    margin: 0 0 18px;
}

.news3-list-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    padding-top: 2px;
    margin-bottom: 18px;
}

.news3-list-head>strong {
    font-size: 10px;
    color: #79857e;
}

.news3-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 16px;
}

.news3-card {
    min-height: 250px;
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #dce7e0;
    border-radius: 18px;
    padding: 22px;
    box-shadow: 0 8px 24px rgba(15,65,39,.03);
    transition: .18s ease;
}

.news3-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(15,65,39,.065);
}

.news3-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}

.news3-card-top time {
    font-size: 9px;
    color: #8b9690;
}

.news3-campus {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 29px;
    min-width: 50px;
    padding: 0 9px;
    border-radius: 8px;
    background: #eaf5ee;
    color: #176845;
    font-size: 8.5px;
    font-weight: 900;
}

.news3-label {
    font-size: 8.5px;
    font-weight: 900;
    letter-spacing: .08em;
    color: #6e7a73;
}

.news3-card h3 {
    font-family: Manrope;
    font-size: 20px;
    line-height: 1.22;
    letter-spacing: -.025em;
    margin: 8px 0 9px;
    color: #17251d;
}

.news3-card>p {
    font-size: 11px;
    line-height: 1.65;
    color: #6d7972;
    margin: 0 0 16px;
}

.news3-card .read-toggle {
    margin-top: auto;
}

.news3-empty {
    padding: 52px 24px;
    text-align: center;
    border: 1px dashed #cbd9d0;
    border-radius: 16px;
    background: #fff;
    color: #69766f;
    font-size: 12px;
}

.news-entry[hidden] {
    display: none !important;
}

.campus-chip-mluc {
    background: #fff0f0 !important;
    color: #a92b31 !important;
}

.campus-chip-nluc {
    background: #eaf7ef !important;
    color: #18774d !important;
}

.campus-chip-sluc {
    background: #edf3ff !important;
    color: #275ebf !important;
}

.campus-chip-ous {
    background: #fff4e8 !important;
    color: #b26316 !important;
}

.campus-bg-mluc {
    background: linear-gradient(145deg,#781e23,#b82f35) !important;
}

.campus-bg-nluc {
    background: linear-gradient(145deg,#104d31,#1b8051) !important;
}

.campus-bg-sluc {
    background: linear-gradient(145deg,#163c7f,#2d66c7) !important;
}

.campus-bg-ous {
    background: linear-gradient(145deg,#934d0e,#d7771f) !important;
}

@media (max-width:1050px) {
    .news3-hero-inner {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .news3-overview {
        max-width: 620px;
    }
    .news3-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .news3-tools {
        justify-content: flex-start;
        width: 100%;
    }
    .news3-featured {
        grid-template-columns: 280px minmax(0,1fr);
    }
    .news3-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width:760px) {
    .news3-page .container {
        width: min(100% - 28px,1360px);
    }
    .news3-hero {
        padding: 40px 0 36px;
    }
    .news3-hero h1 {
        font-size: 42px;
    }
    .news3-overview {
        grid-template-columns: 1fr;
    }
    .news3-overview div {
        border-right: 0;
        border-bottom: 1px solid #e5ece8;
    }
    .news3-overview div:last-child {
        border-bottom: 0;
    }
    .news3-tools {
        align-items: stretch;
    }
    .news3-search {
        width: 100%;
    }
    .news3-featured {
        grid-template-columns: 1fr;
    }
    .news3-feature-identity {
        min-height: 230px;
    }
    .news3-feature-copy {
        padding: 26px;
    }
    .news3-grid {
        grid-template-columns: 1fr;
    }
    .news3-list-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .news3-content {
        padding-top: 32px;
    }
}

/* Refined News & Updates search/filter controls */

.news3-toolbar {
    align-items: center;
    padding: 22px 24px;
    margin-bottom: 28px;
    background: #fff;
    border: 1px solid #dde7e1;
    border-radius: 18px;
    box-shadow: 0 12px 34px rgba(20,67,45,.055);
}

.news3-toolbar-title {
    min-width: 205px;
}

.news3-toolbar-title>span {
    font-size: 9px;
    letter-spacing: .18em;
}

.news3-toolbar-title h2 {
    font-size: 25px;
    margin-top: 6px;
}

.news3-tools {
    flex: 1;
    flex-wrap: nowrap;
    gap: 14px;
    min-width: 0;
}

.news3-search {
    position: relative;
    flex: 1 1 390px;
    width: auto;
    min-width: 280px;
    height: 58px;
    padding: 0 44px 0 16px;
    gap: 12px;
    border: 1px solid #d4e1d9;
    border-radius: 14px;
    background: #f9fbfa;
    transition: border-color .18s ease,box-shadow .18s ease,background .18s ease;
}

.news3-search:focus-within {
    background: #fff;
    border-color: #2b805d;
    box-shadow: 0 0 0 4px rgba(22,102,64,.09);
}

.news3-search-icon {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 10px;
    background: #eaf5ef;
    color: #176845;
}

.news3-search-icon svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
}

.news3-search-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1px;
    min-width: 0;
    flex: 1;
}

.news3-search-copy small {
    font-size: 9px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: .045em;
    color: #6b7a71;
    text-transform: uppercase;
}

.news3-search input {
    height: 25px;
    font-size: 12px;
    font-weight: 600;
    color: #203128;
    padding: 0;
}

.news3-search input::placeholder {
    color: #87938d;
    font-weight: 500;
}

.news3-search-clear {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 9px;
    background: #eef3f0;
    color: #5d6a63;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}

.news3-search-clear:hover {
    background: #e3ece7;
    color: #1a5f40;
}

.news3-filter-panel {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 58px;
    padding: 8px 10px 8px 13px;
    border: 1px solid #dbe5df;
    border-radius: 14px;
    background: #fbfcfb;
    white-space: nowrap;
}

.news3-filter-label {
    padding-right: 10px;
    border-right: 1px solid #dfe7e2;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #748179;
}

.news3-filters {
    gap: 5px;
    flex-wrap: nowrap;
}

.news3-filters .news-filter {
    height: 38px;
    min-width: 48px;
    padding: 0 12px;
    border-radius: 10px;
    border-color: transparent;
    background: transparent;
    color: #536159;
    font-size: 9.5px;
    transition: background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}

.news3-filters .news-filter:hover {
    background: #edf4f0;
    color: #185f40;
    transform: translateY(-1px);
}

.news3-filters .news-filter.active {
    background: #166640;
    border-color: #166640;
    color: #fff;
    box-shadow: 0 5px 12px rgba(22,102,64,.16);
}

@media (max-width:1180px) {
    .news3-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .news3-toolbar-title {
        min-width: 0;
    }
    .news3-tools {
        width: 100%;
        justify-content: flex-start;
    }
    .news3-search {
        flex: 1 1 auto;
    }
}

@media (max-width:820px) {
    .news3-toolbar {
        padding: 18px;
        border-radius: 16px;
    }
    .news3-tools {
        flex-direction: column;
        align-items: stretch;
    }
    .news3-search {
        width: 100%;
        min-width: 0;
        flex: none;
    }
    .news3-filter-panel {
        width: 100%;
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        padding: 11px;
    }
    .news3-filter-label {
        border-right: 0;
        padding: 0 2px;
    }
    .news3-filters {
        width: 100%;
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;
    }
    .news3-filters::-webkit-scrollbar {
        display: none;
    }
    .news3-filters .news-filter {
        flex: 0 0 auto;
    }
}

/* =========================================================
NEWS PRO — refined, simple and premium newsroom layout
========================================================= */

.news-pro-page {
    background: #f7f9f7;
    color: #15251b;
    min-height: 100vh;
}

.news-pro-page .container {
    width: min(1320px,calc(100% - 56px));
    margin-inline: auto;
}

.news-pro-hero {
    padding: 58px 0 54px;
    background: linear-gradient(115deg,#f6faf7 0%,#fff 62%,#edf6f0 100%);
    border-bottom: 1px solid #e0e8e3;
}

.news-pro-hero-grid {
    display: grid;
    grid-template-columns: minmax(0,1.35fr) minmax(330px,.65fr);
    gap: 72px;
    align-items: center;
}

.news-pro-kicker,.news-pro-section-title>span,.news-pro-list-head>div>span {
    display: inline-block;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .18em;
    color: #166640;
}

.news-pro-hero h1 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(46px,4.7vw,66px);
    line-height: 1;
    letter-spacing: -.048em;
    color: #10261a;
    margin: 13px 0 15px;
}

.news-pro-hero p {
    max-width: 760px;
    margin: 0;
    font-size: 15px;
    line-height: 1.75;
    color: #66736c;
}

.news-pro-stats {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    background: #fff;
    border: 1px solid #dce6df;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 14px 36px rgba(22,76,48,.05);
}

.news-pro-stats div {
    padding: 22px 18px;
    border-right: 1px solid #e7ece9;
}

.news-pro-stats div:last-child {
    border-right: 0;
}

.news-pro-stats strong {
    display: block;
    font-family: Manrope,Inter,sans-serif;
    font-size: 26px;
    line-height: 1;
    color: #155f3e;
    margin-bottom: 7px;
}

.news-pro-stats span {
    font-size: 9.5px;
    line-height: 1.35;
    color: #7b8780;
}

.news-pro-main {
    padding: 38px 0 82px;
}

.news-pro-toolbar {
    display: grid;
    grid-template-columns: auto minmax(0,1fr);
    gap: 34px;
    align-items: center;
    padding: 20px 22px;
    margin-bottom: 26px;
    background: #fff;
    border: 1px solid #dde7e1;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(20,70,44,.035);
}

.news-pro-section-title {
    min-width: 200px;
}

.news-pro-section-title h2,.news-pro-list-head h2 {
    font-family: Manrope,Inter,sans-serif;
    font-size: 27px;
    line-height: 1.08;
    letter-spacing: -.035em;
    margin: 7px 0 0;
    color: #15251c;
}

.news-pro-controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
    min-width: 0;
}

.news-pro-search {
    height: 48px;
    min-width: 300px;
    max-width: 470px;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 13px;
    background: #f9fbfa;
    border: 1px solid #d8e3dc;
    border-radius: 12px;
    transition: .2s;
}

.news-pro-search:focus-within {
    background: #fff;
    border-color: #8eb5a1;
    box-shadow: 0 0 0 3px rgba(28,113,73,.07);
}

.news-pro-search svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: #176845;
    stroke-width: 1.9;
    stroke-linecap: round;
    flex: 0 0 auto;
}

.news-pro-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    color: #27372f;
}

.news-pro-search input::placeholder {
    color: #89948e;
    font-weight: 500;
}

.news-pro-search button {
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #6f7d75;
    font-size: 19px;
    cursor: pointer;
}

.news-pro-search button:hover {
    background: #edf4f0;
    color: #176845;
}

.news-pro-filter-wrap {
    height: 48px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px 7px 5px 12px;
    background: #f9fbfa;
    border: 1px solid #d8e3dc;
    border-radius: 12px;
}

.news-pro-filter-wrap>span {
    font-size: 8.5px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #78857e;
    padding-right: 2px;
}

.news-pro-filters {
    display: flex;
    align-items: center;
    gap: 4px;
}

.news-pro-filters .news-filter {
    height: 36px;
    min-width: 44px;
    padding: 0 10px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #536158;
    font-size: 9.5px;
    font-weight: 850;
    cursor: pointer;
    transition: .18s;
}

.news-pro-filters .news-filter:hover {
    background: #edf4f0;
    color: #176845;
}

.news-pro-filters .news-filter.active {
    background: #166640;
    color: #fff;
    box-shadow: 0 5px 13px rgba(22,102,64,.15);
}

.news-pro-feature {
    display: grid;
    grid-template-columns: 330px minmax(0,1fr);
    min-height: 350px;
    margin-bottom: 46px;
    background: #fff;
    border: 1px solid #dce7e0;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 15px 38px rgba(15,65,39,.05);
}

.news-pro-feature-visual {
    position: relative;
    display: flex;
    align-items: flex-end;
    padding: 28px;
    background: linear-gradient(145deg,#0d5135,#19784d);
    color: #fff;
    overflow: hidden;
}

.news-pro-feature-visual:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
    background-size: 42px 42px;
}

.news-pro-feature-visual:after {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    right: -90px;
    top: -80px;
    background: rgba(255,255,255,.06);
}

.news-pro-feature-visual>* {
    position: relative;
    z-index: 1;
}

.news-pro-feature-badge {
    position: absolute;
    top: 22px;
    left: 22px;
    background: #fff;
    color: #166640;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 8.5px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.news-pro-brand-mark {
    display: flex;
    align-items: center;
    gap: 14px;
}

.news-pro-brand-mark img {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    box-shadow: 0 9px 22px rgba(0,0,0,.12);
}

.news-pro-brand-mark strong {
    display: block;
    font-family: Manrope,Inter,sans-serif;
    font-size: 30px;
    line-height: 1;
}

.news-pro-brand-mark span {
    display: block;
    margin-top: 5px;
    font-size: 10px;
    color: rgba(255,255,255,.78);
}

.news-pro-feature-copy {
    padding: 42px 46px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.news-pro-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 13px;
}

.news-pro-meta span {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .09em;
    color: #176845;
}

.news-pro-meta time {
    font-size: 9px;
    color: #8b9690;
}

.news-pro-feature-copy h2 {
    max-width: 850px;
    margin: 0 0 14px;
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(31px,3.2vw,45px);
    line-height: 1.06;
    letter-spacing: -.042em;
    color: #14251b;
}

.news-pro-feature-copy>p {
    max-width: 850px;
    margin: 0 0 20px;
    font-size: 13px;
    line-height: 1.75;
    color: #65736b;
}

.news-pro-list-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.news-pro-list-head>strong {
    font-size: 10px;
    color: #7a8680;
}

.news-pro-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 16px;
}

.news-pro-card {
    min-height: 235px;
    display: flex;
    flex-direction: column;
    padding: 23px 24px;
    background: #fff;
    border: 1px solid #dce7e0;
    border-radius: 18px;
    box-shadow: 0 8px 24px rgba(15,65,39,.028);
    transition: .18s ease;
}

.news-pro-card:hover {
    transform: translateY(-2px);
    border-color: #cbd9d1;
    box-shadow: 0 14px 31px rgba(15,65,39,.06);
}

.news-pro-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}

.news-pro-card-head time {
    font-size: 9px;
    color: #8b9690;
}

.news-pro-campus {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    height: 29px;
    padding: 0 9px;
    border-radius: 8px;
    background: #eaf5ee;
    color: #176845;
    font-size: 8.5px;
    font-weight: 900;
}

.news-pro-label {
    font-size: 8.5px;
    font-weight: 900;
    letter-spacing: .09em;
    color: #718078;
}

.news-pro-card h3 {
    font-family: Manrope,Inter,sans-serif;
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: -.025em;
    margin: 8px 0 9px;
    color: #17251d;
}

.news-pro-card>p {
    font-size: 11px;
    line-height: 1.65;
    color: #6d7972;
    margin: 0 0 16px;
}

.news-pro-card .read-toggle {
    margin-top: auto;
}

.news-pro-empty {
    padding: 52px 24px;
    text-align: center;
    border: 1px dashed #cad8cf;
    border-radius: 17px;
    background: #fff;
    color: #68756e;
    font-size: 12px;
}

.news-entry[hidden] {
    display: none !important;
}

@media (max-width:1080px) {
    .news-pro-hero-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .news-pro-stats {
        max-width: 620px;
    }
    .news-pro-toolbar {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .news-pro-controls {
        justify-content: flex-start;
    }
    .news-pro-feature {
        grid-template-columns: 280px minmax(0,1fr);
    }
}

@media (max-width:800px) {
    .news-pro-page .container {
        width: min(100% - 28px,1320px);
    }
    .news-pro-hero {
        padding: 42px 0 38px;
    }
    .news-pro-hero h1 {
        font-size: 44px;
    }
    .news-pro-stats {
        grid-template-columns: 1fr;
    }
    .news-pro-stats div {
        border-right: 0;
        border-bottom: 1px solid #e7ece9;
    }
    .news-pro-stats div:last-child {
        border-bottom: 0;
    }
    .news-pro-controls {
        flex-direction: column;
        align-items: stretch;
    }
    .news-pro-search {
        max-width: none;
        min-width: 0;
    }
    .news-pro-filter-wrap {
        height: auto;
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        padding: 10px 11px;
    }
    .news-pro-filters {
        width: 100%;
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;
    }
    .news-pro-filters::-webkit-scrollbar {
        display: none;
    }
    .news-pro-filters .news-filter {
        flex: 0 0 auto;
    }
    .news-pro-feature {
        grid-template-columns: 1fr;
    }
    .news-pro-feature-visual {
        min-height: 230px;
    }
    .news-pro-feature-copy {
        padding: 28px;
    }
    .news-pro-grid {
        grid-template-columns: 1fr;
    }
    .news-pro-list-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .news-pro-main {
        padding-top: 30px;
    }
}

/* Newsroom v2: simpler, image-aware publication layout */

.news-v2-page {
    background: #f6f9f7;
    color: #13241a;
}

.news-v2-page .container {
    width: min(1320px,calc(100% - 56px));
    margin-inline: auto;
}

.news-v2-hero {
    padding: 52px 0 46px;
    background: linear-gradient(118deg,#f7fbf8 0%,#fff 58%,#eef6f1 100%);
    border-bottom: 1px solid #dfe8e2;
}

.news-v2-hero__inner {
    display: grid;
    grid-template-columns: minmax(0,1.4fr) auto;
    gap: 54px;
    align-items: center;
}

.news-v2-eyebrow,.news-v2-tools>div>span,.news-v2-heading span {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .18em;
    color: #126340;
}

.news-v2-hero h1 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(44px,4vw,60px);
    line-height: 1;
    letter-spacing: -.045em;
    margin: 12px 0 13px;
}

.news-v2-hero p {
    max-width: 760px;
    margin: 0;
    color: #66756d;
    line-height: 1.7;
    font-size: 14px;
}

.news-v2-summary {
    display: grid;
    grid-template-columns: repeat(3,105px);
    background: #fff;
    border: 1px solid #dce6df;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 14px 36px rgba(16,67,40,.05);
}

.news-v2-summary div {
    padding: 20px 15px;
    border-right: 1px solid #e8edea;
}

.news-v2-summary div:last-child {
    border-right: 0;
}

.news-v2-summary strong {
    display: block;
    font-size: 23px;
    color: #126340;
    letter-spacing: -.03em;
}

.news-v2-summary span {
    display: block;
    margin-top: 5px;
    font-size: 9px;
    color: #7b8881;
}

.news-v2-content {
    padding: 34px 0 80px;
}

.news-v2-tools {
    display: grid;
    grid-template-columns: auto minmax(0,1fr);
    gap: 34px;
    align-items: center;
    padding: 18px 20px;
    background: #fff;
    border: 1px solid #dde7e1;
    border-radius: 17px;
    box-shadow: 0 10px 28px rgba(16,67,40,.035);
    margin-bottom: 22px;
}

.news-v2-tools h2,.news-v2-heading h2 {
    font-family: Manrope,Inter,sans-serif;
    margin: 6px 0 0;
    font-size: 25px;
    letter-spacing: -.03em;
}

.news-v2-tools__right {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    align-items: center;
    min-width: 0;
}

.news-v2-search {
    height: 46px;
    min-width: 280px;
    max-width: 430px;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #d5e1da;
    border-radius: 12px;
    background: #f9fbfa;
    padding: 0 12px;
}

.news-v2-search span {
    color: #176946;
    font-size: 17px;
}

.news-v2-search input {
    border: 0;
    outline: 0;
    background: transparent;
    margin: 0;
    padding: 0;
    font: inherit;
    font-size: 11.5px;
    min-width: 0;
}

.news-v2-search button {
    border: 0;
    background: transparent;
    color: #6b7a72;
    font-size: 18px;
    cursor: pointer;
}

.news-v2-filters {
    display: flex;
    gap: 4px;
    padding: 4px;
    border: 1px solid #d5e1da;
    border-radius: 12px;
    background: #f9fbfa;
}

.news-v2-filters button {
    height: 36px;
    min-width: 42px;
    padding: 0 9px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #526159;
    font-size: 9px;
    font-weight: 850;
    cursor: pointer;
}

.news-v2-filters button.active {
    background: #126340;
    color: #fff;
    box-shadow: 0 5px 14px rgba(18,99,64,.16);
}

.news-v2-feature {
    display: grid;
    grid-template-columns: minmax(340px,.78fr) minmax(0,1.22fr);
    background: #fff;
    border: 1px solid #dce7e0;
    border-radius: 22px;
    overflow: hidden;
    min-height: 420px;
    box-shadow: 0 15px 38px rgba(15,65,39,.05);
    margin-bottom: 42px;
}

.news-v2-feature__media {
    position: relative;
    background: #dfe8e2;
    overflow: hidden;
    min-height: 360px;
}

.news-v2-feature__media>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.news-v2-feature__media:after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 34%;
    background: linear-gradient(transparent,rgba(7,35,23,.28));
    pointer-events: none;
}

.news-v2-feature__media--brand {
    background: linear-gradient(145deg,#0d5135,#19784d);
}

.news-v2-featured-label,.news-v2-photo-count {
    position: absolute;
    z-index: 2;
    top: 20px;
    padding: 8px 10px;
    border-radius: 8px;
    background: rgba(255,255,255,.94);
    color: #126340;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.news-v2-featured-label {
    left: 20px;
}

.news-v2-photo-count {
    right: 20px;
}

.news-v2-brandpanel {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.news-v2-brandpanel img {
    width: 98px;
    height: 98px;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
    box-shadow: 0 12px 28px rgba(0,0,0,.15);
}

.news-v2-brandpanel strong {
    font-family: Manrope,Inter,sans-serif;
    font-size: 36px;
    margin-top: 17px;
}

.news-v2-brandpanel span {
    font-size: 10px;
    color: rgba(255,255,255,.78);
    margin-top: 4px;
}

.news-v2-feature__body {
    padding: 42px 46px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.news-v2-meta {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 13px;
}

.news-v2-meta strong {
    font-size: 9px;
    color: #126340;
    letter-spacing: .08em;
}

.news-v2-meta span {
    font-size: 9px;
    color: #88958e;
}

.news-v2-feature__body h2 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(31px,3vw,44px);
    line-height: 1.08;
    letter-spacing: -.04em;
    margin: 0 0 14px;
}

.news-v2-feature__body>p {
    font-size: 13px;
    line-height: 1.75;
    color: #68766e;
    margin: 0 0 20px;
    max-width: 820px;
}

.news-v2-actions {
    display: flex;
    gap: 8px;
}

.news-v2-page .read-toggle {
    border: 0;
    background: transparent;
    color: #126340;
    padding: 0;
    font: inherit;
    font-size: 10px;
    font-weight: 850;
    cursor: pointer;
}

.news-v2-page .read-toggle span {
    margin-left: 4px;
}

.news-v2-full {
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid #e7ece9;
}

.news-v2-story-text {
    font-size: 12px;
    line-height: 1.8;
    color: #55655c;
    white-space: normal;
}

.news-v2-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 17px;
}

.news-v2-heading>strong {
    font-size: 9.5px;
    color: #839088;
}

.news-v2-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 16px;
}

.news-v2-card {
    background: #fff;
    border: 1px solid #dce7e0;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(15,65,39,.028);
    transition: .18s ease;
}

.news-v2-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 31px rgba(15,65,39,.06);
}

.news-v2-card__image {
    height: 205px;
    position: relative;
    overflow: hidden;
    background: #edf2ef;
}

.news-v2-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.news-v2-card__image span {
    position: absolute;
    right: 12px;
    bottom: 12px;
    padding: 6px 8px;
    border-radius: 8px;
    background: rgba(16,38,25,.78);
    color: #fff;
    font-size: 8.5px;
    font-weight: 800;
}

.news-v2-card__body {
    padding: 22px 22px 23px;
}

.news-v2-card__top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
}

.news-v2-card__top time {
    font-size: 8.5px;
    color: #8b9790;
}

.news-v2-chip {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 0 9px;
    border-radius: 8px;
    background: #eaf5ee;
    color: #126340;
    font-size: 8.5px;
    font-weight: 900;
}

.news-v2-card__body>small {
    display: block;
    margin-top: 16px;
    color: #78867e;
    font-size: 8.5px;
    font-weight: 850;
    letter-spacing: .08em;
}

.news-v2-card h3 {
    font-family: Manrope,Inter,sans-serif;
    font-size: 21px;
    line-height: 1.22;
    letter-spacing: -.025em;
    margin: 7px 0 9px;
}

.news-v2-card__body>p {
    font-size: 11px;
    line-height: 1.7;
    color: #6b7971;
    margin: 0 0 16px;
}

.news-v2-card .news-v2-full {
    margin-top: 16px;
}

.news-v2-gallery {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 8px;
    margin-top: 17px;
}

.gallery-item {
    appearance: none;
    border: 0;
    padding: 0;
    border-radius: 11px;
    overflow: hidden;
    background: #eef3f0;
    aspect-ratio: 4/3;
    cursor: zoom-in;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: .2s;
}

.gallery-item:hover img {
    transform: scale(1.035);
}

.news-v2-empty {
    padding: 52px 24px;
    text-align: center;
    border: 1px dashed #cad8cf;
    border-radius: 17px;
    background: #fff;
    color: #68756e;
    font-size: 12px;
}

.news-entry[hidden] {
    display: none !important;
}

.news-lightbox[hidden] {
    display: none;
}

.news-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(8,20,13,.91);
    display: grid;
    place-items: center;
    padding: 36px;
}

.news-lightbox img {
    max-width: min(1400px,94vw);
    max-height: 88vh;
    object-fit: contain;
    border-radius: 12px;
    box-shadow: 0 24px 80px rgba(0,0,0,.35);
}

.news-lightbox__close {
    position: fixed;
    right: 24px;
    top: 20px;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50%;
    background: rgba(255,255,255,.1);
    color: #fff;
    font-size: 26px;
    cursor: pointer;
}

@media (max-width:1080px) {
    .news-v2-hero__inner {
        grid-template-columns: 1fr;
    }
    .news-v2-summary {
        width: max-content;
    }
    .news-v2-tools {
        grid-template-columns: 1fr;
    }
    .news-v2-tools__right {
        justify-content: flex-start;
    }
    .news-v2-feature {
        grid-template-columns: 300px minmax(0,1fr);
    }
}

@media (max-width:800px) {
    .news-v2-page .container {
        width: min(100% - 28px,1320px);
    }
    .news-v2-hero {
        padding: 40px 0 36px;
    }
    .news-v2-hero h1 {
        font-size: 43px;
    }
    .news-v2-summary {
        grid-template-columns: repeat(3,1fr);
        width: 100%;
    }
    .news-v2-tools__right {
        flex-direction: column;
        align-items: stretch;
    }
    .news-v2-search {
        max-width: none;
        min-width: 0;
    }
    .news-v2-filters {
        overflow-x: auto;
    }
    .news-v2-filters button {
        flex: 0 0 auto;
    }
    .news-v2-feature {
        grid-template-columns: 1fr;
    }
    .news-v2-feature__media {
        min-height: 290px;
    }
    .news-v2-feature__body {
        padding: 28px;
    }
    .news-v2-grid {
        grid-template-columns: 1fr;
    }
    .news-v2-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width:520px) {
    .news-v2-summary {
        grid-template-columns: 1fr;
    }
    .news-v2-summary div {
        border-right: 0;
        border-bottom: 1px solid #e8edea;
    }
    .news-v2-summary div:last-child {
        border-bottom: 0;
    }
    .news-v2-tools {
        padding: 16px;
    }
    .news-v2-feature__body {
        padding: 22px;
    }
    .news-v2-feature__body h2 {
        font-size: 30px;
    }
    .news-v2-card__image {
        height: 180px;
    }
    .news-lightbox {
        padding: 18px;
    }
    .news-lightbox__close {
        right: 12px;
        top: 12px;
    }
}

/* ===== News & Updates — clean editorial redesign ===== */

.news-v2-page {
    background: #f7f9f8;
}

.news-v2-page .container {
    width: min(1180px,calc(100% - 40px));
    margin-inline: auto;
}

.news-v2-hero {
    padding: 42px 0 34px;
    background: #fff;
    border-bottom: 1px solid #e4ebe7;
}

.news-v2-hero__inner {
    grid-template-columns: minmax(0,1fr) auto;
    gap: 36px;
}

.news-v2-eyebrow {
    font-size: 8px;
    letter-spacing: .2em;
}

.news-v2-hero h1 {
    font-size: clamp(38px,4vw,52px);
    margin: 10px 0 10px;
}

.news-v2-hero p {
    font-size: 13px;
    line-height: 1.65;
    max-width: 680px;
}

.news-v2-summary {
    grid-template-columns: repeat(3,92px);
    border-radius: 14px;
    box-shadow: none;
}

.news-v2-summary div {
    padding: 16px 12px;
}

.news-v2-summary strong {
    font-size: 20px;
}

.news-v2-summary span {
    font-size: 8px;
}

.news-v2-content {
    padding: 28px 0 70px;
}

.news-v2-tools {
    grid-template-columns: auto minmax(0,1fr);
    gap: 24px;
    padding: 15px 16px;
    border-radius: 14px;
    box-shadow: none;
    margin-bottom: 18px;
}

.news-v2-tools h2 {
    font-size: 21px;
    margin-top: 4px;
}

.news-v2-tools__right {
    gap: 10px;
}

.news-v2-search {
    height: 42px;
    min-width: 260px;
    max-width: 420px;
    border-radius: 10px;
    background: #fff;
}

.news-v2-filters {
    border-radius: 10px;
    background: #fff;
    padding: 3px;
}

.news-v2-filters button {
    height: 34px;
    min-width: 39px;
    font-size: 8.5px;
}

.news-v2-feature {
    grid-template-columns: 360px minmax(0,1fr);
    min-height: 0;
    border-radius: 16px;
    margin-bottom: 34px;
    box-shadow: 0 10px 28px rgba(15,65,39,.04);
}

.news-v2-feature__media {
    min-height: 0;
    height: 270px;
    background: #f2f5f3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.news-v2-feature__media>img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #f2f5f3;
}

.news-v2-feature__media:after {
    display: none;
}

.news-v2-featured-label,.news-v2-photo-count {
    top: 14px;
    padding: 6px 8px;
    font-size: 7.5px;
    border-radius: 7px;
    box-shadow: 0 4px 12px rgba(0,0,0,.05);
}

.news-v2-featured-label {
    left: 14px;
}

.news-v2-photo-count {
    right: 14px;
}

.news-v2-brandpanel img {
    width: 72px;
    height: 72px;
}

.news-v2-brandpanel strong {
    font-size: 28px;
}

.news-v2-feature__body {
    padding: 28px 32px;
    justify-content: center;
}

.news-v2-meta {
    margin-bottom: 9px;
}

.news-v2-meta strong,.news-v2-meta span {
    font-size: 8.5px;
}

.news-v2-feature__body h2 {
    font-size: clamp(26px,2.8vw,36px);
    line-height: 1.1;
    margin-bottom: 10px;
}

.news-v2-feature__body>p {
    font-size: 11.5px;
    line-height: 1.65;
    margin-bottom: 14px;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-v2-page .read-toggle {
    font-size: 9.5px;
}

.news-v2-heading {
    margin: 8px 0 14px;
    align-items: end;
}

.news-v2-heading h2 {
    font-size: 24px;
}

.news-v2-heading>strong {
    font-size: 8.5px;
}

.news-v2-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.news-v2-card {
    display: grid;
    grid-template-columns: 210px minmax(0,1fr);
    min-height: 140px;
    border-radius: 14px;
    box-shadow: none;
    overflow: hidden;
}

.news-v2-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(15,65,39,.045);
}

.news-v2-card__image {
    height: 140px;
    background: #f0f3f1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.news-v2-card__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #f0f3f1;
}

.news-v2-card__image span {
    right: 8px;
    bottom: 8px;
    font-size: 7.5px;
    padding: 5px 7px;
}

.news-v2-card__body {
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.news-v2-card__top time {
    font-size: 8px;
}

.news-v2-chip {
    min-height: 23px;
    padding: 0 8px;
    font-size: 8px;
    border-radius: 7px;
}

.news-v2-card__body>small {
    margin-top: 8px;
    font-size: 8px;
}

.news-v2-card h3 {
    font-size: 18px;
    line-height: 1.2;
    margin: 5px 0 6px;
}

.news-v2-card__body>p {
    font-size: 10px;
    line-height: 1.55;
    margin-bottom: 9px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-v2-card .read-toggle {
    margin-top: 1px;
}

.news-v2-full {
    grid-column: 1/-1;
}

.news-v2-gallery {
    grid-template-columns: repeat(4,minmax(0,1fr));
}

.news-footer {
    background: #0d2f20;
    color: #fff;
    padding: 20px 0;
    margin-top: 0;
}

.news-footer .footer-inner {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    font-size: 9px;
}

.news-footer span {
    color: rgba(255,255,255,.65);
}

@media (max-width:900px) {
    .news-v2-hero__inner {
        grid-template-columns: 1fr;
    }
    .news-v2-summary {
        width: max-content;
    }
    .news-v2-tools {
        grid-template-columns: 1fr;
    }
    .news-v2-tools__right {
        justify-content: flex-start;
    }
    .news-v2-feature {
        grid-template-columns: 300px minmax(0,1fr);
    }
    .news-v2-feature__media {
        height: 240px;
    }
}

@media (max-width:700px) {
    .news-v2-page .container {
        width: min(100% - 24px,1180px);
    }
    .news-v2-tools__right {
        flex-direction: column;
        align-items: stretch;
    }
    .news-v2-search {
        max-width: none;
        min-width: 0;
    }
    .news-v2-feature {
        grid-template-columns: 1fr;
    }
    .news-v2-feature__media {
        height: auto;
        max-height: none;
    }
    .news-v2-feature__media>img {
        height: auto;
        max-height: 360px;
    }
    .news-v2-card {
        grid-template-columns: 120px minmax(0,1fr);
    }
    .news-v2-card__image {
        height: 100%;
    }
    .news-v2-card h3 {
        font-size: 16px;
    }
    .news-v2-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width:480px) {
    .news-v2-card {
        grid-template-columns: 1fr;
    }
    .news-v2-card__image {
        height: auto;
    }
    .news-v2-card__image img {
        height: auto;
        max-height: 260px;
    }
    .news-v2-summary {
        grid-template-columns: repeat(3,1fr);
        width: 100%;
    }
    .news-v2-summary div {
        border-bottom: 0;
    }
    .news-v2-feature__body {
        padding: 22px;
    }
    .news-footer .footer-inner {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ===== Newsroom V3: clean university newsroom ===== */

/* Newsroom — clean editorial redesign */

.newsroom-v3-page {
    background: #f7f9f8;
    color: #12251b;
    font-family: Inter,Arial,sans-serif;
}

.newsroom-v3-page .container {
    width: min(1240px,calc(100% - 48px));
    margin-inline: auto;
}

.newsroom-page-main {
    min-height: calc(100vh - 160px);
}

.newsroom-hero {
    background: #fff;
    border-bottom: 1px solid #e1e8e4;
    padding: 42px 0 38px;
}

.newsroom-hero__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
}

.newsroom-hero__copy {
    max-width: 780px;
}

.newsroom-kicker,.newsroom-section-heading>div>span {
    display: block;
    color: #0f6a43;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .18em;
}

.newsroom-hero h1 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(40px,4vw,56px);
    line-height: 1;
    letter-spacing: -.045em;
    margin: 9px 0 13px;
}

.newsroom-hero p {
    margin: 0;
    color: #66756d;
    font-size: 14px;
    line-height: 1.65;
    max-width: 760px;
}

.newsroom-hero__stat {
    min-width: 145px;
    border-left: 1px solid #dfe8e3;
    padding: 4px 0 4px 26px;
}

.newsroom-hero__stat strong {
    display: block;
    font-family: Manrope,Inter,sans-serif;
    color: #0f633f;
    font-size: 30px;
    line-height: 1;
}

.newsroom-hero__stat span {
    display: block;
    color: #7b8981;
    font-size: 9px;
    margin-top: 6px;
    font-weight: 700;
}

.newsroom-content {
    padding: 28px 0 72px;
}

.newsroom-toolbar {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 18px;
    align-items: center;
    margin-bottom: 34px;
}

.newsroom-search {
    height: 48px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #d8e2dc;
    border-radius: 12px;
    padding: 0 14px;
    background: #fff;
    box-shadow: 0 3px 14px rgba(12,55,33,.025);
}

.newsroom-search__icon {
    font-size: 18px;
    color: #0f6a43;
}

.newsroom-search input {
    border: 0;
    outline: 0;
    background: transparent;
    width: 100%;
    font: inherit;
    font-size: 12px;
    color: #24372d;
}

.newsroom-search input::placeholder {
    color: #8a9690;
}

.newsroom-search button {
    border: 0;
    background: none;
    color: #64756c;
    font-size: 18px;
    cursor: pointer;
}

.newsroom-filter-group {
    display: flex;
    align-items: center;
    gap: 10px;
}

.newsroom-filter-group>span {
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .14em;
    color: #7a8981;
    text-transform: uppercase;
}

.newsroom-filters {
    display: flex;
    gap: 5px;
}

.newsroom-filters button {
    height: 36px;
    padding: 0 12px;
    border: 1px solid #d8e2dc;
    background: #fff;
    border-radius: 9px;
    color: #506058;
    font-size: 9px;
    font-weight: 850;
    cursor: pointer;
    transition: .15s ease;
}

.newsroom-filters button:hover {
    border-color: #aac4b5;
    color: #0f633f;
}

.newsroom-filters button.active {
    background: #0f633f;
    border-color: #0f633f;
    color: #fff;
}

.newsroom-section-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
    margin-bottom: 14px;
}

.newsroom-section-heading h2 {
    font-family: Manrope,Inter,sans-serif;
    font-size: 28px;
    letter-spacing: -.035em;
    margin: 6px 0 0;
}

.newsroom-section-count,.newsroom-section-heading>strong {
    font-size: 9px;
    color: #839188;
    font-weight: 700;
}

.newsroom-featured {
    display: grid;
    grid-template-columns: minmax(360px,.95fr) minmax(0,1.05fr);
    background: #fff;
    border: 1px solid #dce5df;
    border-radius: 18px;
    overflow: hidden;
    min-height: 360px;
    box-shadow: 0 14px 34px rgba(12,55,33,.045);
    margin-bottom: 46px;
}

.newsroom-featured__media,.newsroom-card__media {
    position: relative;
    background: #eef3f0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.newsroom-featured__media {
    min-height: 360px;
}

.newsroom-cover {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    background: #eef3f0;
}

.newsroom-featured__media .newsroom-cover {
    padding: 14px;
}

.newsroom-card__media .newsroom-cover {
    padding: 10px;
}

.newsroom-media-fallback {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: linear-gradient(145deg,#0b5133,#177548);
    color: #fff;
    text-align: center;
    padding: 24px;
}

.newsroom-media-fallback img {
    width: 78px;
    height: 78px;
    border-radius: 50%;
    object-fit: contain;
    background: #fff;
    padding: 3px;
}

.newsroom-media-fallback strong {
    font-family: Manrope,Inter,sans-serif;
    font-size: 25px;
}

.newsroom-media-fallback span {
    font-size: 9px;
    color: rgba(255,255,255,.78);
}

.newsroom-media-fallback--card {
    background: #eef5f1;
    color: #0f6a43;
}

.newsroom-media-fallback--card img {
    width: 64px;
    height: 64px;
}

.newsroom-media-fallback--card strong {
    font-size: 12px;
    letter-spacing: .08em;
}

.newsroom-featured__media.is-brand .newsroom-cover,.newsroom-card__media.is-brand .newsroom-cover,.newsroom-featured__media.image-failed .newsroom-cover,.newsroom-card__media.image-failed .newsroom-cover {
    display: none;
}

.newsroom-photo-badge {
    position: absolute;
    z-index: 4;
    right: 12px;
    bottom: 12px;
    background: rgba(15,45,29,.84);
    color: #fff;
    border-radius: 8px;
    padding: 6px 8px;
    font-size: 8px;
    font-weight: 800;
}

.newsroom-featured__body {
    padding: 38px 42px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.newsroom-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.newsroom-meta span {
    color: #0f6a43;
    font-size: 8.5px;
    font-weight: 900;
    letter-spacing: .1em;
}

.newsroom-meta time {
    color: #8a9690;
    font-size: 8.5px;
}

.newsroom-featured h2 {
    font-family: Manrope,Inter,sans-serif;
    font-size: clamp(27px,2.6vw,37px);
    line-height: 1.1;
    letter-spacing: -.035em;
    margin: 0 0 13px;
}

.newsroom-featured__body>p {
    margin: 0 0 18px;
    color: #65746c;
    font-size: 12px;
    line-height: 1.75;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.newsroom-read {
    border: 0;
    background: transparent;
    color: #0f6a43;
    padding: 0;
    font: inherit;
    font-size: 10px;
    font-weight: 850;
    cursor: pointer;
    width: max-content;
}

.newsroom-read span {
    margin-left: 4px;
}

.newsroom-read:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.newsroom-section-heading--stories {
    margin-bottom: 17px;
}

.newsroom-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px;
}

.newsroom-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #dde6e1;
    border-radius: 16px;
    overflow: hidden;
    min-width: 0;
    transition: .18s ease;
    box-shadow: 0 4px 18px rgba(12,55,33,.025);
}

.newsroom-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(12,55,33,.06);
    border-color: #cbdad2;
}

.newsroom-card__media {
    height: 185px;
    border-bottom: 1px solid #e5ece8;
}

.newsroom-card__body {
    padding: 19px 20px 20px;
    display: flex;
    flex-direction: column;
    min-width: 0;
    flex: 1;
}

.newsroom-card h3 {
    font-family: Manrope,Inter,sans-serif;
    font-size: 17px;
    line-height: 1.28;
    letter-spacing: -.022em;
    margin: 0 0 8px;
}

.newsroom-card__body>p {
    margin: 0 0 13px;
    color: #6b7971;
    font-size: 10.5px;
    line-height: 1.65;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.newsroom-card .newsroom-read {
    margin-top: auto;
}

.newsroom-full {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #e8eeea;
}

.newsroom-story-text {
    font-size: 11.5px;
    line-height: 1.8;
    color: #56665d;
}

.newsroom-gallery {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 8px;
    margin-top: 16px;
}

.newsroom-gallery .gallery-item {
    aspect-ratio: 4/3;
    border: 0;
    border-radius: 9px;
    overflow: hidden;
    padding: 0;
    background: #edf2ef;
    cursor: zoom-in;
}

.newsroom-gallery .gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.newsroom-card .newsroom-full {
    margin-top: 15px;
}

.newsroom-card .newsroom-gallery {
    grid-template-columns: repeat(2,minmax(0,1fr));
}

.newsroom-empty {
    padding: 48px 22px;
    text-align: center;
    background: #fff;
    border: 1px dashed #cad7cf;
    border-radius: 14px;
    color: #68766e;
    font-size: 12px;
}

.news-entry[hidden] {
    display: none !important;
}

.news-footer {
    margin-top: 0;
}

@media (max-width:1040px) {
    .newsroom-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .newsroom-featured {
        grid-template-columns: 330px minmax(0,1fr);
    }
}

@media (max-width:820px) {
    .newsroom-hero__inner {
        align-items: flex-start;
    }
    .newsroom-hero__stat {
        display: none;
    }
    .newsroom-toolbar {
        grid-template-columns: 1fr;
    }
    .newsroom-filter-group {
        justify-content: space-between;
    }
    .newsroom-featured {
        grid-template-columns: 1fr;
    }
    .newsroom-featured__media {
        min-height: 300px;
    }
    .newsroom-featured__body {
        padding: 30px;
    }
    .newsroom-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width:620px) {
    .newsroom-v3-page .container {
        width: min(100% - 24px,1240px);
    }
    .newsroom-hero {
        padding: 34px 0 30px;
    }
    .newsroom-hero h1 {
        font-size: 40px;
    }
    .newsroom-content {
        padding-top: 20px;
    }
    .newsroom-filter-group {
        align-items: flex-start;
        flex-direction: column;
    }
    .newsroom-filters {
        overflow-x: auto;
        width: 100%;
        padding-bottom: 2px;
    }
    .newsroom-filters button {
        flex: 0 0 auto;
    }
    .newsroom-grid {
        grid-template-columns: 1fr;
    }
    .newsroom-featured__media {
        min-height: 250px;
    }
    .newsroom-featured__body {
        padding: 24px;
    }
    .newsroom-card__media {
        height: 220px;
    }
    .newsroom-section-heading h2 {
        font-size: 25px;
    }
    .newsroom-section-count {
        display: none;
    }
    .newsroom-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

/* ===== Newsroom V4: orientation-aware publication image frames ===== */

.newsroom-featured__media,.newsroom-card__media {
    background: #f2f5f3;
}

.newsroom-cover {
    transition: opacity .15s ease;
}

/* Portrait / square posters: keep the whole artwork visible in a compact tall frame. */

.newsroom-featured__media.media-portrait,
.newsroom-featured__media.media-square {
    min-height: 430px;
    padding: 18px;
}

.newsroom-featured__media.media-portrait .newsroom-cover,
.newsroom-featured__media.media-square .newsroom-cover {
    width: auto;
    height: auto;
    max-width: 390px;
    max-height: 405px;
    padding: 0;
    object-fit: contain;
    background: transparent;
    margin: auto;
}

.newsroom-featured:has(.media-portrait),
.newsroom-featured:has(.media-square) {
    grid-template-columns: minmax(390px, .82fr) minmax(0,1.18fr);
}

.newsroom-card__media.media-portrait,
.newsroom-card__media.media-square {
    height: 260px;
    padding: 12px;
}

.newsroom-card__media.media-portrait .newsroom-cover,
.newsroom-card__media.media-square .newsroom-cover {
    width: auto;
    height: auto;
    max-width: 78%;
    max-height: 236px;
    padding: 0;
    object-fit: contain;
    background: transparent;
    margin: auto;
}

/* Landscape photos: use the available width but never crop the photograph. */

.newsroom-featured__media.media-landscape {
    min-height: 360px;
    padding: 10px;
}

.newsroom-featured__media.media-landscape .newsroom-cover {
    width: 100%;
    height: 100%;
    max-height: 410px;
    padding: 0;
    object-fit: contain;
    background: transparent;
}

.newsroom-card__media.media-landscape {
    height: 205px;
    padding: 8px;
}

.newsroom-card__media.media-landscape .newsroom-cover {
    width: 100%;
    height: 100%;
    padding: 0;
    object-fit: contain;
    background: transparent;
}

/* Very wide images retain the full frame instead of being cropped. */

.newsroom-featured__media.media-wide .newsroom-cover,
.newsroom-card__media.media-wide .newsroom-cover {
    object-fit: contain;
}

@media (max-width:820px) {
    .newsroom-featured:has(.media-portrait),.newsroom-featured:has(.media-square) {
        grid-template-columns: 1fr;
    }
    .newsroom-featured__media.media-portrait,.newsroom-featured__media.media-square {
        min-height: 360px;
    }
    .newsroom-featured__media.media-portrait .newsroom-cover,.newsroom-featured__media.media-square .newsroom-cover {
        max-height: 335px;
        max-width: min(82%,390px);
    }
}

@media (max-width:620px) {
    .newsroom-card__media.media-portrait,.newsroom-card__media.media-square {
        height: 235px;
    }
    .newsroom-card__media.media-portrait .newsroom-cover,.newsroom-card__media.media-square .newsroom-cover {
        max-height: 215px;
        max-width: 82%;
    }
    .newsroom-card__media.media-landscape {
        height: 210px;
    }
}

/* ===== Newsroom V5: intrinsic images + balanced masonry cards ===== */

/* Images use their real aspect ratio. No fixed frame, no letterboxing, no crop. */

.newsroom-featured__media,
.newsroom-card__media,
.newsroom-featured__media.media-portrait,
.newsroom-featured__media.media-square,
.newsroom-featured__media.media-landscape,
.newsroom-card__media.media-portrait,
.newsroom-card__media.media-square,
.newsroom-card__media.media-landscape {
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    display: block !important;
    overflow: hidden;
}

.newsroom-featured__media .newsroom-cover,
.newsroom-card__media .newsroom-cover,
.newsroom-featured__media.media-portrait .newsroom-cover,
.newsroom-featured__media.media-square .newsroom-cover,
.newsroom-featured__media.media-landscape .newsroom-cover,
.newsroom-card__media.media-portrait .newsroom-cover,
.newsroom-card__media.media-square .newsroom-cover,
.newsroom-card__media.media-landscape .newsroom-cover {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: initial !important;
    background: transparent !important;
}

/* Featured story remains editorial but lets the image determine the height. */

.newsroom-featured,
.newsroom-featured:has(.media-portrait),
.newsroom-featured:has(.media-square) {
    grid-template-columns: minmax(320px,.88fr) minmax(0,1.12fr) !important;
    min-height: 0 !important;
    align-items: stretch;
}

.newsroom-featured__media {
    align-self: stretch;
    background: #fff !important;
}

.newsroom-featured__body {
    min-height: 100%;
    justify-content: center;
}

/* No-image featured fallback is intentionally compact instead of mimicking a photo. */

.newsroom-featured__media.is-brand,
.newsroom-featured__media.image-failed {
    min-height: 300px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg,#0b5133,#177548) !important;
}

/* Masonry-style publication wall: variable image ratios pack naturally without row gaps. */

.newsroom-grid {
    display: block !important;
    column-count: 3;
    column-gap: 18px;
}

.newsroom-card {
    display: inline-flex !important;
    width: 100%;
    margin: 0 0 18px;
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    vertical-align: top;
}

/* Cards without a cover become compact branded information cards, not fake image cards. */

.newsroom-card__media.is-brand,
.newsroom-card__media.image-failed {
    height: auto !important;
    min-height: 88px !important;
    padding: 16px 20px !important;
    background: #f2f7f4 !important;
    border-bottom: 1px solid #e5ece8;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
}

.newsroom-card__media.is-brand .newsroom-media-fallback,
.newsroom-card__media.image-failed .newsroom-media-fallback {
    position: static;
    inset: auto;
    width: 100%;
    padding: 0;
    flex-direction: row;
    justify-content: flex-start;
    gap: 11px;
    background: transparent;
    color: #0f6a43;
    text-align: left;
}

.newsroom-card__media.is-brand .newsroom-media-fallback img,
.newsroom-card__media.image-failed .newsroom-media-fallback img {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    margin: 0;
    padding: 2px;
}

.newsroom-card__media.is-brand .newsroom-media-fallback strong,
.newsroom-card__media.image-failed .newsroom-media-fallback strong {
    font-size: 11px;
    letter-spacing: .09em;
}

.newsroom-card__media:not(.is-brand):not(.image-failed) .newsroom-media-fallback,
.newsroom-featured__media:not(.is-brand):not(.image-failed) .newsroom-media-fallback {
    display: none;
}

/* Keep article bodies compact so text-only cards don't look empty. */

.newsroom-card__body {
    padding: 17px 18px 19px !important;
    min-height: 0 !important;
}

.newsroom-card h3 {
    margin-bottom: 7px;
}

.newsroom-card__body>p {
    margin-bottom: 11px;
    -webkit-line-clamp: 2;
}

.newsroom-card .newsroom-read {
    margin-top: 4px;
}

@media (max-width:1040px) {
    .newsroom-grid {
        column-count: 2;
    }
    .newsroom-featured,.newsroom-featured:has(.media-portrait),.newsroom-featured:has(.media-square) {
        grid-template-columns: minmax(290px,.85fr) minmax(0,1.15fr) !important;
    }
}

@media (max-width:820px) {
    .newsroom-featured,.newsroom-featured:has(.media-portrait),.newsroom-featured:has(.media-square) {
        grid-template-columns: 1fr !important;
    }
    .newsroom-featured__media.is-brand,.newsroom-featured__media.image-failed {
        min-height: 220px !important;
    }
}

@media (max-width:620px) {
    .newsroom-grid {
        column-count: 1;
    }
    .newsroom-card {
        margin-bottom: 14px;
    }
}

/* ===== Newsroom V6: balanced editorial grid + full-image media stages ===== */

/* This layer intentionally replaces the masonry treatment above. */

.newsroom-v3-page .container {
    width: min(1320px,calc(100% - 52px));
}

.newsroom-content {
    padding: 26px 0 64px;
}

.newsroom-toolbar {
    margin-bottom: 30px;
}

.newsroom-featured {
    grid-template-columns: minmax(430px,.95fr) minmax(0,1.05fr) !important;
    min-height: 390px !important;
    margin-bottom: 42px;
}

.newsroom-featured__media,
.newsroom-featured__media.media-portrait,
.newsroom-featured__media.media-square,
.newsroom-featured__media.media-landscape,
.newsroom-featured__media.media-wide {
    position: relative !important;
    min-height: 390px !important;
    height: 390px !important;
    padding: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #eaf1ed !important;
    isolation: isolate;
}

.newsroom-featured__media.has-cover::before,
.newsroom-card__media.has-cover::before {
    content: "";
    position: absolute;
    inset: -18px;
    z-index: 0;
    background-image: var(--media-image);
    background-size: cover;
    background-position: center;
    filter: blur(18px) saturate(.78);
    transform: scale(1.08);
    opacity: .34;
}

.newsroom-featured__media.has-cover::after,
.newsroom-card__media.has-cover::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg,rgba(247,250,248,.45),rgba(235,243,239,.68));
}

.newsroom-featured__media .newsroom-cover,
.newsroom-featured__media.media-portrait .newsroom-cover,
.newsroom-featured__media.media-square .newsroom-cover,
.newsroom-featured__media.media-landscape .newsroom-cover,
.newsroom-featured__media.media-wide .newsroom-cover {
    position: relative !important;
    z-index: 2 !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 350px !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: auto !important;
    background: transparent !important;
    box-shadow: 0 10px 24px rgba(11,60,37,.08);
}

.newsroom-featured__body {
    padding: 38px 42px;
    min-height: 390px;
    justify-content: center;
}

.newsroom-featured h2 {
    font-size: clamp(28px,2.4vw,38px);
    max-width: 720px;
}

.newsroom-featured__body>p {
    max-width: 720px;
    -webkit-line-clamp: 4;
}

/* Uniform editorial card grid. */

.newsroom-grid {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 20px !important;
    column-count: initial !important;
    column-gap: initial !important;
    align-items: stretch;
}

.newsroom-card {
    display: flex !important;
    width: auto !important;
    margin: 0 !important;
    min-height: 100%;
    break-inside: auto !important;
    -webkit-column-break-inside: auto !important;
    border-radius: 16px;
}

.newsroom-card__media,
.newsroom-card__media.media-portrait,
.newsroom-card__media.media-square,
.newsroom-card__media.media-landscape,
.newsroom-card__media.media-wide {
    position: relative !important;
    width: 100% !important;
    height: 230px !important;
    min-height: 230px !important;
    padding: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: #edf4f0 !important;
    isolation: isolate;
    border-bottom: 1px solid #e1e9e4;
}

.newsroom-card__media .newsroom-cover,
.newsroom-card__media.media-portrait .newsroom-cover,
.newsroom-card__media.media-square .newsroom-cover,
.newsroom-card__media.media-landscape .newsroom-cover,
.newsroom-card__media.media-wide .newsroom-cover {
    position: relative !important;
    z-index: 2 !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 202px !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: auto !important;
    background: transparent !important;
    box-shadow: 0 5px 16px rgba(11,60,37,.07);
}

.newsroom-card__media.media-landscape .newsroom-cover,
.newsroom-card__media.media-wide .newsroom-cover {
    max-width: 100% !important;
    max-height: 202px !important;
}

.newsroom-card__media.media-portrait .newsroom-cover {
    max-width: 78% !important;
    max-height: 202px !important;
}

.newsroom-card__media.media-square .newsroom-cover {
    max-width: 84% !important;
    max-height: 202px !important;
}

.newsroom-card__media.is-brand,
.newsroom-card__media.image-failed {
    height: 230px !important;
    min-height: 230px !important;
    padding: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(145deg,#eef6f1,#e5f0ea) !important;
}

.newsroom-card__media.is-brand .newsroom-media-fallback,
.newsroom-card__media.image-failed .newsroom-media-fallback {
    position: relative !important;
    z-index: 2;
    width: auto !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 10px !important;
    text-align: center !important;
}

.newsroom-card__media.is-brand .newsroom-media-fallback img,
.newsroom-card__media.image-failed .newsroom-media-fallback img {
    width: 72px;
    height: 72px;
    flex: 0 0 72px;
}

.newsroom-card__media.is-brand .newsroom-media-fallback strong,
.newsroom-card__media.image-failed .newsroom-media-fallback strong {
    font-size: 12px;
}

.newsroom-card__body {
    padding: 18px 20px 20px !important;
    min-height: 190px !important;
    display: flex !important;
    flex-direction: column !important;
}

.newsroom-card h3 {
    font-size: 17px;
    line-height: 1.3;
    min-height: 44px;
    margin-bottom: 8px;
}

.newsroom-card__body>p {
    font-size: 10.5px;
    line-height: 1.6;
    min-height: 34px;
    margin-bottom: 12px;
    -webkit-line-clamp: 2;
}

.newsroom-card .newsroom-read {
    margin-top: auto;
}

.newsroom-photo-badge {
    z-index: 5;
}

/* Slightly cleaner hierarchy and density. */

.newsroom-section-heading--stories {
    margin-top: 0;
    margin-bottom: 15px;
}

.newsroom-section-heading--stories h2 {
    font-size: 27px;
}

.newsroom-meta {
    margin-bottom: 9px;
}

.newsroom-meta span,.newsroom-meta time {
    font-size: 8px;
}

@media (max-width:1080px) {
    .newsroom-grid {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }
    .newsroom-featured {
        grid-template-columns: minmax(360px,.9fr) minmax(0,1.1fr) !important;
    }
}

@media (max-width:820px) {
    .newsroom-featured {
        grid-template-columns: 1fr !important;
    }
    .newsroom-featured__media,.newsroom-featured__media.media-portrait,.newsroom-featured__media.media-square,.newsroom-featured__media.media-landscape {
        height: 340px !important;
        min-height: 340px !important;
    }
    .newsroom-featured__media .newsroom-cover {
        max-height: 300px !important;
    }
    .newsroom-featured__body {
        min-height: 0;
        padding: 28px 30px;
    }
}

@media (max-width:680px) {
    .newsroom-v3-page .container {
        width: min(100% - 24px,1320px);
    }
    .newsroom-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
    .newsroom-card__media,.newsroom-card__media.media-portrait,.newsroom-card__media.media-square,.newsroom-card__media.media-landscape {
        height: 240px !important;
        min-height: 240px !important;
    }
    .newsroom-card__media .newsroom-cover {
        max-height: 212px !important;
    }
    .newsroom-card h3 {
        min-height: 0;
    }
    .newsroom-card__body>p {
        min-height: 0;
    }
}

/* ===== Newsroom toolbar refinement: unified search + campus filters ===== */

.newsroom-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 22px !important;
    margin: 0 0 34px !important;
    padding: 12px 14px !important;
    background: #fff !important;
    border: 1px solid #dfe7e2 !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(12,55,33,.035) !important;
}

.newsroom-search {
    flex: 0 1 430px !important;
    width: auto !important;
    min-width: 280px !important;
    height: 46px !important;
    border: 1px solid #d7e2dc !important;
    border-radius: 11px !important;
    background: #fbfcfb !important;
    box-shadow: none !important;
    padding: 0 14px !important;
}

.newsroom-search:focus-within {
    border-color: #8db7a1 !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(15,99,63,.07) !important;
}

.newsroom-search__icon {
    width: 20px !important;
    height: 20px !important;
    display: grid !important;
    place-items: center !important;
    color: #0f633f !important;
    font-size: 16px !important;
    flex: 0 0 20px !important;
}

.newsroom-search input {
    font-size: 11px !important;
    font-weight: 500 !important;
}

.newsroom-search input::placeholder {
    color: #74827a !important;
    opacity: 1 !important;
}

.newsroom-filter-group {
    flex: 1 1 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    min-width: 0 !important;
}

.newsroom-filter-group>span {
    font-size: 8.5px !important;
    font-weight: 900 !important;
    letter-spacing: .15em !important;
    color: #66766d !important;
    white-space: nowrap !important;
}

.newsroom-filters {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: nowrap !important;
}

.newsroom-filters button {
    min-width: 48px !important;
    height: 38px !important;
    padding: 0 13px !important;
    border-radius: 10px !important;
    border: 1px solid #d6e0da !important;
    background: #fff !important;
    color: #44534b !important;
    font-size: 9px !important;
    font-weight: 850 !important;
    box-shadow: none !important;
}

.newsroom-filters button:hover {
    background: #f2f7f4 !important;
    border-color: #a9c4b5 !important;
    color: #0f633f !important;
    transform: translateY(-1px);
}

.newsroom-filters button.active {
    background: #0f633f !important;
    border-color: #0f633f !important;
    color: #fff !important;
    box-shadow: 0 6px 14px rgba(15,99,63,.14) !important;
}

@media (max-width:920px) {
    .newsroom-toolbar {
        align-items: stretch !important;
        flex-direction: column !important;
        gap: 12px !important;
        padding: 12px !important;
    }
    .newsroom-search {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: 0 0 auto !important;
    }
    .newsroom-filter-group {
        width: 100% !important;
        justify-content: space-between !important;
    }
}

@media (max-width:620px) {
    .newsroom-toolbar {
        border-radius: 14px !important;
        margin-bottom: 26px !important;
    }
    .newsroom-filter-group {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 8px !important;
    }
    .newsroom-filters {
        width: 100% !important;
        overflow-x: auto !important;
        padding-bottom: 2px !important;
    }
    .newsroom-filters button {
        flex: 0 0 auto !important;
        min-width: 48px !important;
    }
}

/* ===== Newsroom V7: compact featured presentation ===== */

.newsroom-featured-wrap .newsroom-section-heading {
    margin-bottom: 14px;
    min-height: 0;
    align-items: center;
}

.newsroom-featured-wrap .newsroom-section-heading>div {
    display: flex;
    align-items: center;
}

.newsroom-featured-wrap .newsroom-section-heading>div>span {
    font-size: 10px;
    letter-spacing: .16em;
    line-height: 1;
}

.newsroom-featured {
    grid-template-columns: minmax(380px,.82fr) minmax(0,1.18fr) !important;
    min-height: 330px !important;
    margin-bottom: 36px !important;
}

.newsroom-featured__media,
.newsroom-featured__media.media-portrait,
.newsroom-featured__media.media-square,
.newsroom-featured__media.media-landscape,
.newsroom-featured__media.media-wide {
    height: 330px !important;
    min-height: 330px !important;
    padding: 16px !important;
}

.newsroom-featured__media .newsroom-cover,
.newsroom-featured__media.media-portrait .newsroom-cover,
.newsroom-featured__media.media-square .newsroom-cover,
.newsroom-featured__media.media-landscape .newsroom-cover,
.newsroom-featured__media.media-wide .newsroom-cover {
    max-height: 298px !important;
}

.newsroom-featured__body {
    min-height: 330px !important;
    padding: 30px 38px !important;
}

.newsroom-featured h2 {
    font-size: clamp(26px,2.1vw,34px) !important;
    line-height: 1.08;
}

.newsroom-featured__body>p {
    font-size: 11.5px;
    line-height: 1.7;
    -webkit-line-clamp: 3;
}

@media (max-width:1040px) {
    .newsroom-featured {
        grid-template-columns: minmax(330px,.88fr) minmax(0,1.12fr) !important;
    }
}

@media (max-width:820px) {
    .newsroom-featured {
        grid-template-columns: 1fr !important;
    }
    .newsroom-featured__media,.newsroom-featured__media.media-portrait,.newsroom-featured__media.media-square,.newsroom-featured__media.media-landscape,.newsroom-featured__media.media-wide {
        height: 300px !important;
        min-height: 300px !important;
    }
    .newsroom-featured__media .newsroom-cover {
        max-height: 270px !important;
    }
    .newsroom-featured__body {
        min-height: 0 !important;
        padding: 26px 28px !important;
    }
}

/* ===== Newsroom pagination: compact 6-story pages ===== */

.newsroom-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 28px 0 0;
    padding-top: 20px;
    border-top: 1px solid #e3eae6;
}

.newsroom-pagination[hidden] {
    display: none !important;
}

.newsroom-page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.newsroom-page-btn {
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8e3dd;
    border-radius: 10px;
    background: #fff;
    color: #315044;
    font: 800 9px Inter,sans-serif;
    cursor: pointer;
    transition: .16s ease;
}

.newsroom-page-btn:hover:not(:disabled) {
    border-color: #9abaaa;
    background: #f3f8f5;
    color: #0f633f;
}

.newsroom-page-btn.is-active {
    background: #0f633f;
    border-color: #0f633f;
    color: #fff;
    box-shadow: 0 5px 12px rgba(15,99,63,.14);
}

.newsroom-page-btn:disabled {
    opacity: .42;
    cursor: not-allowed;
}

.newsroom-page-nav {
    min-width: 92px;
}

.newsroom-page-dots {
    width: 20px;
    text-align: center;
    color: #849189;
    font-size: 11px;
    font-weight: 800;
}

@media (max-width:620px) {
    .newsroom-pagination {
        gap: 6px;
        margin-top: 22px;
        padding-top: 16px;
    }
    .newsroom-page-btn {
        min-width: 34px;
        height: 34px;
        padding: 0 8px;
    }
    .newsroom-page-nav {
        min-width: auto;
    }
}

/* ===== Newsroom pagination: final single-row alignment fix ===== */

.newsroom-stories .newsroom-pagination {
    display: grid !important;
    grid-template-columns: max-content max-content max-content !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: center !important;
    column-gap: 8px !important;
    row-gap: 0 !important;
    width: 100% !important;
    margin: 26px 0 0 !important;
    padding: 18px 0 0 !important;
    border-top: 1px solid #e3eae6 !important;
    flex-wrap: nowrap !important;
}

.newsroom-stories .newsroom-pagination[hidden] {
    display: none !important;
}

.newsroom-stories .newsroom-page-numbers {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.newsroom-stories .newsroom-page-btn,
.newsroom-stories .newsroom-page-nav {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 36px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    position: static !important;
    float: none !important;
}

.newsroom-stories .newsroom-page-nav {
    min-width: 88px !important;
}

.newsroom-stories #newsPrev {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

.newsroom-stories #newsPageNumbers {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

.newsroom-stories #newsNext {
    grid-column: 3 !important;
    grid-row: 1 !important;
}

@media (max-width:620px) {
    .newsroom-stories .newsroom-pagination {
        grid-template-columns: max-content max-content max-content !important;
        column-gap: 5px !important;
        overflow-x: auto !important;
        justify-content: center !important;
    }
    .newsroom-stories .newsroom-page-btn,
    .newsroom-stories .newsroom-page-nav {
        min-width: 32px !important;
        height: 32px !important;
        padding: 0 8px !important;
    }
    .newsroom-stories .newsroom-page-nav {
        min-width: auto !important;
    }
}

/* ===== Newsroom pagination: match Home pagination ===== */

.newsroom-stories .newsroom-pagination {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 26px auto 0 !important;
    padding: 0 !important;
    border-top: 0 !important;
    flex-wrap: nowrap !important;
}

.newsroom-stories .newsroom-pagination[hidden] {
    display: none !important;
}

.newsroom-stories .newsroom-page-numbers {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.newsroom-stories .newsroom-page-btn {
    height: 39px !important;
    min-width: 39px !important;
    width: auto !important;
    padding: 0 12px !important;
    margin: 0 !important;
    border: 1px solid #dbe4de !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #425048 !important;
    box-shadow: none !important;
    font: 800 10px Inter,sans-serif !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.newsroom-stories .newsroom-page-numbers .newsroom-page-btn {
    width: 39px !important;
    padding: 0 !important;
}

.newsroom-stories .newsroom-page-btn.is-active {
    background: #0f6b49 !important;
    border-color: #0f6b49 !important;
    color: #fff !important;
}

.newsroom-stories .newsroom-page-btn:hover:not(:disabled):not(.is-active) {
    background: #f4f8f5 !important;
    border-color: #cbd9d1 !important;
}

.newsroom-stories .newsroom-page-nav {
    min-width: 0 !important;
    padding: 0 14px !important;
}

.newsroom-stories .newsroom-page-btn[hidden] {
    display: none !important;
}

@media (max-width:620px) {
    .newsroom-stories .newsroom-pagination {
        gap: 6px !important;
        margin-top: 22px !important;
    }
    .newsroom-stories .newsroom-page-btn {
        height: 35px !important;
        min-width: 35px !important;
        font-size: 9px !important;
    }
    .newsroom-stories .newsroom-page-numbers .newsroom-page-btn {
        width: 35px !important;
    }
    .newsroom-stories .newsroom-page-nav {
        padding: 0 11px !important;
    }
}

/* Newsroom pagination balance — equal Previous / Next sizing */

.newsroom-pagination {
    gap: 8px;
}

.newsroom-page-btn {
    box-sizing: border-box;
    min-width: 38px;
    width: 38px;
    height: 38px;
    padding: 0;
    border-radius: 9px;
}

.newsroom-page-nav {
    width: 88px;
    min-width: 88px;
    padding: 0 12px;
    white-space: nowrap;
}

.newsroom-page-numbers {
    gap: 6px;
}

@media (max-width:620px) {
    .newsroom-page-btn {
        width: 36px;
        min-width: 36px;
        height: 36px;
    }
    .newsroom-page-nav {
        width: 82px;
        min-width: 82px;
        padding: 0 9px;
    }
}

.newsroom-filters .news-filter {
    text-decoration: none;
}

.newsroom-search button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 58px !important;
    height: 34px !important;
    padding: 0 10px !important;
    border-radius: 8px !important;
    background: #edf4f0 !important;
    color: #145f3f !important;
    font-size: 9px !important;
    font-weight: 850 !important;
}

#newsSearchClear {
    display: inline-grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    text-decoration: none;
    color: #64756c;
    font-size: 18px;
    flex: 0 0 28px;
}

#newsSearchClear:hover {
    background: #edf4f0;
    color: #145f3f;
}

.newsroom-v3-page :where(a,button,input,select,textarea):focus-visible {
    outline: 3px solid rgba(15,99,63,.25);
    outline-offset: 2px;
}

@media (prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto !important;
    }
    .newsroom-v3-page * {
        transition: none !important;
        animation: none !important;
    }
    .newsroom-filters .news-filter:hover {
        transform: none !important;
    }
}

/* ===== Newsroom toolbar: restored classic search + separate campus buttons ===== */

.newsroom-v3-page .newsroom-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    margin: 0 0 34px !important;
    padding: 12px 14px !important;
    background: #fff !important;
    border: 1px solid #dfe7e2 !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(12,55,33,.035) !important;
}

.newsroom-v3-page .newsroom-search {
    flex: 0 1 430px !important;
    width: 430px !important;
    max-width: 430px !important;
    min-width: 280px !important;
    height: 46px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 10px 0 14px !important;
    border: 1px solid #d7e2dc !important;
    border-radius: 11px !important;
    background: #fbfcfb !important;
    box-shadow: none !important;
}

.newsroom-v3-page .newsroom-search:focus-within {
    border-color: #8db7a1 !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(15,99,63,.07) !important;
}

.newsroom-v3-page .newsroom-search__icon {
    width: 20px !important;
    height: 20px !important;
    display: grid !important;
    place-items: center !important;
    color: #0f633f !important;
    font-size: 16px !important;
    flex: 0 0 20px !important;
}

.newsroom-v3-page .newsroom-search input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    color: #39463f !important;
}

.newsroom-v3-page .newsroom-search input::placeholder {
    color: #74827a !important;
    opacity: 1 !important;
}

.newsroom-v3-page .newsroom-search button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    min-width: 58px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #edf4f0 !important;
    color: #145f3f !important;
    font-size: 9px !important;
    font-weight: 850 !important;
    cursor: pointer !important;
}

.newsroom-v3-page .newsroom-search button:hover {
    background: #e3eee8 !important;
    color: #0f633f !important;
}

.newsroom-v3-page #newsSearchClear {
    flex: 0 0 28px !important;
    width: 28px !important;
    height: 28px !important;
    display: inline-grid !important;
    place-items: center !important;
    margin: 0 !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    color: #64756c !important;
    font-size: 18px !important;
}

.newsroom-v3-page .newsroom-filter-group {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    min-width: 0 !important;
    min-height: 46px !important;
}

.newsroom-v3-page .newsroom-filter-group>span {
    display: inline-flex !important;
    align-items: center !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #66766d !important;
    font-size: 8.5px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.newsroom-v3-page .newsroom-filters {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.newsroom-v3-page .newsroom-filters .news-filter {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    min-width: 55px !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border: 1px solid #d6e0da !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #44534b !important;
    box-shadow: none !important;
    font-size: 9px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transform: none !important;
    transition: background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease !important;
}

.newsroom-v3-page .newsroom-filters .news-filter:hover {
    background: #f2f7f4 !important;
    border-color: #a9c4b5 !important;
    color: #0f633f !important;
    transform: translateY(-1px) !important;
}

.newsroom-v3-page .newsroom-filters .news-filter.active,
.newsroom-v3-page .newsroom-filters .news-filter[aria-current="page"] {
    background: #0f633f !important;
    border-color: #0f633f !important;
    color: #fff !important;
    box-shadow: 0 6px 14px rgba(15,99,63,.14) !important;
}

.newsroom-v3-page .newsroom-filters .news-filter:focus-visible {
    outline: 3px solid rgba(15,99,63,.20) !important;
    outline-offset: 2px !important;
}

@media (max-width:920px) {
    .newsroom-v3-page .newsroom-toolbar {
        align-items: stretch !important;
        flex-direction: column !important;
        gap: 12px !important;
        padding: 12px !important;
    }
    .newsroom-v3-page .newsroom-search {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: 0 0 auto !important;
    }
    .newsroom-v3-page .newsroom-filter-group {
        width: 100% !important;
        justify-content: space-between !important;
    }
}

@media (max-width:620px) {
    .newsroom-v3-page .newsroom-toolbar {
        border-radius: 14px !important;
        margin-bottom: 26px !important;
    }
    .newsroom-v3-page .newsroom-filter-group {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 8px !important;
        min-height: 0 !important;
    }
    .newsroom-v3-page .newsroom-filter-group>span {
        height: 24px !important;
    }
    .newsroom-v3-page .newsroom-filters {
        width: 100% !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
        padding-bottom: 2px !important;
        scrollbar-width: none !important;
    }
    .newsroom-v3-page .newsroom-filters::-webkit-scrollbar {
        display: none !important;
    }
    .newsroom-v3-page .newsroom-filters .news-filter {
        min-width: 54px !important;
    }
}

/* Newsroom: clickable story titles */
.newsroom-title-link {
    color: inherit;
    text-decoration: none;
    transition: color .16s ease;
}

.newsroom-title-link:hover {
    color: #0b6b47;
}

.newsroom-title-link:focus-visible {
    outline: 2px solid rgba(11, 107, 71, .35);
    outline-offset: 3px;
    border-radius: 3px;
}

/* ===== Newsroom video story previews =====
Video-only enhancement: video publications use a real frame instead of the
generic USC placeholder while remaining lightweight and non-autoplaying. */
.newsroom-featured__media.has-video,
.newsroom-card__media.has-video {
    background: #0c1511 !important;
}

.newsroom-video-preview {
    position: relative;
    z-index: 3;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 10px;
    background: #0c1511;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 6px 18px rgba(6, 28, 18, .12);
}

.newsroom-video-preview video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #0c1511;
}

.newsroom-video-preview.is-video-portrait video,
.newsroom-video-preview.is-video-square video {
    object-fit: contain;
}

.newsroom-video-preview::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 48%, rgba(4, 20, 13, .32));
    pointer-events: none;
}

.newsroom-video-play {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 4;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    transform: translate(-50%, -50%);
    border: 1px solid rgba(255,255,255,.48);
    border-radius: 50%;
    background: rgba(5, 29, 18, .78);
    color: #fff;
    font-size: 16px;
    line-height: 1;
    padding-left: 2px;
    pointer-events: none;
    box-shadow: 0 7px 22px rgba(0,0,0,.22);
}

.newsroom-video-chip,
.newsroom-video-badge {
    position: absolute;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 999px;
    background: rgba(7, 43, 27, .88);
    color: #fff;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
    backdrop-filter: blur(6px);
}

.newsroom-video-chip {
    left: 10px;
    bottom: 10px;
    padding: 6px 9px;
}

.newsroom-video-badge {
    right: 10px;
    bottom: 10px;
    padding: 6px 9px;
}

.newsroom-featured__media .newsroom-video-preview {
    border-radius: 12px;
}

.newsroom-featured__media .newsroom-video-play {
    width: 58px;
    height: 58px;
    font-size: 19px;
}

@media (max-width: 680px) {
    .newsroom-video-play {
        width: 44px;
        height: 44px;
        font-size: 15px;
    }
}

/* ===== Newsroom search focus cleanup (v32) ===== */
.newsroom-v3-page .newsroom-search {
    cursor: text !important;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}

.newsroom-v3-page .newsroom-search:focus-within {
    border-color: #14704c !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(20,112,76,.12) !important;
}

.newsroom-v3-page .newsroom-search input,
.newsroom-v3-page .newsroom-search input:focus,
.newsroom-v3-page .newsroom-search input:focus-visible {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.newsroom-v3-page .newsroom-search__icon {
    position: relative !important;
    width: 15px !important;
    height: 15px !important;
    flex: 0 0 15px !important;
    font-size: 0 !important;
    color: #174f37 !important;
}

.newsroom-v3-page .newsroom-search__icon::before {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    left: 1px;
    top: 1px;
    border: 1.6px solid currentColor;
    border-radius: 50%;
}

.newsroom-v3-page .newsroom-search__icon::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 1.6px;
    left: 8px;
    top: 9px;
    border-radius: 999px;
    background: currentColor;
    transform: rotate(45deg);
    transform-origin: left center;
}

/* ===== Newsroom mobile refinement v45 =====
Compact the mobile newsroom without changing desktop/tablet structure. */
@media (max-width: 620px) {
    .newsroom-v3-page .newsroom-hero {
        padding: 26px 0 24px !important;
    }

    .newsroom-v3-page .newsroom-kicker {
        font-size: 8px !important;
        letter-spacing: .16em !important;
    }

    .newsroom-v3-page .newsroom-hero h1 {
        margin: 7px 0 10px !important;
        font-size: clamp(34px, 10vw, 38px) !important;
        line-height: .99 !important;
        letter-spacing: -.04em !important;
    }

    .newsroom-v3-page .newsroom-hero p {
        max-width: 34ch !important;
        font-size: 13px !important;
        line-height: 1.55 !important;
    }

    .newsroom-v3-page .newsroom-content {
        padding: 18px 0 52px !important;
    }

    .newsroom-v3-page .newsroom-toolbar {
        gap: 9px !important;
        margin-bottom: 22px !important;
        padding: 10px !important;
        border-radius: 13px !important;
        box-shadow: 0 5px 16px rgba(12,55,33,.025) !important;
    }

    .newsroom-v3-page .newsroom-search {
        height: 44px !important;
        padding: 0 8px 0 12px !important;
        border-radius: 10px !important;
    }

    .newsroom-v3-page .newsroom-search input {
        font-size: 10.5px !important;
    }

    .newsroom-v3-page .newsroom-search button {
        min-width: 54px !important;
        height: 32px !important;
        padding: 0 9px !important;
        border-radius: 8px !important;
        font-size: 8.5px !important;
    }

    .newsroom-v3-page .newsroom-filter-group {
        gap: 6px !important;
    }

    .newsroom-v3-page .newsroom-filter-group > span {
        height: 18px !important;
        font-size: 7.5px !important;
        letter-spacing: .14em !important;
    }

    /* Six compact campus filters fit the phone width without clipping/scrolling. */
    .newsroom-v3-page .newsroom-filters {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 5px !important;
        width: 100% !important;
        overflow: visible !important;
        padding: 0 !important;
    }

    .newsroom-v3-page .newsroom-filters .news-filter {
        width: 100% !important;
        min-width: 0 !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 3px !important;
        border-radius: 9px !important;
        font-size: 8px !important;
        letter-spacing: 0 !important;
    }

    .newsroom-v3-page .newsroom-featured-wrap .newsroom-section-heading {
        margin-bottom: 10px !important;
    }

    .newsroom-v3-page .newsroom-featured-wrap .newsroom-section-heading > div > span {
        font-size: 8.5px !important;
    }

    .newsroom-v3-page .newsroom-featured {
        margin-bottom: 30px !important;
        border-radius: 15px !important;
    }

    /* Keep the featured visual editorial but stop it dominating a phone screen. */
    .newsroom-v3-page .newsroom-featured__media,
    .newsroom-v3-page .newsroom-featured__media.media-portrait,
    .newsroom-v3-page .newsroom-featured__media.media-square,
    .newsroom-v3-page .newsroom-featured__media.media-landscape,
    .newsroom-v3-page .newsroom-featured__media.media-wide {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 16 / 9 !important;
        padding: 10px !important;
    }

    .newsroom-v3-page .newsroom-featured__media .newsroom-cover,
    .newsroom-v3-page .newsroom-featured__media.media-portrait .newsroom-cover,
    .newsroom-v3-page .newsroom-featured__media.media-square .newsroom-cover,
    .newsroom-v3-page .newsroom-featured__media.media-landscape .newsroom-cover,
    .newsroom-v3-page .newsroom-featured__media.media-wide .newsroom-cover {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        object-fit: contain !important;
    }

    .newsroom-v3-page .newsroom-featured__body {
        padding: 20px 18px 22px !important;
    }

    .newsroom-v3-page .newsroom-featured h2 {
        font-size: 24px !important;
        line-height: 1.08 !important;
        margin-bottom: 9px !important;
    }

    .newsroom-v3-page .newsroom-featured__body > p {
        margin-bottom: 13px !important;
        font-size: 11px !important;
        line-height: 1.58 !important;
        -webkit-line-clamp: 3 !important;
    }

    .newsroom-v3-page .newsroom-meta {
        margin-bottom: 7px !important;
    }

    .newsroom-v3-page .newsroom-section-heading--stories {
        margin-bottom: 12px !important;
    }

    .newsroom-v3-page .newsroom-section-heading--stories h2 {
        font-size: 24px !important;
    }
}

@media (max-width: 350px) {
    .newsroom-v3-page .newsroom-filters {
        gap: 4px !important;
    }
    .newsroom-v3-page .newsroom-filters .news-filter {
        height: 34px !important;
        min-height: 34px !important;
        font-size: 7.5px !important;
    }
}

/* ===== Newsroom mobile filter label cleanup v46 ===== */
@media (max-width: 620px) {
    .newsroom-v3-page .newsroom-filter-group > span {
        display: none !important;
    }
    .newsroom-v3-page .newsroom-filter-group {
        gap: 0 !important;
    }
}

/* =========================================================
NEWSROOM TABLET/ANDROID VIEWPORT FIT
Prevent the newsroom from retaining a narrower document width
on Chromium-based tablets/phones while preserving desktop.
========================================================= */
@media (max-width: 900px) {
    body.newsroom-v3-page,
    .newsroom-v3-page > main,
    .newsroom-v3-page .newsroom-page-main,
    .newsroom-v3-page .newsroom-hero,
    .newsroom-v3-page .newsroom-content,
    .newsroom-v3-page .global-footer {
        width: 100vw !important;
        min-width: 0 !important;
        max-width: 100vw !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .newsroom-v3-page .container {
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
        min-width: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media (max-width: 620px) {
    .newsroom-v3-page .container {
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
    }
}
