/* General Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

body {
  font-family: Arial, sans-serif;
  line-height: 1.5;
}

.logo img {
  width: 140px;
  height: 60px;
}

/* Section Styles */
.section {
  height: 100vh;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: white;
}

.content {
  padding: 20px;
  border-radius: 8px;
}

/* Home Section */
#home-section {
  position: relative;
  background-image: url("../images/home-image.jpg");
  background-size: cover;
  background-position: center;
  height: 100vh; /* Full viewport height */
  display: flex;
  flex-direction: column;
  align-items: center; /* Center the content horizontally */
  justify-content: flex-start; /* Align the content to the top */
  color: white;
  padding: 20px 0; /* Space from top and bottom */
}

/* Navbar Container */
.navbar-container {
  width: 100%;
  display: flex;
  justify-content: center; /* Center navbar horizontally */
  position: absolute;
  top: 0;
  z-index: 10;
}

/* Navbar */
.navbar {
  display: flex;
  justify-content: space-around;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 15px 0;
  color: white;
  border: 2px solid #dee807; /* Add a 2px border around the navbar */
  width: 80%; /* Adjust the width as needed */
  margin: 20px auto; /* Center the navbar */
}

.navbar a {
  text-decoration: none;
  color: #fff;
}

.nav-item {
  cursor: pointer;
  font-size: 1.2rem;
  font-weight: bold;
}

.primary_button {
  background-color: #dee807;
  color: #000;
  padding: 5px 15px;
  border-radius: 5px;
}

/* Home Content */
.home-content {
  margin-top: 40px; /* Adjusted for navbar spacing */
  margin-left: 200px;
  max-width: 900px; /* Limit the content width */
  padding: 20px;
  text-align: left; /* Align the text to the left */
  border-radius: 8px;
  align-self: flex-start; /* Align the content to the left side of the section */
}

.home-content h1 {
  font-size: 5rem;
  font-weight: bold;
  color: #dee807;
  font-family: "Franklin Gothic Medium", "Arial Narrow", Arial, sans-serif;
}

.home-content h3 {
  font-size: 3.1rem;
  margin-top: -50px;
  margin-bottom: 15px;
  color: #dee807;
  font-family: "Franklin Gothic Medium", "Arial Narrow", Arial, sans-serif;
}

.home-content p {
  width: 700px;
  font-size: 1.2rem;
  line-height: 1.6;
  margin-bottom: 20px;
}

.cta-button {
  padding: 20px;
  font-size: 1.1rem;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s;
}

.cta-button:hover {
  background-color: #dee807; /* Darken the button color on hover */
}

/* Social Icons Container */
.social-icons-container {
  position: absolute;
  width: 50px;
  left: 50px; /* Space before the line */
  top: 40%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column; /* Align icons vertically */
  align-items: center; /* Center the icons */
}

/* Vertical Lines */
.social-icons-container .line {
  width: 2px;
  height: 250px; /* Height for top and bottom lines */
  background-color: #dee807;
  margin: 10px 0; /* Space between lines and icons */
}

/* Social Icons */
.social-icon {
  display: block;
  font-size: 30px;
  margin: 10px 0; /* Vertical margin between icons */
  color: #dee807;
  transform: rotate(270deg); /* Rotate icons 270 degrees */
  transition: transform 0.3s ease;
}

/* Crossed Divider Styles */
.crossed-divider {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden; /* Hide any overflowing parts of the tape */
}

/* Tape Styles */
.crossed-divider .tape {
  position: absolute;
  width: 105%; /* Full width of the screen */
  height: 80px; /* Tape height will be the same as the crossed-divider */
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 2px;
  z-index: 1;
  white-space: nowrap; /* Prevent wrapping of the text */
  background-repeat: repeat-x; /* Repeats the text horizontally */
  text-align: center;
  overflow: hidden; /* Ensure the text is clipped at the height */
  background-size: auto 100%; /* Ensure the text stretches across the tape's height */
}

/* Tape 1: Yellow background with Black text */
.crossed-divider .tape:first-child {
  background: #dee807;
  color: white;
  transform: rotate(-3deg); /* First tape with -3 degree slant */
  background-size: auto 100%; /* Stretch text across the width */
}

/* Tape 2: Black background with Yellow text */
.crossed-divider .tape:last-child {
  background: black;
  color: #dee807;
  transform: rotate(3deg); /* Second tape with +3 degree slant */
  background-size: auto 100%; /* Stretch text across the width */
}

.crossed-divider .tape span {
    display: inline-block;
    animation: scrollText 20s linear infinite;
    padding-right: 50px;
}

/* Tape Movement */
.crossed-divider .tape:first-child span {
    display: inline-block;
    animation: scrollTextLeft 20s linear infinite;
    padding-right: 50px;
}

.crossed-divider .tape:last-child span {
    display: inline-block;
    animation: scrollTextRight 20s linear infinite;
    padding-right: 50px;
}

@keyframes scrollTextLeft {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
    }
}

@keyframes scrollTextRight {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}

@keyframes scrollText {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}

/* What We Offer Section */
.what-we-offer {
  position: relative;
  background-image: url("../images/about-image.jpg");
  background-size: cover;
  background-position: center;
  height: 100vh; /* Full viewport height */
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* Align the content to the left */
  justify-content: flex-start; /* Align the content to the top */
  color: white;
  padding: 20px 0; /* Space from top and bottom */
}

.what-we-offer .content {
  margin-top: 80px;
  margin-left: 200px;
  max-width: 900px; /* Limit the width of the content */
  padding: 20px;
  text-align: left; /* Align text to the left */
}

.what-we-offer h2 {
  font-size: 4.5rem;
  font-weight: bold;
  color: #dee807;
  font-family: "Franklin Gothic Medium", "Arial Narrow", Arial, sans-serif;
  margin-bottom: 20px;
}

.what-we-offer p {
  font-size: 1.4rem;
  line-height: 1.1;
  margin-bottom: 15px;
}

.what-we-offer ul {
  font-size: 1.4rem;
  margin-left: 20px;
}

.what-we-offer ul li {
  margin-bottom: 10px;
}

/* Contact Section */
.contact-section {
  margin: auto;
  background-color: #f9f9f9;
  background-image: url("../images/image.png");
  background-size: cover;
  background-repeat: no-repeat;
}

.contact-section .content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 20px;
  padding: 20px 320px;
}

/* Contact Form */
#contact-form {
  flex: 1;
  max-width: 600px;
  padding: 20px;
  text-align: left;
}

.contact-section h2 {
  color: #faff06;
  text-align: center;
  margin-top: 120px;
  font-size: 3rem;
}

#contact-form label {
  display: block;
  margin-bottom: 8px;
  color: #fff;
}

#contact-form input,
#contact-form textarea {
  color: #fff;
  width: 100%;
  padding: 10px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  background-color: rgba(0, 0, 0, 0.1);
  font-size: 14px;
}

#contact-form button {
  display: inline-block;
  background-color: #f6ea98;
  color: #000;
  border: none;
  padding: 10px 50px;
  font-size: 16px;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s;
}

#contact-form button:hover {
  background-color: #dac95e;
}

/* Map Container */
#map-container {
  flex: 1;
  max-width: 600px;
}

#map iframe {
  width: 100%;
  height: 400px;
  border: none;
}

#address-hours {
  margin-top: 20px;
}

#address-hours p {
  margin: 0 0 10px;
  font-size: 1.2rem;
  color: #fff;
}

footer {
  color: white;
  text-align: center;
  padding: 50px;
}
