/* St. Paul's widgets - editor + frontend helpers.
   Section-level widgets are placed in full-width Elementor sections (Content
   Width: Full, zero padding); their own .container handles centering, so no
   width hacks are needed here. */

/* Stats Band figure: large count-up number. Was an inline style on the span;
   moved to a class so the widget's Figures colour/typography controls (which
   target {{WRAPPER}} .fact-k at higher specificity) can override it. */
.stat-fig {
	display: block;
	font-family: var(--font-display);
	font-size: 3rem;
	line-height: 1;
	color: var(--gold-bright);
}

/* Editor visibility fix.
   Scroll-reveal elements start at opacity:0 and only get their .in class from
   main.js, which observes the elements present at page load. In the Elementor
   editor, widgets are injected/re-rendered AFTER that runs, so they are never
   observed and would stay invisible while editing (the frontend, a full page
   load, reveals them normally). Force the revealed state inside the editor. */
body.elementor-editor-active .reveal,
body.elementor-editor-active .reveal-left,
body.elementor-editor-active .reveal-right,
body.elementor-editor-active .reveal-scale {
	opacity: 1 !important;
	transform: none !important;
}

/* Posts feed: fit fewer cards than columns without leaving empty space.
   Two posts drop to grid-2 (both cards fill the row). A single post becomes a
   wide feature card - image on the left, content on the right - centred in the
   row instead of a lone narrow card stranded on one side. */
.posts-single {
	display: grid;
	grid-template-columns: minmax(0, 880px);
	justify-content: center;
}
.post-card.post-card--wide {
	flex-direction: row;
}
.post-card.post-card--wide .pc-img {
	aspect-ratio: auto;
	flex: 0 0 46%;
}
.post-card.post-card--wide .pc-body {
	justify-content: center;
}
@media (max-width: 720px) {
	.post-card.post-card--wide { flex-direction: column; }
	.post-card.post-card--wide .pc-img { flex-basis: auto; aspect-ratio: 16 / 9.6; }
}
