/* Additional form overrides specifically for embedded/third‑party forms (e.g., Mailchimp)
   Goal: Reset checkbox styling to native and align spacing/inputs to site exposed-form patterns. */

/* Scope all rules to the Mailchimp embed container to avoid side effects */
#mc_embed_signup {
  /* Match container spacing with other content blocks */
}

/* Field group spacing similar to .views-exposed-form .input-group */
#mc_embed_signup .mc-field-group {
  margin-bottom: 16px; /* consistent compact vertical rhythm */
}

/* Label styling/spacing */
#mc_embed_signup label {
  display: inline-block;
  font-weight: 600;
  margin-bottom: 8px;
}

/* Text and email inputs: align with site input styles but keep safe, scoped overrides */
#mc_embed_signup input[type="text"],
#mc_embed_signup input[type="email"],
#mc_embed_signup input[type="search"],
#mc_embed_signup input[type="url"],
#mc_embed_signup input[type="tel"] {
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #C9CDD3; /* grey-30 approx */
  border-radius: 8px;
  background-color: #fff;
  color: #0F172A; /* slate-900-ish */
  font-size: 16px;
  line-height: 1.4;
}

#mc_embed_signup input[type="text"]:focus,
#mc_embed_signup input[type="email"]:focus,
#mc_embed_signup input[type="search"]:focus,
#mc_embed_signup input[type="url"]:focus,
#mc_embed_signup input[type="tel"]:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.25); /* accessible focus ring */
  border-color: #0073E6; /* primary-ish */
}
#mc_embed_signup input[type="submit"] { width: auto;}

/* Reset Mailchimp checkbox groups to native checkboxes and align spacing */
.webform-submission-investigation-witness-report-form ul,
#mc_embed_signup .input-group ul {
  list-style: none;
  padding: 0;
  margin: 8px 0 0 0;
  /*display: grid;*/
  /*grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));*/
  /*gap: 12px 24px; !* row/column gaps *!*/
}
.webform-submission-investigation-witness-report-form ul li,
#mc_embed_signup .input-group li {
  display: flex;
  align-items: center;
}
.webform-submission-investigation-witness-report-form ul li:before,
.webform-submission-investigation-witness-report-form ol li:before,
#mc_embed_signup ul li::before,
#mc_embed_signup ol li::before {
  content: "";
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  background-color: transparent;
}
#mc_embed_signup .faux-checkbox__control {
  align-items: flex-start;
}
/* The critical reset: ensure native checkboxes are shown despite global custom control styles */
.webform-submission-investigation-witness-report-form input[type="checkbox"],
#mc_embed_signup input[type="checkbox"] {
  /*appearance: checkbox !important;*/
  width: auto !important;
  height: auto !important;
  margin: 0 8px 0 0 !important;
  border: initial !important;
  background: initial !important;
  box-shadow: none !important;
  position: static !important;
  inset: auto !important;
}

/* Place label inline with checkbox for compact layout */
#mc_embed_signup .input-group li > label {
  margin: 0; /* no extra bottom spacing when inline */
  font-weight: 500;
}

/* Heading for group label (e.g., "Transport mode") alignment */
#mc_embed_signup .input-group > strong {
  display: inline-block;
  margin-bottom: 8px;
}

/* Submit button alignment and spacing similar to exposed forms */
#mc_embed_signup .foot {
  margin-top: 16px;
}

#mc_embed_signup input[type="submit"],
#mc_embed_signup button[type="submit"] {
  /* Rely on theme button styles if present; add basic paddings as fallback */
  /*padding: 10px 16px;*/
  /*border-radius: 8px;*/
  /*border: 1px solid transparent;*/
  /*background-color: #0F5FFF;*/
  /*color: #fff;*/
  /*font-weight: 600;*/
  /*cursor: pointer;*/
}

#mc_embed_signup input[type="submit"]:hover,
#mc_embed_signup button[type="submit"]:hover {
  background-color: #0A4ACC;
}

/* Mailchimp-specific reset for content-block list pseudo-elements and list styles */
#mc_embed_signup .content-block ul li::before,
#mc_embed_signup .content-block ol li::before {
  content: none !important;
  display: none !important;
}

#mc_embed_signup .content-block ul,
#mc_embed_signup .content-block ol {
  list-style: none !important; /* do not use list-style-type */
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* Ensure any li spacing isn’t dependent on markers */
#mc_embed_signup .content-block li {
  position: static !important;
  padding-left: 0 !important;
}
.asterisk {
  color: var(--red-500);
}

/* Witness report webform: align with main taic.css form styles and match general search checkbox visuals */
.webform-submission-investigation-witness-report-form {
  /* container spacing handled by page context */
}

/* Spacing for form rows similar to .views-exposed-form .input-group */
.webform-submission-investigation-witness-report-form .js-form-item {
  margin-bottom: 16px;
}

/* Labels */
.webform-submission-investigation-witness-report-form label {
  display: inline-block;
  font-weight: 600;
  margin-bottom: 8px;
}

/* Inputs align with site styles (padding, radius, borders) */
.webform-submission-investigation-witness-report-form .form-text,
.webform-submission-investigation-witness-report-form .form-email,
.webform-submission-investigation-witness-report-form .form-tel,
.webform-submission-investigation-witness-report-form .form-select,
.webform-submission-investigation-witness-report-form .form-textarea {
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #C9CDD3; /* grey-30 approx */
  border-radius: 8px;
  background-color: #fff;
  color: #0F172A; /* slate-900-ish */
  font-size: 16px;
  line-height: 1.4;
}

/* Textareas a bit taller by default */
.webform-submission-investigation-witness-report-form .form-textarea {
  min-height: 120px;
}

/* Focus states: accessible focus ring consistent with site */
.webform-submission-investigation-witness-report-form .form-text:focus,
.webform-submission-investigation-witness-report-form .form-email:focus,
.webform-submission-investigation-witness-report-form .form-tel:focus,
.webform-submission-investigation-witness-report-form .form-select:focus,
.webform-submission-investigation-witness-report-form .form-textarea:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.25);
  border-color: #0073E6;
}

/* Fieldset titles */
.webform-submission-investigation-witness-report-form .fieldset-legend {
  font-weight: 700;
  margin-bottom: 8px;
}

/* LIST resets (keep bullets off in this form context too) */
.webform-submission-investigation-witness-report-form ul,
.webform-submission-investigation-witness-report-form ol {
  list-style: none;
  padding: 0;
  margin: 8px 0 0 0;
}
.webform-submission-investigation-witness-report-form li { display: flex; align-items: flex-start; }
.webform-submission-investigation-witness-report-form ul li:before,
.webform-submission-investigation-witness-report-form ol li:before { content: none; display: none; }

/* Checkbox group: match faux-checkbox icon styling used across site (Material Symbols)
   We cannot change HTML, so hide the native checkbox accessibly and render the icon via label. */
.webform-submission-investigation-witness-report-form .js-webform-type-checkbox input.form-checkbox {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  /* Keep input focus reachable for a11y */
}

.webform-submission-investigation-witness-report-form .js-webform-type-checkbox label.option {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding-left: 2.25rem; /* room for icon + inset background (matches faux-checkbox) */
  margin: 0;
  font-weight: 500;
  cursor: pointer;
}

/* Icon (Material Symbols) in front of label text — mirrors .faux-checkbox__control label::before */
.webform-submission-investigation-witness-report-form .js-webform-type-checkbox label.option::before {
  position: absolute;
  left: 0;
  top: 50%;
  font-family: "Material Symbols Outlined";
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--leading-none);
  color: var(--text-check-radio-default);
  text-align: center;
  transform: translateY(-50%);
  transition: color 0.3s ease;
  content: "check_box_outline_blank"; /* default unchecked icon */
}

/* Inset background box behind the icon — mirrors .faux-checkbox__control label::after */
.webform-submission-investigation-witness-report-form .js-webform-type-checkbox label.option::after {
  content: "";
  position: absolute;
  left: 0.3125rem; /* align with taic.css faux controls */
  top: 50%;
  width: 1.4rem;
  height: 1.4rem;
  background-color: var(--bg-check-radio-default);
  transform: translateY(-50%);
  transition: background-color 0.3s ease;
  z-index: -1;
}

/* Checked state — apply same filled/weight/colour as faux controls */
.webform-submission-investigation-witness-report-form .js-webform-type-checkbox input.form-checkbox:checked + label.option::before {
  content: "check_box";
  font-weight: 900;
  color: var(--text-check-radio-checked);
  font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24;
}

/* Optional hover focus ring on background to match interaction feel */
.webform-submission-investigation-witness-report-form .js-webform-type-checkbox label.option:hover::after {
  background-color: var(--bg-check-radio-hover, var(--bg-check-radio-default));
}
.webform-submission-investigation-witness-report-form .js-webform-type-checkbox input.form-checkbox:focus + label.option::after {
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.25);
}

/* Make checkbox items stack with comfortable spacing */
.webform-submission-investigation-witness-report-form .form-checkboxes .js-webform-type-checkbox {
  margin-bottom: 12px;
}

/* Required indicator: labels stay default color; red asterisk after text */
.webform-submission-investigation-witness-report-form label.form-required,
.webform-submission-investigation-witness-report-form label.js-form-required {
  color: inherit !important;
}

/* If Drupal outputs a span/element for the asterisk, style it */
.webform-submission-investigation-witness-report-form label .form-required,
.webform-submission-investigation-witness-report-form label .asterisk {
  color: var(--red-500);
  margin-left: 0.25em;
  font-weight: inherit;
}

/* Fallback: append a red asterisk via CSS when no .form-required element exists in the label */
.webform-submission-investigation-witness-report-form label.form-required:not(:has(.form-required, .asterisk))::after,
.webform-submission-investigation-witness-report-form label.js-form-required:not(:has(.form-required, .asterisk))::after {
  content: " *";
  color: var(--red-500);
  font-weight: inherit;
}

/* CAPTCHA spacing and submit button styles for Witness Report webform */
/* Add spacing below CAPTCHA widget */
.webform-submission-investigation-witness-report-form fieldset.captcha
/*, .webform-submission-investigation-witness-report-form .captcha__element,*/
/*.webform-submission-investigation-witness-report-form .g-recaptcha */
{
  margin-bottom: 16px;
}

/* Make the submit button visually match .btn.btn--primary.btn--md without changing markup */
.webform-submission-investigation-witness-report-form .webform-actions .button.button--primary,
.webform-submission-investigation-witness-report-form .webform-actions input[type="submit"].button--primary {
  /* Base .btn foundation */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--btn-icon-spacing);
  position: relative;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
  transition: var(--btn-transition);
  border: var(--btn-border-width) solid transparent;
  border-radius: var(--btn-radius);
  /* Size: .btn--md */
  min-height: var(--btn-height-md);
  padding-block: var(--btn-padding-y);
  padding-inline: var(--btn-padding-x-md);
  font-size: var(--btn-font-md);
  line-height: 1;
  font-weight: var(--btn-font-weight);
  /* Variant: .btn--primary */
  background-color: var(--btn-primary-bg);
  border-color: var(--btn-primary-bg);
  color: var(--btn-primary-text);
  width: auto;
}

/* Hover */
.webform-submission-investigation-witness-report-form .webform-actions .button.button--primary:hover:not(:disabled),
.webform-submission-investigation-witness-report-form .webform-actions input[type="submit"].button--primary:hover:not(:disabled) {
  background-color: var(--btn-primary-bg-hover);
  border-color: var(--btn-primary-bg-hover);
}

/* Active */
.webform-submission-investigation-witness-report-form .webform-actions .button.button--primary:active:not(:disabled),
.webform-submission-investigation-witness-report-form .webform-actions input[type="submit"].button--primary:active:not(:disabled) {
  background-color: var(--btn-primary-bg-active);
  border-color: var(--btn-primary-bg-active);
  transform: translateY(1px);
  transition: var(--btn-transition-fast);
}

/* Focus-visible (accessible focus ring) */
.webform-submission-investigation-witness-report-form .webform-actions .button.button--primary:focus-visible,
.webform-submission-investigation-witness-report-form .webform-actions input[type="submit"].button--primary:focus-visible {
  outline: var(--btn-focus-width) solid var(--btn-focus-color);
  outline-offset: var(--btn-focus-offset);
}

/* Disabled */
.webform-submission-investigation-witness-report-form .webform-actions .button.button--primary:disabled,
.webform-submission-investigation-witness-report-form .webform-actions input[type="submit"].button--primary:disabled,
.webform-submission-investigation-witness-report-form .webform-actions .button.button--primary[aria-disabled="true"],
.webform-submission-investigation-witness-report-form .webform-actions input[type="submit"].button--primary[aria-disabled="true"] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}


/* Witness form: constrain phone and country containers to 50% width with max 384px */
.webform-submission-investigation-witness-report-form .form-item-phone,
.webform-submission-investigation-witness-report-form .form-item-country {
  width: 50%;
  max-width: 384px;
  min-width: 384px;
  box-sizing: border-box; /* keep padding/border within the width */
}


/* Witness form selects: add chevron icon like .select-wrapper::after without changing markup */
.webform-submission-investigation-witness-report-form .js-form-type-select {
  position: relative; /* anchor for ::after icon */
}

/* Hide native arrow and add right padding so text doesn't overlap icon */
.webform-submission-investigation-witness-report-form .js-form-type-select select.form-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: none; /* suppress default arrow in some browsers */
  padding-right: 2.75rem; /* room for the chevron icon */
}

/* Chevron icon using Material Symbols (matches .select-wrapper::after pattern) */
.webform-submission-investigation-witness-report-form .js-form-type-select::after {
  position: absolute;
  top: calc(50% + 1.0625rem);
  right: 0.75rem;
  content: "keyboard_arrow_down";
  font-size: var(--text-3xl);
  font-family: "Material Symbols Outlined";
  font-weight: 400;
  color: var(--icon-input-default);
  transform: translateY(-50%);
  pointer-events: none;
}

/* Optional: give a subtle focus color when the select is focused */
.webform-submission-investigation-witness-report-form .js-form-type-select:focus-within::after {
  color: var(--btn-primary-bg);
}

/* High-contrast/forced-colors: fall back to native indicator for accessibility */
@media (forced-colors: active) {
  .webform-submission-investigation-witness-report-form .js-form-type-select::after { display: none; }
  .webform-submission-investigation-witness-report-form .js-form-type-select select.form-select {
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
    padding-right: initial;
  }
}


/* Witness form: style file input (managed_file) to match theme controls */
.webform-submission-investigation-witness-report-form .js-form-type-managed_file,
.webform-submission-investigation-witness-report-form .form-type-managed-file,
.webform-submission-investigation-witness-report-form .form-managed-file {
  position: relative;
}

/* Base input appearance (Keeps native widget but aligns with other inputs) */
.webform-submission-investigation-witness-report-form input[type="file"].form-file {
  display: inline-block;
  width: auto;
  padding: 7px 14px;
  border: 1px solid #C9CDD3;
  border-radius: 8px;
  background-color: #fff;
  color: #0F172A;
  font-size: 16px;
  line-height: 1.4;
  cursor: pointer;
}

/* Focus ring consistent with other inputs */
.webform-submission-investigation-witness-report-form input[type="file"].form-file:focus,
.webform-submission-investigation-witness-report-form input[type="file"].form-file:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.25);
  border-color: #0073E6;
}

/* Style the browse/choose button to look like .btn.btn--primary.btn--sm/md */
.webform-submission-investigation-witness-report-form input[type="file"].form-file::file-selector-button {
  /* Base .btn foundation */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--btn-icon-spacing, 0.5rem);
  position: relative;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
  transition: var(--btn-transition, all .15s ease);
  border: var(--btn-border-width, 1px) solid transparent;
  border-radius: var(--btn-radius, 8px);
  /* Size between sm and md to fit inside input nicely */
  min-height: calc(var(--btn-height-sm, 36px));
  padding-block: var(--btn-padding-y, 8px);
  padding-inline: var(--btn-padding-x-sm, 12px);
  font-size: var(--btn-font-sm, 14px);
  line-height: 1;
  font-weight: var(--btn-font-weight, 600);
  /* Variant: primary */
  background-color: var(--btn-primary-bg, #0F5FFF);
  border-color: var(--btn-primary-bg, #0F5FFF);
  color: var(--btn-primary-text, #fff);
  margin-right: 12px; /* space between button and filename */
}

/* Hover/active states for the button */
.webform-submission-investigation-witness-report-form input[type="file"].form-file:hover::file-selector-button {
  background-color: var(--btn-primary-bg-hover, #0A4ACC);
  border-color: var(--btn-primary-bg-hover, #0A4ACC);
}
.webform-submission-investigation-witness-report-form input[type="file"].form-file:active::file-selector-button {
  background-color: var(--btn-primary-bg-active, #093DB0);
  border-color: var(--btn-primary-bg-active, #093DB0);
  transform: translateY(1px);
}
.webform-submission-investigation-witness-report-form input[type="file"].form-file:disabled::file-selector-button {
  opacity: 0.5;
  cursor: not-allowed;
}


/* High-contrast/forced colors: let system show native appearance */
@media (forced-colors: active) {
  .webform-submission-investigation-witness-report-form input[type="file"].form-file {
    border: 1px solid ButtonText;
    background: Canvas;
    color: ButtonText;
  }
  .webform-submission-investigation-witness-report-form input[type="file"].form-file::file-selector-button {
    forced-color-adjust: none;
    border-color: ButtonText;
    background: ButtonFace;
    color: ButtonText;
  }
}


/* Contact form (Send us a message): apply same witness-form styles without changing markup */
.webform-submission-send-us-a-message-form {}

/* Spacing for form rows similar to .views-exposed-form .input-group */
.webform-submission-send-us-a-message-form .js-form-item {
  margin-bottom: 16px;
}

/* Labels */
.webform-submission-send-us-a-message-form label {
  display: inline-block;
  font-weight: 600;
  margin-bottom: 8px;
}

/* Inputs align with site styles (padding, radius, borders) */
.webform-submission-send-us-a-message-form .form-text,
.webform-submission-send-us-a-message-form .form-email,
.webform-submission-send-us-a-message-form .form-tel,
.webform-submission-send-us-a-message-form .form-select,
.webform-submission-send-us-a-message-form .form-textarea {
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #C9CDD3; /* grey-30 approx */
  border-radius: 8px;
  background-color: #fff;
  color: #0F172A; /* slate-900-ish */
  font-size: 16px;
  line-height: 1.4;
}

/* Textarea min-height */
.webform-submission-send-us-a-message-form .form-textarea { min-height: 120px; }

/* Focus states */
.webform-submission-send-us-a-message-form .form-text:focus,
.webform-submission-send-us-a-message-form .form-email:focus,
.webform-submission-send-us-a-message-form .form-tel:focus,
.webform-submission-send-us-a-message-form .form-select:focus,
.webform-submission-send-us-a-message-form .form-textarea:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.25);
  border-color: #0073E6;
}

/* LIST resets in this form context */
.webform-submission-send-us-a-message-form ul,
.webform-submission-send-us-a-message-form ol {
  list-style: none;
  padding: 0;
  margin: 8px 0 0 0;
}
.webform-submission-send-us-a-message-form li { display: flex; align-items: flex-start; }
.webform-submission-send-us-a-message-form ul li:before,
.webform-submission-send-us-a-message-form ol li:before { content: none; display: none; }

/* Checkbox group (future-proof): use faux-checkbox Material Symbols pattern */
.webform-submission-send-us-a-message-form .js-webform-type-checkbox input.form-checkbox {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
}
.webform-submission-send-us-a-message-form .js-webform-type-checkbox label.option {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding-left: 2.25rem; /* room for icon + inset background */
  margin: 0;
  font-weight: 500;
  cursor: pointer;
}
.webform-submission-send-us-a-message-form .js-webform-type-checkbox label.option::before {
  position: absolute;
  left: 0;
  top: 50%;
  font-family: "Material Symbols Outlined";
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--leading-none);
  color: var(--text-check-radio-default);
  text-align: center;
  transform: translateY(-50%);
  transition: color 0.3s ease;
  content: "check_box_outline_blank"; /* default unchecked icon */
}
.webform-submission-send-us-a-message-form .js-webform-type-checkbox label.option::after {
  content: "";
  position: absolute;
  left: 0.3125rem;
  top: 50%;
  width: 1.4rem;
  height: 1.4rem;
  background-color: var(--bg-check-radio-default);
  transform: translateY(-50%);
  transition: background-color 0.3s ease;
  z-index: -1;
}
.webform-submission-send-us-a-message-form .js-webform-type-checkbox input.form-checkbox:checked + label.option::before {
  content: "check_box";
  font-weight: 900;
  color: var(--text-check-radio-checked);
  font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24;
}
.webform-submission-send-us-a-message-form .js-webform-type-checkbox label.option:hover::after {
  background-color: var(--bg-check-radio-hover, var(--bg-check-radio-default));
}
.webform-submission-send-us-a-message-form .js-webform-type-checkbox input.form-checkbox:focus + label.option::after {
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.25);
}
.webform-submission-send-us-a-message-form .form-checkboxes .js-webform-type-checkbox { margin-bottom: 12px; }

/* Required indicator tweaks */
.webform-submission-send-us-a-message-form label.form-required,
.webform-submission-send-us-a-message-form label.js-form-required { color: inherit !important; }
.webform-submission-send-us-a-message-form label .form-required,
.webform-submission-send-us-a-message-form label .asterisk { color: var(--red-500); margin-left: 0.25em; font-weight: inherit; }
.webform-submission-send-us-a-message-form label.form-required:not(:has(.form-required, .asterisk))::after,
.webform-submission-send-us-a-message-form label.js-form-required:not(:has(.form-required, .asterisk))::after { content: " *"; color: var(--red-500); font-weight: inherit; }

/* Select chevron and native arrow reset */
.webform-submission-send-us-a-message-form .js-form-type-select { position: relative; }
.webform-submission-send-us-a-message-form .js-form-type-select select.form-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: none;
  padding-right: 2.75rem;
}
.webform-submission-send-us-a-message-form .js-form-type-select::after {
  position: absolute;
  top: calc(50% + 1.0625rem);
  right: 0.75rem;
  content: "keyboard_arrow_down";
  font-size: var(--text-3xl);
  font-family: "Material Symbols Outlined";
  font-weight: 400;
  color: var(--icon-input-default);
  transform: translateY(-50%);
  pointer-events: none;
}
.webform-submission-send-us-a-message-form .js-form-type-select:focus-within::after { color: var(--btn-primary-bg); }
@media (forced-colors: active) {
  .webform-submission-send-us-a-message-form .js-form-type-select::after { display: none; }
  .webform-submission-send-us-a-message-form .js-form-type-select select.form-select {
    -webkit-appearance: auto; -moz-appearance: auto; appearance: auto; padding-right: initial;
  }
}

/* CAPTCHA spacing */
.webform-submission-send-us-a-message-form fieldset.captcha { margin-bottom: 16px; }

/* Submit button: match .btn.btn--primary.btn--md */
.webform-submission-send-us-a-message-form .webform-actions .button.button--primary,
.webform-submission-send-us-a-message-form .webform-actions input[type="submit"].button--primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--btn-icon-spacing);
  position: relative;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
  transition: var(--btn-transition);
  border: var(--btn-border-width) solid transparent;
  border-radius: var(--btn-radius);
  min-height: var(--btn-height-md);
  padding-block: var(--btn-padding-y);
  padding-inline: var(--btn-padding-x-md);
  font-size: var(--btn-font-md);
  line-height: 1;
  font-weight: var(--btn-font-weight);
  background-color: var(--btn-primary-bg);
  border-color: var(--btn-primary-bg);
  color: var(--btn-primary-text);
  width: auto;
}
.webform-submission-send-us-a-message-form .webform-actions .button.button--primary:hover:not(:disabled),
.webform-submission-send-us-a-message-form .webform-actions input[type="submit"].button--primary:hover:not(:disabled) {
  background-color: var(--btn-primary-bg-hover);
  border-color: var(--btn-primary-bg-hover);
}
.webform-submission-send-us-a-message-form .webform-actions .button.button--primary:active:not(:disabled),
.webform-submission-send-us-a-message-form .webform-actions input[type="submit"].button--primary:active:not(:disabled) {
  background-color: var(--btn-primary-bg-active);
  border-color: var(--btn-primary-bg-active);
  transform: translateY(1px);
  transition: var(--btn-transition-fast);
}
.webform-submission-send-us-a-message-form .webform-actions .button.button--primary:focus-visible,
.webform-submission-send-us-a-message-form .webform-actions input[type="submit"].button--primary:focus-visible {
  outline: var(--btn-focus-width) solid var(--btn-focus-color);
  outline-offset: var(--btn-focus-offset);
}
.webform-submission-send-us-a-message-form .webform-actions .button.button--primary:disabled,
.webform-submission-send-us-a-message-form .webform-actions input[type="submit"].button--primary:disabled,
.webform-submission-send-us-a-message-form .webform-actions .button.button--primary[aria-disabled="true"],
.webform-submission-send-us-a-message-form .webform-actions input[type="submit"].button--primary[aria-disabled="true"] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* File input (future-proof if added): match witness form */
.webform-submission-send-us-a-message-form input[type="file"].form-file {
  display: inline-block;
  width: auto;
  padding: 7px 14px;
  border: 1px solid #C9CDD3;
  border-radius: 8px;
  background-color: #fff;
  color: #0F172A;
  font-size: 16px;
  line-height: 1.4;
  cursor: pointer;
}
.webform-submission-send-us-a-message-form input[type="file"].form-file:focus,
.webform-submission-send-us-a-message-form input[type="file"].form-file:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.25);
  border-color: #0073E6;
}
.webform-submission-send-us-a-message-form input[type="file"].form-file::file-selector-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--btn-icon-spacing, 0.5rem);
  position: relative;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
  transition: var(--btn-transition, all .15s ease);
  border: var(--btn-border-width, 1px) solid transparent;
  border-radius: var(--btn-radius, 8px);
  min-height: calc(var(--btn-height-sm, 36px));
  padding-block: var(--btn-padding-y, 8px);
  padding-inline: var(--btn-padding-x-sm, 12px);
  font-size: var(--btn-font-sm, 14px);
  line-height: 1;
  font-weight: var(--btn-font-weight, 600);
  background-color: var(--btn-primary-bg, #0F5FFF);
  border-color: var(--btn-primary-bg, #0F5FFF);
  color: var(--btn-primary-text, #fff);
  margin-right: 12px;
}
.webform-submission-send-us-a-message-form input[type="file"].form-file:hover::file-selector-button { background-color: var(--btn-primary-bg-hover, #0A4ACC); border-color: var(--btn-primary-bg-hover, #0A4ACC); }
.webform-submission-send-us-a-message-form input[type="file"].form-file:active::file-selector-button { background-color: var(--btn-primary-bg-active, #093DB0); border-color: var(--btn-primary-bg-active, #093DB0); transform: translateY(1px); }
.webform-submission-send-us-a-message-form input[type="file"].form-file:disabled::file-selector-button { opacity: 0.5; cursor: not-allowed; }
@media (forced-colors: active) {
  .webform-submission-send-us-a-message-form input[type="file"].form-file { border: 1px solid ButtonText; background: Canvas; color: ButtonText; }
  .webform-submission-send-us-a-message-form input[type="file"].form-file::file-selector-button { forced-color-adjust: none; border-color: ButtonText; background: ButtonFace; color: ButtonText; }
}


/* Reset buttons: style to match theme (secondary/outline) without changing markup */
/* Witness form */
.webform-submission-investigation-witness-report-form .webform-actions .webform-button--reset,
.webform-submission-investigation-witness-report-form .webform-actions input[type="reset"].webform-button--reset,
.webform-submission-investigation-witness-report-form .webform-actions .button.button--reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--btn-icon-spacing);
  position: relative;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
  transition: var(--btn-transition);
  border: var(--btn-border-width) solid var(--btn-primary-bg);
  border-radius: var(--btn-radius);
  min-height: var(--btn-height-md);
  padding-block: var(--btn-padding-y);
  padding-inline: var(--btn-padding-x-md);
  font-size: var(--btn-font-md);
  line-height: 1;
  font-weight: var(--btn-font-weight);
  background-color: transparent;
  color: var(--btn-primary-bg);
  width: auto;
  margin-inline-start: 12px; /* space from primary submit */
}
.webform-submission-investigation-witness-report-form .webform-actions .webform-button--reset:hover:not(:disabled),
.webform-submission-investigation-witness-report-form .webform-actions input[type="reset"].webform-button--reset:hover:not(:disabled),
.webform-submission-investigation-witness-report-form .webform-actions .button.button--reset:hover:not(:disabled) {
  background-color: var(--btn-primary-bg-hover);
  border-color: var(--btn-primary-bg-hover);
  color: var(--btn-primary-text);
}
.webform-submission-investigation-witness-report-form .webform-actions .webform-button--reset:active:not(:disabled),
.webform-submission-investigation-witness-report-form .webform-actions input[type="reset"].webform-button--reset:active:not(:disabled),
.webform-submission-investigation-witness-report-form .webform-actions .button.button--reset:active:not(:disabled) {
  background-color: var(--btn-primary-bg-active);
  border-color: var(--btn-primary-bg-active);
  color: var(--btn-primary-text);
  transform: translateY(1px);
  transition: var(--btn-transition-fast);
}
.webform-submission-investigation-witness-report-form .webform-actions .webform-button--reset:focus-visible,
.webform-submission-investigation-witness-report-form .webform-actions input[type="reset"].webform-button--reset:focus-visible,
.webform-submission-investigation-witness-report-form .webform-actions .button.button--reset:focus-visible {
  outline: var(--btn-focus-width) solid var(--btn-focus-color);
  outline-offset: var(--btn-focus-offset);
}
.webform-submission-investigation-witness-report-form .webform-actions .webform-button--reset:disabled,
.webform-submission-investigation-witness-report-form .webform-actions input[type="reset"].webform-button--reset:disabled,
.webform-submission-investigation-witness-report-form .webform-actions .button.button--reset[aria-disabled="true"] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* Contact form */
.webform-submission-send-us-a-message-form .webform-actions .webform-button--reset,
.webform-submission-send-us-a-message-form .webform-actions input[type="reset"].webform-button--reset,
.webform-submission-send-us-a-message-form .webform-actions .button.button--reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--btn-icon-spacing);
  position: relative;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
  transition: var(--btn-transition);
  border: var(--btn-border-width) solid var(--btn-primary-bg);
  border-radius: var(--btn-radius);
  min-height: var(--btn-height-md);
  padding-block: var(--btn-padding-y);
  padding-inline: var(--btn-padding-x-md);
  font-size: var(--btn-font-md);
  line-height: 1;
  font-weight: var(--btn-font-weight);
  background-color: transparent;
  color: var(--btn-primary-bg);
  width: auto;
  margin-inline-start: 12px;
}
.webform-submission-send-us-a-message-form .webform-actions .webform-button--reset:hover:not(:disabled),
.webform-submission-send-us-a-message-form .webform-actions input[type="reset"].webform-button--reset:hover:not(:disabled),
.webform-submission-send-us-a-message-form .webform-actions .button.button--reset:hover:not(:disabled) {
  background-color: var(--btn-primary-bg-hover);
  border-color: var(--btn-primary-bg-hover);
  color: var(--btn-primary-text);
}
.webform-submission-send-us-a-message-form .webform-actions .webform-button--reset:active:not(:disabled),
.webform-submission-send-us-a-message-form .webform-actions input[type="reset"].webform-button--reset:active:not(:disabled),
.webform-submission-send-us-a-message-form .webform-actions .button.button--reset:active:not(:disabled) {
  background-color: var(--btn-primary-bg-active);
  border-color: var(--btn-primary-bg-active);
  color: var(--btn-primary-text);
  transform: translateY(1px);
  transition: var(--btn-transition-fast);
}
.webform-submission-send-us-a-message-form .webform-actions .webform-button--reset:focus-visible,
.webform-submission-send-us-a-message-form .webform-actions input[type="reset"].webform-button--reset:focus-visible,
.webform-submission-send-us-a-message-form .webform-actions .button.button--reset:focus-visible {
  outline: var(--btn-focus-width) solid var(--btn-focus-color);
  outline-offset: var(--btn-focus-offset);
}
.webform-submission-send-us-a-message-form .webform-actions .webform-button--reset:disabled,
.webform-submission-send-us-a-message-form .webform-actions input[type="reset"].webform-button--reset:disabled,
.webform-submission-send-us-a-message-form .webform-actions .button.button--reset[aria-disabled="true"] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* High-contrast/forced-colors: keep outline visible and avoid color loss */
@media (forced-colors: active) {
  .webform-submission-investigation-witness-report-form .webform-actions .webform-button--reset,
  .webform-submission-send-us-a-message-form .webform-actions .webform-button--reset {
    forced-color-adjust: none;
    background: transparent;
    border-color: ButtonText;
    color: ButtonText;
  }
}
