body  {
  background-color: white;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0;
  padding: 0;
  font-family: arial;
}

/* width */
::-webkit-scrollbar {
  width: 2vh;
}

/* Track */
::-webkit-scrollbar-track {
  background: white;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: black;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: grey;
}

/* Style the navbar */
#navbar {
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-flow: row wrap;
  position: sticky;
  top: 0;
  overflow: hidden;
  background-color: black;
}

/* Navbar links */
#navbar a {
  display: flex;
  color: #f2f2f2;
  text-align: center;
  padding: 14px;
  text-decoration: none;
}

#navbar a:hover {
  background: white;
  color: black;
}

/* Page content */
.content {
  padding: 16px;
}

.title{
  min-height: 100vh;
  display: flex;
  margin: 0;
  padding: 0;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  background: black;
  overflow: visible;
  word-break: break-word;
  font-size: 30vh; 
  color: white;
}
@media screen and (max-width: 800px) {
  .title img  {
    height: 60vw;
    width: auto;
  }
}

button {
  font-size: 3vw;
  font-weight: bold;
  padding: 0 5vw;
  text-align: justify;
  background: white;
  color: black;
}
button:hover {
  background: black;
  color: white;
  cursor: pointer;
}

.page {
  min-height: 100vh;
  display: flex;
  width: 100%;
}

.left,
.right {
  width: 50%;
  margin: 2vw;
  padding: 2vw;
  box-sizing: border-box;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical centering */
  align-items: center;     /* horizontal centering */
  text-align: center;
  font-size: 1.8vw;
}

.left {
  background: white;
}

.right {
  background: white;
}

p {
  padding: 0 5vw;
  text-align: justify;
}

h  {
  font-size: 3vw;
  font-weight: bold;
  padding: 0 5vw;
  text-align: justify;
}

.img-embed img{
  width: auto;
  padding: 1vw;
}

.img-mini img {
  height: 5vw;
  width: auto;
}
@media screen and (max-width: 800px) {
  .img-mini  img {
  height: auto;
  width: 20vw;
  }
}

/* ------------START GAME SECTION------------ */
.window {
  background: black;
  color: white;
  width: 80%;
  margin: 1vw;
  padding: 1vw;
  box-sizing: border-box;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical centering */
  align-items: center;     /* horizontal centering */
  text-align: center;
  font-size: 1.8vw;
  overflow: visible;
  
}

.window p {
 text-align: justify;
}

.window h {
  font-size: 3vw;
  font-weight: bold;
  padding: 0 5vw;
  text-align: center;
}

/* ------------START GALLERY SECTION------------ */

/* Gallery styles */
.gallery {
    display: flex;
    flex-flow: row wrap;
    justify-content: center; /* Items grow from the center of every row */
    align-content: center;
    background: black;
    min-height: 90%;
}

/* Individual artwork styles */
.artwork {
    background-color: white;
    display: flex; /* Flexbox for centering */
    justify-content: center; /* Centering the image */
    align-items: center; /* Centering the image */
    overflow: hidden; /* Hide overflow for better presentation */
    height: 12vw; /* Fixed height for artwork – adjust as needed */
    width: auto;
    cursor: pointer; /* Indicate clickability */
    margin: .1vw;
}
/*  Scaling for Iphone  */
@media screen and (max-width: 800px) {
  .artwork{
    height: 40vw;
  }
}

/* Image styles */
.artwork img {
    max-width: 100%; /* Limit to container width */
    max-height: 100%; /* Limit to container height */
    object-fit: contain; /* Fit without cropping */
    display: block; /* Remove bottom space caused by inline elements */
}

.artwork:hover  {
  /*Wiggle Animation*/
  animation-name: wiggle; /* Name of the keyframes */
  animation-duration: .5s; /* Time per bounce (faster = 0.5s, slower = 1.2s) */
  animation-timing-function: ease-in-out; /* Smooth acceleration/deceleration */
  animation-iteration-count: 1; /* Bounce 3 times then stop */  
}

.artwork img:hover  {
  opacity: .2;
}

/* Modal Styles */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1000; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgba(0, 0, 0, 0.8);
    box-shadow: inset 0vw 0vw 50vw 14vw rgba(0,0,0,0.65);
    justify-content: center; /* Center content */
    align-items: center; /* Center content */
}

/* Modal Image Styles */
.modal img {
    max-width: 90%; /* Max width of modal image */
    max-height: 90%; /* Max height of modal image */
}


/*Animations*/

/*Drop and Fade In*/
@keyframes dramaticAppear {
  0%  {
      opacity: 0;
      transform: translateY(-5vw);
    }
  100%  {
      opacity: 1;
      transform: translateY(0);
    }
}