* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  background: url(/images/main_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}

.container {
  max-width: 1140px;
  margin: 0 auto;
  width: 100%;
}

.featured-banner-container {
  max-width: 900px;
  margin: 0 auto;
  width: 100%;
}

/* Header styles */
.header {
  background: url("/images/header_bg.png") no-repeat center center;
  background-size: cover;
  padding-top: 50px;
  text-align: center;
}

.header-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
}

.logo {
  max-width: 600px;
}

.listen-now {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.listen-btn {
  background: red;
  color: white;
  border: none;
  border-radius: 5px;
  padding: 10px 20px;
  font-size: 18px;
  cursor: pointer;
}

.social-icons {
  margin-top: 10px;
}

.social-icons a {
  margin: 0 5px;
  display: inline-block;
}

.social-icons img {
  width: 30px;
  height: 30px;
}

/* Navigation bar */
.nav-bar {
  background: #97262c;
  padding: 20px 0;
  margin-top: 2rem;
}

.nav-bar a {
  color: white;
  text-decoration: none;
  font-weight: bold;
  text-transform: uppercase;
  font: normal normal normal 20px/1.1em Anton, sans-serif;
}

.nav-bar a:hover {
  text-decoration: none;
  color: rgb(128, 160, 248);
}

.menu {
  list-style: none;
  display: flex;
  gap: 20px;
  justify-content: space-between;
}

.menu > li {
  position: relative; /* Required for submenu positioning */
}

.menu a {
  text-decoration: none;
  display: block;
}

.menu .has-submenu:hover .submenu {
  display: block; /* Show the submenu on hover */
}

.submenu {
  list-style: none;
  padding: 0;
  margin: 0;
  position: absolute;
  top: 100%; /* Aligns submenu below the parent item */
  left: 0;
  display: none; /* Hide submenu by default */
  background-color: #97262c;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.submenu li {
  width: 150px; /* Optional: Set width for submenu items */
}

.submenu a {
  margin-top: 15px;
  padding: 5px 10px;
  color: white;
  text-align: center;
  background-color: #97262c;
}

.submenu a:hover {
  color: rgb(128, 160, 248);
}

.featured-image {
  margin-top: 1rem;
}

.primary-banner img {
  width: 100%;
}

.secondary-banners {
  display: flex;
  justify-content: space-between; /* Adds space between the two columns */
  gap: 20px; /* Optional: Adjust spacing between columns */
  margin-top: 1rem;
}

.secondary-banners-left,
.secondary-banners-right {
  display: flex;
  flex-direction: column; /* Ensures the images stack vertically in each column */
  gap: 10px; /* Adds spacing between images in each column */
}

footer {
  margin-top: 3rem;
  text-align: center;
}

footer p {
  color: #97262c;
  font: normal normal normal 20px/1.1em Anton, sans-serif;
}

@media only screen and (max-width: 768px) {
  body {
    margin: 0;
    padding: 0;
    background-size: cover; /* Ensures the background covers full width */
  }

  .container,
  .nav-bar,
  .header,
  .menu {
    margin: 0;
    padding: 0;
    width: 100%;
  }

  .header-content {
    flex-direction: column;
    margin-bottom: 1rem;
  }

  .nav-bar {
    background: #97262c;
    padding: 0; /* Remove unnecessary padding */
    margin: 0; /* Remove default margin */
  }

  .menu {
    display: flex;
    flex-direction: column; /* Stack menu items vertically */
    align-items: center; /* Center align menu items */
    gap: 10px; /* Add spacing between menu items */
    padding: 0;
  }

  .menu li {
    list-style: none;
    width: 100%; /* Ensure menu items span full width */
    text-align: center;
    margin: 0;
  }

  .submenu {
    width: 100%; /* Make submenu also span the full width */
  }

  .submenu a {
    padding: 10px; /* Increase padding for better touch usability */
    display: block; /* Ensure submenu items are block-level */
  }

  .header {
    padding: 20px 0; /* Adjust header padding for smaller screens */
    text-align: center;
  }

  .logo {
    max-width: 100%; /* Scale logo to fit within the screen */
  }

  .listen-btn {
    padding: 10px 15px; /* Adjust button size for smaller screens */
    font-size: 16px;
  }

  .social-icons img {
    width: 25px; /* Reduce icon size for smaller screens */
    height: 25px;
  }

  .featured-banner-container {
    padding: 0 10px; /* Add padding to avoid edge clipping */
  }

  .secondary-banners {
    flex-direction: column; /* Stack banners vertically */
    gap: 15px; /* Add spacing between banners */
    align-items: center;
  }

  footer {
    padding: 20px;
    font-size: 16px; /* Adjust font size for readability */
  }
}
