/* Basic styles for the body */
body {
    font-family: "Arial", sans-serif; /* Default font for the page */
    background-color: #151414; /* black-ish gray background */
    color: #F4FAF5; /* Light gray text color */
    margin: 0; /* Remove default margin */
    padding: 0; /* Remove default padding */
    display: flex;
    justify-content: center;
    overflow-x: hidden; /* Prevent horizontal overflow */
}

/* Styles for headings */
h1, h2, h3, h4, h5, h6 {
    color: #108F26; /* Green color for headings */
    margin: 20px 0; /* Vertical margin */
}

/* Styles for paragraphs */
p {
    line-height: 1.6; /* Line spacing for paragraphs */
    margin: 10px 0; /* Vertical margin */
}

/* Styles for links */
a {
    color: #1E90FF; /* Dodger blue color for links */
    text-decoration: none; /* Remove underline */
}

a:hover {
    text-decoration: underline; /* Underline on hover */
}

/* Side navigation (sidenav) styles */
.sidenav {
    height: 100%;
    width: 150px;
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    background-color: #151414; /* black-ish gray background */
    overflow-x: hidden;
    padding-top: 100px;
    border-right: 2px solid #FFFEFE;
    transform: translateX(-150px); /* Hide sidenav by default */
    transition: transform 0.3s ease; /* Smooth transition */
}

.sidenav.active {
    transform: translateX(0); /* Show sidenav when active */
}

.sidenav a {
    padding: 10px 0px; /* Padding for each link */
    text-decoration: none;
    font-size: 16px;
    color: #F4FAF5; /* Light gray text color */
    display: block;
}

.sidenav a:hover {
    background-color: #60A769; /* Light green background on hover */
}

/* Toggle button styles */
.sidenav-toggle {
    display: block;
    padding: 10px 0px;
    background-color: #151414; /* Background color for toggle button */
    color: #F4FAF5; /* Text color for toggle button */
    text-align: left;
    cursor: pointer;
    font-size: 15px; /* Font size for toggle button */
    border: none; /* Remove border for toggle button */
    margin: 10px; /* Margin around the toggle button */
    border-radius: 5px; /* Rounded corners for the toggle button */
}

.sidenav-close {
    display: block;
    padding: 10px 0px;
    background-color: #151414; /* Background color for close button */
    color: #F4FAF5; /* Text color for close button */
    text-align: left;
    cursor: pointer;
    font-size: 15px; /* Font size for close button */
    border: none; /* Remove border for close button */
    margin: 10px; /* Margin around the close button */
    border-radius: 5px; /* Rounded corners for the close button */
}

/* Main content area */
.main-content {
    padding: 10px; /* Adjust padding for better mobile responsiveness */
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 1080px; /* Maximum width for larger screens */
    width: 100%; /* Ensure full width */
    margin-left: 150px; /* Width of the sidenav */
    margin-top: 20px; /* Adjust margin to move the content higher */
    box-sizing: border-box; /* Ensure padding is included in width calculation */
    transition: margin-left 0.3s ease; /* Smooth transition */
}

.main-content.active {
    margin-left: 0; /* Adjust content margin when sidenav is toggled */
}

/* Image container */
.image-container {
    position: relative;
    width: 100%;
    max-width: 800px; /* Maximum width of the container */
    height: auto; /* Auto height */
    border: 0px solid #000; /* Optional: Add a border for visibility */
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px; 
}

.image-container img {
    max-width: 100%; /* Ensure the image does not exceed its container */
    height: auto; /* Maintain aspect ratio */
}

/* Responsive thumbnails */
img.responsive-thumbnail {
  width: 100%;
  height: auto;
  max-width: 200px; /* Adjust max-width as needed */
}

/* New CSS for table images */
.table-image {
  width: 100%;
  height: auto;
  max-width: 100px; /* Adjust max-width as needed for your layout */
}

/* Container */
.container {
    max-width: 1200px; /* Maximum width of the container */
    margin: 20px auto; /* Center the container horizontally with top margin */
    padding: 20px; /* Optional: Add padding inside the container */
    text-align: left; /* Align text inside the container to the left */
}

.container p {
    margin-bottom: 20px; /* Adds space between paragraphs */
}

/* Responsive adjustments for smaller screens */
@media screen and (max-height: 450px) {
    .sidenav {
        padding-top: 15px;
    }
    .sidenav a {
        font-size: 16px;
    }
}

@media screen and (max-width: 768px) {
    .main-content {
        width: 100%; /* Full width for main content on small screens */
        margin-left: 0; /* Remove left margin for smaller screens */
        padding: 10px; /* Reduce padding for smaller screens */
    }

    .sidenav {
        width: 100px; /* Reduce width of sidenav on small screens */
    }

    .sidenav.active {
        transform: translateX(0); /* Show sidenav when active */
    }
     .table-image {
    max-width: 75px; /* Adjust max-width for smaller screens */
    }
    
    .table-container {
        overflow-x: auto;
    }
    
}

/* Ensure sidebar stays open on larger screens */
@media (min-width: 769px) {
    .sidenav {
        transform: none !important;
    }

    .sidenav.active {
        transform: none !important;
    }
}

/* Font size adjustments */
@media screen and (max-width: 1024px) {
    h1 {
        font-size: 20px;
    }
    h2 {
        font-size: 20px;
    }
    h3 {
        font-size: 20px;
    }
    h4, h5, h6 {
        font-size: 18px;
    }
    p, .sidenav a, .sidenav-toggle {
        font-size: 16px;
    }
}

@media screen and (max-width: 768px) {
    h1 {
        font-size: 20px;
    }
    h2 {
        font-size: 20px;
    }
    h3 {
        font-size: 18px;
    }
    h4, h5, h6 {
        font-size: 16px;
    }
    p, .sidenav a, .sidenav-toggle {
        font-size: 14px;
    }
}

@media screen and (max-width: 480px) {
    h1 {
        font-size: 18px;
    }
    h2 {
        font-size: 18px;
    }
    h3 {
        font-size: 16px;
    }
    h4, h5, h6 {
        font-size: 14px;
    }
    p, .sidenav a, .sidenav-toggle {
        font-size: 12px;
    }
}

#JF {
    width: 100%; /* Adjusted for responsiveness */
    height: auto;
    margin-top: 0; /* Removes any default margin */
    padding-top: 0; /* Removes any default padding */
}

.large-image {
    width: 100%; /* Adjust this value as needed */
    max-width: 1000px; /* Adjust the maximum width as needed */
    height: auto;
    object-fit: contain; /* Ensures the image maintains its aspect ratio */
}

.table-container {
    overflow-x: auto; /* Enable horizontal scrolling if needed */
    overflow-y: hidden; /* Hide vertical overflow */
    -webkit-overflow-scrolling: touch; /* Enable smooth scrolling on iOS devices */
    width: 100%;
    max-width: 100%; /* Ensure the table container doesn't exceed the screen width */
    margin: 0 auto; /* Center align the table container */
}


/* Table adjustments */
table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
    overflow-x: auto;
}

th, td {
    border: 1px solid #dddddd;
    text-align: left;
    padding: 8px;
}

th {
    background-color: #60A769;
}

/* Font size adjustments for table based on media queries */

/* Larger screens */
@media screen and (min-width: 768px) {
    table {
        font-size: 14px; /* Adjust font size for larger screens */
    }
}

/* Smaller screens */
@media screen and (max-width: 767px) {
    table {
        font-size: 10px; /* Adjust font size for smaller screens */
    }
}


.image-logo {
    display: flex;
    justify-content: center; /* Centers the image horizontally */
    align-items: center; /* Centers the image vertically */
    max-width: 100%; /* Ensure it doesn't exceed its container */
}

.image-logo img {
    max-width: 100%; /* Make sure the image doesn't exceed its container */
    height: 150px; /* Maintain aspect ratio */
    object-fit: contain; /* Ensures the image maintains its aspect ratio */
}

/* Adjustments for logos on smaller screens */
@media (max-width: 768px) {
    .image-logo {
        height: 50px; /* Adjust the height of the container */
    }

    .image-logo img {
        max-width: 100%; /* Ensure the image does not exceed its container */
        height: 50px; /* Maintain aspect ratio */
        object-fit: contain; /* Ensures the image maintains its aspect ratio */
    }
}

/* Make h1 visually identical to h2 */
h1 {
    font-size: 20px;
}

@media screen and (max-width: 768px) {
    h1 {
        font-size: 20px;
    }
}

@media screen and (max-width: 480px) {
    h1 {
        font-size: 18px;
    }
}
