/* ═════════════════════════════════════════
   TABLET  (≤ 1024px)
═════════════════════════════════════════ */
@media (max-width: 1024px) {

  /* CURSOR — desactivat en touch */
  * { cursor: auto !important; }
  #cursor { display: none !important; }

  /* NAV */
  nav { padding: 16px 20px; }
  .nav-right { display: none; }
  .hero-bottom { padding: 0 20px 24px; }

  /* HERO */
  .hint-left, .hint-right { font-size: 13px; }

  /* TEXT SECTION */
  .text-section { padding: 60px 20px; }
  .text-gran { font-size: clamp(28px, 6vw, 72px); }

  /* SPOILER */
  .spoiler-labels { padding: 0 20px 16px; }
  .spoiler-label-left { padding-left: 20%; }
  .spoiler-label-right { padding-right: 15%; }
  .spoiler-track img { height: 220px; }

  /* PROJECTES GRID */
  .projectes-grid { grid-template-columns: repeat(2, 1fr); }

  /* SOBRE MI */
  .sobre-intro-left,
  .sobre-intro-right { font-size: clamp(18px, 2.5vw, 30px); }
  .sobre-foto-wrap { padding: 0 80px; }
  .sobre-text-scroll { padding: 0 20px; gap: 30vh; }
  .sobre-text-scroll p { font-size: clamp(22px, 4vw, 60px); max-width: 75%; }

  /* TICKER */
  .skills-ticker { padding: 24px 0; }

  /* CONTACTE */
  .contacte-section { padding: 80px 20px; }

  /* PROJECTE INDIVIDUAL */
  .proj-header { padding: 120px 20px 48px; }
  .proj-text-bloc {
    grid-template-columns: 140px 1fr;
    padding: 60px 20px;
    gap: 0 24px;
  }
  .proj-img-duo--30-70 .proj-img-duo-item,
  .proj-img-duo--60-40 .proj-img-duo-item,
  .proj-img-duo--40-60 .proj-img-duo-item,
  .proj-img-duo--55-45 .proj-img-duo-item { max-height: 55vh; }
  .proj-img-trio--40-30-30 .proj-img-duo-item,
  .proj-img-trio--30-30-40 .proj-img-duo-item,
  .proj-img-trio--25-25-50 .proj-img-duo-item { max-height: 50vh; }

  /* FOOTER */
  footer { padding: 32px 20px; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}

/* ═════════════════════════════════════════
   MÒBIL  (≤ 600px)
═════════════════════════════════════════ */
@media (max-width: 600px) {

  /* NAV */
  nav { padding: 14px 16px; justify-content: center; }
  .nav-left, .nav-right { display: none; }
  .nav-center { position: static; transform: none; gap: 32px; }

  /* HERO */
  .hero-bottom { padding: 0 16px 20px; }
  .hero-title { text-align: left; text-align-last: left; }
  .hero-hints { flex-direction: column; gap: 2px; margin-top: 6px; }
  .hint-left, .hint-right { font-size: 12px; }

  /* TEXT SECTION */
  .text-section { padding: 48px 16px; }
  .text-gran { font-size: clamp(28px, 8vw, 52px); text-align: left; }

  /* SPOILER */
  .spoiler-section { padding: 40px 0; }
  .spoiler-labels {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 0 16px 16px;
  }
  .spoiler-label-left { padding-left: 0; }
  .spoiler-label-right { padding-right: 0; }
  .spoiler-track img { height: 160px; }

  /* PROJECTES GRID */
  .projectes-grid { grid-template-columns: repeat(2, 1fr); }

  /* SOBRE MI — foto més petita i textos als extrems sense trepitjar */
  .sobre-main { height: 300vh; }
  .sobre-intro {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
  }
  .sobre-intro-left {
    position: static;
    font-size: clamp(14px, 5vw, 20px);
    opacity: 0;
    transition: opacity 0.6s ease;
    align-self: flex-start;
    padding-left: 16px;
  }
  .sobre-intro-right {
    position: static;
    font-size: clamp(14px, 5vw, 20px);
    opacity: 0;
    transition: opacity 0.6s ease;
    align-self: flex-end;
    padding-right: 16px;
    text-align: right;
  }
  .sobre-foto-wrap {
    padding: 0;
    height: auto;
    width: 60vw;
  }
  .sobre-foto-img {
    max-width: 100%;
    height: auto;
  }
  .sobre-text-scroll {
    padding: 0 16px;
    gap: 20vh;
    top: 110vh;
  }
  .sobre-text-scroll p {
    font-size: clamp(20px, 7vw, 40px);
    max-width: 100%;
  }
  .sobre-text-scroll p:nth-child(even) {
    text-align: left;
    align-self: flex-start;
  }

  /* TICKER */
  .skills-ticker { padding: 20px 0; }

  /* CONTACTE */
  .contacte-section { padding: 60px 16px; }
  .contacte-inner { max-width: 100%; }

  /* FOOTER */
  footer { padding: 28px 16px; }
  .footer-grid { grid-template-columns: 1fr; gap: 12px; }

  /* PROJECTE INDIVIDUAL */
  .proj-header { padding: 100px 16px 40px; }
  .proj-titol { text-align: left; text-align-last: left; }
  .proj-text-bloc { grid-template-columns: 1fr; gap: 12px; padding: 40px 16px; }
  .proj-img-duo--50,
  .proj-img-duo--40-60,
  .proj-img-duo--60-40,
  .proj-img-duo--30-70,
  .proj-img-duo--55-45 { grid-template-columns: 1fr; }
  .proj-img-duo--30-70 .proj-img-duo-item,
  .proj-img-duo--60-40 .proj-img-duo-item,
  .proj-img-duo--40-60 .proj-img-duo-item,
  .proj-img-duo--55-45 .proj-img-duo-item { max-height: none; }
  .proj-img-trio--40-30-30,
  .proj-img-trio--30-30-40,
  .proj-img-trio--25-25-50 { grid-template-columns: 1fr; }
  .proj-img-trio--40-30-30 .proj-img-duo-item,
  .proj-img-trio--30-30-40 .proj-img-duo-item,
  .proj-img-trio--25-25-50 .proj-img-duo-item { max-height: none; }
  .proj-img-full--gap { margin-top: 4px; }
}