/* R76 — Arabic/mobile hardening after staging screenshots.
 * Goals: coherent RTL brand lockup, no hero-media phantom height, stable phone bidi,
 * cleaner insurance title, non-overlapping Arabic doctor typography, rebuilt compact footer.
 */

/* Phone numbers must never be reordered by RTL bidi. */
a[href^="tel:"],
a[href^="tel:"] span,
a[href^="tel:"] b,
.r67-call-number{
  direction:ltr!important;
  unicode-bidi:isolate!important;
  font-variant-numeric:tabular-nums!important;
}
a[href^="tel:"] bdi{direction:ltr!important;unicode-bidi:isolate!important}

/* Coverage heading: keep the gold private-insurance phrase visually attached and aligned. */
html[dir="rtl"] .coverage-r69-copy h3{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  gap:.08em .18em!important;
  font-family:"Noto Naskh Arabic","IBM Plex Sans Arabic",Tahoma,serif!important;
  font-size:38px!important;
  line-height:1.18!important;
  letter-spacing:0!important;
}
html[dir="rtl"] .coverage-r69-copy h3 em{
  display:inline-block!important;
  margin:0!important;
  font:inherit!important;
  font-size:.86em!important;
  line-height:1.15!important;
  color:#e2b65c!important;
  white-space:nowrap!important;
}

/* Arabic doctor typography: Arabic needs materially more line-height than the Latin serif rules. */
html[dir="rtl"] body.home .doctor h2{
  font-family:"Noto Naskh Arabic","IBM Plex Sans Arabic",Tahoma,serif!important;
  font-size:34px!important;
  line-height:1.32!important;
  letter-spacing:0!important;
  margin:0 0 15px!important;
}
html[dir="rtl"] body.home .doctor h2 em{
  display:block!important;
  margin-top:0!important;
  font:inherit!important;
  line-height:1.26!important;
  color:#efbf60!important;
}
html[dir="rtl"] body.home .doctor-content .lead{
  font-family:"Noto Naskh Arabic","IBM Plex Sans Arabic",Tahoma,serif!important;
  font-size:18px!important;
  line-height:1.65!important;
  margin-bottom:12px!important;
}
html[dir="rtl"] body.home .doctor-content>p:not(.eyebrow):not(.lead){
  font-size:13.5px!important;
  line-height:1.9!important;
}

@media(max-width:760px){
  /* Critical: older .hero-media aspect-ratio was forcing a tall empty blue box beneath the rail. */
  body.home .hero-media.r66-hero-media.r67-hero-media,
  html[dir="rtl"] body.home .hero-media.r66-hero-media.r67-hero-media{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    align-self:auto!important;
    overflow:visible!important;
  }
  body.home .r66-hero-stage.r67-hero-stage{
    aspect-ratio:1.74/1!important;
  }
  body.home .r66-hero-rail{
    min-height:38px!important;
    height:38px!important;
    padding:3px 2px!important;
  }
  body.home .r66-hero-media + *{margin-top:0!important}
  body.home .hero.r66-hero + .services{padding-top:22px!important}
  body.home .r66-hero-layout,
  html[dir="rtl"] body.home .r66-hero-layout{padding-bottom:4px!important}

  /* Arabic header brand: symbol at the far right, text immediately to its left, one clean axis. */
  html[dir="rtl"] .r67-header-inner,
  html[dir="rtl"] .home .r67-header-inner{
    direction:ltr!important;
    width:calc(100% - 18px)!important;
    min-height:64px!important;
    padding:4px 0!important;
    gap:7px!important;
  }
  html[dir="rtl"] .r67-brand,
  html[dir="rtl"] .home .r67-brand{
    display:grid!important;
    grid-template-columns:minmax(132px,1fr) 46px!important;
    align-items:center!important;
    gap:9px!important;
    direction:ltr!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:245px!important;
    margin:0 0 0 auto!important;
    justify-self:end!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-mark,
  html[dir="rtl"] .home .r67-brand .r67-brand-mark{
    grid-column:2!important;
    grid-row:1!important;
    width:46px!important;
    height:46px!important;
    flex-basis:46px!important;
    margin:0!important;
  }
  html[dir="rtl"] .r67-brand .approved-brand-raster,
  html[dir="rtl"] .home .r67-brand .approved-brand-raster{
    inset:5px!important;
    width:36px!important;
    height:36px!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-copy,
  html[dir="rtl"] .home .r67-brand .r67-brand-copy{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    direction:rtl!important;
    text-align:right!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-ar,
  html[dir="rtl"] .home .r67-brand .r67-brand-ar{
    width:100%!important;
    gap:2px!important;
    justify-items:end!important;
    align-items:center!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-name,
  html[dir="rtl"] .home .r67-brand .r67-brand-name{
    width:100%!important;
    font-size:15px!important;
    line-height:1.18!important;
    white-space:nowrap!important;
    text-align:right!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-name>span,
  html[dir="rtl"] .home .r67-brand .r67-brand-name>span{
    font-size:.58em!important;
    vertical-align:.02em!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-practice,
  html[dir="rtl"] .home .r67-brand .r67-brand-practice{
    display:block!important;
    width:100%!important;
    margin:2px 0 0!important;
    text-align:right!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-practice i,
  html[dir="rtl"] .home .r67-brand .r67-brand-practice i{display:none!important}
  html[dir="rtl"] .r67-brand .r67-brand-practice b,
  html[dir="rtl"] .home .r67-brand .r67-brand-practice b{
    display:block!important;
    font-size:7.1px!important;
    line-height:1.2!important;
    letter-spacing:0!important;
    text-align:right!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-location,
  html[dir="rtl"] .home .r67-brand .r67-brand-location{
    width:100%!important;
    margin-top:1px!important;
    justify-self:end!important;
    font-size:6.3px!important;
    line-height:1.15!important;
    letter-spacing:.04em!important;
    text-align:right!important;
  }
  html[dir="rtl"] .r67-header-actions,
  html[dir="rtl"] .home .r67-header-actions{
    flex:0 0 auto!important;
    width:auto!important;
    gap:6px!important;
    margin:0!important;
  }

  /* Insurance card Arabic title is intentionally compact on mobile. */
  html[dir="rtl"] .coverage-r69-copy h3{
    font-size:34px!important;
    line-height:1.2!important;
    gap:.04em .16em!important;
  }
  html[dir="rtl"] .coverage-r69-copy h3 em{font-size:.82em!important}

  /* Doctor block: stop title collision on narrow RTL screens. */
  html[dir="rtl"] body.home .doctor h2{
    font-size:31px!important;
    line-height:1.34!important;
    margin-bottom:13px!important;
  }
  html[dir="rtl"] body.home .doctor h2 em{line-height:1.28!important}
  html[dir="rtl"] body.home .doctor-content .lead{
    font-size:17px!important;
    line-height:1.68!important;
  }

  /* Footer mobile rebuild: one centered brand, one centered social/motto group, one legal block. */
  .home .site-footer .footer-main{padding:24px 0 0!important}
  .home .site-footer .footer-grid{
    width:calc(100% - 32px)!important;
    margin:0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    padding:0!important;
  }
  .home .site-footer .footer-grid>div:nth-child(2),
  .home .site-footer .footer-grid>div:nth-child(3){display:none!important}
  .home .site-footer .footer-brand{
    display:flex!important;
    justify-content:center!important;
    width:100%!important;
    padding:0 0 20px!important;
    margin:0!important;
    border-bottom:1px solid rgba(255,255,255,.11)!important;
  }
  .home .site-footer .footer-brand .r69-footer-brand{
    display:grid!important;
    grid-template-columns:58px minmax(0,220px)!important;
    align-items:center!important;
    gap:12px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0 auto!important;
    direction:ltr!important;
  }
  .home .site-footer .footer-brand .r69-footer-brand-mark{
    grid-column:1!important;
    grid-row:1!important;
    width:58px!important;
    height:58px!important;
    margin:0!important;
  }
  .home .site-footer .footer-brand .r69-footer-brand .approved-brand-raster{
    inset:5px!important;
    width:48px!important;
    height:48px!important;
  }
  .home .site-footer .footer-brand .r69-footer-brand-copy{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    text-align:left!important;
    direction:ltr!important;
  }
  .home .site-footer .footer-brand .r67-brand-localized{display:none!important}
  html[lang^="de"] .home .site-footer .footer-brand .r67-brand-de,
  html[lang^="en"] .home .site-footer .footer-brand .r67-brand-en,
  html[lang^="ar"] .home .site-footer .footer-brand .r67-brand-ar{display:grid!important}
  .home .site-footer .footer-brand .r67-brand-localized{
    width:100%!important;
    gap:2px!important;
    justify-items:start!important;
  }
  .home .site-footer .footer-brand .r67-brand-name{
    width:100%!important;
    font-size:14.5px!important;
    line-height:1.08!important;
    text-align:left!important;
    white-space:nowrap!important;
  }
  .home .site-footer .footer-brand .r67-brand-name>span{font-size:.62em!important}
  .home .site-footer .footer-brand .r67-brand-practice{
    display:block!important;
    width:100%!important;
    margin-top:2px!important;
    text-align:left!important;
  }
  .home .site-footer .footer-brand .r67-brand-practice i{display:none!important}
  .home .site-footer .footer-brand .r67-brand-practice b{
    display:block!important;
    font-size:6.4px!important;
    line-height:1.1!important;
    letter-spacing:.13em!important;
    text-align:left!important;
  }
  .home .site-footer .footer-brand .r67-brand-location{
    width:100%!important;
    margin-top:1px!important;
    justify-self:start!important;
    font-size:5.8px!important;
    line-height:1.1!important;
    letter-spacing:.15em!important;
    text-align:left!important;
  }

  /* Arabic footer follows the original requirement: logo on the right, Arabic copy to its left. */
  html[dir="rtl"] .home .site-footer .footer-brand .r69-footer-brand{
    grid-template-columns:minmax(0,220px) 58px!important;
    direction:ltr!important;
  }
  html[dir="rtl"] .home .site-footer .footer-brand .r69-footer-brand-mark{
    grid-column:2!important;
  }
  html[dir="rtl"] .home .site-footer .footer-brand .r69-footer-brand-copy{
    grid-column:1!important;
    direction:rtl!important;
    text-align:right!important;
  }
  html[dir="rtl"] .home .site-footer .footer-brand .r67-brand-ar{
    width:100%!important;
    justify-items:end!important;
    direction:rtl!important;
  }
  html[dir="rtl"] .home .site-footer .footer-brand .r67-brand-name{
    font-size:15.5px!important;
    line-height:1.2!important;
    text-align:right!important;
  }
  html[dir="rtl"] .home .site-footer .footer-brand .r67-brand-practice,
  html[dir="rtl"] .home .site-footer .footer-brand .r67-brand-practice b,
  html[dir="rtl"] .home .site-footer .footer-brand .r67-brand-location{
    text-align:right!important;
    justify-self:end!important;
    letter-spacing:0!important;
  }
  html[dir="rtl"] .home .site-footer .footer-brand .r67-brand-practice b{font-size:7px!important}
  html[dir="rtl"] .home .site-footer .footer-brand .r67-brand-location{font-size:6.3px!important}

  .home .site-footer .footer-motto{
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    padding:19px 0 20px!important;
    margin:0!important;
    text-align:center!important;
    border-bottom:1px solid rgba(255,255,255,.11)!important;
  }
  .home .site-footer .footer-motto>strong{
    order:1!important;
    margin:0!important;
    color:#e2b65c!important;
    font-size:9px!important;
    letter-spacing:.15em!important;
    text-align:center!important;
  }
  .home .site-footer .footer-motto .social-links{
    order:2!important;
    display:flex!important;
    justify-content:center!important;
    gap:10px!important;
    margin:1px 0 4px!important;
  }
  .home .site-footer .footer-motto>span{
    order:3!important;
    margin:0!important;
    font-size:18px!important;
    line-height:1.1!important;
    text-align:center!important;
  }
  .home .site-footer .footer-motto>em{
    order:4!important;
    margin:0!important;
    font-size:17px!important;
    line-height:1.1!important;
    text-align:center!important;
  }
  .home .site-footer .footer-bottom-r64{
    width:calc(100% - 32px)!important;
    margin:0 auto!important;
    padding:15px 0 18px!important;
    display:grid!important;
    justify-items:center!important;
    gap:9px!important;
    text-align:center!important;
  }
  .home .site-footer .footer-copyright{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px 7px!important;
    font-size:8px!important;
    line-height:1.45!important;
    text-align:center!important;
  }
  .home .site-footer .footer-legal-nav{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:7px 17px!important;
    font-size:11px!important;
  }
}

@media(max-width:390px){
  html[dir="rtl"] .r67-brand,
  html[dir="rtl"] .home .r67-brand{
    grid-template-columns:minmax(118px,1fr) 43px!important;
    max-width:220px!important;
    gap:7px!important;
  }
  html[dir="rtl"] .r67-brand .r67-brand-mark,
  html[dir="rtl"] .home .r67-brand .r67-brand-mark{width:43px!important;height:43px!important}
  html[dir="rtl"] .r67-brand .approved-brand-raster,
  html[dir="rtl"] .home .r67-brand .approved-brand-raster{width:33px!important;height:33px!important}
  html[dir="rtl"] .r67-brand .r67-brand-name,
  html[dir="rtl"] .home .r67-brand .r67-brand-name{font-size:13.8px!important}
  html[dir="rtl"] .coverage-r69-copy h3{font-size:31px!important}
  html[dir="rtl"] body.home .doctor h2{font-size:29px!important}
  html[dir="rtl"] .home .site-footer .footer-brand .r69-footer-brand{
    grid-template-columns:minmax(0,205px) 54px!important;
  }
  .home .site-footer .footer-brand .r69-footer-brand{grid-template-columns:54px minmax(0,205px)!important}
}
