/* ═══════════════════════════════════════════════════════════════════════════
 * arke-identidade-marca.css — a página /site/servicos/identidade-marca.
 *
 * A TESE: identidade não é logotipo, é sistema. Origem → significado →
 * posicionamento → personalidade → linguagem → forma → experiência. A página
 * inteira é construída para provar isso, então o layout precisa parecer um
 * SISTEMA DE IDENTIDADE — camadas, tensões, tokens, estados — e nunca um
 * portfólio de agência.
 *
 * O componente-assinatura daqui é `.idm-tensoes`: os pares "técnica MAS não
 * fria", "sofisticada MAS não distante". É o único jeito honesto de mostrar
 * personalidade de marca — adjetivo sozinho não diz nada, o par diz.
 *
 * Reusa o vocabulário de arke-home.css (.ark-sec, .ark-eyebrow, .ark-lead,
 * .ark-rv). Prefixo `idm-` para o que é próprio. Zero cor solta.
 *
 * ⚠️ NOME DO ARQUIVO SEGUE O SLUG DA ROTA, como em arke-marketing-digital.css.
 * A convenção nasceu de um susto: `arke-marketing.css` já existia (é a página
 * do MÓDULO Marketing, usada por dez páginas) e quase foi sobrescrito.
 *
 * ⚠️ DÍVIDA CONHECIDA: botão, placeholder, faixa, FAQ e formulário são gêmeos
 * entre as quatro páginas de serviço, mudando só o prefixo. Com as 7 prontas,
 * extrair um `arke-servicos.css` com esses cinco componentes.
 * ═══════════════════════════════════════════════════════════════════════════ */

/* ── HERO ────────────────────────────────────────────────────────────────── */
.idm-hero {
  position: relative; overflow: hidden; background: var(--st-bg-1, #08080A);
  padding-block: clamp(120px, 13vw, 190px) 0;
}
.idm-hero__grafo {
  position: absolute; inset: 0; width: 100%; height: 100%;
  display: block; pointer-events: none; z-index: 0; opacity: .5;
}
.idm-hero > .container { position: relative; z-index: 2; }
.idm-hero::after {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: radial-gradient(58% 62% at 24% 42%, rgba(var(--st-bg-rgb, 8, 8, 10),.92), rgba(var(--st-bg-rgb, 8, 8, 10),.5) 46%, transparent 76%);
}
.idm-hero__t {
  margin: clamp(18px, 2vw, 28px) 0 0;
  font-size: clamp(30px, 3.9vw, 56px); font-weight: 800;
  line-height: 1.04; letter-spacing: -.035em; color: var(--st-ink-1b, #F2EFE9);
}
.idm-hero__t em {
  display: block; margin-top: .1em;
  font-family: 'Playfair Display', Georgia, serif; font-style: italic; font-weight: 400;
  color: var(--accent, var(--st-c-c4973a, #C4973A)); letter-spacing: -.02em; font-size: .88em;
}
.idm-hero__arte { position: relative; }
.idm-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: clamp(26px, 2.8vw, 38px); }
.idm-apoio { margin: clamp(22px, 2.4vw, 32px) 0 0; font-size: 14.5px; line-height: 1.7; color: var(--st-ink-5, #8B8680); }
.idm-apoio b { color: var(--st-ink-2b, #D8D3CB); font-weight: 600; }

/* as cinco camadas sob a arte do hero */
.idm-camadas {
  display: grid; grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px; margin-top: 16px;
  background: rgba(var(--st-ink-rgb, 245, 242, 237),.09); border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.09);
}
.idm-camadas > div { padding: 12px 10px; background: var(--st-bg-1c, #0A0A0C); }
.idm-camadas b {
  display: block; font-family: var(--font-mono, monospace); font-size: 9px;
  letter-spacing: .14em; text-transform: uppercase; color: var(--accent, var(--st-c-c4973a, #C4973A));
}
.idm-camadas span { display: block; margin-top: 5px; font-size: 11.5px; line-height: 1.4; color: var(--st-ink-5, #8B8680); }
@media (max-width: 767px) { .idm-camadas { grid-template-columns: 1fr 1fr; } }

/* ── BOTÕES ──────────────────────────────────────────────────────────────── */
.idm-btn {
  display: inline-flex; align-items: center; gap: 9px;
  padding: 14px 24px; border-radius: 999px;
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.20);
  font-family: var(--font-mono, monospace); font-size: 11px;
  letter-spacing: .14em; text-transform: uppercase; color: var(--st-ink-2, #E6E2DA);
  text-decoration: none; transition: border-color .3s ease, color .3s ease, background .3s ease;
}
.idm-btn:hover { border-color: rgba(var(--accent-rgb, 196,151,58), .6); color: var(--accent, var(--st-c-c4973a, #C4973A)); }
.idm-btn--forte { background: var(--accent, #C4973A); border-color: var(--accent, #C4973A); color: #0A0A0A; font-weight: 700; }
.idm-btn--forte:hover { background: #D4A94A; border-color: #D4A94A; color: #0A0A0A; }

/* ── FAIXA ───────────────────────────────────────────────────────────────── */
.idm-faixa {
  position: relative; z-index: 2; margin-top: clamp(50px, 5.4vw, 84px);
  padding-block: 18px; overflow: hidden;
  border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.09);
  border-bottom: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.09);
  -webkit-mask-image: linear-gradient(90deg, transparent, var(--st-bg-0, #000) 12%, var(--st-bg-0, #000) 88%, transparent);
          mask-image: linear-gradient(90deg, transparent, var(--st-bg-0, #000) 12%, var(--st-bg-0, #000) 88%, transparent);
}
.idm-faixa__trilho { display: flex; gap: clamp(26px, 3.2vw, 50px); width: max-content; animation: idmCorre 42s linear infinite; }
.idm-faixa__trilho span {
  font-family: var(--font-mono, monospace); font-size: 11px;
  letter-spacing: .2em; text-transform: uppercase; color: var(--st-ink-6, #6B6560); white-space: nowrap;
}
.idm-faixa__trilho span:nth-child(4n+1) { color: var(--accent, var(--st-c-c4973a, #C4973A)); }
@keyframes idmCorre { to { transform: translateX(-50%); } }
.idm-faixa:hover .idm-faixa__trilho { animation-play-state: paused; }

/* ── PLACEHOLDERS ────────────────────────────────────────────────────────── */
.idm-ph {
  position: relative; display: grid; align-content: center; justify-items: center;
  gap: 7px; padding: 22px; text-align: center;
  border: 1px dashed rgba(var(--st-ink-rgb, 245, 242, 237),.16); border-radius: 6px;
  background:
    radial-gradient(70% 80% at 50% 40%, rgba(var(--accent-rgb, 196,151,58), .055), transparent 70%),
    repeating-linear-gradient(135deg, rgba(var(--st-ink-rgb, 245, 242, 237),.018) 0 12px, transparent 12px 24px),
    var(--st-p-0d0d10, #0D0D10);
}
.idm-ph--43  { aspect-ratio: 4 / 3; }
.idm-ph--11  { aspect-ratio: 1 / 1; }
.idm-ph--169 { aspect-ratio: 16 / 9; }
.idm-ph--32  { aspect-ratio: 3 / 2; }
.idm-ph--219 { aspect-ratio: 21 / 9; }
.idm-ph__k {
  font-family: var(--font-mono, monospace); font-size: 9px; letter-spacing: .2em;
  text-transform: uppercase; color: var(--accent, var(--st-c-c4973a, #C4973A)); opacity: .8;
}
.idm-ph__n { font-family: var(--font-mono, monospace); font-size: 11px; color: var(--st-ink-5, #8B8680); word-break: break-all; }
.idm-ph__d { font-size: 12px; color: var(--st-ink-6b, #5F5A54); max-width: 34ch; }
.idm-ph--mini { margin-bottom: 16px; padding: 14px; }
.idm-ph--mini .idm-ph__n { font-size: 9px; }

/* ── TEXTO ───────────────────────────────────────────────────────────────── */
.idm-rotulo {
  display: block; margin: 0 0 12px;
  font-family: var(--font-mono, monospace); font-size: 10px;
  letter-spacing: .18em; text-transform: uppercase; color: var(--accent, var(--st-c-c4973a, #C4973A));
}
.idm-sub { margin: 0 0 12px; font-size: clamp(19px, 1.9vw, 26px); font-weight: 700; letter-spacing: -.02em; color: var(--st-ink-1b, #F2EFE9); }
.idm-d { margin: 0 0 14px; font-size: 14.5px; line-height: 1.7; color: var(--st-ink-4b, #9A9590); max-width: 64ch; }
.idm-d b { color: var(--st-ink-2b, #D8D3CB); font-weight: 600; }

.idm-perguntas { margin: 0; padding: 0; list-style: none; }
.idm-perguntas li {
  position: relative; padding-left: 20px; margin-bottom: 9px;
  font-size: 15px; line-height: 1.6; color: var(--st-ink-3, #C9C4BC);
}
.idm-perguntas li::before {
  content: "?"; position: absolute; left: 0; top: 0;
  font-family: var(--font-mono, monospace); font-size: 13px; color: var(--accent, var(--st-c-c4973a, #C4973A));
}
.idm-perguntas--afirma li::before { content: "—"; font-size: 11px; top: .1em; }
.idm-perguntas--alerta li::before { content: "×"; color: var(--st-c-c9a08b, #C9A08B); font-size: 13px; }

.idm-tags { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.idm-tags li {
  padding: 5px 11px; border-radius: 3px;
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.10); background: rgba(var(--st-ink-rgb, 245, 242, 237),.03);
  font-family: var(--font-mono, monospace); font-size: 10px; letter-spacing: .06em; color: var(--st-ink-4, #A29C93);
}
/* o que a marca NÃO é: mesma pílula, riscada */
.idm-tags--nao li { color: var(--st-ink-6, #6B6560); text-decoration: line-through; text-decoration-color: rgba(200,120,90,.5); }

.idm-selo {
  margin: clamp(22px, 2.4vw, 32px) 0 0; padding-left: 15px;
  border-left: 2px solid var(--accent, #C4973A);
  font-family: 'Playfair Display', Georgia, serif; font-style: italic;
  font-size: clamp(18px, 1.8vw, 25px); line-height: 1.4; color: var(--st-ink-1b, #F2EFE9);
}

/* ── O PAR POBRE × RICO ──────────────────────────────────────────────────── */
.idm-versus {
  display: grid; grid-template-columns: 1fr 1.25fr; gap: 1px; margin-top: 18px;
  background: rgba(var(--st-ink-rgb, 245, 242, 237),.09); border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.09);
}
.idm-versus__lado { padding: clamp(16px, 1.8vw, 24px); background: var(--st-bg-1c, #0A0A0C); }
.idm-versus__lado p { margin: 0; font-size: clamp(14.5px, 1.4vw, 17px); line-height: 1.55; }
.idm-versus__lado--pobre p { color: var(--st-ink-6, #6B6560); }
.idm-versus__lado--rico { background: var(--st-p-0e0e12, #0E0E12); }
.idm-versus__lado--rico p { color: var(--st-ink-1b, #F2EFE9); }
@media (max-width: 767px) { .idm-versus { grid-template-columns: 1fr; } }

/* ── CADEIAS ─────────────────────────────────────────────────────────────── */
.idm-cadeia {
  display: flex; flex-wrap: wrap; gap: 8px; margin: clamp(28px, 3vw, 42px) 0 0; padding: 0; list-style: none;
}
.idm-cadeia li {
  display: inline-flex; align-items: center;
  padding: 9px 15px; border-radius: 3px;
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); background: rgba(var(--st-ink-rgb, 245, 242, 237),.03);
  font-family: var(--font-mono, monospace); font-size: 10.5px; letter-spacing: .1em; color: var(--st-ink-3, #C9C4BC);
}
.idm-cadeia li:not(:last-child)::after { content: "→"; margin-left: 12px; color: var(--accent, var(--st-c-c4973a, #C4973A)); opacity: .8; }
.idm-cadeia li:last-child { border-color: rgba(var(--accent-rgb, 196,151,58), .4); color: var(--accent, var(--st-c-c4973a, #C4973A)); }
.idm-cadeia--compacta { margin-top: 18px; }
.idm-cadeia--compacta li { padding: 7px 12px; font-size: 9.5px; }

/* uma marca, várias campanhas: o primeiro item é o tronco */
.idm-ramos { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.idm-ramos li {
  padding: 8px 14px; border-radius: 3px;
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12);
  font-family: var(--font-mono, monospace); font-size: 10px; letter-spacing: .1em; color: var(--st-ink-4, #A29C93);
}
.idm-ramos li:first-child {
  border-color: rgba(var(--accent-rgb, 196,151,58), .5);
  background: rgba(var(--accent-rgb, 196,151,58), .07); color: var(--accent, var(--st-c-c4973a, #C4973A)); font-weight: 600;
}

/* ── ETAPAS DO MÉTODO ────────────────────────────────────────────────────── */
.idm-etapas {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.4vw, 34px); margin-top: clamp(38px, 4vw, 58px);
}
.idm-etapa__n {
  display: block; font-family: var(--font-mono, monospace); font-size: 10px;
  letter-spacing: .2em; color: var(--accent, var(--st-c-c4973a, #C4973A)); margin-bottom: 8px;
}
.idm-etapa h3 { margin: 0 0 12px; font-size: clamp(20px, 1.9vw, 25px); font-weight: 700; color: var(--st-ink-1b, #F2EFE9); }
.idm-etapa ul { margin: 0; padding: 0; list-style: none; }
.idm-etapa ul li { padding: 6px 0; border-bottom: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.07); font-size: 13px; color: var(--st-ink-4b, #9A9590); }
@media (max-width: 991px) { .idm-etapas { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575px) { .idm-etapas { grid-template-columns: 1fr; } }

/* ── REMATE ──────────────────────────────────────────────────────────────── */
.idm-remate {
  margin-top: clamp(40px, 4.4vw, 64px); padding-top: clamp(26px, 3vw, 38px);
  border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); max-width: 52ch;
}
.idm-remate h3 {
  margin: 0 0 10px; font-size: clamp(23px, 2.5vw, 34px); font-weight: 800;
  letter-spacing: -.03em; line-height: 1.1; color: var(--st-ink-1b, #F2EFE9);
}
.idm-remate p {
  margin: 0; font-family: 'Playfair Display', Georgia, serif; font-style: italic;
  font-size: clamp(18px, 1.9vw, 26px); line-height: 1.3; color: var(--accent, var(--st-c-c4973a, #C4973A));
}

/* ── BLOCOS DA ESSÊNCIA ──────────────────────────────────────────────────── */
.idm-blocos {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: clamp(26px, 3vw, 46px); margin-top: clamp(38px, 4vw, 58px);
}
.idm-bloco { padding-top: clamp(20px, 2.2vw, 30px); border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); }
.idm-bloco__k {
  display: block; margin-bottom: 10px;
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .18em; text-transform: uppercase; color: var(--accent, var(--st-c-c4973a, #C4973A));
}
.idm-bloco h3 { margin: 0 0 12px; font-size: clamp(19px, 1.9vw, 25px); font-weight: 700; letter-spacing: -.02em; color: var(--st-ink-1b, #F2EFE9); }
@media (max-width: 991px) { .idm-blocos { grid-template-columns: 1fr; } }

/* a fórmula do posicionamento */
.idm-formula { margin: 0 0 18px; display: grid; grid-template-columns: auto 1fr; gap: 8px 16px; }
.idm-formula dt {
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .14em; text-transform: uppercase; color: var(--st-ink-6b, #5F5A54); padding-top: 3px;
}
.idm-formula dd { margin: 0; font-size: 15px; color: var(--st-ink-3, #C9C4BC); }

/* 🔴 O COMPONENTE-ASSINATURA: personalidade em TENSÕES.
   "sofisticada" sozinho não diz nada; "sofisticada mas não distante" diz. */
.idm-tensoes { margin: 0 0 18px; padding: 0; list-style: none; }
.idm-tensoes li {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px;
  padding: 9px 0; border-bottom: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.08);
}
.idm-tensoes b { font-size: 15.5px; font-weight: 650; color: var(--st-ink-1b, #F2EFE9); }
.idm-tensoes i { font-style: italic; font-family: 'Playfair Display', Georgia, serif; font-size: 15px; color: var(--st-ink-6, #6B6560); }

.idm-voz { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 16px; }
@media (max-width: 575px) { .idm-voz { grid-template-columns: 1fr; } }

/* ── A EXPRESSÃO ─────────────────────────────────────────────────────────── */
.idm-exp {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: clamp(26px, 3vw, 46px); margin-top: clamp(38px, 4vw, 58px);
}
.idm-exp__item { padding-top: clamp(20px, 2.2vw, 30px); border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); }
.idm-exp__n {
  display: block; margin-bottom: 10px;
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .18em; text-transform: uppercase; color: var(--accent, var(--st-c-c4973a, #C4973A));
}
.idm-exp__item h3 { margin: 0 0 12px; font-size: clamp(19px, 1.8vw, 24px); font-weight: 700; letter-spacing: -.02em; color: var(--st-ink-1b, #F2EFE9); }
@media (max-width: 991px) { .idm-exp { grid-template-columns: 1fr; } }

.idm-tokens { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 16px; padding: 0; list-style: none; }
.idm-tokens li {
  padding: 6px 11px; border-radius: 3px;
  border: 1px solid rgba(var(--accent-rgb, 196,151,58), .2);
  background: rgba(var(--accent-rgb, 196,151,58), .05);
  font-family: var(--font-mono, monospace); font-size: 10px; color: var(--st-t-d8cbb0, #D8CBB0);
}

/* ── FICHA DE TOKENS ─────────────────────────────────────────────────────── */
.idm-tokens-ficha {
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.14); border-radius: 6px;
  background: var(--st-bg-1e, #0E0E11); padding: clamp(20px, 2.2vw, 28px);
}
.idm-ficha__k {
  display: block; margin-bottom: 16px;
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .18em; text-transform: uppercase; color: var(--st-ink-6b, #5F5A54);
}
.idm-tokens-ficha dl { margin: 0; display: grid; grid-template-columns: auto 1fr; gap: 9px 16px; }
.idm-tokens-ficha dt {
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .13em; text-transform: uppercase; color: var(--st-ink-6b, #5F5A54); padding-top: 3px;
}
.idm-tokens-ficha dd { margin: 0; font-family: var(--font-mono, monospace); font-size: 13.5px; color: var(--st-ink-3, #C9C4BC); }
/* o aviso de que os valores são exemplo é obrigatório: número na tela sem
   fonte vira promessa */
.idm-ficha__nota { margin: 16px 0 0; font-size: 12px; line-height: 1.55; color: var(--st-ink-6b, #5F5A54); }
.idm-ficha__nota b { color: var(--accent, var(--st-c-c4973a, #C4973A)); }

/* ── A IDENTIDADE EM USO ─────────────────────────────────────────────────── */
.idm-prods { display: grid; gap: clamp(28px, 3vw, 46px); margin-top: clamp(38px, 4vw, 58px); }
.idm-prod { padding-top: clamp(22px, 2.4vw, 32px); border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); }
/* cor de produto: fonte é lib/cores-arke.ts, a mesma do admin */
.idm-prod[data-produto="studio"] { --prod: #A855F7; }
.idm-prod[data-produto="cms"]    { --prod: #06B6D4; }
.idm-prod__k {
  display: block; margin-bottom: 10px;
  font-family: var(--font-mono, monospace); font-size: 10.5px;
  letter-spacing: .16em; color: var(--prod, var(--accent, var(--st-c-c4973a, #C4973A)));
}
.idm-prod h3 { margin: 0 0 12px; font-size: clamp(20px, 2vw, 27px); font-weight: 700; letter-spacing: -.02em; color: var(--st-ink-1b, #F2EFE9); }

.idm-conectadas { margin-top: clamp(34px, 3.6vw, 50px); padding-top: clamp(24px, 2.6vw, 34px); border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); }
.idm-conectadas > div { display: flex; flex-wrap: wrap; gap: 9px; }
.idm-conectadas span {
  padding: 9px 16px; border-radius: 999px;
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); background: rgba(var(--st-ink-rgb, 245, 242, 237),.03);
  font-size: 13.5px; color: var(--st-ink-3, #C9C4BC);
}

/* ── GOVERNANÇA ──────────────────────────────────────────────────────────── */
.idm-gov { margin-top: clamp(32px, 3.4vw, 48px); }
.idm-selos { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 16px; padding: 0; list-style: none; }
.idm-selos li {
  padding: 6px 12px; border-radius: 3px;
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12);
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .1em; text-transform: uppercase; color: var(--st-ink-5, #8B8680);
}
.idm-selos li.e-ok { border-color: rgba(var(--accent-rgb, 196,151,58), .42); color: var(--accent, var(--st-c-c4973a, #C4973A)); }
.idm-selos li.e-alerta { border-color: rgba(200,120,90,.34); color: var(--st-c-c9a08b, #C9A08B); }

/* ── APLICAÇÕES ──────────────────────────────────────────────────────────── */
.idm-apps { display: grid; gap: clamp(28px, 3vw, 46px); margin-top: clamp(38px, 4vw, 56px); }
.idm-app {
  display: grid; grid-template-columns: 1fr minmax(0, 360px);
  gap: clamp(22px, 3vw, 50px); align-items: center;
  padding-top: clamp(24px, 2.6vw, 36px); border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12);
}
.idm-app:nth-child(even) > .idm-app__txt { order: 2; }
.idm-app__n {
  display: block; font-family: var(--font-mono, monospace); font-size: 10px;
  letter-spacing: .2em; color: var(--accent, var(--st-c-c4973a, #C4973A)); margin-bottom: 10px;
}
.idm-app h3 { margin: 0 0 14px; font-size: clamp(21px, 2.2vw, 30px); font-weight: 700; letter-spacing: -.02em; color: var(--st-ink-1b, #F2EFE9); }
@media (max-width: 767px) {
  .idm-app { grid-template-columns: 1fr; }
  .idm-app:nth-child(even) > .idm-app__txt { order: 0; }
}

.idm-setores { display: grid; gap: 1px; background: rgba(var(--st-ink-rgb, 245, 242, 237),.09); border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.09); }
.idm-setores > div { padding: 14px 16px; background: var(--st-bg-1c, #0A0A0C); }
.idm-setores b { display: block; font-size: 14.5px; font-weight: 650; color: var(--st-ink-1b, #F2EFE9); margin-bottom: 4px; }
.idm-setores span { font-size: 12.5px; line-height: 1.5; color: var(--st-ink-5, #8B8680); }

/* ── PANTEON ─────────────────────────────────────────────────────────────── */
.idm-agentes {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 28px); margin-top: clamp(34px, 3.6vw, 50px);
}
.idm-agentes > div { padding-top: 18px; border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.14); }
.idm-agentes b { display: block; font-size: 17px; font-weight: 700; color: var(--st-ink-1b, #F2EFE9); }
.idm-agentes span {
  display: block; margin-top: 4px;
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .13em; text-transform: uppercase; color: var(--accent, var(--st-c-c4973a, #C4973A));
}
.idm-agentes q {
  display: block; margin-top: 11px; quotes: none;
  font-family: 'Playfair Display', Georgia, serif; font-style: italic;
  font-size: 14.5px; line-height: 1.45; color: var(--st-ink-3, #C9C4BC);
}
@media (max-width: 767px) { .idm-agentes { grid-template-columns: 1fr; } }

/* ── SKILLS E WORKFLOW ───────────────────────────────────────────────────── */
.idm-skills { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; padding: 0; list-style: none; }
.idm-skills li {
  padding: 8px 13px; border-radius: 3px;
  border: 1px solid rgba(var(--accent-rgb, 196,151,58), .22);
  background: rgba(var(--accent-rgb, 196,151,58), .05);
  font-family: var(--font-mono, monospace); font-size: 10.5px; color: var(--st-t-d8cbb0, #D8CBB0);
}
.idm-workflow { margin: 0; padding: 0; list-style: none; counter-reset: w; }
.idm-workflow li {
  counter-increment: w; position: relative; padding: 9px 0 9px 34px;
  border-bottom: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.07);
  font-family: var(--font-mono, monospace); font-size: 10px; letter-spacing: .08em; color: var(--st-ink-3, #C9C4BC);
}
.idm-workflow li::before {
  content: counter(w, decimal-leading-zero); position: absolute; left: 0; top: 10px;
  font-size: 9px; color: var(--st-ink-6b, #5F5A54);
}
.idm-workflow li:last-child { border-bottom: 0; color: var(--accent, var(--st-c-c4973a, #C4973A)); }

/* ── ENTREGÁVEIS ─────────────────────────────────────────────────────────── */
.idm-entregas { display: flex; flex-wrap: wrap; gap: 9px; margin-top: clamp(32px, 3.4vw, 48px); }
.idm-entregas span {
  padding: 10px 16px; border-radius: 999px;
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); background: rgba(var(--st-ink-rgb, 245, 242, 237),.03);
  font-size: 13.5px; color: var(--st-ink-3, #C9C4BC);
}

/* ── PROVAS E USOS ───────────────────────────────────────────────────────── */
.idm-provas { margin-top: clamp(36px, 3.8vw, 54px); }
.idm-prova { height: 100%; padding-top: 20px; border-top: 1px solid rgba(var(--accent-rgb, 196,151,58), .34); margin-bottom: 26px; }
.idm-prova b { display: block; font-size: 16px; font-weight: 700; color: var(--st-ink-1b, #F2EFE9); margin-bottom: 9px; }
.idm-prova p { margin: 0; font-size: 13.5px; line-height: 1.7; color: var(--st-ink-5, #8B8680); }

.idm-usos { margin: 0; padding: 0; list-style: none; }
.idm-usos li {
  display: flex; align-items: baseline; gap: 10px;
  padding: 9px 0; border-bottom: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.08);
}
.idm-usos b { font-size: 14.5px; font-weight: 650; color: var(--st-ink-1b, #F2EFE9); min-width: 12ch; }
.idm-usos span { font-family: 'Playfair Display', Georgia, serif; font-style: italic; font-size: 15px; color: var(--accent, var(--st-c-c4973a, #C4973A)); }

/* ── FAQ ─────────────────────────────────────────────────────────────────── */
.idm-faq { margin-top: clamp(32px, 3.4vw, 48px); border-top: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.10); }
.idm-faq details { border-bottom: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.10); }
.idm-faq summary {
  list-style: none; cursor: pointer; padding: clamp(18px, 2vw, 24px) 40px clamp(18px, 2vw, 24px) 0;
  position: relative; font-size: clamp(16px, 1.5vw, 19px); font-weight: 600; color: var(--st-ink-1b, #F2EFE9);
  transition: color .25s ease;
}
.idm-faq summary::-webkit-details-marker { display: none; }
.idm-faq summary:hover { color: var(--accent, var(--st-c-c4973a, #C4973A)); }
.idm-faq summary::after {
  content: ""; position: absolute; right: 6px; top: 50%; width: 11px; height: 11px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: translateY(-70%) rotate(45deg); transition: transform .3s ease;
}
.idm-faq details[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.idm-faq details p {
  margin: 0; padding: 0 40px clamp(20px, 2.2vw, 28px) 0;
  font-size: 15px; line-height: 1.75; color: var(--st-ink-4b, #9A9590); max-width: 76ch;
}

/* ── CTA FINAL + FORMULÁRIO ──────────────────────────────────────────────── */
.idm-fim { background: var(--st-bg-1, #08080A); position: relative; }
.idm-fim::before {
  content: ""; position: absolute; inset-inline: 0; top: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--accent-rgb, 196,151,58), .4) 30%, rgba(var(--accent-rgb, 196,151,58), .4) 70%, transparent);
}
.idm-fim__t {
  margin: clamp(16px, 1.8vw, 24px) 0 22px;
  font-size: clamp(28px, 3.6vw, 52px); font-weight: 800;
  line-height: 1.05; letter-spacing: -.035em; color: var(--st-ink-1b, #F2EFE9);
}
.idm-fim__t em {
  display: block; margin-top: .1em;
  font-family: 'Playfair Display', Georgia, serif; font-style: italic; font-weight: 400;
  color: var(--accent, var(--st-c-c4973a, #C4973A)); font-size: .56em; line-height: 1.3;
}

.idm-form {
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.12); border-radius: 6px;
  background: var(--st-bg-1e, #0E0E11); padding: clamp(22px, 2.4vw, 34px);
  position: sticky; top: 110px;
}
@media (max-width: 991px) { .idm-form { position: static; margin-top: 40px; } }
.idm-form__t { margin: 0; font-size: 20px; font-weight: 700; color: var(--st-ink-1b, #F2EFE9); }
.idm-form__s { margin: 8px 0 22px; font-size: 13.5px; line-height: 1.6; color: var(--st-ink-5, #8B8680); }
.idm-form__campos { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.idm-form__campos label {
  display: grid; gap: 6px;
  font-family: var(--font-mono, monospace); font-size: 9.5px;
  letter-spacing: .14em; text-transform: uppercase; color: var(--st-ink-6, #6B6560);
}
.idm-form__campos label i { font-style: normal; opacity: .7; text-transform: none; letter-spacing: .06em; }
.idm-form__larga, .idm-form__enviar, .idm-form__aviso { grid-column: 1 / -1; }
.idm-form__campos input,
.idm-form__campos select,
.idm-form__campos textarea {
  width: 100%; padding: 11px 13px;
  background: var(--st-bg-1, #08080A); color: var(--st-ink-1b, #F2EFE9);
  border: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.14); border-radius: 4px;
  font-family: inherit; font-size: 14px; letter-spacing: normal; text-transform: none;
  transition: border-color .25s ease;
}
.idm-form__campos textarea { resize: vertical; min-height: 58px; }
.idm-form__campos input:focus,
.idm-form__campos select:focus,
.idm-form__campos textarea:focus { outline: none; border-color: rgba(var(--accent-rgb, 196,151,58), .6); }
.idm-form__campos input::placeholder,
.idm-form__campos textarea::placeholder { color: var(--st-t-4a4640, #4A4640); }
.idm-form__enviar { justify-content: center; margin-top: 6px; border: 0; cursor: pointer; }
.idm-form__enviar[disabled] { opacity: .55; cursor: default; }
.idm-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.idm-form__aviso { margin: 4px 0 0; font-size: 13px; line-height: 1.55; color: var(--st-ink-5, #8B8680); }
.idm-form__aviso.is-ok  { color: var(--st-c-86efac, #86EFAC); }
.idm-form__aviso.is-erro { color: var(--st-c-fca5a5, #FCA5A5); }
/* ── CONSENTIMENTO (LGPD) ──────────────────────────────────────────────────
   A caixa que autoriza o uso dos dados. Ocupa a linha inteira do grid (pela
   `idm-form__larga`) e é de propósito MAIS DISCRETA que os campos: é uma
   confirmação, não mais um dado a preencher. O rótulo envolve o input, então
   a área de clique é a frase inteira. */
.idm-form__campos .idm-form__consent {
  display: flex; align-items: flex-start; gap: 10px;
  margin-top: 2px; cursor: pointer;
  font-family: inherit; font-size: 12.5px; line-height: 1.5;
  letter-spacing: normal; text-transform: none; color: var(--st-ink-5, #8B8680);
}
/* `revert` devolve o desenho nativo da caixa — sem isto ela herdaria o
   `width: 100%` e o fundo dos campos de texto e viraria uma barra preta. */
.idm-form__campos .idm-form__consent input[type="checkbox"] {
  flex: 0 0 auto; width: 15px; height: 15px; margin: 1px 0 0; padding: 0;
  background: revert; border: revert; border-radius: revert;
  accent-color: var(--accent, #C4973A); cursor: pointer;
}
.idm-form__campos .idm-form__consent input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(var(--accent-rgb, 196,151,58), .65); outline-offset: 2px;
}

.idm-form__alt {
  display: inline-block; margin-top: 16px;
  font-family: var(--font-mono, monospace); font-size: 10px;
  letter-spacing: .14em; text-transform: uppercase; color: var(--st-ink-6, #6B6560);
  text-decoration: none; border-bottom: 1px solid rgba(var(--st-ink-rgb, 245, 242, 237),.18);
  transition: color .25s ease, border-color .25s ease;
}
.idm-form__alt:hover { color: var(--accent, var(--st-c-c4973a, #C4973A)); border-color: rgba(var(--accent-rgb, 196,151,58), .5); }
@media (max-width: 575px) { .idm-form__campos { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
  .idm-faixa__trilho { animation: none; }
}
