@import url('https://fonts.googleapis.com/css2?family=Alexandria:wght@400;500;600;700&family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&display=swap');

/* R50 — fixed brand direction, modern Arabic typography and a dentist-written voice. */
.site-header .brand,
.site-header .brand-mark,
.site-header .brand-copy{
  direction:ltr!important;
  text-align:left!important;
}

.site-header .brand-mark{
  display:grid;
  place-items:center;
  overflow:visible;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.site-header .brand-mark .approved-brand-symbol{
  width:116%;
  height:116%;
  max-width:none;
  padding:0;
  object-fit:contain!important;
  transform:none!important;
  scale:1!important;
  rotate:0deg!important;
  filter:drop-shadow(0 8px 14px rgba(0,12,29,.28));
}

.site-header .brand:hover .approved-brand-symbol{
  transform:none!important;
  filter:drop-shadow(0 10px 18px rgba(0,12,29,.34));
}

.site-header nav a,
.site-header .desktop-nav .menu a,
.inner-preview-nav a{
  font-size:12px!important;
  font-weight:700;
  letter-spacing:.055em!important;
  line-height:1.2;
}

.site-header .nav-row,
.site-header .header-inner{
  gap:clamp(16px,1.8vw,34px);
}

.language-switch{
  display:flex;
  align-items:center;
  gap:5px;
  direction:ltr!important;
  min-height:48px;
  padding:5px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(4,31,59,.72);
  box-shadow:0 12px 32px rgba(0,14,31,.18),inset 0 1px rgba(255,255,255,.08);
  backdrop-filter:blur(16px) saturate(125%);
}

.language-switch button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:56px;
  height:36px;
  padding:0 9px;
  border:0;
  border-radius:999px;
  color:#dce8f1;
  background:transparent;
  font-size:10px;
  font-weight:700;
  cursor:pointer;
  transition:background .25s ease,color .25s ease,transform .25s ease;
}

.language-switch button:hover{color:#fff;transform:translateY(-1px)}
.language-switch button.is-active{color:#082c50;background:#fff;box-shadow:0 5px 15px rgba(0,15,33,.2)}
.language-flag{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:18px;line-height:1}
.language-code{min-width:14px;text-align:center}

/* The new portrait is framed as a real editorial portrait, not a narrow stock banner. */
.doctor-photo{
  height:700px;
  clip-path:none!important;
  border-radius:0 110px 0 0;
  background:#e8f1f6;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);
}

.doctor-photo .doctor-real-photo{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:50% 36%!important;
  transform:none!important;
  filter:saturate(.97) contrast(1.015);
}

.doctor-page-photo .doctor-real-photo,
.doctor-page-photo .profile-photo{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:50% 34%!important;
  transform:none!important;
}

html[dir="rtl"]{
  --serif:'Alexandria','IBM Plex Sans Arabic',Tahoma,sans-serif;
  --sans:'IBM Plex Sans Arabic','Alexandria',Tahoma,sans-serif;
}

html[dir="rtl"] body{
  font-family:var(--sans)!important;
  font-size:17px;
  line-height:1.85;
  font-feature-settings:'kern' 1,'liga' 1;
}

html[dir="rtl"] :where(h1,h2,h3,h4,blockquote,.signature,.doctor-signature,.doctor-content .lead){
  font-family:var(--serif)!important;
  font-style:normal!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}

html[dir="rtl"] :where(h1,h2,h3,h4) em{
  font-style:normal!important;
  font-weight:600!important;
}

html[dir="rtl"] .site-header .brand,
html[dir="rtl"] .site-header .brand-mark,
html[dir="rtl"] .site-header .brand-copy{
  direction:ltr!important;
  text-align:left!important;
  transform:none!important;
}

html[dir="rtl"] .site-header .brand-mark{margin:0 12px 0 0!important}
html[dir="rtl"] .site-header .brand-copy{padding:0 0 0 15px!important;border:0!important;border-left:1px solid rgba(211,162,74,.42)!important}
html[dir="rtl"] .site-header nav a{font-family:'IBM Plex Sans Arabic',Tahoma,sans-serif!important;font-size:14px!important;font-weight:600!important;letter-spacing:0!important}
html[dir="rtl"] .language-switch button{font-family:'IBM Plex Sans Arabic',Tahoma,sans-serif!important;font-size:12px!important}

html[dir="rtl"] .hero-copy h1{
  font-size:clamp(62px,5.25vw,94px);
  line-height:1.15;
  letter-spacing:-.045em!important;
}

html[dir="rtl"] .hero-intro{font-size:clamp(18px,1.15vw,22px);line-height:2;max-width:720px}
html[dir="rtl"] .eyebrow{font-family:'Alexandria',sans-serif!important;font-size:13px;font-weight:600!important}
html[dir="rtl"] .manifesto h2,
html[dir="rtl"] .section-top h2,
html[dir="rtl"] .journey-heading h2,
html[dir="rtl"] .doctor-content h2,
html[dir="rtl"] .practice-head h2,
html[dir="rtl"] .voices-label h2,
html[dir="rtl"] .visit-heading h2,
html[dir="rtl"] .contact-copy h2{line-height:1.28;letter-spacing:-.035em!important}

/* Arabic benefit rail: readable, balanced and visually intentional. */
html[dir="rtl"] .hero-meta{
  background:linear-gradient(90deg,rgba(4,31,59,.92),rgba(17,48,79,.88));
}

html[dir="rtl"] .meta-grid{height:116px;gap:0}
html[dir="rtl"] .meta-grid p{
  position:relative;
  display:grid;
  grid-template-columns:48px 1fr;
  align-content:center;
  gap:14px;
  min-width:0;
  padding:20px 26px!important;
  border-left:1px solid rgba(255,255,255,.12);
}

html[dir="rtl"] .meta-grid p:first-child{background:rgba(255,255,255,.055)}
html[dir="rtl"] .meta-grid b{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(226,180,89,.48);
  border-radius:50%;
  font-family:'Alexandria',sans-serif!important;
  font-size:17px;
  color:#e2b459;
}

html[dir="rtl"] .meta-grid span{
  font-family:'IBM Plex Sans Arabic',sans-serif!important;
  font-size:15px!important;
  font-weight:600;
  line-height:1.55;
  letter-spacing:0!important;
  text-transform:none!important;
  color:#f4f8fb;
}

@media(min-width:721px){
  html[dir="rtl"] .doctor{
    grid-template-columns:52% 48%;
    min-height:700px;
  }
  html[dir="rtl"] .doctor-photo{
    width:calc(100% - 4vw);
    height:620px;
    aspect-ratio:auto;
    margin:40px 4vw 40px 0;
    border-radius:28px 110px 28px 110px;
  }
  html[dir="rtl"] .doctor-photo .doctor-real-photo{
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    object-fit:cover!important;
    object-position:50% 36%!important;
  }
}

@media(max-width:1180px) and (min-width:721px){
  .site-header nav a,.site-header .desktop-nav .menu a,.inner-preview-nav a{font-size:11px!important}
  .language-switch button{min-width:46px;padding-inline:7px}
  .language-code{display:none}
}

@media(max-width:720px){
  .site-header .brand-mark{width:52px!important;height:52px!important;flex-basis:52px!important}
  .language-switch{margin-left:auto;min-height:40px;padding:4px;gap:2px}
  .language-switch button{min-width:36px;width:36px;height:32px;padding:0}
  .language-switch .language-code{display:none}
  .language-flag{font-size:18px}
  .menu-button{margin-left:6px!important}
  html[dir="rtl"] .language-switch{margin-left:0;margin-right:auto}
  html[dir="rtl"] .menu-button{margin-right:6px!important}
  .doctor-photo,
  html[dir="rtl"] .doctor>.doctor-photo{
    width:calc(100% - 30px)!important;
    height:470px!important;
    margin:18px 15px 0!important;
    border-radius:24px 72px 24px 72px;
  }
  .doctor-photo .doctor-real-photo{object-position:50% 34%!important}
  html[dir="rtl"] .hero h1{font-size:clamp(43px,12vw,57px);line-height:1.22}
  html[dir="rtl"] .hero-intro{font-size:16px;line-height:1.95}
  html[dir="rtl"] .meta-grid{grid-template-columns:1fr 1fr;height:auto}
  html[dir="rtl"] .meta-grid p{grid-template-columns:40px 1fr;min-height:92px;padding:14px 12px!important}
  html[dir="rtl"] .meta-grid b{width:38px;height:38px;font-size:14px}
  html[dir="rtl"] .meta-grid span{font-size:13px!important;line-height:1.5}
  html[dir="rtl"] .site-header .brand-copy{padding-left:9px!important}
}

@media(max-width:430px){
  .site-header .brand-copy{display:none!important}
  .site-header .brand{min-width:52px!important;width:52px!important;max-width:52px!important}
}

@media(prefers-reduced-motion:no-preference){
  .language-switch button,.site-header nav a,.doctor-photo{transition:transform .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease}
}
