*, *::before, *::after { box-sizing: border-box; }

html {
  width: 100%;
  min-width: 0;
  overflow-x: clip;
  scrollbar-gutter: stable;
  -webkit-text-size-adjust: 100%;
}

body {
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow-x: clip;
  background: var(--oasis-color-bg);
  color: var(--oasis-color-text);
  font-family: var(--oasis-font-main) !important;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.55;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body,
button,
input,
select,
textarea,
.wp-block,
.editor-styles-wrapper,
.elementor,
.elementor-kit-*,
.elementor-widget,
.elementor-heading-title {
  font-family: var(--oasis-font-main) !important;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 .75em;
  color: var(--oasis-color-dark);
  font-family: var(--oasis-font-main) !important;
  font-weight: 700;
  line-height: 1.15;
}

p { margin: 0 0 1rem; }
a { color: inherit; }
img, svg, video, canvas, iframe { max-width: 100%; height: auto; }
img { display: block; }
table { width: 100%; border-collapse: collapse; }
button, input, select, textarea { max-width: 100%; }

.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.skip-link:focus {
  position: fixed !important;
  top: 12px;
  left: 12px;
  z-index: 999999;
  width: auto;
  height: auto;
  padding: 10px 14px;
  clip: auto;
  background: var(--oasis-color-primary);
  color: #111;
  border-radius: 10px;
}
