/* Footer-only legal navigation and an accessible standalone document reader. */
.footer-with-legal{flex-wrap:wrap;row-gap:20px}
.legal-footer-nav{display:flex;flex:0 0 100%;flex-wrap:wrap;gap:6px 24px;border-top:1px solid #dce1d5;padding-top:14px;font-size:12px;color:#53604f}
.legal-footer-nav a{display:inline-flex;align-items:center;min-height:36px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#a6b39e}
.legal-footer-nav a:hover{color:#192b18;text-decoration-color:currentColor}
.legal-main{max-width:940px;padding:54px 0 68px}
.legal-document{color:#263124;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.legal-page-intro{padding-bottom:24px;border-bottom:1px solid #dce1d5;margin-bottom:12px}
.legal-kicker{font-size:11px;letter-spacing:.14em;font-weight:700;color:#53604f}
.legal-document h1{font-size:clamp(30px,4vw,48px);font-weight:750;letter-spacing:-.035em;line-height:1.12;margin:14px 0 18px;color:#182719}
.legal-lead{font-size:17px;max-width:720px;color:#53604f}
.legal-version{font-size:12px;color:#65725f;margin-top:16px}
.legal-section{border-bottom:1px solid #dce1d5;padding:4px 0}
.legal-section>summary{cursor:pointer;font-size:17px;line-height:1.45;font-weight:700;padding:18px 24px 18px 0;color:#1b2b19}
.legal-section>div{padding:0 0 14px}
.legal-document p{margin:0 0 14px}
.legal-document ul{padding-left:24px;margin:0 0 18px}
.legal-document li{margin:0 0 10px}
.legal-document a{color:#234d20;text-decoration:underline;text-underline-offset:3px}
.legal-document code{font-size:.9em;background:#e9ede2;border-radius:4px;padding:1px 4px;overflow-wrap:anywhere}
.legal-template{white-space:pre-wrap;overflow-wrap:anywhere;background:#edf0e6;border:1px solid #d5ddcc;border-radius:10px;padding:20px;font:14px/1.75 ui-monospace,monospace}
.legal-print{margin-top:24px}
.legal-print button,.legal-reader-toolbar button{font:inherit;cursor:pointer;border:1px solid #bac6af;border-radius:8px;background:#f5f6f0;color:#23351c;padding:10px 14px;min-height:44px}
.legal-reader{width:min(900px,calc(100vw - 40px));max-width:900px;height:min(850px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);border:1px solid #c7cfbd;border-radius:18px;padding:0;background:#fbfbf7;color:#263124;box-shadow:0 30px 100px #0b190a55}
.legal-reader::backdrop{background:rgba(10,18,10,.64)}
.legal-reader-frame{height:100%;display:flex;flex-direction:column;min-height:0}
.legal-reader-toolbar{display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-bottom:1px solid #dce1d5;background:#f0f2e9}
.legal-reader-label{font-size:11px;font-weight:700;letter-spacing:.1em;color:#4a5d40}
.legal-reader-actions{display:flex;align-items:center;gap:14px;font-size:12px}
.legal-reader-actions a{text-decoration:underline;text-underline-offset:4px}
.legal-reader-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px 32px 32px}
body.legal-modal-open{overflow:hidden}
.legal-reader a:focus-visible,.legal-reader button:focus-visible,.legal-section summary:focus-visible,.legal-footer-nav a:focus-visible,.legal-print button:focus-visible{outline:3px solid #486b2b;outline-offset:4px}
@media(max-width:600px){
 .legal-footer-nav{column-gap:18px;row-gap:0}
 .legal-main{padding-top:32px}
 .legal-document{font-size:14px;line-height:1.8}
 .legal-reader{width:calc(100vw - 20px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);border-radius:12px}
 .legal-reader-toolbar{padding:10px 14px;gap:8px}
 .legal-reader-label{font-size:10px;letter-spacing:.04em}
 .legal-reader-actions{gap:10px;font-size:11px}
 .legal-reader-toolbar button{padding:8px 12px}
 .legal-reader-body{padding:18px 18px 28px}
 .legal-section>summary{font-size:16px}
}
@media print{
 .site-header,.footer,.skip-link,.legal-print,.legal-reader-toolbar{display:none!important}
 .legal-main{width:100%;max-width:none;padding:0}
 .legal-document{font-size:11pt;color:#000}
 .legal-section>div{display:block!important}
 .legal-section{break-inside:auto}
 .legal-section>summary{break-after:avoid}
 .legal-document a{color:#000}
 .legal-reader{position:static;width:100%;height:auto;max-height:none;border:0;box-shadow:none;overflow:visible}
 .legal-reader-frame,.legal-reader-body{display:block;height:auto;overflow:visible;padding:0}
 body.legal-modal-open>*:not(.legal-reader){display:none!important}
 body.legal-modal-open{overflow:visible}
 .legal-reader::backdrop{background:none}
}
