@charset "utf-8";

/* PARTNERS */
.partners {
	--gap: var(--space-xs);
	--pad: var(--space-xs);
	--icon: var(--hit-size);
	container-type: inline-size;
	margin-block: var(--margin-block);
	}
.partners-level + .partners-level {
	margin-top: var(--gap);
	}
.partners-level + .partners-level:has(.partners-level-header) {
	margin-top: var(--margin-block);
	}
.partners-level-icon {
	background-color: var(--color-accent);
	border-radius: 100%;
	color: var(--color-accent-text);
	display: inline-block;
	height: var(--icon);
	line-height: var(--icon);
	text-align: center;
	width: var(--icon);
	}
.partners-level-icon + .partners-level-header-text {
	margin-top: var(--space-10);
	}
.partners-level-header {
	margin-bottom: var(--margin-gap);
	}
.partners-grid {
	display: flex;
	flex-wrap: wrap;
	gap: var(--gap);
	}

/* GRID */
.partners-item {
	background-color: var(--hue-white);
	border-radius: var(--radius);
	border: 1px solid var(--background-trim);
	display: flex;
	flex: 0 0 calc((100% / var(--columns)) - var(--gap) + (var(--gap) / var(--columns)));
	overflow: hidden;
	}
.partners-item-logo {
	aspect-ratio: 2 / 1;
	}
.partners-holder {
	display: flex;
	padding: var(--space-xs) var(--pad);
	width: 100%;
	}
.partners-img {
	align-items: center;
	display: flex;
	justify-content: center;
	width: 100%;
	}
.partners-img-src {
	height: 100%;
	object-fit: contain;
	width: 100%;
	}
.partners-name {
	align-items: center;
	display: flex;
	justify-content: center;
	text-align: center;
	width: 100%;
	}

/* SETTINGS */
a.partners-img:hover,
a.partners-img:focus-visible {
	opacity: 0.8;
	}

/* LAYOUT */
.partners-grid-small,
.partners-grid-none {
	--columns: 3;
	font-size: var(--font-size-xs);
	}
.partners-grid-normal {
	--columns: 2;
	font-size: var(--font-size-md);
	}
.partners-grid-large {
	--columns: 1;
	font-size: var(--font-size-xl);
	}
@container (min-width: 30rem) {
	.partners-grid-small,
	.partners-grid-none {
		--columns: 4;
		}
	.partners-grid-normal {
		--columns: 3;
		}
}
@container (min-width: 45rem) {
	.partners {
		--pad: 1.25rem;
		}
	.partners-grid-small,
	.partners-grid-none {
		--columns: 5;
		}
	.partners-grid-normal {
		--columns: 4;
		}
	.partners-grid-large {
		--columns: 2;
		}
}
@container (min-width: 60rem) {
	.partners-grid-small,
	.partners-grid-none {
		--columns: 6;
		}
	.partners-grid-normal {
		--columns: 5;
		}
	.partners-grid-large {
		--columns: 3;
		}
}
@container (min-width: 80rem) {
	.partners-grid-small,
	.partners-grid-none {
		--columns: 8;
		}
	.partners-grid-normal {
		--columns: 6;
		}
	.partners-grid-large {
		--columns: 4;
		}
}