/* Responsive Design - Media Queries */

@media (max-width: 1600px) {
  aside {
    display: none;
  }
}

@media (max-width: 1200px) {
  .header-name {
    display: none;
  }

  .dark-mode-toggle {
    display: none;
  }
}

@media (max-width: 768px) {
  .hamburger {
    display: flex;
  }

  .mobile-overlay,
  .mobile-nav {
    display: block;
  }

  header nav {
    display: none;
  }

  .header-name {
    left: 50%;
    transform: translateX(-50%);
  }

  .header-name.visible {
    opacity: 1;
  }

  h1 {
    font-size: 2.2rem;
  }

  .intro {
    padding: 1.5rem;
  }

  .intro p {
    font-size: 1.1rem;
  }

  details {
    padding: 1rem;
  }

  summary {
    font-size: 1.1rem;
  }

  .footer-links span {
    display: none;
  }

  .footer-links a::after {
    display: none;
  }

  footer.expanded {
    padding: 0.75rem 2rem;
  }
}

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

  main {
    padding: 0 1rem;
  }

  .section-title {
    font-size: 1.5rem;
  }
}
