 
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");
@import url('https://fonts.googleapis.com/css2?family=Edu+NSW+ACT+Hand+Pre:wght@400..700&display=swap');

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

body{
    min-height: 100vh;
    background-color: #fff;
    padding-bottom: 10px;
    margin: 0;
    width: 100%;
    
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    overflow-x: hidden;
}


.container{
    width: 100%;
    height: 400px;
    background-image: url(img/fundo.png);
    background-size: cover;      /* ou contain */
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: space-around;
}

.paragrafo{
    width: 35%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: -10px;
   
}

.button{
    width: 100px;
    height: 30px;
    font-size: 20px;
    border-radius: 15px;
    border: 1px solid rgba(0, 0, 0, 0.437);
    background-color: #ffffffa7;
    margin-top: 60px;
    position: relative;
    left: 250px;
    cursor: pointer;
    font-family: "Montserrat", sans-serif;;
    

}
.paragrafo h1{
    font-weight: 500;
    font-size: 40px;
    
}

.paragrafo p{
    font-weight: 200;
    margin: 20px  5px 10px;
    
    
}
.nome{
    font-size: 30px;
}
.imagem {
    
    width: 50%;
    height: auto;
    
    display: flex;
    justify-content: center;
}
.frase{
    font-size: 20px;
}
.imagemperfil{
    width: 50%;
    height: 80%;
    margin-top: 80px;
}

/* inicio da section principal */

.container2{
    width: 80%;
    height: auto;
    padding: 20px;
    
    
    
}
.containerfilho{
    display: flex;
    
    
}
.alinhamento-hard-skill{
    display: flex;
    
    
}


.icones {
  position: relative;
  display: inline-block;
  margin: 10px;
  cursor: pointer;
  margin-top: 20px;
    display: flex;
    justify-content: center;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background-color: #F6F2EC;
    margin: 10px;
  
}

.tooltip {
  position: absolute;
  bottom: 120%; /* aparece acima do ícone */
  left: 50%;
  transform: translateX(-50%);
  background-color: #2e2e2e;
  color: #fff;
  padding: 6px 12px;
  border-radius: 6px;
  white-space: nowrap;
  font-size: 0.75rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 10;
}

.icones:hover .tooltip {
  opacity: 1;
  transform: translateX(-50%) translateY(-5px);
}

.tooltip::after {
  content: "";
  position: absolute;
  top: 100%; /* seta embaixo do balão */
  left: 50%;
  transform: translateX(-50%);
  border-width: 6px;
  border-style: solid;
  border-color: #2e2e2e transparent transparent transparent;
}
.icones-hard{
    margin-top: 20px;
    display: flex;
    justify-content: center;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background-color:#A8B8A5;
    margin: 10px;}



.icon{
    width: 30px;

}


.alinhamento-icons{
    width: 50%;
    display: flex;
}
.icons{
    display: flex;
}

.titulos{
    display: flex;
    width: 80%;
    justify-content: space-around;
    margin-top: 20px;
    
}

.abaskil{
    width: 50%;
    text-align: center;
}

.abaskil h1{
    font-weight: 200;
    font-family:"Edu NSW ACT Hand Pre", cursive;
}
.abaskil2 h1{
     font-weight: 200;
     font-family:"Edu NSW ACT Hand Pre", cursive;
}

h2{
    font-size: 40px;
    font-weight: 200;
    font-family: "Edu NSW ACT Hand Pre", cursive;;
}

.container3{
    width: 100%;
    height: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #A8B8A5;
    margin-top: 100px;
    padding-bottom: 100px;
    
    
}

.alinhamento-projetos{
    width: 90%;
    display: grid;
    grid-template-columns: repeat(3, minmax(300px, 1fr));
    gap: 30px;
    border-radius: 15px;
    margin-top: 40px;
    
    
    
}
.card-wrap {
  margin: 10px;
  transform: perspective(800px);
  transform-style: preserve-3d;
  cursor: pointer;
}

.card-wrap:hover .card-info {
  transform: translateY(0);
  transition: 0.6s cubic-bezier(0.23, 1, 0.32, 1);
}

.card-wrap:hover .card-info p {
  opacity: 1;
  transition: 0.6s cubic-bezier(0.23, 1, 0.32, 1);
}

.card-wrap:hover .card-info:after {
  opacity: 1;
  transform: translateY(0);
  transition: 5s cubic-bezier(0.23, 1, 0.32, 1);
}

.card-wrap:hover .card-bg {
  opacity: 0.8;
  transition: 0.6s cubic-bezier(0.23, 1, 0.32, 1), opacity 5s cubic-bezier(0.23, 1, 0.32, 1);
}

.card-wrap:hover .card {
  box-shadow:
    rgba(255, 255, 255, 0.2) 0 0 40px 5px,
    rgba(255, 255, 255, 1) 0 0 0 1px,
    rgba(0, 0, 0, 0.66) 0 30px 60px 0,
    inset #333 0 0 0 5px,
    inset white 0 0 0 6px;
  transition:
    0.6s cubic-bezier(0.23, 1, 0.32, 1),
    box-shadow 2s cubic-bezier(0.23, 1, 0.32, 1);
}

.card {
  position: relative;
  flex: 0 0 320px;
  width: 400px;
  height: 250px;
  background-color: #333;
  overflow: hidden;
  border-radius: 10px;
  box-shadow:
    rgba(0, 0, 0, 0.66) 0 30px 60px 0,
    inset #333 0 0 0 5px,
    inset rgba(255, 255, 255, 0.5) 0 0 0 6px;
  transition: 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.card-bg {
  opacity: 0.5;
  position: absolute;
  width: 110%;
  height: 110%;
  top: -5%;
  left: -5%;
  padding: 20px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transition: 1s cubic-bezier(0.445, 0.05, 0.55, 0.95), opacity 5s 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  pointer-events: none;
}

.card-info {
  padding: 20px;
  position: absolute;
  bottom: 0;
  color: #fff;
  transform: translateY(40%);
  transition: 0.6s 1.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.card-info p {
  opacity: 0;
  text-shadow: rgba(0, 0, 0, 1) 0 2px 3px;
  transition: 0.6s 1.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.card-info * {
  position: relative;
  z-index: 1;
}

.card-info:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.6) 100%);
  background-blend-mode: overlay;
  opacity: 0;
  transform: translateY(100%);
  transition: 5s 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.card-info h1 {
  font-family: "Playfair Display", serif;
  font-size: 30px;
  font-weight: 700;
  text-shadow: rgba(0, 0, 0, 0.5) 0 10px 10px;
  margin: 0 0 10px 0;
}




.container4 p{
    font-size: 20px;
    width: 100%;
    padding-left: 15px;
}
.sobremim h2{
    text-align: center;
    margin-bottom: 30px;
    
}
.container4{
    width: 100%;
    
    
    
}

.sobremim{
    background-color: #F6F2EC;
    padding:70px 20px 50px 20px;
    width: 100%;
    

}

.btn-contatos{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    
    margin-top: 20px;
    
 }

 .link{
    width: 80px;
    height: 80px;
    box-shadow: 15px 0 8px rgba(0, 0, 0, 0.405);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
    margin: 15px;
    background-color: #fff;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    
    
 }
 
 .link:hover i{
    color: #fff;
    transform: scale(1.2);
    
 }
 .link i{
    transition: .2s;
 }

 .link-1::before{
    background-color: #25D366;
 }
 .link-2::before{
    background-color: #171515;
 }
 .link-3::before{
    background-color: #0077B5;
    
 }

    .link-1{
        color: #25D366;
    }
    .link-2{
        color: #171515;
    }
    .link-3{
        color: #0077B5
        
    }

    .link::before{
        content: "";
        width: 80px;
        height: 80px;
        border-radius: 50%;
        position: absolute;
        left: -100px;
        top: 100%;
       
        
    }
    .link:hover::before{
        animation: desloca .5s;
        left: 0px;
            top: 0px;

    }
   

    @keyframes desloca {
        0%{
            left: -100px;
             top: 100%;
        }
        50%{
            left: 15%;
            top: -35%;
        }
        100% {
            left: -2px;
            top: 0 -2px;
        }
        
    }
.titulo{
    
    text-align: center;
    font-size: 50px;
    margin-top: 100px;
    font-weight: 200;
    font-family:"Edu NSW ACT Hand Pre", cursive;

}


@media  (max-width: 600px){
 .alinhamento-projetos{
    width: 50%;
    display: grid;
    grid-template-columns: repeat(1, minmax(300px, 1fr));
    gap: 30px;
    border-radius: 15px;
    align-items: center;
}
.container2{
    width: 100%;
    height: auto;
    padding: 20px;
    
    
    
}

.container{
    width: 100%;
    height: 200px;
    background-image: url(img/fundo.png);
    background-size: cover;      /* ou contain */
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: space-around;
    
}
    .containerfilho{
        flex-direction: column;
        width: 100%;
        
    }
    .abaskil{
    width: 100%;
    text-align: center;
    margin: 30px 0;
}

.imagemperfil{
    width: 80%;
    height: 70%;
    margin-top: 60px;
    
}
.button{
    left: 30px;
    font-size: 10px;
    width: 80px;
    margin-top: 20px;
}
.paragrafo h1{
    font-weight: 500;
    font-size: 20px;
    
}
.nome{
    font-size: 15px;
}

.frase{
    font-size: 10px;
}

.icones {
  position: relative;
  display: inline-block;
  margin: 10px;
  cursor: pointer;
  margin-top: 20px;
    display: flex;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #F6F2EC;
    margin: 10px;
    
  
}
.icones-hard{
    margin-top: 20px;
    display: flex;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color:#A8B8A5;
    margin: 10px;}
.icon{
    width: 20px;

}

.card {
  position: relative;
  flex: 0 0 320px;
  width: 300px;
  height: 150px;
  background-color: #333;
  left: -50px;
  
}
.card-info h1{
  
  font-size: 20px;
  
}
.container4 p{
    font-size: 15px;
    width: 100%;
    padding-left: 15px;
}
}


@media (min-width: 600px) and (max-width: 1000px) {
    
    .alinhamento-projetos{
    width: 50%;
    display: grid;
    grid-template-columns: repeat(1, minmax(300px, 1fr));
    gap: 30px;
    border-radius: 15px;
    align-items: center;
}
    .containerfilho{
        flex-direction: column;
    }
    .abaskil{
    width: 100%;
    text-align: center;
    margin: 30px;
}

.imagemperfil{
    width: 80%;
    
}
.button{
    left: 100px;
}
.paragrafo h1{
    font-weight: 500;
    font-size: 30px;
    
}
.nome{
    font-size: 20px;
}

.frase{
    font-size: 15px;
}
}
@media (min-width: 1000px) and (max-width: 1400px) {
    
    .alinhamento-projetos{
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(300px, 1fr));
    gap: 30px;
    border-radius: 15px;
    align-items: center;
}



.container2{
    width: 100%;
    height: auto;
    padding: 20px;
    
    
    
    
    
}

.container{
    width: 100%;
    height: 400px;
    background-image: url(img/fundo.png);
    background-size: cover;      /* ou contain */
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: space-around;
    
}
    .containerfilho{
        flex-direction: column;
        width: 100%;
        align-items: center;
        
    }

.imagemperfil{
    width: 80%;
    
}
.button{
    left: 100px;
}
.paragrafo h1{
    font-weight: 500;
    font-size: 30px;
    
}
.nome{
    font-size: 20px;
}

.frase{
    font-size: 15px;
}

.container3{
    width: 100%;
    height: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #A8B8A5;
    margin-top: 0px;
    padding-bottom: 100px;
    
    
}
}

@media (min-width: 1923px){

    .alinhamento-projetos{
    width: 90%;
    display: grid;
    grid-template-columns: repeat(3, minmax(300px, 1fr));
    gap: 30px;
    border-radius: 15px;
    align-items: center;
}
.container2{
    width: 100%;
    height: auto;
    padding: 20px;
    
    
    
}

.container{
    width: 100%;
    height: 600px;
    background-image: url(img/fundo.png);
    background-size: cover;      /* ou contain */
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: space-around;
    
}
    
    .abaskil{
    width: 100%;
    text-align: center;
    margin: 30px 0;
    display: flex;
    flex-direction: column;
    align-items: center; 
    
}
.abaskil h1{ font-size: 45px;

}

.imagemperfil{
    width: 60%;
    height: 70%;
    margin-top: 180px; 
    
}
.button{
    left: 30px;
    font-size: 30px;
    width: 150px;
    height: 45px;
    margin-top: 20px; 
}
.paragrafo h1{
    font-weight: 500;
    font-size: 60px;
    
}
.nome{
    font-size: 50px;
}

.frase{
    font-size: 40px;
}

.icones {
  position: relative;
  display: inline-block;
  margin: 10px;
  cursor: pointer;
  margin-top: 20px;
    display: flex;
    justify-content: center;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background-color: #F6F2EC;
    margin: 10px;
    left: -100px;
    
  
}
.icones-hard{
    margin-top: 20px;
    display: flex;
    justify-content: center;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background-color:#A8B8A5;
    margin: 10px;}
.icon{
    width: 50px;

}

.card {
  position: relative;
  flex: 0 0 320px;
  width: 600px;
  height: 400px;
  background-color: #333;
  left: -50px;
  
}
.card-info h1{
  
  font-size: 50px;
  
}
.container4 p{
    font-size: 35px;
    width: 100%;
    padding-left: 15px;
}

.container4 h2{
    font-size: 45px;
}
}