body {
  font-family: 'Inter', sans-serif;
  background: linear-gradient(120deg, #f8fafc 0%, #e0e7ef 100%);
}

section {
  box-shadow: 0 4px 24px 0 rgba(60, 72, 88, 0.08), 0 1.5px 4px 0 rgba(60, 72, 88, 0.04);
  border-radius: 1.25rem;
  background: #fff;
  margin-bottom: 2rem;
}

h3 {
  color: #3730a3;
  letter-spacing: 0.01em;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
select {
  background: #f1f5f9;
  border: 1.5px solid #cbd5e1;
  transition: border 0.2s, box-shadow 0.2s;
}
input:focus, select:focus {
  border-color: #6366f1;
  box-shadow: 0 0 0 2px #6366f133;
  background: #fff;
}

select[multiple] {
  min-height: 3.5rem;
  background: #f1f5f9;
  border-radius: 0.5rem;
  padding: 0.5rem;
}

label {
  font-weight: 500;
  color: #334155;
}

button[type="submit"] {
  box-shadow: 0 2px 8px 0 rgba(99, 102, 241, 0.10);
  font-size: 1.1rem;
  letter-spacing: 0.01em;
  transition: background 0.2s, box-shadow 0.2s;
}
button[type="submit"]:hover {
  background: #4338ca;
  box-shadow: 0 4px 16px 0 rgba(99, 102, 241, 0.15);
}

/* Custom checkbox */
input[type="checkbox"].form-checkbox {
  accent-color: #6366f1;
  width: 1.2em;
  height: 1.2em;
  border-radius: 0.3em;
}

/* Responsive tweaks */
@media (max-width: 640px) {
  section {
    padding: 1.25rem;
  }
  h3 {
    font-size: 1.1rem;
  }
} 