/* FTST bilingual layer: language switcher + Arabic (RTL) presentation.
   Loaded after fonts.css on every page; English pages only use the switcher rules. */

/* ---------- language switcher ---------- */
.lang-switch{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 14px;border:1px solid rgba(255,255,255,.38);border-radius:999px;font-family:var(--font-subtitle);font-size:13px;line-height:1;letter-spacing:.04em;color:var(--white);transition:background .2s,color .2s,border-color .2s}
.lang-switch[lang=ar]{font-family:"IBM Plex Sans Arabic",var(--font-subtitle);font-size:14px;font-weight:500;letter-spacing:0}
.lang-switch:hover,.lang-switch:focus-visible{background:var(--cyan);border-color:var(--cyan);color:#050505}
.nav-links .lang-switch{margin-inline-start:6px;padding:7px 14px}
.nav-links .lang-switch:after{display:none}
.lang-switch--bar{display:none}
@media(max-width:850px){
 .lang-switch--bar{display:inline-flex;position:absolute;top:calc(var(--nav) / 2);transform:translateY(-50%);inset-inline-end:calc(var(--pad) + 52px);min-height:40px;z-index:2}
 .nav.open .lang-switch--bar{display:none}
 .nav-links .lang-switch{display:none}
 .nav.open .nav-links .lang-switch{display:inline-flex;width:max-content;margin:14px 0 0;padding:12px 20px;font-size:18px}
}

/* ---------- Arabic typography ---------- */
:root[lang=ar]{--font-ar:"IBM Plex Sans Arabic","FTST Sklonar",Arial,sans-serif;--font-title:var(--font-ar);--font-subtitle:var(--font-ar);--font-text:var(--font-ar)}
[lang=ar] body{font-family:var(--font-ar)}
[lang=ar] body *:not(.lang-switch){letter-spacing:0!important}
[lang=ar] h1,[lang=ar] h2,[lang=ar] .hero-title,[lang=ar] .kinetic-title,[lang=ar] .work-title,[lang=ar] .next a,[lang=ar] .studio-contact>a,[lang=ar] .contact h2,[lang=ar] .leader h3{font-weight:600;line-height:1.28!important}
[lang=ar] .work-row-title,[lang=ar] .exp-row h3,[lang=ar] .studio-cap h3,[lang=ar] .studio-model-row h3,[lang=ar] .person h3{font-weight:500;line-height:1.35!important}
[lang=ar] .hero-title{font-size:clamp(44px,8vw,132px)}
[lang=ar] .intro-main,[lang=ar] .studio-opening-lede,[lang=ar] .story-lede,[lang=ar] .philosophy-copy,[lang=ar] .studio-body>p{line-height:1.5;font-weight:500}
[lang=ar] p,[lang=ar] dd,[lang=ar] .scope-row{line-height:1.8}
[lang=ar] .mono,[lang=ar] .eyebrow,[lang=ar] .nav-links{font-size:13px;line-height:1.7}
[lang=ar] .nav-links{font-size:15px}
[lang=ar] .work-row-credit{font-size:13px;line-height:1.9}
[lang=ar] .credits-head h2{white-space:pre-line}
[lang=ar] .contact-form input,[lang=ar] .contact-form textarea,[lang=ar] .project-tools input{font-family:var(--font-ar)}
[lang=ar] input[type=email]{direction:ltr;text-align:right}

/* ---------- RTL mirroring of physical layout rules ---------- */
[dir=rtl] .skip-link{left:auto;right:14px}
[dir=rtl] .nav-links a:after{left:100%;right:0;transition:left .28s}
[dir=rtl] .nav-links a:hover:after{left:0}
[dir=rtl] .nav.open .nav-links{left:auto;right:var(--pad);grid-column:1/-1}
[dir=rtl] .scroll-progress{right:auto;left:0}
[dir=rtl] .hero-reel-meta{right:auto;left:var(--pad)}
[dir=rtl] [data-slide-count],[dir=rtl] .lightbox-count,[dir=rtl] .case-rail{direction:ltr;unicode-bidi:isolate}
[dir=rtl] .motion-toggle{right:auto;left:var(--pad)}
[dir=rtl] .scroll-hint{left:auto;right:var(--pad)}
[dir=rtl] .ticker-track{animation-name:tickerRtl}
@keyframes tickerRtl{to{transform:translateX(50%)}}
[dir=rtl] .ticker span{margin-right:0;margin-left:32px}
[dir=rtl] .count,[dir=rtl] .work-row-meta,[dir=rtl] .work-row-arrow{text-align:left}
[dir=rtl] .work-row:hover .work-row-title{transform:translateX(-5px)}
[dir=rtl] .work-row-credit{padding:0 44px 22px 0}
[dir=rtl] .work-film-link{margin:0 44px 18px 0}
[dir=rtl] .editorial-card span{left:auto;right:14px}
[dir=rtl] .philosophy-copy{margin:85px auto 0 0}
[dir=rtl] .expertise-panel{padding:10px 67px 40px 0}
[dir=rtl] .credit-strip-item{border-left:0;border-right:1px solid rgba(0,0,0,.3);padding-left:0;padding-right:12px}
[dir=rtl] .case-foot span:last-child{text-align:left}
[dir=rtl] .case-rail{right:auto;left:12px}
[dir=rtl] .gallery-grid figure:after{right:auto;left:12px;content:"عرض"}
[dir=rtl] .back{right:auto;left:var(--pad)}
[dir=rtl] .lightbox-close{right:auto;left:var(--pad)}
[dir=rtl] .lightbox-count{left:auto;right:var(--pad)}
[dir=rtl] .lightbox-prev{right:auto;left:calc(var(--pad) + 62px)}
[dir=rtl] .lightbox-next{right:auto;left:var(--pad)}
[dir=rtl] .contact:hover h2{transform:translateX(-1.2vw)}
[dir=rtl] .contact-v5-direct .mono,[dir=rtl] .studio-hero-bottom .mono{text-align:left}
[dir=rtl] .leader+ .leader{border-left:0;border-right:1px solid var(--dline);padding-left:0;padding-right:4vw}
[dir=rtl] .footer-social .social-icon-hover{left:auto;right:10px}
@media(max-width:850px){
 [dir=rtl] .work-row-credit{padding-left:0;padding-right:38px}
 [dir=rtl] .work-film-link{margin-left:0;margin-right:38px}
 [dir=rtl] .expertise-panel{padding-right:0}
 [dir=rtl] .credit-strip-item{border-right:0;padding-right:0}
 [dir=rtl] .contact-v5-direct .mono,[dir=rtl] .studio-hero-bottom .mono{text-align:right}
 [dir=rtl] .motion-toggle{left:auto;right:var(--pad)}
 [dir=rtl] .back{left:12px}
 [dir=rtl] .leader+ .leader{border-right:0;padding-right:0}
 [dir=rtl] .hero-title{font-size:10.5vw}
}
@media(prefers-reduced-motion:reduce){[dir=rtl] .ticker-track{animation:none}}

/* ---------- company profile download (home section + footer link) ---------- */
.profile-dl{background:#050505;padding:clamp(90px,11vw,170px) var(--pad);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(40px,7vw,120px);align-items:center;border-top:1px solid var(--line)}
.profile-dl h2{margin:0 0 30px;font-weight:400;text-transform:uppercase;font-size:clamp(44px,6.4vw,104px);line-height:1.04;letter-spacing:-.045em}
.profile-dl h2 i{font-style:normal;color:var(--cyan)}
.profile-dl p{max-width:560px;margin:0 0 40px;font-size:clamp(17px,1.45vw,22px);line-height:1.5;color:#c7c5bd}
.profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px}
.profile-actions .primary-action{min-width:250px;gap:28px}
.profile-actions .primary-action span{transition:transform .35s var(--ease)}
.profile-actions .primary-action:hover span,.profile-actions .primary-action:focus-visible span{transform:translateY(4px)}
.profile-meta,.profile-lang{color:#8f8b84}
.profile-lang{flex-basis:100%}
.profile-doc{position:relative;display:block;aspect-ratio:16/9;margin:0 4% 4% 0}
.profile-sheet,.profile-cover{position:absolute;inset:0;border:1px solid var(--line)}
.profile-sheet{background:#141414;transition:transform .7s var(--ease)}
.profile-sheet:nth-child(1){transform:translate(4%,6%)}
.profile-sheet:nth-child(2){transform:translate(2%,3%);background:#1c1c1c}
.profile-cover{background:#000;padding:7% 8%;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.55);transition:transform .7s var(--ease),border-color .4s}
.profile-cover:after{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:var(--cyan);transform:scaleX(.18);transform-origin:left;transition:transform .8s var(--ease)}
.profile-cover img{width:28%;height:auto;object-fit:contain}
.profile-cover-title{font-family:"FTST Favorit Expanded",Arial,sans-serif;font-size:clamp(28px,4.1vw,64px);line-height:.98;letter-spacing:-.045em;color:var(--white)}
.profile-cover-year{color:var(--cyan)}
.profile-dl:hover .profile-cover{transform:translate(-1.5%,-2%);border-color:rgba(57,217,255,.5)}
.profile-dl:hover .profile-cover:after{transform:scaleX(1)}
.profile-dl:hover .profile-sheet:nth-child(1){transform:translate(6%,9%)}
.profile-dl:hover .profile-sheet:nth-child(2){transform:translate(3%,4.5%)}
.footer-meta .footer-profile{color:var(--cyan)}
[dir=rtl] .profile-doc{margin:0 0 4% 4%}
[dir=rtl] .profile-sheet:nth-child(1){transform:translate(-4%,6%)}
[dir=rtl] .profile-sheet:nth-child(2){transform:translate(-2%,3%)}
[dir=rtl] .profile-dl:hover .profile-cover{transform:translate(1.5%,-2%)}
[dir=rtl] .profile-dl:hover .profile-sheet:nth-child(1){transform:translate(-6%,9%)}
[dir=rtl] .profile-dl:hover .profile-sheet:nth-child(2){transform:translate(-3%,4.5%)}
[dir=rtl] .profile-cover{direction:ltr}
[lang=ar] .profile-cover-year{font-family:"FTST Sklonar",Arial,sans-serif;letter-spacing:.025em!important}
[lang=ar] .profile-cover-title{letter-spacing:-.045em!important}
[lang=ar] .profile-dl h2{line-height:1.3;font-size:clamp(40px,5vw,84px)}
@media(max-width:850px){.profile-dl{grid-template-columns:1fr;padding-top:90px;padding-bottom:100px}.profile-doc{order:-1;max-width:560px;width:92%}.profile-dl h2{font-size:12vw}.profile-actions .primary-action{min-width:0;width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.profile-cover,.profile-sheet,.profile-cover:after{transition:none}}

/* ---------- touch polish: 44px tap targets + readable small labels (phones & touch screens) ---------- */
@media (max-width:850px), (pointer:coarse){
 .menu{min-width:44px;min-height:44px}
 .nav .brand,.footer .brand{padding:10px 0;margin:-10px 0}
 .footer-meta nav{gap:4px 18px;flex-wrap:wrap}
 .footer-meta nav a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
 .back{font-size:11px;padding:14px 18px}
 .studio-page-link,.text-action,.studio-cap .text-action{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
 .contact-v5-direct>a{display:inline-block;padding:10px 0}
 .work-film-link{min-height:44px}
}
