/* =========================================================================
   Contact
   ========================================================================= */

.df-contact-grid {
	display: grid;
	grid-template-columns: .95fr 1.05fr;
	gap: clamp(28px, 4vw, 56px);
	align-items: start;
}

@media (max-width: 900px) { .df-contact-grid { grid-template-columns: minmax(0, 1fr); } }

.df-contact-list { list-style: none; margin: 0 0 30px; padding: 0; display: grid; gap: 16px; }

.df-contact-list li {
	display: flex;
	gap: 16px;
	align-items: center;
	padding: 16px 18px;
	border: 1px solid var(--df-border);
	border-radius: var(--df-radius);
	background: var(--df-surface);
	transition: border-color .3s ease, transform .3s ease;
}

.df-contact-list li:hover { border-color: rgba(255, 0, 60, .4); transform: translateX(4px); }

.df-contact-ico {
	width: 44px;
	height: 44px;
	flex-shrink: 0;
	display: grid;
	place-items: center;
	border: 1px solid var(--df-border);
	border-radius: var(--df-radius);
	color: var(--gold);
	background: var(--df-surface-2);
}

.df-contact-ico .df-icon { width: 20px; height: 20px; }

.df-contact-list strong {
	display: block;
	font-family: var(--font-tech);
	font-size: .68rem;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 3px;
}

.df-contact-list a,
.df-contact-list span:not(.df-contact-ico) {
	color: var(--df-text);
	font-size: .94rem;
	text-decoration: none;
	word-break: break-word;
}

.df-contact-list a:hover { color: var(--crimson); }

.df-contact-socials { display: flex; gap: 12px; }

.df-contact-socials a {
	width: 46px;
	height: 46px;
	display: grid;
	place-items: center;
	border: 1px solid var(--df-border);
	color: var(--gold);
	text-decoration: none;
	font-family: var(--font-tech);
	transition: all .3s ease;
}

.df-contact-socials a:hover {
	transform: translateY(-3px);
	border-color: var(--crimson);
	color: #fff;
	background: rgba(255, 0, 60, .14);
	box-shadow: var(--shadow-red);
}

.df-contact-form { display: grid; gap: 16px; }

.df-form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }

@media (max-width: 560px) { .df-form-row { grid-template-columns: minmax(0, 1fr); } }
