/* Contact form styles */
.contact-form{width:100%;max-width:none;border:1px solid rgba(17,24,39,.10);border-radius:var(--radius);background:#fff;padding:16px;box-shadow:var(--shadow-sm)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{display:flex;flex-direction:column;gap:8px}
.field.full{grid-column:1 / -1}
.label{font-weight:800;font-size:13px;color:#111827;display:flex;align-items:center;gap:8px}
.label em{font-style:normal;color:var(--brand-1);font-weight:900}
.optional{color:var(--muted);font-weight:700;font-size:12px}

input,select,textarea{
  width:100%;
  border:1px solid rgba(17,24,39,.14);
  border-radius:14px;
  padding:12px 12px;
  font:inherit;
  background:#fff;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
input:focus,select:focus,textarea:focus{border-color:rgba(109,40,217,.45);box-shadow:0 0 0 4px rgba(109,40,217,.10)}
textarea{resize:vertical;min-height:130px}

.check{display:flex;gap:10px;align-items:flex-start}
.check input{width:18px;height:18px;margin-top:2px}

.form-actions{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}
.form-actions .btn{width:auto}
.form-help{margin:0;font-size:13px}
.form-alert{margin-top:10px;font-weight:700}
.form-alert.success{color:#065f46}
.form-alert.error{color:#b91c1c}

@media (max-width: 640px){
  .form-grid{grid-template-columns:1fr}
  .contact-form{padding:14px}
  .form-actions .btn{width:100%}
}
