:root {
  --vds__bg-color: #2FAB80;
  --vds__shadow-color: #127552;
}

@font-face {
  font-family: "Martel sans";
  src: url("../fonts/typofonts/martelsans-regular-webfont.woff2") format("woff2"), url("../fonts/typofonts/martelsans-regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Martel sans";
  src: url("../fonts/typofonts/martelsans-semibold.woff2") format("woff2"), url("../fonts/typofonts/martelsans-semibold.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "Martel sans";
  src: url("../fonts/typofonts/martelsans-bold-webfont.woff2") format("woff2"), url("../fonts/typofonts/martelsans-bold-webfont.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "Martel sans";
  src: url("../fonts/typofonts/martelsans-extrabold-webfont.woff2") format("woff2"), url("../fonts/typofonts/martelsans-extrabold-webfont.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: "Martel sans";
  src: url("../fonts/typofonts/martelsans-black-webfont.woff2") format("woff2"), url("../fonts/typofonts/martelsans-black-webfont.woff") format("woff");
  font-weight: 900;
  font-style: normal;
}

body {
  background: url("../media/pattern-background.png");
  background-size: 20%;
  background-position: 0;
  margin: 0;
  padding: 0;
  font-family: "Martel sans", "Arial", sans-serif;
  color: #373737;
  font-size: 23px;
}

.home-header, .home-main, .home-footer {
  padding: 1px;
}

p {
  max-width: 650px;
  margin: 3rem auto 2rem auto;
  padding: 0 2rem;
}

.home-header {
  position: relative;
  background: url("../media/nav-bg-bottom.svg") repeat-x left bottom;
  background-size: auto 139px;
  padding: 3rem;
  font-weight: 700;
  text-align: center;
}

.home-header > span {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  pointer-events: none;
  background: rgba(53, 53, 53, .15);
  width: 100%;
  height: calc(100% - 139px);
  display: block;
}

.home-header .startitle {
  animation: nyoom 0.4s cubic-bezier(0.075, 0.885, 0.32, 1.275);
  filter: drop-shadow(0 10px 4px rgba(0, 0, 0, 0.15));
}

.home-header .header-play {
  text-decoration: none;
  font-family: "Spline Sans", sans-serif;
  font-weight: 700;
  font-size: 36px;
  line-height: 1;
  border-radius: 661px;
  color: #fff;
  padding: 13px 28px;
  display: inline-block;
  vertical-align: top;
  background: var(--vds__bg-color);
  -webkit-transition: margin .1s, -webkit-box-shadow .1s;
  transition: margin .1s, -webkit-box-shadow .1s;
  transition: box-shadow .1s, margin .1s;
  transition: box-shadow .1s, margin .1s, -webkit-box-shadow .1s;
  -webkit-box-shadow: 0 3.96751px 0 0 var(--vds__shadow-color);
  box-shadow: 0 3.96751px 0 0 var(--vds__shadow-color);
  margin-bottom: 4px;
  cursor: pointer;
}

.home-header .header-play span {
  display: inline-block;
  margin-left: 10px;
  background: url(../media/arrow-right--white.svg) no-repeat left 3px;
  background-size: 100% auto;
  width: 19px;
  height: 26px;
}

.home-header .header-play:hover {
  margin-top: 2px;
  margin-bottom: 2px;
  -webkit-box-shadow: 0 0.5px 0 0 var(--vds__shadow-color);
  box-shadow: 0 0.5px 0 0 var(--vds__shadow-color);
  text-decoration: none;
}

.home-header .spook-absolute {
  position: absolute;
  top: 10%;
  left: 30px;
  animation: theostart 0.8s;
}

.home-header .spook-absolute img {
  position: absolute;
  width: 575px;
  transform: rotate(-15deg);
  filter: drop-shadow(-20px 40px 10px rgba(0, 0, 0, 0.12));
  animation: floating 2s infinite alternate ease-in-out;
}

.home-header .spook-absolute .spook-circle {
  position: absolute;
  top: 100px;
  left: 80px;
  background: url("../media/wiggly-pattern.png") #e9e9e9;
  background-size: 50%;
  background-blend-mode: multiply;
  width: 370px;
  height: 370px;
  border: 2px solid #fff;
  border-radius: 50%;
  animation: opening 1s;
}

.home-main {
  text-align: center;
  font-size: 20px;
  padding: 2rem 0 3rem;
  box-shadow: inset 0 -30px 30px -10px rgba(0, 0, 0, 0.05);
}

.home-main .login-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, 255px);
  grid-gap: 2rem;
  justify-content: center;
  margin: 4rem 0 3rem;
}

.home-main .login-grid .login-item {
  position: relative;
  background-size: 120%;
  background-position: 0;
  font-weight: 900;
  line-height: 32px;
  border: 5px solid #fff;
  border-radius: 5px;
  box-shadow: 0 14px 10px rgba(0, 0, 0, 0.15);
}

.home-main .login-grid .login-item .login-identifier {
  position: relative;
  background: #fff;
  padding: 0.5rem 0 1rem 0;
}

.home-main .login-grid .login-item .login-identifier .login-identifier-title {
  display: inline-block;
  font-size: 26px;
  height: 32px;
}

.home-main .login-grid .login-item .login-identifier:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 45%;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #fff;
}

.home-main .login-grid .login-item .login-main {
  color: #fff;
  text-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
  padding: 35px 12px 50px;
}

.home-main .login-grid .login-item .login-enter {
  position: absolute;
  bottom: -29px;
  left: 50%;
  text-decoration: none;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #2fab80;
  /*box-shadow: 0 7px #127552, -4px 11px #fff, 4px 11px #fff, -5px 0 #fff, 5px 0 #fff, -4px -4px #fff, 4px -4px #fff;*/
  box-shadow: 0 3.96751px 0 0 var(--vds__shadow-color), -4px 11px #fff, 4px 11px #fff, -5px 0 #fff, 5px 0 #fff, -4px -4px #fff, 4px -4px #fff;
  transform: translate(-50%, 0);
  transition: transform 0.2s, box-shadow 0.2s;
}

.home-main .login-grid .login-item .login-enter span {
  display: inline-block;
  background: url(../media/arrow-right--white.svg) no-repeat center;
  background-size: 20px auto;
  vertical-align: top;
  width: 100%;
  height: 100%;
  background-position: 17px 13px;
}

.home-main .login-grid .login-item .login-enter:hover {
  transform: translate(-50%, 4px);
  box-shadow: 0 .5px 0 0 var(--vds__shadow-color), -4px 7px #fff, 4px 7px #fff, -5px 0 #fff, 5px 0 #fff, -4px -4px #fff, 4px -4px #fff;
}

.home-main .login-grid .login-item#login-leerkracht {
  background-image: url("../media/pattern-background-yellow.png");
}

.home-main .login-grid .login-item#login-leerkracht .login-identifier {
  color: #f8c23e;
}

.home-main .login-grid .login-item#login-leerkracht .login-identifier .login-identifier-title {
  border-color: #f8c23e;
  background-image: linear-gradient(transparent 30px, #f8c23e 20%);
}

.home-main .login-grid .login-item#login-gezelschap {
  background-image: url("../media/pattern-background-pink.png");
}

.home-main .login-grid .login-item#login-gezelschap .login-identifier {
  color: #fe3e86;
}

.home-main .login-grid .login-item#login-gezelschap .login-identifier .login-identifier-title {
  border-color: #fe3e86;
  background-image: linear-gradient(transparent 30px, #fe3e86 20%);
}

.home-main .login-grid .login-item#login-cc {
  background-image: url("../media/pattern-background-purple.png");
}

.home-main .login-grid .login-item#login-cc .login-identifier {
  color: #a45ecc;
}

.home-main .login-grid .login-item#login-cc .login-identifier .login-identifier-title {
  border-color: #a45ecc;
  background-image: linear-gradient(transparent 30px, #a45ecc 50%, #a45ecc 100%);
}

.home-footer {
  background: #fafafa;
  color: #7a7a7a;
  font-size: 15px;
  padding: 3rem 0;
  box-shadow: 0 9000px 0 9000px #fafafa;
}

.home-footer .footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(550px, 1fr));
}

.home-footer .footer-grid .foot-grid.left {
  margin-top: 2rem;
}

.home-footer .footer-grid .foot-grid.left p {
  max-width: none;
  margin: 0 3rem 0.5rem 3rem;
}

.home-footer .footer-grid .foot-grid.right {
  text-align: right;
}

.home-footer .footer-grid .foot-grid.right p {
  max-width: none;
  margin: 0 3rem 1.4rem 3rem;
}

.home-footer .footer-grid .foot-grid .thick {
  font-weight: 800;
}

.home-footer .footer-grid .foot-grid a {
  color: #7a7a7a;
  text-decoration: none;
  margin-right: 0.5rem;
}

.home-footer .footer-grid .foot-grid a:hover {
  text-decoration: underline;
}

@keyframes nyoom {
  from {
    transform: scale(0.3) rotate(0deg);
  }
}

@keyframes floating {
  to {
    transform: rotate(-15deg) translate(0, -20px);
  }
}

@keyframes opening {
  from {
    transform: scale(0);
  }
}

@keyframes theostart {
  from {
    opacity: 0;
    transform: translate(0, 50px);
  }
}

@media screen and (max-width: 1630px) and (min-width: 1351px) {
  .spook-absolute {
    left: -100px !important;
  }
}

@media screen and (max-width: 1350px) and (min-width: 1141px) {
  .spook-absolute {
    left: -210px !important;
  }
}

@media screen and (max-width: 1140px) {
  .spook-absolute {
    display: none;
  }
}

@media screen and (max-width: 1100px) {
  .home-footer {
    padding: 0;
  }

  .home-footer .footer-grid {
    grid-template-columns: repeat(auto-fit, 100%);
  }

  .home-footer .footer-grid .foot-grid.left {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }

  .home-footer .footer-grid .foot-grid.left p {
    max-width: none;
    margin: 0 0 0.5rem 0;
  }

  .home-footer .footer-grid .foot-grid.right p {
    max-width: none;
    margin: 0 0 1.4rem 0;
  }

  .home-footer .footer-grid .foot-grid p {
    text-align: center;
  }

  .home-footer .footer-grid .foot-grid a {
    display: block;
  }
}

@media screen and (max-width: 540px) {
  .home-main .login-item {
    margin-bottom: 2rem;
  }
}

/*# sourceMappingURL=site.css.map */
