/* Accessibility corrections: preserve the established palette and layout. */
.finder-intro>p,.finder-progress,.finder-card #finder-hint,.choice-copy small,
.finder-note,.product-strip-note,.tab-number,.panel-heading,.product-caption,
.service-brands-wrap>span,.service-facts>div>span,.step-top>span,
.contact-copy>p,.direct-contact,.form-intro,.choice-group legend>span,
.form-footnote,.solution-tabs:after,.finder-meta,.result-note p,
.brand-strip-note,.brand-category-note{color:#4f6256}
.field input::placeholder,.field textarea::placeholder{color:#59685e;opacity:1}
.field input,.field textarea,.choices label>span,.choice-mark{border-color:#647b69}
.finder-choice[aria-pressed=true] .choice-mark{background:#3f6748;border-color:#3f6748}
/* Two-tone ring is visible on both light and dark site sections. */
:where(button,a,input,textarea,summary,[tabindex]):focus-visible{outline:3px solid #111f2b;outline-offset:4px;box-shadow:0 0 0 6px #fff}
.choices input:focus-visible+span{outline:3px solid #111f2b;outline-offset:3px;box-shadow:0 0 0 6px #fff}
.dialog-close{min-width:44px;min-height:44px}
#accessibility-dialog ul{padding-inline-start:24px;line-height:1.9;font-size:14px}
#accessibility-dialog h3{font-size:18px;margin-top:24px;line-height:1.6}
#accessibility-dialog a{overflow-wrap:anywhere}
#accessibility-dialog .statement-date{font-size:13px;color:#4f6256}
@media(forced-colors:active){:where(button,a,input,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight;box-shadow:none}.choices input:focus-visible+span{outline:3px solid Highlight;box-shadow:none}.choice-mark,.choices label>span{border:1px solid ButtonText}}

/* Always-available, first-party display controls. */
.accessibility-launcher{position:fixed;inset-inline-start:24px;bottom:24px;z-index:40;display:flex;align-items:center;gap:9px;min-width:54px;min-height:54px;padding:13px 18px;border:2px solid #fff;border-radius:100px;background:#142632;color:#fff;font:inherit;font-size:14px;box-shadow:0 4px 22px #071f1b30}
.accessibility-launcher svg{width:25px;height:25px;flex-shrink:0;stroke-width:1.8}
.accessibility-launcher:hover{background:#315740}
.accessibility-tools{width:min(470px,calc(100% - 32px));padding:44px 30px 25px;overflow-y:auto;max-height:85dvh}
.accessibility-tools .eyebrow{margin-bottom:12px;font-size:11px;color:#4f6256}
.accessibility-tools h2{font-size:28px;line-height:1.4;margin-bottom:10px}
.accessibility-tools .accessibility-intro{font-size:14px;margin-top:0}
.accessibility-size{border:0;border-bottom:1px solid #ccd8c8;padding:0 0 22px;margin:24px 0 14px;min-width:0}
.accessibility-size legend{font-size:15px;font-weight:600;margin-bottom:12px}
.accessibility-size-controls{display:grid;grid-template-columns:54px 1fr 54px;align-items:center;gap:14px}
.accessibility-size-controls button{min-height:48px;border:1px solid #647b69;background:#fff;color:#142632;border-radius:5px;font-size:22px}
.accessibility-size-controls button:disabled{opacity:.45;cursor:default}
.accessibility-size-controls output{text-align:center;font-size:23px;font-weight:600;direction:ltr}
.accessibility-size p,.accessibility-tools .accessibility-storage{font-size:12px;line-height:1.8;color:#4f6256}
.accessibility-options{display:grid;gap:9px}
.accessibility-options button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:51px;text-align:start;padding:13px 15px;border:1px solid #647b69;border-radius:5px;background:#fff;color:#142632;font:inherit;font-size:14px}
.accessibility-options button[aria-pressed=true]{background:#dfeede;border-color:#315740}
.accessibility-switch{display:block;width:32px;height:20px;border:1px solid #647b69;border-radius:20px;background:#e8ece6;position:relative;flex-shrink:0}
.accessibility-switch:after{content:'';position:absolute;width:12px;height:12px;top:3px;inset-inline-start:3px;border-radius:50%;background:#4f6256}
[aria-pressed=true]>.accessibility-switch{background:#315740;border-color:#315740}
[aria-pressed=true]>.accessibility-switch:after{background:#fff;inset-inline-start:auto;inset-inline-end:3px}
.accessibility-tools .accessibility-feedback{font-size:13px;line-height:1.8;min-height:24px;color:#315740}
.accessibility-reset{width:100%;min-height:46px;margin-top:15px;border:1px solid #647b69;background:transparent;border-radius:5px;font:inherit;font-size:13px;color:#142632}
.accessibility-panel-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;border-top:1px solid #ccd8c8;padding-top:14px}
.accessibility-panel-links button,.accessibility-panel-links a{padding:8px 0;min-height:44px;font:inherit;font-size:13px;border:0;background:none;color:#244f37;text-decoration:underline;text-underline-offset:4px}
.footer-bottom>div{flex-wrap:wrap;gap:12px 24px}.footer-bottom button{min-height:44px}

html[data-a11y-text=enlarged] [style*="--eyetec-natural-font"]{font-size:calc(var(--eyetec-natural-font) * var(--eyetec-text-scale))!important;overflow-wrap:anywhere}
html[data-a11y-text=enlarged] .hero{height:auto;min-height:0;padding-bottom:35px}
html[data-a11y-text=enlarged] .hero-content{padding-bottom:65px}
html[data-a11y-text=enlarged] .hero-caption{position:relative;inset:auto;margin:0 28px 45px;width:max-content;max-width:calc(100% - 56px)}
html[data-a11y-text=enlarged] .hero-bottom{position:relative;inset:auto;flex-wrap:wrap;gap:24px}
html[data-a11y-text=enlarged] .header{height:auto;min-height:92px}
html[data-a11y-text=enlarged] .header-inner{flex-wrap:wrap;padding-block:15px}
html[data-a11y-text=enlarged] .header nav{flex-wrap:wrap}
html[data-a11y-text=enlarged] :is(.finder-layout,.solution-layout,.contact-layout,.about-layout,.faq-layout,.form-row){grid-template-columns:1fr!important;gap:30px}
html[data-a11y-text=enlarged] .guide-departments{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
html[data-a11y-text=enlarged] :is(.button,.guide-topic,.guide-list-close,.guide-close,.text-link){white-space:normal!important}
html[data-a11y-text=enlarged] :is(.hero-actions,.finder-controls,.footer-bottom){flex-wrap:wrap}
html[data-a11y-text=enlarged] .logo-tile{height:auto;min-height:110px}
html[data-a11y-text=enlarged] :is(.solution-panel,.finder-card,.contact-form){min-width:0}
html[data-a11y-text=enlarged] .header nav.open{top:100%}
html[data-a11y-text=enlarged] dialog{padding-block-start:90px}
html[data-a11y-text=enlarged] .accessibility-size-controls{grid-template-columns:1fr 1fr;gap:12px}
html[data-a11y-text=enlarged] .accessibility-size-controls output{grid-column:1/-1;grid-row:1}
html[data-a11y-text=enlarged] .accessibility-size-controls button{white-space:nowrap;overflow-wrap:normal!important;padding-inline:0}
html[data-a11y-links=highlighted] a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:.22em!important}
html[data-a11y-motion=reduced]{scroll-behavior:auto!important}
html[data-a11y-motion=reduced] *,html[data-a11y-motion=reduced] *:before,html[data-a11y-motion=reduced] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-a11y-contrast=high] :is(body,header,nav,main,section,article,footer,div,figure,figcaption,aside,dialog,p,h1,h2,h3,h4,a,button,label,input,textarea,select,summary,output,small,strong,span,legend,li){background-color:#fff!important;color:#111!important;border-color:#333!important;text-shadow:none!important}
html[data-a11y-contrast=high] :is(input,textarea)::placeholder{color:#333!important}
html[data-a11y-contrast=high] .hero-image{opacity:.08}
html[data-a11y-contrast=high] .hero-shade{display:none}
html[data-a11y-contrast=high] .logo-tile-dark .logo-art{background-color:#111f2b!important}
html[data-a11y-contrast=high] .accessibility-launcher{border:2px solid #111!important}
html[data-a11y-contrast=high] [aria-pressed=true]{outline:2px solid #111;outline-offset:-4px}
html[data-a11y-contrast=high] [aria-pressed=true]>.accessibility-switch{background:#111!important}
html[data-a11y-contrast=high] :focus-visible{outline:3px solid #111!important;box-shadow:0 0 0 6px #fff!important}
@media(max-width:680px){.accessibility-launcher{inset-inline-start:15px;bottom:max(15px,env(safe-area-inset-bottom));padding:11px 14px;font-size:12px;gap:7px;min-height:50px}.accessibility-launcher svg{width:23px;height:23px}.accessibility-tools{padding-inline:22px}.accessibility-tools h2{font-size:25px}html[data-a11y-text=enlarged] .accessibility-launcher{padding-inline:10px}html[data-a11y-text=enlarged] .guide-department:last-child{grid-column:auto;display:flex}}
@media(forced-colors:active){.accessibility-launcher,.accessibility-options button,.accessibility-size-controls button{border:2px solid ButtonText}.accessibility-switch{border:1px solid ButtonText}.accessibility-switch:after{background:ButtonText}}

.accessibility-launcher{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.accessibility-launcher[data-dragging=true]{cursor:grabbing;box-shadow:0 8px 30px #071f1b55;transition:none}
.accessibility-launcher .accessibility-grip{width:9px;height:18px;stroke-width:2.8;color:#b9edcd;opacity:.75}
.accessibility-position{display:grid;gap:9px;margin-top:22px;padding-top:20px;border-top:1px solid #d4dfd7;font-size:14px;font-weight:600}
.accessibility-position select{font:inherit;font-size:13px;min-height:46px;width:100%;max-width:100%;padding:10px 13px;border:1px solid #9fb6a8;border-radius:8px;background:#fff;color:#142632;cursor:pointer}
.accessibility-tools .accessibility-drag-hint{font-size:12px;line-height:1.8;color:#4f6256;margin-top:9px}
