/**
 * Content polish: data tables, check grids, shoutout cards.
 * Complements facility-block table patterns for text-block content.
 */

.text-block table,
.text-block .wb-data-table,
.media-block table,
.media-block .wb-data-table,
.entry-content .wb-data-table,
.accordian-faqs dd table,
.accordian-faqs dd .wb-data-table {
	width: 100%;
	margin: 1rem 0 1.5rem;
	border-collapse: collapse;
	text-align: left;
	background: #fff;
}

.text-block table thead th,
.text-block .wb-data-table thead th,
.media-block table thead th,
.media-block .wb-data-table thead th,
.entry-content .wb-data-table thead th,
.accordian-faqs dd table thead th,
.accordian-faqs dd .wb-data-table thead th {
	font-family: Libre Baskerville, Helvetica, serif;
	font-size: 0.95rem;
	font-weight: 400;
	padding: 0.85rem 1rem;
	border-bottom: 2px solid rgba(158, 179, 151, 0.55);
	background: #f9f8f5;
	color: #224034;
	text-align: left;
}

.text-block table tbody tr,
.text-block .wb-data-table tbody tr,
.media-block table tbody tr,
.media-block .wb-data-table tbody tr,
.entry-content .wb-data-table tbody tr,
.accordian-faqs dd table tbody tr,
.accordian-faqs dd .wb-data-table tbody tr {
	border-bottom: 1px solid rgba(158, 179, 151, 0.22);
}

.text-block table tbody tr:nth-child(even),
.text-block .wb-data-table tbody tr:nth-child(even),
.media-block table tbody tr:nth-child(even),
.media-block .wb-data-table tbody tr:nth-child(even),
.entry-content .wb-data-table tbody tr:nth-child(even),
.accordian-faqs dd table tbody tr:nth-child(even),
.accordian-faqs dd .wb-data-table tbody tr:nth-child(even) {
	background: rgba(158, 179, 151, 0.08);
}

.text-block table tbody tr:last-child,
.text-block .wb-data-table tbody tr:last-child,
.media-block table tbody tr:last-child,
.media-block .wb-data-table tbody tr:last-child,
.entry-content .wb-data-table tbody tr:last-child,
.accordian-faqs dd table tbody tr:last-child,
.accordian-faqs dd .wb-data-table tbody tr:last-child {
	border-bottom: 0;
}

.text-block table td,
.text-block .wb-data-table td,
.media-block table td,
.media-block .wb-data-table td,
.entry-content .wb-data-table td,
.accordian-faqs dd table td,
.accordian-faqs dd .wb-data-table td {
	padding: 0.8rem 1rem;
	font-size: 0.9rem;
	vertical-align: top;
	text-align: left;
}

.text-block table tbody td:first-child,
.text-block .wb-data-table tbody td:first-child,
.media-block table tbody td:first-child,
.media-block .wb-data-table tbody td:first-child,
.entry-content .wb-data-table tbody td:first-child,
.accordian-faqs dd table tbody td:first-child,
.accordian-faqs dd .wb-data-table tbody td:first-child {
	font-family: Libre Baskerville, Helvetica, serif;
	color: #224034;
}

@media (max-width: 640px) {
	.text-block table,
	.text-block .wb-data-table,
	.media-block table,
	.media-block .wb-data-table,
	.entry-content .wb-data-table,
	.accordian-faqs dd table,
	.accordian-faqs dd .wb-data-table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* Why-invest checklist */
.wb-check-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 2rem !important;
}

@media (min-width: 640px) {
	.wb-check-grid {
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}
}

.wb-check-grid li {
	list-style: none !important;
	margin: 0 !important;
	padding: 1rem 1.15rem 1rem 3.25rem;
	border: 1px solid rgba(158, 179, 151, 0.28);
	background: #fff;
	border-radius: 2px;
	font-size: 0.95rem;
	position: relative;
	min-height: 3.25rem;
	display: flex;
	align-items: center;
}

.wb-check-grid li::before {
	content: "";
	position: absolute;
	left: 1rem;
	top: 50%;
	width: 1.35rem;
	height: 1.35rem;
	transform: translateY(-50%);
	background-color: #224034;
	-webkit-mask: var(--wb-icon) center / contain no-repeat;
	mask: var(--wb-icon) center / contain no-repeat;
	/* fallback check */
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="economy"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19V9'/%3E%3Cpath d='M10 19V5'/%3E%3Cpath d='M16 19v-7'/%3E%3Cpath d='M22 19H2'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="emerging"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M8 8c2-3 6-3 8 0'/%3E%3Cpath d='M7 14c3-4 7-4 10 0'/%3E%3Cpath d='M6 19c4-5 8-5 12 0'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="markets"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='M12 3a14 14 0 010 18'/%3E%3Cpath d='M12 3a14 14 0 000 18'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="land"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16'/%3E%3Cpath d='M6 20V10l6-5 6 5v10'/%3E%3Cpath d='M10 20v-5h4v5'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="orchard"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22v-7'/%3E%3Cpath d='M8 10a4 4 0 118 0c0 3-4 5-4 5s-4-2-4-5z'/%3E%3Cpath d='M9 7c1-2 2.5-3 3-3s2 1 3 3'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="heritage"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16'/%3E%3Cpath d='M6 20V9l6-4 6 4v11'/%3E%3Cpath d='M9 20v-5h6v5'/%3E%3Cpath d='M9 11h.01M12 11h.01M15 11h.01'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="schools"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 016.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 014 19.5v-15A2.5 2.5 0 016.5 2z'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="community"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Ccircle cx='16' cy='9' r='2.5'/%3E%3Cpath d='M3 19c1.5-3 4-4.5 6-4.5S13.5 16 15 19'/%3E%3Cpath d='M13 19c.8-1.8 2.2-3 3.5-3 1.8 0 3.2 1 4.5 3'/%3E%3C/svg%3E");
}

.wb-check-grid li[data-icon="outdoors"] {
	--wb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 18l6-10 4 6 2-3 6 7H3z'/%3E%3Cpath d='M14 8l2-3 2 3'/%3E%3C/svg%3E");
}

/* Soft-code directory section titles + intro */
.biz-list h4 {
	margin-bottom: 0.5rem;
}

.biz-list .content > .text-dark-green,
.biz-list .content > [class*="text-"] {
	margin-top: 0.75rem;
}

.biz-list .content ul {
	margin: 0.75rem 0 1rem;
	padding-left: 1.25rem;
}

/* Avoid a hard visual cut when a text intro sat above a directory slider */
.page-id-285 .text-block + .biz-list,
.page-id-285 .media-block + .biz-list {
	margin-top: 0;
}

/* Project teaser cards */
.shoutout.layout-2 .item {
	padding: 1.5rem;
	border: 1px solid rgba(158, 179, 151, 0.18);
	border-radius: 2px;
}

@media (min-width: 768px) {
	.shoutout.layout-2 .item {
		padding: 2rem;
	}
}

/* Client-supplied visuals */
.wb-inline-map {
	margin: 1.75rem 0 0;
	max-width: 28rem;
}

.wb-inline-map img {
	width: 100%;
	height: auto;
	display: block;
}

.wb-photo-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	margin: 1.5rem 0 0.75rem;
}

@media (min-width: 640px) {
	.wb-photo-row {
		grid-template-columns: 1fr 1fr;
	}
}

.wb-photo-row figure {
	margin: 0;
	overflow: hidden;
	border-radius: 2px;
}

.wb-photo-row img {
	width: 100%;
	height: 14rem;
	object-fit: cover;
	display: block;
}

.wb-photo-credit {
	margin: 0 0 1rem;
	font-size: 0.85rem;
	opacity: 0.85;
}

/* Check-grid cards stay white on blue/green bands */
.bg-blue .wb-check-grid li,
.bg-green .wb-check-grid li {
	background: #fff;
}
