/* Ponca Legal Support — multi-section block with five toggleable sub-sections.
   All values pulled from the supplied Figma CSS spec; every knob exposed
   via CSS variables so the inspector can override anything live. */

.ponca-ls,
.ponca-ls * { box-sizing: border-box; }

.ponca-ls {
	display: block;
	width: 100%;
	margin: 0;
	position: relative;
}

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

/* Neutralize theme list/counter rules. */
.ponca-ls ul,
.ponca-ls ol { list-style: none; padding: 0; margin: 0; }

/* ---------- Outer section ---------- */
.ponca-ls .ponca-ls__section {
	background: linear-gradient(
		var(--ls-bg-angle, 180deg),
		var(--ls-bg-start, #FFFDF6) 0%,
		var(--ls-bg-end,   #FFF7F5) var(--ls-bg-end-stop, 158.08%)
	);
	width: 100%;
}

.ponca-ls .ponca-ls__inner {
	display: flex;
	flex-direction: column;
	gap: var(--ls-section-gap, 60px);
	width: 100%;
	max-width: var(--ls-max-width, 1600px);
	margin: 0 auto;
}

/* ---------- Header ---------- */
.ponca-ls .ponca-ls__header {
	display: flex;
	flex-direction: column;
	gap: var(--ls-head-gap, 14px);
}
.ponca-ls .ponca-ls__eyebrow {
	margin: 0; padding: 0; display: block;
	color: var(--ls-eyebrow-color, #DEB209);
	font-family: var(--ls-eyebrow-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-eyebrow-font-size, 13px);
	line-height: var(--ls-eyebrow-line-height, 22px);
	font-style: var(--ls-eyebrow-font-style, normal);
	font-weight: var(--ls-eyebrow-font-weight, 600);
	letter-spacing: var(--ls-eyebrow-letter-spacing, 3px);
	text-transform: var(--ls-eyebrow-text-transform, uppercase);
}
.ponca-ls .ponca-ls__heading {
	margin: 0; padding: 0; display: block;
	color: var(--ls-heading-color, #0D0F0E);
	font-family: var(--ls-heading-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: var(--ls-heading-font-size, 56px);
	line-height: var(--ls-heading-line-height, 62px);
	font-weight: var(--ls-heading-font-weight, 300);
	letter-spacing: var(--ls-heading-letter-spacing, -0.56px);
}
.ponca-ls .ponca-ls__heading-normal {
	color: var(--ls-heading-normal-color, #0D0F0E);
}
.ponca-ls .ponca-ls__heading-italic {
	color: var(--ls-heading-italic-color, #B28E07);
	font-style: var(--ls-heading-italic-font-style, italic);
}

/* ---------- Sub-section heading (e.g. "Attorneys", "Ponca Office Hours") ---------- */
.ponca-ls .ponca-ls__subhead {
	margin: 0; padding: 0; display: block;
	color: var(--ls-subhead-color, #0D0F0E);
	font-family: var(--ls-subhead-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: var(--ls-subhead-font-size, 30px);
	line-height: var(--ls-subhead-line-height, 36px);
	font-style: var(--ls-subhead-font-style, normal);
	font-weight: var(--ls-subhead-font-weight, 600);
	letter-spacing: var(--ls-subhead-letter-spacing, 0px);
	text-transform: var(--ls-subhead-text-transform, none);
}

/* ---------- Attorneys section ---------- */
.ponca-ls .ponca-ls__attorneys {
	display: flex;
	flex-direction: column;
	gap: var(--ls-attorneys-gap, 20px);
}
.ponca-ls .ponca-ls__warning,
.ponca-ls .ponca-ls__paragraph {
	margin: 0; padding: 0;
}
.ponca-ls .ponca-ls__warning {
	color: var(--ls-warning-color, #701203);
	font-family: var(--ls-warning-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-warning-font-size, 18px);
	line-height: var(--ls-warning-line-height, 30px);
	font-style: var(--ls-warning-font-style, normal);
	font-weight: var(--ls-warning-font-weight, 400);
}
.ponca-ls .ponca-ls__paragraph {
	color: var(--ls-body-color, #474747);
	font-family: var(--ls-body-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-body-font-size, 18px);
	line-height: var(--ls-body-line-height, 30px);
	font-style: var(--ls-body-font-style, normal);
	font-weight: var(--ls-body-font-weight, 400);
}
.ponca-ls .ponca-ls__paragraph a {
	color: var(--ls-body-link, #B28E07);
	transition: color .15s ease;
}
.ponca-ls .ponca-ls__paragraph a:hover,
.ponca-ls .ponca-ls__paragraph a:focus-visible {
	color: var(--ls-body-link-hover, #DEB209);
}
.ponca-ls.is-body-link-underline .ponca-ls__paragraph a { text-decoration: underline; text-underline-offset: 2px; }
.ponca-ls:not(.is-body-link-underline) .ponca-ls__paragraph a { text-decoration: none; }

/* ---------- PDF card ---------- */
.ponca-ls .ponca-ls__pdf-card {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: var(--ls-pdf-card-gap, 120px);
	background: var(--ls-pdf-bg, #FFFFFF);
	border: var(--ls-pdf-border-w, 1px) solid var(--ls-pdf-border, #F3F3F3);
	border-radius: var(--ls-pdf-radius, 6px);
	padding: var(--ls-pdf-padding, 24px);
	width: 100%;
	text-decoration: none;
}
.ponca-ls .ponca-ls__pdf-meta {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 24px;
	min-width: 0;
	flex: 1 1 auto;
}
.ponca-ls .ponca-ls__pdf-icon-wrap {
	flex: 0 0 auto;
	width: var(--ls-pdf-icon-circle, 50px);
	height: var(--ls-pdf-icon-circle, 50px);
	background: var(--ls-pdf-icon-circle-bg, rgba(222, 178, 9, 0.10));
	border-radius: var(--ls-pdf-icon-circle-radius, 100px);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ponca-ls .ponca-ls__pdf-icon-wrap svg {
	width: var(--ls-pdf-icon-size, 24px);
	height: var(--ls-pdf-icon-size, 24px);
	color: var(--ls-pdf-icon-color, #D92D20);
}
.ponca-ls .ponca-ls__pdf-icon-img {
	display: block;
	width: var(--ls-pdf-icon-size, 24px);
	height: var(--ls-pdf-icon-size, 24px);
	object-fit: contain;
}
/* "Sign in to view documents" prompt — the locked meta becomes a link. */
.ponca-ls a.ponca-ls__pdf-type--signin {
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: pointer;
	transition: opacity .15s ease;
}
.ponca-ls a.ponca-ls__pdf-type--signin:hover,
.ponca-ls a.ponca-ls__pdf-type--signin:focus-visible { opacity: .8; }
.ponca-ls .ponca-ls__pdf-text {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}
.ponca-ls .ponca-ls__pdf-title,
.ponca-ls .ponca-ls__pdf-type { margin: 0; padding: 0; }
.ponca-ls .ponca-ls__pdf-title {
	color: var(--ls-pdf-title-color, #0D0F0E);
	font-family: var(--ls-pdf-title-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-pdf-title-font-size, 18px);
	line-height: var(--ls-pdf-title-line-height, 23px);
	font-weight: var(--ls-pdf-title-font-weight, 500);
}
.ponca-ls .ponca-ls__pdf-type {
	color: var(--ls-pdf-type-color, #848484);
	font-family: var(--ls-pdf-type-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-pdf-type-font-size, 14px);
	line-height: var(--ls-pdf-type-line-height, 18px);
	font-weight: var(--ls-pdf-type-font-weight, 400);
}
.ponca-ls .ponca-ls__pdf-btn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: var(--ls-pdf-btn-py, 6px) var(--ls-pdf-btn-px, 16px);
	border: 1px solid var(--ls-pdf-btn-border, #B28E07);
	border-radius: var(--ls-pdf-btn-radius, 100px);
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
	color: var(--ls-pdf-button-color, #B28E07);
	font-family: var(--ls-pdf-button-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-pdf-button-font-size, 12px);
	line-height: var(--ls-pdf-button-line-height, 16px);
	font-weight: var(--ls-pdf-button-font-weight, 400);
	letter-spacing: var(--ls-pdf-button-letter-spacing, 1px);
	text-transform: var(--ls-pdf-button-text-transform, uppercase);
}
.ponca-ls .ponca-ls__pdf-btn:hover:not(.ponca-ls__pdf-btn--locked),
.ponca-ls .ponca-ls__pdf-btn:focus-visible:not(.ponca-ls__pdf-btn--locked) {
	background: var(--ls-pdf-btn-hover-bg, rgba(222, 178, 9, 0.10));
}
/* 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 card). */
.ponca-ls .ponca-ls__pdf-btn--locked { cursor: default; }
.ponca-ls .ponca-ls__pdf-btn svg {
	width: 16px;
	height: 16px;
	color: currentColor;
}
.ponca-ls__pdf-btn:hover span, .ponca-ls__pdf-btn:hover svg{
	color:#0D0F0E
}
/* ---------- Horizontal divider ---------- */
.ponca-ls .ponca-ls__divider {
	width: 100%;
	height: 0;
	border: 0;
	border-top: var(--ls-divider-w, 1px) var(--ls-divider-style, solid) var(--ls-divider-color, #A7A7A7);
	margin: 0;
	padding: 0;
}

/* ---------- Featured card ---------- */
.ponca-ls .ponca-ls__featured {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--ls-featured-gap, 40px);
	background: var(--ls-featured-bg, #FFFFFF);
	border: var(--ls-featured-border-w, 1px) solid var(--ls-featured-border, #F5E7B3);
	border-radius: var(--ls-featured-radius, 0px);
	padding: var(--ls-featured-padding, 40px);
	width: 100%;
}
.ponca-ls .ponca-ls__featured-icon {
	width: var(--ls-featured-icon-size, 30px);
	height: var(--ls-featured-icon-size, 30px);
	color: var(--ls-featured-icon-color, #B28E07);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ponca-ls .ponca-ls__featured-icon svg { width: 100%; height: 100%; }
.ponca-ls .ponca-ls__featured-title,
.ponca-ls .ponca-ls__featured-body {
	margin: 0; padding: 0; width: 100%;
}
.ponca-ls .ponca-ls__featured-title {
	color: var(--ls-featured-title-color, #0D0F0E);
	font-family: var(--ls-featured-title-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: var(--ls-featured-title-font-size, 32px);
	line-height: var(--ls-featured-title-line-height, 37px);
	font-style: var(--ls-featured-title-font-style, normal);
	font-weight: var(--ls-featured-title-font-weight, 400);
	letter-spacing: var(--ls-featured-title-letter-spacing, 0.576px);
	text-transform: var(--ls-featured-title-text-transform, none);
}
.ponca-ls .ponca-ls__featured-body {
	color: var(--ls-featured-body-color, #474747);
	font-family: var(--ls-featured-body-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-featured-body-font-size, 16px);
	line-height: var(--ls-featured-body-line-height, 25px);
	font-weight: var(--ls-featured-body-font-weight, 400);
}
.ponca-ls .ponca-ls__featured-body > p { margin: 0; padding: 0; }
.ponca-ls .ponca-ls__featured-body > p + p { margin-top: var(--ls-featured-body-para-gap, 20px); }
.ponca-ls .ponca-ls__featured-body a {
	color: var(--ls-body-link, #B28E07);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.ponca-ls .ponca-ls__featured-link {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 11px;
	text-decoration: none;
	width: var(--ls-featured-link-width, 145px);
	max-width: 100%;
}
.ponca-ls .ponca-ls__featured-link-row {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	color: var(--ls-featured-link-row-color, #B28E07);
	font-family: var(--ls-featured-link-typo-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-featured-link-typo-font-size, 13px);
	line-height: var(--ls-featured-link-typo-line-height, 22px);
	font-weight: var(--ls-featured-link-typo-font-weight, 600);
	letter-spacing: var(--ls-featured-link-typo-letter-spacing, 1.92px);
	text-transform: var(--ls-featured-link-typo-text-transform, uppercase);
}
.ponca-ls .ponca-ls__featured-link-text,
.ponca-ls .ponca-ls__featured-link-arrow {
	color: var(--ls-featured-link-color, #B28E07);
}
.ponca-ls .ponca-ls__featured-link-arrow {
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 700;
	font-size: 12.8px;
	line-height: 22px;
	letter-spacing: 1.92px;
}
.ponca-ls .ponca-ls__featured-link-underline {
	width: 100%;
	height: 1px;
	background: var(--ls-featured-link-underline-color, #B28E07);
}

/* ---------- Office Hours section ---------- */
.ponca-ls .ponca-ls__office-hours {
	display: flex;
	flex-direction: column;
	gap: var(--ls-officehours-gap, 30px);
}
.ponca-ls .ponca-ls__office-hours-head {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.ponca-ls .ponca-ls__office-hours-desc {
	margin: 0; padding: 0;
	color: var(--ls-oh-desc-color, #474747);
	font-family: var(--ls-oh-desc-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-oh-desc-font-size, 18px);
	line-height: var(--ls-oh-desc-line-height, 30px);
	font-weight: var(--ls-oh-desc-font-weight, 400);
}
.ponca-ls .ponca-ls__office-hours-cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--ls-officehours-col-gap, 30px);
	width: 100%;
}

/* ---------- Dark card ---------- */
.ponca-ls .ponca-ls__dark-card {
	display: flex;
	flex-direction: column;
	gap: var(--ls-darkcard-gap, 20px);
	background: var(--ls-darkcard-bg, #0D0F0E);
	border: var(--ls-darkcard-border-w, 1px) solid var(--ls-darkcard-border, rgba(13, 15, 14, 0.75));
	border-radius: var(--ls-darkcard-radius, 0px);
	padding: var(--ls-darkcard-padding, 40px);
}
.ponca-ls .ponca-ls__dark-location {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.ponca-ls .ponca-ls__dark-location-name {
	margin: 0; padding: 0;
	color: var(--ls-dark-location-color, #DEB209);
	font-family: var(--ls-dark-location-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: var(--ls-dark-location-font-size, 32px);
	line-height: var(--ls-dark-location-line-height, 37px);
	font-weight: var(--ls-dark-location-font-weight, 400);
	letter-spacing: var(--ls-dark-location-letter-spacing, 0.576px);
	text-transform: var(--ls-dark-location-text-transform, capitalize);
}
.ponca-ls .ponca-ls__dark-meta-row {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 10px;
}
.ponca-ls .ponca-ls__dark-meta-icon {
	flex: 0 0 auto;
	width: var(--ls-darkcard-icon-size, 20px);
	height: var(--ls-darkcard-icon-size, 20px);
	color: var(--ls-darkcard-icon-color, #A78607);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 3px;
}
.ponca-ls .ponca-ls__dark-meta-icon svg { width: 100%; height: 100%; stroke: currentColor; fill: none; }
.ponca-ls .ponca-ls__dark-meta-text {
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
	flex: 1 1 auto;
}
.ponca-ls .ponca-ls__dark-meta-label,
.ponca-ls .ponca-ls__dark-meta-value {
	font-family: var(--ls-dark-meta-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-dark-meta-font-size, 16px);
	line-height: var(--ls-dark-meta-line-height, 25px);
	font-weight: var(--ls-dark-meta-font-weight, 400);
}
.ponca-ls .ponca-ls__dark-meta-label {
	color: var(--ls-darkcard-label, #F0EBE4);
	margin: 0;
}
.ponca-ls .ponca-ls__dark-meta-value {
	color: var(--ls-darkcard-value, #A7A7A7);
	margin: 0;
}
.ponca-ls .ponca-ls__dark-divider {
	width: 100%;
	height: 0;
	border: 0;
	border-top: var(--ls-darkcard-divider-w, 1px) solid var(--ls-darkcard-divider, rgba(240, 235, 228, 0.25));
	margin: 0;
	padding: 0;
}

/* ---------- Light card ---------- */
.ponca-ls .ponca-ls__light-card {
	display: flex;
	flex-direction: column;
	gap: var(--ls-lightcard-gap, 20px);
	background: var(--ls-lightcard-bg, #FFFFFF);
	border: var(--ls-lightcard-border-w, 1px) solid var(--ls-lightcard-border, #F5E7B3);
	border-radius: var(--ls-lightcard-radius, 0px);
	padding: var(--ls-lightcard-padding, 40px);
}
.ponca-ls .ponca-ls__light-card-title,
.ponca-ls .ponca-ls__light-card-desc { margin: 0; padding: 0; }
.ponca-ls .ponca-ls__light-card-title {
	color: var(--ls-light-title-color, #0D0F0E);
	font-family: var(--ls-light-title-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: var(--ls-light-title-font-size, 32px);
	line-height: var(--ls-light-title-line-height, 37px);
	font-weight: var(--ls-light-title-font-weight, 400);
	letter-spacing: var(--ls-light-title-letter-spacing, 0.576px);
	text-transform: var(--ls-light-title-text-transform, capitalize);
}
.ponca-ls .ponca-ls__light-card-desc {
	color: var(--ls-light-desc-color, #474747);
	font-family: var(--ls-light-desc-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-light-desc-font-size, 16px);
	line-height: var(--ls-light-desc-line-height, 25px);
	font-weight: var(--ls-light-desc-font-weight, 400);
}
.ponca-ls .ponca-ls__light-divider {
	width: 100%;
	height: 0;
	border: 0;
	border-top: var(--ls-lightcard-divider-w, 1px) solid var(--ls-lightcard-divider, #F5E7B3);
	margin: 0;
	padding: 0;
}
.ponca-ls .ponca-ls__light-meta-row {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	margin: 0;
}
.ponca-ls .ponca-ls__light-meta-icon {
	flex: 0 0 auto;
	width: var(--ls-lightcard-icon-size, 20px);
	height: var(--ls-lightcard-icon-size, 20px);
	color: var(--ls-lightcard-icon-color, #A78607);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ponca-ls .ponca-ls__light-meta-icon svg { width: 100%; height: 100%; stroke: currentColor; fill: none; }
.ponca-ls .ponca-ls__light-meta-text {
	color: var(--ls-lightcard-meta, #474747);
	margin: 0;
	min-width: 0;
	font-family: var(--ls-light-meta-font-family, 'DM Sans', 'Helvetica Neue', sans-serif);
	font-size: var(--ls-light-meta-font-size, 16px);
	line-height: var(--ls-light-meta-line-height, 25px);
	font-weight: var(--ls-light-meta-font-weight, 400);
}
.ponca-ls .ponca-ls__light-meta-text a {
	color: var(--ls-lightcard-link, #474747);
	transition: color .15s ease;
}
.ponca-ls .ponca-ls__light-meta-text a:hover,
.ponca-ls .ponca-ls__light-meta-text a:focus-visible {
	color: var(--ls-lightcard-link-hover, #B28E07);
}
.ponca-ls.is-lightcard-link-underline .ponca-ls__light-meta-text a { text-decoration: underline; }
.ponca-ls:not(.is-lightcard-link-underline) .ponca-ls__light-meta-text a { text-decoration: none; }

/* ---------- Footer image ---------- */
.ponca-ls .ponca-ls__footer {
	width: 100%;
	margin-top: var(--ls-footer-mt, 0px);
	display: block;
	line-height: 0;
}
.ponca-ls .ponca-ls__footer--image {
	text-align: var(--ls-footer-align, center);
}
.ponca-ls .ponca-ls__footer--image img {
	display: inline-block;
	max-width: var(--ls-footer-max, 100%);
	height: var(--ls-footer-h, auto);
	opacity: var(--ls-footer-opacity, 1);
	width: auto;
}
.ponca-ls .ponca-ls__footer--image.is-stretch img { width: 100%; }
.ponca-ls .ponca-ls__footer--pattern {
	width: 100%;
	position: absolute;
	bottom: 0px;
	left:0px;
	height: var(--ls-footer-pattern-h, 83px);
	background-image: var(--ls-footer-pattern-image, none);
	background-repeat: repeat-x;
	background-position: var(--ls-footer-pattern-pos, center bottom);
	background-size: var(--ls-footer-pattern-tile, auto);
	opacity: var(--ls-footer-opacity, 1);
}

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
	.ponca-ls .ponca-ls__pdf-card { gap: 24px; }
}
@media (max-width: 900px) {
	.ponca-ls .ponca-ls__office-hours-cols { grid-template-columns: 1fr; }
}
@media (max-width: 780px) {
	.ponca-ls .ponca-ls__heading {
		font-size: clamp(34px, 7vw, 56px) !important;
		line-height: 1.1 !important;
	}
	.ponca-ls .ponca-ls__pdf-card {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
	}
	.ponca-ls .ponca-ls__pdf-btn { align-self: flex-start; }
	.ponca-ls .ponca-ls__subhead,
	.ponca-ls .ponca-ls__featured-title,
	.ponca-ls .ponca-ls__dark-location-name,
	.ponca-ls .ponca-ls__light-card-title {
		font-size: clamp(22px, 5vw, 32px) !important;
		line-height: 1.15 !important;
	}
}
@media (max-width: 480px) {
	.ponca-ls .ponca-ls__dark-card,
	.ponca-ls .ponca-ls__light-card { padding: 24px; }
}
