.zc-news { color: var(--zc-color-text); background: var(--zc-color-white); font-family: var(--zc-font-family-primary); }
.zc-news *, .zc-news *::before, .zc-news *::after { box-sizing: border-box; }
.zc-news__container { width: min(100%, calc(1360px + 2 * var(--zc-header-gutter))); margin-inline: auto; padding-inline: var(--zc-header-gutter); }
.zc-news :where(a, button, input):focus-visible { outline: 3px solid var(--zc-color-focus); outline-offset: 3px; }
.zc-news__eyebrow { margin: 0; color: var(--zc-color-accent); font-size: .75rem; font-weight: 700; letter-spacing: .12em; line-height: 1.4; text-transform: uppercase; }

.zc-news__hero { display: flex; min-height: 390px; align-items: center; color: var(--zc-color-white); background-color: var(--zc-color-primary); background-image: radial-gradient(circle at 80% 35%, rgb(80 168 225 / 18%), transparent 42%), linear-gradient(110deg, var(--zc-color-primary), rgb(38 55 70 / 80%)); }
.zc-news__hero--image { color: var(--zc-color-primary); background-image: linear-gradient(90deg, var(--zc-color-white) 0%, rgb(255 255 255 / 94%) 28%, rgb(255 255 255 / 55%) 54%, transparent 78%), var(--zc-news-hero-image); background-position: center; background-size: cover; }
.zc-news__hero-inner { padding-block: clamp(60px, 7vw, 100px); }
.zc-news__hero h1 { max-width: 12ch; margin: 10px 0 0; color: inherit; font-size: clamp(2.5rem, 2rem + 2vw, 4rem); font-weight: 700; letter-spacing: -.035em; line-height: 1.05; }
.zc-news__accent { display: block; width: 54px; height: 3px; margin-block: 24px; background: var(--zc-color-accent); }
.zc-news__hero-copy { max-width: 52ch; margin: 0; font-size: clamp(1rem, .93rem + .25vw, 1.125rem); line-height: 1.55; }

.zc-news__listing { padding-block: clamp(28px, 4vw, 52px) clamp(56px, 6vw, 88px); background: var(--zc-color-surface-subtle); }
.zc-news__toolbar { display: flex; flex-wrap: wrap; gap: 18px 28px; align-items: center; justify-content: space-between; margin-bottom: 30px; }
.zc-news__filters { display: flex; flex-wrap: wrap; gap: 8px; }
.zc-news__filters a { display: inline-flex; min-height: 42px; align-items: center; padding: 8px 16px; border: 1px solid rgb(113 128 140 / 35%); border-radius: 24px; color: var(--zc-color-primary); background: var(--zc-color-white); font-size: .875rem; text-decoration: none; white-space: nowrap; transition: border-color var(--zc-duration-fast), background-color var(--zc-duration-fast); }
.zc-news__filters a:hover { border-color: var(--zc-color-primary); }
.zc-news__filters a[aria-current="page"] { border-color: var(--zc-color-primary); color: var(--zc-color-white); background: var(--zc-color-primary); }
.zc-news__search { display: flex; min-width: min(100%, 280px); min-height: 44px; border: 1px solid rgb(113 128 140 / 42%); border-radius: 4px; background: var(--zc-color-white); }
.zc-news__search input { width: 100%; min-width: 0; padding: 9px 12px; border: 0; background: transparent; font: inherit; font-size: .875rem; }
.zc-news__search button { min-width: 76px; padding: 8px 12px; border: 0; border-left: 1px solid rgb(113 128 140 / 28%); color: var(--zc-color-primary); background: transparent; font: inherit; font-size: .875rem; font-weight: 700; cursor: pointer; }
.zc-news__search button:hover { background: var(--zc-color-surface-subtle); }
.zc-news__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 2vw, 32px); }
.zc-news-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid rgb(113 128 140 / 25%); border-radius: 4px; background: var(--zc-color-white); box-shadow: 0 2px 8px rgb(38 55 70 / 5%); transition: border-color var(--zc-duration-fast), box-shadow var(--zc-duration-fast), transform var(--zc-duration-fast); }
.zc-news-card:hover, .zc-news-card:focus-within { border-color: rgb(99 137 170 / 65%); box-shadow: 0 8px 24px rgb(38 55 70 / 10%); transform: translateY(-2px); }
.zc-news-card__image { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--zc-color-primary); }
.zc-news-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.zc-news-card__image-fallback, .zc-news-article__related-fallback { display: block; width: 100%; height: 100%; background: radial-gradient(circle at 80% 20%, rgb(80 168 225 / 50%), transparent 35%), linear-gradient(135deg, var(--zc-color-primary), var(--zc-color-secondary)); }
.zc-news-card__body { display: flex; flex: 1; flex-direction: column; padding: clamp(18px, 2vw, 26px); }
.zc-news-card__meta { display: flex; flex-wrap: wrap; gap: 5px 16px; justify-content: space-between; align-items: baseline; font-size: .75rem; }
.zc-news-card__category { color: var(--zc-color-focus); font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.zc-news-card__meta time { color: var(--zc-color-primary); }
.zc-news-card__title { margin: 10px 0 0; color: var(--zc-color-primary); font-size: clamp(1.125rem, 1rem + .4vw, 1.375rem); font-weight: 700; line-height: 1.25; }
.zc-news-card__title a { color: inherit; text-decoration: none; }
.zc-news-card__title a:hover, .zc-news-card__more:hover { text-decoration: underline; }
.zc-news-card__excerpt { margin: 10px 0 18px; color: var(--zc-color-text); font-size: .9375rem; line-height: 1.5; }
.zc-news-card__more { margin-top: auto; align-self: flex-start; color: var(--zc-color-focus); font-size: .875rem; font-weight: 700; text-decoration: none; }
.zc-news .navigation.pagination { margin-top: 32px; }
.zc-news .nav-links { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.zc-news .page-numbers { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; padding: 8px 12px; border: 1px solid rgb(113 128 140 / 45%); border-radius: 4px; color: var(--zc-color-primary); background: var(--zc-color-white); font-weight: 700; text-decoration: none; }
.zc-news .page-numbers.current, .zc-news .page-numbers:hover { border-color: var(--zc-color-primary); color: var(--zc-color-white); background: var(--zc-color-primary); }
.zc-news__empty { padding: clamp(36px, 5vw, 72px); border: 1px solid rgb(113 128 140 / 28%); border-radius: 4px; background: var(--zc-color-white); text-align: center; }
.zc-news__empty h1, .zc-news__empty h2 { margin: 0; color: var(--zc-color-primary); font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }
.zc-news__empty p { margin: 12px 0 20px; }
.zc-news__empty a { color: var(--zc-color-focus); font-weight: 700; }

.zc-news-article { padding-bottom: clamp(54px, 6vw, 90px); }
.zc-news-article__breadcrumb { padding-block: 22px; color: var(--zc-color-secondary); font-size: .875rem; }
.zc-news-article__breadcrumb ol { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.zc-news-article__breadcrumb li { min-width: 0; overflow-wrap: anywhere; }
.zc-news-article__breadcrumb li:not(:last-child)::after { margin-inline: 8px 2px; content: "/"; }
.zc-news-article__breadcrumb a { color: var(--zc-color-secondary); text-decoration: none; }
.zc-news-article__breadcrumb a:hover { text-decoration: underline; }
.zc-news-article__header { max-width: 760px; padding-block: 18px 28px; }
.zc-news-article__header h1 { margin: 9px 0 16px; color: var(--zc-color-primary); font-size: clamp(2.25rem, 1.6rem + 2vw, 4rem); letter-spacing: -.035em; line-height: 1.08; }
.zc-news-article__header time { color: var(--zc-color-secondary); font-size: .875rem; }
.zc-news-article__image { width: min(100%, 760px); max-height: 560px; aspect-ratio: 16 / 7; margin: 0 0 clamp(28px, 4vw, 48px); overflow: hidden; border-radius: 4px; background: var(--zc-color-surface-subtle); }
.zc-news-article__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.zc-news-article__layout { display: grid; grid-template-columns: minmax(0, 760px) minmax(240px, 1fr); gap: clamp(36px, 5vw, 76px); align-items: start; }
.zc-news-article__body { min-width: 0; max-width: 760px; color: var(--zc-color-text); font-size: 1.0625rem; line-height: 1.7; overflow-wrap: anywhere; }
.zc-news-article__body > :first-child { margin-top: 0; }
.zc-news-article__body :where(h2, h3, h4) { margin: 1.6em 0 .5em; color: var(--zc-color-primary); line-height: 1.25; }
.zc-news-article__body h2 { font-size: clamp(1.5rem, 1.2rem + .6vw, 2rem); }
.zc-news-article__body h3 { font-size: 1.35rem; }
.zc-news-article__body :where(p, ul, ol, blockquote) { margin-block: 0 1.2em; }
.zc-news-article__body :where(ul, ol) { padding-left: 1.5em; }
.zc-news-article__body a { color: var(--zc-color-focus); text-decoration: underline; }
.zc-news-article__body :where(img, video, iframe) { max-width: 100%; height: auto; }
.zc-news-article__body .wp-block-embed__wrapper { max-width: 100%; }
.zc-news-article__body .wp-block-embed__wrapper iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; }
.zc-news-article__body .wp-block-gallery { max-width: 100%; }
.zc-news-article__body .wp-block-image, .zc-news-article__body .wp-block-gallery { margin-block: 1.5em; }
.zc-news-article__body blockquote { padding: 12px 0 12px 20px; border-left: 3px solid var(--zc-color-accent); color: var(--zc-color-primary); }
.zc-news-article__related { padding-top: 4px; }
.zc-news-article__related h2 { margin: 0 0 18px; color: var(--zc-color-primary); font-size: 1.25rem; }
.zc-news-article__related-item { padding-block: 14px; border-top: 1px solid rgb(113 128 140 / 28%); }
.zc-news-article__related-item:last-child { border-bottom: 1px solid rgb(113 128 140 / 28%); }
.zc-news-article__related-item a { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 12px; color: var(--zc-color-primary); text-decoration: none; }
.zc-news-article__related-item a:hover strong { text-decoration: underline; }
.zc-news-article__related-item img, .zc-news-article__related-fallback { width: 88px; height: 74px; object-fit: cover; border-radius: 3px; }
.zc-news-article__related-item span span { display: block; }
.zc-news-article__related-item small, .zc-news-article__related-item time { display: block; color: var(--zc-color-secondary); font-size: .6875rem; }
.zc-news-article__related-item small { color: var(--zc-color-focus); font-weight: 700; text-transform: uppercase; }
.zc-news-article__related-item strong { display: block; margin-block: 4px; font-size: .875rem; line-height: 1.3; }
.zc-news-article__cta { display: flex; gap: 22px; align-items: center; justify-content: space-between; margin-top: clamp(42px, 5vw, 72px); padding: clamp(24px, 3vw, 40px); border: 1px solid rgb(80 168 225 / 18%); border-radius: 4px; background: rgb(80 168 225 / 12%); }
.zc-news-article__cta h2 { margin: 6px 0 8px; color: var(--zc-color-primary); font-size: clamp(1.375rem, 1.1rem + .6vw, 1.75rem); }
.zc-news-article__cta p:last-child { margin: 0; line-height: 1.5; }
.zc-news-article__cta a { display: inline-flex; flex: 0 0 auto; min-height: 46px; align-items: center; gap: 8px; padding: 10px 18px; border-radius: 4px; color: var(--zc-color-white); background: var(--zc-color-primary); font-weight: 700; text-decoration: none; }
.zc-news-article__cta a:hover { background: var(--zc-color-secondary); }
.zc-news-article__back { display: inline-flex; min-height: 44px; align-items: center; margin-top: 28px; color: var(--zc-color-primary); font-weight: 700; text-decoration: none; }
.zc-news-article__back:hover { text-decoration: underline; }

@media (max-width: 1199px) {
    .zc-news-article__layout { grid-template-columns: minmax(0, 1fr); }
    .zc-news-article__body, .zc-news-article__related { max-width: 760px; }
}
@media (max-width: 1023px) {
    .zc-news__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .zc-news__hero { min-height: 0; }
    .zc-news__hero--image { background-image: linear-gradient(90deg, rgb(255 255 255 / 95%), rgb(255 255 255 / 78%)), var(--zc-news-hero-image); }
    .zc-news__hero-inner { padding-block: 58px; }
    .zc-news__toolbar, .zc-news__search { width: 100%; }
    .zc-news__filters { flex-wrap: nowrap; max-width: 100%; overflow-x: auto; padding-bottom: 6px; }
    .zc-news__grid { grid-template-columns: minmax(0, 1fr); }
    .zc-news-article__image { aspect-ratio: 16 / 10; }
    .zc-news-article__cta { flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
    .zc-news-card, .zc-news__filters a { transition: none; }
    .zc-news-card:hover, .zc-news-card:focus-within { transform: none; }
}
