/*
 * Just a quick hamburger
 */
#menuToggle span {
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: #cdcdcd;
  border-radius: 3px;
  z-index: 1;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}

#menuToggle span:first-child {
  transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2) {
  transform-origin: 0% 100%;
}

/* 
 * Transform all the slices of hamburger
 * into a crossmark.
 */
#menuToggle input:checked ~ span {
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background: #fff;
}

/*
 * But let's hide the middle one.
 */
#menuToggle input:checked ~ span:nth-last-child(3) {
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

/*
 * Ohyeah and the last one should go the other direction
 */
#menuToggle input:checked ~ span:nth-last-child(2) {
  opacity: 1;
  transform: rotate(-45deg) translate(0, -1px);
}

/*
 * Make this absolute positioned
 * at the top left of the screen
 */
#menu {
   position: absolute;
  max-width: 100vw;
  width: 100vw;
  height: 100vh;
  max-height: 100vh;
  margin: -110px 0 0 0;
  padding: 50px;
  padding-top: 125px;
  right: -20px;
  box-sizing: border-box;
  overflow-y: auto;
  background: rgb(0 0 0 / 80%);
  -webkit-backdrop-filter: blur(20px);
  -o-backdrop-filter: blur(20px);
  -ms-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  /* to stop flickering of text in safari */
  transform-origin: 0% 0%;
  transform: translate(100%, 0);
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

#menu li
{
  padding: 10px 0;
  font-size: 22px;
}

#menu li label
{
  cursor: pointer;
}

/*
 * And let's fade it in from the right
 */
#menuToggle input:checked ~ ul {
  transform: none;
  opacity: 1;
}
/* END Hamburger menu pure CSS */



/* Ripple effect */
.movie-item {
    position: relative;
    overflow: hidden; /* Ensure the ripple effect is contained within the element */
}
.movie-item .ripple {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    transform: scale(0);
    animation: ripple-animation 0.6s linear;
    pointer-events: none; /* Prevent the ripple from interfering with click events */
}
@keyframes ripple-animation {
    to {
        transform: scale(4);
        opacity: 0;
    }
}

    /* Desktop Styles */
    @media (min-width: 769px) {
        .bottom-nav {
            display: none;
        }
        /* BEGIN  Desktop header alignment */
        .filter-sort {
            justify-content: left;
            max-width: 1400px;
            margin: 0px auto;
            gap: 15px;
        }
        .nav-bar {
            justify-content: left;
        }

        /* Reveal header on hover */
        .site-header.hide:hover {
            top: 0 !important;
            background: rgb(0 0 0 / 25%) !important;
        }
        .site-header.hide:hover::before {
            -webkit-backdrop-filter: saturate(1) blur(10px);
            -o-backdrop-filter: saturate(1) blur(10px);
            -ms-backdrop-filter: saturate(1) blur(10px);
            backdrop-filter: saturate(1) blur(10px);
        }
        .site-header.hide .logo {
            opacity: 1 !important;
        }

        /* Background & hover efffect on list view movies for desktop only */
        .movie-grid.list-view .movie-item {
            background: rgb(12 12 12 / 68%);
            margin-bottom: 12px;
            border-radius: 10px;
            transition: background .2s, transform .2s;
        }
        .movie-grid.list-view .movie-item:hover {
            background: rgb(103 103 103 / 59%);
            transform: scale(1.01);
        }
        .movie-grid.list-view .movie-item:active {
            transform: scale(0.99);
            transition: 0.1s;
        }
        #background-img.darker {
            -webkit-filter: brightness(0.6) blur(20px);
            -o-filter: brightness(0.6) blur(20px);
            -ms-filter: brightness(0.6) blur(20px);
            filter: brightness(0.6) blur(20px);
        }
        /* 2 column movie list view on desktop */
        .movie-grid.list-view {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
        }
        .movie-grid.list-view .movie-item img {
            transition: transform .3s;
        }
        .movie-grid.list-view .movie-item img:hover {
            transform: scale(0.96);
        }
    }
    @media (max-width: 1400px) {
        /* 4 columns on smaller screens*/
        .movie-grid {
            grid-template-columns: repeat(4, 1fr);
        }
    }
    @media (max-width: 1000px) {
        .movie-grid {
            grid-template-columns: repeat(3, 1fr);
        }
    }
    @media (max-width: 768px) {
        .movie-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }