.visitor-tools { position:fixed; z-index:90; right:0; top:42%; font:14px/1.5 var(--sans); color:#171512; direction:ltr; }
.tools-toggle { display:flex; align-items:center; gap:8px; min-width:52px; min-height:74px; padding:10px; border:1px solid #8c7e69; border-right:0; border-radius:12px 0 0 12px; background:#ffffff; backdrop-filter:blur(14px); box-shadow:0 4px 24px #17151220; color:#171512; }
.tools-flags { font-size:17px; line-height:1.65; white-space:nowrap; }
.tools-symbol { font:20px var(--serif); }
.tools-panel { position:fixed; right:0; top:50%; transform:translateY(-50%); width:340px; max-width:calc(100vw - 20px); max-height:calc(100dvh - 40px); overflow-y:auto; overscroll-behavior:contain; padding:18px; border:1px solid #8c7e69; border-radius:12px 0 0 12px; background:#ffffff; backdrop-filter:blur(16px); box-shadow:0 8px 40px #17151230; }
.tools-panel[hidden] { display:none; }
.tools-toggle { width:80px; padding:8px; gap:4px; }
.tools-panel { right:80px; max-width:calc(100vw - 90px); border-radius:12px; }
.tools-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; font-size:16px; }
.tools-close { background:transparent; color:inherit; font-size:28px; min-width:44px; min-height:44px; }
.visitor-tools fieldset { min-width:0; margin:0 0 14px; padding:0; border:0; }
.visitor-tools legend { padding:0; margin-bottom:8px; font-weight:700; }
.language-options,.reading-options { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.visitor-tools button:not(.tools-toggle):not(.tools-close) { min-height:44px; padding:8px; border:1px solid #b6ab99; border-radius:4px; background:#ffffff; color:#171512; text-align:center; }
.language-options button:first-child { grid-column:1 / -1; }
.language-options small { display:block; font-size:11px; }
.visitor-tools button[aria-pressed="true"] { background:#171512!important; color:#ffffff!important; border-color:#171512!important; }
.tools-note { margin:10px 0 16px; font-size:12px; color:#554c40; }
.size-options { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; }
.tools-reset { width:100%; margin-top:12px; text-decoration:underline; }
.tools-status { margin:8px 0 0; font-size:12px; }
.debt-relief-disclosure { max-width:70rem; margin:0 auto; padding:1.4rem clamp(1rem,4vw,3rem) 0; border:0; color:var(--ink); background:transparent; text-align:center; font-size:1rem; line-height:1.5; font-style:italic; }
.debt-relief-disclosure p { margin:0; }
.debt-relief-disclosure strong { font-weight:700; }
html.reading-contrast { --ink:#000; --muted:#222; --paper:#fff; --line:#000; --accent:#8a2000; }
.reading-contrast body,.reading-contrast .site-footer { background:#fff; color:#000; }
.reading-contrast .visitor-tools,.reading-contrast .tools-panel,.reading-contrast .tools-toggle { background:#fff; color:#000; }
.reading-contrast .caption,.reading-contrast .review-note,.reading-contrast .legal { color:#222; }
.reading-links a { text-decoration:underline!important; text-decoration-thickness:2px!important; }
.reading-spacing main p,.reading-spacing main li { line-height:1.9; letter-spacing:.06em; word-spacing:.12em; }
.reading-motion *, .reading-motion *::before,.reading-motion *::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
html[dir="rtl"] body { font-family:Tahoma,"Segoe UI",sans-serif; }
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3 { line-height:1.35; letter-spacing:normal; }
html[dir="rtl"] .brand { direction:ltr; font-family:var(--serif); }
html[dir="rtl"] .dropcap::first-letter { float:none; font-size:inherit; line-height:inherit; padding:0; }
html[dir="rtl"] a[href^="tel:"],html[dir="rtl"] input[type="email"],html[dir="rtl"] input[type="tel"] { direction:ltr; unicode-bidi:embed; }
html[data-text-size="200"] .hero,html[data-text-size="200"] .page-hero,html[data-text-size="200"] .folio,html[data-text-size="200"] .contact-grid { grid-template-columns:1fr; }
html[data-text-size="200"] .article-columns,html[data-text-size="200"] .folio-body { columns:1; }
html[data-text-size="200"] .fact-list { flex-wrap:wrap; white-space:normal; }
main, .page-hero>div, .practice-card { min-width:0; overflow-wrap:break-word; }
.button { max-width:100%; overflow-wrap:anywhere; gap:.8rem; padding-block:.65rem; }
.skip-link { max-width:calc(100vw - 2rem); overflow-wrap:anywhere; }
.primary-nav a { min-height:44px; display:inline-flex; align-items:center; }
@media(max-width:640px) { .visitor-tools { top:auto; bottom:20px; } .tools-symbol { display:none; } .tools-panel { top:auto; right:56px; bottom:20px; max-width:calc(100vw - 66px); transform:none; max-height:75dvh; } .tools-toggle { min-height:64px; width:56px; } }
@media print { .visitor-tools { display:none; } }
