:root {
  --white: #FFF;
  --yellow: hsl(47, 88%, 63%);
  --gray-500: hsl(0, 0%, 42%);
  --gray-950: hsl(0, 0%, 7%);
}
body {
  font-family: "Figtree", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 1em; /* 16px */
  line-height: 1.4;
  color: var(--gray-950);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--yellow);
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
h1 {
  font-size: 1.313rem;
  line-height: 1;
  font-weight: 800;
}
@media (min-width: 768px) {
  h1 {
    font-size: 1.5rem;
  } 
}
h1 a {
  transition: color 0.2s;
  color: var(--gray-950);
  text-decoration: none;
}
h1 a:hover {
  color: var(--yellow);
  cursor: pointer;
}
p {
  font-size: 1rem;
  margin: 0;
}
.main {
  width: 21rem;
  max-width: 75%;
  background-color: var(--white);
  padding: 1.438rem;
  border: solid 1px var(--gray-950);
  border-radius: 1.25rem;
  box-shadow: 0.5rem 0.5rem 0px 0px var(--gray-950);
}

.main__content {
  padding: 1.25rem 0 0;
}
.main__article-img {
  width: 100%;
  border-radius: 1rem;
}
.main__tag {
  font-size: 0.875rem;
  font-weight: 800;
  display: inline-block;
  padding: 0.3rem 0.75rem;
 background-color: var(--yellow);
 border-radius: 0.3rem;
 margin-bottom: 0.75rem;
}
.main__published {
  font-size: 0.818rem;
  margin-bottom: 1.25rem;
}
@media (min-width: 768px) {
  .main__published {
    font-size: 0.875rem;
  } 
}
.main__desc {
  font-size: 0.875rem;
  color: var(--gray-500);
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .main__desc {
    font-size: 1rem;
  } 
}
.main__avatar-group a {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  color: var(--gray-950);
  text-decoration: none;
}
.main__avatar-group a:hover span {
  color: var(--yellow)
}
.main__avatar-group img {
  width: 1.875rem;
  padding-right: 0.75rem;
}
.main__avatar-group span {
  transition: color 0.2s;
  font-weight: 800;
  font-size: 0.875rem;
}
.attribution { width: 21rem; max-width: 75%; padding-top: 2rem; text-align: center; }
.attribution p { color: var(--gray-500); font-size: 0.75rem; }
.attribution a { color: var(--gray-500); }