/* Adapt standard contact form styling - Dynamic Floor Covering */
.adapt-form {
  max-width: 640px;
  margin: 0 auto;
  font-family: 'DM Sans', Manrope, Roboto, sans-serif;
}
.adapt-form .adapt-form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 16px;
}
.adapt-form .adapt-field {
  flex: 1 1 calc(50% - 8px);
  min-width: 220px;
  display: flex;
  flex-direction: column;
  margin-bottom: 16px;
}
.adapt-form .adapt-field--full {
  flex-basis: 100%;
}
.adapt-form label {
  font-weight: 600;
  font-size: 15px;
  margin-bottom: 6px;
  color: #28321d;
  font-family: 'DM Sans', Manrope, Roboto, sans-serif;
}
.adapt-form .adapt-required {
  color: #CC1939;
  margin-left: 2px;
}
.adapt-form input,
.adapt-form select,
.adapt-form textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #d3cec7;
  border-radius: 6px;
  font-size: 16px;
  font-family: inherit;
  background-color: #fff;
  color: #28321d;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.adapt-form input:focus,
.adapt-form select:focus,
.adapt-form textarea:focus {
  outline: none;
  border-color: #CC1939;
  box-shadow: 0 0 0 3px rgba(204, 25, 57, .12);
}
.adapt-form textarea {
  min-height: 140px;
  resize: vertical;
}
.adapt-form input.adapt-invalid,
.adapt-form select.adapt-invalid,
.adapt-form textarea.adapt-invalid {
  border-color: #CC1939;
  background-color: #fdf3f5;
}
.adapt-form .adapt-submit {
  display: inline-block;
  background-color: #CC1939;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 14px 36px;
  font-size: 16px;
  font-weight: 700;
  font-family: 'DM Sans', Manrope, Roboto, sans-serif;
  cursor: pointer;
  transition: background-color .2s ease, opacity .2s ease;
}
.adapt-form .adapt-submit:hover {
  background-color: #a8142f;
}
.adapt-form .adapt-submit:disabled {
  opacity: .6;
  cursor: default;
}
.adapt-form .adapt-form-message {
  margin-top: 16px;
  padding: 12px 14px;
  border-radius: 6px;
  font-size: 15px;
  display: none;
}
.adapt-form .adapt-form-message.is-visible {
  display: block;
}
.adapt-form .adapt-form-message.is-success {
  background-color: #e6f4ea;
  color: #1c6b34;
  border: 1px solid #b7e0c2;
}
.adapt-form .adapt-form-message.is-error {
  background-color: #fdecef;
  color: #a8142f;
  border: 1px solid #f3c3cd;
}
.adapt-form .adapt-required-legend {
  font-size: 13px;
  color: #607382;
  margin-bottom: 18px;
}
@media (max-width: 600px) {
  .adapt-form .adapt-field {
    flex-basis: 100%;
  }
}
