.news-page{width:100%;margin:0}
.news-hero{padding:64px 0 0;background:var(--brand-gradient);color:var(--color-white);text-align:center}
.news-hero h1{max-width:1200px;margin:0 auto;padding:0 24px;color:var(--color-white);font:400 var(--text-h1)/1.1 var(--font-display)}
.news-search{display:flex;align-items:center;width:min(650px,calc(100% - 48px));min-height:80px;margin:52px auto 48px;background:var(--color-border);border:1px solid #aeb7c9}
.news-search[hidden]{display:none}
.news-search input{flex:1;min-width:0;width:100%;min-height:78px;padding:20px 28px;border:0;border-radius:0;background:transparent;color:var(--color-navy);font:400 18px/1.4 var(--font-body);appearance:none}
.news-search input::placeholder{color:var(--color-muted);opacity:1}
.news-search button{display:grid;place-items:center;flex-shrink:0;width:64px;min-height:64px;margin:0 8px 0 0;padding:16px;border:0;background:transparent;color:var(--color-navy);cursor:pointer}
.news-search svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8}
.news-search:focus-within{outline:3px solid var(--color-gold-light);outline-offset:4px}
.news-search input:focus{outline:none}
.news-search button:focus-visible{outline:2px solid var(--color-navy);outline-offset:-4px}
.news-categories{display:flex;justify-content:center;max-width:1440px;margin:48px auto 0;padding:0 24px}
.news-categories a{display:flex;align-items:center;justify-content:center;min-height:72px;padding:20px clamp(16px,2vw,36px);color:var(--color-blue-soft);font:600 12px/1.5 var(--font-body);letter-spacing:1.8px;text-transform:uppercase;text-decoration:none}
.news-categories a[aria-current]{background:var(--color-blue);color:var(--color-white)}
.news-categories a:hover{color:var(--color-white);background:#ffffff12}
.news-categories a:focus-visible{outline:3px solid var(--color-gold-light);outline-offset:-4px}
.news-results{width:min(820px,calc(100% - 80px));min-height:300px;margin:auto;padding:112px 0 100px}
.news-count{margin:0 0 36px;color:var(--color-muted);font-size:14px}
.news-list{display:flex;flex-direction:column;gap:44px}
.news-item{margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.news-item[hidden],.news-empty[hidden]{display:none}
.news-item h2{font:400 32px/1.18 var(--font-display);letter-spacing:0;text-wrap:pretty;margin:0 0 18px}
.news-item h2 a{color:var(--color-navy);text-decoration:none}
.news-item h2 a:hover,.news-item-meta a:hover{text-decoration:underline;text-underline-offset:4px}
.news-item-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;color:var(--color-muted);font:400 16px/1.5 var(--font-body)}
.news-item-meta a{color:inherit;text-decoration:none}
.news-item-meta time{border-left:1px solid var(--color-muted);padding-left:20px;white-space:nowrap}
.news-empty{max-width:660px;margin:24px auto;text-align:center}
.news-empty h2{margin:0 0 16px}
.news-empty p{margin:0 0 24px;color:var(--color-muted)}
.news-empty>a{display:block;margin:24px 0}
.news-empty button[hidden]{display:none}
.news-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1000px){.news-categories{padding:0 16px}.news-categories a{font-size:10px;letter-spacing:1.2px;padding-inline:16px}}
@media(max-width:760px){.news-hero{padding-top:40px}.news-hero h1{font-size:clamp(44px,9vw,64px)}.news-search{min-height:64px;margin-top:32px;margin-bottom:32px}.news-search input{font-size:16px;min-height:62px;padding:16px}.news-search button{width:48px;min-height:48px;padding:12px}.news-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:32px;padding:0 16px}.news-categories a{min-height:58px;font-size:10px;padding:12px 8px}.news-results{width:calc(100% - 32px);padding:48px 0 56px}.news-list{gap:36px}.news-item h2{font-size:28px;margin-bottom:14px}.news-item-meta{font-size:14px;gap:8px 12px}.news-item-meta time{padding-left:12px}.news-count{margin-bottom:28px}}

@media(max-width:400px){.news-item-meta{display:block}.news-item-meta time{display:block;margin-top:6px;border:0;padding:0}}
