@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Abril+Fatface&family=IBM+Plex+Mono:wght@200&family=Inconsolata:wght@300&family=Roboto+Mono:wght@200&family=Zen+Maru+Gothic&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Fleur+De+Leah&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Flavors&family=Fleur+De+Leah&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bonbon&family=Flavors&family=Fleur+De+Leah&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bonbon&family=Flavors&family=Fleur+De+Leah&family=Mountains+of+Christmas:wght@400;700&family=Puppies+Play&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bonbon&family=Flavors&family=Fleur+De+Leah&family=Henny+Penny&family=Mountains+of+Christmas:wght@400;700&family=Puppies+Play&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bonbon&family=Flavors&family=Fleur+De+Leah&family=Henny+Penny&family=Just+Me+Again+Down+Here&family=Mountains+of+Christmas:wght@400;700&family=Puppies+Play&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bonbon&family=Flavors&family=Fleur+De+Leah&family=Henny+Penny&family=Just+Me+Again+Down+Here&family=Kranky&family=Mountains+of+Christmas:wght@400;700&family=Puppies+Play&display=swap");
html, body {
  margin: 0;
  border: 0;
  padding: 0;
  font-size: 1.3rem;
  font-size: 75%;
  position: relative;
  scroll-behavior: smooth;
  font-family: "Noto Sans JP", sans-serif;
}

html {
  -webkit-font-smoothing: antialiased;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
}

/* Hide scrollbar for Chrome, Safari, and Opera */
::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE and Edge */
body {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

/* width */
::-webkit-scrollbar {
  width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px rgb(192, 192, 192);
  border-radius: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #599ed3;
  border-radius: 10px;
  opacity: 0.5;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  opacity: 1;
}

a {
  transition: all 0.3s ease;
  position: relative;
}

a:active, a:focus {
  outline: 0;
  border: none;
  -moz-outline-style: none;
}

h1 {
  font-size: 2.9rem;
  font-weight: 600;
}

h2 {
  font-size: 2.3rem;
  font-weight: 600;
}

h3 {
  font-size: 2rem;
  font-weight: 600;
}
@media screen and (min-width: 1024px) {
  h3 {
    font-size: 2.4rem;
  }
}

h4 {
  font-size: 1.3rem;
  font-weight: 600;
}

h5 {
  font-size: 1.5rem;
  font-weight: 600;
}

h6 {
  font-size: 1.6rem;
  font-weight: 600;
}

@media screen and (min-width: 1200px) {
  h1 {
    font-size: 4rem;
  }
  h2 {
    font-size: 3.6rem;
  }
  h3 {
    font-size: 3rem;
  }
  h4 {
    font-size: 2.4rem;
  }
  h5 {
    font-size: 2rem;
  }
  h6 {
    font-size: 1.8rem;
  }
}
p {
  font-size: 1.4rem;
  line-height: 1.8;
  font-weight: 600;
}
@media screen and (min-width: 1024px) {
  p {
    font-size: 1.6rem;
    line-height: 1.8;
  }
}

@media (max-width: 860px) {
  .pc {
    display: none;
  }
}
@media (min-width: 860px) {
  .sp {
    display: none;
  }
}
br._sp {
  display: none;
}
@media screen and (max-width: 470px) {
  br._sp {
    display: block;
  }
}

.navbar-default .navbar-nav > li._sp {
  display: none;
}
@media screen and (max-width: 1020px) {
  .navbar-default .navbar-nav > li._sp {
    display: block;
  }
}

p._sp {
  display: none;
}
@media screen and (max-width: 1020px) {
  p._sp {
    display: block;
  }
}

/* Zooming effect when click the hamburger icon */
#wrapper {
  width: 100%;
  top: 0;
  left: 0;
  display: inline-block;
}

#wrapper.behind {
  position: relative;
}

/* Mobile Navigation */
.width-screen {
  width: 90%;
}

.mobile-nav {
  background-color: #fff;
  position: fixed;
  top: 100%;
  right: 0;
  width: 100%;
  height: 100vh;
  z-index: 9500;
  color: #222;
  transition: all 0.3s ease;
  display: table;
  opacity: 0;
  text-transform: uppercase;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.mobile-nav.active {
  top: 0;
  opacity: 1;
  z-index: 9700;
}

@media (min-width: 1400px) {
  .mobile-nav {
    display: none;
  }
}
.mobile-nav > ul {
  text-align: left;
  padding-left: 8%;
  padding-right: 8%;
  top: 0px;
  display: table-cell;
  vertical-align: middle;
  list-style: none;
  width: 100%;
  padding: 0;
  text-align: center;
  overflow-y: hidden;
  position: relative;
  top: 0;
  /* 
  @media(max-width:470px){
      top: -25px;
  }
  */
}
.mobile-nav > ul:before {
  width: 50%;
}
@media (min-width: 1200px) {
  .mobile-nav > ul:before {
    padding: 5% 100px;
    top: 65px;
  }
}

.mobile-nav > ul > li > a {
  margin: 10px 0;
  font-size: 4vw;
  font-weight: 600;
  line-height: 3;
  color: #222;
  font-weight: 100;
}
.mobile-nav > ul > li > a:not(:last-child):after {
  content: "\f105";
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  top: 0px;
  left: 0;
  margin-left: 10px;
  padding: 1px 6px;
}

.mobile-nav > ul > li > a.scrollto.btn {
  margin: 10px 0;
  font-size: 4vw;
  font-weight: 600;
  line-height: 5;
  background: #fff;
  padding: 10px 30px;
  border-radius: 10px;
}
@media screen and (max-width: 1200px) {
  .mobile-nav > ul > li > a.scrollto.btn {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 470px) {
  .mobile-nav > ul > li > a.scrollto.btn {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1030px) {
  .mobile-nav > ul > li > a.scrollto.btn {
    margin: 10px 0;
    font-size: 1.6rem;
    font-weight: 600;
    background: #fff;
    padding: 10px 30px;
    border-radius: 10px;
  }
}

.mobile-nav a.close-btn {
  position: absolute;
  color: #6a6868;
  position: absolute;
  top: 3px;
  bottom: auto;
  right: 14px;
  padding: 1vh 3.5vw 1.2vh;
  font-size: 3.5rem;
}

/* main navbar */
.navbar {
  position: fixed;
  top: 0;
  width: 100%;
  transition: all 0.3s ease;
  z-index: 100;
  padding: 0px 0;
}
@media (max-width: 768px) {
  .navbar {
    margin-top: 0px;
  }
}
@media (max-width: 480px) {
  .navbar {
    margin-top: 0px;
  }
}

.navbar-header, .navbar-collapse {
  margin-top: 10px;
  margin-bottom: 10px;
}
@media (max-width: 1235px) {
  .navbar-header, .navbar-collapse {
    width: 100%;
  }
}

.navbar-default .navbar-nav > li {
  display: flex;
  margin-right: 0.2rem;
}

.navbar-default .navbar-nav > li > a:focus:after {
  width: 0;
}

.wrap-btnav {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1200px) and (orientation: landscape) {
  .wrap-btnav {
    margin: 10px 0;
  }
}

span a.btn {
  color: #fff;
  background-image: linear-gradient(to left top, #19418e, #1f499c, #2451aa, #2a5ab8, #2f62c6, #236dce, #1378d5, #0083db, #0090d6, #009ac8, #00a1b5, #00a6a2);
  padding: 10px 25px 10px;
  font-size: 1.6rem;
  transition: 0.5s;
}
@media screen and (max-width: 1200px) and (orientation: landscape) {
  span a.btn {
    font-size: 2rem;
  }
}
@media screen and (max-width: 860px) {
  span a.btn {
    margin-top: 20px;
    font-size: 1.5rem;
  }
}

span a.btn:hover {
  opacity: 0.5;
}

span.iconav img {
  width: 2rem;
  margin: 0 0 0 15px;
  transition: 0.5s;
}
@media screen and (max-width: 1200px) and (orientation: landscape) {
  span.iconav img {
    width: 4rem;
    margin: 0 0 0 24px;
  }
}
@media screen and (max-width: 860px) {
  span.iconav img {
    display: none;
  }
}

span.iconav img:hover {
  opacity: 0.5;
}

.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li.active > a {
  color: #fff;
  opacity: 0.8;
}

@media (min-width: 768px) {
  .navbar-default .navbar-nav > li > a:hover:after, .navbar-default .navbar-nav > li.active > a:after {
    width: 100%;
  }
}
.navbar.navbar-default.navbar-default .navbar-nav > li > a {
  color: #fff;
  font-weight: 400;
}

.navbar.navbar-default.navbar-default .navbar-nav > li > a.btn {
  border: solid 1.5px;
  background-color: #fff;
  padding-left: 20px;
  padding-right: 20px;
  transition: 0.3s;
}
.navbar.navbar-default.navbar-default .navbar-nav > li > a.btn:hover {
  background-color: #ece0c5;
}

.nav-fixed {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
  background-color: #fff;
  box-shadow: rgba(50, 50, 93, 0.07) 0px 6px 12px -2px, rgba(0, 0, 0, 0.07) 0px 3px 7px -3px;
}

/*change nav font color*/
.nav-fixed.navbar-default.navbar-default .navbar-nav > li > a {
  color: #38617a;
}

span.iconav {
  mix-blend-mode: difference;
}

.nav-wrapper {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-top: 10px;
}

img.comp-logo {
  width: 45%;
}
@media screen and (max-width: 1024px) {
  img.comp-logo {
    width: 20%;
  }
}
@media screen and (max-width: 860px) {
  img.comp-logo {
    width: 25%;
  }
}
@media screen and (max-width: 470px) {
  img.comp-logo {
    width: 45%;
  }
}
@media screen and (min-width: 1024px) {
  img.comp-logo {
    width: 200px;
  }
}

.main-nav__item--has-dropdown::after {
  content: "";
  width: 5px;
  height: 5px;
  margin-left: 8px;
  opacity: 0.5;
  transition: opacity 0.3s;
}
@media (max-width: 860px) {
  .main-nav__item--has-dropdown::after {
    margin-left: 0px;
  }
}

.main-nav__item:hover {
  background-color: transparent;
}
.main-nav__item:hover:after {
  opacity: 1;
}

.main-nav__dropdown {
  position: absolute;
  min-width: 175px;
  transform: translateY(15px);
  opacity: 0;
  transition: 0.4s;
  pointer-events: none;
  top: 0px;
  right: 0;
}
@media screen and (max-width: 1200px) and (orientation: landscape) {
  .main-nav__dropdown {
    top: 57% !important;
  }
}
@media (max-width: 860px) {
  .main-nav__dropdown {
    top: 0px;
    right: 0;
    z-index: 999;
  }
}
.main-nav__dropdown--fullwidth {
  left: 0;
  right: 0;
}

.main-nav__item:hover .main-nav__dropdown,
.main-nav__item:focus-within .main-nav__dropdown,
.main-nav__link:focus + .main-nav__dropdown {
  transition-duration: 0.3s;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.dropdown-nav {
  padding: 15px;
  background: #297ab0;
  border-radius: 0 0 2px 2px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  font-size: 1rem;
  width: 195px;
  border-radius: 0px;
  margin-top: 45px;
  line-height: 2;
}
.dropdown-nav:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  z-index: 1;
  border-style: solid;
  border-color: #297ab0 transparent;
  border-width: 0 20px 14px;
  top: -14px;
  left: 77%;
  margin-left: -20px;
}
@media screen and (max-width: 1200px) and (orientation: landscape) {
  .dropdown-nav {
    width: 414px;
    margin-top: 0px;
  }
  .dropdown-nav:after {
    border-color: transparent;
  }
}
@media screen and (max-width: 860px) {
  .dropdown-nav {
    margin-top: 0px;
    margin: 54vh 0;
  }
  .dropdown-nav:after {
    border-color: transparent;
  }
}

.dropdown-nav__list {
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
  z-index: 999;
}

.dropdown-nav__item a:hover {
  transition: 1s;
}

ul.dropdown-nav__list {
  display: block;
}

li.dropdown-nav__item a {
  text-transform: uppercase;
  transition: 1s;
  color: #fff;
}
@media screen and (max-width: 1200px) and (orientation: landscape) {
  li.dropdown-nav__item a {
    font-size: 2rem;
  }
}

li.dropdown-nav__item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.231372549);
  padding: 7px 0;
}
li.dropdown-nav__item:last-child {
  border-bottom: none;
  padding: 7px 0 0 0;
}

.mid-center-aligned {
  position: relative;
}
.mid-center-aligned::before {
  content: "";
  padding: 33%;
  width: 0;
  background-image: url(../img/light.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  top: -11vw;
  left: -7vw;
  position: absolute;
  z-index: 3;
}
@media screen and (min-width: 1024px) {
  .mid-center-aligned::before {
    padding: 23%;
    top: -11vw;
    left: -9vw;
  }
}
.mid-center-aligned header#main-visual {
  position: relative;
  z-index: 1;
  margin-top: 0px;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: block;
  /* added */
  align-items: center;
}
.mid-center-aligned header#main-visual .tag-wrap {
  position: absolute;
  transform: translate(0, 45%);
  z-index: 4;
  height: 100vh;
  width: 95%;
  left: 0;
  right: 0;
  margin: auto;
}
.mid-center-aligned header#main-visual .tag-wrap .tag p {
  color: #2f2f2f;
  text-align: center;
  letter-spacing: 0.5rem;
  font-size: 1.3rem;
  font-weight: 400;
  margin: -17px;
  -moz-text-shadow: 0px 0px 13px rgb(255, 255, 255);
  -webkit-text-shadow: 0px 0px 13px rgb(255, 255, 255);
  -ms-text-shadow: 0px 0px 13px rgb(255, 255, 255);
  text-shadow: 0px 0px 13px rgb(255, 255, 255);
}
@media screen and (min-width: 1024px) {
  .mid-center-aligned header#main-visual .tag-wrap .tag p {
    letter-spacing: 1rem;
  }
}
.mid-center-aligned header#main-visual .tag-wrap .tag h2 {
  font-family: "Fleur De Leah", cursive;
  font-weight: 400;
  padding-bottom: 2vw;
  font-style: normal;
  text-align: center;
  letter-spacing: 0rem;
  font-size: 13vw;
  background: #ff6d00 -webkit-radial-gradient(circle, rgb(228, 205, 74), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)) no-repeat 280px -94px;
  -webkit-background-clip: text;
  -webkit-background-size: 288px;
  color: rgba(89, 158, 211, 0.1647058824);
  -webkit-animation: ani 6s linear infinite;
}
@keyframes ani {
  from {
    background-position: -280px -94px;
  }
  to {
    background-position: 100vw -94px;
  }
}
@media screen and (min-width: 1024px) {
  .mid-center-aligned header#main-visual .tag-wrap .tag h2 {
    letter-spacing: 1rem;
    font-size: 3rem;
  }
}
.mid-center-aligned header#main-visual .slide {
  position: relative;
  margin: 0;
  padding: 0;
  height: 100vh;
}
.mid-center-aligned header#main-visual .slide .item {
  position: relative;
  height: 100%;
}
.mid-center-aligned header#main-visual .slide .item img {
  width: 160%;
  height: 320%;
}
.mid-center-aligned header#main-visual .slide .item::before {
  display: block;
  padding-top: 39%;
  content: "";
}
.mid-center-aligned header#main-visual .slide .item .image {
  position: relative;
  overflow: hidden;
}
.mid-center-aligned header#main-visual .slide .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 236%;
  transform: translate(-29%, 0%);
  -o-object-fit: contain;
     object-fit: contain;
}
.mid-center-aligned header#main-visual .slide > .slick-list,
.mid-center-aligned header#main-visual .slide > .slick-list > .slick-track,
.mid-center-aligned header#main-visual .slide > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}
.mid-center-aligned header#main-visual .slide-animation {
  animation: fadezoom 30s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}
@media screen and (min-width: 1200px) {
  .mid-center-aligned header#main-visual .slide {
    position: relative;
    margin: auto;
    padding: 0;
    height: 100vh;
  }
  .mid-center-aligned header#main-visual .slide .item {
    position: relative;
    height: 100%;
  }
  .mid-center-aligned header#main-visual .slide .item img {
    width: 100%;
    height: auto;
  }
  .mid-center-aligned header#main-visual .slide .item::before {
    display: block;
    padding-top: 39%;
    content: "";
  }
  .mid-center-aligned header#main-visual .slide .item .image {
    position: relative;
    overflow: hidden;
  }
  .mid-center-aligned header#main-visual .slide .item img {
    top: 368px;
    transform: translate(-1%, -15%);
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: bottom;
       object-position: bottom;
  }
  .mid-center-aligned header#main-visual .slide > .slick-list,
  .mid-center-aligned header#main-visual .slide > .slick-list > .slick-track,
  .mid-center-aligned header#main-visual .slide > .slick-list > .slick-track > .slick-slide > div {
    position: relative;
    height: 100%;
  }
}
.mid-center-aligned header#main-visual .mole {
  position: absolute;
  transform: translate(0, 5%);
  z-index: 2;
  height: 100vh;
  width: 100%;
  left: 0;
  right: 0;
  margin: auto;
  top: 0;
}
.mid-center-aligned header#main-visual .mole .cules1 {
  position: absolute;
  transform: translate(0, 25%);
  left: 0;
  right: 0;
  margin: auto;
  height: 100vh;
  transition: all 2.5s ease-in-out;
  /* Firefox */
  /* Webkit */
  /* IE */
  animation: blink normal 3.5s infinite ease-in-out;
  /* Opera */
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.mid-center-aligned header#main-visual .mole .cules1 img {
  width: 300%;
  height: auto;
}
@media screen and (min-width: 1024px) {
  .mid-center-aligned header#main-visual .mole .cules1 img {
    width: 100%;
  }
}
.mid-center-aligned header#main-visual .mole .cules2 {
  position: absolute;
  transform: translate(0, 25%);
  left: 0;
  right: 0;
  margin: auto;
  height: 100vh;
  transition: all 1.5s ease-in-out;
  /* Firefox */
  /* Webkit */
  /* IE */
  animation: blink normal 2.5s infinite ease-in-out;
  /* Opera */
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.mid-center-aligned header#main-visual .mole .cules2 img {
  width: 300%;
  height: auto;
}
@media screen and (min-width: 1024px) {
  .mid-center-aligned header#main-visual .mole .cules2 img {
    width: 100%;
  }
}

.scroll-wrap {
  display: flex;
  justify-content: center;
  position: relative;
  bottom: 0px;
  flex-direction: row;
  flex-wrap: nowrap;
  left: 0rem;
  padding: 50px 0 20px;
}
@media screen and (min-width: 1024px) {
  .scroll-wrap {
    padding: 80px 0 50px;
  }
}

.scroll-down {
  bottom: 8px;
  left: 0px;
  transform: translateX(-50%);
  width: 1.5px;
  border-radius: 25px;
  height: 65px;
  opacity: 1;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .scroll-down {
    height: 100px;
  }
}

.scroll-down:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #61462a;
  height: 100%;
  width: 100%;
  animation: scrolling 2.5s infinite cubic-bezier(0.645, 0.045, 0.355, 1);
}

.scroll-down-short {
  bottom: 8px;
  left: 0px;
  transform: translateX(-50%);
  width: 1.5px;
  border-radius: 25px;
  height: 45px;
  opacity: 1;
  overflow: hidden;
}
@media screen and (min-width: 1024px) {
  .scroll-down-short {
    height: 65px;
  }
}

.scroll-down-short:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #ffffff;
  height: 100%;
  width: 100%;
  animation: scrolling 2.5s infinite cubic-bezier(0.645, 0.045, 0.355, 1);
}

@keyframes scrolling {
  0% {
    transform: translateY(-100%);
  }
  70% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(100%);
  }
}
footer#footer {
  padding: 30px 0 0px;
}
footer#footer .full-line .footer-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px 10px 0;
}
footer#footer .full-line .footer-wrap .logo-wrap {
  padding-top: 45px;
  position: relative;
  left: 0;
  right: 0;
  margin: auto;
  width: 70%;
  text-align: center;
}
footer#footer .full-line .footer-wrap .logo-wrap img.comp-logo {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  footer#footer .full-line .footer-wrap .logo-wrap img.comp-logo {
    width: 25%;
  }
}
footer#footer .full-line .footer-wrap .f-add p {
  color: #38617a;
  font-size: 1rem;
  text-align: center;
  line-height: 2;
  font-weight: 100;
}
footer#footer .full-line .footer-wrap .f-con p {
  color: #38617a;
  font-size: 2rem;
  font-weight: 100;
}
@media screen and (max-width: 860px) {
  footer#footer .full-line .footer-wrap .f-con p .teltext {
    display: none;
  }
}
footer#footer .full-line .footer-wrap .f-con p .tel {
  font-weight: 600;
}
footer#footer .full-line .footer-wrap .menu-wrap {
  display: flex;
  justify-content: center;
  width: 100%;
  border-top: none;
  padding: 0;
  margin: 45px 0;
  z-index: 2;
  position: relative;
}
footer#footer .full-line .footer-wrap .menu-wrap .menu-nav {
  display: flex;
  justify-content: space-between;
  width: 80%;
  position: relative;
  left: 0;
  right: 0;
  margin: auto;
  flex-direction: column;
  align-items: center;
}
footer#footer .full-line .footer-wrap .menu-wrap .menu-nav p {
  color: #38617a;
  font-size: 1.3rem;
  transition: 0.3s;
  font-weight: 100;
}
footer#footer .full-line .footer-wrap .menu-wrap .menu-nav p:hover {
  opacity: 0.8;
}
@media screen and (min-width: 1024px) {
  footer#footer .full-line .footer-wrap .menu-wrap {
    z-index: 9600;
  }
  footer#footer .full-line .footer-wrap .menu-wrap .menu-nav {
    flex-direction: row;
  }
}
footer#footer .copyright {
  display: flex;
  justify-content: center;
  padding: 20px 0;
  background-color: #cccccc;
  margin-bottom: 0;
}
footer#footer .copyright p {
  color: #fff;
  font-size: 1rem;
  font-weight: 100;
  margin: 0;
}
@media screen and (max-width: 470px) {
  footer#footer .copyright {
    margin-bottom: 16vw;
  }
}
footer#footer ul.fixed-btn {
  position: fixed;
  right: 1vw;
  bottom: 1vw;
  z-index: 9600;
}
@media screen and (max-width: 470px) {
  footer#footer ul.fixed-btn {
    right: 0;
    left: 0;
    margin: auto;
    width: 100%;
    padding: 0;
  }
}
footer#footer ul.fixed-btn .dif {
  background-color: #f97d2d;
  opacity: 0.8;
  transition: 0.5s;
}
footer#footer ul.fixed-btn .dif:hover {
  opacity: 1;
  transition: 0.5s;
}
footer#footer ul.fixed-btn li {
  list-style-type: none;
  display: inline-flex;
  padding: 10px;
  border-radius: 50px;
  margin: 0;
  justify-content: space-evenly;
  align-items: center;
  background-color: #599ed3;
  opacity: 0.8;
  transition: 0.5s;
  border: 1px solid #fff;
}
@media screen and (max-width: 470px) {
  footer#footer ul.fixed-btn li {
    width: 49%;
  }
}
footer#footer ul.fixed-btn li:hover {
  opacity: 1;
  transition: 0.5s;
}
footer#footer ul.fixed-btn li span {
  width: 30%;
}
footer#footer ul.fixed-btn li span img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 470px) {
  footer#footer ul.fixed-btn li span {
    width: 18%;
  }
}
footer#footer ul.fixed-btn li p {
  margin: 0;
  color: #fff;
  letter-spacing: 0.5rem;
  font-size: 1.5rem;
  font-weight: 400;
  display: none;
}
@media screen and (min-width: 1024px) {
  footer#footer ul.fixed-btn li {
    margin: 10px;
  }
  footer#footer ul.fixed-btn li span {
    width: 10%;
  }
  footer#footer ul.fixed-btn li p {
    display: block;
  }
}
@media screen and (min-width: 1024px) {
  footer#footer .full-line .footer-wrapper {
    padding: 30px 40px 0;
  }
  footer#footer .full-line .footer-wrapper .f-add p {
    line-height: auto;
    font-size: 1.5rem;
  }
  footer#footer .full-line .footer-wrapper .f-con p::before {
    top: 8px;
  }
  footer#footer .full-line .menu-wrap {
    justify-content: space-between;
  }
  footer#footer .full-line .menu-wrap .menu-nav {
    display: flex;
    padding: 30px 15px 0 0;
  }
  footer#footer .full-line .menu-wrap .policy {
    padding: 30px 0 0;
  }
}

.wpcf7-form.sent .wpcf7-response-output {
  text-align: center;
  margin-top: 30px;
  font-size: 1.3rem;
  color: #4F8A10;
  border: 0;
  padding: 10px;
}

.wpcf7-form.invalid .wpcf7-response-output {
  text-align: center;
  margin-top: 30px;
  font-size: 1.3rem;
  color: #D8000C;
  border: 0;
  padding: 10px;
}

.wpcf7-form.sent .wpcf7-response-output:before {
  content: "\f00c";
  font-family: FontAwesome;
  padding-right: 8px;
}

.wpcf7-form.invalid .wpcf7-response-output:before {
  content: "\f00d";
  font-family: FontAwesome;
  padding-right: 8px;
}

.mid-center-aligned {
  position: relative;
  overflow: hidden;
}
.mid-center-aligned .leaf-group {
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 1;
  transform: scale(1);
}
@media screen and (min-width: 1024px) {
  .mid-center-aligned .leaf-group {
    transform: scale(1.2);
  }
}
.mid-center-aligned .leaf-group .leaf {
  position: absolute;
}
.mid-center-aligned .leaf-group .leaf:nth-child(1) {
  bottom: 5%;
  width: 80px;
  animation: blowing 12s 1s linear infinite;
}
.mid-center-aligned .leaf-group .leaf:nth-child(2) {
  bottom: 10vh;
  width: 65px;
  animation: blowing 6s linear infinite;
}
.mid-center-aligned .leaf-group .leaf:nth-child(3) {
  bottom: 0vh;
  width: 70px;
  animation: blowing 9s 3s linear infinite;
}
.mid-center-aligned .leaf-group .leaf:nth-child(4) {
  bottom: 5vh;
  width: 50px;
  animation: blowing 8s linear infinite;
}
@keyframes blowing {
  0% {
    transform: translate(0, 0) rotate(0);
  }
  20% {
    transform: translate(15vw, -10vh) rotate(170deg);
  }
  65% {
    transform: translate(55vw, -12vh) rotate(550deg);
  }
  80% {
    transform: translate(70vw, -17vh) rotate(740deg);
  }
  100% {
    transform: translate(100vw, -25vh) rotate(920deg);
  }
}

section#invitation {
  height: 100vh;
  position: relative;
  overflow: hidden;
  transition: background-color 1s ease, opacity 1s ease;
  background-color: #000000;
}
section#invitation button#enterButton {
  background-color: transparent;
  border: none;
  z-index: 10;
  color: #f89406;
}
section#invitation .hidden {
  display: none;
}
section#invitation .fade-out {
  opacity: 0;
}
section#invitation .zoom-in {
  transform: scale(1.5);
}
section#invitation .forest-container {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  width: 100%;
  margin: 0 auto;
  height: 100%;
  overflow: hidden;
}
section#invitation .forest-container .layer {
  width: -moz-fit-content;
  width: fit-content;
  height: 150%;
  left: 50%;
  top: 50%;
  pointer-events: none;
  transition: transform 1.5s, opacity 1.5s;
  opacity: 1;
  position: absolute; /* or relative based on your layout */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* Center the elements */
}
section#invitation .forest-container .layer:nth-child(8) {
  z-index: 2;
}
@media screen and (min-width: 1024px) {
  section#invitation .forest-container .layer {
    width: 200%;
  }
}
section#invitation .container {
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 520px) {
  section#invitation .container {
    padding-left: 0;
    padding-right: 0;
  }
}
section#invitation .container .letter-glow {
  position: relative;
  z-index: 2;
  /* Animate each span with a staggered fade-in effect */
}
section#invitation .container .letter-glow p {
  font-family: "Henny Penny", system-ui;
  font-weight: 400;
  font-style: normal;
  display: block;
  text-align: center;
  letter-spacing: 0.1vw;
  font-size: 1.2vw;
  color: #fcfadf;
  text-shadow: #FC0 1px 0 10px;
  animation: scale 3s forwards cubic-bezier(0.5, 1, 0.89, 1);
  line-height: normal;
  /*text-shadow: 
    0 0 2px $light,
    0 0 4px $light,
    0 0 6px $glow,
    0 0 8px $glow,
    0 0 10px $glow,
    0 0 12px $glow;
    */
  /*
  @keyframes blink {
      0%   {}
      100% { 
        text-shadow: 
          0 0 2px $light,
          0 0 10px $light,
          0 0 20px $light,
          0 0 40px $glow,
          0 0 70px $glow,
          0 0 80px $glow;
      }
  }
      */
}
@media screen and (max-width: 520px) {
  section#invitation .container .letter-glow p {
    letter-spacing: normal;
    font-size: 4vw;
  }
}
section#invitation .container .letter-glow p .forest {
  font-family: "Bonbon", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 2.5rem;
}
@media screen and (max-width: 520px) {
  section#invitation .container .letter-glow p .forest {
    font-size: 6vw;
  }
}
section#invitation .container .letter-glow p .creature {
  font-family: "Flavors", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 2.3rem;
}
@media screen and (max-width: 520px) {
  section#invitation .container .letter-glow p .creature {
    font-size: 2rem;
  }
}
section#invitation .container .letter-glow p .twinkling {
  font-family: "Puppies Play", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 4rem;
}
@media screen and (max-width: 520px) {
  section#invitation .container .letter-glow p .twinkling {
    font-size: 11vw;
  }
}
section#invitation .container .letter-glow p .name {
  font-family: "Fleur De Leah", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 4rem;
  z-index: 1;
  position: relative;
}
@media screen and (max-width: 520px) {
  section#invitation .container .letter-glow p .name {
    font-size: 10vw;
  }
}
@keyframes fade-in {
  100% {
    opacity: 1;
    filter: blur(0);
  }
}
section#invitation .container .letter-glow span {
  display: inline-block;
  opacity: 0;
  filter: blur(4px);
  padding: 0 12px;
  background-color: rgba(0, 0, 0, 0.7882352941);
}
section#invitation .container .letter-glow span:nth-child(1) {
  animation: fade-in 1.485s 5s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(2) {
  animation: fade-in 1.485s 6.188s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(3) {
  animation: fade-in 1.485s 7.376s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(4) {
  animation: fade-in 1.485s 8.564s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(5) {
  animation: fade-in 1.485s 9.752s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(6) {
  animation: fade-in 1.485s 10.94s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(7) {
  animation: fade-in 1.485s 12.128s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(8) {
  animation: fade-in 1.485s 13.316s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(9) {
  animation: fade-in 1.485s 14.504s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(10) {
  animation: fade-in 1.485s 15.692s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(11) {
  animation: fade-in 1.485s 16.88s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(12) {
  animation: fade-in 1.485s 18.068s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(13) {
  animation: fade-in 1.485s 19.256s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(14) {
  animation: fade-in 1.485s 20.444s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(15) {
  animation: fade-in 1.485s 21.632s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(16) {
  animation: fade-in 1.485s 22.82s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(17) {
  animation: fade-in 1.485s 24.008s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(18) {
  animation: fade-in 1.485s 25.196s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(19) {
  animation: fade-in 1.485s 26.384s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(20) {
  animation: fade-in 1.485s 27.572s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(21) {
  animation: fade-in 1.485s 28.76s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(22) {
  animation: fade-in 1.485s 29.948s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(23) {
  animation: fade-in 1.485s 31.136s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(24) {
  animation: fade-in 1.485s 32.324s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(25) {
  animation: fade-in 1.485s 33.512s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(26) {
  animation: fade-in 1.485s 34.7s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(27) {
  animation: fade-in 1.485s 35.888s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(28) {
  animation: fade-in 1.485s 37.076s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(29) {
  animation: fade-in 1.485s 38.264s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(30) {
  animation: fade-in 1.485s 39.452s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(31) {
  animation: fade-in 1.485s 40.64s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(32) {
  animation: fade-in 1.485s 41.828s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(33) {
  animation: fade-in 1.485s 43.016s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(34) {
  animation: fade-in 1.485s 44.204s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(35) {
  animation: fade-in 1.485s 45.392s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(36) {
  animation: fade-in 1.485s 46.58s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(37) {
  animation: fade-in 1.485s 47.768s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(38) {
  animation: fade-in 1.485s 48.956s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(39) {
  animation: fade-in 1.485s 50.144s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(40) {
  animation: fade-in 1.485s 51.332s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(41) {
  animation: fade-in 1.485s 52.52s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
section#invitation .container .letter-glow span:nth-child(42) {
  animation: fade-in 1.485s 53.708s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
@keyframes fade-in {
  100% {
    opacity: 1;
    filter: blur(0);
  }
}
@keyframes fade-in-zoom {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes twinkle {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes shake {
  0% {
    transform: translate(0);
  }
  25% {
    transform: translate(-5px, 0);
  }
  50% {
    transform: translate(5px, 0);
  }
  75% {
    transform: translate(-5px, 0);
  }
  100% {
    transform: translate(0);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  60% {
    transform: translateY(-10px);
  }
}
section#invitation .firefly {
  z-index: 10;
  position: absolute;
  right: 50%;
  top: 50%;
  width: 2vw;
  height: 2vw;
  margin: -0.2vw 0 0 9.8vw;
  animation: ease 200s alternate infinite;
  pointer-events: none;
}
@media screen and (min-width: 1024px) {
  section#invitation .firefly {
    width: 0.6vw;
    height: 0.6vw;
  }
}
section#invitation .firefly::before, section#invitation .firefly::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  transform-origin: -10vw;
}
section#invitation .firefly::before {
  background: transparent;
  opacity: 0.2;
  animation: drift ease alternate infinite;
}
section#invitation .firefly::after {
  background: rgb(255, 255, 255);
  opacity: 0;
  animation: drift ease alternate infinite;
}
section#invitation .firefly:nth-child(1) {
  animation-name: move1;
}
section#invitation .firefly:nth-child(1)::after {
  animation-duration: 11s, 9197ms;
  animation-delay: 0ms, 8028ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash1 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(1) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(1)::after {
  animation-name: flash1;
}
@keyframes move1 {
  0% {
    transform: translateX(45vw) translateY(17vh) scale(0.35);
  }
  5.5555555556% {
    transform: translateX(24vw) translateY(24vh) scale(0.94);
  }
  11.1111111111% {
    transform: translateX(-4vw) translateY(-25vh) scale(0.56);
  }
  16.6666666667% {
    transform: translateX(-25vw) translateY(-13vh) scale(0.99);
  }
  22.2222222222% {
    transform: translateX(-6vw) translateY(36vh) scale(0.3);
  }
  27.7777777778% {
    transform: translateX(15vw) translateY(-28vh) scale(0.6);
  }
  33.3333333333% {
    transform: translateX(-6vw) translateY(-18vh) scale(0.93);
  }
  38.8888888889% {
    transform: translateX(-23vw) translateY(36vh) scale(0.99);
  }
  44.4444444444% {
    transform: translateX(27vw) translateY(-31vh) scale(0.27);
  }
  50% {
    transform: translateX(23vw) translateY(50vh) scale(0.5);
  }
  55.5555555556% {
    transform: translateX(22vw) translateY(18vh) scale(0.57);
  }
  61.1111111111% {
    transform: translateX(37vw) translateY(-4vh) scale(0.28);
  }
  66.6666666667% {
    transform: translateX(23vw) translateY(12vh) scale(0.27);
  }
  72.2222222222% {
    transform: translateX(36vw) translateY(25vh) scale(0.72);
  }
  77.7777777778% {
    transform: translateX(-13vw) translateY(44vh) scale(0.69);
  }
  83.3333333333% {
    transform: translateX(-10vw) translateY(-19vh) scale(0.56);
  }
  88.8888888889% {
    transform: translateX(-6vw) translateY(50vh) scale(0.52);
  }
  94.4444444444% {
    transform: translateX(18vw) translateY(1vh) scale(0.49);
  }
  100% {
    transform: translateX(10vw) translateY(9vh) scale(0.7);
  }
}
section#invitation .firefly:nth-child(2) {
  animation-name: move2;
}
section#invitation .firefly:nth-child(2)::after {
  animation-duration: 14s, 6382ms;
  animation-delay: 0ms, 4390ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash2 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(2) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(2)::after {
  animation-name: flash2;
}
@keyframes move2 {
  0% {
    transform: translateX(13vw) translateY(-21vh) scale(0.99);
  }
  3.8461538462% {
    transform: translateX(26vw) translateY(-37vh) scale(0.58);
  }
  7.6923076923% {
    transform: translateX(-44vw) translateY(24vh) scale(0.74);
  }
  11.5384615385% {
    transform: translateX(-37vw) translateY(-4vh) scale(0.94);
  }
  15.3846153846% {
    transform: translateX(7vw) translateY(-4vh) scale(0.36);
  }
  19.2307692308% {
    transform: translateX(-16vw) translateY(-40vh) scale(0.31);
  }
  23.0769230769% {
    transform: translateX(-13vw) translateY(14vh) scale(0.56);
  }
  26.9230769231% {
    transform: translateX(-39vw) translateY(-5vh) scale(0.85);
  }
  30.7692307692% {
    transform: translateX(30vw) translateY(-5vh) scale(0.53);
  }
  34.6153846154% {
    transform: translateX(23vw) translateY(30vh) scale(0.84);
  }
  38.4615384615% {
    transform: translateX(-28vw) translateY(23vh) scale(0.44);
  }
  42.3076923077% {
    transform: translateX(37vw) translateY(-20vh) scale(0.71);
  }
  46.1538461538% {
    transform: translateX(-40vw) translateY(34vh) scale(0.97);
  }
  50% {
    transform: translateX(38vw) translateY(32vh) scale(0.54);
  }
  53.8461538462% {
    transform: translateX(-49vw) translateY(-24vh) scale(0.47);
  }
  57.6923076923% {
    transform: translateX(-4vw) translateY(-30vh) scale(0.89);
  }
  61.5384615385% {
    transform: translateX(-1vw) translateY(18vh) scale(0.36);
  }
  65.3846153846% {
    transform: translateX(-45vw) translateY(-22vh) scale(0.27);
  }
  69.2307692308% {
    transform: translateX(38vw) translateY(29vh) scale(0.86);
  }
  73.0769230769% {
    transform: translateX(8vw) translateY(9vh) scale(0.87);
  }
  76.9230769231% {
    transform: translateX(50vw) translateY(29vh) scale(0.86);
  }
  80.7692307692% {
    transform: translateX(36vw) translateY(39vh) scale(0.71);
  }
  84.6153846154% {
    transform: translateX(26vw) translateY(-21vh) scale(0.28);
  }
  88.4615384615% {
    transform: translateX(24vw) translateY(4vh) scale(0.36);
  }
  92.3076923077% {
    transform: translateX(-19vw) translateY(-49vh) scale(0.62);
  }
  96.1538461538% {
    transform: translateX(-12vw) translateY(32vh) scale(0.71);
  }
  100% {
    transform: translateX(23vw) translateY(30vh) scale(0.96);
  }
}
section#invitation .firefly:nth-child(3) {
  animation-name: move3;
}
section#invitation .firefly:nth-child(3)::after {
  animation-duration: 13s, 6234ms;
  animation-delay: 0ms, 1197ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash3 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(3) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(3)::after {
  animation-name: flash3;
}
@keyframes move3 {
  0% {
    transform: translateX(18vw) translateY(4vh) scale(0.38);
  }
  3.8461538462% {
    transform: translateX(12vw) translateY(50vh) scale(0.65);
  }
  7.6923076923% {
    transform: translateX(-13vw) translateY(24vh) scale(0.89);
  }
  11.5384615385% {
    transform: translateX(30vw) translateY(35vh) scale(0.97);
  }
  15.3846153846% {
    transform: translateX(-13vw) translateY(-33vh) scale(0.35);
  }
  19.2307692308% {
    transform: translateX(-8vw) translateY(11vh) scale(0.89);
  }
  23.0769230769% {
    transform: translateX(40vw) translateY(22vh) scale(0.78);
  }
  26.9230769231% {
    transform: translateX(-14vw) translateY(41vh) scale(0.32);
  }
  30.7692307692% {
    transform: translateX(-42vw) translateY(-39vh) scale(0.51);
  }
  34.6153846154% {
    transform: translateX(49vw) translateY(-46vh) scale(0.51);
  }
  38.4615384615% {
    transform: translateX(19vw) translateY(42vh) scale(0.66);
  }
  42.3076923077% {
    transform: translateX(41vw) translateY(-8vh) scale(0.44);
  }
  46.1538461538% {
    transform: translateX(40vw) translateY(29vh) scale(0.66);
  }
  50% {
    transform: translateX(-11vw) translateY(35vh) scale(0.37);
  }
  53.8461538462% {
    transform: translateX(-42vw) translateY(38vh) scale(0.7);
  }
  57.6923076923% {
    transform: translateX(39vw) translateY(41vh) scale(0.82);
  }
  61.5384615385% {
    transform: translateX(9vw) translateY(42vh) scale(0.83);
  }
  65.3846153846% {
    transform: translateX(45vw) translateY(-42vh) scale(0.44);
  }
  69.2307692308% {
    transform: translateX(-14vw) translateY(25vh) scale(0.28);
  }
  73.0769230769% {
    transform: translateX(8vw) translateY(38vh) scale(0.86);
  }
  76.9230769231% {
    transform: translateX(27vw) translateY(20vh) scale(0.78);
  }
  80.7692307692% {
    transform: translateX(39vw) translateY(-18vh) scale(0.26);
  }
  84.6153846154% {
    transform: translateX(-41vw) translateY(44vh) scale(0.56);
  }
  88.4615384615% {
    transform: translateX(-38vw) translateY(-13vh) scale(0.37);
  }
  92.3076923077% {
    transform: translateX(-39vw) translateY(-17vh) scale(0.45);
  }
  96.1538461538% {
    transform: translateX(28vw) translateY(-20vh) scale(0.33);
  }
  100% {
    transform: translateX(30vw) translateY(45vh) scale(0.87);
  }
}
section#invitation .firefly:nth-child(4) {
  animation-name: move4;
}
section#invitation .firefly:nth-child(4)::after {
  animation-duration: 12s, 8248ms;
  animation-delay: 0ms, 4549ms;
  box-shadow: 0 0 0 0 rgb(255, 123, 0);
}
@keyframes flash4 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(255, 123, 0);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(4) {
        box-shadow: 0 0 2vw 0.6vw rgb(255, 123, 0);
      }
    }
  }
}
section#invitation .firefly:nth-child(4)::after {
  animation-name: flash4;
}
@keyframes move4 {
  0% {
    transform: translateX(33vw) translateY(-19vh) scale(0.51);
  }
  3.7037037037% {
    transform: translateX(-31vw) translateY(-41vh) scale(0.3);
  }
  7.4074074074% {
    transform: translateX(-32vw) translateY(-17vh) scale(0.3);
  }
  11.1111111111% {
    transform: translateX(-27vw) translateY(-27vh) scale(0.91);
  }
  14.8148148148% {
    transform: translateX(47vw) translateY(-9vh) scale(0.27);
  }
  18.5185185185% {
    transform: translateX(-9vw) translateY(-28vh) scale(0.97);
  }
  22.2222222222% {
    transform: translateX(-10vw) translateY(-43vh) scale(0.66);
  }
  25.9259259259% {
    transform: translateX(33vw) translateY(-7vh) scale(0.53);
  }
  29.6296296296% {
    transform: translateX(-18vw) translateY(-8vh) scale(0.36);
  }
  33.3333333333% {
    transform: translateX(33vw) translateY(21vh) scale(0.64);
  }
  37.037037037% {
    transform: translateX(-30vw) translateY(-3vh) scale(0.28);
  }
  40.7407407407% {
    transform: translateX(-37vw) translateY(-14vh) scale(0.83);
  }
  44.4444444444% {
    transform: translateX(10vw) translateY(12vh) scale(0.62);
  }
  48.1481481481% {
    transform: translateX(-8vw) translateY(-19vh) scale(0.71);
  }
  51.8518518519% {
    transform: translateX(46vw) translateY(-25vh) scale(0.44);
  }
  55.5555555556% {
    transform: translateX(3vw) translateY(-6vh) scale(0.48);
  }
  59.2592592593% {
    transform: translateX(-8vw) translateY(-37vh) scale(0.48);
  }
  62.962962963% {
    transform: translateX(-10vw) translateY(-27vh) scale(0.9);
  }
  66.6666666667% {
    transform: translateX(5vw) translateY(-36vh) scale(0.79);
  }
  70.3703703704% {
    transform: translateX(32vw) translateY(4vh) scale(0.36);
  }
  74.0740740741% {
    transform: translateX(37vw) translateY(26vh) scale(0.99);
  }
  77.7777777778% {
    transform: translateX(-14vw) translateY(13vh) scale(0.73);
  }
  81.4814814815% {
    transform: translateX(40vw) translateY(45vh) scale(0.9);
  }
  85.1851851852% {
    transform: translateX(33vw) translateY(-38vh) scale(0.83);
  }
  88.8888888889% {
    transform: translateX(-43vw) translateY(24vh) scale(0.85);
  }
  92.5925925926% {
    transform: translateX(-47vw) translateY(0vh) scale(0.29);
  }
  96.2962962963% {
    transform: translateX(-41vw) translateY(34vh) scale(0.81);
  }
  100% {
    transform: translateX(-29vw) translateY(24vh) scale(0.72);
  }
}
section#invitation .firefly:nth-child(5) {
  animation-name: move5;
}
section#invitation .firefly:nth-child(5)::after {
  animation-duration: 17s, 10265ms;
  animation-delay: 0ms, 4256ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash5 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(5) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(5)::after {
  animation-name: flash5;
}
@keyframes move5 {
  0% {
    transform: translateX(-12vw) translateY(5vh) scale(0.47);
  }
  5% {
    transform: translateX(-4vw) translateY(1vh) scale(0.26);
  }
  10% {
    transform: translateX(-35vw) translateY(44vh) scale(0.57);
  }
  15% {
    transform: translateX(34vw) translateY(30vh) scale(0.29);
  }
  20% {
    transform: translateX(-16vw) translateY(-13vh) scale(0.38);
  }
  25% {
    transform: translateX(25vw) translateY(29vh) scale(0.33);
  }
  30% {
    transform: translateX(15vw) translateY(-12vh) scale(0.71);
  }
  35% {
    transform: translateX(-45vw) translateY(-39vh) scale(0.69);
  }
  40% {
    transform: translateX(43vw) translateY(-21vh) scale(0.66);
  }
  45% {
    transform: translateX(1vw) translateY(17vh) scale(0.46);
  }
  50% {
    transform: translateX(16vw) translateY(35vh) scale(0.57);
  }
  55% {
    transform: translateX(-39vw) translateY(46vh) scale(0.88);
  }
  60% {
    transform: translateX(-24vw) translateY(23vh) scale(0.79);
  }
  65% {
    transform: translateX(12vw) translateY(0vh) scale(0.64);
  }
  70% {
    transform: translateX(-4vw) translateY(-42vh) scale(0.34);
  }
  75% {
    transform: translateX(-29vw) translateY(-30vh) scale(0.64);
  }
  80% {
    transform: translateX(37vw) translateY(49vh) scale(0.57);
  }
  85% {
    transform: translateX(-47vw) translateY(-26vh) scale(0.29);
  }
  90% {
    transform: translateX(-24vw) translateY(16vh) scale(0.6);
  }
  95% {
    transform: translateX(-12vw) translateY(31vh) scale(0.33);
  }
  100% {
    transform: translateX(-6vw) translateY(-25vh) scale(0.47);
  }
}
section#invitation .firefly:nth-child(6) {
  animation-name: move6;
}
section#invitation .firefly:nth-child(6)::after {
  animation-duration: 16s, 6494ms;
  animation-delay: 0ms, 2960ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash6 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(6) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(6)::after {
  animation-name: flash6;
}
@keyframes move6 {
  0% {
    transform: translateX(-39vw) translateY(-15vh) scale(0.29);
  }
  4.1666666667% {
    transform: translateX(33vw) translateY(-28vh) scale(0.92);
  }
  8.3333333333% {
    transform: translateX(3vw) translateY(49vh) scale(0.88);
  }
  12.5% {
    transform: translateX(13vw) translateY(46vh) scale(0.57);
  }
  16.6666666667% {
    transform: translateX(17vw) translateY(-22vh) scale(0.9);
  }
  20.8333333333% {
    transform: translateX(20vw) translateY(-44vh) scale(0.76);
  }
  25% {
    transform: translateX(36vw) translateY(-3vh) scale(0.76);
  }
  29.1666666667% {
    transform: translateX(37vw) translateY(17vh) scale(0.9);
  }
  33.3333333333% {
    transform: translateX(-49vw) translateY(0vh) scale(0.59);
  }
  37.5% {
    transform: translateX(-22vw) translateY(12vh) scale(0.54);
  }
  41.6666666667% {
    transform: translateX(-26vw) translateY(37vh) scale(0.93);
  }
  45.8333333333% {
    transform: translateX(4vw) translateY(-27vh) scale(0.4);
  }
  50% {
    transform: translateX(11vw) translateY(-21vh) scale(0.73);
  }
  54.1666666667% {
    transform: translateX(27vw) translateY(-28vh) scale(0.79);
  }
  58.3333333333% {
    transform: translateX(40vw) translateY(48vh) scale(0.35);
  }
  62.5% {
    transform: translateX(-38vw) translateY(0vh) scale(0.47);
  }
  66.6666666667% {
    transform: translateX(-21vw) translateY(-42vh) scale(0.73);
  }
  70.8333333333% {
    transform: translateX(45vw) translateY(36vh) scale(0.4);
  }
  75% {
    transform: translateX(50vw) translateY(45vh) scale(0.68);
  }
  79.1666666667% {
    transform: translateX(-25vw) translateY(-10vh) scale(0.94);
  }
  83.3333333333% {
    transform: translateX(24vw) translateY(-22vh) scale(0.62);
  }
  87.5% {
    transform: translateX(-39vw) translateY(-18vh) scale(0.34);
  }
  91.6666666667% {
    transform: translateX(49vw) translateY(-43vh) scale(0.85);
  }
  95.8333333333% {
    transform: translateX(12vw) translateY(-23vh) scale(0.62);
  }
  100% {
    transform: translateX(-38vw) translateY(-32vh) scale(0.63);
  }
}
section#invitation .firefly:nth-child(7) {
  animation-name: move7;
}
section#invitation .firefly:nth-child(7)::after {
  animation-duration: 15s, 7204ms;
  animation-delay: 0ms, 6485ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash7 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(7) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(7)::after {
  animation-name: flash7;
}
@keyframes move7 {
  0% {
    transform: translateX(-47vw) translateY(3vh) scale(0.68);
  }
  4% {
    transform: translateX(-18vw) translateY(-39vh) scale(0.36);
  }
  8% {
    transform: translateX(19vw) translateY(22vh) scale(0.76);
  }
  12% {
    transform: translateX(-28vw) translateY(44vh) scale(0.8);
  }
  16% {
    transform: translateX(30vw) translateY(21vh) scale(0.41);
  }
  20% {
    transform: translateX(29vw) translateY(20vh) scale(0.36);
  }
  24% {
    transform: translateX(17vw) translateY(1vh) scale(0.97);
  }
  28% {
    transform: translateX(11vw) translateY(1vh) scale(0.74);
  }
  32% {
    transform: translateX(17vw) translateY(-24vh) scale(0.57);
  }
  36% {
    transform: translateX(45vw) translateY(-25vh) scale(0.78);
  }
  40% {
    transform: translateX(-27vw) translateY(-40vh) scale(0.43);
  }
  44% {
    transform: translateX(-22vw) translateY(-34vh) scale(0.6);
  }
  48% {
    transform: translateX(-19vw) translateY(0vh) scale(0.34);
  }
  52% {
    transform: translateX(-4vw) translateY(-43vh) scale(0.47);
  }
  56% {
    transform: translateX(-34vw) translateY(-11vh) scale(0.76);
  }
  60% {
    transform: translateX(34vw) translateY(-26vh) scale(0.99);
  }
  64% {
    transform: translateX(17vw) translateY(-13vh) scale(0.89);
  }
  68% {
    transform: translateX(10vw) translateY(-47vh) scale(0.65);
  }
  72% {
    transform: translateX(-33vw) translateY(-25vh) scale(0.82);
  }
  76% {
    transform: translateX(-44vw) translateY(26vh) scale(0.34);
  }
  80% {
    transform: translateX(0vw) translateY(-9vh) scale(0.86);
  }
  84% {
    transform: translateX(34vw) translateY(50vh) scale(0.7);
  }
  88% {
    transform: translateX(-21vw) translateY(42vh) scale(0.35);
  }
  92% {
    transform: translateX(40vw) translateY(2vh) scale(1);
  }
  96% {
    transform: translateX(-9vw) translateY(-9vh) scale(0.68);
  }
  100% {
    transform: translateX(-9vw) translateY(50vh) scale(0.74);
  }
}
section#invitation .firefly:nth-child(8) {
  animation-name: move8;
}
section#invitation .firefly:nth-child(8)::after {
  animation-duration: 10s, 7537ms;
  animation-delay: 0ms, 6685ms;
  box-shadow: 0 0 0 0 purple;
}
@keyframes flash8 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw purple;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(8) {
        box-shadow: 0 0 2vw 0.6vw purple;
      }
    }
  }
}
section#invitation .firefly:nth-child(8)::after {
  animation-name: flash8;
}
@keyframes move8 {
  0% {
    transform: translateX(15vw) translateY(37vh) scale(0.28);
  }
  3.8461538462% {
    transform: translateX(-5vw) translateY(8vh) scale(0.7);
  }
  7.6923076923% {
    transform: translateX(-16vw) translateY(-31vh) scale(0.63);
  }
  11.5384615385% {
    transform: translateX(-6vw) translateY(-37vh) scale(0.41);
  }
  15.3846153846% {
    transform: translateX(20vw) translateY(47vh) scale(0.88);
  }
  19.2307692308% {
    transform: translateX(-47vw) translateY(-36vh) scale(0.51);
  }
  23.0769230769% {
    transform: translateX(-8vw) translateY(-4vh) scale(0.55);
  }
  26.9230769231% {
    transform: translateX(-6vw) translateY(-32vh) scale(0.63);
  }
  30.7692307692% {
    transform: translateX(23vw) translateY(41vh) scale(0.48);
  }
  34.6153846154% {
    transform: translateX(-20vw) translateY(-38vh) scale(0.36);
  }
  38.4615384615% {
    transform: translateX(-18vw) translateY(-4vh) scale(0.65);
  }
  42.3076923077% {
    transform: translateX(-35vw) translateY(42vh) scale(0.7);
  }
  46.1538461538% {
    transform: translateX(40vw) translateY(-23vh) scale(0.48);
  }
  50% {
    transform: translateX(-33vw) translateY(16vh) scale(0.55);
  }
  53.8461538462% {
    transform: translateX(-19vw) translateY(-20vh) scale(0.39);
  }
  57.6923076923% {
    transform: translateX(-18vw) translateY(-44vh) scale(0.76);
  }
  61.5384615385% {
    transform: translateX(15vw) translateY(-22vh) scale(0.88);
  }
  65.3846153846% {
    transform: translateX(31vw) translateY(-8vh) scale(0.77);
  }
  69.2307692308% {
    transform: translateX(29vw) translateY(16vh) scale(0.74);
  }
  73.0769230769% {
    transform: translateX(-46vw) translateY(37vh) scale(0.32);
  }
  76.9230769231% {
    transform: translateX(25vw) translateY(-11vh) scale(0.55);
  }
  80.7692307692% {
    transform: translateX(-19vw) translateY(1vh) scale(0.5);
  }
  84.6153846154% {
    transform: translateX(34vw) translateY(-40vh) scale(0.47);
  }
  88.4615384615% {
    transform: translateX(20vw) translateY(11vh) scale(0.54);
  }
  92.3076923077% {
    transform: translateX(-41vw) translateY(9vh) scale(0.27);
  }
  96.1538461538% {
    transform: translateX(9vw) translateY(-10vh) scale(0.5);
  }
  100% {
    transform: translateX(27vw) translateY(0vh) scale(0.66);
  }
}
section#invitation .firefly:nth-child(9) {
  animation-name: move9;
}
section#invitation .firefly:nth-child(9)::after {
  animation-duration: 11s, 8514ms;
  animation-delay: 0ms, 1552ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash9 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(9) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(9)::after {
  animation-name: flash9;
}
@keyframes move9 {
  0% {
    transform: translateX(14vw) translateY(11vh) scale(0.8);
  }
  4.5454545455% {
    transform: translateX(-4vw) translateY(12vh) scale(0.86);
  }
  9.0909090909% {
    transform: translateX(35vw) translateY(2vh) scale(0.72);
  }
  13.6363636364% {
    transform: translateX(-19vw) translateY(30vh) scale(0.92);
  }
  18.1818181818% {
    transform: translateX(-22vw) translateY(43vh) scale(0.27);
  }
  22.7272727273% {
    transform: translateX(6vw) translateY(-11vh) scale(0.93);
  }
  27.2727272727% {
    transform: translateX(-30vw) translateY(-10vh) scale(0.74);
  }
  31.8181818182% {
    transform: translateX(19vw) translateY(-9vh) scale(0.91);
  }
  36.3636363636% {
    transform: translateX(3vw) translateY(21vh) scale(0.43);
  }
  40.9090909091% {
    transform: translateX(-24vw) translateY(48vh) scale(0.44);
  }
  45.4545454545% {
    transform: translateX(-19vw) translateY(42vh) scale(0.44);
  }
  50% {
    transform: translateX(46vw) translateY(48vh) scale(0.27);
  }
  54.5454545455% {
    transform: translateX(-10vw) translateY(-40vh) scale(0.91);
  }
  59.0909090909% {
    transform: translateX(3vw) translateY(-44vh) scale(0.36);
  }
  63.6363636364% {
    transform: translateX(-48vw) translateY(44vh) scale(0.6);
  }
  68.1818181818% {
    transform: translateX(15vw) translateY(13vh) scale(0.92);
  }
  72.7272727273% {
    transform: translateX(49vw) translateY(47vh) scale(0.75);
  }
  77.2727272727% {
    transform: translateX(42vw) translateY(31vh) scale(0.85);
  }
  81.8181818182% {
    transform: translateX(-10vw) translateY(-40vh) scale(0.3);
  }
  86.3636363636% {
    transform: translateX(-1vw) translateY(-7vh) scale(0.7);
  }
  90.9090909091% {
    transform: translateX(-5vw) translateY(3vh) scale(0.94);
  }
  95.4545454545% {
    transform: translateX(35vw) translateY(-19vh) scale(0.58);
  }
  100% {
    transform: translateX(-39vw) translateY(3vh) scale(0.26);
  }
}
section#invitation .firefly:nth-child(10) {
  animation-name: move10;
}
section#invitation .firefly:nth-child(10)::after {
  animation-duration: 14s, 6525ms;
  animation-delay: 0ms, 6437ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash10 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(10) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(10)::after {
  animation-name: flash10;
}
@keyframes move10 {
  0% {
    transform: translateX(11vw) translateY(24vh) scale(0.64);
  }
  4.7619047619% {
    transform: translateX(-25vw) translateY(-11vh) scale(0.47);
  }
  9.5238095238% {
    transform: translateX(1vw) translateY(-6vh) scale(0.52);
  }
  14.2857142857% {
    transform: translateX(11vw) translateY(44vh) scale(0.57);
  }
  19.0476190476% {
    transform: translateX(-32vw) translateY(43vh) scale(0.27);
  }
  23.8095238095% {
    transform: translateX(17vw) translateY(-8vh) scale(0.47);
  }
  28.5714285714% {
    transform: translateX(-29vw) translateY(-24vh) scale(0.41);
  }
  33.3333333333% {
    transform: translateX(-48vw) translateY(48vh) scale(0.77);
  }
  38.0952380952% {
    transform: translateX(22vw) translateY(50vh) scale(0.89);
  }
  42.8571428571% {
    transform: translateX(29vw) translateY(-11vh) scale(0.5);
  }
  47.619047619% {
    transform: translateX(-19vw) translateY(-46vh) scale(0.6);
  }
  52.380952381% {
    transform: translateX(29vw) translateY(-3vh) scale(0.76);
  }
  57.1428571429% {
    transform: translateX(-32vw) translateY(-49vh) scale(0.86);
  }
  61.9047619048% {
    transform: translateX(-30vw) translateY(21vh) scale(0.59);
  }
  66.6666666667% {
    transform: translateX(-13vw) translateY(41vh) scale(0.64);
  }
  71.4285714286% {
    transform: translateX(-25vw) translateY(-19vh) scale(0.43);
  }
  76.1904761905% {
    transform: translateX(-22vw) translateY(-11vh) scale(0.73);
  }
  80.9523809524% {
    transform: translateX(20vw) translateY(-13vh) scale(0.85);
  }
  85.7142857143% {
    transform: translateX(43vw) translateY(31vh) scale(0.27);
  }
  90.4761904762% {
    transform: translateX(1vw) translateY(-38vh) scale(0.38);
  }
  95.2380952381% {
    transform: translateX(28vw) translateY(50vh) scale(0.83);
  }
  100% {
    transform: translateX(-46vw) translateY(10vh) scale(0.27);
  }
}
section#invitation .firefly:nth-child(11) {
  animation-name: move11;
}
section#invitation .firefly:nth-child(11)::after {
  animation-duration: 10s, 6231ms;
  animation-delay: 0ms, 8336ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash11 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(11) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(11)::after {
  animation-name: flash11;
}
@keyframes move11 {
  0% {
    transform: translateX(-30vw) translateY(30vh) scale(0.83);
  }
  4.7619047619% {
    transform: translateX(42vw) translateY(27vh) scale(0.72);
  }
  9.5238095238% {
    transform: translateX(19vw) translateY(17vh) scale(0.57);
  }
  14.2857142857% {
    transform: translateX(26vw) translateY(11vh) scale(0.29);
  }
  19.0476190476% {
    transform: translateX(-25vw) translateY(-48vh) scale(0.37);
  }
  23.8095238095% {
    transform: translateX(-17vw) translateY(25vh) scale(0.44);
  }
  28.5714285714% {
    transform: translateX(-34vw) translateY(-28vh) scale(0.83);
  }
  33.3333333333% {
    transform: translateX(-7vw) translateY(-10vh) scale(0.42);
  }
  38.0952380952% {
    transform: translateX(40vw) translateY(-37vh) scale(0.56);
  }
  42.8571428571% {
    transform: translateX(26vw) translateY(-26vh) scale(0.9);
  }
  47.619047619% {
    transform: translateX(-25vw) translateY(20vh) scale(0.3);
  }
  52.380952381% {
    transform: translateX(22vw) translateY(-31vh) scale(0.95);
  }
  57.1428571429% {
    transform: translateX(45vw) translateY(31vh) scale(0.27);
  }
  61.9047619048% {
    transform: translateX(0vw) translateY(-32vh) scale(0.38);
  }
  66.6666666667% {
    transform: translateX(-3vw) translateY(1vh) scale(0.53);
  }
  71.4285714286% {
    transform: translateX(25vw) translateY(31vh) scale(0.48);
  }
  76.1904761905% {
    transform: translateX(49vw) translateY(18vh) scale(0.6);
  }
  80.9523809524% {
    transform: translateX(42vw) translateY(-11vh) scale(0.9);
  }
  85.7142857143% {
    transform: translateX(-40vw) translateY(30vh) scale(0.62);
  }
  90.4761904762% {
    transform: translateX(-18vw) translateY(-33vh) scale(0.36);
  }
  95.2380952381% {
    transform: translateX(-42vw) translateY(30vh) scale(0.85);
  }
  100% {
    transform: translateX(-33vw) translateY(26vh) scale(0.6);
  }
}
section#invitation .firefly:nth-child(12) {
  animation-name: move12;
}
section#invitation .firefly:nth-child(12)::after {
  animation-duration: 10s, 6316ms;
  animation-delay: 0ms, 2834ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash12 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(12) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(12)::after {
  animation-name: flash12;
}
@keyframes move12 {
  0% {
    transform: translateX(-24vw) translateY(-9vh) scale(0.43);
  }
  4.5454545455% {
    transform: translateX(48vw) translateY(-21vh) scale(0.92);
  }
  9.0909090909% {
    transform: translateX(-29vw) translateY(40vh) scale(0.72);
  }
  13.6363636364% {
    transform: translateX(13vw) translateY(-49vh) scale(0.49);
  }
  18.1818181818% {
    transform: translateX(12vw) translateY(-4vh) scale(0.28);
  }
  22.7272727273% {
    transform: translateX(-17vw) translateY(-13vh) scale(0.46);
  }
  27.2727272727% {
    transform: translateX(36vw) translateY(-1vh) scale(0.76);
  }
  31.8181818182% {
    transform: translateX(-12vw) translateY(46vh) scale(0.31);
  }
  36.3636363636% {
    transform: translateX(-22vw) translateY(-46vh) scale(0.88);
  }
  40.9090909091% {
    transform: translateX(42vw) translateY(17vh) scale(0.63);
  }
  45.4545454545% {
    transform: translateX(-28vw) translateY(7vh) scale(0.35);
  }
  50% {
    transform: translateX(-27vw) translateY(33vh) scale(0.62);
  }
  54.5454545455% {
    transform: translateX(-44vw) translateY(11vh) scale(0.31);
  }
  59.0909090909% {
    transform: translateX(39vw) translateY(3vh) scale(0.64);
  }
  63.6363636364% {
    transform: translateX(30vw) translateY(-26vh) scale(0.55);
  }
  68.1818181818% {
    transform: translateX(14vw) translateY(48vh) scale(0.37);
  }
  72.7272727273% {
    transform: translateX(-39vw) translateY(-30vh) scale(0.94);
  }
  77.2727272727% {
    transform: translateX(18vw) translateY(0vh) scale(0.73);
  }
  81.8181818182% {
    transform: translateX(40vw) translateY(-23vh) scale(0.98);
  }
  86.3636363636% {
    transform: translateX(-36vw) translateY(10vh) scale(0.27);
  }
  90.9090909091% {
    transform: translateX(-7vw) translateY(-46vh) scale(0.53);
  }
  95.4545454545% {
    transform: translateX(-28vw) translateY(16vh) scale(0.58);
  }
  100% {
    transform: translateX(-5vw) translateY(44vh) scale(0.95);
  }
}
section#invitation .firefly:nth-child(13) {
  animation-name: move13;
}
section#invitation .firefly:nth-child(13)::after {
  animation-duration: 10s, 9749ms;
  animation-delay: 0ms, 6218ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash13 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(13) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(13)::after {
  animation-name: flash13;
}
@keyframes move13 {
  0% {
    transform: translateX(-4vw) translateY(22vh) scale(0.61);
  }
  3.8461538462% {
    transform: translateX(-7vw) translateY(-47vh) scale(0.9);
  }
  7.6923076923% {
    transform: translateX(30vw) translateY(-40vh) scale(0.53);
  }
  11.5384615385% {
    transform: translateX(20vw) translateY(40vh) scale(0.55);
  }
  15.3846153846% {
    transform: translateX(26vw) translateY(32vh) scale(0.3);
  }
  19.2307692308% {
    transform: translateX(26vw) translateY(2vh) scale(0.47);
  }
  23.0769230769% {
    transform: translateX(-9vw) translateY(-13vh) scale(0.83);
  }
  26.9230769231% {
    transform: translateX(5vw) translateY(2vh) scale(0.29);
  }
  30.7692307692% {
    transform: translateX(31vw) translateY(-17vh) scale(0.63);
  }
  34.6153846154% {
    transform: translateX(49vw) translateY(26vh) scale(0.4);
  }
  38.4615384615% {
    transform: translateX(-38vw) translateY(-10vh) scale(0.79);
  }
  42.3076923077% {
    transform: translateX(2vw) translateY(36vh) scale(0.76);
  }
  46.1538461538% {
    transform: translateX(-23vw) translateY(37vh) scale(0.59);
  }
  50% {
    transform: translateX(47vw) translateY(26vh) scale(0.59);
  }
  53.8461538462% {
    transform: translateX(13vw) translateY(-14vh) scale(0.67);
  }
  57.6923076923% {
    transform: translateX(17vw) translateY(43vh) scale(0.64);
  }
  61.5384615385% {
    transform: translateX(-10vw) translateY(-28vh) scale(0.7);
  }
  65.3846153846% {
    transform: translateX(-44vw) translateY(-46vh) scale(0.47);
  }
  69.2307692308% {
    transform: translateX(-30vw) translateY(23vh) scale(0.99);
  }
  73.0769230769% {
    transform: translateX(14vw) translateY(-9vh) scale(0.83);
  }
  76.9230769231% {
    transform: translateX(20vw) translateY(47vh) scale(1);
  }
  80.7692307692% {
    transform: translateX(47vw) translateY(-46vh) scale(0.86);
  }
  84.6153846154% {
    transform: translateX(24vw) translateY(11vh) scale(0.49);
  }
  88.4615384615% {
    transform: translateX(38vw) translateY(-47vh) scale(0.96);
  }
  92.3076923077% {
    transform: translateX(29vw) translateY(-21vh) scale(0.36);
  }
  96.1538461538% {
    transform: translateX(17vw) translateY(40vh) scale(0.9);
  }
  100% {
    transform: translateX(11vw) translateY(31vh) scale(0.99);
  }
}
section#invitation .firefly:nth-child(14) {
  animation-name: move14;
}
section#invitation .firefly:nth-child(14)::after {
  animation-duration: 15s, 10845ms;
  animation-delay: 0ms, 1316ms;
  box-shadow: 0 0 0 0 purple;
}
@keyframes flash14 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw purple;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(14) {
        box-shadow: 0 0 2vw 0.6vw purple;
      }
    }
  }
}
section#invitation .firefly:nth-child(14)::after {
  animation-name: flash14;
}
@keyframes move14 {
  0% {
    transform: translateX(4vw) translateY(-3vh) scale(0.78);
  }
  5.8823529412% {
    transform: translateX(13vw) translateY(12vh) scale(0.38);
  }
  11.7647058824% {
    transform: translateX(-11vw) translateY(16vh) scale(0.49);
  }
  17.6470588235% {
    transform: translateX(6vw) translateY(21vh) scale(1);
  }
  23.5294117647% {
    transform: translateX(1vw) translateY(-24vh) scale(0.76);
  }
  29.4117647059% {
    transform: translateX(23vw) translateY(-45vh) scale(0.32);
  }
  35.2941176471% {
    transform: translateX(16vw) translateY(-25vh) scale(0.95);
  }
  41.1764705882% {
    transform: translateX(6vw) translateY(9vh) scale(0.96);
  }
  47.0588235294% {
    transform: translateX(38vw) translateY(-28vh) scale(0.52);
  }
  52.9411764706% {
    transform: translateX(-23vw) translateY(20vh) scale(0.72);
  }
  58.8235294118% {
    transform: translateX(8vw) translateY(43vh) scale(0.72);
  }
  64.7058823529% {
    transform: translateX(8vw) translateY(-30vh) scale(0.48);
  }
  70.5882352941% {
    transform: translateX(-10vw) translateY(-47vh) scale(0.32);
  }
  76.4705882353% {
    transform: translateX(11vw) translateY(-12vh) scale(0.55);
  }
  82.3529411765% {
    transform: translateX(27vw) translateY(-13vh) scale(0.33);
  }
  88.2352941176% {
    transform: translateX(-31vw) translateY(23vh) scale(0.88);
  }
  94.1176470588% {
    transform: translateX(-30vw) translateY(38vh) scale(0.89);
  }
  100% {
    transform: translateX(-24vw) translateY(26vh) scale(0.71);
  }
}
section#invitation .firefly:nth-child(15) {
  animation-name: move15;
}
section#invitation .firefly:nth-child(15)::after {
  animation-duration: 12s, 9584ms;
  animation-delay: 0ms, 7916ms;
  box-shadow: 0 0 0 0 rgb(255, 123, 0);
}
@keyframes flash15 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(255, 123, 0);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(15) {
        box-shadow: 0 0 2vw 0.6vw rgb(255, 123, 0);
      }
    }
  }
}
section#invitation .firefly:nth-child(15)::after {
  animation-name: flash15;
}
@keyframes move15 {
  0% {
    transform: translateX(18vw) translateY(-31vh) scale(0.4);
  }
  5.5555555556% {
    transform: translateX(25vw) translateY(-8vh) scale(0.73);
  }
  11.1111111111% {
    transform: translateX(-7vw) translateY(33vh) scale(0.83);
  }
  16.6666666667% {
    transform: translateX(16vw) translateY(-3vh) scale(0.59);
  }
  22.2222222222% {
    transform: translateX(29vw) translateY(-17vh) scale(0.44);
  }
  27.7777777778% {
    transform: translateX(7vw) translateY(24vh) scale(0.53);
  }
  33.3333333333% {
    transform: translateX(-45vw) translateY(35vh) scale(0.65);
  }
  38.8888888889% {
    transform: translateX(50vw) translateY(36vh) scale(0.74);
  }
  44.4444444444% {
    transform: translateX(22vw) translateY(-17vh) scale(0.56);
  }
  50% {
    transform: translateX(-23vw) translateY(14vh) scale(0.34);
  }
  55.5555555556% {
    transform: translateX(44vw) translateY(20vh) scale(0.28);
  }
  61.1111111111% {
    transform: translateX(37vw) translateY(21vh) scale(0.76);
  }
  66.6666666667% {
    transform: translateX(-40vw) translateY(-29vh) scale(0.62);
  }
  72.2222222222% {
    transform: translateX(-1vw) translateY(-22vh) scale(0.31);
  }
  77.7777777778% {
    transform: translateX(46vw) translateY(47vh) scale(0.46);
  }
  83.3333333333% {
    transform: translateX(9vw) translateY(9vh) scale(0.37);
  }
  88.8888888889% {
    transform: translateX(-45vw) translateY(4vh) scale(0.83);
  }
  94.4444444444% {
    transform: translateX(2vw) translateY(4vh) scale(0.58);
  }
  100% {
    transform: translateX(-8vw) translateY(-6vh) scale(0.39);
  }
}
section#invitation .firefly:nth-child(16) {
  animation-name: move16;
}
section#invitation .firefly:nth-child(16)::after {
  animation-duration: 16s, 7962ms;
  animation-delay: 0ms, 4622ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash16 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(16) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(16)::after {
  animation-name: flash16;
}
@keyframes move16 {
  0% {
    transform: translateX(-25vw) translateY(31vh) scale(0.47);
  }
  4.347826087% {
    transform: translateX(26vw) translateY(33vh) scale(0.42);
  }
  8.6956521739% {
    transform: translateX(-38vw) translateY(-7vh) scale(0.92);
  }
  13.0434782609% {
    transform: translateX(31vw) translateY(-43vh) scale(0.59);
  }
  17.3913043478% {
    transform: translateX(-12vw) translateY(-41vh) scale(0.51);
  }
  21.7391304348% {
    transform: translateX(-3vw) translateY(7vh) scale(0.98);
  }
  26.0869565217% {
    transform: translateX(-19vw) translateY(-40vh) scale(0.42);
  }
  30.4347826087% {
    transform: translateX(-23vw) translateY(-3vh) scale(0.98);
  }
  34.7826086957% {
    transform: translateX(-30vw) translateY(-28vh) scale(0.91);
  }
  39.1304347826% {
    transform: translateX(-8vw) translateY(3vh) scale(0.81);
  }
  43.4782608696% {
    transform: translateX(-22vw) translateY(-29vh) scale(0.99);
  }
  47.8260869565% {
    transform: translateX(3vw) translateY(3vh) scale(0.97);
  }
  52.1739130435% {
    transform: translateX(-40vw) translateY(46vh) scale(0.66);
  }
  56.5217391304% {
    transform: translateX(39vw) translateY(42vh) scale(0.53);
  }
  60.8695652174% {
    transform: translateX(43vw) translateY(12vh) scale(0.6);
  }
  65.2173913043% {
    transform: translateX(-15vw) translateY(-29vh) scale(0.54);
  }
  69.5652173913% {
    transform: translateX(20vw) translateY(9vh) scale(0.74);
  }
  73.9130434783% {
    transform: translateX(3vw) translateY(-5vh) scale(0.57);
  }
  78.2608695652% {
    transform: translateX(-6vw) translateY(25vh) scale(0.46);
  }
  82.6086956522% {
    transform: translateX(-10vw) translateY(-47vh) scale(0.6);
  }
  86.9565217391% {
    transform: translateX(43vw) translateY(-5vh) scale(0.77);
  }
  91.3043478261% {
    transform: translateX(5vw) translateY(-16vh) scale(1);
  }
  95.652173913% {
    transform: translateX(44vw) translateY(39vh) scale(0.86);
  }
  100% {
    transform: translateX(-19vw) translateY(-44vh) scale(0.77);
  }
}
section#invitation .firefly:nth-child(17) {
  animation-name: move17;
}
section#invitation .firefly:nth-child(17)::after {
  animation-duration: 14s, 10513ms;
  animation-delay: 0ms, 5764ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash17 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(17) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(17)::after {
  animation-name: flash17;
}
@keyframes move17 {
  0% {
    transform: translateX(-33vw) translateY(-43vh) scale(0.38);
  }
  3.8461538462% {
    transform: translateX(-13vw) translateY(-31vh) scale(0.63);
  }
  7.6923076923% {
    transform: translateX(8vw) translateY(44vh) scale(0.29);
  }
  11.5384615385% {
    transform: translateX(6vw) translateY(37vh) scale(0.82);
  }
  15.3846153846% {
    transform: translateX(-28vw) translateY(-2vh) scale(0.68);
  }
  19.2307692308% {
    transform: translateX(-9vw) translateY(18vh) scale(0.27);
  }
  23.0769230769% {
    transform: translateX(-40vw) translateY(-39vh) scale(0.93);
  }
  26.9230769231% {
    transform: translateX(21vw) translateY(1vh) scale(0.97);
  }
  30.7692307692% {
    transform: translateX(26vw) translateY(-15vh) scale(0.84);
  }
  34.6153846154% {
    transform: translateX(-11vw) translateY(-31vh) scale(0.79);
  }
  38.4615384615% {
    transform: translateX(44vw) translateY(36vh) scale(0.35);
  }
  42.3076923077% {
    transform: translateX(49vw) translateY(-22vh) scale(0.79);
  }
  46.1538461538% {
    transform: translateX(23vw) translateY(-28vh) scale(0.83);
  }
  50% {
    transform: translateX(-27vw) translateY(-38vh) scale(0.62);
  }
  53.8461538462% {
    transform: translateX(-38vw) translateY(-24vh) scale(0.56);
  }
  57.6923076923% {
    transform: translateX(25vw) translateY(27vh) scale(0.46);
  }
  61.5384615385% {
    transform: translateX(9vw) translateY(45vh) scale(0.47);
  }
  65.3846153846% {
    transform: translateX(-26vw) translateY(-47vh) scale(0.93);
  }
  69.2307692308% {
    transform: translateX(-6vw) translateY(-39vh) scale(0.26);
  }
  73.0769230769% {
    transform: translateX(-39vw) translateY(43vh) scale(0.29);
  }
  76.9230769231% {
    transform: translateX(-34vw) translateY(10vh) scale(0.29);
  }
  80.7692307692% {
    transform: translateX(6vw) translateY(-32vh) scale(0.88);
  }
  84.6153846154% {
    transform: translateX(34vw) translateY(-20vh) scale(0.66);
  }
  88.4615384615% {
    transform: translateX(-23vw) translateY(40vh) scale(0.6);
  }
  92.3076923077% {
    transform: translateX(-27vw) translateY(30vh) scale(0.74);
  }
  96.1538461538% {
    transform: translateX(-36vw) translateY(31vh) scale(0.95);
  }
  100% {
    transform: translateX(-44vw) translateY(-18vh) scale(0.32);
  }
}
section#invitation .firefly:nth-child(18) {
  animation-name: move18;
}
section#invitation .firefly:nth-child(18)::after {
  animation-duration: 15s, 9770ms;
  animation-delay: 0ms, 2724ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash18 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(18) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(18)::after {
  animation-name: flash18;
}
@keyframes move18 {
  0% {
    transform: translateX(16vw) translateY(-28vh) scale(0.6);
  }
  4.1666666667% {
    transform: translateX(19vw) translateY(42vh) scale(0.74);
  }
  8.3333333333% {
    transform: translateX(-24vw) translateY(15vh) scale(0.92);
  }
  12.5% {
    transform: translateX(-22vw) translateY(30vh) scale(0.38);
  }
  16.6666666667% {
    transform: translateX(23vw) translateY(32vh) scale(0.94);
  }
  20.8333333333% {
    transform: translateX(-14vw) translateY(-45vh) scale(0.84);
  }
  25% {
    transform: translateX(21vw) translateY(42vh) scale(0.54);
  }
  29.1666666667% {
    transform: translateX(6vw) translateY(-5vh) scale(0.81);
  }
  33.3333333333% {
    transform: translateX(-6vw) translateY(28vh) scale(0.81);
  }
  37.5% {
    transform: translateX(40vw) translateY(2vh) scale(0.35);
  }
  41.6666666667% {
    transform: translateX(11vw) translateY(38vh) scale(0.27);
  }
  45.8333333333% {
    transform: translateX(6vw) translateY(25vh) scale(0.9);
  }
  50% {
    transform: translateX(19vw) translateY(-4vh) scale(0.63);
  }
  54.1666666667% {
    transform: translateX(-31vw) translateY(44vh) scale(0.8);
  }
  58.3333333333% {
    transform: translateX(46vw) translateY(-41vh) scale(0.53);
  }
  62.5% {
    transform: translateX(36vw) translateY(26vh) scale(0.45);
  }
  66.6666666667% {
    transform: translateX(-12vw) translateY(15vh) scale(0.73);
  }
  70.8333333333% {
    transform: translateX(33vw) translateY(-21vh) scale(0.83);
  }
  75% {
    transform: translateX(-46vw) translateY(38vh) scale(0.73);
  }
  79.1666666667% {
    transform: translateX(-16vw) translateY(7vh) scale(0.43);
  }
  83.3333333333% {
    transform: translateX(-31vw) translateY(23vh) scale(0.27);
  }
  87.5% {
    transform: translateX(-4vw) translateY(-41vh) scale(0.61);
  }
  91.6666666667% {
    transform: translateX(37vw) translateY(-4vh) scale(0.57);
  }
  95.8333333333% {
    transform: translateX(28vw) translateY(17vh) scale(0.52);
  }
  100% {
    transform: translateX(29vw) translateY(21vh) scale(0.47);
  }
}
section#invitation .firefly:nth-child(19) {
  animation-name: move19;
}
section#invitation .firefly:nth-child(19)::after {
  animation-duration: 17s, 10780ms;
  animation-delay: 0ms, 2992ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash19 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(19) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(19)::after {
  animation-name: flash19;
}
@keyframes move19 {
  0% {
    transform: translateX(-48vw) translateY(21vh) scale(0.88);
  }
  4.1666666667% {
    transform: translateX(50vw) translateY(-3vh) scale(0.47);
  }
  8.3333333333% {
    transform: translateX(44vw) translateY(-26vh) scale(0.31);
  }
  12.5% {
    transform: translateX(2vw) translateY(29vh) scale(0.82);
  }
  16.6666666667% {
    transform: translateX(30vw) translateY(48vh) scale(0.95);
  }
  20.8333333333% {
    transform: translateX(-23vw) translateY(-3vh) scale(0.36);
  }
  25% {
    transform: translateX(-42vw) translateY(4vh) scale(0.34);
  }
  29.1666666667% {
    transform: translateX(49vw) translateY(-47vh) scale(0.46);
  }
  33.3333333333% {
    transform: translateX(-8vw) translateY(48vh) scale(0.74);
  }
  37.5% {
    transform: translateX(49vw) translateY(8vh) scale(0.96);
  }
  41.6666666667% {
    transform: translateX(-37vw) translateY(-19vh) scale(0.84);
  }
  45.8333333333% {
    transform: translateX(-35vw) translateY(-39vh) scale(0.68);
  }
  50% {
    transform: translateX(15vw) translateY(-31vh) scale(0.71);
  }
  54.1666666667% {
    transform: translateX(-45vw) translateY(29vh) scale(0.42);
  }
  58.3333333333% {
    transform: translateX(24vw) translateY(-41vh) scale(0.31);
  }
  62.5% {
    transform: translateX(-21vw) translateY(4vh) scale(0.26);
  }
  66.6666666667% {
    transform: translateX(49vw) translateY(-21vh) scale(0.54);
  }
  70.8333333333% {
    transform: translateX(3vw) translateY(25vh) scale(0.67);
  }
  75% {
    transform: translateX(-34vw) translateY(-2vh) scale(1);
  }
  79.1666666667% {
    transform: translateX(-42vw) translateY(31vh) scale(0.75);
  }
  83.3333333333% {
    transform: translateX(-2vw) translateY(-41vh) scale(0.64);
  }
  87.5% {
    transform: translateX(-12vw) translateY(-42vh) scale(0.66);
  }
  91.6666666667% {
    transform: translateX(9vw) translateY(41vh) scale(0.38);
  }
  95.8333333333% {
    transform: translateX(17vw) translateY(11vh) scale(0.33);
  }
  100% {
    transform: translateX(-12vw) translateY(3vh) scale(0.52);
  }
}
section#invitation .firefly:nth-child(20) {
  animation-name: move20;
}
section#invitation .firefly:nth-child(20)::after {
  animation-duration: 15s, 6750ms;
  animation-delay: 0ms, 3451ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash20 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(20) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(20)::after {
  animation-name: flash20;
}
@keyframes move20 {
  0% {
    transform: translateX(45vw) translateY(-28vh) scale(0.8);
  }
  3.7037037037% {
    transform: translateX(47vw) translateY(30vh) scale(0.82);
  }
  7.4074074074% {
    transform: translateX(41vw) translateY(31vh) scale(0.95);
  }
  11.1111111111% {
    transform: translateX(-25vw) translateY(-32vh) scale(0.9);
  }
  14.8148148148% {
    transform: translateX(-31vw) translateY(-34vh) scale(0.97);
  }
  18.5185185185% {
    transform: translateX(-31vw) translateY(-41vh) scale(0.5);
  }
  22.2222222222% {
    transform: translateX(-17vw) translateY(37vh) scale(0.55);
  }
  25.9259259259% {
    transform: translateX(2vw) translateY(-8vh) scale(0.43);
  }
  29.6296296296% {
    transform: translateX(7vw) translateY(-8vh) scale(0.49);
  }
  33.3333333333% {
    transform: translateX(-44vw) translateY(-14vh) scale(0.78);
  }
  37.037037037% {
    transform: translateX(-26vw) translateY(-4vh) scale(0.56);
  }
  40.7407407407% {
    transform: translateX(-39vw) translateY(20vh) scale(0.75);
  }
  44.4444444444% {
    transform: translateX(-6vw) translateY(27vh) scale(0.62);
  }
  48.1481481481% {
    transform: translateX(25vw) translateY(-46vh) scale(0.32);
  }
  51.8518518519% {
    transform: translateX(33vw) translateY(-21vh) scale(0.48);
  }
  55.5555555556% {
    transform: translateX(-42vw) translateY(-44vh) scale(0.3);
  }
  59.2592592593% {
    transform: translateX(-32vw) translateY(44vh) scale(0.44);
  }
  62.962962963% {
    transform: translateX(-41vw) translateY(-46vh) scale(0.48);
  }
  66.6666666667% {
    transform: translateX(24vw) translateY(22vh) scale(0.3);
  }
  70.3703703704% {
    transform: translateX(-2vw) translateY(-4vh) scale(0.67);
  }
  74.0740740741% {
    transform: translateX(-39vw) translateY(-12vh) scale(0.61);
  }
  77.7777777778% {
    transform: translateX(31vw) translateY(-28vh) scale(0.31);
  }
  81.4814814815% {
    transform: translateX(-16vw) translateY(-13vh) scale(0.85);
  }
  85.1851851852% {
    transform: translateX(39vw) translateY(33vh) scale(0.7);
  }
  88.8888888889% {
    transform: translateX(-21vw) translateY(-13vh) scale(0.85);
  }
  92.5925925926% {
    transform: translateX(-20vw) translateY(-49vh) scale(0.89);
  }
  96.2962962963% {
    transform: translateX(24vw) translateY(-4vh) scale(0.4);
  }
  100% {
    transform: translateX(13vw) translateY(40vh) scale(0.96);
  }
}
section#invitation .firefly:nth-child(21) {
  animation-name: move21;
}
section#invitation .firefly:nth-child(21)::after {
  animation-duration: 12s, 5717ms;
  animation-delay: 0ms, 7578ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash21 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(21) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(21)::after {
  animation-name: flash21;
}
@keyframes move21 {
  0% {
    transform: translateX(-8vw) translateY(29vh) scale(0.84);
  }
  4.5454545455% {
    transform: translateX(-7vw) translateY(50vh) scale(0.58);
  }
  9.0909090909% {
    transform: translateX(30vw) translateY(43vh) scale(0.9);
  }
  13.6363636364% {
    transform: translateX(40vw) translateY(-34vh) scale(0.33);
  }
  18.1818181818% {
    transform: translateX(-33vw) translateY(44vh) scale(0.43);
  }
  22.7272727273% {
    transform: translateX(-17vw) translateY(-19vh) scale(0.29);
  }
  27.2727272727% {
    transform: translateX(-7vw) translateY(-19vh) scale(0.87);
  }
  31.8181818182% {
    transform: translateX(-23vw) translateY(-30vh) scale(0.3);
  }
  36.3636363636% {
    transform: translateX(-49vw) translateY(-11vh) scale(0.6);
  }
  40.9090909091% {
    transform: translateX(-16vw) translateY(-36vh) scale(0.51);
  }
  45.4545454545% {
    transform: translateX(23vw) translateY(25vh) scale(0.68);
  }
  50% {
    transform: translateX(-12vw) translateY(45vh) scale(0.83);
  }
  54.5454545455% {
    transform: translateX(-27vw) translateY(14vh) scale(0.55);
  }
  59.0909090909% {
    transform: translateX(20vw) translateY(30vh) scale(0.98);
  }
  63.6363636364% {
    transform: translateX(-39vw) translateY(8vh) scale(0.93);
  }
  68.1818181818% {
    transform: translateX(-45vw) translateY(-8vh) scale(0.99);
  }
  72.7272727273% {
    transform: translateX(38vw) translateY(34vh) scale(0.43);
  }
  77.2727272727% {
    transform: translateX(15vw) translateY(12vh) scale(0.35);
  }
  81.8181818182% {
    transform: translateX(-39vw) translateY(-41vh) scale(0.4);
  }
  86.3636363636% {
    transform: translateX(43vw) translateY(42vh) scale(0.3);
  }
  90.9090909091% {
    transform: translateX(27vw) translateY(-3vh) scale(0.33);
  }
  95.4545454545% {
    transform: translateX(34vw) translateY(30vh) scale(0.37);
  }
  100% {
    transform: translateX(8vw) translateY(-12vh) scale(0.71);
  }
}
section#invitation .firefly:nth-child(22) {
  animation-name: move22;
}
section#invitation .firefly:nth-child(22)::after {
  animation-duration: 14s, 8309ms;
  animation-delay: 0ms, 3044ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash22 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(22) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(22)::after {
  animation-name: flash22;
}
@keyframes move22 {
  0% {
    transform: translateX(-9vw) translateY(38vh) scale(0.38);
  }
  5% {
    transform: translateX(-10vw) translateY(-27vh) scale(0.88);
  }
  10% {
    transform: translateX(22vw) translateY(16vh) scale(0.42);
  }
  15% {
    transform: translateX(31vw) translateY(-18vh) scale(0.31);
  }
  20% {
    transform: translateX(-33vw) translateY(-42vh) scale(0.74);
  }
  25% {
    transform: translateX(20vw) translateY(-7vh) scale(0.29);
  }
  30% {
    transform: translateX(50vw) translateY(30vh) scale(0.39);
  }
  35% {
    transform: translateX(36vw) translateY(30vh) scale(0.83);
  }
  40% {
    transform: translateX(-25vw) translateY(1vh) scale(0.73);
  }
  45% {
    transform: translateX(30vw) translateY(0vh) scale(0.55);
  }
  50% {
    transform: translateX(-49vw) translateY(10vh) scale(0.84);
  }
  55% {
    transform: translateX(-1vw) translateY(-47vh) scale(0.29);
  }
  60% {
    transform: translateX(-18vw) translateY(19vh) scale(0.91);
  }
  65% {
    transform: translateX(35vw) translateY(36vh) scale(0.46);
  }
  70% {
    transform: translateX(41vw) translateY(11vh) scale(0.89);
  }
  75% {
    transform: translateX(30vw) translateY(27vh) scale(0.99);
  }
  80% {
    transform: translateX(7vw) translateY(1vh) scale(0.37);
  }
  85% {
    transform: translateX(-48vw) translateY(29vh) scale(0.67);
  }
  90% {
    transform: translateX(17vw) translateY(1vh) scale(0.47);
  }
  95% {
    transform: translateX(42vw) translateY(17vh) scale(0.76);
  }
  100% {
    transform: translateX(28vw) translateY(-8vh) scale(0.44);
  }
}
section#invitation .firefly:nth-child(23) {
  animation-name: move23;
}
section#invitation .firefly:nth-child(23)::after {
  animation-duration: 17s, 6320ms;
  animation-delay: 0ms, 5756ms;
  box-shadow: 0 0 0 0 rgb(255, 123, 0);
}
@keyframes flash23 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(255, 123, 0);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(23) {
        box-shadow: 0 0 2vw 0.6vw rgb(255, 123, 0);
      }
    }
  }
}
section#invitation .firefly:nth-child(23)::after {
  animation-name: flash23;
}
@keyframes move23 {
  0% {
    transform: translateX(23vw) translateY(36vh) scale(0.97);
  }
  5% {
    transform: translateX(-17vw) translateY(-11vh) scale(0.4);
  }
  10% {
    transform: translateX(-27vw) translateY(-48vh) scale(0.75);
  }
  15% {
    transform: translateX(-37vw) translateY(-19vh) scale(0.98);
  }
  20% {
    transform: translateX(-45vw) translateY(8vh) scale(0.63);
  }
  25% {
    transform: translateX(-24vw) translateY(-34vh) scale(0.35);
  }
  30% {
    transform: translateX(-43vw) translateY(-3vh) scale(0.53);
  }
  35% {
    transform: translateX(-2vw) translateY(30vh) scale(0.52);
  }
  40% {
    transform: translateX(2vw) translateY(18vh) scale(0.89);
  }
  45% {
    transform: translateX(4vw) translateY(-16vh) scale(0.45);
  }
  50% {
    transform: translateX(28vw) translateY(-37vh) scale(0.4);
  }
  55% {
    transform: translateX(-2vw) translateY(-45vh) scale(0.83);
  }
  60% {
    transform: translateX(28vw) translateY(-2vh) scale(0.56);
  }
  65% {
    transform: translateX(27vw) translateY(-8vh) scale(0.33);
  }
  70% {
    transform: translateX(-43vw) translateY(49vh) scale(0.63);
  }
  75% {
    transform: translateX(-44vw) translateY(-3vh) scale(0.31);
  }
  80% {
    transform: translateX(-9vw) translateY(-9vh) scale(1);
  }
  85% {
    transform: translateX(31vw) translateY(36vh) scale(0.31);
  }
  90% {
    transform: translateX(-36vw) translateY(-35vh) scale(0.43);
  }
  95% {
    transform: translateX(-29vw) translateY(22vh) scale(0.57);
  }
  100% {
    transform: translateX(17vw) translateY(-6vh) scale(0.59);
  }
}
section#invitation .firefly:nth-child(24) {
  animation-name: move24;
}
section#invitation .firefly:nth-child(24)::after {
  animation-duration: 18s, 8581ms;
  animation-delay: 0ms, 1118ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash24 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(24) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(24)::after {
  animation-name: flash24;
}
@keyframes move24 {
  0% {
    transform: translateX(49vw) translateY(14vh) scale(0.97);
  }
  5% {
    transform: translateX(-44vw) translateY(38vh) scale(0.41);
  }
  10% {
    transform: translateX(41vw) translateY(26vh) scale(0.36);
  }
  15% {
    transform: translateX(-46vw) translateY(-34vh) scale(0.63);
  }
  20% {
    transform: translateX(22vw) translateY(49vh) scale(0.29);
  }
  25% {
    transform: translateX(14vw) translateY(-5vh) scale(0.94);
  }
  30% {
    transform: translateX(16vw) translateY(42vh) scale(0.35);
  }
  35% {
    transform: translateX(-7vw) translateY(11vh) scale(0.6);
  }
  40% {
    transform: translateX(13vw) translateY(28vh) scale(0.6);
  }
  45% {
    transform: translateX(14vw) translateY(-2vh) scale(0.64);
  }
  50% {
    transform: translateX(-25vw) translateY(24vh) scale(0.52);
  }
  55% {
    transform: translateX(44vw) translateY(-10vh) scale(0.35);
  }
  60% {
    transform: translateX(27vw) translateY(-12vh) scale(0.44);
  }
  65% {
    transform: translateX(-38vw) translateY(-33vh) scale(1);
  }
  70% {
    transform: translateX(16vw) translateY(-46vh) scale(0.83);
  }
  75% {
    transform: translateX(-21vw) translateY(-29vh) scale(0.79);
  }
  80% {
    transform: translateX(-40vw) translateY(-15vh) scale(0.34);
  }
  85% {
    transform: translateX(-25vw) translateY(-20vh) scale(0.33);
  }
  90% {
    transform: translateX(14vw) translateY(-43vh) scale(0.67);
  }
  95% {
    transform: translateX(5vw) translateY(-37vh) scale(0.97);
  }
  100% {
    transform: translateX(9vw) translateY(-10vh) scale(0.85);
  }
}
section#invitation .firefly:nth-child(25) {
  animation-name: move25;
}
section#invitation .firefly:nth-child(25)::after {
  animation-duration: 13s, 8995ms;
  animation-delay: 0ms, 4216ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash25 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(25) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(25)::after {
  animation-name: flash25;
}
@keyframes move25 {
  0% {
    transform: translateX(-25vw) translateY(16vh) scale(0.65);
  }
  4.1666666667% {
    transform: translateX(-48vw) translateY(23vh) scale(0.86);
  }
  8.3333333333% {
    transform: translateX(-22vw) translateY(-37vh) scale(0.28);
  }
  12.5% {
    transform: translateX(-45vw) translateY(18vh) scale(0.45);
  }
  16.6666666667% {
    transform: translateX(49vw) translateY(13vh) scale(0.79);
  }
  20.8333333333% {
    transform: translateX(-13vw) translateY(-1vh) scale(0.82);
  }
  25% {
    transform: translateX(-38vw) translateY(0vh) scale(0.28);
  }
  29.1666666667% {
    transform: translateX(12vw) translateY(2vh) scale(0.46);
  }
  33.3333333333% {
    transform: translateX(-33vw) translateY(1vh) scale(0.51);
  }
  37.5% {
    transform: translateX(-7vw) translateY(10vh) scale(1);
  }
  41.6666666667% {
    transform: translateX(-37vw) translateY(-13vh) scale(0.78);
  }
  45.8333333333% {
    transform: translateX(-23vw) translateY(15vh) scale(0.28);
  }
  50% {
    transform: translateX(37vw) translateY(18vh) scale(0.47);
  }
  54.1666666667% {
    transform: translateX(44vw) translateY(28vh) scale(0.67);
  }
  58.3333333333% {
    transform: translateX(-26vw) translateY(-37vh) scale(0.64);
  }
  62.5% {
    transform: translateX(26vw) translateY(0vh) scale(0.38);
  }
  66.6666666667% {
    transform: translateX(13vw) translateY(-31vh) scale(0.26);
  }
  70.8333333333% {
    transform: translateX(-27vw) translateY(38vh) scale(0.93);
  }
  75% {
    transform: translateX(-43vw) translateY(-17vh) scale(0.3);
  }
  79.1666666667% {
    transform: translateX(-27vw) translateY(48vh) scale(0.65);
  }
  83.3333333333% {
    transform: translateX(-11vw) translateY(-16vh) scale(0.69);
  }
  87.5% {
    transform: translateX(20vw) translateY(36vh) scale(0.64);
  }
  91.6666666667% {
    transform: translateX(-32vw) translateY(-25vh) scale(0.32);
  }
  95.8333333333% {
    transform: translateX(31vw) translateY(-36vh) scale(0.53);
  }
  100% {
    transform: translateX(-45vw) translateY(27vh) scale(0.97);
  }
}
section#invitation .firefly:nth-child(26) {
  animation-name: move26;
}
section#invitation .firefly:nth-child(26)::after {
  animation-duration: 15s, 7872ms;
  animation-delay: 0ms, 5882ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash26 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(26) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(26)::after {
  animation-name: flash26;
}
@keyframes move26 {
  0% {
    transform: translateX(-14vw) translateY(6vh) scale(0.83);
  }
  5.5555555556% {
    transform: translateX(21vw) translateY(2vh) scale(0.66);
  }
  11.1111111111% {
    transform: translateX(20vw) translateY(41vh) scale(0.93);
  }
  16.6666666667% {
    transform: translateX(-32vw) translateY(3vh) scale(0.95);
  }
  22.2222222222% {
    transform: translateX(-49vw) translateY(8vh) scale(0.6);
  }
  27.7777777778% {
    transform: translateX(-24vw) translateY(-16vh) scale(0.46);
  }
  33.3333333333% {
    transform: translateX(-39vw) translateY(-15vh) scale(0.76);
  }
  38.8888888889% {
    transform: translateX(31vw) translateY(-30vh) scale(0.84);
  }
  44.4444444444% {
    transform: translateX(8vw) translateY(0vh) scale(0.74);
  }
  50% {
    transform: translateX(-25vw) translateY(23vh) scale(0.7);
  }
  55.5555555556% {
    transform: translateX(22vw) translateY(-16vh) scale(0.62);
  }
  61.1111111111% {
    transform: translateX(9vw) translateY(49vh) scale(0.42);
  }
  66.6666666667% {
    transform: translateX(-1vw) translateY(35vh) scale(0.36);
  }
  72.2222222222% {
    transform: translateX(32vw) translateY(14vh) scale(0.34);
  }
  77.7777777778% {
    transform: translateX(5vw) translateY(-16vh) scale(0.93);
  }
  83.3333333333% {
    transform: translateX(6vw) translateY(-30vh) scale(0.29);
  }
  88.8888888889% {
    transform: translateX(5vw) translateY(23vh) scale(0.86);
  }
  94.4444444444% {
    transform: translateX(12vw) translateY(-40vh) scale(0.77);
  }
  100% {
    transform: translateX(-3vw) translateY(4vh) scale(0.39);
  }
}
section#invitation .firefly:nth-child(27) {
  animation-name: move27;
}
section#invitation .firefly:nth-child(27)::after {
  animation-duration: 14s, 5358ms;
  animation-delay: 0ms, 1479ms;
  box-shadow: 0 0 0 0 rgb(255, 123, 0);
}
@keyframes flash27 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(255, 123, 0);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(27) {
        box-shadow: 0 0 2vw 0.6vw rgb(255, 123, 0);
      }
    }
  }
}
section#invitation .firefly:nth-child(27)::after {
  animation-name: flash27;
}
@keyframes move27 {
  0% {
    transform: translateX(-19vw) translateY(-17vh) scale(0.27);
  }
  5.5555555556% {
    transform: translateX(11vw) translateY(16vh) scale(0.73);
  }
  11.1111111111% {
    transform: translateX(-43vw) translateY(26vh) scale(0.28);
  }
  16.6666666667% {
    transform: translateX(-13vw) translateY(11vh) scale(0.43);
  }
  22.2222222222% {
    transform: translateX(-30vw) translateY(-5vh) scale(0.93);
  }
  27.7777777778% {
    transform: translateX(1vw) translateY(18vh) scale(0.29);
  }
  33.3333333333% {
    transform: translateX(-13vw) translateY(-46vh) scale(0.78);
  }
  38.8888888889% {
    transform: translateX(15vw) translateY(28vh) scale(0.95);
  }
  44.4444444444% {
    transform: translateX(32vw) translateY(48vh) scale(0.93);
  }
  50% {
    transform: translateX(28vw) translateY(-37vh) scale(0.71);
  }
  55.5555555556% {
    transform: translateX(1vw) translateY(35vh) scale(0.61);
  }
  61.1111111111% {
    transform: translateX(39vw) translateY(-40vh) scale(0.69);
  }
  66.6666666667% {
    transform: translateX(-7vw) translateY(18vh) scale(0.4);
  }
  72.2222222222% {
    transform: translateX(-37vw) translateY(5vh) scale(0.28);
  }
  77.7777777778% {
    transform: translateX(14vw) translateY(12vh) scale(0.96);
  }
  83.3333333333% {
    transform: translateX(6vw) translateY(-3vh) scale(0.44);
  }
  88.8888888889% {
    transform: translateX(-46vw) translateY(16vh) scale(0.32);
  }
  94.4444444444% {
    transform: translateX(41vw) translateY(-5vh) scale(0.44);
  }
  100% {
    transform: translateX(35vw) translateY(35vh) scale(0.56);
  }
}
section#invitation .firefly:nth-child(28) {
  animation-name: move28;
}
section#invitation .firefly:nth-child(28)::after {
  animation-duration: 18s, 5350ms;
  animation-delay: 0ms, 7686ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash28 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(28) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(28)::after {
  animation-name: flash28;
}
@keyframes move28 {
  0% {
    transform: translateX(-4vw) translateY(-6vh) scale(0.27);
  }
  4.5454545455% {
    transform: translateX(-3vw) translateY(-19vh) scale(0.52);
  }
  9.0909090909% {
    transform: translateX(22vw) translateY(-46vh) scale(0.59);
  }
  13.6363636364% {
    transform: translateX(-18vw) translateY(34vh) scale(0.95);
  }
  18.1818181818% {
    transform: translateX(21vw) translateY(-13vh) scale(0.74);
  }
  22.7272727273% {
    transform: translateX(-46vw) translateY(-15vh) scale(0.34);
  }
  27.2727272727% {
    transform: translateX(-22vw) translateY(-23vh) scale(0.89);
  }
  31.8181818182% {
    transform: translateX(-5vw) translateY(-30vh) scale(0.72);
  }
  36.3636363636% {
    transform: translateX(-18vw) translateY(-12vh) scale(0.37);
  }
  40.9090909091% {
    transform: translateX(-11vw) translateY(16vh) scale(0.67);
  }
  45.4545454545% {
    transform: translateX(22vw) translateY(19vh) scale(0.26);
  }
  50% {
    transform: translateX(23vw) translateY(-26vh) scale(0.47);
  }
  54.5454545455% {
    transform: translateX(-3vw) translateY(28vh) scale(0.46);
  }
  59.0909090909% {
    transform: translateX(-11vw) translateY(-21vh) scale(0.84);
  }
  63.6363636364% {
    transform: translateX(0vw) translateY(-49vh) scale(0.3);
  }
  68.1818181818% {
    transform: translateX(16vw) translateY(0vh) scale(0.71);
  }
  72.7272727273% {
    transform: translateX(38vw) translateY(-22vh) scale(0.74);
  }
  77.2727272727% {
    transform: translateX(-12vw) translateY(-38vh) scale(0.53);
  }
  81.8181818182% {
    transform: translateX(36vw) translateY(24vh) scale(0.96);
  }
  86.3636363636% {
    transform: translateX(20vw) translateY(-35vh) scale(0.65);
  }
  90.9090909091% {
    transform: translateX(26vw) translateY(34vh) scale(0.38);
  }
  95.4545454545% {
    transform: translateX(-12vw) translateY(-18vh) scale(0.8);
  }
  100% {
    transform: translateX(27vw) translateY(-46vh) scale(0.96);
  }
}
section#invitation .firefly:nth-child(29) {
  animation-name: move29;
}
section#invitation .firefly:nth-child(29)::after {
  animation-duration: 14s, 10588ms;
  animation-delay: 0ms, 2186ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash29 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(29) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(29)::after {
  animation-name: flash29;
}
@keyframes move29 {
  0% {
    transform: translateX(2vw) translateY(28vh) scale(0.54);
  }
  5% {
    transform: translateX(50vw) translateY(-25vh) scale(0.73);
  }
  10% {
    transform: translateX(0vw) translateY(-46vh) scale(0.73);
  }
  15% {
    transform: translateX(-24vw) translateY(-13vh) scale(0.56);
  }
  20% {
    transform: translateX(40vw) translateY(33vh) scale(0.71);
  }
  25% {
    transform: translateX(32vw) translateY(36vh) scale(0.69);
  }
  30% {
    transform: translateX(9vw) translateY(-46vh) scale(0.44);
  }
  35% {
    transform: translateX(23vw) translateY(-29vh) scale(0.78);
  }
  40% {
    transform: translateX(41vw) translateY(28vh) scale(0.77);
  }
  45% {
    transform: translateX(2vw) translateY(27vh) scale(0.76);
  }
  50% {
    transform: translateX(10vw) translateY(35vh) scale(0.29);
  }
  55% {
    transform: translateX(33vw) translateY(-16vh) scale(0.32);
  }
  60% {
    transform: translateX(21vw) translateY(27vh) scale(0.94);
  }
  65% {
    transform: translateX(-40vw) translateY(-14vh) scale(0.8);
  }
  70% {
    transform: translateX(-13vw) translateY(5vh) scale(0.99);
  }
  75% {
    transform: translateX(-43vw) translateY(6vh) scale(0.85);
  }
  80% {
    transform: translateX(-3vw) translateY(-38vh) scale(0.32);
  }
  85% {
    transform: translateX(24vw) translateY(-14vh) scale(0.94);
  }
  90% {
    transform: translateX(-47vw) translateY(-36vh) scale(0.7);
  }
  95% {
    transform: translateX(4vw) translateY(-19vh) scale(0.83);
  }
  100% {
    transform: translateX(-12vw) translateY(-34vh) scale(0.66);
  }
}
section#invitation .firefly:nth-child(30) {
  animation-name: move30;
}
section#invitation .firefly:nth-child(30)::after {
  animation-duration: 10s, 5291ms;
  animation-delay: 0ms, 4870ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash30 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(30) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(30)::after {
  animation-name: flash30;
}
@keyframes move30 {
  0% {
    transform: translateX(2vw) translateY(8vh) scale(0.9);
  }
  3.8461538462% {
    transform: translateX(26vw) translateY(-10vh) scale(0.52);
  }
  7.6923076923% {
    transform: translateX(32vw) translateY(1vh) scale(0.32);
  }
  11.5384615385% {
    transform: translateX(-33vw) translateY(-25vh) scale(0.26);
  }
  15.3846153846% {
    transform: translateX(46vw) translateY(-39vh) scale(0.86);
  }
  19.2307692308% {
    transform: translateX(27vw) translateY(-43vh) scale(0.64);
  }
  23.0769230769% {
    transform: translateX(28vw) translateY(25vh) scale(0.46);
  }
  26.9230769231% {
    transform: translateX(41vw) translateY(-38vh) scale(0.91);
  }
  30.7692307692% {
    transform: translateX(24vw) translateY(-14vh) scale(0.63);
  }
  34.6153846154% {
    transform: translateX(23vw) translateY(-26vh) scale(0.65);
  }
  38.4615384615% {
    transform: translateX(-26vw) translateY(-31vh) scale(0.99);
  }
  42.3076923077% {
    transform: translateX(-38vw) translateY(-29vh) scale(0.6);
  }
  46.1538461538% {
    transform: translateX(-33vw) translateY(13vh) scale(0.98);
  }
  50% {
    transform: translateX(45vw) translateY(34vh) scale(0.72);
  }
  53.8461538462% {
    transform: translateX(-23vw) translateY(-21vh) scale(0.37);
  }
  57.6923076923% {
    transform: translateX(-38vw) translateY(45vh) scale(0.44);
  }
  61.5384615385% {
    transform: translateX(-13vw) translateY(-46vh) scale(0.97);
  }
  65.3846153846% {
    transform: translateX(0vw) translateY(15vh) scale(0.55);
  }
  69.2307692308% {
    transform: translateX(-18vw) translateY(-3vh) scale(0.86);
  }
  73.0769230769% {
    transform: translateX(-5vw) translateY(35vh) scale(0.57);
  }
  76.9230769231% {
    transform: translateX(21vw) translateY(14vh) scale(0.52);
  }
  80.7692307692% {
    transform: translateX(-30vw) translateY(9vh) scale(0.62);
  }
  84.6153846154% {
    transform: translateX(-18vw) translateY(14vh) scale(0.83);
  }
  88.4615384615% {
    transform: translateX(15vw) translateY(48vh) scale(0.8);
  }
  92.3076923077% {
    transform: translateX(-12vw) translateY(-38vh) scale(0.56);
  }
  96.1538461538% {
    transform: translateX(50vw) translateY(-22vh) scale(0.9);
  }
  100% {
    transform: translateX(47vw) translateY(35vh) scale(0.74);
  }
}
section#invitation .firefly:nth-child(31) {
  animation-name: move31;
}
section#invitation .firefly:nth-child(31)::after {
  animation-duration: 13s, 5840ms;
  animation-delay: 0ms, 1523ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash31 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(31) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(31)::after {
  animation-name: flash31;
}
@keyframes move31 {
  0% {
    transform: translateX(38vw) translateY(-15vh) scale(0.96);
  }
  3.7037037037% {
    transform: translateX(9vw) translateY(5vh) scale(0.6);
  }
  7.4074074074% {
    transform: translateX(42vw) translateY(45vh) scale(0.39);
  }
  11.1111111111% {
    transform: translateX(30vw) translateY(20vh) scale(0.37);
  }
  14.8148148148% {
    transform: translateX(-31vw) translateY(-45vh) scale(0.58);
  }
  18.5185185185% {
    transform: translateX(15vw) translateY(14vh) scale(0.63);
  }
  22.2222222222% {
    transform: translateX(-30vw) translateY(-37vh) scale(0.38);
  }
  25.9259259259% {
    transform: translateX(36vw) translateY(-13vh) scale(0.92);
  }
  29.6296296296% {
    transform: translateX(30vw) translateY(49vh) scale(0.47);
  }
  33.3333333333% {
    transform: translateX(19vw) translateY(-45vh) scale(0.41);
  }
  37.037037037% {
    transform: translateX(-45vw) translateY(2vh) scale(0.98);
  }
  40.7407407407% {
    transform: translateX(48vw) translateY(47vh) scale(0.7);
  }
  44.4444444444% {
    transform: translateX(-15vw) translateY(-37vh) scale(0.26);
  }
  48.1481481481% {
    transform: translateX(-8vw) translateY(-38vh) scale(0.9);
  }
  51.8518518519% {
    transform: translateX(26vw) translateY(21vh) scale(0.54);
  }
  55.5555555556% {
    transform: translateX(24vw) translateY(7vh) scale(0.9);
  }
  59.2592592593% {
    transform: translateX(-34vw) translateY(-37vh) scale(0.94);
  }
  62.962962963% {
    transform: translateX(29vw) translateY(-45vh) scale(0.37);
  }
  66.6666666667% {
    transform: translateX(2vw) translateY(-47vh) scale(0.73);
  }
  70.3703703704% {
    transform: translateX(-1vw) translateY(-33vh) scale(0.63);
  }
  74.0740740741% {
    transform: translateX(27vw) translateY(-5vh) scale(0.56);
  }
  77.7777777778% {
    transform: translateX(37vw) translateY(10vh) scale(0.87);
  }
  81.4814814815% {
    transform: translateX(-33vw) translateY(-38vh) scale(0.96);
  }
  85.1851851852% {
    transform: translateX(-39vw) translateY(4vh) scale(0.59);
  }
  88.8888888889% {
    transform: translateX(-41vw) translateY(31vh) scale(0.64);
  }
  92.5925925926% {
    transform: translateX(-34vw) translateY(-17vh) scale(0.55);
  }
  96.2962962963% {
    transform: translateX(-6vw) translateY(4vh) scale(0.68);
  }
  100% {
    transform: translateX(-33vw) translateY(37vh) scale(0.31);
  }
}
section#invitation .firefly:nth-child(32) {
  animation-name: move32;
}
section#invitation .firefly:nth-child(32)::after {
  animation-duration: 10s, 10422ms;
  animation-delay: 0ms, 5207ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash32 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(32) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(32)::after {
  animation-name: flash32;
}
@keyframes move32 {
  0% {
    transform: translateX(-25vw) translateY(-31vh) scale(0.52);
  }
  3.8461538462% {
    transform: translateX(-8vw) translateY(34vh) scale(0.44);
  }
  7.6923076923% {
    transform: translateX(37vw) translateY(37vh) scale(0.83);
  }
  11.5384615385% {
    transform: translateX(38vw) translateY(-11vh) scale(0.39);
  }
  15.3846153846% {
    transform: translateX(22vw) translateY(1vh) scale(0.4);
  }
  19.2307692308% {
    transform: translateX(-16vw) translateY(37vh) scale(0.86);
  }
  23.0769230769% {
    transform: translateX(-26vw) translateY(-17vh) scale(0.7);
  }
  26.9230769231% {
    transform: translateX(-7vw) translateY(17vh) scale(0.78);
  }
  30.7692307692% {
    transform: translateX(20vw) translateY(37vh) scale(0.37);
  }
  34.6153846154% {
    transform: translateX(29vw) translateY(-7vh) scale(0.63);
  }
  38.4615384615% {
    transform: translateX(4vw) translateY(30vh) scale(0.37);
  }
  42.3076923077% {
    transform: translateX(4vw) translateY(30vh) scale(0.74);
  }
  46.1538461538% {
    transform: translateX(10vw) translateY(26vh) scale(0.73);
  }
  50% {
    transform: translateX(-37vw) translateY(-18vh) scale(0.8);
  }
  53.8461538462% {
    transform: translateX(-5vw) translateY(-25vh) scale(0.38);
  }
  57.6923076923% {
    transform: translateX(47vw) translateY(-11vh) scale(0.31);
  }
  61.5384615385% {
    transform: translateX(-37vw) translateY(32vh) scale(0.86);
  }
  65.3846153846% {
    transform: translateX(35vw) translateY(-11vh) scale(0.89);
  }
  69.2307692308% {
    transform: translateX(28vw) translateY(-36vh) scale(0.3);
  }
  73.0769230769% {
    transform: translateX(41vw) translateY(38vh) scale(0.73);
  }
  76.9230769231% {
    transform: translateX(24vw) translateY(1vh) scale(0.92);
  }
  80.7692307692% {
    transform: translateX(-44vw) translateY(-43vh) scale(0.7);
  }
  84.6153846154% {
    transform: translateX(-20vw) translateY(-38vh) scale(0.88);
  }
  88.4615384615% {
    transform: translateX(-27vw) translateY(-44vh) scale(0.81);
  }
  92.3076923077% {
    transform: translateX(-27vw) translateY(35vh) scale(0.72);
  }
  96.1538461538% {
    transform: translateX(6vw) translateY(34vh) scale(0.34);
  }
  100% {
    transform: translateX(16vw) translateY(-30vh) scale(0.55);
  }
}
section#invitation .firefly:nth-child(33) {
  animation-name: move33;
}
section#invitation .firefly:nth-child(33)::after {
  animation-duration: 9s, 9249ms;
  animation-delay: 0ms, 7155ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash33 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(33) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(33)::after {
  animation-name: flash33;
}
@keyframes move33 {
  0% {
    transform: translateX(-38vw) translateY(13vh) scale(0.36);
  }
  5.5555555556% {
    transform: translateX(-26vw) translateY(-25vh) scale(0.3);
  }
  11.1111111111% {
    transform: translateX(-13vw) translateY(-26vh) scale(0.73);
  }
  16.6666666667% {
    transform: translateX(24vw) translateY(-7vh) scale(0.75);
  }
  22.2222222222% {
    transform: translateX(-10vw) translateY(44vh) scale(0.58);
  }
  27.7777777778% {
    transform: translateX(-9vw) translateY(-3vh) scale(0.93);
  }
  33.3333333333% {
    transform: translateX(32vw) translateY(-2vh) scale(0.8);
  }
  38.8888888889% {
    transform: translateX(-47vw) translateY(24vh) scale(0.45);
  }
  44.4444444444% {
    transform: translateX(1vw) translateY(18vh) scale(0.51);
  }
  50% {
    transform: translateX(10vw) translateY(25vh) scale(0.84);
  }
  55.5555555556% {
    transform: translateX(-28vw) translateY(-2vh) scale(0.46);
  }
  61.1111111111% {
    transform: translateX(-22vw) translateY(42vh) scale(0.57);
  }
  66.6666666667% {
    transform: translateX(22vw) translateY(46vh) scale(0.39);
  }
  72.2222222222% {
    transform: translateX(40vw) translateY(49vh) scale(0.51);
  }
  77.7777777778% {
    transform: translateX(21vw) translateY(8vh) scale(0.32);
  }
  83.3333333333% {
    transform: translateX(-26vw) translateY(48vh) scale(0.43);
  }
  88.8888888889% {
    transform: translateX(-18vw) translateY(5vh) scale(0.44);
  }
  94.4444444444% {
    transform: translateX(37vw) translateY(41vh) scale(0.91);
  }
  100% {
    transform: translateX(3vw) translateY(-42vh) scale(0.41);
  }
}
section#invitation .firefly:nth-child(34) {
  animation-name: move34;
}
section#invitation .firefly:nth-child(34)::after {
  animation-duration: 13s, 10314ms;
  animation-delay: 0ms, 729ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash34 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(34) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(34)::after {
  animation-name: flash34;
}
@keyframes move34 {
  0% {
    transform: translateX(45vw) translateY(15vh) scale(0.96);
  }
  5.5555555556% {
    transform: translateX(-4vw) translateY(37vh) scale(0.55);
  }
  11.1111111111% {
    transform: translateX(-47vw) translateY(-41vh) scale(0.38);
  }
  16.6666666667% {
    transform: translateX(-12vw) translateY(22vh) scale(0.91);
  }
  22.2222222222% {
    transform: translateX(-34vw) translateY(-7vh) scale(0.83);
  }
  27.7777777778% {
    transform: translateX(21vw) translateY(5vh) scale(0.41);
  }
  33.3333333333% {
    transform: translateX(18vw) translateY(25vh) scale(0.46);
  }
  38.8888888889% {
    transform: translateX(-22vw) translateY(40vh) scale(0.4);
  }
  44.4444444444% {
    transform: translateX(30vw) translateY(1vh) scale(0.59);
  }
  50% {
    transform: translateX(-28vw) translateY(-28vh) scale(0.69);
  }
  55.5555555556% {
    transform: translateX(-18vw) translateY(-21vh) scale(0.84);
  }
  61.1111111111% {
    transform: translateX(-31vw) translateY(-18vh) scale(0.72);
  }
  66.6666666667% {
    transform: translateX(13vw) translateY(38vh) scale(0.51);
  }
  72.2222222222% {
    transform: translateX(-39vw) translateY(50vh) scale(0.3);
  }
  77.7777777778% {
    transform: translateX(-29vw) translateY(-21vh) scale(0.68);
  }
  83.3333333333% {
    transform: translateX(22vw) translateY(19vh) scale(0.42);
  }
  88.8888888889% {
    transform: translateX(23vw) translateY(-14vh) scale(0.83);
  }
  94.4444444444% {
    transform: translateX(15vw) translateY(11vh) scale(0.62);
  }
  100% {
    transform: translateX(12vw) translateY(18vh) scale(0.96);
  }
}
section#invitation .firefly:nth-child(35) {
  animation-name: move35;
}
section#invitation .firefly:nth-child(35)::after {
  animation-duration: 11s, 8474ms;
  animation-delay: 0ms, 6653ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash35 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(35) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(35)::after {
  animation-name: flash35;
}
@keyframes move35 {
  0% {
    transform: translateX(33vw) translateY(-41vh) scale(0.77);
  }
  4.5454545455% {
    transform: translateX(-35vw) translateY(-16vh) scale(0.86);
  }
  9.0909090909% {
    transform: translateX(39vw) translateY(-1vh) scale(0.97);
  }
  13.6363636364% {
    transform: translateX(15vw) translateY(-5vh) scale(0.79);
  }
  18.1818181818% {
    transform: translateX(-42vw) translateY(-32vh) scale(0.77);
  }
  22.7272727273% {
    transform: translateX(48vw) translateY(30vh) scale(0.84);
  }
  27.2727272727% {
    transform: translateX(48vw) translateY(35vh) scale(0.97);
  }
  31.8181818182% {
    transform: translateX(-17vw) translateY(38vh) scale(0.79);
  }
  36.3636363636% {
    transform: translateX(-23vw) translateY(-3vh) scale(0.35);
  }
  40.9090909091% {
    transform: translateX(-5vw) translateY(-26vh) scale(0.77);
  }
  45.4545454545% {
    transform: translateX(-35vw) translateY(-49vh) scale(0.53);
  }
  50% {
    transform: translateX(38vw) translateY(31vh) scale(0.7);
  }
  54.5454545455% {
    transform: translateX(29vw) translateY(-14vh) scale(0.62);
  }
  59.0909090909% {
    transform: translateX(-21vw) translateY(-25vh) scale(0.28);
  }
  63.6363636364% {
    transform: translateX(20vw) translateY(-29vh) scale(0.58);
  }
  68.1818181818% {
    transform: translateX(-5vw) translateY(9vh) scale(0.61);
  }
  72.7272727273% {
    transform: translateX(-21vw) translateY(-21vh) scale(0.77);
  }
  77.2727272727% {
    transform: translateX(-22vw) translateY(-44vh) scale(0.83);
  }
  81.8181818182% {
    transform: translateX(30vw) translateY(11vh) scale(0.82);
  }
  86.3636363636% {
    transform: translateX(-23vw) translateY(39vh) scale(0.65);
  }
  90.9090909091% {
    transform: translateX(33vw) translateY(23vh) scale(0.43);
  }
  95.4545454545% {
    transform: translateX(-46vw) translateY(8vh) scale(0.46);
  }
  100% {
    transform: translateX(-28vw) translateY(42vh) scale(0.61);
  }
}
section#invitation .firefly:nth-child(36) {
  animation-name: move36;
}
section#invitation .firefly:nth-child(36)::after {
  animation-duration: 15s, 9353ms;
  animation-delay: 0ms, 6479ms;
  box-shadow: 0 0 0 0 purple;
}
@keyframes flash36 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw purple;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(36) {
        box-shadow: 0 0 2vw 0.6vw purple;
      }
    }
  }
}
section#invitation .firefly:nth-child(36)::after {
  animation-name: flash36;
}
@keyframes move36 {
  0% {
    transform: translateX(-15vw) translateY(44vh) scale(0.98);
  }
  4.7619047619% {
    transform: translateX(-23vw) translateY(0vh) scale(0.61);
  }
  9.5238095238% {
    transform: translateX(-23vw) translateY(9vh) scale(0.97);
  }
  14.2857142857% {
    transform: translateX(32vw) translateY(-32vh) scale(0.34);
  }
  19.0476190476% {
    transform: translateX(37vw) translateY(-18vh) scale(0.99);
  }
  23.8095238095% {
    transform: translateX(27vw) translateY(-28vh) scale(0.4);
  }
  28.5714285714% {
    transform: translateX(-27vw) translateY(11vh) scale(0.86);
  }
  33.3333333333% {
    transform: translateX(-25vw) translateY(-6vh) scale(0.9);
  }
  38.0952380952% {
    transform: translateX(-4vw) translateY(35vh) scale(0.64);
  }
  42.8571428571% {
    transform: translateX(-20vw) translateY(-46vh) scale(0.52);
  }
  47.619047619% {
    transform: translateX(33vw) translateY(-14vh) scale(0.88);
  }
  52.380952381% {
    transform: translateX(4vw) translateY(-2vh) scale(0.96);
  }
  57.1428571429% {
    transform: translateX(13vw) translateY(-9vh) scale(0.98);
  }
  61.9047619048% {
    transform: translateX(-49vw) translateY(42vh) scale(0.78);
  }
  66.6666666667% {
    transform: translateX(-35vw) translateY(35vh) scale(0.31);
  }
  71.4285714286% {
    transform: translateX(17vw) translateY(23vh) scale(0.85);
  }
  76.1904761905% {
    transform: translateX(40vw) translateY(42vh) scale(0.99);
  }
  80.9523809524% {
    transform: translateX(-38vw) translateY(-4vh) scale(0.71);
  }
  85.7142857143% {
    transform: translateX(-15vw) translateY(33vh) scale(0.49);
  }
  90.4761904762% {
    transform: translateX(-13vw) translateY(32vh) scale(0.91);
  }
  95.2380952381% {
    transform: translateX(2vw) translateY(-29vh) scale(0.42);
  }
  100% {
    transform: translateX(48vw) translateY(-32vh) scale(0.78);
  }
}
section#invitation .firefly:nth-child(37) {
  animation-name: move37;
}
section#invitation .firefly:nth-child(37)::after {
  animation-duration: 14s, 6112ms;
  animation-delay: 0ms, 7367ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash37 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(37) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(37)::after {
  animation-name: flash37;
}
@keyframes move37 {
  0% {
    transform: translateX(20vw) translateY(-19vh) scale(0.97);
  }
  4.5454545455% {
    transform: translateX(-25vw) translateY(-22vh) scale(0.6);
  }
  9.0909090909% {
    transform: translateX(-44vw) translateY(-32vh) scale(0.42);
  }
  13.6363636364% {
    transform: translateX(-38vw) translateY(-47vh) scale(0.5);
  }
  18.1818181818% {
    transform: translateX(-15vw) translateY(46vh) scale(0.47);
  }
  22.7272727273% {
    transform: translateX(-38vw) translateY(21vh) scale(0.91);
  }
  27.2727272727% {
    transform: translateX(31vw) translateY(-24vh) scale(0.5);
  }
  31.8181818182% {
    transform: translateX(32vw) translateY(-7vh) scale(0.95);
  }
  36.3636363636% {
    transform: translateX(39vw) translateY(20vh) scale(0.69);
  }
  40.9090909091% {
    transform: translateX(-15vw) translateY(-18vh) scale(0.73);
  }
  45.4545454545% {
    transform: translateX(3vw) translateY(-20vh) scale(0.54);
  }
  50% {
    transform: translateX(48vw) translateY(11vh) scale(0.59);
  }
  54.5454545455% {
    transform: translateX(24vw) translateY(4vh) scale(0.84);
  }
  59.0909090909% {
    transform: translateX(-45vw) translateY(14vh) scale(0.27);
  }
  63.6363636364% {
    transform: translateX(-36vw) translateY(-49vh) scale(0.26);
  }
  68.1818181818% {
    transform: translateX(42vw) translateY(-21vh) scale(0.29);
  }
  72.7272727273% {
    transform: translateX(7vw) translateY(22vh) scale(0.49);
  }
  77.2727272727% {
    transform: translateX(15vw) translateY(-49vh) scale(0.99);
  }
  81.8181818182% {
    transform: translateX(-22vw) translateY(44vh) scale(0.95);
  }
  86.3636363636% {
    transform: translateX(-7vw) translateY(-34vh) scale(0.59);
  }
  90.9090909091% {
    transform: translateX(46vw) translateY(0vh) scale(0.67);
  }
  95.4545454545% {
    transform: translateX(-10vw) translateY(0vh) scale(0.33);
  }
  100% {
    transform: translateX(-48vw) translateY(21vh) scale(0.36);
  }
}
section#invitation .firefly:nth-child(38) {
  animation-name: move38;
}
section#invitation .firefly:nth-child(38)::after {
  animation-duration: 16s, 9444ms;
  animation-delay: 0ms, 7577ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash38 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(38) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(38)::after {
  animation-name: flash38;
}
@keyframes move38 {
  0% {
    transform: translateX(11vw) translateY(2vh) scale(0.65);
  }
  4.347826087% {
    transform: translateX(5vw) translateY(26vh) scale(0.67);
  }
  8.6956521739% {
    transform: translateX(-2vw) translateY(32vh) scale(0.29);
  }
  13.0434782609% {
    transform: translateX(-34vw) translateY(-22vh) scale(0.96);
  }
  17.3913043478% {
    transform: translateX(-23vw) translateY(3vh) scale(0.52);
  }
  21.7391304348% {
    transform: translateX(-44vw) translateY(-30vh) scale(0.86);
  }
  26.0869565217% {
    transform: translateX(18vw) translateY(-49vh) scale(1);
  }
  30.4347826087% {
    transform: translateX(49vw) translateY(-10vh) scale(0.81);
  }
  34.7826086957% {
    transform: translateX(12vw) translateY(-45vh) scale(0.54);
  }
  39.1304347826% {
    transform: translateX(-31vw) translateY(22vh) scale(0.91);
  }
  43.4782608696% {
    transform: translateX(14vw) translateY(-48vh) scale(0.28);
  }
  47.8260869565% {
    transform: translateX(-11vw) translateY(-31vh) scale(0.52);
  }
  52.1739130435% {
    transform: translateX(-25vw) translateY(4vh) scale(0.53);
  }
  56.5217391304% {
    transform: translateX(16vw) translateY(-48vh) scale(0.57);
  }
  60.8695652174% {
    transform: translateX(-37vw) translateY(19vh) scale(0.76);
  }
  65.2173913043% {
    transform: translateX(20vw) translateY(-7vh) scale(0.45);
  }
  69.5652173913% {
    transform: translateX(-39vw) translateY(47vh) scale(0.85);
  }
  73.9130434783% {
    transform: translateX(-21vw) translateY(-42vh) scale(0.54);
  }
  78.2608695652% {
    transform: translateX(-26vw) translateY(-14vh) scale(0.45);
  }
  82.6086956522% {
    transform: translateX(-6vw) translateY(1vh) scale(0.76);
  }
  86.9565217391% {
    transform: translateX(8vw) translateY(32vh) scale(0.5);
  }
  91.3043478261% {
    transform: translateX(-28vw) translateY(-2vh) scale(0.73);
  }
  95.652173913% {
    transform: translateX(8vw) translateY(49vh) scale(0.31);
  }
  100% {
    transform: translateX(29vw) translateY(-26vh) scale(0.28);
  }
}
section#invitation .firefly:nth-child(39) {
  animation-name: move39;
}
section#invitation .firefly:nth-child(39)::after {
  animation-duration: 17s, 7790ms;
  animation-delay: 0ms, 4658ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash39 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(39) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(39)::after {
  animation-name: flash39;
}
@keyframes move39 {
  0% {
    transform: translateX(26vw) translateY(-7vh) scale(0.36);
  }
  3.5714285714% {
    transform: translateX(-46vw) translateY(-14vh) scale(0.53);
  }
  7.1428571429% {
    transform: translateX(22vw) translateY(-14vh) scale(0.9);
  }
  10.7142857143% {
    transform: translateX(-31vw) translateY(-35vh) scale(0.58);
  }
  14.2857142857% {
    transform: translateX(-13vw) translateY(-2vh) scale(0.45);
  }
  17.8571428571% {
    transform: translateX(-13vw) translateY(-14vh) scale(0.63);
  }
  21.4285714286% {
    transform: translateX(18vw) translateY(-35vh) scale(0.31);
  }
  25% {
    transform: translateX(22vw) translateY(-39vh) scale(0.67);
  }
  28.5714285714% {
    transform: translateX(48vw) translateY(-21vh) scale(1);
  }
  32.1428571429% {
    transform: translateX(33vw) translateY(36vh) scale(0.47);
  }
  35.7142857143% {
    transform: translateX(39vw) translateY(8vh) scale(0.97);
  }
  39.2857142857% {
    transform: translateX(-3vw) translateY(-21vh) scale(0.68);
  }
  42.8571428571% {
    transform: translateX(-9vw) translateY(-6vh) scale(0.54);
  }
  46.4285714286% {
    transform: translateX(-33vw) translateY(17vh) scale(0.78);
  }
  50% {
    transform: translateX(0vw) translateY(9vh) scale(0.45);
  }
  53.5714285714% {
    transform: translateX(26vw) translateY(-15vh) scale(0.83);
  }
  57.1428571429% {
    transform: translateX(-42vw) translateY(-45vh) scale(0.39);
  }
  60.7142857143% {
    transform: translateX(30vw) translateY(37vh) scale(0.96);
  }
  64.2857142857% {
    transform: translateX(33vw) translateY(-39vh) scale(0.58);
  }
  67.8571428571% {
    transform: translateX(43vw) translateY(-13vh) scale(0.95);
  }
  71.4285714286% {
    transform: translateX(-17vw) translateY(-24vh) scale(0.4);
  }
  75% {
    transform: translateX(5vw) translateY(-6vh) scale(0.26);
  }
  78.5714285714% {
    transform: translateX(2vw) translateY(26vh) scale(0.64);
  }
  82.1428571429% {
    transform: translateX(50vw) translateY(1vh) scale(0.44);
  }
  85.7142857143% {
    transform: translateX(-44vw) translateY(31vh) scale(0.59);
  }
  89.2857142857% {
    transform: translateX(-1vw) translateY(-19vh) scale(0.63);
  }
  92.8571428571% {
    transform: translateX(-11vw) translateY(25vh) scale(0.47);
  }
  96.4285714286% {
    transform: translateX(-17vw) translateY(40vh) scale(0.84);
  }
  100% {
    transform: translateX(-18vw) translateY(19vh) scale(0.47);
  }
}
section#invitation .firefly:nth-child(40) {
  animation-name: move40;
}
section#invitation .firefly:nth-child(40)::after {
  animation-duration: 14s, 7418ms;
  animation-delay: 0ms, 5164ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash40 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(40) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(40)::after {
  animation-name: flash40;
}
@keyframes move40 {
  0% {
    transform: translateX(-26vw) translateY(26vh) scale(0.65);
  }
  3.8461538462% {
    transform: translateX(-18vw) translateY(-34vh) scale(0.26);
  }
  7.6923076923% {
    transform: translateX(13vw) translateY(45vh) scale(0.41);
  }
  11.5384615385% {
    transform: translateX(3vw) translateY(12vh) scale(0.49);
  }
  15.3846153846% {
    transform: translateX(-43vw) translateY(-20vh) scale(0.97);
  }
  19.2307692308% {
    transform: translateX(14vw) translateY(-40vh) scale(0.42);
  }
  23.0769230769% {
    transform: translateX(-5vw) translateY(-3vh) scale(0.61);
  }
  26.9230769231% {
    transform: translateX(36vw) translateY(6vh) scale(0.91);
  }
  30.7692307692% {
    transform: translateX(9vw) translateY(40vh) scale(0.28);
  }
  34.6153846154% {
    transform: translateX(-27vw) translateY(-47vh) scale(0.81);
  }
  38.4615384615% {
    transform: translateX(-21vw) translateY(-39vh) scale(0.72);
  }
  42.3076923077% {
    transform: translateX(17vw) translateY(33vh) scale(0.34);
  }
  46.1538461538% {
    transform: translateX(-43vw) translateY(-49vh) scale(0.8);
  }
  50% {
    transform: translateX(13vw) translateY(-7vh) scale(0.58);
  }
  53.8461538462% {
    transform: translateX(2vw) translateY(11vh) scale(0.39);
  }
  57.6923076923% {
    transform: translateX(-46vw) translateY(45vh) scale(0.98);
  }
  61.5384615385% {
    transform: translateX(-30vw) translateY(-29vh) scale(0.4);
  }
  65.3846153846% {
    transform: translateX(-6vw) translateY(-23vh) scale(0.61);
  }
  69.2307692308% {
    transform: translateX(-39vw) translateY(-1vh) scale(0.56);
  }
  73.0769230769% {
    transform: translateX(-2vw) translateY(37vh) scale(0.85);
  }
  76.9230769231% {
    transform: translateX(41vw) translateY(-40vh) scale(0.49);
  }
  80.7692307692% {
    transform: translateX(-31vw) translateY(18vh) scale(0.97);
  }
  84.6153846154% {
    transform: translateX(-22vw) translateY(-43vh) scale(0.53);
  }
  88.4615384615% {
    transform: translateX(16vw) translateY(16vh) scale(0.73);
  }
  92.3076923077% {
    transform: translateX(16vw) translateY(-28vh) scale(0.67);
  }
  96.1538461538% {
    transform: translateX(-30vw) translateY(-14vh) scale(0.27);
  }
  100% {
    transform: translateX(23vw) translateY(29vh) scale(0.45);
  }
}
section#invitation .firefly:nth-child(41) {
  animation-name: move41;
}
section#invitation .firefly:nth-child(41)::after {
  animation-duration: 16s, 8038ms;
  animation-delay: 0ms, 7098ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash41 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(41) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(41)::after {
  animation-name: flash41;
}
@keyframes move41 {
  0% {
    transform: translateX(16vw) translateY(46vh) scale(0.47);
  }
  3.5714285714% {
    transform: translateX(15vw) translateY(-5vh) scale(0.56);
  }
  7.1428571429% {
    transform: translateX(24vw) translateY(35vh) scale(0.77);
  }
  10.7142857143% {
    transform: translateX(29vw) translateY(-34vh) scale(0.57);
  }
  14.2857142857% {
    transform: translateX(29vw) translateY(14vh) scale(0.41);
  }
  17.8571428571% {
    transform: translateX(38vw) translateY(39vh) scale(0.91);
  }
  21.4285714286% {
    transform: translateX(-36vw) translateY(-33vh) scale(0.45);
  }
  25% {
    transform: translateX(10vw) translateY(-7vh) scale(0.65);
  }
  28.5714285714% {
    transform: translateX(19vw) translateY(40vh) scale(0.77);
  }
  32.1428571429% {
    transform: translateX(-18vw) translateY(-42vh) scale(0.73);
  }
  35.7142857143% {
    transform: translateX(-45vw) translateY(-36vh) scale(0.42);
  }
  39.2857142857% {
    transform: translateX(-36vw) translateY(-23vh) scale(0.54);
  }
  42.8571428571% {
    transform: translateX(34vw) translateY(-35vh) scale(0.76);
  }
  46.4285714286% {
    transform: translateX(29vw) translateY(-21vh) scale(0.7);
  }
  50% {
    transform: translateX(0vw) translateY(-21vh) scale(0.62);
  }
  53.5714285714% {
    transform: translateX(-24vw) translateY(-34vh) scale(0.93);
  }
  57.1428571429% {
    transform: translateX(20vw) translateY(-12vh) scale(0.47);
  }
  60.7142857143% {
    transform: translateX(-38vw) translateY(35vh) scale(0.41);
  }
  64.2857142857% {
    transform: translateX(-47vw) translateY(-47vh) scale(0.81);
  }
  67.8571428571% {
    transform: translateX(24vw) translateY(13vh) scale(0.76);
  }
  71.4285714286% {
    transform: translateX(-36vw) translateY(-20vh) scale(0.7);
  }
  75% {
    transform: translateX(-8vw) translateY(24vh) scale(0.82);
  }
  78.5714285714% {
    transform: translateX(-13vw) translateY(-4vh) scale(0.48);
  }
  82.1428571429% {
    transform: translateX(-46vw) translateY(-41vh) scale(1);
  }
  85.7142857143% {
    transform: translateX(-22vw) translateY(-19vh) scale(0.92);
  }
  89.2857142857% {
    transform: translateX(-11vw) translateY(-15vh) scale(0.91);
  }
  92.8571428571% {
    transform: translateX(-35vw) translateY(43vh) scale(0.99);
  }
  96.4285714286% {
    transform: translateX(37vw) translateY(21vh) scale(0.55);
  }
  100% {
    transform: translateX(-19vw) translateY(13vh) scale(0.69);
  }
}
section#invitation .firefly:nth-child(42) {
  animation-name: move42;
}
section#invitation .firefly:nth-child(42)::after {
  animation-duration: 15s, 5362ms;
  animation-delay: 0ms, 3794ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash42 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(42) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(42)::after {
  animation-name: flash42;
}
@keyframes move42 {
  0% {
    transform: translateX(11vw) translateY(47vh) scale(0.92);
  }
  3.5714285714% {
    transform: translateX(15vw) translateY(21vh) scale(0.94);
  }
  7.1428571429% {
    transform: translateX(33vw) translateY(-49vh) scale(0.91);
  }
  10.7142857143% {
    transform: translateX(24vw) translateY(1vh) scale(0.94);
  }
  14.2857142857% {
    transform: translateX(4vw) translateY(-18vh) scale(0.79);
  }
  17.8571428571% {
    transform: translateX(11vw) translateY(18vh) scale(0.51);
  }
  21.4285714286% {
    transform: translateX(-28vw) translateY(2vh) scale(0.48);
  }
  25% {
    transform: translateX(-45vw) translateY(-11vh) scale(0.29);
  }
  28.5714285714% {
    transform: translateX(-44vw) translateY(-1vh) scale(0.29);
  }
  32.1428571429% {
    transform: translateX(-16vw) translateY(6vh) scale(0.99);
  }
  35.7142857143% {
    transform: translateX(34vw) translateY(22vh) scale(0.8);
  }
  39.2857142857% {
    transform: translateX(22vw) translateY(16vh) scale(0.54);
  }
  42.8571428571% {
    transform: translateX(-28vw) translateY(29vh) scale(0.75);
  }
  46.4285714286% {
    transform: translateX(-10vw) translateY(37vh) scale(0.27);
  }
  50% {
    transform: translateX(44vw) translateY(-3vh) scale(0.46);
  }
  53.5714285714% {
    transform: translateX(43vw) translateY(30vh) scale(0.56);
  }
  57.1428571429% {
    transform: translateX(-32vw) translateY(38vh) scale(0.83);
  }
  60.7142857143% {
    transform: translateX(22vw) translateY(-14vh) scale(0.89);
  }
  64.2857142857% {
    transform: translateX(-15vw) translateY(9vh) scale(0.94);
  }
  67.8571428571% {
    transform: translateX(-4vw) translateY(12vh) scale(0.66);
  }
  71.4285714286% {
    transform: translateX(37vw) translateY(19vh) scale(0.48);
  }
  75% {
    transform: translateX(28vw) translateY(21vh) scale(0.34);
  }
  78.5714285714% {
    transform: translateX(-38vw) translateY(-11vh) scale(0.98);
  }
  82.1428571429% {
    transform: translateX(42vw) translateY(-27vh) scale(0.68);
  }
  85.7142857143% {
    transform: translateX(-35vw) translateY(-44vh) scale(0.46);
  }
  89.2857142857% {
    transform: translateX(22vw) translateY(-45vh) scale(0.38);
  }
  92.8571428571% {
    transform: translateX(13vw) translateY(-46vh) scale(0.77);
  }
  96.4285714286% {
    transform: translateX(47vw) translateY(34vh) scale(0.65);
  }
  100% {
    transform: translateX(48vw) translateY(-28vh) scale(0.51);
  }
}
section#invitation .firefly:nth-child(43) {
  animation-name: move43;
}
section#invitation .firefly:nth-child(43)::after {
  animation-duration: 11s, 8926ms;
  animation-delay: 0ms, 8410ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash43 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(43) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(43)::after {
  animation-name: flash43;
}
@keyframes move43 {
  0% {
    transform: translateX(-9vw) translateY(27vh) scale(0.84);
  }
  3.5714285714% {
    transform: translateX(17vw) translateY(-2vh) scale(0.82);
  }
  7.1428571429% {
    transform: translateX(32vw) translateY(13vh) scale(0.34);
  }
  10.7142857143% {
    transform: translateX(-6vw) translateY(34vh) scale(0.47);
  }
  14.2857142857% {
    transform: translateX(13vw) translateY(-8vh) scale(0.87);
  }
  17.8571428571% {
    transform: translateX(4vw) translateY(6vh) scale(0.79);
  }
  21.4285714286% {
    transform: translateX(43vw) translateY(-38vh) scale(0.86);
  }
  25% {
    transform: translateX(-15vw) translateY(43vh) scale(0.43);
  }
  28.5714285714% {
    transform: translateX(40vw) translateY(-25vh) scale(0.64);
  }
  32.1428571429% {
    transform: translateX(16vw) translateY(21vh) scale(0.8);
  }
  35.7142857143% {
    transform: translateX(42vw) translateY(-41vh) scale(0.32);
  }
  39.2857142857% {
    transform: translateX(21vw) translateY(47vh) scale(0.92);
  }
  42.8571428571% {
    transform: translateX(37vw) translateY(-34vh) scale(0.94);
  }
  46.4285714286% {
    transform: translateX(11vw) translateY(39vh) scale(0.39);
  }
  50% {
    transform: translateX(39vw) translateY(42vh) scale(0.4);
  }
  53.5714285714% {
    transform: translateX(-37vw) translateY(-25vh) scale(0.91);
  }
  57.1428571429% {
    transform: translateX(-6vw) translateY(-31vh) scale(0.62);
  }
  60.7142857143% {
    transform: translateX(29vw) translateY(21vh) scale(0.63);
  }
  64.2857142857% {
    transform: translateX(15vw) translateY(13vh) scale(0.67);
  }
  67.8571428571% {
    transform: translateX(-32vw) translateY(-39vh) scale(0.64);
  }
  71.4285714286% {
    transform: translateX(-16vw) translateY(37vh) scale(0.36);
  }
  75% {
    transform: translateX(-25vw) translateY(-9vh) scale(0.61);
  }
  78.5714285714% {
    transform: translateX(-49vw) translateY(-42vh) scale(0.53);
  }
  82.1428571429% {
    transform: translateX(-39vw) translateY(35vh) scale(0.65);
  }
  85.7142857143% {
    transform: translateX(-36vw) translateY(48vh) scale(0.99);
  }
  89.2857142857% {
    transform: translateX(-12vw) translateY(-31vh) scale(0.94);
  }
  92.8571428571% {
    transform: translateX(4vw) translateY(-21vh) scale(0.74);
  }
  96.4285714286% {
    transform: translateX(-3vw) translateY(-16vh) scale(0.62);
  }
  100% {
    transform: translateX(-7vw) translateY(-43vh) scale(0.51);
  }
}
section#invitation .firefly:nth-child(44) {
  animation-name: move44;
}
section#invitation .firefly:nth-child(44)::after {
  animation-duration: 16s, 9231ms;
  animation-delay: 0ms, 6981ms;
  box-shadow: 0 0 0 0 rgb(245, 78, 150);
}
@keyframes flash44 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(245, 78, 150);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(44) {
        box-shadow: 0 0 2vw 0.6vw rgb(245, 78, 150);
      }
    }
  }
}
section#invitation .firefly:nth-child(44)::after {
  animation-name: flash44;
}
@keyframes move44 {
  0% {
    transform: translateX(-7vw) translateY(48vh) scale(0.8);
  }
  4.5454545455% {
    transform: translateX(1vw) translateY(43vh) scale(0.93);
  }
  9.0909090909% {
    transform: translateX(-23vw) translateY(43vh) scale(0.84);
  }
  13.6363636364% {
    transform: translateX(-15vw) translateY(-44vh) scale(0.32);
  }
  18.1818181818% {
    transform: translateX(-49vw) translateY(-26vh) scale(0.47);
  }
  22.7272727273% {
    transform: translateX(5vw) translateY(-42vh) scale(0.56);
  }
  27.2727272727% {
    transform: translateX(-45vw) translateY(28vh) scale(0.89);
  }
  31.8181818182% {
    transform: translateX(46vw) translateY(20vh) scale(0.5);
  }
  36.3636363636% {
    transform: translateX(-23vw) translateY(30vh) scale(0.5);
  }
  40.9090909091% {
    transform: translateX(-42vw) translateY(21vh) scale(0.64);
  }
  45.4545454545% {
    transform: translateX(14vw) translateY(14vh) scale(0.27);
  }
  50% {
    transform: translateX(3vw) translateY(38vh) scale(0.55);
  }
  54.5454545455% {
    transform: translateX(-18vw) translateY(-25vh) scale(0.72);
  }
  59.0909090909% {
    transform: translateX(3vw) translateY(13vh) scale(0.54);
  }
  63.6363636364% {
    transform: translateX(-13vw) translateY(-38vh) scale(0.29);
  }
  68.1818181818% {
    transform: translateX(-22vw) translateY(34vh) scale(1);
  }
  72.7272727273% {
    transform: translateX(30vw) translateY(-7vh) scale(0.62);
  }
  77.2727272727% {
    transform: translateX(41vw) translateY(29vh) scale(0.49);
  }
  81.8181818182% {
    transform: translateX(44vw) translateY(-8vh) scale(0.73);
  }
  86.3636363636% {
    transform: translateX(-40vw) translateY(36vh) scale(0.82);
  }
  90.9090909091% {
    transform: translateX(18vw) translateY(-9vh) scale(0.54);
  }
  95.4545454545% {
    transform: translateX(-24vw) translateY(-19vh) scale(0.66);
  }
  100% {
    transform: translateX(18vw) translateY(1vh) scale(0.39);
  }
}
section#invitation .firefly:nth-child(45) {
  animation-name: move45;
}
section#invitation .firefly:nth-child(45)::after {
  animation-duration: 11s, 7905ms;
  animation-delay: 0ms, 6905ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash45 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(45) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(45)::after {
  animation-name: flash45;
}
@keyframes move45 {
  0% {
    transform: translateX(3vw) translateY(-17vh) scale(0.29);
  }
  4.5454545455% {
    transform: translateX(21vw) translateY(-18vh) scale(0.56);
  }
  9.0909090909% {
    transform: translateX(22vw) translateY(34vh) scale(0.52);
  }
  13.6363636364% {
    transform: translateX(26vw) translateY(50vh) scale(0.28);
  }
  18.1818181818% {
    transform: translateX(21vw) translateY(38vh) scale(0.41);
  }
  22.7272727273% {
    transform: translateX(-46vw) translateY(15vh) scale(0.83);
  }
  27.2727272727% {
    transform: translateX(-19vw) translateY(50vh) scale(1);
  }
  31.8181818182% {
    transform: translateX(-1vw) translateY(2vh) scale(0.61);
  }
  36.3636363636% {
    transform: translateX(38vw) translateY(24vh) scale(0.59);
  }
  40.9090909091% {
    transform: translateX(-19vw) translateY(10vh) scale(0.64);
  }
  45.4545454545% {
    transform: translateX(27vw) translateY(45vh) scale(0.82);
  }
  50% {
    transform: translateX(20vw) translateY(-49vh) scale(0.38);
  }
  54.5454545455% {
    transform: translateX(22vw) translateY(31vh) scale(0.86);
  }
  59.0909090909% {
    transform: translateX(36vw) translateY(-10vh) scale(0.78);
  }
  63.6363636364% {
    transform: translateX(-38vw) translateY(2vh) scale(0.8);
  }
  68.1818181818% {
    transform: translateX(-46vw) translateY(47vh) scale(0.78);
  }
  72.7272727273% {
    transform: translateX(19vw) translateY(-36vh) scale(0.47);
  }
  77.2727272727% {
    transform: translateX(49vw) translateY(-9vh) scale(0.38);
  }
  81.8181818182% {
    transform: translateX(10vw) translateY(20vh) scale(0.92);
  }
  86.3636363636% {
    transform: translateX(7vw) translateY(39vh) scale(0.4);
  }
  90.9090909091% {
    transform: translateX(-31vw) translateY(-37vh) scale(0.86);
  }
  95.4545454545% {
    transform: translateX(25vw) translateY(13vh) scale(0.72);
  }
  100% {
    transform: translateX(-30vw) translateY(-49vh) scale(0.79);
  }
}
section#invitation .firefly:nth-child(46) {
  animation-name: move46;
}
section#invitation .firefly:nth-child(46)::after {
  animation-duration: 12s, 5934ms;
  animation-delay: 0ms, 1585ms;
  box-shadow: 0 0 0 0 purple;
}
@keyframes flash46 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw purple;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(46) {
        box-shadow: 0 0 2vw 0.6vw purple;
      }
    }
  }
}
section#invitation .firefly:nth-child(46)::after {
  animation-name: flash46;
}
@keyframes move46 {
  0% {
    transform: translateX(29vw) translateY(23vh) scale(0.63);
  }
  5.5555555556% {
    transform: translateX(-22vw) translateY(-40vh) scale(0.88);
  }
  11.1111111111% {
    transform: translateX(-19vw) translateY(-4vh) scale(0.55);
  }
  16.6666666667% {
    transform: translateX(-33vw) translateY(31vh) scale(0.42);
  }
  22.2222222222% {
    transform: translateX(-46vw) translateY(-44vh) scale(0.94);
  }
  27.7777777778% {
    transform: translateX(-48vw) translateY(-31vh) scale(0.32);
  }
  33.3333333333% {
    transform: translateX(40vw) translateY(-30vh) scale(0.41);
  }
  38.8888888889% {
    transform: translateX(-41vw) translateY(35vh) scale(0.8);
  }
  44.4444444444% {
    transform: translateX(-27vw) translateY(-23vh) scale(1);
  }
  50% {
    transform: translateX(40vw) translateY(14vh) scale(0.8);
  }
  55.5555555556% {
    transform: translateX(-2vw) translateY(-48vh) scale(0.55);
  }
  61.1111111111% {
    transform: translateX(-41vw) translateY(8vh) scale(0.53);
  }
  66.6666666667% {
    transform: translateX(0vw) translateY(8vh) scale(0.6);
  }
  72.2222222222% {
    transform: translateX(-21vw) translateY(-16vh) scale(0.27);
  }
  77.7777777778% {
    transform: translateX(31vw) translateY(15vh) scale(0.38);
  }
  83.3333333333% {
    transform: translateX(-45vw) translateY(22vh) scale(0.65);
  }
  88.8888888889% {
    transform: translateX(10vw) translateY(38vh) scale(0.8);
  }
  94.4444444444% {
    transform: translateX(10vw) translateY(34vh) scale(0.37);
  }
  100% {
    transform: translateX(-35vw) translateY(11vh) scale(0.73);
  }
}
section#invitation .firefly:nth-child(47) {
  animation-name: move47;
}
section#invitation .firefly:nth-child(47)::after {
  animation-duration: 13s, 7858ms;
  animation-delay: 0ms, 8061ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash47 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(47) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(47)::after {
  animation-name: flash47;
}
@keyframes move47 {
  0% {
    transform: translateX(50vw) translateY(3vh) scale(0.8);
  }
  4.347826087% {
    transform: translateX(30vw) translateY(-22vh) scale(0.46);
  }
  8.6956521739% {
    transform: translateX(-43vw) translateY(24vh) scale(0.44);
  }
  13.0434782609% {
    transform: translateX(-42vw) translateY(2vh) scale(0.8);
  }
  17.3913043478% {
    transform: translateX(10vw) translateY(16vh) scale(0.66);
  }
  21.7391304348% {
    transform: translateX(-42vw) translateY(27vh) scale(0.31);
  }
  26.0869565217% {
    transform: translateX(39vw) translateY(-17vh) scale(0.3);
  }
  30.4347826087% {
    transform: translateX(39vw) translateY(49vh) scale(0.39);
  }
  34.7826086957% {
    transform: translateX(26vw) translateY(40vh) scale(0.54);
  }
  39.1304347826% {
    transform: translateX(13vw) translateY(-45vh) scale(0.79);
  }
  43.4782608696% {
    transform: translateX(36vw) translateY(-9vh) scale(0.8);
  }
  47.8260869565% {
    transform: translateX(-25vw) translateY(-28vh) scale(0.97);
  }
  52.1739130435% {
    transform: translateX(-28vw) translateY(11vh) scale(0.54);
  }
  56.5217391304% {
    transform: translateX(7vw) translateY(14vh) scale(0.62);
  }
  60.8695652174% {
    transform: translateX(-10vw) translateY(29vh) scale(0.66);
  }
  65.2173913043% {
    transform: translateX(-22vw) translateY(-33vh) scale(0.93);
  }
  69.5652173913% {
    transform: translateX(-31vw) translateY(-33vh) scale(0.78);
  }
  73.9130434783% {
    transform: translateX(-10vw) translateY(50vh) scale(0.46);
  }
  78.2608695652% {
    transform: translateX(-31vw) translateY(36vh) scale(0.29);
  }
  82.6086956522% {
    transform: translateX(33vw) translateY(10vh) scale(0.78);
  }
  86.9565217391% {
    transform: translateX(39vw) translateY(18vh) scale(0.95);
  }
  91.3043478261% {
    transform: translateX(8vw) translateY(-49vh) scale(0.71);
  }
  95.652173913% {
    transform: translateX(25vw) translateY(41vh) scale(0.56);
  }
  100% {
    transform: translateX(-43vw) translateY(-27vh) scale(0.8);
  }
}
section#invitation .firefly:nth-child(48) {
  animation-name: move48;
}
section#invitation .firefly:nth-child(48)::after {
  animation-duration: 16s, 8984ms;
  animation-delay: 0ms, 1264ms;
  box-shadow: 0 0 0 0 rgb(255, 123, 0);
}
@keyframes flash48 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(255, 123, 0);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(48) {
        box-shadow: 0 0 2vw 0.6vw rgb(255, 123, 0);
      }
    }
  }
}
section#invitation .firefly:nth-child(48)::after {
  animation-name: flash48;
}
@keyframes move48 {
  0% {
    transform: translateX(-49vw) translateY(-32vh) scale(0.58);
  }
  4% {
    transform: translateX(34vw) translateY(-47vh) scale(0.36);
  }
  8% {
    transform: translateX(-3vw) translateY(-22vh) scale(0.4);
  }
  12% {
    transform: translateX(34vw) translateY(-5vh) scale(0.45);
  }
  16% {
    transform: translateX(35vw) translateY(48vh) scale(0.88);
  }
  20% {
    transform: translateX(19vw) translateY(-33vh) scale(0.83);
  }
  24% {
    transform: translateX(18vw) translateY(-38vh) scale(0.64);
  }
  28% {
    transform: translateX(-35vw) translateY(-33vh) scale(0.75);
  }
  32% {
    transform: translateX(35vw) translateY(18vh) scale(0.28);
  }
  36% {
    transform: translateX(12vw) translateY(37vh) scale(0.88);
  }
  40% {
    transform: translateX(-6vw) translateY(18vh) scale(0.42);
  }
  44% {
    transform: translateX(9vw) translateY(28vh) scale(0.59);
  }
  48% {
    transform: translateX(-13vw) translateY(20vh) scale(0.78);
  }
  52% {
    transform: translateX(-31vw) translateY(47vh) scale(0.55);
  }
  56% {
    transform: translateX(-22vw) translateY(40vh) scale(0.77);
  }
  60% {
    transform: translateX(-46vw) translateY(9vh) scale(0.48);
  }
  64% {
    transform: translateX(3vw) translateY(-27vh) scale(0.97);
  }
  68% {
    transform: translateX(4vw) translateY(43vh) scale(0.67);
  }
  72% {
    transform: translateX(30vw) translateY(47vh) scale(0.36);
  }
  76% {
    transform: translateX(-33vw) translateY(49vh) scale(0.31);
  }
  80% {
    transform: translateX(43vw) translateY(47vh) scale(0.83);
  }
  84% {
    transform: translateX(25vw) translateY(-14vh) scale(0.85);
  }
  88% {
    transform: translateX(25vw) translateY(-23vh) scale(0.6);
  }
  92% {
    transform: translateX(-14vw) translateY(21vh) scale(0.45);
  }
  96% {
    transform: translateX(-48vw) translateY(44vh) scale(0.9);
  }
  100% {
    transform: translateX(-24vw) translateY(-34vh) scale(1);
  }
}
section#invitation .firefly:nth-child(49) {
  animation-name: move49;
}
section#invitation .firefly:nth-child(49)::after {
  animation-duration: 13s, 6592ms;
  animation-delay: 0ms, 8196ms;
  box-shadow: 0 0 0 0 rgb(255, 123, 0);
}
@keyframes flash49 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(255, 123, 0);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(49) {
        box-shadow: 0 0 2vw 0.6vw rgb(255, 123, 0);
      }
    }
  }
}
section#invitation .firefly:nth-child(49)::after {
  animation-name: flash49;
}
@keyframes move49 {
  0% {
    transform: translateX(38vw) translateY(-21vh) scale(0.9);
  }
  3.7037037037% {
    transform: translateX(29vw) translateY(24vh) scale(0.84);
  }
  7.4074074074% {
    transform: translateX(1vw) translateY(34vh) scale(0.28);
  }
  11.1111111111% {
    transform: translateX(5vw) translateY(33vh) scale(0.56);
  }
  14.8148148148% {
    transform: translateX(-41vw) translateY(31vh) scale(0.45);
  }
  18.5185185185% {
    transform: translateX(46vw) translateY(-43vh) scale(0.45);
  }
  22.2222222222% {
    transform: translateX(-22vw) translateY(45vh) scale(0.68);
  }
  25.9259259259% {
    transform: translateX(-31vw) translateY(12vh) scale(0.99);
  }
  29.6296296296% {
    transform: translateX(-37vw) translateY(40vh) scale(0.35);
  }
  33.3333333333% {
    transform: translateX(16vw) translateY(30vh) scale(0.39);
  }
  37.037037037% {
    transform: translateX(0vw) translateY(32vh) scale(0.6);
  }
  40.7407407407% {
    transform: translateX(-42vw) translateY(36vh) scale(0.3);
  }
  44.4444444444% {
    transform: translateX(-5vw) translateY(-45vh) scale(0.4);
  }
  48.1481481481% {
    transform: translateX(-10vw) translateY(15vh) scale(0.29);
  }
  51.8518518519% {
    transform: translateX(-44vw) translateY(14vh) scale(0.74);
  }
  55.5555555556% {
    transform: translateX(-34vw) translateY(-37vh) scale(0.49);
  }
  59.2592592593% {
    transform: translateX(9vw) translateY(25vh) scale(0.44);
  }
  62.962962963% {
    transform: translateX(-34vw) translateY(-46vh) scale(0.34);
  }
  66.6666666667% {
    transform: translateX(-31vw) translateY(-26vh) scale(0.88);
  }
  70.3703703704% {
    transform: translateX(-32vw) translateY(46vh) scale(0.99);
  }
  74.0740740741% {
    transform: translateX(-24vw) translateY(13vh) scale(0.94);
  }
  77.7777777778% {
    transform: translateX(25vw) translateY(35vh) scale(0.57);
  }
  81.4814814815% {
    transform: translateX(-30vw) translateY(35vh) scale(0.97);
  }
  85.1851851852% {
    transform: translateX(-17vw) translateY(45vh) scale(0.62);
  }
  88.8888888889% {
    transform: translateX(-26vw) translateY(5vh) scale(0.42);
  }
  92.5925925926% {
    transform: translateX(-39vw) translateY(36vh) scale(0.44);
  }
  96.2962962963% {
    transform: translateX(-3vw) translateY(-43vh) scale(0.26);
  }
  100% {
    transform: translateX(-10vw) translateY(-12vh) scale(0.38);
  }
}
section#invitation .firefly:nth-child(50) {
  animation-name: move50;
}
section#invitation .firefly:nth-child(50)::after {
  animation-duration: 11s, 5835ms;
  animation-delay: 0ms, 3536ms;
  box-shadow: 0 0 0 0 green;
}
@keyframes flash50 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw green;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(50) {
        box-shadow: 0 0 2vw 0.6vw green;
      }
    }
  }
}
section#invitation .firefly:nth-child(50)::after {
  animation-name: flash50;
}
@keyframes move50 {
  0% {
    transform: translateX(-43vw) translateY(17vh) scale(0.31);
  }
  5.2631578947% {
    transform: translateX(20vw) translateY(10vh) scale(0.75);
  }
  10.5263157895% {
    transform: translateX(-22vw) translateY(0vh) scale(0.4);
  }
  15.7894736842% {
    transform: translateX(32vw) translateY(17vh) scale(0.94);
  }
  21.0526315789% {
    transform: translateX(-44vw) translateY(35vh) scale(0.85);
  }
  26.3157894737% {
    transform: translateX(-24vw) translateY(-32vh) scale(0.69);
  }
  31.5789473684% {
    transform: translateX(-30vw) translateY(32vh) scale(0.63);
  }
  36.8421052632% {
    transform: translateX(-10vw) translateY(-38vh) scale(0.46);
  }
  42.1052631579% {
    transform: translateX(7vw) translateY(19vh) scale(0.84);
  }
  47.3684210526% {
    transform: translateX(16vw) translateY(-29vh) scale(0.54);
  }
  52.6315789474% {
    transform: translateX(-43vw) translateY(38vh) scale(0.63);
  }
  57.8947368421% {
    transform: translateX(-46vw) translateY(-11vh) scale(0.51);
  }
  63.1578947368% {
    transform: translateX(-15vw) translateY(-14vh) scale(0.84);
  }
  68.4210526316% {
    transform: translateX(38vw) translateY(-24vh) scale(0.45);
  }
  73.6842105263% {
    transform: translateX(12vw) translateY(-38vh) scale(0.97);
  }
  78.9473684211% {
    transform: translateX(-27vw) translateY(-38vh) scale(0.86);
  }
  84.2105263158% {
    transform: translateX(35vw) translateY(32vh) scale(0.26);
  }
  89.4736842105% {
    transform: translateX(-21vw) translateY(-6vh) scale(0.95);
  }
  94.7368421053% {
    transform: translateX(-43vw) translateY(-34vh) scale(0.52);
  }
  100% {
    transform: translateX(-43vw) translateY(0vh) scale(0.31);
  }
}
section#invitation .firefly:nth-child(51) {
  animation-name: move51;
}
section#invitation .firefly:nth-child(51)::after {
  animation-duration: 17s, 9751ms;
  animation-delay: 0ms, 3661ms;
  box-shadow: 0 0 0 0 rgb(255, 123, 0);
}
@keyframes flash51 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw rgb(255, 123, 0);
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(51) {
        box-shadow: 0 0 2vw 0.6vw rgb(255, 123, 0);
      }
    }
  }
}
section#invitation .firefly:nth-child(51)::after {
  animation-name: flash51;
}
@keyframes move51 {
  0% {
    transform: translateX(-42vw) translateY(22vh) scale(0.38);
  }
  4.347826087% {
    transform: translateX(13vw) translateY(24vh) scale(0.31);
  }
  8.6956521739% {
    transform: translateX(47vw) translateY(1vh) scale(1);
  }
  13.0434782609% {
    transform: translateX(-7vw) translateY(-38vh) scale(0.98);
  }
  17.3913043478% {
    transform: translateX(30vw) translateY(-26vh) scale(0.38);
  }
  21.7391304348% {
    transform: translateX(16vw) translateY(-25vh) scale(0.38);
  }
  26.0869565217% {
    transform: translateX(39vw) translateY(-3vh) scale(0.49);
  }
  30.4347826087% {
    transform: translateX(28vw) translateY(-34vh) scale(0.52);
  }
  34.7826086957% {
    transform: translateX(-1vw) translateY(-21vh) scale(0.56);
  }
  39.1304347826% {
    transform: translateX(2vw) translateY(-39vh) scale(0.73);
  }
  43.4782608696% {
    transform: translateX(-21vw) translateY(44vh) scale(0.97);
  }
  47.8260869565% {
    transform: translateX(9vw) translateY(-6vh) scale(0.95);
  }
  52.1739130435% {
    transform: translateX(-47vw) translateY(-48vh) scale(0.53);
  }
  56.5217391304% {
    transform: translateX(33vw) translateY(12vh) scale(0.29);
  }
  60.8695652174% {
    transform: translateX(41vw) translateY(-9vh) scale(0.76);
  }
  65.2173913043% {
    transform: translateX(-5vw) translateY(42vh) scale(0.84);
  }
  69.5652173913% {
    transform: translateX(9vw) translateY(-12vh) scale(0.3);
  }
  73.9130434783% {
    transform: translateX(-32vw) translateY(42vh) scale(0.55);
  }
  78.2608695652% {
    transform: translateX(-37vw) translateY(9vh) scale(0.98);
  }
  82.6086956522% {
    transform: translateX(-31vw) translateY(47vh) scale(0.8);
  }
  86.9565217391% {
    transform: translateX(40vw) translateY(13vh) scale(0.45);
  }
  91.3043478261% {
    transform: translateX(50vw) translateY(30vh) scale(0.52);
  }
  95.652173913% {
    transform: translateX(-14vw) translateY(-44vh) scale(0.76);
  }
  100% {
    transform: translateX(29vw) translateY(31vh) scale(0.56);
  }
}
section#invitation .firefly:nth-child(52) {
  animation-name: move52;
}
section#invitation .firefly:nth-child(52)::after {
  animation-duration: 12s, 9271ms;
  animation-delay: 0ms, 4247ms;
  box-shadow: 0 0 0 0 cyan;
}
@keyframes flash52 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw cyan;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(52) {
        box-shadow: 0 0 2vw 0.6vw cyan;
      }
    }
  }
}
section#invitation .firefly:nth-child(52)::after {
  animation-name: flash52;
}
@keyframes move52 {
  0% {
    transform: translateX(-12vw) translateY(-35vh) scale(0.89);
  }
  4.347826087% {
    transform: translateX(42vw) translateY(-1vh) scale(0.68);
  }
  8.6956521739% {
    transform: translateX(49vw) translateY(-48vh) scale(0.87);
  }
  13.0434782609% {
    transform: translateX(23vw) translateY(17vh) scale(0.63);
  }
  17.3913043478% {
    transform: translateX(-26vw) translateY(49vh) scale(0.86);
  }
  21.7391304348% {
    transform: translateX(33vw) translateY(2vh) scale(0.9);
  }
  26.0869565217% {
    transform: translateX(-47vw) translateY(-18vh) scale(0.29);
  }
  30.4347826087% {
    transform: translateX(44vw) translateY(34vh) scale(0.72);
  }
  34.7826086957% {
    transform: translateX(36vw) translateY(26vh) scale(0.67);
  }
  39.1304347826% {
    transform: translateX(-7vw) translateY(-18vh) scale(0.73);
  }
  43.4782608696% {
    transform: translateX(-16vw) translateY(-42vh) scale(0.56);
  }
  47.8260869565% {
    transform: translateX(-47vw) translateY(44vh) scale(0.64);
  }
  52.1739130435% {
    transform: translateX(39vw) translateY(14vh) scale(0.61);
  }
  56.5217391304% {
    transform: translateX(12vw) translateY(7vh) scale(0.91);
  }
  60.8695652174% {
    transform: translateX(24vw) translateY(-14vh) scale(0.95);
  }
  65.2173913043% {
    transform: translateX(-17vw) translateY(-40vh) scale(0.6);
  }
  69.5652173913% {
    transform: translateX(48vw) translateY(-24vh) scale(0.91);
  }
  73.9130434783% {
    transform: translateX(1vw) translateY(17vh) scale(0.53);
  }
  78.2608695652% {
    transform: translateX(14vw) translateY(-41vh) scale(0.3);
  }
  82.6086956522% {
    transform: translateX(-3vw) translateY(-28vh) scale(0.85);
  }
  86.9565217391% {
    transform: translateX(-47vw) translateY(-18vh) scale(0.94);
  }
  91.3043478261% {
    transform: translateX(11vw) translateY(-42vh) scale(0.75);
  }
  95.652173913% {
    transform: translateX(17vw) translateY(30vh) scale(0.6);
  }
  100% {
    transform: translateX(-14vw) translateY(31vh) scale(0.74);
  }
}
section#invitation .firefly:nth-child(53) {
  animation-name: move53;
}
section#invitation .firefly:nth-child(53)::after {
  animation-duration: 16s, 7260ms;
  animation-delay: 0ms, 5395ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash53 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(53) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(53)::after {
  animation-name: flash53;
}
@keyframes move53 {
  0% {
    transform: translateX(-43vw) translateY(-44vh) scale(0.92);
  }
  3.8461538462% {
    transform: translateX(-48vw) translateY(35vh) scale(0.71);
  }
  7.6923076923% {
    transform: translateX(33vw) translateY(-14vh) scale(0.5);
  }
  11.5384615385% {
    transform: translateX(-30vw) translateY(-20vh) scale(0.84);
  }
  15.3846153846% {
    transform: translateX(29vw) translateY(-38vh) scale(0.69);
  }
  19.2307692308% {
    transform: translateX(15vw) translateY(32vh) scale(0.9);
  }
  23.0769230769% {
    transform: translateX(-9vw) translateY(16vh) scale(0.73);
  }
  26.9230769231% {
    transform: translateX(-17vw) translateY(41vh) scale(0.95);
  }
  30.7692307692% {
    transform: translateX(32vw) translateY(35vh) scale(0.59);
  }
  34.6153846154% {
    transform: translateX(28vw) translateY(-42vh) scale(0.31);
  }
  38.4615384615% {
    transform: translateX(23vw) translateY(12vh) scale(0.27);
  }
  42.3076923077% {
    transform: translateX(-4vw) translateY(-8vh) scale(0.55);
  }
  46.1538461538% {
    transform: translateX(23vw) translateY(1vh) scale(0.68);
  }
  50% {
    transform: translateX(-8vw) translateY(33vh) scale(0.4);
  }
  53.8461538462% {
    transform: translateX(21vw) translateY(-13vh) scale(0.31);
  }
  57.6923076923% {
    transform: translateX(40vw) translateY(47vh) scale(0.89);
  }
  61.5384615385% {
    transform: translateX(-44vw) translateY(-20vh) scale(0.61);
  }
  65.3846153846% {
    transform: translateX(-48vw) translateY(-40vh) scale(0.7);
  }
  69.2307692308% {
    transform: translateX(47vw) translateY(48vh) scale(0.62);
  }
  73.0769230769% {
    transform: translateX(-3vw) translateY(-47vh) scale(0.32);
  }
  76.9230769231% {
    transform: translateX(21vw) translateY(-2vh) scale(0.98);
  }
  80.7692307692% {
    transform: translateX(30vw) translateY(31vh) scale(0.28);
  }
  84.6153846154% {
    transform: translateX(-37vw) translateY(20vh) scale(0.95);
  }
  88.4615384615% {
    transform: translateX(-40vw) translateY(41vh) scale(0.26);
  }
  92.3076923077% {
    transform: translateX(-25vw) translateY(-6vh) scale(0.75);
  }
  96.1538461538% {
    transform: translateX(-34vw) translateY(-23vh) scale(0.56);
  }
  100% {
    transform: translateX(-35vw) translateY(-25vh) scale(0.46);
  }
}
section#invitation .firefly:nth-child(54) {
  animation-name: move54;
}
section#invitation .firefly:nth-child(54)::after {
  animation-duration: 13s, 7063ms;
  animation-delay: 0ms, 5518ms;
  box-shadow: 0 0 0 0 purple;
}
@keyframes flash54 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw purple;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(54) {
        box-shadow: 0 0 2vw 0.6vw purple;
      }
    }
  }
}
section#invitation .firefly:nth-child(54)::after {
  animation-name: flash54;
}
@keyframes move54 {
  0% {
    transform: translateX(-6vw) translateY(10vh) scale(0.32);
  }
  4% {
    transform: translateX(-47vw) translateY(-4vh) scale(0.8);
  }
  8% {
    transform: translateX(-39vw) translateY(25vh) scale(0.85);
  }
  12% {
    transform: translateX(12vw) translateY(-20vh) scale(0.64);
  }
  16% {
    transform: translateX(-1vw) translateY(-18vh) scale(0.58);
  }
  20% {
    transform: translateX(44vw) translateY(-7vh) scale(0.76);
  }
  24% {
    transform: translateX(34vw) translateY(-38vh) scale(0.67);
  }
  28% {
    transform: translateX(-38vw) translateY(26vh) scale(0.51);
  }
  32% {
    transform: translateX(17vw) translateY(40vh) scale(0.66);
  }
  36% {
    transform: translateX(34vw) translateY(4vh) scale(0.28);
  }
  40% {
    transform: translateX(49vw) translateY(-5vh) scale(0.64);
  }
  44% {
    transform: translateX(2vw) translateY(-49vh) scale(0.65);
  }
  48% {
    transform: translateX(-47vw) translateY(-11vh) scale(0.8);
  }
  52% {
    transform: translateX(-16vw) translateY(45vh) scale(0.27);
  }
  56% {
    transform: translateX(25vw) translateY(17vh) scale(0.54);
  }
  60% {
    transform: translateX(48vw) translateY(-35vh) scale(0.68);
  }
  64% {
    transform: translateX(27vw) translateY(-38vh) scale(0.87);
  }
  68% {
    transform: translateX(-13vw) translateY(16vh) scale(0.66);
  }
  72% {
    transform: translateX(24vw) translateY(-44vh) scale(0.6);
  }
  76% {
    transform: translateX(1vw) translateY(-45vh) scale(0.98);
  }
  80% {
    transform: translateX(25vw) translateY(-31vh) scale(0.5);
  }
  84% {
    transform: translateX(-28vw) translateY(-27vh) scale(0.39);
  }
  88% {
    transform: translateX(4vw) translateY(-24vh) scale(0.85);
  }
  92% {
    transform: translateX(11vw) translateY(-2vh) scale(0.85);
  }
  96% {
    transform: translateX(7vw) translateY(11vh) scale(0.43);
  }
  100% {
    transform: translateX(36vw) translateY(-13vh) scale(0.66);
  }
}
section#invitation .firefly:nth-child(55) {
  animation-name: move55;
}
section#invitation .firefly:nth-child(55)::after {
  animation-duration: 17s, 8690ms;
  animation-delay: 0ms, 1318ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash55 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(55) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(55)::after {
  animation-name: flash55;
}
@keyframes move55 {
  0% {
    transform: translateX(-11vw) translateY(49vh) scale(0.64);
  }
  4.5454545455% {
    transform: translateX(19vw) translateY(6vh) scale(0.26);
  }
  9.0909090909% {
    transform: translateX(-44vw) translateY(23vh) scale(0.95);
  }
  13.6363636364% {
    transform: translateX(42vw) translateY(45vh) scale(0.7);
  }
  18.1818181818% {
    transform: translateX(41vw) translateY(-11vh) scale(0.34);
  }
  22.7272727273% {
    transform: translateX(-19vw) translateY(-40vh) scale(0.45);
  }
  27.2727272727% {
    transform: translateX(12vw) translateY(44vh) scale(0.49);
  }
  31.8181818182% {
    transform: translateX(50vw) translateY(21vh) scale(0.68);
  }
  36.3636363636% {
    transform: translateX(-44vw) translateY(22vh) scale(0.6);
  }
  40.9090909091% {
    transform: translateX(-28vw) translateY(-1vh) scale(0.43);
  }
  45.4545454545% {
    transform: translateX(-21vw) translateY(-23vh) scale(0.53);
  }
  50% {
    transform: translateX(8vw) translateY(2vh) scale(0.65);
  }
  54.5454545455% {
    transform: translateX(42vw) translateY(35vh) scale(0.8);
  }
  59.0909090909% {
    transform: translateX(-21vw) translateY(9vh) scale(0.7);
  }
  63.6363636364% {
    transform: translateX(-18vw) translateY(17vh) scale(0.59);
  }
  68.1818181818% {
    transform: translateX(-28vw) translateY(42vh) scale(0.62);
  }
  72.7272727273% {
    transform: translateX(-49vw) translateY(5vh) scale(0.37);
  }
  77.2727272727% {
    transform: translateX(9vw) translateY(-3vh) scale(0.42);
  }
  81.8181818182% {
    transform: translateX(-28vw) translateY(-22vh) scale(0.74);
  }
  86.3636363636% {
    transform: translateX(-5vw) translateY(-45vh) scale(0.53);
  }
  90.9090909091% {
    transform: translateX(-16vw) translateY(47vh) scale(0.53);
  }
  95.4545454545% {
    transform: translateX(39vw) translateY(23vh) scale(0.83);
  }
  100% {
    transform: translateX(-6vw) translateY(26vh) scale(0.28);
  }
}
section#invitation .firefly:nth-child(56) {
  animation-name: move56;
}
section#invitation .firefly:nth-child(56)::after {
  animation-duration: 15s, 9272ms;
  animation-delay: 0ms, 6001ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash56 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(56) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(56)::after {
  animation-name: flash56;
}
@keyframes move56 {
  0% {
    transform: translateX(-9vw) translateY(-37vh) scale(0.67);
  }
  4.347826087% {
    transform: translateX(22vw) translateY(12vh) scale(0.65);
  }
  8.6956521739% {
    transform: translateX(50vw) translateY(-40vh) scale(0.41);
  }
  13.0434782609% {
    transform: translateX(24vw) translateY(-43vh) scale(0.6);
  }
  17.3913043478% {
    transform: translateX(37vw) translateY(-45vh) scale(0.83);
  }
  21.7391304348% {
    transform: translateX(-7vw) translateY(-17vh) scale(0.71);
  }
  26.0869565217% {
    transform: translateX(-18vw) translateY(-12vh) scale(0.53);
  }
  30.4347826087% {
    transform: translateX(29vw) translateY(33vh) scale(0.54);
  }
  34.7826086957% {
    transform: translateX(19vw) translateY(-4vh) scale(0.44);
  }
  39.1304347826% {
    transform: translateX(-26vw) translateY(-38vh) scale(0.99);
  }
  43.4782608696% {
    transform: translateX(-22vw) translateY(34vh) scale(0.79);
  }
  47.8260869565% {
    transform: translateX(-15vw) translateY(37vh) scale(0.63);
  }
  52.1739130435% {
    transform: translateX(13vw) translateY(-24vh) scale(0.61);
  }
  56.5217391304% {
    transform: translateX(8vw) translateY(37vh) scale(0.42);
  }
  60.8695652174% {
    transform: translateX(-21vw) translateY(2vh) scale(0.57);
  }
  65.2173913043% {
    transform: translateX(50vw) translateY(-11vh) scale(0.75);
  }
  69.5652173913% {
    transform: translateX(-22vw) translateY(45vh) scale(0.66);
  }
  73.9130434783% {
    transform: translateX(-48vw) translateY(-12vh) scale(0.96);
  }
  78.2608695652% {
    transform: translateX(32vw) translateY(-45vh) scale(0.38);
  }
  82.6086956522% {
    transform: translateX(-19vw) translateY(49vh) scale(0.26);
  }
  86.9565217391% {
    transform: translateX(1vw) translateY(-28vh) scale(0.88);
  }
  91.3043478261% {
    transform: translateX(48vw) translateY(-10vh) scale(0.84);
  }
  95.652173913% {
    transform: translateX(29vw) translateY(-9vh) scale(0.45);
  }
  100% {
    transform: translateX(-10vw) translateY(16vh) scale(0.41);
  }
}
section#invitation .firefly:nth-child(57) {
  animation-name: move57;
}
section#invitation .firefly:nth-child(57)::after {
  animation-duration: 14s, 5327ms;
  animation-delay: 0ms, 4901ms;
  box-shadow: 0 0 0 0 blue;
}
@keyframes flash57 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw blue;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(57) {
        box-shadow: 0 0 2vw 0.6vw blue;
      }
    }
  }
}
section#invitation .firefly:nth-child(57)::after {
  animation-name: flash57;
}
@keyframes move57 {
  0% {
    transform: translateX(-37vw) translateY(-20vh) scale(0.48);
  }
  4.347826087% {
    transform: translateX(-11vw) translateY(18vh) scale(0.91);
  }
  8.6956521739% {
    transform: translateX(37vw) translateY(-49vh) scale(0.52);
  }
  13.0434782609% {
    transform: translateX(-18vw) translateY(-31vh) scale(0.58);
  }
  17.3913043478% {
    transform: translateX(-39vw) translateY(17vh) scale(0.3);
  }
  21.7391304348% {
    transform: translateX(-14vw) translateY(4vh) scale(0.29);
  }
  26.0869565217% {
    transform: translateX(-42vw) translateY(-28vh) scale(0.3);
  }
  30.4347826087% {
    transform: translateX(-6vw) translateY(-3vh) scale(0.84);
  }
  34.7826086957% {
    transform: translateX(-22vw) translateY(-5vh) scale(0.88);
  }
  39.1304347826% {
    transform: translateX(-46vw) translateY(-27vh) scale(1);
  }
  43.4782608696% {
    transform: translateX(-14vw) translateY(5vh) scale(0.88);
  }
  47.8260869565% {
    transform: translateX(11vw) translateY(36vh) scale(0.44);
  }
  52.1739130435% {
    transform: translateX(-48vw) translateY(45vh) scale(0.63);
  }
  56.5217391304% {
    transform: translateX(-18vw) translateY(27vh) scale(0.32);
  }
  60.8695652174% {
    transform: translateX(29vw) translateY(-28vh) scale(0.63);
  }
  65.2173913043% {
    transform: translateX(-1vw) translateY(-32vh) scale(0.56);
  }
  69.5652173913% {
    transform: translateX(46vw) translateY(-8vh) scale(0.73);
  }
  73.9130434783% {
    transform: translateX(42vw) translateY(-35vh) scale(0.58);
  }
  78.2608695652% {
    transform: translateX(43vw) translateY(43vh) scale(0.32);
  }
  82.6086956522% {
    transform: translateX(-22vw) translateY(2vh) scale(0.61);
  }
  86.9565217391% {
    transform: translateX(-9vw) translateY(44vh) scale(0.53);
  }
  91.3043478261% {
    transform: translateX(17vw) translateY(-11vh) scale(0.99);
  }
  95.652173913% {
    transform: translateX(30vw) translateY(20vh) scale(0.44);
  }
  100% {
    transform: translateX(25vw) translateY(34vh) scale(0.4);
  }
}
section#invitation .firefly:nth-child(58) {
  animation-name: move58;
}
section#invitation .firefly:nth-child(58)::after {
  animation-duration: 15s, 8501ms;
  animation-delay: 0ms, 7341ms;
  box-shadow: 0 0 0 0 purple;
}
@keyframes flash58 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw purple;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(58) {
        box-shadow: 0 0 2vw 0.6vw purple;
      }
    }
  }
}
section#invitation .firefly:nth-child(58)::after {
  animation-name: flash58;
}
@keyframes move58 {
  0% {
    transform: translateX(-28vw) translateY(33vh) scale(0.56);
  }
  4.7619047619% {
    transform: translateX(-36vw) translateY(11vh) scale(0.31);
  }
  9.5238095238% {
    transform: translateX(33vw) translateY(23vh) scale(0.4);
  }
  14.2857142857% {
    transform: translateX(-29vw) translateY(-48vh) scale(0.43);
  }
  19.0476190476% {
    transform: translateX(-37vw) translateY(32vh) scale(0.42);
  }
  23.8095238095% {
    transform: translateX(19vw) translateY(17vh) scale(0.27);
  }
  28.5714285714% {
    transform: translateX(44vw) translateY(-19vh) scale(0.43);
  }
  33.3333333333% {
    transform: translateX(-39vw) translateY(-5vh) scale(0.92);
  }
  38.0952380952% {
    transform: translateX(-19vw) translateY(6vh) scale(0.68);
  }
  42.8571428571% {
    transform: translateX(-26vw) translateY(-33vh) scale(0.29);
  }
  47.619047619% {
    transform: translateX(5vw) translateY(28vh) scale(0.74);
  }
  52.380952381% {
    transform: translateX(-19vw) translateY(-45vh) scale(0.72);
  }
  57.1428571429% {
    transform: translateX(-8vw) translateY(27vh) scale(0.34);
  }
  61.9047619048% {
    transform: translateX(-28vw) translateY(-10vh) scale(0.39);
  }
  66.6666666667% {
    transform: translateX(19vw) translateY(-29vh) scale(0.54);
  }
  71.4285714286% {
    transform: translateX(-14vw) translateY(28vh) scale(0.74);
  }
  76.1904761905% {
    transform: translateX(-27vw) translateY(5vh) scale(0.82);
  }
  80.9523809524% {
    transform: translateX(-32vw) translateY(6vh) scale(0.43);
  }
  85.7142857143% {
    transform: translateX(43vw) translateY(-14vh) scale(0.87);
  }
  90.4761904762% {
    transform: translateX(12vw) translateY(7vh) scale(0.29);
  }
  95.2380952381% {
    transform: translateX(26vw) translateY(2vh) scale(0.92);
  }
  100% {
    transform: translateX(-27vw) translateY(49vh) scale(0.46);
  }
}
section#invitation .firefly:nth-child(59) {
  animation-name: move59;
}
section#invitation .firefly:nth-child(59)::after {
  animation-duration: 13s, 7531ms;
  animation-delay: 0ms, 3052ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash59 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(59) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(59)::after {
  animation-name: flash59;
}
@keyframes move59 {
  0% {
    transform: translateX(-34vw) translateY(-33vh) scale(0.37);
  }
  4.5454545455% {
    transform: translateX(13vw) translateY(4vh) scale(0.27);
  }
  9.0909090909% {
    transform: translateX(11vw) translateY(-22vh) scale(0.41);
  }
  13.6363636364% {
    transform: translateX(40vw) translateY(-10vh) scale(0.28);
  }
  18.1818181818% {
    transform: translateX(-42vw) translateY(25vh) scale(0.32);
  }
  22.7272727273% {
    transform: translateX(-11vw) translateY(-24vh) scale(0.53);
  }
  27.2727272727% {
    transform: translateX(-11vw) translateY(2vh) scale(0.73);
  }
  31.8181818182% {
    transform: translateX(-1vw) translateY(-44vh) scale(0.28);
  }
  36.3636363636% {
    transform: translateX(28vw) translateY(25vh) scale(0.39);
  }
  40.9090909091% {
    transform: translateX(50vw) translateY(-13vh) scale(0.26);
  }
  45.4545454545% {
    transform: translateX(39vw) translateY(-20vh) scale(0.93);
  }
  50% {
    transform: translateX(21vw) translateY(14vh) scale(0.79);
  }
  54.5454545455% {
    transform: translateX(30vw) translateY(22vh) scale(0.39);
  }
  59.0909090909% {
    transform: translateX(-12vw) translateY(-16vh) scale(0.83);
  }
  63.6363636364% {
    transform: translateX(-11vw) translateY(43vh) scale(0.96);
  }
  68.1818181818% {
    transform: translateX(-8vw) translateY(-7vh) scale(0.28);
  }
  72.7272727273% {
    transform: translateX(47vw) translateY(50vh) scale(0.8);
  }
  77.2727272727% {
    transform: translateX(-8vw) translateY(-26vh) scale(0.94);
  }
  81.8181818182% {
    transform: translateX(-12vw) translateY(-13vh) scale(0.69);
  }
  86.3636363636% {
    transform: translateX(33vw) translateY(14vh) scale(0.28);
  }
  90.9090909091% {
    transform: translateX(-5vw) translateY(-31vh) scale(0.59);
  }
  95.4545454545% {
    transform: translateX(-31vw) translateY(-6vh) scale(0.31);
  }
  100% {
    transform: translateX(-34vw) translateY(-29vh) scale(0.77);
  }
}
section#invitation .firefly:nth-child(60) {
  animation-name: move60;
}
section#invitation .firefly:nth-child(60)::after {
  animation-duration: 14s, 7019ms;
  animation-delay: 0ms, 5142ms;
  box-shadow: 0 0 0 0 yellow;
}
@keyframes flash60 {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  100% {
    opacity: 1;
    box-shadow: 0 0 3vw 0.8vw yellow;
    @media screen and (min-width: 1024px) {
      section#invitation .firefly:nth-child(60) {
        box-shadow: 0 0 2vw 0.6vw yellow;
      }
    }
  }
}
section#invitation .firefly:nth-child(60)::after {
  animation-name: flash60;
}
@keyframes move60 {
  0% {
    transform: translateX(-35vw) translateY(-34vh) scale(0.84);
  }
  4.7619047619% {
    transform: translateX(-25vw) translateY(33vh) scale(0.71);
  }
  9.5238095238% {
    transform: translateX(1vw) translateY(-8vh) scale(0.81);
  }
  14.2857142857% {
    transform: translateX(-39vw) translateY(-32vh) scale(0.29);
  }
  19.0476190476% {
    transform: translateX(-26vw) translateY(15vh) scale(0.63);
  }
  23.8095238095% {
    transform: translateX(24vw) translateY(-14vh) scale(0.89);
  }
  28.5714285714% {
    transform: translateX(-18vw) translateY(43vh) scale(0.93);
  }
  33.3333333333% {
    transform: translateX(-6vw) translateY(-23vh) scale(0.79);
  }
  38.0952380952% {
    transform: translateX(-45vw) translateY(-3vh) scale(0.29);
  }
  42.8571428571% {
    transform: translateX(-14vw) translateY(-6vh) scale(0.94);
  }
  47.619047619% {
    transform: translateX(37vw) translateY(-40vh) scale(0.26);
  }
  52.380952381% {
    transform: translateX(32vw) translateY(-33vh) scale(0.65);
  }
  57.1428571429% {
    transform: translateX(-13vw) translateY(-23vh) scale(0.37);
  }
  61.9047619048% {
    transform: translateX(-36vw) translateY(11vh) scale(0.41);
  }
  66.6666666667% {
    transform: translateX(-3vw) translateY(9vh) scale(0.83);
  }
  71.4285714286% {
    transform: translateX(-42vw) translateY(25vh) scale(0.71);
  }
  76.1904761905% {
    transform: translateX(1vw) translateY(-29vh) scale(0.31);
  }
  80.9523809524% {
    transform: translateX(-8vw) translateY(-49vh) scale(0.96);
  }
  85.7142857143% {
    transform: translateX(7vw) translateY(21vh) scale(0.57);
  }
  90.4761904762% {
    transform: translateX(9vw) translateY(15vh) scale(0.79);
  }
  95.2380952381% {
    transform: translateX(48vw) translateY(50vh) scale(0.74);
  }
  100% {
    transform: translateX(-11vw) translateY(7vh) scale(0.99);
  }
}
@keyframes drift {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#mainpage {
  opacity: 0;
  transition: opacity 1.5s ease;
  display: none; /* Initially hidden */
}
#mainpage .leaf-footer {
  position: absolute;
  width: 100%;
  height: auto;
  bottom: 0;
}

#guests {
  position: relative;
  padding-bottom: 10vw;
}
#guests .container {
  padding: 5vw 0;
}
#guests .container h2 {
  text-align: center;
  font-family: "Just Me Again Down Here", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 6rem;
}
#guests .container p.notice {
  text-align: center;
  font-family: "Just Me Again Down Here", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 2.5rem;
}
#guests table {
  font-family: arial;
  max-width: 100%;
  background-color: transparent;
  border-collapse: collapse;
  border-spacing: 0;
  z-index: 1100;
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
}
#guests .table {
  width: 100%;
  margin-bottom: 20px;
}
#guests .table th,
#guests .table td {
  font-weight: normal;
  font-size: 12px;
  padding: 8px 15px;
  line-height: 20px;
  text-align: left;
  vertical-align: middle;
  border-top: 1px solid #dddddd;
  background-color: #fff;
}
#guests .table thead th {
  background: #eeeeee;
  vertical-align: bottom;
}
#guests .table tbody > tr:nth-child(odd) > td,
#guests .table tbody > tr:nth-child(odd) > th {
  background-color: #fafafa;
}
#guests .table .t-small {
  width: 5%;
}
#guests .table .t-medium {
  width: 40%;
}
@media screen and (min-width: 1200px) {
  #guests .table .t-medium {
    width: 75%;
  }
}
#guests .table .t-status {
  font-weight: bold;
}
#guests .confirmation-popup {
  display: none; /* Initially hidden */
  background-color: white;
  padding: 10px;
  border: 1px solid black;
  position: absolute;
  z-index: 1000;
}
#guests .t-status .btn-undecided, #guests .t-status .btn-attend {
  border: none !important;
  padding: 5px;
  color: #787676;
}
#guests .t-status .status-text-undecided {
  color: #f89406;
  opacity: 0.6;
}
#guests .t-status .status-text-attending {
  color: #46a546;
  opacity: 1;
}
#guests .t-status .guest-status.undecided {
  color: #f89406;
}
#guests .t-status .guest-status.attending {
  color: #46a546;
}
#guests .t-status .confirmation-popup {
  display: none; /* Initially hidden */
  position: fixed; /* Fixed positioning to stay on top of page */
  top: 50%; /* Center vertically */
  left: 50%; /* Center horizontally */
  transform: translate(-50%, -50%); /* Exact centering */
  background-color: white;
  padding: 20px;
  border: 1px solid black;
  z-index: 1000; /* Make sure the modal is on top */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  width: 300px; /* Modal width */
  text-align: center; /* Center text inside */
}
#guests .t-status .modal-overlay {
  position: fixed; /* Cover the entire screen */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
  z-index: 999; /* Below the modal */
  display: none; /* Initially hidden */
}

div#imageModal {
  z-index: 9999;
}

.gallery {
  width: 100%;
  overflow: hidden; /* Hide overflow to create a marquee effect */
  position: relative;
  z-index: 1100;
}

.wrapper {
  display: flex; /* Use flexbox for horizontal layout */
  width: 4800px; /* Adjust width for 12 images + 12 clones */
  animation: scroll 50s linear infinite; /* Adjust the speed of scrolling here */
  padding: 5vw 0;
}

.box {
  flex-shrink: 0; /* Prevent boxes from shrinking */
  width: 200px; /* Set a fixed width for each box */
  height: auto; /* Maintain aspect ratio */
  margin-right: 20px; /* Add space between images */
  position: relative; /* Position for the polaroid effect */
  transition: 0.5s;
  overflow: hidden;
  cursor: pointer;
  background-color: rgb(255, 255, 255);
  padding: 15px 10px 45px 10px;
  border: 1px solid #e0e0e0;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.box img {
  width: 100%; /* Make the image fill the box */
  height: auto; /* Maintain aspect ratio */
  border: solid 0.5px #ededed;
}
.box p {
  position: absolute;
  font-size: 1.3rem;
  letter-spacing: 2px;
  text-align: center;
  bottom: 0;
  right: 0;
  left: 0;
  font-family: "Kranky", serif;
  font-weight: 400;
  font-style: normal;
}
.box:hover {
  transition: 0.5s;
  transform: scale(1.1);
  box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
}
.box::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  transform: skewX(-25deg);
}
.box:hover::before {
  animation: shine 0.75s;
}
@keyframes shine {
  100% {
    left: 125%;
  }
}

@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%); /* Move by half of the total content width */
  }
}
.modal {
  z-index: 1200;
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100vh; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0, 0, 0); /* Fallback color */
  background-color: rgba(0, 0, 0, 0.821); /* Black w/ opacity */
}
.modal img.modal-content {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 700px;
}
.modal .close {
  position: absolute;
  top: 20px;
  right: 35px;
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
}
.modal .prev, .modal .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border: none;
  background-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  opacity: 0.1;
  transition: 0.5s;
}
.modal .prev:hover, .modal .next:hover {
  opacity: 1;
  transition: 0.5s;
}
.modal .prev {
  left: 0;
  margin-top: -22px;
}
.modal .next {
  right: 0;
  margin-top: -22px;
}
.modal .prev:hover, .modal .next:hover {
  color: #f1f1f1;
}
.modal #caption {
  margin: auto;
  display: block;
  text-align: center;
  color: #ffffff;
  padding: 10px 0;
  font-family: "Kranky", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.8rem;
}

/* Overlay that covers the entire page */
.loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #111; /* Dark background for better glow visibility */
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Loading text style */
.loading-text {
  font-size: 1.3rem;
  color: #ffffff;
  display: flex;
  align-items: center;
  gap: 0.2rem; /* Space between each letter */
}

/* Style for each letter with a glowing effect */
.letter {
  animation: letterGlow 1.5s infinite;
  text-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
}

/* Assign different colors and glows to each letter */
.l1 {
  color: #ff6b6b;
  text-shadow: 0 0 8px #ff6b6b, 0 0 12px #ff6b6b, 0 0 20px #ff6b6b;
}

.l2 {
  color: #ff922b;
  text-shadow: 0 0 8px #ff922b, 0 0 12px #ff922b, 0 0 20px #ff922b;
}

.l3 {
  color: #f8c94e;
  text-shadow: 0 0 8px #f8c94e, 0 0 12px #f8c94e, 0 0 20px #f8c94e;
}

.l4 {
  color: #51cf66;
  text-shadow: 0 0 8px #51cf66, 0 0 12px #51cf66, 0 0 20px #51cf66;
}

.l5 {
  color: #339af0;
  text-shadow: 0 0 8px #339af0, 0 0 12px #339af0, 0 0 20px #339af0;
}

.l6 {
  color: #845ef7;
  text-shadow: 0 0 8px #845ef7, 0 0 12px #845ef7, 0 0 20px #845ef7;
}

.l7 {
  color: #ff6ec7;
  text-shadow: 0 0 8px #ff6ec7, 0 0 12px #ff6ec7, 0 0 20px #ff6ec7;
}

/* Animation for a pulsing glow effect */
@keyframes letterGlow {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.7;
    transform: scale(1.1);
  }
}
/* Dot style for glowing fairy effect */
.dot {
  animation: loadingDots 1s infinite;
  font-size: 2rem;
  opacity: 0;
  text-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
}

/* Different colors for each dot to simulate fairies */
.dot1 {
  color: #ff6b6b; /* Warm glowing red */
  text-shadow: 0 0 8px #ff6b6b, 0 0 12px #ff6b6b, 0 0 20px #ff6b6b;
}

.dot2 {
  color: #51cf66; /* Cool glowing green */
  text-shadow: 0 0 8px #51cf66, 0 0 12px #51cf66, 0 0 20px #51cf66;
}

.dot3 {
  color: #339af0; /* Soft glowing blue */
  text-shadow: 0 0 8px #339af0, 0 0 12px #339af0, 0 0 20px #339af0;
}

/* Animation for the dots */
@keyframes loadingDots {
  0% {
    opacity: 0;
    transform: translateY(0);
  }
  50% {
    opacity: 1;
    transform: translateY(-5px); /* Slight upward movement */
  }
  100% {
    opacity: 0;
    transform: translateY(0);
  }
}
/* Hide the loading overlay when content is loaded */
.content {
  display: none; /* Hide content initially */
}/*# sourceMappingURL=style.css.map */