.elementor-78 .elementor-element.elementor-element-e5cd96a{--display:flex;--min-height:700px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-78 .elementor-element.elementor-element-3f3cd51{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-78 .elementor-element.elementor-element-f6cba71{text-align:center;}.elementor-78 .elementor-element.elementor-element-f6cba71 .elementor-heading-title{font-family:"PT Sans Narrow", Sans-serif;font-size:120px;font-weight:700;color:#FFFFFF;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-a3bbe4c */*, *::before, *::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

body {
  background-color: hsl(207 100% 5%);
  background-image: linear-gradient(hsl(207 100% 15%), hsl(207 100% 10%));
  min-height: 100vh;
  display: grid;
  place-items: center;
  perspective: 800px;
  overflow: clip;
  
  * {
    transform-style: preserve-3d;
  }
}

.scene {
  position: relative;
  
  * { position: absolute; }
}

.butterfly {
  position: absolute;
  animation: fly calc(20s + var(--random) * 6s) calc(var(--random) * -100s) infinite linear;
   
  &::before, &::after {
    box-shadow: 0 0 15px #0007 inset;
    content: '';
    position: absolute;
    width: 30px;
    height: 53px;
    background-color: hsl(calc(197 + var(--random) * 20) 100% 50%);
    clip-path: path('m0 24.949c 2.6262-5.4316 9.7782-15.554 16.428-20.546 4.798-3.6021 12.572-6.3892 12.572 2.4795 0 1.7712-1.0155 14.879-1.6111 17.007-2.0703 7.3984-9.6144 9.2854-16.325 8.1433 11.73 1.9964 14.714 8.6092 8.2697 15.222-12.239 12.559-17.591-3.1511-18.963-7.1766-.2514-.73797-.36904-1.0832-.37077-.78964z');
    transform-origin: left;
  }
  &::before {
    animation: flapB calc(0.2s + var(--random) * 0.1s) infinite alternate ease-in-out;
  }
  
  &::after {
    animation: flapA calc(0.2s + var(--random) * 0.1s) infinite alternate ease-in-out;
  }    
}

@keyframes fly {
  0% { transform: rotateX(90deg) rotate(calc(var(--random) * 360deg)) translateX(900px) translateZ(-70vh); }
  100% { transform: rotateX(90deg) rotate(calc(var(--random) * 360deg - 720deg)) translateX(200px) translateZ(170vh); }
}

@keyframes flapB {
  from { rotate: y 15deg; } 
  to { rotate: y -30deg; } 
}
@keyframes flapA {
  from { rotate: y 165deg; } 
  to { rotate: y 210deg; } 
}/* End custom CSS */