body {
  padding: 0;
  margin: 0;
  font-family: Arial, sans-serif;
  background: linear-gradient(to right, #0d1522, #161f30);
  background-repeat: no-repeat;
}

.paginas {
  width: 100%;
  min-height: 100vh;
  box-sizing: border-box;
}

#pagina1 {
  display: flex;
  align-items: center;
  border-bottom: 4px solid #202a3b;
}

#pagina2 {
  margin: 0;
}

.cabecalho {
  position: fixed;
  background-color: #0c131d;
  top: 0px;
  left: 0px;
  right: 0px;
  padding: 0px 50px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 2px solid #202a3b;
}

.aba {
  font-size: 1.5em;
  margin: 0.8em;
  color: white;
  text-decoration: none;
}

.aba:hover {
  background-color: #67dbb6;
  text-decoration: underline;
  font-size: 1.7em;
  transition: all 0.15s ease;
}

/* estilo da caixa principal */
.box {
  margin-left: 200px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25em; /* Espaço entre texto e imagem */
  height: 100vh;
  border-bottom: 1px solid #202a3b;
}

.text-section {
  flex: 1;
}

h1 {
  font-size: 4em;
  margin-top: 2em;
  background: linear-gradient(135deg, #b7d3cf, #78ecc7);
}

.cor {
  font-size: 2.5em;
  background: linear-gradient(135deg, #b7d3cf, #78ecc7);
}

h1,
.cor,
.aba:hover {
  -webkit-background-clip: text; /* Corta o fundo para a forma do texto */
  background-clip: text; /* Corta o fundo para a forma do texto */
  -webkit-text-fill-color: transparent; /* Torna a cor do texto transparente */
}

#antes {
  font-size: 2.5em;
  color: white;
}

.title {
  margin-top: 5em;
  margin-left: 5em;
}

.tecnologias {
  display: flex;
  justify-content: space-around;
}

.caixa {
  width: 15em;
}

.caixa img {
  width: 48px;
  height: 48px;
}

.sobre-texto {
  display: flex;
  justify-content: space-evenly;
  text-align: justify;
}

.sobre-texto img {
  width: 13em;
  height: auto;
}

.texto {
  width: 45em;
}

.caixa,
.texto,
.sobre-texto img {
  background-color: #202a3b;
  border: 1px solid #202530;
  border-radius: 20px;
  padding: 1.3em;
}

h2 {
  color: white;
  font-size: 2.5em;
}

p {
  color: white;
  font-size: 1.25em;
  line-height: 1.5em;
}

#text {
  width: 38em;
}

b {
  font-size: 1.3em;
}

.botao {
  display: flex;
}

.button {
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.35em;
  padding: 1.25em 1.6em;
  padding-right: 1.25em;
  color: #0c131d;
  border: 1px solid transparent;
  font-weight: 700;
  border-radius: 2em;
  font-size: 1.16em;
  transition: transform 0.3s;
  background: linear-gradient(90deg, #74ecc6, #aaebd6);
}

a {
  text-decoration: none;
  color: inherit;
}

.button__icon {
  width: 1.5em;
  height: 1.5em;
}

.button:hover {
  border-color: #f4f5f2;
  background: linear-gradient(90deg, #5eceaa, #93c5b5);
}

.button:active {
  transform: scale(0.98);
}

.cabecalho svg {
  width: 1em;
  height: 1em;
  margin-right: 0.2em;
  margin-bottom: 2.5%;
  vertical-align: middle;
}

.box .cor {
  border-right: 2px solid black;
  white-space: nowrap;
  overflow: hidden;
}

/* animação do cursor piscando */
@keyframes blink {
  50% {
    border-color: transparent;
  }
}

.box .cor {
  animation: blink 0.7s infinite;
}

.profile-img {
  /* imagem do perfil */
  width: 375px;
  height: 375px;
  border-radius: 50%;
  object-fit: cover;
  background: #141d2d;
  padding: 15px;
}

.image-section {
  /* círculo externo */
  width: 400px;
  height: 400px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(45deg, #78ecc7, transparent);
  padding: 10px;
}

.image-circle {
  /* círculo intermediário */
  width: 425px;
  height: 425px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #141d2d;
  padding: 15px;
}

.image-section2 {
  /* círculo externo */
  width: 445px;
  height: 445px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(45deg, #8cf1d1, transparent);
  padding: 5px;
}

.social-icon {
  margin-left: 0.65em;
  background-color: #202a3b;
  border-radius: 35%;
  padding: 8px;
}

#github:hover {
  background-color: #1d1c1c;
  transition: all 0.3s ease;
}

#instagram:hover {
  background: linear-gradient(45deg, #fdcb00, #fc3a30, #f301b9, #821aff);
  transition: all 0.3s ease;
}

#linkedin:hover {
  background-color: #06496d;
  transition: all 0.3s ease;
}

#facebook:hover {
  background-color: #0866ff;
  transition: all 0.3s ease;
}

.button2 {
  margin-left: 1.3em;
  line-height: 1;
  gap: 0.35em;
  padding: 1.25em 1.6em;
  padding-right: 1.25em;
  font-weight: 700;
  border-radius: 2em;
  font-size: 1.16em;
  background: transparent;
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid white;
  outline: none;
  overflow: hidden;
  color: #7bb59b;
  transition: color 0.3s 0.1s ease-out;
  text-align: center;
}

.button2::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  content: "";
  border-radius: 50%;
  display: block;
  width: 20em;
  height: 20em;
  left: -5em;
  text-align: center;
  transition: box-shadow 0.5s ease-out;
  z-index: -1;
}

.button2:hover {
  color: #fff;
  border: 1px solid #25d366;
}

.button2:hover::before {
  box-shadow: inset 0 0 0 10em #1d9e4c;
}

/* ultimos Icons*/ 
ul {
  list-style: none;
}

.example-2 {
  display: flex;
  justify-content: center;
  align-items: center;
}

.example-2 .icon-content {
  margin: 0 10px;
  position: relative;
}

.example-2 .icon-content .tooltip {
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  padding: 6px 10px;
  border-radius: 5px;
  opacity: 0;
  visibility: hidden;
  font-size: 14px;
  transition: all 0.3s ease;
}

.example-2 .icon-content:hover .tooltip {
  opacity: 1;
  visibility: visible;
  top: -50px;
}

.example-2 .icon-content a {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  color: #a3a2a2;
  background-color: #202A3B;
  transition: all 0.3s ease-in-out;
}

.example-2 .icon-content a:hover {
  box-shadow: 3px 2px 45px 0px rgb(0 0 0 / 12%);
}

.example-2 .icon-content a svg {
  position: relative;
  z-index: 1;
  width: 30px;
  height: 30px;
}

.example-2 .icon-content a:hover {
  color: white;
}

.example-2 .icon-content a .filled {
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
  background-color: #000;
  transition: all 0.3s ease-in-out;
}

.example-2 .icon-content a:hover .filled {
  height: 100%;
}

.example-2 .icon-content a[data-social="linkedin"] .filled,
.example-2 .icon-content a[data-social="linkedin"] ~ .tooltip {
  background-color: #0274b3;
}

.example-2 .icon-content a[data-social="github"] .filled,
.example-2 .icon-content a[data-social="github"] ~ .tooltip {
  background-color: #24262a;
}

.example-2 .icon-content a[data-social="instagram"] .filled,
.example-2 .icon-content a[data-social="instagram"] ~ .tooltip {
  background: linear-gradient(
    45deg,
    #405de6,
    #5b51db,
    #b33ab4,
    #c135b4,
    #e1306c,
    #fd1f1f
  );
}

.example-2 .icon-content a[data-social="youtube"] .filled,
.example-2 .icon-content a[data-social="youtube"] ~ .tooltip {
  background-color: #ff0000;
}

/* Media para responsividade */

@media (max-width: 768px) {
  .cabecalho {
    padding: 0px 10px;
    flex-direction: column;
  }

  .cabecalho > div:first-child {
    margin-bottom: 8px;
  }

  #pagina1 {
    padding-top: 115px;
  }

  .aba {
    font-size: 1em;
    margin: 0.6em;
  }

  .aba:hover {
    font-size: 1.4em;
  }

  .box {
    margin-left: 0;
    flex-direction: column;
    gap: 2em;
    height: auto;
    padding: 1em;
    text-align: center;
  }

  .text-section {
    order: 2;
  }

  .image-section2 {
    order: 1;
  }

  h1 {
    font-size: 2em;
    margin-top: 1em;
  }

  .cor {
    font-size: 1.2em;
  }

  #antes {
    font-size: 1.2em;
  }

  p {
    font-size: 0.9em;
    line-height: 1.4em;
  }

  #text {
    width: 100%;
  }

  .botao {
    flex-direction: column;
    align-items: center;
  }

  .button, .button2 {
    margin: 0.5em 0;
  }

  .social-icon {
    margin-left: 0.5em;
  }

  .profile-img {
    width: 200px;
    height: 200px;
  }

  .image-section {
    width: 220px;
    height: 220px;
  }

  .image-circle {
    width: 240px;
    height: 240px;
  }

  .image-section2 {
    width: 260px;
    height: 260px;
  }

  .title {
    margin-left: 1em;
    margin-right: 1em;
  }

  h2 {
    font-size: 1.8em;
  }

  .tecnologias {
    flex-direction: column;
    align-items: center;
  }

  .caixa {
    width: 90%;
    max-width: 400px;
  }

  .sobre-texto {
    flex-direction: column;
    align-items: center;
  }

  .texto {
    width: 90%;
    max-width: 600px;
  }

  .sobre-texto img {
    width: 90%;
    max-width: 300px;
  }

  .example-2 {
    justify-content: center;
  }

  .icon-content {
    margin: 0 5px;
  }
}

@media (max-width: 480px) {
  h1 {
    font-size: 1.5em;
  }

  .cor {
    font-size: 1em;
  }

  #antes {
    font-size: 1em;
  }

  p {
    font-size: 0.8em;
  }

  .profile-img {
    width: 150px;
    height: 150px;
  }

  .image-section {
    width: 170px;
    height: 170px;
  }

  .image-circle {
    width: 190px;
    height: 190px;
  }

  .image-section2 {
    width: 210px;
    height: 210px;
  }

  .caixa {
    width: 95%;
  }

  .texto {
    width: 95%;
  }

  .sobre-texto img {
    width: 95%;
  }
}
