* { box-sizing: border-box; }
:root { --ink:#182b3a; --muted:#5d6b75; --green:#176b59; --pale:#eef5f2; --line:#dce5e1; --paper:#fff; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:var(--green); }
.notice { padding:8px 20px; text-align:center; background:#f2f5f4; color:#52615d; font-size:13px; }
.site-header { max-width:1120px; margin:auto; padding:22px 24px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.brand { color:var(--ink); font-weight:800; letter-spacing:.12em; text-decoration:none; font-size:14px; }
nav { display:flex; gap:22px; flex-wrap:wrap; }
nav a,.site-footer a { color:var(--muted); text-decoration:none; font-size:14px; }
nav a:hover,.site-footer a:hover { color:var(--green); text-decoration:underline; }
main { max-width:1040px; margin:auto; padding:0 24px 56px; }
.hero { padding:76px 0 64px; max-width:780px; }
.eyebrow { color:var(--green); font-size:12px; font-weight:800; letter-spacing:.14em; }
h1 { font-size:clamp(38px,6vw,62px); line-height:1.08; letter-spacing:-.04em; margin:14px 0 20px; }
h2 { font-size:clamp(25px,3vw,34px); line-height:1.2; letter-spacing:-.025em; margin:10px 0 14px; }
h3 { font-size:20px; margin:8px 0; }
p { margin:0 0 14px; }
.lead { font-size:20px; color:#40525d; max-width:700px; }
.updated,.small { color:var(--muted); font-size:13px; }
.button { display:inline-block; margin:16px 0 8px; padding:14px 22px; border-radius:7px; color:white; background:var(--green); font-weight:750; text-decoration:none; box-shadow:0 5px 14px #176b5922; }
.button:hover { background:#105443; }
.content-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:20px; }
.panel,.card { border:1px solid var(--line); border-radius:12px; padding:26px; }
.soft { background:var(--pale); border-color:transparent; }
ul { padding-left:20px; margin:10px 0 0; }
li { margin:7px 0; }
.section { padding:70px 0 10px; }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:22px; }
.card p { color:var(--muted); font-size:15px; }
.number { color:var(--green); font-size:13px; font-weight:800; letter-spacing:.1em; }
.callout { margin-top:58px; padding:30px; border-radius:14px; background:var(--pale); display:flex; justify-content:space-between; align-items:center; gap:24px; }
.callout p { max-width:610px; color:#40525d; }
details { border-bottom:1px solid var(--line); padding:18px 0; }
summary { cursor:pointer; font-weight:700; }
details p { margin:12px 0 0; color:var(--muted); }
.disclosure { margin-top:70px; padding:25px; background:#f7f9f8; border:1px solid var(--line); border-radius:12px; }
.disclosure h2 { font-size:18px; letter-spacing:0; margin-top:8px; }
.disclosure p { color:var(--muted); font-size:14px; }
.site-footer { border-top:1px solid var(--line); padding:24px; display:flex; justify-content:space-between; gap:15px; flex-wrap:wrap; color:var(--muted); font-size:13px; }
@media (max-width:700px) {
  .site-header { align-items:flex-start; flex-direction:column; }
  nav { gap:14px; }
  .hero { padding:48px 0; }
  .content-grid,.cards { grid-template-columns:1fr; }
  .callout { align-items:flex-start; flex-direction:column; }
  .site-footer { flex-direction:column; }
}
