* {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  background-image: url(images/ws-bg.png);
  background-repeat: repeat;
  background-size: contain;
  overflow-y: scroll;
  overflow-x: hidden;
}

#full-page {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

#ws-wrapper {
  height: 100vh;
  width: 100vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  justify-items: center;
  padding-right: 2%;
  position: relative;
}

.ws-greetings {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin-left: 100px;
}

.ws-greetings img:first-of-type {
  width: clamp(300px, 30vw, 800px);
}

.ws-greetings img:nth-of-type(2) {
  width: clamp(200px, 30vw, 500px);
}

.ws-greetings img:last-of-type {
  width: clamp(100px, 30vw, 300px);
}

.ws-pictures {
  object-fit: contain;
  margin-right: 100px;
}

.ws-pictures img {
  max-width: 550px;
  max-height: 850px;
  height: auto;
  width: 100%;
}

.ws-copy {
  padding: 0 2.5%;
  z-index: 1000;
}

.ws-border img:nth-child(1) {
  height: 1000px;
  margin-left: -250px;
}

.ws-bottom-left {
  position: absolute;
  bottom: 0;
  left: -25px;
}

.ws-top-left {
  position: absolute;
  top: 0px;
  left: -25px;
  transform: scaleY(-1);
}

.ws-bottom-right {
  position: absolute;
  bottom: 0;
  right: -25px;
  transform: scaleX(-1);
}

.ws-top-right {
  position: absolute;
  top: 0px;
  right: -25px;
  transform: scaleX(-1);
  transform: scaleY(-1);
  transform: rotate(180deg);
}

@media screen and (max-width: 600px) {
  #ws-wrapper {
    display: none;
  }
}

@media screen and (max-width: 1250px) {
  .ws-bottom-left,
  .ws-top-left,
  .ws-bottom-right,
  .ws-top-right {
    height: 70%;
  }
}

@media screen and (max-width: 950px) {
  .ws-greetings,
  .ws-pictures {
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .ws-greetings {
    z-index: 1000;
  }
}

@media screen and (max-height: 850px) {
  .ws-greetings img:first-of-type {
    width: clamp(300px, 30vw, 400px);
  }

  .ws-greetings img:nth-of-type(2) {
    width: clamp(200px, 30vw, 300px);
  }

  .ws-greetings img:last-of-type {
    width: clamp(100px, 30vw, 200px);
  }

  .ws-pictures img {
    max-height: 700px;
  }
}

@media screen and (max-height: 750px) {
  .ws-greetings,
  .ws-pictures img {
    max-height: 600px;
  }
}
