/*
 * CAH Article - the long-form template.
 *
 * Everything here is built on the CAH Core tokens, so the article inherits
 * the site's palette, type scale and spacing rather than declaring its own.
 * The layout shell is deliberately forgiving: the Elementor containers set
 * the structure, and these rules only supply what Elementor cannot -
 * reading measure, sticky behaviour, and the editorial components.
 */

/* ==================================================================
 * Reading progress
 * ================================================================== */
.cah-article__progress {
	position: fixed;
	left: 0; right: 0;
	top: var(--cah-header-h, 76px);
	height: 3px;
	background: transparent;
	z-index: var(--cah-z-sticky, 100);
	pointer-events: none;
}
.cah-article__progress span {
	display: block;
	height: 100%;
	width: 0;
	background: var(--cah-grad-rule, linear-gradient(90deg, #E5020E, #12508B));
	transform-origin: left center;
	transition: width 90ms linear;
}
@media (max-width: 1024px) {
	.cah-article__progress { top: var(--cah-header-h-mobile, 62px); }
}

/* ==================================================================
 * Hero
 * ================================================================== */
.cah-article__hero {
	background: var(--cah-grad-hero, linear-gradient(168deg, #052949, #031F3A));
	color: var(--cah-text-invert, #fff);
	position: relative;
	overflow: hidden;
}
.cah-article__hero::after {
	content: "";
	position: absolute;
	inset: auto 0 0 0;
	height: 1px;
	background: var(--cah-grad-rule, linear-gradient(90deg, #E5020E, #12508B));
	opacity: .8;
}
.cah-article__hero .elementor-widget-container > *:last-child { margin-bottom: 0; }

.cah-article__hero h1,
.cah-article__hero .elementor-heading-title {
	color: #fff;
	font-size: var(--cah-fs-h1);
	line-height: var(--cah-lh-heading);
	letter-spacing: var(--cah-ls-heading);
	max-width: 20ch;
	margin: 0;
}
@media (min-width: 900px) {
	.cah-article__hero h1,
	.cah-article__hero .elementor-heading-title { max-width: 24ch; }
}

.cah-article__tags {
	display: flex;
	flex-wrap: wrap;
	gap: var(--cah-space-2, 8px);
	margin-bottom: var(--cah-space-5, 20px);
}
.cah-article__cat { text-decoration: none; }

.cah-article__byline {
	margin-top: var(--cah-space-6, 24px);
	padding-top: var(--cah-space-5, 20px);
	border-top: 1px solid var(--cah-border-invert, rgba(255,255,255,.14));
	color: var(--cah-text-invert-muted, #A9BDD4);
	row-gap: var(--cah-space-3, 12px);
}
.cah-article__byline strong { color: #fff; }
.cah-article__icon { flex: none; opacity: .85; }


/* The two-column shell. Elementor containers are flex by default; the article
   wants a grid so the sidebar can be a fixed rail and the prose can shrink. */
.cah-article__body { align-items: start; }
@media (min-width: 1025px) {
	.cah-article__body {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 340px !important;
		gap: clamp(40px, 4vw, 64px) !important;
	}
}
@media (max-width: 1024px) {
	.cah-article__body {
		display: flex !important;
		flex-direction: column !important;
		gap: var(--cah-space-8, 32px) !important;
	}
	.cah-article__side { order: -1; }
}

/* ==================================================================
 * Body shell
 * ================================================================== */
.cah-article__main { min-width: 0; }
.cah-article__side { min-width: 0; }

@media (min-width: 1025px) {
	.cah-article__side-inner {
		position: sticky;
		top: calc(var(--cah-header-h, 76px) + 28px);
		display: flex;
		flex-direction: column;
		gap: var(--cah-space-6, 24px);
	}
}

/* The article itself. Wider than the default prose measure would allow,
   because the sidebar already narrows the column. */
.cah-article__content.cah-prose,
.cah-article__content .cah-prose,
.cah-article__content {
	max-width: 74ch;
	font-size: var(--cah-fs-body-lg, 1.1rem);
	line-height: var(--cah-lh-relaxed, 1.7);
	color: var(--cah-text-soft, #37455C);
}
.cah-article__content > * + *,
.cah-article__content > .elementor-widget-container > * + * { margin-top: var(--cah-space-5, 20px); }

.cah-article__content h2 {
	margin-top: clamp(40px, 5vw, 64px);
	margin-bottom: var(--cah-space-4, 16px);
	font-size: var(--cah-fs-h2);
	line-height: var(--cah-lh-heading);
	letter-spacing: var(--cah-ls-heading);
	color: var(--cah-primary, #031F3A);
	scroll-margin-top: calc(var(--cah-header-h, 76px) + 28px);
	position: relative;
	padding-top: var(--cah-space-5, 20px);
}
.cah-article__content h2::before {
	content: "";
	position: absolute;
	top: 0; left: 0;
	width: 44px; height: 3px;
	border-radius: 3px;
	background: var(--cah-accent, #E5020E);
}
.cah-article__content h2:first-child { margin-top: 0; }

.cah-article__content h3 {
	margin-top: clamp(28px, 3.4vw, 40px);
	margin-bottom: var(--cah-space-3, 12px);
	font-size: var(--cah-fs-h3);
	line-height: var(--cah-lh-heading);
	color: var(--cah-primary, #031F3A);
	scroll-margin-top: calc(var(--cah-header-h, 76px) + 28px);
}

.cah-article__content p { margin: 0; }
.cah-article__content strong { color: var(--cah-text, #101B2C); font-weight: var(--cah-fw-semibold, 600); }

.cah-article__content .cah-lead {
	font-size: clamp(1.1875rem, 1.05rem + 0.6vw, 1.375rem);
	line-height: 1.6;
	color: var(--cah-text, #101B2C);
	font-weight: var(--cah-fw-medium, 500);
	padding-bottom: var(--cah-space-6, 24px);
	border-bottom: 1px solid var(--cah-border-soft, #E3EAF2);
}

.cah-article__content ul,
.cah-article__content ol { padding-left: 1.35em; margin: 0; }
.cah-article__content li + li { margin-top: var(--cah-space-2, 8px); }
.cah-article__content li::marker { color: var(--cah-accent, #E5020E); font-weight: 700; }

.cah-article__content a {
	color: var(--cah-link, #0B3E6E);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	text-decoration-color: rgba(11, 62, 110, .35);
	transition: color var(--cah-dur, 240ms) var(--cah-ease-out, ease), text-decoration-color var(--cah-dur, 240ms) var(--cah-ease-out, ease);
}
.cah-article__content a:hover {
	color: var(--cah-link-hover, #C6020D);
	text-decoration-color: currentColor;
}

/* Citations to statute and official sources */
.cah-article__content a.cah-cite {
	font-weight: var(--cah-fw-medium, 500);
	white-space: normal;
}
.cah-verified {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-left: 4px;
	padding: 2px 8px;
	border-radius: var(--cah-radius-pill, 999px);
	background: var(--cah-success-tint, #E3F5EC);
	color: var(--cah-success, #067A4E);
	font-size: .75em;
	font-weight: var(--cah-fw-semibold, 600);
	letter-spacing: .01em;
	white-space: nowrap;
	vertical-align: baseline;
}
.cah-verified__dot {
	width: 6px; height: 6px;
	border-radius: 50%;
	background: currentColor;
	flex: none;
}

/* ==================================================================
 * Editorial components the pipeline can emit
 * ================================================================== */
.cah-article__content .cah-key {
	margin: var(--cah-space-8, 32px) 0;
	padding: var(--cah-space-6, 24px) var(--cah-space-6, 24px) var(--cah-space-5, 20px);
	background: var(--cah-primary-tint, #F1F5FA);
	border: 1px solid #D5DEEC;
	border-radius: var(--cah-radius-lg, 16px);
	position: relative;
}
.cah-article__content .cah-key::before {
	content: "Key takeaways";
	display: block;
	font-size: var(--cah-fs-caption, .8125rem);
	text-transform: uppercase;
	letter-spacing: var(--cah-ls-eyebrow, .09em);
	font-weight: var(--cah-fw-semibold, 600);
	color: var(--cah-navy-600, #12508B);
	margin-bottom: var(--cah-space-3, 12px);
}
.cah-article__content .cah-key ul { list-style: none; padding: 0; }
.cah-article__content .cah-key li {
	position: relative;
	padding-left: 30px;
	color: var(--cah-text, #101B2C);
}
.cah-article__content .cah-key li::before {
	content: "";
	position: absolute;
	left: 0; top: .45em;
	width: 18px; height: 18px;
	border-radius: 50%;
	background: var(--cah-navy-100, #E1E9F1);
	box-shadow: inset 0 0 0 1.5px var(--cah-navy-600, #12508B);
}

.cah-article__content .cah-note {
	margin: var(--cah-space-8, 32px) 0;
	padding: var(--cah-space-5, 20px) var(--cah-space-6, 24px);
	border-left: 3px solid var(--cah-navy-600, #12508B);
	background: var(--cah-navy-50, #F1F5FA);
	border-radius: 0 var(--cah-radius-md, 12px) var(--cah-radius-md, 12px) 0;
	font-size: var(--cah-fs-body, 1.0625rem);
}
.cah-article__content .cah-note > *:first-child { margin-top: 0; }
.cah-article__content .cah-note--warn {
	border-left-color: var(--cah-accent, #E5020E);
	background: var(--cah-red-50, #FEF1F2);
}
.cah-article__content .cah-note--tip {
	border-left-color: var(--cah-success, #067A4E);
	background: var(--cah-success-tint, #E3F5EC);
}

.cah-article__content .cah-quick {
	padding: var(--cah-space-5, 20px) var(--cah-space-6, 24px);
	background: var(--cah-surface, #fff);
	border: 1px solid var(--cah-border, #CFD9E6);
	border-left: 3px solid var(--cah-accent, #E5020E);
	border-radius: 0 var(--cah-radius-md, 12px) var(--cah-radius-md, 12px) 0;
	font-size: var(--cah-fs-body-lg);
	color: var(--cah-text, #101B2C);
	font-weight: var(--cah-fw-medium, 500);
	box-shadow: var(--cah-shadow-xs, 0 1px 2px rgba(3,31,58,.06));
}

.cah-article__content .cah-checklist { list-style: none; padding: 0; }
.cah-article__content .cah-checklist li {
	position: relative;
	padding-left: 32px;
}
.cah-article__content .cah-checklist li::before {
	content: "";
	position: absolute;
	left: 0; top: .35em;
	width: 20px; height: 20px;
	border-radius: 50%;
	background: var(--cah-success-tint, #E3F5EC);
	box-shadow: inset 0 0 0 1.5px var(--cah-success, #067A4E);
}
.cah-article__content .cah-checklist li::after {
	content: "";
	position: absolute;
	left: 6px; top: .72em;
	width: 8px; height: 4px;
	border-left: 1.8px solid var(--cah-success, #067A4E);
	border-bottom: 1.8px solid var(--cah-success, #067A4E);
	transform: rotate(-45deg);
}

/* Tables */
.cah-table-scroll {
	margin: var(--cah-space-8, 32px) 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	border: 1px solid var(--cah-border-soft, #E3EAF2);
	border-radius: var(--cah-radius-md, 12px);
	background: var(--cah-surface, #fff);
}
.cah-table-scroll:focus-visible { outline: 2px solid var(--cah-focus-ring, #1E66AB); outline-offset: 2px; }
.cah-article__table {
	width: 100%;
	min-width: 480px;
	border-collapse: collapse;
	font-size: var(--cah-fs-small, .9375rem);
}
.cah-article__table th,
.cah-article__table td {
	padding: 13px 16px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid var(--cah-border-soft, #E3EAF2);
}
.cah-article__table thead th {
	background: var(--cah-bg-alt, #EFF3F8);
	color: var(--cah-primary, #031F3A);
	font-weight: var(--cah-fw-semibold, 600);
	white-space: nowrap;
}
.cah-article__table tbody tr:last-child td { border-bottom: 0; }
.cah-article__table tbody tr:hover { background: var(--cah-neutral-25, #FCFDFE); }

/* ==================================================================
 * FAQ accordion (styling only - cah-core's ui.js drives it)
 * ================================================================== */
.cah-article__faq {
	margin-top: var(--cah-space-6, 24px);
	border-top: 1px solid var(--cah-border-soft, #E3EAF2);
}
.cah-article__faq .cah-accordion__head { margin: 0 !important; padding: 0 !important; }
.cah-article__faq .cah-accordion__head::before { display: none !important; }
.cah-article__faq .cah-accordion__trigger { gap: var(--cah-space-4, 16px); }
.cah-article__faq .cah-accordion__trigger span:first-child { font-size: var(--cah-fs-h4, 1.15rem); }
.cah-article__faq .cah-accordion__inner > * + * { margin-top: var(--cah-space-4, 16px); }

/* ==================================================================
 * Table of contents
 * ================================================================== */
.cah-article__toc {
	background: var(--cah-surface, #fff);
	border: 1px solid var(--cah-border-soft, #E3EAF2);
	border-radius: var(--cah-radius-lg, 16px);
	padding: var(--cah-space-5, 20px);
	box-shadow: var(--cah-shadow-xs, 0 1px 2px rgba(3,31,58,.06));
}
.cah-article__toc-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--cah-space-3, 12px);
	width: 100%;
	padding: 0;
	background: none;
	border: 0;
	cursor: default;
	text-align: left;
	color: inherit;
}
.cah-article__toc-toggle .cah-toc__title { margin-bottom: 0; }
.cah-article__toc-toggle .cah-article__icon {
	display: none;
	transition: transform var(--cah-dur, 240ms) var(--cah-ease-out, ease);
}
.cah-article__toc ul { margin-top: var(--cah-space-3, 12px); }
.cah-article__toc a { font-size: var(--cah-fs-small, .9375rem); }

@media (max-width: 1024px) {
	.cah-article__toc-toggle { cursor: pointer; min-height: 44px; }
	.cah-article__toc-toggle .cah-article__icon { display: block; width: 20px; height: 20px; }
	.cah-article__toc-toggle[aria-expanded="true"] .cah-article__icon { transform: rotate(180deg); }
	.cah-article__toc ul[hidden] { display: none; }
}

/* ==================================================================
 * Conversion card
 * ================================================================== */
.cah-article__cta {
	background: var(--cah-grad-navy, linear-gradient(160deg, #072E52, #031F3A));
	color: #fff;
	border-radius: var(--cah-radius-lg, 16px);
	padding: var(--cah-space-6, 24px);
	box-shadow: var(--cah-shadow-lg, 0 16px 36px -10px rgba(3,31,58,.16));
	position: relative;
	overflow: hidden;
}
.cah-article__cta::before {
	content: "";
	position: absolute;
	top: -60px; right: -60px;
	width: 180px; height: 180px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(229,2,14,.30) 0%, transparent 70%);
	pointer-events: none;
}
.cah-article__cta > * { position: relative; }
.cah-article__cta-eyebrow {
	margin: 0 0 var(--cah-space-2, 8px);
	font-size: var(--cah-fs-caption, .8125rem);
	text-transform: uppercase;
	letter-spacing: var(--cah-ls-eyebrow, .09em);
	font-weight: var(--cah-fw-semibold, 600);
	color: var(--cah-red-400, #FF6069);
}
.cah-article__cta-title {
	margin: 0 0 var(--cah-space-3, 12px);
	font-size: var(--cah-fs-h4, 1.2rem);
	font-weight: var(--cah-fw-semibold, 600);
	line-height: 1.3;
	color: #fff;
}
.cah-article__cta-text {
	margin: 0 0 var(--cah-space-5, 20px);
	font-size: var(--cah-fs-small, .9375rem);
	line-height: 1.6;
	color: var(--cah-text-invert-muted, #A9BDD4);
}
.cah-article__cta-trust {
	list-style: none;
	margin: var(--cah-space-5, 20px) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--cah-space-2, 8px);
	font-size: var(--cah-fs-caption, .8125rem);
	color: var(--cah-text-invert-muted, #A9BDD4);
}
.cah-article__cta-trust li { display: flex; align-items: center; gap: 8px; }
.cah-article__cta-trust .cah-article__icon { color: var(--cah-red-400, #FF6069); opacity: 1; }

.cah-article__cta--wide {
	margin: var(--cah-space-12, 48px) 0 0;
	padding: clamp(28px, 4vw, 48px);
	display: grid;
	gap: var(--cah-space-8, 32px);
	align-items: center;
}
.cah-article__cta--wide .cah-article__cta-title { font-size: var(--cah-fs-h2); max-width: 18ch; }
.cah-article__cta--wide .cah-article__cta-text { font-size: var(--cah-fs-body); max-width: 56ch; }
.cah-article__cta--wide .cah-article__cta-trust { flex-direction: row; flex-wrap: wrap; gap: var(--cah-space-2, 8px) var(--cah-space-6, 24px); }
@media (min-width: 900px) {
	.cah-article__cta--wide { grid-template-columns: 1.6fr auto; }
}

/* ==================================================================
 * Sources
 * ================================================================== */
.cah-article__sources {
	margin-top: var(--cah-space-12, 48px);
	padding-top: var(--cah-space-8, 32px);
	border-top: 1px solid var(--cah-border-soft, #E3EAF2);
}
.cah-article__sources-title {
	font-size: var(--cah-fs-h4, 1.2rem);
	color: var(--cah-primary, #031F3A);
	margin: 0 0 var(--cah-space-4, 16px);
}
.cah-article__sources ol { margin: 0; }
.cah-article__sources li::marker { color: var(--cah-text-muted, #526279); }
.cah-source__host {
	display: inline-block;
	margin-left: 6px;
	color: var(--cah-text-muted, #526279);
	font-size: var(--cah-fs-caption, .8125rem);
}
.cah-article__sources-note {
	margin-top: var(--cah-space-5, 20px);
	font-size: var(--cah-fs-caption, .8125rem);
	line-height: 1.6;
	color: var(--cah-text-muted, #526279);
	max-width: 70ch;
}

/* ==================================================================
 * Related posts
 * ================================================================== */
.cah-article__related { margin-top: var(--cah-space-16, 64px); }
.cah-article__related-title {
	font-size: var(--cah-fs-h3);
	color: var(--cah-primary, #031F3A);
	margin: 0 0 var(--cah-space-6, 24px);
}
.cah-article__related-grid {
	display: grid;
	gap: var(--cah-gap, 20px);
	grid-template-columns: 1fr;
}
@media (min-width: 700px) { .cah-article__related-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1025px) { .cah-article__related-grid { grid-template-columns: repeat(3, 1fr); } }

.cah-article__related-card {
	display: flex;
	flex-direction: column;
	gap: var(--cah-space-2, 8px);
	padding: var(--cah-space-6, 24px);
	background: var(--cah-surface, #fff);
	border: 1px solid var(--cah-border-soft, #E3EAF2);
	border-radius: var(--cah-radius-lg, 16px);
	text-decoration: none;
	transition: transform var(--cah-dur, 240ms) var(--cah-ease-out, ease), box-shadow var(--cah-dur, 240ms) var(--cah-ease-out, ease), border-color var(--cah-dur, 240ms) var(--cah-ease-out, ease);
}
.cah-article__related-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--cah-shadow-lg, 0 16px 36px -10px rgba(3,31,58,.16));
	border-color: var(--cah-border, #CFD9E6);
}
.cah-article__related-date {
	font-size: var(--cah-fs-caption, .8125rem);
	color: var(--cah-text-muted, #526279);
	text-transform: uppercase;
	letter-spacing: var(--cah-ls-eyebrow, .09em);
}
.cah-article__related-head {
	font-size: var(--cah-fs-h4, 1.15rem);
	font-weight: var(--cah-fw-semibold, 600);
	line-height: 1.35;
	color: var(--cah-primary, #031F3A);
}
.cah-article__related-text {
	font-size: var(--cah-fs-small, .9375rem);
	line-height: 1.6;
	color: var(--cah-text-muted, #526279);
	flex: 1;
}
.cah-article__related-more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: var(--cah-space-2, 8px);
	font-size: var(--cah-fs-small, .9375rem);
	font-weight: var(--cah-fw-semibold, 600);
	color: var(--cah-accent, #E5020E);
}
.cah-article__related-card:hover .cah-article__related-more .cah-article__icon { transform: translateX(3px); }
.cah-article__related-more .cah-article__icon { transition: transform var(--cah-dur, 240ms) var(--cah-ease-out, ease); opacity: 1; }

/* ==================================================================
 * Small screens
 * ================================================================== */
@media (max-width: 767px) {
	.cah-article__content { font-size: 1.0625rem; }
	.cah-article__content .cah-key,
	.cah-article__content .cah-note,
	.cah-article__content .cah-quick { padding-left: var(--cah-space-5, 20px); padding-right: var(--cah-space-5, 20px); }
	.cah-article__cta { padding: var(--cah-space-5, 20px); }
	.cah-article__table { min-width: 420px; }
}

@media print {
	.cah-article__progress,
	.cah-article__side,
	.cah-article__cta,
	.cah-article__related { display: none !important; }
	.cah-article__content { max-width: none; }
	.cah-article__faq .cah-accordion__panel { display: block !important; height: auto !important; }
}

@media (prefers-reduced-motion: reduce) {
	.cah-article__related-card,
	.cah-article__progress span,
	.cah-article__related-more .cah-article__icon { transition: none; }
}

/* ==================================================================
 * Layout corrections
 * Elementor puts the children of a boxed container inside .e-con-inner,
 * so the grid has to land on whichever element actually parents the two
 * columns rather than on the container we named.
 * ================================================================== */
@media (min-width: 1025px) {
	.cah-article__body { display: block !important; }
	.cah-article__body > .e-con-inner {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 340px !important;
		gap: clamp(40px, 4vw, 64px) !important;
		align-items: start !important;
	}
}
@media (max-width: 1024px) {
	.cah-article__body > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: var(--cah-space-8, 32px) !important;
	}
}


/* ==================================================================
 * Corrections
 * ================================================================== */

/* The paragraph reset below beats a single-class stack rule, so the stack
   rule is written with its own class twice to outrank it. */
.cah-article__content.cah-article__content > * + *,
.cah-article__content.cah-article__content > .elementor-widget-container > * + * {
	margin-top: var(--cah-space-5, 20px);
}

/* The table of contents header is a real button, so the theme's button
   styling reaches it. Put it back to plain text. */
.cah-article__toc .cah-article__toc-toggle {
	background: transparent !important;
	background-image: none !important;
	color: inherit !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	min-height: 0;
	font-family: inherit;
	letter-spacing: normal;
	text-transform: none;
}
.cah-article__toc .cah-article__toc-toggle:hover { background: transparent !important; }

/* The sidebar column has to fill the row for the sticky rail to travel the
   whole length of the article rather than stopping at its own height. */
@media (min-width: 1025px) {
	.cah-article__side { align-self: stretch !important; }
}

.cah-verified { margin-left: 3px; padding: 2px 7px; }


/* The wide call to action uses a real h2, which the kit's heading colour
   reaches; keep it on the dark panel. */
.cah-article__cta .cah-article__cta-title,
.cah-article__cta h2.cah-article__cta-title { color: #fff !important; }
.cah-article__cta .cah-article__cta-eyebrow { color: var(--cah-red-400, #FF6069) !important; }

/* Tighter citation chip so it sits against the sentence's punctuation. */
.cah-verified { padding: 2px 6px 2px 5px; gap: 4px; }
.cah-verified__dot { width: 5px; height: 5px; }


/* ==================================================================
 * Small screens: the rail becomes part of the flow
 * The table of contents is genuinely useful above a long article; the
 * sidebar's conversion card is not, because the full-width one right
 * after the article already does that job. So on a phone the rail
 * dissolves, the contents list leads, and the card steps aside.
 * ================================================================== */
@media (max-width: 1024px) {
	.cah-article__side,
	.cah-article__side-inner { display: contents !important; }
	.cah-w-toc { order: -1; width: 100%; }
	.cah-article__main { order: 0; }
	.cah-w-cta { display: none !important; }
	.cah-article__toc { margin-bottom: var(--cah-space-6, 24px); }
}
