/* Hide content visually but keep it available to screen readers */
.visually-hidden {
  position: absolute;
  left: -9999px;
}

/* General page styling with flexbox for sticky footer */
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  font-family: Arial, sans-serif;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

/* Make main content flexible to push footer down */
main {
  flex: 1;
  padding: 20px;
  overflow-y: auto;
}

/* Center the page title */
header {
  text-align: center;
  padding: 20px 20px 0;
  flex-shrink: 0;
}

/* Layout for the articles */
.articles-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

/* Article 1 spans both columns */
.articles-container article:first-of-type {
  grid-column: 1 / 3;
}

/* Article styling */
article {
  border: 1px solid #ccc;
  padding: 15px;
}

/* Make images responsive */
article img {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 10px;
}

/* Fixed footer to bottom of viewport */
footer {
  text-align: center;
  padding: 10px 20px;
  border-top: 1px solid #ccc;
  background-color: #f9f9f9;
  flex-shrink: 0;
}
