@import url("https://fonts.googleapis.com/css2?family=Mona+Sans:ital,wght@0,200..900;1,200..900&display=swap");

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-decoration: none;
  list-style: none;
  font-family: "Mona Sans", sans-serif;
  color: #000;

  button {
    cursor: pointer;
  }
}

html,
body {
  width: 100vw;
  height: 100vh;
  background-color: #ffffff;
  overflow-x: hidden;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: white;
  padding: 1vw 2.6vw;
  padding-right: 3.7vw;
  column-gap: 5vw;
  /* box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px; */

  #logo-div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3.5vw;

    .hamburger {
      display: none;
      font-size: 1.5rem;
      color: #000;
      cursor: pointer;
    }
    .logo a svg {
      width: 5.8vw;
      color: #000;
    }
  }
}
main {
  margin-top: 5.5rem;
}

nav {
  background-color: white;
  width: 25%;
  border: none;

  ul {
    display: flex;
    align-items: center;
    justify-content: space-between;

    li {
      font-size: 0.9vw;
      font-weight: 600;
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      cursor: pointer;

      .nav-list::after {
        content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='9' viewBox='0 0 10 9' fill='none'%3E%3Cpath d='M8.5 2.5L4.92667 6.073C4.90348 6.09622 4.87594 6.11464 4.84563 6.12721C4.81531 6.13978 4.78282 6.14625 4.75 6.14625C4.71718 6.14625 4.68469 6.13978 4.65437 6.12721C4.62406 6.11464 4.59652 6.09622 4.57333 6.073L1 2.5' stroke='%230D0C22' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
        margin-left: 0.5vw;
      }

      .nav-dropdown {
        position: relative;
      }
      .nav-dropdown ul {
        max-height: 0;
        overflow: hidden;
        width: max-content;
        margin-top: 30%;
        position: absolute;
        margin-left: -20%;
        border: none;
        border-radius: 5px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        padding: 5px;
        /* transition: all 0.1s ease-in; */

        li {
          width: 100%;
          display: flex;
          align-items: center;
          flex-direction: row;
          gap: 10px;
          justify-content: flex-start;
          padding: 10px 20px;
          &:hover a {
            color: #9c9a99;
          }
          a {
            font-size: 14px;
          }
          #one {
            width: 100%;
            border-top: 0.2px solid #c4bcbc;
            padding-top: 20px;
          }
        }
        .diff-li a {
          font-weight: 500;
          color: #3d3333;
        }
      }
      &:hover .nav-dropdown ul {
        max-height: 500px;
        background-color: white;
        box-shadow:
          rgba(0, 0, 0, 0.05) 0px 6px 24px 0px,
          rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
      }
    }
  }
}

.login {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-left: auto;

  #signup {
    font-size: 14px;
    font-weight: 700;
    padding: 10px 20px;
    background: #ffffff;
  }

  #login {
    font-size: 14px;
    font-weight: 600;
    padding: 15px 25px;
    background: #000000;
    color: #ffffff;
    border-radius: 5vw;
  }
}

.hero {
  width: 100%;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 72px;
  gap: 8vw;
  position: relative;
  overflow: hidden;

  .text {
    width: 50%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5vw;
    padding: 0;
    /* background-color: #ec5e95; */
    h1 {
      font-size: 3rem;
      font-weight: 600;
      font-family: "Mona Sans";
      text-align: left;
      margin-left: 2vw;
      transform: scaleX(112%);
      line-height: 1.08;
    }

    h2 {
      font-weight: 400;
      font-size: 1rem;
      width: 80%;
    }

    #shots {
      width: 100%;
      padding: 1vw 0;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;
      gap: 1.5vw;

      #hero-nav {
        button {
          display: flex;
          align-items: center;
          justify-content: center;
          gap: 0.5vw;
          background-color: whitesmoke;
          padding: 0.7vw 1.3vw;
          border-radius: 5vw;
          border: 0.8px solid rgb(217, 210, 210);
          margin-right: 1vw;

          &:focus {
            background-color: #242333;
            i,
            span {
              color: #fff;
              font-weight: 600;
            }
          }
        }
      }

      .search:hover {
        background-color: transparent;
      }

      .search {
        box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
        position: relative;
        background-color: #f3f3f6da;
        padding: 0.2vw 1vw;
        width: 100%;
        border: 1px solid #e2e2ea;
        border-radius: 5vw;

        form {
          display: flex;
          align-items: center;
          justify-content: space-between;
          gap: 0.5vw;

          input {
            width: 100%;
            padding: 0.5vw;
            border: none;
            border-radius: 5vw;
            background-color: transparent;
            color: #000;
          }

          input:focus {
            outline: none;
          }
          input:not(:placeholder-shown) ~ #reset {
            display: block;
          }
          #reset {
            position: absolute;
            display: none;
            right: 12%;
            border: none;
            background-color: transparent;

            #x {
              color: rgb(126, 121, 121);
              font-size: 1vw;
            }

            #x:hover {
              color: #000;
            }
          }

          #submit {
            padding: 0.8vw;
            border-radius: 50%;
            background-color: #ec5e95;
            color: #fff;
            border: none;
          }
        }
      }

      #pop {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 5px 0;
        gap: 2vw;
        width: 100%;
        flex-wrap: nowrap;
        overflow: auto hidden;
        scrollbar-width: none;

        p strong {
          color: #3a3546;
          font-size: 0.8rem;
          font-weight: 700;
        }

        ul {
          display: flex;
          gap: 8px;

          li {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            padding: 0.5vw 1vw;
            border-radius: 5vw;
            border: 1px solid #ebe5e5;
            background-color: white;
            /* margin-right: 0.5vw; */
            font-size: 12px;
            font-weight: 400;
            color: #373030;
            cursor: pointer;

            &:hover {
              color: #fff;
              border: none;
              box-shadow:
                rgba(0, 0, 0, 0.12) 0px 1px 3px,
                rgba(0, 0, 0, 0.24) 0px 1px 2px;
            }
          }
        }
      }
    }
  }

  aside {
    width: 50%;
    max-width: 614px;
    display: flex;
    /* background-color: #000; */
    justify-content: center;
    pointer-events: none;
  }

  aside video {
    width: 100%; /* smaller width inside aside */
    height: auto;
    border-radius: 1.5vw;
    overflow: hidden;
    display: block;
    object-fit: cover;
    margin-top: 10px;
  }
}

#navigation {
  width: 100%;
  padding: 3% 6%;

  .category-nav {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    column-gap: 4vw;

    .pop-dropdown {
      position: relative;
      &[open] #arrow {
        transform: rotate(180deg);
      }

      summary {
        border: 1px solid #c1baba;
        padding: 0.5vw 1vw;
        border-radius: 0.5vw;
        box-shadow:
          rgba(0, 0, 0, 0.12) 0px 1px 2px,
          rgba(0, 0, 0, 0.203) 0px 1px 2px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1vw;

        p {
          font-size: 14px;
          font-weight: 500;
        }

        span i {
          font-size: 0.8vw;
        }
      }

      #pop-list {
        display: flex;
        flex-direction: column;
        padding: 1vw;
        position: absolute;
        margin-top: 1vw;
        border: 1px solid #e2d9d9;
        border-radius: 5px;
        box-shadow:
          rgba(0, 0, 0, 0.1) 0px 10px 15px -3px,
          rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
        gap: 0.5vw;
        background-color: #fff;
        z-index: 10;

        #pop-first {
          display: flex;
          align-items: center;
          flex-direction: row;
          justify-content: space-between;
          font-weight: 600;
          span i {
            font-size: 0.8vw;
          }
        }
      }

      li {
        width: 11vw;
        padding: 1vw;
        border-radius: 0.5vw;
        cursor: pointer;
        font-weight: 400;
        text-align: left;
        background-color: transparent;
        &:hover {
          background-color: #eeeaea3d;
          box-shadow:
            rgba(14, 30, 37, 0.12) 0px 2px 2px 0px,
            rgba(14, 30, 37, 0.32) 0px 2px 8px 0px;
        }
      }
    }
    #ul-wrapper {
      overflow: auto hidden;
      white-space: nowrap;
      flex: 1 1 0;
      min-width: 0;
      scroll-behavior: smooth;
      scrollbar-width: none;

      #lists {
        gap: 0.4vw;
        display: inline-flex;

        li {
          display: inline-flex;
          flex-shrink: 0;
          align-items: center;
          justify-content: center;
          background-color: transparent;
          padding: 0.5vw 1vw;
          border-radius: 5vw;
          border: 0.8px solid rgb(255, 255, 255);

          a {
            font-size: 14px;
            font-weight: 500;
          }

          &:hover {
            background-color: whitesmoke;
            border: 0.8px solid rgb(217, 210, 210);
            box-shadow:
              rgba(0, 0, 0, 0.12) 0px 1px 2px,
              rgba(0, 0, 0, 0.203) 0px 1px 2px;

            a {
              color: #474040;
            }
          }
        }
      }
    }
    #filter {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5vw;
      font-weight: 600;
      font-size: 14px;
      color: #45434c;
      cursor: pointer;
      background-color: transparent;
      padding: 0.5vw 1vw;
      border-radius: 5vw;
      border: 0.5px solid rgb(217, 210, 210);
      box-shadow:
        rgba(0, 0, 0, 0.12) 0px 1px 2px,
        rgba(0, 0, 0, 0.203) 0px 1px 2px;
    }
    .filters-form {
      flex-basis: 100%;
      margin-top: 2vw;
      display: none;
      align-items: center;
      justify-content: space-between;

      .filter-group {
        display: flex;
        align-items: flex-start;
        gap: 0.7vw;
        flex-direction: column;
        /* background-color: #ec5e95; */
        width: 30%;

        ul {
          width: 100%;
          li {
            width: 100%;
            padding: 0.8vw 1vw;
            font-weight: 500;
            color: #625959;

            a {
              font-weight: 600;
            }
          }
        }

        label {
          font-size: 0.95vw;
          font-weight: 500;
        }

        #timeframe {
          width: 100%;

          summary {
            color: #fff;
            font-weight: 600;
            font-size: 0.9vw;
            padding: 1.1vw 1vw;
            border: #fbe0f7 0.5px solid;
            box-shadow:
              rgba(14, 30, 37, 0.12) 0px 2px 2px 0px,
              rgba(14, 30, 37, 0.32) 0px 1px 8px 0px;
          }
        }

        .input-with-icon {
          display: flex;
          padding: 0.5vw 1vw;
          align-items: center;
          justify-content: space-between;
          width: 100%;
          border-radius: 0.8vw;
          border: #fbe0f7 0.5px solid;
          box-shadow:
            rgba(14, 30, 37, 0.12) 0px 2px 2px 0px,
            rgba(14, 30, 37, 0.32) 0px 1px 8px 0px;
        }
        input {
          width: 100%;
          padding: 0.7vw 1vw;
          border: none;
          border-radius: 5vw;
          background-color: transparent;
          color: #000;

          &:focus {
            outline: none;
          }
        }
      }
    }
    #filterToggle:checked ~ .filters-form {
      display: flex;
    }
  }
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  gap: 3vw;
  padding: 1rem 4.5vw;

  .cards {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
    transition: transform 0.2s ease;
    cursor: pointer;

    .vid {
      position: relative;
      overflow: hidden;
      border-radius: 12px;

      img {
        width: 100%;
        aspect-ratio: 4 / 3;
        object-fit: cover;
        display: block;
      }

      video {
        position: absolute;
        width: 100%;
        aspect-ratio: 4 / 3;
        object-fit: cover;
        display: block;
        top: 0;
        opacity: 0;
        pointer-events: none;
      }

      .hover {
        width: 100%;
        height: 35%;
        display: flex;
        padding: 0 1vw;
        align-items: center;
        justify-content: space-between;
        position: absolute;
        bottom: -50%;
        background: linear-gradient(
          to bottom,
          transparent,
          rgba(0, 0, 0, 0.671)
        );
        transition: bottom 0.5s ease;

        h3 {
          font-size: 1.1rem;
          font-weight: 400;
          color: #fff;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }

        .hover-icon {
          display: flex;
          gap: 0.5vw;
          svg {
            width: 2.5vw;
            height: 2.5vw;
            padding: 0.7vw;
            border-radius: 50%;
            cursor: pointer;
            background-color: #fff;
          }
        }
      }
    }

    .shot-info {
      padding: 0.75rem 0.3rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      /* gap: 2vw; */

      .info {
        max-width: 60%;
        min-width: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        /* background-color:#ec5e95; */
        gap: 0.7rem;

        h3 {
          /* flex: 1; */
          min-width: 0;
          font-weight: 500;
          font-size: 0.9rem;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }
        h4 {
          border-radius: 4px;
          padding: 0 0.3vw;
          background-color: #a19191;
          color: #fff;
          font-size: 0.65rem;
          &:hover {
            background-color: #000;
          }
        }

        img {
          width: 12%;
          border-radius: 50%;
        }
      }
      .meta {
        width: 35%;
        font-size: 0.8rem;
        color: #666;
        display: flex;
        justify-content: flex-end;
        gap: 0.75rem;

        .fa-heart:hover {
          color: #ec5e95;
        }
        i {
          color: #726f6d;
        }
      }
    }

    &:hover {
      .vid {
        video {
          opacity: 1;
        }
      }
      &:has(video) .vid img {
        opacity: 0;
      }
      .hover {
        bottom: 0;
      }
    }
  }
}

.signup-prompt {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 3vw;

  a {
    background-color: #0d0c22;
    color: #fff;
    padding: 0.8rem 1.5rem;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 600;
    &:hover {
      background-color: #242731;
    }
  }
}

#scroll {
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  width: fit-content;
  padding: 3.5vw 0 2.5vw;
  ul {
    display: flex;
    align-items: center;
    gap: 3vw;
    list-style: none;
    animation: scroll-left 20s linear infinite;

    &:hover {
      animation-play-state: paused; /* Pause on hover */
    }

    .shot-card {
      flex: 0 0 auto;
      background: #fff;
      overflow: hidden;
      width: 200px;
      height: auto;

      figure {
        display: flex;
        flex-direction: column; /* stack image and caption */
        align-items: flex-start;
        img {
          width: 100%;
          display: block;
          border-radius: 12px;
          object-fit: cover;
        }
        figcaption {
          color: #000;
          padding: 0.5rem;
          font-size: 0.9rem;
          font-weight: 500;
          text-align: center;
        }
      }
    }
  }
}

#scroll {
  /* overflow-x: auto; */
  scrollbar-width: none; /* Firefox */
}

#scroll::-webkit-scrollbar {
  display: none; /* Chrome/Safari */
}
@keyframes scroll-left {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(
      calc(-50% - 16px),
      0,
      0
    ); /* move half (you duplicate items) */
  }
}
footer {
  width: 100%;
  #upper {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2vw 10vw;

    .dribb a svg {
      width: 7vw;
    }

    nav ul {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 3vw;

      a {
        font-size: 0.85rem;
        font-weight: 600;
        white-space: nowrap;
      }
    }

    #contact i {
      margin-right: 0.5vw;
      font-size: 1.2rem;
    }
  }

  #lower {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2vw 10vw;
    padding-top: 1vw;

    #terms {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      padding: 0;
      gap: 1.2vw;
      p,
      a {
        font-size: 0.85rem;
        color: #66676a;
      }
    }
    #lower-nav ul {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 1vw;
      padding: 0;

      li a {
        font-size: 0.85rem;
        font-weight: 500;
        color: #66676a;
      }
    }
  }
}
@media (max-width: 1440px) {
  .hero {
    .text {
      justify-content: center;
      h1 {
        font-size: 3.6vw;
      }
    }
    aside video {
      margin-top: 0;
    }
  }
  footer {
    #upper {
      #upper-nav ul {
        gap: 2.5vw;
      }
    }
    #lower {
      justify-content: center;
      #terms,
      #lower-nav {
        min-width: 50%;
      }
    }
  }
}
@media (max-width: 1200px) {
  header {
    padding-bottom: 0;
    nav {
      visibility: hidden;
      transform: translateX(-100%);

      ul li:hover .nav-dropdown .dropdown-menu {
        padding-left: 4vw;
        max-height: 0;
        margin: 0;
        box-shadow: none;
        border: none;
        width: 100vw;
        transform: scaleY(0);
      }
    }

    #logo-div {
      .hamburger {
        display: block;
        font-size: 2.5vw;
      }
      .logo a svg {
        width: 10vw;
      }
    }

    .login {
      #login {
        padding: 13px 25px;
      }
    }
    #menu:checked ~ #nav {
      visibility: visible;
      position: absolute;
      top: 60px;
      left: 0;
      width: 100%;
      background-color: white;
      border: 0.5px solid rgb(213, 203, 203);
      padding: 20px 30px;
      transform: translateX(0%);
      transition: all ease 0.7s;
      ul {
        width: 100%;
        flex-direction: column;
        align-items: flex-start;

        li {
          width: 100%;
          padding: 15px 0;
          font-size: 20px;
          font-weight: 700;
          background-color: white;

          .nav-dropdown {
            input[type="checkbox"]:checked ~ .dropdown-menu {
              display: block;
              max-height: fit-content;
              padding-left: 4vw;
              position: static;
              background: #ffffff;
              width: 100%;
              transform: scaleY(1);
            }

            li {
              overflow: hidden;
            }
          }
          .nav-list::after {
            margin-left: 8px;
          }
        }
      }
    }
  }

  .hero {
    flex-direction: column;
    height: auto;
    padding-top: 2vh;

    .text {
      width: 100%;
      align-items: center;
      gap: 16px;
      padding-top: 0;

      h1 {
        font-size: 4.2vw;
        transform: scaleX(112%);
        margin: 0;
        text-align: center;
      }
      h2 {
        font-size: 16px;
        width: 80%;
        text-align: center;
        font-weight: 400;
      }
      #shots {
        padding: 0 2vw;
        align-items: center;
        gap: 1.5rem;
        #hero-nav {
          display: flex;
          justify-content: center;

          button {
            padding: 1.2vw 2vw;
            border-radius: 5vw;
            border: 0.8px solid rgb(217, 210, 210);
            margin-right: 0.9vw;
            gap: 1vw;
          }
        }

        .search {
          padding: 5px 8px;
          border: none;
          border-radius: 50px;
          form {
            input {
              padding-right: 20%;
            }
            input::placeholder {
              font-size: 1.7vw;
              padding-left: 2vw;
            }
            #submit {
              padding: 1.8vw;
              i {
                font-size: 16px;
              }
            }
            #reset {
              right: 12%;
              #x {
                color: rgb(62, 60, 60);
                font-size: 1rem;
              }
            }
          }
        }

        #pop {
          gap: 4vw;
          justify-content: center;
          padding-right: 15px;
          ul {
            li {
              padding: 7px 16px;
              a {
                font-size: 12px;
                flex-shrink: 0;
                font-weight: 400;
              }
            }
          }
        }
      }
    }

    aside {
      display: none;
    }
  }

  #navigation {
    padding: 0 4% 3%;
    .category-nav {
      flex-wrap: wrap;

      .pop-dropdown {
        summary {
          padding: 8px 12px;
          border-radius: 5px;
          border: 1px solid rgb(255, 255, 255);
          gap: 16px;
          p {
            font-size: 14px;
          }
          span i {
            font-size: 10px;
          }
        }
        #pop-list {
          padding: 1rem;
          gap: 0.5rem;
          margin-top: 0.8rem;
          border: 1px solid whitesmoke;
          border-radius: 5px;
          box-shadow:
            rgba(50, 50, 93, 0.25) 0px 2px 5px -1px,
            rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
          li {
            width: 9rem;
            font-size: 12px;
            font-weight: 400;
            padding: 0.8rem 0.5rem;
            &:hover {
              background-color: white;
              box-shadow:
                rgba(60, 64, 67, 0.3) 0px 1px 2px 0px,
                rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
            }
          }
          #pop-first {
            flex-direction: row;
            span i {
              font-size: 11px;
            }
          }
        }
      }
      #ul-wrapper {
        flex: 1 0 100%;
        order: 2;
        overflow: auto hidden;
        white-space: nowrap;
        scroll-behavior: smooth;
        scrollbar-width: none;

        #lists {
          text-align: center;
          padding-top: 2.5rem;
          padding-bottom: 0.1rem;
          gap: 25px;

          li a {
            font-size: 14px;
            padding: 4px 12px;
          }
        }
      }
      #filter {
        padding: 8px 15px;
        font-size: 13px;
        font-weight: 400;
        gap: 8px;
        border: 1px solid whitesmoke;
      }
      .filters-form {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.5rem;
        margin-top: 2rem;

        .filter-group {
          gap: 0.7rem;
          width: 100%;

          label {
            font-size: 0.9rem;
            font-weight: 500;
          }

          #timeframe {
            summary {
              padding: 1.2rem 1.1rem;
              border-radius: 0.6rem;
              border: #fbe0f7 0.5px solid;
              box-shadow:
                rgba(0, 0, 0, 0.1) 0px 0px 5px 0px,
                rgba(0, 0, 0, 0.1) 0px 0px 1px 0px;
            }
            ul {
              width: 100%;
              padding: 1rem;
              background-color: white;
              z-index: 10;

              #pop-first {
                display: flex;
                align-items: center;
                justify-content: space-between;
                font-weight: 600;
                span i {
                  font-size: 1rem;
                }
              }
              li {
                width: 100%;
                display: flex;
                padding: 0.8rem;
                &:hover {
                  border: none;
                  background-color: transparent;
                  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
                }
                a {
                  font-weight: 600;
                }
              }
            }
          }

          .input-with-icon {
            padding: 1rem 1.5rem;
            gap: 1rem;
            border-radius: 0.6rem;
            box-shadow:
              rgba(0, 0, 0, 0.1) 0px 0px 5px 0px,
              rgba(0, 0, 0, 0.1) 0px 0px 1px 0px;
          }
        }
      }
    }
  }

  footer {
    #upper {
      #upper-nav ul {
        gap: 2vw;
      }
    }
  }
}
@media (max-width: 1024px) {
  footer {
    padding: 2rem;
    padding-bottom: 4vw;

    #upper {
      flex-direction: column;
      padding: 1vw 0;
      gap: 1.2rem;

      .dribb a svg {
        width: 15vw;
      }
      #upper-nav {
        width: 100%;
        ul {
          width: 100%;
          display: flex;
          justify-content: center;
          flex-wrap: wrap;
          column-gap: 16px;
          row-gap: 2vw;
          li a {
            font-size: 14px;
          }
        }
      }

      #contact i {
        font-size: 3.5vw;
      }
    }

    #lower {
      flex-direction: column;
      padding: 2rem 0;
      padding-bottom: 0;
      line-height: 20px;
      row-gap: 8px;

      #terms {
        justify-content: center;
        flex-wrap: wrap;
        column-gap: 3vw;
        gap: 1.3rem;
        row-gap: 0.8vw;
        p {
          font-size: 14px;
        }
        a {
          font-size: 14px;
        }
      }
      #lower-nav ul {
        gap: 10px;
        justify-content: center;
        li a {
          font-size: 14px;
          font-weight: 500;
        }
      }
    }
  }
}
@media (max-width: 768px) {
  body {
    font-size: 16px;
  }
  main {
    /* margin-top: 11vw; */
    padding-bottom: 8.2vw;
    .signup-prompt {
      margin-top: 2rem;
    }
  }
  header {
    padding: 0 16px;
    column-gap: 10px;

    #logo-div {
      .hamburger {
        display: block;
        font-size: 3.2vw;
      }
      .logo a svg {
        width: 13vw;
      }
    }

    .login {
      #signup {
        display: none;
      }
      #login {
        padding: 11px 25px;
      }
    }
  }

  .hero {
    padding-top: 0;
    .text {
      #shots {
        #hero-nav {
          button {
            padding: 1.6vw 2vw;
          }
        }
        .search {
          form {
            #reset {
              right: 16%;
            }
            input::placeholder {
              font-size: 2.3vw;
              padding-left: 2vw;
            }
          }
        }
      }
    }
  }
}

@media (max-width: 575.98px) {
  /* styles for small phones */
  main {
    margin-top: 11vw;
    padding-bottom: 8.2vw;
    .signup-prompt {
      margin-top: 2rem;
    }
  }
  header {
    #logo-div {
      .hamburger {
        display: block;
        font-size: 4.2vw;
      }
      .logo a svg {
        width: 18vw;
      }
    }

    .login {
      #login {
        padding: 10px 24px;
      }
    }
  }

  .hero {
    padding: 4vw;

    .text {
      gap: 1.2rem;
      padding-top: 2vw;

      h1 {
        font-size: 7vw;
      }
      h2 {
        line-height: 1.3;
        width: 100%;
        font-size: 15px;
      }
      #shots {
        padding: 5vw 2vw;
        #hero-nav {
          button {
            padding: 1.8vw 2.6vw;
            margin-right: 8px;
          }
        }

        .search {
          form {
            input::placeholder {
              font-size: 2.75vw;
              padding-left: 2vw;
            }

            #submit {
              padding: 3vw;
              i {
                font-size: 14px;
              }
            }
          }
        }

        #pop {
          /* padding-left: 8vw; */
          justify-content: space-between;
          ul {
            li {
              border: 0.1px solid rgb(217, 210, 210);
            }
          }
        }
      }
    }
  }

  footer {
    #upper {
      .dribb a svg {
        width: 24vw;
      }
      #contact i {
        font-size: 6vw;
      }
    }
  }
}

@media (max-width: 360px) {
  body {
    font-size: 12px;
  }
  main {
    margin-top: 20vw;
  }
  header {
    padding-top: 0;
    #logo-div {
      .logo a svg {
        width: 23vw;
      }
      .hamburger {
        display: block;
        font-size: 4.9vw;
      }
    }

    .login {
      #login {
        padding: 2vw 6vw;
        font-size: 4vw;
      }
    }
  }

  .hero {
    .text {
      h2 {
        text-align: center;
        font-size: 3.5vw;
        width: 100%;
        word-break: break-word;
      }
    }
  }
  footer {
    #lower {
      #lower-nav {
        width: 100%;
        ul {
          width: 100%;
          flex-wrap: wrap;
          row-gap: 2px;
          li a {
            font-size: 13px;
            font-weight: 500;
          }
        }
      }
    }
  }
}
