/* --- Webform: align to site + bigger checkboxes --- */
.webform-submission-form .form-item{ margin-bottom:1rem; }

.webform-submission-form input[type="text"],
.webform-submission-form input[type="email"],
.webform-submission-form input[type="tel"],
.webform-submission-form select,
.webform-submission-form textarea{
  width:100%;
  padding:.85rem 1rem;
  border:1px solid #dfe8dd;
  border-radius:var(--radius,12px);
  background:#fff;
  font:inherit;
}

.webform-submission-form input:focus,
.webform-submission-form select:focus,
.webform-submission-form textarea:focus{
  outline:0;
  border-color:var(--brand,#5f8f68);
  box-shadow:0 0 0 .2rem rgba(95,143,104,.15);
}

/* Bigger checkboxes (and radios) + brand color */
.webform-submission-form input[type="checkbox"],
.webform-submission-form input[type="radio"]{
  width:1.25rem; height:1.25rem;
  accent-color:var(--brand,#5f8f68);
}
@supports not (accent-color: auto){
  .webform-submission-form input[type="checkbox"],
  .webform-submission-form input[type="radio"]{
    transform:scale(1.25);
    margin-right:.4rem;
  }
}

/* Align box + label nicely */
.webform-submission-form .js-form-type-checkbox,
.webform-submission-form .form-type-checkbox{
  display:flex; align-items:center; gap:.6rem;
}

/* “Read …” helper text */
.webform-submission-form .form-item .description{
  margin:.35rem 0 0 2rem;
  font-size:.95em; color:var(--muted,#4d5a4d);
}
.webform-submission-form .form-item .description{ display:inline; margin:0 0 0 .5rem; }

/* Submit button – force brand color and keep it on hover */
.webform-submission-form .webform-button--submit{
  background: var(--brand,#5f8f68) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:12px;
  padding:.75rem 1.2rem;
  font-weight:600;
  transition: background .2s ease, filter .2s ease;
}
.webform-submission-form .webform-button--submit:hover,
.webform-submission-form .webform-button--submit:focus{
  background: color-mix(in srgb, var(--brand,#5f8f68) 88%, black) !important;
  color:#fff !important;
}
.webform-submission-form .webform-button--submit:active{
  background: color-mix(in srgb, var(--brand,#5f8f68) 80%, black) !important;
}
.webform-submission-form .webform-button--submit:disabled{
  opacity:.6; cursor:not-allowed;
}

@media (min-width: 900px){
  .webform-submission-form{
    max-width: 720px;     /* tweak: 560–760px */
    padding-bottom: 2rem;
    padding-inline: 1rem; /* small side padding */
  }
}

.webform-submission-form .event-header{
  background:var(--soft,#f4f6f3);
  border:1px solid #e0e8de;
  border-radius:12px; padding:1rem 1.25rem; margin-bottom:1rem;
}
.webform-submission-form .event-header h2{ margin:0 0 .25rem; font-size:1.25rem; }
