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

/* ============================================================
   PONCA PRC REQUIREMENTS BLOCK
   Class prefix: ponca-prr — distinct from ponca-prc and ponca-prcr.
   Two-part dark section with requirement cards + location cards.
   ============================================================ */

.ponca-prr {
	width: 100%;
	box-sizing: border-box;
	position: relative;
	background-color: var(--prr-section-bg, #0D0F0E);
}

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

.ponca-prr__container {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	max-width: var(--prr-container-max-width, 1600px);
	gap: var(--prr-section-stack-gap, 60px);
}

/* ---------- Top header ---------- */
.ponca-prr__top-header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--prr-top-header-gap, 14px);
}

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

.ponca-prr__top-title {
	margin: 0;
	width: 100%;
}

.ponca-prr__top-title-pre,
.ponca-prr__top-title-accent {
	display: inline;
	font-family: var(--prr-top-title-font-family, 'Cormorant Garamond', serif);
	font-size: var(--prr-top-title-font-size, 56px);
	line-height: var(--prr-top-title-line-height, 62px);
	font-weight: var(--prr-top-title-font-weight, 300);
	letter-spacing: var(--prr-top-title-letter-spacing, -0.56px);
}

.ponca-prr__top-title-pre {
	color: var(--prr-top-title-pre-color, #E2D7CA);
	font-style: var(--prr-top-title-pre-font-style, normal);
}

.ponca-prr__top-title-accent {
	color: var(--prr-top-title-accent-color, #B28E07);
	font-style: var(--prr-top-title-accent-font-style, italic);
}

/* ---------- Requirement grid ---------- */
.ponca-prr__req-grid {
	width: 100%;
	display: grid;
	grid-template-columns: var(--prr-req-grid-columns, repeat(2, minmax(0, 1fr)));
	gap: var(--prr-req-grid-gap, 30px);
}

.ponca-prr__req-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	background: var(--prr-req-card-bg, linear-gradient(101.92deg, #1A1C1B 0%, #645004 606.16%));
	border: var(--prr-req-card-border-width, 1px) solid var(--prr-req-card-border-color, rgba(255,255,255,0.12));
	border-radius: var(--prr-req-card-border-radius, 0px);
	padding: var(--prr-req-card-padding-y, 40px) var(--prr-req-card-padding-x, 40px);
	gap: var(--prr-req-card-inner-gap, 40px);
}

.ponca-prr__req-header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--prr-req-card-header-gap, 20px);
}

.ponca-prr__req-header-row {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	width: 100%;
	gap: var(--prr-req-card-header-row-gap, 20px);
}

.ponca-prr__req-icon {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	flex-shrink: 0;
	width: var(--prr-req-icon-wrap-size, 34px);
	height: var(--prr-req-icon-wrap-size, 34px);
}

.ponca-prr__req-icon svg,
.ponca-prr__req-icon img {
	display: block;
}

.ponca-prr__req-title {
	margin: 0;
	width: 100%;
	color: var(--prr-req-title-color, #E2D7CA);
	font-family: var(--prr-req-title-font-family, 'Cormorant Garamond', serif);
	font-size: var(--prr-req-title-font-size, 32px);
	line-height: var(--prr-req-title-line-height, 37px);
	font-weight: var(--prr-req-title-font-weight, 400);
	font-style: var(--prr-req-title-font-style, normal);
	letter-spacing: var(--prr-req-title-letter-spacing, 0.576px);
}

.ponca-prr__req-body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--prr-req-list-gap, 20px);
}

.ponca-prr__req-label {
	margin: 0;
	color: var(--prr-req-label-color, #A7A7A7);
	font-family: var(--prr-req-label-font-family, 'DM Sans', sans-serif);
	font-size: var(--prr-req-label-font-size, 16px);
	line-height: var(--prr-req-label-line-height, 25px);
	font-weight: var(--prr-req-label-font-weight, 400);
	font-style: var(--prr-req-label-font-style, normal);
}

.ponca-prr__req-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--prr-req-list-gap, 20px);
}

.ponca-prr__req-item {
	display: flex;
	flex-direction: row;
	align-items: center;
	min-width: 0;
	gap: var(--prr-req-item-gap, 10px);
}

.ponca-prr__req-check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: var(--prr-req-check-size, 20px);
	height: var(--prr-req-check-size, 20px);
}

.ponca-prr__check-svg {
	display: block;
}

.ponca-prr__req-item-text {
	flex: 1 1 auto;
	min-width: 0;
	color: var(--prr-req-item-text-color, #E2D7CA);
	font-family: var(--prr-req-item-font-family, 'DM Sans', sans-serif);
	font-size: var(--prr-req-item-font-size, 16px);
	line-height: var(--prr-req-item-line-height, 25px);
	font-weight: var(--prr-req-item-font-weight, 400);
	font-style: var(--prr-req-item-font-style, normal);
}

/* ---------- Divider ---------- */
.ponca-prr__divider {
	display: block;
	width: 100%;
	border: none;
	height: var(--prr-divider-height, 1px);
	background-color: var(--prr-divider-bg, #4E3E03);
	margin-top: var(--prr-divider-margin-top, 0px);
	margin-bottom: var(--prr-divider-margin-bottom, 0px);
}

.ponca-prr__icon-img {
	display: block;
	object-fit: contain;
	width: var(--prr-icon-img-size, 28px);
	height: var(--prr-icon-img-size, 28px);
}

/* ---------- Delivery header ---------- */
.ponca-prr__delivery-header {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-end;
	width: 100%;
	flex-wrap: wrap;
	gap: var(--prr-delivery-header-gap, 24px);
}

.ponca-prr__delivery-text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex: 1 1 auto;
	min-width: 0;
	gap: var(--prr-delivery-text-gap, 14px);
}

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

.ponca-prr__delivery-title {
	margin: 0;
	width: 100%;
}

.ponca-prr__delivery-title-pre,
.ponca-prr__delivery-title-accent {
	font-family: var(--prr-delivery-title-font-family, 'Cormorant Garamond', serif);
	font-size: var(--prr-delivery-title-font-size, 40px);
	line-height: var(--prr-delivery-title-line-height, 48px);
	font-weight: var(--prr-delivery-title-font-weight, 400);
	letter-spacing: var(--prr-delivery-title-letter-spacing, -0.56px);
}

.ponca-prr__delivery-title-pre {
	color: var(--prr-delivery-title-pre-color, #E2D7CA);
	font-style: var(--prr-delivery-title-pre-font-style, normal);
}

.ponca-prr__delivery-title-accent {
	color: var(--prr-delivery-title-accent-color, #B28E07);
	font-style: var(--prr-delivery-title-accent-font-style, normal);
}

.ponca-prr__delivery-desc {
	margin: 0;
	width: 100%;
	color: var(--prr-delivery-desc-color, #A7A7A7);
	font-family: var(--prr-delivery-desc-font-family, 'DM Sans', sans-serif);
	font-size: var(--prr-delivery-desc-font-size, 18px);
	line-height: var(--prr-delivery-desc-line-height, 30px);
	font-weight: var(--prr-delivery-desc-font-weight, 400);
	font-style: var(--prr-delivery-desc-font-style, normal);
}

.ponca-prr__delivery-link {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	text-decoration: none;
	flex-shrink: 0;
	transition: opacity 180ms ease;
	gap: var(--prr-delivery-link-stack-gap, 11px);
}

.ponca-prr__delivery-link-row {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	white-space: nowrap;
	gap: var(--prr-delivery-link-arrow-gap, 10px);
}

.ponca-prr__delivery-link-text,
.ponca-prr__delivery-link-arrow {
	color: var(--prr-delivery-link-color, #B28E07);
	font-family: var(--prr-delivery-link-font-family, 'DM Sans', sans-serif);
	font-size: var(--prr-delivery-link-font-size, 13px);
	line-height: var(--prr-delivery-link-line-height, 22px);
	font-weight: var(--prr-delivery-link-font-weight, 600);
	font-style: var(--prr-delivery-link-font-style, normal);
	letter-spacing: var(--prr-delivery-link-letter-spacing, 1.92px);
	text-transform: var(--prr-delivery-link-text-transform, uppercase);
}

.ponca-prr__delivery-link:hover .ponca-prr__delivery-link-text,
.ponca-prr__delivery-link:hover .ponca-prr__delivery-link-arrow,
.ponca-prr__delivery-link:focus-visible .ponca-prr__delivery-link-text,
.ponca-prr__delivery-link:focus-visible .ponca-prr__delivery-link-arrow {
	color: var(--ponca-prr-link-hover, #DEB209) !important;
}

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

.ponca-prr__delivery-link-underline {
	display: block;
	transition: background-color 180ms ease;
	height: var(--prr-delivery-link-underline-height, 1px);
	width: var(--prr-delivery-link-underline-width, 145px);
	background-color: var(--prr-delivery-link-underline-bg, #B28E07);
}

.ponca-prr__delivery-link:hover .ponca-prr__delivery-link-underline,
.ponca-prr__delivery-link:focus-visible .ponca-prr__delivery-link-underline {
	background-color: var(--ponca-prr-link-hover, #DEB209) !important;
}

/* ---------- Location grid ---------- */
.ponca-prr__loc-grid {
	width: 100%;
	display: grid;
	grid-template-columns: var(--prr-loc-grid-columns, repeat(3, minmax(0, 1fr)));
	gap: var(--prr-loc-grid-gap, 30px);
}

.ponca-prr__loc-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	background: var(--prr-loc-card-bg, linear-gradient(101.92deg, #1A1C1B 0%, #645004 606.16%));
	border: var(--prr-loc-card-border-width, 1px) solid var(--prr-loc-card-border-color, rgba(255,255,255,0.12));
	border-radius: var(--prr-loc-card-border-radius, 0px);
	padding: var(--prr-loc-card-padding-y, 40px) var(--prr-loc-card-padding-x, 40px);
	gap: var(--prr-loc-card-inner-gap, 40px);
}

.ponca-prr__loc-header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--prr-loc-card-header-gap, 20px);
}

.ponca-prr__loc-header-row {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	width: 100%;
	gap: var(--prr-loc-card-header-row-gap, 20px);
}

.ponca-prr__loc-icon {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	flex-shrink: 0;
	width: var(--prr-loc-icon-wrap-size, 34px);
	height: var(--prr-loc-icon-wrap-size, 34px);
}

.ponca-prr__loc-icon svg,
.ponca-prr__loc-icon img {
	display: block;
}

.ponca-prr__loc-title {
	margin: 0;
	width: 100%;
	color: var(--prr-loc-title-color, #E2D7CA);
	font-family: var(--prr-loc-title-font-family, 'Cormorant Garamond', serif);
	font-size: var(--prr-loc-title-font-size, 32px);
	line-height: var(--prr-loc-title-line-height, 37px);
	font-weight: var(--prr-loc-title-font-weight, 400);
	font-style: var(--prr-loc-title-font-style, normal);
	letter-spacing: var(--prr-loc-title-letter-spacing, 0.576px);
}

.ponca-prr__loc-body {
	margin: 0;
	width: 100%;
	color: var(--prr-loc-body-color, #A7A7A7);
	font-family: var(--prr-loc-body-font-family, 'DM Sans', sans-serif);
	font-size: var(--prr-loc-body-font-size, 16px);
	line-height: var(--prr-loc-body-line-height, 25px);
	font-weight: var(--prr-loc-body-font-weight, 400);
	font-style: var(--prr-loc-body-font-style, normal);
}

/* ============================================================
   RESPONSIVE
   ============================================================ */


/* Tablet landscape — req grid stays 2-col, loc grid drops to 2-col */
@media (max-width: 1024px) {
	.ponca-prr__loc-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.ponca-prr__top-title,
	.ponca-prr__delivery-title {
		font-size: clamp(2rem, 5vw, 3.5rem) !important;
		line-height: 1.15 !important;
	}
}

/* Tablet portrait — req drops to 1-col */
@media (max-width: 768px) {
	.ponca-prr__req-grid {
		grid-template-columns: 1fr !important;
	}

	.ponca-prr__top-title,
	.ponca-prr__delivery-title {
		font-size: clamp(1.75rem, 6vw, 2.5rem) !important;
		line-height: 1.15 !important;
	}

	.ponca-prr__req-title,
	.ponca-prr__loc-title {
		font-size: clamp(22px, 4vw, 28px) !important;
		line-height: 1.25 !important;
	}

	/* Stack delivery header into one column with link beneath */
	.ponca-prr__delivery-header {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
}

/* Mobile — single column everywhere */
@media (max-width: 600px) {
	.ponca-prr__loc-grid {
		grid-template-columns: 1fr !important;
	}


	.ponca-prr__req-item-text,
	.ponca-prr__loc-body,
	.ponca-prr__delivery-desc {
		font-size: 15px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ponca-prr__delivery-link,
	.ponca-prr__delivery-link-underline {
		transition: none !important;
	}
}
