/* Reading-size overrides kept separate from the protected SG-9 stylesheet. */
body { font-size: 1.0625rem; }
.brand-name small { font-size: 0.75rem; }
.hero-note { font-size: 1rem; }
.family-card p,
.proof-steps p,
.product-card-body p,
.process-card p,
.decision-list span { font-size: 1rem; }
.evidence-state p,
.scope-note,
.document-pack__notice,
.proof-preview-grid p,
.choice,
.footer-brand p,
.document-reference-details p,
.document-reference-details ul { font-size: 1rem; }
.page-note, .spec-source-note { font-size: 1rem; line-height: 1.65; }
td,
.design-reference-specs table { font-size: 0.95rem; }
.design-reference-list .design-reference-kind { font-size: 0.78rem; }
.field label, .field-label { font-size: 0.875rem; letter-spacing: 0.04em; }
.field input, .field select, .field textarea,
.requirements-review input, .requirements-review select,
.requirements-review textarea { font-size: 1rem; }
.field-help, .form-status, .rfq-grid .form-status,
.caption, .gallery figcaption, .product-detail-media figcaption,
.design-reference-image figcaption { font-size: 0.875rem; line-height: 1.6; }
.result-status, .legal-meta, .requirements-review__status-hint { font-size: 0.875rem; line-height: 1.6; }
.footer-group ul { font-size: 0.9375rem; }
.footer-bottom { font-size: 0.8125rem; }
.table-swipe-hint { font-size: 0.875rem; line-height: 1.55; }
@media (max-width: 460px) {
  .hero-note { font-size: 1rem; }
}
/* Sales-first homepage components, 6 October 2026. Kept here because site.css
   is byte-protected by the SG-9 preservation guard. */
a.data-point { display: block; color: inherit; text-decoration: none; transition: background 160ms ease; }
a.data-point:hover, a.data-point:focus-visible { background: rgba(255, 255, 255, 0.07); }
.page-home .data-point strong { font-size: 1.45rem; }
.page-home .data-point span { display: block; margin-top: 0.2rem; font-size: 0.875rem; }
.lead-model-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.lead-model { display: flex; flex-direction: column; overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); }
.lead-model__media { display: block; overflow: hidden; aspect-ratio: 1; background: #fff; }
.lead-model__media picture { display: block; height: 100%; }
.page-home .hero h1 { max-width: 15ch; font-size: clamp(2.4rem, 4.6vw, 4.4rem); }
.lead-model__media img { width: 100%; height: 100%; object-fit: contain; padding: 0.6rem; }
.lead-model__media--cover img { object-fit: cover; padding: 0; }
.lead-model__body { display: flex; flex: 1; flex-direction: column; padding: 1.1rem; }
.lead-model__body h3 { margin: 0; font-size: 1.15rem; }
.lead-model__body h3 a { color: inherit; text-decoration: none; }
.lead-model__body h3 a:hover { text-decoration: underline; }
.lead-model__body .tags { margin: 0.7rem 0 1.1rem; padding: 0; list-style: none; }
.lead-model__body .button { align-self: flex-start; margin-top: auto; }
.order-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.25rem; margin-top: 0; }
.order-steps li { padding: 3.3rem 0 0; }
.order-steps li::before { top: 0.75rem; }
.home-faq { margin-top: 1.5rem; }
.page-notes { padding-top: 0.8rem; color: var(--muted); border-top: 1px solid var(--line); }
.page-notes summary { font-weight: 760; cursor: pointer; }
.page-notes p { margin: 0.8rem 0 0; font-size: 0.9375rem; }
/* Homepage TUV Rheinland report figures and CF2040 card price, owner rulings 8 October 2026. */
.data-strip-verified { padding: 1rem 1.3rem 1.25rem; border-top: 1px solid rgba(255, 255, 255, 0.12); }
.data-strip-source { margin: 0 0 0.75rem; color: rgba(255, 255, 255, 0.78); font-size: 0.875rem; }
.data-strip-source strong { color: var(--white); }
.data-strip-figures { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.75rem 1rem; margin: 0; padding: 0; list-style: none; }
.data-strip-figures strong { display: block; color: var(--sun-hot); font-family: var(--serif); font-size: 1.3rem; font-weight: 500; }
.data-strip-figures span { color: rgba(255, 255, 255, 0.69); font-size: 0.8125rem; }
.lead-model__body .spec-reference-notice { margin: 0 0 1rem; padding: 0.75rem 0.85rem; font-size: 0.875rem; }
@media (max-width: 1050px) {
  .lead-model-grid, .order-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .page-home .solar-arc { display: none; }
  .data-strip-figures { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 460px) {
  .lead-model-grid, .order-steps { grid-template-columns: 1fr; }
  .page-home .data-point strong { font-size: 1.2rem; }
  .page-home .hero h1 { font-size: clamp(2.2rem, 10.5vw, 2.9rem); }
}
/* Sales-first category pages, 7 October 2026 (site.css is byte-protected). */
.design-reference-notes { margin-top: 0.6rem; color: var(--muted); font-size: 0.875rem; }
.design-reference-notes summary { cursor: pointer; font-weight: 760; }
.page-hero--media .page-hero-inner { align-items: center; }
.page-hero-media { margin: 0; }
.page-hero-media img { display: block; width: 100%; height: auto; max-height: 26rem; object-fit: cover; border-radius: var(--radius); }
.page-hero-media figcaption { margin-top: 0.5rem; color: rgba(255, 255, 255, 0.72); font-size: 0.8125rem; }
.model-compare { min-width: 54rem; background: var(--white); }
.model-compare th[scope="row"] { min-width: 8.5rem; background: transparent; font-size: 1rem; letter-spacing: 0; text-transform: none; }
.model-compare__media { display: block; width: 5.5rem; height: 5.5rem; margin-bottom: 0.4rem; overflow: hidden; background: #fff; border-radius: var(--radius-sm); }
.model-compare__media picture { display: block; height: 100%; }
.model-compare__media img { width: 100%; height: 100%; object-fit: contain; }
.model-compare__name { color: var(--ink); font-weight: 800; }
.model-compare td { font-size: 0.9375rem; }
.model-compare__action { white-space: nowrap; vertical-align: middle; }
@media (max-width: 760px) {
  .model-compare-wrap { overflow: visible; border: 0; }
  .model-compare { min-width: 0; background: transparent; }
  .model-compare thead { display: none; }
  .model-compare, .model-compare tbody, .model-compare th, .model-compare td { display: block; width: auto; }
  .model-compare tr { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: 0.25rem 0.9rem; margin-bottom: 0.8rem; padding: 0.9rem; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); }
  .model-compare th[scope="row"] { grid-row: span 5; min-width: 0; padding: 0; border: 0; }
  .model-compare td { padding: 0; border: 0; font-size: 0.875rem; }
  .model-compare td[data-label]::before { content: attr(data-label) ": "; color: var(--muted); font-weight: 760; }
  .model-compare td:empty { display: none; }
  .model-compare__action { padding-top: 0.4rem; white-space: normal; }
}
/* Sales-first model pages, 7 October 2026. */
.key-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr)); gap: 0.6rem; margin: 1.6rem 0 0; padding: 0; }
.key-facts div { padding: 0.65rem 0.8rem; background: rgba(255, 255, 255, 0.09); border: 1px solid rgba(255, 255, 255, 0.14); border-radius: var(--radius); }
.key-facts dt { color: rgba(255, 255, 255, 0.7); font-size: 0.75rem; font-weight: 760; }
.key-facts dd { margin: 0.15rem 0 0; color: var(--white); font-size: 0.9375rem; font-weight: 700; overflow-wrap: anywhere; }
.product-family-link { margin: 1rem 0 0; font-size: 0.9375rem; }
.product-next-links { margin: 1.25rem 0 0; font-size: 0.9375rem; line-height: 1.7; }
.product-family-link a { color: rgba(255, 255, 255, 0.85); }
.product-best-for { margin: 1.4rem 0 0.6rem; font-size: 1rem; }
.product-buy-box .section-actions { margin-top: 1rem; }
.variant-compare__title { margin: 0 0 0.8rem; font-size: 1.15rem; }
.variant-compare { width: 100%; min-width: 36rem; margin-bottom: 1.6rem; background: var(--white); border-collapse: collapse; }
.variant-compare th, .variant-compare td { padding: 0.7rem 0.8rem; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.variant-compare thead th { color: var(--forest); font-size: 0.84rem; }
.variant-compare tbody th { width: 34%; color: var(--forest); font-size: 0.84rem; font-weight: 760; }
.variant-compare td { font-weight: 660; }
.variant-compare__basis, .variant-compare__note { display: block; margin-top: 0.2rem; color: var(--muted); font-size: 0.78rem; font-weight: 500; }
.spec-footnote { margin: 0.8rem 0 0; color: var(--muted); font-size: 0.875rem; }
.product-documents h2 { font-size: clamp(1.4rem, 2.6vw, 1.9rem); }
[aria-labelledby="product-spec-title"] .section-intro > :only-child { justify-self: start; }
@media (max-width: 760px) {
  .product-detail-hero-grid .product-detail-media { order: -1; }
  .product-detail-copy h1 { font-size: clamp(2.1rem, 9vw, 2.8rem); }
}
.oem-options { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: 0.6rem; margin: 1.4rem 0 0; padding: 0; list-style: none; }
.oem-options li { padding: 1rem 1.1rem; background: var(--white); border: 1px solid var(--line); border-left: 3px solid var(--teal); border-radius: var(--radius); font-family: var(--serif); font-size: 1.25rem; }
/* Footer group labels are paragraphs, not headings (LinqAlpha round 2, 7 Oct 2026). */
.footer-group .footer-heading { margin: 0 0 0.9rem; color: var(--white); font-family: var(--sans); font-size: 0.75rem; font-weight: 850; letter-spacing: 0.12em; text-transform: uppercase; }
