body {
    background-color: black;
    font-family:'Lexend Giga','Helvetica', 'Gill Sans', 'Gill Sans MT', 'Trebuchet MS', sans-serif;
    color:aqua

}
.token-display {
    position: sticky;
    top: 0;
    z-index: 500;
    text-align: right;
    padding: 0.35rem 1.5rem;
    color: aqua;
    font-size: 1.2vw;
    font-weight: bold;
    background: rgba(0, 0, 0, 0.88);
    border-bottom: 1px solid aqua;
    backdrop-filter: blur(4px);
}
@font-face {
  font-family: 'Lexend Giga';
  src: url('/LexendGiga-VariableFont_wght.ttf') format('truetype');
}
@font-face {
  font-family: 'Train One';
  src: url('/TrainOne-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Lobster';
  src: url('/Lobster-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Monoton';
  src: url('/Monoton-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'Nasalization';
    src: url('/Nasalization Rg.otf') format('opentype');
}


#new-project {
    color:rgb(191, 0, 255);
    text-decoration: none;
    font-family:'Nasalization';
    font-size: 3vw;
    justify-content: center;
    align-items: center;
    display: flex;

}
#projects-container {
    justify-content: center;
    align-items: center;
    display:block;

}
#overlay {
    display: none; /* Controlled by project-deets.js */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7); /* Dims the background */
    z-index: 1000; /* Stays above the map and cards */
    overflow: auto; /* Allows scrolling if content is taller than the screen */
    backdrop-filter: blur(5px); /* Adds a modern frosted glass effect */
}
#project-card, .project-card {
    justify-content: center;
    align-items: center;
    display:block;
    color:aqua;
    font-size: 1.5vw;
    cursor:pointer;

}
.projects-page {
    justify-content: center;
    align-items: center;
    display:grid;

}
li {
    color:limegreen;
    font-size: 1.8vw;
    list-style-type: none;

    font-weight: bold;
    margin-right: 2%;
}
.main-menu a {
    color:limegreen;
    text-decoration: none;
}
.prizes-line-art-container {
    /* Define the visible area for the cropped image */
    width: 30%; /* Adjust to your desired width */
    /* To make it scale proportionally, set an aspect ratio for the cropped image. */
    aspect-ratio: 14.4 / 1; /* Example: If original image is 1:1, cropped bottom half is 2:1 aspect ratio. Adjust as needed. */
    overflow: hidden; /* This is crucial for hiding the top half */
    display: inline-block; /* Or 'block', depending on your layout needs */
    justify-content: space-between;
    vertical-align: middle; /* Helps align with surrounding text if inline */
}

.line-art1 {
    /* Make the image fill the width of its container */
    width: 100%;
    /* Make the image twice as tall as its container to effectively "crop" */
    height: 200%;
    transform:scaleY(-1);
    /* Ensure the image covers the container while maintaining its aspect ratio */
    object-fit: cover;
    /* Position the bottom of the image within the container's visible area */
    object-position: bottom;
}


#user-status {
    color:rgb(255, 0, 144);
    font-family:'Nasalization';
    font-size: 2vw;
}
#htuser-status {
    color:rgb(255, 0, 144);
    font-family:'Nasalization';
    font-size: 2vw;
}
#logout-link {
    color:rgb(255, 120, 0);
}
#htlogout-link {
    color:rgb(255, 120, 0);
}
#projects {
    color:blue
}
#prizes {
    color:red
}
#home {
    color:limegreen;
}

#logout-link:hover {
    color:rgb(94, 44, 0);
}
#htlogout-link:hover {
    color:rgb(94, 44, 0);
}
#projects:hover {
    color:rgb(0, 0, 97)
}
#prizes:hover {
    color:rgb(141, 0, 0)
}
#home:hover {
    color:rgb(15, 101, 15);
}
.title h1 {
    font-size: 3vw;
    font-family: 'Nasalization';
}
.title {
    width:55%;
}
.title a, .title a:visited {
    color: red;
    text-decoration: none;
    font-family: 'Nasalization';
}
.title a:hover {
    color: rgb(121, 1, 1);
}
#map {
    width: 90em;
    height: 50em;
}

.mapbox {
    justify-content: center;
    align-items: center;
    display: flex;
    max-height: 20%;
}

.main-menu a:hover {
    color: rgb(12, 59, 12);
}
.navbar {
    background-color: rgb(20, 20, 20);
    padding: 1%;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 10px;
    

}
.navbar.container {
    justify-content: space-between;
    align-items: center;
    display: flex;
    font-size: 2vw;
}
.main-menu {
    width: 40%;
    height: 50%;
    margin-left: -5%;
    padding-left: -1%;
    display: block;
}


.container {
    max-width: 110%;
    margin: 0;
    padding: 0;
}

.aboutbox {
    display: block;
    max-width: 100%;
    margin: 1%;
    justify-content: center;
    text-align: center;
    
    
}

.prizes-container {
    /* Replace the path below with your actual background image file */
    /* Keeps background still while scrolling */
    margin-top: 10%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center; /* Centers cards horizontally */
    padding: 60px 0;
    position: relative;
}

.background-image {
    position:absolute;
    top: 2.2vw;
    align-self: center;
    width: 1.5%;
}

.prize-card {
    background-color: rgba(15, 15, 15, 0.055); /* Semi-transparent black */
    
    padding: 1.5vw 1vw 1.5vw 2.5vw; /* Scales with screen width */
    width: 50%;
    display: flex;
    align-items: center;
    left: 7.85%;
    gap: 4vw;
    position: relative; /* Necessary to allow 'top' vertical adjustments */
    margin-bottom: 1.5vw;
}

.prize-hours {
    
    font-size: 2.5vw;
    color: aqua;
    min-width: 12vw;
    text-align: center;
    border-right: 2px solid rgba(255, 255, 255, 0); /* Subtle vertical line */
    padding: 0 2vw; /* Equal padding on both sides to maintain centering */
}

.prize-info {
    font-size: 1.5vw;
    text-align: left;
    cursor: pointer;
}

.prize-image {
    margin-left: auto; /* Pushes the image to the far right of the flex container */
    display: flex;
    align-items: center;
    cursor: pointer;

}

.prize-image img {
    width: 11vw;
    height: 11vw;
    object-fit: cover;
    border-radius: 50%;
    box-shadow: 0 0 25px rgba(0, 255, 255, 0.7);
}

.aboutbox p, .aboutbox h1{
    font-size: 1.5dvw;
}
