.contact-grid{display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:48px; align-items:start;}
.form-field{margin-bottom:20px;}
.form-field label{display:block; font-size:13.5px; font-weight:600; margin-bottom:8px; color:var(--text);}
.form-field input,.form-field select,.form-field textarea{
  width:100%; padding:13px 16px; border-radius:12px; border:1px solid var(--border);
  background:var(--surface); font-size:14.5px; color:var(--text);
  transition:border-color 0.2s ease, box-shadow 0.2s ease;
}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{
  outline:none; border-color:var(--violet); box-shadow:0 0 0 4px rgba(139,92,246,0.12); background:#fff;
}
.form-row{display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:16px;}
.form-note{font-size:12.5px; color:var(--text-secondary); margin-top:14px; text-align:center;}

.contact-info-card{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:var(--sp-4);}
.contact-info-row{display:flex; gap:14px; align-items:flex-start; margin-bottom:18px;}
.contact-info-row:last-child{margin-bottom:0;}
.contact-info-row .ic{width:40px; height:40px; border-radius:10px; background:rgba(139,92,246,0.1); color:var(--violet); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.contact-info-row h4{font-size:14.5px; margin-bottom:2px;}
.contact-info-row p,.contact-info-row a{font-size:14px; color:var(--text-secondary);}

.map-section{
  border-radius:28px; overflow:hidden; box-shadow:0 24px 60px rgba(8,31,77,0.14);
  border:1px solid var(--border);
}
.map-embed{
  position:relative; width:100%; height:420px;
}
.map-embed iframe{
  position:absolute; inset:0; width:100%; height:100%; border:0; display:block;
}

@media (max-width:1024px){
  .contact-grid{grid-template-columns:minmax(0, 1fr);}
}
@media (max-width:768px){
  .map-embed{height:340px;}
}
@media (max-width:600px){
  .form-row{grid-template-columns:minmax(0, 1fr);}
  .map-embed{height:280px;}
}
