:root { --ink:#17253a; --muted:#5b6878; --green:#238a51; --mint:#effaf2; --paper:#fff; --gold:#f5bd35; --line:#dce9df; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; color:var(--ink); background:radial-gradient(circle at 12% 10%,#d9f7e3,transparent 32rem),var(--mint); font-family:ui-rounded,"Avenir Next",Avenir,system-ui,sans-serif; line-height:1.58; }
.shell { width:min(100% - 32px,760px); margin:0 auto; padding:54px 0 72px; }
.home { max-width:620px; min-height:100vh; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.brand-mark { width:86px; height:86px; display:grid; place-items:center; border-radius:30px; color:#fff; background:linear-gradient(145deg,#46bc72,#167544); font-size:44px; box-shadow:0 16px 30px #16754440; }
.eyebrow { margin:23px 0 5px; color:var(--green); font-size:.76rem; font-weight:800; letter-spacing:.12em; }
h1 { max-width:540px; margin:0; font-size:clamp(2rem,6vw,3.35rem); line-height:1.08; letter-spacing:-.045em; }
.lead { margin:14px 0 28px; color:var(--muted); font-size:1.05rem; }
.cards { width:100%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; text-align:left; }
.card { display:grid; gap:6px; min-height:148px; padding:20px; color:var(--ink); text-decoration:none; border:1px solid var(--line); border-radius:22px; background:var(--paper); box-shadow:0 8px 22px #193f2412; transition:transform .18s ease,box-shadow .18s ease; }
.card:hover,.card:focus-visible { transform:translateY(-3px); box-shadow:0 14px 28px #193f2420; outline:3px solid #99dfaf; }
.card span { font-size:27px; }.card strong { font-size:1rem; }.card small { color:var(--muted); }
.meta { margin:26px 0 0; color:var(--muted); font-size:.8rem; }
.top { display:flex; align-items:center; gap:12px; margin-bottom:25px; }.back { color:var(--green); font-weight:800; text-decoration:none; }.badge { display:inline-block; padding:4px 9px; color:#8b6510; border-radius:999px; background:#fff0bd; font-size:.75rem; font-weight:800; }.legal-title { margin:0 0 5px; font-size:clamp(2rem,6vw,3rem); line-height:1.12; letter-spacing:-.04em; }.updated { margin:0 0 25px; color:var(--muted); font-size:.88rem; }.section { margin:12px 0; padding:23px; border:1px solid var(--line); border-radius:20px; background:var(--paper); box-shadow:0 7px 18px #193f240c; }.section h2 { margin:0 0 10px; font-size:1.12rem; }.section p { margin:10px 0 0; color:#415063; }.footer { margin-top:28px; color:var(--muted); font-size:.86rem; }
@media (max-width:540px) { .shell { padding-top:32px; }.cards { grid-template-columns:1fr; }.home { justify-content:flex-start; padding-top:82px; } }

.section a,.footer a { color:var(--green); font-weight:800; }
