/* ============================================================
   InvestFood Tech — Responsive
   Breakpoint: 1080 / 900 / 720 / 480
   ============================================================ */

/* Raggio dell'anello 3D per breakpoint */
.orbit__item { --radius: 370px; }

@media (max-width: 1080px) {
  .orbit__item { --radius: 300px; }

  .hero__inner { grid-template-columns: 1fr; gap: 48px; }
  .stage { min-height: 320px; }

  .footer__grid { grid-template-columns: 1fr 1fr 1fr; }
  .footer__brand { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  /* --- Menu mobile a tendina --- */
  .burger { display: inline-flex; }

  .nav__inner { gap: 14px; padding-left: 20px; }

  .nav__links {
    position: fixed;
    inset: 92px var(--gutter) auto;
    left: var(--gutter);
    transform-origin: top;
    transform: perspective(900px) rotateX(-12deg) translateY(-10px);
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    padding: 12px;
    border-radius: var(--r-panel);
    border: 1px solid var(--hairline);
    background: rgba(25, 25, 25, .97);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: var(--shadow-pill);
    opacity: 0;
    visibility: hidden;
    transition: transform var(--dur) var(--ease-out),
                opacity var(--dur) var(--ease-out),
                visibility var(--dur) linear;
  }

  .nav__links.is-open { transform: none; opacity: 1; visibility: visible; }

  .nav__link { padding: 14px 16px; font-size: 1rem; border-radius: var(--r-input); }
  .nav__link.is-active::after { display: none; }
  .nav__link.is-active { background: rgba(112, 132, 255, .12); color: var(--signal); }
}

@media (max-width: 720px) {
  .grid-projects { grid-template-columns: 1fr; }
  .footer__grid { grid-template-columns: 1fr 1fr; }
  .footer__bottom { flex-direction: column; align-items: flex-start; }

  .stage { min-height: 260px; }

  /* L'anello 3D diventa una griglia leggibile sul piccolo schermo */
  .orbit {
    height: auto;
    perspective: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
  }

  .orbit__core { position: static; width: 88px; height: 88px; }
  .orbit__core img { width: 56px; height: 56px; translate: 0 -4px; }

  .orbit__ring {
    position: static;
    width: 100%;
    height: auto;
    transform: none;
    transform-style: flat;
    animation: none;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .orbit__item {
    position: static;
    transform: none;
    animation: tile-float 5.4s var(--ease-out) infinite;
    padding: 8px 10px;
  }

  .orbit__item img { max-height: 44px; }

  .orbit__item:nth-child(2n) { animation-delay: -1.4s; }
  .orbit__item:nth-child(3n) { animation-delay: -2.7s; }
  .orbit__item:nth-child(4n) { animation-delay: -4.1s; }

  .btn { width: 100%; }
  .btn-row { flex-direction: column; align-items: stretch; }
  .prj__foot .btn, .prj__foot .store { width: auto; }
}

@media (max-width: 480px) {
  .pcard { flex-basis: 300px; width: 300px; }

  .footer__grid { grid-template-columns: 1fr; }
  .pcard__cat { display: none; }
  .marquee__item { --logo-h: 34px; }
  .orbit__item img { max-height: 36px; }
}

@media (hover: none) {
  .card-glare { display: none; }

  /* Su touch il nastro si muove solo se lo muovi tu */
  .rail { -webkit-overflow-scrolling: touch; }
}
