/* Self-hosted compatibility layer.
   Framework classes and interaction IDs are intentionally preserved because they are local layout hooks,
   not external hosting dependencies. */
.local-form { margin: 0 0 15px; }
.local-form .w-form-done,
.local-form .w-form-fail { display: none; }

/* Prevent transformed content from painting over the sticky header in any browser. */
.nav-bar.w-nav { z-index: 10000; isolation: isolate; }

/* Keyboard focus for exported interactive controls. */
.w-nav-button:focus-visible,
.w-slider-arrow-left:focus-visible,
.w-slider-arrow-right:focus-visible {
  outline: 3px solid currentColor;
  outline-offset: 3px;
}

/* Universal form-radio repair for every page containing the contact form. */
.radio-buttons-wrapper label.w-radio {
  position: relative;
  display: flex;
  align-items: flex-start;
  min-height: 30px;
  margin-bottom: 0;
  padding-left: 0;
  cursor: pointer;
}

.radio-buttons-wrapper label.w-radio > input[type="radio"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  opacity: 0 !important;
  z-index: 3 !important;
  cursor: pointer !important;
}

.radio-buttons-wrapper label.w-radio > .radio-button-2,
.radio-buttons-wrapper label.w-radio > .w-radio-input {
  position: relative;
  z-index: 1;
  flex: 0 0 20px;
}

.radio-buttons-wrapper label.w-radio > .w-form-label {
  position: relative;
  z-index: 1;
  pointer-events: none;
}

.radio-buttons-wrapper label.w-radio:focus-within {
  border-radius: 6px;
  outline: 3px solid rgba(0, 153, 230, 0.28);
  outline-offset: 4px;
}

