/* Readability pass: minimum sizes and contrast for text people are meant to
   read, the markets strip, the audit log, and a shorter hero on phones.
   Product mock-ups keep their scaled-down type on purpose. */

/* Numbered markers, captions and labels */
body .sp-step-number,body .custody-points span,body .launch-list li>span,body .ex-topic-mark,
body .company-downloads a>span,body .company-evidence-grid article>span,
body .story-chapter-number,body .boundary-ownership>span{font-size:12px;letter-spacing:.02em}
body .sp-art-caption,body .custody-card>span,body .custody-review-top>span,body .workbench-output span,
body .code-title span,body .preview-caption span{font-size:12px}
body .sp-system-core>span{font-size:11px}
body .custody-review>p{font-size:13px;color:#cfdeea}
body .review-step{font-size:11px}
body .scenario-route li{font-size:13px}
body .workbench-footer span,body .workbench-footer a,body .code-purpose{font-size:13px}
body .custody-points p,body .trust-facts p,body .outcome-grid p,body .solution-card p{color:#4f6072}
body .custody-points p{color:#c4d3e0}

/* Markets in use (replaces the scrolling logo belt) */
.protocol-static{display:flex;flex-wrap:wrap;align-items:center;gap:14px 40px;padding:14px 0 44px}
.protocol-static .protocol-logo{display:inline-flex;align-items:center;gap:12px;font-size:20px;color:var(--ink)}
.protocol-static .protocol-logo b{font-weight:500}
.protocol-static .protocol-logo small{font-size:14px;color:var(--muted);margin-left:2px}
.protocol-static .protocol-note{flex-basis:100%;font-size:14px;color:var(--muted)}

/* Security: audit log */
.anchor-alias{position:relative;top:-110px;display:block}
.audit-log{display:grid;gap:20px}
.audit-entry{display:grid;gap:22px;padding:30px 32px;border:1px solid var(--line);border-radius:24px;background:#fff}
.audit-entry-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px}
.audit-entry-head img{height:30px;width:auto}
.audit-entry-head h3{font-size:24px;font-weight:500;letter-spacing:-.02em;line-height:1.2}
.audit-entry-head p{font-size:15px;color:var(--muted);margin-top:2px}
.audit-severity{display:grid;grid-template-columns:repeat(5,1fr);margin:0;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.audit-sev{padding:16px 18px;border-left:1px solid var(--line)}
.audit-sev:first-child{border-left:0}
.audit-sev dt{font-size:14px;color:var(--muted)}
.audit-sev dd{margin:6px 0 0;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.audit-sev strong{font-size:30px;font-weight:400;letter-spacing:-.02em;line-height:1}
.audit-sev dd span{font-size:13px;font-weight:500;color:#1f6f5c}
.audit-sev.is-zero strong{color:#9aa8b6}
.audit-summary{font-size:16px;line-height:1.7;color:var(--ink);max-width:760px}
.audit-refs{display:flex;flex-wrap:wrap;gap:12px 28px;padding-top:18px;border-top:1px solid var(--line)}
.audit-refs a{display:inline-flex;align-items:baseline;gap:10px;font-size:14px;color:var(--muted)}
.audit-refs code{font-size:14px;color:var(--blue);border-bottom:1px solid #c3d3ff}
.audit-refs a:hover code{border-color:var(--blue)}

@media(max-width:900px){
  .audit-severity{grid-template-columns:repeat(3,1fr)}
  .audit-sev:nth-child(4){border-left:0}
  .audit-sev:nth-child(n+4){border-top:1px solid var(--line)}
}
@media(max-width:740px){
  /* The hero no longer fills the whole phone screen with empty space. */
  body .home-film{height:auto;min-height:0;max-height:none}
  body .home-film .film-content{min-height:0;padding-top:118px;padding-bottom:190px;justify-content:flex-start}
  .protocol-static{gap:12px 24px;padding-bottom:32px}
  .protocol-static .protocol-logo{font-size:17px}
  .audit-entry{padding:22px 18px;gap:18px}
  .audit-entry-head{grid-template-columns:1fr;gap:12px}
  .audit-entry-head .button{justify-self:start}
  .audit-severity{grid-template-columns:repeat(2,1fr)}
  .audit-sev{border-left:0;border-top:1px solid var(--line)}
  .audit-sev:nth-child(2n){border-left:1px solid var(--line)}
  .audit-sev:nth-child(-n+2){border-top:0}
  .audit-sev:last-child{grid-column:1 / -1;border-left:0}
  .sp-step-number,.custody-points span,.launch-list li>span{font-size:12px}
}

/* The custody photo sits behind the cards; it must never take taps. */
.custody-photo{pointer-events:none}
