/* -----------------------
   1. Basic Reset
------------------------- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* -----------------------
   2. Body & Global
------------------------- */
body {
    /* Use our new Google Font for regular text */
    font-family: 'Open Sans', sans-serif;
    background-color: #F0FAF4; /* A light, subtle green background */
    color: #333;
    line-height: 1.6;
}

/* Site-wide links: no underline, a nice greenish color, 
   and a more distinct hover color. 
*/
a {
    text-decoration: none;
    color: #357A50; /* Medium green, adjust as you like */
    transition: color 0.3s ease;
}

    a:hover {
        text-decoration: none;
        color: #285B3C; /* Darker green on hover */
    }

/* -----------------------
   3. Header & Logo
------------------------- */
header {
    background-color: #5D9B73; /* A medium/dark green for the header bar */
    padding: 1rem 0;
    text-align: center;
    border-bottom: 4px solid #4B845F;
}

.logo-area {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.logo {
    max-height: 60px;
    width: auto;
}

/* Use Poppins for the main site title to be more playful, stand out. */
header h1 {
    font-family: 'Poppins', sans-serif;
    color: #ffffff;
    font-size: 2rem;
    margin: 0;
}

/* -----------------------
   4. Slick Navigation
------------------------- */
nav {
    background-color: #5D9B73; /* Same green as header to blend seamlessly */
    padding: 0.5rem;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

    nav ul {
        list-style-type: none;
        display: flex;
        justify-content: center;
        gap: 2rem;
        margin: 0;
        padding: 0;
    }

        nav ul li {
            position: relative;
        }

            /* Make the menu text stand out more (bolder, larger) */
            nav ul li a {
                color: #fff;
                font-family: 'Poppins', sans-serif;
                font-weight: 600;
                font-size: 1.1rem; /* Slightly bigger text */
                position: relative;
                padding: 0.5rem 0;
                transition: color 0.3s ease;
            }

                /* "Slide-under" effect - no normal underline on hover */
                nav ul li a::after {
                    content: "";
                    position: absolute;
                    left: 0;
                    bottom: -3px;
                    width: 0;
                    height: 3px;
                    background: #FFDF91; /* A contrasting color (warm yellowish) for the line */
                    transition: width 0.3s ease;
                }

                nav ul li a:hover::after {
                    width: 100%;
                }

                /* If you also want the text color to change on hover */
                nav ul li a:hover {
                    color: #FFDF91; /* a warm, gold-ish color that pops against green */
                }

                /* Highlight the "active" page link if you add .active in HTML/PHP */
                nav ul li a.active {
                    color: #FFDF91;
                }

/* -----------------------
   5. Main Content
------------------------- */
main {
    max-width: 1100px;
    margin: 2rem auto;
    padding: 0 1rem;
}

/* Example styling for sections (optional). 
   White background for content blocks. 
*/
section {
    background-color: #fff;
    border: 1px solid #E2EFE7;
    border-radius: 6px;
    padding: 1.5rem;
    margin-bottom: 2rem;
}

    section h2, section h3 {
        /* Use Poppins for headings in content, too */
        font-family: 'Poppins', sans-serif;
        color: #357A50;
        margin-bottom: 0.75rem;
    }

/* -----------------------
   6. Footer
------------------------- */
footer {
    background-color: #5D9B73;
    color: #ffffff;
    text-align: center;
    padding: 1rem;
    border-top: 4px solid #4B845F;
}

    footer a {
        color: #FFDF91;
        text-decoration: none;
        transition: color 0.3s ease;
    }

        footer a:hover {
            color: #fff;
            text-decoration: none;
        }

/* -----------------------
   7. Responsive
------------------------- */
@media (max-width: 600px) {
    nav ul {
        flex-direction: column;
        gap: 1rem;
    }

    header h1 {
        font-size: 1.4rem;
    }
}
/*******************
  BASIC CAROUSEL STYLES
********************/

/* Container for everything */
.carousel {
    width: 100%;
    max-width: 600px; /* Adjust as needed */
    margin: 1rem auto;
    position: relative;
    overflow: hidden;
    border: 2px solid #E2EFE7;
    border-radius: 8px;
}

    /* The slides container */
    .carousel .slides {
        display: flex;
        width: 300%;
        transition: transform 0.6s ease;
    }

        /* Hide default radio buttons */
        .carousel .slides input[type="radio"] {
            display: none;
        }

    /* Each individual slide */
    .carousel .slide {
        width: 100%;
        flex-shrink: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #fff; /* Slide background (optional) */
    }

        /* Slide images: auto-scale for responsiveness */
        .carousel .slide img {
            width: 100%;
            height: auto;
            object-fit: cover;
            /* If your images have different aspect ratios, 
     you can set a fixed height or use another approach. */
        }

/* Positioning logic: 
   We transform .slides to show the correct slide 
   based on which radio button is checked. */
#slide1:checked ~ .slides {
    transform: translateX(0%); /* Show slide 1 */
}

#slide2:checked ~ .slides {
    transform: translateX(-100%); /* Show slide 2 */
}

#slide3:checked ~ .slides {
    transform: translateX(-200%); /* Show slide 3 */
}
/* If you add more slides, add more radio inputs & transform rules. */

/* The "dots"/navigation labels */
.carousel .navigation {
    text-align: center;
    position: absolute;
    width: 100%;
    bottom: 10px;
    left: 0;
}

    /* Dots for each label: 
   This style gives them circle shapes, some margin, etc. */
    .carousel .navigation label {
        display: inline-block;
        width: 12px;
        height: 12px;
        margin: 0 3px;
        border-radius: 50%;
        background: #aaa; /* default dot color */
        cursor: pointer;
        transition: background 0.3s;
    }

        /* You can highlight the dot for the selected slide with a sibling selector, 
   but a simpler approach is to change dot color on hover. */
        .carousel .navigation label:hover {
            background: #357A50; /* or any highlight color */
        }
