/* ============================= */
/* responsive.css optimizado     */
/* ============================= */
@media (max-width: 768px) {
  .wrapper {
    padding: .5rem;
  }

  /* Layout a una columna y centrado */
  #hero,
  #about .section-content,
  #portfolio .section-content,
  #contact .section-content,
  .footer-top.wrapper,
  .footer-bottom.wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  /* Hero adaptado */
  #hero {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    padding: 0;
  }
  .hero-title {
    position: static; /* ya estaba */
    font-size: 3rem;
    line-height: 1.2;
    margin: 0;        /* lo centramos sin márgenes extra */
    text-align: center;
  }
  .hero-logo,
  .hero-arrow {
    position: static;
    margin: 1rem 0;
  }
  .hero-logo{
    width: 8rem;
  }


  /* About */
  #about .section-title,
  #portfolio .section-title,
  #contact .section-title {
    position: static;
    margin-bottom: 2rem;
  }
  #about p {
    font-size: 1.5rem;
  }

  /* Portfolio */
  #portfolio .section-content {
    gap: 1.5rem;
    padding: 0 1rem;
    margin-top: 4rem;
  }
  #portfolio .proyecto {
    display: block;
    width: 100%;
  }
  .project-description {
    padding: .5rem 0;
  }
  .project-title {
    font-size: 1.25rem;
  }
  .project-description p {
    font-size: .9rem;
  }
  .portfolio-link {
    font-size: 1rem;
    margin-top: 1rem;
  }

  /* Contact */
  .cta {
    font-size: 1.25rem;
  }
  .btn {
    font-size: 1rem;
    padding: .75rem 1.5rem;
  }
  .redes .social-icon {
    font-size: 1.75rem;
  }

  /* Reset márgenes extra */
  h1, h2, h3 {
    margin-left: 0;
  }
}
