.news-hero-inner { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:3rem; align-items:center; padding-block:clamp(3rem,6vw,6rem); }
.news-hero .intro { max-width:35rem; }
.news-browse { display:inline-flex; gap:1rem; align-items:center; min-height:2.75rem; margin-top:1.6rem; color:var(--mint); font-weight:650; }
.news-hero-art { width:100%; max-width:32rem; justify-self:end; }
.news-latest { padding-block:clamp(3.5rem,6vw,6rem); }
.news-section-heading { display:flex; gap:2rem; align-items:end; justify-content:space-between; margin-bottom:2rem; }
.news-section-heading h2 { font-size:clamp(2rem,3.4vw,3.5rem); max-width:40rem; }
.news-section-heading > p { max-width:22rem; color:var(--subtle); font-size:1.05rem; }
.news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.4rem; }
.news-card { min-width:0; border:1px solid var(--line); border-radius:.8rem; overflow:hidden; background:#fffefa; }
.news-card-link { display:flex; flex-direction:column; height:100%; text-decoration:none; }
.news-card-link:hover h3 { text-decoration:underline; text-underline-offset:.18em; }
.news-card-link:focus-visible { outline:4px solid var(--green); outline-offset:-4px; border-radius:.8rem; }
.news-card-art { background:#e7eee7; padding:1.6rem 1.2rem; aspect-ratio:1.8; display:flex; align-items:center; justify-content:center; border-bottom:1px solid var(--line); }
.news-card-art img { width:100%; max-height:12rem; object-fit:contain; }
.news-card-copy { padding:1.5rem; display:flex; flex-direction:column; flex:1; }
.news-card-copy .kicker { font-size:.7rem; margin-bottom:.65rem; }
.news-card h3 { font-size:clamp(1.35rem,1.8vw,1.8rem); line-height:1.2; letter-spacing:-.035em; margin-bottom:.9rem; }
.news-card-copy > p:not(.kicker) { color:var(--subtle); font-size:.97rem; line-height:1.6; }
.news-card-meta { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:1.5rem; color:var(--green); font-size:.85rem; font-weight:650; }
.news-card-meta span:last-child { font-size:1.6rem; }
.news-breadcrumbs { display:flex; align-items:center; gap:.75rem; flex-wrap:wrap; color:#c8d8d8; padding-top:1.5rem; font-size:.88rem; }
.news-breadcrumbs a { padding-block:.5rem; }
.news-article-intro { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); gap:3rem; align-items:center; padding-block:2.5rem 3.7rem; }
.news-article-intro h1 { font-size:clamp(2.5rem,4.4vw,4.6rem); max-width:16ch; }
.news-article-intro .intro { max-width:43rem; }
.article-byline { margin-top:1.4rem; color:#c8d8d8; font-size:.86rem; line-height:1.8; }
.article-hero-art { background:#e9eee8; border-radius:.8rem; padding:1.8rem 1.2rem; box-shadow:0 1rem 2rem #071c2340; }
.article-hero-art img { width:100%; }
.article-layout { display:grid; grid-template-columns:minmax(12rem,.35fr) minmax(0,1fr); gap:clamp(2rem,6vw,6rem); padding-block:3.5rem 5rem; max-width:76rem; }
.article-sidebar { align-self:start; position:sticky; top:1.5rem; }
.article-toc { border:1px solid var(--line); border-radius:.5rem; background:#fffefa; }
.article-toc summary { cursor:pointer; font-weight:650; padding:1rem; min-height:2.75rem; }
.article-toc summary:focus-visible { outline:3px solid var(--green); outline-offset:3px; }
.article-toc ol { margin:0; padding:0 1rem 1rem 2.1rem; font-size:.93rem; }
.article-toc a { display:inline-block; padding:.4rem 0; line-height:1.5; }
.article-sidebar-help { padding:1.6rem .2rem 0; }
.article-sidebar-help .kicker { font-size:.65rem; margin-bottom:.7rem; }
.article-sidebar-help h2 { font-size:1.5rem; letter-spacing:-.03em; }
.article-sidebar-help p:not(.kicker) { margin-block:.8rem; font-size:.93rem; color:var(--subtle); }
.article-sidebar-help a { display:inline-block; min-height:2.75rem; color:var(--green); font-weight:650; font-size:.92rem; }
.article-body { max-width:48rem; min-width:0; }
.article-body > section + section { margin-top:2.8rem; }
.article-body h2 { font-size:clamp(1.75rem,2.5vw,2.5rem); letter-spacing:-.035em; line-height:1.2; margin-bottom:1.1rem; scroll-margin-top:1.5rem; }
.article-body p, .article-body li { font-size:1.05rem; color:var(--subtle); line-height:1.75; }
.article-body p + p, .article-body ul + p, .article-body ol + p, .article-body p + ul, .article-body p + ol { margin-top:1rem; }
.article-body ul, .article-body ol { padding-left:1.4rem; }
.article-body li + li { margin-top:.7rem; }
.article-body li::marker { color:var(--green); font-weight:700; }
.article-note { border-left:4px solid var(--green); background:#e6f1e9; padding:1.1rem 1.3rem; margin-top:1.4rem; border-radius:0 .4rem .4rem 0; }
.article-note p { color:var(--ink); }
.article-related { padding:1.5rem; background:#e9eee8; border-radius:.7rem; }
.article-related .kicker { margin-bottom:.6rem; font-size:.72rem; }
.article-related h2 { font-size:1.8rem; }
.article-related ul { list-style:none; padding:0; }
.article-related a { display:inline-flex; gap:.7rem; min-height:2.75rem; align-items:center; color:var(--green); font-weight:650; line-height:1.45; }
.article-comments { border-top:1px solid var(--line); padding-top:2rem; }
.article-comments .kicker { font-size:.72rem; margin-bottom:.65rem; }
.article-comments .comment-status { margin-top:1.2rem; font-size:.95rem; }
.comment-form { margin-top:1.5rem; padding:1.5rem; border:1px solid var(--line); border-radius:.7rem; background:#fffefa; display:grid; gap:.65rem; }
.comment-form[hidden], .comment-trap { display:none; }
.comment-form h3 { font-size:1.3rem; margin-bottom:.4rem; }
.comment-form > label { font-size:.94rem; font-weight:650; margin-top:.5rem; }
.comment-form input:not([type=checkbox]), .comment-form textarea { width:100%; min-width:0; border:1px solid #829a98; border-radius:.3rem; padding:.7rem; background:white; font:inherit; color:var(--ink); }
.comment-form textarea { resize:vertical; min-height:8rem; }
.comment-form input:focus-visible, .comment-form textarea:focus-visible, .comment-form button:focus-visible { outline:3px solid var(--green); outline-offset:3px; }
.comment-form .comment-help { margin:0; font-size:.84rem; line-height:1.5; }
.comment-form label.comment-consent { display:flex; align-items:start; gap:.65rem; font-weight:400; font-size:.88rem; line-height:1.6; margin-block:.5rem; }
.comment-consent input { flex:none; width:1.1rem; height:1.1rem; margin:.18rem 0 0; accent-color:var(--green); }
.comment-form button { border:0; cursor:pointer; justify-self:start; font-family:inherit; }
.comment-form button:disabled { cursor:wait; opacity:.65; }
.comment-form .comment-result { font-size:.95rem; margin:0; }
.approved-comment { border-bottom:1px solid var(--line); padding:1.25rem 0; }
.approved-comment header { display:flex; flex-wrap:wrap; gap:.3rem 1rem; align-items:baseline; }
.approved-comment h3 { font-size:1rem; overflow-wrap:anywhere; }
.approved-comment time { font-size:.8rem; color:var(--subtle); }
.approved-comment p { white-space:pre-wrap; overflow-wrap:anywhere; margin-top:.6rem; }
@media(max-width:1000px) { .news-grid { gap:1rem; } .news-card-copy { padding:1.15rem; } .news-article-intro { grid-template-columns:minmax(0,1fr); gap:2rem; } .article-hero-art { max-width:30rem; } .news-article-intro h1 { max-width:22ch; } }
@media(max-width:800px) { .news-hero-inner { grid-template-columns:minmax(0,1fr); gap:2rem; } .news-hero-art { max-width:27rem; justify-self:center; } .news-section-heading { display:block; } .news-section-heading > p { margin-top:1.1rem; } .news-grid { grid-template-columns:minmax(0,1fr); max-width:38rem; margin-inline:auto; } .news-card-art { aspect-ratio:2.4; } .article-layout { grid-template-columns:minmax(0,1fr); gap:2rem; padding-top:2rem; } .article-sidebar { position:static; } .article-sidebar-help { display:none; } .article-body { max-width:none; } }
@media(max-width:480px) { .news-article-intro h1 { font-size:clamp(2.2rem,8.5vw,2.8rem); } .news-article-intro { padding-top:1.8rem; padding-bottom:2.5rem; } .news-hero-inner { padding-block:2.5rem; } .news-hero-art { max-width:22rem; } .article-body p, .article-body li { font-size:1rem; } .comment-form { padding:1rem; } .comment-form button { width:100%; justify-content:space-between; } }
