/* ==========================================================================
   REDWORD — "Redacted" design system
   White paper, black ink, one loud red. 2px rules, square corners, Readex Pro.
   The censor's black bar is the recurring motif.
   ========================================================================== */

:root {
	--rw-paper: #fff;
	--rw-ink: #0d0d0d;
	--rw-red: #d4121a;
	--rw-red-deep: #a80e14;
	--rw-grey: #5a5a5a;
	--rw-fog: #f2f2f0;
	--rw-rule: 2px solid var(--rw-ink);
	--rw-gutter: clamp(1rem, 4vw, 3rem);
}

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { background: var(--rw-paper); color: var(--rw-ink); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--rw-ink); color: #fff; }
:focus-visible { outline: 3px solid var(--rw-red); outline-offset: 2px; }
img { height: auto; }
.wp-site-blocks > * { margin-block-start: 0; }
main { margin-block-start: 0 !important; }

/* Arabic never gets tracking or uppercase; Latin display text gets both. */
h1, h2, h3, h4, h5, h6, .wp-block-post-title, .wp-block-query-title { text-wrap: balance; }
html[lang^="ar"] :is(h1, h2, h3, h4, h5, h6, .wp-block-post-title) { letter-spacing: 0; line-height: 1.45; }
html[lang^="ar"] body { line-height: 1.95; }

/* ---------- Small parts ---------- */
.rw-eyebrow { font-size: 0.75rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rw-red); margin: 0; line-height: 1.3; }
html[lang^="ar"] .rw-eyebrow { letter-spacing: 0; font-size: 0.9rem; }

.rw-section-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0.5rem 1.5rem; border-bottom: var(--rw-rule); padding-block: 1.1rem; margin: 0; }
.rw-section-head :is(h2, h3) { margin: 0; font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem); text-transform: uppercase; letter-spacing: 0; }
.rw-section-head p { margin: 0; }
.rw-more a, a.rw-more { font-size: 0.85rem; font-weight: 600; text-decoration: none; border-bottom: 2px solid var(--rw-red); padding-bottom: 1px; }
.rw-more a:hover, a.rw-more:hover { color: var(--rw-red); }

/* Buttons: square, inked. Variants by class on the button block. */
.wp-block-button__link { transition: background-color .15s, color .15s, border-color .15s; text-decoration: none; }
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--rw-ink); border: 2px solid var(--rw-ink); padding: 0.75rem 1.5rem; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--rw-ink); color: #fff; }
.rw-on-dark .wp-block-button.is-style-outline .wp-block-button__link { color: #fff; border-color: #fff; }
.rw-on-dark .wp-block-button.is-style-outline .wp-block-button__link:hover { background: #fff; color: var(--rw-ink); }
.rw-btn-red .wp-block-button__link { background: var(--rw-red); border-color: var(--rw-red); color: #fff; }
.rw-btn-red .wp-block-button__link:hover { background: var(--rw-red-deep); border-color: var(--rw-red-deep); }

/* ---------- Header: a black bar ---------- */
.rw-header { background: var(--rw-ink); color: #fff; }
.rw-header .rw-bar { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 1rem 1.5rem; min-height: 68px; }
.rw-header .wp-block-site-logo img { width: 124px; height: auto; display: block; }
.rw-nav-wrap { display: flex; align-items: center; gap: 1.25rem; flex-wrap: nowrap; margin: 0; }
.rw-header .wp-block-navigation { font-size: 0.82rem; font-weight: 500; }
.rw-header .wp-block-navigation .wp-block-navigation-item__content { color: #fff; text-decoration: none; padding-block: 0.35rem; }
html:not([lang^="ar"]) .rw-header .wp-block-navigation > .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > li > .wp-block-navigation-item__content { text-transform: uppercase; letter-spacing: 0.06em; }
html[lang^="ar"] .rw-header .wp-block-navigation { font-size: 0.95rem; }
.rw-header .wp-block-navigation .wp-block-navigation-item__content:hover,
.rw-header .wp-block-navigation .current-menu-item > .wp-block-navigation-item__content { color: #fff; box-shadow: 0 2px 0 var(--rw-red); }
.rw-header .wp-block-navigation__submenu-container { background: #fff !important; border: 2px solid var(--rw-ink) !important; min-width: 230px !important; padding: 0.35rem 0 !important; }
.rw-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: var(--rw-ink) !important; text-transform: none; letter-spacing: 0; padding: 0.5rem 0.9rem !important; box-shadow: none !important; }
.rw-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--rw-ink); color: #fff !important; }
.rw-header .wp-block-navigation__responsive-container-open svg,
.rw-header .wp-block-navigation__responsive-container-close svg { width: 30px; height: 30px; fill: currentColor; }
.rw-header .wp-block-navigation__responsive-container-open { color: #fff; }
.rw-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--rw-ink) !important; color: #fff !important; padding: 1.25rem var(--rw-gutter); }
.rw-header .is-menu-open .wp-block-navigation-item__content { color: #fff !important; font-size: 1.25rem; font-weight: 600; text-transform: none; letter-spacing: 0; }
.rw-header .is-menu-open .wp-block-navigation__submenu-container { background: transparent !important; border: 0 !important; padding-inline-start: 1rem !important; }
.rw-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: #cfcfcf !important; font-size: 1rem; font-weight: 400; padding: 0.25rem 0 !important; }
.rw-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: transparent; color: #fff !important; }
.rw-head-actions { display: flex; align-items: center; gap: 0.9rem; flex-wrap: nowrap; margin: 0; }
.rw-head-actions .wp-block-buttons { margin: 0; }
.rw-head-actions .wp-block-button__link { padding: 0.55rem 1rem; font-size: 0.8rem; white-space: nowrap; }
.rw-social { gap: 0.35rem !important; margin: 0; }
.rw-social .wp-block-social-link { background: transparent !important; color: #fff; }
.rw-social .wp-block-social-link:hover { color: var(--rw-red); transform: none; }
.rw-social .wp-block-social-link svg { fill: currentColor; }
.rw-header .wp-block-shortcode, .rw-head-actions > p { margin: 0; }
.rw-langswitch a { display: inline-block; border: 2px solid #fff; color: #fff; padding: 0.25rem 0.6rem; font-size: 0.8rem; font-weight: 600; line-height: 1.3; text-decoration: none; white-space: nowrap; }
.rw-langswitch a:hover { background: #fff; color: var(--rw-ink); }
@media (max-width: 1080px) { .rw-header .rw-social { display: none; } }
@media (max-width: 599px) {
	.rw-header .rw-bar { min-height: 58px; gap: 0.6rem; }
	.rw-header .wp-block-site-logo img { width: 96px; }
	.rw-head-actions .wp-block-buttons { display: none; }
	.rw-nav-wrap { gap: 0.7rem; flex-direction: row-reverse; }
}

/* ---------- Home: hero ---------- */
.rw-hero { background: var(--rw-red); color: #fff; border-bottom: var(--rw-rule); }
.rw-hero .rw-eyebrow { color: #fff; }
.rw-hero h1 { color: #fff; margin: 0; font-weight: 700; font-size: clamp(2.6rem, 1rem + 8.2vw, 7.25rem); line-height: 0.98; letter-spacing: -0.035em; text-transform: uppercase; max-width: 13ch; }
html[lang^="ar"] .rw-hero h1 { font-size: clamp(2.5rem, 1rem + 7vw, 6rem); line-height: 1.3; letter-spacing: 0; max-width: 12ch; }
.rw-redact { background: var(--rw-ink); color: #fff; padding: 0 0.12em; box-decoration-break: clone; -webkit-box-decoration-break: clone; animation: rw-unredact 1.1s steps(1, end) both; }
@keyframes rw-unredact { from { color: var(--rw-ink); } to { color: #fff; } }
.rw-hero:hover .rw-redact { animation: none; }
.rw-hero-foot { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 1.25rem 3rem; }
.rw-hero-foot > p { margin: 0; max-width: 46ch; font-size: clamp(1rem, 0.95rem + 0.3vw, 1.2rem); line-height: 1.6; }
.rw-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link { background: var(--rw-ink); border-color: var(--rw-ink); color: #fff; }
.rw-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background: #fff; border-color: #fff; color: var(--rw-ink); }

/* ---------- Cards and the ruled grid ---------- */
.rw-card { position: relative; display: flex; flex-direction: column; height: 100%; margin: 0; background: var(--rw-paper); }
.rw-card > * { margin-block: 0; }
.rw-card .wp-block-post-featured-image { margin: 0; overflow: hidden; background: var(--rw-fog); aspect-ratio: 16 / 9; }
.rw-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.08); transition: filter .25s; display: block; }
.rw-card:hover .wp-block-post-featured-image img, .rw-card:focus-within .wp-block-post-featured-image img { filter: none; }
.rw-card-body { display: flex; flex-direction: column; gap: 0.55rem; padding: 1.1rem 1.15rem 1.35rem; flex: 1; margin: 0; }
.rw-card-body > * { margin: 0 !important; }
.rw-card .wp-block-post-title { font-size: 1.125rem; line-height: 1.3; font-weight: 600; letter-spacing: -0.01em; }
html[lang^="ar"] .rw-card .wp-block-post-title { line-height: 1.6; }
.rw-card .wp-block-post-title a { text-decoration: none; color: var(--rw-ink); }
.rw-card .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; }
.rw-card:hover .wp-block-post-title a { color: var(--rw-red); }
.rw-chip { position: relative; z-index: 1; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; line-height: 1.4; }
html[lang^="ar"] .rw-chip { letter-spacing: 0; font-size: 0.82rem; }
.rw-chip a { color: var(--rw-red); text-decoration: none; }
.rw-chip a:hover { color: var(--rw-ink); text-decoration: underline; }
.rw-card .wp-block-post-date, .rw-meta { font-size: 0.8rem; color: var(--rw-grey); }
.rw-card .wp-block-post-excerpt { font-size: 0.92rem; color: #333; line-height: 1.6; }
.rw-card .wp-block-post-excerpt__excerpt { margin: 0; }

.rw-grid .wp-block-post-template { gap: 0 !important; border-top: var(--rw-rule); border-inline-start: var(--rw-rule); margin: 0; padding: 0; }
.rw-grid .wp-block-post-template > li { border-inline-end: var(--rw-rule); border-bottom: var(--rw-rule); margin: 0; }
.rw-grid.rw-grid-flush .wp-block-post-template { border-top: 0; }
@media (min-width: 600px) and (max-width: 960px) { .rw-grid .wp-block-post-template.is-layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }

/* Lead story + headline list (home) */
.rw-front-lead { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); border-inline: var(--rw-rule); border-bottom: var(--rw-rule); }
.rw-front-lead > * { margin: 0 !important; min-width: 0; }
.rw-front-lead > .rw-lead-col { border-inline-end: var(--rw-rule); }
.rw-front-lead .wp-block-post-template { margin: 0; padding: 0; }
.rw-lead-col .rw-card .wp-block-post-title { font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.25rem); line-height: 1.15; font-weight: 700; letter-spacing: -0.02em; }
html[lang^="ar"] .rw-lead-col .rw-card .wp-block-post-title { line-height: 1.5; }
.rw-lead-col .rw-card-body { padding: 1.4rem 1.5rem 1.75rem; gap: 0.75rem; }
.rw-lead-col .rw-card .wp-block-post-featured-image img { filter: none; }
.rw-headlines .wp-block-post-template > li { border-bottom: var(--rw-rule); margin: 0; }
.rw-headlines .wp-block-post-template > li:last-child { border-bottom: 0; }
.rw-headlines .rw-card-body { padding: 1.05rem 1.25rem 1.15rem; gap: 0.4rem; }
.rw-headlines .rw-card .wp-block-post-title { font-size: 1.05rem; }
@media (max-width: 860px) {
	.rw-front-lead { grid-template-columns: 1fr; }
	.rw-front-lead > .rw-lead-col { border-inline-end: 0; border-bottom: var(--rw-rule); }
}

/* ---------- Home: statement, themes, regions, CTA ---------- */
.rw-ink { background: var(--rw-ink); color: #fff; }
.rw-ink :is(h1, h2, h3, h4, p) { color: #fff; }
.rw-ink .rw-eyebrow { color: #ff5a60; }
.rw-statement h2 { font-size: clamp(1.6rem, 1.1rem + 2.6vw, 3.25rem); line-height: 1.12; letter-spacing: -0.025em; font-weight: 600; max-width: 22ch; margin: 0; }
html[lang^="ar"] .rw-statement h2 { line-height: 1.5; letter-spacing: 0; }
.rw-statement-foot { display: flex; flex-wrap: wrap; gap: 1.25rem 3rem; align-items: end; justify-content: space-between; }
.rw-statement-foot > p { max-width: 52ch; margin: 0; color: #d6d6d6; }

.rw-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); border-top: var(--rw-rule); border-inline-start: var(--rw-rule); margin: 0; }
.rw-tiles.rw-tiles-flush { border-top: 0; }
.rw-tiles.rw-tiles-2 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); }
.rw-tile { position: relative; display: flex; flex-direction: column; gap: 0.6rem; padding: 1.5rem 1.35rem 1.75rem; margin: 0 !important; border-inline-end: var(--rw-rule); border-bottom: var(--rw-rule); background: var(--rw-paper); transition: background-color .15s, color .15s; min-height: 11.5rem; }
.rw-tile > * { margin: 0 !important; }
.rw-tile h3 { font-size: 1.2rem; line-height: 1.25; font-weight: 700; letter-spacing: -0.01em; }
.rw-tile h3 a { text-decoration: none; color: inherit; }
.rw-tile h3 a::after { content: ""; position: absolute; inset: 0; }
.rw-tile p { font-size: 0.95rem; line-height: 1.6; color: #333; }
.rw-tile .rw-arrow { margin-block-start: auto !important; font-weight: 700; font-size: 1.25rem; line-height: 1; color: var(--rw-red); }
html[dir="rtl"] .rw-tile .rw-arrow { transform: scaleX(-1); align-self: flex-start; }
.rw-tile:hover, .rw-tile:focus-within { background: var(--rw-ink); color: #fff; }
.rw-tile:hover :is(h3, p), .rw-tile:focus-within :is(h3, p) { color: #fff; }
.rw-tiles-2 .rw-tile { min-height: 14rem; padding: 2rem 1.75rem; }
.rw-tiles-2 .rw-tile h3 { font-size: clamp(1.5rem, 1.2rem + 1.4vw, 2.25rem); text-transform: uppercase; letter-spacing: -0.02em; }
html[lang^="ar"] .rw-tiles-2 .rw-tile h3 { letter-spacing: 0; }
.rw-tiles-2 .rw-tile:hover, .rw-tiles-2 .rw-tile:focus-within { background: var(--rw-red); }
.rw-tiles-2 .rw-tile:hover .rw-arrow, .rw-tiles-2 .rw-tile:focus-within .rw-arrow { color: #fff; }

.rw-cta { background: var(--rw-red); color: #fff; border-top: var(--rw-rule); }
.rw-cta h2 { color: #fff; font-size: clamp(2rem, 1.2rem + 4vw, 4.5rem); text-transform: uppercase; letter-spacing: -0.03em; line-height: 1; margin: 0; max-width: 14ch; }
html[lang^="ar"] .rw-cta h2 { letter-spacing: 0; line-height: 1.35; }
.rw-cta p { color: #fff; margin: 0; max-width: 46ch; }
.rw-cta .wp-block-button__link { background: var(--rw-ink); border-color: var(--rw-ink); color: #fff; }
.rw-cta .wp-block-button__link:hover { background: #fff; border-color: #fff; color: var(--rw-ink); }
.rw-cta-row { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 1.5rem 3rem; }

/* ---------- Page + archive heads ---------- */
.rw-pagehead { border-bottom: var(--rw-rule); }
.rw-pagehead .wp-block-post-title, .rw-archive-title { font-size: clamp(2.1rem, 1.2rem + 4.4vw, 4.75rem); line-height: 1; letter-spacing: -0.035em; text-transform: uppercase; font-weight: 700; margin: 0; overflow-wrap: anywhere; }
html[lang^="ar"] .rw-pagehead .wp-block-post-title, html[lang^="ar"] .rw-archive-title { letter-spacing: 0; line-height: 1.35; }
.rw-archive-head { display: flex; flex-direction: column; gap: 0.9rem; }
.rw-archive-desc { margin: 0; max-width: 60ch; color: #333; }
.rw-subcats { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-block-start: 0.5rem; }
.rw-subcats a { border: 2px solid var(--rw-ink); padding: 0.3rem 0.7rem; font-size: 0.82rem; font-weight: 600; text-decoration: none; line-height: 1.4; }
.rw-subcats a span { color: var(--rw-grey); font-weight: 400; margin-inline-start: 0.25rem; font-variant-numeric: tabular-nums; }
.rw-subcats a:hover, .rw-subcats a[aria-current] { background: var(--rw-ink); color: #fff; }
.rw-subcats a:hover span, .rw-subcats a[aria-current] span { color: #cfcfcf; }
.rw-page-figure { margin: 0; border-bottom: var(--rw-rule); }
.rw-page-figure img { width: 100%; display: block; max-height: 460px; object-fit: cover; }

.wp-block-query-pagination { font-weight: 600; gap: 0.4rem !important; font-variant-numeric: tabular-nums; }
.wp-block-query-pagination a, .wp-block-query-pagination .page-numbers { text-decoration: none; border: 2px solid var(--rw-ink); padding: 0.3rem 0.75rem; line-height: 1.5; display: inline-block; margin: 0 0.15rem 0.3rem; }
.wp-block-query-pagination .page-numbers.current, .wp-block-query-pagination a:hover { background: var(--rw-ink); color: #fff; }
.wp-block-query-pagination .page-numbers.dots { border-color: transparent; }
.wp-block-query-pagination-numbers { margin: 0 !important; }

/* ---------- Single article ---------- */
.rw-article-head { border-bottom: var(--rw-rule); }
.rw-article-head .wp-block-post-title { font-size: clamp(1.9rem, 1.25rem + 3vw, 3.5rem); line-height: 1.08; letter-spacing: -0.03em; font-weight: 700; margin: 0; }
html[lang^="ar"] .rw-article-head .wp-block-post-title { letter-spacing: 0; line-height: 1.5; }
.rw-article-head .rw-chip a::after { content: none; }
.rw-byline { display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; margin: 0; font-size: 0.9rem; }
.rw-byline > * { margin: 0 !important; }
.rw-byline .wp-block-avatar img { border-radius: 0; display: block; filter: grayscale(1); }
.rw-byline .wp-block-post-author-name { font-weight: 600; }
.rw-byline .wp-block-post-author-name a { text-decoration: none; border-bottom: 2px solid var(--rw-red); }
.rw-byline .wp-block-post-date { color: var(--rw-grey); }
.rw-byline .wp-block-post-date::before { content: "·"; margin-inline-end: 0.75rem; }
.rw-article-figure { margin: 0; }
.rw-article-figure img { width: 100%; display: block; border: var(--rw-rule); border-top: 0; }

/* Long-form content (posts and pages) */
.wp-block-post-content { font-size: 1.125rem; line-height: 1.8; }
html[lang^="ar"] .wp-block-post-content { font-size: 1.15rem; line-height: 2.05; }
.wp-block-post-content > * { margin-block: 1.35rem; }
.wp-block-post-content :is(h2, h3, h4) { margin-block: 2.6rem 0.9rem; }
.wp-block-post-content h2 { font-size: clamp(1.5rem, 1.25rem + 1.1vw, 2.1rem); padding-block-start: 1.1rem; border-top: var(--rw-rule); }
.wp-block-post-content h3 { font-size: 1.35rem; }
.wp-block-post-content a { color: var(--rw-ink); text-decoration: underline; text-decoration-color: var(--rw-red); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.wp-block-post-content a:hover { background: var(--rw-ink); color: #fff; text-decoration-color: transparent; }
.wp-block-post-content :is(ul, ol) { padding-inline-start: 1.4rem; }
.wp-block-post-content li { margin-block: 0.45rem; }
.wp-block-post-content ul li::marker { color: var(--rw-red); }
.wp-block-post-content ol li::marker { font-weight: 700; }
.wp-block-post-content img { max-width: 100%; }
.wp-block-post-content figcaption { font-size: 0.82rem; color: var(--rw-grey); margin-block-start: 0.5rem; }
.wp-block-post-content :is(.wp-block-quote, blockquote) { margin-inline: 0; padding: 0.25rem 0 0.25rem 1.4rem; border: 0; border-inline-start: 6px solid var(--rw-red); font-size: 1.3rem; line-height: 1.55; font-weight: 500; }
html[dir="rtl"] .wp-block-post-content :is(.wp-block-quote, blockquote) { padding: 0.25rem 1.4rem 0.25rem 0; }
.wp-block-post-content blockquote cite { display: block; font-size: 0.85rem; font-style: normal; color: var(--rw-grey); margin-block-start: 0.6rem; font-weight: 400; }
.wp-block-post-content hr, .wp-block-separator { border: 0; border-top: var(--rw-rule); opacity: 1; }
.wp-block-post-content table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.wp-block-post-content :is(th, td) { border: 2px solid var(--rw-ink); padding: 0.6rem 0.75rem; text-align: start; vertical-align: top; }
.wp-block-post-content th { background: var(--rw-ink); color: #fff; font-weight: 600; }
.wp-block-post-content .wp-block-table { overflow-x: auto; }
.wp-block-post-content :is(iframe, video) { max-width: 100%; }
.wp-block-post-content .wp-block-file { border: var(--rw-rule); padding: 0.9rem 1rem; display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; justify-content: space-between; font-size: 1rem; }
.wp-block-post-content .wp-block-file a { text-decoration: none; background: none; color: var(--rw-ink); }
.wp-block-post-content .wp-block-file .wp-block-file__button { background: var(--rw-ink); color: #fff; border-radius: 0; padding: 0.5rem 1rem; font-size: 0.85rem; font-weight: 600; }

.rw-tags { display: flex; flex-wrap: wrap; gap: 0.4rem; font-size: 0; }
.rw-tags a { font-size: 0.8rem; border: 2px solid var(--rw-ink); padding: 0.2rem 0.6rem; text-decoration: none; font-weight: 500; }
.rw-tags a:hover { background: var(--rw-ink); color: #fff; }
.rw-tags .wp-block-post-terms__separator { display: none; }

.rw-authorcard { border: var(--rw-rule); padding: 1.25rem 1.35rem; margin: 0; }
.rw-authorcard .wp-block-post-author { display: flex; gap: 1rem; align-items: flex-start; }
.rw-authorcard .wp-block-post-author__avatar { margin: 0; flex: none; }
.rw-authorcard .wp-block-post-author__avatar img { border-radius: 0; display: block; filter: grayscale(1); width: 72px; height: 72px; }
.rw-authorcard .wp-block-post-author__byline { font-size: 0.72rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--rw-red); margin: 0 0 0.2rem; }
html[lang^="ar"] .rw-authorcard .wp-block-post-author__byline { letter-spacing: 0; font-size: 0.85rem; }
.rw-authorcard .wp-block-post-author__name { font-weight: 700; font-size: 1.15rem; margin: 0; }
.rw-authorcard .wp-block-post-author__bio { font-size: 0.92rem; color: #333; margin: 0.4rem 0 0; line-height: 1.6; }

.wp-block-comments { border-top: var(--rw-rule); padding-block-start: 1.5rem; }
.wp-block-comments :is(input[type=text], input[type=email], input[type=url], textarea) { border: 2px solid var(--rw-ink); border-radius: 0; padding: 0.65rem 0.75rem; font: inherit; width: 100%; box-sizing: border-box; background: #fff; }

/* ---------- Author archive ---------- */
.rw-author-hero-inner { display: flex; gap: 1.5rem; align-items: center; flex-wrap: wrap; }
.rw-abio-av img { display: block; border-radius: 0; width: 128px; height: 128px; object-fit: cover; filter: grayscale(1); border: var(--rw-rule); }
.rw-abio-meta { display: flex; flex-direction: column; gap: 0.35rem; min-width: 0; flex: 1 1 280px; }
.rw-abio-name { margin: 0; font-size: clamp(2rem, 1.3rem + 3.4vw, 4rem); line-height: 1; letter-spacing: -0.03em; text-transform: uppercase; }
html[lang^="ar"] .rw-abio-name { letter-spacing: 0; line-height: 1.4; }
.rw-abio-count { margin: 0; color: var(--rw-grey); font-size: 0.9rem; font-variant-numeric: tabular-nums; }
.rw-abio-bio { margin: 0.4rem 0 0; max-width: 60ch; }

/* ---------- Page building blocks (used in page content + patterns) ---------- */
.rw-lead { font-size: clamp(1.2rem, 1.05rem + 0.8vw, 1.6rem) !important; line-height: 1.5 !important; font-weight: 500; letter-spacing: -0.01em; }
html[lang^="ar"] .rw-lead { line-height: 1.85 !important; letter-spacing: 0; }

.rw-values { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); border-top: var(--rw-rule); border-inline-start: var(--rw-rule); gap: 0; }
.rw-value { margin: 0 !important; padding: 1.35rem 1.25rem 1.6rem; border-inline-end: var(--rw-rule); border-bottom: var(--rw-rule); display: flex; flex-direction: column; gap: 0.5rem; }
.rw-value > * { margin: 0 !important; }
.rw-value h3 { font-size: 1.1rem; line-height: 1.3; padding: 0; border: 0; }
.rw-value p { font-size: 0.95rem; line-height: 1.6; color: #333; }
.rw-value::before { content: ""; width: 2.25rem; height: 0.55rem; background: var(--rw-red); display: block; margin-block-end: 0.35rem; }

.rw-vision { background: var(--rw-ink); color: #fff; padding: clamp(1.75rem, 4vw, 3rem); margin-block: 2.5rem; }
.rw-vision :is(p, h2, h3) { color: #fff; border: 0; padding: 0; }
.rw-vision .rw-eyebrow { color: #ff5a60; margin-block-end: 0.9rem; }
.rw-vision p:not(.rw-eyebrow) { font-size: clamp(1.2rem, 1rem + 1vw, 1.7rem); line-height: 1.45; font-weight: 500; margin: 0; }
html[lang^="ar"] .rw-vision p:not(.rw-eyebrow) { line-height: 1.85; }

.rw-team { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 0; border-top: var(--rw-rule); border-inline-start: var(--rw-rule); }
.rw-member { margin: 0 !important; border-inline-end: var(--rw-rule); border-bottom: var(--rw-rule); display: flex; flex-direction: column; }
.rw-member > * { margin: 0 !important; }
.rw-member figure, .rw-member .rw-member-ph { aspect-ratio: 4 / 5; background: var(--rw-fog); overflow: hidden; border-bottom: var(--rw-rule); display: grid; place-items: center; }
.rw-member figure img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); display: block; }
.rw-member-ph span { background: var(--rw-ink); color: var(--rw-ink); font-weight: 700; font-size: 1.1rem; padding: 0.1rem 1.75rem; user-select: none; }
.rw-member-body { padding: 1rem 1.1rem 1.25rem; display: flex; flex-direction: column; gap: 0.25rem; }
.rw-member-body > * { margin: 0 !important; }
.rw-member h3 { font-size: 1.1rem; border: 0; padding: 0; }
.rw-member .rw-role { font-size: 0.78rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--rw-red); }
html[lang^="ar"] .rw-member .rw-role { letter-spacing: 0; font-size: 0.9rem; }
.rw-member p { font-size: 0.92rem; line-height: 1.6; color: #333; }

.rw-contact { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); border: var(--rw-rule); gap: 0; }
.rw-contact > * { margin: 0 !important; min-width: 0; }
.rw-contact-list { border-inline-end: var(--rw-rule); display: flex; flex-direction: column; }
.rw-contact-item { padding: 1.35rem 1.4rem; border-bottom: var(--rw-rule); margin: 0 !important; display: flex; flex-direction: column; gap: 0.3rem; }
.rw-contact-item:last-child { border-bottom: 0; flex: 1; }
.rw-contact-item > * { margin: 0 !important; }
.rw-contact-item h3 { font-size: 0.75rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rw-red); border: 0; padding: 0; font-weight: 600; }
html[lang^="ar"] .rw-contact-item h3 { letter-spacing: 0; font-size: 0.9rem; }
.rw-contact-item p { font-size: 1.15rem; font-weight: 600; overflow-wrap: anywhere; }
.rw-contact-form { padding: 1.5rem 1.5rem 1.75rem; }
.rw-contact-form h2 { border: 0; padding: 0; margin: 0 0 1rem; font-size: 1.5rem; }
@media (max-width: 780px) { .rw-contact { grid-template-columns: 1fr; } .rw-contact-list { border-inline-end: 0; border-bottom: var(--rw-rule); } }

.rw-form p { margin: 0 0 1rem; }
.rw-form label { display: block; font-size: 0.85rem; font-weight: 600; }
.rw-form :is(input[type=text], input[type=email], input[type=tel], textarea, select) { width: 100%; box-sizing: border-box; margin-block-start: 0.35rem; border: 2px solid var(--rw-ink); border-radius: 0; background: #fff; color: var(--rw-ink); padding: 0.7rem 0.8rem; font: inherit; font-size: 1rem; }
.rw-form :is(input, textarea):focus { outline: 3px solid var(--rw-red); outline-offset: 0; }
.rw-form textarea { min-height: 9rem; resize: vertical; }
.rw-form .wpcf7-submit { background: var(--rw-ink); color: #fff; border: 2px solid var(--rw-ink); border-radius: 0; padding: 0.8rem 1.75rem; font: inherit; font-weight: 700; font-size: 0.95rem; cursor: pointer; }
.rw-form .wpcf7-submit:hover { background: var(--rw-red); border-color: var(--rw-red); }
.wpcf7 .wpcf7-response-output { border: 2px solid var(--rw-ink) !important; margin: 1rem 0 0 !important; padding: 0.75rem 1rem !important; font-size: 0.95rem; }
.wpcf7 form.sent .wpcf7-response-output { background: var(--rw-ink); color: #fff; }
.wpcf7 form:is(.invalid, .failed, .aborted, .spam) .wpcf7-response-output { border-color: var(--rw-red) !important; color: var(--rw-red-deep); }
.wpcf7-not-valid-tip { color: var(--rw-red-deep); font-size: 0.85rem; margin-block-start: 0.3rem; }

.rw-empty { border: var(--rw-rule); padding: 2rem 1.5rem; text-align: center; color: var(--rw-grey); margin: 0; }

/* ---------- 404 + search ---------- */
.rw-404 h1 { font-size: clamp(5rem, 2rem + 18vw, 15rem); line-height: 0.85; letter-spacing: -0.05em; margin: 0; }
.rw-404 .rw-lead { max-width: 30ch; margin: 0; }
.wp-block-search__inside-wrapper { border: 2px solid var(--rw-ink) !important; padding: 0 !important; }
.wp-block-search__input { border: 0 !important; border-radius: 0 !important; padding: 0.8rem 0.9rem !important; font: inherit; background: #fff; min-width: 0; }
.wp-block-search__button { margin: 0 !important; border-radius: 0 !important; border: 0 !important; background: var(--rw-ink); color: #fff; padding: 0.8rem 1.4rem !important; font-weight: 700; }
.wp-block-search__button:hover { background: var(--rw-red); }

/* ---------- Footer: the other black bar ---------- */
.rw-footer { background: var(--rw-ink); color: #fff; }
.rw-footer :is(p, h2, h3, h4, li) { color: #fff; }
.rw-footer a { color: #fff; text-decoration: none; }
.rw-footer a:hover { color: #fff; box-shadow: 0 2px 0 var(--rw-red); }
.rw-footer-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(2, minmax(0, 1fr)); gap: 2.5rem 3rem; }
.rw-footer-grid > * { margin: 0 !important; min-width: 0; }
@media (max-width: 780px) { .rw-footer-grid { grid-template-columns: 1fr 1fr; } .rw-footer-grid > :first-child { grid-column: 1 / -1; } }
.rw-footer .wp-block-site-logo img { width: 150px; height: auto; }
.rw-footer-about p { color: #cfcfcf; font-size: 0.95rem; line-height: 1.7; max-width: 44ch; }
.rw-footer h4 { font-size: 0.75rem; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600; color: #ff5a60; margin: 0 0 0.9rem; }
html[lang^="ar"] .rw-footer h4 { letter-spacing: 0; font-size: 0.95rem; }
.rw-footer ul.rw-links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.55rem; font-size: 0.98rem; }
.rw-footer-base { border-top: 2px solid #3a3a3a; display: flex; flex-wrap: wrap; gap: 0.5rem 2rem; justify-content: space-between; align-items: center; font-size: 0.82rem; }
.rw-footer-base p { margin: 0; color: #a9a9a9; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.rw-redact { animation: none; }
	*, *::before, *::after { transition-duration: 0.01ms !important; }
}
@media print {
	.rw-header, .rw-footer, .rw-cta, .rw-related, .wp-block-comments { display: none !important; }
	.rw-card .wp-block-post-featured-image img { filter: none; }
}

/* ---------- Layout utilities used by the templates ---------- */
.rw-pad-lg { padding-block: clamp(3rem, 2rem + 5vw, 6rem); }
.rw-pad-md { padding-block: clamp(2rem, 1.5rem + 3vw, 3.75rem); }
.rw-pad-sm { padding-block: clamp(1.25rem, 1rem + 1.5vw, 2rem); }
.rw-pad-xs { padding-block: 1.25rem; }
.rw-pad-top { padding-block-start: clamp(2rem, 1.5rem + 3vw, 3.75rem); }
.rw-pad-bottom { padding-block-end: clamp(2.5rem, 2rem + 3vw, 4.5rem); }
.rw-stack, .rw-stack-lg { display: flex; flex-direction: column; gap: 1rem; }
.rw-stack-lg { gap: clamp(1.5rem, 1rem + 2vw, 2.75rem); }
.rw-stack > *, .rw-stack-lg > * { margin-block: 0 !important; }
.rw-main > * { margin-block: 0 !important; }
.rw-main .wp-block-query { margin-block: 0; }
.rw-latest .rw-section-head, .rw-themes .rw-section-head, .rw-regions .rw-section-head, .rw-more-articles .rw-section-head, .rw-related .rw-section-head { border-inline: var(--rw-rule); padding-inline: 1.25rem; border-top: var(--rw-rule); }
.rw-latest .rw-section-head { border-top: 0; }
.rw-latest { padding-block-end: 0; }
.rw-themes { padding-block-start: clamp(2rem, 1.5rem + 3vw, 3.75rem); }
.rw-article-figwrap + .rw-pad-md { padding-block-start: clamp(1.5rem, 1rem + 2vw, 2.5rem); }
.rw-tags { margin-block: 2.5rem 1.5rem !important; }

/* ---------- Fit and alignment fixes ---------- */
.rw-header *, .rw-main *, .rw-footer * { box-sizing: border-box; }
.rw-latest > *, .rw-themes > *, .rw-regions > *, .rw-more-articles > *, .rw-related > * { margin-block: 0 !important; }
.rw-headlines, .rw-headlines .wp-block-post-template { height: 100%; }
.rw-headlines .wp-block-post-template { display: grid; grid-auto-rows: 1fr; }
.rw-headlines .rw-card-body { justify-content: center; }
.rw-lead-col, .rw-lead-col .wp-block-post-template, .rw-lead-col .wp-block-post-template > li { height: 100%; }

/* PHP-rendered card grids ([rw_posts], work-page related) */
.rw-php-grid { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 599px) { .rw-php-grid { grid-template-columns: 1fr !important; } }
.rw-more-row { margin-block: 1.5rem 0; text-align: end; }
.wp-block-post-content .rw-card a, .wp-block-post-content .rw-more { text-decoration: none; background: none; }
.wp-block-post-content .rw-card .wp-block-post-title a:hover { background: none; color: var(--rw-red); }
.wp-block-post-content .rw-chip a { color: var(--rw-red); }
.wp-block-post-content .rw-chip a:hover { background: none; color: var(--rw-ink); }
.wp-block-post-content a.rw-more:hover { background: none; color: var(--rw-red); }
.wp-block-post-content .rw-grid { margin-block: 2rem 0; }
.rw-footer-about .rw-social { margin-block-start: 1.1rem; }
.rw-note { border: var(--rw-rule); border-inline-start-width: 8px; padding: 0.7rem 1rem; font-size: 0.92rem; background: var(--rw-fog); }

/* Buttons inside long-form content keep button colours, not link colours */
.wp-block-post-content .wp-block-button__link { color: #fff; text-decoration: none; }
.wp-block-post-content .wp-block-button__link:hover { background: var(--rw-red); color: #fff; }
.wp-block-post-content .wp-block-button.is-style-outline .wp-block-button__link { color: var(--rw-ink); }
.wp-block-post-content .wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--rw-ink); color: #fff; }
.wp-block-post-content .rw-contact-item a { text-decoration-thickness: 2px; }
.rw-team { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 860px) { .rw-team { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .rw-team { grid-template-columns: 1fr; } }
.rw-member figure, .rw-member .rw-member-ph { aspect-ratio: 4 / 3; }

/* Podcast episodes */
.rw-episodes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.rw-episode .wp-block-post-featured-image { position: relative; }
.rw-episode .wp-block-post-featured-image img { filter: none; }
.rw-play { position: absolute; inset-block-end: 0; inset-inline-start: 0; background: var(--rw-red); color: #fff; width: 3.25rem; height: 3.25rem; display: grid; place-items: center; font-size: 1.1rem; }
.rw-episode:hover .rw-play { background: var(--rw-ink); }
.rw-episode .rw-chip span { color: var(--rw-red); font-variant-numeric: tabular-nums; }

/* ---------- Writers: byline, card, archive head, index ---------- */
.rw-byline { display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; font-size: 0.92rem; }
.rw-byline-av .rw-writer-img { width: 44px; height: 44px; object-fit: cover; display: block; border: var(--rw-rule); filter: grayscale(1); }
.rw-byline-names { font-weight: 600; }
.rw-byline-names a { text-decoration: none; border-bottom: 2px solid var(--rw-red); }
.rw-byline-names a:hover { color: var(--rw-red); }
.rw-byline-date { color: var(--rw-grey); }
.rw-byline-date::before { content: "·"; margin-inline-end: 0.75rem; }
.rw-writer-ph { display: grid; place-items: center; background: var(--rw-fog); width: 100%; height: 100%; aspect-ratio: 1; }
.rw-writer-ph span { display: block; width: 56%; height: 14%; min-height: 6px; background: var(--rw-ink); }
.rw-byline-av .rw-writer-ph { width: 44px; height: 44px; border: var(--rw-rule); }

.rw-writercard { display: grid; grid-template-columns: 148px minmax(0, 1fr); border: var(--rw-rule); margin-block: 1.5rem 0; }
.rw-writercard + .rw-writercard { margin-block-start: -2px; }
.rw-writercard-img { display: block; border-inline-end: var(--rw-rule); background: var(--rw-fog); }
.rw-writercard-img .rw-writer-img { width: 100%; height: 100%; min-height: 148px; object-fit: cover; display: block; filter: grayscale(1); transition: filter .25s; }
.rw-writercard:hover .rw-writer-img { filter: none; }
.rw-writercard-body { padding: 1.15rem 1.3rem 1.25rem; display: flex; flex-direction: column; gap: 0.35rem; min-width: 0; }
.rw-writercard-body > * { margin: 0; }
.rw-writercard-name { font-size: 1.4rem; line-height: 1.2; border: 0 !important; padding: 0 !important; }
.rw-writercard-name a { text-decoration: none; }
.rw-writercard-name a:hover { color: var(--rw-red); }
.rw-writercard-tag { font-weight: 600; font-size: 0.95rem; }
.rw-writercard-bio { font-size: 0.92rem; line-height: 1.65; color: #333; }
.rw-writercard-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.5rem 1.25rem; margin-block-start: 0.5rem !important; }
.rw-writer-social { display: inline-flex; gap: 0.3rem; }
.rw-writer-social a { display: grid; place-items: center; width: 2rem; height: 2rem; border: 2px solid var(--rw-ink); color: var(--rw-ink); text-decoration: none; }
.rw-writer-social a:hover { background: var(--rw-ink); color: #fff; }
@media (max-width: 520px) { .rw-writercard { grid-template-columns: 96px minmax(0, 1fr); } .rw-writercard-img .rw-writer-img { min-height: 96px; } }

.rw-writerhead { display: grid; grid-template-columns: minmax(160px, 260px) minmax(0, 1fr); gap: clamp(1.25rem, 3vw, 2.75rem); align-items: start; }
.rw-writerhead-img .rw-writer-img { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; border: var(--rw-rule); filter: grayscale(1); }
.rw-writerhead-body { display: flex; flex-direction: column; gap: 0.7rem; min-width: 0; }
.rw-writerhead-body > * { margin: 0; }
.rw-writerhead .rw-archive-title { font-size: clamp(2rem, 1.2rem + 3.6vw, 4rem); }
.rw-writerhead-tag { font-size: clamp(1.05rem, 1rem + 0.4vw, 1.3rem); font-weight: 600; }
.rw-writerhead-bio { max-width: 62ch; color: #222; }
.rw-writerhead-bio p { margin: 0 0 0.75rem; }
.rw-writerhead-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.5rem; }
@media (max-width: 640px) { .rw-writerhead { grid-template-columns: 1fr; } .rw-writerhead-img { max-width: 180px; } }

.rw-writers .rw-writer-fig { display: block; aspect-ratio: 1; border-bottom: var(--rw-rule); background: var(--rw-fog); overflow: hidden; }
.rw-writers .rw-writer-img { width: 100%; height: 100%; object-fit: cover; display: block; filter: grayscale(1); transition: filter .25s; }
.rw-writer:hover .rw-writer-img { filter: none; }
.rw-writer h3 a { text-decoration: none; background: none !important; color: var(--rw-ink) !important; }
.rw-writer:hover h3 a { color: var(--rw-red) !important; }
.rw-writers { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 960px) { .rw-writers { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ---------- Home: why red, partners; About: goals ---------- */
.rw-whyred { border-top: var(--rw-rule); border-bottom: var(--rw-rule); background: var(--rw-fog); }
.rw-whyred-text { margin: 0; font-size: clamp(1.35rem, 1rem + 1.9vw, 2.5rem); line-height: 1.3; font-weight: 600; letter-spacing: -0.02em; max-width: 30ch; max-width: min(100%, 34em); text-wrap: pretty; }
html[lang^="ar"] .rw-whyred-text { line-height: 1.7; letter-spacing: 0; }
.rw-redact-red { background: var(--rw-red); animation: none; }
.rw-partners { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-inline-start: var(--rw-rule); }
.rw-partner { border-inline-end: var(--rw-rule); border-bottom: var(--rw-rule); display: grid; min-height: 7.5rem; }
.rw-partner > * { display: grid; place-items: center; padding: 1.1rem; }
.rw-partner img { max-width: 100%; max-height: 4rem; width: auto; object-fit: contain; filter: grayscale(1); opacity: 0.85; transition: filter .2s, opacity .2s; }
.rw-partner:hover img { filter: none; opacity: 1; }
.rw-partner-dark { background: var(--rw-ink); }
.rw-partners-wrap > * { margin-block: 0 !important; }
.rw-partners-wrap .rw-section-head { border-inline: var(--rw-rule); border-top: var(--rw-rule); padding-inline: 1.25rem; }
@media (max-width: 900px) { .rw-partners { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 480px) { .rw-partners { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.wp-block-post-content .rw-partners { border-top: var(--rw-rule); margin-block: 1.5rem 0; }
.wp-block-post-content .rw-partner a:hover { background: none; }
.rw-goals { counter-reset: none; }
.rw-goals .rw-value { min-height: 0; }
.rw-writers .rw-writer-img.rw-writer-ph, .rw-writercard-img .rw-writer-ph, .rw-writerhead-img .rw-writer-ph { display: grid; place-items: center; filter: none; }
.rw-writerhead-img .rw-writer-ph { border: var(--rw-rule); }

/* ---------- Writers index (v2) ---------- */
.rw-orgband { display: grid; grid-template-columns: 170px minmax(0, 1fr) auto; background: var(--rw-ink); color: #fff; margin-block: 2rem 0 !important; }
.rw-orgband-img { display: grid; place-items: center; background: #fff; border: var(--rw-rule); padding: 1.5rem; }
.rw-orgband-img .rw-writer-img { width: 100%; height: auto; max-width: 110px; display: block; }
.rw-orgband-body { padding: 1.5rem clamp(1.25rem, 3vw, 2.25rem); display: flex; flex-direction: column; gap: 0.5rem; justify-content: center; min-width: 0; }
.rw-orgband-body > * { margin: 0 !important; color: #fff; }
.rw-orgband-body .rw-eyebrow { color: #ff5a60; }
.rw-orgband-body h2 { font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.5rem); border: 0 !important; padding: 0 !important; color: #fff; }
.rw-orgband-body h2 a, .wp-block-post-content .rw-orgband-body h2 a { color: #fff; text-decoration: none; background: none; }
.rw-orgband-body p:last-child { color: #cfcfcf; font-size: 0.95rem; line-height: 1.65; max-width: 68ch; }
.rw-orgband-count, .wp-block-post-content a.rw-orgband-count { display: flex; flex-direction: column; justify-content: center; gap: 0.2rem; padding: 1.5rem clamp(1.25rem, 3vw, 2.5rem); background: var(--rw-red); color: #fff; text-decoration: none; min-width: 11rem; }
.rw-orgband-count strong { font-size: clamp(2.5rem, 2rem + 2.5vw, 4.25rem); line-height: 1; font-weight: 700; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.rw-orgband-count span { font-size: 0.85rem; font-weight: 600; }
.wp-block-post-content a.rw-orgband-count:hover { background: #fff; color: var(--rw-ink); }
@media (max-width: 760px) { .rw-orgband { grid-template-columns: 96px minmax(0, 1fr); } .rw-orgband-count { grid-column: 1 / -1; flex-direction: row; align-items: baseline; gap: 0.75rem; padding-block: 1rem; } .rw-orgband-img { padding: 0.9rem; } }

.rw-writers-head { margin-block: 3rem 0 !important; border-top: var(--rw-rule); border-inline: var(--rw-rule); padding-inline: 1.25rem; align-items: center; }
.rw-writers-head h2 { border: 0 !important; padding: 0 !important; margin: 0 !important; }
.rw-writers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-inline-start: var(--rw-rule); border-top: 0; margin-block: 0 !important; }
.rw-writer { display: grid; grid-template-columns: 132px minmax(0, 1fr); border-inline-end: var(--rw-rule); border-bottom: var(--rw-rule); background: #fff; min-width: 0; }
.rw-writers .rw-writer-fig { aspect-ratio: auto; border-bottom: 0; border-inline-end: var(--rw-rule); min-height: 100%; }
.rw-writers .rw-writer-img { min-height: 176px; }
.rw-writer-body { padding: 1.1rem 1.15rem 1.15rem; display: flex; flex-direction: column; gap: 0.4rem; min-width: 0; }
.rw-writer-body > * { margin: 0 !important; }
.rw-writer-body h3 { font-size: 1.2rem; line-height: 1.25; border: 0; padding: 0; }
.rw-writer-tag { font-size: 0.85rem; line-height: 1.5; color: #333; }
.rw-writer-latest { font-size: 0.88rem; line-height: 1.5; border-top: 1px solid #d9d9d6; padding-block-start: 0.55rem; margin-block-start: 0.35rem !important; }
.rw-writer-latest span { display: block; font-size: 0.68rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--rw-red); margin-block-end: 0.15rem; }
html[lang^="ar"] .rw-writer-latest span { letter-spacing: 0; font-size: 0.8rem; }
.rw-writer-latest a, .wp-block-post-content .rw-writer-latest a { text-decoration: none; font-weight: 500; background: none; color: var(--rw-ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.wp-block-post-content .rw-writer-latest a:hover { color: var(--rw-red); background: none; }
.rw-writer-foot { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; margin-block-start: auto !important; padding-block-start: 0.5rem; }
.rw-writer-foot .rw-writer-social a { width: 1.7rem; height: 1.7rem; border-width: 1px; }
.rw-writer-foot .rw-writer-social svg { width: 14px; height: 14px; }
.rw-writer-cta, .wp-block-post-content a.rw-writer-cta { grid-column: auto / -1; display: flex; flex-direction: column; justify-content: center; gap: 0.4rem; padding: 1.5rem 1.6rem; background: var(--rw-red); color: #fff; text-decoration: none; border-inline-end: var(--rw-rule); border-bottom: var(--rw-rule); min-height: 176px; }
.rw-writer-cta .rw-eyebrow { color: #fff; opacity: 0.85; }
.rw-writer-cta strong { font-size: clamp(1.6rem, 1.2rem + 1.8vw, 2.6rem); line-height: 1.05; text-transform: uppercase; letter-spacing: -0.02em; }
html[lang^="ar"] .rw-writer-cta strong { letter-spacing: 0; line-height: 1.4; }
.rw-writer-cta > span:last-child { font-size: 0.95rem; max-width: 48ch; }
.wp-block-post-content a.rw-writer-cta:hover { background: var(--rw-ink); color: #fff; }
@media (max-width: 1100px) { .rw-writers { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .rw-writers { grid-template-columns: 1fr; } .rw-writer { grid-template-columns: 104px minmax(0, 1fr); } }
.rw-writers .rw-writer-fig { position: relative; display: block; overflow: hidden; }
.rw-writers .rw-writer-fig .rw-writer-img { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.rw-writer { min-height: 190px; }
.rw-writer-cta, .wp-block-post-content a.rw-writer-cta { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem 2.5rem; min-height: 0; padding: 1.6rem 1.75rem; }
.rw-writer-cta .rw-eyebrow { flex-basis: 100%; }
.rw-orgband-count strong { font-weight: 700 !important; }
@media (min-width: 641px) { .rw-writers.rw-writers-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.rw-writercard, .rw-main .rw-tags { max-width: 720px; margin-inline: auto !important; }
.rw-page-figure img { max-height: none; aspect-ratio: 1920 / 820; object-fit: cover; }
.rw-langswitch { display: flex; align-items: center; }

/* ==========================================================================
   Header + footer, final pass
   ========================================================================== */
html { scroll-padding-top: 84px; }
header.wp-block-template-part { position: sticky; top: 0; z-index: 100; }
body.admin-bar header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) { body.admin-bar header.wp-block-template-part { top: 0; } }
.rw-header { border-bottom: 2px solid var(--rw-red); }
.rw-bar > *, .rw-nav-wrap > *, .rw-head-actions > * { margin-block: 0 !important; }
.rw-header .wp-block-site-logo a { display: block; }
.rw-header .wp-block-navigation .wp-block-navigation-item__content { white-space: nowrap; }
.rw-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { white-space: normal; }
.rw-header .wp-block-navigation__container { flex-wrap: nowrap; }
.rw-header .wp-block-navigation__submenu-icon { margin-inline-start: 0.2rem; }

/* Hamburger up to 1099px (WordPress only switches below 600px) */
@media (min-width: 600px) and (max-width: 1099px) {
	.rw-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; }
	.rw-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none !important; }
	.rw-nav-wrap { flex-direction: row-reverse; gap: 0.9rem; }
	.rw-header .rw-social { display: none; }
}
/* Open mobile menu: a full black sheet */
.rw-header .wp-block-navigation__responsive-container.is-menu-open { padding: 1.1rem var(--rw-gutter) 2rem !important; overflow-y: auto; }
.rw-header .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem !important; align-items: stretch !important; }
.rw-header .is-menu-open .wp-block-navigation__container { align-items: stretch !important; gap: 0 !important; width: 100%; flex-wrap: nowrap; }
.rw-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item { border-bottom: 1px solid #333; padding-block: 0.85rem; align-items: stretch !important; width: 100%; }
.rw-header .is-menu-open .wp-block-navigation-item__content { white-space: normal; box-shadow: none !important; }
.rw-header .is-menu-open .wp-block-navigation__submenu-container { padding-block: 0.4rem 0 !important; gap: 0.15rem !important; }
.rw-header .is-menu-open .wp-block-navigation__submenu-icon { display: none; }
.rw-header .wp-block-navigation__responsive-container-close { color: #fff; inset-inline-end: 0; top: 0.2rem; }

/* Footer */
.rw-footer { border-top: 2px solid var(--rw-red); }
.rw-footer-grid { grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr)); gap: 2.5rem clamp(1.5rem, 3vw, 3rem); }
@media (max-width: 960px) { .rw-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rw-footer-grid > :first-child { grid-column: 1 / -1; } }
@media (max-width: 480px) { .rw-footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem 1.25rem; } .rw-footer-contact { grid-column: 1 / -1; } }
.rw-footer-grid > .rw-footer-contact, .rw-footer-grid > nav { margin: 0 !important; }
.rw-footer .rw-social .wp-block-social-link { border: 2px solid #fff; border-radius: 0; width: 2.1rem; height: 2.1rem; display: grid; place-items: center; }
.rw-footer .rw-social .wp-block-social-link a { padding: 0; }
.rw-footer .rw-social .wp-block-social-link:hover { background: #fff !important; color: var(--rw-ink); }
.rw-footer .rw-social { gap: 0.4rem !important; }
.rw-footer-note { display: block; font-size: 0.78rem; color: #a9a9a9; }
.rw-footer-cta { display: flex; flex-direction: column; gap: 0.5rem; margin: 1.25rem 0 0; align-items: flex-start; }
.rw-footer-cta a { font-weight: 600; font-size: 0.92rem; border-bottom: 2px solid var(--rw-red); padding-bottom: 1px; }
.rw-footer-cta a:hover { box-shadow: none; color: #ff5a60; }
.rw-footer-tools { display: flex; align-items: center; gap: 1.25rem; }
.rw-footer-tools .rw-langswitch a { border-width: 1px; font-size: 0.78rem; }
.rw-totop { font-weight: 600; color: #fff !important; }
.rw-header .is-menu-open .wp-block-navigation__submenu-container { align-items: flex-start !important; width: 100%; }
.rw-header .is-menu-open .wp-block-navigation-item { align-items: flex-start !important; }
.rw-header .is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start !important; }
