/* Language control and content-aware layout. Brand artwork is never mirrored. */
.has-locales header{gap:24px}
.has-locales header #navigation{gap:22px}
.site-language{position:relative;flex-shrink:0;border:0;margin:0;direction:ltr}
.site-language>summary{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:5px;min-width:64px;min-height:44px;padding:10px 7px;border:0;border-radius:18px;font:500 10px Arial,Helvetica,sans-serif;line-height:1.2;background:transparent;color:#164b51;list-style:none}
/* A compact visible pill keeps the full-height touch target. */
.site-language>summary::before{content:"";position:absolute;inset:5px 0;border:1px solid #d6e4db;border-radius:18px;background:#fffefa;z-index:-1;pointer-events:none}
.site-language>summary::-webkit-details-marker{display:none}
.site-language>summary>span{font:inherit;color:inherit;transform:none!important}
.site-language svg{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.language-chevron{width:8px;height:8px}
.language-globe{width:17px;height:17px}
.site-language .language-flag{display:block;position:static;width:24px;height:18px;max-width:none;flex-shrink:0;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #12344118}
.site-language>summary .language-flag{width:16px;height:12px}
.site-language[open] .language-chevron{transform:rotate(180deg)}
.language-options{position:absolute;top:calc(100% + 10px);right:0;width:240px;max-width:calc(100vw - 32px);max-height:min(540px,calc(100dvh - 140px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:8px;background:#fffefa;border:1px solid #d6e4db;border-radius:12px;box-shadow:0 12px 35px #12344120;z-index:45;direction:ltr}
.language-options a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:46px;padding:10px 12px;font-size:14px;color:#23474c;border-radius:7px;line-height:1.5;direction:ltr}
.language-options a:hover,.language-options a[aria-current]{background:#eaf3eb;color:#16685f}
.language-options a[aria-current]{font-weight:600}
.language-options .language-name{font-size:14px;flex:1;min-width:0;text-align:right;line-height:1.5}
.has-locales .button{white-space:normal;line-height:1.5;max-width:100%}
.has-locales .button>span{flex-shrink:0}
.has-locales main h1,.has-locales main h2,.has-locales main h3{overflow-wrap:break-word}
.has-locales .slogan-line>span{white-space:nowrap}
.has-locales .hero>*{min-width:0}
.has-locales .hero .actions{flex-wrap:wrap}
html[lang=de] main h1,html[lang=de] main h2,html[lang=de] main h3,html[lang=de] .service-mobile-action>span{hyphens:auto;overflow-wrap:anywhere}
html[lang=de] .connect-channel-content small{display:none}
html[lang=de] .home-page .hero h1{letter-spacing:-1.4px}
html[lang=de] .home-page .hero h1 em{letter-spacing:-1px}
html[lang=de] .service-crumb,html[lang=de] .breadcrumb{flex-wrap:wrap;line-height:1.7}
html[lang=de] .connect-next-heading{grid-template-columns:minmax(0,1fr) auto}
.has-locales .footer-nav{row-gap:12px}
.has-locales .breadcrumb{flex-wrap:wrap;line-height:1.7}
html:not([lang=en]):not([lang=ar]) main :is(h1,h2,h3){hyphens:auto;overflow-wrap:anywhere}
html:not([lang=en]):not([lang=ar]) .connect-next-heading{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:1180px){
 .has-locales header{height:82px;padding-inline:32px;gap:12px}
 .has-locales .header-cta{display:none}
 .has-locales .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;border:0;background:none;width:44px;min-height:44px;padding:10px;margin:0;flex-shrink:0}
 .has-locales .menu-toggle span{width:25px;height:2px;background:var(--navy)}
 .has-locales .site-language{margin-inline-start:auto}
 .has-locales header #navigation{display:none;position:absolute;top:82px;left:0;right:0;background:#fffefa;border-bottom:1px solid var(--line);padding:20px 32px;gap:0;box-shadow:0 15px 20px #1234410a;margin:0}
 .has-locales header #navigation.open{display:flex;flex-direction:column}
 .has-locales header #navigation a{padding:13px 0;min-height:44px}
 .has-locales .mobile-contact{display:block}
}
@media(max-width:760px){
 .has-locales header{padding-inline:20px;gap:8px}
 .has-locales header .brand{width:171px;height:55px}
 .has-locales header .brand img{width:231px;left:-29px;top:-31px}
 .language-options{width:232px}
 .has-locales .service-mobile-action>span,.has-locales .jr-mobile-action>span{font-size:11px;line-height:1.5}
 .has-locales .service-mobile-action .button,.has-locales .jr-mobile-action .button{gap:12px;padding-inline:15px;max-width:56%;min-width:0;flex-shrink:1}
 html[lang=de] .connect-pair{grid-template-columns:1fr;gap:0}
 html:not([lang=en]):not([lang=ar]) .connect-pair{grid-template-columns:1fr;gap:0}
 html:not([lang=en]):not([lang=ar]) .connect-question summary{flex-wrap:wrap}
 html:not([lang=en]):not([lang=ar]) .home-context{align-items:start}
 html:not([lang=en]):not([lang=ar]) .home-context>span{white-space:normal}
 html:not([lang=en]):not([lang=ar]) .home-context a{white-space:normal;max-width:50%;line-height:1.6}
 body.has-locales:is(.service-detail,.journey-page){padding-bottom:var(--mobile-action-space,calc(100px + env(safe-area-inset-bottom,0px)))}
 html[lang=de] .connect-question summary{flex-wrap:wrap}
 html[lang=de] .home-context{align-items:start}
 html[lang=de] .home-context>span{white-space:normal}
 html[lang=de] .home-context a{white-space:normal;max-width:50%;line-height:1.6}
}
@media(max-width:370px){
 .has-locales header .brand{width:145px;height:48px}
 .has-locales header .brand img{width:197px;left:-25px;top:-27px}
 .has-locales header{gap:7px}
 .has-locales .service-mobile-action,.has-locales .jr-mobile-action{gap:8px}
 .has-locales .service-mobile-action .button,.has-locales .jr-mobile-action .button{font-size:11px;padding-inline:12px}
}
/* Simplified Chinese keeps natural character spacing and an upright typeface. */
html[lang=zh-Hans] body{font-family:'Microsoft YaHei','PingFang SC','Noto Sans CJK SC',Arial,sans-serif}
html[lang=zh-Hans] body :is(h1,h2,h3,p,a,button,label,legend,span,summary,strong,small,em,li,input,select,textarea){letter-spacing:0}
html[lang=zh-Hans] body.has-locales :is(h1,h2,h3,h1 em,h2 em,.intro-title em,.procedure-tagline){font-family:inherit;font-style:normal;line-height:1.5}
html[lang=zh-Hans] .home-page .hero h1{font-size:clamp(44px,4.8vw,68px);letter-spacing:0;line-height:1.4}
html[lang=zh-Hans] .home-page .hero h1 em{font-size:.95em;letter-spacing:0}
@media(max-width:760px){html[lang=zh-Hans] .home-page .hero h1{font-size:45px}html[lang=zh-Hans] .home-page .hero h1 em{font-size:42px}}
/* Arabic type, reading direction, and logical spacing. */
html[lang=ar] body{font-family:Tahoma,Arial,sans-serif}
html[lang=ar] body :is(h1,h2,h3,p,a,button,label,legend,span,summary,strong,small,em,li,input,select,textarea){letter-spacing:0!important}
html[lang=ar] body.has-locales :is(h1,h2,h3,h1 em,h2 em,.service-emblem p,.intro-title em){font-family:inherit;font-style:normal;line-height:1.5}
html[lang=ar] :is(p,li,summary,.eyebrow){line-height:1.95}
html[lang=ar] body.has-locales .eyebrow{font-size:11px;font-weight:500}
html[lang=ar] header #navigation{margin-left:0;margin-right:auto}
html[lang=ar] header .site-language{direction:ltr}
html[lang=ar] .language-options{right:auto;left:0}
html[lang=ar] .preview span{margin-right:0;margin-left:12px}
html[lang=ar] .dot{margin-right:0;margin-left:6px}
html[lang=ar] .home-context a{margin-left:0;margin-right:auto}
html[lang=ar] .home-context a span{margin-left:0;margin-right:15px}
html[lang=ar] .home-care-row{padding:22px 0 22px 15px}
html[lang=ar] .home-care-row:hover{padding-right:15px}
html[lang=ar] .connection-image>span{left:auto;right:25px}
html[lang=ar] .service-hero-actions .button{text-align:right}
html[lang=ar] .option-group li{padding-left:0;padding-right:17px}
html[lang=ar] .option-group li:before{left:auto;right:0}
html[lang=ar] .service-scope-note{border-left:0;border-right:2px solid #93bdad;padding-left:0;padding-right:18px}
html[lang=ar] .jr-timeline:before{left:auto;right:23px}
html[lang=ar] .jr-stage-content{padding-left:0;padding-right:69px}
html[lang=ar] .jr-stage-note{border-left:0;border-right:2px solid #8db6a6;border-radius:8px 0 0 8px}
html[lang=ar] .jr-photo-message{left:25px;right:30px}
html[lang=ar] .ab-photo-label{left:20px;right:29px}
html[lang=ar] .ab-values .ab-clinical-note{border-left:0;border-right:2px solid #a4c3b4;padding-left:0;padding-right:17px}
html[lang=ar] .ab-istanbul figcaption{left:18px;right:24px}
html[lang=ar] .connect-channel-check,html[lang=ar] .connect-question-icon{margin-left:0;margin-right:auto}
html[lang=ar] .connect-channel>input{left:auto;right:12px}
html[lang=ar] .connect-question .connect-optional{margin-left:0;margin-right:3px}
html[lang=ar] .connect-field select{padding-right:14px;padding-left:30px}
html[lang=ar] input[dir=ltr]{text-align:left;unicode-bidi:plaintext}
html[lang=ar] details p{margin-right:0;margin-left:30px}
html[lang=ar] .faq-answers .faq-answer{padding-right:0;padding-left:55px}
html[lang=ar] .faq-answers .faq-answer p{margin:0}
html[lang=ar] .connect-question .connect-hint{margin:9px 0 0}
html[lang=ar] .ab-photo-frame{border-radius:12px 140px 12px 12px}
html[lang=ar] .service-photo>img{border-radius:12px 110px 12px 12px}
html[lang=ar] .jr-photo-frame{border-radius:12px 130px 12px 12px}
html[lang=ar] .connect-photo>img{border-radius:12px 90px 12px 12px}
html[lang=ar] .home-page .hero h1{font-size:clamp(43px,4.8vw,69px);line-height:1.45}
html[lang=ar] .home-page .hero h1 em{font-size:.9em;line-height:1.45}
html[lang=ar] .intro-title{text-align:right}
html[lang=ar] .intro-hint{font-size:14px}
@media(min-width:761px) and (max-width:1050px){html[lang=ar] .jr-stage-content{padding-right:63px}}
@media(max-width:1180px){html[lang=ar] header #navigation{margin:0}}
@media(max-width:760px){
 html[lang=ar] .home-page .hero h1{font-size:45px;line-height:1.5}
 html[lang=ar] .home-page .hero h1 em{font-size:40px}
 html[lang=ar] .service-hero h1,html[lang=ar] .ab-hero h1,html[lang=ar] .connect-intro h1,html[lang=ar] .jr-hero h1{font-size:39px;line-height:1.5}
 html[lang=ar] .jr-timeline:before{right:20px}
 html[lang=ar] .jr-stage-content{padding-right:54px}
 html[lang=ar] .jr-photo-message{left:25px;right:23px}
 html[lang=ar] .ab-photo-label{left:20px;right:24px}
 html[lang=ar] .ab-photo-frame{border-radius:10px 90px 10px 10px}
 html[lang=ar] .service-photo>img,html[lang=ar] .connect-photo>img{border-radius:10px 65px 10px 10px}
 html[lang=ar] .jr-photo-frame{border-radius:10px 80px 10px 10px}
 html[lang=ar] .connect-next-items article{padding-left:0;padding-right:49px}
 html[lang=ar] .connect-next-items article>span{left:auto;right:0}
 html[lang=ar] .faq-answers .faq-answer{padding-left:25px}
 html[lang=ar] .service-faq details p{margin-left:8px}
 html[lang=ar] .connect-faq details p{margin-left:5px}
 html[lang=ar] .connect-intro>p,html[lang=ar] .ab-hero-copy>p{font-size:14px;line-height:2}
}
@media(max-width:370px){
 html[lang=ar] .jr-stage-content{padding-right:0}
 html[lang=ar] .faq-answers .faq-answer{padding-left:0}
 html[lang=ar] .connect-intro h1,html[lang=ar] .ab-hero h1,html[lang=ar] .service-hero h1,html[lang=ar] .jr-hero h1{font-size:35px}
}
