/* General Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Arial", sans-serif;
}

/* Navbar Styling */
.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 40px;
  background-color: #000000;
  color: #ffffff;
  position: sticky;
  top: 0;
  z-index: 1000;
}

.navbar .logo a {
  font-size: 2rem;
  font-weight: bold;
  text-decoration: none;
  color: #b1cc74;
  text-transform: uppercase;
}

.navbar .nav-links {
  list-style: none;
  display: flex;
  gap: 20px;
}

.navbar .nav-links li a {
  text-decoration: none;
  color: white;
  font-size: 1.1rem;
  transition: color 0.3s ease;
}

.navbar .nav-links li a:hover {
  color: #b1cc74;
}

/* Hamburger Menu */
.hamburger {
  display: none;
  cursor: pointer;
  flex-direction: column;
  gap: 5px;
}

.hamburger span {
  width: 30px;
  height: 4px;
  background-color: white;
  border-radius: 5px;
}

/* Media Queries for Responsiveness */

/* Tablet and Below */
@media (max-width: 768px) {
  .navbar .nav-links {
    display: none;
    flex-direction: column;
    position: absolute;
    top: 60px;
    left: 0;
    width: 100%;
    background-color: #2b2d42;
    padding: 20px;
    text-align: center;
    gap: 15px;
  }

  .navbar .nav-links li a {
    font-size: 1.2rem;
  }

  .navbar .hamburger {
    display: flex;
  }

  .navbar.active .nav-links {
    display: flex;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .navbar .nav-links li a {
    font-size: 1rem;
  }

  .navbar .logo a {
    font-size: 1.5rem;
    margin: 0px 10px;
  }
}

/* Home Section */
.home {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100vh;
  padding: 0 20px;
  background-image: url(home-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: white;
}

.home-content {
  max-width: 500px;
  text-align: left;
  padding: 20px;
}

.home h1 {
  font-size: 3rem;
  margin-bottom: 20px;
  font-weight: bold;
  text-transform: uppercase;
  color: #b1cc74;
}

.home p {
  font-size: 1.2rem;
  margin-bottom: 30px;
}

.cta-btn {
  display: inline-block;
  padding: 15px 30px;
  background-color: white;
  color: #000000;
  font-weight: bolder;
  font-size: 1.1rem;
  text-decoration: none;
  border-radius: 5px;
  transition: background-color 0.3s ease;
}

.cta-btn:hover {
  background-color: #e06c3f;
}

/* Media Queries for Responsiveness */

/* Tablet */
@media (max-width: 768px) {
  .home {
    flex-direction: column;
    text-align: center;
    height: auto;
    padding: 50px 20px;
    background-attachment: scroll; /* Allows scrolling on smaller screens */
  }

  .home-content {
    max-width: 100%;
    margin-bottom: 30px;
  }

  .home h1 {
    font-size: 2.5rem;
  }

  .home p {
    font-size: 1rem;
  }

  .cta-btn {
    padding: 12px 25px;
    font-size: 1rem;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .home h1 {
    font-size: 2rem;
  }

  .home p {
    font-size: 0.9rem;
  }

  .cta-btn {
    padding: 10px 20px;
    font-size: 0.9rem;
  }
}

/*partner-logo*/
.partner-logos {
  height: 120px;
  display: flex;
  background-color: rgba(10, 10, 10, 0.996);
}
.partner-boxes {
  height: 100px;
  flex-grow: 1;
  margin: 10px 10px;
  align-content: center;
  text-align: center;
  font-size: 22px;
  background-color: rgba(12, 12, 12, 0.996);
  color: white;
}
@media (max-width: 768px) {
  .partner-boxes p {
    font-size: 15px;
  }
}
@media (max-width: 480px) {
  .partner-logos {
    height: 250px;
    flex-direction: column;
  }
  .partner-boxes {
    height: 60px;
  }
  .partner-boxes p {
    font-size: 15px;
  }
}

/* About Us Section */
.about-us {
  background-color: #000000;
  padding: 60px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: auto;
}

.about-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1200px;
  width: 100%;
}

.about-content {
  width: 50%;
  padding-right: 40px;
  text-align: justify;
}

.about-content h2 {
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  color: #b1cc74;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.about-content p {
  font-size: 1.1rem;
  line-height: 1.8;
  color: white;
  margin-bottom: 20px;
}

.about-image {
  width: 45%;
}

.about-image img {
  width: 75%;
  height: 90%;
  margin: 20px;
  border-radius: 10px;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
}

/* Media Queries for Responsiveness */

/* Tablet */
@media (max-width: 768px) {
  .about-container {
    flex-direction: column;
    text-align: center;
  }

  .about-content {
    width: 100%;
    padding-right: 0;
    margin-bottom: 30px;
  }

  .about-image {
    width: 100%;
  }

  .about-content h2 {
    font-size: 2.5rem;
  }

  .about-content p {
    font-size: 1rem;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .about-content h2 {
    font-size: 2rem;
  }

  .about-content p {
    font-size: 0.9rem;
  }
}

/* Membership Section */
.membership {
  background-color: rgba(0, 0, 0, 0.966);
  padding: 60px 20px;
  text-align: center;
}

.membership h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.membership p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 40px;
}

.membership-container {
  max-width: 1200px;
  margin: 0 auto;
}

.membership-plans {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.plan {
  background-color: rgba(0, 0, 0, 0.801);
  padding: 30px;
  border-radius: 10px;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
  width: 30%;
  text-align: center;
  transition: transform 0.3s ease;
}

.plan:hover {
  transform: translateY(-10px);
}

.plan h3 {
  font-size: 2rem;
  color: #b1cc74;
  margin-bottom: 20px;
}

.price {
  font-size: 2.2rem;
  font-weight: bold;
  color: #ff7f50;
  margin-bottom: 20px;
}

.plan ul {
  list-style: none;
  font-size: 1rem;
  color: #555;
  margin-bottom: 30px;
  text-align: center;
}

.plan ul li {
  margin-bottom: 10px;
  color: white;
}

/* Media Queries for Responsiveness */

/* Tablet */
@media (max-width: 768px) {
  .membership-plans {
    flex-direction: column;
    align-items: center;
  }

  .plan {
    width: 80%;
    margin-bottom: 30px;
  }

  .membership h2 {
    font-size: 2.2rem;
  }

  .membership p {
    font-size: 1rem;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .membership h2 {
    font-size: 1.8rem;
  }

  .price {
    font-size: 1.8rem;
  }

  .cta-btn {
    padding: 10px 25px;
    font-size: 1rem;
  }

  .plan ul li {
    font-size: 0.9rem;
  }
}

/* Classes & Schedule Section */
.classes-schedule {
  background-color: black;
  padding: 60px 20px;
  text-align: center;
}

.classes-schedule h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.classes-schedule p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 40px;
}

.schedule-container {
  max-width: 1200px;
  margin: 0 auto;
}

.class-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
}

.class-card {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 30px;
  border-radius: 10px;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
  width: 23%;
  text-align: center;
  transition: transform 0.3s ease;
}

.class-card:hover {
  transform: translateY(-10px);
}

.class-card h3 {
  font-size: 1.8rem;
  color: #b1cc74;
  margin-bottom: 15px;
}

.class-time {
  font-size: 1.1rem;
  color: #ff7f50;
  margin-bottom: 15px;
}

.class-card p {
  font-size: 1rem;
  color: white;
  margin-bottom: 20px;
}

/* Media Queries for Responsiveness */

/* Tablet */
@media (max-width: 768px) {
  .class-list {
    flex-direction: column;
    align-items: center;
  }

  .class-card {
    width: 80%;
    margin-bottom: 30px;
  }

  .classes-schedule h2 {
    font-size: 2.2rem;
  }

  .classes-schedule p {
    font-size: 1rem;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .class-card h3 {
    font-size: 1.5rem;
  }

  .class-time {
    font-size: 1rem;
  }

  .cta-btn {
    padding: 10px 25px;
    font-size: 1rem;
  }

  .class-card p {
    font-size: 0.9rem;
  }
}

/* Personal Training Section */
.personal-training {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 60px 20px;
  text-align: center;
}

.personal-training h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.personal-training p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 40px;
  line-height: 1.6;
}

.training-container {
  max-width: 1200px;
  margin: 0 auto;
}

.trainer-cards {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

.trainer-card {
  background-color: #000000;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
  width: 30%;
  text-align: center;
  transition: transform 0.3s ease;
}

.trainer-card:hover {
  transform: translateY(-10px);
}

.trainer-image {
  width: 100%;
  height: auto;
  border-radius: 10px;
  margin-bottom: 20px;
}

.trainer-card h3 {
  font-size: 1.8rem;
  color: #b1cc74;
  margin-bottom: 10px;
}

.trainer-card p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 15px;
}

.specialty {
  font-size: 1rem;
  color: #ff7f50;
  margin-bottom: 15px;
}

.price {
  font-size: 1.3rem;
  color: #2b2d42;
  font-weight: bold;
  margin-bottom: 20px;
}

/* Media Queries for Responsiveness */

/* Tablet */
@media (max-width: 768px) {
  .trainer-cards {
    flex-direction: column;
    align-items: center;
  }

  .trainer-card {
    width: 80%;
    margin-bottom: 30px;
  }

  .personal-training h2 {
    font-size: 2.2rem;
  }

  .personal-training p {
    font-size: 1rem;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .trainer-card h3 {
    font-size: 1.5rem;
  }

  .trainer-card p {
    font-size: 1rem;
  }

  .price {
    font-size: 1.1rem;
  }

  .cta-btn {
    padding: 10px 25px;
    font-size: 1rem;
  }

  .trainer-card .specialty {
    font-size: 0.9rem;
  }
}

/* Facilities Section */
.facilities {
  background-color: #000000;
  padding: 60px 20px;
  text-align: center;
}

.facilities h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.facilities p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 40px;
  line-height: 1.6;
}

.facilities-container {
  max-width: 1200px;
  margin: 0 auto;
}

.facility-cards {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

.facility-card {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 30px;
  border-radius: 10px;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
  width: 23%;
  text-align: center;
  transition: transform 0.3s ease;
}

.facility-card:hover {
  transform: translateY(-10px);
}

.facility-image {
  width: 100%;
  height: auto;
  border-radius: 10px;
  margin-bottom: 20px;
}

.facility-card h3 {
  font-size: 1.8rem;
  color: #b1cc74;
  margin-bottom: 10px;
}

.facility-card p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 20px;
}

/* Media Queries for Responsiveness */

/* Tablet */
@media (max-width: 768px) {
  .facility-cards {
    flex-direction: column;
    align-items: center;
  }

  .facility-card {
    width: 80%;
    margin-bottom: 30px;
  }

  .facilities h2 {
    font-size: 2.2rem;
  }

  .facilities p {
    font-size: 1rem;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .facility-card h3 {
    font-size: 1.5rem;
  }

  .facility-card p {
    font-size: 1rem;
  }

  .facility-card .cta-btn {
    padding: 10px 25px;
    font-size: 1rem;
  }

  .facility-card .specialty {
    font-size: 0.9rem;
  }
}

/* Testimonials Section */
.testimonials {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 60px 20px;
  text-align: center;
}

.testimonials h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.testimonials p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 40px;
  line-height: 1.6;
}

.testimonials-container {
  max-width: 1200px;
  margin: 0 auto;
}

.testimonial-cards {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

.testimonial-card {
  background-color: #000000;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
  width: 30%;
  text-align: center;
  transition: transform 0.3s ease;
}

.testimonial-card:hover {
  transform: translateY(-10px);
}

.testimonial-image {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  margin-bottom: 20px;
  object-fit: cover;
}

.testimonial-card h3 {
  font-size: 1.6rem;
  color: #2b2d42;
  margin-bottom: 10px;
}

.testimonial-text {
  font-size: 1rem;
  color: #555;
  margin-bottom: 15px;
}

.testimonial-rating {
  font-size: 1.3rem;
  color: #ff7f50;
}

/* Media Queries for Responsiveness */

/* Tablet */
@media (max-width: 768px) {
  .testimonial-cards {
    flex-direction: column;
    align-items: center;
  }

  .testimonial-card {
    width: 80%;
    margin-bottom: 30px;
  }

  .testimonials h2 {
    font-size: 2.2rem;
  }

  .testimonials p {
    font-size: 1rem;
  }
}

/* Mobile */
@media (max-width: 480px) {
  .testimonial-card h3 {
    font-size: 1.4rem;
  }

  .testimonial-card p {
    font-size: 0.9rem;
  }

  .testimonial-rating {
    font-size: 1.2rem;
  }
}

/* blog */
.blog {
  background-color: #000000;
  padding: 60px 20px;
  text-align: center;
}

.blog h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
}

.blog p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 40px;
}

.blog-posts {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  flex-wrap: wrap;
}

.blog-post {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 20px;
  border-radius: 10px;
  width: 30%;
  text-align: center;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
  transition: transform 0.3s ease;
}

.blog-post:hover {
  transform: translateY(-10px);
}

.blog-image {
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.blog-post h3 {
  font-size: 1.6rem;
  color: #b1cc74;
  margin-top: 20px;
}

.blog-excerpt {
  font-size: 1rem;
  color: white;
  margin-top: 10px;
}

.read-more {
  display: inline-block;
  margin-top: 20px;
  text-decoration: none;
  color: #ff7f50;
  font-weight: bold;
}

@media (max-width: 768px) {
  .blog-posts {
    flex-direction: column;
    align-items: center;
  }

  .blog-post {
    width: 80%;
    margin-bottom: 30px;
  }

  .blog h2 {
    font-size: 2.2rem;
  }
}

/*contact us*/
.contact-us {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 60px 20px;
  text-align: center;
}

.contact-us h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
}

.contact-us p {
  font-size: 1.1rem;
  color: white;
  margin-bottom: 40px;
}

form input,
form textarea {
  width: 80%;
  padding: 15px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 1rem;
}

.submit-btn {
  padding: 15px 30px;
  background-color: white;
  border: none;
  color: #000000;
  font-weight: bolder;
  font-size: 1.2rem;
  cursor: pointer;
  border-radius: 5px;
}

form .submit-btn:hover {
  background-color: #e56b2b;
}

@media (max-width: 768px) {
  form input,
  form textarea {
    width: 90%;
  }

  .contact-us h2 {
    font-size: 2.2rem;
  }
}

/*FAQ*/
.faq {
  background-color: #000000;
  padding: 60px 20px;
  text-align: center;
}

.faq h2 {
  font-size: 2.8rem;
  color: #b1cc74;
  margin-bottom: 20px;
}

.faq-item {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 26px;
  margin: 23px auto;
  width: 95%;
  border-radius: 10px;
  box-shadow: 5px 5px 15px rgba(41, 40, 40, 0.589);
}

.faq-item h3 {
  font-size: 1.6rem;
  color: #b1cc74;
  padding: 10px 10px;
}

.faq-item p {
  font-size: 1rem;
  color: white;
}

@media (max-width: 768px) {
  .faq-item {
    width: 90%;
  }

  .faq h2 {
    font-size: 2.2rem;
  }
}
/*join now*/
.join-now {
  background-color: rgba(8, 8, 8, 0.996);
  padding: 60px 20px;
  text-align: center;
}

.join-now h2 {
  font-size: 2.8rem;
  margin-bottom: 20px;
  color: #b1cc74;
}

.join-now p {
  font-size: 1.2rem;
  margin-bottom: 30px;
  color: white;
}

.join-btn {
  padding: 15px 30px;
  background-color: white;
  color: #000000;
  font-weight: bolder;
  font-size: 1.5rem;
  font-weight: bold;
  border-radius: 5px;
  text-decoration: none;
}

.join-btn:hover {
  background-color: #e56b2b;
  color: #fff;
}

@media (max-width: 768px) {
  .join-now h2 {
    font-size: 2.2rem;
  }

  .join-btn {
    font-size: 1.2rem;
    padding: 12px 25px;
  }
}
