/* Sprint17D scoped component presentation. Existing road rules are intentionally untouched. */
.a11y-toolbar{min-height:0;padding:14px max(20px,calc((100% - 1392px)/2))}
.a11y-toolbar .s17-tools-inner{justify-content:flex-end;align-items:end;gap:12px 24px}
.a11y-toolbar fieldset{flex:0 1 auto}
.a11y-toolbar legend{font-size:calc(14px * var(--a11y-text-factor,1));margin-bottom:6px}
.a11y-toolbar .s17-tool-options{gap:8px;flex-wrap:nowrap}
.a11y-toolbar label.s17d-choice{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;min-height:48px;margin:0;padding:0;border:2px solid #202868;border-radius:8px;background:#F8E8DB;color:#202868}
.a11y-toolbar label.s17d-choice:has(input:checked){padding:0;border-width:2px;background:#F8E8DB;color:#202868}
.a11y-toolbar .s17d-choice input{position:absolute;inset:0;opacity:0;inline-size:100%;block-size:100%;width:100%;height:100%;margin:0;min-height:0}
.a11y-toolbar .s17d-sample{font-family:Instrument,sans-serif;font-weight:600;line-height:1;font-size:26px;pointer-events:none}
.a11y-toolbar [data-setting="a11y-text"][data-value="standard"] .s17d-sample{font-size:18px}
.a11y-toolbar [data-setting="a11y-text"][data-value="large"] .s17d-sample{font-size:26px}
.a11y-toolbar [data-setting="a11y-text"][data-value="larger"] .s17d-sample{font-size:34px}
:root[data-contrast] body .a11y-toolbar label.s17d-choice[data-setting="a11y-contrast"][data-value="standard"]{background:#710034;color:#F8E8DB;border-color:#710034}
:root[data-contrast] body .a11y-toolbar label.s17d-choice[data-setting="a11y-contrast"][data-value="dark"]{background:#000;color:#fff;border-color:#000}
:root[data-contrast] body .a11y-toolbar label.s17d-choice[data-setting="a11y-contrast"][data-value="light"]{background:#fff;color:#000;border-color:#000}
.a11y-toolbar .s17d-choice-indicator{position:absolute;right:2px;bottom:1px;display:none;font:700 12px/1 Instrument,sans-serif;pointer-events:none}
.a11y-toolbar .s17d-choice:has(input:checked) .s17d-choice-indicator{display:block}
.a11y-toolbar label.s17d-choice:has(input:focus-visible){outline:3px solid #202868;outline-offset:3px}
.a11y-toolbar #a11y-reset{min-height:48px;padding:10px 16px;border-radius:8px;background:#202868;color:#F8E8DB;border:2px solid #202868;font-weight:500}
.a11y-toolbar #a11y-reset:focus-visible{outline-color:#202868}
.s17d-bottom{display:flex;flex-wrap:wrap;gap:16px;position:relative;z-index:1;width:min(1120px,calc(100% - 48px));margin:0 auto;padding:32px 0 48px}
:root[data-contrast="standard"] body .s17d-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;box-sizing:border-box;max-width:100%;min-height:48px;padding:12px 20px;border:2px solid transparent;border-radius:12px;font-family:Instrument,sans-serif;font-size:calc(16px * var(--a11y-text-factor,1));line-height:1.5;font-weight:600;text-decoration:none;white-space:normal;background:#202868;color:#F8E8DB;cursor:pointer;box-shadow:none}
:root[data-contrast="standard"] body .s17d-button[data-s17d-surface="dark"]{background:#F8E8DB;color:#202868}
:root[data-contrast="standard"] body .s17d-button:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;box-shadow:none}
:root[data-contrast="standard"] body .s17d-button:active{text-decoration:underline;text-decoration-style:double}
:root body .s17d-bottom :is(button,a){min-height:52px;padding:12px 20px;line-height:1.5;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font:600 calc(16px * var(--a11y-text-factor,1))/1.5 Instrument,sans-serif;box-sizing:border-box;max-width:100%;text-decoration:none}
.s17d-bottom svg{flex:0 0 20px;width:20px;height:20px}
:root[data-contrast="standard"] body .s9-circle-cta.s17d-button{border-radius:50%}
:root body .toggle .s2-menu-icon{display:inline-flex;flex-direction:column;justify-content:center;gap:6px;flex:0 0 19px;width:19px;height:20px}
:root body .toggle .s2-menu-icon i{display:block;width:19px;height:2px;background:currentColor}
#navigation a,#navigation button{scroll-margin-block:10px}
@media(max-width:700px){
 .a11y-toolbar .s17-tools-inner{justify-content:flex-start;gap:12px 20px}
 .a11y-toolbar fieldset{flex:0 1 auto}
 .s17d-bottom{gap:12px;padding:24px 0 32px}
}
@media(max-width:380px){.a11y-toolbar .s17-tools-inner{gap:12px}.a11y-toolbar #a11y-reset{padding-inline:12px}}
/* High contrast samples intentionally retain their explicit setting previews. */
:root[data-contrast]:not([data-contrast="standard"]) .a11y-toolbar label.s17d-choice[data-setting="a11y-text"]{background:var(--hc-bg);color:var(--hc-fg);border-color:var(--hc-fg)}
:root[data-contrast]:not([data-contrast="standard"]) .a11y-toolbar .s17d-sample,:root[data-contrast]:not([data-contrast="standard"]) .a11y-toolbar .s17d-choice-indicator{background:transparent;color:inherit}
:root[data-contrast]:not([data-contrast="standard"]) .a11y-toolbar label.s17d-choice:has(input:focus-visible){outline-color:var(--hc-focus)}
:root[data-contrast]:not([data-contrast="standard"]) .a11y-toolbar #a11y-reset{background:var(--hc-fg);color:var(--hc-bg);border-color:var(--hc-fg)}
:root[data-contrast]:not([data-contrast="standard"]) .s17d-button{background:var(--hc-fg);color:var(--hc-bg);border:2px solid var(--hc-fg);text-decoration:none}
:root[data-contrast]:not([data-contrast="standard"]) .s17d-button:hover{background:var(--hc-bg);color:var(--hc-fg);text-decoration:underline}
@layer spr-priority{
 :root[data-contrast="standard"] body .s17d-button:focus-visible{outline:3px solid #202868!important;outline-offset:4px!important}
 :root[data-contrast="standard"] body .s17d-button[data-s17d-surface="dark"]:focus-visible{outline-color:#F8E8DB!important}
}
@media(forced-colors:active){.a11y-toolbar label.s17d-choice{forced-color-adjust:auto}.a11y-toolbar label.s17d-choice:has(input:checked){border:3px solid Highlight}.s17d-button{border:2px solid ButtonText!important}}

/* Elena's visual review: retain the approved accent CTAs and remove route-heading outlines only. */
@layer spr-priority{
 :root body #main .s6-about h1.s17-route-target[tabindex="-1"]:focus,
 :root body #main .s11-contact h1.s17-route-target[tabindex="-1"]:focus{outline:none!important}
}
/* One heading line of additional separation; use normal flow, including enlarged text and native zoom. */
@media(min-width:1100px){body.focus-home .focus-copy{margin-top:calc(34.5px * var(--a11y-text-factor,1))}}
@media(min-width:701px) and (max-width:1099px){body.focus-home .focus-copy{margin-top:calc(32px + 34.5px * var(--a11y-text-factor,1))}}
@media(max-width:700px){body.focus-home .focus-copy{margin-top:calc(40px + 34.2px * var(--a11y-text-factor,1))}}
@media(max-width:359px){body.focus-home .focus-copy{margin-top:calc(40px + 31.92px * var(--a11y-text-factor,1))}}
