:root {
  --font-body: 'Satoshi', Arial, sans-serif;
  --text-xs: clamp(.75rem,.72rem + .15vw,.875rem);
  --text-sm: clamp(.875rem,.84rem + .15vw,1rem);
  --text-base: clamp(1rem,.96rem + .2vw,1.125rem);
  --space-2:.5rem; --space-3:.75rem; --space-4:1rem;
  --space-5:1.25rem; --space-6:1.5rem; --space-8:2rem;
}
body { font-family:var(--font-body); }
section { scroll-margin-top:var(--space-4); }
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible {
  outline:3px solid #8DB9D9; outline-offset:4px;
}
.skip-link { position:absolute; top:-100px; left:var(--space-4); z-index:20;
  background:var(--blue); color:#fff; padding:var(--space-3); }
.skip-link:focus { top:var(--space-4); }
.brand { display:flex; align-items:center; gap:var(--space-2); white-space:nowrap; }
.brand-mark { width:30px; height:30px; flex:none; color:var(--blue); }
.links { gap:var(--space-4); }
.theme-toggle { border:1px solid var(--line); border-radius:5px; width:38px; height:38px;
  font-size:24px; background:var(--white); color:var(--ink); cursor:pointer; }
.hero-assurance { max-width:440px; margin-top:var(--space-4); }
.credential-strip { padding:var(--space-6) 0; border-block:1px solid var(--line); background:var(--white); }
.credentials { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-6); }
.credentials div { display:flex; flex-direction:column; gap:var(--space-2); }
.credentials strong { font-size:var(--text-base); color:var(--ink); }
.credentials span { font-size:var(--text-sm); color:var(--body); }
.evidence-card { border-top:3px solid var(--blue); }
.evidence-card ul { font-size:var(--text-base); }
.evidence-card .small-copy { border-top:1px solid var(--line); padding-top:var(--space-4); }
.text-link { display:inline-block; margin-top:var(--space-3); color:var(--blue);
  font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.faq { max-width:800px; }
.faq h2 { margin-bottom:var(--space-8); }
details { border-bottom:1px solid var(--line); padding:var(--space-5) 0; }
summary { cursor:pointer; font-weight:700; font-size:var(--text-base); }
details p { color:var(--body); font-size:var(--text-base); max-width:680px; }
.quote label { font-size:var(--text-sm); }
.quote .contact-line { font-size:var(--text-base); margin-top:var(--space-6); }
.quote .contact-line a { color:#B9D9F0; overflow-wrap:anywhere; text-decoration:underline; }
.quote .contact-caution { color:#C1CAD1; }
.form-note { font-size:var(--text-xs); }
.preview-note { padding:var(--space-3); border:1px solid #66727B; border-radius:5px; }
[hidden] { display:none !important; }
[data-theme="dark"] {
  --ink:#EDF1F5; --body:#B5C1CD; --blue:#93C3E7; --blue-dark:#B1D6F2;
  --page:#151C24; --white:#1D2732; --line:#394653; --pale:#202F3E;
}
[data-theme="dark"] .button { color:#12202C; }
[data-theme="dark"] .button.alt { color:var(--ink); }
[data-theme="dark"] .links a { color:var(--body); }
[data-theme="dark"] .links .button { color:#12202C; }
[data-theme="dark"] .status-title, [data-theme="dark"] ul { color:var(--body); }
[data-theme="dark"] .note { color:var(--body); }
[data-theme="dark"] .quote { background:#10171E; color:#EDF1F5; }
[data-theme="dark"] input, [data-theme="dark"] select, [data-theme="dark"] textarea {
  background:#1D2732; color:#EDF1F5; }
[data-theme="dark"] .quote .body-copy { color:#C1CAD1; }
@media (max-width:760px) {
  .brand { font-size:16px; gap:var(--space-2); }
  .brand-mark { width:24px; height:24px; }
  .nav { gap:var(--space-3); }
  .links { gap:var(--space-2); }
.links .button { font-size:14px; padding:10px 12px; white-space:nowrap; }
  .theme-toggle { width:34px; height:34px; }
  .credentials { grid-template-columns:1fr; gap:var(--space-5); }
  .credentials div { padding-bottom:var(--space-4); border-bottom:1px solid var(--line); }
  .credentials div:last-child { border:0; padding-bottom:0; }
  .quote .contact-line a { display:block; margin-top:var(--space-2); }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
