/* Telas médias */
@media screen and (max-width: 1400px) {
  #profile { margin: 0 5rem; gap: 3rem; }
  section { margin: 0 5rem; }
}

/* Tablets — troca desktop nav por hamburger */
@media screen and (max-width: 1200px) {
  #desktop-nav { display: none; }
  #hamburger-nav { display: flex; }
  #profile {
    flex-direction: column;
    text-align: center;
    height: auto;
    padding: 4vh 0 6vh;
    gap: 2rem;
  }
  .btn-container, #socials-container { justify-content: center; }
  section { margin: 0 3rem; }
  .section__pic-container { width: 280px; height: 280px; }
}

/* Mobile */
@media screen and (max-width: 600px) {
  section { margin: 0 1.5rem; }
  .title { font-size: 2.25rem; }
  .headline-primary { font-size: 1.15rem; }
  .headline-secondary { font-size: 0.95rem; }
  .section__pic-container { width: 220px; height: 220px; }
  .btn-container { flex-direction: column; width: 100%; }
  .btn { width: 100%; text-align: center; }
}
/* ===================================================================
   SEÇÃO SOBRE — responsivo
   =================================================================== */
@media screen and (max-width: 1200px) {
  .about-container {
    flex-direction: column;
    gap: 2.5rem;
    text-align: left;
  }
  .about-pic-container {
    width: 280px;
    height: 360px;
  }
  .section-title {
    text-align: center;
  }
}

@media screen and (max-width: 600px) {
  #about {
    padding: 4rem 0;
  }
  .about-pic-container {
    width: 240px;
    height: 300px;
  }
  .section-title {
    font-size: 1.75rem;
  }
  .about-text p {
    font-size: 0.95rem;
  }
}
/* ===================================================================
   SEÇÃO EXPERIÊNCIA — responsivo
   =================================================================== */
@media screen and (max-width: 1200px) {
  .experience-container {
    padding: 0 2rem;
  }
}

@media screen and (max-width: 600px) {
  #experience {
    padding: 4rem 0;
  }
  .experience-container {
    padding: 0 1.5rem;
  }
  .job-title {
    font-size: 1.15rem;
  }
  .job-meta {
    font-size: 0.9rem;
  }
  .experience-body p,
  .tools-developed li {
    font-size: 0.95rem;
  }
}
/* ===================================================================
   SEÇÃO PROJETOS — responsivo
   =================================================================== */
@media screen and (max-width: 1000px) {
  .projects-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (max-width: 600px) {
  #projects {
    padding: 4rem 0;
  }
  .projects-container {
    padding: 0 1.5rem;
  }
  .projects-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}
/* ===================================================================
   SEÇÃO ESCREVO — responsivo
   =================================================================== */
@media screen and (max-width: 800px) {
  .writing-grid {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 600px) {
  #writing {
    padding: 4rem 0;
  }
  .writing-container {
    padding: 0 1.5rem;
  }
  .article-card {
    padding: 1.25rem;
  }
  .article-title {
    font-size: 1rem;
  }
}
/* ===================================================================
   SEÇÃO CONTATO — responsivo
   =================================================================== */
@media screen and (max-width: 700px) {
  #contact {
    padding: 4rem 0;
  }
  .contact-container {
    padding: 0 1.5rem;
  }
  .contact-info-upper-container {
    flex-direction: column;
    gap: 1rem;
    padding: 1.5rem;
    max-width: 100%;
    align-items: flex-start;
  }
  .contact-info-container {
    font-size: 0.95rem;
    word-break: break-all;
  }
}
@media screen and (max-width: 600px) {
  .footer-nav ul {
    gap: 1rem;
  }
  .footer-nav a {
    font-size: 0.85rem;
  }
}