.bsfbfoot {
	--color-gray-1: #f0f0f0;
	--color-gray-2: #666666;
	--color-gray-3: #1e1e1e;

	--font-generic: system-ui, -apple-system, system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", sans-serif;
	--font-size-xs: 12px;
	--font-size-sm: 14px;

	--spacer-sm: 10px;
	--spacer-md: 20px;
	--spacer-lg: 30px;
	--spacer-xl: 50px;

	color: var(--color-gray-3);
	background-color: var(--color-gray-1);
	padding: var(--spacer-lg);
	position: relative;
	* {
		all: revert;
		font-family: var(--font-generic) !important;
	}

	.bsfbfoot-section {
		max-width: 900px;
		margin: 0 auto;
		container-type: inline-size;
		container-name: bsfbfooter;
	}
	.bsfbfoot-title {
		margin: 0;
		font-size: var(--font-size-xs) !important;
		color: var(--color-gray-3) !important;
	}
	.bsfbfoot-logos {
		display: flex;
		/* flex-wrap: wrap; */
		/* grid-auto-flow: column; */
		list-style: none;
		margin: 0;
		padding: var(--spacer-sm) 0 var(--spacer-md) 0;
		gap: var(--spacer-lg);
	}
	.bsfbfoot-logos-operator {
		justify-content: space-between;
		.bsfbfoot-logo {
			max-width: 160px;
			
		}
	}
	.bsfbfoot-logos-maker {
		justify-content: start;
		grid-template-columns: 27fr 58fr;
		gap: var(--spacer-xl) var(--spacer-lg);
	}
	.bsfbfoot-logo {
		font-size: var(--font-size-sm);
		display: grid;
		.bsfbfoot-title {
			margin-bottom: var(--spacer-md);
		}
		a {
			color: var(--color-gray-2) !important;
			display: flex !important;
			text-decoration: none !important;
			gap: var(--spacer-sm) var(--spacer-md) !important;
			em {
				text-decoration: underline;
				font-style: normal;
			}
		}
		img {
			display: block;
			width: 100%;
			height: auto;
			filter: grayscale(1);
		}
	}
	.bsfbfoot-logo-byline {
		font-size: var(--font-size-xs);
		font-weight: 600;
		flex-shrink: 0;
		line-height: 1.2;
	}
	.bsfbfoot-logo-polyplanet {
		max-width: 270px;
		img { flex-basis: 70px; }
	}
	.bsfbfoot-logo-schulcms {
		max-width: 310px;
		img { flex-basis: 110px; }
	}
	
	.bsfbfoot-legals-nav {
		margin-top: var(--spacer-lg);
		border-top: 1px solid var(--color-gray-3);
		
		a {
			font-size: var(--font-size-xs);
			color: var(--color-gray-3) !important;
			text-decoration: underline !important;
			font-weight: 600;
		}
		a:hover {
			text-decoration-thickness: 2px !important;
		}
	}
	.bsfbfoot-legals-menu {
		display: grid;
		grid-template-columns: max-content max-content max-content;
		gap: var(--spacer-md) var(--spacer-xl);
		padding: var(--spacer-lg);
		list-style: none;
		line-height: 1;
		width: max-content;
		margin: 0 auto;
	}
}
@container bsfbfooter (width < 894px) { /* legals menu break I */
	.bsfbfoot .bsfbfoot-section {
		.bsfbfoot-legals-menu {
			gap: var(--spacer-md);
		}
	}
}
@container bsfbfooter (width < 833px) { /* legals menu break II */
	.bsfbfoot .bsfbfoot-section {
		.bsfbfoot-legals-menu {
			grid-template-columns: 1fr !important;
			text-align: center;
		}
	}
}
@container bsfbfooter (width < 598px) { /* maker logos break  */
	.bsfbfoot .bsfbfoot-section {
		.bsfbfoot-title {
			text-align: center;
		}
		.bsfbfoot-logos-maker {
			justify-content: space-around;
			flex-wrap: wrap;
			.bsfbfoot-logo {
				margin-bottom: auto;
			}
		}
	}
}
@container bsfbfooter (width < 540px) { /* operator logos break  */
	.bsfbfoot .bsfbfoot-section {
		.bsfbfoot-logos-operator {
			justify-content: space-around;
			flex-wrap: wrap;
		}
	}
}
@container bsfbfooter (width < 390px) { /* schulcms logo  */
	.bsfbfoot .bsfbfoot-section {
		.bsfbfoot-logo-schulcms a {
			flex-direction: column;
			img {
				flex-basis: auto;
			}
		}
	}
}
