@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap");
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  list-style-type: none;
  text-decoration: none;
  box-sizing: border-box;
}

:root {
  --primary: #ec994b;
  --white: #ffffff;
  --bg: #f5f5f5;
}

*, *:before, *:after { 
  box-sizing: border-box;
}

body {
  background: #eee;
  color: #191919;
  font-family: 'Lato', sans-serif;
}

.wrapper h1, h2 {
  font-family: 'Fjalla One', sans-serif;
  margin-top: 0;
  text-transform: uppercase;
}

.wrapper figure {
  margin: 0;
}

.wrapper img {
  height: auto;
  width: 80%;  
}

.wrapper {
  display: grid;
  grid-gap: 20px;
  padding-top:50px;
  grid-template-columns: 1fr 2fr;
  grid-auto-rows: minmax(100px, auto);
  margin: 24px;
  max-width: 800px;
  position: relative;
}

.wrapper > * {
  grid-column: 1 / span 2;
}

.wrapper header {
  font-size: 1.5em;
  grid-row: 1 / 2;
}

.wrapper header:after {
  background: #6817ba;
  content: "";
  display: block;
  height: 20px;
  width: auto;
}

.article {
  text-align: right;
}

.featured-image-1 {
  grid-row: 2 / 3;
}

.number-1 {
  grid-row: 2 / 4;
}

.featured-image-2, .number-2 {
  grid-row: 4 / 5;
}

.number-1, .number-4 {
  align-self: end;
  color: rgba(104,23,186,0.5);
  font-family: 'Fjalla One', sans-serif;
  font-size: 380px;
  line-height: 480px;
  grid-column: 1 / 2;
}

.article-1, .article-4 {
  grid-column: 2 / 3;
}

.featured-image-2, .number-2 {
  align-self: end;
}

.number-2 {
  color: #eee;
  font-size: 200px;
  justify-self: end;
  line-height: 160px;
}

.number-3 {
  background: black;
  border-radius: 130px;
  color: white;
  font-family: 'Fjalla One', sans-serif;
  font-size: 100px;
  height: 130px;
  line-height: 130px;
  position: absolute;
  grid-row: 6 / 7;
  right: -20px;
  text-align: center;
  top: -20px;
  width: 130px;
}

.featured-image-3 img {
  height: 100%;
}

.number-4 {
  font-size: 320px;
  left: -20px;
  line-height: 320px;
  position: absolute;
}

@media (min-width: 600px) {
  
  .wrapper {
    grid-template-columns: repeat(2, 1fr 2fr);
    margin: 24px auto;
  }
  
  .header {
    grid-column: 3 / 5;
    width: 70%;
  }
  
  .featured-image-1 {
    grid-row: 1 / 3;
  }
  
  .article-1 {
    grid-row: 3 / 4;
  }
  
  .article-2 {
    grid-column: 4 / 5;
    grid-row: 4 / 5;
  }
  
  .featured-image-2, .number-2 {
    grid-column: 3 / 5;
    grid-row: 2 / 4;
  }

  .featured-image-3, .number-3 {
    grid-row: 4 / 6;
  }
  
  .featured-image-4, .number-4 {
    grid-column: 3 / 5;
    grid-row: 5 / 6;
  }
  
  .number-4 {
    font-size: 320px;
    grid-row: 5 / 7;
  }
  
  .article-3, .article-4 {
    grid-row: 6 / 7;
  }
  
  .article-4 {
    grid-column: 4 / 5;
  }
  
}

@import url('https://fonts.googleapis.com/css?family=Barlow:400,500,700');

$white: #fff;
$black: #2e2e2e;
$gray: #787878;
$highlight: #ea8478;
$footer: #f7f7f7;



ul li {
  margin: 0 1.5rem 0 0;
}



nav {
  padding: 2.5rem 0 2.5rem 0;
  ul {
    display: flex;
    justify-content: flex-start;
  }
  li {
    font-size: 1.25rem;
    &:nth-child(2) {
      margin: 0;
    }
  }
}

#highlight {
  color: $highlight;
  font-size: 1.25rem;
}

.gallery {
  padding: 0 0 4rem 0;
}

.img-container {
  width: 100%;
  height: 500px;
  cursor: pointer;
  overflow: hidden;
  &:hover .img-content-hover {
    display: block;
  }
}

.img-container img {
	width: 100%;
  height: 500px;
	object-fit: cover;
  transform: scale(1);
  transition: all 0.3s ease-in-out;
  &:hover {
    transform: scale(1.05);
  }
}

.img-content-hover {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
  display: none;
  padding: 1rem;
  background: $white;
  font-weight: 400;
  margin-top: 1.25rem;
  margin-left: -2rem;
}

.title {
  color: $black;
  font-size: 1.5rem;
  font-weight: 700;
}

.category {
  font-size: 1rem;
  color: $gray;
}

.img-content {
  display: none;
}

.social, .copyright {
  margin: 1rem;
}

.social li {
  display: inline-block;
}

footer {
  padding: 1rem 0;
  background: $footer;
  text-align: center;
}

@supports (display: grid) {
  .gallery .grid {
    grid-gap: 1rem;
  }
}

@media(min-width: $md) {
  nav ul {
    justify-content: flex-end;
  }
}

@media screen and (max-width: 1024px) {
  img:hover {
    transform: none;
  }
  
  .img-container {
    height: 100%;
    &:hover .img-content-hover {
      display: none;
    }
  }

  .img-content {
    display: block;
    padding: 1rem 0;
  }
}
