/* =====================================================================
   V15 — Typography & alignment system
   Makes Arabic/LTR text rhythm consistent across the public physician site.
   Loaded last so it intentionally normalizes legacy V9/V12/V13/V14 rules.
   ===================================================================== */

:root{
    --v15-text:#18372b;
    --v15-body:#5d7268;
    --v15-muted:#7d8d85;
    --v15-line:#dfe9e3;
    --v15-reading:68ch;
    --v15-heading:22ch;
}

body.doctor-public-v15{
    font-family:"Cairo",system-ui,-apple-system,"Segoe UI",sans-serif;
    font-size:16px;
    line-height:1.75;
    color:var(--v15-text);
    font-kerning:normal;
    font-synthesis:none;
}

/* Arabic should never inherit negative tracking designed for Latin headings. */
html[dir="rtl"] body.doctor-public-v15 :is(h1,h2,h3,h4,h5,h6,.section-eyebrow-v9,.v12-section-head>span,.v12-split-head>div>span){
    letter-spacing:0!important;
}

body.doctor-public-v15 :is(h1,h2,h3,h4,h5,h6){
    font-family:"Cairo",system-ui,sans-serif;
    text-align:start;
    text-wrap:balance;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
}

body.doctor-public-v15 :is(p,li,blockquote,small){
    text-wrap:pretty;
}

body.doctor-public-v15 :is(.doctor-hero-copy-v9,.v14-hero-copy,.v14-about-copy,.v12-section-head,.v12-split-head,.section-heading-v9,.review-heading-v9,.doctor-faq-intro-v9,.v12-plan-copy,.v12-portal-copy,.v12-clinic-copy,.v12-social-shell>div,.doctor-cta-card-v9>div){
    text-align:start!important;
}

/* Hero rhythm */
body.doctor-public-v15 .v14-doctor-intro,
body.doctor-public-v15 .v14-hero-message,
body.doctor-public-v15 .v14-hero-proof-row,
body.doctor-public-v15 .v14-hero-actions,
body.doctor-public-v15 .v14-quick-facts{
    margin-inline:0;
}
body.doctor-public-v15 .v14-doctor-intro h1,
body.doctor-public-v15 .doctor-hero-v14 .doctor-hero-copy-v9 h1{
    max-inline-size:15ch;
    margin-block:16px 8px;
    font-size:clamp(50px,4.25vw,68px);
    line-height:1.16;
    font-weight:900;
}
body.doctor-public-v15 .doctor-hero-v14 .doctor-title-v9{
    max-inline-size:32ch;
    margin:0;
    font-size:clamp(22px,1.7vw,28px);
    line-height:1.55;
    font-weight:800;
}
body.doctor-public-v15 .doctor-hero-v14 .doctor-credentials-v9{
    max-inline-size:58ch;
    margin-block:9px 0;
    font-size:14px;
    line-height:1.85;
    color:var(--v15-body);
}
body.doctor-public-v15 .v14-kicker{
    font-size:12px;
    line-height:1.5;
}
body.doctor-public-v15 .v14-hero-message{
    max-inline-size:720px;
}
body.doctor-public-v15 .v14-hero-message h2{
    max-inline-size:28ch;
    font-size:clamp(24px,2vw,33px);
    line-height:1.48;
}
body.doctor-public-v15 .v14-hero-message p{
    max-inline-size:62ch;
    font-size:15px;
    line-height:1.95;
}

/* Quick facts: titles and descriptions use one predictable baseline. */
body.doctor-public-v15 .v14-quick-facts>div{
    align-items:center!important;
}
body.doctor-public-v15 .v14-quick-facts p{
    min-width:0;
    text-align:start;
}
body.doctor-public-v15 .v14-quick-facts b{
    font-size:12px!important;
    line-height:1.45!important;
    font-weight:800;
}
body.doctor-public-v15 .v14-quick-facts small{
    margin-top:4px;
    font-size:10.5px!important;
    line-height:1.65!important;
    color:#74877d;
}

/* Trust band: use the real item count, equal widths and one text system. */
body.doctor-public-v15 .v15-trust-grid{
    grid-template-columns:repeat(var(--trust-columns,4),minmax(0,1fr))!important;
    align-items:stretch;
}
body.doctor-public-v15 .v15-trust-item{
    min-width:0;
    min-height:104px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:start!important;
    padding:18px 20px!important;
}
body.doctor-public-v15 .v15-trust-copy{
    min-width:0;
    flex:1;
    text-align:start;
}
body.doctor-public-v15 .v15-trust-copy strong{
    display:block;
    margin:0;
    max-inline-size:30ch;
    font-size:15px!important;
    line-height:1.6!important;
    font-weight:850;
    color:#173d2e;
    white-space:normal!important;
    overflow-wrap:break-word;
}
body.doctor-public-v15 .v15-trust-copy>span{
    display:block;
    margin-top:5px!important;
    max-inline-size:34ch!important;
    font-size:10.5px!important;
    line-height:1.7!important;
    font-weight:650!important;
    color:#788a81!important;
}
body.doctor-public-v15 .v15-trust-item.is-description-only .v15-trust-copy p{
    margin:0;
    max-inline-size:38ch;
    font-size:13.5px;
    line-height:1.85;
    font-weight:750;
    color:#315243;
}
body.doctor-public-v15 .v15-language-list{
    display:flex!important;
    align-items:center;
    gap:6px;
    flex-wrap:wrap;
    direction:inherit;
}
body.doctor-public-v15 .v15-language-list bdi{unicode-bidi:isolate;font-weight:850}
body.doctor-public-v15 .v15-language-list i{font-style:normal;color:#9aaa9f;font-weight:600}

/* Section heading system */
body.doctor-public-v15 .v12-section-head{
    max-width:900px;
    margin-inline:0!important;
    margin-bottom:42px;
    text-align:start!important;
}
body.doctor-public-v15 :is(.section-heading-v9,.v14-section-heading){
    grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);
    gap:clamp(36px,5vw,72px);
    align-items:end;
}
body.doctor-public-v15 :is(.section-heading-v9 h2,.review-heading-v9 h2,.doctor-faq-intro-v9 h2,.v12-section-head h2,.v12-split-head h2,.v12-plan-copy h2,.v12-portal-copy h2,.v12-clinic-copy h2,.v12-social-shell h2){
    max-inline-size:var(--v15-heading);
    margin-block:10px 14px;
    font-size:clamp(36px,3.35vw,52px);
    line-height:1.3;
    font-weight:900;
    color:#123528;
}
body.doctor-public-v15 :is(.section-heading-v9>p,.review-heading-v9 p,.doctor-faq-intro-v9>p,.v12-section-head p,.v12-split-head>p,.v12-plan-copy>p,.v12-portal-copy>p,.v12-clinic-copy>p,.v12-social-shell>div>p){
    max-inline-size:var(--v15-reading);
    margin-inline:0;
    font-size:15px;
    line-height:1.95;
    color:var(--v15-body);
}
body.doctor-public-v15 :is(.section-eyebrow-v9,.v12-section-head>span,.v12-split-head>div>span,.v12-plan-copy>span,.v12-portal-copy>span,.v12-clinic-copy>span,.v12-social-shell>div>span){
    font-size:11px!important;
    line-height:1.5;
    font-weight:850;
    text-transform:none!important;
}

/* About */
body.doctor-public-v15 .v14-about-copy h2{max-inline-size:18ch;font-size:clamp(38px,3.4vw,54px);line-height:1.3}
body.doctor-public-v15 .v14-about-copy .section-lead-v9{max-inline-size:62ch;font-size:15px;line-height:1.95;color:var(--v15-body)}
body.doctor-public-v15 .v14-about-copy .doctor-about-body-v9{max-inline-size:66ch;font-size:14px;line-height:2;color:#536c60}
body.doctor-public-v15 .v14-about-mini-grid span{font-size:10.5px!important;line-height:1.55}
body.doctor-public-v15 .v14-profile-panels h3{font-size:17px;line-height:1.5}
body.doctor-public-v15 .v14-profile-panels li{font-size:12px!important;line-height:1.8}

/* Cards */
body.doctor-public-v15 :is(.v12-info-card,.v12-audience-grid article,.v14-service-card,.v12-topic-card,.doctor-review-card-v9){
    text-align:start;
}
body.doctor-public-v15 :is(.v12-info-card h3,.v12-audience-grid h3,.v14-service-card h3,.v12-topic-card h3){
    margin-inline:0;
    font-size:19px;
    line-height:1.55;
    font-weight:850;
}
body.doctor-public-v15 :is(.v12-info-card p,.v12-audience-grid p,.v14-service-body>p,.v12-topic-card p){
    font-size:13px;
    line-height:1.85;
}
body.doctor-public-v15 .v14-service-body>p{min-height:0!important;max-inline-size:56ch}
body.doctor-public-v15 .doctor-service-meta-v9{font-size:11px;line-height:1.6}

/* Reviews / FAQ / CTA */
body.doctor-public-v15 .review-heading-v9{align-items:end}
body.doctor-public-v15 .doctor-review-card-v9 blockquote{font-size:14px;line-height:2;text-align:start}
body.doctor-public-v15 .faq-list-v9 summary{font-size:13.5px;line-height:1.7;text-align:start}
body.doctor-public-v15 .faq-list-v9 details p{font-size:13px;line-height:1.95;text-align:start}
body.doctor-public-v15 .doctor-cta-card-v9 h2{max-inline-size:21ch;line-height:1.3}
body.doctor-public-v15 .doctor-cta-card-v9 p{max-inline-size:60ch;font-size:14px;line-height:1.9}

/* Do not let inline English / Arabic tokens reorder surrounding UI. */
body.doctor-public-v15 bdi{unicode-bidi:isolate}
body.doctor-public-v15 [dir="auto"]{unicode-bidi:plaintext}

/* Tablet */
@media(max-width:1180px){
    body.doctor-public-v15 .v15-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    body.doctor-public-v15 .v15-trust-item{border-bottom:1px solid #e7eee9!important}
    body.doctor-public-v15 .v15-trust-item:nth-last-child(-n+2){border-bottom:0!important}
    body.doctor-public-v15 :is(.section-heading-v9,.v14-section-heading){gap:34px}
}

@media(max-width:980px){
    body.doctor-public-v15 .doctor-hero-copy-v9,
    body.doctor-public-v15 .v14-hero-copy{
        text-align:start!important;
        align-items:stretch!important;
    }
    body.doctor-public-v15 .v14-doctor-intro h1,
    body.doctor-public-v15 .doctor-hero-v14 .doctor-hero-copy-v9 h1{max-inline-size:17ch}
    body.doctor-public-v15 :is(.section-heading-v9,.v14-section-heading,.v12-split-head){grid-template-columns:1fr;gap:16px}
    body.doctor-public-v15 :is(.section-heading-v9 h2,.review-heading-v9 h2,.doctor-faq-intro-v9 h2,.v12-section-head h2,.v12-split-head h2,.v12-plan-copy h2,.v12-portal-copy h2,.v12-clinic-copy h2,.v12-social-shell h2){max-inline-size:24ch}
}

@media(max-width:760px){
    body.doctor-public-v15{font-size:15px}
    body.doctor-public-v15 .v14-doctor-intro h1,
    body.doctor-public-v15 .doctor-hero-v14 .doctor-hero-copy-v9 h1{font-size:clamp(38px,11vw,48px);line-height:1.22}
    body.doctor-public-v15 .doctor-hero-v14 .doctor-title-v9{font-size:20px;line-height:1.6}
    body.doctor-public-v15 .v14-hero-message h2{font-size:24px;line-height:1.5}
    body.doctor-public-v15 .v14-hero-message p{font-size:14px}
    body.doctor-public-v15 .v14-quick-facts b{font-size:12.5px!important}
    body.doctor-public-v15 .v14-quick-facts small{font-size:11px!important}
    body.doctor-public-v15 .v15-trust-grid{grid-template-columns:1fr!important;padding:8px}
    body.doctor-public-v15 .v15-trust-item{min-height:78px!important;padding:13px 12px!important;border-inline-end:0!important;border-bottom:1px solid #e7eee9!important}
    body.doctor-public-v15 .v15-trust-item:last-child{border-bottom:0!important}
    body.doctor-public-v15 .v15-trust-copy strong{font-size:14px!important}
    body.doctor-public-v15 .v15-trust-copy>span{font-size:10.5px!important}
    body.doctor-public-v15 .v15-trust-item.is-description-only .v15-trust-copy p{font-size:13px;line-height:1.8}
    body.doctor-public-v15 :is(.section-heading-v9 h2,.review-heading-v9 h2,.doctor-faq-intro-v9 h2,.v12-section-head h2,.v12-split-head h2,.v12-plan-copy h2,.v12-portal-copy h2,.v12-clinic-copy h2,.v12-social-shell h2,.v14-about-copy h2){font-size:31px!important;line-height:1.38}
    body.doctor-public-v15 :is(.section-heading-v9>p,.review-heading-v9 p,.doctor-faq-intro-v9>p,.v12-section-head p,.v12-split-head>p,.v12-plan-copy>p,.v12-portal-copy>p,.v12-clinic-copy>p,.v12-social-shell>div>p){font-size:14px;line-height:1.9}
}

@media(max-width:430px){
    body.doctor-public-v15 .v14-doctor-intro h1,
    body.doctor-public-v15 .doctor-hero-v14 .doctor-hero-copy-v9 h1{font-size:38px}
    body.doctor-public-v15 :is(.section-heading-v9 h2,.review-heading-v9 h2,.doctor-faq-intro-v9 h2,.v12-section-head h2,.v12-split-head h2,.v12-plan-copy h2,.v12-portal-copy h2,.v12-clinic-copy h2,.v12-social-shell h2,.v14-about-copy h2){font-size:29px!important}
}
