/* iSol · Sua empresa em operação Human + AI (/operacao-human-ai/), rodada 13.
   Base das páginas da rodada 7 (r7.css) e tokens do tema preto executivo (--bg-0..3, --line-exec, --azure, --cyan, --grad). */
.oh-page .btn-primary { color: var(--navy-900); }
.oh-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.oh-cta-c { justify-content: center; }
.oh-ico { width: 44px; height: 44px; flex: 0 0 44px; border-radius: 12px; display: grid; place-items: center; background: rgba(52,195,240,.12); border: 1px solid rgba(52,195,240,.3); }
.oh-ico svg, .oh-qi { width: 24px; height: 24px; fill: none; stroke: var(--cyan); stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.oh-ico.sm { width: 30px; height: 30px; flex-basis: 30px; border-radius: 9px; }
.oh-ico.sm svg { width: 17px; height: 17px; }
.oh-note { margin: 20px 0 0; font-size: 15px; line-height: 1.55; color: var(--on-dark-soft); max-width: 72ch; }
.oh-links { display: flex; flex-wrap: wrap; gap: 4px 22px; margin: 8px 0 0; }
.oh-links-c { justify-content: center; margin-top: 18px; }
.oh-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 56px); align-items: center; }
.oh-apoio { margin-top: 26px; padding: 18px 20px; border-left: 3px solid var(--cyan); border-radius: 0 14px 14px 0; background: rgba(52,195,240,.06); max-width: 860px; }
.oh-apoio h3 { margin: 0; font-size: 18px; line-height: 1.35; color: var(--white); }
.oh-apoio p { margin: 8px 0 0; font-size: 15.5px; line-height: 1.6; color: var(--on-dark-soft); }

/* ---------- hero ---------- */
.oh-hero { padding: clamp(40px, 6vw, 88px) 0 clamp(40px, 5vw, 72px); background: var(--glow), var(--bg-0); }
.oh-hero-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(28px, 5vw, 64px); align-items: center; }
.oh-hero h1 { font-size: clamp(2.1rem, 4.6vw, 3.5rem); line-height: 1.06; max-width: 15ch; color: var(--white); }
.oh-sig { margin: 0 0 26px; padding: 16px 18px; border: 1px solid rgba(52,195,240,.4); border-radius: 16px; background: var(--bg-2); max-width: 620px; }
.oh-sig-k { margin: 0; font: 500 12.5px/1.45 var(--f-mono); letter-spacing: .04em; color: var(--cyan); }
.oh-sig-t { margin: 6px 0 0; font: 700 clamp(1.15rem, 2vw, 1.45rem)/1.25 var(--f-display); color: var(--white); }
.oh-sig-s { margin: 6px 0 0; font-size: 14.5px; line-height: 1.5; color: var(--on-dark-soft); }
.oh-forte { margin: 18px 0 0; max-width: 58ch; padding-left: 14px; border-left: 3px solid var(--azure); font: 500 17px/1.55 var(--f-display); color: var(--white); }

/* visual de abertura: CEO → Command → Pessoas/Agentes/Processos → Fluxos → Sistemas */
.oh-org { margin: 0; padding: 22px; border: 1px solid var(--line-exec); border-radius: 22px; background: var(--bg-1); }
.oh-org-t { list-style: none; margin: 0; padding: 0; display: grid; gap: 22px; justify-items: center; }
.oh-n { position: relative; display: flex; align-items: center; gap: 10px; padding: 10px 16px; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; background: var(--bg-2); color: var(--white); text-align: center; }
.oh-n:not(:last-child)::after { content: ""; position: absolute; left: 50%; top: 100%; width: 2px; height: 22px; background: linear-gradient(var(--cyan), rgba(52,195,240,.25)); transform: translateX(-50%); }
.oh-n b { font: 600 15px var(--f-display); }
.oh-n small { display: block; font-size: 12.5px; color: var(--on-dark-soft); }
.oh-n-cmd { flex-direction: column; gap: 2px; padding: 12px 26px; border-color: var(--cyan); background: linear-gradient(180deg, rgba(52,195,240,.18), rgba(27,157,224,.06)); box-shadow: 0 0 34px rgba(27,157,224,.22); }
.oh-n-cmd b { font-size: 17px; }
.oh-n-trio { width: 100%; padding: 0; border: 0; background: none; }
.oh-trio { list-style: none; margin: 0; padding: 0; width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.oh-trio > li { display: grid; justify-items: center; gap: 6px; padding: 12px 8px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; background: var(--bg-2); min-width: 0; }
.oh-trio > li > b { font: 600 15px var(--f-display); color: var(--white); }
.oh-trio ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 3px; font-size: 13px; color: var(--on-dark-soft); text-align: center; }
.oh-n-sis { flex-direction: column; gap: 2px; }
.oh-n-sis span { font: 500 12.5px var(--f-mono); color: var(--on-dark-soft); }
.oh-org figcaption { margin: 16px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--on-dark-soft); text-align: center; }
@media (prefers-reduced-motion: no-preference) {
  .oh-org-t > li { animation: oh-in .5s ease-out both; }
  .oh-org-t > li:nth-child(2) { animation-delay: .12s; } .oh-org-t > li:nth-child(3) { animation-delay: .24s; }
  .oh-org-t > li:nth-child(4) { animation-delay: .36s; } .oh-org-t > li:nth-child(5) { animation-delay: .48s; }
  .oh-n-cmd { animation: oh-in .5s .12s ease-out both, oh-pulse 3.2s 1s ease-in-out infinite; }
}
@keyframes oh-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
@keyframes oh-pulse { 50% { box-shadow: 0 0 46px rgba(52,195,240,.38); } }

/* ---------- seletor das 3 visões ---------- */
.oh-vbar { position: sticky; top: var(--sn-h, 64px); z-index: 30; padding: 12px 0; background: rgba(5,7,10,.94); backdrop-filter: blur(8px); border-block: 1px solid var(--line-exec); scroll-margin-top: 72px; }
.oh-vbar-in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; }
.oh-vbar h2 { margin: 0; font-size: 17px; line-height: 1.3; color: var(--white); }
.oh-vbar p { margin: 2px 0 0; font-size: 13.5px; color: var(--on-dark-soft); }
.oh-vsel { display: flex; gap: 6px; padding: 4px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; background: var(--bg-1); }
.oh-vsel button { appearance: none; border: 0; border-radius: 999px; min-height: 44px; padding: 8px 16px; background: transparent; color: var(--on-dark-soft); font: 600 14.5px var(--f-display); cursor: pointer; }
.oh-vsel button[aria-checked="true"] { background: var(--cyan); color: var(--navy-900); }
.oh-vsel button:focus-visible, .oh-fl-sw button:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
body[data-visao="executiva"] [data-v]:not([data-v~="executiva"]),
body[data-visao="funcional"] [data-v]:not([data-v~="funcional"]),
body[data-visao="tecnologica"] [data-v]:not([data-v~="tecnologica"]) { display: none !important; }

.oh-4 { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.oh-4 li { display: flex; align-items: center; gap: 12px; padding: 16px; border: 1px solid var(--line-exec); border-radius: 16px; background: var(--bg-2); }
.oh-4 b { font: 600 15.5px/1.3 var(--f-display); color: var(--white); }
.oh-3v { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
.oh-3v > div { padding: 16px 18px; border: 1px solid var(--line-exec); border-radius: 16px; background: var(--bg-0); }
.oh-3v b { font: 500 12px var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--cyan); }
.oh-3v p { margin: 6px 0 0; font-size: 14.5px; line-height: 1.55; color: var(--on-dark-soft); }
body[data-visao] .oh-3v { grid-template-columns: minmax(0, 1fr); max-width: 760px; }

/* ---------- camada transversal ---------- */
.oh-hub { margin: 0; padding: 20px; border: 1px solid var(--line-exec); border-radius: 22px; background: var(--bg-1); }
.oh-hub-cmd { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 4px 10px; padding: 12px 16px; border: 1px solid var(--cyan); border-radius: 14px; background: linear-gradient(90deg, rgba(27,157,224,.22), rgba(52,195,240,.08)); }
.oh-hub-cmd b { font: 700 17px var(--f-display); color: var(--white); }
.oh-hub-cmd small { font-size: 13px; color: var(--on-dark-soft); }
.oh-hub-l { list-style: none; margin: 14px 0 0; padding: 14px 0 0; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; position: relative; border-top: 2px dashed rgba(52,195,240,.35); }
.oh-hub-l li { padding: 7px 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; background: var(--bg-2); color: var(--white); font-size: 14px; }
.oh-hub-l li:last-child { border-color: rgba(251,191,36,.5); }
.oh-hub figcaption { margin: 14px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--on-dark-soft); text-align: center; }

/* ---------- diagrama da categoria ---------- */
.oh-cat { margin: 0; }
.oh-cat-l { list-style: none; margin: 0 auto; padding: 0; max-width: 820px; display: grid; gap: 18px; }
.oh-cat-l > li { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 52px; padding: 10px 16px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; background: var(--bg-2); color: var(--white); text-align: center; }
.oh-cat-l > li:not(:last-child)::after { content: ""; position: absolute; left: 50%; top: 100%; width: 0; height: 0; margin-top: 5px; border: 6px solid transparent; border-top-color: var(--cyan); transform: translateX(-50%); }
.oh-cat-l > li > b { font: 600 16px var(--f-display); }
.oh-cat-l > li > small { font-size: 13px; color: var(--on-dark-soft); }
.oh-cat-l ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.oh-cat-l ul li { padding: 6px 12px; border-radius: 10px; border: 1px solid rgba(255,255,255,.14); background: var(--bg-1); font: 600 14px var(--f-display); }
.oh-cat-l > li.oh-cat-emp { max-width: 260px; justify-self: center; width: 100%; }
.oh-cat-l > li.oh-cat-proc { max-width: 420px; justify-self: center; width: 100%; }
.oh-cat-l > li.oh-cat-pa { max-width: 560px; justify-self: center; width: 100%; }
.oh-cat-l > li.oh-cat-cmd { border-color: var(--cyan); background: linear-gradient(90deg, rgba(27,157,224,.24), rgba(52,195,240,.08)); box-shadow: 0 0 30px rgba(27,157,224,.18); }
.oh-cat-l > li.oh-cat-cmd b { font-size: 19px; }
.oh-cat-l > li.oh-cat-inf { border-color: rgba(110,231,183,.45); }
.oh-cat figcaption { margin: 18px auto 0; max-width: 820px; font-size: 13.5px; line-height: 1.5; color: var(--on-dark-soft); text-align: center; }

/* ---------- cinco dimensões ---------- */
.oh-dim { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.oh-dim > li { display: flex; flex-direction: column; gap: 12px; padding: 18px; border: 1px solid var(--line-exec); border-radius: 18px; background: var(--bg-2); min-width: 0; }
.oh-dim h3 { margin: 0; font-size: 17px; line-height: 1.3; color: var(--white); }
.oh-dim p { margin: 6px 0 0; font-size: 14.5px; line-height: 1.5; color: var(--on-dark-soft); }
.oh-dim .r8-link { font-size: 14px; }
.oh-dim > li.oh-dim-5 { grid-column: 1 / -1; flex-direction: row; align-items: flex-start; gap: 14px; border-color: rgba(110,231,183,.4); }
.oh-met { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; counter-reset: m; }
.oh-met li { counter-increment: m; display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; border: 1px solid rgba(52,195,240,.35); background: var(--bg-0); color: var(--white); font: 600 13.5px var(--f-display); }
.oh-met li::before { content: counter(m); font: 500 11px var(--f-mono); color: var(--cyan); }

/* ---------- Diagrama 1: organograma por processos ---------- */
.oh-og { margin: 0; padding: 20px; border: 1px solid var(--line-exec); border-radius: 22px; background: var(--bg-1); }
.oh-og-top { display: grid; justify-items: center; gap: 18px; margin-bottom: 22px; }
.oh-og-top > span { position: relative; padding: 9px 16px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; background: var(--bg-2); color: var(--white); font: 600 14.5px var(--f-display); text-align: center; }
.oh-og-top > span:first-child::after { content: ""; position: absolute; left: 50%; top: 100%; width: 2px; height: 18px; background: var(--cyan); }
.oh-og-cmd { border-color: var(--cyan) !important; background: linear-gradient(180deg, rgba(52,195,240,.18), rgba(27,157,224,.06)) !important; }
.oh-og-cmd small { color: var(--on-dark-soft); font-weight: 500; }
.oh-og-cols { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.oh-col { display: grid; gap: 8px; align-content: start; padding: 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: var(--bg-0); min-width: 0; }
.oh-col h3 { margin: 0 0 4px; font-size: 16px; color: var(--white); text-align: center; }
.oh-fx { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; column-gap: 8px; padding: 10px 12px; border-radius: 12px; border: 1px solid rgba(255,255,255,.1); border-left-width: 4px; background: var(--bg-2); }
.oh-fx b { font: 500 11.5px var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--on-dark); }
.oh-fx em { font: 700 18px var(--f-display); font-style: normal; color: var(--white); }
.oh-fx ul, .oh-fx small { grid-column: 1 / -1; }
.oh-fx ul { list-style: none; margin: 6px 0 0; padding: 0; display: grid; gap: 2px; font-size: 14px; line-height: 1.4; color: var(--white); }
.oh-fx small { display: block; margin-top: 6px; font: 500 12px/1.4 var(--f-mono); color: var(--cyan); }
.oh-fx-h { border-left-color: #fbbf24; } .oh-fx-a { border-left-color: var(--cyan); } .oh-fx-f { border-left-color: #a78bfa; } .oh-fx-s { border-left-color: #6ee7b7; }
.oh-og figcaption { margin: 16px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--on-dark-soft); }
.oh-og .r7-ill, .oh-fl .r7-ill { margin-right: 6px; }

/* ---------- Quem faz o quê ---------- */
.oh-q { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; max-width: 980px; }
.oh-q li { display: grid; grid-template-columns: 56px minmax(150px, 210px) minmax(0, 1fr) minmax(0, 1fr); gap: 14px; align-items: center; padding: 12px 16px; border: 1px solid var(--line-exec); border-radius: 16px; background: var(--bg-2); }
.oh-q-ic { width: 52px; height: 52px; border-radius: 14px; display: grid; place-items: center; background: rgba(52,195,240,.1); border: 1px solid rgba(52,195,240,.28); overflow: hidden; }
.oh-q-ic img { width: 46px; height: auto; }
.oh-q-n { display: grid; gap: 2px; }
.oh-q-n b, .oh-q-n a { font: 600 16px var(--f-display); color: var(--white); text-decoration: none; }
.oh-q-n a:hover { color: var(--cyan); text-decoration: underline; }
.oh-q-n em { font: 500 12.5px var(--f-mono); font-style: normal; letter-spacing: .06em; text-transform: uppercase; color: var(--cyan); }
.oh-q p { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--on-dark-soft); }
.oh-q-ex small { display: block; font: 500 11.5px var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--on-dark-mut); }
.oh-q .oh-q-humano { border-color: rgba(251,191,36,.5); }
.oh-q .oh-q-humano .oh-q-ic { background: rgba(251,191,36,.12); border-color: rgba(251,191,36,.4); }
.oh-q .oh-q-humano .oh-qi { stroke: #fbbf24; }
.oh-q .oh-q-cmd { border-color: rgba(52,195,240,.5); }
body[data-visao="executiva"] .oh-q li { grid-template-columns: 56px minmax(0, 1fr); }

/* ---------- Diagrama 2: raias ---------- */
.oh-fl { margin: 0; padding: 20px; border: 1px solid var(--line-exec); border-radius: 22px; background: var(--bg-1); }
.oh-fl-sw { display: inline-flex; gap: 6px; padding: 4px; margin-bottom: 18px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; background: var(--bg-0); }
.oh-fl-sw button { appearance: none; border: 0; border-radius: 999px; min-height: 44px; padding: 8px 16px; background: transparent; color: var(--on-dark-soft); font: 600 14px var(--f-display); cursor: pointer; }
.oh-fl-sw button[aria-checked="true"] { background: var(--cyan); color: var(--navy-900); }
.oh-raias { list-style: none; margin: 0 0 8px; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.oh-rl { padding: 6px 8px; border-radius: 10px; background: var(--bg-2); font: 500 11.5px var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--on-dark); text-align: center; border-top: 3px solid; }
.oh-ps { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; background-image: repeating-linear-gradient(90deg, transparent 0 calc(20% - 1px), rgba(255,255,255,.06) calc(20% - 1px) 20%); }
.oh-p { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; counter-increment: p; }
.oh-p b { grid-column: var(--c); padding: 9px 11px; border: 1px solid; border-left-width: 4px; border-radius: 12px; background: var(--bg-2); color: var(--white); font: 500 13.5px/1.35 var(--f-body); }
.oh-p-sis { --c: 1; } .oh-p-ia { --c: 2; } .oh-p-dec { --c: 3; } .oh-p-hum { --c: 4; } .oh-p-res { --c: 5; }
.oh-p-dec b { font-weight: 600; }
.oh-rl-sis, .oh-p-sis b { border-color: #6ee7b7; } .oh-rl-ia, .oh-p-ia b { border-color: var(--cyan); }
.oh-rl-dec, .oh-p-dec b { border-color: #f472b6; } .oh-rl-hum, .oh-p-hum b { border-color: #fbbf24; } .oh-rl-res, .oh-p-res b { border-color: #a78bfa; }
.oh-p b { border-top-color: rgba(255,255,255,.12); border-right-color: rgba(255,255,255,.12); border-bottom-color: rgba(255,255,255,.12); }
.oh-p-r { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.oh-fl[data-cam="ok"] .oh-p[data-cam="dv"], .oh-fl[data-cam="dv"] .oh-p[data-cam="ok"] { display: none; }
.oh-fl[data-cam="dv"] .oh-p-dec[data-cam="dv"] b, .oh-fl[data-cam="dv"] .oh-p-hum[data-cam="dv"] b { box-shadow: 0 0 0 2px rgba(251,191,36,.35); }
.oh-marcos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; counter-reset: mk; }
.oh-marcos li { counter-increment: mk; padding: 14px 10px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; background: var(--bg-2); color: var(--white); font: 600 15px var(--f-display); text-align: center; }
.oh-marcos li::before { content: counter(mk); display: block; font: 500 11px var(--f-mono); color: var(--cyan); }
.oh-leg { list-style: none; margin: 16px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 13.5px; color: var(--on-dark-soft); }
.oh-leg b { color: var(--white); font-weight: 600; }
.oh-leg li::before { content: ""; display: inline-block; width: 10px; height: 10px; margin-right: 6px; border-radius: 3px; vertical-align: -1px; background: var(--cyan); }
.oh-lg-hum::before { background: #fbbf24 !important; } .oh-lg-val::before { background: var(--cyan) !important; } .oh-lg-res::before { background: #a78bfa !important; } .oh-lg-auto::before { background: #6ee7b7 !important; }
.oh-fl figcaption { margin: 14px 0 0; font-size: 14px; line-height: 1.5; color: var(--on-dark-soft); }
.oh-tec { margin-top: 16px; padding: 14px 16px; border: 1px dashed rgba(52,195,240,.4); border-radius: 14px; }
.oh-tec b { color: var(--white); font: 600 14.5px var(--f-display); }
.oh-tec ul { margin: 8px 0 0; padding-left: 18px; display: grid; gap: 3px; font-size: 14px; color: var(--on-dark-soft); }

/* ---------- 5 macroprocessos ---------- */
.oh-mps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.oh-mp { position: relative; display: flex; flex-direction: column; gap: 8px; padding: 16px; border: 1px solid var(--line-exec); border-radius: 18px; background: var(--bg-2); min-width: 0; }
.oh-mp-g { border-color: rgba(52,195,240,.5); }
.oh-mp-n { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: rgba(52,195,240,.14); border: 1px solid rgba(52,195,240,.45); color: var(--cyan); font: 700 14px var(--f-display); }
.oh-mp h3 { margin: 0; font-size: 16px; line-height: 1.3; color: var(--white); }
.oh-mp-i { margin: 0; font-size: 14px; line-height: 1.45; color: var(--white); }
.oh-mp dl { margin: 0; display: grid; gap: 8px; }
.oh-mp dt { font: 500 11px var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--cyan); }
.oh-mp dd { margin: 2px 0 0; font-size: 13.5px; line-height: 1.45; color: var(--on-dark-soft); }
.oh-mp-r { margin: auto 0 0; padding-top: 8px; border-top: 1px solid var(--line-exec); font-size: 13.5px; line-height: 1.45; color: var(--white); }
.oh-mp-r small { display: block; font: 500 11px var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--on-dark-mut); }

/* ---------- Diagrama 3: arquitetura ---------- */
.oh-ar-grid { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 16px; align-items: start; }
body:not([data-visao="tecnologica"])[data-visao] .oh-ar-grid { grid-template-columns: minmax(0, 1fr); }
.oh-arq { margin: 0; padding: 20px; border: 1px solid var(--line-exec); border-radius: 22px; background: var(--bg-1); }
.oh-ar-ex { margin: 0 0 14px; text-align: center; }
.oh-ar-ex b { font: 700 clamp(1.2rem, 2.4vw, 1.6rem) var(--f-display); color: var(--white); letter-spacing: .02em; }
.oh-ar-l { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; position: relative; }
.oh-ar { position: relative; display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px 14px; border-radius: 14px; border: 1px solid rgba(255,255,255,.12); background: var(--bg-2); }
.oh-ar:not(:last-child)::after { content: ""; position: absolute; left: calc(170px + 40px); top: 100%; width: 2px; height: 14px; background: rgba(52,195,240,.5); }
.oh-ar-r { font: 500 11.5px/1.35 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--on-dark); }
.oh-ar ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.oh-ar ul li { padding: 6px 11px; border-radius: 10px; border: 1px solid rgba(255,255,255,.14); background: var(--bg-1); color: var(--white); font: 500 14px var(--f-display); }
.oh-ar-cmd { border-color: var(--cyan); background: linear-gradient(90deg, rgba(27,157,224,.22), rgba(52,195,240,.06)); }
.oh-ar-cmd ul li { border-color: var(--cyan); font-weight: 700; }
.oh-ar-ret { border-style: dashed; border-color: rgba(110,231,183,.5); }
.oh-ar-ret .oh-ar-r::after { content: " ↺"; color: #6ee7b7; }
.oh-arq figcaption { margin: 14px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--on-dark-soft); }
.oh-gov { padding: 18px; border: 1px solid rgba(52,195,240,.4); border-radius: 18px; background: var(--bg-2); }
.oh-gov b { font: 600 15px var(--f-display); color: var(--white); }
.oh-gov ul { margin: 10px 0 6px; padding-left: 18px; display: grid; gap: 4px; font-size: 14px; line-height: 1.45; color: var(--on-dark-soft); }

/* ---------- onde roda ---------- */
.oh-onde { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.oh-onde li { display: flex; gap: 14px; align-items: flex-start; padding: 20px; border: 1px solid var(--line-exec); border-radius: 18px; background: var(--bg-2); }
.oh-onde li:last-child { border-color: rgba(110,231,183,.45); }
.oh-onde h3 { margin: 0; font-size: 18px; color: var(--white); }
.oh-onde p { margin: 6px 0 0; font-size: 15px; line-height: 1.55; color: var(--on-dark-soft); }
.oh-ctrl { list-style: none; margin: 16px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.oh-ctrl li { padding: 7px 13px; border-radius: 999px; border: 1px solid rgba(52,195,240,.35); background: var(--bg-1); color: var(--white); font-size: 14px; }

/* ---------- valor ---------- */
.oh-val { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.oh-val li { padding: 18px; border: 1px solid var(--line-exec); border-radius: 16px; background: var(--bg-2); }
.oh-val b { display: block; font: 700 clamp(1.1rem, 1.8vw, 1.35rem)/1.25 var(--f-display); color: var(--white); }
.oh-val small { display: block; margin-top: 6px; font: 500 12.5px/1.4 var(--f-mono); color: var(--cyan); }
.oh-sin { margin: 30px 0 0; padding: 20px; border: 1px solid var(--line-exec); border-radius: 22px; background: var(--bg-1); }
.oh-sin-c { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.oh-sin-c > li { padding: 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: var(--bg-2); text-align: center; position: relative; }
.oh-sin-c > li::after { content: ""; position: absolute; left: 50%; top: 100%; width: 2px; height: 16px; background: rgba(52,195,240,.5); }
.oh-sin-c > li:last-child { border-color: rgba(251,191,36,.45); }
.oh-sin-c b { font: 600 15.5px var(--f-display); color: var(--white); }
.oh-sin-c ul { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 3px; font-size: 13.5px; color: var(--on-dark-soft); }
.oh-sin-cmd { margin-top: 16px; padding: 12px; border: 1px solid var(--cyan); border-radius: 14px; background: linear-gradient(90deg, rgba(27,157,224,.22), rgba(52,195,240,.06)); text-align: center; }
.oh-sin-cmd small { font-size: 13.5px; color: var(--on-dark-soft); }
.oh-sin-cmd b { font: 700 18px var(--f-display); color: var(--white); }
.oh-sin figcaption { margin: 16px 0 0; font: 500 17px/1.5 var(--f-display); color: var(--white); text-align: center; }
.r7-final .r7-kick { justify-content: center; }

@media (max-width: 1100px) {
  .oh-mps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .oh-dim { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oh-q li { grid-template-columns: 56px minmax(140px, 190px) minmax(0, 1fr); }
  .oh-q li .oh-q-ex { grid-column: 3; }
}
@media (max-width: 1023px) {
  .oh-hero-grid, .oh-two, .oh-ar-grid { grid-template-columns: minmax(0, 1fr); }
  .oh-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oh-3v { grid-template-columns: minmax(0, 1fr); }
  .oh-og-cols, .oh-val { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oh-sin-c { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oh-sin-c > li::after { display: none; }
  .oh-vbar { position: static; }
}
@media (max-width: 760px) {
  .oh-cta .btn { width: 100%; justify-content: center; text-align: center; }
  .oh-4, .oh-og-cols, .oh-val, .oh-dim, .oh-onde, .oh-mps { grid-template-columns: minmax(0, 1fr); }
  .oh-dim > li.oh-dim-5 { flex-direction: column; }
  .oh-trio { grid-template-columns: minmax(0, 1fr); }
  .oh-trio > li { grid-template-columns: auto auto minmax(0, 1fr); align-items: center; justify-items: start; text-align: left; }
  .oh-trio ul { display: flex; flex-wrap: wrap; gap: 2px 8px; text-align: left; }
  .oh-vsel { width: 100%; }
  .oh-vsel button { flex: 1; padding: 8px 6px; font-size: 13.5px; }
  .oh-q li { grid-template-columns: 52px minmax(0, 1fr); }
  .oh-q li > p, .oh-q li .oh-q-ex { grid-column: 1 / -1; }
  .oh-raias { display: none; }
  .oh-ps { background: none; }
  .oh-p { grid-template-columns: minmax(0, 1fr); }
  .oh-p b { grid-column: 1; }
  .oh-p-r { position: static; width: auto; height: auto; clip: auto; font: 500 10.5px var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--on-dark-mut); }
  .oh-p { gap: 2px; }
  .oh-marcos { grid-template-columns: minmax(0, 1fr); }
  .oh-ar { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .oh-ar:not(:last-child)::after { left: 28px; }
  .oh-sin-c { grid-template-columns: minmax(0, 1fr); }
  .oh-fl-sw { display: flex; }
  .oh-fl-sw button { flex: 1; }
}
@media (max-width: 760px) { .oh-sin-c ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 3px 12px; } }
/* Rodada 13b: onde funciona (tríade) e o que o Command já faz (BRIEFING §8 a §10). */
.oh-wp { background: linear-gradient(180deg, rgba(27,157,224,.10), rgba(27,157,224,0) 70%), var(--bg-1); }
.oh-tri { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.oh-tri li { display: flex; gap: 14px; align-items: flex-start; padding: 20px; border: 1px solid rgba(52,195,240,.3); border-radius: 18px; background: var(--bg-2); min-width: 0; }
.oh-tri h3 { margin: 0; font-size: 18px; line-height: 1.3; color: var(--white); }
.oh-tri p { margin: 6px 0 0; font-size: 15.5px; line-height: 1.5; color: var(--on-dark-soft); }
.oh-dev { display: inline-flex; margin-top: 10px; padding: 2px 9px; border-radius: 999px; border: 1px solid rgba(251,191,36,.6); color: #fcd34d; font: 500 12px/1.5 var(--f-mono); }
.oh-ev { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.oh-ev li { display: grid; gap: 4px; align-content: start; padding: 16px; border: 1px solid var(--line-exec); border-radius: 16px; background: var(--bg-2); min-width: 0; }
.oh-ev b { font: 600 15.5px/1.3 var(--f-display); color: var(--white); }
.oh-ev span { font-size: 14.5px; line-height: 1.45; color: var(--on-dark-soft); }
.oh-gov-l { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 8px; }
.oh-gov-l li { padding: 10px 14px; border-left: 3px solid var(--cyan); border-radius: 0 10px 10px 0; background: rgba(52,195,240,.08); color: var(--white); font-size: 15px; line-height: 1.5; }
@media (max-width: 1023px) { .oh-tri { grid-template-columns: minmax(0, 1fr); } .oh-ev { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .oh-ev { grid-template-columns: minmax(0, 1fr); } }
