/* Hallmark · ficha de projeto. Mesmo sistema da home: grade, faixa, régua. */

.ficha__topo { padding-block: clamp(40px, 6vw, 88px) clamp(28px, 4vw, 48px); }
.ficha__nome { font-size: clamp(2.4rem, 8vw, 6rem);
  margin-block: calc(var(--passo) * 3) calc(var(--passo) * 3); }
.ficha__meta { display: flex; flex-wrap: wrap; gap: var(--passo) calc(var(--passo) * 4);
  align-items: baseline; border-top: 1px solid var(--linha);
  padding-top: calc(var(--passo) * 1.6); }
.ficha__url { color: var(--acento-legivel); text-decoration: none;
  margin-left: auto; display: inline-flex; gap: 0.5em; align-items: baseline; }
.ficha__url--sem { color: var(--tinta-fraca); }

.frame { --altura: min(76vh, 760px); padding-block: calc(var(--passo) * 2); }
.frame__traco { height: var(--altura); overflow: hidden;
  border: 1px solid var(--linha); background: rgba(243, 240, 232, 0.03); }
.frame__rolo { width: 100%; height: auto; display: block; will-change: transform; }

.ficha__corpo { padding-block: clamp(40px, 6vw, 96px); }
.ficha__grade { display: grid; gap: clamp(28px, 4vw, 56px) clamp(28px, 5vw, 72px);
  grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) {
  .ficha__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ficha__bloco--largo { grid-column: 1 / -1; order: 1; }
}
.ficha__bloco { border-top: 1px solid var(--linha); padding-top: calc(var(--passo) * 2); }
.ficha__bloco p:last-child { max-width: 52ch; margin-block: 0; }
.ficha__rotulo { margin-bottom: 0.9em; }
.ficha__decisoes { list-style: none; padding: 0; margin: 0; }
.ficha__decisoes li { display: grid; grid-template-columns: 3rem minmax(0, 1fr);
  gap: calc(var(--passo) * 2); align-items: baseline;
  border-top: 1px solid var(--linha); padding-block: calc(var(--passo) * 1.6);
  max-width: 92ch; }
.ficha__decisoes li:first-child { border-top: 0; padding-top: 0; }
.ficha__dn { color: var(--acento-legivel); }

.ficha__rodape { padding-block: clamp(40px, 6vw, 88px); }
.ficha__rodape .envoltorio { display: flex; flex-wrap: wrap; gap: calc(var(--passo) * 4);
  align-items: end; justify-content: space-between;
  border-top: 1px solid var(--linha); padding-top: calc(var(--passo) * 3); }
.ficha__proximo { display: grid; gap: 0.4em; text-decoration: none; }
.ficha__proximo-nome { font-family: var(--fonte-display);
  font-weight: var(--peso-display); letter-spacing: var(--tracking-display);
  font-size: clamp(1.6rem, 5vw, 3rem); color: var(--tinta);
  overflow-wrap: anywhere; }
.ficha__proximo:hover .ficha__proximo-nome { color: var(--acento-legivel); }
.ficha__cta { display: grid; gap: var(--passo); justify-items: start; }
.ficha__cta p { margin: 0; font-family: var(--fonte-display);
  font-weight: var(--peso-display); letter-spacing: var(--tracking-display);
  font-size: 1.3rem; color: var(--tinta); }
