/* Floating Google Rating Styles */
.google-rating {
  position: fixed;
  bottom: 20px;
  left: 20px;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 15px;
  border-radius: 10px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
  color: white;
  z-index: 9999;
  display: flex;
  align-items: center;
  gap: 10px;
}

.rating-container {
  text-align: left;
}

.star-rating {
  font-size: 24px;
  color: #ffcc00;
}

.star {
  margin-right: 5px;
}

.review-text {
  font-size: 14px;
  margin-top: 10px;
}

.google-logo {
  width: 30px;
  height: auto;
}

.google-rating:hover {
  background-color: rgba(0, 0, 0, 0.9);
}

/* General Reset */
body {
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
  line-height: 1.6;
}

a {
  text-decoration: none;
  color: inherit;
}

ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Header */
.header {
  background-color: #000000;
  color: white;
  padding: 15px 0;
}

.header-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  flex-wrap: wrap;
}

.logo {
  display: flex;
  align-items: center;
}

.logo img {
  max-height: 60px;
  margin-right: 15px;
}

.contact-info p {
  margin: 0;
  font-size: 0.9em;
}

.contact-info a {
  color: #ffcc00;
}

.navigation ul {
  display: flex;
  gap: 20px;
  justify-content: center;
}

.navigation ul li a {
  color: white;
  font-weight: bold;
  text-transform: uppercase;
  padding: 10px 15px;
  border: 1px solid transparent;
  transition: all 0.3s ease;
}

.navigation ul li a.active,
.navigation ul li a:hover {
  background-color: #ffcc00; /* Yellow */
  color: #000000; /* Dark text */
  border: 1px solid #ffcc00; /* Yellow border */
  border-radius: 5px;
}

/* Responsive Navigation */
.menu-toggle {
  display: none; /* Hide menu toggle by default */
  background-color: #ffcc00;
  color: #000000;
  padding: 10px 15px;
  cursor: pointer;
  font-weight: bold;
  border: none;
  text-transform: uppercase;
}

@media (max-width: 768px) {
  .navigation ul {
      display: none;
      flex-direction: column;
      gap: 10px;
      background-color: #000000; /* Dark background for mobile menu */
      padding: 10px;
      position: absolute;
      top: 60px;
      right: 0;
      width: 100%;
  }

  .navigation ul.active {
      display: flex;
  }

  .menu-toggle {
      display: block; /* Show menu toggle on smaller devices */
  }
}

/* Hero Section */
.hero {
  background: url('images/hero-bg.jpg') no-repeat center center/cover;
  color: white;
  text-align: center;
  padding: 60px 20px;
}

.hero h1 {
  font-size: 2.5em;
  margin-bottom: 20px;
}

.hero p {
  font-size: 1.2em;
  max-width: 800px;
  margin: 0 auto;
}

/* Content Sections */
.container {
  max-width: 1200px;
  margin: 40px auto;
  padding: 0 20px;
}

.container h2 {
  text-align: center;
  margin-bottom: 20px;
}

.container p {
  margin-bottom: 20px;
  text-align: justify;
}

/* Services Section */
.services {
  background-color: #f4f4f4;
  padding: 40px 20px;
}

.services h2 {
  text-align: center;
  margin-bottom: 40px;
}

.service-item {
  max-width: 800px;
  margin: 20px auto;
  text-align: center;
}

.service-item h3 {
  color: #000000;
}

/* Certification Badge */
.certification {
  text-align: center;
  margin: 40px 0;
}

.certification img {
  max-width: 200px;
}

/* Location Section */
.location {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  padding: 40px 20px;
}

.map,
.building {
  flex: 1;
  min-width: 350px;
  height: 400px;
  max-width: 600px;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.building img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

/* Footer */
.footer {
  background-color: #000000;
  color: white;
  text-align: center;
  padding: 20px 10px;
}

.footer a {
  color: #ffcc00;
  margin: 0 5px;
}

.social-media a {
  margin: 0 5px;
}

/* Contact Us Page Specific Styles  */
main {
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

.contact-us h1,
.contact-us h2 {
  color: #000000;
}

.contact-us form {
  margin: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.contact-us form label {
  font-weight: bold;
}

.contact-us form input,
.contact-us form textarea,
.contact-us form button {
  padding: 10px;
  font-size: 1em;
  border: 1px solid #ddd;
  border-radius: 5px;
}

.contact-us form button {
  background-color: #000000;
  color: white;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}

.contact-us form button:hover {
  background-color: #ffcc00;
  color: #000000;
}

#confirmation-message {
  display: none;
  color: green;
  margin-top: 15px;
}

address {
  font-style: normal;
  margin: 20px 0;
}

/* Footer */
footer {
  background-color: #000000;
  color: white;
  text-align: center;
  padding: 20px 10px;
}

footer nav {
  margin: 10px 0;
}

footer nav a {
  color: #ffcc00;
  margin: 0 10px;
}

.social-links {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 15px;
}

.social-links a {
  color: #ffcc00;
}

/* Employment Page Specific Styles */

.employment h1,
.employment h2 {
color: #000000;
text-align: center;
margin-bottom: 10px;
}

.employment .intro-text {
color: #333;
font-size: 1.1em;
text-align: center;
margin-bottom: 30px;
max-width: 900px;
margin-left: auto;
margin-right: auto;
}

.employment form {
margin: 20px auto;
display: flex;
flex-direction: column;
gap: 15px;
max-width: 600px;
}

.employment form label {
font-weight: bold;
}

.employment form input,
.employment form textarea,
.employment form button {
padding: 10px;
font-size: 1em;
border: 1px solid #ddd;
border-radius: 5px;
}

.employment form button {
background-color: #000000;
color: white;
border: none;
cursor: pointer;
transition: all 0.3s ease;
}

.employment form button:hover {
background-color: #ffcc00;
color: #000000;
}

#confirmation-message {
display: none;
color: green;
margin-top: 15px;
text-align: center;
}

address {
font-style: normal;
margin: 20px 0;
}
/* Clients Lifestyle Page Specific Styles */
main {
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

.clients-lifestyle {
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

.intro {
  text-align: center;
  margin-bottom: 40px;
}

.intro h1 {
  color: #000000;
  font-size: 2em;
}

.services h2 {
  color: #000000;
  margin-bottom: 20px;
  text-align: center;
}

.services ul {
  margin: 20px 0;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: center;
}

.services ul li {
  background: #f4f4f4;
  padding: 15px;
  border: 1px solid #ddd;
  border-radius: 5px;
  text-align: center;
  flex: 1 1 calc(30% - 20px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

article {
  margin-bottom: 30px;
}

article h3 {
  color: #000000;
  margin-bottom: 10px;
}

/* Images and Gallery */
.gallery img {
  max-width: 100%;
  height: auto;
  border-radius: 5px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.category-images {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 15px;
}

.category-images img {
  width: 300px;
  height: 200px;
  object-fit: cover;
}

/* Footer */
.footer {
  background-color: #000000;
  color: white;
  text-align: center;
  padding: 20px 10px;
}

.footer a {
  color: #ffcc00;
  margin: 0 5px;
}

/* Our Services Page Specific Styles */
main {
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
}

.intro {
  text-align: center;
  margin-bottom: 40px;
}

.intro h1 {
  color: #000000;
  font-size: 2em;
}

.services h2 {
  color: #000000;
  margin-bottom: 20px;
  text-align: center;
}

.services ul {
  margin: 20px 0;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: center;
}

.services ul li {
  padding: 15px;
  border: 1px solid #ddd;
  border-radius: 5px;
  text-align: center;
  flex: 1 1 calc(30% - 20px);
  box-shadow: 0 2px 4px rgba(208, 5, 5, 0.1);
}

/* Alternate Background Colors for List Items */
.services ul li:nth-child(odd) {
  background-color: #f2b0b0; /* Light Gray */
}

.services ul li:nth-child(even) {
  background-color: #ccd0d2; /* Light Blue */
}

article {
  margin-bottom: 30px;
}

article h3 {
  color: #000000;
  margin-bottom: 10px;
}