/* Small persistent links, over the existing scene: no added scroll track or white panel. */
:root{--legal-bar-h:calc(48px + env(safe-area-inset-bottom,0px));}
.legalbar{position:fixed;inset:auto 0 0;z-index:var(--z-over);display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:var(--legal-bar-h);padding:6px 28px max(6px,env(safe-area-inset-bottom));pointer-events:none;color:var(--text-soft);font:400 11px/1.4 var(--font-mono);letter-spacing:.04em;}
.legalbar .fcopy{white-space:nowrap;}
.legalbar nav{display:flex;gap:14px;pointer-events:auto;}
.legalbar a{display:flex;align-items:center;min-height:36px;color:inherit;text-decoration:none;text-transform:uppercase;}
.legalbar a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--ink);}
.legalbar a:focus-visible{outline-offset:3px;}
/* Keep provider attribution and the last form action above the links. */
.ws-map .maplibregl-ctrl-bottom-left,.ws-map .maplibregl-ctrl-bottom-right{bottom:var(--legal-bar-h);}
@media(min-width:861px){body.settled .intake-panel{padding-bottom:calc(var(--legal-bar-h) + 12px);}}

.site-menu{position:relative;}
.site-menu summary{list-style:none;}
.site-menu summary::-webkit-details-marker{display:none;}
.site-menu-links{position:absolute;right:calc(-1 * var(--burger-pad));top:calc(100% + 16px);width:190px;padding:8px;background:var(--paper);border:var(--rule) solid var(--ink);border-radius:var(--radius-sm);}
.site-menu-links[style*="clip-path"]{border:0;}
body:has(.receipt-overlay:not([hidden]))>.legalbar{color:var(--ink);}
.site-menu-links a{display:block;padding:14px 16px;color:var(--ink);text-decoration:none;font:400 var(--fs-13) var(--font-mono);border-radius:10px;}
.site-menu-links a:hover,.site-menu-links a[aria-current="page"]{background:var(--surface-hover);}
.site-menu-links a:focus-visible{outline-offset:-3px;}

/* Standalone documents stay readable without JavaScript or the 3D scene. */
.legal-document .nav{padding-left:var(--gutter);padding-right:var(--gutter);justify-content:space-between;}
.legal-document .nav-side{flex:0 0 auto;}
.legal-document .nav:not(:has(.nav-edge path[d])){background:var(--paper);border-bottom:var(--rule) solid var(--ink);border-radius:0 0 var(--radius-lg) var(--radius-lg);}
.legal-document .legalbar{background:var(--paper);}
.legal-page{max-width:820px;margin:0 auto;padding:calc(var(--nav-h) + 72px) 36px calc(var(--legal-bar-h) + 48px);font:400 18px/1.65 var(--font-title);overflow-wrap:anywhere;}
.legal-page h1{margin:0 0 18px;font:var(--w-title) clamp(38px,5vw,64px)/1.05 var(--font-title);letter-spacing:var(--ls-tight);text-transform:uppercase;}
.legal-page h2{margin:40px 0 12px;font:600 24px/1.25 var(--font-title);scroll-margin-top:calc(var(--nav-h) + 24px);}
.legal-page p,.legal-page ul{margin:0 0 18px;}
.legal-page li{margin:8px 0;}
.legal-page ul{padding-left:24px;}
.legal-page a{color:inherit;text-underline-offset:4px;}
.legal-page .legal-date{font:400 11px/1.6 var(--font-mono);color:var(--text-soft);margin-bottom:32px;}
.legal-lede{font-size:21px;line-height:1.5;}
.legal-toc{display:flex;flex-wrap:wrap;gap:12px 24px;padding:22px 0;border-block:var(--rule) solid var(--hairline);margin:30px 0;font:400 12px/1.6 var(--font-mono);}
.legal-page address{font-style:normal;}
.legal-contact-email{font-size:clamp(26px,5vw,38px);}
.legal-page .legal-back{display:inline-block;margin-top:36px;font:400 12px/1.6 var(--font-mono);}
.intake-privacy-note{font:400 11px/1.6 var(--font-mono);color:var(--text-soft);margin:16px 0 0;}
.intake-privacy-note a{color:inherit;text-underline-offset:3px;}
@media(max-width:520px){
 .legalbar{padding-inline:16px;gap:8px;font-size:10px;letter-spacing:0;}
 .legalbar nav{gap:12px;}
 .legal-page{padding:calc(var(--nav-h) + 42px) 24px calc(var(--legal-bar-h) + 32px);font-size:17px;}
 .legal-page h2{font-size:22px;}.legal-lede{font-size:19px;}
}
@media(prefers-reduced-motion:reduce){.burger span{transition:none;}}
@media print{
 .legal-document .nav,.legalbar,.legal-toc,.legal-back{display:none;}
 .legal-page{padding:0;max-width:none;font-size:11pt;}
 .legal-page h1{font-size:26pt;}.legal-page h2{font-size:15pt;break-after:avoid;}
 .legal-page a{text-decoration:none;}
}
