/* ========================================
 * MWP Webform styles
 * ========================================
 * Shared: .mwp-webform-form (added by `mwp.theme` to Group/Education + Community Passbook forms).
 * Form-specific: .webform-submission-request-a-group-or-education-vis-form (wizard only),
 * .webform-submission-community-passbook-request-form-form (Community Passbook only).
 */
.mwp-webform-form {
  max-width: 42.5rem;
  margin-block: var(--spacing-xl);
  margin-inline: var(--spacing-sm);
  padding-block: clamp(var(--spacing-sm), 0.5rem + 2vw, var(--spacing-lg)) clamp(var(--spacing-sm), 0.5rem + 2vw, var(--spacing-lg));
  padding-inline: clamp(var(--spacing-sm), 0.5rem + 2vw, var(--spacing-lg));
  background-color: var(--color-surface-7489-light);
  border-radius: var(--radius-lg);
  color: var(--color-text-primary);
}

/* Shared: form title (h2) – dark green, bold, secondary font */
.mwp-webform-form h2 {
  color: var(--color-text-brand);
}

/* Shared: labels – black, secondary font */
.mwp-webform-form label {
  font-family: var(--font-family-secondary);
  color: var(--color-text-primary);
}

.mwp-webform-form legend {
  padding-block-end: var(--spacing-xs);
  color: var(--color-text-primary);
}

/* Shared: acknowledgements / markup list text – black, secondary font */
.mwp-webform-form [id^="edit-markup"] ol {
  font-family: var(--font-family-secondary);
  color: var(--color-text-primary);
}

@media (min-width: 769px) {
  .mwp-webform-form {
    margin-inline: auto;
  }
}

/* Group/Education only: wizard progress summary */
.webform-submission-request-a-group-or-education-vis-form .webform-progress__summary {
  font-size: var(--font-size-body-large);
}

/* Shared: required asterisk and legend */
.mwp-webform-form .form-required::after {
  content: '*';
  color: #FF4823;
}

/* Shared: element descriptions and helper text */
.mwp-webform-form .description {
  font-family: var(--font-family-secondary);
  font-size: var(--font-size-body-small);
  color: var(--color-text-primary);
}

/* Shared: form actions container + white box */
.mwp-webform-form div[id^="edit-actions"] {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-sm);
  justify-content: center;
  align-items: center;
  padding: var(--spacing-2xs) var(--spacing-lg) var(--spacing-lg);
  background-color: var(--color-brand-white);
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
}

/* Group/Education only: With AJAX, IDs get a random suffix; use [id^="..."] so selectors match */
.webform-submission-request-a-group-or-education-vis-form fieldset[id^="edit-visit-type--wrapper"] {
  margin: 0;
}

.webform-submission-request-a-group-or-education-vis-form [id^="edit-visit-type--wrapper-legend"] {
  margin: 0 auto;
  color: var(--color-text-brand);
}

/* White box around form content sections (Group/Education steps + Community Passbook + Shelter Reservation + Volunteer fieldset) */
.mwp-webform-form [id^="edit-visit-type"]:not([id*="wrapper"]),
.mwp-webform-form [id^="edit-who-s-coming-and-what-would-you-like-to-include"],
.mwp-webform-form [id^="edit-date-timing"],
.mwp-webform-form [id^="edit-contact-submit"],
.mwp-webform-form [id^="edit-passbook-request-details"]:not([id*="wrapper"]),
.mwp-webform-form fieldset[id^="edit-passbook-request-details--wrapper"],
.mwp-webform-form fieldset[id^="edit-request-details"],
.mwp-webform-form [id^="edit-your-information2"]:not([id*="wrapper"]),
.mwp-webform-form [id^="edit-availability"],
.mwp-webform-form [id^="edit-interests"],
.mwp-webform-form [id^="edit-skills-and-experience2"],
.mwp-webform-form [id^="edit-details"] {
  background-color: var(--color-brand-white);
  padding-block: clamp(var(--spacing-sm), 0.5rem + 2vw, var(--spacing-lg)) clamp(var(--spacing-sm), 0.5rem + 2vw, var(--spacing-sm));
  padding-inline: clamp(var(--spacing-sm), 0.5rem + 2vw, var(--spacing-lg));
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  margin: 0;
  font-family: var(--font-family-secondary);
  font-size: 1rem;
}

/* Community Passbook + Shelter Reservation, Contact + Volunteer only: first/only content section – no extra margin (does not affect Group/Education form) */
.webform-submission-community-passbook-request-form-form [id^="edit-passbook-request-details"]:not([id*="wrapper"]),
.webform-submission-community-passbook-request-form-form fieldset[id^="edit-passbook-request-details--wrapper"],
.webform-submission-reserve-a-shelter-form [id^="edit-request-details"]:not([id*="wrapper"]),
.webform-submission-reserve-a-shelter-form fieldset [id^="edit-request-details--wrapper"],
.webform-submission-apply-to-volunteer-form [id^="edit-your-information2"]:not([id*="wrapper"]),
.mwp-webform-form [id^="edit-availability"],
.mwp-webform-form [id^="edit-interests"],
.mwp-webform-form [id^="edit-skills-and-experience2"],
.webform-submission-contact-form [id^="edit-details"]:not([id*="wrapper"]) {
  border: 0;
}

/* Community Passbook, Shelter Request + Contact only: intro processed text – centered, brand green */
.webform-submission-community-passbook-request-form-form [id^="edit-processed-text"],
.webform-submission-reserve-a-shelter-form [id^="edit-processed-text"],
.webform-submission-contact-form [id^="edit-processed-text"] {
  text-align: center;
  color: var(--color-text-brand);
}

.webform-submission-request-a-group-or-education-vis-form [id^="edit-who-s-coming-and-what-would-you-like-to-include"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-date-timing"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-contact-submit"] {
  border: 0;
  margin: 0;
}

/* Group/Education + Volunteer only: wizard step titles */
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-1-title"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-2-title"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-3-title"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-4-title"],
.webform-submission-apply-to-volunteer-form [id^="edit-markup"],
.webform-submission-apply-to-volunteer-form [id^="edit-markup-01"],
.webform-submission-apply-to-volunteer-form [id^="edit-area-of-interest"],
.webform-submission-apply-to-volunteer-form [id^="edit-markup-03"] {
  text-align: center;
  color: var(--color-text-brand);
}

.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-2-title"] h2,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-3-title"] h2,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-4-title"] h2 {
  margin-block: var(--spacing-2xs);
}

.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-2-title"] p,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-3-title"] p,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-step-4-title"] p {
  font-family: var(--font-family-body);
  font-size: var(--font-size-body-base);
}

/* Group/Education + Volunteer only: Progress Tracker (wizard) */
.webform-submission-request-a-group-or-education-vis-form .webform-progress-tracker,
.webform-submission-apply-to-volunteer-form .webform-progress-tracker {
  margin-block: 0 var(--spacing-md);
  font-family: var(--font-family-secondary);
  font-size: 1rem;
  line-height: 1.2;
}

.webform-submission-request-a-group-or-education-vis-form .progress-step.is-active .progress-marker::before,
.webform-submission-request-a-group-or-education-vis-form .webform-progress-tracker .progress-step.is-active:hover .progress-marker::before,
.webform-submission-apply-to-volunteer-form .webform-progress-tracker::before,
.webform-submission-apply-to-volunteer-form .webform-progress-tracker .progress-step.is-active .progress-marker::before {
  background-color: var(--color-brand-green);
}

/* ========================================
 * Step specific styles
 * ======================================== */

.webform-submission-request-a-group-or-education-vis-form [id^="edit-who-s-coming-and-what-would-you-like-to-include"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-date-timing"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-contact-submit"] {
  font-family: var(--font-family-secondary);
  font-size: 1rem;
  color: var(--color-text-primary);
}

/* Visit type: mobile-first grid; label overlay makes whole card clickable. Container query tightens spacing when card has room. */
.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type {
  --visit-type-radio-size: 18px;
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: minmax(2.5rem, auto) auto;
  gap: 0.125rem 0;
  align-items: start;
  padding-block: var(--spacing-sm);
  padding-inline: var(--spacing-sm);
  margin: 0;
  border-radius: var(--radius-md);
  border: 1px solid rgba(0, 0, 0, 0.12);
  cursor: pointer;
}

/* Overlay covers entire card so clicking anywhere toggles the radio; description has pointer-events: none so clicks pass through */
.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type label.option {
  position: absolute;
  inset: 0;
  z-index: 1;
  padding-inline-start: calc(var(--spacing-sm) + var(--visit-type-radio-size) + var(--spacing-md));
  padding-block: var(--spacing-sm);
  padding-inline-end: var(--spacing-sm);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body-large);
  font-weight: var(--font-weight-semibold);
  line-height: 1.2;
  margin: 0;
  cursor: pointer;
  color: var(--color-text-primary);
}

.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type .form-radio {
  position: relative;
  z-index: 2;
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  width: var(--visit-type-radio-size);
  height: var(--visit-type-radio-size);
  margin: 0;
  cursor: pointer;
  flex-shrink: 0;
}

/* Span full width; description needs less padding (no spacing-sm) since it's inside grid, same text alignment */
.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type .description {
  position: relative;
  z-index: 2;
  pointer-events: none;
  grid-column: 1 / -1;
  grid-row: 2;
  font-family: var(--font-family-secondary);
  font-size: var(--font-size-body-small);
  margin: 0;
  padding: 0;
  padding-inline-start: calc(var(--visit-type-radio-size) + var(--spacing-md));
  color: var(--color-text-primary);
  background: transparent !important;
  margin-block-start: 0.25rem;
}

.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type .description .webform-element-description {
  background: transparent !important;
  padding: 0;
  margin: 0;
}

/* When the visit-type options container is wide enough, tighten row 1 so label–description gap is smaller */
.webform-submission-request-a-group-or-education-vis-form .js-webform-radios:has(.form-item-visit-type) {
  container-type: inline-size;
  container-name: visit-type-options;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

@container visit-type-options (min-width: 441px) {
  .webform-submission-request-a-group-or-education-vis-form .form-item-visit-type {
    grid-template-rows: minmax(1.5rem, auto) auto;
  }
}

/* Viewport fallback: real devices often report a narrower container than dev tools, so tighten spacing from 375px viewport up (matches typical phones) */
@media (min-width: 375px) {
  .webform-submission-request-a-group-or-education-vis-form .form-item-visit-type {
    grid-template-rows: minmax(1.5rem, auto) auto;
  }
}

/* Space between visit-type cards and the Next button so description text doesn't overlap the button */
.webform-submission-request-a-group-or-education-vis-form [id^="edit-visit-type"]:not([id*="wrapper"]) {
  padding-block-end: var(--spacing-lg);
}
@media (max-width: 600px) {
  .webform-submission-request-a-group-or-education-vis-form [id^="edit-visit-type"]:not([id*="wrapper"]) {
    padding-block-end: var(--spacing-xl);
  }
}

.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type:first-child:has(.form-radio:checked) {
  border: 4px solid var(--color-surface-240);
}

.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type:last-child:has(.form-radio:checked) {
  border: 4px solid var(--color-surface-144);
}

.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type:hover {
  background-color: color-mix(in srgb, var(--color-surface-7489-light) 40%, transparent);
}

.webform-submission-request-a-group-or-education-vis-form [id^="edit-extras"][id$="wrapper"] .description,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-acknowledgements"][id$="wrapper"] .description,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-want-to-add-something-extra-optional"][id$="wrapper"] .description,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-extras--"] .description,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-acknowledgements--"] .description,
.webform-submission-request-a-group-or-education-vis-form [id^="edit-want-to-add-something-extra-optional--"] .description {
  font-size: var(--font-size-body-small);
  color: var(--color-text-placeholder);
}

/* ========================================
 * Input styles & spacing (shared)
 * ======================================== */

.mwp-webform-form .js-form-type-textfield,
.mwp-webform-form .js-form-type-textarea,
.mwp-webform-form .form-textarea,
.mwp-webform-form .js-form-type-number,
.mwp-webform-form .js-form-type-date,
.mwp-webform-form .js-form-type-email,
.mwp-webform-form .js-form-type-tel,
.mwp-webform-form .js-webform-type-radios,
.mwp-webform-form .js-form-type-select {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2xs);
}

.mwp-webform-form .form-text,
.mwp-webform-form .form-email,
.mwp-webform-form .form-tel,
.mwp-webform-form .form-number,
.mwp-webform-form .form-date ,
.mwp-webform-form .form-select {
  width: 100%;
  max-width: 100%;
  height: 3.5rem;
  padding: var(--spacing-sm);
  border-radius: var(--radius-md);
  font-family: var(--font-family-secondary);
  font-size: 1rem;
  color: var(--color-text-primary);
  border: 1px solid #dfdfdf;
  background-color: var(--color-brand-white);
}

/* Fix date input overflow on mobile devices */
.mwp-webform-form .form-date {
  min-height: 3.5rem;
  height: auto;
}

@media (max-width: 480px) {
  .mwp-webform-form .form-date {
    padding: var(--spacing-xs) var(--spacing-2xs);
    /* Keep font-size at 1rem (16px) to prevent iOS auto-zoom */
  }
}

.mwp-webform-form .form-text::placeholder,
.mwp-webform-form .form-email::placeholder,
.mwp-webform-form .form-tel::placeholder {
  color: var(--color-text-placeholder);
}

.mwp-webform-form .js-form-type-checkbox {
  display: flex;
  gap: var(--spacing-xs);
  margin-block-end: var(--spacing-2xs);
}

.mwp-webform-form input[type="checkbox"],
.mwp-webform-form input[type="radio"] {
  height: 1.5rem;
  width: 1.5rem;
  accent-color: var(--color-brand-green);
}

.mwp-webform-form input[type="checkbox"] {
  flex-shrink: 0;
}

.webform-submission-request-a-group-or-education-vis-form [id="edit-accessibility"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-accessibility--"],
.webform-submission-request-a-group-or-education-vis-form [id^="edit-accessibility-needs-or-accommodations-optional"],
.webform-submission-apply-to-volunteer-form [id^="edit-describe-other-roles-you-are-interested-in"],
.webform-submission-apply-to-volunteer-form [id^="edit-relevant-skills-experience-or-certifications-optional"] ,
.webform-submission-apply-to-volunteer-form [id^="edit-additional-information-optional"],
.webform-submission-contact-form [id^="edit-message"] {
  width: 100%;
  padding: var(--spacing-xs);
  border: 1px solid #dfdfdf;
  border-radius: var(--radius-md);
}

.webform-submission-request-a-group-or-education-vis-form .form-item-accessibility {
  margin-block-end: 0;
}

/* Shared: radio options in a row (e.g. Best time to reach you) */
.mwp-webform-form [id^="edit-are-you-flexible-with-date-or-time-if-needed"] .js-form-type-radio,
.mwp-webform-form [id^="edit-best-time-to-reach-you"] .js-form-type-radio,
.mwp-webform-form [id^="edit-payment-preference"] .js-form-type-radio,
.mwp-webform-form [id^="edit-will-you-need-an-invoice-in-advance"] .js-form-type-radio,
.mwp-webform-form [id^="edit-group-type"] .js-form-type-radio,
.mwp-webform-form [id^="edit-best-time-to-reach-you "] .js-form-type-radio,
.mwp-webform-form [id^="edit-preferred-shelter-type"] .js-form-type-radio,
.mwp-webform-form [id^="edit-what-is-your-approximate-availability"] .js-form-type-radio,
.mwp-webform-form [id^="edit-are-you-comfortable-with-physical-outdoor-work"] .js-form-type-radio {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  margin-block-end: var(--spacing-2xs);
}

/* ========================================
 * Form buttons (shared; id prefix for group/education with AJAX)
 * ======================================== */

.mwp-webform-form .form-actions input[type="submit"],
.mwp-webform-form .form-actions input[id^="edit-actions-wizard-next"],
.mwp-webform-form .form-actions input[id^="edit-actions-wizard-prev"],
.mwp-webform-form .form-actions input[id^="edit-actions-submit"] {
  display: inline-block;
  font-family: var(--font-family-secondary);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-button-large);
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
  line-height: 1.3;
  border-radius: var(--radius-full);
  padding-block: var(--spacing-sm);
  padding-inline: var(--spacing-xl);
  border: 1px solid transparent;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  text-wrap: balance;
}

@media (max-width: 540px) {
  .mwp-webform-form .form-actions input[type="submit"],
  .mwp-webform-form .form-actions input[id^="edit-actions-wizard-next"],
  .mwp-webform-form .form-actions input[id^="edit-actions-wizard-prev"],
  .mwp-webform-form .form-actions input[id^="edit-actions-submit"] {
    width: 100%;
    padding-inline: var(--spacing-md);
  }
}

/* Primary submit / Next (shared; .webform-button--submit = single submit e.g. Community Passbook) */
.mwp-webform-form .form-actions .webform-button--next,
.mwp-webform-form .form-actions .webform-button--submit,
.mwp-webform-form .form-actions input[id^="edit-actions-wizard-next"],
.mwp-webform-form .form-actions input[id^="edit-actions-submit"],
.mwp-webform-form .form-actions input[id^="edit-submit"] {
  background-color: var(--color-brand-green);
  color: var(--color-surface-7489-light);
  border-color: var(--color-brand-green);
}

.mwp-webform-form .form-actions .webform-button--next:hover,
.mwp-webform-form .form-actions .webform-button--next:focus-visible,
.mwp-webform-form .form-actions .webform-button--submit:hover,
.mwp-webform-form .form-actions .webform-button--submit:focus-visible,
.mwp-webform-form .form-actions input[id^="edit-actions-wizard-next"]:hover,
.mwp-webform-form .form-actions input[id^="edit-actions-wizard-next"]:focus-visible,
.mwp-webform-form .form-actions input[id^="edit-actions-submit"]:hover,
.mwp-webform-form .form-actions input[id^="edit-actions-submit"]:focus-visible,
.mwp-webform-form .form-actions input[id^="edit-submit"]:hover,
.mwp-webform-form .form-actions input[id^="edit-submit"]:focus-visible {
  background-color: var(--color-surface-7489-light);
  border-color: var(--color-surface-7489-light);
  color: var(--color-brand-green);
}

/* Group/Education only: Back button */
.webform-submission-request-a-group-or-education-vis-form .form-actions .webform-button--previous,
.webform-submission-request-a-group-or-education-vis-form .form-actions input[id^="edit-actions-wizard-prev"] {
  color: var(--color-brand-green);
  background-color: transparent;
  border-color: var(--color-brand-green);
}

.webform-submission-request-a-group-or-education-vis-form .form-actions .webform-button--previous:hover,
.webform-submission-request-a-group-or-education-vis-form .form-actions .webform-button--previous:focus-visible,
.webform-submission-request-a-group-or-education-vis-form .form-actions input[id^="edit-actions-wizard-prev"]:hover,
.webform-submission-request-a-group-or-education-vis-form .form-actions input[id^="edit-actions-wizard-prev"]:focus-visible {
  color: var(--color-surface-7489-light);
  background-color: var(--color-brand-green);
  border-color: var(--color-brand-green);
}

/* ========================================
 * Focus visible: black dashed outline (shared)
 * ======================================== */
.mwp-webform-form .form-text:focus-visible,
.mwp-webform-form .form-email:focus-visible,
.mwp-webform-form .form-tel:focus-visible,
.mwp-webform-form .form-number:focus-visible,
.mwp-webform-form .form-date:focus-visible,
.mwp-webform-form .form-textarea:focus-visible,
.mwp-webform-form select:focus-visible,
.mwp-webform-form input[type="checkbox"]:focus-visible,
.mwp-webform-form input[type="radio"]:focus-visible,
.mwp-webform-form .form-actions .webform-button--next:focus-visible,
.mwp-webform-form .form-actions .webform-button--submit:focus-visible,
.mwp-webform-form .form-actions .webform-button--previous:focus-visible,
.mwp-webform-form .form-actions input[id^="edit-actions-wizard-next"]:focus-visible,
.mwp-webform-form .form-actions input[id^="edit-actions-wizard-prev"]:focus-visible,
.mwp-webform-form .form-actions input[id^="edit-actions-submit"]:focus-visible,
.mwp-webform-form .form-actions input[id^="edit-submit"]:focus-visible {
  outline: 2px dashed var(--color-text-primary);
  outline-offset: 2px;
}

/* Visit type cards: show dashed focus when the radio inside is focused (radio outline removed to avoid double ring) */
.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type:has(.form-radio:focus-visible) {
  outline: 2px dashed var(--color-text-primary);
  outline-offset: 2px;
}

.webform-submission-request-a-group-or-education-vis-form .form-item-visit-type .form-radio:focus-visible {
  outline: none;
}

/* ========================================
 * reCAPTCHA styling
 * ======================================== */
.mwp-webform-form .captcha {
  background-color: var(--color-brand-white);
  border: 0;
  margin: 0;
  padding-inline: var(--spacing-md);
  padding-block-end: var(--spacing-md);
  padding-block-start: 0;
}

.mwp-webform-form .captcha__title {
  font-family: var(--font-family-secondary);
  font-size: var(--font-size-body-base);
  color: var(--color-text-primary);
  margin-block-start: 0;
  margin-block-end: var(--spacing-sm);
  margin-inline: calc(-1 * var(--spacing-md));
  padding-block-start: var(--spacing-md);
  padding-block-end: 0;
  padding-inline: var(--spacing-md);
  background-color: var(--color-brand-white);
  inline-size: calc(100% + 2 * var(--spacing-md));
}

.mwp-webform-form .captcha__element {
  margin-block-end: var(--spacing-sm);
}

.mwp-webform-form .captcha__description {
  font-size: var(--font-size-body-small);
  color: var(--color-text-primary);
  margin: 0;
}

/* ========================================
 * Thank you page
 * ======================================== */
.thank-you {
  max-width: 42.5rem;
  /* margin: var(--spacing-2xl) auto 0; */
  padding: var(--spacing-lg);
  background-color: var(--color-surface-7489-light);
  border-radius: var(--radius-lg);
  color: var(--color-text-brand);
  text-align: center;
}

@media (max-width:768px) {
  .thank-you {
    margin: 0 var(--spacing-sm);
  }
}

.thank-you h2 {
  font-size: var(--font-size-h2-small);
  margin-block: 0 var(--spacing-xs);
}

.thank-you div {
  background-color: var(--color-brand-white);
  padding: var(--spacing-lg) var(--spacing-lg) var(--spacing-sm);
  border-radius: var(--radius-lg);
  margin-block-start: var(--spacing-md);
}

.thank-you div h2 {
  font-family: var(--font-family-body);
  font-size: var(--font-size-body-large);
  margin-block: 0 var(--spacing-xl);
}

.thank-you ul {
  text-align: left;
}

.webform-confirmation__back {
  text-align: center;
}

/* Form Errors */

.form-item--error-message,
fieldset[aria-invalid="true"] > .fieldset-wrapper > div:first-child {
  position: relative;
  font-weight: var(--font-weight-bold);
  padding-inline-start: 2rem;
}

.form-item--error-message::before,
fieldset[aria-invalid="true"] > .fieldset-wrapper > div:first-child::before {
  position: absolute;
  content: '';
  background: url(../../assets/error.svg) 0 0 no-repeat;
  background-size: 1.5rem;
  width: 2rem;
  height: 2rem;
  left: 0;
  top: 2px;
}

div[aria-label="Error message"] {
  position: relative;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  margin-block-end: var(--spacing-lg);
  padding-inline-start: var(--spacing-lg);
}

div[aria-label="Error message"]::before {
  position: absolute;
  content: '';
  background: url(../../assets/error.svg) 0 0 no-repeat;
  background-size: 1.5rem;
  width: 2rem;
  height: 2rem;
  left: 0;
  top: 2px;
}

div[aria-label="Error message"] .item-list__comma-list {
  font-weight: 400;
}

div[aria-label="Error message"] .item-list__comma-list li {
  display: list-item;
  margin-inline-start: var(--spacing-md);
}

fieldset[aria-invalid="true"] {
  margin-block-end: 0;
}