/* ===== /diagnostico/ · a Escada de Maturidade IA (auto-locate) · herda home.css ===== */
.diag { max-width: 52rem; margin: 0 auto; padding: 8.5rem clamp(1.25rem, 5vw, 4.5rem) clamp(4rem, 9vh, 7rem); }
.diag__head { text-align: center; margin-bottom: clamp(2.5rem, 6vh, 4rem); }
.diag__eyebrow { font-family: var(--display); font-size: .78rem; letter-spacing: .22em; color: var(--gold); }
.diag__title { font-size: clamp(2.2rem, 5.5vw, 3.6rem); line-height: 1.03; margin: .9rem 0 1.1rem; text-wrap: balance; }
.diag__title em { font-style: normal; background: var(--grad-fogo); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.diag__sub { color: var(--osso-70); font-size: 1.1rem; max-width: 34rem; margin: 0 auto; }
.diag__hint { text-align: center; font-size: .85rem; color: var(--osso-70); margin-bottom: 1.4rem; font-family: var(--display); letter-spacing: .04em; }

/* a escada */
.escada { display: grid; gap: .9rem; }
.rung {
  display: grid; grid-template-columns: 3rem 1fr auto; gap: 1.1rem; align-items: center;
  width: 100%; text-align: left; cursor: pointer;
  padding: 1.3rem 1.4rem; border-radius: var(--r-card);
  background: var(--ceu-2); border: 1px solid var(--fio); color: inherit;
  transition: border-color .3s, transform .2s var(--easa), background .3s;
}
.rung:hover { border-color: oklch(80% 0.16 84 / .4); transform: translateY(-2px); }
.rung__n { font-family: var(--display); font-size: 1.15rem; width: 3rem; height: 3rem; border-radius: 50%;
  display: grid; place-items: center; color: #fff; background: var(--grad-fogo); box-shadow: 0 4px 16px oklch(58% 0.24 356 / .3); }
.rung__nome { font-family: var(--display); font-size: 1.15rem; }
.rung__tag { display: block; font-family: var(--corpo); font-size: .92rem; color: var(--osso-70); margin-top: .2rem; }
.rung__seta { font-size: 1.2rem; color: var(--osso-70); transition: transform .3s; }
.rung[aria-expanded="true"] { border-color: oklch(80% 0.16 84 / .6); background: var(--ceu); }
.rung[aria-expanded="true"] .rung__seta { transform: rotate(90deg); color: var(--gold); }

/* painel de detalhe */
.rung-det { overflow: hidden; max-height: 0; transition: max-height .5s var(--easa); }
.rung-det[data-open="true"] { max-height: 40rem; }
.rung-det__in { padding: 1.4rem 1.5rem 1.6rem; margin-top: .2rem; border-radius: var(--r-card);
  background: var(--ceu-2); border: 1px solid var(--fio); border-left: 3px solid transparent; border-image: var(--grad-fogo) 1; }
.rung-det__row { margin-bottom: 1rem; }
.rung-det__k { display: block; font-family: var(--display); font-size: .72rem; letter-spacing: .16em; color: var(--gold); margin-bottom: .3rem; }
.rung-det__v { color: var(--osso); font-size: 1.02rem; }
.rung-det__cta { margin-top: 1.2rem; }

@media (max-width: 620px) {
  .rung { grid-template-columns: 2.4rem 1fr auto; gap: .8rem; padding: 1.1rem; }
  .rung__n { width: 2.4rem; height: 2.4rem; font-size: 1rem; }
}
