/* Fonts are served from this server only. Logical properties throughout,
   so the same rules work in Hebrew (rtl) and English (ltr). */
@font-face { font-family: 'Assistant'; font-weight: 400; font-display: swap;
  src: url('/assets/fonts/assistant-hebrew-400-normal.woff2') format('woff2');
  unicode-range: U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: 'Assistant'; font-weight: 600; font-display: swap;
  src: url('/assets/fonts/assistant-hebrew-600-normal.woff2') format('woff2');
  unicode-range: U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: 'Assistant'; font-weight: 700; font-display: swap;
  src: url('/assets/fonts/assistant-hebrew-700-normal.woff2') format('woff2');
  unicode-range: U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F; }
@font-face { font-family: 'Assistant'; font-weight: 400; font-display: swap;
  src: url('/assets/fonts/assistant-latin-400-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: 'Assistant'; font-weight: 600; font-display: swap;
  src: url('/assets/fonts/assistant-latin-600-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: 'Assistant'; font-weight: 700; font-display: swap;
  src: url('/assets/fonts/assistant-latin-700-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122; }

*, *::before, *::after { box-sizing: border-box; }

html { font-size: 100%; }

body {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-md);
  line-height: 1.5;
  color: var(--color-ink);
  background: var(--color-bg);
}

h1, h2, p { margin: 0; }
dl, dd, ol { margin: 0; }

[hidden] { display: none !important; }

:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 2px; }

.is-ltr { direction: ltr; unicode-bidi: isolate; }

.u-sr-only {
  position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden;
  clip-path: inset(50%); white-space: nowrap;
}

.skip-link {
  position: absolute; inset-block-start: var(--sp-2); inset-inline-start: var(--sp-2);
  padding: var(--sp-2) var(--sp-3); background: var(--color-surface); color: var(--color-ink);
  border-radius: var(--radius); transform: translateY(-200%);
}
.skip-link:focus { transform: none; }
