/* RIRI editorial reading experience: calm, source-led and deliberately narrow. */
.riri-section-heading--articles { margin-top: 8px; border-top: 1px solid var(--riri-line); }

.riri-article-stage {
	min-height: 72vh;
	background: #fcfaf8;
	border-top: 1px solid var(--riri-line);
}

.riri-article-frame {
	width: min(calc(100% - 48px), 900px);
	margin: 0 auto;
	padding: 28px 0 72px;
}

.riri-article-frame .riri-breadcrumb {
	margin: 0 0 28px;
}

.riri-article-page { max-width: 100%; }

.riri-article-hero {
	max-width: 820px;
	margin: 0 auto;
	padding: 0 0 36px;
	border-bottom: 1px solid var(--riri-line-dark);
}

.riri-article-hero h1 {
	max-width: 780px;
	margin: 12px 0 18px;
	color: var(--riri-ink);
	font-family: var(--riri-display);
	font-size: clamp(34px, 4.3vw, 56px);
	font-weight: 500;
	letter-spacing: -.075em;
	line-height: 1.24;
	text-wrap: pretty;
}

.riri-article-hero__lead {
	max-width: 710px;
	margin: 0;
	color: #4f474b;
	font-family: var(--riri-display);
	font-size: clamp(18px, 2vw, 21px);
	letter-spacing: -.035em;
	line-height: 1.75;
	text-wrap: pretty;
}

.riri-article-trust {
	display: flex;
	flex-wrap: wrap;
	gap: 7px 16px;
	margin: 24px 0 0;
	padding: 14px 0 0;
	border-top: 1px solid #e7e0de;
	color: #776c71;
	font-size: 11px;
	letter-spacing: .03em;
	line-height: 1.5;
	list-style: none;
}

.riri-article-trust li::before {
	content: '•';
	margin-right: 7px;
	color: var(--riri-plum);
}

.riri-article-prose {
	width: min(100%, 760px);
	margin: 0 auto;
	padding: 44px 0 30px;
	color: #393336;
	font-size: 17px;
	line-height: 2;
	text-wrap: pretty;
}

.riri-article-prose > *:first-child { margin-top: 0; }
.riri-article-prose p { margin: 0 0 1.45em; }
.riri-article-prose strong { color: #2d282b; font-weight: 700; }

.riri-article-prose h2 {
	margin: 2.55em 0 .72em;
	color: var(--riri-ink);
	font-family: var(--riri-display);
	font-size: clamp(25px, 3vw, 33px);
	font-weight: 600;
	letter-spacing: -.065em;
	line-height: 1.38;
	text-wrap: pretty;
	scroll-margin-top: 100px;
}

.riri-article-prose h3 {
	margin: 1.85em 0 .65em;
	color: var(--riri-plum-deep);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: -.02em;
	line-height: 1.6;
}

.riri-article-prose a {
	color: var(--riri-plum);
	font-weight: 700;
	text-decoration-color: #d9aebb;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

.riri-article-prose a:hover { color: var(--riri-plum-deep); }
.riri-article-prose a:focus-visible { outline: 2px solid var(--riri-plum); outline-offset: 3px; }

.riri-key-answer {
	margin: 0 0 38px;
	padding: 25px 28px 24px;
	border-top: 2px solid var(--riri-plum);
	border-bottom: 1px solid #e4d9da;
	background: #f7f1ef;
}

.riri-key-answer h2 {
	margin: 0 0 .65em;
	font-size: clamp(23px, 2.6vw, 29px);
}

.riri-key-answer p:last-child { margin-bottom: 0; }

.riri-fact-list {
	display: grid;
	gap: 0;
	margin: 0 0 1.7em;
	padding: 0;
	border-top: 1px solid #ded6d4;
	list-style: none;
}

.riri-fact-list li {
	position: relative;
	margin: 0;
	padding: 15px 6px 15px 24px;
	border-bottom: 1px solid #e7e0de;
}

.riri-fact-list li::before {
	position: absolute;
	left: 3px;
	top: 15px;
	color: var(--riri-plum);
	content: '—';
	font-weight: 700;
}

.riri-article-prose table {
	width: 100%;
	margin: 1.7em 0 2em;
	border-collapse: collapse;
	border-top: 2px solid var(--riri-ink);
	font-size: 14px;
	line-height: 1.75;
}

.riri-article-prose th,
.riri-article-prose td {
	padding: 14px 13px;
	border-bottom: 1px solid #ded6d4;
	vertical-align: top;
	text-align: left;
}

.riri-article-prose th {
	width: 23%;
	color: var(--riri-ink);
	background: #f5f0ee;
	font-size: 12px;
	font-weight: 700;
}

.riri-safety-note {
	margin: 42px 0 0;
	padding: 18px 21px;
	border: 1px solid #e1d6d5;
	background: #fbf8f6;
	color: #5f5659;
	font-size: 14px;
	line-height: 1.8;
}

.riri-safety-note p { margin: 0; }

.riri-article-references {
	margin: 42px 0 8px;
	padding: 25px 28px;
	border: 1px solid var(--riri-line-dark);
	background: #f6f1ef;
}

.riri-article-references h2,
.riri-article-references h3,
.riri-article-references > p:first-child {
	margin: 0 0 10px;
	color: var(--riri-ink);
	font-family: var(--riri-display);
	font-size: 21px;
	font-weight: 600;
	letter-spacing: -.045em;
}

.riri-article-references ul,
.riri-article-references ol {
	display: grid;
	gap: 8px;
	margin: 0;
	padding-left: 1.25em;
	font-size: 13px;
	line-height: 1.75;
}

/* Easy Table of Contents stays useful without stealing focus from the article. */
.riri-article-prose .ez-toc-container {
	width: auto !important;
	max-width: 100%;
	margin: 0 0 32px !important;
	padding: 15px 18px !important;
	border: 1px solid var(--riri-line) !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
}

.riri-article-prose .ez-toc-title { color: var(--riri-plum-deep); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.riri-article-prose .ez-toc-list { margin: 10px 0 0 !important; font-size: 13px; line-height: 1.75; }

.riri-article-stage .riri-source-card {
	max-width: 760px;
	margin: 36px auto 0;
}

@media (max-width: 780px) {
	.riri-article-frame { width: min(calc(100% - 32px), 900px); padding: 20px 0 48px; }
	.riri-article-frame .riri-breadcrumb { margin-bottom: 21px; }
	.riri-article-hero { padding-bottom: 27px; }
	.riri-article-hero h1 { font-size: 33px; letter-spacing: -.07em; }
	.riri-article-hero__lead { font-size: 17px; line-height: 1.72; }
	.riri-article-trust { gap: 5px 10px; padding-top: 12px; font-size: 10px; }
	.riri-article-prose { padding-top: 31px; font-size: 16px; line-height: 1.92; }
	.riri-article-prose h2 { margin-top: 2.15em; font-size: 25px; }
	.riri-key-answer { margin-bottom: 30px; padding: 20px 18px; }
	.riri-key-answer h2 { font-size: 23px; }
	.riri-fact-list li { padding: 13px 3px 13px 21px; }
	.riri-article-prose table { display: block; overflow-x: auto; white-space: normal; font-size: 13px; }
	.riri-article-prose th,
	.riri-article-prose td { min-width: 132px; padding: 11px 10px; }
	.riri-article-references { padding: 20px 18px; }
	.riri-safety-note { padding: 16px 17px; font-size: 13px; }
}
