:root{
  --nst-accent: #ffbc13;
  --nst-text: #333;
  --nst-muted: #6b7280;
  --nst-bg: #ffffff;
  --nst-radius: 8px;
  --nst-shadow: 0 2px 10px rgba(0,0,0,.08);
  --nst-font: "Helvetica Neue", Arial, sans-serif;
}

/* base */
html, body{
  background: var(--nst-bg);
  color: var(--nst-text);
  font-family: var(--nst-font);
  line-height: 1.5;
}

/* headings */
h1,h2,h3{ font-weight: 700; letter-spacing:.2px; }

/* form layout */
.form, form{ max-width: 760px; margin: 0 auto; padding: 0 12px; }

/* labels */
label{ display:block; font-weight:600; margin: 10px 0 6px; color: var(--nst-text); }

/* inputs */
input[type="text"], input[type="email"], input[type="tel"],
input[type="number"], select, textarea{
  width:100%;
  border:1px solid #e5e7eb;
  border-radius: var(--nst-radius);
  padding:12px 14px;
  box-shadow: var(--nst-shadow);
  transition: border-color .2s, box-shadow .2s;
  background:#fff;
}
input:focus, select:focus, textarea:focus{
  outline: none;
  border-color: var(--nst-accent);
  box-shadow: 0 0 0 3px rgba(255,188,19,.25);
}

/* help/error text */
.help, .hint, .error, .validation, .field-error{
  font-size: 13px; color: var(--nst-muted); margin-top: 6px;
}
.error, .field-error{ color: #b91c1c; }

/* buttons */
button, input[type="submit"], .btn{
  background: var(--nst-accent);
  color:#111;
  border:0;
  border-radius: var(--nst-radius);
  padding: 12px 20px;
  font-weight:700;
  cursor:pointer;
  display:inline-block;
  box-shadow: var(--nst-shadow);
}
button:hover, input[type="submit"]:hover, .btn:hover{
  filter: brightness(0.95);
}

/* checkbox/radios spacing */
input[type="checkbox"], input[type="radio"]{ margin-right:8px; }

/* group cards (if your CRM uses fieldsets) */
fieldset, .form-section, .group{
  border:0;
  background:#fff;
  border-radius: var(--nst-radius);
  box-shadow: var(--nst-shadow);
  padding:16px;
  margin:14px 0;
}

/* spacing between rows */
.form-row, .field, .form-group{ margin:14px 0; }

/* make it breathe on mobile */
@media (max-width: 575px){
  .form, form{ padding: 0 6px; }
}

