/* Contact Page */
.contact-page { padding: 50px 0; }
.contact-wrap { display: flex; flex-wrap: wrap; }
.contact-info { flex: 0 0 42%; max-width: 42%; padding: 60px 0 0 60px; }
.contact-info .company-name { font-family: 'MontserratBold', sans-serif; font-size: 34px; font-weight: 700; line-height: 48px; padding-bottom: 14px; color: var(--text-primary); }
.contact-info h3 { font-size: 16px; color: var(--text-primary); margin-bottom: 5px; }
.contact-info p { padding-bottom: 10px; color: var(--text-primary); line-height: 38px; font-size: 16px; }
.contact-info .info-item { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 15px; }
.contact-info .info-item i { color: var(--site-color); margin-top: 5px; font-size: 18px; }
.contact-info .info-item span { font-size: 18px; }
.contact-info .info-item a { color: var(--text-primary); }
.contact-info .info-item a:hover { color: var(--site-color); }
.contact-social { margin-top: 20px; display: flex; gap: 15px; }
.contact-social a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--site-color); color: #fff; font-size: 18px; transition: all .3s; }
.contact-social a:hover { background: var(--site-color-dark); }

.contact-form-wrap { flex: 0 0 58%; max-width: 58%; padding: 60px 0 40px; }
.contact-form-wrap h2 { font-size: 34px; color: var(--text-primary); margin-bottom: 10px; }
.contact-form-wrap .form-desc { font-size: 16px; color: var(--text-secondary); margin-bottom: 25px; }
.contact-form input, .contact-form textarea {
    width: 100%; padding: 12px 24px; font-size: 16px; border: 1px solid #ddd;
    border-radius: 4px; margin-bottom: 15px; outline: none; transition: border-color .3s;
}
.contact-form input:focus, .contact-form textarea:focus { border-color: var(--site-color); }
.contact-form textarea { padding: 12px 24px; height: 120px; resize: vertical; line-height: 1.5; }
.contact-form .submit-btn {
    background: var(--site-color); color: #fff; border: none; padding: 14px 40px;
    font-size: 16px; border-radius: 4px; cursor: pointer; transition: all .3s;
}
.contact-form .submit-btn:hover { opacity: .9; }

.contact-map { margin-top: 40px; }
.contact-map iframe { width: 100%; height: 400px; border: none; border-radius: 8px; }

@media (max-width: 991px) {
    .contact-info { flex: 0 0 100%; max-width: 100%; padding: 30px 0 0; }
    .contact-form-wrap { flex: 0 0 100%; max-width: 100%; padding: 30px 0 20px; }
}
@media (max-width: 767px) {
    .contact-info .company-name { font-size: 24px; line-height: 1.3; }
    .contact-form-wrap h2 { font-size: 24px; }
}
