/* --- GLOBAL STYLES & RESET --- */
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    margin: 0; /* Removes default body margin */
    padding: 0;
    background-color: #c7c7c7;
    color: #333;
}

/* Set a maximum width for the main content to prevent it from stretching too wide on large screens */
.three-column-layout {
    max-width: 1200px;
    margin: 40px auto; /* Centers the entire column section */
    padding: 0 20px;
    display: flex; /* Key CSS: Enables the column layout */
    gap: 20px; /* Adds space between the three columns */
}

/* --- HEADER STYLING --- */
.site-header {
    background-color: #9db898; /* Dark blue background (retained for contrast) */
    color: white;
    padding: 20px 40px;
    /* Key CSS: Uses flexbox to align the logo and name side-by-side */
    display: flex;
    justify-content: space-between; /* Pushes logo to the left and name to the right */
    align-items: center; /* Vertically centers items */
    border-bottom: 5px solid #27ae60; /* ACCENT GREEN HERE */
}

.logo img {
    /* Ensures the logo isn't too big */
    max-height: 100px; 
    width: auto;
    display: block;
}

.site-name {
    margin: 0; /* Removes default h1 margin */
    font-size: 1.8em;
    font-weight: 700;
    letter-spacing: 1px;
}


/* --- COLUMN STYLING --- */
.column {
    background-color: #d8d8d8;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); /* Soft shadow effect */
    flex: 1; /* Key CSS: Makes all three columns take up equal width */
}

.column h2 {
    color: #27ae60; /* ACCENT GREEN FOR HEADINGS */
    border-bottom: 2px solid #eee;
    padding-bottom: 10px;
    margin-top: 0;
}

.column p {
    line-height: 1.6;
    margin-bottom: 20px;
}

/* --- UTILITY LINKS --- */
a {
    display: inline-block;
    padding: 10px 20px;
    background-color: #27ae60; /* ACCENT GREEN FOR BUTTON BG */
    color: white;
    text-decoration: none; /* Removes the underline */
    border-radius: 5px;
    transition: background-color 0.3s;
}

a:hover {
    background-color: #2ecc71; /* Slightly lighter green on hover */
}


/* --- MEDIA QUERY FOR RESPONSIVENESS --- */
/* This ensures the three columns stack vertically on smaller screens (like mobile phones) */
@media (max-width: 768px) {
    .site-header {
        flex-direction: column;
        text-align: center;
        padding: 20px 20px;
    }
    
    .logo {
        margin-bottom: 15px;
    }

    .site-name {
        font-size: 1.5em;
    }

    /* Change the layout to stack columns vertically */
    .three-column-layout {
        flex-direction: column;
        margin: 20px auto;
    }
    
    .column {
        margin-bottom: 20px; /* Adds space between stacked columns */
    }
}
