/* V35 — full-site English stabilization, responsive navigation and mobile motion */
:root{--v35-header:72px}
.site-header{min-height:var(--v35-header)}
.site-nav a[aria-current="page"]{color:var(--gold);font-weight:700}
.v35-menu-toggle{display:none;appearance:none;border:1px solid var(--line);background:transparent;color:var(--ink);font:700 13px/1 Arial,Helvetica,sans-serif;letter-spacing:.08em;padding:10px 12px;cursor:pointer;margin-left:auto}
.v35-menu-toggle:hover,.v35-menu-toggle:focus-visible{border-color:var(--gold);color:var(--gold)}
.v71-mobile-language{display:none}
.v35-skip{position:fixed;left:12px;top:8px;z-index:200;transform:translateY(-160%);background:var(--deep);color:white;padding:10px 14px;text-decoration:none;font-weight:700}.v35-skip:focus{transform:none}
main{overflow:hidden}
.v35-reveal{opacity:0;transform:translateY(18px);transition:opacity .62s ease,transform .62s ease}.v35-reveal.v35-visible{opacity:1;transform:none}
.hero-visual,.page-hero,.hero-simple{overflow:visible}
.hero-frame img{object-position:center}
.footer{line-height:1.45}
img[loading="lazy"]{content-visibility:auto}
@media(max-width:900px){
  :root{--v35-header:62px}
  .site-header{display:flex;flex-wrap:wrap;align-items:center;padding:13px 18px;gap:12px}
  .brand{font-size:14px;max-width:calc(100% - 86px);overflow:hidden;text-overflow:ellipsis}
  .v35-menu-toggle{display:inline-flex;align-items:center;justify-content:center}
  .v71-mobile-language{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 12px;border:1px solid var(--gold);color:var(--gold);font-weight:700;text-decoration:none;background:#fff;white-space:nowrap}
  .site-nav .language-switch{display:none}
  .site-nav{display:none;order:3;width:100%;margin:0;padding:10px 0 4px;border-top:1px solid var(--line);overflow:visible;white-space:normal;grid-template-columns:1fr 1fr;gap:0}
  .site-header.v35-open .site-nav{display:grid}
  .site-nav a{padding:11px 6px;border-bottom:1px solid rgba(221,213,200,.55);font-size:14px}
  .site-nav a:nth-last-child(-n+2){border-bottom:0}
  .hero-visual{padding-top:24px}
  .section-intro{font-size:18px}
}
@media(max-width:600px){
  .site-nav{grid-template-columns:1fr}
  .site-nav a:nth-last-child(-n+2){border-bottom:1px solid rgba(221,213,200,.55)}
  .site-nav a:last-child{border-bottom:0}
  .brand{font-size:12px;letter-spacing:1px}
  .site-header{gap:8px;padding-inline:12px}
  .v35-menu-toggle,.v71-mobile-language{min-height:36px;padding:8px 10px;font-size:11px}
  .hero-visual.wrap{width:100%}
  .hero-frame{border-radius:0}
  .hero-frame>img{min-height:0;object-fit:contain}
  .hero-hotspot{top:auto;bottom:7.5%;height:auto;min-height:28px;font-size:7px;padding:5px 3px}
  .hero-hotspot-life{left:4.5%;width:20%}.hero-hotspot-prof{left:26%;width:25%}
  .home-paths-grid>a{position:relative!important;z-index:2;pointer-events:auto!important;touch-action:manipulation;cursor:pointer;-webkit-tap-highlight-color:rgba(185,132,43,.16)}
  .home-paths-grid>a *{pointer-events:none}
  .page-hero{padding-top:58px}
  .page-hero h1{line-height:1.02}
}
@media(prefers-reduced-motion:reduce){.v35-reveal{opacity:1;transform:none;transition:none}}

/* V72 — calm, image-only motion for the Arabic Life Story page. */
html[lang="ar"] body.v72-life-story .timeline figure img{
  opacity:.92;
  transform:translateY(10px) scale(.988);
  transition:opacity .72s cubic-bezier(.2,.7,.25,1),transform .72s cubic-bezier(.2,.7,.25,1),box-shadow .72s ease!important;
  will-change:transform,opacity;
}
html[lang="ar"] body.v72-life-story .timeline figure.v72-image-visible img{
  opacity:1;
  transform:none;
}
html[lang="ar"] body.v72-life-story .timeline figure:hover img,
html[lang="ar"] body.v72-life-story .timeline figure:focus-within img{
  transform:translateY(-3px) scale(1.025)!important;
  box-shadow:0 14px 30px rgba(18,31,48,.13);
}

/* CV viewer keeps its return controls visible above the PDF. */
.cv-pdf-page{min-height:calc(100vh - var(--v35-header));background:var(--paper)}
.cv-pdf-toolbar{position:sticky;top:var(--v35-header);z-index:20;display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 4vw;background:rgba(251,250,247,.98);border-bottom:1px solid var(--line)}
.cv-pdf-toolbar .btn{margin:0;padding:10px 14px;font-size:13px}
.cv-pdf-frame{display:block;width:100%;height:calc(100vh - var(--v35-header) - 66px);min-height:620px;border:0;background:#e8e8e8}
@media(max-width:600px){
  .cv-pdf-toolbar{top:var(--v35-header);padding:10px 12px;gap:7px}
  .cv-pdf-toolbar .btn{padding:9px 10px;font-size:12px}
  .cv-pdf-frame{height:calc(100vh - var(--v35-header) - 112px);min-height:520px}
}

/* V35.1 — expanded heritage summaries */
#dars,#dens,#hb-ar-summary,#hb-en-summary{white-space:pre-line;line-height:1.85;}
#dars,#hb-ar-summary{text-align:right;}
.heritage-detail-grid article>p{margin-top:1rem;}

/* V73 — scoped Arabic summary justification; no card or page layout changes. */
#dars,
#hb-ar-summary,
.booklike-summary[dir="rtl"] p{
  direction:rtl!important;
  text-align:justify!important;
  text-align-last:right!important;
  text-justify:inter-word;
  hyphens:none!important;
}
#dars,#hb-ar-summary{white-space:normal!important;}
@media(max-width:700px){
  #dars,#hb-ar-summary,.booklike-summary[dir="rtl"] p{
    text-align:justify!important;
    text-align-last:right!important;
  }
}

/* V35.4 — Heritage reading refinement */
.heritage-detail-grid{grid-template-columns:minmax(0,1fr)!important;max-width:920px;margin-left:auto!important;margin-right:auto!important;gap:42px!important}.heritage-detail-grid article{padding-bottom:34px;border-bottom:1px solid var(--line)}.heritage-detail-grid article:last-child{border-bottom:0}.heritage-detail-grid article>p{font-size:17px;line-height:2.05;text-align:justify}.heritage-detail-grid #hb-ar-summary{direction:rtl}.heritage-detail-grid #hb-en-summary{direction:ltr}.heritage-detail-hero{max-width:920px}.heritage-editions .wrap{max-width:920px}@media(max-width:700px){.heritage-detail-grid article>p{font-size:16px;line-height:1.95;text-align:start}}

/* V74 — consistent English paragraph justification across all pages. */
html[lang="en"] body p{
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word;
}

/* V74 — controlled title wrapping on narrow mobile screens. */
@media(max-width:600px){
  .v74-ar-imam-title span,
  .v74-en-imam-title span{display:block;white-space:nowrap}
  html[lang="ar"] .v74-ar-imam-title{
    font-size:clamp(28px,8vw,34px)!important;
    line-height:1.28!important;
  }
  html[lang="en"] .v74-en-imam-title{
    font-size:clamp(42px,12vw,54px)!important;
    line-height:1.08!important;
  }
}
