/* Accessibility enhancements - WCAG 2.2 AA */

:focus-visible {
  outline: 3px solid var(--pi-focus);
  outline-offset: 3px;
}

button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
a:focus-visible {
  outline: 3px solid var(--pi-focus);
  outline-offset: 3px;
}

button,
.elementor-button,
.fluentform .ff-btn-submit {
  min-height: 44px;
}

input[type="checkbox"],
input[type="radio"] {
  width: 20px;
  height: 20px;
  accent-color: var(--pi-dark);
}

.pi-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.pi-section-primary,
.pi-section-primary p,
.pi-section-primary h1,
.pi-section-primary h2,
.pi-section-primary h3 {
  color: var(--pi-dark) !important;
}

main a:not(.elementor-button) {
  text-decoration: underline;
}
