/* General Styles */
/* General Styles */
body {
    font-family: 'Proxima Nova', Arial, sans-serif;
    margin: 0;
    padding: 0;
    line-height: 1.6;
    color: #1e4d2b; /* CSU Green for text */
    background-color: #f5f5f5; /* Light gray */
    overflow-x: hidden; /* Prevent horizontal scrolling */
}

html, body {
    width: 100%; /* Full width for the viewport */
    height: 100%; /* Full height for the viewport */
    box-sizing: border-box; /* Include padding and border in width/height */
}
/* Main content should stretch dynamically */
main {
    flex: 1; /* Fills the available space between the header and footer */
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* Align content to the top */
}

/* General Hero Section */


.hero {
    position: relative;
    width: 100%; /* Full container width */
    height: 500px; /* Fixed height for the hero */
    overflow: hidden; /* Prevent overflow issues */
    margin: 0; /* Remove margins */
    padding: 0; /* Remove paddings */
    box-sizing: border-box; /* Include padding and borders in width/height */
    background-size: cover; /* Ensure image covers the entire hero section */
    background-position: center; /* Center the image */
    background-repeat: no-repeat; /* Avoid image repetition */
}


/* Consistent gap below the hero section */
.hero + section {
    margin-bottom:: 30px; /* Adjust the gap as needed */
}














/* ==================================================================================== */

/* Main Page Hero Section */
body.home-page .hero {
    background-image: url('images/hero/pexels-mikhail-nilov-8108723.jpg'); /* Replace with home page image */
    background-color: #1e4d2b; /* Fallback color if image fails to load */
    background-size: cover; /* Ensure the image covers the entire hero area */
    background-repeat: no-repeat; /* Avoid repeating the image */
    background-position: center center; /* Center the image horizontally and vertically */
    background-attachment: scroll; /* Prevent fixed background if it's causing issues */
    object-fit: cover; /* For responsive scaling on modern browsers */
}

/* Main Page Hero Text Color */
body.home-page .overlay h1,
body.home-page .overlay h2 {
    color: #ffffff; /* White for home page */
}


/* Position the overlay */
body.home-page .overlay {
    position: absolute;
    top: 40%; /* Adjust this to move the text up/down */
    left: 50%; /* Horizontally center the text */
    transform: translate(-50%, -50%); /* Center with offset correction */
    text-align: center;
}

/* Adjust the spacing for the text */
body.home-page .overlay h1 {
    margin-bottom: 10px; /* Adjust spacing below h1 */
    font-size: 2.5em; /* Adjust size of the heading */
}

body.home-page .overlay h2 {
    margin-top: 5px; /* Adjust spacing above h2 */
    font-size: 1.8em; /* Adjust size of the subheading */
}




/* ==================================================================================== */

/* About Page Hero Section */
body.about-page .hero {
    background-image: url('images/hero/pexels-googledeepmind-25626437.jpg'); /* Replace with about page image */
    background-color: #225456; /* Fallback color */
    background-size: cover; /* Ensure the image covers the entire hero area */
    background-repeat: no-repeat; /* Avoid repeating the image */
    background-position: center center; /* Center the image horizontally and vertically */
    background-attachment: scroll; /* Prevent fixed background if it's causing issues */
    object-fit: cover; /* For responsive scaling on modern browsers */
}


/* About Page Hero Text Color */
body.about-page .overlay h1,
body.about-page .overlay h2 {
    color: #000000; /* CSU Gold for about page */
}


/*=====================================================================================*/
/* How-To-Guides-Page Hero Section */
body.how-to-guides-main-page .hero {
    background-image: url('images/hero/pexels-googledeepmind-25626437.jpg'); /* Replace with your hero image */
    background-color: #f0f8ff; /* Light blue fallback color */
    background-size: cover; /* Ensure the image covers the entire hero area */
    background-repeat: no-repeat; /* Avoid repeating the image */
    background-position: center center; /* Center the image horizontally and vertically */
    background-attachment: scroll; /* Prevent fixed background if it's causing issues */
    object-fit: cover; /* For responsive scaling on modern browsers */
}

/* How-To-Guides-Page Hero Text Color */
body.how-to-guides-main-page .overlay h1,
body.how-to-guides-main-page .overlay h2 {
    color: #003366; /* Dark blue for text */
}



/* ==================================================================================== */

/* Publications Page Hero Text Color */
body.publications-page .hero {
    background-image: url('images/hero/pexels-leeloothefirst-8937453.jpg'); /* Replace with home page image */
    background-color: #1e4d2b; /* Fallback color if image fails to load */
    background-size: cover; /* Ensure the image covers the entire hero area */
    background-repeat: no-repeat; /* Avoid repeating the image */
    background-position: center center; /* Center the image horizontally and vertically */
    background-attachment: scroll; /* Prevent fixed background if it's causing issues */
    object-fit: cover; /* For responsive scaling on modern browsers */
}

/* Publications Page Hero Text Color */
body.publications-page .overlay h1,
body.publications-page .overlay h2 {
    color: #ffffff; /* White for home page */
}


/* Position the overlay */
body.publications-page .overlay {
    position: absolute;
    top: 40%; /* Adjust this to move the text up/down */
    left: 50%; /* Horizontally center the text */
    transform: translate(-50%, -50%); /* Center with offset correction */
    text-align: center;
}

/* Adjust the spacing for the text */
body.publications-page .overlay h1 {
    margin-bottom: 10px; /* Adjust spacing below h1 */
    font-size: 2.5em; /* Adjust size of the heading */
}

body.publications-page .overlay h2 {
    margin-top: 5px; /* Adjust spacing above h2 */
    font-size: 1.8em; /* Adjust size of the subheading */
}





/* ==================================================================================== */


/* Research Page */
body.research-page .hero {
    background-image: url('images/hero/pexels-googledeepmind-17483874.jpg'); /* Replace with home page image */
    background-color: #1e4d2b; /* Fallback color if image fails to load */
    background-size: cover; /* Ensure the image covers the entire hero area */
    background-repeat: no-repeat; /* Avoid repeating the image */
    background-position: center center; /* Center the image horizontally and vertically */
    background-attachment: scroll; /* Prevent fixed background if it's causing issues */
    object-fit: cover; /* For responsive scaling on modern browsers */
}

/* Research Page Hero Text Color */
body.research-page .overlay h1,
body.research-page .overlay h2 {
    color: #ffffff; /* White for home page */
}


/* Position the overlay */
body.research-page .overlay {
    position: absolute;
    top: 40%; /* Adjust this to move the text up/down */
    left: 50%; /* Horizontally center the text */
    transform: translate(-50%, -50%); /* Center with offset correction */
    text-align: center;
}

/* Adjust the spacing for the text */
body.research-page .overlay h1 {
    margin-bottom: 10px; /* Adjust spacing below h1 */
    font-size: 2.5em; /* Adjust size of the heading */
}

body.research-page .overlay h2 {
    margin-top: 5px; /* Adjust spacing above h2 */
    font-size: 1.8em; /* Adjust size of the subheading */
}




/* Research Page Styling */
#research {
    padding: 40px 20px;
    background: #ffffff; /* White background for clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    border-radius: 8px;
    box-sizing: border-box; /* Include padding and borders in height calculation */
}

#research h1 {
    text-align: center;
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 40px;
    font-size: 2.5em; /* Adjust font size for main header */
}

#research section {
    margin-bottom: 40px; /* Add spacing between sections */
}

#research h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 2em; /* Sub-header size */
}

#research p {
    text-align: justify;
    line-height: 1.8; /* Better readability */
    color: #444; /* Darker gray for readability */
}





/* Research Page Styling */
#research {
    padding: 40px 20px;
    background: #ffffff; /* White background for clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-sizing: border-box; /* Include padding and borders in height calculation */
}

#research h1 {
    text-align: center;
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 40px;
    font-size: 2.5em; /* Adjust font size for main header */
}

/* Box-in-Box Styling for Each Section */
.research-box {
    background-color: #f9f9f9; /* Light background */
    border: 1px solid #ddd; /* Subtle border */
    padding: 20px;
    border-radius: 8px; /* Rounded corners */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Soft shadow for depth */
    margin-bottom: 40px; /* Spacing between sections */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.research-box:hover {
    transform: translateY(-5px); /* Lift effect on hover */
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15); /* Enhanced shadow on hover */
}

/* Section Headers */
.research-box h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 2em; /* Sub-header size */
    text-align: center;
}

/* Section Content */
.research-box p {
    text-align: justify;
    line-height: 1.8; /* Better readability */
    color: #444; /* Darker gray for readability */
}

/* Equation Styling for Research Sections */
.equation {
    font-family: 'Proxima Nova', sans-serif; /* Ensure consistent font styling */
    font-size: 1.1em; /* Slightly larger than paragraph text */
    font-weight: bold; /* Highlight the equation */
    text-align: center; /* Center the equation */
    margin: 15px 0; /* Add spacing above and below */
    color: #1e4d2b; /* CSU Green to match the theme */
}

/* Adjust multi-agent systems box for larger content */
#multi-agent-systems {
    padding: 20px; /* Add some padding for better readability */
    background: #f9f9f9; /* Subtle background for better contrast */
    border: 1px solid #ddd; /* Border for separation */
    border-radius: 8px; /* Rounded corners */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    margin-bottom: 20px; /* Spacing from other sections */
}

}


@media (max-width: 768px) {
    body.research .overlay h1 {
        font-size: 2.5em; /* Reduce font size on smaller screens */
    }

    body.esearch .overlay h2 {
        font-size: 1.5em; /* Adjust subheader size */
    }

    #esearch {
        padding: 20px; /* Reduce padding for smaller screens */
    }
}



/* ==================================================================================== */

/* ==================================================================================== */


/* Industry Experience Page Hero Section */
/* Specific Hero Section for Industry Experience Page */
body.industry-page .hero {
    background: #1e4d2b; /* Fallback solid color */
    background-image: url('images/hero/pexels-sejio402-6477212.jpg'); /* Industry page-specific image */
    background-size: cover; /* Cover the entire hero area */
    background-position: center; /* Center the background image */
    background-repeat: no-repeat; /* Avoid repeating the image */
}


html body.industry-page .hero {
    background: #1e4d2b !important; /* Fallback color */
    background-image: url('images/hero/pexels-sejio402-6477212.jpg') !important;
    background-size: cover !important;
    background-position: center !important;
    height: 500px !important;
}


/* Industry Experience Page Hero Text Color */
body.industry-page .overlay h1,
body.industry-page .overlay h2 {
    color: #ffffff; /* White text for contrast */
}

/* Hero Text Styling */
body.industry-page .overlay h1 {
    font-size: 3em; /* Adjust header size */
    margin-bottom: 15px; /* Add spacing below the header */
}

body.industry-page .overlay h2 {
    font-size: 1.8em; /* Adjust subheader size */
    margin-top: 5px; /* Add spacing above the subheader */
    font-weight: normal; /* Subtle styling for the subheader */
}

/* Positioning the Hero Overlay */
body.industry-page .overlay {
    position: absolute;
    top: 45%; /* Adjust to vertically center the text */
    left: 50%; /* Horizontally center the text */
    transform: translate(-50%, -50%); /* Center the overlay */
    text-align: center;
}


/* Overlay for Hero Text */
body.industry-page .hero .overlay {
    position: absolute;
    top: 50%; /* Vertically center */
    left: 50%; /* Horizontally center */
    transform: translate(-50%, -50%); /* Perfect centering */
    text-align: center;
    color: #ffffff; /* White text for readability */
    z-index: 2; /* Above the hero background */
}

/* Hero Text Styles */
body.industry-page .hero .overlay h1 {
    font-size: 2.5em;
    margin-bottom: 10px;
    font-weight: bold;
}

body.industry-page .hero .overlay h2 {
    font-size: 1.8em;
    margin-top: 5px;
    font-weight: lighter;
}






/* ==================================================================================== */
/* Industry Experience Section Styling */
#industry-experience {
    padding: 40px 20px; /* Add padding around the section */
    background: #ffffff; /* White background for clarity */
    margin: 20px auto; /* Center align and add spacing */
    max-width: 900px; /* Limit width for readability */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
    border-radius: 8px; /* Rounded corners */
    box-sizing: border-box; /* Include padding in width/height calculation */
}

/* Section Header */
#industry-experience h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 2em;
}

/* Section Paragraphs */
#industry-experience p {
    text-align: justify; /* Justify text for readability */
    line-height: 1.8; /* Better spacing between lines */
    margin-bottom: 20px; /* Add spacing below paragraphs */
    color: #444; /* Dark gray for readability */
}

/* List Styling */
#industry-experience ul {
    padding-left: 20px; /* Indent for bullet points */
    margin-top: 10px;
}

#industry-experience ul li {
    margin-bottom: 10px; /* Space between list items */
    line-height: 1.6; /* Improve readability */
    color: #1e4d2b; /* CSU Green for list text */
}

/* Hover Effects for Interactive Elements */
#industry-experience a {
    color: #1e4d2b; /* Default link color */
    text-decoration: none;
    font-weight: bold;
}

#industry-experience a:hover {
    color: #c8c372; /* CSU Gold on hover */
    text-decoration: underline;
}

/* ==================================================================================== */

/* Responsive Adjustments */
@media (max-width: 768px) {
    body.industry-page .overlay h1 {
        font-size: 2.5em; /* Reduce font size on smaller screens */
    }

    body.industry-page .overlay h2 {
        font-size: 1.5em; /* Adjust subheader size */
    }

    #industry-experience {
        padding: 20px; /* Reduce padding for smaller screens */
    }
}







/*======================================================================================*/

/* Contact Page Hero Section */
body.contact-page .hero {
    background-image: url('images/contact-hero.jpg'); /* Replace with contact page image */
    background-color: #444; /* Fallback color */
}

/* Main Page Hero Section */
.hero.main-hero {
    background: linear-gradient(to right, #1e4d2b, #225456); /* CSU Colors */
    color: white;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.hero.main-hero h1 {
    font-size: 2.5em;
    margin: 0 0 10px;
}

.hero.main-hero p {
    font-size: 1.2em;
    margin: 20px 0;
}

.hero.main-hero .btn {
    background: #c8c372; /* CSU Gold */
    color: #1e4d2b;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    margin: 10px;
    transition: background 0.3s ease, transform 0.3s ease;
}

.hero.main-hero .btn:hover {
    background: #a89f5c;
    transform: scale(1.05);
}

/* General Hero Section Styling for Non-Main Pages */
.hero.image-hero {
    position: relative;
    background: none; /* No gradient for image-based heroes */
    width: 100%; /* Full-width hero container */
    height: 550px; /* Fixed height for consistency */
    overflow: hidden; /* Prevent content overflow */
    box-sizing: border-box; /* Include padding/border in element dimensions */
}

/* Hero Image Styling */
/* Hero Image Styling */
.hero-image img {
    width: 100%; /* Stretch the image to the full width */
    height: 100%; /* Cover the entire hero height */
    object-fit: cover; /* Maintain aspect ratio and fill the hero */
    display: block; /* Prevent unwanted inline spacing */
    margin: 0; /* Remove margins */
    padding: 0; /* Remove padding */
}

/* Overlay Styling */
.overlay {
    position: absolute;
    top: 50%; /* Center vertically */
    left: 50%; /* Center horizontally */
    transform: translate(-50%, -50%); /* Precise centering */
    color: white; /* Text color */
    text-align: center;
    z-index: 2; /* Place above the background image */
}

.overlay h1 {
    font-size: 3em;
    margin: 0;
}

.overlay h2 {
    font-size: 1.5em;
    margin: 0;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    .hero {
        height: 400px; /* Adjust height for smaller screens */
    }

    .overlay h1 {
        font-size: 2.5em;
    }

    .overlay h2 {
        font-size: 1.2em;
    }
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    .hero {
        height: 400px; /* Adjust height for smaller screens */
    }

    .hero.main-hero h1 {
        font-size: 2em; /* Adjust font size */
    }

    .hero.main-hero p {
        font-size: 1em; /* Adjust font size */
    }

    .hero.main-hero .btn {
        padding: 8px 15px; /* Adjust button size */
        font-size: 0.9em; /* Adjust font size */
    }
    
        .hero .overlay h1 {
        font-size: 2em; /* Adjust font size for smaller screens */
    }
    .hero .overlay h2 {
        font-size: 1.2em; /* Adjust font size for smaller screens */
    }
}











/* General Link Styling */
a {
    color: #1e4d2b; /* Default CSU Green */
    text-decoration: none; /* Remove underline */
    transition: color 0.3s ease; /* Smooth color transition */
}

a:hover {
    color: #c8c372; /* Change to CSU Gold on hover */
    text-decoration: underline; /* Optional underline */
}

/* Global Text Alignment */
p {
    text-align: justify; /* Justifies text across all paragraphs */
    line-height: 1.6; /* Improves readability */
}

/* Ensure scrolling for content overflow */
main {
    overflow-y: auto; /* Ensures scrolling for long content */
    flex-grow: 1; /* Ensures it grows to fill space between header and footer */
}


/* Ensure smooth scrolling for longer content */
body.non-hero {
    overflow-y: auto; /* Add vertical scroll bar if content overflows */
}





/* Header Section */
header {
    background: #1e4d2b; /* CSU Green */
    color: white;
    text-align: center;
    padding: 20px 0;
    position: fixed; /* Fix the header at the top */
    top: 0;
    width: 100%;
    z-index: 1000; /* Ensure the header is above all other elements */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

header .logo {
    max-height: 80px;
    margin-bottom: 10px;
}

header h1 {
    font-size: 2.5em;
    margin: 10px 0;
}

header h2 {
    font-size: 1.2em;
    margin: 0;
    font-weight: normal;
}


/* Mobile Navigation */
@media (max-width: 768px) {
    nav ul {
        flex-direction: column; /* Stack the navigation links */
        align-items: center;
    }

    nav ul li {
        margin: 10px 0;
    }

    nav ul li a {
        font-size: 1em; /* Adjust font size for smaller screens */
        padding: 8px 10px; /* Reduce padding */
    }
}



/* ===============   Navigation Bar  ============================== */
nav {
    background: #ffffff; /* CSU Gold #c8c372 */
    text-align: center;
    padding: 3px 0; /* Reduced padding for shorter height */
    margin-top: 20px; /* Space below the "PhD Research Portfolio" */
}

nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    position: relative;
}

nav ul li {
    margin: 0 15px;
    position: relative; /* Enable submenu positioning */
}

nav ul li a {
    color: #1e4d2b; /* CSU Green text */
    text-decoration: none;
    font-size: 1.0em;
    padding: 5px 10px; /* Reduced padding for shorter link height */
    border-radius: 5px;
    font-weight: bold; /* Make the text bold */
    transition: background 0.3s ease, color 0.3s ease;
}

nav ul li a:hover {
    background: #444; /* Dark gray background on hover */
    color: white; /* White text on hover for contrast */
}

/* Submenu Styles */
.submenu {
    display: none; /* Initially hidden */
    position: absolute;
    top: 100%; /* Positioned below parent link */
    left: 0;
    background: #f5f5f5; /* Light gray background for submenu */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    list-style: none;
    padding: 0;
    margin: 0;
    z-index: 1000;
    width: 250px; /* Make submenu wider */
}

.submenu li {
    margin: 0;
}

.submenu li a {
    color: #1e4d2b; /* CSU Green */
    padding: 3px 15px;
    display: block; /* Ensure full clickable area */
    text-align: left; /* Align submenu links to the left */
    border-radius: 0; /* Remove rounded corners */
    font-weight: normal; /* Normal text for submenu items */
}

.submenu li a:hover {
    background: #c8c372; /* CSU Gold */
    color: white;
}

/* Show submenu on hover */
nav ul li:hover .submenu {
    display: block;
}


/* Hero Section */
.hero {
    background: linear-gradient(to right, #1e4d2b, #225456); /* CSU Colors */
    color: white;
    text-align: center;
    padding: 100px 20px;
    margin-top: 240px; /* Adjusted to fully reveal the hero section */
}

.hero h1 {
    font-size: 2.5em;
    margin: 0 0 10px;
}

.hero p {
    font-size: 1.2em;
    margin: 20px 0;
}

.hero .btn {
    background: #c8c372; /* CSU Gold */
    color: #1e4d2b;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    margin: 10px;
    transition: background 0.3s ease, transform 0.3s ease;
}

.hero .btn:hover {
    background: #a89f5c;
    transform: scale(1.05);
}


@media (max-width: 768px) {
    .hero {
        padding: 60px 20px; /* Reduce padding */
    }

    .hero h1 {
        font-size: 2em; /* Adjust font size for mobile */
    }

    .hero p {
        font-size: 1em; /* Smaller text on mobile */
    }

    .hero .btn {
        padding: 8px 15px; /* Reduce button size */
        font-size: 0.9em; /* Adjust font size */
    }
}














/* Key Highlights Section */
#features {
    background: white;
    padding: 40px 20px;
    text-align: center;
    margin-bottom: 20px;
}

#features h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 30px;
    
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.features-grid div {
    background: #f9f9f9;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-align: center;
    position: relative; /* For precise alignment adjustments */
}

.features-grid img {
    width: 80px; /* Adjust size as needed */
    height: 80px; /* Force a consistent height */
    object-fit: contain; /* Ensure the image scales proportionally */
    margin: 0 auto; /* Center the icon within the box */
    display: block; /* Ensure proper alignment */
}


/* Google Scholar & ORCID Icon Alignment */
.features-grid .icon-container {
    display: flex; /* Align icons side by side */
    justify-content: center; /* Center icons horizontally */
    align-items: center; /* Align icons vertically */
    gap: 20px; /* Space between the two icons */
    margin-bottom: 15px; /* Space between icons and description */
}

.features-grid .icon-container img {
    width: 48px; /* Consistent icon size */
    height: auto;
    cursor: pointer; /* Make icons interactive */
}

.features-grid h3 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 10px;
}

.features-grid p {
    font-size: 0.9em;
    color: #666;
    line-height: 1.5; /* Improved readability */
}

/* Responsive Design */
@media (max-width: 768px) {
    .features-grid {
        grid-template-columns: 1fr; /* Stack the features vertically */
    }

    .features-grid div {
        margin-bottom: 20px; /* Add spacing between stacked items */
    }
}




/* Portfolio Section */
#portfolio {
    background: #f5f5f5; /* Light gray */
    padding: 40px 20px;
    text-align: center;
}

#portfolio h2 {
    color: #1e4d2b;
    margin-bottom: 30px;
}

.portfolio-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.portfolio-grid div {
    background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Add hover animation */
}

.portfolio-grid div:hover {
    transform: translateY(-5px); /* Lift effect on hover */
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15); /* Enhance shadow on hover */
}

.portfolio-grid img {
    width: 100%;
    border-radius: 8px;
    margin-bottom: 10px;
}

/* Portfolio Section Links */
.portfolio-grid a h3 {
    color: #1e4d2b; /* Default CSU Green for headings */
    font-weight: bold;
}

.portfolio-grid a h3:hover {
    color: #c8c372; /* Change to CSU Gold on hover for headings */
    text-decoration: underline; /* Optional underline on hover */
}
/* Portfolio Section Descriptions */
.portfolio-grid p {
    font-size: 0.9em;
    color: #666;
    text-align: justify; /* Justify the text for better alignment */
    line-height: 1.6; /* Add line height for readability */
    margin: 10px 0; /* Optional: Add some spacing above and below */
}

@media (max-width: 768px) {
    .portfolio-grid {
        grid-template-columns: 1fr; /* Single column on mobile */
    }
}

@media (max-width: 480px) {
    .portfolio-grid img {
        width: 90%; /* Ensure images don't overflow the container */
        margin: auto;
    }
}




/* About Section Refinement */
#about {
    padding: 40px 20px;
    background: #ffffff; /* White background for a clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    border-radius: 8px;
    box-sizing: border-box; /* Include padding and borders in height calculation */
    margin-top: 25px; /* Ensure no overlap with the header */
}

#about h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 1.8em; /* Adjusted font size for consistency */
}

#about p {
    text-align: justify; /* Justify the text for readability */
    line-height: 1.8; /* Better line spacing */
    margin-bottom: 25px; /* Add spacing between paragraphs */
    color: #444; /* Darker gray for readability */
}

#about ul {
    padding-left: 20px; /* Indent for lists */
    margin-top: 10px;
}

#about ul li {
    margin-bottom: 10px; /* Space between list items */
    line-height: 1.6; /* Improve readability */
    color: #1e4d2b; /* CSU Green for list text */
}


/* Industry Section Styling */
#about section {
    padding: 40px 20px;
    background: #ffffff; /* White background for a clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    border-radius: 8px; /* Rounded corners */
    box-sizing: border-box; /* Include padding and borders in height calculation */
}

/* Section Headers */
#about section h1 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 2em; /* Adjusted font size for consistency */
    text-align: center;
}

/* Section Content */
#about section p {
    text-align: justify; /* Justify the text for readability */
    line-height: 1.8; /* Better line spacing */
    margin-bottom: 25px; /* Add spacing between paragraphs */
    color: #444; /* Darker gray for readability */
}


/*====================================================================================*/

/* Industry Experience Page Refinement */
#industry {
    padding: 40px 20px;
    background: #ffffff; /* White background for a clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    border-radius: 8px; /* Rounded corners for a polished look */
    box-sizing: border-box; /* Include padding and borders in height calculation */
    margin-top: 25px; /* Ensure no overlap with the header */
}

#industry h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 1.8em; /* Adjusted font size for consistency */
}

#industry p {
    text-align: justify; /* Justify the text for readability */
    line-height: 1.8; /* Better line spacing */
    margin-bottom: 25px; /* Add spacing between paragraphs */
    color: #444; /* Darker gray for readability */
}

#industry ul {
    padding-left: 20px; /* Indent for lists */
    margin-top: 10px;
}

#industry ul li {
    margin-bottom: 10px; /* Space between list items */
    line-height: 1.6; /* Improve readability */
    color: #1e4d2b; /* CSU Green for list text */
}


/* Industry Section Styling */
#industry section {
    padding: 40px 20px;
    background: #ffffff; /* White background for a clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    border-radius: 8px; /* Rounded corners */
    box-sizing: border-box; /* Include padding and borders in height calculation */
}

/* Section Headers */
#industry section h1 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 2em; /* Adjusted font size for consistency */
    text-align: center;
}

/* Section Content */
#industry section p {
    text-align: justify; /* Justify the text for readability */
    line-height: 1.8; /* Better line spacing */
    margin-bottom: 25px; /* Add spacing between paragraphs */
    color: #444; /* Darker gray for readability */
}


/* ==================================================================================== */

/* Research Section Refinement */
#research {
    padding: 40px 20px;
    background: #ffffff; /* White background for a clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    border-radius: 8px;
    box-sizing: border-box; /* Include padding and borders in height calculation */
    margin-top: 25px; /* Ensure no overlap with the header */
}

#research h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 1.8em;
}

#research p {
    text-align: justify; /* Justify the text for readability */
    line-height: 1.8; /* Better line spacing */
    margin-bottom: 25px; /* Add spacing between paragraphs */
    color: #444; /* Darker gray for readability */
}

#research ul {
    padding-left: 20px; /* Indent for lists */
    margin-top: 10px;
}

#research ul li {
    margin-bottom: 10px; /* Space between list items */
    line-height: 1.6; /* Improve readability */
    color: #1e4d2b; /* CSU Green for list text */
}


/* ==========================Start Publication Container ========================================================== */
/* Peer-Reviewed Paper */
#peer-reviewed-paper {
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#peer-reviewed-paper:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}

/* Sci/Eng/Tech Article */
#sci-eng-tech {
    background-color: #f5f5f5;
    border: 1px solid #bbb;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#sci-eng-tech:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}

/* Thought Leadership */
#thought-leadership {
    background-color: #e6f7ff;
    border: 1px solid #88c;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#thought-leadership:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}

/* White Paper */
#white-paper {
    background-color: #fffbe6;
    border: 1px solid #ccc;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#white-paper:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}

/* How-To Guides */
#how-to-guides {
    background-color: #f5f0ff;
    border: 1px solid #ddd;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#how-to-guides:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}

/* Section Headers - Increased Font Size */
#peer-reviewed-paper h1,
#sci-eng-tech h2,
#thought-leadership h2,
#white-paper h1,
#how-to-guides h2 {
    font-size: 2.5em; /* Increased font size for headers */
    text-align: center; /* Ensure headers are centered */
    margin-bottom: 20px; /* Spacing below headers */
    color: #1e4d2b; /* CSU Green */
}




/* Adjust scroll position for section headers */
#peer-reviewed-paper h1,
#sci-eng-tech h1,
#thought-leadership h1,
#white-paper h1,
#how-to-guides h1 {
    scroll-margin-top: 315px; /* Adjust this value as needed */
}















/* =========================End Publication Container =========================================================== */

/* =========================Start Audio Container =========================================================== */

/* Audio Player Styling */
.audio-container {
    text-align: center;
    margin: 20px auto;
    padding: 15px; /* Add padding for a cleaner look */
    background-color: #f0f0f0; /* Slightly darker gray */
    border: 1px solid #ddd; /* Add a subtle border */
    border-radius: 8px; /* Optional for slight rounding of the container */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
}

.audio-container audio {
    width: 100%; /* Ensure the audio player spans full width */
    max-width: 600px; /* Limit maximum width for better layout control */
    border-radius: 5px; /* Rounded corners for a modern look */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
}

/* Optional styling for audio controls hover/focus */
.audio-container audio:focus, 
.audio-container audio:hover {
    outline: none; /* Remove default browser focus outline */
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15); /* Enhance shadow effect on interaction */
}

.audio-label {
    font-size: 1em;
    font-weight: bold;
    color: #333; /* Slightly darker color for better contrast */
    margin-bottom: 10px;
}








/* =========================End Publication Container =========================================================== */

/* ==================================================================================== */
/* How-To-Guides-Page Hero Section */
body.how-to-guides-main-page .hero {
    background-image: url('images/hero/pexels-pixabay-159751.jpg'); /* Replace with your hero image */
    background-color: #f0f8ff; /* Light blue fallback color */
    background-size: cover; /* Ensure the image covers the entire hero area */
    background-repeat: no-repeat; /* Avoid repeating the image */
    background-position: center center; /* Center the image horizontally and vertically */
    background-attachment: scroll; /* Prevent fixed background if it's causing issues */
    object-fit: cover; /* For responsive scaling on modern browsers */
}

/* How-To-Guides-Page Hero Text Color */
body.how-to-guides-main-page .overlay h1,
body.how-to-guides-main-page .overlay h2 {
    color: #003366; /* Dark blue for text */
}

/* ==================================================================================== */

/* How-To-Guides-Page Section Refinement */
#how-to-guides-section {
    padding: 40px 20px;
    background: #ffffff; /* White background for a clean look */
    margin: 20px auto;
    max-width: 900px; /* Center-align and set max width */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Optional shadow for depth */
    border-radius: 8px;
    box-sizing: border-box; /* Include padding and borders in height calculation */
    margin-top: 25px; /* Ensure no overlap with the header */
}

#how-to-guides-section h2 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 20px;
    font-size: 1.8em;
}

#how-to-guides-section p {
    text-align: justify; /* Justify the text for readability */
    line-height: 1.8; /* Better line spacing */
    margin-bottom: 25px; /* Add spacing between paragraphs */
    color: #444; /* Darker gray for readability */
}

#how-to-guides-section ul {
    padding-left: 20px; /* Indent for lists */
    margin-top: 10px;
}

#how-to-guides-section ul li {
    margin-bottom: 10px; /* Space between list items */
    line-height: 1.6; /* Improve readability */
    color: #1e4d2b; /* CSU Green for list text */
}

/* ==================================================================================== */

/* Box Styling for How-To-Guides-Page Sections */
.how-to-guides-section-box {
    background-color: #f9f9f9; /* Light gray */
    border: 1px solid #ddd; /* Light border */
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
    margin-bottom: 20px; /* Spacing between boxes */
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Hover effect */
}

.how-to-guides-section-box:hover {
    transform: translateY(-5px); /* Slight lift on hover */
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15); /* Enhance shadow on hover */
}

/* Heading inside the box */
.how-to-guides-section-box h3 {
    color: #1e4d2b; /* CSU Green */
    margin-bottom: 15px;
    font-size: 1.5em; /* Slightly smaller heading */
}

/* Text inside the box */
.how-to-guides-section-box p {
    color: #444; /* Neutral text color */
    line-height: 1.6;
}

/* ==================================================================================== */

/* Add Spacing Below Footer */
body.how-to-guides-main-page footer {
    margin-top: 30px; /* Add some space above the footer */
}












/*================================================================================================================*/

/* Footer Contact Styling */
footer address {
    font-size: 0.9em; /* Slightly smaller text for address */
    line-height: 1.6; /* Improve readability */
    margin-top: 10px; /* Add spacing */
    color: #c8c372; /* CSU Gold for contact text */
}

/* General Footer Styling */
footer {
    background: #1e4d2b; /* CSU Green */
    color: white;
    text-align: center; /* Ensures the text is center-aligned */
    padding: 20px 0;
    margin-top: auto; /* Push footer to the bottom dynamically */
    display: flex;
    flex-direction: column; /* Ensure text stays vertically stacked */
    align-items: center; /* Center-align text horizontally */
    justify-content: center; /* Center-align text vertically if needed */
    box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.1); /* Optional subtle shadow for depth */
}

/* Footer Refinement for Non-Hero Pages */
body.non-hero footer {
    margin-top: 20px; /* Ensure footer is visually separate */
    flex-shrink: 0; /* Prevent footer from shrinking in flex layout */
    position: relative; /* Avoid overlapping with main content */
}

/* Footer Links */
footer a {
    color: #c8c372; /* CSU Gold */
    text-decoration: none;
    font-weight: bold;
    transition: color 0.3s ease;
}

footer a:hover {
    color: white;
}

/* Responsive Footer Styling */
@media (max-width: 768px) {
    footer {
        padding: 10px 20px; /* Reduce padding for smaller screens */
        font-size: 0.9em; /* Adjust font size for readability */
    }

    footer p,
    footer address {
        font-size: 0.9em; /* Adjust text size */
    }
}

/* Ensure all images scale within their container */
img {
    max-width: 100%;
    height: auto;
}


/* Consistent gap above the footer */
section + footer {
    margin-top: 20px; /* Adjust the gap as needed */
}






