/* Reading surfaces for resource and legal pages; original brand fonts are retained. */
#footer { position:relative;z-index:41;background:var(--ink); }
#footer a { text-decoration:none; }
#footer .footer-main > div > strong { color:#cbbd9f;font-size:12px;line-height:1.6;letter-spacing:.12em; }
#footer .footer-main > div > a { color:#e8ddc8;font-size:16px;line-height:1.65;padding:4px 0; }
#footer .footer-main > div > a:hover { color:var(--green); }
#footer .footer-brand p { color:#c9c5b9;font-size:15px;line-height:1.8; }
#footer .footer-risk { color:#c9c5b9;font-size:14px;line-height:1.8; }
#footer .footer-bottom { color:#b8c4b9;font-size:13px;line-height:1.7; }
#footer a:focus-visible { outline:2px solid var(--green);outline-offset:5px; }
.resource-page { background:#f4f0e8;color:#152a20;font:400 17px/1.8 var(--body); }
.resource-page * { box-sizing:border-box; }
.resource-page a { color:#17613f;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere; }
.resource-page a:hover { color:#103f2a; }
.resource-page a:focus-visible,.resource-page summary:focus-visible { outline:3px solid #208b51;outline-offset:5px; }
.resource-skip { position:absolute;left:20px;top:-100px;padding:10px 18px;background:#fff;z-index:10; }
.resource-skip:focus { top:12px; }
.resource-header { max-width:1280px;width:calc(100% - 40px);margin:20px auto 0;padding:20px 26px;border-radius:18px;background:#08150f;display:flex;align-items:center;justify-content:space-between;gap:24px; }
.resource-header .brand-link { text-decoration:none;flex-shrink:0; }
.resource-header nav { display:flex;align-items:center;gap:24px;flex-wrap:wrap; }
.resource-header nav a { color:#e8ddc8;font-size:14px;text-decoration:none;padding:6px 0; }
.resource-header nav a:hover { color:#53ef82; }
.resource-header a:focus-visible { outline-color:#53ef82; }
.resource-shell { max-width:1160px;margin:54px auto 76px;padding:0 30px; }
.resource-breadcrumb { font-size:14px;color:#506253;margin-bottom:26px; }
.resource-breadcrumb ol { display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0; }
.resource-breadcrumb li+li:before { content:'/';padding-right:10px;color:#7a897c; }
.resource-hero { max-width:900px;margin-bottom:44px; }
.resource-kicker { color:#306346;font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase; }
.resource-page h1 { font:600 clamp(34px,5vw,58px)/1.12 var(--display);letter-spacing:-.035em;margin:16px 0 24px;overflow-wrap:anywhere; }
.resource-lead { font-size:19px;color:#3d5547;line-height:1.8;max-width:70ch; }
.resource-date { color:#596c5e;font-size:13px;margin-top:18px; }
.resource-layout { display:grid;grid-template-columns:220px minmax(0,1fr);gap:56px;align-items:start; }
.resource-toc { position:sticky;top:24px;border-top:2px solid #34704b;padding-top:16px; }
.resource-toc strong { font-size:13px;letter-spacing:.06em; }
.resource-toc ol { list-style:none;padding:0;margin:12px 0; }
.resource-toc a { display:block;padding:7px 0;color:#3e5d48;font-size:14px;line-height:1.5;text-decoration:none; }
.resource-toc a:hover { text-decoration:underline; }
.resource-article { min-width:0; }
.resource-article section { border-top:1px solid #cbd1c3;padding:28px 0;scroll-margin-top:28px; }
.resource-page h2 { font:600 clamp(23px,3vw,29px)/1.3 var(--display);margin:0 0 16px;letter-spacing:-.02em; }
.resource-page h3 { font:600 19px/1.4 var(--display);margin:24px 0 10px; }
.resource-article p { color:#344e3e;max-width:70ch;margin:0 0 18px;font-size:17px;line-height:1.85; }
.resource-article p:last-child { margin-bottom:0; }
.resource-article ul,.resource-article ol { padding-left:24px;margin:12px 0 20px;color:#344e3e; }
.resource-article li { margin:10px 0;padding-left:3px; }
.resource-callout { padding:20px 24px;margin:22px 0;background:#e7ecdf;border-left:4px solid #34704b;border-radius:0 12px 12px 0; }
.resource-callout p { margin:0; }
.resource-table-wrap { overflow-x:auto;max-width:100%;margin:20px 0; }
.resource-page table { width:100%;border-collapse:collapse;line-height:1.65;font-size:16px; }
.resource-page th,.resource-page td { text-align:left;vertical-align:top;padding:14px 12px;border-bottom:1px solid #cbd1c3; }
.resource-page th { background:#e4eadd;font-weight:600;color:#1c3c29; }
.resource-related { border-top:2px solid #b4bfac;margin-top:42px;padding-top:28px; }
.resource-related ul { list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:12px 26px;margin:16px 0 0; }
.resource-page .site-footer { color:var(--warm); }
.resource-page #footer a { color:#e8ddc8; }
.resource-page #footer a:hover { color:var(--green); }
.resource-page .footer-main { max-width:1280px;margin:auto; }
@media(max-width:900px) {
 .resource-layout { grid-template-columns:1fr;gap:20px; }
 .resource-toc { position:static; }
 .resource-toc ol { display:flex;gap:4px 20px;flex-wrap:wrap; }
 .resource-toc a { padding:6px 0; }
}
@media(max-width:600px) {
 .resource-header { width:calc(100% - 24px);padding:18px;flex-direction:column;align-items:flex-start;gap:16px; }
 .resource-header nav { gap:18px; }
 .resource-shell { margin:34px auto 48px;padding:0 22px; }
 .resource-lead { font-size:18px; }
 .resource-article p,.resource-article li { font-size:16px; }
 .resource-callout { padding:18px; }
 #footer .footer-main > div > a { min-height:44px;display:flex;align-items:center; }
}
