/* Accessibility layer — ת"י 5568 / WCAG 2.0 AA helpers + toolbar */
:root{
  --a11y-text-scale:1;
  /* AA-safer link red on dark */
  --a11y-link:#ff6b66;
  --a11y-focus:#ffe566;
}
html{font-size:calc(17px * var(--a11y-text-scale));}
body{overflow-wrap:anywhere}

/* Visible keyboard focus */
:focus{outline:none}
:focus-visible{
  outline:3px solid var(--a11y-focus) !important;
  outline-offset:3px !important;
}
.skip:focus-visible{
  position:fixed;z-index:10000;width:auto;height:auto;margin:0;clip:auto;
  overflow:visible;inset-inline-start:1rem;top:1rem;
  background:#fff;color:#000;padding:.65rem 1.1rem;border-radius:8px;
  font-weight:800;outline:3px solid var(--a11y-focus);outline-offset:2px;
}

/* Contrast: muted text & links */
a{color:var(--a11y-link)}
.nav a{color:#d4d4dc}
.nav a.active,.mast-label,.fashion-read,.pdf-strip-actions a,.kicker{color:#ff8a86}
.eyebrow span{color:#fff !important}
.card-badge{color:#fff !important}
.brand-f1,.footer-brand .brand-f1{color:#ff4d47}
.card-date,.card-credit,.look-cap em,.look-cap span,.hero-meta,.crumbs,
.story-body figcaption,.story-body .credit,.remove-line{color:#b8b8c4}
.lede,.adar-teaser-copy p,.section-head p,.fashion-feature-copy p{color:#d2d2da}

/* Text on photos: ensure captions readable */
.look-cap,.card-body,.fashion-feature-copy{
  text-shadow:0 1px 2px rgba(0,0,0,.35);
}

.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Reduced motion (system + toolbar) */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important;
  }
}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{
  animation:none !important;transition:none !important;scroll-behavior:auto !important;
}

/* Toolbar modes */
html.a11y-contrast{
  --ink:#000;--ink-2:#000;--panel:#111;--line:#fff;--text:#fff;--text-dim:#fff;--muted:#fff;
  --a11y-link:#ffff00;--red:#ffff00;--a11y-focus:#00ffff;
}
html.a11y-contrast body{background:#000;color:#fff}
html.a11y-contrast a{color:#ffff00;text-decoration:underline}
html.a11y-contrast .site-header,html.a11y-contrast .site-footer{background:#000;border-color:#fff}
html.a11y-contrast .btn{background:#ffff00;color:#000}
html.a11y-contrast .btn-ghost{border-color:#fff;color:#fff}
html.a11y-gray body{-webkit-filter:grayscale(1);filter:grayscale(1)}
html.a11y-links a{text-decoration:underline !important;text-underline-offset:3px;font-weight:800}
html.a11y-readable,html.a11y-readable body{
  font-family:Arial,Helvetica,"Noto Sans Hebrew",sans-serif !important;
  letter-spacing:.02em;word-spacing:.04em;line-height:1.85 !important;
}
html.a11y-readable .brand,html.a11y-readable .brand-adar,html.a11y-readable .brand-f1,
html.a11y-readable h1,html.a11y-readable h2,html.a11y-readable h3{
  font-family:Arial,Helvetica,"Noto Sans Hebrew",sans-serif !important;
}

/* Floating accessibility control — clear of content on mobile */
.a11y-root{
  position:fixed;z-index:9990;
  inset-inline-end:max(.75rem, env(safe-area-inset-right));
  bottom:max(.75rem, env(safe-area-inset-bottom));
  font-family:var(--font);
}
.a11y-fab{
  display:inline-flex;align-items:center;gap:.45rem;
  background:#111;color:#fff;border:2px solid #fff;border-radius:999px;
  padding:.55rem .9rem .55rem .7rem;font-weight:800;cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.45);
}
.a11y-fab[aria-expanded="true"]{background:#e10600;border-color:#fff}
.a11y-fab-text{font-size:.92rem}
.a11y-icon{flex-shrink:0}
.a11y-panel{
  position:absolute;inset-inline-end:0;bottom:calc(100% + .55rem);
  width:min(300px,calc(100vw - 1.5rem));
  background:#121218;color:#fff;border:1px solid #3a3a48;border-radius:14px;
  box-shadow:0 16px 40px rgba(0,0,0,.5);padding:.75rem .85rem .9rem;
}
.a11y-panel[hidden]{display:none !important}
.a11y-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.55rem}
.a11y-close{
  width:36px;height:36px;border-radius:50%;border:1px solid #555;background:#000;color:#fff;
  font-size:1.2rem;cursor:pointer;line-height:1;
}
.a11y-actions{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.a11y-actions button{
  width:100%;text-align:right;background:#1c1c24;color:#fff;border:1px solid #3a3a48;
  border-radius:10px;padding:.55rem .7rem;font-weight:700;cursor:pointer;font-size:.95rem;
}
.a11y-actions button[aria-pressed="true"]{background:#e10600;border-color:#ff8a86}
.a11y-scale{font-size:.88rem;color:#cfcfd8;padding:.2rem .2rem}
.a11y-foot{margin:.7rem 0 0;font-size:.85rem}
.a11y-foot a{font-weight:800}

@media (max-width:640px){
  .a11y-root{bottom:max(4.2rem, env(safe-area-inset-bottom));} /* clear mobile UI / shelf */
  .a11y-fab-text{display:none}
  .a11y-fab{padding:.65rem;border-radius:50%}
}

/* Statement page */
.a11y-statement{max-width:46rem;margin-inline:auto;padding:1.6rem 0 2.8rem}
.a11y-statement h1{font-family:var(--display);font-weight:900;font-size:clamp(1.7rem,3.5vw,2.4rem);margin:.2rem 0 1rem}
.a11y-statement h2{font-family:var(--display);font-weight:800;font-size:1.25rem;margin:1.5rem 0 .55rem}
.a11y-statement ul{padding-inline-start:1.2rem}
.a11y-statement li{margin:.35rem 0}

/* 200% zoom resilience */
@media (max-width:900px){
  .lead-grid,.fashion-feature,.adar-teaser-inner,.footer-grid{grid-template-columns:1fr !important}
}

/* Links distinguishable without color alone (WCAG 1.4.1) */
main a:not(.btn):not(.card):not(.lead-media):not(.fashion-feature):not(.look-tile):not(.mag-cover):not(.gallery-item),
.site-footer a,
.pdf-strip a{
  text-decoration:underline;
  text-underline-offset:2px;
}
.nav a, .brand, .btn, .emblem-link{text-decoration:none}
.nav a:hover,.btn:hover{text-decoration:none}
