/* ==========================================================================
   11 · Rodapé
   Referência 10.3 (tela 14 do Sentira): faixa de terreno de partículas no
   topo, que desce e some no NightSkye; logo no centro; estrutura de rodapé em quatro colunas e barra legal.

   Contraste sobre NightSkye:
     Mint (títulos, nome) ................... 19,3:1
     Mint 72% (descrição, listas) ........... 11:1
     Mint 55% (rótulos de coluna, barra) .... 6,01:1
     Sky (destaque, assinatura) ............. 14,6:1
   ========================================================================== */

.v2-fim {
  position: relative;
  overflow: hidden;
  background: var(--fundo);
  border-top: var(--linha) solid var(--regua);
}

/* --- Terreno -------------------------------------------------------------- */

.v2-fim__terreno {
  position: relative;
  height: clamp(12rem, 6rem + 16vw, 20rem);
  /* a malha some no fundo antes de chegar na chamada */
  -webkit-mask-image: linear-gradient(to bottom, #000 55%, transparent 100%);
          mask-image: linear-gradient(to bottom, #000 55%, transparent 100%);
}

.v2-fim__canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

/* --- Chamada -------------------------------------------------------------- */

.v2-fim__chamada {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--s-5);
  padding-block: var(--s-5) clamp(3rem, 1.5rem + 4vw, 5rem);
}

.v2-fim__logo { width: 110px; height: auto; }

/* --- Estrutura do rodapé ------------------------------------------------- */

.v2-fim__mapa {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr));
  gap: var(--s-7) var(--s-6);
  padding-block: var(--s-8) var(--s-7);
  border-top: var(--linha) solid var(--regua);
}

.v2-fim__nome {
  margin: 0;
  font-size: 18px;
  font-weight: var(--w-semibold);
  color: var(--ink);
}

.v2-fim__descricao {
  max-width: 34ch;
  margin: var(--s-3) 0 0;
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--ink-2);
}

.v2-fim__assinatura {
  margin: var(--s-5) 0 0;
  font-size: var(--fs-small);
  font-style: italic;
  font-weight: var(--w-light);
  color: var(--gp-sky);
}

.v2-fim__rotulo {
  margin: 0 0 var(--s-4);
  font-size: var(--fs-label);
  font-weight: var(--w-semibold);
  letter-spacing: var(--tr-label);
  text-transform: uppercase;
  color: var(--ink-3);
}

.v2-fim__lista {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--ink-2);
}

/* contatos em texto selecionável, com o tipo em cima */
.v2-fim__tipo {
  display: block;
  font-size: 11px;
  color: var(--ink-3);
}
.v2-fim__lista li:has(.v2-fim__tipo) { user-select: all; }
.v2-fim__tipo { user-select: none; }

.v2-fim__link {
  color: var(--ink);
  text-decoration: none;
  transition: color var(--d-2) var(--ease-out-quart);
}
.v2-fim__link:hover { color: var(--gp-sky); text-decoration: underline; text-underline-offset: 3px; }

/* --- Barra legal ---------------------------------------------------------- */

.v2-fim__barra {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: var(--s-4) var(--s-5);
  padding-block: var(--s-5) var(--s-6);
  border-top: var(--linha) solid var(--regua);
  font-size: 13px;
  color: var(--ink-3);
}

.v2-fim__copy { margin: 0; text-align: center; }

.v2-fim__topo {
  justify-self: start;
  color: inherit;
  text-decoration: none;
}
.v2-fim__topo:hover { color: var(--ink); }

.v2-fim__privacidade { justify-self: end; color: var(--ink-3); }

.v2-fim__topo,
.v2-fim__privacidade { padding-block: 12px; margin-block: -12px; }   /* alvo de 44px */

/* --- Responsivo ----------------------------------------------------------- */

@media (max-width: 60rem) {
  .v2-fim__mapa { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .v2-fim__marca { grid-column: 1 / -1; }
}

@media (max-width: 36rem) {
  .v2-fim__mapa { grid-template-columns: minmax(0, 1fr); gap: var(--s-6); padding-block: var(--s-7) var(--s-6); }
  .v2-fim__barra { grid-template-columns: minmax(0, 1fr); justify-items: center; text-align: center; }
  .v2-fim__topo, .v2-fim__privacidade { justify-self: center; }
  .v2-fim__copy { order: -1; }
}

