/**
 * OBF Article Detail — Inside-Article / Signal-Detail screen design
 * (OBF Website Screens (Mobile).html → "Article / Inside page · /theme/headline").
 *
 * Covers: breadcrumb, category kicker, display title, meta row, share bar,
 * "Listen to this article" player, text-size control, tag pills.
 * Body copy + quotes live in content-typography.css.
 */

/* ---------------------------------------------------------------------------
 * 0. Breadcrumb — gray links, chevron separators, accent current item
 * ------------------------------------------------------------------------- */
/* Applies to both the single-post bar and the archive/category header. */
html body .empath__breadcrumb-single,
html body .empath__breadcrumb-wrapper {
	background: var(--obf-surface);
	background-image: none !important;
	padding: 0;
	border-bottom: 1px solid var(--obf-hairline);
	text-align: left;
}

html body .empath__breadcrumb-single .empath__bacrumb-inner ul,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul {
	display: flex;
	align-items: center;
	gap: 7px;
	flex-wrap: nowrap;
	white-space: nowrap;
	overflow-x: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding: 13px 0;
	margin: 0;
}

html body .empath__breadcrumb-single .empath__bacrumb-inner ul::-webkit-scrollbar,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul::-webkit-scrollbar {
	display: none;
}

html body .empath__breadcrumb-single .empath__bacrumb-inner ul li,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul li {
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0;
	font: 600 12px/1 var(--obf-sans);
	letter-spacing: 0.01em;
	color: var(--obf-gray-40);
	flex: 0 0 auto;
}

html body .empath__breadcrumb-single .empath__bacrumb-inner ul li a,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul li a {
	color: var(--obf-gray-40);
	font-weight: 600;
	text-decoration: none;
}

html body .empath__breadcrumb-single .empath__bacrumb-inner ul li a:hover,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul li a:hover {
	color: var(--obf-ink);
}

/* Chevron between crumbs (replaces the theme's FontAwesome ">") */
html body .empath__breadcrumb-single .empath__bacrumb-inner ul li::after,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul li::after {
	content: "";
	position: static;
	width: 6px;
	height: 6px;
	margin-left: 9px;
	border-right: 2px solid #999;
	border-bottom: 2px solid #999;
	transform: rotate(-45deg);
	font-family: inherit;
}

html body .empath__breadcrumb-single .empath__bacrumb-inner ul li:last-child::after,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul li:last-child::after {
	display: none;
}

/* Current page (last crumb, no link) → accent, bold */
html body .empath__breadcrumb-single .empath__bacrumb-inner ul li:last-child,
html body .empath__breadcrumb-wrapper .empath__bacrumb-inner ul li:last-child {
	font-weight: 700;
	color: var(--obf-accent);
	max-width: 60vw;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	display: inline-block;
}

/* Archive/category title — compact left-aligned heading (no giant banner). */
html body .empath__breadcrumb-wrapper .bar__title {
	margin: 0;
	text-align: left;
}

html body .empath__breadcrumb-wrapper .bar__title h2 {
	margin: 18px 0 20px;
	font: 800 32px/1.1 var(--obf-sans);
	letter-spacing: -0.02em;
	color: var(--obf-ink);
}

/* ---------------------------------------------------------------------------
 * 1. Title block — kicker, H1, meta row
 * ------------------------------------------------------------------------- */
.single__one_top .obf-article-kicker {
	display: inline-block;
	font: 700 11px/1 var(--obf-sans);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--obf-accent);
	text-decoration: none;
	margin-bottom: 16px;
}

.single__one_top .obf-article-kicker:hover {
	color: var(--obf-accent-dark);
}

html body .single__one_top .single_title h1 {
	margin: 0;
	font-family: var(--obf-sans) !important;
	font-weight: 800;
	font-size: 40px;
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--obf-ink);
	text-wrap: balance;
}

@media (min-width: 768px) {
	html body .single__one_top .single_title h1 {
		text-wrap: pretty;
	}
}

/* Widen the article header on desktop so typical headlines sit on one line
 * (the theme caps .single__one_top at 950px, which forces long titles to wrap).
 * The intro/excerpt keeps a comfortable reading measure. */
@media (min-width: 1200px) {
	html body .single__one_top {
		max-width: 1160px;
	}
	html body .single__one_top .single_title h1 {
		font-size: 40px;
	}
	html body .single__one_top .post_excerpt p {
		max-width: 860px;
	}
}

/* Stack order: kicker/title → excerpt → date. The theme prints the date meta
 * row above the excerpt; flex-ordering drops the date beneath the intro. */
.single__one_top {
	display: flex;
	flex-direction: column;
}

.single__one_top .single_title {
	order: 1;
}

.single__one_top .post_excerpt {
	order: 2;
	margin-top: 18px;
}

.single__one_top .singe__post-meta {
	order: 3;
}

/* Meta row: uppercase 600/12 grey, dot separators, no icons */
.single__one_top .singe__post-meta {
	margin-top: 14px;
}

.single__one_top .singe__post-meta .bytf__postmeta ul {
	gap: 10px;
	flex-wrap: wrap;
}

.single__one_top .singe__post-meta .bytf__postmeta ul li {
	font: 600 12px/1.4 var(--obf-sans);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--obf-gray-40);
	margin-right: 0;
	padding-right: 0;
}

.single__one_top .singe__post-meta .bytf__postmeta ul li::after {
	content: none;
}

.single__one_top .singe__post-meta .bytf__postmeta ul li + li::before {
	content: "";
	display: inline-block;
	width: 3px;
	height: 3px;
	border-radius: var(--obf-r-pill);
	background: var(--obf-gray-20);
	vertical-align: middle;
	margin-right: 10px;
}

.single__one_top .singe__post-meta .bytf__postmeta ul li i.fal.fa-calendar {
	display: none;
}

.single__one_top .singe__post-meta .bytf__postmeta ul li.authore a {
	font: 600 12px/1.4 var(--obf-sans);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--obf-accent);
}

/* Designation is shown in the author-bio box below the article, not in the
 * byline meta row. */
.single__one_top .singe__post-meta .authore__designation {
	display: none;
}

/* ---------------------------------------------------------------------------
 * 2. Share bar — "Share" label + brand-filled circles, orange-outline utility
 * ------------------------------------------------------------------------- */
.single__top-social .social-box {
	border: 0;
	padding: 14px 0;
	border-top: 1px solid var(--obf-hairline);
	border-bottom: 1px solid var(--obf-hairline);
}

/* Header share bar (below the intro): drop the hairline directly above the
 * share buttons — keep only the lower divider before the featured image. */
html body .single__top-wrapper .single__top-social .social-box {
	border-top: 0;
	padding-top: 0;
}

.single__top-social .share-wrap {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.share-wrap .share-title {
	display: none;
}

/* Base circle */
html body .single__top-social .share-wrap a,
html body .single__top-social .share-wrap .cl,
html body .single__top-social .share-wrap .empath-print-btn {
	width: 38px;
	height: 38px;
	line-height: 38px;
	margin-left: 0;
	padding: 0;
	border: 0;
	border-radius: var(--obf-r-pill);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	color: #fff;
	background: var(--obf-gray-80);
	cursor: pointer;
	transition: transform 0.15s ease, opacity 0.15s ease;
	vertical-align: middle;
}

html body .single__top-social .share-wrap a:hover,
html body .single__top-social .share-wrap .cl:hover {
	transform: translateY(-1px);
	opacity: 0.88;
	color: #fff;
}

/* Brand fills */
html body .single__top-social .share-wrap .ln {
	background: var(--obf-li);
	border-color: var(--obf-li);
	color: #fff;
}

html body .single__top-social .share-wrap .tw {
	background: #000;
	border-color: #000;
	color: #fff;
}

html body .single__top-social .share-wrap .fb {
	background: var(--obf-fb);
	border-color: var(--obf-fb);
	color: #fff;
}

html body .single__top-social .share-wrap .wh {
	background: var(--obf-wa);
	border-color: var(--obf-wa);
	color: #fff;
}

/* Orange-outline utility buttons: Email + Copy link */
html body .single__top-social .share-wrap .em,
html body .single__top-social .share-wrap .cl {
	background: transparent;
	box-shadow: inset 0 0 0 2px var(--obf-accent);
	color: var(--obf-accent);
}

html body .single__top-social .share-wrap .em:hover,
html body .single__top-social .share-wrap .cl:hover,
html body .single__top-social .share-wrap .cl.is-copied {
	background: var(--obf-accent);
	color: #fff;
	opacity: 1;
}

.share-wrap a svg,
.share-wrap .cl svg {
	display: inline-block;
	vertical-align: middle;
}

/* Header share bar drops below the intro (title/meta/excerpt) and sits
 * left-aligned, matching the reference "Share This Article" row. The theme
 * lays the header out as a flex row and pushes .single__top-social right with
 * margin-left:auto — both are overridden here. */
.single__top-wrapper {
	display: block;
}

html body .single__top-social {
	margin-left: 0;
}

.single__top-wrapper > .single__top-social {
	margin-top: 4px;
}

html body .single__top-social .share-wrap {
	justify-content: flex-start;
}

/* Footer share bar (below the article) is left-aligned too. */
html body .single__footer-wrapper .single__top-social {
	margin-left: 0;
	margin-right: auto;
	width: 100%;
}

html body .single__footer-wrapper .single__top-social .share-wrap {
	justify-content: flex-start;
}

/* ---------------------------------------------------------------------------
 * 2b–3. Article toolbar — Listen + Text size (side by side on desktop)
 * ------------------------------------------------------------------------- */
.obf-article-tools {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
	margin: 22px 0;
	width: 100%;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.obf-article-tools {
		flex-direction: row;
		justify-content: flex-end;
		align-items: center;
		gap: 14px;
		margin: 18px 0 20px;
	}

	.obf-article-tools .obf-textsize {
		flex: 0 0 auto;
		padding-left: 0;
	}
}

.obf-listen {
	margin: 0;
}

.obf-listen__card {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 14px;
	height: 100%;
	min-height: 74px;
	box-sizing: border-box;
	background: var(--obf-surface);
	border: 1px solid var(--obf-hairline);
	border-radius: var(--obf-r-border, 6px);
}

.obf-listen__btn {
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 0;
	border-radius: var(--obf-r-pill);
	background: var(--obf-accent);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: opacity 0.15s ease;
}

.obf-listen__btn:hover {
	opacity: 0.9;
}

.obf-listen__btn .obf-listen__ico-play {
	width: 0;
	height: 0;
	border-left: 14px solid #fff;
	border-top: 9px solid transparent;
	border-bottom: 9px solid transparent;
	margin-left: 3px;
}

.obf-listen__btn .obf-listen__ico-pause {
	display: none;
	gap: 4px;
}

.obf-listen__btn .obf-listen__ico-pause::before,
.obf-listen__btn .obf-listen__ico-pause::after {
	content: "";
	width: 4px;
	height: 16px;
	background: #fff;
}

.obf-listen.is-playing .obf-listen__ico-play {
	display: none;
}

.obf-listen.is-playing .obf-listen__ico-pause {
	display: flex;
}

.obf-listen__meta {
	flex: 1;
	min-width: 0;
}

.obf-listen__title {
	font: 600 13px/1.3 var(--obf-sans);
	color: var(--obf-ink);
}

.obf-listen__track {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 8px;
}

.obf-listen__bar {
	flex: 1;
	height: 4px;
	border-radius: var(--obf-r-pill);
	background: var(--obf-border-card, #e2e0dd);
	overflow: hidden;
}

.obf-listen__fill {
	display: block;
	width: 0;
	height: 100%;
	background: var(--obf-accent);
	transition: width 0.2s linear;
}

.obf-listen__time {
	font: 600 11px/1 var(--obf-sans);
	color: var(--obf-gray-40);
	flex: 0 0 auto;
	font-variant-numeric: tabular-nums;
}

/* ---------------------------------------------------------------------------
 * 3. Text size control (A A A) above the article body
 * ------------------------------------------------------------------------- */
.obf-textsize {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	margin: 0;
}

.obf-textsize__label {
	font: 600 11px/1 var(--obf-sans);
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--obf-gray-40);
}

.obf-textsize__group {
	display: flex;
	gap: 6px;
}

.obf-textsize__btn {
	width: 32px;
	height: 32px;
	padding: 0;
	border: 1px solid var(--obf-border-card);
	border-radius: var(--obf-r-pill);
	background: var(--obf-surface);
	color: var(--obf-gray-80);
	font-family: var(--obf-sans);
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: 0.15s ease;
}

.obf-textsize__btn--s { font-size: 11px; }
.obf-textsize__btn--m { font-size: 13px; }
.obf-textsize__btn--l { font-size: 16px; }
.obf-textsize__btn--xl { font-size: 19px; }

.obf-textsize__btn:hover {
	border-color: var(--obf-accent);
	color: var(--obf-accent);
}

.obf-textsize__btn.is-active {
	background: var(--obf-row-hover);
	border-color: var(--obf-accent);
	color: var(--obf-accent);
}

/* Reader text scale — CSS variables so quotes inherit the same size as body copy. */
html body .entry-content.empath__single-content {
	--obf-reader-body: 18px;
}

html body .entry-content.empath__single-content.obf-fs-s {
	--obf-reader-body: 16px;
}

html body .entry-content.empath__single-content.obf-fs-l {
	--obf-reader-body: 20px;
}

html body .entry-content.empath__single-content.obf-fs-xl {
	--obf-reader-body: 22px;
}

html body .entry-content.empath__single-content :is(p, ul, ol, li) {
	font-size: var(--obf-reader-body) !important;
}

/* Pull quotes — same family/size/weight as body; italic only. */
html body .entry-content.empath__single-content :is(
	blockquote:not(.wp-block-pullquote blockquote),
	.wp-block-quote,
	.wp-block-pullquote
) :is(p, em),
html body .entry-content.empath__single-content :is(
	blockquote:not(.wp-block-pullquote blockquote),
	.wp-block-quote,
	.wp-block-pullquote
) p em {
	font-family: var(--obf-sans) !important;
	font-weight: 300 !important;
	font-style: italic !important;
	font-size: var(--obf-reader-body) !important;
	line-height: 1.68 !important;
	color: var(--obf-ink-body) !important;
}

/* ---------------------------------------------------------------------------
 * 4. Tag pills — rendered after the article body
 * ------------------------------------------------------------------------- */

/* The theme's own footer tag list is replaced by .obf-article-tags. */
html body .single__footer-wrapper .post_tags {
	display: none;
}

.obf-article-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 28px 0;
	padding: 22px 0 0;
	border-top: 1px solid var(--obf-hairline);
}

html body .obf-article-tags a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: auto;
	max-width: 100%;
	min-height: 38px;
	padding: 0 16px;
	box-sizing: border-box;
	background: var(--obf-panel);
	border: 1px solid var(--obf-hairline);
	border-radius: var(--obf-r-pill);
	font: 600 13px/1 var(--obf-sans);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--obf-gray-80);
	text-decoration: none !important;
	white-space: nowrap;
}

html body .obf-article-tags a:hover {
	background: var(--obf-row-hover);
	border-color: var(--obf-accent);
	color: var(--obf-accent);
}

/* First tag gets the accent treatment, per the design */
html body .obf-article-tags a:first-child {
	background: var(--obf-row-hover);
	border-color: var(--obf-accent);
	font-weight: 700;
	color: var(--obf-accent);
}

/* Footer share bar (kept below the article): trim theme borders */
html body .single__footer-wrapper {
	border: 0;
	padding: 0;
}

/* Footer share + recent posts — same centered measure as the article column. */
html body.obf-article-detail-page .single__footer-wrapper {
	box-sizing: border-box;
}

.single__footer-wrapper .single__top-social .social-box {
	border-top: 0;
	border-bottom: 1px solid var(--obf-hairline);
	padding: 0 0 14px;
}

/* ---------------------------------------------------------------------------
 * 5. Author row — sits below the featured image (avatar + name + designation).
 *    The author is therefore removed from the top meta row, which keeps only
 *    the publish date.
 * ------------------------------------------------------------------------- */
.single__one_top .singe__post-meta .bytf__postmeta ul li.authore {
	display: none;
}

/* No leading dot separator now that the (hidden) author is the first item. */
.single__one_top .singe__post-meta .bytf__postmeta ul li.authore + li::before {
	content: none;
}

.obf-podcast-intro {
	margin: 0 0 24px;
	font: 400 16px/1.6 var(--obf-sans, "Public Sans", sans-serif);
	color: var(--obf-gray-40, #4a4a4a);
}

.obf-article-author {
	margin: 0 0 24px;
	padding: 0 0 20px;
	border-bottom: 1px solid var(--obf-hairline);
	width: 100%;
	box-sizing: border-box;
}

html body .obf-article-author__link {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 13px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	text-decoration: none !important;
	color: inherit;
	cursor: default;
	pointer-events: none;
}

/* Theme byline / leftover author anchors — never open author archive. */
html body.obf-article-detail-page .singe__post-meta .bytf__postmeta ul li.authore a,
html body.obf-article-detail-page .obf-author-bio__name a,
html body.obf-article-detail-page .obf-article-author a {
	pointer-events: none;
	cursor: default;
	text-decoration: none !important;
	color: inherit !important;
}

/* Fixed circular frame — never shrink in the flex row, or the avatar squashes
 * into an oval when the designation text is long. */
.obf-article-author__avatar {
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	overflow: hidden;
	display: block;
}

.obf-article-author__avatar img {
	width: 52px !important;
	height: 52px !important;
	max-width: none;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.obf-article-author__id {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.obf-article-author__name {
	font: 700 15px/1.2 var(--obf-sans);
	color: var(--obf-ink);
}

.obf-article-author__role {
	margin-top: 3px;
	font: 300 13px/1.4 var(--obf-sans);
	color: var(--obf-gray-60);
}

/* Shared article measure — title, hero, body, footer share, and recent posts. */
html body.obf-article-detail-page {
	--obf-article-measure: 70%;
}

html body.obf-article-detail-page .single__top-wrapper,
html body.obf-article-detail-page .post__thumb-single,
html body.obf-article-detail-page .entry-content.empath__single-content .obf-article-column,
html body.obf-article-detail-page .single__footer-wrapper,
html body.obf-article-detail-page.obf-has-recent-sidebar .single__post-article > .row:last-child > .col-xl-4 {
	width: var(--obf-article-measure);
	max-width: var(--obf-article-measure);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

/* Text size, author, and prose share one centered column below the featured image. */
html body .entry-content.empath__single-content .obf-article-column {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

html body .entry-content.empath__single-content .obf-article-column .obf-article-tools,
html body .entry-content.empath__single-content .obf-article-column .obf-article-author,
html body .entry-content.empath__single-content .obf-article-column .obf-article-body,
html body .entry-content.empath__single-content .obf-article-column .obf-editorial-intro,
html body .entry-content.empath__single-content .obf-article-column .obf-article-tags,
html body .entry-content.empath__single-content .obf-article-column .obf-author-bio {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

html body .entry-content.empath__single-content .obf-article-column .obf-article-body {
	width: 100%;
	max-width: 100%;
}

html body .entry-content.empath__single-content .obf-article-column .obf-article-body > :first-child {
	margin-top: 0;
}

html body .entry-content.empath__single-content .obf-article-column .obf-article-body :is(p, ul, ol, blockquote, h2, h3, h4) {
	max-width: 100%;
}

html body.obf-article-detail-page .obf-article-column :is(figure, img, table, video, .wp-block-image) {
	max-width: 100% !important;
	height: auto;
}

html body.obf-article-detail-page .obf-article-column iframe {
	max-width: 100% !important;
}

/* YouTube / oEmbed — keep 16:9 height (height:auto collapses iframes). */
html body.obf-article-detail-page .obf-article-column .wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
}

html body.obf-article-detail-page .obf-article-column .wp-block-embed.wp-has-aspect-ratio iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

html body.obf-article-detail-page .obf-article-column .wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper::before {
	content: none;
	display: none;
}

html body.obf-article-detail-page .obf-article-column [data-e-type="e-youtube"] {
	aspect-ratio: 16 / 9;
	width: 100%;
}

html body.obf-article-detail-page .obf-article-column [data-e-type="e-youtube"] iframe {
	width: 100%;
	height: 100%;
	border: 0;
}

html body.obf-article-detail-page .obf-article-column figure {
	margin-left: 0;
	margin-right: 0;
}

@media (max-width: 767px) {
	html body.obf-article-detail-page {
		--obf-article-measure: 100%;
	}
}

/* In-article images with optional mobile art direction (core/image + obfMobileId). */
.obf-responsive-image picture {
	display: block;
	width: 100%;
}

/*
 * Desktop/mobile art-direction often differs (landscape vs portrait).
 * Aspect ratios come from --obf-img-ar / --obf-img-ar-mobile on the figure.
 */
.obf-responsive-image .obf-responsive-image__img,
.obf-responsive-image img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto !important;
	aspect-ratio: var(--obf-img-ar, auto);
	object-fit: contain;
}

@media (max-width: 991px) {
	.obf-responsive-image .obf-responsive-image__img,
	.obf-responsive-image img {
		aspect-ratio: var(--obf-img-ar-mobile, var(--obf-img-ar, auto));
	}
}

/* ---------------------------------------------------------------------------
 * 5b. Editorial intro — optional “Why This Voice Matters” (after author bio)
 * ------------------------------------------------------------------------- */
.obf-editorial-intro {
	margin: 0 0 28px;
	padding: 20px 22px 22px;
	border: 1px solid var(--obf-hairline);
	border-left: 4px solid var(--obf-accent);
	border-radius: var(--obf-r-border, 6px);
	background: var(--obf-surface, #fff);
}

.obf-editorial-intro__title {
	margin: 0 0 10px;
	font: 700 11px/1.2 var(--obf-sans);
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--obf-accent);
}

.obf-editorial-intro__body {
	font: 300 16px/1.65 var(--obf-sans);
	color: var(--obf-ink-body, #333);
}

.obf-editorial-intro__body p {
	margin: 0 0 0.75em;
}

.obf-editorial-intro__body p:last-child {
	margin-bottom: 0;
}

/* ---------------------------------------------------------------------------
 * 5b2. Key Takeaways — after editorial intro, before article body
 * ------------------------------------------------------------------------- */
.obf-key-takeaways {
	margin: 0 0 28px;
	padding: 20px 22px 22px;
	border: 1px solid var(--obf-hairline);
	border-left: 4px solid var(--obf-ink, #141414);
	border-radius: var(--obf-r-border, 6px);
	background: var(--obf-panel, #fafafa);
}

.obf-key-takeaways__title {
	margin: 0 0 10px;
	font: 700 11px/1.2 var(--obf-sans);
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--obf-ink, #141414);
}

.obf-key-takeaways__body {
	font: 300 16px/1.65 var(--obf-sans);
	color: var(--obf-ink-body, #333);
}

.obf-key-takeaways__body p {
	margin: 0 0 0.75em;
}

.obf-key-takeaways__body p:last-child {
	margin-bottom: 0;
}

.obf-key-takeaways__body ul {
	margin: 0 0 0.75em;
	padding-left: 1.2em;
}

.obf-key-takeaways__body li {
	margin: 0 0 0.4em;
}

/* ---------------------------------------------------------------------------
 * 5c. Article disclaimer — after body, before author bio
 * ------------------------------------------------------------------------- */
.obf-article-disclaimer {
	margin: 28px 0 0;
	padding: 18px 20px 20px;
	border: 1px solid var(--obf-hairline);
	border-radius: var(--obf-r-border, 6px);
	background: var(--obf-panel, #fafafa);
}

.obf-article-disclaimer__title {
	margin: 0 0 8px;
	font: 700 11px/1.2 var(--obf-sans);
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--obf-gray-40, #777);
}

.obf-article-disclaimer__body {
	font: 300 14px/1.6 var(--obf-sans);
	color: var(--obf-gray-60, #666);
}

.obf-article-disclaimer__body p {
	margin: 0 0 0.65em;
}

.obf-article-disclaimer__body p:last-child {
	margin-bottom: 0;
}

.obf-editorial-intro__body em,
.obf-key-takeaways__body em,
.obf-article-disclaimer__body em {
	font-style: italic;
}

.obf-editorial-intro__body strong,
.obf-key-takeaways__body strong,
.obf-article-disclaimer__body strong {
	font-weight: 700;
}

.obf-editorial-intro__body a,
.obf-key-takeaways__body a,
.obf-article-disclaimer__body a {
	color: var(--obf-accent);
	text-decoration: underline;
}

/* ---------------------------------------------------------------------------
 * 6. Recent Post block — below the article (full-width layout)
 * ------------------------------------------------------------------------- */
body.obf-has-recent-sidebar .single__post-article > .row:last-child {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
}

body.obf-has-recent-sidebar .single__post-article > .row:last-child > .col-xl-8,
body.obf-has-recent-sidebar .single__post-article > .row:last-child > .col-lg-10,
body.obf-has-recent-sidebar .single__post-article > .row:last-child > .col-lg-12 {
	order: 1;
	flex: 0 0 100%;
	width: 100%;
	max-width: 100%;
}

body.obf-has-recent-sidebar .single__post-article > .row:last-child > .col-xl-4 {
	order: 2;
	flex: 0 0 var(--obf-article-measure, 70%);
	width: var(--obf-article-measure, 70%);
	max-width: var(--obf-article-measure, 70%);
	margin: 48px auto 0 !important;
	box-sizing: border-box;
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper {
	position: static;
	top: auto;
	margin-top: 0;
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper .empath__sidebar-item,
body.obf-has-recent-sidebar .empath__siderbar-wrapper .widget_empath_recent_posts,
body.obf-has-recent-sidebar .empath__siderbar-wrapper .obf-recent-posts-widget,
body.obf-has-recent-sidebar .empath__siderbar-wrapper .news-widget,
body.obf-has-recent-sidebar .empath__siderbar-wrapper .recent-post-widget {
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	width: 100%;
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper .widget-title {
	margin: 0 0 20px;
	padding: 0 0 14px;
	border-bottom: 1px solid var(--obf-hairline);
	font: 800 22px/1.1 var(--obf-sans);
	letter-spacing: -0.01em;
	color: var(--obf-ink);
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper .empath__recent-post-area {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
	width: 100%;
}

@media (min-width: 768px) {
	body.obf-has-recent-sidebar .empath__siderbar-wrapper .empath__recent-post-area {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	/* Fill the row — 3 or 4 cards expand to the full container width. */
	body.obf-has-recent-sidebar .empath__siderbar-wrapper .empath__recent-post-area:has(.obf-recent-post-card:nth-child(3):last-child) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.obf-has-recent-sidebar .empath__siderbar-wrapper .empath__recent-post-area:has(.obf-recent-post-card:nth-child(4)) {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (min-width: 1200px) {
	html body .single__one_top {
		max-width: none;
	}
}

/* Sidebar cards reuse archive listing markup — inherit site-wide card hover from site-chrome.css. */
body.obf-has-recent-sidebar .empath__siderbar-wrapper .obf-recent-posts-widget .bytf__post-grid-clm-item.search__page-post-item {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	width: 100%;
	margin: 0;
}

/* Sidebar Tags widget — uniform pills (not WP tag-cloud font sizes). */
body.obf-has-recent-sidebar .empath__siderbar-wrapper .widget_tag_cloud {
	margin-top: 28px;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper .widget_tag_cloud .widget-title {
	margin: 0 0 16px;
	padding: 0 0 14px;
	border-bottom: 1px solid var(--obf-hairline);
	font: 800 22px/1.1 var(--obf-sans);
	letter-spacing: -0.01em;
	color: var(--obf-ink);
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper .widget_tag_cloud .tagcloud {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	line-height: 1;
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper .widget_tag_cloud .tagcloud a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 14px;
	background: var(--obf-panel, #f7f6f4);
	border: 1px solid var(--obf-hairline, #efeeec);
	border-radius: var(--obf-r-pill, 999px);
	font: 600 11px/1.25 var(--obf-sans) !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--obf-gray-80, #57534e) !important;
	text-decoration: none !important;
	white-space: normal;
	text-align: center;
}

body.obf-has-recent-sidebar .empath__siderbar-wrapper .widget_tag_cloud .tagcloud a:hover {
	background: var(--obf-row-hover, #fbf4ef);
	border-color: var(--obf-accent, #ef671f);
	color: var(--obf-accent, #ef671f) !important;
}

/* ---------------------------------------------------------------------------
 * Podcast/video detail — cover image is for cards/admin only; media lives in content.
 * ------------------------------------------------------------------------- */
html body.single-obf_podcast .post__thumb-single,
html body.single-obf_video .post__thumb-single {
	display: none !important;
}
