/* Practisi palette and shared shell; original legal reader geometry retained. */
.legal-page { --legal-blue:var(--green); --legal-terra:var(--green); --legal-black:var(--text); --legal-text:var(--text); --legal-copy:#363634; --legal-muted:var(--muted); --legal-line:var(--line); --legal-white:var(--bg); --legal-surface:var(--surface); --legal-max:var(--shell); font-family:var(--font); }
.legal-page .legal-hero { background:var(--green); }
.legal-page .legal-hero::before,.legal-page .legal-hero::after { display:none; }
.legal-page .legal-hero-copy h1 { font-family:var(--font-serif); }
.legal-page .legal-sidebar { top:calc(var(--header-h) + 30px); }
.legal-page .legal-on-page { top:calc(var(--header-h) + 30px); }
.legal-updated { color:var(--muted); font-size:13px; }
.legal-page .legal-chapter p { overflow-wrap:break-word; }
.legal-page a:focus-visible,.legal-page button:focus-visible,.legal-page summary:focus-visible { outline:2px solid var(--green); outline-offset:4px; }
.legal-page .legal-copy-trigger:focus-visible { outline-color:#fff; }
@media(max-width:760px) { .legal-page .header-actions { gap:8px; } .legal-page .header-actions .button,.legal-page .header-actions .login-button { padding-inline:10px; font-size:12px; } .legal-page .site-header .brand { transform:translateX(-15px); } .legal-page .site-header .brand img { max-width:112px; } .legal-page .legal-on-page { height:auto; } }
@media(prefers-reduced-motion:reduce) { .legal-page *, .legal-page *::before,.legal-page *::after { scroll-behavior:auto!important; transition:none!important; } }

.legal-page .legal-main { padding-top:0; }

/* Full-width legal reader with quieter secondary-font body copy. */
.legal-page .legal-layout {
 width:100%; max-width:none;
 grid-template-columns:minmax(180px,220px) minmax(0,1fr) minmax(180px,238px);
}
.legal-page .legal-document { font-family:var(--font); }
.legal-page .legal-document p,
.legal-page .legal-document ul,
.legal-page .legal-document ol { max-width:none; color:var(--muted); font-family:var(--font); font-weight:400; }
.legal-page .legal-chapter > h2,
.legal-page .legal-chapter > h3 { max-width:none; color:var(--text); }
.legal-page .legal-chapter > h2::before,
.legal-page .legal-chapter > h3::before { content:none; display:none; }
.legal-page .legal-on-page-link { grid-template-columns:minmax(0,1fr); gap:0; }
@media(max-width:1180px) {
 .legal-page .legal-layout { grid-template-columns:minmax(170px,210px) minmax(0,1fr); }
}
@media(max-width:860px) {
 .legal-page .legal-layout { grid-template-columns:minmax(0,1fr); }
}

/* Borderless document sections and compact page actions. */
.legal-page .legal-intro-card,
.legal-page .legal-overview,
.legal-page .legal-mobile-toc,
.legal-page .legal-sidebar,
.legal-page .legal-page-actions { border:0; }
.legal-page .legal-mobile-toc::before,
.legal-page .legal-mobile-toc::after { content:none; display:none; }
.legal-page .legal-page-actions { margin-top:32px; padding:0; background:transparent; }
.legal-page .legal-page-actions-inner {
 display:flex; justify-content:flex-start; gap:28px; flex-wrap:wrap;
}
.legal-page .legal-page-actions button {
 width:auto; height:48px; min-height:48px; flex:0 0 auto;
 padding:0; border:0; border-radius:0; background:transparent;
 justify-content:flex-start; transition:color 180ms ease;
}
.legal-page .legal-page-actions button:hover,
.legal-page .legal-page-actions button:focus-visible { background:transparent; color:var(--green); }
@media(prefers-reduced-motion:reduce) {
 .legal-page .legal-page-actions button { transition:none; }
}

/* Use the original indent artwork with actual Practisi color, without a filter. */
.legal-page .legal-on-page-icon { color:var(--legal-text); filter:none!important; transition:color 160ms ease; }
.legal-page .legal-on-page-heading:hover .legal-on-page-icon,
.legal-page .legal-mobile-toc summary:hover .legal-on-page-icon,
.legal-page .legal-mobile-toc summary:focus-visible .legal-on-page-icon,
.legal-page .legal-mobile-toc[open] .legal-on-page-icon { color:#20663E; filter:none!important; }

/* Match the desktop header action edge without moving the legal copy. */
@media (min-width:761px) {
 .legal-page .legal-copy-menu { right:0; }
}

/* Keep policy chapter typography stable without relying on dynamically loaded CSS. */
@media(max-width:760px) {
 .legal-page .legal-main .legal-document .legal-chapter > h2 { font-size:18px!important; font-weight:500!important; line-height:1.4!important; letter-spacing:0; margin-bottom:16px; }
 .legal-page .legal-main .legal-document .legal-chapter > h3 { font-size:16px!important; font-weight:500!important; line-height:1.4!important; letter-spacing:0; margin-bottom:14px; }
}
