/* Shared mobile title rhythm. Desktop layouts keep their existing alignment. */
@media (max-width: 800px) {
  #main-content h1 {
    text-align: center;
    text-wrap: balance;
    overflow-wrap: break-word;
  }
  .tech-hero-copy,
  .water-page-hero.compact-page-heading,
  .evidence-intro > div:first-child,
  .product-editorial .product-intro,
  .report-library .report-page-heading,
  .page-hero > .container,
  .single-header {
    text-align: center;
    min-width: 0;
  }
  .tech-hero h1,
  .water-page-hero.compact-page-heading h1,
  .evidence-intro h1,
  .product-editorial .product-intro h1,
  .report-library .report-page-heading h1 {
    font-size: clamp(28px, 8vw, 38px);
    line-height: 1.3;
    letter-spacing: -0.035em;
    margin: 16px auto;
    max-width: 100%;
  }
  .single-header h1 {
    font-size: clamp(26px, 7.2vw, 34px);
    line-height: 1.4;
  }
  .tech-hero-copy > .hero-eyebrow,
  .product-editorial .product-overline {
    justify-content: center;
    max-width: 100%;
    font-size: 10px;
    line-height: 1.8;
    letter-spacing: 0.06em;
  }
  .tech-hero-copy > .hero-eyebrow {
    flex-wrap: wrap;
  }
  .water-page-hero .kicker,
  .evidence-intro .kicker,
  .report-page-heading .kicker {
    font-size: 10px;
    line-height: 1.9;
    letter-spacing: 0.1em;
    overflow-wrap: anywhere;
  }
  .evidence-lead,
  .tech-lead,
  .compact-page-heading > .page-heading-lead,
  .product-intro-copy,
  .report-page-heading > p:last-child {
    max-width: 36em;
    margin-left: auto;
    margin-right: auto;
    text-wrap: pretty;
  }
  .tech-hero-actions {
    justify-content: center;
  }
  .single-header .article-meta {
    justify-content: center;
    gap: 6px 14px;
    font-size: 11px;
    line-height: 1.8;
  }
  .section-heading,
  .scene-explorer-heading,
  .evidence-library-head,
  .quality-section-head {
    text-align: center;
    align-items: center;
  }
  .section-heading > div,
  .scene-explorer-heading > div:first-child {
    width: 100%;
  }
  .section-heading .tech-heading-note {
    margin-left: auto;
    margin-right: auto;
  }
  .evidence-library-head {
    flex-direction: column;
    gap: 14px;
  }
  .report-library-entry {
    text-align: center;
    align-items: center;
  }
  .report-library-entry > div {
    width: 100%;
  }
  .report-library .report-page-heading > .text-link {
    justify-content: center;
  }
  .evidence-guide-heading {
    justify-content: center;
  }
  .report-access-card h2,
  .report-access-card > p {
    text-align: center;
  }
  .report-access-card .report-lock {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width:800px){
  /* The article title appears once, below a compact navigation trail. */
  body.single-knowledge .breadcrumbs .container>span:last-child,
  body.single-knowledge .breadcrumbs .container>span.sep:nth-last-child(2){display:none}
  body.single-knowledge .breadcrumbs .container{display:flex;align-items:center;justify-content:center}
  body.single-knowledge #main-content>.breadcrumbs{padding-bottom:14px}
  body.single-knowledge #main-content>.breadcrumbs+.page-content{padding-top:24px}
}

/* Keep the branded error page clear of the fixed header at every size. */
.ios-not-found{display:grid;place-items:center;min-height:70vh;padding:146px 0 64px}
.ios-not-found .not-found-card{max-width:680px;text-align:center}
.ios-not-found .not-found-code{font-size:clamp(86px,14vw,144px);line-height:1.1;font-weight:650;letter-spacing:-.07em;color:var(--accent);margin:20px 0}
.ios-not-found h1{font-size:clamp(26px,4vw,38px);line-height:1.35;margin:18px 0}
.ios-not-found .not-found-description{font-size:14px;line-height:1.9;color:var(--muted)}
.ios-not-found .not-found-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:28px 0 22px}
.ios-not-found .not-found-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;font-size:12px;color:var(--muted)}
.ios-not-found .not-found-links a:hover{color:var(--accent)}
@media(max-width:800px){
 .report-library .report-page-heading{width:100%;margin-left:auto;margin-right:auto}
 .ios-not-found{padding:108px 0 42px}
}
