﻿body {
    font-family: 'Lato', sans-serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* Allow vertical scrolling */
    background: #1A2B4E;
    color: #fff;
    scroll-behavior: smooth; /* Enable smooth scrolling */
    padding-top: 60px; /* Adjust this value based on your nav height */
}

header {
    background: rgba(26, 43, 78, 0.9);
    color: #fff;
    padding: 20px;
    text-align: center;
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    box-sizing: border-box;
    width: 100%; /* Ensure header uses full width */
}

    header h1 {
        font-size: 3.5em;
        margin: 0 0 10px 0;
        text-shadow: 0 0 10px #00bfff, 0 0 20px #00bfff, 0 0 30px #00bfff;
    }

    header p {
        font-size: 1.5em;
        margin: 0 0 20px 0;
    }

nav {
    background: rgba(26, 43, 78, 0.9); /* Increased opacity for better visibility */
    padding: 15px 20px;
    text-align: center;
    position: fixed; /* Change to fixed positioning */
    top: 0; /* Stick to the top of the viewport */
    left: 0; /* Align to the left edge */
    right: 0; /* Stretch across the full width */
    z-index: 1000; /* Ensure it's above other content */
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* Add a subtle shadow for depth */
}

    nav h1 {
        font-size: 1.8em; /* Slightly increased font size */
        margin: 0;
        animation: glow 2s infinite;
    }

    nav .nav-links {
        display: flex;
        gap: 20px; /* Increased space between links */
    }

    nav a {
        color: #fff;
        text-decoration: none;
        font-weight: bold;
        padding: 5px 0; /* Added vertical padding to links */
    }

        nav a.active {
            border-bottom: 2px solid #fff; /* Highlight active link */
        }

.content {
    padding: 20px;
    text-align: center;
    position: relative;
    z-index: 2;
}

.section {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px 20px;
    margin: 20px 0;
    border-radius: 10px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.section-content {
    width: 100%;
    max-width: 1400px; /* Increased from 800px */
    text-align: justify;
}

.section:nth-child(odd) {
    background: rgba(34, 56, 102, 0.9); /* Lighter shade of blue */
}

.section:nth-child(even) {
    background: rgba(73, 94, 134, 0.9); /* Soft blue */
}

footer {
    background: rgba(26, 43, 78, 0.9);
    color: #fff;
    text-align: center;
    padding: 10px;
    position: relative;
    z-index: 2;
}

canvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0; /* Ensure canvas is behind all content */
    background: #294070;
}

.contact-link {
    color: #fff;
    text-decoration: none;
}

    .contact-link:hover {
        text-decoration: underline;
    }

ul, ol {
    list-style: none; /* Remove bullet points and numbers */
    padding-left: 0; /* Remove default padding */
}

.about-section {
    display: flex;
    flex-direction: row;
    align-items: stretch; /* Ensure both text and image stretch to the same height */
    justify-content: space-between;
    gap: 40px; /* Increase space between text and image */
    padding: 40px; /* Add padding for more space */
    max-width: 1200px; /* Increase the width of the parent container */
    margin: 0 auto; /* Center the container */
}

.about-text {
    flex: 1; /* Use less horizontal space for the text */
    padding: 20px;
    line-height: 1.8; /* Increase line height for better readability */
    background: rgba(0, 0, 0, 0.5); /* Subtle background for better readability */
    border-radius: 10px; /* Add border-radius for better appearance */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Add subtle box shadow */
    display: flex;
    flex-direction: column;
    justify-content: center; /* Center content vertically */
    min-height: 300px; /* Ensure minimum height */
}

    .about-text h2 {
        margin-top: 0; /* Remove top margin for the heading */
    }

    .about-text ul {
        list-style: none; /* Remove bullet points */
        padding-left: 20px; /* Add padding to the left */
    }

.about-image {
    flex: 2; /* Use more horizontal space for the image */
    text-align: center;
    display: flex;
    align-items: center; /* Center image vertically */
    justify-content: center; /* Center image horizontally */
    min-height: 300px; /* Ensure minimum height */
}

    .about-image img {
        max-width: 100%;
        height: auto;
        border-radius: 10px; /* Add border-radius for better appearance */
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Add subtle box shadow */
    }

@media (max-width: 768px) {
    .about-section {
        flex-direction: column;
    }

    .about-text, .about-image {
        max-width: 100%; /* Ensure full width on smaller screens */
    }
}

@keyframes glow {
    0% {
        text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 15px #00bfff, 0 0 20px #00bfff, 0 0 25px #00bfff, 0 0 30px #00bfff, 0 0 35px #00bfff;
    }

    50% {
        text-shadow: 0 0 10px #fff, 0 0 20px #00bfff, 0 0 30px #00bfff, 0 0 40px #00bfff, 0 0 50px #00bfff, 0 0 60px #00bfff, 0 0 70px #00bfff;
    }

    100% {
        text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 15px #00bfff, 0 0 20px #00bfff, 0 0 25px #00bfff, 0 0 30px #00bfff, 0 0 35px #00bfff;
    }
}

@keyframes illuminate {
    0%, 100% {
        text-shadow: 0 0 5px #fff;
    }

    50% {
        text-shadow: 10px 0 20px #00bfff;
    }
}

header h1 {
    font-size: 4em; /* 200% bigger */
    animation: glow 2s infinite;
}

.glow-text {
    animation: illuminate 3s infinite;
}

header p {
    font-size: 2em; /* 200% bigger */
}

.capabilities-list {
    list-style: none;
    padding: 0;
}

.capability-item {
    padding: 20px;
    margin: 20px 0;
    border-radius: 10px;
    background: rgba(34, 56, 102, 0.9); /* Lighter shade of blue */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Add subtle box shadow */
}

    .capability-item.left {
        text-align: left;
    }

    .capability-item.right {
        text-align: right;
        background: rgba(73, 94, 134, 0.9); /* Soft blue */
    }

.features-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* Changed from flex-start to center */
    gap: 20px;
    padding: 0;
    list-style-type: none;
    width: 100%;
}

.feature-item {
    flex: 0 1 calc(33.333% - 14px);
    max-width: calc(33.333% - 14px); /* Added max-width */
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 20px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-align: left;
    box-sizing: border-box;
}

/* For screens between 768px and 1200px */
@media (max-width: 1200px) and (min-width: 769px) {
    .feature-item {
        flex: 0 1 calc(50% - 10px);
        max-width: calc(50% - 10px); /* Added max-width */
    }
}

/* For screens smaller than 768px */
@media (max-width: 768px) {
    .feature-item {
        flex: 0 1 100%;
        max-width: 100%; /* Added max-width */
    }
}

.feature-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

.feature-item h3 {
    color: #00bfff;
    margin-bottom: 20px;
    font-size: 1.6em;
}

.feature-item ul {
    padding-left: 0;
}

.feature-item li {
    margin-bottom: 15px;
    position: relative;
    padding-left: 30px;
    font-size: 1.1em;
}

    .feature-item li::before {
        content: '✓';
        position: absolute;
        left: 0;
        color: #00bfff;
        font-weight: bold;
    }

@media (max-width: 1024px) {
    .feature-item {
        flex: 0 1 100%;
    }
}

@media (max-width: 768px) {
    .features-list {
        flex-direction: column;
    }

    .feature-item {
        margin-bottom: 30px;
    }
}

.features {
    display: flex;
    justify-content: space-around;
    width: 100%;
    max-width: 100%;
    margin: 20px auto 0;
    flex-wrap: wrap;
    padding: 0 20px;
    box-sizing: border-box;
}

.feature {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 20px; /* Increased padding */
    margin: 10px;
    flex: 1 1 300px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: calc(33.333% - 20px);
    box-sizing: border-box;
}

    .feature h3 {
        font-size: 1.4em; /* Increased from 1.2em */
        margin: 15px 0; /* Increased margin */
    }

    .feature img {
        width: 100%;
        max-width: 300px;
        height: auto;
        object-fit: cover;
        border-radius: 10px;
        margin-bottom: 20px;
    }

    .feature p {
        font-size: 1em; /* Increased from 0.9em */
        margin: 0;
        line-height: 1.6; /* Increased line height for better readability */
        text-align: left; /* Align text to the left for easier reading */
    }

@media (max-width: 768px) {
    header {
        padding: 10px;
    }

        header h1 {
            font-size: 2.5em;
        }

        header p {
            font-size: 1.2em;
        }

    .features {
        flex-direction: column;
        align-items: center;
        padding: 0 10px;
    }

    .feature {
        max-width: 100%;
        margin: 10px 0;
        width: 100%;
    }

        .feature img {
            max-width: 100%;
        }

        .feature h3 {
            font-size: 1.3em; /* Slightly smaller on mobile, but still larger than before */
        }

        .feature p {
            font-size: 0.95em; /* Slightly smaller on mobile, but still larger than before */
        }
}

.logo-link {
    text-decoration: none;
    color: inherit;
}

    .logo-link:hover {
        text-decoration: none;
    }

.hamburger {
    display: none;
    flex-direction: column;
    cursor: pointer;
}

    .hamburger span {
        width: 25px;
        height: 3px;
        background-color: white;
        margin: 2px 0;
        transition: 0.4s;
    }

@media screen and (max-width: 768px) {
    .hamburger {
        display: flex;
    }

    .nav-links {
        display: none;
        flex-direction: column;
        width: 100%;
        position: absolute;
        top: 60px;
        left: 0;
        background-color: rgba(26, 43, 78, 0.9);
        padding: 20px 0;
        transition: all 0.3s ease-in-out;
        opacity: 0;
        visibility: hidden;
    }

        .nav-links.active {
            display: flex;
            opacity: 1;
            visibility: visible;
        }

    nav {
        flex-wrap: wrap;
    }
}

.section-content h2,
.section-content > p {
    text-align: center;
}

.download-button {
    display: block;
    width: 100%;
    padding: 15px;
    font-size: 1.2em;
    background: #00bfff;
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s ease;
    text-align: center;
    text-decoration: none;
    margin: 20px 0;
}

    .download-button:hover {
        background: #0095cc;
    }
