html {
  scroll-snap-type: y proximity;
}

header {
  clip-path: polygon(50% 0%, 100% 0, 100% 65%, 50% 100%, 0 65%, 0 0);
  background: var(--bg-nav);
  margin-bottom: 10em;
  padding-bottom: 4em;
  padding-top: 10em;
  text-align: center;
}

main {
  font-size: 2rem;
}

.logo {
  width: 120vh;
}

.services {
  padding: 2rem;

  display: grid;
  gap: 1rem;

  grid-template-columns: repeat(auto-fill, minmax(70vh, 1fr));
  grid-auto-rows: minmax(50vh, 1fr);

  scroll-snap-align: start;
}

.card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: var(--bg-grad);
  font-size: 2rem;
  color: var(--text);
  height: 80%;
  width: 90%;
  transition: all 500ms;
  overflow: hidden;

  border-radius: 15px;

  box-shadow: 0 0 0 7px var(--bg), 0 0 0 14px var(--menu);

  overflow-wrap: break-word;
  text-align: center;

  padding: 1rem;
}

.card > p {
  font-size: 1.4rem;
}

.card:hover {
  box-shadow: rgba(2, 8, 20, 0.1) 0px 0.35em 1.175em,
    rgba(2, 8, 20, 0.08) 0px 0.175em 0.5em;
  transform: translateY(-2px) scale(1.05);
}

.card > img {
  width: 30%;
}

.about {
  width: 100%;
  height: 100vh;

  margin: 0;
  display: flex;

  justify-content: center;
  gap: 10%;

  scroll-snap-align: start;
}

.about-bg {
  position: absolute;
  z-index: -100;
  width: 100%;
  height: 120vh;
  clip-path: polygon(0 0, 39.15% 0, 23.52% 80%, 0 80%);
  background: var(--bg-nav);
}

.about-content {
  width: 70%;
  height: 90vh;
  padding: 2%;

  display: flex;
  flex-direction: column;
  align-items: center;

  text-align: center;
  word-wrap: break-word;
  overflow: hidden;
}

.about-content > a {
  margin-top: 10vh;
  width: 30%;
  background: var(--menu);
  color: var(--text);
  border-radius: 15px;

  box-shadow: 0 0 0 3px var(--bg), 0 0 0 10px var(--menu);
}

.about-img {
  padding-top: 10vh;

  width: auto;
  height: 80%;
}

[data-inviewport="fly-in-left"] {
  transition: 3s;
  transform: translate(-100%, 0);
}

[data-inviewport="fly-in-left"].is-inViewport {
  transform: translate(0, 0);
}

/* Animation */

#beat {
  stroke-dasharray: 513.2125854492188;
  stroke-dashoffset: 513.2125854492188;
  animation: beat 6s infinite;
  animation-fill-mode: forwards;
}

@keyframes beat {
  to {
    stroke-dashoffset: 0;
  }
}
