:root {
	--cexp-bg: #f5f3ef;
	--cexp-surface: #ffffff;
	--cexp-text: #142336;
	--cexp-muted: #687385;
	--cexp-line: #e6e0d8;
	--cexp-primary: #0b1f33;
	--cexp-accent: #d5a62a;
	--cexp-accent-soft: #fbf5df;
	--cexp-danger: #b5483e;
	--cexp-positive: #0f766e;
	--cexp-soft: #faf7f0;
	--cexp-radius: 18px;
	--cexp-shadow: 0 12px 34px rgba(12, 28, 48, .08);
}

.cexp-virtual-concurso .site-content {
	background: var(--cexp-bg);
}
.cexp-virtual-concurso .site-content > .ast-container {
	display: block;
	max-width: none;
	padding: 0;
}
.cexp-page,
.cexp-page * {
	box-sizing: border-box;
}
.cexp-page {
	color: var(--cexp-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	line-height: 1.55;
	padding: 30px 0 72px;
}
.cexp-container {
	width: min(1180px, calc(100% - 40px));
	margin: 0 auto;
}
.cexp-page a {
	color: inherit;
}
.cexp-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	margin: 0 0 18px;
	font-size: 13px;
	color: var(--cexp-muted);
}
.cexp-breadcrumbs a {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.cexp-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 330px;
	gap: 22px;
	align-items: stretch;
}
.cexp-hero-main,
.cexp-hero-side,
.cexp-section,
.cexp-kpi {
	background: var(--cexp-surface);
	border: 1px solid var(--cexp-line);
	box-shadow: var(--cexp-shadow);
}
.cexp-hero-main {
	min-width: 0;
	padding: 34px;
	border-radius: var(--cexp-radius);
	background:
		linear-gradient(145deg, rgba(11,31,51,.97), rgba(20,46,70,.96)),
		var(--cexp-primary);
	color: #fff;
	position: relative;
	overflow: hidden;
}
.cexp-hero-main::after {
	content: "";
	position: absolute;
	right: -90px;
	top: -110px;
	width: 280px;
	height: 280px;
	border-radius: 50%;
	background: rgba(213,166,42,.12);
	pointer-events: none;
}
.cexp-eyebrow {
	display: flex;
	align-items: center;
	gap: 8px;
	position: relative;
	z-index: 1;
	font-size: 13px;
	font-weight: 850;
	letter-spacing: .045em;
	text-transform: uppercase;
	color: #f4d77d;
}
.cexp-eyebrow-dot {
	width: 9px;
	height: 9px;
	border-radius: 999px;
	background: var(--cexp-accent);
	box-shadow: 0 0 0 5px rgba(213,166,42,.12);
}
.cexp-eyebrow-sep { opacity: .55; }
.cexp-title {
	position: relative;
	z-index: 1;
	max-width: 850px;
	margin: 14px 0 14px !important;
	font-family: Outfit, Inter, ui-sans-serif, system-ui, sans-serif !important;
	font-size: clamp(32px, 4.3vw, 54px) !important;
	line-height: 1.04 !important;
	letter-spacing: -.035em;
	font-weight: 750 !important;
	color: #fff !important;
}
.cexp-lead {
	position: relative;
	z-index: 1;
	max-width: 760px;
	margin: 0;
	font-size: 17px;
	line-height: 1.65;
	color: rgba(255,255,255,.82);
}
.cexp-statusline {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 14px;
	position: relative;
	z-index: 1;
	margin-top: 22px;
}
.cexp-status {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 7px 11px;
	border: 1px solid rgba(255,255,255,.2);
	border-radius: 999px;
	background: rgba(255,255,255,.08);
	font-size: 13px;
	font-weight: 800;
}
.cexp-status-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--cexp-status-color, var(--cexp-accent));
}
.cexp-updated {
	font-size: 13px;
	color: rgba(255,255,255,.68);
}
.cexp-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	position: relative;
	z-index: 1;
	margin-top: 24px;
}
.cexp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 15px;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 800;
	text-decoration: none !important;
	transition: transform .16s ease, background .16s ease, border-color .16s ease;
}
.cexp-btn:hover { transform: translateY(-1px); }
.cexp-btn-primary {
	background: var(--cexp-accent);
	border: 1px solid var(--cexp-accent);
	color: #142336 !important;
}
.cexp-btn-secondary {
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.3);
	color: #fff !important;
}

.cexp-hero-side {
	padding: 23px;
	border-radius: var(--cexp-radius);
}
.cexp-side-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--cexp-line);
}
.cexp-side-head > div { min-width: 0; }
.cexp-side-head strong {
	display: block;
	font-size: 19px;
	line-height: 1.25;
}
.cexp-side-head img {
	width: 64px;
	height: 64px;
	object-fit: contain;
	border-radius: 12px;
	background: #fff;
	border: 1px solid var(--cexp-line);
	padding: 6px;
}
.cexp-overline,
.cexp-section-kicker {
	display: block;
	margin-bottom: 4px;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--cexp-muted);
}
.cexp-kv {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 14px;
	align-items: start;
	padding: 11px 0;
	border-bottom: 1px solid var(--cexp-line);
	font-size: 13px;
}
.cexp-kv:last-child { border-bottom: 0; }
.cexp-kv span { color: var(--cexp-muted); }
.cexp-kv strong { max-width: 170px; text-align: right; }

.cexp-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin: 18px 0;
}
.cexp-kpi {
	min-width: 0;
	padding: 18px;
	border-radius: 16px;
	position: relative;
	overflow: hidden;
}
.cexp-kpi-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 30px;
	height: 30px;
	padding: 0 7px;
	margin-bottom: 14px;
	border-radius: 9px;
	background: var(--cexp-soft);
	color: var(--cexp-primary);
	font-size: 12px;
	font-weight: 900;
}
.cexp-kpi-label {
	font-size: 12px;
	font-weight: 700;
	color: var(--cexp-muted);
}
.cexp-kpi-value {
	margin-top: 5px;
	font-size: clamp(22px, 2.4vw, 28px);
	font-weight: 900;
	line-height: 1.08;
	letter-spacing: -.025em;
	color: var(--cexp-primary);
	overflow-wrap: anywhere;
}
.cexp-kpi-money { font-size: clamp(19px, 2vw, 25px); }
.cexp-kpi-next-title { font-size: 20px; line-height: 1.18; }
.cexp-kpi-sub {
	margin-top: 7px;
	font-size: 12px;
	color: var(--cexp-muted);
}
.cexp-kpi-next { border-color: #e1d3a2; background: linear-gradient(180deg, #fff, #fffdf6); }

.cexp-anchor-nav {
	display: flex;
	gap: 6px;
	margin: 22px 0 0;
	padding: 6px;
	border: 1px solid var(--cexp-line);
	border-radius: 14px;
	background: rgba(255,255,255,.78);
	overflow-x: auto;
	scrollbar-width: none;
}
.cexp-anchor-nav::-webkit-scrollbar { display: none; }
.cexp-anchor-nav a {
	white-space: nowrap;
	padding: 8px 12px;
	border-radius: 10px;
	font-size: 13px;
	font-weight: 750;
	text-decoration: none !important;
	color: var(--cexp-primary);
}
.cexp-anchor-nav a:hover { background: var(--cexp-soft); }

.cexp-section {
	margin-top: 20px;
	padding: 27px;
	border-radius: var(--cexp-radius);
	scroll-margin-top: 30px;
}
.cexp-section-heading { margin-bottom: 18px; }
.cexp-section-heading h2 {
	margin: 0 !important;
	font-family: Outfit, Inter, sans-serif !important;
	font-size: clamp(25px, 3vw, 31px) !important;
	line-height: 1.18 !important;
	letter-spacing: -.025em;
	font-weight: 700 !important;
	color: var(--cexp-primary) !important;
}
.cexp-section-heading p {
	margin: 7px 0 0;
	color: var(--cexp-muted);
	font-size: 14px;
}
.cexp-summary-text {
	max-width: 900px;
	margin: 0 0 20px;
	font-size: 17px;
	line-height: 1.72;
	color: #33435a;
}
.cexp-facts-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0,1fr));
	gap: 1px;
	background: var(--cexp-line);
	border: 1px solid var(--cexp-line);
	border-radius: 14px;
	overflow: hidden;
}
.cexp-fact {
	min-width: 0;
	padding: 15px;
	background: #fff;
}
.cexp-fact span {
	display: block;
	font-size: 12px;
	color: var(--cexp-muted);
	margin-bottom: 4px;
}
.cexp-fact strong {
	display: block;
	font-size: 14px;
	line-height: 1.4;
	color: var(--cexp-primary);
}
.cexp-fact-wide { grid-column: 1 / -1; }

.cexp-table-shell {
	overflow: hidden;
	border: 1px solid var(--cexp-line);
	border-radius: 14px;
}
.cexp-table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 !important;
}
.cexp-table th,
.cexp-table td {
	padding: 13px 14px;
	border: 0;
	border-bottom: 1px solid var(--cexp-line);
	text-align: left;
	vertical-align: top;
	font-size: 14px;
}
.cexp-table th {
	background: var(--cexp-soft);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: .055em;
	text-transform: uppercase;
	color: var(--cexp-muted);
}
.cexp-table tbody tr:last-child td { border-bottom: 0; }
.cexp-table tbody tr:hover td { background: #fffcf5; }
.cexp-table td small {
	display: block;
	margin-top: 4px;
	font-size: 11px;
	line-height: 1.35;
	color: var(--cexp-muted);
}
.cexp-cargo-name { color: var(--cexp-primary); }
.cexp-cargo-requirement { max-width: 340px; }
.cexp-salary { color: var(--cexp-primary); white-space: nowrap; }

.cexp-two-column {
	display: grid;
	grid-template-columns: minmax(0, 1.18fr) minmax(300px, .82fr);
	gap: 20px;
	align-items: start;
}
.cexp-two-column > .cexp-section { min-width: 0; }
.cexp-timeline {
	position: relative;
	display: grid;
	gap: 0;
}
.cexp-timeline::before {
	content: "";
	position: absolute;
	left: 8px;
	top: 9px;
	bottom: 9px;
	width: 2px;
	background: var(--cexp-line);
}
.cexp-event {
	position: relative;
	display: grid;
	grid-template-columns: 155px minmax(0,1fr);
	gap: 18px;
	padding: 0 0 22px 31px;
}
.cexp-event:last-child { padding-bottom: 0; }
.cexp-event-marker {
	position: absolute;
	left: 2px;
	top: 6px;
	width: 14px;
	height: 14px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: #a7b0bd;
	box-shadow: 0 0 0 1px var(--cexp-line);
	z-index: 1;
}
.cexp-event.is-next .cexp-event-marker {
	background: var(--cexp-accent);
	box-shadow: 0 0 0 4px rgba(213,166,42,.18);
}
.cexp-event-date {
	font-size: 13px;
	font-weight: 850;
	color: var(--cexp-primary);
}
.cexp-event-body h3 {
	margin: 0 !important;
	font-family: Inter, sans-serif !important;
	font-size: 15px !important;
	line-height: 1.3 !important;
	font-weight: 850 !important;
	color: var(--cexp-primary) !important;
}
.cexp-event-body p {
	margin: 6px 0 0;
	font-size: 13px;
	color: var(--cexp-muted);
}
.cexp-event-title-row {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	flex-wrap: wrap;
}
.cexp-next-badge {
	display: inline-flex;
	padding: 4px 7px;
	border-radius: 999px;
	background: var(--cexp-accent-soft);
	font-size: 10px;
	font-weight: 850;
	color: #6b5110;
}
.cexp-event-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	margin-top: 7px;
	font-size: 11px;
	color: var(--cexp-muted);
}
.cexp-inline-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 8px;
}
.cexp-inline-links a {
	font-size: 12px;
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 3px;
	color: var(--cexp-primary);
}

.cexp-documents {
	display: grid;
	gap: 0;
	border-top: 1px solid var(--cexp-line);
}
.cexp-document {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 14px 2px;
	border-bottom: 1px solid var(--cexp-line);
	text-decoration: none !important;
}
.cexp-document strong {
	display: block;
	font-size: 14px;
	color: var(--cexp-primary);
}
.cexp-document small {
	display: block;
	margin-top: 2px;
	font-size: 11px;
	color: var(--cexp-muted);
}
.cexp-document-arrow {
	flex: 0 0 auto;
	font-size: 18px;
	color: var(--cexp-accent);
}
.cexp-document:hover strong { text-decoration: underline; text-underline-offset: 3px; }
.cexp-source-note,
.cexp-empty {
	margin-top: 18px;
	padding: 14px 15px;
	border-radius: 12px;
	background: var(--cexp-soft);
	font-size: 12px;
	line-height: 1.55;
	color: var(--cexp-muted);
}
.cexp-empty { margin-top: 0; }

@media (max-width: 980px) {
	.cexp-hero { grid-template-columns: 1fr; }
	.cexp-hero-side { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0 20px; }
	.cexp-side-head { grid-column: 1 / -1; }
	.cexp-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.cexp-two-column { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
	.cexp-page { padding-top: 20px; }
	.cexp-container { width: min(100% - 28px, 1180px); }
	.cexp-hero-main { padding: 24px 20px; }
	.cexp-title { font-size: clamp(30px, 9.5vw, 40px) !important; }
	.cexp-lead { font-size: 15px; }
	.cexp-section { padding: 21px 18px; }
	.cexp-facts-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.cexp-fact-wide { grid-column: 1 / -1; }

	/* A mesma tabela vira cards sem duplicar o conteúdo no HTML. */
	.cexp-table-shell { overflow: visible; border: 0; border-radius: 0; }
	.cexp-table,
	.cexp-table tbody,
	.cexp-table tr,
	.cexp-table td { display: block; width: 100%; }
	.cexp-table thead { display: none; }
	.cexp-table tbody { display: grid; gap: 12px; }
	.cexp-table tr {
		padding: 15px;
		border: 1px solid var(--cexp-line);
		border-radius: 14px;
		background: #fff;
		box-shadow: 0 8px 22px rgba(12,28,48,.05);
	}
	.cexp-table td,
	.cexp-table tbody tr:last-child td {
		display: grid;
		grid-template-columns: 105px minmax(0,1fr);
		gap: 12px;
		padding: 9px 0;
		border-bottom: 1px solid var(--cexp-line);
		background: transparent !important;
	}
	.cexp-table td:last-child { border-bottom: 0 !important; }
	.cexp-table td::before {
		content: attr(data-label);
		font-size: 10px;
		font-weight: 850;
		letter-spacing: .05em;
		text-transform: uppercase;
		color: var(--cexp-muted);
	}
	.cexp-table td[data-label="Cargo"] {
		grid-template-columns: 1fr;
		padding-top: 0;
	}
	.cexp-table td[data-label="Cargo"]::before { display: none; }
	.cexp-cargo-name { font-size: 16px; }
	.cexp-salary { white-space: normal; }

	.cexp-event { grid-template-columns: 1fr; gap: 4px; padding-left: 29px; }
	.cexp-event-date { font-size: 12px; }
}

@media (max-width: 520px) {
	.cexp-container { width: calc(100% - 22px); }
	.cexp-breadcrumbs { font-size: 12px; }
	.cexp-hero-side { grid-template-columns: 1fr; padding: 19px; }
	.cexp-side-head { grid-column: auto; }
	.cexp-kv strong { max-width: 55%; }
	.cexp-kpis { grid-template-columns: 1fr 1fr; gap: 10px; }
	.cexp-kpi { padding: 14px; }
	.cexp-kpi-icon { margin-bottom: 10px; }
	.cexp-kpi-value { font-size: 20px; }
	.cexp-kpi-money, .cexp-kpi-next-title { font-size: 17px; }
	.cexp-facts-grid { grid-template-columns: 1fr; }
	.cexp-fact-wide { grid-column: auto; }
	.cexp-hero-actions { display: grid; }
	.cexp-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.cexp-btn { transition: none; }
}

/* v0.3.0 — links internos, infográficos, coleções e templates */
.cexp-kv a,
.cexp-fact a,
.cexp-inline-entity,
.cexp-cargo-name a {
	color: var(--cexp-primary);
	text-decoration: underline;
	text-decoration-color: rgba(213,166,42,.75);
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}
.cexp-hero-side .cexp-kv a { text-decoration-color: rgba(213,166,42,.9); }

.cexp-related-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 10px;
}
.cexp-related-link {
	display: grid;
	grid-template-columns: minmax(0,1fr) auto;
	gap: 2px 14px;
	align-items: center;
	padding: 14px 15px;
	border: 1px solid var(--cexp-line);
	border-radius: 13px;
	background: #fff;
	text-decoration: none !important;
	transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease;
}
.cexp-related-link:hover {
	border-color: #d9c275;
	transform: translateY(-1px);
	box-shadow: 0 7px 18px rgba(12,28,48,.05);
}
.cexp-related-link small {
	grid-column: 1;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--cexp-muted);
}
.cexp-related-link strong { grid-column: 1; font-size: 14px; color: var(--cexp-primary); }
.cexp-related-link > span { grid-column: 2; grid-row: 1 / 3; font-size: 19px; color: var(--cexp-accent); }

.cexp-infographics {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 14px;
}
.cexp-infographic {
	margin: 0;
	padding: 18px;
	border: 1px solid var(--cexp-line);
	border-radius: 14px;
	background: linear-gradient(180deg,#fff,#fffdf9);
}
.cexp-infographic figcaption { display: block; margin-bottom: 17px; }
.cexp-infographic figcaption strong { display: block; color: var(--cexp-primary); font-size: 16px; }
.cexp-infographic figcaption span { display: block; margin-top: 3px; color: var(--cexp-muted); font-size: 12px; }
.cexp-stack {
	display: flex;
	height: 18px;
	overflow: hidden;
	border-radius: 999px;
	background: #ece7dd;
}
.cexp-stack span { min-width: 0; height: 100%; }
.cexp-stack-immediate { background: var(--cexp-primary); }
.cexp-stack-cr { background: var(--cexp-accent); }
.cexp-chart-legend {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 12px;
	margin-top: 14px;
}
.cexp-chart-legend > div {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto;
	gap: 0 8px;
	align-items: center;
}
.cexp-chart-dot { grid-row: 1 / 3; width: 9px; height: 9px; border-radius: 999px; }
.cexp-chart-dot.is-primary { background: var(--cexp-primary); }
.cexp-chart-dot.is-secondary { background: var(--cexp-accent); }
.cexp-chart-legend strong { font-size: 17px; line-height: 1.1; color: var(--cexp-primary); }
.cexp-chart-legend small { font-size: 10px; color: var(--cexp-muted); }
.cexp-bar-chart { display: grid; gap: 12px; }
.cexp-bar-label { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 5px; font-size: 12px; color: var(--cexp-muted); }
.cexp-bar-label strong { color: var(--cexp-primary); }
.cexp-bar-track { height: 9px; border-radius: 999px; background: #eee9e0; overflow: hidden; }
.cexp-bar-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--cexp-primary),#31516f); }
.cexp-salary-range { display: grid; grid-template-columns: auto minmax(50px,1fr) auto; gap: 13px; align-items: center; }
.cexp-salary-range > span { height: 4px; border-radius: 999px; background: linear-gradient(90deg,var(--cexp-accent),var(--cexp-primary)); }
.cexp-salary-range div:last-child { text-align: right; }
.cexp-salary-range small { display: block; font-size: 10px; color: var(--cexp-muted); }
.cexp-salary-range strong { display: block; margin-top: 3px; font-size: 14px; color: var(--cexp-primary); }

.cexp-dashboard-grid {
	display: grid;
	grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr);
	gap: 20px;
	align-items: start;
}
.cexp-dashboard-grid > .cexp-section { min-width: 0; }

/* Template Dashboard: mais compacto e orientado a dados. */
.cexp-template-dashboard .cexp-hero-main { padding: 28px; }
.cexp-template-dashboard .cexp-title { font-size: clamp(30px,3.7vw,46px) !important; }
.cexp-template-dashboard .cexp-lead { max-width: 900px; font-size: 15px; }
.cexp-template-dashboard .cexp-kpis { margin-top: 12px; }
.cexp-template-dashboard .cexp-infographics { grid-template-columns: repeat(3,minmax(0,1fr)); }
.cexp-template-dashboard .cexp-section { margin-top: 14px; }

/* Template Compacto: reduz hero e elimina o painel lateral. */
.cexp-template-compacto .cexp-page { padding-top: 20px; }
.cexp-template-compacto .cexp-hero { grid-template-columns: 1fr; }
.cexp-template-compacto .cexp-hero-side { display: none; }
.cexp-template-compacto .cexp-hero-main { padding: 25px 28px; }
.cexp-template-compacto .cexp-title { font-size: clamp(29px,3.5vw,43px) !important; }
.cexp-template-compacto .cexp-lead { font-size: 15px; max-width: 950px; }
.cexp-template-compacto .cexp-kpis { margin: 14px 0; }
.cexp-template-compacto .cexp-section { padding: 22px; }
.cexp-template-compacto .cexp-two-column { grid-template-columns: 1fr; }

/* Páginas de coleção / rede interna */
.cexp-virtual-collection .site-content { background: var(--cexp-bg); }
.cexp-virtual-collection .site-content > .ast-container { display:block; max-width:none; padding:0; }
.cexp-collection-hero {
	position: relative;
	padding: 34px;
	border-radius: var(--cexp-radius);
	background: linear-gradient(145deg,rgba(11,31,51,.98),rgba(29,61,89,.96));
	color: #fff;
	box-shadow: var(--cexp-shadow);
	overflow: hidden;
}
.cexp-collection-hero::after { content:""; position:absolute; width:260px; height:260px; right:-80px; top:-100px; border-radius:50%; background:rgba(213,166,42,.13); }
.cexp-collection-hero .cexp-section-kicker { position:relative; z-index:1; color:#f4d77d; }
.cexp-collection-hero h1 { position:relative; z-index:1; margin:5px 0 10px !important; max-width:900px; font-size:clamp(33px,4.5vw,52px) !important; line-height:1.05 !important; color:#fff !important; }
.cexp-collection-hero p { position:relative; z-index:1; max-width:850px; margin:0; color:rgba(255,255,255,.78); font-size:16px; }
.cexp-collection-total { position:relative; z-index:1; display:inline-flex; align-items:baseline; gap:7px; margin-top:22px; padding:8px 12px; border:1px solid rgba(255,255,255,.2); border-radius:12px; background:rgba(255,255,255,.07); }
.cexp-collection-total strong { font-size:22px; color:#f4d77d; }
.cexp-collection-total span { font-size:12px; color:rgba(255,255,255,.75); }
.cexp-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:18px; }
.cexp-result-card { min-width:0; padding:20px; border:1px solid var(--cexp-line); border-radius:16px; background:#fff; box-shadow:0 8px 24px rgba(12,28,48,.05); }
.cexp-result-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; color:var(--cexp-muted); font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
.cexp-result-top small { padding:3px 7px; border-radius:999px; background:var(--cexp-soft); font-size:9px; }
.cexp-result-card h2 { margin:12px 0 10px !important; font-family:Outfit,Inter,sans-serif !important; font-size:21px !important; line-height:1.22 !important; color:var(--cexp-primary) !important; }
.cexp-result-card h2 a { color:inherit; text-decoration:none; }
.cexp-result-card h2 a:hover { text-decoration:underline; text-underline-offset:3px; }
.cexp-result-meta { display:flex; flex-wrap:wrap; gap:7px 12px; font-size:12px; color:var(--cexp-muted); }
.cexp-result-open { display:inline-flex; gap:7px; margin-top:16px; font-size:12px; font-weight:850; color:var(--cexp-primary) !important; text-decoration:none !important; }
.cexp-result-open span { color:var(--cexp-accent); }
.cexp-pagination { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:20px; padding:14px 16px; border:1px solid var(--cexp-line); border-radius:14px; background:#fff; font-size:12px; }
.cexp-pagination a { font-weight:800; color:var(--cexp-primary); text-decoration:none; }

@media (max-width: 980px) {
	.cexp-dashboard-grid { grid-template-columns:1fr; }
	.cexp-template-dashboard .cexp-infographics { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
	.cexp-related-grid,
	.cexp-infographics,
	.cexp-template-dashboard .cexp-infographics,
	.cexp-results { grid-template-columns:1fr; }
	.cexp-collection-hero { padding:26px 21px; }
	.cexp-chart-legend { grid-template-columns:1fr 1fr; }
}
@media (max-width: 520px) {
	.cexp-related-grid { grid-template-columns:1fr; }
	.cexp-pagination { flex-wrap:wrap; justify-content:center; }
	.cexp-pagination span { order:-1; width:100%; text-align:center; }
}

/* ==========================================================
 * v0.4.0 — design system, hubs, menus e visualizações ricas
 * ========================================================== */
:root {
	--cexp-chart-1: var(--cexp-primary);
	--cexp-chart-2: var(--cexp-accent);
	--cexp-chart-3: var(--cexp-positive);
	--cexp-chart-4: var(--cexp-danger);
	--cexp-chart-5: #7c3aed;
	--cexp-chart-6: #0891b2;
	--cexp-heading-font: Outfit, Inter, ui-sans-serif, system-ui, sans-serif;
	--cexp-body-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.cexp-virtual-page .site-content { background: var(--cexp-bg); }
.cexp-virtual-page .site-content > .ast-container { display:block; max-width:none; padding:0; }
.cexp-page { font-family: var(--cexp-body-font); }
.cexp-page h1,.cexp-page h2,.cexp-page h3,.cexp-page h4,.cexp-title { font-family: var(--cexp-heading-font) !important; }

/* Paletas independentes do layout */
.cexp-theme-navy-gold { --cexp-bg:#f5f3ef;--cexp-surface:#fff;--cexp-text:#142336;--cexp-muted:#687385;--cexp-line:#e6e0d8;--cexp-primary:#0b1f33;--cexp-accent:#d5a62a;--cexp-accent-soft:#fbf5df;--cexp-danger:#b5483e;--cexp-positive:#0f766e;--cexp-soft:#faf7f0;--cexp-chart-5:#7c3aed;--cexp-chart-6:#0891b2; }
.cexp-theme-blue-teal { --cexp-bg:#f6f8fb;--cexp-surface:#fff;--cexp-text:#111827;--cexp-muted:#667085;--cexp-line:#e4e7ec;--cexp-primary:#2563eb;--cexp-accent:#0f766e;--cexp-accent-soft:#e9f7f4;--cexp-danger:#dc2626;--cexp-positive:#059669;--cexp-soft:#f2f7ff;--cexp-chart-5:#7c3aed;--cexp-chart-6:#06b6d4; }
.cexp-theme-forest-gold { --cexp-bg:#f3f6f3;--cexp-surface:#fff;--cexp-text:#1b2a21;--cexp-muted:#647067;--cexp-line:#dfe7df;--cexp-primary:#174c35;--cexp-accent:#d9a520;--cexp-accent-soft:#faf4dc;--cexp-danger:#b23a2f;--cexp-positive:#2f855a;--cexp-soft:#f3f7f2;--cexp-chart-5:#5b6f2c;--cexp-chart-6:#2a7f9e; }
.cexp-theme-wine-sand { --cexp-bg:#f7f1ea;--cexp-surface:#fffdf9;--cexp-text:#2f2023;--cexp-muted:#786a68;--cexp-line:#eadbd0;--cexp-primary:#6f2232;--cexp-accent:#c28b49;--cexp-accent-soft:#fbf0df;--cexp-danger:#a33a3a;--cexp-positive:#4f7b62;--cexp-soft:#fbf6ef;--cexp-chart-5:#8a4f7d;--cexp-chart-6:#317c86; }
.cexp-theme-violet-cyan { --cexp-bg:#f7f6fb;--cexp-surface:#fff;--cexp-text:#221b35;--cexp-muted:#706983;--cexp-line:#e7e3ef;--cexp-primary:#5b34da;--cexp-accent:#18a9b7;--cexp-accent-soft:#e9fbfd;--cexp-danger:#d84765;--cexp-positive:#17966b;--cexp-soft:#f4f1fd;--cexp-chart-5:#a43cd6;--cexp-chart-6:#0ea5e9; }
.cexp-theme-graphite-lime { --cexp-bg:#f4f5f5;--cexp-surface:#fff;--cexp-text:#171a1c;--cexp-muted:#687076;--cexp-line:#dde1e3;--cexp-primary:#252a2d;--cexp-accent:#a7c936;--cexp-accent-soft:#f2f8df;--cexp-danger:#d34e4e;--cexp-positive:#25845c;--cexp-soft:#f7f8f8;--cexp-chart-5:#6d5bd0;--cexp-chart-6:#1687a7; }

/* Fontes */
.cexp-font-outfit-inter { --cexp-heading-font:Outfit,Inter,ui-sans-serif,system-ui,sans-serif;--cexp-body-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.cexp-font-serif-editorial { --cexp-heading-font:Georgia,"Times New Roman",serif;--cexp-body-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.cexp-font-system { --cexp-heading-font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--cexp-body-font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.cexp-font-humanist { --cexp-heading-font:"Trebuchet MS","Segoe UI",sans-serif;--cexp-body-font:"Segoe UI","Trebuchet MS",Arial,sans-serif; }
.cexp-font-mono-data { --cexp-heading-font:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--cexp-body-font:Inter,ui-sans-serif,system-ui,sans-serif; }
.cexp-font-mono-data .cexp-kpi-value,.cexp-font-mono-data .cexp-collection-metric strong,.cexp-font-mono-data .cexp-entity-card>div strong { font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace; letter-spacing:-.04em; }

/* Menu do Explorer */
.cexp-explorer-nav { position:sticky; top:0; z-index:19; border-bottom:1px solid var(--cexp-line); background:color-mix(in srgb,var(--cexp-surface) 94%,transparent); backdrop-filter:blur(12px); }
.admin-bar .cexp-explorer-nav { top:32px; }
.cexp-explorer-nav-inner { width:min(1180px,calc(100% - 40px)); margin:auto; overflow-x:auto; scrollbar-width:none; }
.cexp-explorer-nav-inner::-webkit-scrollbar { display:none; }
.cexp-explorer-menu { display:flex; gap:4px; align-items:center; list-style:none; margin:0!important; padding:8px 0!important; min-width:max-content; }
.cexp-explorer-menu li { margin:0!important; }
.cexp-explorer-menu a { display:block; padding:8px 11px; border-radius:9px; color:var(--cexp-muted); font:700 13px/1 var(--cexp-body-font); text-decoration:none!important; }
.cexp-explorer-menu a:hover,.cexp-explorer-menu .is-active>a,.cexp-explorer-menu .current-menu-item>a { background:var(--cexp-soft); color:var(--cexp-primary); }

/* Coleções e hubs */
.cexp-collection-hero,.cexp-hub-hero { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:end; position:relative; padding:34px; border-radius:var(--cexp-radius); background:linear-gradient(145deg,color-mix(in srgb,var(--cexp-primary) 96%,#000),color-mix(in srgb,var(--cexp-primary) 78%,#fff)); color:#fff; box-shadow:var(--cexp-shadow); overflow:hidden; }
.cexp-hub-hero { display:block; }
.cexp-hub-hero::after,.cexp-collection-hero::after { content:"";position:absolute;width:270px;height:270px;right:-90px;top:-105px;border-radius:50%;background:color-mix(in srgb,var(--cexp-accent) 20%,transparent); }
.cexp-hub-hero>* ,.cexp-collection-hero>* { position:relative;z-index:1; }
.cexp-hub-hero .cexp-section-kicker,.cexp-collection-hero .cexp-section-kicker { color:color-mix(in srgb,var(--cexp-accent) 82%,#fff); }
.cexp-hub-hero h1,.cexp-collection-hero h1 { margin:6px 0 10px!important;max-width:900px;font-size:clamp(34px,4.5vw,54px)!important;line-height:1.03!important;color:#fff!important;letter-spacing:-.035em; }
.cexp-hub-hero p,.cexp-collection-hero p { max-width:850px;margin:0;color:rgba(255,255,255,.79);font-size:16px; }
.cexp-collection-intro { margin-top:12px!important;font-size:13px!important;color:rgba(255,255,255,.66)!important; }
.cexp-collection-metrics { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 20px; }
.cexp-collection-metric { padding:17px;border:1px solid var(--cexp-line);border-radius:15px;background:var(--cexp-surface);box-shadow:0 7px 22px rgba(12,28,48,.045); }
.cexp-collection-metric>span { display:block;font-size:11px;color:var(--cexp-muted);text-transform:uppercase;letter-spacing:.045em;font-weight:800; }
.cexp-collection-metric>strong { display:block;margin-top:4px;font-size:24px;line-height:1.12;color:var(--cexp-primary); }
.cexp-collection-metric>small { display:block;margin-top:4px;font-size:11px;color:var(--cexp-muted); }
.cexp-results { margin-top:20px; }
.cexp-results>.cexp-section-heading { grid-column:1/-1; }
.cexp-result-card h3 { margin:12px 0 10px!important;font-size:21px!important;line-height:1.22!important;color:var(--cexp-primary)!important; }
.cexp-result-card h3 a { color:inherit;text-decoration:none; }
.cexp-result-card h3 a:hover { text-decoration:underline;text-underline-offset:3px; }
.cexp-entity-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px; }
.cexp-entity-card { position:relative;display:block;min-width:0;padding:20px;border:1px solid var(--cexp-line);border-radius:16px;background:var(--cexp-surface);text-decoration:none!important;box-shadow:0 7px 20px rgba(12,28,48,.04);transition:transform .16s ease,border-color .16s ease; }
.cexp-entity-card:hover { transform:translateY(-2px);border-color:color-mix(in srgb,var(--cexp-accent) 55%,var(--cexp-line)); }
.cexp-entity-card h3 { margin:0 35px 12px 0!important;font-size:19px!important;color:var(--cexp-primary)!important; }
.cexp-entity-card>div { color:var(--cexp-muted);font-size:12px; }
.cexp-entity-card>div strong { color:var(--cexp-primary);font-size:18px; }
.cexp-entity-card>small { display:block;margin-top:3px;color:var(--cexp-muted);font-size:11px; }
.cexp-entity-card>b { display:block;margin-top:16px;color:var(--cexp-primary);font-size:12px; }
.cexp-entity-icon { position:absolute;right:16px;top:16px;width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:var(--cexp-soft);color:var(--cexp-accent);font-weight:900; }
.cexp-upcoming-list { display:grid;gap:8px; }
.cexp-upcoming-item { display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--cexp-line);text-decoration:none!important; }
.cexp-upcoming-item:last-child { border-bottom:0; }
.cexp-upcoming-item time { font-weight:850;color:var(--cexp-primary); }
.cexp-upcoming-item strong,.cexp-upcoming-item small { display:block; }
.cexp-upcoming-item small { color:var(--cexp-muted);font-size:11px;margin-top:2px; }
.cexp-upcoming-item>b { color:var(--cexp-accent); }

/* Donut e cores de gráficos */
.cexp-donut-wrap { display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px;align-items:center; }
.cexp-donut { width:160px;height:160px;border-radius:50%;position:relative;display:grid;place-items:center; }
.cexp-donut::after { content:"";position:absolute;inset:27px;border-radius:50%;background:var(--cexp-surface);box-shadow:inset 0 0 0 1px var(--cexp-line); }
.cexp-donut>span { position:relative;z-index:1;text-align:center; }
.cexp-donut strong,.cexp-donut small { display:block; }
.cexp-donut strong { font-size:23px;color:var(--cexp-primary); }
.cexp-donut small { font-size:10px;color:var(--cexp-muted);text-transform:uppercase; }
.cexp-donut-legend { display:grid;gap:7px; }
.cexp-donut-legend>div { display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:11px;color:var(--cexp-muted); }
.cexp-donut-legend i { width:9px;height:9px;border-radius:50%; }
.cexp-donut-legend strong { color:var(--cexp-primary); }

/* Layouts — cada template muda composição, densidade e linguagem visual */
.cexp-template-editorial-premium .cexp-hero-main { background:linear-gradient(145deg,color-mix(in srgb,var(--cexp-primary) 96%,#000),color-mix(in srgb,var(--cexp-primary) 82%,#fff)); }
.cexp-template-editorial-premium .cexp-section { padding:27px; }
.cexp-template-editorial-premium .cexp-summary-text { font-size:17px;line-height:1.75; }

.cexp-template-data-clean { --cexp-radius:14px;--cexp-shadow:0 8px 24px rgba(16,24,40,.055); }
.cexp-template-data-clean .cexp-hero-main { background:var(--cexp-surface);color:var(--cexp-text);border-top:5px solid var(--cexp-primary); }
.cexp-template-data-clean .cexp-title { color:var(--cexp-primary)!important;font-size:clamp(31px,4vw,48px)!important; }
.cexp-template-data-clean .cexp-lead,.cexp-template-data-clean .cexp-updated { color:var(--cexp-muted); }
.cexp-template-data-clean .cexp-eyebrow { color:var(--cexp-primary); }
.cexp-template-data-clean .cexp-status { color:var(--cexp-text);border-color:var(--cexp-line);background:var(--cexp-soft); }
.cexp-template-data-clean .cexp-btn-secondary { color:var(--cexp-primary)!important;border-color:var(--cexp-line);background:#fff; }
.cexp-template-data-clean .cexp-infographics { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cexp-template-data-clean .cexp-section { box-shadow:none; }

.cexp-template-institutional { --cexp-radius:12px;--cexp-shadow:0 4px 15px rgba(20,50,35,.04); }
.cexp-template-institutional .cexp-hero-main { padding:30px;border-left:7px solid var(--cexp-accent);background:var(--cexp-primary); }
.cexp-template-institutional .cexp-title { font-size:clamp(30px,3.8vw,46px)!important;letter-spacing:-.02em; }
.cexp-template-institutional .cexp-section,.cexp-template-institutional .cexp-kpi { border-radius:10px; }
.cexp-template-institutional .cexp-anchor-nav { border-radius:8px; }

.cexp-template-analytics { --cexp-radius:14px;--cexp-shadow:0 8px 28px rgba(12,28,48,.055); }
.cexp-template-analytics .cexp-hero { grid-template-columns:1fr; }
.cexp-template-analytics .cexp-hero-side { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }
.cexp-template-analytics .cexp-side-head { grid-column:1/-1; }
.cexp-template-analytics .cexp-kpis { margin-top:12px; }
.cexp-template-analytics .cexp-infographics { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cexp-template-analytics .cexp-section { margin-top:14px; }
.cexp-template-analytics .cexp-title { font-size:clamp(30px,3.7vw,46px)!important; }

.cexp-template-magazine .cexp-hero { grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr); }
.cexp-template-magazine .cexp-hero-main { background:var(--cexp-surface);color:var(--cexp-text);border-top:8px solid var(--cexp-primary); }
.cexp-template-magazine .cexp-title { color:var(--cexp-primary)!important;font-size:clamp(38px,5.3vw,64px)!important;line-height:1!important; }
.cexp-template-magazine .cexp-lead { color:var(--cexp-muted);font-size:19px;line-height:1.7; }
.cexp-template-magazine .cexp-eyebrow { color:var(--cexp-primary); }
.cexp-template-magazine .cexp-status { color:var(--cexp-text);background:var(--cexp-soft);border-color:var(--cexp-line); }
.cexp-template-magazine .cexp-updated { color:var(--cexp-muted); }
.cexp-template-magazine .cexp-btn-secondary { color:var(--cexp-primary)!important;background:#fff;border-color:var(--cexp-line); }
.cexp-magazine-grid { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:20px;align-items:start; }
.cexp-magazine-grid .cexp-kpis { grid-template-columns:1fr 1fr;margin-top:20px; }

.cexp-template-visual-story .cexp-container { width:min(1260px,calc(100% - 40px)); }
.cexp-template-visual-story .cexp-hero { grid-template-columns:minmax(0,1fr) 380px; }
.cexp-template-visual-story .cexp-hero-main { min-height:470px;display:flex;flex-direction:column;justify-content:flex-end;padding:44px;background:radial-gradient(circle at 88% 15%,color-mix(in srgb,var(--cexp-accent) 24%,transparent),transparent 35%),linear-gradient(145deg,color-mix(in srgb,var(--cexp-primary) 97%,#000),color-mix(in srgb,var(--cexp-primary) 70%,#fff)); }
.cexp-template-visual-story .cexp-title { font-size:clamp(42px,6vw,70px)!important;max-width:960px; }
.cexp-template-visual-story .cexp-kpis { grid-template-columns:repeat(4,1fr); }
.cexp-template-visual-story .cexp-infographics { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cexp-template-visual-story .cexp-infographic { padding:24px;min-height:240px; }
.cexp-template-visual-story .cexp-section { padding:30px; }

.cexp-template-compacto .cexp-hero-main { background:var(--cexp-primary); }
.cexp-template-compacto .cexp-related { margin-top:14px; }

@media(max-width:980px){
	.cexp-collection-metrics{grid-template-columns:repeat(2,1fr)}
	.cexp-entity-grid{grid-template-columns:repeat(2,1fr)}
	.cexp-template-data-clean .cexp-infographics,.cexp-template-analytics .cexp-infographics{grid-template-columns:repeat(2,1fr)}
	.cexp-magazine-grid{grid-template-columns:1fr}
	.cexp-template-visual-story .cexp-hero{grid-template-columns:1fr}.cexp-template-visual-story .cexp-hero-main{min-height:360px}
}
@media(max-width:782px){.admin-bar .cexp-explorer-nav{top:46px}}
@media(max-width:720px){
	.cexp-explorer-nav-inner{width:calc(100% - 24px)}
	.cexp-collection-hero{grid-template-columns:1fr}
	.cexp-entity-grid{grid-template-columns:1fr}
	.cexp-donut-wrap{grid-template-columns:1fr}.cexp-donut{margin:auto}
	.cexp-upcoming-item{grid-template-columns:80px minmax(0,1fr) auto}
	.cexp-template-magazine .cexp-lead{font-size:16px}
	.cexp-template-data-clean .cexp-infographics,.cexp-template-analytics .cexp-infographics{grid-template-columns:1fr}
}
@media(max-width:520px){
	.cexp-collection-metrics{grid-template-columns:1fr 1fr}
	.cexp-collection-metric{padding:14px}.cexp-collection-metric>strong{font-size:20px}
	.cexp-template-visual-story .cexp-container{width:calc(100% - 22px)}
	.cexp-template-visual-story .cexp-hero-main{min-height:300px;padding:25px}.cexp-template-visual-story .cexp-title{font-size:35px!important}
	.cexp-template-magazine .cexp-title{font-size:37px!important}
}

/* ==========================================================
 * v0.5.0 — números, fotos e paginação em português
 * ========================================================== */
:root { --cexp-number-font:Outfit,Inter,ui-sans-serif,system-ui,sans-serif; }
.cexp-font-serif-editorial { --cexp-number-font:Inter,ui-sans-serif,system-ui,sans-serif; }
.cexp-font-system { --cexp-number-font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.cexp-font-humanist { --cexp-number-font:"Segoe UI","Trebuchet MS",Arial,sans-serif; }
.cexp-font-mono-data { --cexp-number-font:"SFMono-Regular",Consolas,"Liberation Mono",monospace; }
.cexp-kpi-value,
.cexp-collection-total strong,
.cexp-collection-metric>strong,
.cexp-entity-card>div strong,
.cexp-chart-legend strong,
.cexp-donut span strong,
.cexp-result-meta strong,
.cexp-bar-value,
.cexp-hub-count {
	font-family:var(--cexp-number-font)!important;
	font-variant-numeric:tabular-nums lining-nums;
	font-weight:900!important;
	letter-spacing:-.045em;
}
.cexp-kpi-value { font-size:clamp(28px,3vw,36px); line-height:1; }
.cexp-kpi-money { font-size:clamp(23px,2.5vw,31px); }
.cexp-kpi-next-title { font-size:clamp(20px,2.1vw,25px); letter-spacing:-.025em; }
.cexp-collection-total strong { font-size:clamp(30px,3.5vw,42px); line-height:.95; }
.cexp-collection-metric>strong { font-size:clamp(27px,2.7vw,34px); }
.cexp-entity-card>div strong { font-size:23px; }
.cexp-result-meta strong { font-size:18px; color:var(--cexp-primary); }

.cexp-hero-photo { position:relative;z-index:1;margin:22px 0 0;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06); }
.cexp-hero-photo img { display:block;width:100%;aspect-ratio:16/7;object-fit:cover; }
.cexp-hero-photo figcaption { display:flex;justify-content:space-between;gap:12px;padding:8px 10px;background:rgba(4,14,24,.72);color:rgba(255,255,255,.86);font-size:10px;line-height:1.35; }
.cexp-hero-photo figcaption small { color:rgba(255,255,255,.64);text-align:right; }
.cexp-template-data-clean .cexp-hero-photo,.cexp-template-magazine .cexp-hero-photo { border-color:var(--cexp-line); }
.cexp-template-data-clean .cexp-hero-photo figcaption,.cexp-template-magazine .cexp-hero-photo figcaption { background:var(--cexp-soft);color:var(--cexp-text); }
.cexp-template-data-clean .cexp-hero-photo figcaption small,.cexp-template-magazine .cexp-hero-photo figcaption small { color:var(--cexp-muted); }
.cexp-template-visual-story .cexp-hero-photo { margin-top:auto;border-radius:18px; }
.cexp-template-visual-story .cexp-hero-photo img { aspect-ratio:16/6; }
.cexp-template-compacto .cexp-hero-photo { display:none; }

.cexp-pagination { justify-content:center;gap:10px;background:var(--cexp-surface); }
.cexp-pagination-numbers { display:flex;align-items:center;justify-content:center;gap:5px; }
.cexp-pagination-numbers a,
.cexp-pagination-numbers .is-current { min-width:34px;height:34px;display:grid;place-items:center;padding:0 8px;border:1px solid var(--cexp-line);border-radius:9px;background:var(--cexp-surface);color:var(--cexp-primary);text-decoration:none;font-family:var(--cexp-number-font);font-weight:900;font-variant-numeric:tabular-nums; }
.cexp-pagination-numbers a:hover { border-color:var(--cexp-accent);background:var(--cexp-soft); }
.cexp-pagination-numbers .is-current { border-color:var(--cexp-primary);background:var(--cexp-primary);color:#fff; }
.cexp-pagination-numbers>span:not(.is-current) { width:auto;color:var(--cexp-muted); }
.cexp-pagination-arrow { padding:8px 10px;border-radius:9px; }
@media(max-width:620px){
	.cexp-kpi-value{font-size:27px}.cexp-kpi-money{font-size:23px}.cexp-collection-metric>strong{font-size:25px}
	.cexp-hero-photo img{aspect-ratio:4/3}.cexp-hero-photo figcaption{display:block}.cexp-hero-photo figcaption small{display:block;margin-top:3px;text-align:left}
	.cexp-pagination{display:grid;grid-template-columns:auto 1fr auto;padding:10px;overflow-x:auto}.cexp-pagination-numbers{min-width:max-content}.cexp-pagination-arrow{white-space:nowrap}
}
