/* Organização Agêntica: teia de pessoas e agentes */
.org-web { width: 100%; height: 100%; max-height: 100%; overflow: visible; }
.org-web .ow-h { fill: none; stroke: #94a6c8; stroke-opacity: .28; stroke-width: 1; stroke-dasharray: 2 5; animation: ow-flow 6s linear infinite; }
.org-web .ow-w { fill: none; stroke: #6fbfce; stroke-opacity: .32; stroke-width: 1; }
.org-web .ow-pulse { fill: #bfeaf2; filter: url(#ow-glow); }
.org-web .ow-a-body { fill: #10233f; stroke: #6fbfce; stroke-width: 1.2; }
.org-web .ow-a-core { fill: #6fbfce; animation: ow-blink 2.4s ease-in-out infinite; animation-delay: calc(var(--i) * .5s); }
.org-web .ow-body { fill: #eaeef6; }
.org-web .ow-glyph { fill: #101537; }
.org-web .ow-p { clip-path: none; }
.org-web .ow-glyph-s { fill: none; stroke: #101537; stroke-width: 1.4; stroke-linecap: round; }
.org-web .ow-tether { stroke: #6fbfce; stroke-opacity: .45; stroke-width: .8; }
.org-web .ow-sat { fill: #6fbfce; }
.org-web .ow-halo { opacity: .5; transform-box: fill-box; transform-origin: center; animation: ow-breathe 10s ease-in-out infinite; animation-delay: calc(var(--i) * -2s); }
.org-web .ow-legend text { font: 600 8.5px Manrope, Arial, sans-serif; fill: #94a6c8; letter-spacing: .04em; }
@keyframes ow-flow { to { stroke-dashoffset: -28; } }
@keyframes ow-blink { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
@keyframes ow-breathe { 0%, 70%, 100% { transform: scale(.85); opacity: .35; } 20%, 45% { transform: scale(1.15); opacity: 1; } }
/* entrada: pessoas primeiro, depois agentes e conexões */
.org-web .ow-p, .org-web .ow-a { opacity: 0; transition: opacity .7s ease; }
.org-web .ow-p > *, .org-web .ow-a > * { transition: transform .9s cubic-bezier(.22,.61,.36,1); }
.org-web .ow-human, .org-web .ow-work, .org-web .ow-pulses, .org-web .ow-legend { opacity: 0; transition: opacity 1.2s ease; }
.org-web.is-on .ow-p { opacity: 1; transition-delay: calc(var(--i) * .12s); }
.org-web.is-on .ow-a { opacity: 1; transition-delay: calc(.7s + var(--i) * .12s); }
.org-web.is-on .ow-human { opacity: 1; transition-delay: .5s; }
.org-web.is-on .ow-work { opacity: 1; transition-delay: 1.1s; }
.org-web.is-on .ow-pulses, .org-web.is-on .ow-legend { opacity: 1; transition-delay: 1.5s; }
@media (prefers-reduced-motion: reduce) {
  .org-web .ow-h, .org-web .ow-a-core, .org-web .ow-halo { animation: none; }
  .org-web .ow-pulses { display: none; }
}
.org-web .ow-a-body { fill: #10233f; stroke: #6fbfce; stroke-width: 1.1; }
.org-web .ow-bot { fill: none; stroke: #6fbfce; stroke-width: 1.1; }
.org-web .ow-ant { stroke: #6fbfce; stroke-width: 1.1; stroke-linecap: round; }
.org-web .ow-bot-dot, .org-web .ow-eye { fill: #6fbfce; }
.org-web .ow-eye { animation: ow-blink2 4s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.org-web .ow-a:nth-child(2) .ow-eye { animation-delay: 1s; } .org-web .ow-a:nth-child(3) .ow-eye { animation-delay: 2s; } .org-web .ow-a:nth-child(4) .ow-eye { animation-delay: 3s; }
.org-web .ow-sat { fill: #6fbfce; }
.org-web .ow-sat-eye { fill: #0a0e24; }
.org-web .ow-sat-ant { stroke: #6fbfce; stroke-width: 1; stroke-linecap: round; }
@keyframes ow-blink2 { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.15); } }
@media (prefers-reduced-motion: reduce) { .org-web .ow-eye { animation: none; } }
/* Menu do celular */
.nav-burger { display: none; position: relative; z-index: 41; width: 44px; height: 44px; border: 1px solid var(--line-2); border-radius: 999px; background: rgba(10,14,36,.6); cursor: pointer; }
.nav-burger span { position: absolute; left: 13px; right: 13px; height: 1.6px; background: var(--ink-max); border-radius: 2px; transition: transform .35s var(--ease), top .35s var(--ease); }
.nav-burger span:first-child { top: 17px; } .nav-burger span:last-child { top: 25px; }
.menu-open .nav-burger span:first-child { top: 21px; transform: rotate(45deg); } .menu-open .nav-burger span:last-child { top: 21px; transform: rotate(-45deg); }
.menu-m { position: fixed; inset: 0; z-index: 29; background: rgba(10,14,36,.97); backdrop-filter: blur(14px); padding: 110px var(--gutter) 40px; display: flex; flex-direction: column; gap: 28px; animation: menuin .35s var(--ease); }
.menu-m[hidden] { display: none; }
.menu-m nav { display: flex; flex-direction: column; }
.menu-m nav a { padding: 16px 0; border-bottom: 1px solid var(--line); font-family: var(--f-display); font-weight: 300; font-size: 30px; color: var(--ink-max); }
.menu-m .btn { align-self: flex-start; }
.menu-open, .menu-open body { overflow: hidden; }
@keyframes menuin { from { opacity: 0; } to { opacity: 1; } }
@media (max-width: 1000px) { .nav-burger { display: block; } }

/* Vídeos de fundo: véu mais forte onde o texto mora e no topo, para o menu; letreiro sem cortar a frase mais longa */
.hero-media::before { background: linear-gradient(90deg, rgba(10,14,36,.95) 0%, rgba(10,14,36,.86) 34%, rgba(10,14,36,.48) 60%, rgba(10,14,36,.14) 82%, rgba(10,14,36,0) 100%), linear-gradient(180deg, rgba(10,14,36,.7) 0%, rgba(10,14,36,0) 20%), linear-gradient(0deg, rgba(10,14,36,.9) 0%, rgba(10,14,36,0) 30%); }
.hero h1, .hero-sub { text-shadow: 0 2px 28px rgba(10,14,36,.55); }
.rotator { display: grid; height: auto; }
.rotator .rot-item { position: relative; grid-area: 1 / 1; }
@media (max-width: 700px) { .hero-media::before { background: linear-gradient(0deg, rgba(10,14,36,.97) 0%, rgba(10,14,36,.88) 45%, rgba(10,14,36,.5) 75%, rgba(10,14,36,.55) 100%); } }

/* Logos dos clientes: tudo em branco, suave em repouso, aceso no hover; --h equilibra o peso visual de cada marca */
.lb img { display: block; height: var(--h, 40%); width: auto; max-width: 78%; object-fit: contain; filter: brightness(0) invert(1); opacity: .62; transition: opacity .35s; }
.lb:hover img { opacity: 1; }
.lb img.keep { filter: none; opacity: .9; }
.lb { overflow: hidden; display: flex; align-items: center; justify-content: center; }
.lb img { max-height: 100%; }
@media (max-width: 700px) { .lb.e-xl img { height: 62%; } }
