/* General Styles */
html {
    scroll-behavior: smooth;
}
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    line-height: 1.6;
    box-sizing: border-box;
}

/* Navbar Styles */
.navbar {
    background-color: transparent;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 15px 20px;
    z-index: 1000;
    height: 80px; /* Fixed height for the navbar */
    transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition */
}

.navbar.scrolled {
    background-color: white;  /* White background when scrolled */
    color: black;  /* Black text color when scrolled */
}

.navbar-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.navbar-logo {
    width: 200px; /* Enlarged logo size */
    height: auto;
}

.navbar-menu {
    list-style: none;
    display: flex;
    margin: 0 20px 0 0;
    padding: 0;
}

.navbar-menu li {
    margin-right: 30px; /* Space between menu items */
}

.navbar-menu li a {
    text-decoration: none;
    color: white; /* Default text color */
    font-size: 1rem;
    transition: color 0.3s;
}

.navbar.scrolled .navbar-menu li a {
    color: black;  /* Change text color to black when scrolled */
}

.navbar-menu li a:hover {
    color: #007BFF;
}

/* Hero Section */
.hero {
    background: url('hero-image.jpg') no-repeat center center/cover;
    height: 100vh; /* Full screen height */
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 60px; /* Offset for navbar height */
}

.hero .logo {
    width: 500px; /* Enlarged logo size */
    height: auto;
}

/* About Section */
.about {
    padding: 50px 20px;
    background: #071b24;
    text-align: center;
    color: white;
}
.about .container-visi-misi {
    text-align: left;
    display: flex;
}

/* Member Section */
.member {
    padding: 50px 20px;
    background: #f5f5f5;
    text-align: center;
}
.member .container-member {
    /* text-align: left; */
    display: flex;
    padding-top: 50px;
    flex-direction: column;
    gap: 30px;
    margin-bottom: 40px;
}
.member .container-member-detail {
    text-align: left;
    display: flex;
    width: 50%;
    align-items: center;
    background: #f8f8f8;
    padding: 20px;
    border-radius: 10px;
    gap: 20px;
}
.container-member-detail img {
    width: 150px;
    height: auto;
    border-radius: 10px;
}

.member-info {
    flex: 1;
}

.member-info h2 {
    font-size: 20px;
    margin-bottom: 10px;
}

/* Reverse Layout for Alternating Sections */
.reverse {
    flex-direction: row-reverse;
}

/* Contact Section */
.contact {
    padding: 50px 20px;
    background: white; /* White background for the contact section */
    text-align: left;
    margin-left: 60%; /* Shifted slightly to the right */
    margin-right: 10%;
}

.contact h2 {
    font-size: 2rem;
    margin-bottom: 20px;
}

.contact p {
    font-size: 1rem;
    margin-bottom: 20px;
}

.contact ul {
    list-style: none;
    padding: 0;
    font-size: 1rem;
}

.contact ul li {
    margin: 20px 0;
    display: flex;
    align-items: center;
}

.contact-item {
    display: flex;
    align-items: center;
}

.contact-item .icon {
    font-size: 1.5rem;
    margin-right: 15px; /* Space between icon and label */
    background-color: black; /* Black background */
    color: white; /* White color for the icon */
    padding: 10px 15px; /* Padding for rectangular boxes */
    width: 30px; /* Fixed width for the icons */
    text-align: center; /* Center align the icon inside the box */
}

.contact-info {
    display: flex;
    flex-direction: column;
}

.contact-info p {
    margin: 0;
}

.contact-info strong {
    font-weight: bold;
}

/* Media Queries for Responsive Design */

/* Small Devices (phones) */
@media screen and (max-width: 768px) {
    /* Adjust navbar menu items for smaller screens */
    .navbar {
        height: 45px;    
    }

    .navbar-menu {
        display: none;  /* Hide menu */
        position: absolute;
        top: 80px;
        right: 20px;
        background-color: white;
        width: 200px;
        padding: 10px;
    }

    .navbar-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .navbar-logo {
        width: 150px; /* Shrink logo on smaller screens */
    }

    .navbar-menu li {
        margin-right: 15px;
    }

    /* Display the menu when a button is clicked */
    .navbar-menu.active {
        display: block;
    }

    /* Hero Section */
    .hero .logo {
        width: 300px; /* Smaller logo for mobile */
    }

    /* About Section */
    .about {
        padding: 40px 10px; /* Less padding on mobile */
    }

    .about .container-visi-misi {
        text-align: left;
        display: block;
    }

    .member .container-member {
        text-align: left;
        display: block;
        padding-top: 50px;
    }
    .member .container-member-detail {
        text-align: left;
        display: block;
        width: 100%;
        flex-direction: column;
    }
    .reverse {
        flex-direction: column;
    }

    .container-member-detail img {
        width: 100px;
    }

    /* Contact Section */
    .contact {
        margin-left: 5%; /* Shift left to 5% */
        margin-right: 5%; /* Shift right to 5% */
        padding: 30px 10px; /* Reduce padding for smaller screens */
    }

    .contact-info p {
        font-size: 1rem; /* Smaller font size for mobile */
    }

    .contact-info strong {
        font-size: 1rem; /* Slightly smaller font size */
    }
}

/* Extra Small Devices (small phones) */
@media screen and (max-width: 400px) {
    .navbar-menu {
        font-size: 0.9rem; /* Smaller font size for mobile */
    }

    .navbar-logo {
        width: 120px; /* Even smaller logo on very small screens */
    }

    .hero .logo {
        width: 200px; /* Further reduce logo size for extra small screens */
    }

    .about .container-visi-misi {
        text-align: left;
        display: block;
    }

    .member .container-member {
        text-align: left;
        display: block;
        padding-top: 50px;
    }
    .member .container-member-detail {
        text-align: left;
        display: block;
        width: 100%;
    }

    .contact h2 {
        font-size: 1.5rem; /* Smaller heading on small screens */
    }

    .contact p {
        font-size: 1rem; /* Smaller text for small screens */
    }

    .contact-item .icon {
        width: 40px; /* Smaller icons on smaller screens */
        font-size: 1.2rem; /* Slightly smaller icons */
        padding: 8px 10px; /* Reduce icon padding */
    }

    .contact-info p {
        font-size: 0.9rem; /* Reduce the font size of the contact information */
    }

    .contact-info strong {
        font-size: 0.9rem; /* Make the bold label slightly smaller */
    }
}

