html {
  scroll-behavior: smooth;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background-size: 500% 500%;
  animation: gradient 10s ease infinite;
  display: flex;
  flex-wrap: wrap;
  font-style: none;
  font-family: "work sans", sans-serif;
  line-height: 1.4;
  letter-spacing: 1px;
  overflow-x: hidden;
}

a {
  text-decoration: none;
  color: black;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}

a:visited {
  color: black;
}

.gohome {
  position: absolute;
  font-size: 40px;
  text-align: center;
   top: 3vw;
  left: 3vw;
  font-weight: 100;
  line-height: 20px;
  padding: 0;
  color: black;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}

.gohome:hover {
  font-weight: 400;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}

#rightbox {
  background: #ff5349;
  width: 20px;
  height: 20px;
  top: 3vw;
  right: 3vw;
  position: fixed;
  z-index: 1000;
  transition-duration: 1s;
  overflow: wrap;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  overflow: hidden;
  transition-timing-function: ease;
}

#rightbox:hover {
  width: 120px;
  height: 210px;
  transition-duration: 1s;
  transition-timing-function: ease;
}

h1 {
  color: #ff5349;
  font-weight: 300;
  font-size: 1.75em;
  line-height: 1;
  font-style: italic;
  text-transform: uppercase;
  margin-bottom: 1.5em;
  margin-top: 0;
}

h2 {
  display: inline;
  font-weight: 250;
  font-size: 1.25em;
  line-height: 1;
  font-style: italic;
  text-transform: uppercase;
  margin: 0;
}

p {
  display: inline;
  font-size: 1.25em;
  line-height: 1.3;
  margin-bottom: 25px;
  position: relative;
  margin: 0;
}

h6 {
  font-weight: 100;
  font-size: 1.5em;
  line-height: 1;
  font-style: italic;
  text-transform: uppercase;
  display: block;
  margin-bottom: 0em;
  margin-top: 0em;
  color: white;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}

#menu {
  justify-content: center;
  align-items: center;
  text-align: center;
}

h6:hover {
  font-weight: 400;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}

.pixel {
  color: #ff5349;
  margin-left: 0.65em;
  margin-right: 0.25em;
  font-size: 20px;
  vertical-align: text-top;
  font-style: normal;
}

.intro {
  font-style: none;
  font-family: "work sans", sans-serif;
  font-weight: 250;
  line-height: 1.4;
  letter-spacing: 1px;
  margin-bottom: calc(4vw + 15px);
  position: relative;
  display: flex;
  width: 100%;
}

.bodytext {
  font-style: none;
  font-family: "work sans", sans-serif;
  font-weight: 250;
  line-height: 1.4;
  letter-spacing: 1px;
  margin-top: calc(4vw + 15px);
  margin-bottom: calc(4vw + 15px);
  position: relative;
  display: flex;
  width: 100%;
}

.side1 {
  vertical-align: top;
  display: inline-block;
  width: auto;
  margin-right: 2em;
  width: 50%;
}

.side2 {
  vertical-align: top;
  margin-left: 1.5em;
  margin-right: 0;
  display: inline-block;
  width: 50%;
}

img {
  width: 100%;
  height: 100%;
  /*  max-height: 800px; */
  object-fit: cover;
}

video {
  width: 100%;
  height: 100%;
  /*  max-height: 800px; */
  object-fit: cover;
  margin-left:20vh; 
  margin-right:20vh;
}



.textblock {
  margin-bottom: 25px;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 2px solid #ff5349;
  margin-bottom: 1.5em;
  padding: 0;
}

iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#body-container {
  display: absolute;
  flex-wrap: wrap;
  height: 100%;
  width: 100%;
  background: white;
  margin: 3vw;
  padding: calc(4vw + 15px);
}

.displayimage {
  display: grid;
  height: 70vh;
  grid-template-rows: repeat(6, 1fr);
  grid-template-columns: repeat(5, 1fr);
  grid-gap: 20px;
  margin-bottom: calc(2vw + 15px);
}

.video {
  position: relative;
  padding-bottom: 56.5%;
  height: 100%;
   width: 100%;
  overflow: hidden;
  margin-bottom: 20px;
}

.auto {
  display: grid;
  grid-template-rows: repeat(4, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
  margin-bottom: 20px;
}

.auto2 {
  display: grid;
  grid-template-rows: repeat(6, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
  margin-bottom: 20px;
}

.auto3 {
  display: grid;
  grid-template-rows: repeat(4, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
  margin-bottom: calc(4vw + 15px);
}

.portfolio {
  display: grid;
  width: 100%;
  height: 100%;
  grid-template-rows: repeat(4, 1fr);
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 20px;
  margin-bottom: 20px;
}

.portfolio2 {
  display: grid;
  grid-template-rows: repeat(40, 1fr);
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 20px;
  margin-bottom: 20px;
}

.portfolio3 {
  display: grid;
  height: 170vh;
  grid-template-rows: repeat(12, 1fr);
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 20px;
  margin-bottom: 20px;
}

.portfolio5 {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 20px;
  margin-bottom: 20px;
}

.portfolio-item {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5em;
  background-size: cover;
  background-position: top left;
  transition: all ease-in-out 300ms;
  position: relative;
  z-index: 10;

  &.square {
    grid-column: span 1;
    grid-row: span 4;
  }

  &.square2 {
    grid-column: span 1;
    grid-row: span 2;
  }

  &.midsquare {
    grid-column: span 2;
    grid-row: span 4;
  }

  &.medium {
    grid-row: span 4;
    grid-column: span 3;
  }

  &.large {
    grid-row: span 8;
    grid-column: span 3;
  }

  &.huge {
    grid-row: span 6;
    grid-column: span 5;
  }
  
  &.nogrid {
     margin-bottom: calc(4vw + 15px);
  }
  
  &.nogrid2 {
    margin-bottom: 20px;
  }
  
  &:hover {
    opacity: 2;
  }
}


.return {
  font-size: 50px;
  text-align: center;
  font-weight: 100;
  line-height: 0;
  padding: 0;
  color: black;
  margin-top: 100px;
  transition-duration: 0.5s;
  transition-timing-function: ease;
  position: relative;
}

a:hover {
  color: #ff5349;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}
.return:hover {
  font-weight: 400;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}

@keyframes gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@media (max-width: 1000px) {
  h1 {
    zoom: .74;
  }
  h2 {
    zoom: .74;
  }
  p {
    zoom: .74;
  }
}

@media (max-width: 800px) {
.displayimage {
  height: calc(70vh - 10%);
}
}

.portfolio2 img {
  max-height: 900px;
}

.portfolio img {
  max-height: 900px;
}

@media (max-width: 750px) {
  h2 {
    zoom: .61;
  }
  p {
    zoom: .61;
  }
  .intro {
  position: auto;
  display: block;
  width: auto;
}
  .side1 {
    width: 100%;
  display: block;
  margin: 0 0 0 0;
  }
  
  .side2 {
    width: 100%;
  display: block;
  margin: 0 0 0 0;
  }
  
  .textblock {
  margin-bottom: 15px;
}
  
  hr {
    width: 50%;
     margin-left: 0;
  }
}

@media (max-width: 600px) {
  .pixel {
  line-height: 185%;
  font-size: 15px;
    
  }
  .portfolio {
    grid-template-columns: repeat(3, 1fr);
  }
  .portfolio2 {
    grid-template-rows: repeat(80, 1fr);
    grid-template-columns: repeat(3, 1fr);
  }
  .portfolio3 {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(24, 1fr);
  }
}
