        /* Basic Reset & Body Styles */
        body {
            margin: 0;
			font-family: 'Poppins', sans-serif;
            padding: 0;
            line-height: 1.6;
            color: #333;
            background-color: #f4f4f4;
        }

:root {
    --primary-blue: #007bff; /* Bright action blue */
    --dark-blue: #2b2b6b; /* Dark navy for text and background */
    --light-gray: #e9ecef;
    --text-dark: #333;
    --text-light: #fff;
}

        /* Container for content */
        .container {
            max-width: auto;
            margin: 0 auto;
            padding: 1rem;
        }

        /* Header Styles */
        .page-header {
            background-color: var(--dark-blue);
			font-family: 'Poppins', sans-serif;
            color: #ecf0f1;
            padding: 0.5rem 0;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .page-header .container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap; /* Allow items to wrap on smaller screens */
        }

     

   /* --- 2. NAVIGATION BAR (The dark bar on top) --- */
.navbar-container {
    background-color: var(--dark-blue);
    padding: 15px 0;
}

.navbar {
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content:   center;
    gap: 30px;
}

.nav-link {
    color: var(--text-light);
    text-decoration: none;
    font-weight: bold;
    padding: 5px 10px;
    transition: color 0.3s;
}

.nav-link:hover {
    color: var(--primary-blue);
}



        /* Hamburger Menu Icon */
        .menu-toggle {
            display: none; /* Hidden by default on larger screens */
            flex-direction: column;
            justify-content: space-around;
            width: 30px;
            height: 25px;
            cursor: pointer;
            padding-right: 1rem;
        }

        .menu-toggle span {
            display: block;
            width: 100%;
            height: 3px;
            background-color: #ecf0f1;
            transition: all 0.3s ease;
        }

        /* Main Content Styling */
        main {
            padding: 2rem 0;
            background-color: #fff;
            box-shadow: 0 0 10px rgba(0,0,0,0.1);
        }

        main h2 {
            font-family: 'Playfair Display', serif;
            color: #2c3e50;
            text-align: center;
            margin-bottom: 1.5rem;
        }

        main p {
            margin-bottom: 1rem;
            font-size: 1.1rem;
        }

        .main-image {
            width: 100%;
            height: auto;
            max-width: 600px; /* Limit image size */
            display: block; /* Remove extra space below image */
            margin: 1.5rem auto; /* Center image and add vertical space */
            border-radius: 8px;
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        }

   .image-left {
    float: left;
    width: 250px;
    margin: 0 10px 10px 0;
	}
	
   
  .image-right {
    float: right;
    width: 250px;
    margin: 0 10px 10px 5px;
	}
    
     /* Footer Styles */
  .footer {
    background-color:  var(--dark-blue);
    color: var(--light-gray);
    padding: 20px;
    text-align: center;
    font-size: 0.9em;
}

.footer a {
    color: var(--dark-blue);
    text-decoration: none;
}
 
		 
		 
		 /* --- NEW FLEXBOX LAYOUT FOR CAROUSEL AND TEXT --- */

/* 1. The Wrapper: Enable Flexbox */
.hero-content-flex {
    display: flex; /* Turns on the Flexbox model */
    gap: 10px; /* Adds space between the carousel and the text */
    align-items: flex-start; /* Aligns items to the top (important if the content heights differ) */
    margin-bottom: 30px; /* Space below this section */
}

.hero-right {
    flex:;
    text-align: left;
    padding-left: 20px;
	background-color:  var(--light-gray:);
}


/* 2. The Carousel Area: Set Width and Override Centering */
.carousel-area {
    /* The carousel will take up about 30% of the available space */
    flex: 0 0 30%; 
    min-width: 300px; /* Ensure it doesn't get too small on narrow screens */
}

/* 3. The Text Area: Set Width */
.text-area {
    /* The text will take up the remaining space (about 60%) */
    flex: 1; 
}
/* flex: 1; in the context of Flexbox is a shorthand for three properties: flex-grow, flex-shrink, and flex-basis. */
 
/* --- CAROUSEL STYLES --- */

/* Main container to set the size and positioning */
.carousel-container {
    max-width: 90%; /* Ensures it fits within its parent container */
    position: relative; /* Needed to position the next/prev buttons */
    margin: 0 0 10px 0; /* Adjust margin to not auto-center */
    overflow: hidden; /* Important to hide slides that aren't showing */
    /* You may need to adjust the height if you want a fixed-size slideshow */
}

/* Container for all slides */
.carousel-slides {
    display: flex; /* Helps manage the slides, though JS will primarily handle display */
    /* Note: In a true sliding carousel, you might remove 'overflow: hidden' 
       from the container and animate the 'transform' property here. 
       For a simple fade slideshow, the JS will control the 'display' property. */
}

/* Individual slide styling */
.carousel-slide {
    display: none; /* Crucial: JavaScript will change this to 'block' for the active slide */
    width: 100%;
    position: relative; /* Needed to position the caption */
}

/* Ensure images fill the slide container and are responsive */
.carousel-slide img {
    width: 100%;
    height: auto;
    vertical-align: middle; /* Removes default spacing below the image */
}

/* Caption text style */
.carousel-caption {
    color: #f2f2f2;
    font-size: 15px;
    padding: 8px 12px;
    position: absolute;
    bottom: 8px;
    width: 100%;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.6); /* Semi-transparent background for readability */
}

/* --- NAVIGATION BUTTONS (PREV/NEXT) --- */

/* Style for the arrows */
.prev, .next {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: auto;
    padding: 16px;
    margin-top: -22px;
    color: white;
    font-weight: bold;
    font-size: 18px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
    user-select: none;
    background-color: rgba(0,0,0,0.5); /* Semi-transparent background */
}

/* Position the "next button" to the right */
.next {
    right: 0;
    border-radius: 3px 0 0 3px;
}

/* On hover, add a black background with a little transparency */
.prev:hover, .next:hover {
    background-color: rgba(0,0,0,0.8);
}

/* --- INDICATOR DOTS --- */

/* The dots/circles */
.dot {
    cursor: pointer;
    height: 15px;
    width: 15px;
    margin: 0 2px;
    background-color: #bbb;
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.6s ease;
}

/* Style the active dot */
.dot.active, .dot:hover {
    background-color: #717171;
}

/* Add a fade animation effect (needs to be applied via JS) */
.fade {
  /* Animation for a simple fade transition */
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}


		 
        /* Mobile Responsiveness */
        @media (max-width: 768px) {
            .page-title {
                font-size: 1.3rem;
            }

            .menu-toggle {
                display: flex; /* Show hamburger icon on small screens */
            }

            .main-nav {
                width: 100%;
                max-height: 0; /* Hide nav by default */
                overflow: hidden;
                transition: max-height 0.3s ease-out;
                flex-basis: 100%; /* Take full width below header items */
            }

            .main-nav.active {
                max-height: 300px; /* Show nav when active (adjust as needed) */
            }

            .main-nav ul {
                flex-direction: column; /* Stack menu items vertically */
                background-color: #34495e;
                border-top: 1px solid rgba(255,255,255,0.1);
            }

            .main-nav li {
                border-bottom: 1px solid rgba(255,255,255,0.05);
            }

            .main-nav a {
                padding: 1rem 1.5rem;
                text-align: center;
            }

            .dropdown {
                position: static; /* Dropdowns are inline in mobile */
                box-shadow: none;
                background-color: #49637c;
            }

            .dropdown a {
                padding-left: 2.5rem; /* Indent dropdown items */
            }
			
			 .image-left {
			float: left;	 
			width: 120px;
			height: 120px;
			margin: 0 10px 10px 0;
	}
	
			.image-right {
			float: right;
			width: 120px;
			height: 120px;
			margin: 0 10px 10px 0;
	}
		
.hero-content-flex {
        flex-direction: column; /* Change from side-by-side to stacking */
        gap: 15px; /* Reduce gap when stacked */
    }
    
    .carousel-area,
    .text-area {
        flex: none; /* Remove flexible sizing */
        width: 100%; /* Allow both to take full width */
    }
		
        }