:root { --site-text-body:#334155; --site-text-secondary:#526277; --site-font-body:16px; }
.site-interior .description,
.site-interior .about-overview-copy p,
.site-interior .about-principle p,
.site-interior .about-business-card p,
.site-interior .NewsContent {
    color: var(--site-text-body);
    font-size: var(--site-font-body);
    line-height: 1.9;
}
.site-interior .category-family-item p,
.site-interior .editorial-entry p,
.site-interior .editorial-sidebox p,
.site-interior .page-intro,
.site-interior .editorial-hero p,
.site-interior .about-heading > p,
.site-interior .contact-view-header p,
.site-interior .contact-view-note,
.site-interior .contact-view-help {
    color: var(--site-text-secondary);
    font-size: 14px;
    line-height: 1.85;
}
.site-interior .contact-view-card small,
.site-interior .contact-view-qr figcaption,
.site-interior .editorial-channels a,
.site-interior .editorial-sidebox > .editorial-resource {
    color: var(--site-text-secondary);
    font-size: 14px;
}
.site-interior .editorial-article-meta,
.site-interior .pages,
.site-interior .editorial-date,
.site-interior .articlelist time {
    color: var(--site-text-secondary);
    font-size: 13px;
}
.site-interior .thumbnail .caption,
.site-interior .thumbnail h3 { font-size: 15px; color:var(--site-text-body); }
.hero-copy > p,
.service-intro p,
.product-info p,
.category-item p,
.showcase-description { color:var(--site-text-secondary); }
.service-intro p { font-size:16px; line-height:1.9; }
.product-info p,
.category-item p { font-size:14px; line-height:1.85; }
body.site-interior .quote-content.rich-content table.quote-source-table tbody tr > td {
    color:var(--site-text-body);
}
@media(max-width:800px) {
    :root { --site-font-body:15px; }
    .site-interior .thumbnail .caption,
    .site-interior .thumbnail h3 { font-size:14px; }
}
/* Shared content typography. */
.site-interior .rich-content:not(.quote-content) {
    color: var(--site-text-body);
    font-size: var(--site-font-body) !important;
    line-height: 1.9;
}
.site-interior .rich-content:not(.quote-content) * {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
}
.site-interior .rich-content:not(.quote-content) p {
    margin: 0 0 10px !important;
}
.site-interior .rich-content:not(.quote-content) h2,
.site-interior .rich-content:not(.quote-content) h3,
.site-interior .rich-content:not(.quote-content) h4 {
    margin: 26px 0 12px !important;
    font-size: 18px !important;
    font-weight: 600;
    line-height: 1.6 !important;
    color: #243850 !important;
}
.site-interior .rich-content:not(.quote-content) > :first-child {
    margin-top: 0 !important;
}
.site-interior .rich-content:not(.quote-content) b,
.site-interior .rich-content:not(.quote-content) strong {
    font-weight: 600;
}
.site-interior .rich-content:not(.quote-content) ul,
.site-interior .rich-content:not(.quote-content) ol {
    margin: 0 0 14px;
    padding-left: 24px;
}
.site-interior .rich-content:not(.quote-content) li {
    margin: 0 0 8px;
}
.site-interior .rich-content:not(.quote-content) table {
    margin: 18px 0 24px;
    font-size: 15px !important;
    line-height: 1.7 !important;
}
.site-interior .rich-content:not(.quote-content) td,
.site-interior .rich-content:not(.quote-content) th {
    padding: 11px 12px;
    vertical-align: middle;
}
.site-interior .rich-content:not(.quote-content) td p,
.site-interior .rich-content:not(.quote-content) th p {
    margin: 0 !important;
}
.site-interior .rich-content:not(.quote-content) a {
    color: inherit !important;
}
@media (max-width: 800px) {
    .site-interior .rich-content:not(.quote-content) { font-size: 15px !important; }
    .site-interior .rich-content:not(.quote-content) table { font-size: 14px !important; }
    .site-interior .rich-content:not(.quote-content) td,
    .site-interior .rich-content:not(.quote-content) th { padding: 9px 10px; }
}
