@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 FOUNDATIONAL DOCUMENTS BLOCK — v1.2.0
   Supports two layouts in one block:
   - Layout A (Foundational Documents): icon card + bottom-underline link
   - Layout B (Nutrition Resources):   banner card + top-divider link
   Card background can be solid OR linear-gradient.
   ============================================================ */

.ponca-fd {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	background-color: var(--ponca-fd-section-bg, #FFFFFF);

	/* CSS variables for hover states (set on the wrapper by render.php) */
	--ponca-fd-card-bg: #FFFDF6;
	--ponca-fd-card-bg-hover: #FBF5E2;
	--ponca-fd-link-color: #B28E07;
	--ponca-fd-link-color-hover: #8C6E04;
	--ponca-fd-link-underline: #B28E07;
	--ponca-fd-link-underline-hover: #8C6E04;
}

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

.sec_padding.ponca-fd.wionia-section {
	padding: 120px 0 0;
}

.ponca-fd__container {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 0 auto;
	max-width: var(--ponca-fd-container-maxw, 1600px);
	gap: var(--ponca-fd-container-gap, 60px);
	width: 100%;
}

/* ---------- Header ---------- */
.ponca-fd__header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ponca-fd-header-gap, 24px);
	width: 100%;
}

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

/* Header top row: title block + optional right-aligned button */
.ponca-fd__header-top {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: var(--ponca-fd-header-top-align, center);
	justify-content: space-between;
	gap: 24px;
	width: 100%;
}

.ponca-fd__header-top .ponca-fd__header-inner {
	flex: 1 1;
	width: auto;
	min-width: 0;
}

.ponca-fd__header-button-wrap {
	display: flex;
	flex: 0 0 auto;
	justify-content: var(--ponca-fd-header-btn-justify, flex-end);
}

.ponca-fd__header-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
	white-space: nowrap;
	gap: var(--ponca-fd-hb-gap, 12px);
	background-color: var(--ponca-fd-hb-bg, #8A1C10);
	color: var(--ponca-fd-hb-color, #FFFFFF);
	border: var(--ponca-fd-hb-border, 0px solid #8A1C10);
	border-radius: var(--ponca-fd-hb-radius, 2px);
	padding: var(--ponca-fd-hb-padding, 18px 30px);
	font-family: var(--ponca-fd-hb-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ponca-fd-hb-font-size, 13px);
	line-height: var(--ponca-fd-hb-line-height, 22px);
	font-weight: var(--ponca-fd-hb-font-weight, 600);
	letter-spacing: var(--ponca-fd-hb-letter-spacing, 1.5px);
	text-transform: var(--ponca-fd-hb-text-transform, uppercase);
	transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}

.ponca-fd__header-button:hover,
.ponca-fd__header-button:focus-visible {
	background-color: var(--ponca-fd-hb-hover-bg, #6E1109) !important;
	color: var(--ponca-fd-hb-hover-col, #FFFFFF) !important;
}

.ponca-fd__header-button-arrow {
	display: inline-flex;
}

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

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

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

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

.ponca-fd__title-sep {
	white-space: pre;
}

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

.ponca-fd__description-wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--ponca-fd-desc-gap, 20px);
}

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

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

/* ---------- Split header (text column + image) ---------- */
.ponca-fd__header.has-header-image {
	flex-direction: row;
	flex-wrap: wrap;
	align-items: var(--ponca-fd-header-media-valign, flex-start);
	justify-content: space-between;
	gap: var(--ponca-fd-header-media-gap, 60px);
}

.ponca-fd__header.has-header-image.header-image-left {
	flex-direction: row-reverse;
}

.ponca-fd__header-main {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ponca-fd-header-gap, 24px);
	flex: 1 1 var(--ponca-fd-header-main-w, 50%);
	max-width: var(--ponca-fd-header-main-w, 50%);
	min-width: 0;
}

.ponca-fd__header-media {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: var(--ponca-fd-header-media-justify, flex-end);
	max-width: var(--ponca-fd-header-media-maxw, 50%);
	min-width: 0;
}

.ponca-fd__header-media img {
	display: block;
	max-width: 100%;
	height: auto;
	object-fit: var(--ponca-fd-header-media-fit, contain);
}
.about-page-federal .ponca-fd__header-media img {
	width: 100%;
}

/* Stacks a second header image directly beneath the first, using the same
   gap already used between the text column and the image column. */
.ponca-fd__header-media-stack {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--ponca-fd-header-media-gap, 60px);
	max-width: 100%;
	background-color: #FFFDF6 !important;
    color-scheme: only light;
}

/* ---------- Cards intro line (above grid) ---------- */
.ponca-fd__cards-intro {
	margin: 0;
	width: 100%;
	color: var(--ponca-fd-cards-intro-color, #6E6E6E);
	font-family: var(--ponca-fd-cards-intro-font-family, 'Cormorant Garamond', 'Georgia', serif);
	font-size: var(--ponca-fd-cards-intro-font-size, 28px);
	line-height: var(--ponca-fd-cards-intro-line-height, 34px);
	font-weight: var(--ponca-fd-cards-intro-font-weight, 400);
	font-style: var(--ponca-fd-cards-intro-font-style, italic);
	letter-spacing: var(--ponca-fd-cards-intro-letter-spacing, normal);
	max-width: var(--ponca-fd-cards-intro-maxw, none);
}

/* ---------- Bottom content (below grid) ---------- */
.ponca-fd__bottom-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--ponca-fd-bottom-gap, 20px);
}

.ponca-fd__bottom-content-p {
	margin: 0;
	color: var(--ponca-fd-bottom-color, #474747);
	font-family: var(--ponca-fd-bottom-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ponca-fd-bottom-font-size, 18px);
	line-height: var(--ponca-fd-bottom-line-height, 30px);
	font-weight: var(--ponca-fd-bottom-font-weight, 400);
	font-style: var(--ponca-fd-bottom-font-style, normal);
	max-width: var(--ponca-fd-bottom-maxw, 1100px);
}

.ponca-fd__bottom-content-p strong {
	font-weight: 600;
}

.ponca-fd__bottom-content-p em {
	font-style: italic;
}

.ponca-fd__bottom-content-p a {
	color: var(--ponca-fd-bottom-link, #B28E07);
	text-decoration: underline;
}

/* ---------- Heading: forced separate line ---------- */
.ponca-fd__title.is-separate-line .ponca-fd__title-break {
	display: block;
}

/* ---------- Per-card PDF download list ---------- */
.ponca-fd__pdf-list {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--ponca-fd-pdf-list-gap, 0px);
	margin-top: var(--ponca-fd-pdf-list-mt, 24px);
}

.ponca-fd__pdf-row {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	box-sizing: border-box;
	gap: var(--ponca-fd-pdf-row-gap, 16px);
	background-color: var(--ponca-fd-pdf-row-bg, #FFFFFF);
	border: var(--ponca-fd-pdf-row-border, 1px solid #F0E9CE);
	border-radius: var(--ponca-fd-pdf-row-radius, 8px);
	padding: var(--ponca-fd-pdf-row-padding, 16px 20px);
}

.ponca-fd__pdf-left {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	min-width: 0;
	gap: var(--ponca-fd-pdf-row-gap, 16px);
}

.ponca-fd__pdf-icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	width: var(--ponca-fd-pdf-icon-size, 44px);
	height: var(--ponca-fd-pdf-icon-size, 44px);
	background-color: var(--ponca-fd-pdf-icon-bg, #FBEAE9);
}

.ponca-fd__pdf-glyph {
	display: block;
}

.ponca-fd__pdf-icon--locked {
	background-color: var(--ponca-fd-pdf-icon-bg-locked, #F4F4F4);
}

.ponca-fd__pdf-icon-img {
	display: block;
	width: 22px;
	height: 22px;
	object-fit: contain;
}

.ponca-fd__pdf-text {
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: 2px;
}

.ponca-fd__pdf-title,
.ponca-fd__pdf-meta {
	margin: 0;
	overflow-wrap: anywhere;
}

.ponca-fd__pdf-title {
	color: var(--ponca-fd-pdf-title-color, #0D0F0E);
	font-family: var(--ponca-fd-pdf-title-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ponca-fd-pdf-title-font-size, 16px);
	line-height: var(--ponca-fd-pdf-title-line-height, 22px);
	font-weight: var(--ponca-fd-pdf-title-font-weight, 600);
}

.ponca-fd__pdf-meta {
	color: var(--ponca-fd-pdf-meta-color, #9A9A9A);
	font-family: var(--ponca-fd-pdf-meta-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ponca-fd-pdf-meta-font-size, 13px);
	font-weight: var(--ponca-fd-pdf-meta-font-weight, 400);
}

.ponca-fd__pdf-btn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	box-sizing: border-box;
	color: var(--ponca-fd-pdf-btn-color, #B28E07);
	background-color: var(--ponca-fd-pdf-btn-bg, transparent);
	border: var(--ponca-fd-pdf-btn-border, 1px solid #E3D08A);
	border-radius: var(--ponca-fd-pdf-btn-radius, 999px);
	padding: var(--ponca-fd-pdf-btn-padding, 9px 18px);
	font-size: var(--ponca-fd-pdf-btn-font-size, 12px);
	font-weight: var(--ponca-fd-pdf-btn-font-weight, 600);
	letter-spacing: var(--ponca-fd-pdf-btn-letter-spacing, 1px);
	text-transform: var(--ponca-fd-pdf-btn-text-transform, uppercase);
	transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}

.ponca-fd__pdf-btn:hover:not(.ponca-fd__pdf-btn--locked),
.ponca-fd__pdf-btn:focus-visible:not(.ponca-fd__pdf-btn--locked) {
	background-color: var(--ponca-fd-pdf-btn-hover-bg, #B28E07) !important;
	color: var(--ponca-fd-pdf-btn-hover-col, #FFFFFF) !important;
}

.ponca-fd__pdf-btn:hover:not(.ponca-fd__pdf-btn--locked) .ponca-fd__pdf-btn-arrow path,
.ponca-fd__pdf-btn:focus-visible:not(.ponca-fd__pdf-btn--locked) .ponca-fd__pdf-btn-arrow path {
	stroke: var(--ponca-fd-pdf-btn-hover-col, #FFFFFF);
}

/* "Sign in to view documents" prompt — the locked meta becomes a link. */
a.ponca-fd__pdf-meta--signin {
	color: var(--ponca-fd-pdf-meta-color-locked, #B28E07);
	text-decoration: underline;
	cursor: pointer;
	transition: opacity .18s ease;
}

a.ponca-fd__pdf-meta--signin:hover,
a.ponca-fd__pdf-meta--signin:focus-visible {
	opacity: .8;
}

/* Member-only button: a muted, static badge (not a link — the sign-in link is
   the meta line, and no file URL is emitted on a locked row). */
.ponca-fd__pdf-btn--locked {
	color: var(--ponca-fd-pdf-btn-locked-color, #848484);
	border-color: var(--ponca-fd-pdf-btn-locked-border, #848484) !important;
	background-color: transparent;
	cursor: default;
}

.ponca-fd__pdf-btn-arrow {
	display: block;
	flex: 0 0 auto;
}

@media (max-width: 560px) {
	.ponca-fd__pdf-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px !important;
	}

	.ponca-fd__pdf-btn {
		align-self: stretch;
		justify-content: center;
	}
}

/* ---------- Cards grid ---------- */
.ponca-fd__cards {
	display: grid;
	grid-template-columns: repeat(var(--ponca-fd-cards-cols, 2), minmax(var(--ponca-fd-cards-minitem, 320px), 1fr));
	gap: var(--ponca-fd-cards-gap, 30px);
	width: 100%;
}

/* ---------- List mode (icon + text, no card chrome) ---------- */
.ponca-fd__list {
	display: flex;
	flex-direction: column;
	gap: var(--ponca-fd-cards-gap, 20px);
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ponca-fd__list-item {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 16px;
}

.ponca-fd__list-icon {
	display: inline-flex;
	flex-shrink: 0;
	width: var(--ponca-fd-icon-size, 30px);
	height: var(--ponca-fd-icon-size, 30px);
}

.ponca-fd__list-icon svg {
	width: 100%;
	height: 100%;
	display: block;
}

.ponca-fd__list-icon img {
	display: block;
	max-width: 100%;
	height: auto;
}

.ponca-fd__list-text {
	margin: 0;
	color: var(--ponca-fd-card-title-color, #0D0F0E);
	font-family: var(--ponca-fd-card-title-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-weight: var(--ponca-fd-card-title-font-weight, 400);
	font-size: var(--ponca-fd-card-title-font-size, 18px);
	line-height: var(--ponca-fd-card-title-line-height, 28px);
	font-style: var(--ponca-fd-card-title-font-style, normal);
}

/* ---------- Card (shared) ---------- */
.ponca-fd__card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--ponca-fd-card-gap, 20px);
	padding: var(--ponca-fd-card-padding, 40px);
	background: var(--ponca-fd-card-bg, #FFFDF6);
	border: var(--ponca-fd-card-border, 1px solid #F5E7B3);
	border-radius: var(--ponca-fd-card-radius, 0px);
	color: inherit;
	text-decoration: none;
	transition: background 200ms ease, transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
	min-height: 100%;
}

/* Highlighted card variant — gold accent border + custom bg */
.ponca-fd__card.is-highlighted {
	background: var(--ponca-fd-card-highlight-bg, #FFFDF6);
	border: var(--ponca-fd-card-highlight-border, 1px solid #B28E07);
}

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

.hover-state .ponca-fd__card:hover,
.hover-state .ponca-fd__card:focus-visible {
	background: var(--ponca-fd-card-bg-hover);
	box-shadow: var(--ponca-fd-card-shadow-hover, 0px 10px 20px 0px #0000000D);
	transform: translateY(-2px);
}

.ponca-fd__card.is-link:focus-visible {
	outline: 2px solid var(--ponca-fd-link-color);
	outline-offset: 2px;
}

/* ---------- Banner card variant (Layout B — Nutrition Resources) ---------- */
.ponca-fd__card--banner {
	padding: 0 !important;
	gap: 0 !important;
	justify-content: flex-start;
	overflow: hidden;
}

.ponca-fd__card-banner {
	display: block;
	width: 100%;
	flex-shrink: 0;
	height: var(--ponca-fd-banner-h, 270px);
	background-color: var(--ponca-fd-banner-bg, #F5F5F5);
}

.ponca-fd__card-banner img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: var(--ponca-fd-banner-fit, cover);
	object-position: var(--ponca-fd-banner-position, center center);
}

.ponca-fd__card-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
	flex: 1;
	padding: var(--ponca-fd-card-padding, 40px);
	gap: var(--ponca-fd-card-gap, 20px);
}

/* In banner mode, the link's top-divider needs to escape the inner padding
   so the rule spans the full card width. We use negative margins from the
   inner padding value (via CSS variable) when explicit, otherwise we let
   the inline style do its thing. Simpler approach: the link wrapper's
   --topline element is given an inline width:100% and we let the inner-padding
   negative compensation happen via a wrapping rule below. */

/* ---------- Card sections ---------- */
.ponca-fd__card-section {
	display: flex;
	flex-direction: column;
	gap: var(--ponca-fd-card-section-gap, 40px);
	width: 100%;
}

.ponca-fd__card-icon-row {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
}

.ponca-fd__card-icon {
	display: inline-flex;
	width: var(--ponca-fd-icon-size, 30px);
	height: var(--ponca-fd-icon-size, 30px);
	flex-shrink: 0;
}

.ponca-fd__card-icon svg {
	width: 100%;
	height: 100%;
	display: block;
}

.ponca-fd__card-icon-img,
.ponca-fd__card-icon img {
	display: block;
	max-width: 100%;
	height: auto;
}

/* ---------- Per-card eyebrow ---------- */
.ponca-fd__card-eyebrow {
	margin: 0;
	max-width: 100%;
}

.ponca-fd__card-eyebrow--text {
	display: inline-block;
	color: var(--ponca-fd-card-eyebrow-color, #B28E07);
	font-family: var(--ponca-fd-card-eyebrow-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ponca-fd-card-eyebrow-font-size, 13px);
	line-height: var(--ponca-fd-card-eyebrow-line-height, 22px);
	font-weight: var(--ponca-fd-card-eyebrow-font-weight, 600);
	font-style: var(--ponca-fd-card-eyebrow-font-style, normal);
	letter-spacing: var(--ponca-fd-card-eyebrow-letter-spacing, 3px);
	text-transform: var(--ponca-fd-card-eyebrow-text-transform, uppercase);
}

.ponca-fd__card-eyebrow--badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: var(--ponca-fd-badge-size, 44px);
	height: var(--ponca-fd-badge-size, 44px);
	background-color: var(--ponca-fd-badge-bg, #FAF3DA);
	border-radius: var(--ponca-fd-badge-radius, 999px);
	color: var(--ponca-fd-badge-color, #0D0F0E);
	font-family: var(--ponca-fd-badge-font-family, 'Cormorant Garamond', 'Georgia', serif);
	font-size: var(--ponca-fd-badge-font-size, 16px);
	font-weight: var(--ponca-fd-badge-font-weight, 400);
	font-style: var(--ponca-fd-badge-font-style, italic);
}

/* ---------- Highlighted card variant ---------- */
.ponca-fd__card.is-highlighted:hover {
	background: var(--ponca-fd-card-bg-hover, #FBF5E2) !important;
	box-shadow: var(--ponca-fd-card-shadow-hover, 0px 10px 20px 0px #0000000D);
}

/* ---------- Alert box ---------- */
.ponca-fd__alert-wrap {
	width: 100%;
	margin-bottom: var(--ponca-fd-alert-mb, 60px);
}

.ponca-fd__alert {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	width: 100%;
	box-sizing: border-box;
	gap: var(--ponca-fd-alert-gap, 20px);
	background-color: var(--ponca-fd-alert-bg, #6B1410);
	border: var(--ponca-fd-alert-border, 0px solid #6B1410);
	border-radius: var(--ponca-fd-alert-radius, 0px);
	padding: var(--ponca-fd-alert-padding, 32px 40px);
}

.ponca-fd__alert-icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
	width: var(--ponca-fd-alert-icon-size, 26px);
	height: var(--ponca-fd-alert-icon-size, 26px);
}

.ponca-fd__alert-icon-svg {
	display: block;
}

.ponca-fd__alert-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex: 1;
	min-width: 0;
	gap: var(--ponca-fd-alert-content-gap, 10px);
}

.ponca-fd__alert-title,
.ponca-fd__alert-text {
	margin: 0;
}

.ponca-fd__alert-title {
	color: var(--ponca-fd-alert-title-color, #FFFFFF);
	font-family: var(--ponca-fd-alert-title-font-family, 'Cormorant Garamond', 'Georgia', serif);
	font-size: var(--ponca-fd-alert-title-font-size, 26px);
	line-height: var(--ponca-fd-alert-title-line-height, 30px);
	font-weight: var(--ponca-fd-alert-title-font-weight, 500);
	font-style: var(--ponca-fd-alert-title-font-style, italic);
	letter-spacing: var(--ponca-fd-alert-title-letter-spacing, normal);
}

.ponca-fd__alert-text {
	color: var(--ponca-fd-alert-text-color, #F2D9D6);
	font-family: var(--ponca-fd-alert-text-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ponca-fd-alert-text-font-size, 16px);
	line-height: var(--ponca-fd-alert-text-line-height, 26px);
	font-weight: var(--ponca-fd-alert-text-font-weight, 400);
	font-style: var(--ponca-fd-alert-text-font-style, normal);
	max-width: var(--ponca-fd-alert-text-maxw, 1200px);
}

.ponca-fd__alert-text a {
	color: inherit;
	text-decoration: underline;
}

@media (max-width: 1580px) {
	.sec_padding.ponca-fd.wionia-section {
		padding: 100px 32px 0;
	}
}

@media (max-width: 768px) {
	.ponca-fd__alert {
		padding: 24px !important;
		gap: 14px !important;
	}

	.sec_padding.ponca-fd.wionia-section {
		padding: 64px 20px 0;
	}
}

@media (max-width: 480px) {
	.ponca-fd__alert {
		padding: 20px !important;
	}
}

/* ---------- Footer ornamental pattern ---------- */
.ponca-fd__footer-pattern {
	display: block;
	pointer-events: none;
	user-select: none;
	box-sizing: border-box;
	width: 100%;
	height: var(--ponca-fd-foot-h, 83px);
	opacity: var(--ponca-fd-foot-opacity, 1);
	background-color: var(--ponca-fd-foot-bg, transparent);
	background-image: var(--ponca-fd-foot-image, none);
	background-repeat: var(--ponca-fd-foot-repeat, repeat-x);
	background-position: var(--ponca-fd-foot-position, center bottom);
	background-size: var(--ponca-fd-foot-size, auto 100%);
	position: absolute;
	bottom: 0px;
	max-width: 100%;
	left: 0px;
}


.ponca-fd__card-text {
	display: flex;
	flex-direction: column;
	gap: var(--ponca-fd-card-text-gap, 20px);
	width: 100%;
}

.ponca-fd__card-title {
	margin: 0;
	color: var(--ponca-fd-card-title-color, #0D0F0E);
	font-family: var(--ponca-fd-card-title-font-family, 'Cormorant Garamond', 'Georgia', serif);
	font-weight: var(--ponca-fd-card-title-font-weight, 400);
	font-size: var(--ponca-fd-card-title-font-size, 32px);
	line-height: var(--ponca-fd-card-title-line-height, 37px);
	font-style: var(--ponca-fd-card-title-font-style, normal);
	letter-spacing: var(--ponca-fd-card-title-letter-spacing, 0.576px);
}


.ponca-fd__card-desc {
	margin: 0;
	color: var(--ponca-fd-card-desc-color, #474747);
	font-family: var(--ponca-fd-card-desc-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-weight: var(--ponca-fd-card-desc-font-weight, 400);
	font-size: var(--ponca-fd-card-desc-font-size, 16px);
	line-height: var(--ponca-fd-card-desc-line-height, 25px);
	font-style: var(--ponca-fd-card-desc-font-style, normal);
}

/* ---------- Card link — bottom-underline style (Layout A) ---------- */
.ponca-fd__card-link {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ponca-fd-link-stack-gap, 11px);
	text-decoration: none;
	width: fit-content;
	cursor: pointer;
}

.ponca-fd__card-link:focus-visible {
	outline: 2px solid var(--ponca-fd-link-color);
	outline-offset: 2px;
}

.ponca-fd__card-link--bottom-underline {
	display: inline-flex;
	flex-direction: column;
	width: fit-content;
}

.ponca-fd__card-link-row {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	gap: var(--ponca-fd-link-row-gap, 10px);
}

.ponca-fd__card-link-text {
	color: var(--ponca-fd-link-color);
	font-family: var(--ponca-fd-link-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-weight: var(--ponca-fd-link-font-weight, 600);
	font-size: var(--ponca-fd-link-font-size, 13px);
	line-height: var(--ponca-fd-link-line-height, 22px);
	font-style: var(--ponca-fd-link-font-style, normal);
	letter-spacing: var(--ponca-fd-link-letter-spacing, 1.92px);
	text-transform: var(--ponca-fd-link-text-transform, uppercase);
	transition: color 200ms ease;
}

.ponca-fd__card-link-arrow {
	color: var(--ponca-fd-link-color);
	font-family: var(--ponca-fd-link-arrow-font-family, 'Arial', sans-serif);
	font-weight: var(--ponca-fd-link-arrow-font-weight, 700);
	font-size: var(--ponca-fd-link-arrow-font-size, 12.8px);
	line-height: var(--ponca-fd-link-arrow-line-height, 22px);
	letter-spacing: var(--ponca-fd-link-arrow-letter-spacing, 1.92px);
	transition: color 200ms ease, transform 200ms ease;
}

.ponca-fd__card-link:hover .ponca-fd__card-link-underline,
.ponca-fd__card-link:focus-visible .ponca-fd__card-link-underline {
	transform: scaleX(1);
	background-color: var(--ponca-fd-link-underline-hover);
}

/* ---------- Card link — top-divider style (Layout B — Nutrition Resources) ---------- */
.ponca-fd__card-link--top-divider {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--ponca-fd-link-top-gap, 20px);
	margin-top: auto;
}

.ponca-fd__card-link-topline {
	width: 100%;
	display: block;
	height: var(--ponca-fd-link-topline-h, 1px);
	background-color: var(--ponca-fd-link-topline-color, #F5E7B3);
}

/* When in banner mode + top-divider, push the divider edge-to-edge by
   compensating for the inner padding. We use the closest ancestor with
   padding info. Since inner-padding is inline-set, this works by letting
   the divider extend via negative margin matched to the inline padding. */
.ponca-fd__card--banner .ponca-fd__card-link--top-divider .ponca-fd__card-link-topline {
	/* Negative margins are added via inline-style fallback below; here we keep
	   the line full width inside the inner wrapper. For exact edge-to-edge,
	   author can set linkTopDividerGap and adjust cardPadding. */
}

/* Hover behaviour applies to BOTH link styles */
.ponca-fd__card-link:hover .ponca-fd__card-link-text,
.ponca-fd__card-link:hover .ponca-fd__card-link-arrow,
.ponca-fd__card-link:focus-visible .ponca-fd__card-link-text,
.ponca-fd__card-link:focus-visible .ponca-fd__card-link-arrow {
	color: var(--ponca-fd-link-color-hover);
}

.ponca-fd__card-link:hover .ponca-fd__card-link-arrow,
.ponca-fd__card-link:focus-visible .ponca-fd__card-link-arrow {
	transform: translateX(2px);
}

.ponca-fd__card-link:hover .ponca-fd__card-link-underline,
.ponca-fd__card-link:focus-visible .ponca-fd__card-link-underline {
	background-color: var(--ponca-fd-link-underline-hover);
}

/* ---------- Alignment variants ---------- */
.ponca-fd.alignwide .ponca-fd__container,
.ponca-fd.alignfull .ponca-fd__container {
	max-width: var(--ponca-fd-container-maxw, 1600px);
}

/* ---------- Home page changes ---------- */
.youth-education-pages-responsiveness.education-home .ponca-fd__header {
	padding-bottom: 60px;
	border-bottom: 1px solid #A7A7A7;
}

/* ---------- Responsive ---------- */
@media (max-width: 1280px) {
	.ponca-fd__cards {
		grid-template-columns: repeat(2, minmax(280px, 1fr)) !important;
	}
}

@media (max-width: 1024px) {
	.ponca-fd__cards {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	.ponca-fd__title {
		font-size: clamp(2rem, 5vw, 3.5rem);
		line-height: 1.1;
	}
}

@media (max-width: 980px) {

	/* Split header collapses to a single stacked column */
	.ponca-fd__header.has-header-image,
	.ponca-fd__header.has-header-image.header-image-left {
		flex-direction: column;
		align-items: flex-start;
	}

	.ponca-fd__header.has-header-image .ponca-fd__header-main,
	.ponca-fd__header.has-header-image .ponca-fd__header-media {
		flex-basis: auto;
		max-width: 100%;
		width: 100%;
	}

	.ponca-fd__header.has-header-image .ponca-fd__header-media {
		justify-content: center;
	}
}

@media (max-width: 768px) {
	.ponca-fd__title.is-separate-line .ponca-fd__title-break {
		display: none;
	}

	.ponca-fd__cards {
		display: flex;
    	flex-direction: column;
	}

	.ponca-fd__card-title {
		font-size: 24px;
		line-height: 30px;
	}

	/* Optional: stack the two title pieces on mobile */
	.ponca-fd.has-mobile-title-stack .ponca-fd__title-sep {
		display: block;
		height: 0;
		visibility: hidden;
	}

	.ponca-fd.has-mobile-title-stack .ponca-fd__title-top,
	.ponca-fd.has-mobile-title-stack .ponca-fd__title-bottom {
		display: block;
	}
}

@media (max-width: 480px) {
	.ponca-fd__description {
		font-size: 16px;
		line-height: 26px;
	}

	.ponca-fd__header-top {
		flex-direction: column;
		align-items: flex-start;
	}

	.ponca-fd__header-button-wrap {
		width: 100%;
	}

	.ponca-fd__header-button {
		width: 100%;
	}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {

	.ponca-fd__card,
	.ponca-fd__card-link-text,
	.ponca-fd__card-link-arrow,
	.ponca-fd__card-link-underline {
		transition: none;
	}

	.ponca-fd__card-link:hover .ponca-fd__card-link-arrow {
		transform: none;
	}
}