 /* Style the button that is used to open and close the collapsible content */
.collapsible {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
}

h1,h2,h3,h4 {
  background: rgba(51, 70, 51, .3)
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.active, .collapsible:hover {
  background-color: #ccc;
}

/* Style the collapsible content. Note: hidden by default */
.content {
  padding: 0 18px;
  display: none;
  overflow: hidden;
  background-color: #f1f1f1;
} .hover-image {
      display: inline-block;
      position: relative;
    }

    .hover-image img {
      display: block;
    }

    .hover-image .hover-effect {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      transition: opacity 0.3s ease;
    }

    .hover-image:hover .hover-effect {
      opacity: 1;
    }

    .text-block {
      padding: 20px;
      border-radius: 10px;
      max-width: 800px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      font-family: "Courier New", monospace;
      color: #000;
      margin: 0 auto;
    }

    .text-block img {
      margin-bottom: 0px;
    }

    img:hover {
      cursor: zoom-in;
    }

    .back-button {
      color: #fff;
      font-size: 16px;
      text-decoration: none;
      margin-right: 15px;
    }

    .modal {
      display: none;
      position: fixed;
      z-index: 1000;
      padding-top: 50px;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      overflow: auto;
      background-color: rgba(0,0,0,0.9);
    }

    .modal-content {
      margin: auto;
      display: block;
      width: 80%;
      max-width: 700px;
    }

    .modal-content img {
      width: 100%;
      height: auto;
    }

    .close {
      position: absolute;
      top: 45px;
      right: 75px;
      color: #fff;
      font-size: 40px;
      font-weight: bold;
      transition: 0.3s;
    }

    .close:hover,
    .close:focus {
      color: #bbb;
      text-decoration: none;
      cursor: pointer;
    }

    .portfolio {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-around;
      margin: 0 auto;
      padding: 10px;
      max-width: 2000px;
      background: rgba(51, 70, 51, .7)
    }

    .column {
      flex: 1 1 calc(33.333% - 40px); /* Adjusts columns to take 33.333% of container width */
      margin: 20px;
      box-sizing: border-box;
    }

    img {
      width: 100%;
      height: auto;
    }

    .description {
      background-color: #f4f4f4;
      padding: 10px;
      border: 1px solid #ccc;
    }

    h3 {
      font-size: 1.2em;
      margin-bottom: 5px;
      text-align: center;
      font-family: monospace, courier;
    }

    p {
      font-size: 0.9em;
      line-height: 1.4;
      font-family: monospace, courier;
      text-align: center;
    }

    /* Media queries */
    @media only screen and (max-width: 900px) {
      .column {
        flex: 1 1 calc(50% - 40px); /* 2 columns */
      }
    }

    @media only screen and (max-width: 600px) {
      .column {
        flex: 1 1 100%; /* 1 column */
      }

      .text-block {
        margin-top: 20px;
      }
      
    }