/* /news "Latest news" grid (api/t12/news-feed.ts), in the t12 design's tokens. Hand-written, not generated. */
.t12 .nwl .sec__head{margin-bottom:clamp(24px,3vw,44px)}
.t12 .nwf{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 clamp(18px,2.4vw,28px)}
.t12 .nwf[hidden]{display:none}
.t12 .nwf button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 16px;border:1px solid var(--line3);border-radius:999px;background:#fff;color:var(--ink);font:600 14px/1 var(--ff);cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}
.t12 .nwf button small{font:600 12px/1 var(--ff);color:var(--muted);font-variant-numeric:tabular-nums}
.t12 .nwf button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.t12 .nwf button[aria-pressed=true] small{color:rgba(255,255,255,.72)}
@media (hover:hover) and (pointer:fine){.t12 .nwf button:hover{border-color:var(--ink)}}
.t12 .nwf button:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.t12 .nwg{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3vw,44px) clamp(16px,2vw,28px);border-top:1px solid var(--ink);padding-top:clamp(20px,2.4vw,32px)}
.t12 .nwc{min-width:0}
.t12 .nwc[hidden]{display:none}
.t12 .nwc__a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.t12 .nwc__ph{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;overflow:hidden;border-radius:var(--r);background:var(--bg3)}
.t12 .nwc__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--e-out,cubic-bezier(.23,1,.32,1))}
.t12 .nwc__ph-src{padding:0 16px;font:700 15px/1.2 var(--ff);letter-spacing:-.01em;color:var(--muted);text-align:center}
.t12 .nwc__meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:14px 0 0;font:600 12.5px/1.3 var(--ff);color:var(--muted);font-variant-numeric:tabular-nums}
.t12 .nwc__src{color:var(--ac);letter-spacing:.02em}
.t12 .nwc__meta time::before{content:"";display:inline-block;width:3px;height:3px;margin:0 10px 2px 0;border-radius:50%;background:var(--line3);vertical-align:middle}
.t12 .nwc__t{margin:8px 0 0;font:700 clamp(16px,1.3vw,18px)/1.38 var(--ff);letter-spacing:-.01em;color:var(--ink);text-wrap:pretty;overflow-wrap:anywhere}
.t12 .nwc__s{margin:6px 0 0;font-size:14px;line-height:1.55;color:var(--body);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.t12 .nwc__go{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:10px;min-height:34px;font:600 13px/1.3 var(--ff);color:var(--ink);text-decoration:underline;text-decoration-color:var(--line3);text-underline-offset:3px}
.t12 .nwc__go svg{width:11px;height:11px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s cubic-bezier(.23,1,.32,1)}
@media (hover:hover) and (pointer:fine){
  .t12 .nwc__a:hover .nwc__ph img{transform:scale(1.03)}
  .t12 .nwc__a:hover .nwc__t{color:var(--ach)}
  .t12 .nwc__a:hover .nwc__go{color:var(--ach);text-decoration-color:currentColor}
  .t12 .nwc__a:hover .nwc__go svg{transform:translate(2px,-2px)}
}
.t12 .nwc__a:focus-visible{outline:2px solid var(--ac);outline-offset:4px;border-radius:var(--r)}
.t12 .nwl .dsrc{margin-top:clamp(24px,3vw,36px)}
/* Chinese headings break at the punctuation, not inside a word */
.t12[lang^=zh] .nwl h2,.t12[lang^=zh] .nwo h2{word-break:keep-all}
/* the "Official sources" heading sits on the sections that follow it */
.t12 .nwo{padding-bottom:0}
.t12 .nwo .sec__head{margin-bottom:0}
.t12 .sec.nwo h2{font-size:clamp(30px,4.4vw,64px)}
.t12 .nwo+.sec{border-top:0!important;padding-top:clamp(36px,5vw,64px)}
@media (max-width:1000px){.t12 .nwg{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.t12 .nwg{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.t12 .nwc__ph img,.t12 .nwc__go svg,.t12 .nwf button{transition:none}}
