/**
 * Styles specific to the Nuvobrix — Services Grid widget only.
 */

.nuvobrix-services-grid {
	/*padding: 64px var(--nuvobrix-gutter) 96px;*/
}

.nuvobrix-services-grid__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 40px;
	margin-bottom: 48px;
	flex-wrap: wrap;
}

.nuvobrix-services-grid__heading {
	font-family: var(--nuvobrix-font-display);
	font-weight: 600;
	font-size: clamp(28px, 3.2vw, 44px);
	line-height: 1.05;
	max-width: 16ch;
	margin: 0;
	color: var(--nuvobrix-ink);
}

.nuvobrix-services-grid__meta {
	max-width: 34ch;
	font-family: var(--nuvobrix-font-body);
	font-size: 15px;
	color: var(--nuvobrix-ink-70);
	margin: 0;
}

.nuvobrix-services-grid__list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
	background: var(--nuvobrix-line-strong);
	border: 1px solid var(--nuvobrix-line-strong);
}

.nuvobrix-services-grid__card {
	background: var(--nuvobrix-paper);
	padding: 36px;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	gap: 14px;
	transition: background .25s ease;
}

.nuvobrix-services-grid__card:hover {
	background: var(--nuvobrix-paper-2);
}

.nuvobrix-services-grid__num {
	font-family: var(--nuvobrix-font-mono);
	font-size: 13px;
	color: var(--nuvobrix-signal);
}

.nuvobrix-services-grid__title {
	font-family: var(--nuvobrix-font-display);
	font-weight: 600;
	font-size: 26px;
	color: var(--nuvobrix-ink);
	margin: 0;
}

.nuvobrix-services-grid__pitch {
	font-family: var(--nuvobrix-font-body);
	font-size: 15px;
	color: var(--nuvobrix-ink-70);
	margin: 0;
	max-width: 42ch;
}

.nuvobrix-services-grid__caps {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 4px;
}

.nuvobrix-services-grid__caps span {
	font-family: var(--nuvobrix-font-mono);
	font-size: 10.5px;
	letter-spacing: .03em;
	padding: 5px 9px;
	border: 1px solid var(--nuvobrix-line-strong);
	color: var(--nuvobrix-ink-50);
}

.nuvobrix-services-grid__link {
	margin-top: 10px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--nuvobrix-font-body);
	font-size: 13.5px;
	font-weight: 600;
	color: var(--nuvobrix-ink);
}

.nuvobrix-services-grid__link svg {
	width: 12px;
	height: 12px;
	transition: transform .2s ease;
}

.nuvobrix-services-grid__card:hover .nuvobrix-services-grid__link svg {
	transform: translate(3px, -3px);
}

@media (max-width: 980px) {
	.nuvobrix-services-grid__list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.nuvobrix-services-grid__card {
		padding: 28px 22px;
	}
}