/* =========================
   TABLETS (≤ 1024px)
========================= */
@media (max-width: 1024px) {

  .nav {
    padding: 12px 25px;
  }

  .nav-links li a {
    padding: 8px 14px;
    font-size: 14px;
  }

  section {
    padding: 50px 20px;
  }

  h2 {
    font-size: 2rem;
  }

  .video-youtube {
    max-width: 480px;
    height: 270px;
  }
}

/* =========================
   TABLETS / PHONES (≤ 768px)
========================= */
@media (max-width: 768px) {

  /* NAV */
  .nav {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

  .nav img {
    margin: 0 auto;
    height: 55px;
  }

  .nav-links {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

  .nav-links li a {
    font-size: 13px;
    padding: 8px 12px;
  }

  /* HOME */
  .home {
    padding-top: 140px;
  }

  .welcome-box {
    padding: 35px 25px;
  }

  .welcome-box h1 {
    font-size: 2.2rem;
  }

  .welcome-box p {
    font-size: 1.05rem;
  }

  /* SECCIONES */
  section {
    margin: 80px auto;
  }

  /* VIDEOS */
  .video-grid {
    gap: 20px;
  }

  .video-youtube {
    max-width: 420px;
    height: 240px;
  }

  /* TARJETAS */
  .concepto,
  .herramienta,
  .practica,
  .lenguaje,
  .ruta {
    padding: 22px;
  }
}

/* =========================
   PHONES (≤ 480px)
========================= */
@media (max-width: 480px) {

  /* NAV */
  .nav {
    padding: 10px 15px;
  }

  .nav-links li a {
    font-size: 12px;
    padding: 7px 10px;
    border-radius: 10px;
  }

  /* HOME */
  .home {
    min-height: 90vh;
  }

  .welcome-box {
    padding: 25px 18px;
  }

  .welcome-box h1 {
    font-size: 1.8rem;
  }

  .welcome-box p {
    font-size: 0.95rem;
  }

  /* TITULOS */
  h2 {
    font-size: 1.5rem;
  }

  /* VIDEOS */
  .video-youtube {
    max-width: 320px;
    height: 180px;
  }

  .video-item p {
    font-size: 13px;
  }

  /* SECCIONES */
  section {
    padding: 40px 15px;
  }

  /* FOOTER */
  .footer {
    padding: 40px 6% 20px;
  }

  .footer-section h3 {
    font-size: 18px;
  }

  .footer-section h4 {
    font-size: 16px;
  }
}
