/* Import Montserrat with required weights */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');

/* Base font */
body {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  line-height: 1.5;
}

/* General text + inputs */
p,
span:not(.fa, .glyphicon),
input,
select,
textarea,
.form-control {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
}

/* Labels */
label,
.control-label {
  font-weight: 500 !important;
}

/* Help text (lighter) */
.help-block,
.small,
.text-muted {
  font-weight: 400 !important;
  opacity: 0.8;
}

/* Headings hierarchy */
h1 {
  font-weight: 600 !important;
}

h2, h3 {
  font-weight: 600 !important;
}

h4, h5, h6 {
  font-weight: 600 !important;
}

/* Buttons */
.btn,
button {
  font-weight: 600 !important;
}

/* Error states */
.text-danger,
.has-error label {
  font-weight: 500 !important;
}

/* Placeholder text */
::placeholder {
  font-weight: 400;
  opacity: 0.7;
}

/* Spacing improvement */
.form-group {
  margin-bottom: 1.2rem;
}