.contact-container { max-width: var(--layout-max-width); margin: 0 auto; padding: 2rem var(--layout-pad-x) 4rem; box-sizing: border-box; }
.contact-wrapper { display: grid; grid-template-columns: 1.2fr 1fr; gap: 3rem; align-items: start; }
@media (max-width: 968px) { .contact-wrapper { grid-template-columns: 1fr; gap: 1.5rem; } .contact-info-section { order: -1; } }
.contact-form-section { background: #fff; padding: 2rem 2.25rem; border-radius: 16px; border: 1px solid #e2e8f0; box-shadow: 0 4px 24px rgba(15, 23, 42, 0.08); }
[data-theme="dark"] .contact-form-section { background: #1A162E; border-color: rgba(255,255,255,0.08); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2); }
.contact-form-section .contact-form-panel-header h2 { font-size: 1.25rem; font-weight: 700; margin: 0 0 0.35rem; }
.contact-info-section h2 { font-size: 1.35rem; font-weight: 700; margin-bottom: 1rem; }
.info-item { margin-bottom: 1.25rem; }
.info-item h3 { font-size: 1rem; font-weight: 700; margin-bottom: 0.25rem; color: #5a5fca; }
.info-item p { margin: 0; line-height: 1.6; }

.contact-info-section .info-item p a,
.contact-faq-item p a {
	color: #fff;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.45);
	text-underline-offset: 2px;
}

.contact-info-section .info-item p a:hover,
.contact-faq-item p a:hover {
	color: #fff;
	text-decoration-color: rgba(255, 255, 255, 0.9);
}

[data-theme="light"] .contact-info-section .info-item p a,
[data-theme="light"] .contact-faq-item p a {
	color: #5a5fca;
	text-decoration-color: rgba(90, 95, 202, 0.35);
}

[data-theme="light"] .contact-info-section .info-item p a:hover,
[data-theme="light"] .contact-faq-item p a:hover {
	color: #4a4fb8;
	text-decoration-color: rgba(90, 95, 202, 0.65);
}

.contact-cta { display: inline-flex; margin-top: 0.5rem; padding: 0.65rem 1rem; border-radius: 10px; background: #5a5fca; color: #fff; text-decoration: none; font-weight: 700; }
.contact-cta:hover { color: #fff; background: #6b70e0; }
.response-time { margin-top: 1.5rem; padding: 1rem; border-radius: 12px; background: rgba(90,95,202,0.08); border: 1px solid rgba(90,95,202,0.15); }

.contact-offer {
	margin-bottom: 1.75rem;
	padding: 1.35rem 1.25rem;
	border-radius: 14px;
	border: 1px solid rgba(255, 138, 0, 0.28);
	background: linear-gradient(165deg, rgba(255, 138, 0, 0.08) 0%, rgba(90, 95, 202, 0.06) 100%);
}

.contact-offer-kicker {
	margin: 0 0 0.35rem;
	font-size: 0.68rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #c45f00;
}

.contact-offer-title {
	margin: 0 0 0.5rem;
	font-size: 1.15rem;
	font-weight: 800;
	color: var(--text-primary, #0f172a);
}

.contact-offer-text {
	margin: 0 0 0.85rem;
	font-size: 0.92rem;
	line-height: 1.6;
	color: var(--text-secondary, #475569);
}

.contact-offer-list {
	margin: 0 0 1rem;
	padding-left: 1.1rem;
	font-size: 0.88rem;
	line-height: 1.55;
	color: var(--text-secondary, #475569);
}

.contact-offer-list li + li {
	margin-top: 0.35rem;
}

.contact-offer-cta {
	display: inline-flex;
	align-items: center;
	padding: 0.65rem 1rem;
	border-radius: 10px;
	background: #F37E05;
	color: #fff !important;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.9rem;
	transition: background 0.2s, transform 0.2s;
}

.contact-offer-cta:hover {
	background: #e06f04;
	transform: translateY(-1px);
	color: #fff !important;
}

[data-theme="dark"] .contact-offer {
	border-color: rgba(255, 138, 0, 0.22);
	background: linear-gradient(165deg, rgba(255, 138, 0, 0.1) 0%, rgba(90, 95, 202, 0.08) 100%);
}

[data-theme="dark"] .contact-offer-title {
	color: #f1f5f9;
}

.contact-faq { margin-top: 3rem; }
.contact-faq h2 { font-size: 1.25rem; margin-bottom: 1rem; }
.contact-faq-item { border-bottom: 1px solid rgba(90,95,202,0.15); padding: 0.75rem 0; }
.contact-faq-item summary { cursor: pointer; font-weight: 700; }
.contact-faq-item p { margin: 0.75rem 0 0; line-height: 1.65; }
