* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-decoration: none;
  list-style: none;
}

:root { /*default theme*/
    --primary-color: #f0f0f0;
    --secondary-color: #030303;
    --tertiary-color: #E3E3E3;
    --quartenary-color: #7eff00;
    --transparent-color: transparent; 
    
    --gradient-background: #FFFFFF;
    --gradient-start: rgba(242, 255, 86, 0.8);
    --gradient-mid: rgba(126, 255, 0, 0.8);
    --gradient-end: rgba(0, 190, 86, 0.8);
    --corner-gradient: 47deg;
    
    /*ex: italic bold 16px Arial, sans-serif;*/
    --title-font: normal 700 2rem "Pathway Extreme", sans-serif;
    --title-2-font: normal 700 1.7rem "Pathway Extreme", sans-serif;
    --title-3-font: normal 700 1.35rem "Pathway Extreme", sans-serif;
    --subtitle-font: normal 400 1.2rem "Roboto", sans-serif;
    --default-font: normal 400 1rem "Roboto", sans-serif;
    
    --title-font-weight: 600;
    --subtitle-font: 600;
    --default-font-weight: 400;
    
    --icon-size: 0.7rem;
    --standard-spacing: 1.2rem;
}

::selection {background: var(--quartenary-color); color: var(--secondary-color);}

h1{font: var(--title-font);line-height: 1;}
h2{font: var(--title-2-font); line-height: 1;}
h3{font: var(--title-3-font); line-height: 1;}
p {color: var(--tertiary-color); line-height: 1.4;}
time{color: var(--primary-color);}

h1, h2, h3, h4, h5 {
  color: var(--primary-color); overflow-wrap: break-word;
  font-optical-sizing: auto; font-variation-settings: "wdth" 100;
}
p, a, time {
  font: var(--default-font);
  font-optical-sizing: auto; font-variation-settings: "wdth" 100;
}
a, span {color: var(--quartenary-color);}

/*page structure*/
body {
  background-color: var(--secondary-color);
  display: flex; flex-direction: column; align-items: center;
  margin: 0; padding: 0;
}

header {
  display: flex; flex-direction: column;
  width: 100%; height: auto; max-width: 600px;
  position: relative; z-index: 1110; 
}

.header-nav {
  display: flex; flex-direction: row; justify-content: space-between; align-items: center;
  padding: 1rem; width: 100%;
  
  .header-nav-pc {
    display: none;
  }
}

#name a{
  font: var(--title-3-font);
}

main{
  width: 100%; max-width: 800px;
  display: flex; flex-direction: column; gap: 6rem;
}

section{margin: 0 var(--standard-spacing);}
#hero {
  margin: 0;
  width: 100%;
  height: 900px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  
  .content {
    gap: 2rem;
    width: 100%;
    display: flex; flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    
    .perfil {
      width: 100%;
      max-width: 320px;
      background-color: #121212;
      border-radius: 0.8rem;
      padding: 3rem 2rem;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 2rem;
      text-align: center;
      
      #perfil-image {
        width: 9rem; max-width: 12rem;
        height: 9rem; max-height: 12rem;
        animation: flutuando 3s ease-in-out infinite;
        border-radius: 30%;
        background-color: var(--accent-color);
        background-image: 
          url(https://gunner-black.github.io/kaua-sales/assets/img/perfil.png), 
          linear-gradient(120deg, rgba(207, 255, 83, 1), rgba(126, 255, 0, 0.9));
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
      }
      
      #perfil-name {
        display: flex;
        flex-direction: column;
        gap: 1.2rem;
        align-items: center;
        
        h1 {
          color: var(--quartenary-color);
        }
        p {
          text-align: center;
          text-justify: inter-word;
        }
      }
      
      #perfil-links {
        display: flex;
        flex-direction: row;
        gap: 2rem;
        
      }
    }
    .presentation {
      width: 100%;
      max-width: 320px;
      padding: 2rem;
      display: flex;
      flex-direction: column;
      gap: 2rem;
      
      #presentation-links {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 2rem;
        a {
          text-align: center;
          width: 200px;
          display: block;
          padding: 0.5rem;
          border-radius: 0.8rem;
          border: solid 1px var(--primary-color);
          color: var(--primary-color);
        }
        #btn-accent {
          border: solid 1px var(--quartenary-color);
          background-color: var(--quartenary-color);
          color: #000;
          font-weight: bold;
        }
      }
      #presentation-interests {
        margin-top: 1rem;
        display: flex;
        flex-direction: column;
        text-align: left;
        width: 100%;
        
        p {
          color: #737373;
          font-weight: bold;
        }
        
        #line {
          height: 1px;
          width: 100%;
          background-color: #121212;
          margin: 1rem 0rem;
        }
        
        .interests {
          display: flex;
          flex-direction: row;
          flex-wrap: wrap;
          align-items: center;
          gap: 0.8rem;
          
          span {
            display: block;
            width: auto;
            padding: 0.5rem 0.7rem;
            border-radius: 0.8rem;
            color: #737373;
            background-color: #121212;
          }
        }
      }
    }
  }

  

  /*
  position: relative;
  overflow: hidden;
  min-height: 80vh; 
  display: flex;
  align-items: center;
  
  .hero-content {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 500px;
    padding: 1rem 1.2rem;
    border-radius: 0.8rem;
    background-color: transparent;
    background-image: linear-gradient(
      120deg,
      rgba(126, 255, 0, 0.51),
      rgba(15, 15, 15, 0.7)
    );
    backdrop-filter: blur(8px);
    display: flex;
    flex-direction: column;
    h1 {
      font-size: 2rem;
    }
    .at {
      margin-bottom: 0.8rem;
    }
  }
  .k-shape-container {
    position: absolute;
    top: 0;
    right: 0;
    width: 80%;
    height: 100%;
  }
  .k-geometric-mask {
    position: absolute;
    width: 100%;
    height: 100%;
    clip-path: polygon(
      5.12% 3.83%, 
      40.93% 3.83%, 
      40.93% 39.3%, 
      62.75% 3.83%, 
      93.46% 3.83%, 
      71.37% 50.68%, 
      93.46% 97.52%, 
      62.75% 97.51%, 
      40.93% 62.04%, 
      40.93% 97.5%, 
      5.12% 97.51%);
  }
  .k-background-image {
    width: 100%;
    height: 100%;
    background-image: url(/assets/img/profile.jpg);
    background-size: cover;
    background-position: center; /* clip-path: inherit; */ 
    /*opacity: 0.8;
  }
  */
}
@keyframes flutuando {
        0% {transform: translateY(-10px)}
        50% {transform: translateY(10px)}
        100% {transform: translateY(-10px)}
}

#about {
  display: flex; flex-direction: column; align-items: center;
  margin-bottom: 2rem; gap: var(--standard-spacing);
  .text {
    display: flex;
    flex-direction: column;
    width: 100%; max-width: 600px;
    gap: 1.2rem;
    p {
      line-height: 1.4;
    }
  }
}

#training {
  display: flex; flex-direction: column; 
  gap: 3rem;
  .title {
    width: 100%;
    max-width: 320px;
  }
}

#projects {
  display: flex; flex-direction: column; align-items: center;
  gap: var(--standard-spacing);
  
  .title {
    width: 100%;
    max-width: 320px;
  }
  
  .container {
    width: 100%;
    max-width: 600px;
  }
}

.cards {
  display: flex; 
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 100%; 
  margin: 1rem 0; 
  gap: 2rem;
  z-index: 10;
}

article {
  width: 100%;
  max-width: 320px;
  height: 400px;
  display: flex;
  align-items: center; justify-content: center;
  
  a {
    padding: 1rem 1rem 2rem 1rem;
    background-color: #B4B9F3;
    width: 100%; height: 100%;
    display: flex;
    gap: 1rem;
    flex-direction: column;
    align-items: flex-start;
    align-content: center;
    justify-content: flex-start;
    background-color: #121212;
    border-radius: 0.8rem;
    transition: top 0.2s 0.2s ease-out,  transform 0.2s linear;
  }
  a:hover {
    translateY: -3px;
    transform: scale(1.02);
  }
  
  figure {
    width: 100%; height: 160px;
    border: none;
    border-radius: 0.8rem;
    overflow: hidden;

    img {
      border: none;
      display: block; 
      width: 100%; height: 100%; 
      object-fit: cover;
    }
  }
  
  .tags {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    
    span {
      display: block;
      padding: 0.3rem 0.5rem;
      border-radius: 0.4rem;
      font-size: 0.8rem;
      background-color: var(--secondary-color);
    }
  }
  
  .text {
    width: 100%;
    
    p{ 
      overflow: hidden;
    }
    
    p, h3, a {
      color: var(--primary-color);
    }
  }
}

footer{
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%; 
  max-width: 800px;
  
  #nav {
    padding: 3rem;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    
    ul {
      gap: 1rem;
      li {
        width: 300px;
        max-width: 600px;
        border-bottom: 1px solid var(--quartenary-color);
        margin-bottom: 1rem;
        padding: 1rem;
      }
    }
  }
  #social-media {
    margin-bottom: 3rem;
    .container {
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: 1rem;
      justify-content: space-between;
    }
  }
  
  .cookies {
    width: 100%;
    display: flex;
    flex-direction: column;
    p {
      width: 100%;
      max-width: 500px;
      padding: 2rem;
      text-align: center;
      a {
        color: var(--quartenary-color);
      }
    }
  }
  
  .link {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    li a{
      color: var(--quartenary-color);
    }
  }
  
  #copyright {
    width: 100%;
    padding: 3rem;
    text-align: center;
    p {font-weight: bold;}
  }
}

/*components*/
/*hamburguer*/
.toggle-menu {
  background-color: var(--transparent-color);
  border: none; outline: none; 
  cursor: pointer; pointer-events: initial;
  display: inline-block; position: relative;
  float: right; vertical-align: middle;
  height: 35px; width: 35px; padding: 0;
  z-index: 1110; 
}
.toggle-menu span {
  background-color: var(--primary-color);
  content: "";
  display: block; position: absolute; height: 2px; width: 26px;
  left: calc(50% - 13px ); top: calc(50% - 1px );
  transform-origin: 50% 50%;
  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out,  transform 0.2s linear;
}
.toggle-menu span:before, .toggle-menu span:after {
  background-color: var(--primary-color);
  content: "";
  display: block; position: absolute; height: 2px; width: 26px;
  transform-origin: 50% 50%;
  transition: background-color 0.2s ease-in-out, top 0.2s 0.2s ease-out,  transform 0.2s linear;
}
.toggle-menu span:before {top: 7px;}
.toggle-menu span:after {top: -7px;}
.toggle-menu.active span {background-color: transparent; transition: background 0.2s ease-out;}
.toggle-menu.active span:before, .toggle-menu.active span:after {transition: top 0.2s ease-out, transform 0.2s 0.2s ease-out;}
.toggle-menu.active span:before {top: 0; transform: rotate3d(0, 0, 1, -45deg);}
.toggle-menu.active span:after {top: 0; transform: rotate3d(0, 0, 1, 45deg);}

#menu { /*menu style*/
  background: var(--secondary-color); opacity: 0;
  color: var(--primary-color);
  height: 100%; width: 100%; left: 0; top: 0;
  overflow: hidden; visibility: hidden;
  position: fixed; text-align: center;
  transition: all 0.7s ease-in-out;
  z-index: 1100;
}
#menu.open {opacity: 1; visibility: visible;}
/*animation*/
#menu.open li {animation-duration: 1.0s; animation-fill-mode: both; animation-name: fadeInUp;}
#menu.open li:nth-child(1) {animation-delay: 0.1s;}
#menu.open li:nth-child(2) {animation-delay: 0.2s;}
#menu.open li:nth-child(3) {animation-delay: 0.3s;}
#menu.open li:nth-child(4) {animation-delay: 0.4s;}
#menu ul a {-webkit-transform: translateZ(0); transition: opacity 0.3s ease-in-out;}
#menu ul:hover a {opacity: 0.5;}
#menu ul a:hover {opacity: 1;}

.main-nav {
  position: relative; 
  top: 50%; transform: translateY(-50%);}
.main-nav ul {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  list-style: none; 
  margin: 0; padding: 0;
  
  li {
    width: 300px;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
   #programmer {
    border-radius: 0.8rem;
    color: var(--quartenary-color);
    border: 1px solid var(--quartenary-color);
    background-color: transparent;
  }
  #programmer:hover {
    color: var(--secondary-color);
    border: none;
    background-color: var(--quartenary-color);
  }
}
.main-nav a {
  color: var(--primary-color);
  width: 100%;
  height: 50px;
  display: flex; 
  align-items: center;
  align-content: center;
  justify-content: center;
  padding: 1rem 1rem;
  font-size: 1.5rem; font-weight: bold;
  text-decoration: none;
}
/*
.main-nav a:first-child {padding-top: 0;}*/
.menu-footer {padding: 2rem; bottom: 0; left: 0; right: 0; position: absolute;}
.menu-footer ul {display: inline-block; margin: 0; padding: 0; list-style: none;}
.menu-footer ul li {display: inline; margin: 0 1rem;}
.menu-footer a {color: var(--primary-color); text-decoration: none; text-transform: uppercase;}

/*keyframes*/
@keyframes scroll-left {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-150%); 
    }
}
@keyframes fadeInUp { 
  from {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

/*loader*/
#preloader-overlay {
  position: fixed; top: 0; left: 0; z-index: 99999;
  width: 100%; height: 100%;
  background-color: var(--secondary-color);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  align-content: center;
  opacity: 1; visibility: visible;
  transition: opacity 0.8s ease, visibility 0.9s ease;
}
#preloader-overlay.hidden {opacity: 0; visibility: hidden;}
.preloader-content {display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center;}
.preloader-title {font: var(--title-2-font); color: var(--quartenary-color); margin-bottom: 1rem;}
.loader-spinner {
  border: 4px solid var(--primary-color); 
  border-top: 4px solid var(--quartenary-color);
  border-radius: 50%; width: 25px; height: 25px;
  animation: spin 1s linear infinite;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/*blur*/
.blur {
  background-color: var(--quartenary-color);
  height: 80px; width: 80px; z-index: 0;
  border-radius: 50%; filter: blur(70px);
} 
.blur:nth-child(2) {position: absolute; right: 0; top: 64%;}

/*groupings*/
.container {
  display: flex; 
  flex-direction: column;
}

.item {
  display: flex; 
  flex-direction: row; 
  width: 320px;
  
  h3 {
    color: var(--quartenary-color);
  }
}
.text-item {
  color: var(--quartenary-color); opacity: 0.4; filter: blur(2px);
  font: var(--title-font);
  font-size: 3rem; font-weight: 700; text-transform: uppercase; line-height: 1.5;
}



.timeline {
  display: flex; 
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  
  .item {
    time {
      font-size: 0.8rem;
      color: #808080;
    }
  }
}

.text {
  display: flex; 
  flex-direction: column; gap: 0.4rem; 
  word-wrap: break-word;
}

/*formatting*/
@media (min-width: 400px) {
  #training {
    align-items: center;
  }
}
@media (min-width: 760px) {
  .toggle-menu {
    display: none;
  }
  
  .header-nav {
    .header-nav-pc {
      color: var(--primary-color);
      display: flex;
      width: 300px;
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
      align-content: center;
      
      li {
        width: auto;
        height: 100%;
        
        a {
          display: block;
        }
      }
      
      #programmer {
        padding: 0.3rem 0.9rem;
        border-radius: 0.8rem;
        color: var(--secondary-color);
        font-weight: bold;
        background-color: var(--quartenary-color);
      }
    }
  }
  
  #hero {
    height: 480px;
  }
}
/*
@media (prefers-color-scheme: light) { /*light theme*/
/*
  :root {
    --primary-color: #101010;
    --secondary-color: #ffffff;
    --tertiary-color: #767676;
    --quartenary-color: #7eff00;
  }
  
  body {background-color: var(--secondary-color);}
  h1, h2, h3, h4, h5 {color: var(--primary-color);}
  span{color: var(--quartenary-color);}
  p {color: var(--tertiary-color);}
  a {color: var(--quartenary-color);}
  time{color: var(--primary-color);}
}
*/