/* =========================================================
   NORVIO REPORT 2.0 — fresh pilot
   No legacy report CSS. Structure first, decoration second.
   ========================================================= */

body.nv2-report2-page {
  --r2-brand:#2e7d57;
  --r2-brand-dark:#0a503d;
  --r2-ink:#101827;
  --r2-text:#25313b;
  --r2-muted:#61706a;
  --r2-line:#dbe5e1;
  --r2-soft:#f6f8f7;
  --r2-soft-green:#eef6f2;
  --r2-white:#fff;
  --r2-wide:75rem;
  --r2-content:69rem;
  --r2-reading:48rem;
  --r2-gutter:clamp(1rem,3vw,2rem);
  --r2-radius:4px;
  margin:0;
  color:var(--r2-text);
  background:var(--r2-white);
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}

body.nv2-report2-page * { box-sizing:border-box; }

body.nv2-report2-page a {
  color:#056454;
  text-underline-offset:.16em;
}

body.nv2-report2-page a:hover { color:var(--r2-brand-dark); }

body.nv2-report2-page #masthead.site-header {
  background:#fff;
  border-bottom:1px solid var(--r2-line);
}

body.nv2-report2-page #masthead .inside-header {
  max-width:var(--r2-wide);
  margin-inline:auto;
  padding:1rem var(--r2-gutter);
  gap:1.5rem;
}

body.nv2-report2-page #masthead .main-title {
  font-size:1.3rem;
  font-weight:800;
  letter-spacing:.08em;
}

body.nv2-report2-page #masthead .main-title a { color:var(--r2-brand-dark); }

body.nv2-report2-page #site-navigation { background:#fff; }

body.nv2-report2-page #site-navigation .main-nav ul li a {
  padding:.7rem .9rem;
  color:var(--r2-text);
  font-size:.92rem;
  font-weight:600;
  line-height:1.5;
}

body.nv2-report2-page #site-navigation .main-nav ul li a:hover,
body.nv2-report2-page #site-navigation .main-nav ul li.current-menu-item>a {
  color:var(--r2-brand-dark);
  background:var(--r2-soft-green);
}

body.nv2-report2-page #site-navigation .menu-toggle {
  color:var(--r2-brand-dark);
  background:transparent;
}

body.nv2-report2-page #page.grid-container {
  max-width:none;
  margin:0;
}

body.nv2-report2-page #content.site-content {
  display:block;
  padding:0;
}

body.nv2-report2-page #primary.content-area {
  width:100%;
  float:none;
}

body.nv2-report2-page #main.site-main { margin:0; }

body.nv2-report2-page .inside-article {
  padding:0;
  background:transparent;
}

body.nv2-report2-page .entry-content { margin:0; }

.r2-report { background:#fff; }

.r2-shell {
  width:min(100% - (2 * var(--r2-gutter)), var(--r2-wide));
  margin-inline:auto;
}

.r2-reading {
  width:min(100% - (2 * var(--r2-gutter)), var(--r2-reading));
  margin-inline:auto;
}

.r2-eyebrow,
.r2-kicker,
.r2-chapter__label,
.r2-figure__eyebrow,
.r2-pubmeta__label {
  color:var(--r2-brand-dark);
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.09em;
  line-height:1.35;
  text-transform:uppercase;
}

/* ---------- Masthead ---------- */

.r2-mast {
  border-top:4px solid var(--r2-brand);
  border-bottom:1px solid var(--r2-line);
  background:#fff;
}

.r2-mast__grid {
  display:grid;
  grid-template-columns:minmax(0,1.7fr) minmax(16rem,.55fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:end;
  padding-block:clamp(2.6rem,6vw,5rem) clamp(2.3rem,5vw,4rem);
}

.r2-kicker { margin-bottom:1rem; }

.r2-kicker span {
  display:inline-block;
  margin-left:.55rem;
  padding-left:.7rem;
  border-left:1px solid var(--r2-line);
  color:var(--r2-muted);
}

.r2-mast h1 {
  max-width:58rem;
  margin:0;
  color:var(--r2-ink);
  font-size:clamp(2.45rem,5.4vw,4.65rem);
  font-weight:780;
  letter-spacing:-.055em;
  line-height:.99;
  text-wrap:balance;
}

.r2-deck {
  max-width:48rem;
  margin:1.4rem 0 0;
  color:var(--r2-muted);
  font-size:clamp(1.05rem,1.5vw,1.22rem);
  line-height:1.55;
}

.r2-pubmeta {
  padding-top:1rem;
  border-top:1px solid var(--r2-line);
}

.r2-pubmeta__label { margin-bottom:.75rem; }

.r2-pubmeta>div:not(.r2-pubmeta__label) {
  display:grid;
  grid-template-columns:5.4rem minmax(0,1fr);
  gap:.8rem;
  padding:.36rem 0;
  font-size:.82rem;
  line-height:1.35;
}

.r2-pubmeta span { color:var(--r2-muted); }

.r2-pubmeta strong {
  color:var(--r2-ink);
  font-weight:650;
  overflow-wrap:anywhere;
}

.r2-download {
  display:inline-flex;
  align-items:center;
  min-height:40px;
  margin-top:1rem;
  padding:.5rem .78rem;
  border:1px solid var(--r2-brand);
  border-radius:3px;
  color:var(--r2-brand-dark)!important;
  font-size:.82rem;
  font-weight:700;
  text-decoration:none;
}

.r2-download:hover { background:var(--r2-soft-green); }

/* ---------- Chapter navigation ---------- */

.r2-nav {
  position:sticky;
  top:0;
  z-index:20;
  border-bottom:1px solid var(--r2-line);
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(10px);
}

.r2-nav__inner {
  display:flex;
  gap:0;
  overflow-x:auto;
  scrollbar-width:none;
}

.r2-nav__inner::-webkit-scrollbar { display:none; }

.r2-nav a {
  display:flex;
  flex:0 0 auto;
  gap:.45rem;
  align-items:center;
  min-height:48px;
  padding:0 .85rem;
  border-right:1px solid var(--r2-line);
  color:var(--r2-text);
  font-size:.82rem;
  font-weight:650;
  text-decoration:none;
  white-space:nowrap;
}

.r2-nav a:first-child { border-left:1px solid var(--r2-line); }

.r2-nav a span {
  color:var(--r2-brand);
  font-size:.7rem;
  font-weight:800;
}

.r2-nav a:hover {
  color:var(--r2-brand-dark);
  background:var(--r2-soft);
}

/* ---------- Summary + key data ---------- */

.r2-summary {
  border-bottom:1px solid var(--r2-line);
  background:#fff;
}

.r2-summary__grid {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(18rem,.75fr);
  gap:clamp(2rem,5vw,4.5rem);
  align-items:start;
  padding-block:clamp(2.8rem,6vw,4.8rem);
}

.r2-summary__copy {
  max-width:var(--r2-reading);
}

.r2-summary__copy h2 {
  margin:.45rem 0 1.1rem;
  color:var(--r2-ink);
  font-size:clamp(1.55rem,2.7vw,2.25rem);
  font-weight:730;
  line-height:1.16;
  letter-spacing:-.03em;
}

.r2-summary__copy p {
  margin:0 0 .95rem;
  color:var(--r2-text);
  font-size:1.02rem;
  line-height:1.72;
}

.r2-keydata {
  padding-top:.15rem;
  border-top:2px solid var(--r2-brand);
}

.r2-keydata .r2-eyebrow { margin:.9rem 0 .5rem; }

.r2-keydata ul {
  margin:0;
  padding:0;
  list-style:none;
}

.r2-keydata li {
  padding:.75rem 0;
  border-bottom:1px solid var(--r2-line);
  color:var(--r2-text);
  font-size:.9rem;
  line-height:1.5;
}

.r2-keydata li strong {
  display:inline;
  color:var(--r2-brand-dark);
  font-size:1.05rem;
  font-weight:800;
}

/* ---------- Editorial thesis ---------- */

.r2-thesis {
  padding-block:clamp(3rem,7vw,5.7rem);
  background:#fff;
}

.r2-thesis h2 {
  margin:.55rem 0 1.15rem;
  color:var(--r2-ink);
  font-size:clamp(1.8rem,3.4vw,2.7rem);
  font-weight:740;
  line-height:1.12;
  letter-spacing:-.035em;
  text-wrap:balance;
}

.r2-thesis p {
  margin:0 0 1rem;
  color:var(--r2-text);
  font-size:1.05rem;
  line-height:1.76;
}

/* ---------- Chapters ---------- */

.r2-body { counter-reset:r2figure; }

.r2-chapter {
  padding-block:clamp(3.1rem,7vw,5.4rem);
  border-top:1px solid var(--r2-line);
  background:#fff;
  scroll-margin-top:64px;
}

.r2-chapter__grid {
  display:grid;
  grid-template-columns:5.5rem minmax(0,1fr);
  gap:clamp(1.5rem,4vw,3.25rem);
  max-width:var(--r2-content);
}

.r2-chapter__rail {
  position:relative;
  padding-top:.15rem;
}

.r2-chapter__rail::after {
  content:"";
  position:absolute;
  top:3.7rem;
  left:1.35rem;
  bottom:0;
  width:1px;
  background:var(--r2-line);
}

.r2-chapter__rail span {
  display:block;
  color:#b5c9c1;
  font-size:2.65rem;
  font-weight:760;
  letter-spacing:-.06em;
  line-height:1;
}

.r2-chapter__main { min-width:0; }

.r2-chapter__label { margin-bottom:.55rem; }

.r2-chapter__title {
  max-width:53rem;
  margin:0 0 1.65rem;
  color:var(--r2-ink);
  font-size:clamp(1.8rem,3.25vw,2.65rem);
  font-weight:750;
  line-height:1.1;
  letter-spacing:-.04em;
  text-wrap:balance;
}

.r2-chapter__content {
  color:var(--r2-text);
}

.r2-chapter__content>p,
.r2-chapter__content>.content-text,
.r2-chapter__content>.intro-paragraph {
  max-width:var(--r2-reading);
}

.r2-chapter__content p {
  margin:0 0 1rem;
  line-height:1.75;
}

.r2-chapter__content h3:not(.chart-title) {
  max-width:var(--r2-reading);
  margin:1.8rem 0 .7rem;
  color:var(--r2-ink);
  font-size:1.2rem;
  font-weight:720;
  line-height:1.3;
}

.r2-chapter--end {
  background:#fbfcfc;
}

.r2-chapter--end .r2-chapter__rail::after { background:#cddbd6; }

/* ---------- Content splits ---------- */

.r2-split,
.content-grid {
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(17rem,.7fr);
  gap:clamp(1.3rem,3vw,2.4rem);
  align-items:start;
  margin:1.5rem 0 2rem;
}

.r2-split>.content-text,
.content-grid>.content-text { min-width:0; }

.r2-split:has(>.key-points:nth-child(2)),
.content-grid:has(>.key-points:nth-child(2)) {
  grid-template-columns:repeat(2,minmax(0,1fr));
}

/* ---------- Semantic editorial blocks ---------- */

.r2-block {
  position:relative;
  max-width:var(--r2-reading);
  margin:1.55rem 0 1.9rem;
  padding:1rem 0 1rem 1.25rem;
  border-left:3px solid var(--r2-brand);
  background:transparent;
}

.r2-block h3 {
  margin:0 0 .65rem!important;
  color:var(--r2-ink)!important;
  font-size:1.04rem!important;
  font-weight:740!important;
  line-height:1.3!important;
}

.r2-block p,
.r2-block li {
  font-size:.95rem;
  line-height:1.62;
}

.r2-block ul {
  margin:.5rem 0 0;
  padding-left:1.2rem;
}

.r2-block li { margin:.35rem 0; }

.r2-block--update {
  padding:1.05rem 1.1rem;
  border:1px solid #cadbd4;
  border-left:3px solid var(--r2-brand);
  border-radius:var(--r2-radius);
  background:var(--r2-soft-green);
}

.r2-block--evidence {
  border-left-color:#657f75;
}

.r2-block--risk { border-left-color:#815950; }

.r2-block--chance { border-left-color:var(--r2-brand); }

.r2-block--finding {
  border-left-width:4px;
  border-left-color:var(--r2-brand-dark);
}

.r2-block--context { border-left-color:#71857d; }

.r2-block--drivers,
.r2-block--trend,
.r2-block--profile {
  border-left-color:#81958d;
}

.r2-block--recommendation {
  padding:1.1rem 1.2rem;
  border:1px solid var(--r2-line);
  border-top:3px solid var(--r2-brand);
  border-left:1px solid var(--r2-line);
  background:#fff;
}

.r2-block--conclusion {
  border-left-width:4px;
  font-size:1.02rem;
}

.r2-split>.r2-block,
.content-grid>.r2-block {
  max-width:none;
  margin:0;
}

/* ---------- KPI rows ---------- */

.r2-kpi-grid,
.stats-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0 1.25rem;
  margin:1.75rem 0 2.3rem;
}

.stat-card {
  padding:1rem 0 1.15rem;
  border-top:1px solid var(--r2-line);
  background:transparent;
  text-align:left;
}

.stat-number {
  display:block;
  margin-bottom:.45rem;
  color:var(--r2-brand-dark);
  font-size:clamp(1.7rem,2.5vw,2.3rem);
  font-weight:800;
  line-height:1;
}

.stat-label {
  color:var(--r2-text);
  font-size:.86rem;
  line-height:1.48;
}

/* ---------- Figures ---------- */

.r2-figure,
.chart-container {
  max-width:58rem;
  margin:2.35rem 0 2.85rem;
  padding-top:1.3rem;
  border-top:1px solid var(--r2-line);
}

.r2-figure__eyebrow {
  margin-bottom:.42rem;
  color:var(--r2-brand);
}

.chart-title {
  max-width:48rem;
  margin:0 0 1.15rem!important;
  color:var(--r2-ink)!important;
  font-family:inherit!important;
  font-size:clamp(1.2rem,2vw,1.55rem)!important;
  font-weight:740!important;
  line-height:1.27!important;
  letter-spacing:-.02em!important;
  opacity:1!important;
}

.chart-container figure { margin:0; }

.chart-image,
.entry-content img.chart-image {
  display:block;
  width:100%;
  height:auto;
  margin:0!important;
  border:1px solid var(--r2-line);
  border-radius:0;
  background:#fff;
  box-shadow:none!important;
}

.chart-caption {
  max-width:50rem;
  margin:.8rem 0 0!important;
  color:var(--r2-muted)!important;
  font-size:.8rem!important;
  line-height:1.55!important;
  text-align:left!important;
}

.r2-resource,
.chart-resource-bar {
  display:flex;
  flex-wrap:wrap;
  gap:.55rem 1rem;
  align-items:center;
  max-width:58rem;
  margin:.85rem 0 2.85rem;
  padding:.75rem 0;
  border-top:1px solid var(--r2-line);
  border-bottom:1px solid var(--r2-line);
  background:transparent;
}

.chart-resource-bar__label {
  color:var(--r2-muted);
  font-size:.72rem;
  font-weight:750;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.chart-resource-bar__links {
  display:flex;
  flex-wrap:wrap;
  gap:.35rem .7rem;
}

.chart-resource-bar__links a {
  color:var(--r2-brand-dark);
  font-size:.74rem;
  font-weight:700;
  text-decoration:none;
}

.chart-resource-bar__links a:hover { text-decoration:underline; }

.chart-resource-bar__zip {
  padding-left:.7rem;
  border-left:1px solid var(--r2-line);
}

.r2-inline-image {
  display:block;
  max-width:100%;
  height:auto;
  margin:1.6rem 0 2.1rem;
  border:1px solid var(--r2-line);
  border-radius:0;
  box-shadow:none;
}

/* ---------- Quotes ---------- */

.r2-quote,
.quote-box {
  max-width:var(--r2-reading);
  margin:1.8rem 0 2.2rem;
  padding:.25rem 0 .25rem 1.3rem;
  border-left:3px solid var(--r2-brand);
  color:var(--r2-text);
}

.quote-text {
  margin:0 0 .65rem;
  font-size:1.06rem;
  font-style:italic;
  line-height:1.65;
}

.quote-author {
  color:var(--r2-muted);
  font-size:.82rem;
}

/* ---------- Lightbox ---------- */

.lightbox-target {
  display:none;
  position:fixed;
  inset:0;
  z-index:99999;
  padding:4vh 4vw;
}

.lightbox-target:target {
  display:grid;
  place-items:center;
}

.lb-backdrop {
  position:absolute;
  inset:0;
  background:rgba(9,18,15,.88);
}

.lb-figure {
  position:relative;
  z-index:2;
  max-width:min(92vw,1200px);
  max-height:90vh;
  margin:0;
}

.lb-figure img {
  display:block;
  max-width:100%;
  max-height:78vh;
  margin:auto;
  background:#fff;
}

.lb-caption {
  padding:.8rem 0 0;
  color:#fff;
  font-size:.82rem;
  line-height:1.5;
}

.lb-close {
  position:absolute;
  z-index:3;
  top:1rem;
  right:1.25rem;
  color:#fff!important;
  font-size:2rem;
  text-decoration:none;
}

/* ---------- Sources ---------- */

.r2-sources {
  padding-block:clamp(3rem,7vw,5rem);
  border-top:1px solid var(--r2-line);
  background:var(--r2-soft);
}

.r2-sources .references {
  max-width:56rem;
  margin:.7rem 0 0;
  padding:0;
  background:transparent;
  border:0;
}

.r2-sources .references h3 {
  margin:0 0 1rem;
  color:var(--r2-ink);
  font-size:1.4rem;
  font-weight:740;
}

.r2-sources .references ol { padding-left:1.25rem; }

.r2-sources .references li {
  margin-bottom:.7rem;
  color:var(--r2-text);
  font-size:.84rem;
  line-height:1.55;
}

/* ---------- Author + related ---------- */

.r2-report-footer {
  padding-block:3.5rem;
  border-top:1px solid var(--r2-line);
  background:#fff;
}

.r2-report-footer .nv-author-card {
  max-width:56rem;
  margin:0 0 2.5rem!important;
  padding:0!important;
}

.r2-report-footer .nv-author-card__inner {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:1.2rem;
  align-items:start;
  padding:1.2rem 0!important;
  border-top:1px solid var(--r2-line);
  border-bottom:1px solid var(--r2-line);
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.r2-report-footer .report-links {
  max-width:56rem;
  margin:0;
}

.r2-report-footer .report-links h2,
.r2-report-footer .report-links h3 {
  color:var(--r2-ink);
  font-size:1.25rem;
}

/* ---------- Site footer ---------- */

/* GeneratePress' empty fallback footer is not the real Norvio footer. */
body.nv2-report2-page .site-footer {
  display:none;
}

body.nv2-report2-page .footer {
  margin:0;
  padding:3.2rem 0 2.6rem;
  border-top:1px solid var(--r2-line);
  background:var(--r2-soft);
  color:var(--r2-text);
}

body.nv2-report2-page .footer__container,
body.nv2-report2-page .disclaimer__container {
  width:min(100% - (2 * var(--r2-gutter)), var(--r2-wide));
  margin-inline:auto;
}

body.nv2-report2-page .footer__content {
  display:grid;
  grid-template-columns:minmax(0,2fr) repeat(3,minmax(9rem,1fr));
  gap:clamp(1.5rem,3vw,3rem);
  align-items:start;
}

body.nv2-report2-page .footer__about {
  max-width:34rem;
}

body.nv2-report2-page .footer-brand-title,
body.nv2-report2-page .footer__nav-title,
body.nv2-report2-page .footer__social-title,
body.nv2-report2-page .footer__legal-title {
  margin:0 0 .75rem;
  color:var(--r2-ink);
  font-size:.88rem;
  font-weight:760;
  line-height:1.35;
}

body.nv2-report2-page .footer-brand-title {
  color:var(--r2-brand-dark);
  font-size:1rem;
}

body.nv2-report2-page .footer__description {
  margin:0;
  padding:0;
  background:transparent;
  color:var(--r2-muted);
  font-size:.86rem;
  line-height:1.65;
}

body.nv2-report2-page .footer__description a {
  color:var(--r2-brand-dark);
  font-weight:650;
  text-decoration:underline;
  text-underline-offset:.16em;
}

body.nv2-report2-page .footer__nav-list,
body.nv2-report2-page .footer__social-list,
body.nv2-report2-page .footer__legal-list {
  margin:0;
  padding:0;
  list-style:none;
}

body.nv2-report2-page .footer__nav-item,
body.nv2-report2-page .footer__social-item,
body.nv2-report2-page .footer__legal-item {
  margin:0 0 .42rem;
}

body.nv2-report2-page .footer__nav-link,
body.nv2-report2-page .footer__social-link,
body.nv2-report2-page .footer__legal-link {
  color:var(--r2-muted);
  font-size:.84rem;
  line-height:1.45;
  text-decoration:none;
}

body.nv2-report2-page .footer__nav-link:hover,
body.nv2-report2-page .footer__social-link:hover,
body.nv2-report2-page .footer__legal-link:hover {
  color:var(--r2-brand-dark);
  text-decoration:underline;
  text-underline-offset:.16em;
}

body.nv2-report2-page .disclaimer {
  margin:0;
  padding:1.15rem 0;
  border-top:1px solid var(--r2-line);
  background:#edf5f1;
}

body.nv2-report2-page .disclaimer__text {
  max-width:60rem;
  margin:0 auto;
  color:var(--r2-muted);
  font-size:.78rem;
  line-height:1.55;
  text-align:center;
}

@media (max-width:850px) {
  body.nv2-report2-page .footer__content {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body.nv2-report2-page .footer__about {
    grid-column:1/-1;
    max-width:42rem;
  }
}

@media (max-width:560px) {
  body.nv2-report2-page .footer {
    padding:2.4rem 0 2rem;
  }

  body.nv2-report2-page .footer__content {
    grid-template-columns:1fr;
    gap:1.5rem;
  }

  body.nv2-report2-page .footer__about {
    grid-column:auto;
  }

  body.nv2-report2-page .disclaimer__text {
    text-align:left;
  }
}

/* ---------- Responsive ---------- */

@media (max-width:900px) {
  .r2-mast__grid,
  .r2-summary__grid {
    grid-template-columns:1fr;
    gap:2rem;
  }

  .r2-pubmeta {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.3rem 1rem;
  }

  .r2-pubmeta__label,
  .r2-download { grid-column:1/-1; }

  .r2-pubmeta>div:not(.r2-pubmeta__label) {
    display:block;
  }

  .r2-pubmeta>div span {
    display:block;
    margin-bottom:.2rem;
  }

  .r2-chapter__grid {
    grid-template-columns:3.5rem minmax(0,1fr);
    gap:1.25rem;
  }

  .r2-chapter__rail span { font-size:2rem; }
  .r2-chapter__rail::after { left:1rem; top:3rem; }

  .r2-split,
  .content-grid {
    grid-template-columns:1fr;
  }

  .r2-split:has(>.key-points:nth-child(2)),
  .content-grid:has(>.key-points:nth-child(2)) {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:700px) {
  .r2-mast__grid { padding-block:2.5rem 2rem; }

  .r2-mast h1 {
    font-size:clamp(2.15rem,11vw,3.2rem);
    line-height:1.02;
  }

  .r2-nav a {
    min-height:44px;
    padding:0 .7rem;
  }

  .r2-summary__grid { padding-block:2.5rem; }

  .r2-thesis { padding-block:3rem; }

  .r2-chapter {
    padding-block:3rem;
  }

  .r2-chapter__grid {
    display:block;
  }

  .r2-chapter__rail {
    margin-bottom:.55rem;
  }

  .r2-chapter__rail::after { display:none; }

  .r2-chapter__rail span {
    font-size:.76rem;
    color:var(--r2-brand);
    letter-spacing:.08em;
  }

  .r2-chapter__rail span::before { content:"KAPITEL "; }

  .r2-kpi-grid,
  .stats-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .r2-split:has(>.key-points:nth-child(2)),
  .content-grid:has(>.key-points:nth-child(2)) {
    grid-template-columns:1fr;
  }
}

@media (max-width:520px) {
  .r2-pubmeta { grid-template-columns:1fr 1fr; }
  .r2-pubmeta>div:nth-of-type(3) { grid-column:1/-1; }

  .r2-kpi-grid,
  .stats-grid { grid-template-columns:1fr; }

  .r2-keydata li { padding:.62rem 0; }

  body.nv2-report2-page #masthead .inside-header {
    padding:.75rem var(--r2-gutter);
  }
}

@media print {
  body.nv2-report2-page #site-navigation,
  .r2-nav,
  .r2-download,
  .lightbox-target {
    display:none!important;
  }

  .r2-mast,
  .r2-summary,
  .r2-thesis,
  .r2-chapter,
  .r2-sources {
    background:#fff!important;
  }

  .r2-chapter { break-inside:avoid; }
}
