@charset "utf-8";

/* CLIENTS */
	.clients {
		--columns: 1;
		--gap: 2rem;
		columns: var(--columns);
		column-gap: var(--columns);
		font-size: var(--text-sub-1);
		font-weight: 700;
		margin: var(--margin-block) 0;
		text-align: center;
		}
	.clients-item {
		margin-bottom: 1rem;
		overflow: hidden;
		text-wrap: balance;
		}
	@media (min-width: 40em) {
		.clients {
			--columns: 2;
			}
	}
	@media (min-width: 60em) {
		.clients.w {
			--columns: 3;
			--gap: 4rem;
			}
		}
	@media (min-width: 80em) {
		.clients.w {
			--columns: 4;
			}
		.clients-item {
			margin-bottom: 1.5rem;
			}
	}

/* CLIENT LOGOS */
	.client-logos {
		--gap: 1rem;
		margin: var(--margin-gap) auto;
		}
	.client-logos-box {
		--columns: 2;
		}
	.client-logos-has-header {
		display: grid;
		grid-gap: 1rem;
		}
	.client-logos-item-header {
		}
	.client-logos-header {
		color: var(--color-important);
		font-size: var(--text);
		font-weight: var(--heavy);
		text-align: center;
		text-wrap: nowrap;
		}
	.client-logos-items {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: var(--gap);
		}
	.client-logos-no-box .client-logos-items {
		align-items: center;
		}
	.client-logos-no-border .client-logos-items {
		--gap: 4rem;
		grid-gap: 2rem 4rem;
		}
	.client-logos-item {
		display: block;
		justify-content: center;
		overflow: hidden;
		vertical-align: top;
		}
	.client-logos-box .client-logos-item {
		flex: 0 0 calc((100% / var(--columns)) - var(--gap) + (var(--gap) / var(--columns)));
		}
	.client-logos-border .client-logos-item {
		background-color: rgb(var(--background-rgb));
		border: 0.1rem solid var(--background-borders);
		border-radius: var(--radius);
		}
	.client-logos-border .client-logos-holder {
		padding: 1rem;
		}
	.client-logos-no-logo,
	.client-logos-text {
		display: flex;
		}
	.client-logos-name {
		align-self: center;
		font-size: var(--text);
		justify-self: center;
		}
	.client-logos-no-box .client-logos-no-logo {
		height: 6rem;
		}
	.client-logos-box .client-logos-img {
		aspect-ratio: 3 / 1;
		position: relative;
		}
	.client-logos-box .client-logos-img > img {
		height: 100%;
		object-fit: contain;
		position: absolute;
		width: 100%;
		}
	span.client-logos-box.client-logos-no-border .client-logos-img > img {
		max-height: 4rem;
		}
	.client-logos-no-box .client-logos-img > img {
		height: 4rem;
		width: auto;
		}
	.client-logos-bw .client-logos-client {
		-webkit-filter: grayscale(100%);
		-moz-filter: grayscale(100%);
		-ms-filter: grayscale(100%);
		-o-filter: grayscale(100%);
		filter: grayscale(100%);
		transition: all 200ms;
		opacity: 0.7;
		}
	.client-logos-bw a.client-logos-client:hover,
	.client-logos-bw a.client-logos-client:focus {
		-webkit-filter: grayscale(0%);
		-moz-filter: grayscale(0%);
		-ms-filter: grayscale(0%);
		-o-filter: grayscale(0%);
		filter: grayscale(0%);
		opacity: 1;
		}
	.client-logos-color a.client-logos-client:hover,
	.client-logos-color a.client-logos-client:focus {
		opacity: 0.8;
		}
	@media (min-width: 30em) {
		.client-logos-box {
			--columns: 3;
			}
	}
	@media (min-width: 45em) {
		.client-logos-box.w {
			--columns: 4;
			}
		.client-logos-border .client-logos-holder {
			padding: 1rem 3rem;
			}
	}
	@media (min-width: 60em) {
		.client-logos-box.w {
			--columns: 5;
			}
		.client-logos-box.n {
			--columns: 2;
			}
		.client-logos.n .client-logos-items {
			justify-content: flex-start;
			}
	}
	@media (min-width: 80em) {
		.client-logos-box.w {
			--columns: 6;
			}
		.client-logos-has-header.w {
			align-items: center;
			grid-gap: 4rem;
			grid-template-columns: min-content 1fr;
			}
		.client-logos-has-header.w .client-logos-items {
			justify-content: flex-start;
			}
		.client-logos-header {
			text-align: left;
			}
	}