/* =========================
   USER REGISTRATION STYLING
========================= */

/* General block styling */
.user-info-reg {
  background-color: #dd821d; /* brand orange */
  color: #fff;
  padding: 1.25em;
  border-radius: 8px;
  margin-bottom: 1.5em;

  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}

.reg-contact-info {
  background-color: #eaa15a; /* lighter orange */
  color: #fff;
  padding: 1.25em;
  border-radius: 8px;
  margin-bottom: 1.5em;

  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}

/* Headings and labels inside */
.user-info-reg h3,
.user-info-reg label,
.reg-contact-info h3,
.reg-contact-info label {
  color: #fff;
  font-weight: bold;
}

/* Inputs inside blocks */
.user-info-reg input.form-text,
.user-info-reg input.form-email,
.user-info-reg select,
.user-info-reg textarea,
.reg-contact-info input.form-text,
.reg-contact-info input.form-email,
.reg-contact-info select,
.reg-contact-info textarea {
  width: 100%;
  max-width: 100%;
  padding: 0.6em;
  border: none;
  border-radius: 4px;
  margin-top: 0.25em;
  font-size: 1em;
  box-sizing: border-box;
}

/* =========================
   USER INFORMATION SECTION
========================= */
.user-info-reg > .field--name-field-first-name,
.user-info-reg > .field--name-field-last-name {
  flex: 1 1 calc(50% - 0.5em);
  min-width: 250px;
}

.user-info-reg > .field--type-string,
.user-info-reg > .field--type-image {
  flex: 1 1 100%;
}

.user-info-reg input[type="file"] {
  background: #fff;
  color: #333;
  padding: 0.4em;
  border-radius: 4px;
}

/* =========================
   CONTACT/LOGIN SECTION
========================= */
.reg-contact-info .form-item-mail,
.reg-contact-info .form-item-name {
  flex: 1 1 calc(50% - 0.5em);
  min-width: 250px;
}

.reg-contact-info > .form-item {
  flex: 1 1 100%;
}

/* =========================
   BUTTONS
========================= */
.user-info-reg input[type="submit"],
.user-info-reg button,
.reg-contact-info input[type="submit"],
.reg-contact-info button {
  background-color: #fff;
  color: #dd821d;
  border: none;
  padding: 0.75em 1.25em;
  font-weight: bold;
  border-radius: 4px;
  cursor: pointer;
  margin-top: 0.5em;
}

.user-info-reg input[type="submit"]:hover,
.user-info-reg button:hover,
.reg-contact-info input[type="submit"]:hover,
.reg-contact-info button:hover {
  background-color: #f5f5f5;
}

/* =========================
   RESPONSIVENESS
========================= */
@media (max-width: 600px) {
  .user-info-reg > .field--name-field-first-name,
  .user-info-reg > .field--name-field-last-name,
  .reg-contact-info .form-item-mail,
  .reg-contact-info .form-item-name {
    flex: 1 1 100%;
  }

  .user-info-reg,
  .reg-contact-info {
    padding: 1em;
    gap: 0.75em;
  }
}
