body {
  margin: 0;
  font-family: Arial;
}

header {
  display: flex;
  justify-content: space-between;
  background: #222;
  color: white;
  padding: 15px;
}

nav a {
  color: white;
  margin: 0 10px;
  text-decoration: none;
}

.hero {
  text-align: center;
  padding: 50px;
  background: lightgray;
}

.container {
  display: flex;
  padding: 20px;
}

.posts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
  flex: 3;
}

.card {
  border: 1px solid #ddd;
  padding: 10px;
}

.card img {
  width: 100%;
}

aside {
  flex: 1;
  margin-left: 20px;
}

.login-box {
  display: none;
  position: fixed;
  top: 30%;
  left: 35%;
  background: white;
  padding: 20px;
  border: 1px solid black;
}

footer {
  text-align: center;
  padding: 15px;
  background: black;
  color: white;
}

/* MOBILE */
@media(max-width: 768px) {
  .container {
    flex-direction: column;
  }

  .posts {
    grid-template-columns: 1fr;
  }

  .login-box {
    left: 10%;
    width: 80%;
  }
}
