/* ==========================================================================
   Kontakt
   ========================================================================== */

.contact-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr;
	gap: var(--sp-8);
	padding-block: var(--section-py);
}

.contact-form {
	background: var(--color-bg-alt);
	border: 1px solid var(--color-border);
	padding: var(--sp-7);
	border-radius: var(--radius);
}

.contact-form .field-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--sp-5);
}

.contact-info {
	display: flex;
	flex-direction: column;
	gap: var(--sp-6);
}

.contact-info__block h3 {
	font-family: var(--font-sans);
	font-size: var(--fs-xs);
	text-transform: uppercase;
	letter-spacing: var(--ls-widest);
	color: var(--color-accent);
	margin-bottom: var(--sp-3);
	font-weight: 500;
}

.contact-info__email {
	font-family: var(--font-display);
	font-size: var(--fs-xl);
	color: var(--color-white);
	text-decoration: none;
	display: inline-block;
	margin-bottom: var(--sp-2);
	transition: color var(--dur-fast) var(--ease);
}

.contact-info__email:hover {
	color: var(--color-accent);
}

.contact-info__phone {
	font-family: var(--font-sans);
	color: var(--color-text);
	font-size: var(--fs-md);
}

.partners-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: var(--sp-5);
	align-items: center;
}

.partners-grid img {
	max-height: 60px;
	width: auto;
	margin: 0 auto;
	opacity: 0.7;
	filter: grayscale(100%);
	transition: opacity var(--dur) var(--ease), filter var(--dur) var(--ease);
}

.partners-grid a:hover img {
	opacity: 1;
	filter: grayscale(0%);
}

@media (max-width: 1024px) {
	.contact-grid { grid-template-columns: 1fr; }
	.contact-form .field-row { grid-template-columns: 1fr; }
}
