/* ==========================================================================
   PURC Child — design system + Elementor adapters
   Colours/typography here are deliberately low-specificity (no !important)
   so anything changed in the Elementor panel wins. !important is used only
   for layout rules that fight Elementor's container variables.
   ========================================================================== */

:root {
	--purc-ink: #0f172a;
	--purc-ink-950: #020617;
	--purc-ink-800: #1e293b;
	--purc-ink-700: #334155;
	--purc-slate-600: #475569;
	--purc-slate-500: #64748b;
	--purc-slate-400: #94a3b8;
	--purc-slate-300: #cbd5e1;
	--purc-slate-200: #e2e8f0;
	--purc-slate-100: #f1f5f9;
	--purc-paper: #f8fafc;
	--purc-amber-300: #fcd34d;
	--purc-amber-400: #fbbf24;
	--purc-amber-500: #f59e0b;
	--purc-amber-600: #d97706;
	--purc-amber-700: #b45309;
	--purc-serif: "Lora", Georgia, Cambria, "Times New Roman", serif;
	--purc-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--purc-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	--purc-radius: 18px;
	--purc-wrap: 1240px;
	--purc-header-h: 64px;
}

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition: none !important; animation: none !important; } }

body {
	font-family: var(--purc-sans);
	color: var(--purc-ink);
	background: var(--purc-paper);
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
.purc-main { display: block; }
body:not(.home) .purc-main { padding-top: calc(var(--purc-header-h) + 40px); }
/* Pages that open with a full-bleed section (every page hero) run under the floating header. */
body:not(.home) .purc-main:has(> .elementor > .e-con.purc-section:first-child) { padding-top: 0; }
::selection { background: var(--purc-amber-300); color: var(--purc-ink); }

.purc-skip-link {
	position: absolute; left: 12px; top: -60px; z-index: 1000;
	background: #fff; color: var(--purc-ink); padding: 10px 16px; border-radius: 10px; font-weight: 600;
}
.purc-skip-link:focus { top: 12px; }
:focus-visible { outline: 2px solid var(--purc-amber-400); outline-offset: 2px; }

/* ── Header ─────────────────────────────────────────────────────────────── */
.purc-header {
	position: fixed; top: 16px; left: 0; right: 0; z-index: 900;
	padding: 0 16px; pointer-events: none;
}
body.admin-bar .purc-header { top: 48px; }
@media (max-width: 782px) { body.admin-bar .purc-header { top: 62px; } }

.purc-header__bar {
	pointer-events: auto;
	position: relative;
	max-width: var(--purc-wrap); margin: 0 auto;
	height: var(--purc-header-h);
	display: flex; align-items: center; justify-content: space-between; gap: 16px;
	padding: 0 10px 0 20px;
	background: rgba(2, 6, 23, .62);
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 999px;
	backdrop-filter: blur(14px) saturate(140%);
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	box-shadow: 0 10px 30px -12px rgba(2, 6, 23, .55);
	transition: background .3s ease, box-shadow .3s ease;
}
.purc-header.is-scrolled .purc-header__bar { background: rgba(2, 6, 23, .9); }

.purc-header__brand { display: inline-flex; align-items: center; flex: none; }
.purc-header__logo { height: 40px; width: auto; display: block; }
.purc-header__wordmark { font: 700 22px/1 var(--purc-serif); color: #fff; letter-spacing: .02em; }

.purc-header__nav { display: flex; align-items: center; }
.purc-menu {
	display: flex; align-items: center; gap: 2px;
	list-style: none; margin: 0; padding: 4px;
	background: rgba(255, 255, 255, .05);
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 999px;
}
.purc-menu li { margin: 0; }
.purc-menu a {
	display: block; padding: 8px 14px; border-radius: 999px;
	font: 500 14px/1.2 var(--purc-sans); color: rgba(255, 255, 255, .78);
	text-decoration: none; transition: color .2s, background .2s;
}
.purc-menu a:hover, .purc-menu a:focus-visible { color: #fff; background: rgba(255, 255, 255, .08); }
.purc-menu .current-menu-item > a { color: #fff; background: rgba(255, 255, 255, .12); }

.purc-header__actions { display: flex; align-items: center; gap: 8px; }
.purc-header__cta {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 10px 18px; border-radius: 999px;
	background: #fff; color: var(--purc-ink);
	font: 600 14px/1 var(--purc-sans); text-decoration: none;
	transition: background .2s, transform .2s;
}
.purc-header__cta:hover { background: var(--purc-amber-400); color: var(--purc-ink); }
.purc-header__cta--mobile { display: none; }

.purc-header__toggle {
	display: none; position: relative;
	width: 44px; height: 44px; border-radius: 999px;
	background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .14);
	cursor: pointer; padding: 0;
}
.purc-header__toggle-bar,
.purc-header__toggle-bar::before,
.purc-header__toggle-bar::after {
	position: absolute; left: 50%; width: 18px; height: 2px; margin-left: -9px;
	background: #fff; border-radius: 2px; transition: transform .25s, opacity .25s;
}
.purc-header__toggle-bar { top: 50%; margin-top: -1px; }
.purc-header__toggle-bar::before, .purc-header__toggle-bar::after { content: ""; left: 0; margin-left: 0; }
.purc-header__toggle-bar::before { top: -6px; }
.purc-header__toggle-bar::after { top: 6px; }
.purc-header.is-open .purc-header__toggle-bar { background: transparent; }
.purc-header.is-open .purc-header__toggle-bar::before { transform: translateY(6px) rotate(45deg); }
.purc-header.is-open .purc-header__toggle-bar::after { transform: translateY(-6px) rotate(-45deg); }

/* Hello Elementor paints every button:hover/:focus #c36 — neutralise it on ours. */
.purc-header__toggle:hover, .purc-header__toggle:focus, .purc-header__toggle:active { background: rgba(255, 255, 255, .16); border-color: rgba(255, 255, 255, .24); color: #fff; }
.purc-hero__dot:hover, .purc-hero__dot:focus { background: rgba(255, 255, 255, .7); border: 0; }
.purc-hero__dot[aria-selected="true"]:hover, .purc-hero__dot[aria-selected="true"]:focus { background: var(--purc-amber-400); }
.purc-hero__arrow:focus { background: rgba(2, 6, 23, .55); color: #fff; border-color: rgba(255, 255, 255, .16); }
.purc-hero__arrow:focus-visible, .purc-hero__arrow:hover { background: var(--purc-amber-400); color: var(--purc-ink); }
.purc-form__submit:focus { background: var(--purc-ink); color: #fff; }
.purc-form__submit:hover, .purc-form__submit:focus-visible { background: var(--purc-amber-700); color: #fff; }

@media (max-width: 1024px) {
	.purc-header__toggle { display: inline-block; }
	.purc-header__actions .purc-header__cta { display: none; }
	.purc-header__nav {
		position: absolute; top: calc(100% + 10px); left: 0; right: 0;
		flex-direction: column; align-items: stretch; gap: 12px;
		padding: 14px; border-radius: 22px;
		background: rgba(2, 6, 23, .96); border: 1px solid rgba(255, 255, 255, .1);
		box-shadow: 0 24px 48px -16px rgba(2, 6, 23, .7);
		opacity: 0; visibility: hidden; transform: translateY(-6px);
		transition: opacity .2s, transform .2s, visibility .2s;
	}
	.purc-header.is-open .purc-header__nav { opacity: 1; visibility: visible; transform: none; }
	.purc-menu { flex-direction: column; align-items: stretch; background: none; border: 0; padding: 0; }
	.purc-menu a { padding: 13px 16px; font-size: 16px; border-radius: 14px; }
	.purc-header__cta--mobile { display: flex; justify-content: center; padding: 14px; }
}
@media (max-width: 767px) {
	.purc-header { top: 10px; padding: 0 10px; }
	.purc-header__bar { padding: 0 8px 0 16px; height: 58px; }
	.purc-header__logo { height: 34px; }
}

/* ── Section scaffolding ────────────────────────────────────────────────── */
.e-con.purc-section { position: relative; overflow: hidden; scroll-margin-top: 90px; }
.e-con.purc-section > .e-con { position: relative; z-index: 1; }
.e-con.purc-wrap { max-width: var(--purc-wrap); margin-left: auto; margin-right: auto; width: 100%; }

.purc-section--dark { color: #fff; }

/* Text widgets */
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-widget-text-editor p { margin: 0 0 .9em; }
.elementor-widget-text-editor a { color: var(--purc-amber-700); text-decoration: underline; text-underline-offset: 2px; }

.purc-eyebrow .elementor-heading-title {
	font: 600 12px/1.4 var(--purc-sans); letter-spacing: .14em; text-transform: uppercase;
	color: var(--purc-amber-700);
}
.purc-section--dark .purc-eyebrow .elementor-heading-title { color: var(--purc-amber-400); }

.elementor-widget-icon-list.purc-eyebrow--pill { width: auto; max-width: 100%; }
.purc-eyebrow--pill .elementor-icon-list-items {
	display: inline-flex; margin: 0; padding: 6px 13px;
	border-radius: 999px; background: #fffbeb; border: 1px solid #fde68a;
}
.purc-eyebrow--pill .elementor-icon-list-item { margin: 0; padding: 0; }
.purc-eyebrow--pill .elementor-icon-list-text {
	font: 600 12px/1.4 var(--purc-sans); letter-spacing: .12em; text-transform: uppercase;
	color: var(--purc-amber-700); padding-left: 7px;
}
.purc-eyebrow--pill .elementor-icon-list-icon i { color: var(--purc-amber-700); font-size: 12px; }
.purc-eyebrow--pill .elementor-icon-list-icon svg { fill: var(--purc-amber-700); width: 12px; height: 12px; }
.purc-section--dark .purc-eyebrow--pill .elementor-icon-list-items { background: rgba(245, 158, 11, .1); border-color: rgba(245, 158, 11, .25); }
.purc-section--dark .purc-eyebrow--pill .elementor-icon-list-text { color: var(--purc-amber-400); }
.purc-section--dark .purc-eyebrow--pill .elementor-icon-list-icon i { color: var(--purc-amber-400); }
.purc-section--dark .purc-eyebrow--pill .elementor-icon-list-icon svg { fill: var(--purc-amber-400); }

.purc-h2 .elementor-heading-title {
	font-family: var(--purc-serif); font-weight: 700;
	font-size: clamp(1.75rem, 1.2rem + 2vw, 2.6rem); line-height: 1.18; letter-spacing: -.01em;
	color: var(--purc-ink);
}
.purc-section--dark .purc-h2 .elementor-heading-title { color: #fff; }

.purc-lead { max-width: 680px; }
.purc-lead p { font-size: 16px; line-height: 1.7; color: var(--purc-slate-600); }
.purc-section--dark .purc-lead p { color: var(--purc-slate-400); }

.purc-h3 .elementor-heading-title {
	font-family: var(--purc-serif); font-weight: 700; font-size: 20px; line-height: 1.35; color: var(--purc-ink);
}
.purc-h3--light .elementor-heading-title { color: #fff; }
.purc-h3--lg .elementor-heading-title { font-size: clamp(1.35rem, 1.1rem + 1vw, 1.75rem); }

.purc-body p { font-size: 15px; line-height: 1.7; color: var(--purc-slate-600); }
.purc-body--light p { color: var(--purc-slate-300); }
.purc-body .purc-small { font-size: 13.5px; color: var(--purc-slate-500); }
.purc-body strong { color: var(--purc-ink); font-weight: 600; }

.purc-label .elementor-heading-title {
	font: 600 11px/1.4 var(--purc-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--purc-slate-400);
}
.purc-label--amber .elementor-heading-title { color: var(--purc-amber-400); }

.purc-mono .elementor-heading-title { font: 500 11px/1.4 var(--purc-mono); color: var(--purc-slate-400); letter-spacing: .04em; }
.purc-mono--amber .elementor-heading-title { color: var(--purc-amber-400); }

.e-con.purc-head { max-width: 760px; }
.e-con.purc-head--center { margin-left: auto; margin-right: auto; align-items: center !important; text-align: center; }
.e-con.purc-head--center .elementor-widget { text-align: center; }
.e-con.purc-head--center .purc-lead { margin-left: auto; margin-right: auto; }
.e-con.purc-head-row > .e-con.purc-head { flex: 1 1 auto; }
.e-con.purc-head-row > .elementor-widget-button { flex: none; }

/* Grids (Elementor containers set display via a CSS variable — override it). */
.e-con.purc-grid { display: grid !important; gap: 24px !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; align-items: stretch; }
.e-con.purc-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.e-con.purc-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.e-con.purc-grid > .e-con { width: 100% !important; max-width: none !important; min-width: 0; }
@media (max-width: 1024px) {
	.e-con.purc-grid, .e-con.purc-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.e-con.purc-grid--3 > .e-con:last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (max-width: 900px) { .e-con.purc-grid--2 { grid-template-columns: minmax(0, 1fr) !important; } }
@media (max-width: 767px) {
	.e-con.purc-grid, .e-con.purc-grid--4, .e-con.purc-grid--3 { grid-template-columns: minmax(0, 1fr) !important; gap: 18px !important; }
	.e-con.purc-grid--3 > .e-con:last-child:nth-child(odd) { grid-column: auto; }
}

/* ── Buttons ────────────────────────────────────────────────────────────── */
.purc-btn .elementor-button {
	display: inline-flex; align-items: center;
	font: 600 14px/1 var(--purc-sans);
	padding: 14px 22px; border-radius: 999px; border: 1px solid transparent;
	fill: currentColor; text-decoration: none;
	transition: background-color .2s, color .2s, border-color .2s, transform .2s, box-shadow .2s;
}
.purc-btn .elementor-button:hover { transform: translateY(-1px); }
.purc-btn .elementor-button-icon svg { width: 14px; height: 14px; fill: currentColor; }
.purc-btn .elementor-button-icon i { font-size: 13px; }

.purc-btn--amber .elementor-button { background: var(--purc-amber-400); color: var(--purc-ink); box-shadow: 0 8px 22px -10px rgba(245, 158, 11, .8); }
.purc-btn--amber .elementor-button:hover, .purc-btn--amber .elementor-button:focus { background: var(--purc-amber-500); color: var(--purc-ink); }
.purc-btn--glass .elementor-button { background: rgba(2, 6, 23, .5); color: #fff; border-color: rgba(255, 255, 255, .22); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.purc-btn--glass .elementor-button:hover, .purc-btn--glass .elementor-button:focus { background: rgba(2, 6, 23, .78); color: #fff; }
.purc-btn--dark .elementor-button { background: var(--purc-ink); color: #fff; }
.purc-btn--dark .elementor-button:hover, .purc-btn--dark .elementor-button:focus { background: var(--purc-amber-700); color: #fff; }
.purc-btn--outline .elementor-button { background: #fff; color: var(--purc-ink-700); border-color: var(--purc-slate-200); }
.purc-btn--outline .elementor-button:hover, .purc-btn--outline .elementor-button:focus { background: var(--purc-paper); color: var(--purc-ink); border-color: var(--purc-slate-300); }
.purc-btn--sm .elementor-button { padding: 11px 16px; font-size: 13px; border-radius: 12px; }

.purc-link .elementor-button {
	background: none; padding: 4px 0; border-radius: 0;
	font: 600 13.5px/1.2 var(--purc-sans); color: var(--purc-ink); fill: currentColor;
	display: inline-flex; align-items: center; transition: color .2s;
}
.purc-link .elementor-button-icon { color: var(--purc-amber-600); transition: transform .2s; }
.purc-link .elementor-button-icon svg { width: 13px; height: 13px; fill: currentColor; }
.purc-link .elementor-button:hover { color: var(--purc-amber-700); background: none; }
.purc-link .elementor-button:hover .elementor-button-icon { transform: translateX(4px); }
.purc-link--amber .elementor-button { color: var(--purc-amber-700); font-size: 14px; }

/* ── Hero slider ────────────────────────────────────────────────────────── */
.e-con.purc-hero {
	position: relative; display: block !important;
	min-height: 640px; height: 100vh; height: 100svh; max-height: 1000px;
	padding: 0 !important; overflow: hidden;
}
.e-con.purc-slide {
	position: absolute !important; inset: 0;
	justify-content: flex-end !important;
	padding: 140px 24px 128px !important;
	background-size: cover; background-position: center;
	opacity: 0; visibility: hidden;
	transition: opacity .9s ease, visibility .9s ease;
}
.e-con.purc-slide.is-active { opacity: 1; visibility: visible; z-index: 1; }
.e-con.purc-slide::after {
	content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
	background:
		linear-gradient(90deg, rgba(2, 6, 23, .9) 0%, rgba(2, 6, 23, .62) 42%, rgba(2, 6, 23, .12) 78%),
		linear-gradient(0deg, rgba(2, 6, 23, .9) 0%, rgba(2, 6, 23, 0) 52%),
		linear-gradient(180deg, rgba(2, 6, 23, .55) 0%, rgba(2, 6, 23, 0) 22%);
}
.e-con.purc-slide__inner {
	position: relative; z-index: 2;
	max-width: var(--purc-wrap); width: 100%; margin: 0 auto;
}
.e-con.purc-slide__inner > .elementor-widget { max-width: 760px; }

.elementor-widget-heading.purc-hero-tag { width: auto; align-self: flex-start; }
.purc-hero-tag .elementor-heading-title {
	display: inline-flex; align-items: center; gap: 9px;
	padding: 7px 14px; border-radius: 999px;
	background: rgba(2, 6, 23, .6); border: 1px solid rgba(255, 255, 255, .16);
	backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
	font: 600 12px/1.4 var(--purc-sans); letter-spacing: .1em; text-transform: uppercase; color: #fff;
}
.purc-hero-tag .elementor-heading-title::before {
	content: ""; width: 7px; height: 7px; flex: none; border-radius: 50%;
	background: var(--purc-amber-400); box-shadow: 0 0 0 4px rgba(251, 191, 36, .2);
}
.purc-hero-title .elementor-heading-title {
	font-family: var(--purc-serif); font-weight: 700;
	font-size: clamp(2.2rem, 1.2rem + 4.2vw, 4.4rem); line-height: 1.08; letter-spacing: -.015em;
	color: #fff; text-shadow: 0 2px 24px rgba(2, 6, 23, .45);
}
.purc-hero-text p { font-size: clamp(15px, .9rem + .3vw, 18px); line-height: 1.65; color: rgba(255, 255, 255, .86); max-width: 620px; }
.e-con.purc-hero-actions { padding-top: 6px; }

.e-con.purc-slide.is-active .purc-slide__inner > * { animation: purc-rise .8s cubic-bezier(.2, .7, .2, 1) both; }
.e-con.purc-slide.is-active .purc-slide__inner > *:nth-child(2) { animation-delay: .08s; }
.e-con.purc-slide.is-active .purc-slide__inner > *:nth-child(3) { animation-delay: .16s; }
.e-con.purc-slide.is-active .purc-slide__inner > *:nth-child(4) { animation-delay: .24s; }
@keyframes purc-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

.purc-hero__controls {
	position: absolute; z-index: 3; bottom: 40px; left: 50%; transform: translateX(-50%);
	width: min(var(--purc-wrap), calc(100% - 48px));
	display: flex; align-items: center; justify-content: flex-end; gap: 10px;
	pointer-events: none;
}
.purc-hero__controls > * { pointer-events: auto; }
.purc-hero__dots {
	display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-radius: 999px;
	background: rgba(2, 6, 23, .55); border: 1px solid rgba(255, 255, 255, .12);
	backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
.purc-hero__dot {
	width: 8px; height: 8px; padding: 0; border: 0; border-radius: 999px; cursor: pointer;
	background: rgba(255, 255, 255, .35); transition: width .3s, background .3s;
}
.purc-hero__dot[aria-selected="true"] { width: 26px; background: var(--purc-amber-400); }
.purc-hero__count { font: 600 12px/1 var(--purc-mono); color: rgba(255, 255, 255, .7); padding: 0 6px; }
.purc-hero__count b { color: #fff; }
.purc-hero__arrow {
	width: 44px; height: 44px; border-radius: 50%; cursor: pointer; padding: 0;
	display: grid; place-items: center; color: #fff;
	background: rgba(2, 6, 23, .55); border: 1px solid rgba(255, 255, 255, .16);
	transition: background .2s, color .2s;
}
.purc-hero__arrow:hover { background: var(--purc-amber-400); color: var(--purc-ink); }

@media (max-width: 767px) {
	.e-con.purc-hero { min-height: 620px; max-height: none; }
	.e-con.purc-slide { padding: 110px 16px 104px !important; }
	.e-con.purc-slide::after {
		background: linear-gradient(0deg, rgba(2, 6, 23, .95) 0%, rgba(2, 6, 23, .7) 55%, rgba(2, 6, 23, .35) 100%);
	}
	.purc-hero-tag .elementor-heading-title { font-size: 10.5px; letter-spacing: .08em; }
	.purc-hero__controls { bottom: 28px; justify-content: center; }
	.purc-hero__count { display: none; }
	.purc-hero__arrow { width: 40px; height: 40px; }
}

/* Editor: stack every slide so each one can be edited. */
body.elementor-editor-active .e-con.purc-hero { height: auto; max-height: none; }
body.elementor-editor-active .e-con.purc-slide { position: relative !important; opacity: 1; visibility: visible; min-height: 640px; }
body.elementor-editor-active .e-con.purc-slide .purc-slide__inner > * { animation: none; }

/* ── About ──────────────────────────────────────────────────────────────── */
.e-con.purc-about__grid { align-items: center; }
.e-con.purc-about__main { flex: 1 1 64%; min-width: 0; }
.e-con.purc-about__aside { flex: 1 1 36%; min-width: 0; padding: 28px !important; border-radius: var(--purc-radius); background: var(--purc-paper); border: 1px solid var(--purc-slate-200); }
.purc-answer { font-size: 17px !important; color: var(--purc-ink) !important; }
.purc-answer strong { font-weight: 600; }
.purc-facts .elementor-icon-list-item { padding-bottom: 12px !important; }
.purc-facts .elementor-icon-list-text { font-size: 14.5px; font-weight: 500; color: var(--purc-ink-700); padding-left: 10px; }
.purc-facts .elementor-icon-list-icon i { color: var(--purc-amber-600); font-size: 14px; }
.purc-facts .elementor-icon-list-icon svg { fill: var(--purc-amber-600); width: 14px; height: 14px; }

/* ── Impact ─────────────────────────────────────────────────────────────── */
.e-con.purc-impact::before {
	content: "" !important; position: absolute !important; inset: 0 !important; z-index: 0;
	background-image: radial-gradient(rgba(245, 158, 11, .5) 1px, transparent 1px) !important;
	background-size: 22px 22px; opacity: .14 !important; pointer-events: none; mix-blend-mode: normal !important;
}
.e-con.purc-stat {
	padding: 26px !important; border-radius: var(--purc-radius);
	background: rgba(30, 41, 59, .6); border: 1px solid rgba(51, 65, 85, .75);
	transition: border-color .25s, background-color .25s, transform .25s;
}
.e-con.purc-stat:hover { border-color: rgba(245, 158, 11, .45); background: rgba(30, 41, 59, .92); transform: translateY(-2px); }
.purc-stat__icon .elementor-icon {
	display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px;
	font-size: 19px; color: var(--purc-amber-400); fill: var(--purc-amber-400);
	background: rgba(245, 158, 11, .1); border: 1px solid rgba(245, 158, 11, .22);
}
.purc-stat__icon .elementor-icon svg { width: 19px; height: 19px; }
.elementor-widget-icon.purc-stat__icon, .elementor-widget-icon.purc-stage__icon { width: auto; }
.purc-stat__num .elementor-heading-title { font: 700 clamp(2.1rem, 1.6rem + 1.6vw, 2.75rem)/1.05 var(--purc-serif); color: #fff; padding-top: 8px; }
.purc-stat__label .elementor-heading-title { font: 600 15px/1.4 var(--purc-sans); color: var(--purc-slate-200); }
.purc-stat__desc { border-top: 1px solid rgba(51, 65, 85, .6); padding-top: 14px; margin-top: 4px; }
.purc-stat__desc p { font-size: 13.5px; line-height: 1.6; color: var(--purc-slate-400); }

/* ── Cards / initiatives ────────────────────────────────────────────────── */
.e-con.purc-card {
	background: #fff; border: 1px solid var(--purc-slate-200); border-radius: var(--purc-radius);
	overflow: hidden; transition: box-shadow .3s, border-color .3s, transform .3s;
}
.e-con.purc-card:hover { border-color: var(--purc-slate-300); box-shadow: 0 22px 44px -24px rgba(15, 23, 42, .35); transform: translateY(-3px); }

.e-con.purc-init__media { position: relative; overflow: hidden; background: var(--purc-ink); aspect-ratio: 16 / 10; }
.e-con.purc-init__media::after {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background: linear-gradient(0deg, rgba(2, 6, 23, .85) 0%, rgba(2, 6, 23, .2) 45%, rgba(2, 6, 23, 0) 70%);
}
.elementor-widget-image.purc-init__img { position: absolute !important; inset: 0; width: 100% !important; height: 100%; }
.purc-init__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.e-con.purc-card:hover .purc-init__img img { transform: scale(1.05); }

.elementor-widget-heading.purc-badge { position: absolute !important; z-index: 2; width: auto !important; max-width: calc(100% - 24px); }
.purc-badge--area { top: 12px; left: 12px; }
.purc-badge--live { top: 12px; right: 12px; }
.purc-badge--topic { bottom: 12px; left: 12px; }
.purc-badge .elementor-heading-title {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 5px 10px; border-radius: 999px;
	background: rgba(2, 6, 23, .82); border: 1px solid rgba(255, 255, 255, .12);
	backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
	font: 700 10.5px/1.3 var(--purc-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--purc-amber-300);
}
.purc-badge--live .elementor-heading-title { font-family: var(--purc-sans); font-weight: 500; letter-spacing: .02em; text-transform: none; font-size: 11px; color: #6ee7b7; }
.purc-badge--live .elementor-heading-title::before {
	content: ""; width: 6px; height: 6px; border-radius: 50%; background: #34d399;
	animation: purc-pulse 2s ease-in-out infinite;
}
@keyframes purc-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
.purc-badge--topic .elementor-heading-title {
	border-radius: 9px; background: rgba(255, 255, 255, .16); border-color: rgba(255, 255, 255, .22);
	font: 600 12px/1.3 var(--purc-sans); letter-spacing: 0; text-transform: none; color: #fff;
}

.e-con.purc-card__body { padding: 22px 24px 8px !important; flex: 1 1 auto; }
.e-con.purc-card__foot { padding: 14px 24px 18px !important; border-top: 1px solid var(--purc-slate-100); margin-top: 10px; }
.e-con.purc-card__foot > .elementor-widget { width: auto; }
.purc-init .purc-h3 .elementor-heading-title { transition: color .2s; }
.purc-init:hover .purc-h3 .elementor-heading-title { color: var(--purc-amber-700); }

.purc-chip .elementor-icon-list-items {
	margin: 0; padding: 9px 12px; border-radius: 12px;
	background: #fffbeb; border: 1px solid #fde68a;
}
.purc-chip .elementor-icon-list-item { margin: 0; padding: 0; }
.purc-chip .elementor-icon-list-text { font-size: 12.5px; font-weight: 600; color: #451a03; padding-left: 8px; }
.purc-chip .elementor-icon-list-icon i { color: var(--purc-amber-600); font-size: 11px; }
.purc-chip .elementor-icon-list-icon svg { fill: var(--purc-amber-600); width: 11px; height: 11px; }

/* ── Methodology ────────────────────────────────────────────────────────── */
.e-con.purc-methodology::before {
	content: "" !important; position: absolute !important; inset: auto !important; top: -220px !important; right: -160px !important;
	width: 620px; height: 620px; border-radius: 50%; z-index: 0; opacity: 1 !important;
	background: radial-gradient(circle, rgba(245, 158, 11, .14), transparent 65%) !important; pointer-events: none;
}
.e-con.purc-stages { counter-reset: none; }
.e-con.purc-stage {
	padding: 28px !important; border-radius: var(--purc-radius);
	background: rgba(30, 41, 59, .7); border: 1px solid var(--purc-ink-700);
	transition: border-color .25s, transform .25s;
}
.e-con.purc-stage:hover { border-color: rgba(245, 158, 11, .5); transform: translateY(-2px); }
.e-con.purc-stage__top > .elementor-widget { width: auto; }
.purc-stage__num .elementor-heading-title {
	display: inline-block; padding: 4px 9px; border-radius: 6px;
	background: var(--purc-amber-500); color: var(--purc-ink-950);
	font: 700 12px/1.3 var(--purc-mono); letter-spacing: .04em;
}
.purc-stage__icon .elementor-icon { font-size: 22px; color: var(--purc-amber-400); fill: var(--purc-amber-400); }
.purc-stage__icon .elementor-icon svg { width: 22px; height: 22px; }
.purc-checks .elementor-icon-list-item { padding-bottom: 9px !important; align-items: flex-start !important; }
.purc-checks .elementor-icon-list-text { font-size: 14.5px; line-height: 1.55; color: var(--purc-slate-200); padding-left: 10px; }
.purc-checks .elementor-icon-list-icon { padding-top: 3px; }
.purc-checks .elementor-icon-list-icon i { color: var(--purc-amber-400); font-size: 14px; }
.purc-checks .elementor-icon-list-icon svg { fill: var(--purc-amber-400); width: 14px; height: 14px; }
.e-con.purc-stage__deliverable {
	margin-top: auto; padding: 14px 16px !important; border-radius: 12px;
	background: rgba(245, 158, 11, .08); border: 1px solid rgba(245, 158, 11, .25);
}
.purc-stage__deliverable-text .elementor-heading-title { font: 600 15.5px/1.45 var(--purc-serif); color: #fff; }

/* ── Publications ───────────────────────────────────────────────────────── */
.e-con.purc-pub { flex-direction: row; }
.e-con.purc-pub__cover {
	flex: 0 0 150px !important; width: 150px !important;
	justify-content: space-between !important;
	padding: 22px 18px !important; color: #fff;
	background: linear-gradient(160deg, var(--purc-ink) 0%, var(--purc-ink-800) 100%);
	border-top: 4px solid var(--purc-amber-500);
}
.purc-pub__brand .elementor-heading-title { font: 700 11px/1 var(--purc-mono); letter-spacing: .24em; color: var(--purc-amber-400); }
.purc-pub__year .elementor-heading-title { font: 700 38px/1 var(--purc-serif); color: #fff; }
.purc-pub__type .elementor-heading-title { font: 600 10.5px/1.35 var(--purc-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--purc-slate-300); }
.e-con.purc-pub__body { flex: 1 1 auto; min-width: 0; padding: 24px 26px !important; }
.purc-pub__meta .elementor-heading-title { font: 600 11.5px/1.5 var(--purc-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--purc-amber-700); }
.purc-pub__title .elementor-heading-title { font-size: 19px; }
.purc-pub__authors .elementor-heading-title { font: italic 500 14.5px/1.4 var(--purc-serif); color: var(--purc-slate-500); }
.purc-pub__abstract p { font-size: 14.5px; }
.purc-quote blockquote { margin: 0; padding: 2px 0 2px 14px; border-left: 3px solid var(--purc-amber-300); }
.purc-quote blockquote p { font: italic 500 15px/1.6 var(--purc-serif); color: var(--purc-ink-700); }
.e-con.purc-pub__actions { padding-top: 6px; margin-top: auto; }
.e-con.purc-pub__actions > .elementor-widget { width: auto; }
@media (max-width: 767px) {
	.e-con.purc-pub { flex-direction: column !important; }
	.e-con.purc-pub__cover { flex: none !important; width: 100% !important; flex-direction: row !important; align-items: center !important; padding: 16px 20px !important; gap: 14px !important; }
	.purc-pub__year .elementor-heading-title { font-size: 28px; }
	.e-con.purc-pub__body { padding: 20px !important; }
}

/* ── FAQ ────────────────────────────────────────────────────────────────── */
.e-con.purc-faq-item {
	padding: 24px 26px !important; border-radius: 16px;
	background: #fff; border: 1px solid var(--purc-slate-200); border-left: 3px solid var(--purc-amber-500);
}
.purc-faq-item__q .elementor-heading-title { font-size: 18px; }

/* ── Contact ────────────────────────────────────────────────────────────── */
.e-con.purc-contact::before {
	content: "" !important; position: absolute !important; inset: 0 !important; z-index: 0; pointer-events: none; opacity: 1 !important;
	background:
		radial-gradient(640px circle at 92% 0%, rgba(245, 158, 11, .13), transparent 60%),
		radial-gradient(520px circle at 0% 100%, rgba(14, 165, 233, .1), transparent 60%) !important;
}
.e-con.purc-contact__info { flex: 1 1 54%; min-width: 0; }
.e-con.purc-contact__form {
	flex: 1 1 46%; min-width: 0;
	padding: 34px !important; border-radius: 22px; background: #fff; color: var(--purc-ink);
	box-shadow: 0 30px 60px -30px rgba(2, 6, 23, .7);
}
.purc-section--dark .purc-contact__form .purc-eyebrow .elementor-heading-title { color: var(--purc-amber-700); }
.e-con.purc-contact__card {
	padding: 24px !important; border-radius: var(--purc-radius);
	background: rgba(30, 41, 59, .8); border: 1px solid rgba(51, 65, 85, .85);
}
.purc-contact__list .elementor-icon-list-item { padding-bottom: 12px !important; align-items: flex-start !important; }
.purc-contact__list .elementor-icon-list-text { font-size: 15px; line-height: 1.55; color: var(--purc-slate-300); padding-left: 12px; transition: color .2s; }
.purc-contact__list a:hover .elementor-icon-list-text { color: #fff; }
.purc-contact__list .elementor-icon-list-icon { padding-top: 3px; }
.purc-contact__list .elementor-icon-list-icon i { color: var(--purc-amber-400); font-size: 15px; }
.purc-contact__list .elementor-icon-list-icon svg { fill: var(--purc-amber-400); width: 15px; height: 15px; }
.purc-note p { font-size: 13.5px; line-height: 1.6; color: var(--purc-slate-400); }
@media (max-width: 1024px) { .e-con.purc-contact__info, .e-con.purc-contact__form { flex-basis: auto; width: 100%; } }
@media (max-width: 767px) { .e-con.purc-contact__form { padding: 24px 20px !important; } }

/* Form */
.purc-form { display: grid; gap: 16px; margin-top: 8px; }
.purc-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 600px) { .purc-form__grid { grid-template-columns: 1fr; } }
.purc-form__field { margin: 0; display: grid; gap: 7px; }
.purc-form__field label { font: 600 11.5px/1.3 var(--purc-sans); letter-spacing: .08em; text-transform: uppercase; color: var(--purc-slate-600); }
.purc-form__field label span { color: var(--purc-amber-700); }
.purc-form input, .purc-form select, .purc-form textarea {
	width: 100%; padding: 12px 14px; border-radius: 12px;
	border: 1px solid var(--purc-slate-200); background: var(--purc-paper);
	font: 400 15px/1.4 var(--purc-sans); color: var(--purc-ink);
	transition: border-color .2s, box-shadow .2s, background .2s;
}
.purc-form textarea { resize: vertical; min-height: 130px; }
.purc-form input:focus, .purc-form select:focus, .purc-form textarea:focus {
	outline: none; background: #fff; border-color: var(--purc-amber-500); box-shadow: 0 0 0 4px rgba(245, 158, 11, .15);
}
.purc-form__hp { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.purc-form__submit {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	width: 100%; padding: 15px 20px; border: 0; border-radius: 12px; cursor: pointer;
	background: var(--purc-ink); color: #fff; font: 600 15px/1 var(--purc-sans);
	transition: background .2s, transform .2s;
}
.purc-form__submit:hover { background: var(--purc-amber-700); }
.purc-form__submit[disabled] { opacity: .6; cursor: progress; }
.purc-form__status { margin: 0; font-size: 14px; min-height: 1.4em; color: var(--purc-slate-600); }
.purc-form__status.is-success { color: #047857; }
.purc-form__status.is-error { color: #b91c1c; }

/* ── Footer (Elementor template purc-site-footer) ───────────────────────── */
.purc-footer { background: var(--purc-ink-950); color: var(--purc-slate-400); }
.e-con.purc-footer__grid {
	display: grid !important; gap: 40px !important;
	grid-template-columns: 1.5fr 1fr 1.1fr 1.3fr !important;
}
.e-con.purc-footer__grid > .e-con { width: 100% !important; min-width: 0; }
@media (max-width: 1024px) { .e-con.purc-footer__grid { grid-template-columns: 1fr 1fr !important; } }
@media (max-width: 600px) { .e-con.purc-footer__grid { grid-template-columns: 1fr !important; gap: 32px !important; } }
.purc-footer__logo img { max-width: 150px; height: auto; }
.elementor-widget-image.purc-footer__logo { width: auto; text-align: left; }
.purc-footer__name .elementor-heading-title { font: 700 18px/1.3 var(--purc-serif); color: #fff; }
.purc-footer__text p { font-size: 14px; line-height: 1.7; color: var(--purc-slate-400); }
.purc-footer__title .elementor-heading-title { font: 600 12px/1.4 var(--purc-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--purc-amber-400); }
.purc-footer__links .elementor-icon-list-item, .purc-footer__contact .elementor-icon-list-item { padding-bottom: 10px !important; align-items: flex-start !important; }
.purc-footer__links .elementor-icon-list-text, .purc-footer__contact .elementor-icon-list-text { font-size: 14px; line-height: 1.5; color: var(--purc-slate-300); padding-left: 8px; transition: color .2s; }
.purc-footer__links a:hover .elementor-icon-list-text, .purc-footer__contact a:hover .elementor-icon-list-text { color: #fff; }
.purc-footer__links .elementor-icon-list-icon i { color: var(--purc-slate-500); font-size: 11px; }
.purc-footer__links .elementor-icon-list-icon svg { fill: var(--purc-slate-500); width: 11px; height: 11px; }
.purc-footer__contact .elementor-icon-list-icon { padding-top: 3px; }
.purc-footer__contact .elementor-icon-list-icon i { color: var(--purc-amber-400); font-size: 14px; }
.purc-footer__contact .elementor-icon-list-icon svg { fill: var(--purc-amber-400); width: 14px; height: 14px; }
.e-con.purc-footer__bottom { margin-top: 48px; padding-top: 22px !important; border-top: 1px solid var(--purc-ink-800); }
.e-con.purc-footer__bottom > .elementor-widget { width: auto; }
.purc-footer__legal .elementor-heading-title { font: 400 13px/1.5 var(--purc-sans); color: var(--purc-slate-500); }
.purc-footer__fallback { padding: 32px 24px; text-align: center; }

/* ==========================================================================
   Inner pages
   ========================================================================== */

/* Breadcrumb (Rank Math) */
.purc-breadcrumb .rank-math-breadcrumb p { margin: 0; font: 500 13px/1.5 var(--purc-sans); color: var(--purc-slate-400); }
.purc-breadcrumb .rank-math-breadcrumb a { color: var(--purc-slate-300); text-decoration: none; }
.purc-breadcrumb .rank-math-breadcrumb a:hover { color: var(--purc-amber-400); }
.purc-breadcrumb .separator { margin: 0 6px; color: var(--purc-slate-500); }
.purc-breadcrumb .last { color: #fff; }

/* Page hero */
.e-con.purc-page-hero { background-size: cover; background-position: center; }
.e-con.purc-page-hero::before {
	content: "" !important; position: absolute !important; inset: 0 !important; z-index: 0; pointer-events: none; opacity: 1 !important; mix-blend-mode: normal !important;
	background:
		radial-gradient(700px circle at 85% 0%, rgba(245, 158, 11, .14), transparent 60%),
		radial-gradient(600px circle at 0% 100%, rgba(14, 165, 233, .1), transparent 60%) !important;
}
.e-con.purc-page-hero--image::before {
	background:
		linear-gradient(90deg, rgba(2, 6, 23, .94) 0%, rgba(2, 6, 23, .8) 50%, rgba(2, 6, 23, .55) 100%),
		linear-gradient(0deg, rgba(2, 6, 23, .7), transparent 60%) !important;
}
.e-con.purc-page-hero__inner > .elementor-widget { max-width: 820px; }
.purc-page-title .elementor-heading-title {
	font-family: var(--purc-serif); font-weight: 700; color: #fff;
	font-size: clamp(2.3rem, 1.4rem + 3.4vw, 4rem); line-height: 1.1; letter-spacing: -.015em;
}
.purc-page-lead p { font-size: clamp(15.5px, .9rem + .3vw, 18.5px); line-height: 1.7; color: var(--purc-slate-300); }
.purc-page-lead strong { color: #fff; font-weight: 600; }

/* Generic split + cover images */
.e-con.purc-split__text { flex: 1 1 54%; min-width: 0; }
.e-con.purc-split__media { flex: 1 1 46%; min-width: 0; position: relative; }
@media (max-width: 1024px) { .e-con.purc-split__text, .e-con.purc-split__media { flex-basis: auto; width: 100%; } }

.e-con.purc-area__media, .e-con.purc-initiative__media, .e-con.purc-gal-card__media, .e-con.purc-dossier__photo {
	position: relative; overflow: hidden; background: var(--purc-ink); aspect-ratio: 16 / 10;
}
.elementor-widget-image.purc-cover-img { position: absolute !important; inset: 0; width: 100% !important; height: 100%; }
.purc-cover-img a { display: block; width: 100%; height: 100%; }
.purc-cover-img img { width: 100%; height: 100% !important; object-fit: cover; display: block; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.e-con.purc-card:hover .purc-cover-img img { transform: scale(1.05); }

/* About hero — slanted-pill photo mask */
.purc-pill-collage img {
	width: 100%; max-width: 520px; aspect-ratio: 1 / 1; object-fit: cover; display: block; margin: 0 auto;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 520 520'%3E%3Cg fill='%23000'%3E%3Crect x='70' y='100' width='76' height='300' rx='38' transform='rotate(-32 108 250)'/%3E%3Crect x='170' y='40' width='82' height='410' rx='41' transform='rotate(-32 211 245)'/%3E%3Crect x='275' y='25' width='82' height='420' rx='41' transform='rotate(-32 316 235)'/%3E%3Crect x='380' y='95' width='76' height='310' rx='38' transform='rotate(-32 418 250)'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 520 520'%3E%3Cg fill='%23000'%3E%3Crect x='70' y='100' width='76' height='300' rx='38' transform='rotate(-32 108 250)'/%3E%3Crect x='170' y='40' width='82' height='410' rx='41' transform='rotate(-32 211 245)'/%3E%3Crect x='275' y='25' width='82' height='420' rx='41' transform='rotate(-32 316 235)'/%3E%3Crect x='380' y='95' width='76' height='310' rx='38' transform='rotate(-32 418 250)'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;
}
body.elementor-editor-active .purc-pill-collage img { -webkit-mask: none; mask: none; border-radius: 24px; }

/* Quote band */
.purc-big-quote blockquote { margin: 0; padding: 0; border: 0; }
.purc-big-quote p { font: italic 500 clamp(1.15rem, .95rem + .9vw, 1.6rem)/1.6 var(--purc-serif); color: var(--purc-slate-200); max-width: 860px; margin: 0 auto; }
.e-con.purc-quote-band::before {
	content: "" !important; position: absolute !important; inset: 0 !important; z-index: 0; pointer-events: none; opacity: 1 !important;
	background: radial-gradient(800px circle at 50% 120%, rgba(245, 158, 11, .16), transparent 60%) !important;
}

/* Circular collage */
.e-con.purc-circles { min-height: 380px; align-items: center; justify-content: center; }
.purc-circle img { border-radius: 50%; object-fit: cover; aspect-ratio: 1 / 1; display: block; }
.elementor-widget-image.purc-circle--lg { width: min(340px, 80%) !important; }
.purc-circle--lg img { width: 100%; box-shadow: 0 30px 60px -30px rgba(15, 23, 42, .5); outline: 10px solid #fffbeb; }
.elementor-widget-image.purc-circle--sm { position: absolute !important; right: 8%; bottom: 4%; width: 150px !important; }
.purc-circle--sm img { width: 100%; border: 6px solid #fff; box-shadow: 0 18px 40px -18px rgba(15, 23, 42, .55); }
@media (max-width: 767px) { .e-con.purc-circles { min-height: 300px; } .elementor-widget-image.purc-circle--sm { width: 110px !important; right: 2%; } }

.purc-body--lg p { font-size: 17px; }
.e-con.purc-callout {
	padding: 16px 18px !important; border-radius: 14px;
	background: #fff; border: 1px solid var(--purc-slate-200); border-left: 3px solid var(--purc-amber-500);
}
.purc-section--white .e-con.purc-callout { background: var(--purc-paper); }
.purc-callout__title .elementor-icon-list-text { font: 600 14px/1.4 var(--purc-sans); color: var(--purc-ink); padding-left: 8px; }
.purc-callout__title .elementor-icon-list-icon i { color: var(--purc-amber-600); }
.purc-callout__title .elementor-icon-list-icon svg { fill: var(--purc-amber-600); width: 15px; height: 15px; }

/* Pillars */
.e-con.purc-pillar { padding: 26px !important; border-radius: var(--purc-radius); background: #fff; border: 1px solid var(--purc-slate-200); transition: border-color .25s, transform .25s; }
.e-con.purc-pillar:hover { border-color: var(--purc-amber-500); transform: translateY(-2px); }
.purc-pillar__num .elementor-heading-title { font: 700 30px/1 var(--purc-serif); color: var(--purc-amber-500); }

/* CTA band */
.e-con.purc-cta__box {
	max-width: 880px; width: 100%; margin: 0 auto; text-align: center;
	padding: 52px 32px !important; border-radius: 26px;
	background: linear-gradient(135deg, #fffbeb 0%, #fff 70%); border: 1px solid #fde68a;
}
.e-con.purc-cta__box .elementor-widget { text-align: center; }
.purc-cta__text { margin: 0 auto; }
@media (max-width: 767px) { .e-con.purc-cta__box { padding: 36px 20px !important; } }

/* Status pills & small labels */
.purc-status .elementor-heading-title { display: inline-block; padding: 4px 10px; border-radius: 999px; font: 600 11px/1.3 var(--purc-sans); border: 1px solid; }
.purc-status--live .elementor-heading-title { background: #ecfdf5; color: #065f46; border-color: #a7f3d0; }
.purc-status--done .elementor-heading-title { background: var(--purc-slate-100); color: var(--purc-ink-700); border-color: var(--purc-slate-200); }
.purc-status--cat .elementor-heading-title { background: #fffbeb; color: var(--purc-amber-700); border-color: #fde68a; }
.purc-mono--dark .elementor-heading-title { color: var(--purc-slate-500); }
.purc-label--dark .elementor-heading-title { color: var(--purc-slate-600); }
.purc-h2--md .elementor-heading-title { font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem); }
.elementor-widget-heading.purc-status, .elementor-widget-heading.purc-mono { width: auto; }

/* Initiatives page rows */
.e-con.purc-initiative { scroll-margin-top: 110px; }
.e-con.purc-initiative__media { flex: 1 1 46%; border-radius: 22px; aspect-ratio: 4 / 3; box-shadow: 0 30px 60px -36px rgba(15, 23, 42, .55); }
.e-con.purc-initiative__text { flex: 1 1 54%; min-width: 0; }
.e-con.purc-initiative__media .purc-badge--topic { z-index: 2; }
@media (max-width: 1024px) { .e-con.purc-initiative__media, .e-con.purc-initiative__text { flex-basis: auto; width: 100%; } }
.elementor-widget-icon-list.purc-chip, .elementor-widget-button.purc-link { width: auto; }

/* Publications page */
.e-con.purc-pub--full { scroll-margin-top: 110px; }
.e-con.purc-pub--full .purc-pub__cover { flex-basis: 170px !important; width: 170px !important; }
.purc-h3--lg .elementor-heading-title { font-size: clamp(1.3rem, 1.05rem + .9vw, 1.65rem); }
.purc-checks--dark .elementor-icon-list-text { color: var(--purc-ink-700); }
.purc-checks--dark .elementor-icon-list-icon i { color: var(--purc-amber-600); }
.purc-checks--dark .elementor-icon-list-icon svg { fill: var(--purc-amber-600); }
.purc-cite p { margin: 0; padding: 12px 14px; border-radius: 12px; background: var(--purc-paper); border: 1px dashed var(--purc-slate-300); font-size: 13.5px; line-height: 1.6; color: var(--purc-slate-600); }
.purc-cite strong { color: var(--purc-ink); }
@media (max-width: 767px) { .e-con.purc-pub--full .purc-pub__cover { width: 100% !important; } }

/* Filter chips (built by site.js) */
.e-con.purc-filter-bar { margin-bottom: 8px; }
.e-con.purc-filter-bar:empty { display: none; }
.purc-filter-chip {
	padding: 9px 16px; border-radius: 999px; cursor: pointer;
	font: 600 13px/1 var(--purc-sans); color: var(--purc-slate-600);
	background: #fff; border: 1px solid var(--purc-slate-200); transition: background .2s, color .2s, border-color .2s;
}
.purc-filter-chip:hover, .purc-filter-chip:focus { background: var(--purc-slate-100); color: var(--purc-ink); border-color: var(--purc-slate-300); }
.purc-filter-chip[aria-pressed="true"] { background: var(--purc-ink); color: #fff; border-color: var(--purc-ink); }
.purc-filter-item[hidden] { display: none !important; }

/* Gallery */
.e-con.purc-gal-card { margin: 0; }
.purc-gal-card__img a { cursor: zoom-in; }
.purc-gal-card__meta .elementor-icon-list-items { gap: 6px 14px; }
.purc-gal-card__meta .elementor-icon-list-text { font-size: 12.5px; color: var(--purc-slate-500); padding-left: 6px; }
.purc-gal-card__meta .elementor-icon-list-icon i { color: var(--purc-amber-600); font-size: 12px; }
.purc-gal-card__meta .elementor-icon-list-icon svg { fill: var(--purc-amber-600); width: 12px; height: 12px; }
.purc-gal-card__text p { font-size: 14px; }

/* Contact page */
.e-con.purc-detail { align-items: flex-start; flex-wrap: nowrap !important; }
.e-con.purc-detail > .elementor-widget-icon { width: auto; flex: none; }
.purc-detail__icon .elementor-icon {
	display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px;
	font-size: 17px; color: var(--purc-amber-700); fill: var(--purc-amber-700);
	background: #fffbeb; border: 1px solid #fde68a;
}
.purc-detail__icon .elementor-icon svg { width: 17px; height: 17px; }
.e-con.purc-detail__text { flex: 1 1 auto; min-width: 0; }
.purc-detail__value .elementor-heading-title { font: 500 16px/1.5 var(--purc-sans); color: var(--purc-ink); }
.purc-detail__value .elementor-heading-title a { color: inherit; text-decoration: none; }
.purc-detail__value .elementor-heading-title a:hover { color: var(--purc-amber-700); }
.purc-section--light .e-con.purc-contact__form { border: 1px solid var(--purc-slate-200); box-shadow: 0 30px 60px -36px rgba(15, 23, 42, .35); }
.purc-map__embed iframe { border-radius: 20px; display: block; filter: saturate(.85); }

/* ── Our Planet ─────────────────────────────────────────────────────────── */
.e-con.purc-planet-cover { min-height: min(88vh, 860px); justify-content: flex-end !important; background-size: cover; }
.e-con.purc-planet-cover::before {
	content: "" !important; position: absolute !important; inset: 0 !important; z-index: 0; opacity: 1 !important; pointer-events: none;
	background: linear-gradient(0deg, rgba(11, 15, 11, .96) 0%, rgba(11, 15, 11, .55) 55%, rgba(11, 15, 11, .35) 100%) !important;
}
.purc-planet-title .elementor-heading-title {
	font: 700 clamp(3.5rem, 1.5rem + 9vw, 8.5rem)/.95 var(--purc-serif); text-transform: uppercase; letter-spacing: -.02em; color: #faf7f0;
}
.purc-planet-thesis p { font: italic 500 clamp(1.15rem, .95rem + .8vw, 1.6rem)/1.5 var(--purc-serif); color: #e7e2d6; max-width: 760px; }
.purc-planet-meta .elementor-icon-list-items { gap: 8px 20px; }
.purc-planet-meta .elementor-icon-list-text { font: 500 12.5px/1.5 var(--purc-mono); color: #d6d3c8; padding-left: 7px; }
.purc-planet-meta .elementor-icon-list-icon i { color: var(--purc-amber-400); font-size: 12px; }
.purc-planet-meta .elementor-icon-list-icon svg { fill: var(--purc-amber-400); width: 12px; height: 12px; }

/* Torn paper edges (theme assets) */
.e-con.purc-paper, .e-con.purc-paper-dark { overflow: visible; }
.e-con.purc-paper::after, .e-con.purc-paper-dark::after {
	content: ""; position: absolute; left: 0; right: 0; top: 1px; aspect-ratio: 1920 / 248; z-index: 3; pointer-events: none;
	transform: translateY(-100%); background: url("../img/texture-paper-light-tear.webp") center bottom / 100% 100% no-repeat;
}
.e-con.purc-paper-dark::after { background-image: url("../img/texture-paper-dark-tear.webp"); }
.e-con.purc-paper { color: #1a1e1a; }
.e-con.purc-paper > .purc-wrap { gap: 72px !important; }
.purc-paper .purc-eyebrow .elementor-heading-title { color: #a8481a; }

.purc-paper-quote blockquote { margin: 0; padding: 0; border: 0; }
.purc-paper-quote blockquote::before { content: "\201C"; display: block; font: 700 96px/.6 var(--purc-serif); color: #f26f21; margin-bottom: 10px; }
.purc-paper-quote p { font: italic 500 clamp(1.35rem, 1rem + 1.3vw, 2rem)/1.45 var(--purc-serif); color: #1a1e1a; }
.purc-paper-cite .elementor-heading-title { font: 700 13px/1.4 var(--purc-sans); letter-spacing: .12em; text-transform: uppercase; color: #a8481a; }
.purc-paper-cite-note p { font-size: 13.5px; color: #5b5a52; }

.e-con.purc-archival {
	padding: 14px 14px 18px !important; background: #fffdf8; border-radius: 4px; gap: 8px;
	box-shadow: 0 24px 50px -28px rgba(26, 30, 26, .55); transform: rotate(-1.5deg);
}
.purc-archival__img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; filter: sepia(.15) contrast(1.05); }
.purc-archival__ref .elementor-heading-title { display: inline-block; padding: 3px 8px; background: #1a1e1a; color: #f2ebdd; font: 700 10.5px/1.3 var(--purc-mono); letter-spacing: .08em; text-transform: uppercase; }
.elementor-widget-heading.purc-archival__ref { width: auto; }
.purc-archival__title .elementor-heading-title { font: 700 17px/1.3 var(--purc-serif); color: #1a1e1a; }
.purc-archival__meta .elementor-heading-title { font: 500 12px/1.4 var(--purc-mono); color: #6b675c; }

.e-con.purc-metric {
	padding: 24px !important; border-radius: 16px; text-align: left;
	background: rgba(255, 253, 248, .7); border: 1px solid rgba(26, 30, 26, .14);
}
.purc-metric__label .elementor-icon-list-text { font: 700 11px/1.3 var(--purc-mono); letter-spacing: .1em; text-transform: uppercase; color: #a8481a; padding-left: 7px; }
.purc-metric__label .elementor-icon-list-icon i { color: #a8481a; font-size: 12px; }
.purc-metric__label .elementor-icon-list-icon svg { fill: #a8481a; width: 12px; height: 12px; }
.purc-metric__lead p { font-size: 14.5px; color: #3d3c35; }
.purc-metric__num .elementor-heading-title { font: 700 clamp(3.5rem, 2.8rem + 2.5vw, 5rem)/1 var(--purc-serif); color: #1a1e1a; }
.purc-metric__num .elementor-heading-title span { font-size: .45em; color: #f26f21; margin-left: 2px; }
.purc-metric__sketch img { max-width: 130px; height: auto; display: block; opacity: .9; }
.purc-metric__after .elementor-heading-title { font: 600 17px/1.4 var(--purc-serif); color: #1a1e1a; }
.purc-metric__note p { font-size: 13px; line-height: 1.6; color: #5b5a52; border-top: 1px dashed rgba(26, 30, 26, .2); padding-top: 10px; }

.e-con.purc-tubs { padding: 24px !important; border-radius: 16px; background: rgba(255, 253, 248, .7); border: 1px solid rgba(26, 30, 26, .14); }
.e-con.purc-tubs__grid { height: 192px; width: 100%; max-width: 506px; background-size: 46px 32px !important; background-repeat: repeat !important; background-position: left top !important; }
.purc-tubs--katchi .e-con.purc-tubs__grid { width: 69px; height: 32px; }
.e-con.purc-tubs--katchi { border-color: rgba(242, 111, 33, .45); }
.purc-tubs__title .elementor-heading-title { font: 700 18px/1.35 var(--purc-serif); color: #1a1e1a; }
.purc-tubs--katchi .purc-tubs__title .elementor-heading-title { color: #c2410c; }
.purc-tubs__text p { font-size: 14.5px; line-height: 1.65; color: #3d3c35; }
@media (max-width: 767px) { .e-con.purc-tubs__grid { height: 160px; background-size: 38px 26px !important; } .purc-tubs--katchi .e-con.purc-tubs__grid { width: 57px; height: 26px; } }

.purc-source-line .elementor-heading-title { font: 500 12px/1.5 var(--purc-mono); color: #5b5a52; text-align: center; }
.purc-source-line--light .elementor-heading-title { color: #d6d3c8; }

.e-con.purc-dossier { padding: 26px !important; border-radius: 18px; background: rgba(250, 247, 240, .04); border: 1px solid rgba(250, 247, 240, .12); }
.e-con.purc-dossier__photo { border-radius: 12px; }
.e-con.purc-dossier__photo .purc-badge--area { z-index: 2; }
.purc-dossier__statement .elementor-heading-title { font: 700 clamp(1.25rem, 1rem + .9vw, 1.6rem)/1.35 var(--purc-serif); color: #faf7f0; }
.purc-dossier__caption .elementor-heading-title { font: 600 15px/1.4 var(--purc-sans); color: var(--purc-amber-300); }
.e-con.purc-polaroid {
	align-self: center; width: min(380px, 100%); padding: 12px 12px 20px !important; background: #fffdf8; border-radius: 3px;
	transform: rotate(2deg); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .8);
}
.purc-polaroid__img img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; }
.purc-polaroid__title .elementor-heading-title { font: italic 600 16px/1.35 var(--purc-serif); color: #1a1e1a; }
.purc-polaroid__meta .elementor-heading-title { font: 500 11.5px/1.4 var(--purc-mono); color: #6b675c; }

.e-con.purc-table { background-size: cover; }
.e-con.purc-table::before {
	content: "" !important; position: absolute !important; inset: 0 !important; z-index: 0; opacity: 1 !important; pointer-events: none;
	background: radial-gradient(ellipse at 50% 30%, rgba(30, 20, 12, .35), rgba(20, 13, 8, .82) 75%) !important;
}
.e-con.purc-plate {
	padding: 22px !important; border-radius: 18px; background: #faf7f0; color: #1a1e1a;
	box-shadow: 0 20px 40px -20px rgba(0, 0, 0, .7), inset 0 0 0 6px rgba(26, 30, 26, .04);
}
.purc-plate__label .elementor-icon-list-text { font: 700 11px/1.3 var(--purc-mono); letter-spacing: .1em; text-transform: uppercase; color: #a8481a; padding-left: 7px; }
.purc-plate__label .elementor-icon-list-icon i { color: #a8481a; font-size: 12px; }
.purc-plate__label .elementor-icon-list-icon svg { fill: #a8481a; width: 12px; height: 12px; }
.purc-plate__num .elementor-heading-title { font: 700 clamp(2rem, 1.6rem + 1.2vw, 2.6rem)/1.05 var(--purc-serif); color: #1a1e1a; }
.purc-plate__unit .elementor-heading-title { font: 500 13.5px/1.4 var(--purc-sans); color: #4a4840; }
.purc-plate__tag .elementor-heading-title { display: inline-block; padding: 3px 9px; border-radius: 999px; background: #1a1e1a; color: #faf7f0; font: 600 11px/1.3 var(--purc-mono); }
.elementor-widget-heading.purc-plate__tag { width: auto; }
.e-con.purc-voice { max-width: 760px; margin: 0 auto; text-align: center; }
.e-con.purc-voice .elementor-widget { text-align: center; }
.purc-voice__title .elementor-heading-title { font: 700 clamp(1.3rem, 1rem + 1vw, 1.8rem)/1.3 var(--purc-serif); text-transform: uppercase; letter-spacing: .04em; color: var(--purc-amber-300); }

/* ── Source references (Our Planet) ─────────────────────────────────── */
a.purc-ref { color: #a8481a; font: 600 .78em/1 var(--purc-mono); text-decoration: none; vertical-align: super; }
a.purc-ref:hover, a.purc-ref:focus-visible { text-decoration: underline; }
.purc-paper-dark a.purc-ref, .purc-dossier a.purc-ref { color: var(--purc-amber-300); }
.purc-dossier__source p { font: 500 12px/1.5 var(--purc-mono); color: #b8b4a8; }
.purc-sources__list ol { margin: 0; padding-left: 1.4em; display: grid; gap: 10px; }
.purc-sources__list li { font-size: 14.5px; line-height: 1.6; color: #3d3c35; scroll-margin-top: 110px; }
.purc-sources__list a { color: #a8481a; word-break: break-word; }

/* Our Planet cover: keep the text clear of the torn edge (edge height = 248/1920 of the width). */
.e-con.purc-planet-cover { padding-bottom: calc(12.92vw + 28px) !important; }

/* ── Urban forum archive ───────────────────────────────────────────── */
.e-con.purc-forum { padding: 26px !important; align-content: flex-start; }
.purc-forum__title .elementor-heading-title { font-size: 1.15rem; line-height: 1.35; }
.purc-forum__speaker .elementor-heading-title { font: 600 14px/1.45 var(--purc-sans); color: #475569; }
.e-con.purc-forum > .elementor-widget-button { margin-top: auto; }

/* ══ Light header variant (pages with post meta _purc_header = light, e.g. About) ══ */
.purc-header--light .purc-header__bar { background: rgba(255, 255, 255, .9); border-color: rgba(231, 229, 228, .9); box-shadow: 0 16px 40px rgba(0, 0, 0, .12), inset 0 1px 0 rgba(255, 255, 255, .8); }
.purc-header--light.is-scrolled .purc-header__bar { background: rgba(255, 255, 255, .97); }
.purc-header--light .purc-menu { background: rgba(245, 245, 244, .9); border-color: rgba(231, 229, 228, .8); }
.purc-header--light .purc-menu a { color: #57534e; }
.purc-header--light .purc-menu a:hover, .purc-header--light .purc-menu a:focus-visible { color: #0c0a09; background: rgba(231, 229, 228, .6); }
.purc-header--light .purc-menu .current-menu-item > a { color: #fff; background: #0c0a09; font-weight: 600; }
.purc-header--light .purc-header__cta { background: #0c0a09; color: #fff; }
.purc-header--light .purc-header__cta:hover { background: #292524; color: #fff; }
.purc-header--light .purc-header__toggle, .purc-header--light .purc-header__toggle:hover, .purc-header--light .purc-header__toggle:focus { background: #f5f5f4; border-color: #d6d3d1; }
.purc-header--light .purc-header__toggle-bar, .purc-header--light .purc-header__toggle-bar::before, .purc-header--light .purc-header__toggle-bar::after { background: #1c1917; }
.purc-header--light.is-open .purc-header__toggle-bar { background: transparent; }
@media (max-width: 1024px) {
	.purc-header--light .purc-header__nav { background: rgba(255, 255, 255, .98); border-color: #e7e5e4; box-shadow: 0 24px 48px -16px rgba(0, 0, 0, .25); }
	.purc-header--light .purc-menu { background: none; border: 0; }
}

/* ══ About page — light paper design ══════════════════════════════════════════ */
.e-con.purc-about-hero {
	background-image:
		radial-gradient(circle at 2.5% 9%, rgba(245, 158, 11, .8) 0 9px, transparent 10px),
		radial-gradient(circle at 34% 15%, rgba(16, 185, 129, .7) 0 6px, transparent 7px),
		radial-gradient(circle at 53% 80%, rgba(59, 130, 246, .7) 0 6px, transparent 7px),
		radial-gradient(circle at 96% 24%, rgba(251, 191, 36, .8) 0 12px, transparent 13px),
		radial-gradient(520px 520px at 88% 32%, rgba(254, 243, 199, .55), transparent 70%),
		radial-gradient(420px 420px at 4% 0%, rgba(231, 229, 228, .5), transparent 70%) !important;
}
@media (max-width: 767px) { .e-con.purc-about-hero { background-image: radial-gradient(circle at 4% 7%, rgba(245, 158, 11, .8) 0 6px, transparent 7px), radial-gradient(circle at 94% 20%, rgba(251, 191, 36, .8) 0 8px, transparent 9px) !important; } }
.purc-breadcrumb--dark .rank-math-breadcrumb p { color: #78716c; }
.purc-breadcrumb--dark .rank-math-breadcrumb a { color: #57534e; }
.purc-breadcrumb--dark .rank-math-breadcrumb a:hover { color: #b45309; }
.purc-breadcrumb--dark .separator { color: #a8a29e; }
.purc-breadcrumb--dark .last { color: #1c1917; }
.elementor-widget-heading.purc-pill-badge { width: auto; align-self: flex-start; }
.purc-pill-badge .elementor-heading-title {
	display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px; border-radius: 999px;
	background: #fffbeb; border: 1px solid #fde68a; color: #b45309;
	font: 700 12px/1.3 var(--purc-sans); letter-spacing: .1em; text-transform: uppercase;
}
.purc-pill-badge .elementor-heading-title::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #f59e0b; animation: purc-pulse 2s ease-in-out infinite; }
@keyframes purc-pulse { 50% { opacity: .35; } }
@media (prefers-reduced-motion: reduce) { .purc-pill-badge .elementor-heading-title::before { animation: none; } }
.purc-about-title .elementor-heading-title { font: 700 clamp(2rem, 1.25rem + 3vw, 3.75rem)/1.14 var(--purc-serif); color: #1c1917; letter-spacing: -.01em; }
.purc-about-lead p { font-size: clamp(15px, 14px + .3vw, 18px); line-height: 1.7; color: #57534e; margin: 0 0 12px; }
.purc-about-lead p:last-child { margin-bottom: 0; font-size: clamp(14px, 13px + .2vw, 16px); }
.purc-about-lead strong { color: #1c1917; font-weight: 600; }

/* Stone-toned controls on the light About bands */
.purc-about-hero .purc-btn--dark .elementor-button, .purc-about-band .purc-btn--dark .elementor-button { background: #0c0a09; color: #fff; box-shadow: 0 6px 16px -8px rgba(12, 10, 9, .6); }
.purc-about-hero .purc-btn--dark .elementor-button:hover, .purc-about-band .purc-btn--dark .elementor-button:hover,
.purc-about-hero .purc-btn--dark .elementor-button:focus, .purc-about-band .purc-btn--dark .elementor-button:focus { background: #292524; color: #fff; }
.purc-about-hero .purc-btn--outline .elementor-button { background: #fff; color: #292524; border: 1px solid #e7e5e4; }
.purc-about-hero .purc-btn--outline .elementor-button:hover, .purc-about-hero .purc-btn--outline .elementor-button:focus { background: #f5f5f4; color: #1c1917; }
.purc-btn--emerald .elementor-button { background: #047857; color: #fff; box-shadow: 0 6px 16px -8px rgba(4, 120, 87, .7); }
.purc-btn--emerald .elementor-button:hover, .purc-btn--emerald .elementor-button:focus { background: #065f46; color: #fff; }
.purc-btn--block { width: 100%; }
.purc-btn--block .elementor-button { width: 100%; justify-content: center; padding: 11px 16px; font-size: 12px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; }

.e-con.purc-about-band--ruled { border-top: 1px solid rgba(231, 229, 228, .7); }
.purc-about-band .purc-h2 .elementor-heading-title { color: #1c1917; }
.purc-about-band .purc-eyebrow .elementor-heading-title, .purc-about-band .purc-eyebrow .elementor-icon-list-text { color: #d97706; }

/* Focus cards */
.e-con.purc-about-card {
	padding: 24px !important; border-radius: 24px; background: #fcfbf9; border: 1px solid rgba(231, 229, 228, .8);
	box-shadow: 0 1px 2px rgba(0, 0, 0, .04); transition: box-shadow .3s, transform .3s;
}
.e-con.purc-about-card:hover { box-shadow: 0 24px 48px -20px rgba(28, 25, 23, .25); transform: translateY(-4px); }
.purc-about-card__img { overflow: hidden; border-radius: 16px; margin-bottom: 20px; background: #f5f5f4; }
.purc-about-card__img img { width: 100%; height: 208px; object-fit: cover; display: block; border-radius: 16px; transition: transform .5s; }
.e-con.purc-about-card:hover .purc-about-card__img img { transform: scale(1.05); }
.purc-about-card__title .elementor-heading-title { font: 700 20px/1.3 var(--purc-serif); color: #1c1917; margin-bottom: 12px; transition: color .2s; }
.e-con.purc-about-card:hover .purc-about-card__title .elementor-heading-title { color: #d97706; }
.purc-about-card__text { flex-grow: 1; }
.purc-about-card__text p { font-size: 14px; line-height: 1.65; color: #57534e; margin: 0 0 24px; }
.purc-about-card .purc-btn--block { padding-top: 16px; border-top: 1px solid rgba(231, 229, 228, .6); }

/* Methodology quote */
.purc-about-quote p { font: italic 400 clamp(1rem, .9rem + .55vw, 1.25rem)/1.7 var(--purc-serif); color: #44403c; max-width: 760px; margin: 0 auto; text-align: center; }
.purc-about-method .purc-hero-actions { justify-content: center; }

/* Amber callout */
.e-con.purc-callout--amber, .purc-section--white .e-con.purc-callout--amber { background: rgba(255, 251, 235, .8); border: 1px solid rgba(253, 230, 138, .7); border-radius: 16px; }
.purc-callout--amber .purc-callout__title .elementor-icon-list-text { color: #92400e; font-family: var(--purc-serif); font-weight: 700; }

/* Operating-model pillars with coloured number badges */
.e-con.purc-about-pillar { padding: 24px !important; border-radius: 24px; background: #fff; border: 1px solid #e7e5e4; box-shadow: 0 1px 2px rgba(0, 0, 0, .04); transition: box-shadow .3s; }
.e-con.purc-about-pillar:hover { box-shadow: 0 10px 24px -12px rgba(28, 25, 23, .2); }
.elementor-widget-heading.purc-num-badge { width: auto; }
.purc-num-badge .elementor-heading-title { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 12px; font: 700 14px/1 var(--purc-sans); }
.purc-num-badge--amber .elementor-heading-title { background: #fef3c7; color: #b45309; }
.purc-num-badge--blue .elementor-heading-title { background: #dbeafe; color: #1d4ed8; }
.purc-num-badge--emerald .elementor-heading-title { background: #d1fae5; color: #047857; }
.purc-num-badge--purple .elementor-heading-title { background: #f3e8ff; color: #7e22ce; }
.purc-about-pillar__title .elementor-heading-title { font: 700 18px/1.3 var(--purc-serif); color: #1c1917; }
.purc-about-pillar__text p { font-size: 14px; line-height: 1.65; color: #57534e; margin: 0; }

/* Milestones timeline */
.e-con.purc-timeline { max-width: 820px; width: 100%; margin: 0 auto; padding-left: 28px !important; border-left: 2px solid #e7e5e4; }
.e-con.purc-timeline__item { position: relative; padding: 0 0 30px 20px !important; }
.e-con.purc-timeline__item:last-child { padding-bottom: 0 !important; }
.purc-timeline__date .elementor-heading-title { font: 700 12px/1.3 var(--purc-mono); letter-spacing: .08em; text-transform: uppercase; color: #b45309; }
.purc-timeline__date .elementor-heading-title::before {
	content: ""; position: absolute; left: -57px; top: 1px; width: 14px; height: 14px; border-radius: 50%;
	background: #f59e0b; box-shadow: 0 0 0 4px #fff, 0 0 0 5px #fde68a;
}
.purc-timeline__title .elementor-heading-title { font: 700 19px/1.35 var(--purc-serif); color: #1c1917; }
.purc-timeline__text p { font-size: 14.5px; line-height: 1.65; color: #57534e; margin: 0; }
@media (max-width: 767px) {
	.e-con.purc-timeline { padding-left: 18px !important; }
	.e-con.purc-timeline__item { padding-left: 12px !important; }
	.purc-timeline__date .elementor-heading-title::before { left: -38px; }
}
