﻿/* Home.css */

html {
  font-family: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
  font-size: 16px;
  font-style: normal;
}

body {
  min-height: 100vh;
  margin: 0;
  padding-top: 36px;
  text-align: center;
  font-style: normal;
  height: 100%;
  color: rgb(6, 6, 60);
  background-color: black; /* Black background for slideshow */
  background-repeat: repeat;
  background-position: top center;
  color: white;
  -webkit-background-size: 100vw auto;
  -moz-background-size: 100vw auto;
  -o-background-size: 100vw auto;
  background-size: 100vw auto;
  box-sizing: border-box;
}

p {
  text-align: justify;
}

a {
  cursor: pointer;
}

a:hover {
  border-bottom: 2px solid cyan;
}

.menu {
  cursor: pointer;
  font-family: 'Lato', sans-serif;
  font-size: 0.8rem;
  position: fixed;
  top: 0;
  width: 100%;
  background-color: black;
  color: white;
  padding: 10px 0;
  text-align: center;
  z-index: 10;
  border-bottom: 1px solid gray;
}

.menu a {
  color: white;
  margin: 0 10px;
  text-decoration: none;
}

.dropdown {
  position: relative;
  display: inline-block;
  background-color: black;
  color: white;
}

.dropdown-content {
  display: none;
  background-color: black;
  color: white;
  display: none;
  position: absolute;
  min-width: 160px;
  z-index: 1;
}

.dropdown-content a {
  color: white;
  background-color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown-content a:hover {
  background-color: #555; /* Change this to your desired hover color */
  border: 1px dotted rgb(90, 179, 226);
  border-radius: 12px;
}

.dropdown:hover .dropdown-content {
  display: block;
}

.dropdown-content .dropdown {
  position: relative;
}

.dropdown-content .dropdown .dropdown-content {
  display: none;
  top: 0;
  left: 100%;
}

.dropdown-content .dropdown:hover .dropdown-content {
  display: block;
}

#menu img {
  height: 24px; /* Replace with the height you want */
}

.fade {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

/* Menu Items above ^^^^^ DO NOT EDIT ^^^^^ */

#imgBGHdrPhoto {
  margin-top: 1rem;
  width: 50%;
  min-width: 430px;
  aspect-ratio: 18/4;
  z-index: -1;
  border: 4px solid rgb(10, 10, 120);
  border-radius: 12px;
}

.infodivs {
  color: white;
}

ul {
  top: 80px;
  list-style-type: none;
  margin: 0;
  padding: 0;
  text-align: center;
  overflow: hidden;
  background: transparent;
  justify-content: center;
  width: 100%;
}

li {
  width: 100%;
  display: inline-block;
  margin: 0 10px;
  text-align: center;
}

#ulInfoItems {
  margin-top: 100px;
  color: white;
  width: 100%;
  min-width: 400px;
}

#imgPromo {
  width: 45vw;
  min-width: 300px;
  max-width: 540px;
  aspect-ratio: 60/40;
}

h2 {
  color: whitesmoke;
}

#divEvents {
  text-align: center;
  color: white;
  margin: auto;
  max-width: 800px;
  font-style: normal;
}

#h2events {
  display: block;
  color: white;
}

#divEvents a {
  color: white;
  padding: 4px;
  border: 2px solid white;
  height: fit-content;
  margin: 0.5em;
}

#divEvents a:hover {
  background-color: white;
  color: rgb(10, 10, 80);
}

.column {
  float: left;
  width: 33%;
  min-width: 33%;
  padding: 10px;
  border: 1px dotted white;
}

.events {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 60%;
  min-width: 400px;
  padding: 0.5rem;
  margin: auto; /* Center the events container */
}

.three-columns {
  width: 60%;
  max-width: 600px;
  display: flex;
}

.column {
  flex: 1;
  text-align: left;
  padding: 6px;
  font-size: 0.8rem;
  background-color: black;
  color: white;
  border: 2px solid gray;
}

#divContactRow1 {
  display: flex;
  justify-content: space-between;
  white-space: nowrap;
}

#ulContactItems {
  color: white;
}

#divEventDivs {
  width: 100%;
  max-width: 800px; /* Match tblEvents max-width */
  min-width: 400px;
  margin: auto; /* Center the div horizontally */
  padding: 10px; /* Add some padding for better appearance */
  box-sizing: border-box; /* Include padding and border in the element's total width and height */
}

#tblEvents {
  color: rgb(35, 68, 164);
  width: 100%; /* Make the table take up 100% of the parent div's width */
  max-width: 800px; /* Optional: Set a maximum width */
  min-width: 400px; /* Optional: Set a minimum width */
  font-size: 1rem;
  margin: auto; /* Center the table horizontally */
  background-color: whitesmoke;
  border: 3px solid rgb(10, 10, 80);
  border-radius: 16px;
  border-collapse: collapse;
}

#tblEvents td {
  border: 1px dotted rgb(10, 10, 80);
  padding: 8px;
  text-align: left;
  white-space: nowrap;
}

#divContact {
  text-align: center;
  margin: auto;
  max-width: 800px;
}

#ulContactUs {
  width: 70%;
  max-width: 740px;
  min-width: 420px;
  margin: auto;
  background-color: whitesmoke;
  color: rgb(10, 10, 80);
  border: 4px solid rgb(10, 10, 80);
  border-radius: 12px;
  padding: 1rem;
  font-family: Lato, sans-serif;
  font-size: clamp(12px, 0.8vw, 1vw); /* Responsive font size */
}

#ulContactUs li {
  height: 32px;
}

#ulContactUs h2 {
  font-family: Lato, sans-serif;
  color: rgb(10, 10, 80);
  text-align: center;
  margin: auto;
  font-style: normal;
  font-size: 2em;
}

#ulContactUs p {
  font-family: Lato, sans-serif;
  color: rgb(10, 10, 80);
  text-align: center;
  margin: auto;
  font-style: normal;
  font-size: 1em;
  margin-bottom: 16px;
}

#ulContactUs input,
#ulContactUs textarea {
  box-sizing: border-box; /* Include padding and border in the element's total width and height */
  font-size: clamp(12px, 0.8vw, 1vw); /* Responsive font size */
}

.liInputs {
  height: 32px;
}

.msg {
  height: 64px;
  width: 320px;
  padding: 12px;
  background-color: whitesmoke;
  color: rgb(10, 10, 80);
  text-align: justify;
  display: none;
}

#liSelected {
  background: transparent;
}

#divHoldAudioControls {
  display: flex;
  justify-content: center; /* Center horizontally */
  align-items: center; /* Center vertically */
  flex-direction: column; /* Ensure elements are stacked vertically */
  text-align: center; /* Center text within elements */
}

#divAudio {
  display: flex;
  flex-direction: column; /* Stack elements vertically */
  align-items: center; /* Center elements horizontally */
  text-align: center; /* Center text within elements */
  margin-bottom: 1.5rem;
}

#aLinkProgram {
  display: block;
  color: white;
  text-decoration: none;
  margin: 0.5rem auto;
  width: fit-content;
  padding: 4px;
}

#aLinkProgram:hover {
  background-color: white;
  color: red;
  border: 2px solid red;
  border-radius: 12px;
  padding: 4px;
}

#aLinkProgram:visited {
  color: white;
  text-decoration: none;
}

.LinkBtn {
  color: rgb(35, 68, 164) !important;
  border: 2px solid rgb(10, 10, 80) !important;
  border-radius: 8px;
  padding: 6px 8px;
  height: fit-content;
  width: fit-content;
  margin: 0.25rem auto;
  display: inline-block;
}

.LinkBtn:hover {
  background-color: rgb(10, 10, 80);
  color: white;
}

#plblForAudio {
  color: rgb(10, 10, 80);
  font-size: 1rem;
  margin-bottom: 0.5rem;
  text-align: center;
  width: 100%;
  display: block;
}
#audioPlayer {
  max-width: 800px;
  width: 100%;
  height: 3em;
  margin: auto;
  display: block;
}

#liCurrentProgram {
  text-align: center;
  margin: 8px auto;
  padding: 8px 16px;
  background-color: white;
  text-decoration: none;
  cursor: pointer;
  border: 2px solid blue;
  border-radius: 8px;
  width: fit-content;
}

#liCurrentProgram a {
  color: rgb(10, 10, 80);
  text-decoration: none;
  width: fit-content;
  display: block;
}

#liCurrentProgram a:hover {
  color: white;
  background-color: rgb(10, 10, 80);
  text-decoration: underline;
}
#liCurrentProgram a:visited {
  color: rgb(10, 10, 80);
  text-decoration: none;
}

#aBuyTix {
  display: block;
  color: rgb(10, 10, 80);
  padding: 8px 16px;
  background-color: white;
  border: 2px solid white;
  border-radius: 8px;
  width: fit-content;
  margin: 1rem auto;
  text-decoration: none;
  font-size: 1.2rem;
}

#divContent {
  max-width: 900px;
  margin: auto;
  padding: 1rem;
  text-align: center;
  font-size: 1rem;
  color: white;
}

#divContent a {
  color: white;
  background: transparent;
  margin: -20px 10px 0 0;
  text-decoration: none;
  display: inline-block;
  vertical-align: middle;
  height: 30px;
  line-height: 50px; /* Match the menu height for vertical centering */
}

#divLink {
  margin-top: 24px;
}

#divLink a {
  color: white;
  font-weight: bold;
  cursor: pointer;
  text-decoration: none;
  padding: 6px;
  border: 2px solid white;
  border-radius: 8px;
}

#divLink a:hover {
  background-color: white;
  color: rgb(10, 10, 80);
}

#divLink a:visited {
  color: white;
  text-decoration: none;
}

/* Slideshow container positioning - initially hidden */
#slideshow-container {
  position: absolute;
  top: 110px; /* Positioned relative to document, not viewport */
  left: 0;
  width: 100%;
  height: calc(100vh - 110px);
  z-index: 0; /* Explicitly set below ulInfoItems to ensure proper layering */
  overflow: hidden;
  display: none; /* Hidden initially - shown after 4 seconds */
}

/* Single slideshow image */
#slideshow-image {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  height: auto;
}

/* ulInfoItems animation styling */
#ulInfoItems {
  transition: transform 3s ease-in-out;
  z-index: 2; /* Higher than slideshow-container to display over final slide */
}

/* Ensure imgPromo displays over slideshow background */
#imgPromo {
  z-index: 3; /* Higher than ulInfoItems and slideshow to ensure overlay */
  position: relative;
}

/* Enable scrolling to promo content during slideshow */
body {
  min-height: calc(200vh); /* Double viewport height for ample scrolling space */
  overflow-y: auto; /* Allow vertical scrolling */
}

/* Animation states for ulInfoItems */
#ulInfoItems.slide-down {
  transform: translateY(calc(100vh - 50px)); /* Move down below the slideshow area */
}

#ulInfoItems.slide-up {
  transform: translateY(0);
}

#liEmergencyNotice {
  font-size: 1.5rem;
  color: white;
  background-color: black;
  border: 6px solid red;
  border-radius: 12px;
  padding: 12px;
  text-align: center;
  width: 65%;
  margin: auto;
  max-width: 800px;
}