/*
 * Persian (fa): layout = English (ltr). Only glyph order is RTL.
 *
 * `direction: rtl` alone makes `text-align: start` resolve to the right;
 * we pin the same physical alignment as EN (`left` or `inherit`), never `start`.
 */

html[dir="rtl"] {
  direction: ltr;
}

/* Marquee: LTR track for animation; items read RTL but stay left-aligned in the strip */
html[dir="rtl"] .page-home .lz-marquee__track {
  direction: ltr;
}

html[dir="rtl"] .page-home .lz-marquee__item {
  direction: rtl;
  text-align: left;
}

/* Footer copy: RTL glyphs; keep each row’s EN alignment (incl. centered mobile bands) */
html[dir="rtl"] .ladyzone-site-footer :is(
  .txt-16,
  .txt-20,
  .heading,
  .class-name-txt,
  .content-footer-bottom,
  .ladyzone-footer-social__link,
  .link-block,
  .sec-footer a,
  .sec-footer-mob a
) {
  direction: rtl;
  text-align: inherit;
}

/* Header nav labels (Persian glyph order, English alignment) */
html[dir="rtl"] body.ladyzone-route-home .lz-nav .nav-main__link,
html[dir="rtl"] body.ladyzone-route-home .lz-header__langs .nav-sub__link {
  direction: rtl;
  text-align: left;
}

/* Header nav: reverse menu item order so the first menu entry sits on the right (RTL reading order) */
html[dir="rtl"] body.ladyzone-route-home .lz-nav .nav-main {
  direction: rtl;
}

/* Homepage copy — left-aligned blocks like EN */
html[dir="rtl"] .page-home :is(
  .lz-block-text,
  .lz-block-text__title,
  .lz-block-text__body,
  .lz-intro__title,
  .lz-about__title,
  .lz-about__text,
  .lz-services__heading,
  .lz-service-list__link,
  .lz-classes-band__eyebrow,
  .lz-classes-band__heading,
  .lz-class-card__titles,
  .lz-class-card__title,
  .lz-locations-inset__text,
  .lz-locations-inset__title,
  .lz-locations-inset__address,
  .lz-locations-inset__map-link,
  .lz-locations-inset__branches,
  .lz-locations-inset__branch-link,
  .lz-lead__subtitle,
  .lz-lead__interests-title,
  .lz-lead__check span,
  .lz-teaser-ring__text,
  .lz-btn--outline,
  .lz-anim-title__inner
) {
  direction: rtl;
  text-align: left;
}

/*
 * Vertical rail titles: `writing-mode: vertical-rl` rotates each glyph 90° clockwise,
 * so Persian script reads bottom→top by default. A negative half-turn flips the line
 * to read top→bottom (matches how Persian is naturally verticalized on signage).
 * Preserve the existing `translateX(-50%)` centering.
 */
html[dir="rtl"] .page-home :is(
  .lz-home-rail__title,
  .lz-classes-band__rail-title,
  .lz-lead__rail-title
) {
  direction: rtl;
  transform: translateX(-50%) rotate(-180deg);
}

html[dir="rtl"] .page-home .lz-lead__form-panel .lz-lead__fields :is(input, textarea) {
  direction: rtl;
  text-align: left;
}

/* Phone / numeric strings */
html[dir="rtl"] .lz-locations-inset__phone,
html[dir="rtl"] .lz-locations-inset__phone-ltr {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

/* Outline stroke→fill RTL is owned by components/outline-text.css */
