:root {
  --font-size-intro: clamp(1.375rem, calc(1.25rem + 1.5vw), 5rem);
  --font-size-intro-1000: clamp(1.375rem, calc(1.25rem + 1vw), 5rem);
  --font-size-h1: clamp(2.4rem, calc(1.5rem + 17vw), 12.5rem);
  --font-size-h1--1000: clamp(2.4rem, calc(1.5rem + 11vw), 13.5rem);
  --font-size-p: clamp(1.2rem, calc(0.75rem + 0.65vw), 2rem);
  --font-size-menu: clamp(1.2rem, calc(0.75rem + 0.65vw), 2rem);
  --font-size-logo: clamp(1rem, calc(0.75rem + 0.7vw), 2rem);

  --font-size-h2: clamp(2rem, calc(1.75rem + 2.75vw), 3.6rem);
  --font-size-h2-span: clamp(2rem, calc(2.25rem + 3.25vw), 4.6rem);

  --font-size-h2-1000: clamp(2rem, calc(1rem + 2.5vw), 3.4rem);
  --font-size-h2-span-1000: clamp(2rem, calc(1.25rem + 3vw), 4.6rem);

  --font-size-h3: clamp(1.5rem, calc(0.55rem + 2.5vw), 3.6rem);

  --font-size-nav-mobile: clamp(2rem, calc(1.1rem + 4vw), 5rem);

  --fontsize-mobile-h3-spanVerschil: clamp(2.3rem, calc(1.8rem + 15vw), 9rem);
  --font-size-mobile-h4: clamp(1.7rem, calc(1.4rem + 3vw), 9rem);

  --font-size-mobile-instructies: clamp(1rem, calc(1rem + 1.55vw), 1.5rem);
  --font-size-mobile-button: clamp(1.2rem, calc(1rem + 2vw), 1.7rem);

  --color-black: #2c2c2c;
  --color-blue: #25255f;
  --color-white: #fcfcfd;
}

html {
  background-color: #fcfcfd;
}

.stack {
  top: 0 !important;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  overflow: hidden;
}

.introductie-stack,
.header-stack {
  grid-column: 1 / -1;
  grid-row: 1 / -1;
}

.button {
  border: #242424 solid 0.1vw;
  width: auto;
  border-radius: 100vw;
  cursor: pointer;
  padding: 3vw 5vw;
  font-size: calc(var(--font-size-p));
  display: flex;
}

.button > img {
  height: calc(var(--font-size-p) * 0.95);
  width: auto;
  margin: auto 0 auto 1vw;
  vertical-align: middle;
}

.button:hover {
  background-color: var(--color-black);
  color: white;
}

.button:hover > img {
  filter: invert(100%);
}

p,
.menu,
footer {
  font-family: neue-haas-grotesk-display, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: var(--font-size-p);
  line-height: 1.25;
}

a {
  text-decoration: none;
  color: var(--color-black);
  font-family: neue-haas-grotesk-display, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: var(--font-size-p);
}
.menu > li > a {
  display: block;
  position: relative;
  padding: 0.2em 0;
  overflow: hidden;
  font-size: var(--font-size-menu);
}
.menu > li > a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.05em;
  background-color: var(--color-black);
  transition: opacity 300ms, transform 300ms;
  transform: translate3d(-100%, 0, 0);
}

.menu > li a:hover::after,
.menu > li a:focus::after {
  transform: translate3d(0, 0, 0);
}

.pin-spacer {
  overflow-x: hidden;
}

h1,
text {
  text-align: center;
  font-family: "archivo-black", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: -5%;
  font-size: var(--font-size-h1);
}

h2,
h3 {
  text-transform: uppercase;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
}

h2 {
  font-size: var(--font-size-h2);
  margin: 0 auto 2.5vh;
}

h2 > span {
  margin-top: 0.5vh;
  font-size: var(--font-size-h2-span);
  font-weight: 600;
  color: transparent;
  -webkit-text-stroke: 0.75px var(--color-black);
  display: block;
}

.h2--white {
  color: white;
}
.h2--white > span {
  -webkit-text-stroke: 0.75px white;
}

h3 {
  font-weight: 700;
  font-size: var(--font-size-h3);
  color: var(--color-black);
}

/*header home */

.headerMenu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 6vh;
  margin: 2vh 5vw 1vh;
  z-index: 250;
}

.headerIntro {
  max-width: 40vw;
}

.headerMask {
  height: 100vh;
  width: 100vw;
  overflow: hidden;
  z-index: -2;
  /*padding-bottom: 40vh;*/
}

.header {
  overflow: hidden;
}

.menu__logo {
  font-size: var(--font-size-logo);
  font-weight: 500;
  text-transform: uppercase;
  z-index: 100;
  font-family: neue-haas-grotesk-display, sans-serif;
  font-style: normal;
  color: var(--color-black);
}

header,
.header {
  display: flex;
  flex-direction: column-reverse;
  max-width: 100vw;
  /*height: 100vh;*/
  overflow: hidden;
}

.headerMask {
  position: relative;
  /*padding-bottom: 20vh;*/
}

.header,
.introductie,
.previewProjecten,
.pin-spacer,
.headerContent,
.headerMask,
body,
.headerMask {
  width: 100vw;
  overflow-x: hidden;
}

.headerContent {
  width: 100vw;
  height: 90vh;
  margin-top: 1vh;
  overflow: hidden;
  margin-bottom: 20vh;
  display: grid;
  grid-template-columns: 100vw;
  grid-template-rows: 1fr 1fr 1.5fr;
  overflow-y: visible;
  padding-bottom: 20vh;
}

.headerContent__text {
  grid-column: 1;
  grid-row: 2;
  justify-self: center;
  align-self: center;
}
.headerContent__image1 {
  grid-row: 1/3;
  grid-column: 1;
  justify-self: end;
  height: 25.5vh;
  width: auto;
}

.headerContent__image2 {
  grid-row: 3;
  grid-column: 1;
  align-self: flex-end;
  height: 32.5vh;
  width: auto;
}

.headerContent__line {
  grid-column: 1;
  grid-row: 1/-1;
  z-index: -10;
  height: 80vh;
  width: 365vw;
  margin-left: -20vw;
  justify-self: start;
  stroke-dasharray: 5000px 5000px;
  stroke-dashoffset: 5000px;
  
}

.headerContent__line--animated {
  animation: line-appear 15s ease-in-out forwards infinite;
}

@keyframes line-appear {
  0% {
    stroke-dashoffset: 5000px;
  }
  14% {
    stroke-dashoffset: 0px;
  }

  80% {
    stroke-dashoffset: 0px;
  }

  100% {
    stroke-dashoffset: -5000px;
  }
}

.headerContent__text {
  overflow: hidden;
}

.headerIntro {
  padding-top: 1vh;
}

.headerIntro--animatie,
.wrapper--animatie,
.headerIntro__part2--animatie,
.textAnimationHeader--animatie {
  animation-name: appear;
  animation-duration: 4.5s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

@keyframes appear {
  0% {
    opacity: 0;
    transform: translateY(2vh);
    visibility: hidden;
  }

  20% {
    opacity: 0;
    transform: translateY(25vh);
    visibility: hidden;
  }

  75% {
    transform: translateY(-1vh);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
  }
}

.headerContent__image1--animatie {
  animation-name: appear-left;
  animation-duration: 4.5s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

.cube--animatie {
  animation-name: appear-cube;
  animation-duration: 4.5s;
  animation-timing-function: ease-in-out;
}

.cube {
  position: absolute;
  height: calc(var(--font-size-h1) / 4);
  width: calc(var(--font-size-h1) / 4);
  right: 5vw;
  top: 47.75vh;
  z-index: 190;
  transform-origin: center;
  display: inline-block;
  background-color: var(--color-black);
  scale: 1;
  opacity: 1;
}

@keyframes appear-cube {
  0% {
    opacity: 0;
  }

  85% {
    opacity: 0;
    scale: 0;
  }
  100% {
    opacity: 1;
    scale: 1;
  }
}

@keyframes appear-left {
  0% {
    transform: translateX(100%);
    visibility: hidden;
  }

  25% {
    /*opacity: 0.25;*/
    transform: translateX(100%);
    transform-origin: bottom right;
    rotate: 15deg;
    visibility: hidden;
  }
  75% {
    transform: translateX(-5%);
    rotate: -2deg;
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
    visibility: visible;
  }
}

.headerContent__image2--animatie {
  animation-name: appear-right;
  animation-duration: 4.6s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

@keyframes appear-right {
  0% {
    transform: translateX(-100%);
    visibility: hidden;
  }

  25% {
    /*opacity: 0.25;*/
    transform: translateX(-100%);
    transform-origin: bottom right;
    rotate: -20deg;
    visibility: hidden;
  }

  75% {
    transform: translateX(5%);
    rotate: 2deg;
  }

  100% {
    opacity: 1;
    transform: translateX(0%);
    rotate: 0deg;
    visibility: visible;
  }
}

.menu {
  display: none;
}

.hamburger {
  cursor: pointer;
  height: 12vw;
  width: 12vw;
  position: relative;
  display: block;
  z-index: 250;
}

.hamburger > span {
  display: block;
  background: var(--color-black);
  width: 50%;
  text-align: center;
  height: 1.5px;
  margin-top: -2px;
  position: absolute;
  left: 40%;
  top: 50%;
}

.hamburger:before,
.hamburger:after {
  content: "";
  display: block;
  background: var(--color-black);
  width: 80%;
  height: 1.5px;
  position: absolute;
  left: 15%;
  transform-origin: center center;
  transform: rotate(0deg);
  transition: all 0.75s ease;
}

.hamburger:before {
  top: 3.25vw;
  margin-top: -1px;
}

.hamburger:after {
  bottom: 3.35vw;
  margin-bottom: -2px;
}

.hamburgerShow:before {
  top: 50%;
  transform: rotate(45deg);
  background-color: white;
}

.hamburgerShow:after {
  bottom: 50%;
  transform: rotate(-45deg);
  background-color: white;
}

.hamburgerShow > span {
  opacity: 0;
}

.bodyScroll {
  position: fixed;
  overflow: hidden;
}

.navMobile {
  transform: translateX(150%);
  height: 100vh;
  width: 100vw;
  position: fixed;
  transition: transform 0.75s;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 10vh 57.5vh 25vh;
  padding: 0 0 0 5vw !important;
  align-items: center;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 98;
  padding-top: 15rem;
  background-color: var(--color-black);
  color: white;
  position: fixed;
  overflow: hidden;
}

.navmobile--home {
  padding: 10vh 0 0 5vw !important;
  grid-template-rows: 57.5vh 25vh;
  padding-top: 0;
}

.menuMobile {
  grid-column: 1;
  grid-row: 2;
  flex-direction: column;
  align-self: center;
}

.footer__container--menu{
  grid-column: 1;
  grid-row: 3;
  align-self: start;
}

.navmobile--home > .menuMobile {
  grid-row: 1 !important;
}

.navmobile--home > .footer__container--menu {
  grid-row: 2 !important;
}



.menuMobile > li > a {
  border-bottom: 1px solid white;
  font-family: neue-haas-grotesk-display, sans-serif;
  text-decoration: none;
  color: var(--color-white);
  font-size: var(--font-size-nav-mobile);
  font-weight: 400;
  text-transform: uppercase;
}

.menuMobile > li {
  margin: 0 auto 5vh;
  padding: 2vh 3vw;
  border-bottom: 4px solid var(--color-green);
}

.menu__logo {
  text-decoration: none;
}

.menu__logo-white {
  color: white;
}

.menuShow {
  transform: translateX(0%);
}

.headerIntro {
  margin: 0 auto;
  text-align: center;
  border-radius: 40%;
  font-size: var(--font-size-intro);
  font-weight: 500;
  text-transform: uppercase;
  background-color: #fcfcfdbc;
}

.headerIntro__part2 {
  font-weight: 400;
  font-size: var(--font-size-p);
}

.textAnimationHeader__woord {
  font-weight: 400;
  text-transform: uppercase;
  display: block;
  height: calc(var(--font-size-p)+ 2vh);
  animation: spin_words 10s infinite;
  animation-delay: 4.5s;
  font-size: var(--font-size-intro);
  padding: 0.25vh;
  text-align: center;
}

.textAnimationHeader {
  display: block;
  height: calc(var(--font-size-intro) * 1.1);
  overflow: hidden;
  margin: 0.5vh auto;
}

@keyframes spin_words {
  8% {
    transform: translateY(-115%);
  }
  20% {
    transform: translateY(-100%);
  }
  25% {
    transform: translateY(-100%);
  }
  33% {
    transform: translateY(-215%);
  }
  45% {
    transform: translateY(-200%);
  }
  50% {
    transform: translateY(-200%);
  }
  58% {
    transform: translateY(-315%);
  }
  70% {
    transform: translateY(-300%);
  }
  75% {
    transform: translateY(-300%);
  }
  83% {
    transform: translateY(-415%);
  }
  95% {
    transform: translateY(-400%);
  }
  100% {
    transform: translateY(-400%);
  }
}

.wrapper {
  margin: 0.5vh 0;
  text-align: center;
  overflow: hidden;
  height: var(--font-size-h1);
}

video {
  width: 100%;
  margin: 0 auto;
}

.test2 {
  clip-path: url(#text-overlay);
  -webkit-clip-path: url(#text-overlay);
}

#text-overlay {
  position: absolute;
  top: 0;
  left: 1vw;
  width: 100%;
  height: var(--font-size-h1);
}

/*
.text-mask {
  transform: translateX(5vw);
}
*/
/* introductie */

.introductie {
  z-index: 200;
  display: grid;
  grid-template-columns: 100vw;
  grid-template-rows: 1.2fr 1.8fr 1.2fr;
  height: 101vh;
  background-color: var(--color-black);
  color: white;
  overflow: hidden;
  padding: auto;
}

.introductie__content > h2 > span {
  margin-left: 8vw;
}

.introductie__content {
  grid-column: 1;
  grid-row: 1/-1;
  justify-self: center;
  align-self: center;
  z-index: 100;
  background-color: var(--color-black);
  z-index: 50;
}

.introductie__text {
  margin: 0 auto;
  max-width: 87vw;
}

.introductie__image1 {
  grid-column: 1;
  grid-row: 1;
  justify-self: right;
  align-self: center;
  margin: 3vh 10vw 0 0;
  width: 37.5vw;
  height: auto;
  z-index: 100;
  z-index: 10;
}

.introductie__lijn1--mobile {
  z-index: 100;
  grid-column: 1;
  grid-row: 1;
  justify-self: center;
  align-self: center;
  width: 100vw;
  height: auto;
  z-index: 1;
  stroke-dasharray: 5000px;
  stroke-dashoffset: 0px;
}

.introductie__lijn2--mobile {
  grid-column: 1;
  grid-row: 3;
  justify-self: start;
  align-self: flex-end;
  margin-bottom: 2vh;
  width: 110vw;
  height: auto;
  stroke-dasharray: 5000px;
  stroke-dashoffset: 0px;
}

.introductie__lijn1--desktop {
  display: none;
  stroke-dasharray: 5000px;
  stroke-dashoffset: 0px;
}

.introductie__image2 {
  grid-column: 1;
  grid-row: 3;
  justify-self: left;
  margin-left: 5vw;
  align-self: end;
  width: 47.5vw;
  height: auto;
  z-index: 10;
}

/*preview projecten*/

.center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.previewProjecten {
  margin: 8vh 0 5vh;
  padding-bottom: 10vh;
  overflow-y: visible;
}

.previewProjecten__titel {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr var(--font-size-h2-span);
  overflow: hidden;
  margin: 0 0 7.55vh;
}

.previewProjecten__titel__image1 {
  grid-row: 1;
  grid-column: 1;
  justify-self: end;
  align-self: top;
  width: 50vw;
  height: auto;
  display: grid;
  padding: 0 0 0.5vh 0;
}

.previewProjecten__titel__image1 > img {
  grid-row: 1;
  grid-column: 1;
  justify-self: end;
  align-self: end;
  width: 22.5vw;
  height: auto;
  margin-right: 5vw;
}

.previewProjecten__titel__image1 > svg {
  grid-row: 1;
  grid-column: 1;
  justify-self: end;
  align-self: top;
  width: 100%;
  height: auto;
  stroke-dasharray: 5000px;
  stroke-dashoffset: 0px;
}

.previewProjecten__titel__image2 {
  display: none;
}

.previewProjecten__titel > h2 {
  margin: 0 auto;
  grid-column: 1;
  grid-row: 1/-1;
  align-self: end;
}
.previewProjecten__titel > h2 > span {
  margin-left: 15vw;
}

.previewProjecten__list > li > a {
  width: 100vw;
  display: grid;
  grid-template-rows: 1fr calc(var(--font-size-h3) + 0.5vh);
}

.previewProjecten__list > li:nth-child(2) > a {
  grid-template-rows: 1fr calc(var(--font-size-h3) * 2 + 0.5vh);
}

.previewProjecten__list > li:nth-child(2) > a > h3 {
  font-size: calc(var(--font-size-h3) * 0.9);
}

.previewProjecten__list > li > a > h3 {
  color: var(--color-blue);
  grid-row: 2;
}

.previewProjecten__list > li > a > p {
  grid-row: 1;
  align-self: end;
  margin-bottom: 1vh;
  color: var(--color-black);
  text-transform: none;
  max-width: 45vw;
  z-index: -1;
}

.previewProjecten__list > li:nth-child(odd) > a {
  grid-template-columns: 40vw 1fr;
}

.previewProjecten__list > li:nth-child(odd) > a > img {
  grid-row: 1/3;
  grid-column: 1;
}

.previewProjecten__list > li:nth-child(odd) > a > h3 {
  grid-column: 2;
  margin-left: 5vw;
}

.previewProjecten__list > li:nth-child(odd) > a > p {
  grid-column: 2;
  margin-left: 5vw;
}

.previewProjecten__list > li:nth-child(even) > a {
  grid-template-columns: 1fr 40vw;
}

.previewProjecten__list > li:nth-child(even) > a > img {
  grid-row: 1/3;
  grid-column: 2;
}

.previewProjecten__list > li:nth-child(even) > a > h3 {
  grid-column: 1;
  margin-right: 5vw;
  text-align: right;
  justify-self: right;
}

.previewProjecten__list > li:nth-child(even) > a > p {
  grid-column: 1;
  margin-right: 5vw;
  text-align: right;
  justify-self: right;
}

.previewProjecten__list > li > a {
  text-decoration: none;
}

.previewProjecten__list > li {
  margin-bottom: 8vh;
}

.previewProjecten__list > li > a > img {
  width: 40vw;
  height: auto;
  filter: invert(18%) sepia(13%) saturate(850%) hue-rotate(197deg)
    brightness(60.5%) contrast(95%);
}

.previewProjecten__list--1 {
  z-index: 3;
}

.previewProjecten__list--2 {
  z-index: 4;
}

.previewProjecten__list--3 {
  z-index: 5;
}

.button--preview {
  margin: 0 auto;
}

footer {
  border-top: #242424 solid 0.5px;
  font-size: calc(var(--font-size-p));
  width: 90vw;
  margin: 5vh auto 0;
  padding-top: 3vh;
}

.footer__container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-end;
}

.footer__item--social {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  width: 100%;
  align-self: end;
  justify-content: center;
  gap: 5vw;
}

.footer__item--social > a {
  text-decoration: underline;
  text-underline-offset: 0.5vh;
  text-decoration-thickness: 0.5px;
}
.footer__item--social > a > img {
  height: 20px;
  width: auto;
  align-self: baseline;
}

.github {
  height: 27px;
}

.credits {
  display: block;
  margin: 2vh auto 2vh;
  text-align: center;
  font-size: calc(var(--font-size-p) * 0.7);
  color: #2c2c2c;
}

.footer__container--mail {
  flex-direction: column-reverse;
  justify-content: center;
  gap: 2vh;
}

.footer__item--mail {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 1vw;
}

.footer__container--white > .footer__item--mail > a,
.footer__container--white > .footer__item--social > a {
  color: white;
}

.footer__container--white {
  width: 90vw;
  border-top: white solid 0.5px;
  padding-top: 2vh;
  padding-bottom: 1vh;
  font-family: neue-haas-grotesk-display, sans-serif;
  font-weight: 400;
  font-style: normal;
}

@media screen and (min-width: 500px) {
  .headerContent__line {
    margin: 0;
    width: 250vw;
  }

  .introductie {
    height: 110vh;
  }

  .introductie__lijn1--mobile {
    width: 100vw;
    align-self: start;
    margin-top: 2vh;
  }

  .introductie__lijn2--mobile {
    width: 100vw;
    align-self: start;
  }

  .previewProjecten__list > li {
    margin-bottom: 5vh;
  }
}

@media screen and (min-width: 600px) {
  .cube {
    top: 45%;
  }
}

@media screen and (min-width: 800px) {
  .introductie__text {
    max-width: 75vw;
  }
}

@media screen and (min-width: 1000px) {
  .button {
    border: #242424 solid 1px;
    padding: 14px 20px;
    font-size: calc(var(--font-size-p) * 0.9);
  }

  .button > img {
    margin: auto 0 auto 10px;
  }

  h2 {
    font-size: var(--font-size-h2-1000);
  }

  h2 > span {
    font-size: var(--font-size-h2-span-1000);
    -webkit-text-stroke: 1px var(--color-black);
  }
  .clipped-video {
    display: block;
    width: 60vw;
    margin: 0 auto;
  }

  .headerIntro {
    max-width: 30vw;
    font-size: var(--font-size-intro);
  }
  .menu__logo--mobile,
  .hamburger,
  .navMobile {
    display: none;
  }

  .menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 6vh;
    width: 100vw;
    margin: 2vh 5vw 1vh;
  }

  h1,
  text {
    font-size: var(--font-size-h1--1000);
  }

  .wrapper {
    height: calc(var(--font-size-h1--1000) * 0.9);
  }

  .headerContent__text {
    padding: 0;
    grid-row: 1/-1;
  }
  .headerContent__line {
    margin: 0;
    width: 100vw;
    height: auto;
    justify-self: center;
    align-self: center;
  }

  .headerIntro__part2 {
    margin: 1vh auto 0vh;
    max-width: 15vw;
    font-size: var(--font-size-intro-1000);
  }

  .cube {
    top: 55.5%;
    height: calc(var(--font-size-h1--1000) / 4.5);
    width: calc(var(--font-size-h1--1000) / 4.5);
  }

  .headerContent__image1 {
    grid-row: 1/-1;
    width: 17.5vw;
    margin-right: 2vw;
    margin-top: 3vh;
    justify-self: end;
    align-self: center;
    height: auto;
  }

  .headerContent__image2 {
    width: 20vw;
    height: auto;
  }

  .introductie {
    height: 70vh;
    padding: 15vh 0 15vh;
    grid-template-rows: 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    max-width: 100vw;
  }

  .introductie__content > h2 > span {
    margin-left: 50px;
  }

  .previewProjecten__titel > h2 > span {
    margin-left: 75px;
  }

  .introductie__lijn1--mobile,
  .introductie__lijn2--mobile {
    display: none;
  }

  .introductie__lijn1--desktop {
    grid-column: 1/-1;
    display: block;
    grid-row: 1;
    justify-self: center;
    align-self: center;
    max-width: 100vw;
    height: auto;
    z-index: 1;
  }

  .introductie__image1 {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-self: center;
    margin: 9vh 0 0 0vw;
    width: 22.5vw;
    height: auto;
  }

  .introductie__image2 {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
    padding-top: 30vh;
    margin: 0 0vw 0 0;
    width: 20vw;
    height: auto;
  }
  .introductie__content {
    grid-column: 1/-1;
    grid-row: 1;
    justify-self: center;
    align-self: center;
    max-width: 50vw;
    background-color: #2c2c2c;
    padding: 0 0.75vw;
  }

  .introductie__text {
    margin: 0 auto;
    max-width: 500px;
  }

  /* Preview projecten */

  .previewProjecten {
    max-width: 100vw;
  }

  .previewProjecten__titel {
    grid-template-columns: 1fr 1.5fr 1fr;
    grid-template-rows: 1fr;
    overflow: hidden;
    margin: 0 0 7.55vh;
  }

  .previewProjecten__titel > h2 {
    grid-row: 1;
    grid-column: 2;
    align-self: center;
    justify-self: center;
  }

  .previewProjecten__titel__image1 {
    grid-row: 1;
    grid-column: 3;
    justify-self: end;
    align-self: top;
    width: auto;
    height: auto;
  }

  .previewProjecten__titel__image1 > img {
    width: 12.5vw;
    height: auto;
    margin-right: 3vw;
    align-self: center;
  }

  .previewProjecten__titel__image1 > svg {
    grid-row: 1;
    grid-column: 1;
    justify-self: end;
    align-self: top;
    width: 100%;
    height: auto;
  }

  .previewProjecten__titel__image2 {
    display: block;
    grid-row: 1;
    grid-column: 1;
    justify-self: end;
    align-self: top;
    width: auto;
    height: auto;
    display: grid;
    padding: 0 0 0.5vh 0;
  }

  .previewProjecten__titel__image2 > img {
    grid-row: 1;
    grid-column: 1;
    justify-self: start;
    align-self: end;
    width: 17.5vw;
    height: auto;
    margin-left: 3vw;
  }

  .previewProjecten__titel__image2 > svg {
    grid-row: 1;
    grid-column: 1;
    justify-self: end;
    align-self: center;
    width: 100%;
    height: auto;
    stroke-dasharray: 5000px;
    stroke-dashoffset: 0px;
  }

  .previewProjecten__list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    max-width: 85vw;
  }

  .previewProjecten__list > li > a {
    width: 24vw;
    display: grid;
    grid-template-rows: 1fr calc(var(--font-size-p) * 3) !important;
    grid-template-columns: 1fr !important;
  }

  .previewProjecten__list > li > a > img {
    grid-row: 1 !important;
    grid-column: 1 !important;
    width: 24vw;
    height: auto;
    margin: 0 !important;
    filter: invert(18%) sepia(13%) saturate(850%) hue-rotate(197deg)
      brightness(60.5%) contrast(95%);
  }

  .previewProjecten__list > li:hover > a > img {
    filter: none;
    filter: brightness(92.5%) contrast(65%) !important;
  }

  .previewProjecten__list > li > a > h3 {
    grid-row: 1 !important;
    grid-column: 1 !important;
    margin: 0 0.75vw 1vw 0 !important;
    justify-self: end;
    align-self: end;
    text-align: right;
    color: white;
    z-index: 5;
  }

  .previewProjecten__list > li > a > p {
    grid-row: 2 !important;
    grid-column: 1 !important;
    margin: 0.5vw 0.75vw 0 0 !important;
    text-align: right;
    justify-self: end;
    align-self: start;
    max-width: 15.5vw;
  }

  /* footer */
  footer {
    font-size: calc(var(--font-size-p) * 0.9);
    width: 85vw;
  }

  .footer__item--social {
    justify-content: flex-end;
    gap: 3vw;
  }

  .credits {
    margin: 1vh auto 2vh;
  }

  .footer__container--mail {
    flex-direction: row;
  }

  .footer__item--mail {
    width: auto;
  }
}

/* PULSE BUBBLES */
/*
.loader {
  width: 100vw;
  height: 100vh;
  background-color: #242424;
  display: grid;
  grid-template-columns: 5% 90% 5%;
  grid-template-rows: 10% 80% 10%;
  position: absolute;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}

.loadinganimation {
  grid-column: 2/3;
  grid-row: 2/3;
  align-self: center;
  justify-self: center;
  text-align: center;
}
.bollen {
  width: 45vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 5vh auto;
}

.bolLoad {
  width: 8vw;
  height: 8vw;
  border-radius: 50%;
  background-color: white;
}

.bol1 {
  animation: pulse 1.5s ease 0s;
  animation-iteration-count: infinite;
}
.bol2 {
  animation: pulse 1.5s ease 0.5s;
  animation-iteration-count: infinite;
}
.bol3 {
  animation: pulse 1.5s ease 1s;
  animation-iteration-count: infinite;
}*/

@keyframes pulse {
  from {
    opacity: 1;
    transform: scale(1);
  }
  to {
    opacity: 0.25;
    transform: scale(0.75);
  }
}

.loadinganimation > h3 {
  font-size: var(--loading);
  line-height: 120%;
}

@media screen and (min-width: 1200px) {
  .clipped-video {
    display: block;
    width: 50vw;
    margin: 0 auto;
  }
}

