/**
 * Carlo Rino Single Blog Post — Figma node 1376:16998
 *
 * Page chrome + article layout only. Do not style site header / footer here.
 * Contained columns sit inside Astra `.ast-container` width; hero is full-bleed.
 * Annotation (News & Updates): blog card image ratio 4:3.
 */

/* ── Page chrome (Astra overrides; not header/footer) ───────────────────── */

/*
 * global.css sets overflow-x: hidden on html/body which forces overflow-y to
 * auto and breaks position:sticky. Use clip instead — still hides horizontal
 * scroll without creating a sticky-blocking scrollport.
 */
html:has(body.cr-single-blog-active),
body.cr-single-blog-active {
	overflow-x: clip !important;
}

.cr-single-blog-active .site-content,
.cr-single-blog-active #content {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	overflow: visible !important;
}

.cr-single-blog-active #page {
	overflow: visible !important;
}

.cr-single-blog-active .site-content > .ast-container,
.cr-single-blog-active .site-content .ast-container {
	overflow: visible !important;
}

.cr-single-blog-active .site-main,
.cr-single-blog-active #primary {
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
	overflow: visible !important;
}

.cr-single-blog-active .entry-header,
.cr-single-blog-active .ast-single-entry-banner,
.cr-single-blog-active .page-header,
.cr-single-blog-active .post-thumb-img-content,
.cr-single-blog-active .ast-featured-post {
	display: none !important;
}

.cr-single-blog-active #secondary {
	display: none !important;
}

.cr-single-blog-active.ast-separate-container #content,
.cr-single-blog-active.ast-separate-container .site-content,
.cr-single-blog-active.ast-page-builder-template .site-content {
	background: transparent !important;
}

.cr-single-blog-active.ast-separate-container #primary,
.cr-single-blog-active.ast-separate-container .site-main {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* ── Page shell ─────────────────────────────────────────────────────────── */

.cr-single-blog {
	background: var(--cr-white, #fff) !important;
	color: var(--cr-black, #333) !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	overflow: visible !important;
}

/* ── Intro: meta + title ────────────────────────────────────────────────── */

.cr-single-blog__intro {
	width: 100% !important;
	padding: 5rem 0 !important;
	box-sizing: border-box !important;
}

.cr-single-blog__intro-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 2.5rem !important;
	text-align: center !important;
	width: 100% !important;
	max-width: 50rem !important;
	margin: 0 auto !important;
}

.cr-single-blog__meta {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	justify-content: center !important;
	gap: 0.5rem !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--cr-font-body, "Quicksand", "Segoe UI", sans-serif) !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1.52 !important;
	letter-spacing: 0.05rem !important;
	text-transform: uppercase !important;
	color: var(--cr-black, #333) !important;
	white-space: nowrap !important;
}

.cr-single-blog__meta-item,
.cr-single-blog__meta-sep {
	margin: 0 !important;
	padding: 0 !important;
}

.cr-single-blog__title {
	font-family: var(--cr-font-heading, "Lora", Georgia, serif) !important;
	font-size: 2.5rem !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: var(--cr-black, #333) !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: center !important;
	max-width: 50rem !important;
}

/* ── Featured hero — full bleed ─────────────────────────────────────────── */

.cr-single-blog__hero-shell {
	position: relative !important;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	height: 45rem !important;
	overflow: visible !important;
	padding: 0 !important;
	border: none !important;
}

.cr-single-blog__hero {
	position: sticky !important;
	top: var(--cr-single-blog-sticky-top, 0rem) !important;
	width: 100% !important;
	height: 45rem !important;
	overflow: hidden !important;
	background: #f0ebe8 !important;
	z-index: 0 !important;
}

.cr-single-blog__hero-img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	pointer-events: none !important;
}

/* ── Content body (cream plane) ─────────────────────────────────────────── */

.cr-single-blog__body {
	position: relative !important;
	z-index: 1 !important;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	background: #faf7f6 !important;
	box-sizing: border-box !important;
	padding: 0 0 5rem !important;
	overflow: visible !important;
}

/* Reading progress — Figma 1559:26288 (anchor + fixed track) */
#cr-progress-anchor {
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

#cr-progress-track,
.cr-single-blog__progress {
	width: 100% !important;
	height: 0.25rem !important;
	margin: 0 !important;
	padding: 0 !important;
	background: rgba(0, 0, 0, 0.12) !important;
	overflow: hidden !important;
	pointer-events: none !important;
	box-sizing: border-box !important;
}

#cr-progress-track.cr-fixed {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	z-index: 9999 !important;
}

#cr-progress-fill,
.cr-single-blog__progress-fill {
	display: block !important;
	width: 0%; /* JS updates this — do not use !important */
	height: 100% !important;
	background: var(--cr-pink, #e81f76) !important;
	transition: width 0.08s linear !important;
}

.cr-single-blog__layout {
	display: grid !important;
	grid-template-columns: 18.75rem minmax(0, 35rem) 18.75rem !important;
	justify-content: space-between !important;
	/* stretch so the rail column matches article height — sticky needs a tall containing block */
	align-items: stretch !important;
	column-gap: 2.5rem !important;
	width: 100% !important;
	max-width: 85rem !important;
	margin: 0 auto !important;
	padding: 2.5rem 2.5rem 0 !important;
	box-sizing: border-box !important;
}

/* ── Left rail: Share + TOC ─────────────────────────────────────────────── */

.cr-single-blog__rail {
	position: relative !important;
	align-self: stretch !important;
	width: 100% !important;
	max-width: 18.75rem !important;
	height: 100% !important;
	min-height: 100% !important;
	padding-top: 7.5rem !important;
	padding-bottom: 5rem !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

.cr-single-blog__rail-sticky {
	position: sticky !important;
	top: calc(var(--cr-single-blog-sticky-top, 0rem) + 1.5rem) !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 3.75rem !important;
	width: 100% !important;
	z-index: 2 !important;
}

.cr-single-blog__share {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0.75rem !important;
	width: 100% !important;
	margin: 0 !important;
}

.cr-single-blog__share--footer {
	align-items: center !important;
	width: 18.75rem !important;
	max-width: 100% !important;
	margin: 0 auto !important;
}

.cr-single-blog__share-label {
	font-family: var(--cr-font-body, "Quicksand", "Segoe UI", sans-serif) !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1.52 !important;
	letter-spacing: 0.05rem !important;
	text-transform: uppercase !important;
	color: var(--cr-grey, #888) !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.cr-single-blog__share--footer .cr-single-blog__share-label {
	text-align: center !important;
	width: auto !important;
}

.cr-single-blog__share-list {
	display: flex !important;
	align-items: center !important;
	gap: 0.75rem !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.cr-single-blog__share-list li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.cr-single-blog__share-link {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 1rem !important;
	height: 1rem !important;
	color: var(--cr-black, #333) !important;
	text-decoration: none !important;
}

.cr-single-blog__share-link:hover,
.cr-single-blog__share-link:focus {
	color: var(--cr-pink, #e81f76) !important;
}

.cr-single-blog__share-icon,
.cr-single-blog__share-link svg {
	display: block !important;
	width: 1rem !important;
	height: 1rem !important;
}

.cr-single-blog__toc {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0.75rem !important;
	width: 100% !important;
}

.cr-single-blog__toc-label {
	font-family: var(--cr-font-body, "Quicksand", "Segoe UI", sans-serif) !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1.52 !important;
	letter-spacing: 0.05rem !important;
	text-transform: uppercase !important;
	color: var(--cr-grey, #888) !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.cr-single-blog__toc-list {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 1rem !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.cr-single-blog__toc-list li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	width: auto !important;
	max-width: 100% !important;
}

.cr-single-blog__toc-item--h3 {
	padding-left: 0.75rem !important;
}

.cr-single-blog__toc-item--h4 {
	padding-left: 1.5rem !important;
}

.cr-single-blog__toc-item--h5 {
	padding-left: 2.25rem !important;
}

.cr-single-blog__toc-item--h6 {
	padding-left: 3rem !important;
}

.cr-single-blog__toc-link {
	max-width: 100% !important;
}

/* Arrow icon on TOC — mobile active only (Figma 1801:30238) */
.cr-single-blog__toc-link .cr-btn-secondary__icon--front {
	display: none !important;
	width: 1.5rem !important;
	height: 1.5rem !important;
}

.cr-single-blog__toc-link .cr-btn-secondary__icon--front svg {
	width: 1.5rem !important;
	height: 1.5rem !important;
}

.cr-single-blog__toc-link .cr-btn-secondary__text {
	white-space: normal !important;
	text-align: left !important;
}

/* Default: black text, line hidden (expands from center on hover/active) */
.cr-single-blog__toc-link .cr-btn-secondary__line {
	transform: scaleX(0) !important;
	transform-origin: center center !important;
	transition: transform 0.25s ease !important;
}

.cr-single-blog__toc-link:hover .cr-btn-secondary__text {
	color: var(--cr-pink, #e81f76) !important;
}

.cr-single-blog__toc-link:hover .cr-btn-secondary__line {
	transform: scaleX(1) !important;
}

.cr-single-blog__toc-link.is-active .cr-btn-secondary__text,
.cr-single-blog__toc-link.cr-btn-secondary--active .cr-btn-secondary__text {
	color: var(--cr-pink, #e81f76) !important;
}

.cr-single-blog__toc-link.is-active .cr-btn-secondary__line,
.cr-single-blog__toc-link.cr-btn-secondary--active .cr-btn-secondary__line {
	transform: scaleX(1) !important;
}

/* ── Article column ─────────────────────────────────────────────────────── */

.cr-single-blog__article {
	width: 100% !important;
	max-width: 35rem !important;
	margin: 0 auto !important;
	padding: 7.5rem 0 7.5rem !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 3.938rem !important;
	box-sizing: border-box !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

.cr-single-blog__content {
	width: 100% !important;
	max-width: 35rem !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--cr-font-body, "Quicksand", "Segoe UI", sans-serif) !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1.52 !important;
	color: var(--cr-black, #333) !important;
}

.cr-single-blog__content > *:first-child {
	margin-top: 0 !important;
}

.cr-single-blog__content > *:last-child {
	margin-bottom: 0 !important;
}

.cr-single-blog__content p {
	margin: 0 0 0.625rem !important;
	padding: 0 !important;
	font-family: inherit !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1.52 !important;
	color: var(--cr-black, #333) !important;
}

.cr-single-blog__content p:last-child {
	margin-bottom: 0 !important;
}

.cr-single-blog__content h2 {
	font-family: var(--cr-font-heading, "Lora", Georgia, serif) !important;
	font-size: 1.5rem !important;
	font-weight: 400 !important;
	line-height: 1.32 !important;
	color: var(--cr-black, #333) !important;
	margin: 3.938rem 0 1.25rem !important;
	padding: 0 !important;
	scroll-margin-top: calc(var(--cr-single-blog-sticky-top, 0rem) + 2rem) !important;
}

.cr-single-blog__content h2:first-child {
	margin-top: 0 !important;
}

.cr-single-blog__content h3 {
	font-family: var(--cr-font-heading, "Lora", Georgia, serif) !important;
	font-size: 1.25rem !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: var(--cr-black, #333) !important;
	margin: 2.5rem 0 0.625rem !important;
	padding: 0 !important;
	scroll-margin-top: calc(var(--cr-single-blog-sticky-top, 0rem) + 2rem) !important;
}

.cr-single-blog__content h4,
.cr-single-blog__content h5,
.cr-single-blog__content h6 {
	font-family: var(--cr-font-heading, "Lora", Georgia, serif) !important;
	font-weight: 400 !important;
	color: var(--cr-black, #333) !important;
	margin: 1.5rem 0 0.625rem !important;
	padding: 0 !important;
	scroll-margin-top: calc(var(--cr-single-blog-sticky-top, 0rem) + 2rem) !important;
}

.cr-single-blog__content h4 {
	font-size: 1.125rem !important;
	line-height: 1.32 !important;
}

.cr-single-blog__content h5 {
	font-size: 1rem !important;
	line-height: 1.4 !important;
}

.cr-single-blog__content h6 {
	font-size: 0.875rem !important;
	line-height: 1.4 !important;
}

.cr-single-blog__content a {
	color: inherit !important;
	text-decoration: underline !important;
	text-underline-offset: 0.125rem !important;
}

.cr-single-blog__content a:hover,
.cr-single-blog__content a:focus {
	color: var(--cr-pink, #e81f76) !important;
}

.cr-single-blog__content ul,
.cr-single-blog__content ol {
	margin: 0 0 1.25rem !important;
	padding-left: 1.25em !important;
}

.cr-single-blog__content li {
	margin: 0 0 0.625rem !important;
	padding: 0 !important;
	font-size: 1rem !important;
	line-height: 1.52 !important;
}

.cr-single-blog__content figure,
.cr-single-blog__content .wp-block-image {
	margin: 3.938rem 0 !important;
	padding: 0 !important;
	max-width: none !important;
}

.cr-single-blog__content img,
.cr-single-blog__content .wp-block-image img {
	display: block !important;
	max-width: 100% !important;
	height: auto !important;
	border-radius: 0.125rem !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.cr-single-blog__content img:not(figure img) {
	-webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, .15) !important;
	box-shadow: 0 0 7px 0 rgba(0, 0, 0, .15) !important;
}

/* Wide editorial image (Figma 640 inside 560 column) */
.cr-single-blog__content .alignwide,
.cr-single-blog__content .wp-block-image.alignwide {
	width: min(40rem, 100vw) !important;
	max-width: min(40rem, 100vw) !important;
	margin-left: 50% !important;
	transform: translateX(-50%) !important;
}

.cr-single-blog__content .alignfull,
.cr-single-blog__content .wp-block-image.alignfull {
	width: min(40rem, 100vw) !important;
	max-width: min(40rem, 100vw) !important;
	margin-left: 50% !important;
	transform: translateX(-50%) !important;
}

.cr-single-blog__content figcaption {
	font-family: var(--cr-font-body, "Quicksand", "Segoe UI", sans-serif) !important;
	font-size: 0.75rem !important;
	line-height: 1.34 !important;
	color: var(--cr-grey, #888) !important;
	text-align: center !important;
	margin-top: 0.75rem !important;
}

.cr-single-blog__content blockquote {
	margin: 2.5rem 0 !important;
	padding: 0 0 0 1.25rem !important;
	border-left: 0.125rem solid var(--cr-pink, #e81f76) !important;
	font-family: var(--cr-font-heading, "Lora", Georgia, serif) !important;
	font-size: 1.25rem !important;
	line-height: 1.32 !important;
	color: var(--cr-black, #333) !important;
}

/* ── Related: News & Updates (4:3 cards) ────────────────────────────────── */

.cr-single-blog__related {
	width: 100% !important;
	max-width: 18.75rem !important;
	padding-top: 7.5rem !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 1.5rem !important;
	box-sizing: border-box !important;
}

.cr-single-blog__related-head {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 1rem !important;
	width: 100% !important;
}

.cr-single-blog__related-title {
	font-family: var(--cr-font-heading, "Lora", Georgia, serif) !important;
	font-size: 1.5rem !important;
	font-weight: 400 !important;
	line-height: 1.32 !important;
	color: var(--cr-black, #333) !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
	white-space: nowrap !important;
}

.cr-single-blog__related-title-mobile {
	display: none !important;
}

.cr-single-blog__related-scroller {
	width: 100% !important;
}

.cr-single-blog__related-list {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0.5rem !important;
	width: 100% !important;
}

/* Back to top — mobile FAB (Figma 1946:38290) */
.cr-single-blog__back-top {
	display: none !important;
	position: fixed !important;
	right: 0.5rem !important;
	bottom: 1.5rem !important;
	z-index: 10000 !important;
	width: 1.5rem !important;
	height: 1.5rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--cr-black, #333) !important;
	cursor: pointer !important;
	mix-blend-mode: difference !important;
	appearance: none !important;
}

.cr-single-blog__back-top:not([hidden]) {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.cr-single-blog__back-top-icon,
.cr-single-blog__back-top svg {
	display: block !important;
	width: 1.5rem !important;
	height: 1.5rem !important;
}

/* Sidebar card — annotation: 4:3 image; body pad 24px; title 18px */
.cr-single-blog .cr-blog-card--sidebar {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	background: #faf7f6 !important;
	border-radius: 0.125rem !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	box-shadow: none !important;
}

.cr-single-blog .cr-blog-card--sidebar .cr-blog-card__media {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	aspect-ratio: 4 / 3 !important;
	overflow: hidden !important;
	flex-shrink: 0 !important;
	background: #e7e7e7 !important;
}

.cr-single-blog .cr-blog-card--sidebar .cr-blog-card__img {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

.cr-single-blog .cr-blog-card--sidebar .cr-blog-card__body {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 1rem !important;
	width: 100% !important;
	padding: 1.5rem !important;
	box-sizing: border-box !important;
	flex: 0 0 auto !important;
}

.cr-single-blog .cr-blog-card--sidebar .cr-blog-card__title {
	font-size: 1.125rem !important;
	line-height: 1.32 !important;
	flex: 0 0 auto !important;
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 3 !important;
	overflow: hidden !important;
}

/* Instagram strip sits after cream body — reuse blog-page styles */
.cr-single-blog .cr-blog-instagram {
	background: var(--cr-white, #fff) !important;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */

@media (max-width: 1199px) {
	.cr-single-blog__layout {
		grid-template-columns: 15rem minmax(0, 1fr) 16.25rem !important;
		column-gap: 1.5rem !important;
		padding: 2rem 1.5rem 0 !important;
	}

	.cr-single-blog__article {
		max-width: none !important;
		padding-top: 5rem !important;
	}

	.cr-single-blog__rail {
		padding-top: 5rem !important;
	}

	.cr-single-blog__related {
		padding-top: 5rem !important;
	}

	.cr-single-blog__related-title {
		white-space: normal !important;
	}
}

/* Mobile — Figma 1801:29843 (360 frame) */
@media (max-width: 991px) {
	.cr-single-blog__intro {
		padding: 2.5rem 1rem !important;
	}

	.cr-single-blog__intro-inner {
		gap: 0.5rem !important;
		padding: 0 !important;
		max-width: none !important;
	}

	.cr-single-blog__title {
		font-size: 2rem !important;
		line-height: 1.32 !important;
		max-width: none !important;
	}

	.cr-single-blog__meta {
		font-size: 1rem !important;
		letter-spacing: 0.05rem !important;
	}

	/* Short static hero (360×181) */
	.cr-single-blog__hero-shell {
		height: auto !important;
		aspect-ratio: 360 / 181 !important;
	}

	.cr-single-blog__hero {
		position: relative !important;
		top: auto !important;
		height: 100% !important;
	}

	.cr-single-blog__body {
		padding-bottom: 0 !important;
	}

	.cr-single-blog__layout {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0 !important;
		padding: 0 !important;
		max-width: none !important;
	}

	/* Order: Share + TOC → Article → Related */
	.cr-single-blog__rail {
		position: static !important;
		top: auto !important;
		order: 1 !important;
		max-width: none !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		padding: 5rem 1rem 0 !important;
		box-sizing: border-box !important;
	}

	.cr-single-blog__rail-sticky {
		position: static !important;
		align-items: center !important;
		gap: 3.75rem !important;
	}

	.cr-single-blog__share {
		align-items: center !important;
	}

	.cr-single-blog__share-label {
		text-align: center !important;
		width: auto !important;
	}

	.cr-single-blog__toc {
		align-items: center !important;
	}

	.cr-single-blog__toc-label {
		text-align: center !important;
		width: auto !important;
	}

	.cr-single-blog__toc-list {
		align-items: center !important;
		gap: 0.25rem !important;
	}

	.cr-single-blog__toc-item--h3,
	.cr-single-blog__toc-item--h4,
	.cr-single-blog__toc-item--h5,
	.cr-single-blog__toc-item--h6 {
		padding-left: 0 !important;
	}

	.cr-single-blog__toc-link .cr-btn-secondary__text {
		text-align: center !important;
	}

	/* Active TOC: arrow + underline (black text on mobile) */
	.cr-single-blog__toc-link.is-active .cr-btn-secondary__icon--front,
	.cr-single-blog__toc-link.cr-btn-secondary--active .cr-btn-secondary__icon--front {
		display: flex !important;
	}

	.cr-single-blog__toc-link.is-active .cr-btn-secondary__text,
	.cr-single-blog__toc-link.cr-btn-secondary--active .cr-btn-secondary__text {
		color: var(--cr-black, #333) !important;
	}

	.cr-single-blog__toc-link.is-active .cr-btn-secondary__line,
	.cr-single-blog__toc-link.cr-btn-secondary--active .cr-btn-secondary__line {
		transform: scaleX(1) !important;
	}

	.cr-single-blog__article {
		order: 2 !important;
		max-width: none !important;
		width: 100% !important;
		padding: 5rem 1rem 5rem !important;
		gap: 2.5rem !important;
	}

	.cr-single-blog__content {
		max-width: none !important;
	}

	.cr-single-blog__share--footer {
		display: none !important;
	}

	.cr-single-blog__content h2 {
		font-size: 1.5rem !important;
		line-height: 1.32 !important;
		margin: 2.5rem 0 1.25rem !important;
	}

	.cr-single-blog__content h3 {
		font-size: 1.125rem !important;
		line-height: 1.32 !important;
	}

	.cr-single-blog__content figure,
	.cr-single-blog__content .wp-block-image {
		margin: 2.5rem 0 !important;
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		transform: none !important;
	}

	.cr-single-blog__content .alignwide,
	.cr-single-blog__content .alignfull,
	.cr-single-blog__content .wp-block-image.alignwide,
	.cr-single-blog__content .wp-block-image.alignfull {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		transform: none !important;
	}

	/* Related Articles — white band + horizontal cards */
	.cr-single-blog__related {
		order: 3 !important;
		max-width: none !important;
		width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		padding: 5rem 0 !important;
		background: var(--cr-white, #fff) !important;
		align-items: center !important;
		gap: 1.5rem !important;
	}

	.cr-single-blog__related-head {
		align-items: center !important;
		padding: 0 1rem !important;
		box-sizing: border-box !important;
	}

	.cr-single-blog__related-title {
		text-align: center !important;
		white-space: nowrap !important;
	}

	.cr-single-blog__related-title-desktop {
		display: none !important;
	}

	.cr-single-blog__related-title-mobile {
		display: inline !important;
	}

	.cr-single-blog__related-scroller {
		width: 100% !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		-webkit-overflow-scrolling: touch !important;
		scrollbar-width: thin !important;
		padding: 0 1rem !important;
		box-sizing: border-box !important;
	}

	.cr-single-blog__related-list {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		gap: 0.5rem !important;
		width: max-content !important;
		min-width: 100% !important;
	}

	.cr-single-blog .cr-blog-card--sidebar {
		flex: 0 0 17.875rem !important;
		width: 17.875rem !important;
		max-width: 17.875rem !important;
	}

	.cr-single-blog__back-top:not([hidden]) {
		display: flex !important;
	}
}

@media (max-width: 767px) {
	.cr-single-blog__intro {
		padding: 2.5rem 1rem !important;
	}

	.cr-single-blog__title {
		font-size: 2rem !important;
	}
}

@media (min-width: 992px) {
	.cr-single-blog__back-top,
	.cr-single-blog__back-top:not([hidden]) {
		display: none !important;
	}
}
