/* mobile.css — responsive overrides for inline-styled components */

@media (max-width: 880px) {
  /* hide custom cursor on touch */
  body { cursor: auto !important; }

  /* hide any element using inline grid-template-columns and force single column */
  [style*="grid-template-columns"] {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  /* reduce huge horizontal padding everywhere */
  section, footer, nav {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* reduce vertical section padding */
  section {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }

  /* hero gets special treatment so headline + cta fit */
  section#top {
    padding-top: 100px !important;
    padding-bottom: 140px !important;
    min-height: auto !important;
  }

  /* marquee: zero margins/padding on mobile — full bleed */
  section#marquee {
    padding: 0 !important;
    margin: 0 !important;
  }
  section#marquee .marquee {
    padding: 12px 0 !important;
  }
  section#top h1 {
    font-size: clamp(44px, 11vw, 72px) !important;
    line-height: 1.05 !important;
  }
  section#top p {
    font-size: 16px !important;
  }

  /* nav: hide the middle links, keep only logo + CTA */
  nav {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }
  nav > div:nth-child(2) {
    display: none !important;
  }
  nav a[href*="w.app"], nav button {
    padding: 10px 16px !important;
    font-size: 13px !important;
  }

  /* hero bottom ticker — stack and shrink */
  section#top > div:last-of-type {
    position: static !important;
    margin-top: 32px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 16px !important;
  }
  section#top > div:last-of-type > div {
    flex-wrap: wrap !important;
    gap: 14px !important;
  }

  /* marquee — keep it but shrink */
  .marquee span[style*="font-size"] {
    font-size: clamp(28px, 8vw, 40px) !important;
  }
  .marquee-track {
    gap: 32px !important;
    padding-right: 32px !important;
  }

  /* manifesto — tighter padding, smaller heading */
  section h2 {
    font-size: clamp(28px, 7vw, 44px) !important;
    line-height: 1.1 !important;
  }
  section h3 {
    font-size: clamp(22px, 5.5vw, 32px) !important;
    line-height: 1.15 !important;
  }

  /* metrics: 4 cells → 2 columns */
  section [style*="repeat(4"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  /* projects: 2 cols → 1; tile spans reset */
  section#projetos [style*="grid-row"] {
    grid-row: auto !important;
  }
  /* shrink project tile titles */
  section#projetos h3 {
    font-size: clamp(20px, 5vw, 26px) !important;
  }

  /* method: tab buttons get smaller titles */
  section#metodo button div[style*="clamp"] {
    font-size: clamp(18px, 5vw, 24px) !important;
  }
  /* method right-side card — disable sticky on mobile (sticky is awkward in single-column) */
  section#metodo > div > div > div[style*="sticky"] {
    position: static !important;
    padding: 32px !important;
    min-height: auto !important;
  }

  /* audiences tabs row — keep horizontal but allow wrap */
  section#escolas > div[style*="border-bottom"] {
    flex-wrap: wrap !important;
    gap: 0 !important;
  }
  section#escolas button {
    padding: 14px 16px !important;
    font-size: 12px !important;
  }
  section#escolas button span[style*="margin-right"] {
    margin-right: 6px !important;
  }

  /* contact (MadLibs) — stack heading, body, button */
  section#contato h2 {
    font-size: clamp(32px, 8vw, 48px) !important;
  }
  section#contato p {
    font-size: 16px !important;
  }
  section#contato a span.mag-btn,
  section#contato .mag-btn {
    padding: 16px 20px 16px 24px !important;
    font-size: 14px !important;
  }
  section#contato > a > div:nth-of-type(2) > div:last-child {
    justify-content: flex-start !important;
  }

  /* footer columns: 4 → stack */
  footer h2, footer h3 { font-size: 22px !important; }
  footer img { height: 60px !important; max-width: 240px !important; }

  /* trust band — wrap and shrink */
  #showreel {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  #showreel > div:last-child {
    gap: 18px !important;
    justify-content: flex-start !important;
  }
  #showreel span {
    font-size: 14px !important;
  }

  /* hide scroll-progress bar? keep but ok */

  /* recognition table — make compact */
  section [style*="grid-template-columns: 80px"],
  section [style*="grid-template-columns: 100px"] {
    grid-template-columns: 1fr !important;
    row-gap: 4px !important;
  }
}

/* very small phones */
@media (max-width: 420px) {
  section#top h1 {
    font-size: clamp(36px, 10vw, 56px) !important;
  }
  section h2 {
    font-size: clamp(26px, 7vw, 36px) !important;
  }
  nav img { height: 24px !important; }
}
