:root {
  --p-bg: #faf9f6; --p-surface: #f0eee9; --p-ink: #202b3e; --p-muted: #59606c;
  --p-accent: #ab0033; --p-accent-ink: #faf9f6; --p-action: #ab0033; --p-action-ink: #faf9f6;
  --p-inv-bg: #202b3e; --p-inv-surface: #2d374a; --p-inv-ink: #faf9f6; --p-inv-muted: #a0a4ac;
  --p-inv-accent: #faf9f6; --p-inv-accent-ink: #202b3e; --p-inv-action: #faf9f6; --p-inv-action-ink: #202b3e;
  --font-display: "Source Serif 4", Georgia, serif;
  --font-text: "Libre Franklin", system-ui, sans-serif;
  --display-weight: 400;
  --display-tracking: -0.02em;
  --display-tracking-xl: -0.026em;
}
html { scroll-behavior:auto; }
body { -webkit-font-smoothing: antialiased; }
[hidden] { display:none !important; }
.nav { background:#fff; }
.nav__tools { display:flex; align-items:center; gap:var(--s-4); }
.language-picker { position:relative; flex:none; font:400 14px/1.6 var(--font-text); }
.language-picker summary { display:flex; align-items:center; gap:8px; min-height:44px; padding:0 6px; cursor:pointer; list-style:none; border-radius:4px; }
.language-picker summary::-webkit-details-marker { display:none; }
.language-picker summary > svg { width:14px; height:14px; }
.language-picker[open] summary > svg { rotate:180deg; }
.language-picker summary:hover { background:var(--surface); }
.language-picker summary:focus-visible { outline:2px solid var(--action); outline-offset:3px; }
.locale-icon { display:inline-flex; align-items:center; justify-content:center; width:26px; height:22px; flex:none; border-radius:0; }

.locale-icon img { display:block; width:26px; height:18px; object-fit:contain; }
.language-options { position:absolute; inset-inline-end:0; top:calc(100% + 9px); min-width:190px; padding:8px; border:1px solid var(--line); border-radius:8px; background:white; box-shadow:0 8px 28px #202b3e18; z-index:60; }
.language-option, .footer__col > a.language-option { display:flex; align-items:center; gap:10px; min-height:44px; text-decoration:none; font:400 14px/1.6 "Libre Franklin","Noto Sans Arabic",sans-serif; }
.language-options .language-option { padding:8px 12px; border-radius:4px; }
.language-options .language-option:hover, .language-options .language-option[aria-current="true"] { background:var(--surface); }
.language-options .language-option:focus-visible { outline:2px solid var(--action); }
.language-entry { margin:0; min-height:100svh; display:grid; place-items:center; background:var(--p-bg); color:var(--p-ink); font:400 16px/1.7 "Libre Franklin","Noto Sans Arabic",sans-serif; }
.language-entry main { padding:40px 24px; width:min(420px,calc(100% - 48px)); text-align:center; }
.language-entry .entry-logo { width:140px; height:140px; object-fit:contain; }
.language-entry h1 { font-size:26px; font-weight:500; margin:12px 0 32px; }
.language-entry h1 span { display:block; }
.language-entry nav { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:32px; }
.language-entry .language-option { justify-content:center; border:1px solid #d2d5d8; border-radius:6px; background:white; color:inherit; padding:12px; }
.language-entry .language-option:hover { border-color:var(--p-action); }
.language-entry p { margin:8px 0; font-size:14px; }
@media(min-width:1024px) { .nav--centre .nav__tools { grid-column:3; grid-row:1; justify-self:end; } }
@media(max-width:1023px) { .nav__tools { margin-inline-start:auto; } .nav__tools .nav__actions { margin:0 !important; } }
@media(max-width:639px) { .nav__tools { gap:0; } .language-picker summary { gap:6px; } }
.skip-link { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.skip-link:focus { width:auto; height:auto; clip-path:none; padding:12px 24px; background:#fff; z-index:30; }
.brand-window { display:block; position:relative; width:96px; height:56px; overflow:hidden; }
.nav__logo .brand-window img { position:absolute; width:116px; height:116px; max-width:none; top:-28px; left:-10px; }
.nav__logo { letter-spacing:normal; }
.nav__link.language-link { font-family:"Noto Sans Arabic","Libre Franklin",sans-serif; }
.mobile-language { display:none; }
.hero h1 { max-width:14ch; }
.hero__kicker { font-size:var(--t-label); }
.publication-stage { background:#e5e7eb; }
.publication-stage > img { object-fit:contain; padding:var(--s-7); }
.featured-note { margin-top:var(--s-7); }
.featured-note .t-label { color:var(--muted); }
.featured-title { font-family:var(--font-display); font-size:var(--t-h3); line-height:1.25; margin-block:var(--s-3) var(--s-4); max-width:22ch; }
.featured-note .link { display:inline-flex; align-items:center; gap:var(--s-3); }
.featured-author { font-size:14px; line-height:1.7; margin-bottom:var(--s-3); }
.original-label { display:block; margin-top:var(--s-3); color:var(--muted); font-size:var(--t-label); }
.research-meta { display:flex; flex-direction:column; gap:var(--s-2); font-size:var(--t-label); color:var(--muted); }
.research-meta > span { color:var(--action); }
.research-card { display:flex; flex-direction:column; min-width:0; }
.research-card__copy { min-height:180px; padding-block:var(--s-2) var(--s-5); }
.research-card h3 { font-family:var(--font-display); font-weight:400; font-size:var(--t-h3); line-height:1.25; margin-block:var(--s-4) 0; max-width:none; }
.research-card__copy p { margin-top:var(--s-4); font-size:16px; line-height:1.6; }
.research-card__copy .article-author { font-size:14px; margin-top:var(--s-3); }
.research-grid .research-card__copy { min-height:240px; }
.research-grid .research-card__image { --p-h:240px; }
.research-grid .research-card h3 { font-size:28px; }
.research-card__image { --p-h:280px; flex:none; width:100%; height:var(--p-h); border-radius:var(--r-lg); background:#e5e7eb; overflow:hidden; }
.research-card > .research-card__image { margin:0; }
.research-card__image img { width:100%; height:100%; object-fit:contain; background:#eeefed; }
.research-card__image .cover-contain { object-fit:contain; padding:var(--s-5); }
.section-head--split .link { display:inline-flex; align-items:center; gap:var(--s-3); white-space:nowrap; }
.about-grid { margin-top:var(--s-7); align-items:start; }
.about-grid .t-label { color:var(--action); }
.mission-statement { font-size:var(--t-lead); line-height:1.7; margin-top:var(--s-5); scroll-margin-top:120px; }
.principles { margin-top:var(--s-6); }
.principles > div { padding-block:var(--s-4); border-bottom:1px solid var(--line); }
.principles dt { font-weight:500; font-size:16px; }
.principles dd { margin:var(--s-2) 0 0; font-size:16px; line-height:1.5; }
.brand-gallery { display:flex; flex-direction:column; gap:var(--s-5); }
.brand-gallery .frame { position:relative; overflow:hidden; border-radius:var(--r-lg); width:100%; padding:0; }
.brand-banner { aspect-ratio:3/1; }
.globe-banner { aspect-ratio:2/1; }
.brand-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
.brand-banner img { object-fit:contain; background:white; }
.close-intro { font-size:var(--t-lead); line-height:1.6; max-width:50ch; }
.closing { background:white; }
.closing__cta.close--type > .btn--xl { max-width:628px; justify-content:space-between; }
.footer__col h3 { font:500 14px/1.5 var(--font-text); margin-bottom:var(--s-4); }
.footer__col > a { display:block; width:fit-content; margin-block:var(--s-3); }
.social-directory { display:grid; grid-template-columns:1fr 1fr; gap:var(--s-3) var(--s-5); }
.social-directory a { display:flex; align-items:center; justify-content:space-between; gap:var(--s-2); }
.footer__legal { align-items:center; }
.footer__lede { margin-top:var(--s-5); }
.library-main { padding:calc(var(--nav) + var(--s-7)) 0 var(--s-9); }
.library-main h1 { margin-top:var(--s-6); max-width:20ch; }
.library-intro { margin-top:var(--s-5); max-width:65ch; font-size:var(--t-lead); line-height:1.6; }
.search-toolbar { margin-block:var(--s-7) var(--s-5); display:flex; gap:var(--s-6); align-items:end; }
.search-field { flex:1; }
.search-field label, .filters legend { display:block; font-size:var(--t-label); margin-bottom:var(--s-3); }
.search-field input { width:100%; height:48px; font:400 16px var(--font-text); background:#fff; color:var(--ink); border:1px solid var(--line-strong); border-radius:var(--r-sm); padding:12px 16px; }
.search-field input:focus-visible { outline:2px solid var(--action); outline-offset:2px; }
.filters { margin:0; padding:0; border:0; display:flex; flex-wrap:wrap; gap:var(--s-2); }
.filters button { min-height:48px; font:400 14px var(--font-text); border:1px solid var(--line-strong); border-radius:var(--r-sm); background:transparent; color:var(--ink); padding:8px 16px; cursor:pointer; }
.filters button[aria-pressed="true"] { color:var(--action-ink); background:var(--action); border-color:var(--action); }
.filters button:hover { border-color:var(--action); }
#result-count { font-size:var(--t-small); color:var(--muted); margin-bottom:var(--s-6); }
.library-grid { row-gap:var(--s-8); }
.library-grid .research-card__copy { min-height:240px; }
.library-grid .research-card__image { --p-h:340px; }
.empty-state { padding:var(--s-8) 0; }
.empty-state p { margin-block:var(--s-5); }
.source-note { margin-top:var(--s-8); font-size:var(--t-small); color:var(--muted); }
html[lang="ar"] { --font-display:"Noto Sans Arabic","Libre Franklin",sans-serif; --font-text:"Noto Sans Arabic","Libre Franklin",sans-serif; --display-tracking:0; --display-tracking-xl:0; }
html[lang="ar"] :is(h1,h2,h3) { letter-spacing:0; }
html[lang="ar"] .hero h1 { line-height:1.5; font-size:clamp(34px,3vw + 20px,62px); max-width:15ch; }
html[lang="ar"] .hero__lead { line-height:1.9; }
html[lang="ar"] .featured-title { line-height:1.6; }
html[lang="ar"] .research-card h3 { line-height:1.6; font-size:var(--t-card); font-weight:500; }
html[lang="ar"] h2 { line-height:1.5; }
html[lang="ar"] .research-meta { gap:4px; }
html[dir="rtl"] .m-arrow { rotate:180deg; }
html[dir="rtl"] .nav__toggle { margin-left:0; margin-right:auto; }
html[dir="rtl"] .nav__actions { margin-left:0; }
html[dir="rtl"] .footer__legal { text-align:start; }
html[dir="rtl"] .start-7 { grid-column-start:7; }
@media (min-width:1024px) and (max-width:1279px) {
  .nav__actions .btn { display:none; }
  .research-card h3 { font-size:24px; }
  .research-card__copy { min-height:180px; }
  .research-card__image { --p-h:210px; }
  html[lang="ar"] .research-grid .research-card__image { --p-h:164px; }
  .publication-stage > img { padding:var(--s-5); }
  .featured-note { display:block; margin-top:var(--s-5); }
  .featured-title { font-size:22px; margin-block:var(--s-2); }
  .featured-note .original-label { display:none; }
  .research-grid .research-card__copy { min-height:230px; }
  .research-grid .research-card h3 { font-size:22px; }
  .research-grid .research-card__image { --p-h:168px; }
  .hero h1 { font-size:52px; }
  .about-grid { margin-top:var(--s-6); }
  .mission-statement { font-size:18px; }
  .research-grid > .card.span-4:has(> .panel) { grid-column:auto / span 4 !important; }
  footer.closing > .wrap { row-gap:var(--s-6); }
}
@media (max-width:1023px) {
  .mobile-language { display:inline-flex; align-items:center; min-height:44px; font:400 14px "Libre Franklin","Noto Sans Arabic",sans-serif; margin-inline-start:auto; }
  .nav__toggle { margin-inline-start:var(--s-3); }
  .nav:not(.is-open) .nav__actions { margin-inline-start:auto; }
  .nav:not(.is-open) .nav__actions + .mobile-language { margin-inline-start:0; }
  .hero h1 { max-width:20ch; }
  .hero--split .hero__text { width:100%; align-self:stretch; }
  .hero__lead { max-width:54ch; }
  .featured-note { display:block; margin-top:var(--s-5); }
  .featured-title { font-size:22px; margin-block:var(--s-2); }
  .featured-note .original-label { display:none; }
  .publication-stage > img { padding:var(--s-5); }
  .research-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s-5); }
  .research-grid > .span-4 { grid-column:auto; }
  .research-card h3 { font-size:24px; }
  .research-card__copy { min-height:260px; }
  .research-card__image { --p-h:230px; }
  .section-head--split { align-items:start; }
  .about-grid { gap:var(--s-6); grid-template-columns:minmax(0,1fr); width:100%; min-width:0; }
  .about-grid > * { width:100%; min-width:0; grid-column:1/-1; }
  .mission-statement { margin-top:var(--s-4); max-width:62ch; }
  .principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s-5); margin-top:var(--s-5); }
  .principles > div { border-bottom:0; }
  .brand-gallery { display:grid; grid-template-columns:1fr 1fr; gap:var(--s-5); }
  .brand-banner,.globe-banner { aspect-ratio:1.5; }
  .brand-banner img { object-fit:contain; }
  .globe-banner img { object-position:70% center; }
  .footer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .closing .footer-grid > :is(.span-4,.footer__col) { grid-column:auto !important; }
  footer.closing { height:calc(var(--h,1)*100svh); min-height:0; }
  footer.closing > .wrap { height:100%; flex:initial; }
  .closing__cta.close--type > .btn--xl { max-width:none; }
  .social-directory { grid-template-columns:1fr; }
  .library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .library-grid > .card.span-6:has(> .panel) { grid-column:auto; }
  .search-toolbar { flex-direction:column; align-items:stretch; }
  html[dir="rtl"] .start-7 { grid-column:1/-1; }
  html[dir="rtl"] .nav__toggle { margin-inline-start:12px; margin-inline-end:0; }
}
@media (max-width:639px) {
  .nav__logo .brand-window { width:72px; height:44px; }
  .nav__logo .brand-window img { width:90px; height:90px; top:-22px; left:-8px; }
  .nav:not(.is-open) .nav__actions { display:none; }
  .nav:not(.is-open) .nav__actions + .mobile-language { margin-inline-start:auto; }
  .nav.is-open .nav__links { padding-bottom:var(--s-9); }
  .nav.is-open .nav__actions { position:fixed; left:var(--gut); right:var(--gut); bottom:24px; background:var(--bg); }
  .hero h1 { max-width:16ch; }
  .hero__text > .hero__lead { margin-top:var(--s-4); }
  .hero__text > .btn-row { margin-top:var(--s-5); }
  .hero__kicker { font-size:13px; }
  .publication-stage > img { padding:var(--s-4); }
  .hero--split .hero__media { min-height:200px; margin-top:var(--s-5); }
  .research-grid { grid-template-columns:1fr; gap:var(--s-6); }
  .research-card__copy { min-height:0; padding:0 0 var(--s-4); }
  .research-grid .research-card__copy { min-height:0; }
  .research-grid .research-card h3 { font-size:22px; }
  .research-card h3 { font-size:24px; margin-top:var(--s-3); }
  .research-meta { flex-direction:row; justify-content:space-between; align-items:center; gap:var(--s-3); }
  .research-meta time { font-size:13px; }
  .research-card__image { --p-h:220px; }
  .research-card .original-label { margin-top:var(--s-2); }
  .section-head--split { display:flex; flex-direction:column; gap:var(--s-5); }
  .about-grid { margin-top:var(--s-6); gap:var(--s-7); }
  .mission-statement { font-size:18px; }
  .principles { display:block; margin-top:var(--s-5); }
  .principles > div { border-bottom:1px solid var(--line); }
  .brand-gallery { display:flex; flex-direction:column; gap:var(--s-5); }
  .brand-banner { aspect-ratio:1.5; }
  .globe-banner { aspect-ratio:1; }
  .globe-banner img { object-position:75% center; }
  .closing__cta { gap:var(--s-5); }
  .close-intro { font-size:16px; }
  .closing__cta.close--type > .btn--xl { min-height:48px; }
  .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s-5); }
  .footer-grid > :first-child { display:none; }
  .footer-grid > :last-child { display:none; }
  .footer__legal { font-size:13px; gap:var(--s-3); }
  .closing__links { gap:var(--s-5); }
  footer.closing > .wrap { row-gap:var(--s-6); }
  .library-grid { grid-template-columns:1fr; row-gap:var(--s-7); }
  .library-grid .research-card__copy { min-height:0; }
  .library-grid .research-card__image { --p-h:280px; }
  .search-toolbar { gap:var(--s-5); }
  .filters { gap:var(--s-2); }
  .filters button { padding:8px 12px; }
  html[lang="ar"] .hero h1 { font-size:36px; line-height:1.55; max-width:16ch; }
  html[lang="ar"] .hero__lead { line-height:1.8; }
  html[lang="ar"] .research-card h3 { font-size:20px; }
  html[lang="ar"] .mission-statement { line-height:1.9; }
  html[lang="ar"] .research-meta { font-size:13px; }
}
@media (min-width:640px) and (max-width:1023px) {
  .research-grid { display:flex; flex-direction:column; gap:var(--s-5); }
  .research-grid > .research-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:var(--s-5); align-items:start; }
  .research-grid .research-card__copy { min-height:0; }
  .research-grid .research-card h3 { font-size:22px; }
  .research-grid .research-card__image { --p-h:calc((100svh - 450px)/3); }
  html[lang="ar"] .research-grid .research-card__image { --p-h:calc((100svh - 474px)/3); }
}
@media (max-height:720px) and (min-width:1024px) { .featured-note { display:none; } }
