.public-page { background:var(--paper); color:#111; }
.public-page .public-wrap { max-width:1180px; width:calc(100% - 64px); margin-inline:auto; }
.public-page > section.public-wrap { margin-top:48px; padding-block:0 48px; }
.public-page .category-filter { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px; }
.public-page .category-filter a { display:inline-flex; align-items:center; padding:10px 20px; border:1px solid #dbe3eb; border-radius:30px; font-size:14px; background:white; color:#111; }
.public-page .category-filter a:hover,.public-page .category-filter a[aria-current=true] { color:var(--brand);border-color:var(--brand); }
.public-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.public-card { min-width:0; display:flex; flex-direction:column; border:1px solid #e1e5e9; padding:20px; border-radius:8px; }
.public-card small { color:var(--green);font-size:14px;line-height:1.8; }
.public-card h2 { color:#111;font-size:22px;line-height:1.7;margin:16px 0 24px; }
.public-card > a { margin-top:auto; }
.public-card img { display:block; width:100%;aspect-ratio:4/3;object-fit:cover; }
.article-reading { max-width:850px;margin:auto; }
.article-category-label { color:var(--green);margin-bottom:24px;font-size:1rem; }
.article-cover { width:100%;max-height:440px;object-fit:cover;border-radius:8px;margin-bottom:32px; }
.article-body { font-size:1rem;line-height:2;overflow-wrap:anywhere;color:#111; }
.article-body p { margin:0 0 24px;line-height:2; }
.article-body h2,.article-body h3,.article-body h4 { color:#111;line-height:1.6;margin:32px 0 16px; }
.article-body h2 { font-size:28px; }.article-body h3 { font-size:23px; }
.article-body ul,.article-body ol { padding-inline-start:28px;margin-bottom:24px; }
.article-body li { margin-bottom:12px; }
.article-body blockquote { margin:24px 0;border-inline-start:3px solid var(--green);padding:16px 24px;background:white; }
.article-body table { border-collapse:collapse;display:block;overflow:auto;max-width:100%;margin-bottom:24px; }
.article-body td,.article-body th { border:1px solid #dbe3eb;padding:12px; }
.article-body a { color:var(--brand);text-decoration:underline; }
.article-actions { border-top:1px solid #dbe3eb;margin-top:32px;padding-top:24px; }
.article-actions .client-about-cta { margin-top:0; }
.public-page .empty { padding:48px;border:1px solid #dbe3eb;background:white;border-radius:12px;text-align:center;line-height:2; }
.public-page .nav-item.is-open .submenu { visibility:visible;opacity:1;transform:none;pointer-events:auto; }
.public-page a { cursor:pointer; }
.public-page footer { margin-top:48px; }
@media(max-width:900px){.public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.public-page .public-wrap{width:calc(100% - 40px)}.public-grid{grid-template-columns:1fr;gap:36px}.public-page .about-page-banner h1{font-size:clamp(32px,8vw,44px);line-height:1.6}.public-card h2{font-size:21px}.public-page .public-wrap{padding-inline:0}.public-page .article-body{font-size:1rem}}
.article-body img { max-width:100%;height:auto;display:block; }
.article-body p:has(>img) { line-height:0; }
/* Arabic article typography follows the site, including imported Word spans. */
.article-body,.article-body *,.article-reading { font-family:"Alexandria",Arial,sans-serif !important; direction:rtl !important; }
.article-body { text-align:right; }
.article-body [id] { scroll-margin-top:32px; }
.article-body a[href^="#"] { cursor:pointer; }
/* Responsive document flow, independent of the Word page size. */
.article-body { width:100%; min-width:0; }
.article-body p,.article-body li,.article-body td,.article-body th { font-size:1rem;line-height:2; }
.article-body span { font-size:inherit!important;line-height:inherit!important; }
.article-body p { margin:0 0 24px; }
.article-body h2 { font-size:clamp(23px,2.3vw,30px); }
.article-body h3 { font-size:clamp(21px,2vw,25px); }
.article-body h4 { font-size:20px; }
.article-toc { width:100%; margin:24px 0 32px; border-block:1px solid #dbe3eb; padding:20px 0; }
.article-toc-item { margin:0; padding:7px 0; }
.article-toc-item p { margin:0; }
.article-toc-item a { display:block; font-size:1rem;line-height:1.8; }
.article-callout { margin:24px 0; padding:16px 20px; border-inline-start:3px solid var(--brand,#198fc6); background:#edf4f8; }
.article-callout .article-callout { margin:12px 0; padding:0; border:0; }
.article-callout-item > p:last-child { margin-bottom:0; }
.article-table-scroll { width:100%;max-width:100%;overflow-x:auto;margin:24px 0; }
.article-body .article-table-scroll table { display:table;width:100%;margin:0; }
.article-body img { height:auto!important;max-width:100%!important;margin-inline:auto; }
@media(min-width:800px){.article-toc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.article-toc-item:first-child{grid-column:1/-1;margin-bottom:6px}}
@media(max-width:700px){.article-callout{padding:14px 16px}.article-body td,.article-body th{padding:10px}.article-body{overflow-wrap:anywhere}}
/* Image-based PDF pages keep their layout and can be enlarged independently. */
.pdf-reader-tools { position:sticky;top:0;z-index:5;background:var(--paper,#f5f7fa);padding:12px 0;border-bottom:1px solid #dbe3eb;margin-bottom:20px; }
.pdf-reader-tools p { font-size:14px;line-height:1.8;margin:0 0 8px; }
.pdf-reader-tools > div { display:flex;align-items:center;gap:12px;flex-wrap:wrap; }
.pdf-reader-tools button { font:inherit;min-width:44px;min-height:44px;border:1px solid #198fc6;border-radius:24px;color:#111;background:transparent;padding:6px 14px;cursor:pointer;touch-action:manipulation; }
.pdf-reader-tools button:disabled { opacity:.4;cursor:default; }
.pdf-reader-tools output { min-width:55px;text-align:center; }
.pdf-reader-scroll { max-width:100%;overflow:auto;overscroll-behavior-x:contain; }
.pdf-reader-scroll .article-body { width:var(--pdf-zoom,100%);max-width:none; }
.pdf-reader-scroll .article-body img { width:100%; }

.article-callout-item { padding:14px 18px; border-radius:6px; margin-bottom:12px; }
.article-toc-item[style] { padding:10px 14px; }

/* Document direction wins over Word page alignment. */
.article-body[dir="rtl"],.article-body[dir="rtl"] * { direction:rtl!important;text-align:right!important; }
.article-body[dir="ltr"],.article-body[dir="ltr"] * { direction:ltr!important;text-align:left!important; }
.article-body .article-callout { background:transparent; border:0; padding:0; }
.article-body img.article-inline-icon { display:inline-block; vertical-align:middle; margin:0 8px!important; max-width:96px!important; }
.article-body p:has(>.article-inline-icon) { line-height:2; }
.article-body h2:has(.article-inline-icon),.article-body h3:has(.article-inline-icon) { display:flex;align-items:center;gap:12px; }
.article-body li > p { display:inline; }
.article-body h2:has(.article-inline-icon),.article-body h3:has(.article-inline-icon) { display:block; }
.article-body .article-inline-icon { max-height:40px;object-fit:contain; }

.public-page > .article-toolbar { margin-top:0; border-bottom:1px solid #e1e5e9; background:#fff; padding-block:20px; }
.article-toolbar-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; }
.article-trail { display:flex; align-items:center; flex-wrap:wrap; gap:12px; font-size:14px; line-height:1.9; }
.article-trail a { color:#111;font-weight:500;text-decoration:none; }
.article-trail [aria-current] { color:#60666c; }
.article-share-button { display:inline-flex;align-items:center;gap:10px;flex-shrink:0;min-height:44px;padding:10px 24px;border:1px solid #a7b6c6;border-radius:30px;background:transparent;color:#111;font:inherit;font-size:14px;cursor:pointer; }
.article-share-button:hover { background:#f0f5f9; }
.article-share-button:focus-visible { outline:2px solid #198fc6;outline-offset:3px; }
.article-share-status { max-width:1180px;margin:0 auto;font-size:14px;color:#169574;padding-inline:20px; }
.article-share-status:not(:empty) { padding-top:12px; }
@media(max-width:700px){.article-toolbar-inner{align-items:flex-start;gap:16px}.article-trail{font-size:12px;gap:8px}.article-share-button{padding:8px 14px}}

.article-main-title{font-size:clamp(26px,3vw,40px);line-height:1.7;color:#111;margin:0 0 32px;font-weight:600}

.article-body .article-toc{display:block}.article-body .article-toc-item{display:block;width:100%}

[data-gallery="grid"]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block:24px}
[data-gallery="grid"]>img{display:block;width:100%;height:auto!important;aspect-ratio:4/3;object-fit:cover;margin:0!important;border-radius:6px;min-width:0}
[data-gallery="masonry"]{display:block;columns:3;column-gap:16px;margin-block:24px}
[data-gallery="masonry"]>img{display:block;width:100%;height:auto!important;break-inside:avoid;margin:0 0 16px!important;border-radius:6px}
@media(max-width:900px){[data-gallery="grid"]{grid-template-columns:repeat(2,minmax(0,1fr))}[data-gallery="masonry"]{columns:2}}
@media(max-width:480px){[data-gallery="grid"]{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}[data-gallery="masonry"]{column-gap:10px}}
.community-events-heading{font-size:clamp(25px,3vw,36px);line-height:1.6;margin:0 0 28px;color:#111}.public-page .event-period-tabs{margin-bottom:32px}.event-period-tabs a[aria-current=true]{background:#198fc6;color:white!important;border-color:#198fc6!important}
.publication-card .publication-link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:#111;margin:0}.publication-card .publication-link img{aspect-ratio:3/4;object-fit:contain;background:#fff}.publication-card .publication-link h2{margin:20px 0 14px}.publication-format{font-size:14px;color:#198fc6;margin-top:auto}.publication-link:focus-visible{outline:3px solid #198fc6;outline-offset:6px}

.related-articles{margin-top:96px;margin-bottom:96px}.related-articles>h2{margin-bottom:32px}.related-articles h3 a{color:#111;text-decoration:none}.related-articles img{aspect-ratio:4/3;object-fit:cover;width:100%}

.article-body iframe[src^="https://www.youtube-nocookie.com/embed/"],#editor iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:8px;margin:24px 0}#editor iframe{pointer-events:none}.article-signature{margin-top:40px;padding-top:24px;border-top:1px solid #dde5ea;text-align:right;color:#111}.article-signature>strong{display:block;font-size:1.2rem;line-height:1.8}.article-signature>p{font-size:.9rem;line-height:1.8;margin:6px 0}.article-bottom-share{margin-top:28px;margin-bottom:24px}.article-bottom-share .article-share-status{margin-top:10px}
