:root {
  --primary-color: #c471ed;
  --secondary-color: #12c2e9;
}

/* make scrollbar invisible */
::-webkit-scrollbar {
    width: 0px;
    background: transparent;
}

body {
  font-family: "Azo Sans", sans-serif;
  font-weight: normal;
  font-style: normal;
  /* Schesaplana Mountain in Suisse/Austria by Marius Partl */
  /* https://unsplash.com/photos/0HfVIkoXZhg */
  background: linear-gradient( rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7) ), url('../img/background.webp'); 
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.container {
  height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
}

.section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
  width: 100%;
}

.section#home {
  margin-top: -100px;
}

.title, .subtitle {
  font-family: "Azo Super", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.line {
  width: 100%;
  margin: 0;
  padding: 0;
}

@keyframes t{
  90%,100% {width:100%}
}

.row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  padding: 0;
}

.col {
  flex: 1;
  padding: 0;
  margin: 0 2.5rem;
}

.col-md-2 {
  max-width: 20%;
}

.col-md-4 {
  max-width: 40%;
}

.col-md-6 {
  max-width: 60%;
}

.col-md-10 {
  max-width: 80%;
}

.logo > img {
  border-radius: 50%;
  border: var(--primary-color) .5rem solid;
  padding: .5rem;
  width: 15rem;
  height: 15rem;
  transition: all .5s ease;
}

.logo > img:hover {
  transform: scale(1.1);
}

.title {
  font-size: 10rem;
  background-image: linear-gradient(45deg, var(--primary-color), var(--secondary-color));

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.subtitle {
  font-size: 5rem;
  font-weight: 300;
  margin-bottom: 2rem;

  background-image: linear-gradient(45deg, var(--primary-color), var(--secondary-color));

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

.paragraph {
  font-size: 1.5rem;
  font-weight: 300;
  width: 50%;
  color: #fff;
  text-align: justify;
}

#contact .paragraph {
  width: 100%;
}

.underline {
  text-align: center;
  padding-bottom: 0.5rem;
  background: linear-gradient(45deg, var(--primary-color), var(--secondary-color)) left bottom no-repeat;
  background-size: 100% 0.5rem;
}

strong {
  color: var(--secondary-color);
}

ul {
  display: inline-flex;
  list-style: none;
  padding-left: 0;
  margin: 0;
}

ul li {
  padding-left: 0;
  padding-right: 2rem;
}

.social {
  font-size: 5rem;
  margin-top: -7.5rem;
}

.social a {
  color: var(--secondary-color);
  margin: 0 .35rem;
}

.social a:hover {
  color: var(--primary-color);
}

.icons {
  margin: 0 .5rem;
  color: var(--secondary-color);
}

#contact {
  text-align: center;
} 

footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  font-size: 1rem;
  color: var(--secondary-color);
  text-align: center;
  font-weight: bold;
  backdrop-filter: blur(5px);
  padding: 1rem;
}

/*=================================================================*/
/*                        Social buttons                           */
/*=================================================================*/

.social_button {
  border: none;
  border-radius: 4px;
  color: #fff;
  display: inline-flex;
  cursor: pointer;
  font-size: 1rem;
  padding: 0.5rem 1.5rem;
  position: relative;
  transition: none;
  text-decoration: none;
  justify-content: center;
  align-items: center;
  background: rgba(26, 26, 26, 1);
  box-shadow: 0 4px var(--secondary-color);
  margin: 0 .5rem;
  font-weight: bold;
}

.social_button:hover {
  box-shadow: 0 2px var(--secondary-color);
  color: rgba(255, 255, 255, .6);
  top: 2px;
}

.social_button:active {
  box-shadow: none!important;
  top: 4px;
}

/*=================================================================*/
/*                           Portfolio                             */
/*=================================================================*/

.filters {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-bottom: 2rem;
}

.filters ul {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
}

.filters ul li {
  padding: 0;
  margin: 0 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  color: var(--secondary-color);
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  transition: all .5s ease;
}

.filters ul li:hover {
  color: var(--primary-color);
}

.arrows {
  display: none;
  color: var(--secondary-color);
}

.portfolio-items {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 2rem;
}

.item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 25%;
  height: 100%;
  padding: 0;
  margin: 0;
  transition: all .5s ease;
}

.item:hover {
  transform: scale(1.1);
}

.item img {
  width: 50%;
  border-radius: 100%;
  transition: all .5s ease;
  margin-bottom: 2rem;
}

.item-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  transition: all .5s ease;
}

.item-box {
  display: flex;
  justify-content: center;
}

.item-title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
  text-transform: uppercase;
}

.item-text {
  font-size: .8rem;
  font-weight: 300;
  color: #fff;
  text-transform: uppercase;
}

.item-link {
  font-size: 1rem;
  font-weight: 300;
  color: var(--secondary-color);
  text-decoration: none;
  text-transform: uppercase;
  transition: all .5s ease;
  margin-left: .5rem;
}

.item-link:hover {
  color: var(--primary-color);
}

.web, .discord {
  /* backdrop-filter: blur(5px); */
  background: #262626;
  box-shadow: 0 4px var(--secondary-color);
  color: #fff;
  border-radius: 2rem;
  padding: 1rem;
  margin: 0;
  text-align: center;
  font-size: 1rem;
  font-weight: bold;
  transition: all .5s ease;
}

/*=================================================================*/
/*                       Responsive design                         */
/*=================================================================*/

@media screen and (max-width: 1200px) {
  .section#portfolio {
    height: auto;
  }

  .row {
    flex-direction: column;
  }

  .col {
    flex: 1;
    margin: 0;
    text-align: center;
  }

  .col-md-2 {
    max-width: 100%;
  }

  .col-md-4 {
    max-width: 100%;
  }

  .col-md-10 {
    max-width: 100%;
  }

  .logo > img {
    width: 10rem;
    height: 10rem;
    margin-bottom: 1rem;
  }

  .logo > img:hover {
    transform: scale(1);
  }

  .title {
    font-size: 4rem;
  }

  .subtitle {
    font-size: 3rem;
  }

  #about .paragraph {
    font-size: 1rem;
  }

  .paragraph {
    width: 100%;
    font-size: 1.2rem;
  }

  ul li {
    padding-right: 0.25rem;
  }

  .social {
    font-size: 2rem;
    margin-top: -2rem;
  }

  footer {
    font-size: 0.7rem;
  }

  .portfolio-items {
    flex-wrap: nowrap;
    overflow-x: auto;
    max-width: 100%;
  }

  .arrows {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    z-index: 10;
  }

  .arrow-left {
    position: absolute;
    left: 0;
  }

  .arrow-right {
    position: absolute;
    right: 0;
  }

  @keyframes arrow-right {
    0% {
      transform: translateX(0);
    }
    50% {
      transform: translateX(.5rem);
    }
    100% {
      transform: translateX(0);
    }
  }

  @keyframes arrow-left {
    0% {
      transform: translateX(0);
    }
    50% {
      transform: translateX(-.5rem);
    }
    100% {
      transform: translateX(0);
    }
  }

  .arrow-left {
    animation: arrow-left 1s infinite;
  }

  .arrow-right {
    animation: arrow-right 1s infinite;
  }

  .item {
    width: 300px;
    height: auto;
    flex-shrink: 0;
    /* background: none; */
    /* backdrop-filter: blur(10px); */
  }

  .web, .discord {
    box-shadow: none;
  }

  .item:hover {
    transform: scale(1);
  }

  .item img {
    margin-bottom: 2rem;
  }
}