
/* Arab Connect Tours — shared Arabic/RTL finishing layer */
html[dir="rtl"] body{direction:rtl;text-align:right}
html[dir="rtl"] .container{text-align:right}
html[dir="rtl"] .nav-inner{direction:rtl}
html[dir="rtl"] .nav-left,html[dir="rtl"] .nav-right,html[dir="rtl"] .nav-actions{direction:rtl}
html[dir="rtl"] .nav-links{direction:rtl}
html[dir="rtl"] .nav-links a,html[dir="rtl"] .lang{direction:rtl}
html[dir="rtl"] .hero,.rtl-hero,.page-hero{direction:rtl}
html[dir="rtl"] .hero h1,html[dir="rtl"] .hero h2,html[dir="rtl"] .hero p,
html[dir="rtl"] .page-hero h1,html[dir="rtl"] .page-hero p,
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] h4{text-align:right}
html[dir="rtl"] .breadcrumbs{text-align:right}
html[dir="rtl"] .section-title,html[dir="rtl"] .section-intro{text-align:right}
html[dir="rtl"] .cards,html[dir="rtl"] .grid,html[dir="rtl"] .stories-grid,
html[dir="rtl"] .treatment-grid{direction:rtl}
html[dir="rtl"] .btn{direction:rtl}
html[dir="rtl"] .trust .container{justify-content:center}
html[dir="rtl"] .footer-luxury,html[dir="rtl"] footer{direction:rtl;text-align:right}
html[dir="rtl"] .footer-grid{direction:rtl}
html[dir="rtl"] .mobile-menu{text-align:right;direction:rtl}
html[dir="rtl"] .mobile-menu .close{right:auto;left:25px}
html[dir="rtl"] input,html[dir="rtl"] textarea,html[dir="rtl"] select{direction:rtl;text-align:right}
html[dir="rtl"] .search-overlay{text-align:right;direction:rtl}
html[dir="rtl"] .blog-layout,html[dir="rtl"] .article-layout{direction:rtl}
html[dir="rtl"] .article-content,html[dir="rtl"] .blog-card{text-align:right}
html[dir="rtl"] .real-patient-card,html[dir="rtl"] .real-patient-body{text-align:right}
html[dir="rtl"] .explore-tourist-hero:before{background:linear-gradient(270deg,rgba(15,12,7,.68) 0%,rgba(15,12,7,.22) 55%,rgba(15,12,7,.08) 100%)}
@media(max-width:991px){
  html[dir="rtl"] .nav-inner{direction:rtl}
  html[dir="rtl"] .hero h1,html[dir="rtl"] .page-hero h1{font-size:clamp(32px,7vw,52px)}
}
@media(max-width:991px){
  html[dir="rtl"] .nav-inner{direction:rtl}
  html[dir="rtl"] .hero h1,html[dir="rtl"] .page-hero h1{font-size:clamp(32px,7vw,52px)}
}

/* =============================================================================
   Hero scrim / RTL mirroring layer (EN pages unaffected — html[dir="rtl"] only)
   ========================================================================== */

/* --- Index slider: full-bleed mobile wrappers -------------------------------
   At <=600px .hero / header.nav / .trust / .footer-luxury-wrap use
   width:138.8889% + zoom:.72 with zero margins. That over-constrains the
   block (width + margins > container), so CSS 2.1 §10.3.3 ignores one
   margin based on the containing block's direction: LTR keeps the left
   edge at x=0, but RTL drops margin-left and right-aligns the box, sliding
   it ~146px off-screen left (hero landed at x=-146). NOTE: margin-right:auto
   can NOT fix this — an auto margin that would go negative is treated as 0
   and the box stays over-constrained. Instead set margin-right to the exact
   negative overflow (-38.8889%) so width + margins == 100%: no longer
   over-constrained, left edge stays at x=0 in both directions. */
@media(max-width:600px){
  /* Match the existing 138.8889% + zoom:.72 desktop-composition wrappers,
     while preventing RTL's over-constrained block alignment from shifting them off-screen. */
  html[dir="rtl"] .hero,
  html[dir="rtl"] header.nav,
  html[dir="rtl"] .trust,
  html[dir="rtl"] .footer-luxury-wrap{
    position:relative!important;
    left:0!important;
    right:auto!important;
    margin-left:0!important;
    margin-right:-38.8889%!important;
    transform:none!important;
  }
}

/* --- Index slider: mirror the text card to the right side ------------------ */
html[dir="rtl"] .hero .slide .slide-content{
  left:auto!important;
  right:max(4%,calc((100% - 1180px)/2))!important;
  border-left:1px solid rgba(212,175,55,.55)!important;
  border-right:4px solid #c89418!important;
}
@media(min-width:992px){
  html[dir="rtl"] .hero .slide .slide-content{border-right-width:3px!important}
}
@media(min-width:992px) and (max-width:1200px){
  html[dir="rtl"] .hero .slide .slide-content{right:4%!important}
}
@media(max-width:991px){
  html[dir="rtl"] .hero .slide .slide-content{right:6%!important}
}
@media(max-width:720px){
  html[dir="rtl"] .hero .slide .slide-content{right:14px!important}
}
@media(max-width:480px){
  html[dir="rtl"] .hero .slide .slide-content{right:10px!important}
}

/* --- Index slider: mirror the dark wash so it stays behind the card -------- */
@media(min-width:701px){
  html[dir="rtl"] .hero .slide::before{
    background:
      linear-gradient(270deg,rgba(20,15,5,.30) 0%,rgba(20,15,5,.16) 38%,rgba(20,15,5,.04) 72%,rgba(20,15,5,.10) 100%),
      linear-gradient(180deg,rgba(255,255,255,.05),transparent 45%,rgba(20,15,5,.10));
  }
}

/* --- Hotel: flip text panel + mirror the white wash (desktop) -------------- */
@media(min-width:701px){
  html[dir="rtl"] .hotel-hero-inner{
    margin-left:auto!important;
    margin-right:max(4%,calc((100% - 1180px)/2))!important;
  }
  html[dir="rtl"] .hotel-hero:before{
    background:linear-gradient(270deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.94) 37%,rgba(255,255,255,.18) 67%,rgba(255,255,255,0) 100%);
  }
}
html[dir="rtl"] .hotel-hero-inner .hotel-kicker,
html[dir="rtl"] .hotel-hero-inner h1,
html[dir="rtl"] .hotel-hero-inner .hotel-lead,
html[dir="rtl"] .hotel-hero-inner .hotel-badges,
html[dir="rtl"] .hotel-hero-inner .hotel-hero-actions{text-align:right}

/* --- Airport: mirror the dark scrim (desktop; <=700 stays vertical) -------- */
@media(min-width:701px){
  html[dir=rtl] .airport-hero-overlay{
    background:
      linear-gradient(270deg,rgba(15,12,7,.68) 0%,rgba(15,12,7,.22) 55%,rgba(15,12,7,.08) 100%),
      linear-gradient(0deg,rgba(156,122,36,.08),rgba(255,255,255,.04));
  }
}
/* --- Arabic translation: mirror the cream wash (desktop) ------------------- */
@media(min-width:651px){
  html[dir="rtl"] .arabic-hero:before{
    background:linear-gradient(270deg,rgba(15,12,7,.68) 0%,rgba(15,12,7,.22) 55%,rgba(15,12,7,.08) 100%);
  }
}

/* --- Medical tourism: mirror the dark scrim (no mobile variant) ------------ */
html[dir="rtl"] .medical-hero-overlay{
  background:linear-gradient(270deg,rgba(15,12,7,.68) 0%,rgba(15,12,7,.22) 55%,rgba(15,12,7,.08) 100%);
}

/* --- Patient journey: mirror the cream wash (desktop; <=900 stays vertical) - */
@media(min-width:901px){
  html[dir="rtl"] .merged-hero-media{
    background:
      linear-gradient(270deg,rgba(255,253,247,.98) 0%,rgba(255,253,247,.92) 38%,rgba(255,253,247,.38) 66%,rgba(255,253,247,.05) 100%),
      url("../images/hero/slide-06-medical-tourism.jpg") center/cover no-repeat;
  }
}

/* --- Services: mirror the dark wash (applies at every width) --------------- */
html[dir="rtl"] .services-page-hero{
  background-image:
    linear-gradient(90deg,rgba(15,12,7,.68) 0%,rgba(15,12,7,.22) 55%,rgba(15,12,7,.08) 100%),
    url("../images/services/services-page/airport.jpg");
}

/* --- Service apartment: mirror copy panel to the right, remove the white wash */
html[dir="rtl"] .apt-hero-copy{
  background:transparent;
  text-align:right;
}
html[dir="rtl"] .apt-hero-copy .eyebrow,
html[dir="rtl"] .apt-hero-copy p,
html[dir="rtl"] .apt-hero-copy .apt-actions{
  text-align:right;
}
html[dir="rtl"] .apt-hero-copy:before{
  inset:0 0 0 auto;
}
html[dir="rtl"] .apt-page .apt-hero-media:after{
  background:linear-gradient(270deg,#fff 0%,rgba(255,255,255,.12) 18%,rgba(0,0,0,0) 55%,rgba(0,0,0,.04) 100%);
}
html[dir="rtl"] .apt-hero-media .apt-location{
  right:auto;
  left:28px;
}

/* --- Plan: mirror hero image wash + card scrim ------------------------------- */
html[dir="rtl"] .plan-hero-image{
  background-image:
    linear-gradient(270deg,rgba(15,12,7,.68) 0%,rgba(15,12,7,.22) 55%,rgba(15,12,7,.08) 100%),
    url("../images/plan/hero-arrival-new.jpg");
}
html[dir="rtl"] .plan-hero:after{
  background:linear-gradient(270deg,rgba(15,12,7,.72) 0%,rgba(15,12,7,.15) 40%,rgba(15,12,7,.04) 75%,transparent 100%);
}
html[dir="rtl"] .plan-hero-card{
  background:rgba(20,15,5,.6);
}


/* Arabic page viewport guard: stop decorative/positioned elements from widening the document. */
html[dir="rtl"] { overflow-x: clip; }
html[dir="rtl"] body { max-width:100%; overflow-x:clip; }


/* Arabic homepage content parity and RTL containment */
html[dir="rtl"] body { max-width: 100%; }
html[dir="rtl"] .all-pages-overview, html[dir="rtl"] .all-pages-overview .container { box-sizing: border-box; max-width: 100%; }
html[dir="rtl"] .all-pages-overview img { max-width: 100%; height: auto; }
