/* Shared accessibility controls for both pages. */
.accessibility-link{font-size:14px;line-height:1.6;text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}
.accessibility-dialog{width:min(680px,calc(100% - 32px));max-height:85dvh;padding:0;border:1px solid #b8bbc0;border-radius:12px;background:#fff;color:#20252b;text-align:right;line-height:1.8;box-sizing:border-box}
.accessibility-dialog::backdrop{background:rgba(0,0,0,.65)}
.accessibility-content{padding:24px;overflow-wrap:anywhere}
.accessibility-content h2{font-size:26px;margin:12px 0}.accessibility-content h3{font-size:20px;margin:24px 0 8px}.accessibility-content p,.accessibility-content li{font-size:16px}.accessibility-content ul{padding-inline-start:24px}.accessibility-content a{color:#164d80;text-decoration:underline}
.accessibility-close,.ribbon-pause{font:inherit;min-height:44px;padding:8px 16px;border:1px solid currentColor;border-radius:6px;cursor:pointer}
.accessibility-close{background:#fff;color:#20252b}.ribbon-pause{display:block;width:max-content;min-width:48px;min-height:28px;margin:6px auto 0;padding:2px 8px;background:transparent;color:inherit;font-size:12px;line-height:1.5;border-radius:4px}
:where(a,button,summary,[tabindex]):focus-visible{outline:3px solid #1263a0!important;outline-offset:4px;box-shadow:0 0 0 7px #fff!important}
html:has(dialog[open]){overflow:hidden}
.skip:focus{background:#123a50;color:#fff}
/* Focused regions must keep the same readable focus treatment as links. */
main [tabindex="-1"]:focus{outline:3px solid currentColor;outline-offset:5px}
main a:not(.button):not(.book-title-order){text-decoration:underline;text-underline-offset:4px}
.scrolling-ribbon{scroll-padding-inline:12px}
.scrolling-ribbon:focus-visible{outline-offset:-4px}
.logo-item:focus-visible{outline-offset:-4px!important;box-shadow:inset 0 0 0 6px #fff!important}
.accessibility-dialog{color-scheme:light}
/* Do not crop enlarged text in cards or dialogs. */
.chapter-header{flex-wrap:wrap;gap:12px}
.chapter-dialog[open]{display:flex;flex-direction:column}
.chapter-header{height:auto;min-height:95px;flex:0 0 auto}
.chapter-pages{height:auto;min-height:0;flex:1;overflow-y:auto}
.chapter-pages:focus-visible{outline-offset:-4px!important}
.chapter-header h2{overflow-wrap:anywhere;min-width:0}
.chapter-close{flex-shrink:0}
.book-page .book-ideas-grid article,.book-page .audience-refined{height:auto;overflow:visible}
.book-page .audience-refined h3,.book-page .book-ideas-grid h3{overflow-wrap:anywhere}
.book-page .audience-refined p{overflow-wrap:anywhere}
.book-title-order{white-space:normal;text-align:center}
h1,h2,h3{overflow-wrap:anywhere}
body .service-card>a,body .partner-grid a{flex-wrap:wrap;gap:6px;max-width:100%;overflow-wrap:anywhere}
.service-card .ui-arrow,.partner-grid .ui-arrow{margin-inline:4px}
/* Keep client names inside the scrollable ribbon when text is enlarged. */
.logo-item{width:100%;min-height:0;padding-block:8px;gap:8px}
.client-name{position:static;transform:none;width:100%;max-width:100%;min-height:2.8em;padding-top:0;overflow-wrap:anywhere}
@media(max-width:700px){footer.wrap{flex-wrap:wrap;gap:16px}.accessibility-content{padding:18px}}
