/* Approved article readability release, 2026-10-05. Semantic source remains readable without scripting. */
.page-grid .article { --v3r-ink:#d5d2dc; --v3r-heading:#efecf3; --v3r-muted:#b7b2c0; --v3r-surface:#101016; --v3r-line:#34313c; --v3r-link:#ff94c8; width:100%; max-width:68ch; min-width:0; margin-inline:auto; color:var(--v3r-ink); font-size:1.1875rem; line-height:1.7; overflow-wrap:anywhere; box-sizing:border-box; }
.page-grid .article > p { margin:0 0 1.1em; }
.page-grid .article > p:first-of-type { color:var(--v3r-ink); font-size:inherit; line-height:1.7; }
.page-grid .article > h2 { color:var(--v3r-heading); font-weight:600; font-size:clamp(1.65rem,2.6vw,2.1rem); line-height:1.28; letter-spacing:-.02em; margin:3.4rem 0 1rem; scroll-margin-top:7rem; text-wrap:balance; }
.page-grid .article > h3 { color:var(--v3r-heading); font-weight:600; font-size:1.375rem; line-height:1.4; margin:2.4rem 0 .85rem; scroll-margin-top:7rem; text-wrap:balance; }
.page-grid .article p strong, .page-grid .article ul strong, .page-grid .article ol strong, .page-grid .article figure strong, .page-grid .article blockquote strong, .page-grid .article aside strong { color:var(--v3r-heading); font-weight:600; }
.page-grid .article a { color:var(--v3r-link); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.22em; text-decoration-skip-ink:auto; }
.page-grid .article a:hover { color:#ffd1e8; }
.page-grid .article :focus-visible { outline:2px solid #e4dfed; outline-offset:4px; border-radius:3px; }
.page-grid .article > ul, .page-grid .article > ol { margin:0 0 1.5em; padding-inline-start:1.45em; }
.page-grid .article > ul > li, .page-grid .article > ol > li { margin:.65em 0; padding-inline-start:.15em; }
.page-grid .article mark { color:var(--v3r-ink); background:linear-gradient(transparent 58%,rgba(255,45,149,.16) 58%); padding:.02em .12em; border-radius:.15em; -webkit-box-decoration-break:clone; box-decoration-break:clone; font-weight:inherit; }
.page-grid .article > aside.key-summary { margin:1.8rem 0 2rem; padding:clamp(1.1rem,3vw,1.6rem); background:var(--v3r-surface); border:1px solid var(--v3r-line); border-radius:12px; color:var(--v3r-ink); }
.page-grid .article .key-summary .key-summary-label { margin:0 0 .85rem; color:var(--v3r-heading); font-size:1rem; font-weight:500; letter-spacing:normal; text-transform:none; }
.page-grid .article .key-summary ul { margin:0; padding-inline-start:1.2em; }
.page-grid .article .key-summary li { margin:.65em 0; padding-inline-start:.15em; }
.page-grid .article .key-summary li:last-child { margin-bottom:0; }
.page-grid .article > p.takeaway { margin:1.8rem 0 2.4rem; padding:.25rem 0 .25rem 1rem; border-left:2px solid #ff2d95; background:none; color:var(--v3r-heading); font-size:inherit; line-height:1.7; }
.page-grid .article > p.takeaway strong { font-weight:500; }
.page-grid .article > blockquote { margin:2rem 0; padding:1.4rem; border:1px solid var(--v3r-line); border-radius:12px; background:var(--v3r-surface); }
.page-grid .article > blockquote h2 { margin:0 0 .9rem; color:var(--v3r-heading); font-size:1.4rem; font-weight:600; line-height:1.4; }
.page-grid .article > blockquote p { margin:0 0 1.1em; }
.page-grid .article > blockquote p:last-child { margin-bottom:0; }
.page-grid .article > figure[data-ojay-viz] { min-width:0; max-width:100%; margin:2rem 0; padding:clamp(1rem,3vw,1.5rem); color:var(--v3r-ink); border:1px solid var(--v3r-line); border-radius:12px; background:var(--v3r-surface); box-sizing:border-box; }
.page-grid .article > figure[data-ojay-viz] figcaption { margin:0 0 1rem; color:var(--v3r-heading); font-size:1.3rem; font-weight:600; line-height:1.4; }
.page-grid .article > figure[data-ojay-viz] p { margin:0 0 1.1em; }
.page-grid .article > figure[data-ojay-viz] > p:last-child { margin-bottom:0; }
.page-grid .article > figure[data-ojay-viz] ul, .page-grid .article > figure[data-ojay-viz] ol { padding-inline-start:1.35em; }
.page-grid .article > figure[data-ojay-viz] li { margin:.7em 0; }
.page-grid .article > figure[data-ojay-viz] input, .page-grid .article > figure[data-ojay-viz] select, .page-grid .article > figure[data-ojay-viz] button { min-height:44px; max-width:100%; font:inherit; }
.page-grid .article > h3[id^="faq-"] { margin-top:2.1rem; padding-top:1.7rem; border-top:1px solid var(--v3r-line); font-size:1.375rem; font-weight:600; }
.page-grid .article > #faq + h3 { border-top:0; padding-top:0; margin-top:1.3rem; }
.page-grid .article > #commercial-disclosure, .page-grid .article > #direct-answer + p { font-size:1rem; line-height:1.7; color:var(--v3r-muted); }
/* Tables keep their semantic source and scroll within their own bounds. */
.page-grid .article :where(*):has(table) { min-width:0; max-width:100%; box-sizing:border-box; }
.page-grid .article figure:has(table) { overflow-x:auto; overscroll-behavior-x:contain; }
.page-grid .article table { display:block; width:100%; min-width:0; max-width:100%; box-sizing:border-box; overflow-x:auto; margin:2rem 0; table-layout:auto; font-variant-numeric:tabular-nums; font-size:1rem; line-height:1.6; border-collapse:separate; border-spacing:0; }
.page-grid .article table caption { caption-side:top; text-align:left; padding:1rem; color:var(--v3r-muted); font-size:.9375rem; line-height:1.6; }
.page-grid .article table thead { display:table-header-group; }
.page-grid .article table tbody { display:table-row-group; }
.page-grid .article table tr { display:table-row; margin:0; padding:0; border:0; background:transparent; }
.page-grid .article table th, .page-grid .article table td { display:table-cell; width:auto; padding:.85rem 1rem; font-size:1rem; line-height:1.6; color:var(--v3r-ink); border:0; border-bottom:1px solid var(--v3r-line); vertical-align:top; text-align:left; overflow-wrap:normal; }
.page-grid .article table td::before { content:none; }
.page-grid .article table thead th { position:sticky; top:0; z-index:1; background:#1b1922; color:var(--v3r-heading); font-weight:600; }
.page-grid .article table tbody th { background:transparent; font-weight:500; }
.page-grid .article table tbody tr:nth-child(even) { background:#16141c; }
.page-grid .article > :not(.author)::selection, .page-grid .article > :not(.author) ::selection { background:#46404f; color:#faf7fc; }@supports (animation-timeline: scroll()) {
  body::before { content:""; position:fixed; inset:0 0 auto; height:3px; z-index:100; pointer-events:none; background:#ff2d95; transform:scaleX(0); transform-origin:left; animation:ojay-read-progress linear both; animation-timeline:scroll(root); }
}@keyframes ojay-read-progress { from { transform:scaleX(0); } to { transform:scaleX(1); } }@media (max-width:860px) {
  .page-grid .article { font-size:1.125rem; }
  .page-grid .article > h2 { margin-top:2.8rem; }
}@media (max-width:560px) {
  .page-grid .article > h3, .page-grid .article > h3[id^="faq-"] { font-size:1.25rem; }
  .page-grid .article table th, .page-grid .article table td { padding:.8rem; font-size:1rem; }
}@media (prefers-reduced-motion:reduce) {
  .page-grid .article, .page-grid .article * { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
  body::before { animation:none; display:none; }
}@media print {
  body::before { display:none; }
  .page-grid .article table { overflow:visible; }
  .page-grid .article table thead th { position:static; }
}
