/* Resetting default margin and padding */
body, h1, h2, h3, p, ul, ol, li, dl, dd, form, address {
  margin: 0;
  padding: 0;
  font-family: Arial, sans-serif; /* Uniform font family */
}

/* Box sizing */
* {
  box-sizing: border-box;
}

/* Typography */
body {
  font-size: 16px;
  line-height: 1.6;
  color: #222; /* Updated text color for reduced brightness */
}

h1, h2, h3 {
  margin-bottom: 15px;
}

h1 {
  font-size: 36px;
}

h2 {
  font-size: 24px;
}

h3 {
  font-size: 18px;
}

p {
  margin-bottom: 15px;
  color: #444; /* Updated paragraph text color for reduced brightness */
}

/* Links */
a {
  color: #0056b3; /* Reduced brightness for links */
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}



/* Header */
header {
  background-color: #000; /* Darkened header background */
  color: #fff;
  padding: 20px;
  text-align: center; /* Center text */
  position: sticky; 
  top: 0; /* Position the header at the top */
  width: 100%; /* Make the header span the full width of the viewport */
  z-index: 1000; /* Ensure header stays on top of other content */
}

header img {
  width: 50px; /* Adjust size as needed */
  margin-bottom: 10px; /* Add spacing between logo and navigation */
}

h1 {
  font-size: 24px;
  margin: 0; /* Remove default margin */
  text-transform: uppercase; /* Convert text to uppercase */
}

nav ul {
  list-style: none;
  margin: 0; /* Remove default margin */
  padding: 0; /* Remove default padding */
}

nav ul li {
  display: inline;
  margin-right: 20px;
}

nav ul li:last-child {
  margin-right: 0; /* Remove margin from last item */
}

nav a {
  color: #fff;
  text-decoration: none;
  transition: color 0.3s ease; /* Add smooth color transition */
}

nav a:hover {
  color: #ffc107; /* Change color on hover */
}

/* Responsive styles */
@media (max-width: 768px) {
  header img {
    width: 40px; /* Adjust size for smaller screens */
  }

  h1 {
    font-size: 20px; /* Adjust font size for smaller screens */
  }

  nav ul {
    margin-top: 10px; /* Add spacing between logo and navigation on small screens */
  }

  nav ul li {
    display: block; /* Stack navigation links vertically on small screens */
    margin: 10px 0; /* Add spacing between navigation links on small screens */
  }
}


/* Main content */
section {
  padding: 20px;
}

/* Lists */
ul, ol {
  padding-left: 20px;
}

/* Forms */
form {
  margin-top: 20px;
  max-width: 500px; /* Set a maximum width for the form */
  margin: 0 auto; /* Center the form horizontally */
  padding: 20px; /* Add padding for better spacing */
}

label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  margin-bottom: 10px;
  box-sizing: border-box; /* Include padding and border in element's total width */
}

textarea {
  resize: vertical;
}

button {
  width: 100%; /* Button takes full width of form */
  padding: 10px 0; /* Adjust padding */
  background-color: #222;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s ease; /* Add smooth background color transition */
}

button:hover {
  background-color: #444;
}

/* Smooth scrolling behavior */
html {
  scroll-behavior: smooth;
}

/* Responsive Styles */
@media (max-width: 768px) {
  form {
    max-width: 90%; /* Adjust maximum width for smaller screens */
  }
}

/* Home Section */
#home {
  text-align: center; /* Center align the content */
}
/* Styling the welcome message */
#home h2 {
  margin-bottom: 20px; /* Add some space below the heading */
}

#home p {
  margin-bottom: 20px; /* Add some space below the paragraph */
}

/* Centering the buttons */
.cta-buttons {
  display: flex;
  justify-content: center;
}

.cta-buttons .contact-button {
  margin: 0 10px; /* Add space between buttons */
}



.section-heading-box {
    background-color: black; /* Updated background color of the box */
    padding: 10px; /* Reduced padding around the heading */
    border: 1px solid #ccc; /* Border around the box */
    border-radius: 5px; /* Rounded corners */
    text-align: center; /* Center align the heading */
    color: white; /* Set text color to white */
}






/* Footer */
footer {
  background-color: #000; /* Darkened footer background */
  color: #fff; /* White text color */
  padding: 20px;
  text-align: center;
}

/* Adjust text color for better contrast */
footer, footer p {
  color: #fff; /* White text color */
}

/* Navigation links */
footer nav a {
  color: #fff; /* White text color */
  text-decoration: none; /* Remove underline */
}

/* Hover effect for navigation links */
footer nav a:hover {
  text-decoration: underline; /* Underline on hover */
}

/* Product Cards */
.product {
  border: 1px solid #999; /* Darker border */
  border-radius: 5px;
  padding: 20px;
  text-align: left; /* Align product text to the left */
  transition: transform 0.3s ease-in-out;
  position: relative; /* Position for hover overlay */
}

.product:hover {
  transform: translateY(-5px);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.product img {
  width: 100%;
  height: auto; /* Ensure images maintain aspect ratio */
  object-fit: cover;
  border-radius: 5px;
}

.product h3 {
  margin-top: 10px;
  font-size: 20px;
  color: #333; /* Updated heading color */
}

.product p {
  margin-bottom: 10px;
  color: #666;
}

.product::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7); /* Darkened overlay */
  border-radius: 5px;
  opacity: 0; /* Initially invisible */
  transition: opacity 0.3s ease; /* Smooth transition */
}

.product:hover::after {
  opacity: 1; /* Make overlay visible on hover */
}

/* Image Gallery */
.image-gallery {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}

.image-gallery img {
  width: 30%; /* Adjust the width as needed */
  height: 200px; /* Adjust the height as needed */
  object-fit: cover;
  border-radius: 5px;
  transition: transform 0.3s ease-in-out;
}

.image-gallery img:hover {
  transform: scale(1.05);
}

/* Featured Products */
#featured-products {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
  position: relative; /* Ensure relative positioning for absolute children */
}

.product {
  flex: 0 1 calc(33.33% - 20px);
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 20px;
  text-align: left;
  transition: transform 0.3s ease-in-out;
  position: relative; /* Position relative to parent container */
}

.product:hover {
  transform: translateY(-5px);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.product img {
  width: 100%;
  height: 200px; /* Set a fixed height for the images */
  object-fit: cover; /* Maintain aspect ratio and cover entire container */
  border-radius: 5px;
  margin-bottom: 10px;
}

.product h3 {
  margin-top: 10px;
  font-size: 20px;
  color: #333;
}

.product p {
  margin-bottom: 10px;
  color: #666;
}

.product::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 5px;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.product:hover::after {
  opacity: 1;
}

/* Responsive Styles */
@media (max-width: 1024px) {
  .product {
    flex: 0 1 calc(50% - 20px);
  }
}

@media (max-width: 768px) {
  .product {
    flex: 0 1 calc(100% - 20px);
  }
}




.full-width-image {
  width: 100%; /* Make the image container full width */
  max-width: 100%; /* Ensure image doesn't exceed its original size */
  overflow: hidden; /* Hide any overflowing content */
}

.full-width-image img {
  width: 100%; /* Make the image inside the container full width */
  height: auto; /* Ensure the image maintains its aspect ratio */
  display: block; /* Remove any default inline display */
}




 