/* ═══════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════ */

/* ── Tablet ≤ 1024px ── */
@media (max-width: 1024px) {

  .about__inner {
    grid-template-columns: 1fr;
    gap: clamp(32px, 5vw, 64px);
  }

  .about__title {
    font-size: clamp(32px, 5.5vw, 56px);
  }

  .process__steps {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-4);
  }

  .timeline-section__inner {
    grid-template-columns: 1fr;
    gap: clamp(64px, 10vw, 120px);
  }

  .contact__inner {
    grid-template-columns: 1fr;
    gap: clamp(40px, 6vw, 80px);
  }

  .project-card {
    grid-template-columns: 1fr;
    min-height: unset;
  }

  .project-card__visual {
    height: clamp(240px, 40vw, 500px);
  }

  .project-card:nth-child(even) {
    direction: ltr;
  }

  .nav__cta {
    display: none;
  }
}

/* ── Mobile ≤ 768px ── */
@media (max-width: 768px) {

  /* Nav */
  .nav__links {
    display: none;
  }

  .nav__burger {
    display: flex;
  }

  .nav__mobile {
    display: flex;
  }

  /* Hero */
  .hero__headline {
    font-size: clamp(40px, 12vw, 68px);
    gap: 0.03em;
  }

  .hero__badge {
    margin-bottom: var(--space-6);
  }

  .hero__description {
    font-size: 15px;
  }

  .hero__scroll {
    display: none;
  }

  /* Strip */
  .strip__track {
    animation-duration: 18s;
  }

  /* Services */
  .services__grid {
    grid-template-columns: 1fr;
  }

  /* Process */
  .process__steps {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }

  /* Project cards */
  .project-card {
    grid-template-columns: 1fr;
  }

  .project-card:nth-child(even) {
    direction: ltr;
  }

  .project-card__visual {
    height: clamp(220px, 55vw, 380px);
  }

  .project-card__info {
    padding: clamp(24px, 5vw, 48px);
  }

  .project-card__title {
    font-size: clamp(24px, 7vw, 40px);
  }

  /* About */
  .about__inner {
    grid-template-columns: 1fr;
    gap: var(--space-9);
  }

  .about__title {
    font-size: clamp(28px, 8vw, 44px);
  }

  /* Timeline */
  .timeline-section__inner {
    grid-template-columns: 1fr;
    gap: var(--space-11);
  }

  /* Contact */
  .contact__inner {
    grid-template-columns: 1fr;
    gap: var(--space-9);
  }

  .contact__headline {
    font-size: clamp(28px, 8vw, 48px);
  }

  .contact__cta {
    font-size: clamp(18px, 5vw, 26px);
  }

  .contact__actions {
    align-items: flex-start;
    gap: var(--space-6);
  }

  /* Footer */
  .footer__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-5);
  }

  /* Case study overlay */
  .case-study-overlay__inner {
    padding: 100px var(--container-pad) 60px;
  }

  .case-study-overlay__close {
    top: 20px;
    right: 20px;
  }

  .cs-title {
    font-size: clamp(28px, 8vw, 44px);
  }

  .cs-meta-grid {
    grid-template-columns: 1fr 1fr;
  }

  .cs-process-flow {
    gap: var(--space-2);
  }
}

/* ── Small Mobile ≤ 480px ── */
@media (max-width: 480px) {

  .hero__headline {
    font-size: clamp(36px, 11vw, 52px);
  }

  .hero__actions {
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-3);
  }

  .hero__actions .btn {
    justify-content: center;
    width: 100%;
  }

  .contact__socials {
    flex-wrap: wrap;
    gap: var(--space-4);
  }

  .cs-meta-grid {
    grid-template-columns: 1fr;
  }

  .cs-img-grid {
    grid-template-columns: 1fr;
  }
}

/* ── Wide ≥ 1600px ── */
@media (min-width: 1600px) {
  :root {
    --container-pad: 100px;
  }

  .hero__description {
    font-size: 20px;
  }
}
