/* Project board (inc/project-board.php) - live jobs from Jobber */
.in-board { padding: clamp(56px, 7vw, 96px) 0; background: linear-gradient(180deg, #f4f8fc 0%, #fff 100%); }
.in-board__stats { display: flex; justify-content: center; gap: 12px; max-width: 640px; margin: 0 auto 22px; }
.in-board__stats div { flex: 1 1 0; max-width: 200px; background: #fff; border: 1px solid #dbe7f3; border-radius: 14px; padding: 14px 10px; text-align: center; box-shadow: 0 1px 2px rgba(15, 40, 80, .04); }
.in-board__stats strong { display: block; font-size: 28px; line-height: 1.1; color: #0b3a66; font-weight: 800; }
.in-board__stats span { font-size: 13px; color: #5f7085; }
.in-board__filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0 0 24px; }
.in-board__filter { font: inherit; font-size: 14px; font-weight: 600; padding: 8px 16px; border-radius: 999px; border: 1px solid #cfe0f1; background: #fff; color: #0b3a66; cursor: pointer; min-height: 40px; }
.in-board__filter.is-on { background: #006cb5; border-color: #006cb5; color: #fff; }
.in-board__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 18px; }
.in-board__card { background: #fff; border: 1px solid #e0e9f3; border-radius: 16px; overflow: hidden; box-shadow: 0 1px 3px rgba(15, 40, 80, .05); transition: transform .2s ease, box-shadow .2s ease; }
.in-board__card:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(15, 40, 80, .10); }
.in-board__card[hidden] { display: none; }
.in-board__media { position: relative; aspect-ratio: 4 / 3; background: #eef4fa; }
.in-board__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.in-board__soon { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: #4b6b8f; font-size: 14px; font-weight: 600;
	background-color: #eef4fa;
	background-image: linear-gradient(rgba(0,108,181,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(0,108,181,.07) 1px, transparent 1px);
	background-size: 22px 22px; }
.in-board__soon svg { opacity: .7; }
.in-board__badge { position: absolute; left: 12px; top: 12px; display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; background: #fff; color: #0b3a66; box-shadow: 0 2px 8px rgba(15, 40, 80, .12); }
.is-done .in-board__badge { color: #047857; }
.is-active .in-board__badge { color: #b45309; }
.is-scheduled .in-board__badge { color: #006cb5; }
.in-board__pulse { width: 8px; height: 8px; border-radius: 50%; background: #f59e0b; box-shadow: 0 0 0 0 rgba(245, 158, 11, .6); animation: in-board-pulse 1.8s infinite; display: inline-block; }
@keyframes in-board-pulse { 70% { box-shadow: 0 0 0 7px rgba(245, 158, 11, 0); } 100% { box-shadow: 0 0 0 0 rgba(245, 158, 11, 0); } }
@media (prefers-reduced-motion: reduce) { .in-board__pulse { animation: none; } .in-board__card { transition: none; } }
.in-board__body { padding: 14px 16px 16px; }
.in-board__title { font-size: 17px; font-weight: 700; margin: 0 0 6px; line-height: 1.3; }
.in-board__title a { color: #0f1b2d; text-decoration: none; }
.in-board__title a:hover { color: #006cb5; }
.in-board__meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 10px; margin: 0; font-size: 13px; color: #5f7085; }
.in-board__meta span { white-space: nowrap; }
.in-board__note { margin: 22px auto 0; max-width: 680px; text-align: center; font-size: 13px; color: #5f7085; }
/* Home: a compact strip inside "Projects, Start to Finish" */
.in-board--home { margin: 0 0 28px; }
.in-board__strip-head { display: flex; justify-content: space-between; align-items: center; margin: 0 0 12px; }
.in-board__live { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #0b3a66; }
.in-board__strip-head a { font-size: 14px; font-weight: 600; color: #006cb5; text-decoration: none; }
.in-board--home .in-board__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.in-board--home .in-board__media { aspect-ratio: 16 / 10; }
@media (max-width: 900px) { .in-board--home .in-board__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) {
	.in-board__stats strong { font-size: 22px; }
	.in-board__stats span { font-size: 12px; }
	.in-board--home .in-board__grid { grid-template-columns: 1fr 1fr; gap: 10px; }
	.in-board--home .in-board__title { font-size: 14px; }
	.in-board--home .in-board__meta { flex-direction: column; gap: 2px; font-size: 12px; }
}
/* Never wider than the screen: grid items may shrink below their content. */
.in-board, .in-board__grid, .in-board__card { min-width: 0; max-width: 100%; }
.in-board__title { overflow-wrap: anywhere; }
@media (max-width: 520px) { .in-board__meta span { white-space: normal; } }
/* The home strip sits inside a section: no section padding of its own. */
.in-board.in-board--home { padding: 0; background: none; }
.in-board__soon { padding: 34px 10px 8px; text-align: center; }
@media (max-width: 520px) {
	.in-board--home .in-board__media { aspect-ratio: 4 / 3; }
	.in-board--home .in-board__soon svg { display: none; }
	.in-board--home .in-board__soon { font-size: 12px; padding-top: 40px; }
	.in-board--home .in-board__badge { left: 8px; top: 8px; font-size: 11px; padding: 4px 8px; }
	.in-board--home .in-board__body { padding: 10px 12px 12px; }
}
