/* ===== BASE SEGURA ===== */
*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
   height: auto;
  display: block;
}

/* Evita desbordamientos raros */
body {
  overflow-x: hidden;
}


/* ========================= */
/* ======= TABLET ========= */
/* ========================= */
@media (max-width: 1024px) {

  /* Ajuste general */
  main {
    padding: 0 20px;
  }

  /* Timeline */
  .years {
    gap: 20px;
  }

  /* Contenido */
  .content {
    padding-left: 100px !important; /* reduce tu 300px */
  }

  .content-left h2 {
    font-size: 50px;
  }

}


/* ========================= */
/* ======= MÓVIL ========= */
/* ========================= */
@media (max-width: 768px) {

  /* Layout general */
  main {
    padding: 0 15px;
  }

  /* ===== TIMELINE ===== */
  .timeline {
    padding: 40px 10px;
  }

  .years {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

  .year span {
    font-size: 14px;
  }

  /* ===== CONTENIDO ===== */
  .content {
    flex-direction: column !important;
    align-items: center;
    text-align: center;
    padding-left: 0 !important;
    margin: 20px 0;
  }

  .content-left {
    flex-direction: column;
    gap: 10px;
  }

  .content-left h2 {
    font-size: 38px;
  }

  .content-left img {
    width: 60px;
  }

  /* ===== BOTÓN ===== */
  .video-link {
    margin: 30px auto 50px auto;
    font-size: 14px;
    padding: 10px 20px;
  }

}


/* ========================= */
/* ======= MÓVIL PEQUEÑO === */
/* ========================= */
@media (max-width: 480px) {

  .content-left h2 {
    font-size: 30px;
  }

  .year span {
    font-size: 12px;
  }

  .video-link {
    font-size: 13px;
    padding: 9px 18px;
  }

}