.responsive-grid {
  display: grid;
  grid-template-areas: 
    "header"
    "nav"
    "main"
    "aside"
    "footer";
  grid-template-rows: auto auto 1fr auto auto;
  gap: 10px;
  background: #e9ecef;
  padding: 10px;
  border-radius: 5px;
  min-height: 400px;
}

@media (min-width: 768px) {
  .responsive-grid {
    grid-template-areas: 
      "header header"
      "nav main"
      "aside main"
      "footer footer";
    grid-template-columns: 200px 1fr;
    grid-template-rows: auto auto 1fr auto;
  }
}

@media (min-width: 1024px) {
  .responsive-grid {
    grid-template-areas: 
      "header header header"
      "nav main aside"
      "footer footer footer";
    grid-template-columns: 200px 1fr 200px;
    grid-template-rows: auto 1fr auto;
  }
}

.responsive-grid > div {
  background: #007bff;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  font-weight: bold;
  padding: 15px;
  min-height: 50px;
}

.responsive-grid .header { grid-area: header; background: #28a745; }
.responsive-grid .nav { grid-area: nav; background: #ffc107; color: #212529; }
.responsive-grid .main { grid-area: main; background: #007bff; }
.responsive-grid .aside { grid-area: aside; background: #6c757d; }
.responsive-grid .footer { grid-area: footer; background: #dc3545; }