/* Scoped Quality & assurance reading view; no fixed-width diagrams. */
.assurance-page .assurance-intro{max-width:70ch;font-size:1.1rem;line-height:1.7}
.assurance-page .assurance-map{margin-block:1rem 2.5rem}
.assurance-page figure{margin:0;padding:clamp(1rem,3vw,2rem);border:1px solid #cfc5b4;border-radius:1rem;background:#e8edf4}
.assurance-page figcaption h2{margin:.3rem 0 1.4rem;font-size:clamp(1.6rem,3vw,2.4rem)}
.assurance-entry{display:flex;flex-wrap:wrap;gap:.6rem 2rem;justify-content:space-between;padding:1rem 0;border-block:1px solid #b8ab96;font-size:1rem;line-height:1.6}
.assurance-entry span{color:#5b5146}
.assurance-lanes{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.assurance-lanes li{min-width:0;padding-top:1.4rem;position:relative}
.assurance-question{display:flex;gap:.75rem;align-items:flex-start}
.assurance-number{font-size:1rem;color:#74603b;padding-top:.2rem}
.assurance-question h3{font-size:1.2rem;line-height:1.4;margin:0;overflow-wrap:anywhere}
.assurance-name{font-weight:700;color:#232f3d}
.assurance-name span{display:block;font-size:.875rem;font-weight:400;color:#574d43;margin-top:.3rem}
.assurance-lanes p{font-size:1rem;line-height:1.65}
.assurance-outcome{padding-top:.8rem;border-top:2px solid #9d7c47}
.assurance-caption{font-size:.9375rem;line-height:1.6;color:#5b5146;margin:1.2rem 0 0}
.assurance-reading{max-width:880px}.assurance-reading .prose{max-width:none}
.assurance-technical{border-block:1px solid #c5b8a1;margin:2rem 0;padding:1rem 0}
.assurance-technical>summary{cursor:pointer;font-size:1.15rem;font-weight:700;line-height:1.5;padding:.5rem}
.assurance-technical>summary:focus-visible{outline:3px solid #88652d;outline-offset:4px}
.assurance-technical>div{padding:.5rem}
.assurance-technical section{margin:1.5rem 0}
@media(max-width:800px){.assurance-lanes{grid-template-columns:minmax(0,1fr);gap:0}.assurance-lanes li+li{margin-top:1rem;border-top:1px solid #cfc5b4}.assurance-entry{display:block}.assurance-entry span{display:block;margin-top:.4rem}}
@media print{.assurance-page figure{background:white;color:black}.assurance-page .assurance-lanes{grid-template-columns:minmax(0,1fr)}.assurance-page .assurance-lanes li{break-inside:avoid}.assurance-page .assurance-name,.assurance-page .assurance-name span,.assurance-page .assurance-caption,.assurance-page .assurance-entry span,.assurance-page .assurance-number{color:black}}
