/* ============================================
   Responsive Design - Tablet
   ============================================ */
@media (max-width: 1023px) {
  :root {
    --content-padding: 1.5rem;
  }

  .projects-list {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem;
  }

  .page-title {
    font-size: 2rem;
  }

  .explore-btn {
    width: 130px;
    height: 130px;
    font-size: 1.0625rem;
  }
}

/* ============================================
   Responsive Design - Mobile
   ============================================ */
@media (max-width: 767px) {
  :root {
    --content-padding: 1rem;
  }

  .content-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 2rem;
  }

  .page-title {
    font-size: 1.75rem;
  }

  .cv-link {
    font-size: 1rem;
    padding: 0.625rem 1.25rem;
    align-self: stretch;
    text-align: center;
  }

  .projects-list {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  .explore-btn {
    width: 120px;
    height: 120px;
    font-size: 1rem;
  }

  .explore-btn .btn-hint {
    font-size: 0.4375rem;
  }
}

/* ============================================
   Responsive Design - Small Mobile (380px)
   ============================================ */
@media (max-width: 479px) {
  :root {
    --content-padding: 0.75rem;
  }

  .page-title {
    font-size: 1.5rem;
  }

  .explore-btn {
    width: 100px;
    height: 100px;
    font-size: 0.875rem;
  }

  .explore-btn .btn-hint {
    font-size: 0.375rem;
  }

  .project-details {
    padding: 1.25rem;
  }

  .project-title {
    font-size: 1rem;
  }

  .project-description {
    font-size: 0.875rem;
  }
}

