.contact-section{ padding: 90px 0 120px; }

.contact-grid{
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 60px;
}

.contact-info h2{ font-size: clamp(1.7rem, 3vw, 2.2rem); margin: 14px 0 18px; }

.contact-info p{ color: var(--ink-soft); margin-bottom: 30px; }

.contact-list{ display: flex; flex-direction: column; gap: 20px; }

.contact-list li{ display: flex; align-items: center; gap: 16px; }

.contact-icon{
  width: 48px; height: 48px;
  border-radius: 50%;
  background: var(--offwhite);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem;
  flex-shrink: 0;
}

.contact-list h4{ font-size: 1rem; margin-bottom: 2px; }

.contact-list a{ color: var(--blue); font-weight: 600; }

.contact-form-wrap{
  background: var(--white);
  border-radius: var(--radius-lg);
  padding: 44px;
  box-shadow: var(--shadow-soft);
  border: 1px solid rgba(13,138,188,.1);
}

.contact-form{ display: flex; flex-direction: column; gap: 20px; }

.form-row{ display: flex; flex-direction: column; gap: 8px; }

.form-row label{ font-weight: 700; font-size: .95rem; color: var(--ink); }

.form-row input, .form-row textarea{
  border: 1px solid rgba(26,37,48,.16);
  border-radius: var(--radius-sm);
  padding: 14px 16px;
  font-family: 'Noto Naskh Arabic', serif;
  font-size: .98rem;
  background: var(--offwhite);
  color: var(--ink);
  resize: vertical;
  transition: border-color .3s ease, box-shadow .3s ease;
}

.form-row input:focus, .form-row textarea:focus{
  outline: none;
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(13,138,188,.15);
}

.form-submit{ margin-top: 6px; }

.form-status{ font-size: .92rem; min-height: 1.2em; }

.form-status.success{ color: var(--green); font-weight: 700; }

.form-status.error{ color: var(--red); font-weight: 700; }

@media (max-width: 940px){
  .contact-grid{ grid-template-columns: 1fr; }
  .contact-form-wrap{ padding: 30px 24px; }
}
