@font-face {
  font-family: "Vazirmatn Showcase";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("./fonts/vazirmatn-arabic.woff2") format("woff2");
  unicode-range: U+0600-06FF,U+0750-077F,U+0870-089F,U+08A0-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FEFC;
}
@font-face {
  font-family: "Vazirmatn Showcase";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("./fonts/vazirmatn-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD;
}

/* Unlayered rules override the site's Latin display and component typography.
   Variable weights preserve the existing hierarchy without breaking joins. */
html[dir="rtl"],
[dir="rtl"] {
  --f-display: "Vazirmatn Showcase", Tahoma, sans-serif;
  --f-body: "Vazirmatn Showcase", Tahoma, sans-serif;
  --f-serif: "Vazirmatn Showcase", Tahoma, sans-serif;
  --f-mono: "Vazirmatn Showcase", Tahoma, sans-serif;
  font-family: "Vazirmatn Showcase", Tahoma, sans-serif;
}
html[dir="rtl"] body,
html[dir="rtl"] :is(button, input, textarea, select),
[dir="rtl"] :is(h1, h2, h3, h4, p, a, span, summary, label, th, td) {
  font-family: "Vazirmatn Showcase", Tahoma, sans-serif;
  letter-spacing: normal;
}
html[dir="rtl"] body { line-height: 1.85; }
html[dir="rtl"] :is(h1, h2, h3, h4) { line-height: 1.5; }
html[dir="rtl"] :is(p, li, blockquote, .faq__a) { line-height: 1.9; }
html[dir="rtl"] :is(h1, h2, h3, h4, p, li) { overflow-wrap: break-word; }
html[dir="rtl"] :is(em, .serif) { font-style: normal; }
html[dir="rtl"] :is(code, pre, kbd, samp) {
  font-family: ui-monospace, "Vazirmatn Showcase", monospace;
  direction: ltr;
  unicode-bidi: isolate;
}
@media (max-width: 360px) {
  .story-rings { flex-wrap: wrap; row-gap: 14px; }
}
.phone-stage::before { width: min(100%, 360px); }
