html {
  width: 100%;
  overflow-x: hidden;
}
body {
  font-family: "Poppins", sans-serif;
  margin: 0;
  padding: 0;
  background: #e9e9e9;
  box-sizing: border-box;
  overflow-x: hidden;
  background-color: rgba(107, 138, 151, 0.8);
  width: 100%;
  color: white;
}

:root {
  --squareSize: 50px;
}

#introanimation {
  display: block;
  position: relative;
  width: 100%;
  height: 100vh;
}
.container {
  width: 100%;
  display: block;

  text-align: start;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.cancelintro {
  position: absolute;
  left: 50;
  top: 0;
  width: 100%;
  text-align: center;
  z-index: 50;
}
.cancelintro div p {
  position: absolute;
  width: 100%;
  top: 0px;
  opacity: 0;

  color: #8f8f8f;
}
.cancelintro svg {
  margin-top: 50px;
}
.movingwallcontainer {
  position: absolute;
  width: 100%;
  height: 100%;

  z-index: -10;
  overflow: hidden;
}

.movingwall {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100vw;

  -webkit-flex-wrap: wrap;

      -ms-flex-wrap: wrap;

          flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  top: 0;
  left: 0;
  overflow: hidden;
  -webkit-transform: translateY(0%);
      -ms-transform: translateY(0%);
          transform: translateY(0%);
  will-change: transform;
}
#movingwallcontainer.movingwallexit {
  background-color: rgba(10, 52, 73, 0.8);
}
.namefragment {
  position: relative;
  width: var(--squareSize);
  height: var(--squareSize);
  background-color: #e9e9e9;
  border: 0;
}

#introhello {
  position: absolute;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: calc(1.7vh + 1.7vw);
  text-align: right;
  margin: 175px 20% 0 0;
  color: #8f8f8f;
}
#introhello p {
  margin: 20px;
  opacity: 0;
}
.welcome {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
#welcometext {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: calc(2.7vh + 2.7vw);
  text-align: center;
  margin: 150px 0px 0 0;
  color: #8f8f8f;
}
#welcometext div p {
  margin: 0px;
}
#welcometext p {
  opacity: 0;
}
.welcome div {
  margin: 0;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}
.welcome p {
  display: inline-block;
  margin: 0;
}

.intro {
  position: absolute;
  left: 0;
  top: 0;

  font-size: calc(1.7vh + 1.7vw);
  color: #8f8f8f;
  z-index: 1;
}
#introtext {
  position: absolute;
  height: 100%;
  width: 100%;
}
#introtext p {
  position: absolute;
  opacity: 0;
}
.frontpagecontainer {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(10, 52, 73, 0.8);
  width: 100%;
  height: 100%;
  z-index: -1;
}
.headerimagecontainer {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgba(7, 31, 43, 0.9);
  z-index: -1;
}
#headerimagecontainer {
  opacity: 0;
}
.show {
  display: block;
}
.headerimagebackground {
  position: absolute;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 20;
}
.headerimage {
  position: absolute;
  height: 100%;
  width: 100%;
  -webkit-clip-path: polygon(10% 0%, 100% 0%, 100% 60%, 90% 100%, 0% 100%, 0% 40%);
          clip-path: polygon(10% 0%, 100% 0%, 100% 60%, 90% 100%, 0% 100%, 0% 40%);
  right: -100%;

  will-change: right;
}
.headerimagecontainer div:nth-child(3) {
  position: absolute;
  height: 100%;
  width: 100%;

  -webkit-clip-path: polygon(35% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 10% 100%);

          clip-path: polygon(35% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 10% 100%);
}
.headerimagecontainer div:nth-child(4) {
  position: absolute;
  height: 100%;

  -webkit-clip-path: polygon(60% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 35% 100%);

          clip-path: polygon(60% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 35% 100%);
}
.headerimagecontainer div:nth-child(5) {
  position: absolute;
  height: 100%;

  -webkit-clip-path: polygon(85% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 60% 100%);

          clip-path: polygon(85% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 60% 100%);
}
.headerimagedesktop {
  height: 100%;
  display: none;
}
.headerimagemobile {
  height: 100%;
  display: block;
}
.headerimage img {
  height: 100%;
}
#siteheadercontainer {
  position: relative;
  width: 100%;
  min-height: calc(100vh - 200px);
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: calc(1vh + 1vw);
  color: #e7e7e7;
  opacity: 1;

  -webkit-filter: drop-shadow(2px 2px 10px rgb(255, 255, 255));

          filter: drop-shadow(2px 2px 10px rgb(255, 255, 255));
}
.siteheadercontainer {
  display: none;
  opacity: 0;
}
.siteheadercontainershow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.siteheadercontainer * {
  opacity: 0;
}
.headerbanner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  background-color: rgba(10, 52, 73, 0.8);
}
#siteheadertext {
  width: 40%;
  margin: 10px;
  margin-bottom: 10px;
  text-align: center;
}
.siteheaderlogo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 40%;
  text-align: center;
  margin: 0px;
  opacity: 0;
}
.siteheaderlogo p {
  margin: 10px;
}
.siteheaderlogo svg {
  width: 60%;
  height: 60%;
  -webkit-transition: -webkit-transform 0.8s;
  transition: -webkit-transform 0.8s;
  transition: transform 0.8s;
  transition: transform 0.8s, -webkit-transform 0.8s;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  fill: rgb(255, 255, 255);
  -webkit-transform: rotateY(0deg);
          transform: rotateY(0deg);
}

.logorotating {
  -webkit-animation: logoanimation 2.5s ease-in-out infinite;
          animation: logoanimation 2.5s ease-in-out infinite;
}
.arrowcontainer {
  display: none;
  position: relative;
  width: 100%;
  height: 200px;
  bottom: 30px;
  margin: 20px 0px;
  opacity: 0;
  -webkit-transform: scale(0.7);
      -ms-transform: scale(0.7);
          transform: scale(0.7);
}
.arrowshow {
  display: block;
}

.arrowsingle-in {
  position: absolute;
  top: 3px;
  left: 4px;
  width: 42px;
  height: 44px;

  background-color: rgb(221, 221, 221);
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
          clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}
.arrowcontainer div:nth-child(3) {
  top: 62px;
}
.arrowcontainer div:nth-child(4) {
  top: 122px;
}
.arrow-down {
  position: relative;
  display: block;
  width: 50px;
  height: 170px;

  margin: auto;
  -webkit-clip-path: polygon(
    0% 0%,
    100% 0%,
    50% 30%,
    50% 35%,
    100% 35%,
    50% 65%,
    50% 70%,
    100% 70%,
    50% 100%,
    0% 70%,
    50% 70%,
    50% 65%,
    0% 35%,
    50% 35%,
    50% 30%
  );
          clip-path: polygon(
    0% 0%,
    100% 0%,
    50% 30%,
    50% 35%,
    100% 35%,
    50% 65%,
    50% 70%,
    100% 70%,
    50% 100%,
    0% 70%,
    50% 70%,
    50% 65%,
    0% 35%,
    50% 35%,
    50% 30%
  );
  background-color: rgba(255, 255, 255, 0.9);
}

.arrowslide {
  position: relative;
  display: block;
  top: -120px;
  width: 80px;
  height: 120px;

  background: -webkit-linear-gradient(
    top,
    rgba(233, 233, 233, 1) 0%,
    rgb(64, 134, 151) 31%,
    rgb(65, 131, 148) 69%,
    rgba(233, 233, 233, 1) 100%
  );

  background: linear-gradient(
    180deg,
    rgba(233, 233, 233, 1) 0%,
    rgb(64, 134, 151) 31%,
    rgb(65, 131, 148) 69%,
    rgba(233, 233, 233, 1) 100%
  );
  margin: auto;
  -webkit-animation-name: arrowsliding;
          animation-name: arrowsliding;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;

  -webkit-animation-direction: normal;

          animation-direction: normal;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}
.arrowslide.arrowslideshow {
  display: block;
}
.examplesection {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  overflow-x: hidden;
  margin-top: 100px;
}
.examplesection.even {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.examplesection img {
  width: 100%;
  border-radius: 0px;
  border-style: solid;
  border-color: #bababa;
  border-width: 2px 0px 0px 0px;
  cursor: pointer;
  -webkit-filter: drop-shadow(0px 0px 0px rgb(99, 99, 99));
          filter: drop-shadow(0px 0px 0px rgb(99, 99, 99));
  -webkit-transition: -webkit-filter 300ms;
  transition: -webkit-filter 300ms;
  transition: filter 300ms;
  transition: filter 300ms, -webkit-filter 300ms;
  will-change: filter;
  margin: 35px 0px;
}
.examplesection img:hover {
  -webkit-filter: drop-shadow(5px 5px 15px rgb(85, 85, 85));
          filter: drop-shadow(5px 5px 15px rgb(85, 85, 85));
}
.examplesection.even img {
  border-radius: 0px;
}
.exampleinfo {
  width: 90%;
  padding: 20px 20px;
  text-align: left;
  font-size: 0.7rem;
  margin-top: -50px;
}

.examplelink {
  text-align: center;
  padding: 30px 0px 0px 0px;
}
.examplelink a {
  padding: 15px 50px;
  background-color: rgb(14, 117, 122);
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition: background-color 300ms, -webkit-transform 300ms;
  transition: background-color 300ms, -webkit-transform 300ms;
  transition: background-color 300ms, transform 300ms;
  transition: background-color 300ms, transform 300ms, -webkit-transform 300ms;
  border-radius: 25px;
  text-decoration: none;
  color: whitesmoke;
}
.examplelink a:hover {
  background-color: rgb(45, 163, 179);
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
}

.footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  font-size: 1rem;
  background-color: rgba(10, 52, 73, 0.8);
  color: whitesmoke;
}
.footer h1 {
  font-size: 1.5rem;
}
.footerfiller {
  width: 30%;
}
.skills {
  display: inline-block;
  width: 90%;
  margin: 10px 0px;
}
.contact {
  width: 100%;
  margin: 10px 0px;
}
.contact a {
  text-decoration: none;
  color: whitesmoke;
}
.contact img {
  width: 242px;
}
.contact img:nth-child(1) {
  width: 50px;
}
.contact svg {
  -webkit-transform: translate(1px, 6px);
      -ms-transform: translate(1px, 6px);
          transform: translate(1px, 6px);
}
.contact p {
  margin: 5px;
}

@-webkit-keyframes arrowsliding {
  from {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  to {
    -webkit-transform: translateY(250%);
            transform: translateY(250%);
  }
}

@keyframes arrowsliding {
  from {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  to {
    -webkit-transform: translateY(250%);
            transform: translateY(250%);
  }
}
@-webkit-keyframes logoanimation {
  from {
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg);
  }
  to {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@keyframes logoanimation {
  from {
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg);
  }
  to {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@media (orientation: landscape) {
  .headerimage {
    position: absolute;
    height: 100%;
    -webkit-clip-path: polygon(10% 0%, 100% 0%, 100% 60%, 90% 100%, 0% 100%, 0% 40%);
            clip-path: polygon(10% 0%, 100% 0%, 100% 60%, 90% 100%, 0% 100%, 0% 40%);
  }
  .headerimagecontainer div:nth-child(3) {
    position: absolute;
    height: 100%;
    -webkit-clip-path: polygon(35% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 10% 100%);
            clip-path: polygon(35% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 10% 100%);
  }
  .headerimagecontainer div:nth-child(4) {
    position: absolute;
    height: 100%;
    -webkit-clip-path: polygon(60% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 35% 100%);
            clip-path: polygon(60% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 35% 100%);
  }
  .headerimagecontainer div:nth-child(5) {
    position: absolute;
    height: 100%;
    -webkit-clip-path: polygon(85% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 60% 100%);
            clip-path: polygon(85% 0%, 100% 0%, 100% 60%, 90% 100%, 60% 100%, 60% 100%);
  }
  .headerimagemobile {
    display: none;
  }
  .headerimagedesktop {
    display: block;
  }
}

@media screen and (min-width: 1200px) {
  .examplesection {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    margin: 100px 0px;
  }
  .examplesection.even {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .examplesection img {
    width: 70%;
    border-radius: 0px 10px 10px 0px;
    border-width: 2px 2px 2px 2px;
  }
  .examplesection.even img {
    border-radius: 10px 0px 0px 10px;
  }
  .exampleinfo {
    width: 30%;
    font-size: 1rem;
  }
  .examplelink {
    font-size: 1rem;
  }
  .arrowcontainer {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    top: calc(100% - 260px);
  }
  #siteheadercontainer {
    font-size: calc(1.7vh + 1.7vw);
    min-height: calc(100vh - 260px);
  }
  #siteheadertext {
    width: 40%;
    text-align: right;
  }
  .siteheaderlogo {
    width: 40%;
  }
  .siteheaderlogo svg {
    width: 60%;
  }
  .footer {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .skills {
    width: 35%;
  }
  .contact {
    width: 30%;
  }
}

@media screen and (min-width: 1400px) {
  .exampleinfo {
    padding: 20px 50px;
  }
}
