/* Default (light) mode styles */
body {
    padding: 25px;
    background-color: rgb(250, 248, 221);
    color: rgb(27, 27, 27);
    font-size: 25px;
    /* Add a smooth transition for the color change */
    transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition */
}

/* Dark mode styles, applied when the .dark-mode class is present on the body */
.dark-mode {
    background-color: black;
    color: rgb(255, 255, 255);
    transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition */
}

#star-container {
  position: fixed;
  width: 100%;
  height: 25%;
  background-color: transparent;
  overflow: hidden;
}

.star-js {
  position: absolute;
  width: 3px;
  height: 3px;
  background-color: #b1c5f3;
  border-radius: 50%;
  animation: fall linear forwards; /* Use forwards to keep the end state */
}

@keyframes fall {
  0% {
    transform: translateY(0) rotate(0);
    opacity: 1;
  }
  100% {
    transform: translateY(100vh) rotate(180deg);
    opacity: 0;
  }
}

nav ul {
  list-style-type: none; /* Remove bullet points */
  margin: 0;
  padding: 0;
  overflow: hidden; /* Clear floats */
  background-color: transparent; /* transparent background */
  display: flex; /* Use Flexbox for horizontal layout */
  justify-content: space-around; /* Distribute items evenly */
}

/* Style the list items */
nav li {
  float: left; /* Alternative to flex for older methods */
}

/* Style the links inside the list items */
nav li a {
  display: block; /* Make the whole area clickable */
  color: rgb(197, 5, 197); /* White text color */
  text-align: center;
  padding: 16px; /* Spacing */
  text-decoration: none; /* Remove underlines */
}

/* Change the color of links on hover */
nav li a:hover {
  /* background-color: #ddd; Light gray background on hover */
  /* color: black; Black text on hover */
  background-color: rgb(168, 187, 242);
  font-size:1.1em;
  border-radius: 32px;
  transition: background-color 0.3s ease;
}

/* Style the active/current link (optional) */
nav li a.active {
  background-color: #04AA6D;
  color: white;
}

button {
    /* Remove default button appearance */
    border: none;
    padding: 0;
    background: none;
    cursor: pointer; /* Makes the cursor a pointer when hovering */
}

button img {
    /* Ensure the image fits within the implicit button boundaries */
    display: block;
    width: 76px; /* Adjust size as needed */
    height: auto;
}

.ml9 {
  position: relative;
  font-weight: 300;
  font-size: 2.8em;
  opacity: 1;
}

.ml9 .text-wrapper {
  position: relative;
  display: inline-block;
  padding-top: 0.2em;
  padding-right: 0.05em;
  padding-bottom: 0.1em;
  overflow: hidden;
}

.ml9 .letter {
  transform-origin: 50% 100%;
  display: inline-block;
  line-height: 1em;
  color:darkmagenta;
}

.m29 {
  position: relative;
  text-align: center;
  font-weight: 300;
  font-size: 1.9em;
  opacity: 1;
  color:rgb(124, 79, 236)
}

.m29 .text-wrapper {
  position: relative;
  display: inline-block;
  padding-top: 0.2em;
  padding-right: 0.05em;
  padding-bottom: 0.1em;
  overflow: hidden;
}

.m29 .letter {
  transform-origin: 50% 100%;
  display: inline-block;
  line-height: 1em;
  color:darkmagenta;
}


.alternate-colors, .alternate-colors th, .alternate-colors td {
    border: 1px solid #f5d4f7;
    border-collapse: collapse; /* Merges borders into a single line */
    padding: 8px;
    text-align: left;
  }
  
  /* Apply a different background color to odd-numbered rows */
  .alternate-colors tbody tr:nth-child(odd) {
    background-color: #f6f3f6; /* Light pink for odd rows */
    color:#333;
  }

  /* Apply a distinct background color to even-numbered rows */
  .alternate-colors tbody tr:nth-child(even) {
    background-color: rgb(124, 79, 236); /* light blue for even rows */
    color:#000000;
  }

  /* Optional: Style the table header */
  .alternate-colors thead th {
    background-color: #4CAF50; /* Green header */
    color: white;
  }

  .thumbs-col {
      text-align: center;
      vertical-align: middle;
  }

  .fa-thumbs-up {
      color: rgb(39, 40, 39);
      font-size: 22px;
  }
  
  td, th {
    padding-top: 5px;
    padding-right: 10px;
    padding-bottom: 5px;
    padding-left: 10px;
}

input {
  display: block;
  width: 50%; /* Or any specific width less than 100% */
  margin: 0 auto;
}

textarea {
  display: block;
  width: 82%; /* Or any specific width less than 100% */
  margin: 0 auto;
}

.rounded-table {
  /* Required properties for simple rounded corners */
  border-collapse: separate;
  border-spacing: 0; /* Optional: removes space between cells */
  border-radius: 10px; /* Adjust the value as needed for desired roundness */
  background-color: rgb(147, 111, 240);
  border: 3px solid rgb(124, 79, 236); /* Add a border to see the effect */
  padding:12px;
  margin:auto;
  overflow: hidden; /* Hides internal cell borders that might leak */
}

.montserrat-contact-form {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}