@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&family=Roboto:wght@100;300;400;500;700;900&family=Source+Sans+Pro:wght@200;300;400;600;700;900&display=swap');

/* INITIALS */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
  position: relative;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: #fcfbff;
  display: flex;
  justify-content: center;
}

body::-webkit-scrollbar {
  width: 6px;
}
body::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: lightgray; 
}

main {
  width: 1120px;
}

/* HEADER */

header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 5px 20px;
  height: 80px;
  position: fixed;
  top: 0;
  z-index: 999;
  background-color: #fcfbff;
  box-shadow: 0 1px 0 #ececec;
  max-width: 1120px;
  width: 100%;
}

.nav-list {
  display: flex;
  gap: 30px;
}

a {
  cursor: pointer;
  text-decoration: none;
  color: black;
}

/* HOME */

section#home {
  height: calc(100vh + 80px);
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 5px 20px;
  width: 100%;
}

.home-info {
  width: 50%;
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: center;
  text-align: justify;
}

.home-info button {
  border: none;
  width: 150px;
  padding: 10px;
  background-color: #0400ff;
  color: white;
  font-size: 18px;
  cursor: pointer;
  opacity: 0.8;
  border-radius: 5px;
}

.home-info button a{
  color: white;
}

.home-info .whatsapp {
  background-color: #25d366;
}

.home-info .linkedin {
  background-color: #0e76a8;
}

.home-info .github {
  background-color: #000000d2 ;
}

.home-info button:hover{
  opacity: 1;
}

.home-img {
  width: 30%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.home-img img {
  width: 200px;
  height: 200px;
  animation: float 5s ease-in-out infinite;
  box-shadow: 0 10px 10px;
  border-radius: 50%;
}

@keyframes float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-30px);
  }
}

/* PROJECTS */

section#projects {
  height: calc(100vh + 80px);
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
}

.project-img {
  width: 50%;
}

.project-img img {
  box-shadow: 0 1px 2px #0003;
  object-fit: cover;
  width: 80%;
}

.project-info {
  width: 50%;
  display: flex;
  flex-direction: column;
  text-align: start;
}

.swiper {
  width: 95vw;
  height: 500px;
}

.swiper-slide {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 30px;
}

.swiper-button-next, 
.swiper-button-prev {
  color: #7700ff;
}

.swiper-pagination-bullet-active {
  background-color: #7700ff ;
}


/* CONTACTS */

#contact {
  height: calc(100vh + 80px);
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 30px;
}

#contact form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 400px;
  width: 100%;
  padding: 5px 20px;
}

input, textarea, button {
  box-shadow: 0 1px 2px #ddd;
  border: none;
  padding: 10px;
  border-radius: 5px;
  outline: none;
  resize: none;
}

#contact form button {
  background-color: #24292e;
  color: white;
  font-size: 18px;
  cursor: pointer;
  opacity: 0.9;
}

#contact form button:hover{
  opacity: 1;
}

/* FOOTER */

footer {
  box-shadow: 0px -1px 0px 0px #ececec;
  padding: 50px;
  text-align: center;
}

/* MOBILE */

@media (max-width: 450px) {
  header {
    justify-content: center;
  }
  
  .logo {
    display: none;
  }

  section#home {
    flex-direction: column-reverse;
    justify-content: center;
  }

  .home-info, .home-img {
    width: 100%;
    padding: 10px;
  }

  .home-info button {
    width: 275px;
  }

  .swiper-slide {
    flex-direction: column-reverse;
    gap: 30px;
  }

  .project-img {
    width: 100%;
  }
 
  .project-info {
    width: 80%;
  }

  .buttons-contact {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
}