#avvivi-intro {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #00602d;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.6s ease;
}

#avvivi-intro.avvivi-intro--leaving {
  opacity: 0;
}

#avvivi-intro.avvivi-intro--done {
  display: none;
  visibility: hidden;
}

.avvivi-intro__logo {
  position: relative;
  width: clamp(96px, 20vw, 220px);
  aspect-ratio: 1080 / 1080;
  opacity: 0;
}

.avvivi-intro__logo svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.avvivi-intro__logo path {
  fill: none;
  stroke: #fff;
  stroke-width: 23;
  stroke-miterlimit: 10;
}

html.avvivi-intro-lock,
html.avvivi-intro-lock body {
  overflow: hidden;
  height: 100%;
}

body.elementor-editor-active #avvivi-intro {
  display: none;
}
