* {
  list-style: none;
  text-decoration: none;
  box-sizing: border-box;
}
.checkbox-label {
  display: flex;
  flex-direction: column;    /* Stack children vertically */
  align-items: center;       /* Center items horizontally */
  width: 100%;
  line-height: 1.3;
  word-break: break-word;
  overflow-wrap: anywhere;
  margin-bottom: 0.5em;
  /* Remove align-items: flex-start; and flex-wrap: wrap; */
}

.header-container {
  position: fixed;
  display: grid;
  grid-template-columns: 12.5vw 12.5vw 50vw 12.5vw 12.5vw;
  grid-template-rows: 50% 50%;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  border: 0; 
  min-width: 100vw;
  max-width: 100vw;
  max-height: 10vh;
  min-height: 10vh;
  z-index: 10;
  background-color: rgb(16, 39, 159);

}
.background-full-image {
  position: fixed;
  top: 10vh;
  left: 0;
  width: 100%;
  height: calc(100vh - 15vh);
  max-height: 100vh;
  z-index: -10;
  pointer-events: none;
  margin: 0;
  padding: 0;
  display: block;
}
.background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -10;
  pointer-events: none;
}
.banner-left {
  grid-column: 1 / 3;
  place-self: center;
  place-content: center;
  min-width: 100%;
  max-height: 100%;
}
.banner-left li {
  display: grid;
  grid-template-rows: auto;
}
.top-left {
  grid-column: 1;
  grid-row: 1 / 3;
  place-self: center;
}
.top-left li a {
  color: rgb(255, 0, 255);
}
.top-right {
  grid-column: 2;
  grid-row: 1 / 3;
  place-self: center;
}
.top-right li a {
  color: rgb(255, 0, 255);
}
.bottom-left {
  grid-row: 2;
  grid-column: 1;
  place-self: center;
}
.bottom-left a {
  color: rgb(255, 0, 255);
}
.bottom-right {
  grid-row: 2;
  grid-column: 2;
  place-self: center;
}
.bottom-right a {
  color: rgb(255, 0, 255);
}

.header-search-container {
  grid-column: 4 / 6;
  grid-row: 1 / 3;

  place-self: center;
  place-content: center;
  min-width: 100%;
  max-height: 10vh;

}
.header-search-container input {
  place-self: center;
  border-radius: 50px;
  min-width: 75%;
  max-height: 10vh;
  margin: 0;
  padding: 0;
  height: 2rem;
}
.header-search-container text {
  place-content: center;
}
.header-search-container button {
  position: absolute;
  right: 25px;
  background-color: white;
  color: black;
  border-radius: 50px;
  height: 100%;
  aspect-ratio: 1;
}
.search-input {
  flex: 1;
}
.header-search-container form {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
}
.title_image{
 grid-column: 3 / 4;
 grid-row: 1 / 3;
  place-self: center;
  place-self: center;
  min-width: 100%;
  max-height: 100%;
}
.title_image img {
  place-self: center;
  place-content: center;
  max-height: 10vh;
  width: 80%;
}
.nav-container {
  grid-column: 1 / 3;
  place-self: center;
  place-content: center;
  max-width: 100%;
  max-height: 100%;
}
.menu-memnber{
  position: relative;
  display: flex;
  place-self: center;
  place-content: center;
}
.header-menu {

max-width: 100%;

}
.header-menu ul {
  display: flex;
    max-width: 100%;
    margin: 0;
    padding: 0;
}
.off-screen-menu {
    background-color: rgb(34, 37, 49);
    height: 100vh;
    width: 100%;
    max-width: 450px;
    position: fixed;
    top: 0;
    right: -100vw; /* Fully off-screen */
    display: flex;
    flex-direction: column;
    align-items: center;    
    justify-content: center;
    text-align: center;
    font-size: 3rem;
    transition: right .3s ease, opacity .3s ease;
    z-index: 100; /* Above header when active */
    opacity: 0;
    pointer-events: none;
}

.off-screen-menu.active {
    right: 0;
    opacity: 1;
    pointer-events: auto;
}
.off-screen-menu ul li {
  /*  nav-links li = space between list items    */
  font-size: 1.25rem;
  display: inline-flex;
  margin: 10px;
  flex-direction: row;
   list-style-type: none;
}

.off-screen-menu ul li a {
  /*  nav-links a = text color & decoration  */
  text-decoration: none;
  color: rgb(255, 0, 255);
  transition: color 0.3s;
  width: 100%;
}
.off-screen-menu ul li a:hover {
  color: rgb(4, 0, 255);
}
body {
  display: grid;
  position: absolute;
  margin: 0;
  padding: 0;
  font-family: Arial, sans-serif;
  place-content: center;
  text-align: center;
  min-width: 100%;
  max-width: 100%;
  min-height: 100%;

  color: black;
  background-color: white;
  
}

.main-page-container{
  display: grid;
  max-width: 100vw;
  min-width: 100vw;
  position: absolute;
  top: 10vh;

  grid-template-rows: auto auto auto auto;
  margin: 0;
  padding: 0;
  gap: 3rem;
}
.main-page-image {
  z-index: -20;
  max-width: 100vw;
  min-width: 100vw;
  grid-row: 1;
}

.main-page-image img {
  max-width: 100%;
display: block;
  height: auto;
  margin: 0;
  padding: 0;
}
.main-page-intro {
  grid-row: 2;
  margin: 0;
  padding: 0;
}
.main-page-glow-frame {
  margin: 0;
  padding: 0;
  grid-row: 3;
  text-align: top;
  border-radius: 10px;
  grid-template-columns: auto;
  
  max-width: 100%;
  /* box-shadow: 0 0 10px rgba(255, 255, 255, 0.8);  Glow effect */
  text-align: center; /* Center text */
   place-self: center;
  animation: glow 1.5s infinite alternate;
}

.main-page-glow-frame a {
  color: rgb(255, 0, 255);
}
.search-results {
  max-width: 100vw;;
}


.form.searchform {
  display: flex;
  justify-content: flex-end;
  flex-direction: row;
  width: 100vw;
}
.nav-container {
  position: relative;
  display: flex;
  place-self: center;
  place-content: center;
  min-width: 100vw;
  max-width: 100vw;
  max-height: 100px;
  margin: 0;
  padding: 0;
  border: 0;
}

.user-id {
  display: inline-flex;
  max-width: 100vw;
}
.searchform {
  width: 100%;
}
.signin.container {
  
  flex: 25%;
  min-width: 100%;
  place-self: center;
  place-content: center;
  

}

.signin-banner-padding { 
  display: flex;
  flex: 25%;
  justify-content: right;
  list-style: none;
  margin: 0;
  padding: 0; 
 }

.signin-banner-padding img {
  align-self: center;
  display: flex;
  max-height: 100px;
}
.signin-banner img {
  position: relative;
  display: block;
  max-height: 100px;
}
.signin-banner a {
  width: 100%;
  justify-self: center;
  display: inline-flex;
  color: #0eb067;
}
h1 {
  place-self: center;
  text-align: center;
  color: #000000;
  margin: 1rem;
}
h2 {
  place-self: center;
  text-align: center;
  color: #000000;
  font-size: 1.25rem;
  font-weight: normal;
  margin: 1rem;
}
h3 {
  place-self: center;
  font-size: 1 rem;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 600;
  text-align: center;
  width: 100%;
  max-width: 100vw;
}
h4 {
  display: block;
  place-self: center;
font-size: 2rem;
height: 100%;
  max-height: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}
h5 {
  margin: 0;
padding: 1rem;
font-size: 1.5rem;
font-weight: 400;
 color: black;
}
h6 {
margin: 0;
padding: 0;
font-size: 2.5rem;
font-weight: 400;
  color: black;
  
}
p {
  font-size: 1.5 rem;
  text-align: center;
  
}



/*---------
.header-search-bar {
  width: 75%;
  flex: 25%;
  justify-self: center;
}  ---------------*/

.form label {
  display: block;
  margin-top: 1em;
  margin-bottom: 0.25em;
  font-weight: bold;
  text-align: left;
}
.form-group {
  display: block;
  width: 100%;
  margin-bottom: 1em;
}
.form-group label {
  display: block;
  margin-bottom: 0.25em;
  font-weight: bold;
  text-align: left;
}
.form-group input {
  display: block;
  width: 100%;
  box-sizing: border-box;
}

.form-error {
  color: red;
}

.form-success {
  color: green;
}

.venue-signup-border {
  max-width: 50%;
}
.user-signup-border {
  justify-self: right;
  max-width: 50%;
}

/*-----------------------------------------------------------------------*/
.glow-container {
  /*----------------DONT PLACE PADDING HERE!!!!------------*/
  place-self: center;
  place-content: center;
  display: grid; /* Use Grid Layout */
  grid-template-columns: repeat(3, 1fr); /* Create 3 equal columns */
  gap: 3rem;
  max-width: 80%;
  max-height: 80vh;
  margin-top: 10%;
  margin-bottom: 10%;
}

.glow-frame {
  display: grid;
  text-align: top;
  border-radius: 10px;
  grid-template-columns: auto;
  
  min-width: 100%;
  max-width: 100vw;
  /* box-shadow: 0 0 10px rgba(255, 255, 255, 0.8);  Glow effect */
  text-align: center; /* Center text */
  background-color: white;
  animation: glow 1.5s infinite alternate;
}
.glow-frame img {
  
 border-bottom-right-radius: 10px;
 border-bottom-left-radius: 10px;
  max-width: 100%;
  max-height: 100vh;
}
.glow-frame-text {
  background-color: none;
  font-size: 2rem;
  color: rgb(255, 0, 255);
  text-decoration: none;
}
.glow-frame a {
  text-decoration: none;
  display: grid;
}


/*-------------------------------------------------------------------------*/
 .signup-login-container {
  position: absolute;
  display: grid;
  grid-template-rows: 15vh auto auto 10vh;
  height: 100vh;
  width: 100vw;
  gap: 3rem;

  overflow: scroll;
  }


.signup-login-two-columns-container {
  grid-row: 2;
  place-self: center;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  max-width: 75%;
  width: 100%;
}
.signin-single {
  max-width: 20%;
  place-self: center;
  place-content: center;
}
.single-glow-frame {
  padding: 1rem;
  place-items: center;
  text-align: top;
  border-radius: 15px;

  min-width: 0;
  max-width: 100vw;

  /* box-shadow: 0 0 10px rgba(255, 255, 255, 0.8);  Glow effect */
  text-align: center; /* Center text */

  animation: glow 1.5s infinite alternate;
}
.single-glow-frame form {
  width: 90%;
}

.single-glow-frame a {
  margin: 1rem;
  justify-self: center;
  max-width: 0px;
}
.single-glow-frame img {
  display: grid;
  place-self: center;
  width: 75%;
}
.single-glow-border {
  place-items: center;
  justify-self: center;
  place-items: center;
  display: grid; /* Use Grid Layout */
  min-width: 15vw;
  max-width: 15vw;
}
.glow-border-logout {
  place-items: center;
}
/*
.glow-frame-logout {
  border-radius: 15px;
  padding: 0.25rem;
  max-width: 10%;
  box-shadow: 0 0 10px #ffffffcc; /* Glow effect */
 /* text-align: center;  */                        /* Center text /*

  animation: glow 1.5s infinite alternate; 
}
*/
.grid-wrap1 {
  grid-column: 1;
}
.grid-wrap {
  grid-column: 2;
}
.grid-wrap1,
.grid-wrap {
  min-width: 0;
}
.grid-wrap3 {
    grid-column: 1;
    grid-row: 2;
}
.grid-wrap-banner {
  grid-column: 1;
  grid-row: 1;
}
.grid-wrap-banner img {
  max-height: 100px;
  height: 100vh;
  max-width: 100%;
  place-self: center;
  place-content: center;
}
.grid-wrap-banner a {
  place-self: center;
  place-content: center;
}

.signup-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* Two equal columns */
  gap: 16px; /* Space between grid items */
}

form {
  width: 60%;

  font-family: Arial, Helvetica, sans-serif;

  flex-wrap: wrap;
  flex-direction: column;

  place-self: center;
  place-items: center;
}
.form-group select {
  display: block;
  width: 100%;
  padding: 6px;
  margin-bottom: 4px;
  border-radius: 5px;
  background-color: #fff;
  border: 1px solid #888;
  font-size: 1rem;
  box-sizing: border-box;
   height: 38px;
}
.form-boarder {
  display: inline-flex;
  justify-self: center;
  max-width: 50%;
}

form input {
  width: 75%;
  padding: 6px;
  margin-bottom: 4px;
  border-radius: 5px;
  background-color: #fff;
}

.login-status {
  
  position: relative;

place-self: center;
place-content: center;
  max-width: 100%;
  max-height: 100%;
 
}

.login-status li {

  position: inherit;
  font-size: 1.25rem;
  display: grid;
  grid-template-columns: auto;
  place-self: center;
  place-content: center;
  max-width: 100%;
  
}
.login-status li a {
  max-width: 100%;
   color: rgb(255, 0, 255);
}
.login-status text {
  place-self: center;
  max-width: 250px;
}
.login-status b {
  max-width: 100%;

}

.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  place-content: center;
  max-height: 5vh;
  min-height: 5vh;
  width: 100vw;
  max-width: 100vw;
  text-align: center;
  color: #fff;
  background-color: rgb(16, 39, 159);
  margin: 0;
  padding: 0;
  z-index: 1000;
}
.footer-container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;

}
#footer {
  
  bottom: 0;
  width: 100%;
}
.footer a {
  margin: 0.5rem;
   color: #fff;
  background-color: rgb(16, 39, 159);
}
.footer-left {
place-self: center;
  grid-column: 1;
  max-width: 100%;
}
.footer-center {
  grid-column: 2;
  place-self: center;
  
}
.footer-right {
  place-self: center;
  grid-column: 3;
   
}





@keyframes glow {
  from {
    box-shadow: 0 0 5px rgb(30, 0, 255), 0 0 10px rgb(30, 0, 255),
      0 0 10px rgb(255, 0, 255);
  }
  to {
    box-shadow: 0 0 5px rgb(255, 0, 255), 0 0 10px rgb(255, 0, 255),
      0 0 10px rgb(255, 0, 255);
  }
}

@media screen and (orientation: landscape) {
  .portrait-search {
  display: none;
  }
   .off-screen-menu {
  display: none;
  }
} 




.body-container {
  top: 10vh;
  bottom: 10vh;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  width: 100vw;

}

.map-page-container {
  max-width: 80vw;
  max-height: 80vh;
  width: 80vw;
  height: 80vh;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

#map {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  display: block;
}
.login-error-message {
  grid-column: 1 / 3;
  place-self: center;
  place-content: center;
}
.radio-row {
    display: flex;
    gap: 2em; /* space between yes and no */
    align-items: center;
    margin: 0.5em 0 1em 0;
}

.radio-row label {
    display: flex;
    align-items: center;
    font-weight: normal; /* labels regular, question stays bold */
    gap: 0.25em;
}