@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&family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap');

/* =====================================================================
 * Ponca RFP Process block
 * ===================================================================*/

.ponca-rfp {
	display: block;
	width: 100%;
	box-sizing: border-box;
	position: relative;
	background-color: var(--ponca-rfp-bg, #FFFDF6);
	background-image: var(--ponca-rfp-bg-image, none);
	background-repeat: var(--ponca-rfp-bg-repeat, no-repeat);
	background-position: var(--ponca-rfp-bg-position, center center);
	background-size: var(--ponca-rfp-bg-size, cover);
}
.ponca-rfp *, .ponca-rfp *::before, .ponca-rfp *::after { box-sizing: border-box; }

/* container */
.ponca-rfp__container {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	max-width: var(--ponca-rfp-container-maxw, 1600px);
	gap: var(--ponca-rfp-container-gap, 60px);
	margin-left: auto;
	margin-right: auto;
}

/* header */
.ponca-rfp__header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ponca-rfp-header-gap, 24px);
}
.ponca-rfp__header-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--ponca-rfp-header-inner-gap, 14px);
}
.ponca-rfp__eyebrow {
	margin: 0;
	display: block;
	color: var(--ponca-rfp-eyebrow-color, #DEB209);
	font-family: var(--ponca-rfp-eyebrow-font-family, 'DM Sans', sans-serif);
	font-size: var(--ponca-rfp-eyebrow-font-size, 13px);
	line-height: var(--ponca-rfp-eyebrow-line-height, 22px);
	font-weight: var(--ponca-rfp-eyebrow-font-weight, 600);
	font-style: var(--ponca-rfp-eyebrow-font-style, normal);
	letter-spacing: var(--ponca-rfp-eyebrow-letter-spacing, 3px);
	text-transform: var(--ponca-rfp-eyebrow-text-transform, uppercase);
}
.ponca-rfp__headline {
	margin: 0;
	display: block;
	font-family: var(--ponca-rfp-headline-font-family, 'Cormorant Garamond', serif);
	font-size: var(--ponca-rfp-headline-font-size, 56px);
	line-height: var(--ponca-rfp-headline-line-height, 62px);
	font-weight: var(--ponca-rfp-headline-font-weight, 300);
	letter-spacing: var(--ponca-rfp-headline-letter-spacing, -0.56px);
}
.ponca-rfp__headline-regular,
.ponca-rfp__headline-italic {
	display: inline;
}
.ponca-rfp__headline-regular {
	color: var(--ponca-rfp-hl-reg-color, #0D0F0E);
	font-style: var(--ponca-rfp-hl-reg-font-style, normal);
}
.ponca-rfp__headline-italic {
	color: var(--ponca-rfp-hl-ita-color, #B28E07);
	font-style: var(--ponca-rfp-hl-ita-font-style, italic);
	font-weight: var(--ponca-rfp-hl-ita-font-weight, 300);
}

/* description block */
.ponca-rfp__description {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ponca-rfp-desc-gap, 20px);
}
.ponca-rfp__description-title {
	margin: 0;
	color: var(--ponca-rfp-desc-title-color, #0D0F0E);
	font-family: var(--ponca-rfp-desc-title-font-family, 'Cormorant Garamond', serif);
	font-size: var(--ponca-rfp-desc-title-font-size, 32px);
	line-height: var(--ponca-rfp-desc-title-line-height, 37px);
	font-weight: var(--ponca-rfp-desc-title-font-weight, 400);
	font-style: var(--ponca-rfp-desc-title-font-style, normal);
	letter-spacing: var(--ponca-rfp-desc-title-letter-spacing, 0.576px);
}
.ponca-rfp__description-paragraphs {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	gap: var(--ponca-rfp-desc-paras-gap, 16px);
}
.ponca-rfp__description-paragraph {
	margin: 0;
	color: var(--ponca-rfp-desc-body-color, #474747);
	font-family: var(--ponca-rfp-desc-body-font-family, 'DM Sans', sans-serif);
	font-size: var(--ponca-rfp-desc-body-font-size, 16px);
	line-height: var(--ponca-rfp-desc-body-line-height, 25px);
	font-weight: var(--ponca-rfp-desc-body-font-weight, 400);
	font-style: var(--ponca-rfp-desc-body-font-style, normal);
	letter-spacing: var(--ponca-rfp-desc-body-letter-spacing, 0px);
}

/* cards grid */
.ponca-rfp__grid {
	display: flex;
	flex-direction: row;
	flex-wrap: var(--ponca-rfp-grid-wrap, wrap);
	align-items: var(--ponca-rfp-grid-align, stretch);
	align-content: flex-start;
	gap: var(--ponca-rfp-grid-gap, 30px);
	width: 100%;
}

/* card */
.ponca-rfp__card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	gap: var(--ponca-rfp-card-gap, 30px);
	background-color: var(--ponca-rfp-card-bg, #FFFFFF);
	border-width: var(--ponca-rfp-card-border-width, 1px)!important;
	border-style: var(--ponca-rfp-card-border-style, solid)!important;
	border-radius: var(--ponca-rfp-card-radius, 0px);
	padding: var(--ponca-rfp-card-padding, 40px);
	flex-basis: var(--ponca-rfp-card-basis, calc(50% - 15px));
	flex-grow: var(--ponca-rfp-card-grow, 0);
	flex-shrink: var(--ponca-rfp-card-shrink, 1);
}
.ponca-rfp__card-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	gap: var(--ponca-rfp-card-inner-gap, 20px);
}
.ponca-rfp__card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}
.ponca-rfp__card-icon svg {
	display: block;
}
.ponca-rfp__card-title {
	margin: 0;
	color: var(--ponca-rfp-card-title-color, #0D0F0E);
	font-family: var(--ponca-rfp-card-title-font-family, 'Cormorant Garamond', serif);
	font-size: var(--ponca-rfp-card-title-font-size, 32px);
	line-height: var(--ponca-rfp-card-title-line-height, 37px);
	font-weight: var(--ponca-rfp-card-title-font-weight, 400);
	font-style: var(--ponca-rfp-card-title-font-style, normal);
	letter-spacing: var(--ponca-rfp-card-title-letter-spacing, 0.576px);
}
.ponca-rfp__card-body {
	margin: 0;
	color: var(--ponca-rfp-card-body-color, #474747);
	font-family: var(--ponca-rfp-card-body-font-family, 'DM Sans', sans-serif);
	font-size: var(--ponca-rfp-card-body-font-size, 16px);
	line-height: var(--ponca-rfp-card-body-line-height, 25px);
	font-weight: var(--ponca-rfp-card-body-font-weight, 400);
	font-style: var(--ponca-rfp-card-body-font-style, normal);
	letter-spacing: var(--ponca-rfp-card-body-letter-spacing, 0px);
}

/* cta link */
.ponca-rfp__cta {
	display: inline-flex;
	align-items: center;
	gap: var(--ponca-rfp-cta-gap, 10px);
	text-decoration: none;
	color: var(--ponca-rfp-cta-color, #B28E07);
	font-family: var(--ponca-rfp-cta-font-family, 'DM Sans', sans-serif);
	font-size: var(--ponca-rfp-cta-font-size, 13px);
	line-height: var(--ponca-rfp-cta-line-height, 22px);
	font-weight: var(--ponca-rfp-cta-font-weight, 600);
	font-style: var(--ponca-rfp-cta-font-style, normal);
	letter-spacing: var(--ponca-rfp-cta-letter-spacing, 1.92px);
	text-transform: var(--ponca-rfp-cta-text-transform, uppercase);
	width: -moz-fit-content;
	width: fit-content;
	transition: color 0.2s ease;
}
.ponca-rfp__cta .ponca-rfp__cta-text {
	position: relative;
	padding-bottom: var(--ponca-rfp-cta-underline-offset, 4px);
	display: inline-block;
}
.ponca-rfp__cta .ponca-rfp__cta-text::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: var(--ponca-rfp-cta-underline-width, 1px);
	background: var(--ponca-rfp-cta-underline-color, #B28E07);
}
.ponca-rfp__cta:hover,
.ponca-rfp__cta:focus-visible {
	color: var(--ponca-rfp-cta-color-hover, #A78607);
}

.ponca-rfp__cta--plain {
	cursor: default;
}

/* iframe card */
.ponca-rfp__iframe-card {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	min-width: 0;
}
.ponca-rfp__iframe-inner {
	width: 100%;
	overflow: hidden;
	display: block;
}
.ponca-rfp__iframe {
	display: block;
	width: 100%;
	height: var(--ponca-rfp-ifr-h, 214px);
	border: 0;
	background: #FFFFFF;
}
.ponca-rfp__iframe-inner--empty {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--ponca-rfp-ifr-h, 214px);
	padding: 16px;
	text-align: center;
}
.ponca-rfp__iframe-fallback {
	margin: 0;
}

/* footer ornamental pattern */
.ponca-rfp__footer-pattern {
	display: block;
	width: 100%;
	height: var(--ponca-rfp-foot-h, 83px);
}
.ponca-rfp__footer-pattern--full-vp {
	position: absolute;
    left: 0;
    bottom: 0px;
	width: 100vw;
	max-width: 100vw;
}

/* alignment helpers — when WordPress applies alignfull, neutralize container padding-x for the section bg */
.ponca-rfp.alignwide .ponca-rfp__container,
.ponca-rfp.alignfull .ponca-rfp__container {
	margin-left: auto;
	margin-right: auto;
}

/* responsive */

@media (max-width: 900px) {
	.ponca-rfp__headline {
		font-size: 40px !important;
		line-height: 44px !important;
	}
	.ponca-rfp__iframe {
		height: var(--ponca-rfp-ifr-h-mobile, 320px);
	}
	.ponca-rfp__iframe-inner--empty {
		min-height: var(--ponca-rfp-ifr-h-mobile, 320px);
	}
	.ponca-rfp__footer-pattern {
		height: var(--ponca-rfp-foot-h-mobile, 56px);
	}
}
@media (max-width: 768px) {
	.ponca-rfp__card,.ponca-rfp__iframe-card {
		flex-basis: 100% !important;
	}
}
@media (max-width: 480px) {
	
	.ponca-rfp__headline {
		font-size: 32px !important;
		line-height: 36px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ponca-rfp__cta {
		transition: none !important;
	}
}
