/* RTL overrides for Hebrew & Arabic versions */
html, body { overflow-x: hidden; }
@supports (overflow: clip) { html, body { overflow-x: clip; } }
body { direction: rtl; }

/* Headings/descriptions keep the design's intentional alignment.
   (A previous blanket `text-align: inherit` here forced centered
   section headings to the right edge in RTL - removed.) */

/* Lists & paragraphs that were hard-aligned left */
[dir="rtl"] ul, [dir="rtl"] ol { padding-right: 0; }

/* Chips / flex rows auto-flip with direction:rtl,
   but physical paddings/margins need mirroring */
[dir="rtl"] .chip span { margin-left: 0; }

/* Arrows: point the other way in RTL */
[dir="rtl"] .service-arrow svg,
[dir="rtl"] .post-arrow svg { transform: scaleX(-1); }

/* Header nav keeps layout, just mirrored automatically by flex */

/* Logo marquee: the keyframes run translateX(0 -> -50%), which only loops
   seamlessly when the track is anchored to the LEFT edge. In RTL the
   max-content track anchors to the right, so the same animation drags the
   whole strip off-screen and the window goes empty. Run the marquee
   internals LTR (visual order of logos is meaningless here). */
[dir="rtl"] .wcl-clients-marquee { direction: ltr; }

/* Checkmark lists: the ✓ is positioned with physical left, so in RTL it
   stays on the wrong side. Move it to the reading start (right). */
[dir="rtl"] .report-points li,
[dir="rtl"] .plan-includes li { padding-left: 0; padding-right: 1.7rem; }
[dir="rtl"] .plan-includes li { padding-right: 1.6rem; }
[dir="rtl"] .report-points li::before,
[dir="rtl"] .plan-includes li::before { left: auto; right: 0; }

/* FAQ accordion: in RTL the + toggle sits at the reading start (right),
   question text right after it. */
[dir="rtl"] .faq-item summary { justify-content: flex-start; }
[dir="rtl"] .faq-icon { order: -1; }

/* Form inputs */
[dir="rtl"] input, [dir="rtl"] textarea, [dir="rtl"] select { text-align: right; }

/* Footer columns */
[dir="rtl"] .footer-col ul { padding-right: 0; }

/* Chat widget stays bottom-corner; flip side */
[dir="rtl"] .chat-widget, [dir="rtl"] .chat-launcher { left: 1.2rem; right: auto; }

/* Keep LTR for things that must not flip (stats numbers, brand marks, phone numbers) */
[dir="rtl"] .stat-num, [dir="rtl"] .wcl-logo-holder, [dir="rtl"] .slider-item img { direction: ltr; }
[dir="rtl"] a[href^="tel:"] { direction: ltr; unicode-bidi: embed; display: inline-block; }

/* English blog post titles inside RTL pages get an explicit dir="ltr"
   attribute in the markup (translated titles must stay RTL). */

/* ---------- Mobile: RTL carousels keep swiping, without magnetic snap ----------
   iOS Safari misplaces scroll-snap items under direction:rtl (cards get
   stuck half off-screen). Plain free scrolling works fine in RTL. */
@media (max-width: 768px) {
    [dir="rtl"] .wcl-cases-section .cases-grid, [dir="rtl"] .blog-grid { scroll-snap-type: none; }
    [dir="rtl"] .wcl-cases-section .post-card, [dir="rtl"] .blog-grid .post-card { scroll-snap-align: none; }
}
@media (max-width: 640px) {
    [dir="rtl"] .services-grid { scroll-snap-type: none; }
    [dir="rtl"] .service-card { scroll-snap-align: none; }
}

/* RTL: nav dropdown caret gap (base rule uses margin-left which lands on the wrong side in RTL) */
.menu-item.has-children > a::after { margin-left: 0; margin-right: 8px; }
