/* Latest Programs / Home Showcase only. No selector escapes this root. */
.aura-portfolio-latest {
	--aura-latest-accent: #236b54;
	--aura-latest-text: #17251f;
	--aura-latest-muted: #66746d;
	--aura-latest-surface: #f3f7f4;
	--aura-latest-card-bg: #fff;
	--aura-latest-border: color-mix(in srgb, var(--aura-latest-accent) 18%, #d8ddd9);
	--aura-latest-card-radius: 16px;
	--aura-latest-card-shadow: 0 12px 34px rgba(19, 46, 35, .075);
	--aura-latest-card-shadow-hover: 0 16px 38px rgba(19, 46, 35, .11);
	--aura-latest-image-radius: 15px 15px 0 0;
	--aura-latest-section-radius: 24px;
	--aura-latest-impact-bg: color-mix(in srgb, var(--aura-latest-accent) 8%, #fff);
	--aura-latest-cta-bg: var(--aura-latest-accent);
	--aura-latest-cta-color: #fff;
	color: var(--aura-latest-text);
}

.aura-portfolio-latest *,
.aura-portfolio-latest *::before,
.aura-portfolio-latest *::after { box-sizing: border-box; }

.aura-portfolio-latest--showcase {
	--aura-pf-cols: 4;
	--aura-pf-cols-tablet: 2;
	--aura-pf-cols-mobile: 1;
	--aura-pf-gap-x: 24px;
	--aura-pf-gap-y: 32px;
	--aura-latest-carousel-peek: clamp(64px, 8vw, 112px);
}

.aura-portfolio-latest__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(24px, 5vw, 80px);
	align-items: end;
	margin-bottom: clamp(38px, 6vw, 72px);
}

.aura-portfolio-latest__header-copy { max-width: 780px; }
.aura-portfolio-latest__eyebrow {
	margin: 0 0 14px;
	color: var(--aura-latest-accent);
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.aura-portfolio-latest__title {
	max-width: 16ch;
	margin: 0;
	color: inherit;
	font-size: clamp(2.15rem, 5vw, 4.75rem);
	font-weight: 720;
	letter-spacing: -.045em;
	line-height: .98;
}

.aura-portfolio-latest__description {
	max-width: 680px;
	margin-top: 24px;
	color: var(--aura-latest-muted);
	font-size: clamp(1rem, 1.5vw, 1.18rem);
	line-height: 1.65;
}
.aura-portfolio-latest__description > :first-child { margin-top: 0; }
.aura-portfolio-latest__description > :last-child { margin-bottom: 0; }

.aura-portfolio-latest__archive-cta,
.aura-portfolio-latest__bottom-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-height: 48px;
	padding: 11px 20px;
	color: var(--aura-latest-cta-color);
	background: var(--aura-latest-cta-bg);
	border: 1px solid var(--aura-latest-cta-bg);
	border-radius: 999px;
	font-weight: 750;
	text-decoration: none;
}
.aura-portfolio-latest__archive-cta:hover,
.aura-portfolio-latest__bottom-button:hover { filter: brightness(.94); }

.aura-portfolio-latest__listing { position: relative; }
.aura-portfolio-latest__listing-heading {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 24px;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 22px;
}
.aura-portfolio-latest__listing-actions,
.aura-portfolio-latest__track-navigation {
	display: flex;
	gap: 10px;
	align-items: center;
}
.aura-portfolio-latest__listing-actions { margin-left: auto; }
.aura-portfolio-latest__section-label {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	margin: 0;
	font-size: 1rem;
	font-weight: 780;
}
.aura-portfolio-latest__section-label span {
	display: inline-grid;
	place-items: center;
	width: 28px;
	height: 28px;
	color: var(--aura-latest-accent);
	border: 1px solid var(--aura-latest-border);
	border-radius: 50%;
}

.aura-portfolio-latest--showcase .aura-portfolio-shell { position: relative; }
.aura-portfolio-latest--showcase .aura-portfolio--slider {
	--aura-latest-effective-cols: var(--aura-pf-cols, 4);
	--aura-latest-effective-peek: var(--aura-latest-carousel-peek);
	cursor: grab;
	column-gap: var(--aura-pf-gap-x, 24px);
	overflow-x: auto;
	/* The track reserves the full fade-out area for card shadows on every edge. */
	padding: 0 3rem 3rem;
	scrollbar-width: none;
	-ms-overflow-style: none;
	scroll-snap-type: x proximity;
	scroll-padding-inline-start: 3rem;
	scroll-behavior: smooth;
	touch-action: pan-x pan-y;
}
.aura-portfolio-latest--showcase .aura-portfolio--slider.aura-portfolio--fit-items {
	--aura-latest-effective-peek: 0px;
	cursor: default;
	justify-content: center;
	overflow-x: hidden;
}
.aura-portfolio-latest--showcase .aura-portfolio-latest__carousel-cta[hidden] { display: none; }
.aura-portfolio-latest--showcase .aura-portfolio--slider::-webkit-scrollbar { display: none; }
.aura-portfolio-latest--showcase [data-aura-track] img {
	-webkit-user-drag: none;
	user-select: none;
}
.aura-portfolio-latest--showcase .aura-portfolio--slider.is-mouse-dragging {
	cursor: grabbing;
	user-select: none;
}
.aura-portfolio-latest--showcase .aura-portfolio--slider .aura-portfolio-card,
.aura-portfolio-latest--showcase .aura-portfolio--slider .aura-portfolio-latest__carousel-cta {
	flex: 0 0 clamp(12rem, calc((100% - var(--aura-latest-effective-peek) + var(--aura-pf-gap-x, 24px)) / var(--aura-latest-effective-cols) - var(--aura-pf-gap-x, 24px)), 100%);
}
.aura-portfolio-latest--showcase .aura-portfolio--slider.aura-portfolio--fit-items .aura-portfolio-card,
.aura-portfolio-latest--showcase .aura-portfolio--slider.aura-portfolio--fit-items .aura-portfolio-latest__carousel-cta {
	flex-basis: calc((100% + var(--aura-pf-gap-x, 24px)) / var(--aura-latest-effective-cols) - var(--aura-pf-gap-x, 24px));
}
.aura-portfolio-latest--showcase .aura-portfolio-card {
	position: relative;
	display: flex;
	min-width: 0;
	height: 100%;
	overflow: visible;
	flex-direction: column;
	background: var(--aura-latest-card-bg);
	border: 1px solid var(--aura-latest-border);
	border-radius: var(--aura-latest-card-radius);
	box-shadow: var(--aura-latest-card-shadow);
	transition: box-shadow .25s ease;
}
.aura-portfolio-latest--showcase .aura-portfolio-card:hover { box-shadow: var(--aura-latest-card-shadow-hover); }

.aura-portfolio-latest--showcase .aura-portfolio-card__media {
	overflow: hidden !important;
	clip-path: inset(0 round var(--aura-latest-card-radius) var(--aura-latest-card-radius) 0 0);
	isolation: isolate;
	background: var(--aura-latest-surface);
	border-start-start-radius: var(--aura-latest-card-radius);
	border-start-end-radius: var(--aura-latest-card-radius);
}
.aura-portfolio-latest--showcase .aura-portfolio-card__media img { display: block; width: 100%; transition: transform .35s ease; }
.aura-portfolio-latest--showcase .aura-portfolio--hover-lift .aura-portfolio-card:hover { transform: none; }
.aura-portfolio-latest--showcase .aura-portfolio--hover-lift .aura-portfolio-card:hover .aura-portfolio-card__media img { transform: scale(1.02); }
.aura-portfolio-latest--showcase .aura-portfolio-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 13px;
	padding: 20px;
}
.aura-portfolio-latest--showcase .aura-portfolio-card__body > * { margin: 0; }

.aura-portfolio-latest--showcase .aura-portfolio-card__badges {
	position: absolute;
	z-index: 2;
	top: 12px;
	left: 12px;
	right: 12px;
	display: flex;
	justify-content: space-between;
	gap: 8px;
	pointer-events: none;
}
.aura-portfolio-latest--showcase .aura-portfolio-card__badge {
	max-width: 58%;
	overflow: hidden;
	padding: 6px 10px;
	color: var(--aura-latest-accent);
	background: rgba(255, 255, 255, .94);
	border: 1px solid rgba(255, 255, 255, .75);
	border-radius: 999px;
	font-size: .68rem;
	font-weight: 820;
	letter-spacing: .055em;
	text-overflow: ellipsis;
	text-transform: uppercase;
	white-space: nowrap;
}
.aura-portfolio-latest--showcase .aura-portfolio-card__badge--tag {
	color: var(--aura-latest-cta-color);
	background: var(--aura-latest-accent);
	border-color: var(--aura-latest-accent);
}

.aura-portfolio-latest--showcase .aura-portfolio-card__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 16px;
	color: var(--aura-latest-muted);
	font-size: .82rem;
}
.aura-portfolio-latest--showcase .aura-portfolio-card__place { display: inline-flex; align-items: center; gap: 6px; margin: 0; }
.aura-portfolio-latest--showcase .aura-portfolio-card__date--heading { color: var(--aura-latest-muted); }
.aura-portfolio-latest--showcase .aura-portfolio-card__place::before { content: "\2316"; color: var(--aura-latest-accent); font-weight: 800; }
.aura-portfolio-latest--showcase .aura-portfolio-card__title { font-size: clamp(1.12rem, 1.6vw, 1.42rem); line-height: 1.16; }
.aura-portfolio-latest--showcase .aura-portfolio-card__title a { color: inherit; text-decoration: none; }
.aura-portfolio-latest--showcase .aura-portfolio-card__excerpt { color: var(--aura-latest-muted); font-size: .92rem; line-height: 1.58; }

.aura-portfolio-latest__carousel-cta {
	position: relative;
	isolation: isolate;
	flex: 0 0 clamp(15rem, calc(100% / var(--aura-pf-cols, 3) - var(--aura-pf-gap-x, 1.5rem)), 100%);
	display: grid;
	gap: 18px;
	place-content: center;
	min-height: 320px;
	padding: clamp(28px, 5vw, 52px);
	text-align: center;
	background: var(--aura-latest-surface);
	background-repeat: no-repeat;
	border: 1px solid var(--aura-latest-border);
	border-radius: var(--aura-latest-card-radius);
	scroll-snap-align: start;
}
.aura-portfolio-latest__carousel-cta::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	content: "";
	background: var(--aura-latest-final-overlay, transparent);
	border-radius: inherit;
}
.aura-portfolio-latest__carousel-cta > * { position: relative; z-index: 1; }
.aura-portfolio-latest__carousel-cta-eyebrow {
	margin: 0;
	color: var(--aura-latest-muted);
	font-size: .78rem;
	font-weight: 750;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.aura-portfolio-latest__carousel-cta-description {
	max-width: 28ch;
	margin: 0;
	color: var(--aura-latest-muted);
	line-height: 1.55;
}
.aura-portfolio-latest__carousel-cta-link {
	display: inline-flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px 20px;
	color: var(--aura-latest-cta-color);
	font-weight: 760;
	text-decoration: none;
	background: var(--aura-latest-cta-bg);
	border-radius: 999px;
	transition: color .2s ease, background-color .2s ease, transform .2s ease;
}
.aura-portfolio-latest__carousel-cta-link:hover { transform: translateY(-2px); }
.aura-portfolio-latest__carousel-more {
	display: flex;
	justify-content: flex-end;
	margin-top: 24px;
}
.aura-portfolio-latest__carousel-more--heading { flex: 1; margin-top: 0; }
.aura-portfolio-latest__listing-actions .aura-portfolio-latest__carousel-more--heading { flex: none; }
.aura-portfolio-latest__carousel-more-link {
	display: inline-flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px 22px;
	color: var(--aura-latest-cta-color);
	font-weight: 760;
	text-decoration: none;
	background: var(--aura-latest-cta-bg);
	border: 1px solid transparent;
	border-radius: 999px;
	transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.aura-portfolio-latest--showcase .aura-portfolio-card__facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	padding: 16px 0 0;
	margin-top: auto;
	list-style: none;
	border-top: 1px solid var(--aura-latest-border);
}
.aura-portfolio-latest--showcase .aura-portfolio-fact { position: relative; min-width: 0; padding-left: 19px; }
.aura-portfolio-latest--showcase .aura-portfolio-fact::before { content: "\25C7"; position: absolute; left: 0; top: 1px; color: var(--aura-latest-accent); }
.aura-portfolio-latest--showcase .aura-portfolio-fact__value,
.aura-portfolio-latest--showcase .aura-portfolio-fact__label { display: block; }
.aura-portfolio-latest--showcase .aura-portfolio-fact__value { font-size: 1rem; font-weight: 820; line-height: 1.15; }
.aura-portfolio-latest--showcase .aura-portfolio-fact__label { margin-top: 4px; color: var(--aura-latest-muted); font-size: .72rem; line-height: 1.25; }

.aura-portfolio-latest__track-navigation .aura-portfolio-track__control {
	position: static;
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	color: var(--aura-latest-accent);
	background: var(--aura-latest-card-bg);
	border: 1px solid var(--aura-latest-border);
	border-radius: 50%;
	flex: 0 0 auto;
	transform: none;
}
.aura-portfolio-latest__track-navigation .aura-portfolio-track__control[hidden] { display: none; }
.aura-portfolio-latest__track-navigation .aura-portfolio-track__control:disabled { cursor: not-allowed; opacity: .35; }

.aura-portfolio-latest__impact {
	display: grid;
	grid-template-columns: repeat(var(--aura-latest-impact-cols, 4), minmax(0, 1fr));
	gap: 1px;
	margin-top: clamp(42px, 7vw, 88px);
	overflow: hidden;
	background: var(--aura-latest-border);
	border: 1px solid var(--aura-latest-border);
	border-radius: var(--aura-latest-section-radius);
}
.aura-portfolio-latest__metric {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 4px 12px;
	align-content: center;
	min-height: 150px;
	padding: clamp(20px, 3vw, 36px);
	background: var(--aura-latest-impact-bg);
}
.aura-portfolio-latest__metric-icon { grid-row: 1 / 3; color: var(--aura-latest-accent); font-size: 1.5rem; }
.aura-portfolio-latest__metric-value { font-size: clamp(1.55rem, 3vw, 2.6rem); font-weight: 820; line-height: 1; }
.aura-portfolio-latest__metric-label { color: var(--aura-latest-muted); line-height: 1.35; }

.aura-portfolio-latest__bottom-cta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
	margin-top: clamp(32px, 5vw, 64px);
	padding: clamp(24px, 4vw, 48px);
	background: var(--aura-latest-surface);
	border-radius: var(--aura-latest-section-radius);
}
.aura-portfolio-latest__bottom-heading { margin: 0; font-size: clamp(1.55rem, 3vw, 2.4rem); }
.aura-portfolio-latest__bottom-description { max-width: 680px; margin-top: 10px; color: var(--aura-latest-muted); }

.aura-portfolio-latest :where(a, button):focus-visible {
	outline: 3px solid color-mix(in srgb, var(--aura-latest-accent) 65%, #fff);
	outline-offset: 3px;
}

@media (max-width: 1024px) {
	.aura-portfolio-latest--showcase { --aura-pf-cols: 2; --aura-latest-carousel-peek: clamp(56px, 11vw, 96px); }
	.aura-portfolio-latest__header { grid-template-columns: 1fr; align-items: start; }
	.aura-portfolio-latest__archive-cta { justify-self: start; }
	.aura-portfolio-latest__impact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aura-portfolio-latest--impact-columns-1 .aura-portfolio-latest__impact { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
	.aura-portfolio-latest--showcase { --aura-pf-cols: 1; }
	.aura-portfolio-latest--showcase .aura-portfolio--slider {
		--aura-latest-carousel-peek: clamp(64px, 20vw, 80px);
		column-gap: 16px;
		overflow-x: auto;
		padding: 0 3rem 3rem;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x proximity;
		scroll-padding-inline-start: 3rem;
		scroll-behavior: smooth;
		touch-action: pan-x pan-y;
	}
	.aura-portfolio-latest--showcase .aura-portfolio--slider .aura-portfolio-card,
	.aura-portfolio-latest--showcase .aura-portfolio--slider .aura-portfolio-latest__carousel-cta {
		flex: 0 0 calc(100% - var(--aura-latest-effective-peek));
	}
	.aura-portfolio-latest__track-navigation { display: none; }
	.aura-portfolio-latest__header,
	.aura-portfolio-latest__bottom-cta { grid-template-columns: 1fr; align-items: start; }
	.aura-portfolio-latest__header { gap: 24px; margin-bottom: 42px; }
	.aura-portfolio-latest__title { max-width: none; }
	.aura-portfolio-latest__archive-cta { justify-self: start; }
	.aura-portfolio-latest__section-label { padding-right: 0; }
	.aura-portfolio-latest__listing--has-slider-heading-button .aura-portfolio-latest__listing-heading { margin-bottom: 22px; }
	.aura-portfolio-latest--showcase .aura-portfolio-card__body { padding: 18px; }
	.aura-portfolio-latest__impact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aura-portfolio-latest--impact-columns-1 .aura-portfolio-latest__impact { grid-template-columns: 1fr; }
	.aura-portfolio-latest__metric { min-height: 126px; padding: 18px 14px; }
	.aura-portfolio-latest__bottom-button { width: 100%; }
	.aura-portfolio-latest__carousel-more-link { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.aura-portfolio-latest .aura-portfolio-card,
	.aura-portfolio-latest .aura-portfolio-card__media img { transition: none; }
	.aura-portfolio-latest .aura-portfolio-card:hover,
	.aura-portfolio-latest .aura-portfolio-card:hover .aura-portfolio-card__media img { transform: none; }
}
