 *, *::before, *::after {
    box-sizing: border-box;
  }

body {
  font-family: 'Courier Prime', monospace;
  font-size: 16px;
  background-image: url('https://i.pinimg.com/736x/fd/68/28/fd682891c3aaddeb49546156964d8ce1.jpg');
  background-repeat: no-repeat;
  background-size: cover; 
  background-position: center;
  background-attachment: fixed; 
  color: #000000;
  margin: 0;
  width: 100%;
}

a {
  color: #ff75ac;
  text-decoration: none;
}

.content-wrap {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding: 1em 0;
  box-sizing: border-box;
}

header {
  background: transparent;
  padding: 1em;
  text-align: center;
}

nav {
  background: #ebebeb;
  text-align: center;
  padding: 0.5em;
}

nav a {
  color: #000000;
  text-decoration: none;
  margin: 0 0.5em;
}

footer {
  background: transparent;
  padding: 1em;
  text-align: center;
}

.layout {
  display: flex;
  gap: 1em;
  box-sizing: border-box;
  justify-content: center;  /* <-- center the columns horizontally */
  max-width: 100%;          /* ensure it fits inside .content-wrap */
}

aside, main {
  padding: 16px;
  border: 0px solid #ccc;
  min-height: 300px;
  box-sizing: border-box;
}

.left  { flex: 0 0 20%;  background: #eeeeee; opacity: 75;
}
.main  { flex: 0 0 60%; background: #eeeeee; }
.right { flex: 0 0 20%; background: #eeeeee; }

@media (max-width: 768px) {
  .layout {
    flex-direction: column;
  }
  .left, .main, .right {
    flex: 1 1 100%;
  }
}