@font-face {
  font-family: NeueHaasthin;
  src: url(font/NeueHaasDisplay-Thin.woff);
}

@font-face {
  font-family: NeueHaasromanitalic;
  src: url(font/NeueHaasDisplay-RomanItalic.woff);
}

@font-face {
  font-family: NeueHaasbold;
  src: url(font/NeueHaasDisplay-Bold.woff);
}

@font-face {
  font-family: NeueHaasmedium;
  src: url(font/NeueHaasDisplay-Mediu.woff);
}

@font-face {
  font-family: NeueHaaslight;
  src: url(font/NeueHaasDisplay-Light.woff);
}

@font-face {
  font-family: NeueHaasitalt;
  src: url(font/NeueHaasDisplay-XXThinItalic.woff);
}
@font-face {
  font-family: Romanitalic;
  src: url(font/NeueHaasDisplay-RomanItalic.woff);
}

body {
  background-color: #394270;
  font-family: NeueHaaslight;
}

.shape {
  position: fixed;
  background-size: contain;
  animation-name: shape;
  animation-duration: 30s;
  animation-iteration-count: infinite;
  left: 10%;
  transform: translateY(-200px);
}

.shape.one {
  left: 30%;
  animation-delay: 2s;
}

.shape.two {
  left: 60%;
  animation-delay: 3s;
}

.shape.three {
  left: 84%;
  animation-delay: 10s;
}

.shape.four {
  left: 20%;
  animation-delay: 8s;
}

.shape.five {
  left: 10%;
  animation-delay: 7.6s;
}

.shape.six {
  left: 14%;
  animation-delay: 14s;
}

.shape-image {
  width: 100px;
  height: 100px;
  background: url(triangle.png) no-repeat;
  animation-name: rotation;
  animation-iteration-count: infinite;
  animation-duration: 10s;
}

.shape-circle {
  width: 186px;
  height: 186px;
  background: url(circle.svg) no-repeat;
  background-size: contain;

  animation-name: rotation;
  animation-iteration-count: infinite;
  animation-duration: 10s;
}

.shape-lines {
  background: url(lines.png) no-repeat;
  animation-name: rotation;
  animation-iteration-count: infinite;
  animation-duration: 20s;
  width: 24px;
  height: 123px;
}

@keyframes shape {
  from {
    transform: translateY(-100px);
  }
  to {
    transform: translateY(2000px);
  }
}

@keyframes rotation {
  from {
    rotate: 0;
  }
  to {
    rotate: 360deg;
  }
}

.animation {
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  justify-content: center;
  align-items: baseline;
  z-index: -1;

  /* animation-name: rotate;
  animation-duration: 5s;
  animation-delay: 4s;
  animation-timing-function: ease;
  animation-iteration-count: 2;

  animation-play-state: 1;*/
}

model-viewer {
  width: 200px;
  height: 200px;
  position: fixed;
}

h1 {
  font-family: NeueHaasromanitalic;
  font-size: 70px;
  color: #e9532c;
  /* margin-bottom: 65px; */
  letter-spacing: 30px;
  /* animation-name: left; */
  /* animation-duration: 1s; */
  margin-top: 4vh;
  margin-bottom: 4vh;
  font-size: 170px;
}

img.one:hover {
  rotate: 20deg;
}

img.two:hover {
  rotate: 20deg;
}
img.three:hover {
  rotate: 20deg;
}
img.four:hover {
  rotate: 20deg;
}
img.five:hover {
  rotate: 20deg;
}
img.one {
  animation-fill-mode: forwards;
  transform: translateY(-1000px);
  animation: move-from-top;
  animation-duration: 6s;
  animation-delay: 4s;

  animation: move-from-top 6s ease-out forwards; /* Lasts 2 seconds */
}

img.two {
  animation-fill-mode: forwards;
  transform: translateY(-1000px);
  animation: move-from-top;
  animation-duration: 6s;
  animation-delay: 3s;

  animation: move-from-top 5s ease-out forwards; /* Lasts 2 seconds */
}

img.three {
  animation-fill-mode: forwards;
  transform: translateY(-1000px);
  animation: move-from-top;
  animation-duration: 6s;
  animation-delay: 2s;

  animation: move-from-top 4s ease-out forwards; /* Lasts 2 seconds */
}

img.four {
  animation-fill-mode: forwards;
  transform: translateY(-1000px);
  animation: move-from-top;
  animation-duration: 6s;
  animation-delay: 1s;

  animation: move-from-top 3s ease-out forwards; /* Lasts 2 seconds */
}

img.five {
  animation-fill-mode: forwards;
  transform: translateY(-1000px);
  animation: move-from-top;
  animation-duration: 6s;
  animation-delay: 0;

  animation: move-from-top 2s ease-out forwards; /* Lasts 2 seconds */
}

@keyframes move-from-top {
  from {
    transform: translateY(-1000px);
  }
  to {
    transform: translateY(0);
  }
}

h2 {
  font-family: NeueHaaslight;
  font-size: 24px;
  color: white;
  margin-bottom: 40px;
}

h3 {
  font-family: NeueHaaslight;
  font-size: 50px;
  color: white;
  margin-bottom: 25px;
}

.text {
  margin-left: 8%;
  display: flex;
  flex-direction: column;
}

h4 {
  color: white;
}

p {
  font-family: NeueHaaslight;
  font-size: 20px;
  color: white;
  width: 28%;
  line-height: 120%;
  margin-bottom: 25px;
}

.images {
  position: fixed;
  width: 26vw;
  height: 30vw;
  /* rotate: 45deg; */
  bottom: 6vw;
  right: 10%;

  /*display: none;*/
}
.image-top {
  position: absolute;
  z-index: 3;
}
.image-middle {
  position: absolute;
  z-index: 2;
  left: 12px;
  top: 12px;
}
.image-bottom {
  position: absolute;
  left: 24px;
  top: 24px;
}

@keyframes new {
  from {
    transform: translateX(-1000px);
  }
  to {
    transform: translate(0);
  }
}

footer {
  margin-top: 207px;
  font-size: 32px;
  color: white;
  position: fixed;
  left: 0;
  margin-left: 8%;
  bottom: 6vw;
}

/* .date {
  font-size: 32px;
}
.time {
  font-size: 32px;
} */

/* .location {
  font-size: 24px;
} */

.invitation {
  font-size: 32px;
  margin-bottom: 12px;
}

/* Mobile size */
@media screen and (max-width: 768px) {
  .text {
    width: 90%;
    margin: 0 auto;
  }

  h1 {
    margin-top: 20px;
    font-family: NeueHaasromanitalic;
    font-size: 60px;
    color: #e9532c;
    margin-bottom: 20px;
    letter-spacing: 29%;
  }

  h2 {
    font-family: NeueHaaslight;
    font-size: 16px;
    color: white;
    margin-bottom: 12px;
  }

  h3 {
    /* font-family: NeueHaaslight; */
    font-size: 30px;
    color: white;
    margin-bottom: 20px;
  }

  p {
    font-family: NeueHaaslight;
    font-size: 18px;
    color: white;
    width: 80%;
    line-height: 24px;
    margin-bottom: 20px;
  }

  footer {
    font-size: 22px;
    /* font-family:  Romanitalic;lt; */
    color: white;
    position: fixed;
    text-align: right;
    right: 20px;
    bottom: 20px;
    /* right: 20px; */
    /* bottom: 20px; */
    /* display: flex; */
    /* justify-content: space-between; */
    /* width: 90%; */
    /* margin: 0 auto; */
    /* left: 20px; */
  }

  .images {
    position: relative;
    width: 167px;
    height: 210px;
    margin: 0 auto;
    margin-top: 25px;
    bottom: auto;
    right: auto;
    /* position: fixed;
    width: 222px;
    height: 337px;
    bottom: 0;
    right: 100px; */
  }

  .image-middle {
    top: 6px;
    left: 6px;
  }

  .image-bottom {
    top: 12px;
    left: 12px;
  }

  .invitation {
    font-size: 18px;
  }
}

@keyframes rotate {
  0% {
  }
  50% {
    scale: 2;
    transform: rotate(0);
    border-radius: 0;
  }
  100% {
    transform: rotate(360deg);
    border-radius: 50%;
    scale: 2;
  }
}

@keyframes color {
  from {
    color: #5aa56f;
  }
  to {
    color: #e9532c;
  }
}

/* Removes Margins */
@page {
  /* size: A3 portrait; */
  size: 297mm x 420mm;
  margin: 0;
  padding: 0;
}

/* Code for A3 Poster */
@media print {
  html,
  body {
    margin: 0;
    padding: 0;
  }
  /* body {
    left: 20%;
  } */

  .text {
    width: 92%;
    margin: 0 auto;
    text-align: center;
  }

  h1 {
    font-size: 300px;
    text-align: center;
    font-style: italic;
    letter-spacing: 90px;
    margin-bottom: 20px;
    margin-top: 100px;
  }

  .images {
    margin: 0 auto;
    width: 1000px;
    margin-top: 200px;
    position: relative;
    right: auto;
  }

  .image-middle {
    left: 24px;
    top: 24px;
  }
  .image-bottom {
    left: 48px;
    top: 48px;
  }

  .invitation {
    text-align: left;
    font-size: 52px;
  }

  h3 {
    text-align: left;
    font-size: 88px;
  }

  p {
    display: none;
    position: fixed;
    text-align: left;
    width: 50%;
    bottom: 24px;
    left: 24px;
    font-size: 38px;
  }

  footer {
    position: fixed;
    bottom: 60px;
    right: 60px;
    text-align: right;
    font-size: 64px;
  }
}
