body {
  background-color: #fff;
  padding: 50px;
  font: 18px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #808080;
  font-weight: 400;
  margin: 0;
}

.container {
  display: flex;
  gap: 50px; /* space between columns */
  align-items: flex-start;
}

.left-column {
  width: 33%;
  flex-shrink: 0; /* prevent shrinking */
}

.right-column {
  width: 67%;
  max-height: 80vh;       /* only scroll if content exceeds viewport */
  overflow-y: auto;
}

/* Footer full width */
footer {
  width: 100%;
  margin-top: 20px;
  text-align: center;
  color: #595959;
}

/* Images responsive */
img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 20px 0;
}

/* Social icons */
.social-icons {
  display: flex;
  gap: 10px;
  align-items: center;
}

.social-icons img {
  width: 24px;
  height: 24px;
  transition: transform 0.2s;
}

.social-icons a:hover img {
  transform: scale(1.25);
}

/* Headings */
h1 {
  line-height: 1.1;
  margin: 40px 0 0px;
}

h2, h3, h4, h5, h6 {
  line-height: 1.1;
  margin: 40px 0 20px;
}

h1 { font-size: 36px; font-weight: 500; color: #222; }
h2 { font-size: 24px; font-weight: 500; color: #393939; }
h3, h4, h5, h6 { font-weight: 500; color: #494949; }

p, ul, ol, table, pre, dl {
  margin: 0;
}

a { color: #39c; text-decoration: none; }
a:hover { color: #069; }

/* Responsive: stack columns on small screens */
@media screen and (max-width: 768px) {
  .container {
    flex-direction: column;
  }
  .left-column,
  .right-column {
    width: 100%;
    max-height: none;
    overflow: visible;
  }
}
