@import url('https://early.webawesome.com/webawesome@3.0.0-alpha.10/dist/styles/webawesome.css') layer(wa);
/* COLOR VARIABLES */
:root {
  --deepOceanBlue: #3a84ac;
  --navyBlue: #1b3a4b;
  --seafoamTeal: #6ab9c8;
  --sandBeige: #ead7c6;
  --waveWhite: #f8f9fa;
  --goldAccent: #c9a14a;
  --softGray: #b0b7c3;
  --softCoral: #e9897e;
}
/*/////////////////////////////////*/
@layer wa {
  .wa-off,
  .wa-off-deep,
  .wa-off-deep * {
    all: revert-layer;
  }
}
wa-carousel {
  --pagination-color: var(--softGray);
  --pagination-color-active: var(--softCoral);
}
body {
  margin: 0;
  font-family: Arial, sans-serif;
  color: var(--navyBlue);
  display: flex;
  justify-content: center;
  background-color: var(--waveWhite);
}
.hidden {
  display: none;
}
.bannerContainer {
  position: relative;
}
.aboutUs-button-container {
  display: flex;
  justify-content: space-between; /* Even spacing between buttons */
  align-items: center; /* Aligns buttons vertically */
  width: 100%; /* Ensures the container spans its parent */
  margin-top: 20px;
}

.aboutUs-button-container button {
  flex: 1; /* Makes each button take equal space */
  margin: 0 10px; /* Adds space between buttons */
}
.banner {
  background-image: url('assets/images/banner.jpeg');
  background-size: cover; /* or 'contain' if you want to ensure the full image is visible */
  background-position: center; /* optional, centers the image */
  height: 350px;
  width: 100%;
  border-radius: 20px;
  z-index: 1;
}
.bannerGradient {
  background: rgb(255,255,255);
  background: radial-gradient(circle, rgba(0,0,0 ,.8) 0%, rgba(0,0,0,0) 100%);
  background-position: center;
  position: absolute;
  height: 350px;
  width: 100%;
  z-index: 2;
}
.bannerLogo {
  background-image: url('assets/images/logo.png');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  height: 350px;
  width: 100%;
  z-index: 3;
}
button {
  padding: 6px;
  border: 0px;
  border-radius: 25px;
}

.btnPressed {
  background-color: var(--seafoamTeal); /* Darker green on hover */
  transform: scale(1.05); /* Slightly enlarge the button on hover */
}
.btnUnPressed:hover {
  background-color: var(--seafoamTeal); /* Darker green on hover */
  transform: scale(1.05); /* Slightly enlarge the button on hover */
}
.btnUnPressed {
  background-color: var(--navyBlue);
}
.event {
  border-bottom: 2px solid var(--softCoral);
  padding: 15px 0;
}
.event:last-child {
  border-bottom: none;
}
.event-date {
  font-weight: bold;
  color: var(--deepOceanBlue);
}
.event-title {
  font-size: 1.2em;
}
.event-time {
  color: var(--seafoamTeal);
  font-style: italic;
}
.add-all-btn {
  display: block;
  text-align: center;
  background-color: var(--goldAccent);
  color: var(--waveWhite);
  padding: 10px;
  margin-top: 20px;
  text-decoration: none;
  border-radius: 5px;
}
.add-all-btn:hover {
  background-color: var(--softCoral);
}
/* Sidebar Styling */
.sidebar {
  width: 250px;
  height: 100vh;
  display: flex;
  flex-direction: column;
  background-color: var(--waveWhite);
  position: fixed;
  top: 0;
  left: 0;
  transition: transform 0.3s ease; /* Smooth transition for the collapse effect */
  z-index: 998;
}

/* White Key Styling (Clickable) */
.key.white {
  display: block;
  text-decoration: none;
  text-align: center;
  line-height: 60px;
  font-size: 18px;
  font-weight: bold;
  text-align: right;
  padding-right: 20px;
  border: 1px solid var(--softGray);
  border-left: none;
  background-color: white;
  color: #000;
  height: 60px;
  position: relative;
  z-index: 1;
  transition: background-color 0.3s ease, color 0.3s ease;
  flex: none;
}

/* Black Key Styling (Non-Clickable, Centered) */
.key.black {
  width: 120px;
  height: 40px;
  background-color: black;
  margin: -20px -20px;
  position: relative;
  z-index: 2;
  border-radius: 0 5px 5px 0;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  flex: none;
}

.key.white:hover, .keyPressed {
  background-image: linear-gradient(to right, #ffffff, #f0f0f0);
  color: #000;
  transform: skewY(5deg) translateY(12px);
  box-shadow: inset 0 4px 8px rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.1);
  transition: background-image 0.3s ease, color 0.3s ease, transform 0.1s ease, box-shadow 0.1s ease;
}

/* Content Styling */
.content {
  margin-left: 250px;
  padding: 20px;
  width: 100%;
}

.homeTiles {
  padding: 10px;
  border-radius: 10px;
  margin-top: 20px;
  overflow: hidden;
}
.homeTiles.blue {
  background-color: var(--seafoamTeal);
  color:var(--waveWhite);
  wa-button, .wa-button {
    --background-color: var(--deepOceanBlue);
    --background-color-hover: var(--navyBlue);
  }
}
.homeTiles.tan {
  background-color: var(--sandBeige);
  wa-button, .wa-button {
    --background-color: var(--seafoamTeal);
    --background-color-hover: var(--deepOceanBlue);
  }
}
.eventBtnsAgenda {
  display: flex;
  justify-content: space-around;
}
.agendaBtn {
  --background-color: var(--deepOceanBlue);
  --background-color-hover: var(--navyBlue);
  padding: 16px;
}
.demovidContainer {
  display: inline-block;
  flex-wrap: wrap;
  align-items: flex-start; /* Align items to the top of the container */
}

.demovid {
  flex: 0 0 auto; /* Prevent the video from shrinking */
  margin-right: 20px; /* Add spacing between video and bio */
  margin-bottom: 20px;
  float: left;
}
.demovid iframe {
  display: block; /* Remove inline space below iframe */
  margin-top: 20px;
  border-radius: 8px;
}
.directorContainer {
  display: flex;
  flex-wrap: wrap; /* Allows text to drop below if needed */
  align-items: flex-start;
  margin: 0 auto; /* Centers the container */
}
.directorContainter img {
  height: auto;
  width: 50%;
  margin: 10px;
  border-radius: 8px;
}
.upcoming {
  height: 100%;
  font-size: 2vmin;
  text-align: center;
  justify-content: space-between;
}
.eventBtns {
  display: flex;
  justify-content: center;
  width: 100%;
}
#calendarBtn {
  display: inline-flex;
  margin-right: 42px;
  --background-color: var(--deepOceanBlue);
  --background-color-hover: var(--navyBlue);
  padding: 16px;
}
#mapBtn {
  display: inline-flex;
  --background-color: var(--deepOceanBlue);
  --background-color-hover: var(--navyBlue);
  padding: 16px;
}
.boardFlexContainer {
  display: flex;
  flex-direction: row;
  text-align: center;
}
.boardFlexContainer h3 {
  text-decoration: underline;
}
.boardFlexLeft {
flex: 50%;
}
.boardFlexRight {
  flex: 50%;
}
#footer {
  text-align: center;
}
.homeTilesBody {
  font-size: clamp(9px,2.5vw,24px);
  display: flex;
}
.donate-container {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  flex-wrap: wrap;
}

.donateBtns {
  flex: 1 30%;
  color: white;
  text-align: center;
  padding: 1rem;
  border-radius: 8px;
  align-content: center;
}
.donateBtns button {
  --background-color: var(--deepOceanBlue);
  --background-color-hover: var(--navyBlue);
  width: 100%;
  min-width: fit-content;
}
/* Media Queries for Smaller Screens (Phones) */
@media screen and (max-width: 768px) {
  .sidebar {
    transform: translateX(-250px); /* Hide the sidebar off-screen by default */
  }

  .sidebar.active {
    transform: translateX(0); /* Show the sidebar when active */
  }

  .content {
    margin-left: 0; /* Remove the sidebar margin */
  }

  /* Hamburger Button */
  .hamburger {
    display: flex; /* Use flexbox to position the spans horizontally */
    flex-direction: row; /* Ensure spans are side-by-side */
    justify-content: space-between; /* Evenly space out the bars */
    align-items: center; /* Vertically center the bars */
    position: fixed;
    top: 30px;
    left: 30px;
    z-index: 999; /* Ensure it's above the sidebar */
    cursor: pointer;
    width: 40px; /* Adjust width for horizontal alignment */
    height: 40px; /* Adjust height to fit the sticks */
    transition: transform 0.3s ease;
    rotate: 90deg;
  }

  .hamburger span {
    display: block;
    width: 6px; /* Narrow width for the drumstick shape */
    height: 30px; /* Elongated height for the drumstick look */
    background-color: saddlebrown;
    border-radius: 10px; /* Slight rounding for the drumstick look */
    transition: all 0.3s ease;
    position: relative;
  }

  /* Add tips to the drumsticks (middle circle) */
  .hamburger span:nth-child(1):before,
  .hamburger span:nth-child(3):before {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    background-color: burlywood;
    border-radius: 50%;
    top: -5px; /* Place the "tip" of the drumstick above */
    left: 50%;
    transform: translateX(-50%);
  }

  /* Hamburger turns into an "X" resembling drumsticks when active */
  .hamburger.active span:nth-child(1) {
    transform: rotate(45deg); /* Rotate the first bar to form part of the X */
    top: 0; /* Position it at the top */
  }

  .hamburger.active span:nth-child(2) {
    opacity: 0; /* Hide the middle bar */
  }

  .hamburger.active span:nth-child(3) {
    transform: translateX(-500%) rotate(-45deg); /* Rotate the second bar to form the other part of the X */
    bottom: 0; /* Position it at the bottom */
  }
  .demovidContainer {
    flex-direction: column; /* Stack items vertically */
  }
  .demovid {
    width: 100%;
    margin-right: 0; /* Remove margin on smaller screens */
    align-self: center;
  }
  .demovid iframe {
    width: inherit;
  }
  #calendarBtn {
    margin-right: 0px;
    margin-bottom: 10px;
    width: 100%;
  }
  #mapBtn {
    width: 100%;
  }
  .eventBtns
  {
    display: block;
  }
  .boardFlexContainer {
    flex-direction: column;
  }
  .donateBtns {
    flex: 1 100%;
  }
}