.resource-article-link{color:inherit;text-decoration:none}
.resource-article-link:hover{text-decoration:underline;text-underline-offset:.2em}
.resource-article-link:focus-visible{outline:3px solid var(--purple);outline-offset:5px;border-radius:3px}
.resources-empty{grid-column:1/-1;padding:2rem 0;color:var(--muted)}
.resource-results{scroll-margin-top:120px}
.resource-results:focus-visible{outline:3px solid var(--purple);outline-offset:8px;border-radius:4px}
.resource-pagination{padding-top:2rem;text-align:center}
.resource-result-count{margin:0 0 1rem;color:var(--muted)}
.resource-page-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}
.resource-page-controls button{min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:100px;background:#fff;color:var(--muted);font-weight:550;line-height:1.4}
.resource-page-controls button[aria-current=page]{background:var(--deep);border-color:var(--deep);color:#fff}
.resource-page-controls button:hover:not(:disabled){border-color:var(--purple)}
.resource-page-controls button:disabled{opacity:.45;cursor:default}
@media print{.resource-pagination{display:none!important}.resource-results .resource-card[hidden]{display:block!important}}
.article-page{max-width:1000px;margin:auto;padding:3rem 1.5rem 5rem}
.article-heading{max-width:780px;margin:0 auto 2.5rem}
.article-back,.article-end a{color:var(--purple);font-weight:600;text-decoration:none}
.article-back:hover,.article-end a:hover{text-decoration:underline}
.article-category{margin:2.5rem 0 .75rem;text-transform:uppercase;font-size:.875rem;letter-spacing:.06em;font-weight:700;color:var(--purple)}
.article-heading h1{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.13;letter-spacing:-.025em;margin:0 0 1.25rem;overflow-wrap:anywhere}
.article-summary{font-size:1.25rem;line-height:1.55;color:var(--muted);margin:0 0 1.5rem}
.article-byline{font-size:1rem;color:var(--muted)}
.article-byline span{margin:0 .5rem}
.article-illustration{margin:0 0 3rem}
.article-illustration .asset-slot{height:auto;min-height:0;background:transparent;border:0}
.article-illustration .asset-image{display:block;width:100%;height:auto;object-fit:contain;border-radius:16px}
.article-illustration figcaption{font-size:.875rem;line-height:1.5;color:var(--muted);margin:.75rem 0 0}
.article-body{max-width:740px;margin:auto;font-size:1.125rem;line-height:1.8;overflow-wrap:anywhere}
.article-body p,.article-body ul,.article-body ol{margin:0 0 1.5rem}
.article-body h2{font-size:clamp(1.65rem,3vw,2.1rem);line-height:1.25;margin:3rem 0 1rem;letter-spacing:-.015em}
.article-body h3{font-size:1.375rem;line-height:1.35;margin:2rem 0 1rem}
.article-body li{margin:.35rem 0}.article-body li>ul,.article-body li>ol{margin:.5rem 0}
.article-body a{color:var(--purple);text-decoration:underline;text-underline-offset:.2em}
.article-body blockquote{border-left:4px solid var(--purple);padding:.75rem 1.5rem;margin:2rem 0;background:var(--wash);font-size:1.25rem}
.article-body code{font-size:.9em;background:var(--wash);border-radius:4px;padding:.15em .3em}
.article-body .article-illustration{margin:2rem 0}
.article-table-scroll{overflow-x:auto;margin:2rem 0}.article-table-scroll:focus-visible{outline:3px solid var(--purple);outline-offset:3px}
.article-table-scroll table{width:100%;border-collapse:collapse;font-size:.95em;line-height:1.5}.article-table-scroll th,.article-table-scroll td{padding:.8rem;text-align:left;vertical-align:top;border:1px solid var(--lavender)}
.article-table-scroll th{background:var(--wash);font-weight:700}.article-table-scroll caption{text-align:left;font-weight:600;margin-bottom:.75rem}
.article-end{max-width:740px;margin:3rem auto 0;padding-top:2rem;border-top:1px solid var(--lavender)}
.legal-toc{margin-top:2rem;padding:1.25rem;background:var(--wash);border-radius:12px}.legal-toc ul{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;list-style:none;padding:0;margin:0}.legal-toc a{color:var(--purple);font-weight:600;text-underline-offset:.2em}.legal-section h2{scroll-margin-top:7rem}.legal-section+.legal-section{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--lavender)}
@media(max-width:560px){.article-page{padding:2rem 1.25rem 3rem}.article-category{margin-top:2rem}.article-summary{font-size:1.125rem}.article-body{font-size:1rem}.article-heading{margin-bottom:2rem}}
