/* === ROOT VARS === */
	body.page-id-5811 {
		--hmr-dark: #1A1E23;
		--hmr-cream: #F5F1EA;
		--hmr-paper: #FAF7F2;
		--hmr-ink: #14181C;
		--hmr-red: #d81e32;
		--hmr-orange: #E55B2C;
		--hmr-mute: #6B6661;
		--hmr-rule: rgba(20,24,28,0.10);
	}

	/* === KILL THEME WRAPPING === */
	body.page-id-5811 .page_content_wrap { padding-top: 0 !important; padding-bottom: 0 !important; }
	body.page-id-5811 .sidebar_show .content { width: 100% !important; }
	body.page-id-5811 .sidebar { display: none !important; }
	body.page-id-5811 article.post.page { margin: 0 !important; padding: 0 !important; }

	/* ============================================================
	 * §1 HERO — Phase 8: full-width edge-to-edge + force-visible title
	 * ============================================================ */
	.elementor .hm-r-hero {
		background: var(--hmr-dark) !important;
		color: #fff !important;
		padding: 80px clamp(48px, 7vw, 112px) 64px !important;
		position: relative;
		overflow: hidden;
		/* Bleed full viewport width regardless of Elementor container */
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
	}
	.elementor .hm-r-hero > * { max-width: 1320px; margin-left: auto; margin-right: auto; }
	.elementor .hm-r-hero::before {
		content: '';
		position: absolute; inset: 0;
		background:
			radial-gradient(circle at 1px 1px, rgba(255,255,255,0.04) 1px, transparent 1px) 24px 24px,
			radial-gradient(80% 60% at 100% 0%, rgba(229,91,44,0.08), transparent 60%),
			radial-gradient(60% 60% at 0% 100%, rgba(216,30,50,0.05), transparent 60%);
		pointer-events: none;
	}
	.elementor .hm-r-hero > * { position: relative; z-index: 1; }
	.hm-r-hero__eyebrow {
		font-size: 12px; letter-spacing: 0.32em; text-transform: uppercase;
		color: rgba(255,255,255,0.7); font-weight: 600;
		margin-bottom: 18px; display: inline-block;
		padding-right: 60px; position: relative;
	}
	.hm-r-hero__eyebrow::after {
		content: ''; position: absolute; right: 0; top: 50%;
		width: 48px; height: 1px; background: var(--hmr-red);
	}
	body.page-id-5811 .hm-r-hero__title,
	body.page-id-5811 h1.hm-r-hero__title,
	.hm-r-hero__title {
		font-size: clamp(32px, 4.6vw, 64px) !important; line-height: 0.96 !important;
		letter-spacing: -0.02em !important; font-weight: 800 !important;
		color: #fff !important;
		-webkit-text-fill-color: #fff !important;
		text-shadow: none !important;
		margin: 0 0 clamp(16px, 2vw, 24px) !important; max-width: 1000px;
	}
	body.page-id-5811 .hm-r-hero__title em,
	.hm-r-hero__title em {
		font-style: normal;
		color: var(--hmr-orange) !important;
		-webkit-text-fill-color: var(--hmr-orange) !important;
	}
	.hm-r-hero__lead {
		font-size: clamp(14px, 1.05vw, 16px); line-height: 1.5;
		color: rgba(255,255,255,0.78); max-width: 640px;
		margin: 0 0 clamp(20px, 2.5vw, 36px);
	}

	.hm-r-stats {
		display: grid; grid-template-columns: repeat(4, 1fr);
		gap: clamp(14px, 2vw, 32px); max-width: 1100px;
		border-top: 1px solid rgba(255,255,255,0.10);
		padding-top: clamp(16px, 2vw, 24px);
	}
	.hm-r-stat__num {
		font-size: clamp(26px, 3vw, 44px); line-height: 1; font-weight: 800;
		letter-spacing: -0.02em; color: #fff; margin: 0 0 5px;
	}
	.hm-r-stat__num .hm-r-stat__plus { color: var(--hmr-orange); margin-left: 2px; }
	.hm-r-stat__label {
		font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
		color: rgba(255,255,255,0.78); font-weight: 600;
	}

	/* ============================================================
	 * §2 SPOTLIGHT — Phase 8: contained, image fills cover (no full-width bleed
	 * because the spotlight was overlapping the next section when full-width).
	 * ============================================================ */
	.elementor .hm-r-spotlight {
		background: #fff;
		padding: 0 !important;
	}
	.hm-r-spotlight__inner {
		display: grid;
		grid-template-columns: 1.1fr 1fr;
		max-width: 1480px;
		margin: 0 auto;
		min-height: 480px;
	}
	.hm-r-spotlight__cover {
		position: relative;
		background: var(--hmr-dark);
		display: flex;
		align-items: flex-end;
		justify-content: flex-start;
		padding: clamp(32px, 5vw, 72px);
		overflow: hidden;
	}
	.hm-r-spotlight__cover::before {
		content: '';
		position: absolute; inset: 0;
		background:
			linear-gradient(180deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.55) 80%, rgba(0,0,0,0.85) 100%),
			radial-gradient(circle at 1px 1px, rgba(255,255,255,0.05) 1px, transparent 1px) 32px 32px;
		z-index: 1;
		pointer-events: none;
	}
	/* Phase 8: force position:absolute + 100% height against theme img overrides */
	body.page-id-5811 .hm-r-spotlight__cover img.hm-r-spotlight__cover-img,
	.hm-r-spotlight__cover-img {
		position: absolute !important; inset: 0 !important;
		width: 100% !important; height: 100% !important;
		object-fit: cover !important; object-position: center !important;
		z-index: 0 !important;
		display: block !important;
		max-width: none !important; max-height: none !important;
	}
	.hm-r-spotlight__cover-stamp {
		position: relative; z-index: 2;
		display: inline-block;
		font-size: 11px; letter-spacing: 0.32em; text-transform: uppercase;
		color: #fff; font-weight: 700;
		padding: 11px 20px;
		border: 1.5px solid rgba(255,255,255,0.4);
		border-radius: 2px;
		background: rgba(216,30,50,0.92);
	}
	.hm-r-spotlight__cover-stamp.is-empty { background: transparent; border-color: var(--hmr-red); color: var(--hmr-red); }
	.hm-r-spotlight__copy {
		padding: clamp(40px, 5vw, 72px) clamp(32px, 4vw, 64px);
		display: flex; flex-direction: column; justify-content: center;
		background: var(--hmr-paper);
	}
	.hm-r-spotlight__type {
		font-size: 11px; letter-spacing: 0.32em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-red); margin-bottom: 18px;
		display: flex; align-items: center; gap: 12px;
	}
	.hm-r-spotlight__type::before {
		content: ''; display: inline-block;
		width: 24px; height: 2px; background: var(--hmr-red);
	}
	.hm-r-spotlight__eyebrow {
		font-size: 11px; letter-spacing: 0.28em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-mute); margin-bottom: 22px;
	}
	.hm-r-spotlight__title {
		font-size: clamp(28px, 3.4vw, 48px); line-height: 1.05;
		letter-spacing: -0.02em; font-weight: 800; color: var(--hmr-ink);
		margin: 0 0 clamp(16px, 2vw, 24px);
	}
	.hm-r-spotlight__lead {
		font-size: clamp(15px, 1.2vw, 17px); line-height: 1.55;
		color: var(--hmr-mute); margin: 0 0 32px;
		max-width: 560px;
	}
	.hm-r-spotlight__btn {
		display: inline-flex; align-items: center; gap: 10px;
		font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-ink); text-decoration: none;
		padding: 14px 22px;
		border: 1.5px solid var(--hmr-ink);
		transition: all 0.2s ease;
		align-self: flex-start;
	}
	.hm-r-spotlight__btn:hover { background: var(--hmr-ink); color: #fff; }
	.hm-r-spotlight__btn::after { content: '→'; transition: transform 0.2s ease; }
	.hm-r-spotlight__btn:hover::after { transform: translateX(4px); }
	.hm-r-spotlight__date {
		font-size: 12px; letter-spacing: 0.04em; color: var(--hmr-mute);
		font-variant-numeric: tabular-nums; margin-top: 18px;
	}
	.hm-r-spotlight__cover-empty-mark {
		position: relative; z-index: 2;
		font-size: clamp(120px, 16vw, 240px); line-height: 0.85;
		font-weight: 800; color: rgba(255,255,255,0.06);
		letter-spacing: -0.04em; margin-bottom: 16px;
		font-feature-settings: 'tnum';
	}

	/* ============================================================
	 * §3 MOST RECENT — editorial 1+5 asymmetric
	 * ============================================================ */
	.elementor .hm-r-recent {
		background: #fff;
		padding: 48px clamp(20px, 5vw, 80px) !important;
		border-top: 1px solid var(--hmr-rule);
	}
	.hm-r-recent__inner { max-width: 1480px; margin: 0 auto; }
	.hm-r-recent__head {
		display: flex; justify-content: space-between; align-items: baseline;
		margin-bottom: clamp(24px, 3vw, 40px); flex-wrap: wrap; gap: 16px;
		padding-bottom: 16px; border-bottom: 1px solid var(--hmr-rule);
	}
	.hm-r-recent__title {
		font-size: clamp(24px, 2.8vw, 36px); line-height: 1; font-weight: 800;
		letter-spacing: -0.022em; color: var(--hmr-ink); margin: 0;
	}
	.hm-r-recent__sub {
		font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
		color: var(--hmr-mute); font-weight: 600;
	}
	/* Phase 8: normalized 3-up grid — every card is the same size, same image aspect.
	   The previous "magazine layout" with one giant first card + smaller siblings
	   was creating jarring inconsistency that the user flagged. */
	.hm-r-recent__grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-template-rows: auto;
		gap: clamp(24px, 2.6vw, 40px);
	}
	.hm-r-recent__grid:not(:has(> :nth-child(2))) { grid-template-columns: 1fr; max-width: 760px; }
	.hm-r-rcard {
		display: flex; flex-direction: column; text-decoration: none; color: inherit;
		position: relative; transition: transform 0.25s ease;
	}
	.hm-r-rcard:hover { transform: translateY(-3px); }
	.hm-r-rcard__img {
		width: 100%; aspect-ratio: 4 / 3; object-fit: cover;
		background: var(--hmr-cream); display: block;
		flex: 0 0 auto;
	}
	/* Override any leftover .is-large treatment to keep cards uniform */
	.hm-r-rcard.is-large { grid-column: auto; grid-row: auto; }
	.hm-r-rcard.is-large .hm-r-rcard__img { aspect-ratio: 4 / 3; }
	.hm-r-rcard.is-large .hm-r-rcard__title { font-size: clamp(15px, 1.2vw, 18px); }
	.hm-r-rcard__body { padding: 18px 0 0; flex: 1 1 auto; }
	.hm-r-rcard__type {
		font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-red); margin-bottom: 8px;
	}
	.hm-r-rcard__title {
		font-size: clamp(15px, 1.2vw, 18px); line-height: 1.32; font-weight: 700;
		color: var(--hmr-ink); margin: 0 0 8px; letter-spacing: -0.005em;
	}
	.hm-r-rcard__meta {
		display: flex; gap: 10px; font-size: 11.5px; color: var(--hmr-mute);
		font-variant-numeric: tabular-nums;
	}
	.hm-r-rcard__meta strong { color: var(--hmr-ink); font-weight: 600; }
	.hm-r-recent__empty {
		text-align: center; padding: clamp(64px, 8vw, 112px) 24px;
		max-width: 600px; margin: 0 auto;
	}
	.hm-r-recent__empty-stamp {
		display: inline-block; font-size: 11px; letter-spacing: 0.3em;
		text-transform: uppercase; color: var(--hmr-mute); font-weight: 700;
		padding: 9px 18px; border: 1px dashed var(--hmr-rule);
	}

	/* ============================================================
	 * §4 BY TYPE — horizontal scrolling rows
	 * ============================================================ */
	.elementor .hm-r-bytype {
		background: var(--hmr-cream);
		padding: 48px 0 32px !important;
	}
	.hm-r-bytype__inner { max-width: 1480px; margin: 0 auto; padding: 0 clamp(20px, 5vw, 80px); }
	.hm-r-bytype__intro { margin-bottom: clamp(24px, 3vw, 40px); padding-bottom: 16px; border-bottom: 1px solid var(--hmr-rule); }
	.hm-r-bytype__h2 {
		font-size: clamp(24px, 2.8vw, 36px); line-height: 1; font-weight: 800;
		letter-spacing: -0.022em; color: var(--hmr-ink); margin: 0 0 10px;
	}
	.hm-r-bytype__sub { font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--hmr-mute); font-weight: 600; }
	.hm-r-bytype__row {
		padding: 18px 0;
		border-bottom: 1px solid var(--hmr-rule);
	}
	/* Compact empty rows (no card grid present) */
	.hm-r-bytype__row:has(.hm-r-bytype__row-empty) { padding: 12px 0; }
	.hm-r-bytype__row:last-child { border-bottom: 0; }
	.hm-r-bytype__head {
		display: flex; justify-content: space-between; align-items: baseline;
		margin-bottom: 18px; flex-wrap: wrap; gap: 12px;
	}
	.hm-r-bytype__label {
		display: flex; align-items: baseline; gap: 14px;
	}
	.hm-r-bytype__label-name {
		font-size: clamp(20px, 2vw, 28px); line-height: 1;
		font-weight: 800; color: var(--hmr-ink); letter-spacing: -0.015em;
		text-transform: uppercase;
	}
	.hm-r-bytype__label-count {
		font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
		color: var(--hmr-mute); font-weight: 600;
	}
	.hm-r-bytype__viewall {
		font-size: 11.5px; letter-spacing: 0.18em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-ink); text-decoration: none;
		display: inline-flex; align-items: center; gap: 8px;
	}
	.hm-r-bytype__viewall::after { content: '→'; transition: transform 0.18s ease; }
	.hm-r-bytype__viewall:hover::after { transform: translateX(4px); }
	.hm-r-bytype__cards {
		display: flex; gap: 18px; overflow-x: auto;
		scroll-snap-type: x mandatory;
		padding-bottom: 8px;
		scrollbar-width: thin;
	}
	.hm-r-bytype__cards::-webkit-scrollbar { height: 4px; }
	.hm-r-bytype__cards::-webkit-scrollbar-track { background: rgba(0,0,0,0.04); }
	.hm-r-bytype__cards::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); }
	.hm-r-tcard {
		flex: 0 0 280px; scroll-snap-align: start;
		text-decoration: none; color: inherit;
		display: block; transition: transform 0.2s ease;
	}
	.hm-r-tcard:hover { transform: translateY(-2px); }
	.hm-r-tcard__img {
		width: 100%; aspect-ratio: 4 / 3; object-fit: cover;
		background: rgba(0,0,0,0.06); display: block; margin-bottom: 14px;
	}
	.hm-r-tcard__type-stamp {
		font-size: 9.5px; letter-spacing: 0.28em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-red); margin-bottom: 6px;
	}
	.hm-r-tcard__title {
		font-size: 14.5px; line-height: 1.32; font-weight: 700;
		color: var(--hmr-ink); margin: 0 0 6px; letter-spacing: -0.005em;
	}
	.hm-r-tcard__meta { font-size: 11px; color: var(--hmr-mute); font-variant-numeric: tabular-nums; }
	.hm-r-bytype__row-empty {
		font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase;
		color: var(--hmr-mute); padding: 16px 0;
	}

	/* ============================================================
	 * §5 BY THEME — 5 area-themed bands
	 * ============================================================ */
	.elementor .hm-r-bytheme {
		background: #fff;
		padding: 48px clamp(20px, 5vw, 80px) !important;
		border-top: 1px solid var(--hmr-rule);
	}
	.hm-r-bytheme__inner { max-width: 1480px; margin: 0 auto; }
	.hm-r-bytheme__intro { margin-bottom: clamp(28px, 3.5vw, 48px); padding-bottom: 16px; border-bottom: 1px solid var(--hmr-rule); }
	.hm-r-bytheme__h2 {
		font-size: clamp(24px, 2.8vw, 36px); line-height: 1; font-weight: 800;
		letter-spacing: -0.022em; color: var(--hmr-ink); margin: 0 0 10px;
	}
	.hm-r-bytheme__sub { font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--hmr-mute); font-weight: 600; }
	.hm-r-bytheme__band {
		display: grid;
		grid-template-columns: 1fr 2fr;
		gap: clamp(28px, 4vw, 56px);
		padding: 22px 0;
		border-bottom: 1px solid var(--hmr-rule);
		align-items: start;
	}
	/* Compact when band has no real cards (empty state) */
	.hm-r-bytheme__band:has(.hm-r-bytheme__band-empty) {
		padding: 12px 0;
		grid-template-columns: 1fr 1.5fr;
		gap: clamp(20px, 3vw, 40px);
	}
	.hm-r-bytheme__band:has(.hm-r-bytheme__band-empty) .hm-r-bytheme__band-name {
		font-size: clamp(18px, 1.8vw, 24px);
		margin-bottom: 6px;
	}
	.hm-r-bytheme__band:has(.hm-r-bytheme__band-empty) .hm-r-bytheme__band-lead { display: none; }
	.hm-r-bytheme__band:has(.hm-r-bytheme__band-empty) .hm-r-bytheme__band-num { font-size: 10px; margin-bottom: 8px; }
	.hm-r-bytheme__band:last-child { border-bottom: 0; }
	.hm-r-bytheme__band-num {
		font-size: 11px; letter-spacing: 0.32em; text-transform: uppercase;
		color: var(--hmr-red); font-weight: 700; margin-bottom: 14px;
	}
	.hm-r-bytheme__band-name {
		font-size: clamp(22px, 2.4vw, 32px); line-height: 1.05; font-weight: 800;
		letter-spacing: -0.018em; color: var(--hmr-ink); margin: 0 0 12px;
	}
	.hm-r-bytheme__band-lead {
		font-size: 14.5px; line-height: 1.55; color: var(--hmr-mute);
		margin: 0 0 22px; max-width: 360px;
	}
	.hm-r-bytheme__band-link {
		font-size: 11.5px; letter-spacing: 0.18em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-ink); text-decoration: none;
		display: inline-flex; align-items: center; gap: 8px;
	}
	.hm-r-bytheme__band-link::after { content: '→'; transition: transform 0.18s ease; }
	.hm-r-bytheme__band-link:hover::after { transform: translateX(4px); }
	.hm-r-bytheme__band-cards {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: clamp(16px, 2vw, 28px);
	}
	.hm-r-bcard {
		display: block; text-decoration: none; color: inherit;
		transition: transform 0.2s ease;
	}
	.hm-r-bcard:hover { transform: translateY(-2px); }
	.hm-r-bcard__img {
		width: 100%; aspect-ratio: 4 / 3; object-fit: cover;
		background: var(--hmr-cream); display: block; margin-bottom: 12px;
	}
	.hm-r-bcard__type {
		font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-red); margin-bottom: 6px;
	}
	.hm-r-bcard__title {
		font-size: 14px; line-height: 1.32; font-weight: 700; color: var(--hmr-ink);
		margin: 0 0 4px; letter-spacing: -0.005em;
	}
	.hm-r-bcard__date { font-size: 11px; color: var(--hmr-mute); font-variant-numeric: tabular-nums; }
	.hm-r-bytheme__band-empty {
		grid-column: 1 / -1;
		font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase;
		color: var(--hmr-mute); padding: 24px 0;
	}

	/* ============================================================
	 * §6 LEDGER (filter rail + archive — DEMOTED to bottom)
	 * ============================================================ */
	.elementor .hm-r-archive {
		background: var(--hmr-cream);
		padding: 0 !important;
		border-top: 1px solid var(--hmr-rule);
	}
	.hm-r-archive__intro {
		max-width: 1280px; margin: 0 auto;
		padding: 40px clamp(20px, 5vw, 80px) 16px;
	}
	.hm-r-archive__title {
		font-size: clamp(24px, 2.8vw, 36px); line-height: 1; font-weight: 800;
		letter-spacing: -0.022em; color: var(--hmr-ink); margin: 0 0 10px;
	}
	.hm-r-archive__sub {
		font-size: 13px; letter-spacing: 0.04em; color: var(--hmr-mute);
		max-width: 600px; line-height: 1.55;
	}
	/* === GRID (was filterbar — now dark matrix) === */
	.elementor .hm-r-filterbar {
		background: var(--hmr-dark) !important;
		color: #fff;
		padding: 36px clamp(20px, 5vw, 80px) 40px !important;
		border-top: 1px solid rgba(255,255,255,0.08);
		border-bottom: 1px solid rgba(255,255,255,0.08);
		position: sticky; top: 0; z-index: 30;
	}
	/* Dark frame on outer wrappers; LIGHT cream data cells in the middle (intentional). */
	body.page-id-5811 .hm-r-filterbar,
	body.page-id-5811 .hm-r-filterbar .e-con-inner,
	body.page-id-5811 .hm-r-filterbar .elementor-widget,
	body.page-id-5811 .hm-r-filterbar .elementor-widget-wrap,
	body.page-id-5811 .hm-r-filterbar .elementor-widget-shortcode,
	body.page-id-5811 .hm-r-filterbar .elementor-widget-container,
	body.page-id-5811 .hm-r-filterbar .hm-r-grid__inner,
	body.page-id-5811 .hm-r-filterbar .hm-r-grid__tablewrap,
	body.page-id-5811 .hm-r-filterbar table,
	body.page-id-5811 .hm-r-filterbar thead,
	body.page-id-5811 .hm-r-filterbar tbody,
	body.page-id-5811 .hm-r-filterbar tr {
		background-color: transparent !important;
	}
	/* Header CHROME = dark (corner + column heads + row heads) */
	body.page-id-5811 .hm-r-filterbar th.hm-r-grid__cell--corner,
	body.page-id-5811 .hm-r-filterbar th.hm-r-grid__cell--colhead,
	body.page-id-5811 .hm-r-filterbar th.hm-r-grid__cell--rowhead {
		background-color: #15181C !important;
		color: #fff !important;
		border-color: rgba(255,255,255,0.06) !important;
	}
	/* DATA cells = LIGHT cream canvas (the "data area" feel) */
	body.page-id-5811 .hm-r-filterbar td.hm-r-grid__cell--data {
		background-color: #F5F1EA !important;
		color: #14181C !important;
		border-color: rgba(20,24,28,0.08) !important;
	}
	body.page-id-5811 .hm-r-filterbar td.hm-r-grid__cell--data[data-intensity="0"] {
		background-color: #F5F1EA !important;
		color: rgba(20,24,28,0.28) !important;
	}
	body.page-id-5811 .hm-r-filterbar td.hm-r-grid__cell--data[data-intensity="1"] {
		background-color: rgba(229,91,44,0.22) !important;
		color: #14181C !important;
	}
	body.page-id-5811 .hm-r-filterbar td.hm-r-grid__cell--data[data-intensity="2"] {
		background-color: rgba(229,91,44,0.5) !important;
		color: #14181C !important;
	}
	body.page-id-5811 .hm-r-filterbar td.hm-r-grid__cell--data[data-intensity="3"] {
		background-color: rgba(216,30,50,0.78) !important;
		color: #fff !important;
	}
	.hm-r-grid__inner { max-width: 1480px; margin: 0 auto; }
	.hm-r-grid__head {
		display: flex; justify-content: space-between; align-items: baseline;
		flex-wrap: wrap; gap: 16px;
		margin-bottom: clamp(20px, 3vw, 32px);
		padding-bottom: 16px;
		border-bottom: 1px solid rgba(255,255,255,0.06);
	}
	.hm-r-grid__title {
		font-size: clamp(22px, 2.6vw, 32px); line-height: 1; font-weight: 800;
		letter-spacing: -0.02em; color: #fff; margin: 0 0 6px;
	}
	.hm-r-grid__sub {
		font-size: 11.5px; letter-spacing: 0.04em; color: rgba(255,255,255,0.78);
		display: block; max-width: 600px; line-height: 1.4;
	}
	.hm-r-grid__status {
		font-size: 10.5px; letter-spacing: 0.22em; text-transform: uppercase;
		color: rgba(255,255,255,0.78); font-weight: 600;
	}
	.hm-r-grid__status strong { color: #fff; font-weight: 700; }
	.hm-r-grid__tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
	.hm-r-grid__table {
		width: 100%; border-collapse: collapse;
		font-variant-numeric: tabular-nums;
	}
	.hm-r-grid__cell {
		padding: 14px 12px;
		border: 1px solid rgba(255,255,255,0.06);
		text-align: center;
		vertical-align: middle;
		font-weight: 500;
		color: #fff;
		transition: background 0.16s ease, opacity 0.16s ease;
	}
	/* Corner cell — top-left "ALL" */
	.hm-r-grid__cell--corner {
		text-align: left; cursor: pointer;
		background: rgba(255,255,255,0.04);
		min-width: 180px;
	}
	.hm-r-grid__cell--corner:hover { background: rgba(216,30,50,0.14); }
	.hm-r-grid__corner-label {
		display: block; font-size: 11px; letter-spacing: 0.28em;
		text-transform: uppercase; font-weight: 700; color: var(--hmr-red);
	}
	.hm-r-grid__corner-num { display: block; font-size: 18px; font-weight: 800; color: #fff; margin-top: 2px; }
	/* Column header cells (top row, the 5 buckets) */
	.hm-r-grid__cell--colhead {
		cursor: pointer; vertical-align: bottom;
		background: rgba(255,255,255,0.02);
		padding: 18px 10px 14px;
		min-width: 120px;
	}
	.hm-r-grid__cell--colhead:hover { background: rgba(255,255,255,0.06); }
	.hm-r-grid__col-label {
		display: block; font-size: 10.5px; letter-spacing: 0.22em;
		text-transform: uppercase; font-weight: 700; color: rgba(255,255,255,0.85);
		line-height: 1.2;
	}
	.hm-r-grid__col-num { display: block; font-size: 16px; font-weight: 800; color: #fff; margin-top: 6px; }
	/* Row header cells (left column, country names) */
	.hm-r-grid__cell--rowhead {
		text-align: left; cursor: pointer;
		background: rgba(255,255,255,0.02);
		padding: 14px 16px 14px 12px;
		min-width: 180px; white-space: nowrap;
		position: sticky; left: 0; z-index: 1;
	}
	.hm-r-grid__cell--rowhead:hover { background: rgba(255,255,255,0.06); }
	.hm-r-grid__row-label {
		font-size: 13px; font-weight: 600; color: #fff;
		letter-spacing: 0.01em; display: inline-block; margin-right: 10px;
		text-transform: uppercase; letter-spacing: 0.06em;
	}
	.hm-r-grid__row-num {
		font-size: 11px; color: rgba(255,255,255,0.5); font-weight: 500;
		float: right;
	}
	/* Data cells — the heart of the grid */
	.hm-r-grid__cell--data {
		cursor: pointer;
		font-size: 14px;
		font-weight: 600;
		min-width: 88px;
	}
	.hm-r-grid__cell--data[data-intensity="0"] { color: rgba(255,255,255,0.18); background: transparent; }
	.hm-r-grid__cell--data[data-intensity="1"] { background: rgba(229,91,44,0.16); color: #fff; }
	.hm-r-grid__cell--data[data-intensity="2"] { background: rgba(229,91,44,0.34); color: #fff; }
	.hm-r-grid__cell--data[data-intensity="3"] { background: rgba(216,30,50,0.62); color: #fff; }
	.hm-r-grid__cell--data:hover { outline: 2px solid var(--hmr-orange); outline-offset: -2px; }
	/* Hover dim state */
	.hm-r-grid__table.is-row-hover .hm-r-grid__row:not(.is-active-row) { opacity: 0.28; }
	.hm-r-grid__table.is-col-hover .hm-r-grid__cell:not(.is-active-col):not(.hm-r-grid__cell--corner):not(.hm-r-grid__cell--rowhead) { opacity: 0.28; }
	/* Active filter state */
	.hm-r-grid__cell.is-filter-active { background: var(--hmr-red) !important; color: #fff !important; outline: 2px solid #fff; outline-offset: -2px; }
	.hm-r-grid__row.is-filter-active .hm-r-grid__cell--rowhead { background: rgba(216,30,50,0.4); }
	.hm-r-grid__cell--colhead.is-filter-active { background: rgba(216,30,50,0.4); }
	@media (max-width: 768px) {
		.hm-r-grid__cell { padding: 10px 8px; }
		.hm-r-grid__cell--corner, .hm-r-grid__cell--rowhead { min-width: 140px; }
		.hm-r-grid__cell--data { min-width: 70px; font-size: 13px; }
		.hm-r-grid__row-label { font-size: 11.5px; }
	}
	.hm-r-filterbar__inner {
		display: flex; flex-direction: column; gap: 18px;
		max-width: 1480px; margin: 0 auto;
	}
	.hm-r-filterbar__row { display: flex; gap: 8px 14px; align-items: baseline; flex-wrap: wrap; }
	.hm-r-filterbar__label {
		font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase;
		color: var(--hmr-mute); font-weight: 700;
		flex: 0 0 88px; padding-top: 4px;
	}
	.hm-r-chip {
		display: inline-flex; align-items: center; gap: 8px;
		padding: 7px 14px; font-size: 12.5px; font-weight: 600; letter-spacing: 0.04em;
		color: var(--hmr-ink); background: #fff;
		border: 1px solid var(--hmr-rule); border-radius: 999px;
		cursor: pointer; transition: all 0.18s ease; white-space: nowrap;
	}
	.hm-r-chip__count { font-size: 10.5px; color: var(--hmr-mute); font-weight: 500; }
	.hm-r-chip:hover { border-color: var(--hmr-ink); transform: translateY(-1px); }
	.hm-r-chip.is-active { background: var(--hmr-ink); color: #fff; border-color: var(--hmr-ink); }
	.hm-r-chip.is-active .hm-r-chip__count { color: rgba(255,255,255,0.78); }
	.hm-r-chip.hm-r-chip--clear {
		color: var(--hmr-red); border-color: var(--hmr-red);
		font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; padding: 7px 12px;
	}
	.hm-r-chip.hm-r-chip--clear:hover { background: var(--hmr-red); color: #fff; }
	.hm-r-filterbar__status {
		font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase;
		color: var(--hmr-mute); padding-top: 8px; border-top: 1px dashed var(--hmr-rule);
	}
	.hm-r-filterbar__status strong { color: var(--hmr-ink); font-weight: 700; }

	.elementor .hm-r-ledger {
		background: var(--hmr-cream);
		padding: 32px clamp(20px, 5vw, 80px) 56px !important;
	}
	.hm-r-ledger__inner { max-width: 1280px; margin: 0 auto; }
	.hm-r-ledger__year {
		display: grid; grid-template-columns: clamp(120px, 18vw, 220px) 1fr;
		gap: clamp(24px, 4vw, 64px); align-items: start;
		padding: clamp(28px, 4vw, 56px) 0;
		border-top: 1px solid var(--hmr-rule); position: relative;
	}
	.hm-r-ledger__year:first-child { border-top: 0; }
	.hm-r-ledger__year-label {
		font-size: clamp(48px, 7vw, 112px); line-height: 0.9; font-weight: 800;
		letter-spacing: -0.04em; color: var(--hmr-ink);
		position: sticky; top: 140px;
	}
	.hm-r-ledger__year-count {
		display: block; font-size: 11px; letter-spacing: 0.22em;
		text-transform: uppercase; color: var(--hmr-mute);
		font-weight: 600; margin-top: 8px;
	}
	.hm-r-ledger__entries { display: flex; flex-direction: column; }
	.hm-r-entry {
		display: grid; grid-template-columns: 130px 1fr 110px; gap: 24px;
		align-items: baseline;
		padding: 22px 16px 22px 0;
		border-bottom: 1px solid var(--hmr-rule);
		text-decoration: none; color: inherit;
		position: relative; transition: padding 0.2s ease;
	}
	.hm-r-entry::before {
		content: ''; position: absolute; left: -16px; top: 50%;
		transform: translateY(-50%); width: 4px; height: 0;
		background: var(--hmr-red); transition: height 0.22s ease;
	}
	.hm-r-entry:hover { padding-left: 16px; background: rgba(255,255,255,0.5); }
	.hm-r-entry:hover::before { height: calc(100% - 24px); }
	.hm-r-entry__type {
		font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-red);
		display: flex; align-items: center; gap: 8px;
	}
	.hm-r-entry__type::before {
		content: ''; display: inline-block;
		width: 16px; height: 2px; background: var(--hmr-red);
	}
	.hm-r-entry__title {
		font-size: clamp(17px, 1.5vw, 22px); line-height: 1.3;
		font-weight: 600; color: var(--hmr-ink); letter-spacing: -0.005em;
	}
	.hm-r-entry__meta { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 6px; }
	.hm-r-entry__chip { font-size: 10.5px; letter-spacing: 0.06em; color: var(--hmr-mute); text-transform: uppercase; font-weight: 500; }
	.hm-r-entry__chip--country { color: var(--hmr-ink); font-weight: 600; }
	.hm-r-entry__date {
		font-size: 12px; letter-spacing: 0.04em; color: var(--hmr-mute);
		text-align: right; font-variant-numeric: tabular-nums;
	}
	.hm-r-entry.is-hidden { display: none; }

	.hm-r-ledger__empty {
		text-align: center; padding: clamp(48px, 8vw, 96px) 24px;
		max-width: 700px; margin: 0 auto;
	}
	.hm-r-ledger__empty-mark {
		font-size: clamp(96px, 18vw, 280px); line-height: 0.85;
		font-weight: 800; letter-spacing: -0.04em; color: var(--hmr-ink);
		opacity: 0.06; margin-bottom: -0.2em;
	}
	.hm-r-ledger__empty-stamp {
		display: inline-block; font-size: 11px; letter-spacing: 0.32em;
		text-transform: uppercase; color: var(--hmr-red); font-weight: 700;
		padding: 10px 18px; border: 1.5px solid var(--hmr-red);
		border-radius: 2px; margin-bottom: 18px;
	}
	.hm-r-ledger__empty-headline {
		font-size: clamp(20px, 2.2vw, 28px); line-height: 1.2;
		font-weight: 700; color: var(--hmr-ink); margin: 0 0 12px;
	}
	.hm-r-ledger__empty-lead { font-size: 14px; line-height: 1.55; color: var(--hmr-mute); margin: 0; }

	/* ============================================================
	 * §7 CTA
	 * ============================================================ */
	.elementor .hm-r-cta {
		background: var(--hmr-dark);
		padding: 48px clamp(20px, 5vw, 80px) !important;
		text-align: center;
		color: #fff;
		border-top: 1px solid rgba(255,255,255,0.06);
	}
	.hm-r-cta__inner { max-width: 720px; margin: 0 auto; }
	.hm-r-cta h2 {
		font-size: clamp(24px, 2.8vw, 36px); line-height: 1.1;
		font-weight: 800; letter-spacing: -0.018em; color: #fff;
		margin: 0 0 14px;
	}
	.hm-r-cta p {
		font-size: 16px; line-height: 1.55; color: rgba(255,255,255,0.7);
		margin: 0 0 32px;
	}
	.hm-r-cta__btn {
		display: inline-block;
		font-size: 13px; letter-spacing: 0.18em; text-transform: uppercase;
		font-weight: 700; color: #fff; text-decoration: none;
		padding: 16px 32px; background: var(--hmr-red);
		border: 1.5px solid var(--hmr-red);
		transition: all 0.2s ease;
	}
	.hm-r-cta__btn:hover { background: transparent; }

	/* ============================================================
	 * RESPONSIVE
	 * ============================================================ */
	@media (max-width: 1024px) {
		.hm-r-stats { grid-template-columns: repeat(2, 1fr); gap: 32px; }
		.hm-r-spotlight__inner { grid-template-columns: 1fr; min-height: 0; }
		.hm-r-spotlight__cover { min-height: 360px; }
		.hm-r-recent__grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; min-height: 0; }
		.hm-r-rcard.is-large { grid-column: 1 / -1; grid-row: auto; }
		.hm-r-bytheme__band { grid-template-columns: 1fr; gap: 24px; }
		.hm-r-bytheme__band-cards { grid-template-columns: repeat(3, 1fr); }
		.hm-r-ledger__year { grid-template-columns: 1fr; gap: 12px; }
		.hm-r-ledger__year-label { position: static; }
	}
	@media (max-width: 768px) {
		.hm-r-recent__grid { grid-template-columns: 1fr; }
		.hm-r-bytheme__band-cards { grid-template-columns: 1fr; }
		.hm-r-tcard { flex: 0 0 240px; }
		.hm-r-entry { grid-template-columns: 100px 1fr; }
		.hm-r-entry__date { grid-column: 1 / -1; text-align: left; }
		.hm-r-filterbar__row { flex-direction: column; align-items: flex-start; gap: 8px; }
		.hm-r-filterbar__label { flex: 0 0 auto; padding-top: 0; }
	}
	@media (max-width: 600px) {
		.hm-r-stats { grid-template-columns: 1fr 1fr; }
		.hm-r-tcard { flex: 0 0 200px; }
		.hm-r-entry { grid-template-columns: 1fr; gap: 8px; }
	}
	/* Accessibility: keyboard focus indicators */
	body.page-id-5811 .hm-r-filterbar [tabindex="0"]:focus-visible {
		outline: 3px solid var(--hmr-orange) !important;
		outline-offset: -3px !important;
		z-index: 10;
		position: relative;
	}
	body.page-id-5811 .screen-reader-text {
		position: absolute !important;
		clip: rect(1px, 1px, 1px, 1px);
		width: 1px; height: 1px;
		overflow: hidden; word-wrap: normal !important;
	}

	/* === LEDGER: paginated by year === */
	body.page-id-5811 .hm-r-entry--overflow { display: none; }
	body.page-id-5811 .hm-r-ledger__year.is-expanded .hm-r-entry--overflow { display: grid; }

	body.page-id-5811 .hm-r-ledger__expand {
		display: inline-flex; align-items: center;
		margin-top: 16px; padding: 10px 0;
		font-size: 11.5px; letter-spacing: 0.18em; text-transform: uppercase;
		font-weight: 700; color: var(--hmr-red);
		background: transparent; border: 0; cursor: pointer;
		transition: opacity 0.18s ease;
	}
	body.page-id-5811 .hm-r-ledger__expand:hover { opacity: 0.7; }
	body.page-id-5811 .hm-r-ledger__expand .hm-r-ledger__collapse-label { display: none; }
	body.page-id-5811 .hm-r-ledger__year.is-expanded .hm-r-ledger__expand-label { display: none; }
	body.page-id-5811 .hm-r-ledger__year.is-expanded .hm-r-ledger__collapse-label { display: inline; }

	/* === CARD OVERLAY PATTERN — clickable chips inside clickable card === */
	body.page-id-5811 .hm-r-rcard,
	body.page-id-5811 .hm-r-tcard,
	body.page-id-5811 .hm-r-bcard,
	body.page-id-5811 .hm-r-entry,
	.hm-bucket-card {
		position: relative;
	}
	.hm-r-card-overlay {
		position: absolute; inset: 0; z-index: 1;
		text-decoration: none; color: transparent;
		font-size: 1px; /* hide any text content if accidentally rendered */
	}
	.hm-r-chip-link {
		position: relative; z-index: 2;
		text-decoration: none;
	}
	.hm-r-chip-link:hover {
		text-decoration: underline;
		text-underline-offset: 3px;
	}
	/* Ensure entry title + meta stay above overlay (they need pointer-events through to overlay though) */
	body.page-id-5811 .hm-r-entry__title,
	body.page-id-5811 .hm-r-entry__date,
	body.page-id-5811 .hm-r-rcard__title,
	body.page-id-5811 .hm-r-tcard__title,
	body.page-id-5811 .hm-r-bcard__title,
	.hm-bucket-card__title { position: relative; z-index: 0; pointer-events: none; }
	/* Keep card hover transform on the wrapper div */
	body.page-id-5811 .hm-r-rcard:hover,
	body.page-id-5811 .hm-r-tcard:hover,
	body.page-id-5811 .hm-r-bcard:hover,
	.hm-bucket-card:hover { transform: translateY(-3px); }
