/*
 * Added by the Next.js rebuild — the original stylesheets are untouched.
 *
 * The original markup wrapped every heading in <div>/<span>, leaving 21 pages
 * with no <h1> at all and the news articles with 17 each. Fixing the outline
 * means promoting those elements to real <h1>/<h2>/<h3>, but a bare promotion
 * would change how the page looks: Bootstrap gives headings
 * `margin-bottom:.5rem`, `font-weight:500` and its own font sizes, none of
 * which the original <div> had.
 *
 * `.h-reset` neutralises exactly those UA/Bootstrap defaults so a promoted
 * heading renders pixel-identically to the element it replaced. Everything is
 * `inherit`, never a literal value, so the original rules (`.p1`, `.indexTitle
 * span`, `.f34`, …) keep full control — they out-specify this single class.
 *
 * Load order matters: this file must come last in <head>. See app/layout.tsx.
 */
.h-reset {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  line-height: inherit;
  color: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

/*
 * next/image emits real width/height attributes so the browser can reserve
 * space (this is what keeps CLS at zero). But those attributes are only
 * presentational hints: where the original CSS sets a width and leaves height
 * alone — e.g. the sidebar `ss_.png` search icon — the attribute supplies the
 * height, and the image renders stretched to its intrinsic aspect instead of
 * the original's.
 *
 * `:where()` contributes ZERO specificity, so this loses to every author rule.
 * Any original selector that genuinely sets a height (`.imgOver .pic img
 * {height:100%}`) still wins; this only fills in where nothing else spoke.
 */
:where(img[data-nimg]) {
  height: auto;
}
