.quality-guide a:focus-visible,.quality-guide summary:focus-visible { outline:2px solid var(--sage-dark); outline-offset:4px; }
.quality-guide .local-section-heading { max-width:860px; margin-bottom:30px; }
.quality-guide .local-section-heading h2 { font-size:clamp(31px,3.5vw,44px); }
.quality-guide .local-section-heading p { max-width:820px; font-size:16px; line-height:1.7; }
.quality-overview { padding-top:42px; padding-bottom:36px; }
.quality-jump-links { display:flex; gap:12px; flex-wrap:wrap; }
.quality-jump-links a { padding:12px 18px; border:1px solid var(--line); border-radius:100px; text-decoration:none; font-size:13px; font-weight:700; }
.quality-jump-links a:hover { background:#e7ece3; }
.quality-section { padding-top:40px; padding-bottom:40px; border-top:1px solid var(--line); scroll-margin-top:105px; }
.quality-provider-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.quality-provider-grid--single { grid-template-columns:minmax(0,1fr); }
.quality-provider-grid--single p { max-width:850px; }
.quality-provider-grid article { padding:30px; background:var(--paper); border:1px solid var(--line); border-radius:24px; }
.quality-location-tag { display:inline-block; padding:6px 10px; border-radius:100px; background:#e7ece3; color:var(--sage-dark); font-size:10px; font-weight:800; letter-spacing:.08em; }
.quality-provider-grid h3 { font-size:30px; margin:22px 0 10px; }
.quality-provider-grid address { font:600 13px/1.6 'DM Sans',sans-serif; color:var(--ink-soft); }
.quality-provider-grid p,.quality-plan p,.quality-answers p { font-size:15px; line-height:1.7; color:var(--ink-soft); }
.quality-provider-grid .quality-action { margin-top:22px; padding-top:20px; border-top:1px solid var(--line); color:var(--ink); }
.quality-sources { display:flex; flex-wrap:wrap; gap:14px; margin-top:20px; }
.quality-sources a,.quality-reading-link { color:var(--sage-dark); font-size:13px; font-weight:700; text-underline-offset:4px; }
.quality-plan { padding:0; margin:0; list-style:none; }
.quality-plan li { display:grid; grid-template-columns:45px 1fr; gap:22px; padding:26px 0; border-top:1px solid var(--line); }
.quality-plan li>span { font-size:12px; font-weight:800; color:var(--sage-dark); padding-top:7px; }
.quality-plan h3 { margin:0 0 8px; font-size:26px; }
.quality-plan p { margin:0; max-width:850px; }
.quality-answers details { border-bottom:1px solid var(--line); padding:20px 0; }
.quality-answers summary { cursor:pointer; font-size:17px; font-weight:700; }
.quality-answers p { max-width:880px; margin:14px 0 0; }
.quality-source-note { color:var(--ink-soft); font-size:12px; line-height:1.7; margin:32px 0 14px; }
@media(max-width:650px) { .quality-provider-grid { grid-template-columns:1fr; } .quality-provider-grid article { padding:24px; } .quality-section { padding-top:30px; padding-bottom:30px; } .quality-plan li { grid-template-columns:28px 1fr; gap:12px; } .quality-plan h3 { font-size:23px; } .quality-guide .local-section-heading p { font-size:15px; } }
