/* ============ 06 · Patrocinadores — "Quem viabiliza nosso trabalho" ============
   Faixa clara entre Territórios e Contato: as logos aparecem nas cores originais, cada uma em um
   cartão branco. Duas margens onduladas (js/patrocinadores.js) ligam o verde-noite ao bege e de volta. */
.patrocinadores {
  position: relative;
  z-index: 2;
  background:
    radial-gradient(ellipse 50% 45% at 85% 20%, rgba(216, 167, 99, .16), transparent 100%),
    radial-gradient(ellipse 45% 40% at 8% 85%, rgba(36, 74, 50, .08), transparent 100%),
    var(--bege);
  color: var(--tinta);
  padding: clamp(80px, 13vh, 150px) calc(var(--margem) + 60px) calc(14vh + clamp(30px, 5vh, 60px)) var(--margem);
  overflow-x: clip;
}
/* margens onduladas: no topo sobe o bege sobre Territórios; embaixo sobe o verde-noite de Contato */
.pt-margem { position: absolute; left: 0; right: 0; height: 14vh; pointer-events: none; z-index: 2; }
.pt-margem svg { width: 100%; height: 100%; }
.pt-margem--topo { top: 1px; transform: translateY(-100%); }
.pt-margem--topo path { fill: var(--bege); }
.pt-margem--base { bottom: -1px; }
.pt-margem--base path { fill: var(--noite); }

/* ---------- Cabeçalho ---------- */
.pt-cabeca { position: relative; z-index: 3; margin-bottom: clamp(48px, 8vh, 96px); }
.pt-cabeca .rotulo { color: var(--tinta); }
.pt-titulo {
  font-size: clamp(40px, 5.4vw, 100px);
  line-height: .94;
  color: var(--floresta);
  --soft: 50;
  text-wrap: balance;
}
.pt-titulo em { color: var(--terracota); }
.pt-titulo .letra { display: inline-block; }

/* ---------- Logos: duas linhas, sem separação por categoria ----------
   12 colunas: em cima, leis e Governo Federal (3 cada); embaixo, a assinatura Secretaria de Cultura +
   Governo do Amapá (4) e os quatro patrocinadores (2 cada). */
.pt-logos {
  position: relative; z-index: 3;
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 20px);
}
.pt-logo {
  grid-column: span 2;
  display: grid; place-items: center;
  height: clamp(130px, 12vw, 164px);
  padding: 18px 20px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(18, 38, 26, .08), 0 18px 34px -26px rgba(18, 38, 26, .45);
  transition: transform .7s var(--ease-org), box-shadow .7s var(--ease-org);
}
.pt-logo:nth-child(-n+4) { grid-column: span 3; }
.pt-logo--largo { grid-column: span 4; }
.pt-logo img {
  width: auto; height: auto;
  max-width: 84%;
  max-height: var(--h, 64px);
  object-fit: contain;
}
.pt-logo:hover { transform: translateY(-5px); box-shadow: 0 2px 4px rgba(18, 38, 26, .08), 0 26px 40px -26px rgba(64, 38, 18, .5); }

/* assinatura "Secretaria de Cultura | Governo do Estado do Amapá" (texto + fio + logo oficial) */
.pt-assinatura { display: flex; align-items: center; justify-content: center; gap: clamp(10px, 1.1vw, 16px); width: 100%; }
.pt-secult {
  font: 800 clamp(11px, .95vw, 14px)/1.08 var(--sans);
  letter-spacing: .02em; text-transform: uppercase; text-align: right;
  color: #3c3c3b;
  white-space: nowrap;
}
.pt-divisor { flex: 0 0 auto; width: 1.5px; height: clamp(40px, 4vw, 54px); background: #3c3c3b; opacity: .55; }
.pt-assinatura img { flex: 0 1 auto; min-width: 0; max-width: 62%; max-height: 66px; }

@media (min-width: 861px) and (max-width: 1180px) {
  .pt-logos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pt-logo, .pt-logo:nth-child(-n+4) { grid-column: span 1; }
  .pt-logo--largo { grid-column: span 2; }
}

/* ---------- Estado inicial da entrada (apenas com JS + movimento) ---------- */
html.anim .patrocinadores.pt-preparado .pt-titulo { visibility: hidden; }

/* ---------- Celular ---------- */
@media (max-width: 860px) {
  .patrocinadores { padding: 70px 20px calc(10vh + 60px); }
  .pt-margem { height: 9vh; }
  .pt-titulo { font-size: clamp(36px, 10.5vw, 56px); }
  .pt-logos { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .pt-logo, .pt-logo:nth-child(-n+4) { grid-column: span 1; height: 112px; padding: 12px; }
  .pt-logo img { max-height: calc(var(--h, 64px) * .72); max-width: 88%; }
  .pt-logo--largo { grid-column: 1 / -1; }
  .pt-secult { font-size: 12px; }
  .pt-divisor { height: 40px; }
  .pt-assinatura img { max-height: 52px; max-width: 58%; }
}

/* ---------- Movimento reduzido ---------- */
html.reduzido .pt-logo:hover { transform: none; }
