/* Standalone reset; all presentation rules are scoped to the section. */
html { background: #010916; }
body { margin: 0; }
.orch-shell { container-type: inline-size; width: 100%; max-width: 1920px; margin-inline: auto; }
.orch-section, .orch-section * { box-sizing: border-box; }
.orch-section {
  position: relative; isolation: isolate; overflow: hidden; min-height: 56.28cqw;
  color: #f8fafb; font-family: Arial,Helvetica,sans-serif;
  background: radial-gradient(ellipse at 73% 48%,#02214e45,transparent 58%),linear-gradient(120deg,#010713,#000d1d);
}
.orch-section::before { content: ''; position: absolute; width: 28%; height: 20%; bottom: -17%; left: 3%; border-top: 1px solid #0066a93b; transform: rotate(-45deg); pointer-events: none; }
.orch-copy { position: relative; z-index: 2; width: 43cqw; padding: 7.2cqw 0 0 2.9cqw; pointer-events: none; }
.orch-section .section-meta{display:flex;align-items:center;gap:18px;font:700 11px/1 ui-monospace,monospace;letter-spacing:.2em;margin-bottom:20px;color:#7d95b4;padding-block:0;overflow:visible}.orch-section .section-meta span:first-child{padding:5px 9px;border:1px solid rgba(120,180,255,.28);border-radius:6px;background:rgba(20,60,140,.12);color:#8fb4e6}.orch-section .section-meta span:last-child{position:relative;display:flex;align-items:center;gap:14px}.orch-section .section-meta span:last-child:after{content:"";flex:1 1 60px;height:1px;background:rgba(100,130,170,.22);margin-left:4px}
.orch-copy h2 { margin: 0; font-size: 7.08cqw; font-weight: 800; line-height: .98; letter-spacing: -.38cqw; padding-block: 0.22em 0.30em; overflow: visible; }
.orch-copy h2 span { display: inline-block; padding-block: 0.12em 0.22em; color: #00cfef; background: linear-gradient(125deg,#00e9ed 0%,#0999f0 28%,#40bde7 51%,#00d6e5 68%,#a3f17e 97%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.orch-copy p { margin: 1.9cqw 0 0 .15cqw; font-size: max(14px,1.09cqw); font-weight: 400; line-height: 1.58; color: #cee2f6; letter-spacing: -.022cqw; white-space: nowrap; }
.orch-visual { position: absolute; right: 0; top: 0; width: 64.11cqw; height: 56.28cqw; z-index: 1; }
.orch-map { width: 100%; height: 100%; overflow: visible; }
.orch-bottom-dots { position: absolute; bottom: 1.3cqw; left: 7cqw; width: 23cqw; height: 3.5cqw; background-image: radial-gradient(#0875ba88 .8px,transparent 1.2px); background-size: 16px 16px; mask-image: linear-gradient(90deg,transparent,#000,transparent); z-index: 0; }
.orch-guide { stroke: #095689; stroke-width: .75; opacity: .72; }
.guide-0 { stroke: #009feb; stroke-dasharray: 1 7; stroke-width: 1.4; }
.guide-1 { stroke: #07529e; stroke-dasharray: 9 3; opacity: .4; }
.guide-2,.guide-4 { stroke-dasharray: 65 45 5 25; opacity: .4; }
.guide-3 { stroke: #08304e; opacity: .6; }
.guide-6 { stroke: #0879b5; }
.guide-7 { stroke: #0298f5; stroke-dasharray: 2 13; stroke-width: 2; }
.orch-spoke { stroke: #086cac; stroke-width: 1; }
.orch-branch-base { fill: none; stroke: #086398; stroke-width: .8; opacity: .9; }
.orch-branch-flow { fill: none; stroke: #00d6ff; stroke-width: 1.3; stroke-dasharray: 2 3 7 3; opacity: .76; }
.orch-signal-card { color: #bee0ff; }
.orch-signal-card rect { fill: #06182c; stroke: #1b5688; stroke-width: .9; }
.orch-dot-glow { filter: drop-shadow(0 0 6px #008cff); }
.orch-framework { filter: drop-shadow(0 0 4px #028ee888); }
.orch-junctions { filter: drop-shadow(0 0 9px #00e5ff); }
.orch-link-base { fill: none; stroke: url(#orch-orbit-neon); stroke-width: 3.5; filter: drop-shadow(0 0 6px #008affbb); }
.orch-link-flow { fill: none; stroke: #b9ff92; stroke-width: 4; stroke-linecap: round; stroke-dasharray: 12 88; filter: drop-shadow(0 0 5px #8dff71); opacity: .8; }
.orch-arrow { filter: drop-shadow(0 0 7px #99ff75); }
.orch-core, .orch-node { outline: none; }
.orch-core-edge { filter: drop-shadow(0 0 7px #00b9ff) drop-shadow(0 0 15px #076dff80); }
.orch-core-sweep { opacity: .9; filter: drop-shadow(0 0 6px #baff76); transform-origin: 510px 448px; }
.orch-ring-type { font-family: Arial,Helvetica,sans-serif; font-size: 16px; font-weight: 500; letter-spacing: 5.8px; fill: #c8e6ff; }
.orch-label-plate { fill: #001126; stroke: #00dbff; stroke-width: 1.7; }
.orch-node-face { fill: url(#orch-node-fill); }
.orch-node-rim { fill: none; stroke: url(#orch-neon); stroke-width: 3.5; filter: drop-shadow(0 0 5px #009dff) drop-shadow(0 0 9px #0963ff); }
.orch-node-aura { fill: none; stroke: #28dfff; stroke-width: 1; opacity: 0; transform-box: fill-box; transform-origin: center; }
.orch-node-icon { color: #b7e2ff; }
.orch-node-label { fill: #d7eaff; font-family: Arial,Helvetica,sans-serif; font-size: 20px; font-weight: 600; letter-spacing: 1px; }
.orch-node[data-node="sidekicks"] .orch-label-plate { stroke: #9af54c; }
.orch-node[data-node="sidekicks"] .orch-node-rim { stroke: #94f87a; filter: drop-shadow(0 0 8px #18cbb6); }
.orch-node[data-node="sidekicks"] .orch-node-icon { color: #62edff; }
.orch-node .orch-node-face,.orch-node .orch-label-plate { transition: fill 200ms ease; }
.orch-branch, .orch-link { transition: opacity 200ms ease; }
.orch-node:is(:hover,:focus-visible) .orch-node-face { fill: #06304a; }
.orch-node:is(:hover,:focus-visible) .orch-label-plate { fill: #04233a; stroke: #b6ff85; }
.orch-node:is(:hover,:focus-visible) .orch-node-rim { stroke: #b2fbff; filter: drop-shadow(0 0 8px #15e9ff) drop-shadow(0 0 17px #126dff); }
.orch-node:focus-visible .orch-node-aura { opacity: .8; stroke: #d2ffb4; stroke-width: 2; }
.orch-core:focus-visible .orch-core-edge { stroke: #c5ffae; }
.orch-section[data-active="brand"] :is(.orch-branch:not([data-branch="brand"]),.orch-link:not([data-link="brand"])),
.orch-section[data-active="campaign"] :is(.orch-branch:not([data-branch="campaign"]),.orch-link:not([data-link="campaign"])),
.orch-section[data-active="sidekicks"] :is(.orch-branch:not([data-branch="sidekicks"]),.orch-link:not([data-link="sidekicks"])),
.orch-section[data-active="data"] :is(.orch-branch:not([data-branch="data"]),.orch-link:not([data-link="data"])),
.orch-section[data-active="proof"] :is(.orch-branch:not([data-branch="proof"]),.orch-link:not([data-link="proof"])) { opacity: .38; }
@media (prefers-reduced-motion: no-preference) {
  .orch-copy { animation: orch-enter 750ms ease-out both; }
  .orch-visual { animation: orch-map-enter 1s ease-out 150ms backwards; }
  .orch-section:is(:hover,:focus-within,.is-touched) .orch-core-sweep { animation: orch-sweep 9s linear infinite; }
  .orch-section:is(:hover,:focus-within,.is-touched) .orch-link-flow { animation: orch-link-travel 2.7s linear infinite; }
  .orch-section:is(:hover,:focus-within,.is-touched) .orch-branch-flow { animation: orch-signal-travel 1.6s linear var(--delay,0ms) infinite; }
  .orch-section:is(:hover,:focus-within,.is-touched) .guide-7 { animation: orch-outer-orbit 90s linear infinite; transform-origin: 510px 448px; }
  .orch-section:is(:hover,:focus-within,.is-touched) .orch-junctions { animation: orch-junction-light 2.3s ease-in-out infinite; }
  .orch-node:is(:hover,:focus-visible) .orch-node-aura { animation: orch-node-pulse 1.8s ease-out infinite; }
  .orch-node:is(:hover,:focus-visible) .orch-node-icon { animation: orch-icon-float 1.8s ease-in-out infinite; }
  .orch-core:is(:hover,:focus-visible) .orch-core-sweep { animation-duration: 4.5s; }
}
@keyframes orch-enter { from { opacity: 0; translate: 0 14px; } to { opacity: 1; translate: 0 0; } }
@keyframes orch-map-enter { from { opacity: 0; } to { opacity: 1; } }
@keyframes orch-sweep { to { transform: rotate(360deg); } }
@keyframes orch-outer-orbit { to { transform: rotate(-360deg); } }
@keyframes orch-link-travel { to { stroke-dashoffset: -100; } }
@keyframes orch-signal-travel { to { stroke-dashoffset: -30; } }
@keyframes orch-junction-light { 0%,100% { opacity: .75; } 50% { opacity: 1; filter: drop-shadow(0 0 12px #55f5ff); } }
@keyframes orch-node-pulse { 0% { opacity: .6; transform: scale(.97); } 100% { opacity: 0; transform: scale(1.32); } }
@keyframes orch-icon-float { 0%,100% { translate: 0 0; } 50% { translate: 0 -3px; } }
@container (max-width: 900px) {
  .orch-section { min-height: auto; padding-bottom: 25px; }
  .orch-copy { width: auto; padding: 45px 26px 0; }
  .orch-copy h2 { font-size: clamp(48px,10.7cqw,87px); line-height: 1.0; letter-spacing: -3px; padding-block: 0.18em 0.26em; overflow: visible; }
  .orch-copy p { white-space: normal; max-width: 670px; font-size: 16px; line-height: 1.55; margin: 25px 0 0; }
  .orch-desktop-break { display: none; }
  .orch-visual { position: relative; top: auto; right: auto; width: 100%; height: auto; aspect-ratio: 1072/941; margin-top: 5px; }
  .orch-node-label { font-size: 23px; }
  .orch-bottom-dots { width: 65%; height: 35px; left: 15%; bottom: 0; }
}
@container (max-width: 450px) {
  .orch-copy { padding: 35px 21px 0; }
  .orch-copy h2 { font-size: clamp(41px,12.4cqw,56px); letter-spacing: -2.7px; line-height: 1.02; padding-block: 0.16em 0.24em; overflow: visible; }
  .orch-visual { width: calc(100% + 16px); margin-left: -8px; }
  .orch-node-label { font-size: 25px; letter-spacing: 0; }
  .orch-node-aura { stroke-width: 2; }
}
@media (prefers-reduced-motion: reduce) {
  .orch-section *, .orch-section *::before, .orch-section *::after { animation: none !important; transition: none !important; }
  .orch-node:is(:hover,:focus-visible) .orch-node-aura { opacity: .65; }
}

/* HTML video overlay uses the same normalized coordinates as the SVG hub. */
.orch-video-rim { filter: drop-shadow(0 0 12px #039aff); }
.orch-hub-video {
  position: absolute;
  left: 47.57462687%;
  top: 47.60892667%;
  width: 21.82835821%;
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  overflow: hidden;
  clip-path: circle(50%);
  isolation: isolate;
  background: #090e1b;
  pointer-events: none;
  box-shadow: 0 0 16px #0088ff4d;
}
.orch-video { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 50%; }
