@font-face {
  font-family: 'Virgil';
  src: url(https://virgil.excalidraw.com/Virgil.woff2) format('woff2')
}

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&family=League+Spartan:wght@400;500;700&display=swap');

:root {
  --primarycolor: #171717;
  --secondarycolor: #fff;
}

html {
  height: 100%;
  width: 100%;
}

body {
  font-family: 'Inter', sans-serif;
  margin: 0;
}

main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: repeat(9, 200px);
  grid-gap: 25px;
  max-width: 1000px;
  margin: 100px auto;
  margin-top: 0;
  padding: 0 10px;
}

main>div {
  min-height: 200px;
  overflow: hidden;
}

a {
  color: var(--primarycolor);
  background-image: linear-gradient(transparent calc(100% - 1.5px), var(--primarycolor) 1px);
  text-decoration: none;
  background-size: 100% 100%;
  background-position: 100%;
  position: relative;
  background-repeat: no-repeat;
  transition: all .5s;
}

a:hover {
  background-size: 0 100%;
}

.button {
  color: var(--primarycolor);
  text-decoration: none;
  border: 3px solid var(--primarycolor);
  padding: 5px 10px;
}

.subtitle {
  font-size: 20px;
  font-weight: 500;
}

h1 {
  font-size: 60px;
  margin: 0;
  font-family: Virgil;
}

h2 {
  font-size: 30px;
  margin: 0;
  font-family: 'League Spartan';
}

header {
  height: 150px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

header>.logo {
  max-height: 50px;
}

.wide {
  grid-column: span 2;
}

.tall {
  grid-row: span 2;
}

.image {
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  background: #ffffff;
  box-shadow: 5px 5px 10px #e6e6e6, -5px -5px 15px #ffffff;
}

.image>img {
  height: 100%;
}

.largeimage {
  grid-row: span 3;
}

.mediumimage {
  grid-row: span 2;
}

.wide-image {
  height: unset !important;
  width: 100%;
}

.infosection>h2 {
  margin-top: 15px;
}

.infovideo {
  display: flex;
  gap: 50px;
  align-items: center;
  height: 500px;
  grid-row: span 2;
}

.infovideo-video {
  height: 500px;
  display: flex;
  align-items: center;
}

.ordercallout {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.ordercallout h2 {
  font-size: 40px;
}

@keyframes spinningzori {
  from {
    transform: translate(0, -23%) rotate(0deg);
  }

  to {
    transform: translate(0, -23%) rotate(359.9deg);
  }
}

.spinningzori-image {
  height: 275% !important;
  animation: spinningzori 90s infinite linear;
}

@media only screen and (max-width: 470px) {
  main {
    display: flex;
    flex-direction: column;
  }

  .title {
    padding: 20px 0;
  }

  .infovideo.wide {
    flex-direction: column;
  }

  .wide-image {
    display: none;
  }

  .image.wide.tall {
    display: none;
  }

  .mediumimage {
    height: 300px;
  }

  .largeimage {
    height: 300px;
  }

}