/* Shared rich-text content. Add .tts-content to the content body, not its UI. */
#main .tts-content {
    --tts-content-spacing: 16px;
    --tts-content-heading-color: #0a0a0a;
    --tts-content-link-color: #0076bc;
    min-width: 0;
    font-family: Roboto, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.65;
    color: #231f20;
    text-align: left;
    overflow-wrap: break-word;
}
#main .tts-content :is(p, li, dt, dd) { font-size: inherit; line-height: inherit; }
#main .tts-content :is(p, ul, ol, dl, table, figure, blockquote, pre) { margin: 0 0 var(--tts-content-spacing); }
#main .tts-content :is(h1, h2, h3, h4, h5, h6) {
    margin: 24px 0 12px;
    color: var(--tts-content-heading-color);
    font-family: inherit;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: normal;
    text-transform: none;
    scroll-margin-top: 160px;
}
#main .tts-content h1 { font-size: 24px; }
#main .tts-content h2 { font-size: 20px; }
#main .tts-content h3 { font-size: 18px; }
#main .tts-content h4 { font-size: 16px; }
#main .tts-content h5 { font-size: 16px; }
#main .tts-content h6 { font-size: 14px; }
#main .tts-content :is(strong, b) { font-weight: 700; }
#main .tts-content a { color: var(--tts-content-link-color); text-underline-offset: 3px; }
#main .tts-content a:hover { color: #c9252c; text-decoration: underline; }
#main .tts-content a:focus-visible { outline: 2px solid #c9252c; outline-offset: 3px; }
#main .tts-content :is(ul, ol) { padding: 0 0 0 1em; }
#main .tts-content ul { list-style: disc outside; }
#main .tts-content ol { list-style: decimal outside; }
#main .tts-content li { margin: 0 0 6px; }
#main .tts-content li > :is(ul, ol) { margin: 6px 0 0; }
#main .tts-content li > p { margin-bottom: 6px; }
#main .tts-content li:last-child { margin-bottom: 0; }
#main .tts-content dd { margin-left: 24px; }
#main .tts-content img { display: block; max-width: 100%; height: auto; margin: 16px auto; }
#main .tts-content :is(figure, .wp-caption) { max-width: 100%; }
#main .tts-content :is(figure:has(> figcaption):has(img), .wp-caption) { width: fit-content !important; }
#main .tts-content :is(figure:has(> figcaption):has(img), .wp-caption):not(.alignleft, .alignright) { margin-inline: auto; }
#main .tts-content :is(figure, .wp-caption) img { margin-block: 0; }
#main .tts-content :is(figcaption, .wp-caption-text) { contain: inline-size; margin: 0; padding: 8px 12px; background: #f5f5f5; font-size: 14px; line-height: 1.5; color: #666; text-align: center; }
#main .tts-content :is(iframe, video) { display: block; width: 100%; max-width: 100%; margin: 16px auto; }
#main .tts-content iframe { aspect-ratio: 16 / 9; height: auto; border: 0; }
#main .tts-content video { height: auto; }
#main .tts-content table { display: table; width: 100% !important; max-width: 100% !important; table-layout: fixed; border-collapse: collapse; font-size: 14px; line-height: 1.65; }
/* Keep the press list's five columns readable inside its scroll frame. */
#main .tts-content .tts-content-table > table.tts-press-coverage-table { min-width: 800px; table-layout: fixed; }
#main .tts-content .tts-press-coverage-table :is(th, td) { overflow-wrap: anywhere; }
#main .tts-content-table { width: 100%; max-width: 100%; overflow-x: auto; margin-bottom: var(--tts-content-spacing, 16px); overscroll-behavior-x: contain; }
#main .tts-content-table:focus-visible { outline: 2px solid #c9252c; outline-offset: 2px; }
#main .tts-content .tts-content-table > table { margin-bottom: 0; }
#main .tts-content :is(col, colgroup) { width: auto !important; }
#main .tts-content :is(th, td) { padding: 10px; border: 1px solid #e6e6e6; color: inherit; font-size: inherit; line-height: inherit; text-align: left; vertical-align: top; text-transform: none; letter-spacing: normal; overflow-wrap: anywhere; }
/* Keep editor-added nowrap formatting from pushing cells past the table. */
#main .tts-content table :is(th, td),
#main .tts-content table :is(th, td) :is(p, span, a, strong, em) { white-space: normal !important; }
#main .tts-content :is(th, thead td),
#main .tts-content table:not(:has(> thead > tr)) > tbody:first-of-type > tr:first-child > :is(th, td),
#main .tts-content table > tr:first-of-type > :is(th, td) { background: var(--fs-color-primary, #c9252c); color: #fff; font-weight: 700; }
#main .tts-content table > tbody > tr:nth-child(even) > td { background: #f9f9f9; }
#main .tts-content blockquote { padding: 12px 16px; border-left: 4px solid #c9252c; background: #fafafa; color: inherit; font-size: inherit; font-style: normal; }
#main .tts-content pre { max-width: 100%; padding: 12px 16px; overflow-x: auto; background: #f7f7f7; font-size: 14px; line-height: 1.6; }
#main .tts-content hr { margin: 24px 0; border: 0; border-top: 1px solid #e6e6e6; opacity: 1; }
#main .tts-content > :first-child { margin-top: 0; }
#main .tts-content > :last-child,
#main .tts-content blockquote > :last-child { margin-bottom: 0; }
@media (max-width: 849px) {
    #main .tts-content h1 { font-size: 22px; }
    #main .tts-content .tts-content-table > table { min-width: var(--tts-table-min-width, 480px); table-layout: auto; }
    #main .tts-content :is(th, td) { padding: 8px 10px; overflow-wrap: normal; }
}
