/* ------------------------------------------------------------------ */
/* Equipa — grelha de membros (shortcode [ksp_team], usado na Sobre)   */
/* ------------------------------------------------------------------ */

.ksp-team__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr));
	gap: clamp(28px, 4vw, 40px);
	max-width: var(--wp--style--global--wide-size, 1340px);
	margin: 0 auto;
}
.ksp-team__member {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 6px;
}
.ksp-team__avatar {
	display: block;
	width: 120px;
	height: 120px;
	border-radius: 999px;
	overflow: hidden;
	background: var(--ksp-bg-elevated-2);
	margin-bottom: 4px;
}
.ksp-team__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.ksp-team__name {
	margin: 0;
	font-size: 1rem;
	color: var(--wp--preset--color--accent-2);
}
.ksp-team__role {
	margin: 0;
	font-size: 0.85rem;
	color: var(--ksp-text);
}
.ksp-team__socials {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 8px;
}
.ksp-team__socials a {
	color: var(--ksp-text);
	display: flex;
}
.ksp-team__socials a:hover {
	color: var(--wp--preset--color--accent-1);
}

/* ------------------------------------------------------------------ */
/* Parcerias — grelha de parceiros (shortcode [ksp_parcerias], Sobre)   */
/* ------------------------------------------------------------------ */

.ksp-partners__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
	gap: clamp(20px, 3vw, 32px);
	max-width: var(--wp--style--global--wide-size, 1340px);
	margin: 0 auto;
}
.ksp-partners__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 10px;
	padding: 22px 16px;
	border-radius: 16px;
	border: 1px solid var(--wp--preset--color--accent-6);
	background: var(--ksp-bg-elevated);
	text-decoration: none;
	transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}
a.ksp-partners__item:hover {
	transform: translateY(-3px);
	border-color: var(--wp--preset--color--accent-1);
	box-shadow: 0 10px 24px rgba(61, 155, 233, 0.25);
}
.ksp-partners__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 72px;
	filter: grayscale(0.15);
}
.ksp-partners__logo img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
}
.ksp-partners__name {
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--ksp-text);
}
