/* Reset & base layout */
body {
  font-family: Arial, sans-serif;
  margin: 0;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 50px; /* adjust based on footer height */
}

/* Sticky Header */
.sticky-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #004080;
}

/* Header Layout */
header {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: white;
  text-align: center;
}

/* Logo */
.header-logo img {
  max-height: 40px;
  margin-top: 10px;
}

/* Company Title */
.header-title {
  font-size: 18px;
  font-weight: bold;
  margin: 5px 0;
}

/* Navigation */
.header-nav {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  width: 100%;
  background: #003366;
  padding: 3px 0;
}

/* Navigation links */
.header-nav a {
  color: white;
  text-decoration: none;
  font-weight: 500;
  font-size: 15px; /* 👈 Add this line */
}

.header-nav a:hover {
  color: red;
  text-decoration: none;
}



/* Section spacing */
section {
  padding: 5px 5px;
}

/* Footer */
footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  /*background: #222;*/
  color: white;
  z-index: 999;
}

.footer-container {
    max-width: 1315px; /* Or a suitable max-width that matches your header's content width */
    margin: 0;
    padding: 10px 15px; /* Keep padding for inner content */
    text-align: center;
    box-sizing: border-box;
    background: #222; /* ADD THIS LINE */
}

@media (min-width: 768px) {
  .footer-container {
    padding-left: 40px;
    padding-right: 40px;
  }
}

/* Banner Section — FIXED */
#home {
  padding: 0;
  margin: 0;
}

..banner {
  width: 100%;
  height: 100vh; /* banner takes up full viewport height */
  overflow: hidden;
  position: relative;
}

.banner img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* fills the banner box without distortion */
  display: block;
}


/* Slideshow fade */
.slides {
  display: none;
}
.fade {
  animation-name: fade;
  animation-duration: 1.5s;
}
@keyframes fade {
  from { opacity: .4 }
  to { opacity: 1 }
}

/* Your existing CSS for desktop */
.product-gallery {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.product-item {
  width: 200px;
  text-align: center;
}
.product-item img {
  width: 100%;
  height: auto;
  border: none; /* This line removes the border */
  /*border: 1px solid #ccc;*/
}

/* New CSS for mobile devices */
@media screen and (max-width: 768px) {
  /* This media query targets screens up to 768px wide, which typically covers most tablets and all mobile phones */
  
  .product-gallery {
    /* Change the layout for mobile to show one product per line */
    display: block; 
    gap: 0; /* Remove the gap for a cleaner full-width look */
  }

  .product-item {
    /* Make the product item take up the full width of the screen */
    width: 100%;
    margin-bottom: 20px; /* Add some space between products */
  }
  
  .product-item img {
    /* Set the image to take up the full width of its container (which is now 100% of the screen) */
    width: 100%;
    /* Keep height: auto to maintain the image's aspect ratio and prevent distortion */
    height: auto; 
    /* You can also adjust border or other styles here */
  }
}

/* Facility Layout */
.facility-gallery {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.facility-photo {
  width: 200px;
  text-align: center;
}
.facility-photo img {
  width: 100%;
  height: auto;
  border: 1px solid #ccc;
}

/* Header content padding */
.header-logo,
.header-title,
.header-nav {
  padding-left: 0;
  padding-right: 0;
}

/* Global responsive padding */
@media (min-width: 768px) {
  body,
  header,
  footer,
  section {
    padding-left: 15px;
    padding-right: 15px;
  }

  .header-logo,
  .header-title,
  .header-nav {
    padding-left: 15px;
    padding-right: 15px;
  }
}
#home,
#about,
#products,
#facility,
#contact {
  scroll-margin-top: 100px;
}

/* Contact Form Styling */
#contact form {
    display: flex;
    flex-direction: column;
    max-width: 600px; /* Keep your desired max width */
    margin: 20px auto 20px 0; /* Top: 20px, Right: auto, Bottom: 20px, Left: 0 */
    /* This will push the form to the left edge of its container, considering the container's padding. */
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f9f9f9;
}

#contact form label {
    margin-bottom: 5px;
    font-weight: bold;
    color: #333;
}

#contact form input[type="text"],
#contact form input[type="email"],
#contact form input[type="tel"],
#contact form textarea,
#contact form input[type="file"] { /* ADD THIS LINE */
    width: 100%;
    padding: 10px;
    margin-bottom: 15px; /* Now applies to the file input too */
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    font-size: 16px;
}

#contact form textarea {
    resize: vertical; /* Allows vertical resizing of the textarea */
}

#contact form button {
    background-color: #004080; /* Match your header blue */
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px;
    transition: background-color 0.3s ease;
}

#contact form button:hover {
    background-color: #003366; /* Darker blue on hover */
}

/* Add some spacing for the heading above the form */
#contact h3 {
    margin-top: 30px;
    text-align: left;
}

.compact-contact p {
  margin: 2px 0;
  line-height: 1.2;
}

/* Footer specific styles for links and icons */
.footer-container {
    /* Keep existing styles from previous steps for the footer-container color, padding etc. */
    max-width: 1310px;
    margin: 0;
    padding: 10px 15px;
    text-align: center;
    box-sizing: border-box;
    color: white; /* Make sure this is uncommented if it was too */

    /* Ensure it centers the text: */
    text-align: center;

    /* UNCOMMENT THIS LINE AND SET THE COLOR */
    background: #004080; /* <--- This will set your footer background to dark blue */
}

.footer-link {
    color: white; /* Text color for the links */
    text-decoration: none; /* Removes the default underline from links */
    margin: 0 10px; /* Adds some horizontal spacing around each link */
    display: inline-flex; /* Allows icon and text to align nicely */
    align-items: center; /* Vertically centers icon and text */
    gap: 5px; /* Adds a small gap between the icon and the text */
    transition: color 0.3s ease; /* Smooth transition for hover effect */
}

.footer-link:hover {
    color: #a0a0a0; /* Slightly lighter white on hover */
    /* You can add text-decoration: underline; here if you want an underline on hover */
}

.footer-link i {
    font-size: 1.1em; /* Makes the icon slightly larger than the text */
}

.footer-separator {
    color: white; /* Ensures the separator is visible */
    margin: 0 5px; /* Adds a small gap around the separator */
}

/* Optional: Adjust font size for the entire footer text if needed */
/* footer .footer-container {
    font-size: 0.95em;
} */

/* Headings for CSR and additional sections */
h3 {
  font-size: 20px;
  color: #004080; /* Match your header blue */
  margin-top: 30px;
  margin-bottom: 15px;
  font-weight: bold;
  text-transform: uppercase;
}

h4 {
  font-size: 19px;
  color: #003366; /* Slightly darker blue for subheadings */
  margin-top: 25px;
  margin-bottom: 10px;
  font-weight: bold;
}

h5 {
  font-size: 18px;
  color: #222;
  margin-top: 20px;
  margin-bottom: 8px;
  font-weight: bold;
}


