:root { color-scheme: light; --ink:#28312c; --muted:#626b65; --green:#357b28; --red:#bf0624; --line:#e1e7df; --paper:#fff; --background:#f6f8f5; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:24px; }
body { margin:0; background:var(--background); color:var(--ink); font:15px/1.85 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif; }
a { color:var(--green); text-underline-offset:4px; overflow-wrap:anywhere; }
a:hover { color:var(--red); }
a:focus-visible,summary:focus-visible { outline:3px solid #c14e17; outline-offset:4px; border-radius:2px; }
img { max-width:100%; height:auto; }
.wrap { width:min(960px,calc(100% - 40px)); margin-inline:auto; }
.skip-link { position:absolute; left:12px; top:-100px; z-index:10; background:#fff; padding:8px 16px; }
.skip-link:focus { top:12px; }
.site-header { background:#fff; border-top:3px solid var(--red); }
.brand-row { min-height:90px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:10px; }
.brand { display:inline-flex; flex-shrink:0; }
.brand img { display:block; width:165px; height:60px; }
.submark { display:block; width:389px; height:39px; object-fit:contain; }
.site-nav { background:var(--green); }
.nav-list { display:flex; flex-wrap:wrap; gap:0 6px; list-style:none; margin-block:0; padding:0; }
.nav-list a { display:block; padding:10px 21px; color:#fff; text-decoration:none; }
.nav-list a:hover { background:#28621f; }
.nav-list a[aria-current="page"] { background:#fff; color:var(--green); font-weight:700; }
.breadcrumb { margin:22px 0 18px; color:var(--muted); font-size:13px; }
.breadcrumb span { margin-inline:8px; color:#9da69c; }
.page-grid { display:grid; grid-template-columns:190px minmax(0,1fr); gap:24px; align-items:start; margin-bottom:40px; }
.sidebar { background:var(--paper); border:1px solid var(--line); border-radius:5px; padding:20px 16px; }
.sidebar-title { margin:0 10px 12px; font-size:14px; color:var(--muted); }
.side-links { list-style:none; margin:0; padding:0; }
.side-links a { display:block; padding:9px 10px; border-radius:3px; text-decoration:none; }
.side-links a[aria-current="page"] { background:#edf5e9; color:#275f1d; font-weight:700; }
.side-note { border-top:1px solid var(--line); margin:20px 10px 0; padding-top:16px; color:var(--muted); font-size:12px; }
.side-note a { display:inline-block; margin-top:3px; }
.article { min-width:0; background:#fff; border:1px solid var(--line); border-radius:5px; padding:32px 36px; }
.eyebrow { margin:0 0 8px; color:var(--green); font-size:12px; letter-spacing:1.4px; font-weight:700; }
h1 { margin:0 0 12px; font-size:30px; line-height:1.4; letter-spacing:-.5px; }
.lead { margin:0; color:var(--muted); font-size:16px; }
.article-header { padding-bottom:25px; margin-bottom:26px; border-bottom:1px solid var(--line); }
.article section + section { margin-top:28px; }
h2 { margin:0 0 11px; font-size:19px; line-height:1.55; }
h3 { margin:18px 0 8px; font-size:16px; }
p { margin:0 0 13px; }
p:last-child { margin-bottom:0; }
ul,ol { padding-left:22px; margin:10px 0; }
li + li { margin-top:5px; }
.tool-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; }
.tool-item { padding:17px 14px; background:#f7faf5; border:1px solid var(--line); border-radius:4px; }
.tool-item strong { display:block; font-size:15px; margin-bottom:6px; }
.tool-item p { font-size:13px; color:var(--muted); margin-bottom:10px; }
.tool-item a { font-size:13px; }
.callout { background:#f2f7ee; border-left:3px solid var(--green); border-radius:2px; padding:16px 19px; margin:22px 0; }
.callout p { margin:0; }
.email-card { padding:24px; border:1px solid #c7dcbc; background:#f5faf1; border-radius:5px; margin:24px 0; }
.email-label { font-size:12px; color:var(--muted); letter-spacing:1px; margin:0; }
.email-address { display:block; font-size:26px; line-height:1.6; font-weight:700; margin:6px 0 18px; text-decoration:none; color:var(--ink); overflow-wrap:anywhere; }
.button { display:inline-block; background:var(--red); color:#fff; padding:9px 22px; border-radius:4px; text-decoration:none; font-weight:600; }
.button:hover { background:#a0051e; color:#fff; }
.fine-print,.date { font-size:13px; color:var(--muted); }
.date { display:flex; flex-wrap:wrap; gap:3px 20px; margin-top:14px; }
.toc { padding:16px 20px; margin:22px 0 28px; background:#f8faf7; border:1px solid var(--line); border-radius:4px; }
.toc h2 { font-size:14px; }
.toc ol { columns:2; gap:32px; margin-bottom:0; font-size:13px; }
.toc li { break-inside:avoid; }
.policy-table { width:100%; border-collapse:collapse; margin:15px 0; font-size:13px; table-layout:fixed; }
.policy-table th,.policy-table td { border:1px solid var(--line); text-align:left; vertical-align:top; padding:10px 12px; overflow-wrap:anywhere; }
.policy-table th { background:#f4f7f1; color:#354d2f; font-weight:600; }
.policy-table th:first-child { width:25%; }
.policy-table ul { margin:0; padding-left:16px; }
.policy-source { border-top:1px solid var(--line); padding-top:20px; margin-top:32px; font-size:12px; color:var(--muted); }
.site-footer { border-top:1px solid var(--line); background:#eef1eb; padding:24px 0 28px; text-align:center; font-size:13px; color:var(--muted); }
.footer-links { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 24px; margin-bottom:10px; }
.footer-links a { color:#3c5734; }
.site-footer p { margin:0; }
@media (max-width:760px) {
  .wrap { width:calc(100% - 28px); }
  .brand-row { min-height:80px; gap:12px; }
  .submark { width:280px; height:auto; }
  .page-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
  .sidebar { padding:10px; }
  .sidebar-title,.side-note { display:none; }
  .side-links { display:flex; gap:4px; flex-wrap:wrap; }
  .side-links a { padding:7px 12px; }
  .article { padding:26px 24px; }
}
@media (max-width:500px) {
  .brand-row { justify-content:center; }
  .submark { display:none; }
  .nav-list { justify-content:center; gap:0; }
  .nav-list a { padding:10px 13px; font-size:14px; }
  .breadcrumb { margin:16px 0; }
  .article { padding:24px 19px; }
  h1 { font-size:26px; }
  .lead { font-size:15px; }
  .tool-list { grid-template-columns:minmax(0,1fr); }
  .tool-item { padding:14px 16px; }
  .email-card { padding:19px 16px; }
  .email-address { font-size:22px; }
  .toc ol { columns:1; }
  .policy-table th,.policy-table td { padding:9px 8px; }
  .policy-table th:first-child { width:30%; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print {
  body { background:#fff; font-size:11pt; }
  .site-nav,.sidebar,.breadcrumb,.site-footer,.skip-link,.toc { display:none; }
  .wrap { width:100%; }
  .page-grid { display:block; }
  .article { padding:0; border:0; }
  .brand-row { min-height:70px; }
  .callout,.email-card,section { break-inside:avoid; }
}
