/* ============================================================================
   rtl.css — Spiegelung für rechtsläufige Sprachen (aktuell Arabisch).
   Wird von shared/partials/head.php nur geladen, wenn <html dir="rtl">.

   Grundlage: `direction: rtl` spiegelt Flex-/Grid-Reihenfolge, Inline-Fluss und
   alle logischen Properties (margin-inline, padding-inline) automatisch. Hier
   werden nur die Stellen nachgezogen, an denen das bestehende CSS bewusst
   physische Richtungen benutzt (left/right, text-align, border-left …).
   ========================================================================== */

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

/* --- Typografie ------------------------------------------------------------
   Arabisch braucht eine Schrift mit arabischem Schnitt und etwas mehr
   Zeilenhöhe; die lateinische Display-Serif bleibt für Zahlen/Marken erhalten. */
[dir="rtl"] body,
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3, [dir="rtl"] h4,
[dir="rtl"] .eyebrow, [dir="rtl"] .lead, [dir="rtl"] .btn {
    font-family: "Noto Naskh Arabic", "Geeza Pro", "Segoe UI", Tahoma, "Arial Unicode MS", sans-serif;
    letter-spacing: 0;
}
[dir="rtl"] body { line-height: 1.85; }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3 { line-height: 1.45; }
/* Versalien-Sperrung ist im Arabischen sinnlos bis schädlich */
[dir="rtl"] .eyebrow,
[dir="rtl"] .site-header__wordmark,
[dir="rtl"] .site-header__hours small {
    text-transform: none;
    letter-spacing: 0;
}

/* --- Listen & Fließtext ---------------------------------------------------- */
[dir="rtl"] ul,
[dir="rtl"] ol,
[dir="rtl"] .m-text-single__body ul,
[dir="rtl"] .m-text-single__body ol,
[dir="rtl"] .m-blog-detail__body ul,
[dir="rtl"] .m-blog-detail__body ol,
[dir="rtl"] .m-finance-info__body ul,
[dir="rtl"] .m-case-study-detail__body ul {
    padding-left: 0;
    padding-right: 1.4em;
}
[dir="rtl"] .m-text-single__body th,
[dir="rtl"] .m-text-single__body td,
[dir="rtl"] .m-text-single--centered .m-text-single__body,
[dir="rtl"] .m-compare-rows__cell,
[dir="rtl"] .m-quick-facts th,
[dir="rtl"] .m-quick-facts td,
[dir="rtl"] .m-clinic-pin__body,
[dir="rtl"] .m-podcast-teaser__body,
[dir="rtl"] .m-feature-grid__text,
[dir="rtl"] .m-vn-gallery__caption,
[dir="rtl"] .m-blog-detail__body td,
[dir="rtl"] .m-blog-detail__body th {
    text-align: right;
}

/* --- Zitate & Akzentkanten (border-left → border-right) -------------------- */
[dir="rtl"] .m-blog-detail__body blockquote,
[dir="rtl"] .m-case-detail__note,
[dir="rtl"] .m-case-study-detail__body blockquote,
[dir="rtl"] .m-case-showcase__quote {
    border-left: 0;
    border-right: 3px solid var(--color-primary);
}
[dir="rtl"] .m-case-detail__note { border-right-color: var(--color-accent); }
[dir="rtl"] .m-case-showcase__quote { border-right-color: var(--color-accent); }

/* --- Spalten-Trenner ------------------------------------------------------- */
[dir="rtl"] .m-quick-facts__col,
[dir="rtl"] .m-trust-stats__grid li {
    border-left: 0;
    border-right: 1px solid var(--color-border-soft);
}
[dir="rtl"] .m-quick-facts__col:first-child,
[dir="rtl"] .m-trust-stats__grid li:first-child { border-right: 0; }

/* --- Häkchen-/Bullet-Listen mit absolut gesetztem Marker ------------------- */
[dir="rtl"] .m-feature-grid__checklist li,
[dir="rtl"] .m-price-table__includes li,
[dir="rtl"] .m-value-columns__list li,
[dir="rtl"] .m-checklist__item {
    padding-left: 0;
    padding-right: 1.6em;
}
[dir="rtl"] .m-feature-grid__checklist li::before,
[dir="rtl"] .m-price-table__includes li::before,
[dir="rtl"] .m-value-columns__list li::before,
[dir="rtl"] .m-checklist__item::before {
    left: auto;
    right: 0;
}
[dir="rtl"] .m-value-columns__item { padding-left: 0; padding-right: 38px; }
[dir="rtl"] .m-value-columns__item > svg,
[dir="rtl"] .m-value-columns__icon { left: auto; right: 0; }

/* --- Breadcrumb ------------------------------------------------------------ */
[dir="rtl"] .m-breadcrumb li:not(:last-child)::after {
    content: "\\";
    margin-left: 0;
    margin-right: var(--space-2);
}

/* --- Zeitstrahl-Module (vertikale Schiene nach rechts) --------------------- */
[dir="rtl"] .m-process-timeline--scroll .m-process-timeline__list::before { left: auto; right: 48px; }
[dir="rtl"] .m-process-timeline__progress { left: auto; right: 46.5px; }
[dir="rtl"] .m-journey-timeline__rail,
[dir="rtl"] .m-journey-timeline__progress { left: auto; right: 50%; transform: translateX(50%); }
[dir="rtl"] .m-journey-timeline__dot { left: auto; right: 50%; transform: translateX(50%); }
[dir="rtl"] .m-journey-timeline__branch { padding-left: 0; padding-right: 44px; }
[dir="rtl"] .m-journey-timeline__branch-head,
[dir="rtl"] .m-journey-timeline__option,
[dir="rtl"] .m-journey-timeline__merge-note { text-align: right; }

@media (max-width: 900px) {
    [dir="rtl"] .m-journey-timeline__rail,
    [dir="rtl"] .m-journey-timeline__progress,
    [dir="rtl"] .m-journey-timeline__dot { left: auto; right: 14px; transform: none; }
}
@media (max-width: 640px) {
    [dir="rtl"] .m-process-timeline--scroll .m-process-timeline__list::before { left: auto; right: 36px; }
    [dir="rtl"] .m-process-timeline__progress { left: auto; right: 34.5px; }
}

/* --- OP-Termine: Störer-Fähnchen ------------------------------------------ */
[dir="rtl"] .m-op-termine__flag { left: auto; right: 50%; transform: translateX(50%); }
@media (max-width: 720px) {
    [dir="rtl"] .m-op-termine__flag { right: auto; left: var(--space-4); transform: translateY(-50%); }
    [dir="rtl"] .m-op-termine__card { text-align: right; }
}

/* --- Header & Navigation --------------------------------------------------- */
[dir="rtl"] .site-header__hours { align-items: flex-start; margin-right: 0; margin-left: var(--space-1); }
[dir="rtl"] .lang-switch__menu { right: auto; left: 0; }
[dir="rtl"] .lang-switch__item.is-current::after { margin-inline-start: auto; }
[dir="rtl"] .site-nav__caret,
[dir="rtl"] .lang-switch__caret { transform: none; }
[dir="rtl"] .btn--icon-phone::before { margin-right: 0; margin-left: 6px; }

@media (max-width: 980px) {
    [dir="rtl"] .lang-switch__menu {
        right: auto;
        left: max(12px, env(safe-area-inset-left));
    }
}

/* --- Footer ---------------------------------------------------------------- */
[dir="rtl"] .site-footer__legal a { margin-left: 0; margin-right: var(--space-4); }

/* --- Sonstiges ------------------------------------------------------------- */
[dir="rtl"] .m-case-detail__age { margin-left: 0; margin-right: 6px; }
[dir="rtl"] .m-vn-gallery__count { margin-left: 0; margin-right: 0.2em; }
[dir="rtl"] .m-vn-gallery__lb-pos { margin-left: 0; margin-right: auto; }
[dir="rtl"] .m-text-two-column__aside { margin-left: 0; margin-right: auto; }
[dir="rtl"] .m-booking-iframe__note { padding-left: 0; padding-right: 24px; }

/* Zahlen, Preise, Telefonnummern und URLs bleiben linksläufig lesbar. */
[dir="rtl"] .m-price-table__price,
[dir="rtl"] .m-trust-stats__value,
[dir="rtl"] .m-op-termine__count,
[dir="rtl"] .m-hero-cta__badge-value,
[dir="rtl"] .site-header__phone,
[dir="rtl"] a[href^="tel:"],
[dir="rtl"] a[href^="mailto:"] {
    direction: ltr;
    unicode-bidi: isolate;
}
