.marketing { font-size:17px; }
.marketing a { color:inherit; text-underline-offset:5px; }
.marketing a:focus-visible { outline:3px solid var(--focus); outline-offset:5px; }
.public-header,.public-footer { max-width:1440px; margin:auto; padding:28px 6%; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.public-header { border-bottom:1px solid var(--rule); }
.public-brand { display:flex; align-items:center; gap:12px; text-decoration:none; text-transform:uppercase; font-size:13px; font-weight:750; line-height:1.1; letter-spacing:.05em; }
.public-header nav { display:flex; align-items:center; gap:30px; font-size:14px; }
.public-header nav a { text-decoration:none; }
.public-header nav a:hover { text-decoration:underline; }
.sign-in { padding:10px 16px; border:1px solid var(--rule); }
.public-section { max-width:1440px; margin:auto; padding:80px 6%; border-bottom:1px solid var(--rule); scroll-margin-top:24px; }
.hero { padding-top:48px; }
.hero h1 { max-width:1100px; font-size:clamp(38px,4.8vw,70px); line-height:1.09; letter-spacing:-.04em; text-wrap:balance; }
.hero .lead { max-width:760px; font-size:19px; line-height:1.65; margin:30px 0; }
.public-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; font-size:15px; }
.primary-link { display:inline-flex; align-items:center; gap:32px; padding:16px 22px; background:var(--ink); color:var(--paper)!important; text-decoration:none; }
.primary-link:hover { background:var(--accent-strong); color:var(--paper-raised)!important; }
.small-note { margin:16px 0 36px; font-size:13px; color:var(--ink-muted); }
.marketing figure { margin:0; min-width:0; }
.marketing img { max-width:100%; height:auto; }
.marketing figure img { display:block; border:1px solid var(--rule); width:100%; }
.marketing figcaption { display:flex; justify-content:space-between; gap:16px; margin-top:12px; color:var(--ink-muted); font-size:12px; }
.marketing figcaption span { font-family:var(--data); font-size:10px; letter-spacing:.08em; }
.section-columns { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:70px; }
.detail-capture img { aspect-ratio: .65; object-fit:cover; object-position:right; }
.marketing h2 { font:500 clamp(28px,3vw,43px)/1.14 var(--display); letter-spacing:-.025em; text-wrap:balance; margin-bottom:26px; }
.marketing h3 { font:600 23px var(--display); }
.marketing p { line-height:1.65; }
.record-diagram { border-top:2px solid var(--ink); }
.record-diagram>div { display:grid; grid-template-columns:1fr auto; padding:24px; background:var(--paper-raised); border:1px solid var(--rule); gap:6px 16px; }
.record-diagram small { grid-column:1/-1; font:10px var(--data); color:var(--ink-muted); margin-bottom:12px; }
.record-diagram strong { font:500 25px var(--display); }
.record-diagram span { grid-column:1; font-size:14px; color:var(--ink-muted); }
.record-diagram b { grid-column:2; grid-row:2/4; align-self:center; font:19px var(--data); }
.record-link { text-align:center; margin:14px; }
.record-link span { margin-left:12px; font-size:13px; }
.section-intro { max-width:760px; margin-bottom:36px; }
.matching h2,.privacy h2,.purpose h2,.final-cta h2 { max-width:920px; }
.mobile-capture { max-width:300px; justify-self:center; }
.mobile-capture figcaption { display:block; }
.purpose-columns { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; }
.purpose-columns p { font-size:15px; }
.final-cta { background:var(--paper-raised); }
.final-cta>p { max-width:650px; margin-bottom:28px; }
.public-footer { font-size:12px; color:var(--ink-muted); }
@media(max-width:760px) {
 .public-header { align-items:flex-start; padding:22px 6%; }
 .public-header nav { gap:12px 18px; flex-wrap:wrap; justify-content:flex-end; max-width:230px; font-size:12px; }
 .public-section { padding:48px 6%; }
 .hero .lead { font-size:17px; }
 .section-columns { grid-template-columns:1fr; gap:32px; }
 .purpose-columns { grid-template-columns:1fr; gap:8px; }
 .public-actions { gap:20px; font-size:14px; }
 .marketing figcaption { flex-wrap:wrap; }
 .public-footer { flex-wrap:wrap; }
}
@media(prefers-reduced-motion:no-preference) { html { scroll-behavior:smooth; } }
