/* Shared editorial refinements. Kept separate from the original generated bundle. */
:root {
  --brand: #d82b38;
  --brand-ink: #b8202d;
  --ink: #17202d;
  --muted: #536174;
  --line: #dce3eb;
}
html { scroll-padding-top: 150px; }
body { color: var(--ink); text-rendering: optimizeLegibility; }
.container { width: 100%; max-width: 1200px; padding-inline: clamp(16px, 3vw, 32px); margin-inline: auto; }
.container .container { padding-inline: 0; }
main, .grid > *, .flex > input { min-width: 0; }
h1, h2, h3 { text-wrap: pretty; }
button, input, textarea, select { font: inherit; }
input:not([type=checkbox]):not([type=radio]), textarea, select { font-size: 16px; }
input::placeholder, textarea::placeholder { color: #64748b; opacity: 1; }
:focus-visible { outline: 3px solid var(--brand-ink); outline-offset: 4px; }
a, button, input, textarea { -webkit-tap-highlight-color: #d82b381a; }
button { touch-action: manipulation; }
button:disabled, [aria-disabled=true] { cursor: default; }
.text-primary { color: var(--brand-ink); }
.text-slate-400:not(svg), .text-slate-500 { color: var(--muted); }
.bg-black .text-slate-400, .bg-black .text-slate-500, .bg-black time { color: #cbd5e1; }
.bg-primary { color: #fff; }
::selection { background: #fbd5d9; color: #65151d; }
.skip-link { position: fixed; inset-block-start: 8px; inset-inline-start: 16px; z-index: 10000; padding: 12px 20px; background: #fff; color: var(--brand-ink); border-radius: 10px; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
#main-global-header { height: 92px; }
#main-global-header.h-header-sm { height: 76px; }
#main-nav-menu { gap: clamp(16px, 2vw, 28px); }
#main-nav-menu .nav-link { white-space: nowrap; font-size: 17px; }
#main-global-header .header-logo { height: 54px; }
#search-toggle-btn, #mobile-menu-toggle, #close-search-btn, #mobile-drawer-close, .mobile-submenu-toggle,
.share-buttons-container a, .share-buttons-container button, #scroll-to-top-btn { min-width: 44px; min-height: 44px; }
.nav-menu-item:focus-within .submenu-dropdown { visibility: visible; opacity: 1; transform: translateY(0); }
#header-search-bar { visibility: visible; }
#header-search-bar.opacity-0 { visibility: hidden; }
#mobile-menu-drawer.opacity-0 { visibility: hidden; }
#mobile-drawer-body { width: min(360px, 90vw); max-width: none; padding: 24px; overscroll-behavior: contain; }
#mobile-drawer-body nav a { min-height: 44px; }
#special-coverage-bar { background: var(--brand) !important; }
#special-coverage-bar .container { min-height: 46px; }
#special-coverage-bar a { min-height: 44px; display: flex; align-items: center; }
#hero-section { height: 600px; }
#hero-section h1 { font-size: clamp(28px, 3.1vw, 44px); line-height: 1.4; letter-spacing: 0; }
#hero-section article { max-width: 690px; padding-block: 40px 80px; }
#hero-section p { line-height: 1.8; }
#latest-news-grid { margin-top: -48px; }
.post { border-radius: 14px; }
.post h2, .post h3 { line-height: 1.65; letter-spacing: 0; }
.post .post-link:focus-visible::before { outline: 3px solid var(--brand-ink); outline-offset: 3px; border-radius: 14px; }
main .grid:has(> article.post) { gap: 24px; }
main .grid:has(> article.post):not(.featured-grid):not(#sub-news-grid .grid):not(#camps-now-section .grid) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body[data-page=galleries] main .grid:has(> article.post) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.page-heading { font-size: clamp(26px, 2.6vw, 34px); font-weight: 700; line-height: 1.5; margin-block: 0 24px; color: var(--ink); }
.bg-black .page-heading { color: #fff; }
.breadcrumb-nav { padding: 10px 16px; margin-bottom: 24px; }
.breadcrumb-nav ol { flex-wrap: wrap; white-space: normal; overflow: visible; row-gap: 6px; }
.breadcrumb-nav a { min-height: 36px; display: inline-flex; align-items: center; }
.breadcrumb-nav li { min-width: 0; }
.breadcrumb-nav li:last-child { flex-shrink: 1; }
.breadcrumb-nav li:last-child > span { overflow-wrap: anywhere; }
body[data-page=post] .page-header, body[data-page=about] .page-header { min-height: 0; padding-block: 24px 0; margin-bottom: 0; }
#main-article-content, #main-static-page { margin-top: 0; padding-top: 12px; }
#main-article-content > .container > .grid, #main-static-page > .container > .grid { grid-template-columns: minmax(0, 1fr) minmax(0, 820px) minmax(0, 1fr); gap: 24px; }
#main-article-content > .container > .grid > article, #main-static-page > .container > .grid > article { grid-column: 2; }
#main-article-content .share-buttons-container, #main-static-page .share-buttons-container { grid-column: 1; grid-row: 1; top: 160px; }
#main-article-content h1 { font-size: clamp(26px, 2.4vw, 34px); line-height: 1.6; margin-bottom: 16px; letter-spacing: 0; }
.prose { font-size: 18px; line-height: 1.95; color: #334155; }
.prose h2, .prose h3 { line-height: 1.6; }
.prose p { overflow-wrap: break-word; }
.prose img { max-width: 100%; height: auto; }
.prose table { display: block; max-width: 100%; overflow-x: auto; }
#main-contact-content form { gap: 22px; }
#contact-form input, #contact-form textarea { border: 1px solid #cbd5e1; background: #f8fafc; min-height: 52px; }
#contact-form label { font-size: 15px; }
#contact-form input:focus, #contact-form textarea:focus { border-color: var(--brand); background: #fff; }
#contact-email { direction: ltr; text-align: start; }
#contact-form [aria-invalid=true] { border-color: #b91c1c; }
#contact-form [id^=error-] { color: #b91c1c; font-size: 14px; }
.form-status { margin-top: 16px; font-size: 15px; line-height: 1.8; color: var(--muted); }
.form-status:empty { display: none; }
.form-status[data-error=true] { color: #b91c1c; }
.pagination-nav { flex-wrap: wrap; gap: 8px; margin-block: 36px; }
.pagination-nav a, .pagination-nav span[aria-current] { width: 44px; height: 44px; }
#toast-global-container { width: min(356px, calc(100vw - 32px)); }
#main-global-footer { border-top: 1px solid var(--line); }
#main-global-footer input { min-width: 0; }
#main-global-footer nav a { min-width: 44px; min-height: 44px; }
#main-global-footer .mt-12 { margin-top: 32px; padding-top: 28px; }
.search-results { padding-block: 8px 20px; max-height: min(440px, 60vh); overflow-y: auto; overscroll-behavior: contain; }
.search-results:empty { display: none; }
.search-results p { padding: 12px 16px; color: var(--muted); }
.search-result { display: block; padding: 12px 16px; border-radius: 10px; color: var(--ink); border-bottom: 1px solid var(--line); line-height: 1.7; }
.search-result:hover, .search-result:focus { background: #f1f5f9; color: var(--brand-ink); }
.search-result small { display: block; color: var(--muted); }
.preview-caption { font-size: 14px; color: #cbd5e1; margin-top: 12px; line-height: 1.8; }
@media (max-width: 1023px) {
  #main-nav-menu { display: none; }
  #mobile-menu-toggle, #mobile-menu-drawer { display: flex; }
  #main-global-header { height: 80px; }
  #main-global-header.h-header-sm { height: 72px; }
  #main-global-header .header-logo { height: 48px; }
  #main-article-content > .container > .grid, #main-static-page > .container > .grid { grid-template-columns: minmax(0, 1fr); }
  #main-article-content > .container > .grid > article, #main-static-page > .container > .grid > article { grid-column: 1; grid-row: 1; max-width: 820px; width: 100%; margin-inline: auto; }
  #main-article-content .share-buttons-container, #main-static-page .share-buttons-container { display: flex; position: static; grid-column: 1; grid-row: 2; margin-top: 0; justify-content: center; }
  #main-article-content .share-buttons-container > div, #main-static-page .share-buttons-container > div { flex-direction: row; flex-wrap: wrap; }
  main .grid:has(> article.post):not(.featured-grid):not(#sub-news-grid .grid):not(#camps-now-section .grid), body[data-page=galleries] main .grid:has(> article.post) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #hero-section { height: 540px; }
  #main-global-footer .container > .grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
  #main-global-footer .container > .grid > div { grid-column: auto; }
  #main-global-footer .container > .grid > div:empty { display: none; }
}
@media (max-width: 599px) {
  html { scroll-padding-top: 125px; }
  #main-global-header { height: 76px; }
  #main-global-header .header-logo { height: 44px; }
  #hero-section { height: auto; min-height: 450px; max-height: none; }
  #hero-section > .container { min-height: 450px; align-items: end; }
  #hero-section article { padding-block: 40px 80px; }
  #hero-section > div[aria-hidden=true]:last-of-type { background: linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.25)); }
  #hero-section p { font-size: 16px; }
  main .grid:has(> article.post):not(.featured-grid):not(#sub-news-grid .grid):not(#camps-now-section .grid), body[data-page=galleries] main .grid:has(> article.post) { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  #latest-news-grid .post { background: #fff; padding: 10px; border: 1px solid var(--line); }
  #latest-news-grid .post h2 { font-size: 19px; }
  body[data-page=videos] main .grid:has(> article.post), body[data-page=short] main .grid:has(> article.post), #refugee-media-section .grid:has(> article.post) { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
  body[data-page=videos] .post h3, body[data-page=short] .post h3, #refugee-media-section .post h3 { font-size: 16px; line-height: 1.6; }
  .prose { font-size: 17px; line-height: 1.95; }
  .prose.max-w-none { padding-inline: 0; }
  #main-static-page .prose, #main-article-content .prose { padding: 22px 18px; }
  #main-static-page h1 { font-size: 26px; line-height: 1.55; }
  #camps-now-section h2, main section > .container > div > h2 { font-size: 26px; line-height: 1.5; }
  #contact-submit-btn { width: 100%; }
  #main-contact-content aside { padding: 24px 20px; background: #fff; border: 1px solid var(--line); border-radius: 16px; }
  #main-contact-content aside a { font-size: 15px; overflow-wrap: anywhere; }
  #main-global-footer .container > .grid { grid-template-columns: minmax(0,1fr); }
  #main-global-footer { padding-block: 36px; }
  .pagination-nav { gap: 4px; }
  .pagination-nav ul { gap: 0; }
  .pagination-nav a, .pagination-nav span[aria-current] { width: 40px; height: 44px; }
  #scroll-to-top-btn { left: 16px; bottom: max(16px, env(safe-area-inset-bottom)); }
  #special-coverage-bar a { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  #hero-parallax-img { transform: none !important; scale: 1 !important; }
}
#special-coverage-bar .swiper-slide a { display: block; line-height: 44px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#main-nav-menu .nav-link[aria-current=page], #mobile-drawer-body a[aria-current=page] { color: var(--brand-ink); }
.video-preview { width: 360px; max-width: 100%; flex-shrink: 0; }
.video-preview > div { max-width: none; }
@media (max-width: 1023px) {
  .video-preview { width: min(300px, 100%); }
}
@media (max-width: 599px) {
  .video-preview { width: min(250px, 100%); order: 1; }
  .short-details { display: contents; }
  .short-details > * { margin-block-start: 0 !important; width: 100%; }
  .short-details > h1 { order: 0; }
  .short-details > p { order: 2; font-size: 16px; line-height: 1.85; color: #dce3eb; }
  .short-details > div { order: 3; }
  .short-details > aside { order: 4; }
}
#main-global-footer [aria-label="منصات التواصل الاجتماعي"] a { min-width: 44px; min-height: 44px; }
#header-search-bar #close-search-btn { font-size: 14px; }
#contact-email::placeholder { direction: rtl; text-align: right; }
@media (max-width: 599px) {
  body[data-page=videos] .post :is(h2,h3), body[data-page=short] .post :is(h2,h3), #refugee-media-section .post :is(h2,h3) { font-size: 17px; line-height: 1.65; display: block; -webkit-line-clamp: unset; }
}
[hidden] { display: none !important; }
#coverage-24h-section [role=group] button, #camps-now-section [role=group] button { min-height: 44px; min-width: 44px; font-size: 14px; }
#coverage-24h-section [role=group] button[aria-pressed=true], #camps-now-section [role=group] button[aria-pressed=true] { background: var(--brand); color: #fff; border-color: var(--brand); }
#coverage-24h-section [role=group] button[aria-pressed=false], #camps-now-section [role=group] button[aria-pressed=false] { background: #fff; color: var(--ink); border: 1px solid var(--line); box-shadow: none; }
.camp-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.camp-list a, .camp-list button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 14px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--ink); font-size: 14px; }
.camp-list a:hover, .camp-list button:hover { color: var(--brand-ink); border-color: var(--brand); }
#scroll-to-top-btn.opacity-0, #camp-popup-card.opacity-0 { visibility: hidden; }

/* Nested editorial grids must use the width of their own column. */
#sub-news-grid > .grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
#sub-news-grid .post h3 { display:block; -webkit-line-clamp:unset; overflow:visible; font-size:18px; line-height:1.7; }
#sub-news-grid .post > div { padding:14px 8px 10px; gap:14px; }
#camps-now-section .grid:has(> article.post) { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#camps-now-section .grid:has(> article.post) article { align-items:flex-start; }
#camps-now-section .grid:has(> article.post) article > a { width:80px; height:80px; }
#camps-now-section .grid:has(> article.post) h4 { display:block; -webkit-line-clamp:unset; overflow:visible; font-size:15px; line-height:1.7; }
#camps-now-section .grid:has(> article.post) time { white-space:nowrap; }
@media(max-width:599px){
 #sub-news-grid > .grid,#camps-now-section .grid:has(> article.post){grid-template-columns:minmax(0,1fr);}
}

/* Latest news strip, replacing the special coverage ticker. */
#special-coverage-bar .latest-news-strip{display:flex;align-items:center;gap:20px;min-height:46px;padding-block:6px;height:auto}
.latest-news-strip strong{white-space:nowrap;font-size:14px;border-inline-end:1px solid #ffffff70;padding-inline-end:16px}
#special-coverage-bar .latest-news-strip>a{font-size:14px;line-height:1.7;min-height:36px}
.latest-news-strip>a:not(.all-news-link){flex:1;min-width:0}
.latest-news-strip .all-news-link{white-space:nowrap;font-size:12px!important}
@media(max-width:599px){#special-coverage-bar .latest-news-strip{gap:10px}.latest-news-strip strong{font-size:12px;padding-inline-end:10px}#special-coverage-bar .latest-news-strip>a{font-size:12px}.latest-news-strip .all-news-link{display:none!important}}
