/* Accessibility: skip link, focus ring, the accessibility menu, and the display modes it switches on (classes on <html>) */

.skip-link{position:absolute;inset-inline-start:12px;top:-80px;z-index:100;background:#161616;color:#fff;padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none}
.skip-link:focus{top:12px}
:focus-visible{outline:3px solid #1a5fb4;outline-offset:3px}
main[tabindex="-1"]:focus{outline:none}

.a11y-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Phones: top corner on the inline-end side, which is empty on every page and clear of the order button and the bottom bar.
   Desktop: bottom corner on the inline-start side. */
.a11y-toggle{position:fixed;inset-inline-end:12px;top:52px;z-index:22;width:48px;height:48px;border-radius:50%;border:2px solid #fff;background:#1a4fa0;color:#fff;display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.a11y-toggle svg{width:28px;height:28px;fill:currentColor}
@media (min-width:900px){.a11y-toggle{inset-inline-end:auto;inset-inline-start:24px;top:auto;bottom:24px;width:52px;height:52px}.a11y-toggle svg{width:30px;height:30px}}

.a11y-panel{position:fixed;inset-inline-end:12px;top:108px;z-index:23;width:min(300px,calc(100vw - 24px));max-height:calc(100vh - 124px);overflow:auto;background:#fff;color:#161616;border:2px solid #161616;border-radius:16px;padding:14px;box-shadow:0 12px 32px rgba(0,0,0,.25);font-family:Rubik,system-ui,Arial,sans-serif;font-size:16px;line-height:1.4;text-align:right;direction:rtl}
@media (min-width:900px){.a11y-panel{inset-inline-end:auto;inset-inline-start:24px;top:auto;bottom:88px}}
.a11y-panel[hidden]{display:none}
.a11y-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.a11y-title{font-weight:800;font-size:18px;margin:0}
.a11y-close{border:0;background:none;font-size:28px;line-height:1;cursor:pointer;padding:2px 8px;color:#161616}
.a11y-size{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.a11y-size span{flex:1;font-weight:500}
.a11y-size output{min-width:52px;text-align:center;font-weight:700}
.a11y-size button,.a11y-opt,.a11y-reset{border:2px solid #161616;background:#fff;color:#161616;border-radius:10px;font:inherit;font-weight:500;cursor:pointer}
.a11y-size button{width:46px;height:40px;font-weight:700}
.a11y-opt{display:flex;width:100%;justify-content:space-between;align-items:center;padding:9px 12px;margin-bottom:6px;text-align:right}
.a11y-opt[aria-pressed="true"]{background:#161616;color:#fff}
.a11y-opt[aria-pressed="true"]::after{content:"✓";font-weight:800}
.a11y-reset{width:100%;padding:9px 12px;margin:4px 0 10px}
.a11y-panel a{color:#161616;font-weight:700}

/* text size: zoom keeps the px-based layouts proportional */
html.a11y-text-1 body{zoom:1.15}
html.a11y-text-2 body{zoom:1.3}
html.a11y-text-3 body{zoom:1.5}

/* high contrast */
html.a11y-contrast body{background:#fff!important;color:#000!important}
html.a11y-contrast body :is(p,span,li,dt,dd,label,h1,h2,h3,b,small,output,summary,div,a,button){color:#000!important}
html.a11y-contrast body :is(input,.main-img,.tile,.summary,.details,.order-note,.thumbs button,.steps,.missing){background:#fff!important;border-color:#000!important}
html.a11y-contrast body input{border-width:2px!important}
html.a11y-contrast body :is(.eyebrow,.alert){background:#fff!important;border:2px solid #000!important}
html.a11y-contrast body .sticky{background:#fff!important;border-top:2px solid #000!important}
html.a11y-contrast body :is(footer,.details dl div){border-color:#000!important}
html.a11y-contrast body :is(.bar,.cta,.wa-link,.btn,.wa,.a11y-toggle,.a11y-opt[aria-pressed="true"],.skip-link){background:#000!important;color:#fff!important;border:2px solid #fff!important;box-shadow:none!important}
html.a11y-contrast body :is(.bar,.cta,.wa-link,.btn,.a11y-opt[aria-pressed="true"],.skip-link) *{color:#fff!important}
html.a11y-contrast body :is(.wa,.wa-link,.a11y-toggle) svg{fill:#fff!important}
html.a11y-contrast body .perks svg{color:#000!important}

/* highlighted links */
html.a11y-links body a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px!important;outline:2px dashed currentColor;outline-offset:2px}

/* stopped animations: from the menu, and automatically for visitors who ask their system for less motion */
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* readable font */
html.a11y-font body,html.a11y-font body *{font-family:Arial,"Helvetica Neue",sans-serif!important;letter-spacing:.01em}
