:root{--ink:#0e2a3b;--ink2:#17394e;--paper:#f4f7f9;--card:#fff;--gold:#f2b53d;--gold-d:#b57d00;--text:#16303f;--mute:#4a6272;--line:#d7e0e6;--r:14px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:17px/1.6 "Avenir Next","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;color:var(--text);background:var(--paper)}
h1,h2,h3{font-family:Georgia,"Iowan Old Style","Times New Roman",serif;line-height:1.15;margin:0;color:var(--ink)}
h1{font-size:clamp(2.1rem,6vw,3.6rem);letter-spacing:-.01em}
h2{font-size:clamp(1.6rem,4vw,2.3rem);margin-bottom:1.5rem}
h3{font-size:1.1rem;margin-bottom:.35rem}
p{margin:0 0 1rem;max-width:62ch}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--ink);padding:10px 14px;z-index:10}
.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid var(--gold-d);outline-offset:3px}
.top{background:var(--ink);color:#fff;position:sticky;top:0;z-index:5}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px;font:700 1.25rem Georgia,serif;text-decoration:none;color:#fff}
.mark{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--gold);color:var(--ink);font-size:1.1rem}
nav{display:flex;align-items:center;gap:6px}
.navlink{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;text-decoration:none;font-size:.95rem}
.navlink:hover{text-decoration:underline}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;background:var(--gold);color:var(--ink);font-weight:700;text-decoration:none;border:2px solid var(--gold);transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-2px);background:#ffc85a}
.btn-small{min-height:44px;padding:0 18px;font-size:.95rem}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.12)}
.btn-ghost-dark{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.5rem}
.hero{background:radial-gradient(1200px 500px at 85% -10%,#1f5873 0,transparent 60%),var(--ink);color:#e6eef3;padding:64px 0 80px}
.hero h1{color:#fff}
.lead{font-size:1.15rem;margin-top:1.25rem;color:#c9d9e2}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.ledger{margin:0;background:var(--card);color:var(--text);border-radius:var(--r);padding:20px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.ledger-head{display:flex;justify-content:space-between;font-size:.85rem;color:var(--mute);border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:6px}
.ledger ol{list-style:none;margin:0;padding:0}
.ledger li{display:grid;grid-template-columns:70px 1fr 48px;align-items:center;gap:12px;min-height:44px;font-size:.92rem}
.ledger i{display:block;height:10px;border-radius:99px;background:#e3eaee;position:relative;overflow:hidden}
.ledger i::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#1c7c68,#2fa88c);transform-origin:left;animation:fill .7s ease-out both;animation-delay:calc(var(--i)*.45s + .3s)}
.ledger b{font-size:.8rem;color:#1c7c68;opacity:0;animation:show .01s both;animation-delay:calc(var(--i)*.45s + .95s)}
@keyframes fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes show{to{opacity:1}}
.block{padding:72px 0}
.tint{background:#e6edf1}
.grid,.roles,.steps{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.grid{grid-template-columns:repeat(4,1fr)}
.grid li{border-top:3px solid var(--gold);padding-top:14px}
.grid p,.roles p,.steps p{color:var(--mute);margin:0}
.two{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:start}
.roles{grid-template-columns:1fr 1fr}
.roles li{background:var(--card);border-radius:var(--r);padding:18px;border:1px solid var(--line)}
.steps{grid-template-columns:repeat(4,1fr);counter-reset:s}
.steps li{counter-increment:s;position:relative;padding-left:0}
.steps li::before{content:counter(s);display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--gold);font:700 1rem Georgia,serif;margin-bottom:12px}
.contact{background:var(--ink);color:#c9d9e2}
.contact h2{color:#fff}
.foot{background:#0a1f2c;color:#9fb6c4;font-size:.9rem}
@media (max-width:900px){.hero-grid,.two{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){body{font-size:16px}.navlink{display:none}.grid,.steps,.roles{grid-template-columns:1fr}.hero{padding:40px 0 56px}.block{padding:52px 0}.btn{width:100%}.btn-small{width:auto}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ledger i::after{animation:none}.ledger b{animation:none;opacity:1}.btn{transition:none}}
