:root { color-scheme: light; --ink:#182a33; --muted:#485b62; --line:#cbd6d7; --accent:#155a70; --paper:#f7faf9; --panel:#e9f1f1; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font: 400 1rem/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--paper); }
a { color:var(--accent); text-underline-offset:.2em; }
a:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.page { width:min(100% - 2.5rem, 69rem); margin:auto; }
.topbar { min-height:6rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; border-bottom:1px solid var(--line); }
.wordmark { font-size:1.4rem; font-weight:750; letter-spacing:-.045em; color:var(--ink); text-decoration:none; }
.mark { color:var(--accent); }
nav { display:flex; flex-wrap:wrap; gap:1.3rem; }
nav a { font-size:.95rem; }
main { padding: clamp(3rem,8vw,7rem) 0 4rem; }
.eyebrow,.number { color:var(--accent); font-weight:700; font-size:.84rem; letter-spacing:.12em; text-transform:uppercase; }
h1 { max-width:19ch; margin:.7rem 0 1.5rem; font-size:clamp(2.4rem,5.5vw,4.5rem); line-height:1.1; letter-spacing:-.055em; }
.lead { max-width:48rem; color:var(--muted); font-size:clamp(1.1rem,2vw,1.3rem); line-height:1.6; }
.rule { margin:4rem 0 0; border-top:2px solid var(--ink); }
.info { padding:2rem 0; display:grid; grid-template-columns:minmax(12rem,1fr) minmax(0,1.6fr); gap:2rem; border-bottom:1px solid var(--line); }
.info p { margin:0; color:var(--muted); }
.info .number { margin-bottom:.5rem; color:var(--accent); }
h2 { margin:0; font-size:1.35rem; line-height:1.3; letter-spacing:-.025em; }
h3 { margin:.2rem 0 .55rem; font-size:1.55rem; line-height:1.3; letter-spacing:-.035em; }
.app-section { padding:2.3rem 0 2.7rem; border-bottom:1px solid var(--line); }
.section-heading { margin-bottom:1.3rem; }
.section-heading .number { margin:0 0 .35rem; }
.app-card { background:#fff; border:1px solid var(--line); border-radius:.65rem; padding:1.6rem; display:flex; justify-content:space-between; align-items:end; gap:2rem; }
.app-card p { margin:0; color:var(--muted); }
.app-card .tag { margin:0 0 .55rem; color:var(--accent); font-size:.8rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.text-link { flex-shrink:0; font-weight:700; white-space:nowrap; }
.small-note { color:var(--muted); font-size:.92rem; }
.notice { margin-top:3rem; padding:1.1rem 1.5rem; border-left:3px solid var(--accent); background:var(--panel); }
.notice p { margin:0; }
.legal h1 { font-size:clamp(2.3rem,5vw,3.6rem); }
.legal section { max-width:48rem; padding:2rem 0; border-bottom:1px solid var(--line); }
.legal section:first-of-type { margin-top:3rem; border-top:2px solid var(--ink); }
.legal section p { margin:.8rem 0 0; color:var(--muted); }
.legal strong { color:var(--ink); overflow-wrap:anywhere; }
footer { display:flex; justify-content:space-between; gap:1rem; padding:1.5rem 0 2rem; border-top:1px solid var(--line); color:var(--muted); font-size:.9rem; }
@media(max-width:42rem) { .info { grid-template-columns:1fr; gap:.5rem; } .topbar { min-height:4.7rem; } main { padding-top:3.5rem; } .rule { margin-top:3rem; } .app-card { display:block; } .text-link { display:inline-block; margin-top:1.2rem; } }
