:root { color-scheme:light; --green:#092c24; --night:#041a15; --gold:#d8b66b; --paper:#faf7ef; --ink:#183c32; --muted:#485b52; --line:#d9d4c4; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:24px; }
body { margin:0; min-height:100vh; background:radial-gradient(ellipse at 50% 0,#174b3d,transparent 680px),var(--night); color:var(--ink); font:17px/1.75 system-ui,-apple-system,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
body > header, main, body > footer { width:min(960px,calc(100% - 48px)); margin-inline:auto; }
body > header { min-height:132px; padding:24px 0; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:inline-flex; align-items:center; gap:17px; text-decoration:none; color:#f4e7c7; flex-shrink:0; }
.brand img { display:block; width:76px; height:76px; object-fit:contain; }
.brand span { display:grid; gap:5px; }
.brand strong { color:inherit; font:500 30px/1.1 Georgia,"Times New Roman",serif; letter-spacing:-.035em; }
.brand small { color:var(--gold); font-size:11px; letter-spacing:.08em; }
body > header nav { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px 24px; }
body > header nav a { display:inline-flex; align-items:center; min-height:44px; color:#e4ddc9; font-size:14px; text-decoration:none; }
body > header nav a:hover { color:#fff; text-decoration:underline; text-underline-offset:5px; }
main { padding:0 0 24px; }
article { padding:clamp(24px,6vw,72px); background:var(--paper); border:1px solid #ddc98f; border-top:4px solid var(--gold); border-radius:4px; box-shadow:0 24px 64px #0003; overflow-wrap:anywhere; }
.eyebrow { margin:0 0 16px; color:#786035; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
h1 { margin:0 0 28px; max-width:18ch; color:var(--green); font:500 clamp(2.25rem,5vw,3.5rem)/1.12 Georgia,"Times New Roman",serif; letter-spacing:-.035em; }
h2 { margin:44px 0 16px; padding-top:26px; border-top:1px solid var(--line); color:var(--green); font-size:1.15rem; line-height:1.4; font-weight:650; }
p, li { color:var(--muted); }
p { margin:0 0 18px; }
ul, ol { padding-left:24px; margin-block:16px 24px; }
li { margin-bottom:10px; padding-left:4px; }
li::marker { color:#856d3b; }
strong { color:var(--ink); font-weight:650; }
main a { color:#175a49; text-decoration-thickness:1px; text-underline-offset:3px; }
main a:hover { color:#082e24; text-decoration-thickness:2px; }
.notice { margin-block:24px; padding:18px 22px; border-left:3px solid #a8833e; background:#f0eadb; font-size:.9rem; line-height:1.65; }
.document-index { margin-top:32px; padding:22px 24px; border:1px solid var(--line); background:#f5f1e7; }
.document-index > p { margin:0 0 16px; color:#76623c; font-size:16px; letter-spacing:.06em; font-weight:700; text-transform:uppercase; }
.document-index ol { margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; column-gap:24px; list-style:none; }
.document-index li { margin:0; padding:0; }
.document-index a { display:flex; align-items:center; min-height:48px; padding-block:8px; font-size:18px; font-weight:600; line-height:1.5; text-decoration:none; }
.document-index a:hover { text-decoration:underline; }
.action { display:inline-flex; align-items:center; justify-content:center; min-height:48px; margin:8px 0 16px; padding:10px 22px; border:1px solid var(--green); border-radius:4px; color:#fff9e9; background:var(--green); font-size:15px; font-weight:650; text-decoration:none; }
.action:hover { color:#fff; background:#164b3b; }
body > footer { padding:4px 0 40px; display:flex; flex-wrap:wrap; gap:12px 24px; color:#bcbfaa; font-size:12px; }
body > footer a { color:#e4ddc9; text-underline-offset:4px; }
body > footer span { margin-right:auto; }
a:focus-visible { outline:3px solid #927030; outline-offset:4px; border-radius:2px; }
header a:focus-visible, footer a:focus-visible { outline-color:var(--gold); }
.skip-link { position:absolute; top:8px; left:8px; z-index:10; padding:10px 16px; background:var(--paper); color:var(--green); transform:translateY(-160%); }
.skip-link:focus { transform:translateY(0); }
@media (max-width:620px) {
 body { font-size:16px; }
 body > header, main, body > footer { width:calc(100% - 28px); }
 body > header { align-items:flex-start; flex-direction:column; gap:10px; padding:22px 4px 14px; }
 .brand { gap:14px; } .brand img { width:60px; height:60px; } .brand strong { font-size:27px; }
 body > header nav { justify-content:flex-start; gap:6px 22px; }
 article { padding:28px 22px; } h2 { margin-top:32px; } .notice { padding:15px 16px; }
 .document-index { padding:18px; } .document-index ol { grid-template-columns:1fr; }
 body > footer { padding:0 4px 28px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print {
 body { background:#fff; font-size:11pt; } body > header, main, body > footer { width:100%; }
 body > header { min-height:0; padding:0 0 16px; } .brand, .brand small, body > footer { color:#183c32; }
 .brand img { width:48px; height:48px; } body > header nav, .document-index, .skip-link { display:none; }
 article { padding:0; border:0; box-shadow:none; background:#fff; } h2 { break-after:avoid; } a { color:inherit; }
}
