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

/* ============================================================
   PONCA CULTURE DEPARTMENT
   Class prefix: ponca-cd
   Layout lives here; editor-controlled tokens arrive as --pcd-*
   custom properties set on the .ponca-cd wrapper.
   ============================================================ */

.ponca-cd {
	position: relative;
	width: 100%;
	box-sizing: border-box;
	background: var(--pcd-section-bg, #FFFDF6);
	min-height: var(--pcd-section-minh, 850px);
	padding-left: var(--pcd-section-px, 0px);
	padding-right: var(--pcd-section-px, 0px);
}
.ponca-cd *, .ponca-cd *::before, .ponca-cd *::after { box-sizing: border-box; }

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

.ponca-cd__columns {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	box-sizing: border-box;
	gap: var(--pcd-columns-gap, 60px);
	align-items: var(--pcd-columns-align, flex-start);
}

.ponca-cd__left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex-shrink: 0;
	min-width: 0;
	width: var(--pcd-left-w, 764px);
}
.ponca-cd__right {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	flex-shrink: 0;
	min-width: 0;
	width: var(--pcd-right-w, 648px);
	gap: var(--pcd-right-gap, 30px);
}

/* ---------- Eyebrow ---------- */
.ponca-cd__eyebrow {
	color: var(--pcd-eyebrow-color, #DEB209);
	font-family: var(--pcd-eyebrow-font-family, 'DM Sans', sans-serif);
	font-size: var(--pcd-eyebrow-font-size, 13px);
	line-height: var(--pcd-eyebrow-line-height, 22px);
	font-weight: var(--pcd-eyebrow-font-weight, 600);
	font-style: var(--pcd-eyebrow-font-style, normal);
	letter-spacing: var(--pcd-eyebrow-letter-spacing, 3px);
	text-transform: var(--pcd-eyebrow-text-transform, uppercase);
}

/* ---------- Heading ---------- */
.ponca-cd__heading {
	margin: 0 0 var(--pcd-heading-mb, 24px);
	white-space: pre-line;
	font-family: var(--pcd-heading-font-family, 'Cormorant Garamond', serif);
	font-size: var(--pcd-heading-font-size, 56px);
	line-height: var(--pcd-heading-line-height, 62px);
	font-weight: var(--pcd-heading-font-weight, 300);
	letter-spacing: var(--pcd-heading-letter-spacing, -0.56px);
}
.ponca-cd__heading-line { display: inline; }
.ponca-cd__heading-line-1 {
	color: var(--pcd-heading-l1-color, #0D0F0E);
	font-style: var(--pcd-heading-l1-style, normal);
}
.ponca-cd__heading-line-2 {
	color: var(--pcd-heading-l2-color, #A78607);
	font-style: var(--pcd-heading-l2-style, italic);
}

/* ---------- Description ---------- */
.ponca-cd__description {
	margin: 0 0 var(--pcd-desc-mb, 0px);
	color: var(--pcd-desc-color, #474747);
	font-family: var(--pcd-desc-font-family, 'DM Sans', sans-serif);
	font-size: var(--pcd-desc-font-size, 18px);
	line-height: var(--pcd-desc-line-height, 30px);
	font-weight: var(--pcd-desc-font-weight, 400);
	font-style: var(--pcd-desc-font-style, normal);
}

/* ---------- List ---------- */
.ponca-cd__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--pcd-list-gap, 16px);
}
.ponca-cd__list-item {
	display: flex;
	flex-direction: row;
	width: 100%;
	align-items: var(--pcd-list-item-align, center);
	gap: var(--pcd-list-item-gap, 12px);
}
.ponca-cd__list-icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--pcd-list-icon-size, 20px);
	height: var(--pcd-list-icon-size, 20px);
}
.ponca-cd__list-text {
	color: var(--pcd-list-text-color, #474747);
	font-family: var(--pcd-list-text-font-family, 'DM Sans', sans-serif);
	font-size: var(--pcd-list-text-font-size, 16px);
	line-height: var(--pcd-list-text-line-height, 25px);
	font-weight: var(--pcd-list-text-font-weight, 400);
	font-style: var(--pcd-list-text-font-style, normal);
	text-decoration: var(--pcd-list-text-decoration, none);
}
a.ponca-cd__list-text { transition: color 180ms ease; }
a.ponca-cd__list-text:hover { color: var(--ponca-cd-item-hover, #DEB209); }

/* ---------- Cards ---------- */
.ponca-cd__card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	box-sizing: border-box;
}
.ponca-cd__card--mission {
	background: var(--pcd-mission-bg, #0D0F0E);
	border: var(--pcd-mission-border-width, 1px) solid var(--pcd-mission-border-color, rgba(13, 15, 14, 0.75));
	padding: var(--pcd-mission-padding, 40px);
	gap: var(--pcd-mission-gap, 20px);
	border-radius: var(--pcd-mission-radius, 0px);
}
.ponca-cd__card--language {
	background: var(--pcd-lang-bg, #FFFFFF);
	border: var(--pcd-lang-border-width, 1px) solid var(--pcd-lang-border-color, #F5E7B3);
	padding: var(--pcd-lang-padding, 40px);
	gap: var(--pcd-lang-gap, 30px);
	border-radius: var(--pcd-lang-radius, 0px);
}
.ponca-cd__card-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--pcd-lang-inner-gap, 20px);
}
.ponca-cd__card-label,
.ponca-cd__card-title,
.ponca-cd__card-quote { margin: 0; }

/* Mission card text */
.ponca-cd__card--mission .ponca-cd__card-label {
	color: var(--pcd-mission-label-color, #A78607);
	font-family: var(--pcd-mission-label-font-family, 'DM Sans', sans-serif);
	font-size: var(--pcd-mission-label-font-size, 10px);
	line-height: var(--pcd-mission-label-line-height, 22px);
	font-weight: var(--pcd-mission-label-font-weight, 600);
	font-style: var(--pcd-mission-label-font-style, normal);
	letter-spacing: var(--pcd-mission-label-letter-spacing, 3px);
	text-transform: var(--pcd-mission-label-text-transform, uppercase);
}
.ponca-cd__card-quote {
	color: var(--pcd-mission-quote-color, #E2D7CA);
	font-family: var(--pcd-mission-quote-font-family, 'Cormorant Garamond', serif);
	font-size: var(--pcd-mission-quote-font-size, 24px);
	line-height: var(--pcd-mission-quote-line-height, 130%);
	font-weight: var(--pcd-mission-quote-font-weight, 400);
	font-style: var(--pcd-mission-quote-font-style, normal);
	letter-spacing: var(--pcd-mission-quote-letter-spacing, 0px);
}

/* Language card text */
.ponca-cd__card--language .ponca-cd__card-label {
	color: var(--pcd-lang-label-color, #DEB209);
	font-family: var(--pcd-lang-label-font-family, 'DM Sans', sans-serif);
	font-size: var(--pcd-lang-label-font-size, 10px);
	line-height: var(--pcd-lang-label-line-height, 22px);
	font-weight: var(--pcd-lang-label-font-weight, 600);
	font-style: var(--pcd-lang-label-font-style, normal);
	letter-spacing: var(--pcd-lang-label-letter-spacing, 3px);
	text-transform: var(--pcd-lang-label-text-transform, uppercase);
}
.ponca-cd__card-title {
	color: var(--pcd-lang-title-color, #0D0F0E);
	font-family: var(--pcd-lang-title-font-family, 'Cormorant Garamond', serif);
	font-size: var(--pcd-lang-title-font-size, 24px);
	line-height: var(--pcd-lang-title-line-height, 29px);
	font-weight: var(--pcd-lang-title-font-weight, 400);
	font-style: var(--pcd-lang-title-font-style, normal);
	letter-spacing: var(--pcd-lang-title-letter-spacing, 0px);
}

/* ---------- CTA link ---------- */
.ponca-cd__cta {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	text-decoration: none;
	color: var(--pcd-lang-link-color, #C8A008);
	font-family: var(--pcd-lang-link-font-family, 'DM Sans', sans-serif);
	font-size: var(--pcd-lang-link-font-size, 13px);
	line-height: var(--pcd-lang-link-line-height, 22px);
	font-weight: var(--pcd-lang-link-font-weight, 400);
	font-style: var(--pcd-lang-link-font-style, normal);
	letter-spacing: var(--pcd-lang-link-letter-spacing, 0px);
	gap: var(--pcd-lang-link-gap, 6px);
	transition: color 180ms ease, opacity 180ms ease;
}
.ponca-cd__cta:hover {
	color: var(--ponca-cd-link-hover, #DEB209) !important;
}
.ponca-cd__cta-icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--pcd-lang-link-icon-size, 24px);
	height: var(--pcd-lang-link-icon-size, 24px);
}

/* ---------- Footer pattern ---------- */
.ponca-cd__footer-pattern {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	display: block;
	height: var(--pcd-footer-h, 83px);
	background-color: var(--pcd-footer-bg, transparent);
	background-image: var(--pcd-footer-image, none);
	background-repeat: repeat-x;
	background-position: left center;
	background-size: auto 100%;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1280px) {

	.ponca-cd__heading { font-size: clamp(40px, 5vw, 56px) !important; }
}

@media (max-width: 1024px) {
	.ponca-cd__columns {
		flex-direction: column !important;
		align-items: stretch !important;
	}
	.ponca-cd__left,
	.ponca-cd__right {
		width: 100% !important;
		max-width: 100% !important;
	}

	.ponca-cd__heading { font-size: clamp(36px, 6vw, 48px) !important; }
}

@media (max-width: 768px) {

	.ponca-cd__heading { font-size: 36px !important; }
	.ponca-cd__description { font-size: 16px !important; line-height: 26px !important; }
	.ponca-cd__list-text { font-size: 15px !important; line-height: 22px !important; }
	.ponca-cd__card-quote { font-size: 20px !important; }
	.ponca-cd__card-title { font-size: 20px !important; }
	.ponca-cd__footer-pattern {
		height: 60px !important;
	}
}

@media (max-width: 600px) {
	.ponca-cd__heading { font-size: 32px !important; }
	.ponca-cd__cta-text { font-size: 12px !important; }
}

@media (prefers-reduced-motion: reduce) {
	a.ponca-cd__list-text,
	.ponca-cd__cta { transition: none !important; }
}
