@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&display=swap');

/* ============================================================
   PONCA ARCHIVES INTRO BLOCK
   Pixel-perfect of Frame 43 — fully overridable from inspector
   ============================================================ */

.ponca-archives {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	overflow: hidden;
	/* fallbacks if attrs are blank */
	background-color: var(--pa-section-bg, #FFFDF6);
	padding-top: var(--pa-section-padding-y, 128px);
	padding-bottom: var(--pa-section-padding-y, 128px);
	padding-left: var(--pa-section-padding-y, 48px);
	padding-right: var(--pa-section-padding-y, 48px);
}

.ponca-archives *,
.ponca-archives *::before,
.ponca-archives *::after {
	box-sizing: border-box;
}

.ponca-archives__container {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	margin: 0 auto;
	max-width: var(--pa-container-max-width, 1600px);
	gap: var(--pa-container-gap, 60px);
}

/* ---------- Top row (statement + cards) ---------- */
.ponca-archives__top {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: var(--pa-top-gap, 60px);
	width: 100%;
}

/* ---------- Left: statement (eyebrow + title + description) ---------- */
.ponca-archives__statement {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--pa-statement-gap, 24px);
	max-width: var(--pa-statement-max-width, 811px);
	flex: 1 1 auto;
	min-width: 0;
}

.ponca-archives__header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--pa-header-gap, 14px);
	width: 100%;
}

.ponca-archives__eyebrow {
	margin: 0;
	color: var(--pa-eyebrow-color, #DEB209);
	font-family: var(--pa-eyebrow-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-weight: var(--pa-eyebrow-font-weight, 600);
	font-size: var(--pa-eyebrow-font-size, 13px);
	line-height: var(--pa-eyebrow-line-height, 22px);
	font-style: var(--pa-eyebrow-font-style, normal);
	letter-spacing: var(--pa-eyebrow-letter-spacing, 3px);
	text-transform: var(--pa-eyebrow-text-transform, uppercase);
}

.ponca-archives__title {
	margin: 0;
	font-family: var(--pa-title-font-family, 'Cormorant Garamond', 'Georgia', serif);
	font-weight: var(--pa-title-font-weight, 300);
	font-size: var(--pa-title-font-size, 56px);
	line-height: var(--pa-title-line-height, 62px);
	letter-spacing: var(--pa-title-letter-spacing, -0.56px);
	color: #0D0F0E;
}

.ponca-archives__title-top {
	color: var(--pa-title-top-color, #0D0F0E);
	font-style: var(--pa-title-top-font-style, normal);
}

.ponca-archives__title-bottom {
	color: var(--pa-title-bottom-color, #DEB209);
	font-style: var(--pa-title-bottom-font-style, italic);
}

/* Separator between the two title parts when shown on one line */
.ponca-archives__title-sep { white-space: pre; }
/* Allow the one-line variant to wrap naturally only if it must */
.ponca-archives__title.is-one-line { text-wrap: balance; }

.ponca-archives__description-wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.ponca-archives__description {
	margin: 0;
	width: 100%;
	font-family: var(--pa-desc-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-weight: var(--pa-desc-font-weight, 400);
	font-size: var(--pa-desc-font-size, 18px);
	line-height: var(--pa-desc-line-height, 30px);
	font-style: var(--pa-desc-font-style, normal);
	color: var(--pa-desc-color, #474747);
	max-width: var(--pa-desc-max-width, 719px);
}

.ponca-archives__description strong {
	font-weight: 600;
}

.ponca-archives__description em {
	font-style: italic;
}

/* ---------- Optional "SIGN IN" button ---------- */
.ponca-archives__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: background-color .15s ease, color .15s ease;
	margin-top: var(--pa-button-margin-top, 32px);
	padding: var(--pa-button-padding, 18px 32px);
	background-color: var(--pa-button-bg, #DEB209);
	color: var(--pa-button-color, #0D0F0E);
	border-radius: var(--pa-button-border-radius, 4px);
	font-family: var(--pa-button-font-family, 'DM Sans', sans-serif);
	font-size: var(--pa-button-font-size, 14px);
	line-height: var(--pa-button-line-height, 24px);
	font-weight: var(--pa-button-font-weight, 600);
	letter-spacing: var(--pa-button-letter-spacing, 1px);
	text-transform: var(--pa-button-text-transform, uppercase);
}

/* ---------- Right: 2x2 stat cards (CSS grid — reliable across all breakpoints) ---------- */
.ponca-archives__cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--pa-cards-gap, 33px);
	max-width: var(--pa-cards-max-width, 633px);
	flex: 0 0 auto;
	align-items: flex-start;
	align-content: flex-start;
}

.ponca-archives__card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: var(--pa-card-width, 300px);
	min-width: 0;
	height: var(--pa-card-height, 161px);
	padding: var(--pa-card-padding, 30px);
	gap: var(--pa-card-gap, 20px);
	background-color: var(--pa-card-bg, #691103);
	border-radius: var(--pa-card-border-radius, 0px);
	color: inherit;
	text-decoration: none;
	transition: background-color 200ms ease, transform 200ms ease;
}

.ponca-archives__card.is-link {
	cursor: pointer;
}

.ponca-archives__card.is-link:hover,
.ponca-archives__card.is-link:focus-visible {
	background-color: var(--ponca-archives-card-bg-hover, #5a0e02);
	transform: translateY(-2px);
}

.ponca-archives__card.is-link:focus-visible {
	outline: 2px solid #DEB209;
	outline-offset: 2px;
}

.ponca-archives__card-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding-bottom: 10px;
	width: 100%;
}

.ponca-archives__number {
	margin: 0;
	font-family: var(--pa-number-font-family, 'Cormorant Garamond', 'Georgia', serif);
	font-weight: var(--pa-number-font-weight, 600);
	font-size: var(--pa-number-font-size, 50px);
	line-height: var(--pa-number-line-height, 61px);
	font-style: var(--pa-number-font-style, normal);
	color: var(--pa-number-color, #DEB209);
	text-align: center;
	width: 100%;
}

.ponca-archives__label {
	margin: 0;
	font-family: var(--pa-label-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-weight: var(--pa-label-font-weight, 400);
	font-size: var(--pa-label-font-size, 16px);
	line-height: var(--pa-label-line-height, 25px);
	font-style: var(--pa-label-font-style, normal);
	color: var(--pa-label-color, #EEDCD9);
	text-align: center;
	width: 100%;
}

/* ---------- Bottom decorative pattern strip ---------- */
.ponca-archives__bottom-pattern {
	width: 100%;
	height: 83px;
	background-color: #FFFFFF;
	background-repeat: repeat-x;
	background-position: left center;
	background-size: contain;
	pointer-events: none;
	user-select: none;
}

.ponca-archives__bottom-pattern.historical {
	background-position: left center;
	background-size: contain;
}

/* ---------- Alignment variants ---------- */
.ponca-archives.alignwide .ponca-archives__container,
.ponca-archives.alignfull .ponca-archives__container {
	max-width: 1600px;
}

/* ---------- Responsive ---------- */


@media (max-width: 960px) {
	.ponca-archives__title {
		font-size: clamp(2rem, 5vw, 3.5rem);
		line-height: 1.1;
	}
}
@media (max-width: 767px) {
	.ponca-archives__top {
		flex-direction: column;
		align-items: stretch;
	}
	.ponca-archives__card {
		width:100%!important
	}
	.ponca-archives__statement,
	.ponca-archives__cards {
		max-width: 100%!important;
		width: 100%;
	}
}
@media (max-width: 600px) {

	.ponca-archives__number {
		font-size: 42px;
		line-height: 1.1;
	}

	.ponca-archives__label {
		font-size: 15px;
	}

	.ponca-archives__bottom-pattern {
		height: 56px;
	}
}

@media (max-width: 768px) {
	.ponca-archives__cards {
		grid-template-columns: 1fr;
		justify-content: center;
		justify-items: center;
	}

	.ponca-archives__cards>* {
		width: 100%;
		max-width: 500px;
	}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	.ponca-archives__card {
		transition: none;
	}

	.ponca-archives__card.is-link:hover,
	.ponca-archives__card.is-link:focus-visible {
		transform: none;
	}
}

/* ============================================================
   DYNAMIC BOTTOM ORNAMENT (Media Library image — v1.1.0)
   The legacy `.ponca-archives__bottom-pattern` rules above keep
   their existing defaults; this appends modifier rules that activate
   only for the new image-based variant.
   ============================================================ */

.ponca-archives__bottom-pattern--image {
	display: block;
	margin-bottom: 0;
	pointer-events: none;
	user-select: none;
	width: 100%;
	margin-top: var(--pa-orn-margin-top, 0px);
	background-color: var(--pa-orn-bg, transparent);
	background-image: var(--pa-orn-image, none);
	background-repeat: var(--pa-orn-repeat, repeat-x);
	background-position: var(--pa-orn-position, center bottom);
	background-size: var(--pa-orn-size, auto 100%);
	opacity: var(--pa-orn-opacity, 1);
	height: var(--pa-orn-h, 83px);
}

/* Full-viewport breakout — touches bottom, edge-to-edge regardless of theme container width. */
.ponca-archives__bottom-pattern--image.ponca-archives__bottom-pattern--full {
	position: absolute;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	width: 100vw;
	max-width: 100vw;
	bottom: 0;
}

/* Touches-bottom responsive scaling — heights shrink gracefully
   so the ornament always sits flush at the bottom edge. */
@media (max-width: 1024px) {
	.ponca-archives__bottom-pattern--image {
		height: calc(var(--pa-orn-h, 83px) * 0.85);
	}
}

@media (max-width: 720px) {
	.ponca-archives__bottom-pattern--image {
		height: var(--pa-orn-h-mobile, 56px);
		background-size: auto 100%;
	}
}

@media (max-width: 420px) {
	.ponca-archives__bottom-pattern--image {
		height: calc(var(--pa-orn-h-mobile, 56px) * 0.85);
	}
}