/* Grid lines, flex rows and logical offsets follow each widget's own language. */
:is(.tivan-hero,.tivan-category,.tivan-applications,.tivan-about-page,.tivan-about,
    .tivan-product-card,.tivan-products,.tivan-banners,.tivan-cta,.tivan-blog-card,
    .tivan-blog,.tivan-blog-archive,.tivan-footer,.tivan-page-heading,
    .tivan-contact-page,.tivan-acc,.tivan-reps,.tivan-faq,.tivan-shop,
    .tivan-error-page,.tivan-single-product,.tivan-relate,.tivan-mag,
    .tivan-single-blog)[dir="ltr"] { direction:ltr; text-align:start; }

/* Mirror decorative layers only; text, product photos and logos stay readable. */
.tivan-about:dir(ltr) .tivan-about-surface,
.tivan-about:dir(ltr) .tivan-about-card::before,
.tivan-about:dir(ltr) .tivan-about-card::after,
.tivan-about:dir(ltr) .tivan-about-card-inner::before,
.tivan-page-heading:dir(ltr)::before,
.tivan-relate:dir(ltr)::before,
.tivan-error-page:dir(ltr) .te-banner::before { transform:scaleX(-1); }

.tivan-banners:dir(ltr) .tivan-banner {
    clip-path:polygon(0 0,calc(100% - var(--tb-cut)) 0,100% var(--tb-cut),100% 100%,var(--tb-cut) 100%,0 calc(100% - var(--tb-cut)));
}
.tivan-banners:dir(ltr) .tivan-banner.is-left {
    clip-path:polygon(var(--tb-cut) 0,100% 0,100% calc(100% - var(--tb-cut)),calc(100% - var(--tb-cut)) 100%,0 100%,0 var(--tb-cut));
}
.tivan-banners:dir(ltr) .tivan-banner-action-icon { transform:scaleX(-1) rotate(180deg); }
.tivan-banners:dir(ltr) .tivan-banner:is(:hover,:focus-visible) .tivan-banner-action-icon { transform:scaleX(-1) rotate(180deg) translateX(6px); }
.tivan-banners:dir(ltr) .tivan-banner::before { left:auto; right:0; transform:translateX(160%) skewX(16deg); }
.tivan-banners:dir(ltr) .tivan-banner:is(:hover,:focus-visible)::before { transform:translateX(-340%) skewX(16deg); }
.tivan-banners:dir(ltr) .tivan-banner::after { background:linear-gradient(200deg,#031c4773 0%,#3295ff2e 42%,transparent 72%); }

.tivan-applications:dir(ltr) .tac-card {
    clip-path:polygon(100% 0,0 0,0 100%,62% 100%,74% calc(100% - var(--tac-cut)),91% calc(100% - var(--tac-cut)),100% calc(100% - var(--tac-cut) * 1.75));
}
.tivan-applications:dir(ltr) .tac-action svg,
.tivan-cta:dir(ltr) .tcta-action svg,
.tivan-cta:dir(ltr) .tcta-orb svg { transform:scaleX(-1) rotate(180deg); }
.tivan-applications:dir(ltr) .tac-card:is(:hover,:focus-visible) .tac-action svg { transform:scaleX(-1) rotate(180deg) translate(3px,3px); }
.tivan-cta:dir(ltr) .tcta-card:is(:hover,:focus-visible) .tcta-orb { transform:rotate(45deg); }
.tivan-contact-page:dir(ltr) .tivan-contact-info {
    clip-path:polygon(0 0,calc(100% - var(--contact-info-notch)) 0,100% var(--contact-info-notch),100% 100%,0 100%);
}
.tivan-contact-page:dir(ltr) .tivan-contact-text[dir="rtl"] { direction:ltr; text-align:start; }
.tivan-hero:dir(ltr) .tivan-search-field { padding:5px 5px 5px 12px; }
.tivan-hero:dir(ltr) .tivan-pause { left:auto; right:calc(100% + 8px); }
.tivan-hero:dir(ltr) .tivan-catalog {
    clip-path:polygon(calc(100% - 14px) 0,3px 0,0 3px,0 calc(100% - 14px),14px 100%,calc(100% - 3px) 100%,100% calc(100% - 3px),100% 14px);
}
.tivan-about-page:dir(ltr) .about-intro__play { left:auto; right:17%; }
.tivan-about-page:dir(ltr) .about-journey__picture {
    clip-path:polygon(0 0,calc(100% - 40px) 0,100% 40px,100% 100%,40px 100%,0 calc(100% - 40px));
}
@media(min-width:768px) {
    .tivan-cta:dir(ltr) .tcta-blur {
        mask-image:linear-gradient(to left,transparent 35%,#000 70%);
        -webkit-mask-image:linear-gradient(to left,transparent 35%,#000 70%);
    }
}
@media(max-width:767px) {
    .tivan-about-page:dir(ltr) .about-journey__picture {
        clip-path:polygon(0 0,calc(100% - 36px) 0,100% 36px,100% 100%,36px 100%,0 calc(100% - 36px));
    }
}
@media(prefers-reduced-motion:reduce) {
    .tivan-banners:dir(ltr) .tivan-banner:is(:hover,:focus-visible)::before { transform:translateX(160%) skewX(16deg); }
    .tivan-banners:dir(ltr) .tivan-banner:is(:hover,:focus-visible) .tivan-banner-action-icon { transform:scaleX(-1) rotate(180deg); }
}

/* Keep directional icons separate from photographs, maps and brand marks. */
.tivan-product-card:dir(ltr) .tivan-product-details { translate:-50% 0; }
.tivan-product-card:dir(ltr) .tivan-product-details-icon { transform:scaleX(-1) rotate(180deg); }
.tivan-single-blog:dir(ltr),.tivan-single-product:dir(ltr) { --tivan-align-right:left; --tivan-align-left:right; }
.tivan-about-page:dir(ltr) .about-team__card { direction:ltr; }
.tivan-category:dir(ltr) .tivan-category-prev .tivan-category-arrow-icon,
.tivan-products:dir(ltr) .tivan-products-prev .tivan-products-arrow-icon,
.tivan-blog:dir(ltr) .tbl-prev svg,
.tivan-applications:dir(ltr) .tac-prev svg,
.tivan-mag:dir(ltr) .tivan-mag-prev svg { transform:scaleX(-1) rotate(180deg); }
.tivan-category:dir(ltr) .tivan-category-next .tivan-category-arrow-icon,
.tivan-products:dir(ltr) .tivan-products-next .tivan-products-arrow-icon,
.tivan-blog:dir(ltr) .tbl-next svg,
.tivan-applications:dir(ltr) .tac-next svg,
.tivan-mag:dir(ltr) .tivan-mag-next svg { transform:scaleX(-1); }
.tivan-shop:dir(ltr) .tivan-shop-prev svg { transform:scaleX(-1); }
.tivan-shop:dir(ltr) .tivan-shop-next svg { transform:scaleX(-1) rotate(180deg); }
.tivan-relate:dir(ltr) .tivan-relate-prev img { transform:none; }
.tivan-relate:dir(ltr) .tivan-relate-next img { transform:scaleX(-1); }
.tivan-single-product:dir(ltr) .tsp-prev svg { transform:scaleX(-1) rotate(135deg); }
.tivan-single-product:dir(ltr) .tsp-next svg { transform:scaleX(-1) rotate(-45deg); }
.tivan-blog-card:dir(ltr) .tbc-action svg { transform:scaleX(-1) rotate(180deg); }
.tivan-blog-archive:dir(ltr) .tivan-blog-archive-previous svg { transform:scaleX(-1) rotate(-90deg); }
.tivan-blog-archive:dir(ltr) .tivan-blog-archive-next svg { transform:scaleX(-1) rotate(90deg); }
.tivan-about-page:dir(ltr) .about-carousel-controls--products .about-carousel-prev svg { transform:scaleX(-1) rotate(180deg); }
.tivan-about-page:dir(ltr) .about-carousel-controls--products .about-carousel-next svg { transform:scaleX(-1); }
.tivan-about-page:dir(ltr) .about-carousel-controls--shop .about-carousel-prev svg { transform:scaleX(-1); }
.tivan-about-page:dir(ltr) .about-carousel-controls--shop .about-carousel-next svg { transform:scaleX(-1) rotate(180deg); }
.tivan-footer:dir(ltr) .tf-toggle-icon svg { transform:none; }
.tivan-footer:dir(ltr) .tf-column.is-open .tf-toggle-icon { transform:rotate(-90deg); }
.tivan-footer:dir(ltr) .tf-menu a:is(:hover,:focus-visible) { transform:translateX(3px); }
.tivan-hero:dir(ltr),.tivan-single-product:dir(ltr) { --tivan-copy-font:var(--tivan-ltr-font,Arial,sans-serif); }

.tivan-relate:dir(ltr) button.tivan-relate-arrow.tivan-relate-next { transform:rotate(-90deg); }
