/* Basic Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Body */
body {
  font-family: 'Oswald', sans-serif;
  background-color: #fff;
  color: #434343;
  overflow-x: hidden;
}

/* Hide scrollbar for Chrome, Safari and Edge */
body::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for Firefox */
body {
  scrollbar-width: none;
}

/* Hide scrollbar for IE and old Edge */
body {
  -ms-overflow-style: none;
}

/* Header / Navbar */
header {
  position: fixed;
  top: 0;
  width: 100vw;
  padding: 40px 2rem 40px 2rem;
  z-index: 1000;
  mix-blend-mode: difference;
}

header nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: transparent;
  
}

header nav img.logo {
  height: 30px;
  width: auto;
  display: block;
}

.logo-link img {
  filter: invert(1);
}

.logo-link,
.contact-link {
  position: relative;
  display: inline-block;
  overflow: hidden;
  text-decoration: none;
  color: #b6b6b6;
  font-size: 25px;
  font-family: 'Neue Haas Unica W1G', sans-serif;
  font-weight: 300;
  letter-spacing: 0.02em;
}

.logo-link:hover {
  opacity: 0.7;
}

.nav-text {
  display: inline-block;
  transition: transform 0.45s cubic-bezier(0.76, 0, 0.24, 1);
}

.nav-text-hover {
  position: absolute;
  top: 100%;
  left: 0;
}

.contact-link:hover .nav-text {
  transform: translateY(-100%);
}

.contact-link:hover .nav-text-hover {
  transform: translateY(-100%);
}

/* Footer */
/* --------------------------
   FOOTER
--------------------------- */
footer {
  bottom: 0;
  width: 100%;
  background-color: #1D3EFF;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 22px 22px;
  color: #ffffff;
  z-index: 100;
  font-size: 16px;
}

.footer_index {
  position: fixed;
}

.footer-left {
  display: flex;
  align-items: baseline;
  gap: 6px;
}

.footer-tagline {
  display: none;
  font-family: 'Neue Haas Unica W1G', sans-serif;
  font-weight: 400;
  font-size: 16px;
  opacity: 0.5;
}

.footer-name {
  font-family: 'Oswald', sans-serif;
  font-weight: 600;  /* Semibold */
  font-size: 24px;
}


.footer-right {
  display: flex;
  gap: 20px;
}

.footer-right a img {
  width: 24px;
  height: 24px;
  display: block;
  transition: transform 0.3s ease, opacity 0.3s ease;
  filter: brightness(0) invert(1); /* Makes SVG white */

}

.footer-right a:hover img {
  transform: scale(1.1);
}

/* Hover Preview */
#hover-preview {
  position: fixed;
  bottom: 7rem;
  right: 2rem;
  width: 320px;
  pointer-events: none;
  opacity: 0;
  transition:
    opacity 0.5s ease,
    transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);
  z-index: 90;
}

#hover-preview.visible {
  opacity: 1;
  transform: translateY(0) scale(1);
}

#hover-preview img {
  width: 100%;
  height: auto;
  display: block;
  transition:
  opacity 0.5s ease,
  transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* When user reaches the bottom */
.project-footer.is-static {
  position: static;
}

/* Projects Section */


#projects {
  width: 100vw;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  padding: 120px 2rem 100px; /* leave room for header/footer */
}

.Index-background-image{
  display: none;
  position: absolute;
  width: 110%;
  top: 24%;
  z-index: -100;
}

.project-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.project-link {
  text-decoration: none;
  /* width: 100%; */
  display: flex;
  justify-content: center;
  transform-style: preserve-3d;

}

.project-list h1 {
  line-height: 6rem;
  font-size: clamp(1.8rem, 8vw, 4.5rem);
  font-weight: 400;
  text-align: center;
  cursor: pointer;
  transition: filter .5s ease, color 0.3s ease;
}

.project-link:hover h1 {
  color: #434343;
  filter: blur(3px);
}

.Blue h1 {

  color: #1D3EFF;

}

.Black h1 {

  color:#434343;

}

/* Prep for Looping Projects Section */

.scroll-container {
  width: 100%;
  perspective: 1500px;
}

.project-list {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Contact Page */

.contact_page{

  width: 100vw;
  overflow-x: hidden;
}

.contact-container {

  height: 100vh;
  display: flex;
  gap: 5vh;
  flex-direction: column;
  justify-content: center;
  padding: 0 2rem;

}

.contact-container h1{

  font-size: 2.5rem;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
  color: #1D3EFF;

}

.contact-container h3{

  font-size: 1.7rem;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;

}

.contact-container p{

  font-family: "neue-haas-unica", sans-serif;
  font-weight: 200;
  font-style:normal;
  color: #434343;
  font-size: 1.2rem;
  width: 100%;

}

.contact-container a{

  font-family: "neue-haas-unica", sans-serif;
  font-weight: 200;
  font-style:normal;
  color: #434343;
  text-decoration: none;
  transition: opacity 0.3s ease-in;
  display: inline-block;

}

.contact-container a:hover{

  opacity: 0.7;
  transition: opacity 0.3s ease-in;
  color: #1D3EFF;

}

.Location {

  position: absolute;
  bottom: 5vh;
}

.absolute-logo {
  position: absolute;
  left: 90vh;
}

.absolute-logo img{
  height: 100vh;
  display: none;
}

.contact-interactive {
  position: relative;
  display: none;
  flex-wrap: wrap;
  gap: 4vw;
  transition: ease;
}

.float-item {

  display: inline-block;
  padding: 3vh 3vw;
  position: absolute;
  transition: transform 0.2s ease-out;
  cursor: grab;
  width: fit-content;
  flex: 0 0 auto;
  cursor: grab;
  user-select: none;

}



.float-item h2{

  font-size: 30px;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
  
}

.Outline  {

  border: #1D3EFF 1px solid;
  color: #1D3EFF;

}

.Fill {

  background-color: #1D3EFF;
  color: #fff;

}

.Spacing {

  height: 0vh;

}

@media (min-width: 1024px) {

  header {
    padding: 22px 2rem 22px 2rem;
  }

  header nav img.logo {
    height: 24px;
  }

  .project-list h1 {
  line-height: 1.8;
  }

  .Index-background-image{
  display: block;
}

  .contact-link {
    font-size: 1.1rem;
  }

  .footer-tagline {
    display: block;
    font-family: 'Neue Haas Unica W1G', sans-serif;
    font-weight: 400;
    font-size: 16px;
    opacity: 0.5;
  }

  .contact-interactive {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 4vw;
    padding: 5vh 2rem;
    height: 50vh;
    transition: ease;
  }

  .absolute-logo img{
    display: block;
  }


  .contact-container h1{

    font-size: 40px;

  }

  .contact-container h3{

    font-size: 20px;

  }

  .contact-container p{

    font-size: 16px;

  }

  .contact-container a{

    font-family: "neue-haas-unica", sans-serif;
    font-weight: 200;
    font-style:normal;
    color: #434343;
    text-decoration: none;
    transition: opacity 0.3s ease-in;
    display: inline-block;

  }

  .contact-container a:hover{

    opacity: 0.7;
    transition: opacity 0.3s ease-in;
    color: #1D3EFF;

  }

  .Spacing {

    height: 5vh;

  }
}
