/* OutdoorBudget – footer links */
.obsp-flinks { width: 100%; font-size: 15px; line-height: 1.4; }
.obsp-flinks ul { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 0; margin: 0; padding: 0; list-style: none; }
.obsp-flinks--center ul { justify-content: center; }
.obsp-flinks--right ul { justify-content: flex-end; }
.obsp-flinks li { display: flex; align-items: center; margin: 0; padding: 0; }
.obsp-flinks li + li::before { content: ""; width: 4px; height: 4px; margin: 0 14px; border-radius: 50%; background: currentColor; opacity: .35; }
.obsp-flinks a {
	display: inline-block; padding: 6px 0; color: inherit; font-weight: 500; text-decoration: none;
	background-image: linear-gradient(currentColor, currentColor); background-size: 0 1px; background-position: 0 90%; background-repeat: no-repeat;
	transition: background-size .25s ease, color .2s ease;
}
.obsp-flinks a:hover, .obsp-flinks a:focus-visible { color: #2f6b3b; background-size: 100% 1px; }
.obsp-flinks a:focus-visible { outline: 2px solid #2f6b3b; outline-offset: 3px; border-radius: 2px; }
.obsp-flinks-bar { padding: 18px 20px; border-top: 1px solid rgba(0, 0, 0, .08); background: #f6f8f7; color: #333; }

/* Phones: two tidy columns instead of a long wrapped line */
@media (max-width: 600px) {
	.obsp-flinks ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 16px; align-items: start; text-align: left; }
	.obsp-flinks--center ul { max-width: 360px; margin: 0 auto; }
	.obsp-flinks li + li::before { display: none; }
	.obsp-flinks a { padding: 8px 0; }
}
