.reviews-page{--review-purple:#7c3aed;--review-ink:#29183e;--review-muted:#71637f;--review-line:#e7dff2;color:var(--review-ink)}.reviews-page h1{letter-spacing:-.045em;line-height:1.18;text-wrap:balance}.reviews-page h2{letter-spacing:-.025em;line-height:1.35}.reviews-page p{line-height:1.85}.reviews-page a:focus-visible{outline:3px solid #7c3aed;outline-offset:5px;border-radius:4px}.review-hub-hero{background:#f8f5ff;padding:28px 0 58px;border-bottom:1px solid var(--review-line)}.review-hub-hero h1{font-size:clamp(40px,6vw,72px);margin:22px 0}.review-detail-hero .breadcrumbs,.review-hub-hero .breadcrumbs{margin:20px 0 42px}.review-lead{font-size:clamp(17px,2vw,22px);color:var(--review-muted);max-width:750px}.review-preview{background:#fff7e7;color:#765017;padding:10px 16px;border:1px solid #ead7ae;border-radius:10px;font-size:13px;line-height:1.6}.review-principles{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:30px;font-size:14px}.review-principles span:before{content:"◦";color:var(--review-purple);margin-right:9px}.review-list-section{padding:42px 0 64px}.review-list-header{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:28px}.review-filters{display:flex;flex-wrap:wrap;gap:8px}.review-filters a{padding:10px 18px;border:1px solid var(--review-line);border-radius:999px;font-size:14px}.review-filters a[aria-current=page]{background:var(--review-ink);border-color:var(--review-ink);color:white}.review-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.review-card{border:1px solid var(--review-line);border-radius:22px;overflow:hidden;background:white}.review-card-image{display:block;background:#f6f1fd;border-bottom:1px solid var(--review-line)}.review-card-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}.review-card-copy{padding:26px 30px 32px}.review-meta{display:flex;flex-wrap:wrap;gap:10px 20px;color:var(--review-muted);font-size:13px}.review-card h2{font-size:28px;margin:18px 0 14px;text-wrap:balance}.review-card p{color:var(--review-muted);font-size:15px}.review-tags{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.review-tags span{font-size:12px;background:#f5f0fc;border:1px solid #e9e0f7;color:#67428b;border-radius:6px;padding:6px 10px}.review-fineprint{font-size:12px;color:var(--review-muted);margin-top:18px}.review-method-section{background:#faf9fc;padding:64px 0;border-top:1px solid var(--review-line)}.review-method-section>.container>h2{font-size:clamp(26px,4vw,38px);margin:16px 0 32px}.review-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.review-method-grid article{padding:24px;background:white;border:1px solid var(--review-line);border-radius:14px}.review-method-grid article>span{font-family:monospace;color:var(--review-purple)}.review-method-grid h3{font-size:21px;margin:16px 0 12px}.review-method-grid p{font-size:15px;color:var(--review-muted)}.review-disclosure{padding:24px 28px;background:#f6f2fc;border-left:3px solid #9671d5;margin:34px 0;border-radius:0 12px 12px 0}.review-disclosure h2,.review-disclosure h3{font-size:20px;margin:0 0 12px}.review-disclosure p{font-size:14px;color:#655772;margin:10px 0}.review-update{border-top:1px solid var(--review-line);padding-top:24px;margin-top:32px}.review-update h3{font-size:20px}.review-detail-hero{background:#faf8ff;padding:28px 0 48px;border-bottom:1px solid var(--review-line)}.review-detail-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:center}.review-detail-hero h1{font-size:clamp(32px,4.2vw,50px);margin:22px 0}.review-detail-hero .review-lead{font-size:17px}.review-detail-hero figure{margin:0}.review-detail-hero figure img{width:100%;height:auto;border-radius:18px;border:1px solid var(--review-line)}.review-detail-hero figcaption{font-size:12px;color:var(--review-muted);margin-top:8px;text-align:right}.review-reading-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:48px;padding-top:48px;padding-bottom:70px}.review-toc nav{position:sticky;top:100px;max-height:calc(100vh - 120px);overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:5px 16px 16px 0}.review-toc strong{font-size:13px;color:var(--review-purple);margin-bottom:8px}.review-toc a{font-size:13px;line-height:1.7;color:#6b5d79}.review-toc a:hover{color:var(--review-purple)}.review-article{min-width:0;font-size:16px;line-height:1.85}.review-article article[id],.review-article section[id],.review-prose [id]{scroll-margin-top:110px}.review-article h2{font-size:28px;margin:38px 0 20px}.review-article h3{font-size:21px;margin:26px 0 14px}.review-article p{margin:16px 0}.review-article ol,.review-article ul{padding-left:24px}.review-article li{margin-bottom:10px}.review-article a:not(.button){color:#7536c8;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.review-answer{padding:26px 30px;border:1px solid #d5bdf4;border-radius:16px;background:#fbf9ff}.review-answer h2{margin-top:12px}.review-answer p:last-child{margin-bottom:0}.review-facts{margin:30px 0;border-top:1px solid var(--review-line)}.review-facts>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:15px 0;border-bottom:1px solid var(--review-line);font-size:14px}.review-facts dt{color:var(--review-muted)}.review-facts dd{margin:0;overflow-wrap:anywhere}.review-prose,.review-table-wrap{overflow-x:auto}.review-table-hint{display:none;font-size:12px;color:var(--review-muted)}.review-article table{border-collapse:collapse;width:100%;font-size:14px;margin:24px 0}.review-article td,.review-article th{text-align:left;vertical-align:top;padding:16px;border:1px solid var(--review-line)}.review-article thead{background:#f5effc}.review-article th:first-child{min-width:130px}.review-status{display:inline-block;white-space:nowrap;padding:3px 8px;background:#f5efe4;color:#7a5a22;border-radius:5px;font-size:12px}.review-status.executed{background:#eee7fa;color:#694198}.review-finding{border:1px solid var(--review-line);border-radius:14px;padding:24px;margin:20px 0}.review-finding-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.review-finding-meta span{padding:3px 9px;border-radius:5px;background:#faf1df;color:#7b561e}.review-finding-meta span:first-child{color:#6b39a8;background:#f0e8fa;font-family:monospace}.review-finding h3{margin-top:16px}.review-finding dt{font-weight:600;font-size:14px;color:#51366c}.review-finding dd{margin:4px 0 16px;color:#685c73;font-size:15px}.review-finding dd:last-child{margin-bottom:0}.review-article blockquote{border-left:3px solid #c0a4e9;margin:24px 0;padding:12px 20px;background:#fbf9ff;font-size:14px;overflow-wrap:anywhere}.review-downloads{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.review-related{background:#f6f1fc;padding:26px;border-radius:14px;margin-top:40px}.review-related>span{color:#796987;font-size:13px}.review-related h2{font-size:23px;margin-top:12px}.review-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:680px;margin:24px auto}.review-evidence-grid figure{margin:0}.review-evidence-grid img{width:100%;height:auto;border:1px solid var(--review-line);border-radius:12px}.review-evidence-grid figcaption{font-size:13px;color:var(--review-muted);text-align:center;margin-top:10px}@media (max-width:1000px){.review-reading-layout{grid-template-columns:175px minmax(0,1fr);gap:28px}.review-detail-hero-grid{gap:28px}}@media (max-width:760px){.review-table-hint{display:block}.review-hub-hero{padding-bottom:32px}.review-cards,.review-detail-hero-grid,.review-method-grid,.review-reading-layout{grid-template-columns:1fr}.review-toc nav{position:static;max-height:none;padding:18px;border:1px solid var(--review-line);border-radius:12px;display:grid;grid-template-columns:1fr 1fr}.review-toc strong{grid-column:1/-1}.review-detail-hero-grid{gap:20px}.review-detail-hero figure{max-width:520px}.review-card-copy{padding:22px}.review-card h2{font-size:26px}.review-reading-layout{padding-top:24px}.review-article h2{font-size:24px}.review-facts>div{grid-template-columns:1fr;gap:5px}.review-answer,.review-disclosure,.review-finding{padding:20px}.review-table-wrap table{min-width:570px}.review-article td,.review-article th{padding:12px}}