/* Audit Angel CQC — formal, evidence-first layer. Loaded last; overrides decorative styles.
   Intent: read like a regulator-facing record, not a consumer app. Flat colour, hard edges, rules instead of shadows. */
/* Always light, whatever the device setting. Beats the dark rules in styles.css and site.css (same specificity, loaded later). */
:root:root{--bg:#F5F9FB;--surface:#FFFFFF;--sunk:#EAF2F6;--ink:#2E2E2E;--muted:#5F5E67;--line:#DCE6EC;--accent:#0B7FAE;--accent-soft:#DDF3F6;--on-accent:#FFFFFF;--ink-strong:#0F1E26;--rule:#C9D6DE;--radius:4px;--radius-lg:6px;color-scheme:light}
body{font-size:16px;line-height:1.6;letter-spacing:0}
h1,h2,h3,h4{font-weight:600;letter-spacing:-.01em}
h1{font-size:clamp(32px,4.2vw,50px);line-height:1.15}
h2{font-size:clamp(24px,2.6vw,32px);line-height:1.25}
h3{font-size:18px;font-weight:600}
.eyebrow{font:600 12px var(--head);letter-spacing:.12em;color:var(--accent);padding-bottom:10px;border-bottom:2px solid var(--accent);display:inline-block;margin-bottom:18px}
.lead{color:var(--ink);opacity:.82}

/* flat buttons, no gradient, no glow */
.btn{background:var(--accent);border-radius:var(--radius);font-weight:600;letter-spacing:.01em;transition:background-color .15s}
.btn:hover{background:var(--deep-a);background-position:0 0}
.btn.ghost{border-width:1px;border-color:var(--ink);border-radius:var(--radius)}
.btn.lg{border-radius:var(--radius)}
.hero .btn:not(.ghost){box-shadow:none;background:#fff;color:var(--deep-a)}
.hero .btn:not(.ghost):hover{background:#E6F3F7}

/* cards and frames: hairline borders, square corners */
.card,.frame,.types a,.step,.badges figure,.tlist a,.kq,.tdetail aside,.price .card,.ra-meta,.scroll,.phone{border-radius:var(--radius-lg)}
.card,.types a,.step,.tlist a,.price .card,.plan{box-shadow:none}
.frame{box-shadow:none;border-color:var(--rule)}
.frame .chrome{background:#fff}
.frame .chrome span{font-family:var(--mono);font-size:11px;color:var(--muted)}
.types a:hover,.step:hover,.tlist a:hover{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}

/* hero: solid deep teal, straight edge, no curve */
.hero{background:var(--deep-a);background-image:none;padding:80px 0 88px}
.hero::after{display:none}
.hero .frame{box-shadow:none;border-color:rgba(255,255,255,.25)}
.hero .eyebrow{color:#fff;border-bottom-color:#fff}
.hero .lead{color:rgba(255,255,255,.92);opacity:1}
.hero .trust{border-top:1px solid rgba(255,255,255,.22);padding-top:16px}

/* sections: ruled, numbered rhythm */
section{padding:80px 0}
section.tight{padding:56px 0}
.alt{background:#fff;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.stats{border-top:2px solid var(--ink)}
.stat b{font-variant-numeric:tabular-nums;color:var(--ink-strong)}
.src{border-top:1px solid var(--rule);padding-top:12px}
.frow{border-top:1px solid var(--rule);padding:64px 0}

/* header: plain bar with a rule underneath */
header.top{box-shadow:none;backdrop-filter:none;background:#fff;border-bottom:2px solid var(--ink)}
header.top nav a.l{font-weight:500}
header.top nav a.l[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--accent)}

/* tables and comparisons read like a ledger */
table.cmp th,table.cmp td{border-bottom:1px solid var(--rule)}
table.cmp thead th{color:var(--ink);font-weight:600}
.checklist li::marker{color:var(--accent)}

/* final CTA: flat teal band */
.final{background:var(--deep-a);background-image:none}
footer.site{background:var(--ink-strong);background-image:none;padding:64px 0 40px}
footer.site .legal{border-top:1px solid rgba(255,255,255,.18);padding-top:20px;color:rgba(255,255,255,.7);font-size:13px}

/* plain, high-contrast status chips (for readiness, ratings) */
.rt,.pill{border-radius:3px;font-weight:600;letter-spacing:.01em}
.pill{background:transparent;border:1px solid currentColor}
.snap-risk{border-left:3px solid var(--accent);border-radius:0;background:var(--sunk)}
.kqs .kq{border-radius:var(--radius)}

/* verification strip: shows where the data and the product stand */
.verify{border:1px solid var(--rule);border-left:4px solid var(--accent);background:#fff;padding:18px 22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0}
.verify dt{font:600 11px var(--head);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}
.verify dd{margin:0;font-size:15px;color:var(--ink)}
@media (max-width:760px){.verify{grid-template-columns:1fr}}

/* Dark-ink logo everywhere on light surfaces (the white one is only for the dark footer, which keeps its own rule). */
.brand .logo-d{display:block!important}
.brand .logo-w{display:none!important}

/* numbered steps (mock inspection guide) */
.msteps{list-style:none;margin:28px 0 0;padding:0;counter-reset:m;display:grid;gap:0;max-width:860px}
.msteps li{counter-increment:m;display:grid;grid-template-columns:48px 1fr;gap:14px;padding:20px 0;border-top:1px solid var(--rule)}
.msteps li:last-child{border-bottom:1px solid var(--rule)}
.msteps li::before{content:counter(m,decimal-leading-zero);font:600 15px var(--mono);color:var(--accent);padding-top:2px}
.verify a{font-weight:600}

/* "Free tools" menu in the top bar */
header.top nav .dd{position:relative}
header.top nav .dd>button.l{appearance:none;background:none;border:0;cursor:pointer;color:var(--ink);font:500 15px var(--head);padding:8px 11px;border-radius:var(--radius);display:inline-flex;align-items:center;gap:6px;min-height:40px}
header.top nav .dd>button.l::after{content:"▾";font-size:13px;line-height:1;transition:transform .15s}
header.top nav .dd.open>button.l::after{transform:rotate(180deg)}
header.top nav .dd>button.l:hover{background:var(--sunk)}
header.top nav .dd>button.l.on{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);border-radius:0}
.dd-menu{display:none;position:absolute;top:calc(100% + 10px);left:0;width:330px;background:#fff;border:1px solid var(--rule);border-top:3px solid var(--accent);border-radius:var(--radius);padding:6px;z-index:20;box-shadow:0 12px 28px -18px rgba(15,30,38,.35)}
.dd.open .dd-menu{display:block}
.dd-menu a{display:block;padding:10px 12px;text-decoration:none;color:var(--ink);border-radius:3px}
.dd-menu a:hover,.dd-menu a:focus-visible{background:var(--sunk)}
.dd-menu a[aria-current="page"]{box-shadow:inset 3px 0 0 var(--accent)}
.dd-menu b{display:block;font:600 15px var(--head)}
.dd-menu span{display:block;font-size:13px;color:var(--muted);margin-top:2px}
@media (max-width:560px){.dd-menu{position:fixed;top:72px;left:16px;right:16px;width:auto}}

/* footer: certifications instead of a blurb */
footer.site .fcert{display:flex;flex-direction:column;gap:6px;margin:16px 0 0;font-size:13px}
footer.site .fcert a{color:rgba(255,255,255,.82)}
footer.site .fcert a::before{content:"✓";margin-right:8px;color:#9FF1EE}
