*{box-sizing:border-box}body{margin:0;background:#f5f7ee;color:#244532;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.75}a{color:#315f42;text-underline-offset:4px}header,main,footer{max-width:980px;margin:auto;padding:28px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d8e1ce;gap:20px}header a{text-decoration:none;font-weight:650}.brand{font-size:23px;letter-spacing:-1px}nav{display:flex;gap:23px;font-size:13px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#657e58;margin:46px 0 10px}h1{font-size:clamp(35px,6vw,58px);font-weight:550;line-height:1.08;letter-spacing:-2px;margin:0 0 24px}h2{font-size:23px;font-weight:550;line-height:1.35;letter-spacing:-.5px;margin:0 0 12px}p{margin:0 0 17px}.intro{max-width:690px;color:#57704f;font-size:17px}.meta{font-size:12px;color:#63755a}.panels{display:grid;gap:20px;margin:38px 0}.panel{border:1px solid #d7e2cc;border-radius:21px;background:#fff;padding:29px}.panel p:last-child{margin-bottom:0}ul{padding-left:22px}li{padding-left:3px;margin:10px 0}strong{font-weight:650}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid #315f42;background:#315f42;color:white;padding:10px 19px;border-radius:13px;font-size:14px;font-weight:600;text-decoration:none;box-shadow:0 4px 0 #1c3d2a;transition:transform .16s,box-shadow .16s}.button:active{transform:translateY(3px);box-shadow:0 1px 0 #1c3d2a}.button.secondary{background:#f1f6e8;color:#315f42;border-color:#bccfb0;box-shadow:0 4px 0 #d6e2cb}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid .panel{height:100%}footer{font-size:12px;color:#63755a;border-top:1px solid #d8e1ce;margin-top:35px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #86a471;outline-offset:5px}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}footer nav{flex-wrap:wrap;gap:14px;font-size:12px}.panel{min-width:0;overflow-wrap:anywhere}summary{min-height:44px;line-height:1.5}header nav a{padding:8px 0}footer a{display:inline-block;padding:5px 0}details{border-top:1px solid #e0e8d7;padding:17px 0}details:first-child{border-top:0}summary{cursor:pointer;font-weight:600;padding-right:20px}details p{font-size:14px;margin:12px 0 0;color:#526b49}@media(max-width:600px){header,main,footer{padding:22px}.grid{grid-template-columns:1fr}nav{gap:15px}.panel{padding:23px}.eyebrow{margin-top:30px}.intro{font-size:15px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.button:active{transform:none}}
/* Every page carries a Back: the browser's own is not always on screen. */
.page-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px 0 10px;border-radius:12px;border:1px solid var(--line,rgba(255,255,255,.12));background:var(--surface,rgba(255,255,255,.04));color:var(--text,#E8EEF2);font:600 14px/1 inherit;text-decoration:none}
.page-back:hover{background:var(--raised,rgba(255,255,255,.08))}
.page-back span{font-size:16px;line-height:1}

/* Touch targets: on coarse pointers the header and footer links get a 44px-tall hit area. */
@media (pointer:coarse){header nav a,footer a{display:inline-flex;align-items:center;min-height:44px}}
