.hidden {
    display: none;
}

body {
    font-family: 'Lora', serif;
    background-color: #556B2F; /* Dark earthy green */
    color: #333;
    margin: 0; /* Remove margin to align the header with the viewport */
    line-height: 1.6;
}

.main-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    background: linear-gradient(to bottom, #8FBC8F, #556B2F); /* Gradient background for main section */
    color: white;
    min-height: 100vh; /* Ensure it takes full height of viewport */
    text-align: center;
}

.header {
    background: url('https://github.com/WhiteRiverSustainability/smallsteps/blob/main/Images/nav.jpg?raw=true') center/cover #90a997;
    color: white;
    height: 80vh; /* Make the header take up most of the viewport height */
    display: flex;
    flex-direction: column; /* Align the title and nav vertically */
    justify-content: center;
    align-items: center;
    text-align: center;
    position: relative; /* To position the text properly */
}

.header::after {
    content: "";
    background-color: rgba(0, 0, 0, 0.5); /* Add a semi-transparent layer for better text readability */
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1; /* Ensure it's behind the text */
}

nav ul {
    list-style: none;
    padding: 0;
    z-index: 2; /* Ensure it's above the semi-transparent layer */
    position: relative;
    display: flex; /* Use flexbox for horizontal alignment */
    justify-content: center; /* Center the navigation items */
    gap: 20px; /* Add space between the items */
}

nav ul li {
    position: relative;
}

nav ul li:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 0;
    right: -5px;
    height: 100%;
    width: 1px;
    background-color: white; /* Separator color */
    opacity: 0.5; /* Slightly transparent */
}

nav ul li a {
    color: white;
    text-decoration: none;
    font-size: 1.5em; /* Adjust font size */
    text-shadow: 1px 1px 2px #000; /* Add text shadow for better readability */
    padding: 10px 20px; /* Ensure the padding is applied to the anchor */
    border-radius: 4px; /* Add border radius for smoother corners */
    transition: all 0.3s ease; /* Smooth transition for hover effects */
}

nav ul li a:hover {
    outline: 2px solid white; /* Add a white outline on hover */
}

h1 {
    font-size: 8em; /* Increase the size of the main header text */
    z-index: 2;
    position: relative;
    margin: 3px 0; /* Add some spacing between title and nav */
    text-align: center;
}

.box-container {
    width: 100%;
    max-width: 800px; /* Adjust as needed */
    margin: 50px auto; /* Center the container horizontally */
    display: flex;
    flex-direction: column; /* Stack the boxes vertically */
    gap: 20px; /* Space between the boxes */
}

.box {
    width: 100%; /* Full width within the container */
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    font-size: large;
    text-align: left; /* Align text to the left */
}

.box1 {
    background-color: #708d5d;
    color: white;
}

.box2 {
    background-color: #ffffff;
    color: black;
}

.box3 {
    background-color: #cccccc;
    color: black;
}

/* Media Queries for Mobile Responsiveness */
@media (max-width: 768px) {
    h1 {
        font-size: 4em; /* Adjust header font size for mobile */
    }
    
    nav ul {
        flex-direction: column; /* Stack nav items vertically on mobile */
        gap: 10px; /* Reduce gap between nav items */
    }
    
    nav ul li:not(:last-child)::after {
        display: none; /* Remove separator on mobile */
    }
    
    nav ul li a {
        font-size: 1.2em; /* Adjust font size for nav items on mobile */
        padding: 10px 15px; /* Adjust padding for nav items on mobile */
    }
    
    .footer-content {
        padding: 10px; /* Adjust padding for mobile */
    }
}

.footer-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

/* Common styles for both buttons */
.footer-button,
#open-form-btn {
  display: inline-block;        /* Ensures both behave like buttons */
  width: 200px;                 /* Same width for both */
  height: 50px;                 /* Same height for both */
  font-size: 1.2em;             /* Same font size */
  line-height: 50px;            /* Vertically center the text */
  text-align: center;           /* Center the text horizontally */
  background-color: #708d5d;    /* Match the color if desired */
  color: white;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  text-decoration: none;        /* So links look like buttons */
  margin: 5px;                  /* Optional spacing around buttons */
  transition: background-color 0.3s ease;
}

/* Common hover effect */
.footer-button:hover,
#open-form-btn:hover {
  background-color: #556B2F;
}

