.contact-page main { position: relative; z-index: 2; padding: 140px 24px 64px; }
.contact-page #contact { padding: 16px 0; }
.contact-page #contact > .container { max-width: 1200px; }
.contact-page .video-header { margin-bottom: 24px; }
.contact-page .video-header > p { max-width: 850px; margin: 16px auto 0; line-height: 1.9; }
.contact-card-heading { margin: 0 0 16px; font-size: 20px; line-height: 1.7; color: #1e293b; }
.contact-form-intro { margin-bottom: 20px; line-height: 1.9; color: #64748b; }
.contact-page .contact-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 24px; align-items: start; }
.contact-page .contact-info,
.contact-page .contact-form { padding: 24px; border: 1px solid #e2e8f0; border-radius: 20px; background: #fff; box-shadow: 0 8px 32px rgba(30, 50, 75, .06); }
.contact-page .contact-info { grid-column: 1; grid-row: 1; }
.contact-page .contact-form { grid-column: 2; grid-row: 1; }
.contact-page .contact-item { display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: 14px; row-gap: 4px; margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid #edf1f5; }
.contact-page .contact-icon { grid-column: 1; grid-row: 1 / span 2; width: 44px; height: 44px; margin: 0; font-size: 22px; }
.contact-page .contact-label { grid-column: 2; margin: 0; line-height: 1.6; }
.contact-page .contact-value { grid-column: 2; overflow-wrap: anywhere; line-height: 1.7; }
.contact-page .contact-form form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.contact-page .contact-form .form-group { grid-column: 1 / -1; margin: 0; min-width: 0; }
.contact-page .contact-form .form-group:nth-of-type(1),
.contact-page .contact-form .form-group:nth-of-type(2) { grid-column: auto; }
.contact-page .contact-form button[type="submit"] { grid-column: 1 / -1; }
.contact-page .contact-form .form-control { padding: 11px 14px; }
.contact-direct-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.contact-direct-links a { display: flex; align-items: center; gap: 12px; padding: 16px 20px; background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; color: #2563eb; font-weight: 600; }
.contact-direct-links i { font-size: 24px; }
.contact-page textarea.form-control { min-height: 110px; height: 110px; resize: vertical; }
.contact-notice { max-width: 1080px; margin: 0 auto 16px; padding: 16px 20px; border: 1px solid #a7f3d0; border-radius: 12px; background: #ecfdf5; color: #065f46; line-height: 1.8; }
.contact-notice-error { background: #fff1f2; color: #9f1239; border-color: #fecdd3; }
@media (max-width: 768px) {
    .contact-page main { padding: 110px 16px 32px; }
    .contact-page .contact-grid { grid-template-columns: minmax(0, 1fr); }
    .contact-page .contact-info,
    .contact-page .contact-form,
    .contact-page .contact-direct-links { grid-column: auto; grid-row: auto; }
    .contact-page .contact-info,
    .contact-page .contact-form { padding: 20px; }
}
@media (max-width: 480px) {
    .contact-page .contact-form form { grid-template-columns: minmax(0, 1fr); }
    .contact-direct-links a { padding: 12px; gap: 8px; }
}
