/* Single article presentation. Loaded only for singular posts. */
.single-post .annas-article-main {
	overflow: clip;
}

.single-post .annas-article-shell {
	padding-block: clamp(28px, 4vw, 52px) var(--space-section);
}

.single-post .article-breadcrumb {
	margin-block-end: clamp(24px, 3vw, 38px);
	color: var(--annas-text-secondary);
	font-size: 13px;
}

.single-post .article-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.single-post .article-breadcrumb li {
	display: inline-flex;
	align-items: center;
	min-width: 0;
}

.single-post .article-breadcrumb li + li::before {
	content: "‹";
	margin-inline-end: 10px;
	color: #858b96;
}

.single-post .article-breadcrumb a:hover,
.single-post .article-breadcrumb a:focus-visible {
	color: var(--annas-blue-dark);
}

.single-post .article-breadcrumb [aria-current="page"] span {
	max-width: min(48ch, 55vw);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.single-post .annas-article-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: clamp(40px, 5vw, 76px);
	align-items: start;
}

.single-post .article-story,
.single-post .article-sidebar {
	min-width: 0;
}

.single-post .article-story-header {
	max-width: 920px;
}

.single-post .article-category-kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--annas-orange-ink);
	font-size: 13px;
	font-weight: 700;
}

.single-post .article-category-kicker::before {
	content: "";
	display: block;
	width: 22px;
	height: 3px;
	background: var(--annas-orange);
}

.single-post .article-story-title {
	max-width: 100%;
	margin-block: 15px 18px;
	font-family: "Readex Pro", system-ui, sans-serif;
	font-size: clamp(38px, 3.55vw, 54px);
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -.025em;
	text-wrap: pretty;
	overflow-wrap: anywhere;
}

.single-post .article-standfirst {
	max-width: 100%;
	margin: 0;
	color: #434852;
	font-size: clamp(18px, 1.6vw, 22px);
	line-height: 1.85;
}

.single-post .article-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 20px;
	margin-block-start: 30px;
	padding-block: 20px;
	border-block: 1px solid var(--annas-border);
	color: var(--annas-text-secondary);
	font-size: 12px;
}

.single-post .article-byline {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--annas-ink);
	font-weight: 600;
}

.single-post .article-author-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
	background: var(--annas-soft-blue);
}

.single-post .article-date-group {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 16px;
}

.single-post .article-meta-label {
	color: var(--annas-muted);
}

.single-post .article-share-controls {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.single-post .article-meta > .article-share-controls {
	margin-inline-start: auto;
}

.single-post .article-share-label {
	margin-inline-end: 3px;
	font-size: 12px;
}

.single-post .article-share-button,
.single-post .article-network-link {
	min-width: 44px;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 8px 10px;
	border: 1px solid var(--annas-border);
	background: #fff;
	color: var(--annas-ink);
	font: inherit;
	font-size: 12px;
	cursor: pointer;
}

.single-post .article-share-button[hidden] {
	display: none;
}

.single-post .article-network-link {
	padding: 8px;
	color: var(--annas-blue-dark);
	font-weight: 700;
}

.single-post .article-share-button:hover,
.single-post .article-share-button:focus-visible,
.single-post .article-network-link:hover,
.single-post .article-network-link:focus-visible {
	border-color: var(--annas-blue);
	background: var(--annas-soft-blue);
	color: var(--annas-blue-dark);
}

.single-post .article-share-button .icon {
	width: 17px;
	height: 17px;
}

.single-post .article-share-status {
	min-height: 1.5em;
	margin-block-start: 8px;
	color: var(--annas-blue-dark);
	font-size: 12px;
}

.single-post .article-lead-figure {
	max-width: 920px;
	margin: 28px 0 0;
}

.single-post .article-featured-image {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 760px;
	height: auto;
	margin-inline: auto;
	object-fit: contain;
	background: transparent;
}

.single-post .article-lead-figure figcaption,
.single-post .article-body figcaption {
	margin-block-start: 10px;
	color: var(--annas-muted);
	font-family: "Readex Pro", system-ui, sans-serif;
	font-size: 12px;
	line-height: 1.65;
}

.single-post .article-lead-figure figcaption {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
}

.single-post .article-photo-credit {
	color: var(--annas-text-secondary);
}

/* Gutenberg reading column. Selectors remain inside the single-post article body. */
.single-post .article-body {
	max-width: min(100%, 860px);
	padding-block-start: clamp(36px, 4vw, 56px);
	color: #292c32;
	font-family: Amiri, Georgia, serif;
	font-size: clamp(20px, 1.55vw, 22px);
	line-height: 1.94;
	overflow-wrap: break-word;
}

.single-post .article-body p {
	margin-block: 0;
}

.single-post .article-body > * {
	max-width: 100%;
}

.single-post .article-body > * + * {
	margin-block-start: 1.12em;
}

.single-post .article-body > * + p {
	margin-block-start: 1.12em;
}

.single-post .article-body h2,
.single-post .article-body h3,
.single-post .article-body h4 {
	max-width: 29ch;
	margin-block-end: .7em;
	color: var(--annas-ink);
	font-family: "Readex Pro", system-ui, sans-serif;
	font-weight: 700;
	line-height: 1.55;
	text-wrap: balance;
}

.single-post .article-body h2 {
	margin-block-start: 2em;
	font-size: clamp(25px, 2.25vw, 31px);
}

.single-post .article-body h3 {
	margin-block-start: 1.8em;
	font-size: clamp(21px, 1.8vw, 25px);
}

.single-post .article-body h4 {
	margin-block-start: 1.65em;
	font-size: clamp(18px, 1.5vw, 21px);
}

.single-post .article-body a {
	color: var(--annas-blue-dark);
	text-decoration: underline;
	text-decoration-color: #8d9bde;
	text-underline-offset: .16em;
}

.single-post .article-body a:hover,
.single-post .article-body a:focus-visible {
	text-decoration-color: var(--annas-orange-ink);
}

.single-post .article-body strong {
	font-weight: 700;
}

.single-post .article-body em {
	font-style: italic;
}

.single-post .article-body blockquote,
.single-post .article-body .wp-block-quote {
	margin-block: 1.8em;
	padding: .45em clamp(18px, 2vw, 30px);
	border: 0;
	border-inline-start: 4px solid var(--annas-orange);
	background: #f0f2f8;
	color: var(--annas-blue-dark);
	font-size: 1.14em;
	font-weight: 700;
	line-height: 1.8;
}

.single-post .article-body blockquote cite {
	display: block;
	margin-block-start: .8em;
	font-family: "Readex Pro", system-ui, sans-serif;
	font-size: .58em;
	font-style: normal;
	font-weight: 500;
}

.single-post .article-body ul,
.single-post .article-body ol {
	padding-inline-start: 1.45em;
}

.single-post .article-body li + li {
	margin-block-start: .35em;
}

.single-post .article-body li::marker {
	color: var(--annas-orange-ink);
}

.single-post .article-body figure,
.single-post .article-body .wp-block-image,
.single-post .article-body .wp-block-gallery,
.single-post .article-body .wp-block-embed,
.single-post .article-body .wp-block-video,
.single-post .article-body .wp-block-audio,
.single-post .article-body .wp-block-table {
	margin-block: 1.9em;
}

.single-post .article-body img,
.single-post .article-body video,
.single-post .article-body iframe,
.single-post .article-body embed,
.single-post .article-body object {
	max-width: 100%;
}

.single-post .article-body img,
.single-post .article-body video {
	height: auto;
}

.single-post .article-body .wp-block-image img,
.single-post .article-body figure img {
	width: auto;
	max-width: 100%;
	height: auto;
	object-fit: initial;
}

.single-post .article-body .wp-block-gallery {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.single-post .article-body .wp-block-gallery > * {
	min-width: 0;
}

.single-post .article-body .wp-block-embed__wrapper {
	max-width: 100%;
	overflow: hidden;
}

.single-post .article-body .wp-has-aspect-ratio .wp-block-embed__wrapper,
.single-post .article-body .wp-block-video {
	position: relative;
}

.single-post .article-body table {
	width: 100%;
	border-collapse: collapse;
	font-family: "Readex Pro", system-ui, sans-serif;
	font-size: 14px;
	line-height: 1.7;
}

.single-post .article-body .wp-block-table {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.single-post .article-body th,
.single-post .article-body td {
	padding: 10px 12px;
	border: 1px solid var(--annas-border);
	text-align: start;
}

.single-post .article-body th {
	background: var(--annas-soft-blue);
	font-weight: 700;
}

.single-post .article-body code,
.single-post .article-body pre {
	direction: ltr;
	font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
	text-align: left;
}

.single-post .article-body code {
	padding: .12em .35em;
	background: #eef0f4;
	font-size: .78em;
}

.single-post .article-body pre,
.single-post .article-body .wp-block-preformatted {
	max-width: 100%;
	overflow-x: auto;
	padding: 18px;
	background: #15171a;
	color: #f7f7f5;
	font-size: 14px;
	line-height: 1.7;
}

.single-post .article-body pre code {
	padding: 0;
	background: transparent;
	color: inherit;
	font-size: inherit;
}

.single-post .article-body > .alignwide {
	width: min(920px, max(100%, calc(100vw - 400px)));
	max-width: none;
}

.single-post .article-body > .alignfull {
	width: min(100%, calc(100vw - 48px));
	max-width: none;
}

.single-post .article-body .alignleft {
	float: left;
	margin-inline: 1.5em 0;
	margin-block: .5em 1em;
}

.single-post .article-body .alignright {
	float: right;
	margin-inline: 0 1.5em;
	margin-block: .5em 1em;
}

.single-post .article-body .aligncenter {
	margin-inline: auto;
}

.single-post .article-page-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font-family: "Readex Pro", system-ui, sans-serif;
	font-size: 14px;
}

.single-post .article-ending {
	max-width: 760px;
	margin-block-start: clamp(44px, 5vw, 64px);
	padding-block-start: 26px;
	border-block-start: 1px solid var(--annas-border);
}

.single-post .article-tags,
.single-post .article-ending-share {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.single-post .article-tags-label,
.single-post .article-ending-share > span {
	margin-inline-end: 5px;
	color: var(--annas-text-secondary);
	font-size: 13px;
	font-weight: 600;
}

.single-post .article-tag {
	padding: 7px 11px;
	border: 1px solid #d2d8e4;
	background: #fff;
	color: var(--annas-blue-dark);
	font-size: 12px;
}

.single-post .article-tag:hover,
.single-post .article-tag:focus-visible {
	border-color: var(--annas-blue);
	background: var(--annas-soft-blue);
}

.single-post .article-ending-share {
	margin-block-start: 24px;
}

.single-post .article-author-box {
	display: flex;
	gap: 20px;
	align-items: start;
	margin-block-start: 36px;
	padding: 25px;
	border-inline-start: 3px solid var(--annas-blue);
	background: #eef1f7;
}

.single-post .article-author-bio-avatar {
	flex: 0 0 72px;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	object-fit: cover;
	background: #fff;
}

.single-post .article-author-box h2 {
	font-size: 17px;
}

.single-post .article-author-box p {
	margin-block-start: 6px;
	color: var(--annas-text-secondary);
	font-size: 13px;
	line-height: 1.8;
}

/* Widget order is controlled by WordPress. The sidebar itself never becomes sticky. */
.single-post .article-sidebar {
	padding-block-start: 3px;
}

.single-post .article-sidebar > * + * {
	margin-block-start: 42px;
}

.single-post .article-sidebar .sidebar-widget,
.single-post .article-sidebar-module {
	min-width: 0;
	max-width: 100%;
	margin-block-end: 0;
	overflow-wrap: anywhere;
	overflow-x: clip;
}

.single-post .article-sidebar .widget-title,
.single-post .article-sidebar-heading {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-block-end: 18px;
	font-size: 18px;
	line-height: 1.5;
}

.single-post .article-sidebar .widget-title::before,
.single-post .article-sidebar-heading::before {
	content: "";
	width: 4px;
	height: 22px;
	flex: 0 0 4px;
	background: var(--annas-orange);
}

.single-post .article-ranked-list,
.single-post .article-sidebar .wp-block-latest-posts,
.single-post .article-sidebar .widget_recent_entries ul {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: article-sidebar-story;
}

.single-post .article-ranked-list li,
.single-post .article-sidebar .wp-block-latest-posts li,
.single-post .article-sidebar .widget_recent_entries li {
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr);
	gap: 10px;
	padding-block: 15px;
	border-block-start: 1px solid var(--annas-border);
	counter-increment: article-sidebar-story;
}

.single-post .article-ranked-list li::before,
.single-post .article-sidebar .wp-block-latest-posts li::before,
.single-post .article-sidebar .widget_recent_entries li::before {
	content: counter(article-sidebar-story, decimal-leading-zero);
	color: var(--annas-orange-ink);
	font-size: 12px;
	font-weight: 700;
}

.single-post .article-ranked-list a,
.single-post .article-sidebar .wp-block-latest-posts a,
.single-post .article-sidebar .widget_recent_entries a {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.65;
}

.single-post .article-sidebar a:hover,
.single-post .article-sidebar a:focus-visible {
	color: var(--annas-blue-dark);
}

.single-post .article-sidebar img,
.single-post .article-sidebar iframe,
.single-post .article-sidebar video,
.single-post .article-sidebar embed,
.single-post .article-sidebar object {
	max-width: 100%;
}

.single-post .article-sidebar img,
.single-post .article-sidebar video {
	height: auto;
}

.single-post .article-sidebar-feature-image {
	display: block;
	overflow: hidden;
}

.single-post .article-sidebar-feature-image img,
.single-post .article-sidebar-feature-image .media-placeholder {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	background: #dfe4ec;
}

.single-post .article-sidebar-category,
.single-post .article-card-category {
	display: block;
	margin-block-start: 13px;
	color: var(--annas-orange-ink);
	font-size: 12px;
	font-weight: 700;
}

.single-post .article-sidebar-feature h3 {
	margin-block-start: 6px;
	font-size: 17px;
	line-height: 1.6;
}

.single-post .article-followup {
	padding-block: var(--space-section);
	border-block-start: 1px solid var(--annas-border);
	background: #fff;
}

.single-post .article-more-section {
	border-block-start: 0;
	background: #f0f2f7;
}

.single-post .article-section-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	margin-block-end: 24px;
}

.single-post .article-section-heading h2 {
	padding-block-end: 8px;
	border-block-end: 3px solid var(--annas-orange);
	font-size: clamp(24px, 2.2vw, 30px);
	line-height: 1.5;
}

.single-post .article-section-heading > a {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	color: var(--annas-blue-dark);
	font-size: 12px;
	font-weight: 600;
}

.single-post .article-related-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--space-content-gap);
}

.single-post .article-related-image {
	display: block;
	overflow: hidden;
}

.single-post .article-related-image img,
.single-post .article-related-image .media-placeholder {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	background: #dfe4ec;
}

.single-post .article-related-card h3 {
	margin-block-start: 7px;
	font-size: clamp(16px, 1.4vw, 20px);
	line-height: 1.6;
}

.single-post .article-related-card time,
.single-post .article-more-list time {
	display: block;
	margin-block-start: 9px;
	color: var(--annas-muted);
	font-size: 12px;
}

.single-post .article-related-card a:hover,
.single-post .article-related-card a:focus-visible,
.single-post .article-more-list a:hover,
.single-post .article-more-list a:focus-visible {
	color: var(--annas-blue-dark);
}

.single-post .article-more-list {
	max-width: 760px;
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.single-post .article-more-list li {
	padding-block: 16px;
	border-block-start: 1px solid #c7cedd;
}

.single-post .article-more-list a {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.7;
}

@media (max-width: 1120px) {
	.single-post .annas-article-layout {
		grid-template-columns: minmax(0, 1fr) 270px;
		gap: 34px;
	}
}

@media (max-width: 900px) {
	.single-post .annas-article-layout {
		grid-template-columns: 1fr;
	}

	.single-post .article-sidebar {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 32px;
		padding-block-start: 36px;
		border-block-start: 1px solid var(--annas-border);
	}

	.single-post .article-sidebar > * + * {
		margin-block-start: 0;
	}

	.single-post .article-sidebar > :last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}

	.single-post .article-body > .alignwide,
	.single-post .article-body > .alignfull {
		width: min(920px, calc(100vw - 32px));
	}
}

@media (max-width: 600px) {
	.single-post .annas-article-shell {
		padding-block-start: 24px;
	}

	.single-post .article-breadcrumb {
		margin-block-end: 24px;
		font-size: 12px;
	}

	.single-post .article-breadcrumb [aria-current="page"] {
		display: none;
	}

	.single-post .article-story-title {
		max-width: none;
		font-size: clamp(30px, 7.8vw, 38px);
		line-height: 1.47;
	}

	.single-post .article-standfirst {
		font-size: 17px;
	}

	.single-post .article-meta {
		gap: 12px 14px;
		margin-block-start: 22px;
	}

	.single-post .article-meta > .article-share-controls {
		width: 100%;
		margin-inline-start: 0;
	}

	.single-post .article-share-label {
		width: 100%;
	}

	.single-post .article-lead-figure {
		margin-block-start: 20px;
	}

	.single-post .article-body {
		padding-block-start: 34px;
		font-size: 20px;
		line-height: 1.9;
	}

	.single-post .article-body h2 {
		font-size: 25px;
	}

	.single-post .article-body h3 {
		font-size: 21px;
	}

	.single-post .article-body > .alignwide,
	.single-post .article-body > .alignfull {
		width: 100%;
	}

	.single-post .article-body .alignleft,
	.single-post .article-body .alignright {
		float: none;
		margin-inline: 0;
	}

	.single-post .article-sidebar {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.single-post .article-sidebar > :last-child:nth-child(odd) {
		grid-column: auto;
	}

	.single-post .article-related-grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.single-post .article-related-card {
		display: grid;
		grid-template-columns: minmax(0, 120px) 1fr;
		gap: 14px;
		align-items: start;
	}

	.single-post .article-related-image img,
	.single-post .article-related-image .media-placeholder {
		aspect-ratio: 1;
	}

	.single-post .article-card-category {
		margin-block-start: 0;
	}

	.single-post .article-related-card h3 {
		font-size: 16px;
	}

	.single-post .article-section-heading {
		align-items: start;
		flex-wrap: wrap;
	}
}

@media (max-width: 380px) {
	.single-post .article-story-title {
		font-size: 29px;
	}

	.single-post .article-date-group {
		width: 100%;
	}

	.single-post .article-share-button span {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
		white-space: nowrap;
	}

	.single-post .article-related-card {
		grid-template-columns: minmax(0, 100px) 1fr;
		gap: 12px;
	}

	.single-post .article-related-card h3 {
		font-size: 15px;
	}

	.single-post .article-author-box {
		padding: 18px;
		gap: 12px;
	}

	.single-post .article-author-bio-avatar {
		flex-basis: 56px;
		width: 56px;
		height: 56px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.single-post .article-share-button,
	.single-post .article-network-link,
	.single-post .article-tag {
		transition: none;
	}
}
