/* ===================================================================
   Responsive — breakpoints 1024 / 768 / 480
=================================================================== */

@media (max-width: 1024px) {
  .section__inner { padding-block: 4.5rem; }
  .skills { grid-template-columns: 1fr; gap: 2rem; }
}

@media (max-width: 860px) {
  .projects { grid-template-columns: 1fr; }
  .hero { gap: 2.5rem; }
  .title-block { flex-basis: 100%; }
}

@media (max-width: 768px) {
  .nav__links {
    position: fixed;
    inset: var(--nav-h) 0 0 0;
    background: var(--paper);
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 1rem 1.5rem 2rem;
    transform: translateY(-8px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s var(--ease), transform 0.2s var(--ease);
  }
  .nav__links.is-open {
    opacity: 1;
    transform: none;
    pointer-events: auto;
  }
  .nav__link { width: 100%; padding: 0.9rem 0; border-bottom: 1px solid var(--line); font-size: 1rem; }
  .nav__cv { display: none; }
  .nav__toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px; height: 40px;
    color: var(--ink);
  }

  .about { gap: 2.25rem; }
  .about__facts { grid-template-columns: 1fr 1fr; }
  .contact { gap: 2.5rem; }
}

@media (max-width: 480px) {
  .section__inner { padding: 3.5rem 1.25rem; }
  .hero { padding-top: calc(var(--nav-h) + 2rem); }
  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { justify-content: center; }
  .about__facts { grid-template-columns: 1fr; }
  .title-block__row { grid-template-columns: 62px 1fr; }
  .contact__list li { flex-wrap: wrap; gap: 0.5rem; }
  .footer__inner { flex-direction: column; gap: 0.75rem; text-align: center; }
}
