/* Site-wide additions on top of the old theme CSS. */

/* Links and buttons: no browser focus ring on click; keyboard users still get an underline.
   Form fields keep their normal focus style. */
a:focus,
button:focus {
	outline: none;
	box-shadow: none;
}
a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 6px;
}

/* Reference logo grids (replaces the hand-built Elementor rows of the old site). */
.bs-refs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-top: 1px solid #dbdbdb;
	border-left: 1px solid #dbdbdb;
}
.bs-refs--b2b,
.bs-refs--crm {
	max-width: 1170px;
	margin: 50px auto;
	padding: 0;
}
.bs-ref {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 185px;
	padding: 16px;
	background: #fff;
	border-right: 1px solid #dbdbdb;
	border-bottom: 1px solid #dbdbdb;
}
.bs-refs--home .bs-ref {
	min-height: 146px;
}
.bs-ref img {
	width: 60%;
	max-height: 120px;
	object-fit: contain;
	opacity: 1;
	transition: opacity 0.3s;
}
.bs-refs--home .bs-ref {
	padding: 8px;
}
.bs-refs--home .bs-ref img {
	width: 85%;
	max-height: 80px;
}
.bs-ref:hover img {
	opacity: 0.32;
}

@media (max-width: 1024px) {
	.bs-refs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bs-refs--b2b,
	.bs-refs--crm { margin: 32px 14px; }
}
@media (max-width: 767px) {
	.bs-ref,
	.bs-refs--home .bs-ref { min-height: 120px; padding: 12px; }
	.bs-ref img,
	.bs-refs--home .bs-ref img { width: 75%; max-height: 80px; }
}
