.webform-submission-form {
  box-sizing: border-box;
  width: 100%;
  max-width: 1200px;
  margin-inline: auto !important;
  padding-inline: clamp(1.5rem, 4vw, 4rem);
  padding-bottom: 3rem;
}
/* Visible indicator for labels of required Webform fields. */
.webform-submission-form .form-required::after {
  content: " *";
  color: #c41230;
  font-weight: 700;
}
/* Give textarea fields a clear, low-contrast boundary. */
.webform-submission-form textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #b7b7b7 !important;
  border-radius: 2px;
  background-color: #fff;
}

/* Clear keyboard/mouse focus state. */
.webform-submission-form textarea:focus {
  border-color: #0033a0 !important;
  outline: 3px solid rgba(0, 51, 160, 0.2);
  outline-offset: 1px;
}
.webform-submission-form .event-notes-row {
  margin-bottom: 3rem;
}
.webform-submission-form .event-information-section {
  padding-top: 3rem;
}
/* Hide Webform's automatic required-fields note at the top of the form. */
.webform-submission-form > .webform-required {
  display: none;
}

/* Position the replacement note under the form title. */
.webform-submission-form .required-note {
  margin: 0.5rem 0 3rem;
  color: #4a4a4a;
}

.webform-submission-form .required-note span {
  color: #c41230;
  font-weight: 700;
}
/* Add a clearer break after Event Name / Attendees. */
[id^="edit-flexbox-02"] {
  margin-bottom: 2rem !important;
}

/* Reduce space after each radio-question row. */
[id^="edit-flexbox-03"],
[id^="edit-flexbox-04"],
[id^="edit-flexbox-05"] {
  margin-bottom: 0.75rem !important;
}