/* Native controls and scalable typography; no third-party overlay. */
.reading-bar{background:var(--cream);border-bottom:1px solid var(--edge);padding:4px 24px;text-align:right}
.reading-bar[hidden],[data-reading-open][hidden]{display:none}
.reading-trigger{background:transparent;color:var(--ink);border:0;font:inherit;font-size:.9375rem;min-height:44px;padding:8px 12px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.reading-trigger span{font-weight:750;margin-right:8px;text-decoration:none}
#reading-options{color:var(--body);background:var(--paper);border:2px solid var(--ink);border-radius:18px;width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;margin:auto;font-size:1rem}
#reading-options::backdrop{background:rgba(0,0,0,.55)}
#reading-options h2{font-size:1.625rem;margin:0 0 12px}
#reading-options p{font-size:1rem;line-height:1.6}
.reading-dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
#reading-options button{font:inherit;min-height:44px;padding:10px 16px;cursor:pointer;border:2px solid var(--ink);border-radius:8px;background:var(--paper);color:var(--ink);white-space:normal}
#reading-options label{display:block;margin-top:16px;font-weight:600}
#reading-options select{display:block;width:100%;min-height:48px;font:inherit;margin-top:8px;padding:10px;border:2px solid var(--ink);background:var(--paper);color:var(--ink)}
#reading-options .reading-check{display:flex;align-items:flex-start;gap:12px;padding:10px 0;min-height:44px;font-weight:500;cursor:pointer}
#reading-options input[type=checkbox]{flex:none;width:24px;height:24px;accent-color:var(--ink);margin:2px 0}
#reading-status{min-height:1.6em}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid currentColor;outline-offset:4px;box-shadow:0 0 0 6px var(--paper)}
html.reading-links a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px}
html.reading-motion *,html.reading-motion *::before,html.reading-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
html.reading-contrast{--ink:#000;--ink-deep:#000;--body:#000;--mute:#000;--green-ink:#000;--paper:#fff;--card:#fff;--cream:#fff;--mint:#fff;--foot:#000;--edge:#000;--green-lt:#fff;--lede-lt:#fff}
html.reading-contrast main a:not(.btn):not(.svc-card):not(.play){text-decoration:underline}
html:not([data-reading-size="100"])[data-reading-size] .grid,
html:not([data-reading-size="100"])[data-reading-size] .why,
html:not([data-reading-size="100"])[data-reading-size] .svc,
html:not([data-reading-size="100"])[data-reading-size] .foot-grid{grid-template-columns:1fr}
html:not([data-reading-size="100"])[data-reading-size] .hdr{flex-wrap:wrap}
html:not([data-reading-size="100"])[data-reading-size] .hero-grid,
html:not([data-reading-size="100"])[data-reading-size] .split,
html:not([data-reading-size="100"])[data-reading-size] .explainer-grid{grid-template-columns:1fr}
html:not([data-reading-size="100"])[data-reading-size] .btn{white-space:normal;line-height:1.4;text-align:center}
html:not([data-reading-size="100"])[data-reading-size] :where(h1,h2,h3,h4,p,a,td,th,label,legend){overflow-wrap:anywhere}
html:not([data-reading-size="100"])[data-reading-size] .mobile-contact{position:static;flex-wrap:wrap}
@media print{.reading-bar,#reading-options,[data-reading-open]{display:none!important}}
/* Keep long consent text reachable when text is enlarged. */
.cookie-banner{max-height:calc(100dvh - 32px);overflow:auto}
.reading-trigger{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:650}
.reading-trigger svg{flex:none}
.reading-group{border-top:1px solid var(--edge);padding-top:20px;margin-top:20px}
#reading-options h3{font-size:1.25rem;margin:0 0 12px}
.reading-actions{display:flex;flex-wrap:wrap;gap:10px}
#reading-options button:disabled{opacity:.6;cursor:default}
