/* contact/web.css — Contact us page styles */

.contact-wrap { max-width: 900px; margin: 50px auto; padding: 0 20px 60px; }

.contact-title { font-size: 1.8rem; font-weight: 800; margin-bottom: 8px; }
.contact-sub { color: #888; margin-bottom: 30px; }

.contact-grid { display: grid; grid-template-columns: 1fr 1.5fr; gap: 30px; }

.contact-card { background: #fff; border-radius: 16px; padding: 30px; box-shadow: 0 4px 20px rgba(0,0,0,0.05); }

.info-item { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 22px; }
.info-icon { width: 42px; height: 42px; border-radius: 10px; background: var(--primary-color,#3498db); display: flex; align-items: center; justify-content: center; color: #fff; flex-shrink: 0; font-size: 1rem; }
.info-icon-wa { background: #25D366; }
.info-label { margin: 0; font-weight: 700; font-size: 0.9rem; }
.info-value { margin: 4px 0 0; color: #555; }
.info-value-addr { line-height: 1.5; }
.info-wa-link { color: #25D366; font-weight: 600; text-decoration: none; }

.contact-form-title { margin-top: 0; font-weight: 800; }

.inp { width: 100%; padding: 12px; border: 1px solid #e0e0e0; border-radius: 8px; margin-bottom: 12px; box-sizing: border-box; font-size: 0.95rem; }
.inp:focus { outline: none; border-color: var(--primary-color,#3498db); }
.inp-textarea { resize: vertical; }

.btn-send { background: var(--primary-color,#000); color: #fff; padding: 13px 30px; border: none; border-radius: 10px; font-weight: 700; cursor: pointer; width: 100%; font-size: 1rem; }

.contact-success { background: #D1FAE5; color: #065F46; padding: 16px; border-radius: 10px; text-align: center; font-weight: 700; font-size: 1rem; }

/* ============ RESPONSIVE ============ */
@media (max-width: 768px) {
    .contact-grid { grid-template-columns: 1fr; }
    .contact-wrap { margin: 30px auto; padding: 0 14px 40px; }
}
@media (max-width: 480px) {
    .contact-card { padding: 20px; }
    .contact-title { font-size: 1.4rem; }
}
