/* ============================================================
   WORKFACILIT — CLM (ciclo de vida de contratos) · pitch em 8 slides
   Camada sobre css/crm.css: mesmo deck, mesmos tokens --wf-* (sem hex).
   Namespace: pc-*  ·  o JS é o mesmo do deck (js/crm.js)
   ============================================================ */

.pc-eyebrow { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: .5rem; font-size: .64rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; color: var(--wf-text-tertiary); }
.pc-chips { display: flex; flex-wrap: wrap; gap: .4rem; }
.pc-chips span { display: inline-flex; align-items: center; gap: .4rem; padding: .28rem .7rem; border-radius: 99px; font-size: .74rem; font-weight: 600; color: var(--wf-text-primary); background: color-mix(in srgb, var(--wf-text-primary) 7%, transparent); border: 1px solid var(--wf-border-strong); }
.pc-chips i { font-size: 1rem; color: var(--wf-primary); }
@keyframes pc-grow { to { transform: scaleX(1); } }
@keyframes pc-draw { to { stroke-dashoffset: 0; } }
@keyframes pc-in { to { opacity: 1; transform: none; } }

/* ═══ Slide 1 — o anel do ciclo de vida, com a governança no centro ═══ */
.pc-ring { position: relative; container-type: inline-size; width: min(100%, 540px); aspect-ratio: 1 / 1.04; margin: 0 auto; }
.pc-ring__svg { position: absolute; left: 0; top: 0; width: 100%; aspect-ratio: 1; overflow: visible; }
.pc-ring__track { fill: none; stroke: var(--wf-border-strong); stroke-width: .5; stroke-dasharray: .8 1.4; }
.pc-ring__line { fill: none; stroke: var(--wf-primary); stroke-width: .9; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: 100; filter: drop-shadow(0 0 1.4px color-mix(in srgb, var(--wf-ai-ceci) 80%, transparent)); }
.crm-slide.is-active .pc-ring__line { animation: pc-draw 3.1s linear .8s forwards; }

/* o "contrato" que percorre o ciclo, depois de desenhado */
.pc-ring__spin { position: absolute; left: 0; top: 0; width: 100%; aspect-ratio: 1; opacity: 0; pointer-events: none; }
.pc-ring__spin i { position: absolute; left: 50%; top: 12%; width: 3cqw; height: 3cqw; translate: -50% -50%; border-radius: 50%; background: var(--wf-ai-ceci); box-shadow: 0 0 0 1.2cqw color-mix(in srgb, var(--wf-ai-ceci) 22%, transparent), 0 0 4cqw var(--wf-ai-ceci); }
.crm-slide.is-active .pc-ring__spin { animation: crm-fade .6s ease 4.2s forwards, crm-spin 14s linear 4.2s infinite; }

.pc-ring__loop { position: absolute; left: 25.5%; top: 6.4%; translate: -50% -50%; rotate: -32deg; display: inline-flex; align-items: center; gap: .8cqw; padding: .6cqw 1.8cqw; border-radius: 99px; white-space: nowrap; font-size: max(9px, 2.1cqw); font-weight: 700; letter-spacing: .02em;
  color: var(--wf-text-primary); background: color-mix(in srgb, var(--wf-ai-ceci) 22%, var(--wf-primary-darker)); border: 1px solid color-mix(in srgb, var(--wf-ai-ceci) 55%, transparent); opacity: 0; }
.pc-ring__loop i { font-size: 1.2em; color: var(--wf-ai-ceci); }
.crm-slide.is-active .pc-ring__loop { animation: crm-fade .6s ease 3.9s forwards; }

.pc-node { position: absolute; left: var(--x); top: var(--y); width: 26cqw; translate: -50% -5.5cqw; display: grid; justify-items: center; text-align: center; }
.pc-node__ic { display: grid; place-items: center; width: 11cqw; height: 11cqw; border-radius: 50%; font-size: 5cqw; color: var(--wf-text-tertiary); background: var(--wf-primary-darker); border: 1px solid var(--wf-border-strong); }
.pc-node b { margin-top: 1.2cqw; font-family: var(--wf-display); font-size: max(11px, 2.9cqw); line-height: 1.1; letter-spacing: -.02em; color: var(--wf-text-primary); }
.pc-node small { margin-top: .3cqw; font-size: max(9px, 2.2cqw); line-height: 1.2; color: var(--wf-text-tertiary); }
.pc-node b, .pc-node small { text-shadow: 0 0 6px var(--wf-primary-darker), 0 0 3px var(--wf-primary-darker); }
.pc-node b, .pc-node small { opacity: .4; transition: opacity .6s ease calc(.9s + var(--k) * .52s); }
.crm-slide.is-active .pc-node b, .crm-slide.is-active .pc-node small { opacity: 1; }
.crm-slide.is-active .pc-node__ic { animation: crm-lit .7s var(--ease) calc(.8s + var(--k) * .52s) forwards; }
.crm-slide.is-active .pc-node--key .pc-node__ic { animation-name: crm-lit-key; }

.pc-core { position: absolute; left: 50%; top: 48%; width: 40cqw; aspect-ratio: 1; translate: -50% -50%; display: grid; place-content: center; justify-items: center; text-align: center; border-radius: 50%;
  background: radial-gradient(circle at 35% 25%, color-mix(in srgb, var(--wf-ai-ceci) 55%, transparent), var(--wf-primary-dark) 62%, var(--wf-primary-darker));
  box-shadow: 0 0 0 2cqw color-mix(in srgb, var(--wf-primary) 10%, transparent), 0 0 12cqw color-mix(in srgb, var(--wf-ai-ceci) 40%, transparent); scale: .5; opacity: 0; }
.pc-core > i { font-size: 6cqw; color: var(--wf-text-primary); }
.pc-core > b { font-family: var(--wf-display); font-size: 5cqw; font-weight: 800; letter-spacing: -.03em; line-height: 1.05; color: var(--wf-text-primary); }
.pc-core > small { margin-top: .3cqw; font-size: max(9px, 2.2cqw); color: color-mix(in srgb, var(--wf-text-primary) 78%, transparent); }
.pc-core__g { display: grid; grid-template-columns: repeat(2, auto); justify-content: center; gap: 1cqw; margin-top: 2cqw; }
.pc-core__g span { padding: .5cqw 1.5cqw; border-radius: 99px; font-size: max(8.5px, 2cqw); font-weight: 700; color: var(--wf-text-primary); background: color-mix(in srgb, var(--wf-primary-darker) 55%, transparent); border: 1px solid color-mix(in srgb, var(--wf-text-primary) 25%, transparent); }
.crm-slide.is-active .pc-core { animation: crm-core 1s var(--ease) 3.6s forwards, crm-breathe 5s ease-in-out 4.6s infinite; }

:root:not([data-theme="dark"]) .pc-core { background: radial-gradient(circle at 35% 25%, var(--wf-ai-ceci-soft), var(--wf-primary-light) 72%); border: 1px solid color-mix(in srgb, var(--wf-ai-ceci) 35%, transparent); }
:root:not([data-theme="dark"]) .pc-core > i { color: var(--wf-ai-ceci); }
:root:not([data-theme="dark"]) .pc-core__g span { background: var(--wf-bg-surface); border-color: var(--wf-border-strong); }

/* ═══ Slide 2 — o case ═══ */
.pc-case { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 1.1rem; align-items: stretch; }
.pc-ctx { display: flex; flex-direction: column; gap: .8rem; min-width: 0; padding: 1.15rem 1.15rem 1.05rem; border-radius: 20px; border: 1px solid var(--wf-border-strong);
  background: radial-gradient(90% 60% at 20% 0%, color-mix(in srgb, var(--wf-ai-ceci) 20%, transparent), transparent 70%), color-mix(in srgb, var(--wf-bg-surface) 82%, transparent); box-shadow: 0 30px 70px color-mix(in srgb, var(--wf-primary-darker) 60%, transparent); }
.pc-ctx .crm-tag { align-self: flex-start; }
.pc-ctx h3 { font-size: 1.2rem; line-height: 1.15; letter-spacing: -.03em; color: var(--wf-text-primary); }
.pc-ctx__p { font-size: .84rem; line-height: 1.5; color: var(--wf-text-secondary); }
.pc-ctx__p b { color: var(--wf-text-primary); font-weight: 600; }
.pc-ctx .crm-case__go { margin-top: auto; }
.pc-res { display: grid; align-content: start; gap: .9rem; min-width: 0; padding: 1rem 1.15rem; border-radius: 20px; border: 1px solid var(--wf-border-strong); background: color-mix(in srgb, var(--wf-bg-surface) 82%, transparent); box-shadow: 0 30px 70px color-mix(in srgb, var(--wf-primary-darker) 60%, transparent); }
.pc-res__h { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.pc-res__h b { font-size: .9rem; color: var(--wf-text-primary); }
.pc-res__h em, .pc-tile strong { font-style: normal; font-family: var(--wf-display); font-weight: 800; letter-spacing: -.04em; background: linear-gradient(100deg, var(--wf-primary), var(--wf-ai-ceci)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.pc-res__h em { font-size: 1.5rem; }
.pc-bar { position: relative; height: 1.5rem; margin-top: .35rem; border-radius: 8px; overflow: hidden; background: color-mix(in srgb, var(--wf-text-primary) 5%, transparent); }
.pc-bar i { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 8px; transform-origin: left; transform: scaleX(0); }
.pc-bar--a i { width: 100%; background: color-mix(in srgb, var(--wf-text-primary) 18%, transparent); }
.pc-bar--d i { width: 30%; background: linear-gradient(90deg, var(--wf-primary), var(--wf-ai-ceci)); }
.pc-bar span { position: relative; z-index: 1; display: flex; align-items: center; height: 100%; padding: 0 .65rem; font-size: .74rem; font-weight: 700; white-space: nowrap; color: var(--wf-text-primary); }
.crm-slide.is-active .pc-bar--a i { animation: pc-grow 1.2s var(--ease) .9s forwards; }
.crm-slide.is-active .pc-bar--d i { animation: pc-grow 1s var(--ease) 1.5s forwards; }
.pc-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
.pc-tile { display: grid; gap: .15rem; padding: .7rem .85rem; border-radius: 14px; background: color-mix(in srgb, var(--wf-text-primary) 4%, transparent); border: 1px solid var(--wf-border); opacity: 0; transform: translateY(10px); }
.pc-tile strong { font-size: 1.7rem; line-height: 1; }
.pc-tile span { font-size: .78rem; line-height: 1.35; color: var(--wf-text-secondary); }
.crm-slide.is-active .pc-tile { animation: pc-in .6s var(--ease) calc(2s + var(--k) * .2s) forwards; }
.pc-s2 .crm-title, .pc-s4 .crm-title, .pc-s5 .crm-title, .pc-s7 .crm-title { font-size: clamp(1.55rem, 2.6vw, 2.4rem); line-height: 1.08; }

/* ═══ Slide 3 — o ciclo fase a fase: quem decide, o que a automação faz ═══ */
.pc-jr .crm-st h3 { margin-top: .85rem; }
.pc-lanes { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .5rem 1rem; margin-top: 1rem; }
.pc-lane__t { grid-column: 1 / -1; display: flex; align-items: center; gap: .5rem; font-size: .64rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; color: var(--wf-text-tertiary); }
.pc-lane__t i { font-size: 1.05rem; color: var(--wf-primary); }
.pc-cell { min-width: 0; padding: .55rem .65rem; border-radius: 12px; font-size: .74rem; line-height: 1.4; color: var(--wf-text-secondary); background: color-mix(in srgb, var(--wf-text-primary) 5%, transparent); border: 1px dashed var(--wf-border-strong); }
.pc-lanes--a { margin-top: .75rem; }
.pc-lanes--a .pc-cell { color: var(--wf-text-primary); background: color-mix(in srgb, var(--wf-primary) 13%, transparent); border: 1px solid color-mix(in srgb, var(--wf-primary) 40%, transparent); }
.pc-lanes--a .pc-lane__t i { color: var(--wf-ai-ceci); }
.pc-thread { display: flex; align-items: center; justify-content: center; gap: .6rem; margin-top: .9rem; padding: .55rem 1rem; border-radius: 14px; font-size: .86rem; color: var(--wf-text-secondary); background: linear-gradient(90deg, color-mix(in srgb, var(--wf-success-strong) 16%, transparent), color-mix(in srgb, var(--wf-primary) 14%, transparent)); border: 1px solid color-mix(in srgb, var(--wf-success-strong) 45%, transparent); }
.pc-thread i { flex: none; font-size: 1.25rem; color: var(--wf-success-strong); }
.pc-thread b { color: var(--wf-text-primary); }
.crm-slide .pc-cell, .crm-slide .pc-thread { opacity: 0; transform: translateY(10px); }
.crm-slide.is-active .pc-cell { opacity: 1; transform: none; transition: opacity .55s ease calc(1s + var(--k) * .45s), transform .7s var(--ease) calc(1s + var(--k) * .45s); }
.crm-slide.is-active .pc-lanes--a .pc-cell { transition-delay: calc(1.2s + var(--k) * .45s); }
.crm-slide.is-active .pc-thread { opacity: 1; transform: none; transition: opacity .6s ease 4s, transform .7s var(--ease) 4s; }

/* ═══ Slide 4 — matriz de governança: dimensão × fase ═══ */
.pc-gov { display: grid; gap: .4rem; padding: .9rem; border-radius: 20px; border: 1px solid var(--wf-border-strong); background: color-mix(in srgb, var(--wf-bg-surface) 78%, transparent); box-shadow: 0 30px 70px color-mix(in srgb, var(--wf-primary-darker) 60%, transparent); }
.pc-gov__row { --lc: var(--wf-primary); display: grid; grid-template-columns: 8.4rem repeat(6, minmax(0, 1fr)); gap: .4rem; align-items: stretch; }
.pc-gov__row--fin { --lc: var(--wf-success-strong); }
.pc-gov__row--cmp { --lc: var(--wf-primary); }
.pc-gov__row--jur { --lc: var(--wf-ai-ceci); }
.pc-gov__row--ops { --lc: var(--wf-warning-strong); }
.pc-gov__row--h span { padding: 0 .3rem .15rem; font-size: .62rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wf-text-tertiary); }
.pc-gov__row > b { display: flex; align-items: center; gap: .5rem; padding: .45rem .6rem; border-radius: 12px; font-family: var(--wf-display); font-size: .86rem; letter-spacing: -.01em; color: var(--wf-text-primary); background: color-mix(in srgb, var(--lc) 16%, transparent); border: 1px solid color-mix(in srgb, var(--lc) 50%, transparent); }
.pc-gov__row > b i { flex: none; font-size: 1.15rem; color: var(--lc); }
.pc-gov__row:not(.pc-gov__row--h) > span { position: relative; display: flex; align-items: center; min-width: 0; padding: .45rem .55rem .45rem 1.3rem; border-radius: 10px; font-size: .72rem; line-height: 1.3; color: var(--wf-text-tertiary);
  background: color-mix(in srgb, var(--wf-text-primary) 4%, transparent); border: 1px solid var(--wf-border); }
.pc-gov__row:not(.pc-gov__row--h) > span::before { content: ""; position: absolute; left: .5rem; top: 50%; width: .42rem; height: .42rem; translate: 0 -50%; border-radius: 50%; background: var(--wf-border-strong); }
.crm-slide.is-active .pc-gov__row:not(.pc-gov__row--h) > span { animation: pc-cell .6s ease calc(.9s + var(--c) * .42s) forwards; }
.crm-slide.is-active .pc-gov__row:not(.pc-gov__row--h) > span::before { animation: pc-dot .6s ease calc(.9s + var(--c) * .42s) forwards; }
@keyframes pc-cell { to { color: var(--wf-text-primary); background: color-mix(in srgb, var(--lc) 10%, transparent); border-color: color-mix(in srgb, var(--lc) 38%, transparent); } }
@keyframes pc-dot { to { background: var(--lc); box-shadow: 0 0 8px var(--lc); } }
.pc-gov__base { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; margin-top: .35rem; padding: .6rem .8rem; border-radius: 14px; border: 1px dashed color-mix(in srgb, var(--wf-ai-ceci) 55%, transparent); background: color-mix(in srgb, var(--wf-ai-ceci) 9%, transparent); opacity: 0; transform: translateY(8px); }
.pc-gov__base > span { display: inline-flex; align-items: center; gap: .5rem; font-size: .64rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; color: var(--wf-text-tertiary); }
.pc-gov__base > span i { font-size: 1.1rem; color: var(--wf-ai-ceci); }
.pc-gov__base .pc-chips span { font-size: .72rem; padding: .22rem .65rem; }
.crm-slide.is-active .pc-gov__base { animation: pc-in .6s var(--ease) 3.6s forwards; }
.pc-s4 .crm-slide__inner { row-gap: clamp(1rem, 2.2vh, 1.6rem); }

/* ═══ Slide 5 — a Ceci na minuta ═══ */
.pc-ai { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1.1rem; align-items: stretch; }
.pc-doc { display: flex; flex-direction: column; min-width: 0; border-radius: 20px; overflow: hidden; border: 1px solid var(--wf-border-strong); background: color-mix(in srgb, var(--wf-bg-surface) 82%, transparent); box-shadow: 0 40px 90px color-mix(in srgb, var(--wf-primary-darker) 70%, transparent); }
.pc-doc__body { display: grid; align-content: start; gap: .45rem; padding: 1rem 1.15rem 1.1rem; }
.pc-doc__h { margin-bottom: .2rem; font-size: .66rem; font-weight: 800; letter-spacing: .14em; color: var(--wf-text-primary); }
.pc-ln { display: block; width: var(--w); height: .42rem; border-radius: 99px; background: color-mix(in srgb, var(--wf-text-primary) 10%, transparent); }
.pc-cl { position: relative; padding: .4rem .55rem; border-radius: 8px; font-size: .76rem; line-height: 1.4; color: var(--wf-text-secondary); border: 1px solid transparent; }
.pc-cl b { margin-right: .3rem; color: var(--wf-text-primary); }
.crm-slide.is-active .pc-cl { animation: pc-mark .7s ease calc(1.1s + var(--k) * .9s) forwards; }
@keyframes pc-mark { to { color: var(--wf-text-primary); background: color-mix(in srgb, var(--wf-warning-strong) 14%, transparent); border-color: color-mix(in srgb, var(--wf-warning-strong) 50%, transparent); } }
.pc-find { display: flex; flex-direction: column; min-width: 0; }
.pc-fl { list-style: none; display: grid; gap: .45rem; padding: .7rem .9rem .9rem; }
.pc-f { --lc: var(--wf-primary); display: grid; grid-template-columns: 2.4rem minmax(0, 1fr) auto; align-items: center; gap: .7rem; padding: .5rem .6rem; border-radius: 12px; background: color-mix(in srgb, var(--lc) 8%, transparent); border: 1px solid color-mix(in srgb, var(--lc) 35%, transparent); opacity: 0; transform: translateX(12px); }
.pc-f--hi { --lc: var(--wf-danger-strong); }
.pc-f--md { --lc: var(--wf-warning-strong); }
.pc-f--ok { --lc: var(--wf-primary); }
.pc-f--ap { --lc: var(--wf-ai-ceci); }
.pc-f__n { display: grid; place-items: center; height: 2rem; border-radius: 9px; font-family: var(--wf-display); font-size: .74rem; font-weight: 800; color: var(--lc); background: color-mix(in srgb, var(--lc) 16%, transparent); }
.pc-f__n i { font-size: 1.1rem; }
.pc-f b { display: block; font-size: .82rem; color: var(--wf-text-primary); }
.pc-f small { display: block; margin-top: .1rem; font-size: .7rem; line-height: 1.35; color: var(--wf-text-secondary); }
.pc-sev { padding: .16rem .6rem; border-radius: 99px; font-size: .62rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; color: var(--lc); background: color-mix(in srgb, var(--lc) 14%, transparent); border: 1px solid color-mix(in srgb, var(--lc) 45%, transparent); }
.crm-slide.is-active .pc-f { animation: pc-in .6s var(--ease) calc(1.4s + var(--k) * .9s) forwards; }
.pc-agents { display: flex; flex-wrap: wrap; justify-content: center; gap: .45rem; margin-top: .9rem; }
.pc-agents span { display: inline-flex; align-items: center; gap: .45rem; padding: .3rem .8rem; border-radius: 99px; font-size: .74rem; font-weight: 600; color: var(--wf-text-primary); background: color-mix(in srgb, var(--wf-ai-ceci) 14%, transparent); border: 1px solid color-mix(in srgb, var(--wf-ai-ceci) 45%, transparent); opacity: 0; transform: translateY(8px); }
.pc-agents i { font-size: 1rem; color: var(--wf-ai-ceci); }
.crm-slide.is-active .pc-agents span { animation: pc-in .5s var(--ease) calc(4.6s + var(--k) * .12s) forwards; }

/* ═══ Slide 6 — painel executivo ═══ */
.pc-dash { display: flex; flex-direction: column; min-width: 0; }
.pc-dash__grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: .8rem; padding: .9rem 1rem .4rem; }
.pc-card { min-width: 0; padding: .75rem .85rem; border-radius: 14px; background: color-mix(in srgb, var(--wf-text-primary) 4%, transparent); border: 1px solid var(--wf-border); }
.pc-card h4 { margin-bottom: .6rem; font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--wf-text-tertiary); }
.pc-hb { list-style: none; display: grid; gap: .45rem; }
.pc-hb li { display: grid; grid-template-columns: 5.6rem minmax(0, 1fr); align-items: center; gap: .6rem; font-size: .74rem; color: var(--wf-text-secondary); }
.pc-hb i { display: block; width: var(--v); height: .6rem; border-radius: 99px; background: linear-gradient(90deg, var(--wf-primary), var(--wf-ai-ceci)); transform-origin: left; transform: scaleX(0); }
.crm-slide.is-active .pc-hb i { animation: pc-grow 1s var(--ease) calc(1s + var(--k) * .15s) forwards; }
.pc-due { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .4rem; }
.pc-due p { display: grid; justify-items: center; gap: .1rem; padding: .45rem .2rem; border-radius: 10px; background: color-mix(in srgb, var(--wf-primary) 10%, transparent); border: 1px solid color-mix(in srgb, var(--wf-primary) 30%, transparent); opacity: 0; transform: translateY(8px); }
.pc-due p:first-child { background: color-mix(in srgb, var(--wf-warning-strong) 14%, transparent); border-color: color-mix(in srgb, var(--wf-warning-strong) 45%, transparent); }
.pc-due strong { font-family: var(--wf-display); font-size: 1.35rem; font-weight: 800; line-height: 1; color: var(--wf-text-primary); }
.pc-due span { font-size: .64rem; color: var(--wf-text-tertiary); }
.crm-slide.is-active .pc-due p { animation: pc-in .5s var(--ease) calc(1.4s + var(--k) * .15s) forwards; }
.pc-alert { display: flex; align-items: center; gap: .4rem; margin-top: .6rem; font-size: .72rem; font-weight: 700; color: var(--wf-warning-strong); }
.pc-alert i { font-size: 1rem; }
.pc-ask { display: grid; gap: .45rem; padding: .5rem 1rem 1rem; }
.pc-q, .pc-a { display: flex; align-items: flex-start; gap: .55rem; padding: .55rem .75rem; border-radius: 12px; font-size: .78rem; line-height: 1.45; opacity: 0; transform: translateY(8px); }
.pc-q { justify-self: end; max-width: 88%; color: var(--wf-text-primary); background: color-mix(in srgb, var(--wf-primary) 22%, transparent); }
.pc-a { max-width: 94%; color: var(--wf-text-secondary); background: color-mix(in srgb, var(--wf-ai-ceci) 12%, transparent); border: 1px solid color-mix(in srgb, var(--wf-ai-ceci) 40%, transparent); }
.pc-q i, .pc-a i { flex: none; margin-top: .1rem; font-size: 1rem; color: var(--wf-ai-ceci); }
.pc-a b { color: var(--wf-text-primary); }
.crm-slide.is-active .pc-q, .crm-slide.is-active .pc-a { animation: pc-in .6s var(--ease) calc(2.2s + var(--k) * 1.1s) forwards; }

/* ═══ Slide 7 — plataforma e ondas ═══ */
.pc-plat { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .95fr); gap: 1.1rem; align-items: stretch; }
.pc-traits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; }
.pc-trait { display: flex; flex-direction: column; gap: .3rem; min-width: 0; padding: .8rem .85rem; border-radius: 16px; background: color-mix(in srgb, var(--wf-bg-surface) 82%, transparent); border: 1px solid var(--wf-border-strong); opacity: 0; transform: translateY(12px); }
.pc-trait > i { font-size: 1.45rem; color: var(--wf-primary); }
.pc-trait h3 { font-size: .98rem; letter-spacing: -.02em; color: var(--wf-text-primary); }
.pc-trait p { font-size: .76rem; line-height: 1.42; color: var(--wf-text-secondary); }
.pc-trait--ai { background: radial-gradient(90% 120% at 20% 0%, color-mix(in srgb, var(--wf-ai-ceci) 28%, transparent), transparent 70%), var(--wf-primary-darker); border-color: color-mix(in srgb, var(--wf-ai-ceci) 55%, var(--wf-border-strong)); box-shadow: 0 0 30px color-mix(in srgb, var(--wf-ai-ceci) 22%, transparent); }
.pc-trait--ai > i { color: var(--wf-ai-ceci); }
.crm-slide.is-active .pc-trait { animation: pc-in .6s var(--ease) calc(.8s + var(--k) * .14s) forwards; }
.pc-side { display: grid; align-content: start; gap: .6rem; min-width: 0; }
.pc-stack { display: grid; padding: .7rem .85rem; border-radius: 16px; border: 1px dashed var(--wf-border-strong); opacity: 0; transform: translateY(12px); }
.pc-road { display: grid; gap: .5rem; list-style: none; }
.pc-wave { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); align-items: center; gap: .75rem; padding: .6rem .85rem; border-radius: 16px; background: color-mix(in srgb, var(--wf-bg-surface) 82%, transparent); border: 1px solid var(--wf-border-strong); opacity: 0; transform: translateY(12px); }
.pc-wave__n { display: grid; place-items: center; width: 2.2rem; height: 2.2rem; border-radius: 50%; font-family: var(--wf-display); font-size: .95rem; font-weight: 800; color: var(--wf-on-primary); background: var(--wf-primary); box-shadow: 0 0 0 5px color-mix(in srgb, var(--wf-primary) 16%, transparent); }
.pc-wave:last-child .pc-wave__n { color: var(--wf-bg-surface); background: var(--wf-ai-ceci); box-shadow: 0 0 0 5px color-mix(in srgb, var(--wf-ai-ceci) 20%, transparent); }
.pc-wave small { display: block; font-size: .62rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wf-text-tertiary); }
.pc-wave p { margin-top: .12rem; font-size: .78rem; line-height: 1.4; color: var(--wf-text-primary); }
.crm-slide.is-active .pc-stack, .crm-slide.is-active .pc-wave { animation: pc-in .6s var(--ease) calc(1.6s + var(--k) * .2s) forwards; }
.pc-link { color: var(--wf-primary); font-weight: 600; white-space: nowrap; }

/* ═══ Responsivo ═══ */
@media (max-width: 1100px) {
  .pc-lanes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pc-cell::before { content: attr(data-n) " · "; font-weight: 800; color: var(--wf-text-primary); }
  .pc-gov { overflow-x: auto; }
  .pc-gov__row { min-width: 820px; }
  .pc-gov__base { min-width: 0; }
}
@media (max-width: 960px) {
  .crm-slide--full .crm-slide__inner { grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "pun" "viz"; align-items: start; }
  .pc-case, .pc-ai, .pc-plat, .pc-dash__grid { grid-template-columns: minmax(0, 1fr); }
  .pc-traits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .pc-lanes, .pc-traits, .pc-tiles { grid-template-columns: minmax(0, 1fr); }
  .pc-f { grid-template-columns: 2.2rem minmax(0, 1fr); }
  .pc-f .pc-sev { grid-column: 2; justify-self: start; }
}
@media (prefers-reduced-motion: reduce) {
  .pc-ring__line { stroke-dashoffset: 0; animation: none !important; }
  .pc-ring__spin { display: none; }
  .pc-ring__loop, .pc-core { opacity: 1; scale: 1; animation: none !important; }
  .pc-node__ic { animation: none !important; color: var(--wf-on-primary); background: var(--wf-primary); }
  .pc-node b, .pc-node small { opacity: 1; transition: none; }
  .crm-slide .pc-cell, .crm-slide .pc-thread, .pc-tile, .pc-gov__base, .pc-f, .pc-agents span, .pc-due p, .pc-q, .pc-a, .pc-trait, .pc-stack, .pc-wave { opacity: 1 !important; transform: none !important; transition: none !important; animation: none !important; }
  .pc-bar i, .pc-hb i { animation: none !important; transform: scaleX(1); }
  .pc-gov__row > span, .pc-gov__row > span::before, .pc-cl { animation-duration: .01s !important; animation-delay: 0s !important; }
}
