{"id":37687,"date":"2026-09-28T14:01:34","date_gmt":"2026-09-28T14:01:34","guid":{"rendered":"https:\/\/volatusaerospace.com\/?page_id=37687"},"modified":"2026-09-28T14:27:04","modified_gmt":"2026-09-28T14:27:04","slug":"skydra-cuas-planning-software","status":"publish","type":"page","link":"https:\/\/volatusaerospace.com\/fr-ca\/services\/technical-capabilities\/skydra-cuas-planning-software\/","title":{"rendered":"SKYDRA : Logiciel de planification op\u00e9rationnelle et de simulation des menaces C-UAS"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"37687\" class=\"elementor elementor-37687\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0928159 e-con-full dark-section e-flex e-con e-parent\" data-id=\"0928159\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-823e32f elementor-widget__width-inherit elementor-absolute elementor-widget elementor-widget-html\" data-id=\"823e32f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_position&quot;:&quot;absolute&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ================================================================\n     SKYDRA\u2122 Airspace \u2014 Elementor Background Animation Widget\n     - Self-contained snippet for Elementor \"HTML\" widget\n     - Scoped under #skydra-airspace-hero with !important layout overrides\n     - Pure solid black background (#000000) with zero gradient overlays\n     - Right-side framing for dual-column Elementor hero layouts\n     - Optimized geometry, cached glow sprites, and a single 60 fps maximum loop\n     - Native touch\/wheel pass-through; no Lenis or page-level style changes\n     - Coalesced resize, offscreen\/tab suspension, duplicate-init protection\n     - Four-stage crossfading telemetry labels with simulation tags\n     ================================================================ -->\n\n<div id=\"skydra-airspace-hero\">\n  <canvas role=\"img\" aria-label=\"Illustrative SKYDRA airspace simulation: gold radar sweeps around a dimensional airfield, with drone flight paths labelled through detection, tracking, and simulated mitigation, and a glowing protected perimeter.\">Animated airspace concept for SKYDRA.<\/canvas>\n\n  <!-- Ambient Header & Controls (z-index: 3) -->\n  <!--<div class=\"va-top\"><div class=\"va-name\">SKYDRA<sup>\u2122<\/sup><\/div><\/div>-->\n  <div class=\"va-edge\"><\/div>\n  <div class=\"va-bottom\">\n    <div class=\"va-control\">\n      <button type=\"button\" aria-label=\"Pause animation\">Pause<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n\/* ============ STRICTLY SCOPED ELEMENTOR STYLES ============ *\/\n#skydra-airspace-hero {\n  --va-gold: #FFB601;\n  position: absolute !important;\n  top: 0 !important;\n  left: 0 !important;\n  width: 100vw !important;\n  height: 100% !important;\n  min-height: 100vh !important;\n  overflow: hidden !important;\n  z-index: 1 !important;\n  background: #000000 !important;\n  color: #eff0ec !important;\n  font-family: Arial, Helvetica, sans-serif !important;\n  -webkit-font-smoothing: antialiased !important;\n  box-sizing: border-box !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#skydra-airspace-hero * {\n  box-sizing: border-box !important;\n}\n\n#skydra-airspace-hero canvas {\n  position: absolute !important;\n  inset: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  display: block !important;\n  touch-action: auto !important;\n  z-index: 1 !important;\n}\n\n\/* ============ TACTICAL OVERLAYS ============ *\/\n#skydra-airspace-hero .va-top {\n  position: absolute !important;\n  left: 5% !important;\n  right: 5% !important;\n  top: 32px !important;\n  display: flex !important;\n  align-items: center !important;\n  justify-content: space-between !important;\n  pointer-events: none !important;\n  z-index: 3 !important;\n}\n\n#skydra-airspace-hero .va-name {\n  font-size: 15px !important;\n  font-weight: 700 !important;\n  letter-spacing: .24em !important;\n  color: #e6e8e6 !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#skydra-airspace-hero .va-name sup {\n  font-size: 8px !important;\n  letter-spacing: 0 !important;\n  color: var(--va-gold) !important;\n  vertical-align: top !important;\n}\n\n#skydra-airspace-hero .va-edge {\n  position: absolute !important;\n  left: 5% !important;\n  right: 5% !important;\n  top: 68px !important;\n  height: 1px !important;\n  background: linear-gradient(90deg, #ffffff14, transparent 28%, transparent 72%, #ffffff14) !important;\n  pointer-events: none !important;\n  z-index: 3 !important;\n}\n\n#skydra-airspace-hero .va-bottom {\n  position: absolute !important;\n  left: 5% !important;\n  right: 5% !important;\n  bottom: 24px !important;\n  display: flex !important;\n  align-items: center !important;\n  justify-content: flex-end !important;\n  z-index: 3 !important;\n}\n\n#skydra-airspace-hero .va-control {\n  display: flex !important;\n  align-items: center !important;\n  gap: 12px !important;\n  margin-left: auto !important;\n}\n\n#skydra-airspace-hero button {\n  border: 0 !important;\n  border-bottom: 1px solid #ffffff25 !important;\n  padding: 8px 0 !important;\n  background: transparent !important;\n  color: #b3b3b3 !important;\n  font: 10px\/1.4 Arial, sans-serif !important;\n  letter-spacing: .08em !important;\n  cursor: pointer !important;\n  min-width: 44px !important;\n  min-height: 44px !important;\n  transition: color .2s, border-color .2s !important;\n}\n\n#skydra-airspace-hero button:hover {\n  color: #ffc733 !important;\n  border-color: #FFB601 !important;\n}\n\n#skydra-airspace-hero button:focus-visible {\n  outline: 2px solid #FFB601 !important;\n  outline-offset: 5px !important;\n}\n\n@media (max-width: 520px) {\n  #skydra-airspace-hero .va-top { top: 20px !important; }\n  #skydra-airspace-hero .va-name { font-size: 13px !important; }\n  #skydra-airspace-hero .va-edge { top: 52px !important; }\n  #skydra-airspace-hero .va-bottom { bottom: 16px !important; }\n}\n<\/style>\n\n<script>\n(function() {\n  function initSkydraAirspace() {\n    const root = document.getElementById('skydra-airspace-hero');\n    if (!root) return;\n    const cv = root.querySelector('canvas');\n    if (!cv) return;\n    \/\/ Elementor may execute this widget again during an editor refresh.\n    if (root.__skydraAirspace && root.__skydraAirspace.canvas === cv) return;\n    if (root.__skydraAirspace) root.__skydraAirspace.destroy();\n    const ctx = cv.getContext('2d', { alpha: false });\n    if (!ctx) return;\n    const button = root.querySelector('button');\n\n    const TAU = Math.PI * 2, GOLD = '255,182,1', WHITE = '226,226,226', CORAL = '255,83,70';\n    const reduced = window.matchMedia('(prefers-reduced-motion: reduce)');\n\n    let w = 1, h = 1, scale = 1, clock = 8, last = null, raf = 0;\n    let inView = !window.IntersectionObserver, paused = reduced.matches;\n    let destroyed = false, dirty = true, resizePending = true, dpr = 0;\n    let nextDraw = null, pointerPending = false, pointerClientX = 0, pointerClientY = 0;\n    let resizeObserver, intersectionObserver;\n    const FRAME_MS = 1000 \/ 60;\n    const cleanups = [];\n    function listen(target, type, handler, options) {\n      target.addEventListener(type, handler, options);\n      cleanups.push(() => target.removeEventListener(type, handler, options));\n    }\n    let pointer = { x: 0, y: 0, tx: 0, ty: 0 }, angle = -0.42, ca = 1, sa = 0, tilt = 0.58;\n    let centerX = 0, centerY = 0;\n\n    const clamp = (n, a = 0, b = 1) => Math.max(a, Math.min(b, n));\n    const smooth = n => { n = clamp(n); return n * n * (3 - 2 * n); };\n    const rgba = (c, a) => 'rgba(' + c + ',' + clamp(a) + ')';\n\n    \/\/ 3D isometric projection with responsive asymmetric framing\n    function project(x, y, z = 0) {\n      const X = x * ca - y * sa, Y = x * sa + y * ca;\n      return {\n        x: centerX + X * scale,\n        y: centerY + (Y * tilt - z * 0.91) * scale,\n        d: Y\n      };\n    }\n\n    function path(points, color, width = 1, fill = null, closed = false) {\n      if (!points.length) return;\n      ctx.beginPath();\n      \/\/ Project directly: avoid a temporary object for every terrain vertex.\n      for (let i = 0; i < points.length; i++) {\n        const v = points[i], x = v[0], y = v[1], z = v[2] || 0;\n        const px = centerX + (x * ca - y * sa) * scale;\n        const py = centerY + ((x * sa + y * ca) * tilt - z * 0.91) * scale;\n        if (i) ctx.lineTo(px, py); else ctx.moveTo(px, py);\n      }\n      if (closed) ctx.closePath();\n      if (fill) { ctx.fillStyle = fill; ctx.fill(); }\n      if (color) { ctx.lineWidth = width; ctx.strokeStyle = color; ctx.stroke(); }\n    }\n\n    function line(a, b, color, width = 1) {\n      ctx.beginPath();\n      ctx.moveTo(centerX + (a[0] * ca - a[1] * sa) * scale,\n        centerY + ((a[0] * sa + a[1] * ca) * tilt - (a[2] || 0) * 0.91) * scale);\n      ctx.lineTo(centerX + (b[0] * ca - b[1] * sa) * scale,\n        centerY + ((b[0] * sa + b[1] * ca) * tilt - (b[2] || 0) * 0.91) * scale);\n      ctx.strokeStyle = color;\n      ctx.lineWidth = width;\n      ctx.stroke();\n    }\n\n    \/\/ All rings keep the original polygon resolution. Cache their unit samples.\n    const ringSamples = new Map();\n    function ring(x, y, r, z, color, width = 1, start = 0, end = TAU) {\n      const span = end - start, n = Math.ceil(span * 13);\n      if (n < 1) return;\n      const key = n + ':' + span.toFixed(8);\n      let samples = ringSamples.get(key);\n      if (!samples) {\n        samples = new Float64Array((n + 1) * 2);\n        for (let i = 0; i <= n; i++) {\n          const a = span * i \/ n;\n          samples[i * 2] = Math.cos(a);\n          samples[i * 2 + 1] = Math.sin(a);\n        }\n        ringSamples.set(key, samples);\n      }\n      const cs = Math.cos(start), ss = Math.sin(start);\n      const px = centerX + (x * ca - y * sa) * scale;\n      const py = centerY + ((x * sa + y * ca) * tilt - z * 0.91) * scale;\n      const cx = (cs * ca - ss * sa) * r * scale;\n      const sx = (-ss * ca - cs * sa) * r * scale;\n      const cy = (cs * sa + ss * ca) * r * scale * tilt;\n      const sy = (-ss * sa + cs * ca) * r * scale * tilt;\n      ctx.beginPath();\n      for (let i = 0; i <= n; i++) {\n        const c = samples[i * 2], sn = samples[i * 2 + 1];\n        const X = px + c * cx + sn * sx, Y = py + c * cy + sn * sy;\n        if (i) ctx.lineTo(X, Y); else ctx.moveTo(X, Y);\n      }\n      ctx.strokeStyle = color;\n      ctx.lineWidth = width;\n      ctx.stroke();\n    }\n\n    \/\/ Rasterize each reusable glow once at its display resolution.\n    \/\/ Opacity multiplication preserves the original gradient stops and fading.\n    const glowSprites = new Map();\n    function glow(x, y, z, size, color, strength = 1) {\n      if (strength <= 0) return;\n      const p = project(x, y, z), r = size * scale;\n      if (p.x + r < 0 || p.y + r < 0 || p.x - r > w || p.y - r > h) return;\n      const key = color + ':' + size;\n      let sprite = glowSprites.get(key);\n      if (!sprite) {\n        sprite = document.createElement('canvas');\n        sprite.width = sprite.height = Math.max(2, Math.ceil(r * 2 * dpr));\n        const sc = sprite.getContext('2d'), sr = sprite.width \/ 2;\n        const gr = sc.createRadialGradient(sr, sr, 0, sr, sr, sr);\n        gr.addColorStop(0, rgba(color, 0.36));\n        gr.addColorStop(0.22, rgba(color, 0.11));\n        gr.addColorStop(1, rgba(color, 0));\n        sc.fillStyle = gr;\n        sc.fillRect(0, 0, sprite.width, sprite.height);\n        glowSprites.set(key, sprite);\n      }\n      const alpha = ctx.globalAlpha;\n      ctx.globalAlpha = alpha * strength;\n      ctx.drawImage(sprite, p.x - r, p.y - r, r * 2, r * 2);\n      ctx.globalAlpha = alpha;\n    }\n\n    function point(x, y, z, r, color) {\n      let p = project(x, y, z);\n      ctx.beginPath();\n      ctx.arc(p.x, p.y, Math.max(0.6, r * scale), 0, TAU);\n      ctx.fillStyle = color;\n      ctx.fill();\n    }\n\n    \/\/ Seeded abstract digital-twin terrain\n    let seed = 42;\n    function rand() { seed = (seed * 1664525 + 1013904223) >>> 0; return seed \/ 4294967296; }\n    function terrainZ(x, y) {\n      let rad = Math.hypot(x, y);\n      return (Math.sin(x * 0.012 + y * 0.004) * Math.cos(y * 0.011) * 20 + Math.sin(y * 0.022 + x * 0.013) * 9) * smooth((rad - 260) \/ 250) - 9;\n    }\n\n    const terrain = [];\n    for (let y = -800; y <= 800; y += 32) {\n      let row = [];\n      for (let x = -960; x <= 960; x += 32) row.push([x, y, terrainZ(x, y)]);\n      terrain.push(row);\n    }\n\n    const terrainRows = terrain.filter((_, i) => i % 2 === 0);\n    const terrainColumns = [];\n    for (let i = 0; i < terrain[0].length; i += 2) terrainColumns.push(terrain.map(row => row[i]));\n    const terrainPoints = Array.from({ length: 54 }, (_, i) => {\n      const x = (i * 173 % 1500) - 750, y = (i * 257 % 1000) - 500;\n      return [x, y, terrainZ(x, y)];\n    });\n\n    \/\/ Clean building array (tower double-render bug eliminated)\n    const buildings = [\n      [-48, -65, 43, 31, 22],\n      [-2, -65, 30, 31, 15],\n      [36, -65, 34, 31, 25],\n      [-76, 12, 32, 22, 15],\n      [-76, 39, 32, 24, 12],\n      [20, 5, 68, 23, 18],\n      [26, 36, 54, 19, 15]\n    ];\n\n    const remote = [];\n    for (let i = 0; i < 48; i++) {\n      let x = (rand() - 0.5) * 1240, y = (rand() - 0.5) * 900;\n      if (Math.hypot(x, y) > 310) remote.push([x, y, 10 + rand() * 30, 10 + rand() * 24, 5 + rand() * 18]);\n    }\n\n    const fence = Array.from({ length: 8 }, (_, i) => {\n      const a = i * TAU \/ 8 + Math.PI \/ 8;\n      return [Math.cos(a) * 230, Math.sin(a) * 230, 1];\n    });\n\n    const sensors = [[-182, -109], [193, -65], [-28, 207]];\n\n    const boxGeometry = new Map();\n    function box(x, y, bw, bd, bh, alpha = 1) {\n      const key = [x, y, bw, bd, bh].join(',');\n      let mesh = boxGeometry.get(key);\n      if (!mesh) {\n        const A = [x, y, 0], B = [x + bw, y, 0], C = [x + bw, y + bd, 0], D = [x, y + bd, 0];\n        const top = [A, B, C, D].map(p => [p[0], p[1], bh]);\n        const faces = [[A, B, top[1], top[0]], [B, C, top[2], top[1]],\n          [C, D, top[3], top[2]], [D, A, top[0], top[3]]].map(points => ({\n            points, x: points.reduce((sum, p) => sum + p[0], 0),\n            y: points.reduce((sum, p) => sum + p[1], 0), depth: 0\n          }));\n        const roof = [];\n        for (let a = 7; a < bw; a += 9) roof.push([[x + a, y, bh], [x + a, y + bd, bh]]);\n        mesh = { faces, top, roof };\n        boxGeometry.set(key, mesh);\n      }\n      for (const face of mesh.faces) face.depth = face.x * sa + face.y * ca;\n      mesh.faces.sort((a, b) => a.depth - b.depth);\n      const stroke = rgba(WHITE, 0.12 * alpha), fill = rgba('20,20,20', 0.92 * alpha);\n      for (const face of mesh.faces) path(face.points, stroke, 0.65, fill, true);\n      path(mesh.top, rgba(WHITE, 0.32 * alpha), 0.8, rgba('34,34,34', 0.95 * alpha), true);\n      for (const edge of mesh.roof) line(edge[0], edge[1], rgba(WHITE, 0.08 * alpha), 0.6);\n    }\n\n    function ground() {\n      for (const row of terrainRows) path(row, rgba(WHITE, 0.065), 0.65);\n      for (const column of terrainColumns) path(column, rgba(WHITE, 0.055), 0.65);\n      for (const p of terrainPoints) point(p[0], p[1], p[2], 0.65, rgba(WHITE, 0.22));\n      remote.forEach(b => box(...b, 0.34));\n\n      path([[-790, 135, 0], [-400, 135, 0], [-315, 82, 0], [305, 82, 0], [390, 145, 0], [740, 145, 0]], rgba(WHITE, 0.14), 1);\n      path([[-790, 141, 0], [-400, 141, 0], [-315, 88, 0], [305, 88, 0], [390, 151, 0], [740, 151, 0]], rgba(WHITE, 0.08), 0.7);\n      path([[-108, -98, 0], [117, -98, 0], [117, 69, 0], [-108, 69, 0]], rgba(WHITE, 0.14), 0.7, rgba('32,32,32', 0.25), true);\n\n      path([[-170, -26, 1], [169, -26, 1], [169, -2, 1], [-170, -2, 1]], rgba(WHITE, 0.34), 0.7, '#151515', true);\n      for (let x = -149; x < 148; x += 25) line([x, -14, 1.5], [x + 12, -14, 1.5], rgba(WHITE, 0.52), 0.9);\n      for (let end of [-162, 152]) for (let y = -23; y < -3; y += 4) line([end, y, 1.5], [end + 10, y, 1.5], rgba(WHITE, 0.65), 0.9);\n      for (let x = -165; x <= 165; x += 16) { point(x, -27, 1.5, 0.8, rgba(GOLD, 0.66)); point(x, -1, 1.5, 0.8, rgba(GOLD, 0.66)); }\n\n      buildings.sort((a, b) => project(a[0], a[1]).d - project(b[0], b[1]).d).forEach(b => box(...b));\n\n      \/\/ Correct draw order: base box first, tower shaft last, then mast\n      box(-92, -60, 23, 24, 6, 0.9);\n      box(-88, -57, 15, 17, 48, 0.9);\n      line([-80, -49, 48], [-80, -49, 67], rgba(WHITE, 0.8), 1);\n      glow(-80, -49, 67, 14, GOLD, 0.7);\n      point(-80, -49, 67, 1.5, rgba(GOLD, 0.9));\n    }\n\n    function perimeter() {\n      glow(0, 0, 0, 310, GOLD, 0.32);\n      for (let k = 0; k < 8; k++) {\n        const a = fence[k], b = fence[(k + 1) % 8];\n        path([a, b, [b[0], b[1], 24], [a[0], a[1], 24]], null, 0, rgba(GOLD, 0.015), true);\n        line(a, b, rgba(GOLD, 0.60), 1);\n        line([a[0], a[1], 24], [b[0], b[1], 24], rgba(GOLD, 0.13), 0.7);\n        line(a, [a[0], a[1], 24], rgba(GOLD, 0.19), 0.7);\n        point(...a, 1.8, rgba(GOLD, 0.95));\n      }\n      const a = clock * 0.15;\n      ring(0, 0, 265, 0, rgba(GOLD, 0.14), 0.8);\n      ring(0, 0, 270, 0, rgba(GOLD, 0.10), 0.7);\n      ring(0, 0, 265, 0, rgba(GOLD, 0.75), 1.5, a, a + 0.7);\n      ring(0, 0, 265, 0, rgba(GOLD, 0.45), 1.1, a + Math.PI, a + Math.PI + 0.4);\n      for (let i = 0; i < 120; i++) {\n        const ang = i * TAU \/ 120, r = i % 10 === 0 ? 279 : 274;\n        line([Math.cos(ang) * 270, Math.sin(ang) * 270, 0], [Math.cos(ang) * r, Math.sin(ang) * r, 0], rgba(GOLD, i % 10 === 0 ? 0.45 : 0.18), 0.7);\n      }\n      sensors.forEach(([x, y], i) => {\n        ring(x, y, 14, 0, rgba(GOLD, 0.5), 0.8);\n        ring(x, y, 20, 0, rgba(GOLD, 0.15), 0.7);\n        const t = (clock * 0.29 + i \/ 3) % 1;\n        ring(x, y, 19 + t * 44, 0, rgba(GOLD, (1 - t) * 0.23), 0.8);\n        box(x - 4, y - 4, 8, 8, 10);\n        line([x, y, 10], [x, y, 28], rgba(GOLD, 0.75), 1);\n        point(x, y, 28, 2, rgba(GOLD, 1));\n        glow(x, y, 28, 24, GOLD, 0.8);\n      });\n    }\n\n    const domeMeridians = Array.from({ length: 12 }, (_, j) => {\n      const a = j * TAU \/ 12;\n      return Array.from({ length: 37 }, (_, i) => {\n        const b = i * Math.PI \/ 72;\n        return [Math.cos(a) * Math.cos(b) * 232, Math.sin(a) * Math.cos(b) * 232, Math.sin(b) * 232 * 0.74];\n      });\n    });\n    const sweepSamples = Array.from({ length: 29 }, (_, i) => {\n      const b = i * Math.PI \/ 56;\n      return [Math.cos(b) * 232, Math.sin(b) * 232 * 0.74];\n    });\n    const sweepEdgeSamples = Array.from({ length: 43 }, (_, i) => {\n      const b = i * Math.PI \/ 84;\n      return [Math.cos(b) * 232, Math.sin(b) * 232 * 0.74];\n    });\n    const sweepPoints = [[0, 0, 0], ...sweepSamples.map(() => [0, 0, 0])];\n    const sweepEdge = sweepEdgeSamples.map(() => [0, 0, 0]);\n\n    function dome() {\n      const R = 232;\n      for (let i = 1; i < 6; i++) {\n        const a = i * Math.PI \/ 12;\n        ring(0, 0, Math.cos(a) * R, Math.sin(a) * R * 0.74, rgba(GOLD, 0.085), 0.7);\n      }\n      for (const pts of domeMeridians) path(pts, rgba(GOLD, 0.09), 0.7);\n      const sweep = clock * 0.32;\n      for (let j = 0; j < 26; j++) {\n        const a = sweep - j * 0.012, cs = Math.cos(a), sn = Math.sin(a);\n        for (let i = 0; i < sweepSamples.length; i++) {\n          const sample = sweepSamples[i], p = sweepPoints[i + 1];\n          p[0] = cs * sample[0]; p[1] = sn * sample[0]; p[2] = sample[1];\n        }\n        path(sweepPoints, null, 0, rgba(GOLD, 0.0018 * (1 - j \/ 26)), true);\n      }\n      const cs = Math.cos(sweep), sn = Math.sin(sweep), pts = sweepEdge;\n      for (let i = 0; i < sweepEdgeSamples.length; i++) {\n        const sample = sweepEdgeSamples[i], p = pts[i];\n        p[0] = cs * sample[0]; p[1] = sn * sample[0]; p[2] = sample[1];\n      }\n      path(pts, rgba(GOLD, 0.72), 1.2);\n      const r = 232;\n      line([0, 0, 0], [Math.cos(sweep) * r, Math.sin(sweep) * r, 0], rgba(GOLD, 0.37), 0.8);\n      glow(Math.cos(sweep) * r, Math.sin(sweep) * r, 0, 28, GOLD, 0.7);\n      const t = (clock * 0.10) % 1, z = t * 170, rr = Math.sqrt(Math.max(0, 1 - (z \/ 173) ** 2)) * R;\n      ring(0, 0, rr, z, rgba(GOLD, 0.12 * Math.sin(t * Math.PI)), 1);\n    }\n\n    function flight(u, index) {\n      const a = [-0.88, 2.25, 4.35][index], bend = smooth((u - 0.46) \/ 0.38);\n      const r = u < 0.47 ? 510 - (u \/ 0.47) * 265 : 245 + smooth((u - 0.47) \/ 0.53) * 280;\n      const theta = a + bend * 0.8;\n      return [Math.cos(theta) * r, Math.sin(theta) * r, 66 + Math.sin(u * Math.PI) * 36 + index * 17];\n    }\n\n    function drone(p, color, alpha) {\n      const [x, y, z] = p;\n      ctx.globalAlpha = alpha;\n      line([x - 8, y - 8, z], [x + 8, y + 8, z], rgba(color, 0.9), 1.1);\n      line([x + 8, y - 8, z], [x - 8, y + 8, z], rgba(color, 0.9), 1.1);\n      for (let dx of [-8, 8]) for (let dy of [-8, 8]) ring(x + dx, y + dy, 5, z, rgba(color, 0.65), 0.75);\n      point(x, y, z, 2, rgba(color, 1));\n      glow(x, y, z, 19, color, 0.9);\n      ctx.globalAlpha = 1;\n    }\n\n    const textWidths = new Map();\n    function textWidth(text) {\n      const key = ctx.font + ':' + text;\n      if (!textWidths.has(key)) textWidths.set(key, ctx.measureText(text).width);\n      return textWidths.get(key);\n    }\n\n    \/\/ Four-stage telemetry labels with crossfade and edge awareness\n    function drawDroneLabel(pp, u, j, alpha) {\n      if (alpha < 0.05) return;\n      const isSmall = w < 520, tgt = 'TGT-0' + (j + 1), senName = 'SEN-0' + (((j + 1) % 3) + 1);\n      const prefix = isSmall ? '' : tgt + ' \u00b7 ';\n      const stageTexts = [\n        prefix + 'UNIDENTIFIED',\n        prefix + 'TRACKING \u00b7 ' + senName,\n        prefix + 'MITIGATION SIMULATED',\n        prefix + 'THREAT CLEARED (SIM)'\n      ];\n      const stageColors = [CORAL, CORAL, GOLD, WHITE];\n      const d = 0.025;\n      let weights = [0, 0, 0, 0];\n\n      if (u < 0.34 - d) {\n        weights[0] = 1;\n      } else if (u < 0.34 + d) {\n        const t = (u - (0.34 - d)) \/ (2 * d); weights[0] = 1 - smooth(t); weights[1] = smooth(t);\n      } else if (u < 0.60 - d) {\n        weights[1] = 1;\n      } else if (u < 0.60 + d) {\n        const t = (u - (0.60 - d)) \/ (2 * d); weights[1] = 1 - smooth(t); weights[2] = smooth(t);\n      } else if (u < 0.68 - d) {\n        weights[2] = 1;\n      } else if (u < 0.68 + d) {\n        const t = (u - (0.68 - d)) \/ (2 * d); weights[2] = 1 - smooth(t); weights[3] = smooth(t);\n      } else {\n        weights[3] = 1;\n      }\n\n      ctx.font = '600 ' + (isSmall ? '8px' : '9px') + ' Arial, Helvetica, sans-serif';\n      const active = [];\n      for (let s = 0; s < 4; s++) {\n        const op = weights[s] * alpha;\n        if (op > 0.01) {\n          active.push({ text: stageTexts[s], color: stageColors[s], op: op, w: textWidth(stageTexts[s]) });\n        }\n      }\n      if (!active.length) return;\n\n      const padX = isSmall ? 4 : 5;\n      const boxW = Math.max(...active.map(a => a.w)) + padX * 2;\n      const boxH = isSmall ? 13 : 15;\n\n      let boxX = pp.x + 12;\n      if (boxX + boxW > w - 16 || pp.x > w * 0.72) {\n        boxX = pp.x - 12 - boxW;\n      }\n      boxX = Math.max(12, boxX);\n\n      const targetY = pp.y - 14 + (j * 6);\n      const boxY = Math.max(h * 0.16, Math.min(h - boxH - 12, targetY));\n\n      active.sort((a, b) => b.op - a.op);\n      const primary = active[0];\n\n      ctx.fillStyle = rgba('11,15,17', 0.88 * alpha);\n      ctx.fillRect(boxX, boxY, boxW, boxH);\n      ctx.lineWidth = 0.75;\n      ctx.strokeStyle = rgba(primary.color, 0.38 * alpha);\n      ctx.strokeRect(boxX, boxY, boxW, boxH);\n\n      ctx.textBaseline = 'middle';\n      ctx.textAlign = 'left';\n      active.forEach(act => {\n        ctx.fillStyle = rgba(act.color, Math.min(1, act.op * 1.15));\n        ctx.fillText(act.text, boxX + padX, boxY + boxH * 0.5 + 0.5);\n      });\n    }\n\n    function tracks() {\n      for (let j = 0; j < 3; j++) {\n        const u = (clock \/ 21 + j * 0.335) % 1;\n        const alpha = smooth(u \/ 0.09) * (1 - smooth((u - 0.85) \/ 0.15));\n        let p = flight(u, j), tracked = u > 0.34 && u < 0.72;\n        let color = CORAL;\n        if (u >= 0.68) color = WHITE;\n        else if (u >= 0.60) color = GOLD;\n\n        for (let k = 1; k <= 40; k++) {\n          let v = u - k * 0.003;\n          if (v < 0) continue;\n          line(flight(v, j), flight(v + 0.003, j), rgba(color, alpha * (1 - k \/ 41) * 0.65), 1.2);\n        }\n\n        const foot = [p[0], p[1], 0];\n        ctx.setLineDash([2, 5]);\n        line(foot, p, rgba(color, alpha * 0.19), 0.8);\n        ctx.setLineDash([]);\n        ring(...[p[0], p[1], 9, 0], rgba(color, alpha * 0.28), 0.8);\n        drone(p, color, alpha);\n\n        if (tracked) {\n          const fade = smooth((u - 0.34) \/ 0.06) * (1 - smooth((u - 0.66) \/ 0.06));\n          const s = sensors[(j + 1) % 3];\n          const start = [s[0], s[1], 28];\n          ctx.setLineDash([3, 7]);\n          ctx.lineDashOffset = -clock * 11;\n          line(start, p, rgba(GOLD, fade * 0.26), 0.8);\n          ctx.setLineDash([]);\n          let t = (clock * 0.55 + j * 0.3) % 1;\n          const q = start.map((v, i) => v + (p[i] - v) * t);\n          glow(...q, 12, GOLD, fade);\n          point(...q, 1.8, rgba(GOLD, fade));\n\n          const pp = project(...p), s1 = 14 * scale;\n          ctx.strokeStyle = rgba(GOLD, fade * 0.7);\n          ctx.lineWidth = 0.8;\n          ctx.beginPath();\n          for (let dx of [-1, 1]) for (let dy of [-1, 1]) {\n            ctx.moveTo(pp.x + dx * s1, pp.y + dy * (s1 - 5));\n            ctx.lineTo(pp.x + dx * s1, pp.y + dy * s1);\n            ctx.lineTo(pp.x + dx * (s1 - 5), pp.y + dy * s1);\n          }\n          ctx.stroke();\n        }\n\n        if (u > 0.60 && u < 0.68) {\n          let t = (u - 0.60) \/ 0.08;\n          ring(p[0], p[1], 9 + t * 40, p[2], rgba(GOLD, (1 - t) * 0.55), 1);\n        }\n\n        drawDroneLabel(project(...p), u, j, alpha);\n      }\n    }\n\n    function draw() {\n      ctx.fillStyle = '#000000';\n      ctx.fillRect(0, 0, w, h);\n\n      angle = -0.42 + Math.sin(clock * 0.055) * 0.055 + pointer.x * 0.075;\n      ca = Math.cos(angle);\n      sa = Math.sin(angle);\n      tilt = 0.55 + pointer.y * 0.035;\n\n      ground();\n      perimeter();\n      dome();\n      tracks();\n    }\n\n    \/\/ Only resize the backing store when dimensions really change.\n    function resize() {\n      resizePending = false;\n      const newW = root.clientWidth || window.innerWidth;\n      const newH = root.clientHeight || window.innerHeight;\n      const newDpr = Math.min(window.devicePixelRatio || 1, 1.75);\n      if (newW === w && newH === h && newDpr === dpr) return;\n      w = newW; h = newH; dpr = newDpr;\n      cv.width = Math.round(w * dpr);\n      cv.height = Math.round(h * dpr);\n      ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n      glowSprites.clear();\n      if (w > 880) {\n        centerX = w * 0.68;\n        centerY = h * 0.52;\n        scale = Math.min(w \/ 1100, h \/ 640) * 1.05;\n      } else {\n        centerX = w * 0.56;\n        centerY = h * 0.66;\n        scale = Math.min(w \/ 800, h \/ 680) * (w < 520 ? 1.39 : 1.20);\n      }\n      dirty = true;\n    }\n\n    function requestFrame() {\n      if (!destroyed && !raf && inView && !document.hidden &&\n          (!paused || dirty || resizePending)) raf = requestAnimationFrame(frame);\n    }\n\n    function frame(now) {\n      raf = 0;\n      if (!root.isConnected) { destroy(); return; }\n      if (destroyed || document.hidden || !inView) { last = nextDraw = null; return; }\n      if (resizePending) resize();\n      \/\/ Keep a stable 60 fps ceiling on 90\/120\/144 Hz monitors as well.\n      \/\/ A half-millisecond tolerance avoids accidental 30 fps at 60 Hz.\n      if (!dirty && nextDraw !== null && now + 0.5 < nextDraw) { requestFrame(); return; }\n      if (pointerPending) {\n        pointerPending = false;\n        const rect = root.getBoundingClientRect();\n        if (rect.width && rect.height) {\n          pointer.tx = (pointerClientX - rect.left) \/ rect.width - 0.5;\n          pointer.ty = (pointerClientY - rect.top) \/ rect.height - 0.5;\n        }\n      }\n      if (!paused) {\n        const dt = last === null ? 0 : Math.min((now - last) \/ 1000, 0.05);\n        clock += dt;\n        pointer.x += (pointer.tx - pointer.x) * Math.min(1, dt * 3);\n        pointer.y += (pointer.ty - pointer.y) * Math.min(1, dt * 3);\n      }\n      last = now;\n      draw();\n      dirty = false;\n      nextDraw = nextDraw === null ? now + FRAME_MS : nextDraw + FRAME_MS;\n      if (nextDraw <= now + 0.5) nextDraw = now + FRAME_MS;\n      requestFrame();\n    }\n\n    function sync() {\n      if (destroyed) return;\n      if (button) {\n        button.textContent = paused ? 'Play' : 'Pause';\n        button.setAttribute('aria-label', paused ? 'Play animation' : 'Pause animation');\n      }\n      if (raf) cancelAnimationFrame(raf);\n      raf = 0;\n      last = nextDraw = null;\n      requestFrame();\n    }\n\n    function queueResize() { resizePending = true; requestFrame(); }\n\n    \/\/ Passive, local pointer input; no wheel\/touch listeners or scroll hooks.\n    if (button) listen(button, 'click', () => { paused = !paused; sync(); });\n    listen(root, 'pointermove', e => {\n      if (e.pointerType === 'touch' || reduced.matches || paused || !inView) return;\n      pointerClientX = e.clientX;\n      pointerClientY = e.clientY;\n      pointerPending = true;\n    }, { passive: true });\n    listen(root, 'pointerleave', () => {\n      pointerPending = false;\n      pointer.tx = pointer.ty = 0;\n    }, { passive: true });\n    listen(reduced, 'change', () => { paused = reduced.matches; sync(); });\n    listen(document, 'visibilitychange', sync);\n    listen(window, 'resize', queueResize, { passive: true });\n    listen(window, 'pagehide', () => {\n      if (raf) cancelAnimationFrame(raf);\n      raf = 0; last = nextDraw = null;\n    });\n    listen(window, 'pageshow', () => { resizePending = true; sync(); });\n\n    if (window.ResizeObserver) {\n      resizeObserver = new ResizeObserver(queueResize);\n      resizeObserver.observe(root);\n    }\n    if (window.IntersectionObserver) {\n      intersectionObserver = new IntersectionObserver(entries => {\n        if (!root.isConnected) { destroy(); return; }\n        const entry = entries[entries.length - 1];\n        const visible = entry.isIntersecting && entry.intersectionRatio > 0;\n        if (visible !== inView) { inView = visible; sync(); }\n      }, { threshold: 0 });\n      intersectionObserver.observe(root);\n    }\n\n    function destroy() {\n      if (destroyed) return;\n      destroyed = true;\n      if (raf) cancelAnimationFrame(raf);\n      if (resizeObserver) resizeObserver.disconnect();\n      if (intersectionObserver) intersectionObserver.disconnect();\n      for (const cleanup of cleanups) cleanup();\n      glowSprites.clear();\n      boxGeometry.clear();\n      ringSamples.clear();\n      textWidths.clear();\n      if (root.__skydraAirspace === instance) delete root.__skydraAirspace;\n    }\n    const instance = { canvas: cv, destroy };\n    root.__skydraAirspace = instance;\n    sync();\n  }\n\n  if (document.readyState === 'complete' || document.readyState === 'interactive') {\n    initSkydraAirspace();\n  } else {\n    document.addEventListener('DOMContentLoaded', initSkydraAirspace, { once: true });\n  }\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c7b4592 e-con-full e-flex e-con e-child\" data-id=\"c7b4592\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c59ae16 elementor-icon-list--layout-inline elementor-mobile-align-center elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"c59ae16\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items elementor-inline-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/volatusaerospace.com\/\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Home<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">\/<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/volatusaerospace.com\/fr-ca\/services\/\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Services<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">\/<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/volatusaerospace.com\/fr-ca\/services\/technical-capabilities\/\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Technical Capabilities<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">\/<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\"> <span style=\"color: #FFB601\">SKYDRA (C-UAS)  <span><\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6089dff elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget-laptop__width-initial elementor-widget-tablet__width-initial elementor-widget elementor-widget-heading\" data-id=\"6089dff\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">SKYDRA<br> (C-UAS) <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e32224c elementor-widget__width-initial elementor-widget-tablet__width-initial elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"e32224c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tPlan before the response is required.\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7e8cb64 elementor-widget__width-initial elementor-widget-mobile__width-inherit elementor-widget-laptop__width-initial elementor-widget-tablet__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"7e8cb64\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tA digital environment for counter-UAS operational planning, simulation, and threat response, enabling defence, public safety, and critical infrastructure teams to rehearse, validate, and refine their response before deployment.\n\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-38e099b e-con-full e-flex e-con e-child\" data-id=\"38e099b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-942fd80 elementor-widget elementor-widget-button\" data-id=\"942fd80\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#elementor-action%3Aaction%3Dpopup%3Aopen%26settings%3DeyJpZCI6IjQ5NjIiLCJ0b2dnbGUiOmZhbHNlfQ%3D%3D\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Talk To An Expert<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-320ab85 e-con-full e-flex e-con e-child\" data-id=\"320ab85\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-84e48da elementor-widget elementor-widget-html\" data-id=\"84e48da\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"scroll-indicator-container\">\r\n  <svg class=\"scroll-arrow arrow-1\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\" stroke=\"currentColor\" stroke-width=\"2\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"><\/polyline><\/svg>\r\n  <svg class=\"scroll-arrow arrow-2\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\" stroke=\"currentColor\" stroke-width=\"2\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"><\/polyline><\/svg>\r\n  <svg class=\"scroll-arrow arrow-3\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\" stroke=\"currentColor\" stroke-width=\"2\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"><\/polyline><\/svg>\r\n<\/div>\r\n\r\n<style>\r\n.scroll-indicator-container {\r\n  display: flex;\r\n  flex-direction: column;\r\n  align-items: center;\r\n  justify-content: center;\r\n}\r\n\r\n.scroll-arrow {\r\n  color: #555555; \/* Base gray color *\/\r\n  animation: lightSequence 2s infinite;\r\n  margin-top: -12px; \/* Adjusted overlap for smaller arrows *\/\r\n}\r\n\r\n\/* Delaying each arrow to create the cascading light effect *\/\r\n.arrow-1 { animation-delay: 0s; }\r\n.arrow-2 { animation-delay: 0.3s; }\r\n.arrow-3 { animation-delay: 0.6s; }\r\n\r\n@keyframes lightSequence {\r\n  0% { color: #555555; }\r\n  20% { \r\n    color: #ffffff; \/* White light *\/\r\n  }\r\n  40% { color: #555555; }\r\n  100% { color: #555555; }\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-897c653 e-flex e-con-boxed e-con e-parent\" data-id=\"897c653\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-0c4956b e-con-full e-flex e-con e-child\" data-id=\"0c4956b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-abef8f0 e-con-full e-flex e-con e-child\" data-id=\"abef8f0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3ffb99f e-con-full e-flex e-con e-child\" data-id=\"3ffb99f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-102bdd3 elementor-widget elementor-widget-heading\" data-id=\"102bdd3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Overview <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d26fd8e elementor-widget elementor-widget-text-editor\" data-id=\"d26fd8e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>SKYDRA\u2122 is Volatus Aerospace\u2019s proprietary C-UAS software platform, providing a digital environment for operational planning, simulation exercises, tabletop exercises, and threat-response planning.<\/p><p>Designed to bridge physical counter-drone hardware with real-time operational intelligence, SKYDRA provides defense, public safety, and critical infrastructure organizations with an advanced digital environment for threat simulation, response planning, and live C2 (Command &amp; Control) execution.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-996757a e-con-full e-flex e-con e-child\" data-id=\"996757a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2c9dbce elementor-widget elementor-widget-video\" data-id=\"2c9dbce\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;video_type&quot;:&quot;hosted&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;play_on_mobile&quot;:&quot;yes&quot;,&quot;mute&quot;:&quot;yes&quot;,&quot;loop&quot;:&quot;yes&quot;,&quot;controls&quot;:&quot;yes&quot;}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"e-hosted-video elementor-wrapper elementor-open-inline\">\n\t\t\t\t\t<video class=\"elementor-video\" src=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/output_progressive_79c092ca-0d5c-41f5-809a-9d7ae3616b81.mp4\" autoplay=\"\" loop=\"\" controls=\"\" muted=\"muted\" playsinline=\"\" controlsList=\"nodownload\"><\/video>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ab640e1 e-flex e-con-boxed e-con e-parent\" data-id=\"ab640e1\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-c92a314 e-con-full e-flex e-con e-child\" data-id=\"c92a314\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-253291e e-con-full e-flex e-con e-child\" data-id=\"253291e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-f9871f5 e-con-full e-flex e-con e-child\" data-id=\"f9871f5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e7443d9 elementor-widget elementor-widget-heading\" data-id=\"e7443d9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">What is <span style=\"color: #FFB601\">SKYDRA?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-91d84f1 elementor-widget elementor-widget-text-editor\" data-id=\"91d84f1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span data-contrast=\"auto\">SKYDRA is Volatus Aerospace\u2019s <\/span><b><span data-contrast=\"auto\">Software-as-a-Service (SaaS) platform for counter-uncrewed aircraft system (C-UAS) operational planning and simulation<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p><p><span data-contrast=\"auto\">The platform provides a virtual environment where organizations can structure counter-UAS scenarios, develop operational plans, conduct simulation exercises, and work through potential responses before deployment.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-dae4b84 e-con-full e-flex e-con e-child\" data-id=\"dae4b84\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f8f572d elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"f8f572d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"558\" src=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/What-is-SKYDRA-1024x714.webp\" class=\"attachment-large size-large wp-image-37781\" alt=\"\" srcset=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/What-is-SKYDRA-1024x714.webp 1024w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/What-is-SKYDRA-300x209.webp 300w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/What-is-SKYDRA-768x535.webp 768w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/What-is-SKYDRA-18x12.webp 18w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/What-is-SKYDRA.webp 1136w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-512c383 e-flex e-con-boxed e-con e-parent\" data-id=\"512c383\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5d26468 elementor-widget elementor-widget-heading\" data-id=\"5d26468\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">How <span style=\"color: #FFB601\">SKYDRA Works<\/span><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5f52ce9 elementor-widget__width-initial elementor-widget-mobile__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"5f52ce9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tSKYDRA brings planning and simulation into a single digital environment:\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bdf92bf elementor-widget elementor-widget-html\" data-id=\"bdf92bf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\r\n\r\n<!-- Google Fonts & Lucide Icons -->\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@400;500;700&family=JetBrains+Mono:wght@400;500;700&family=Montserrat:wght@600;700;800;900&display=swap\" rel=\"stylesheet\">\r\n<script src=\"https:\/\/unpkg.com\/lucide@latest\/dist\/umd\/lucide.min.js\"><\/script>\r\n\r\n<style>\r\n\/* ============ ELEMENTOR SCOPED STYLES & OVERRIDES ============ *\/\r\n.skydra-widget {\r\n  --gold: #FFB601;\r\n  --gold-dim: rgba(255,182,1,.55);\r\n  --gold-faint: rgba(255,182,1,.12);\r\n  --panel: #151515;\r\n  --console: #0c0c0c;\r\n  --lgray: #E2E2E2;\r\n  --mgray: #B3B3B3;\r\n  --dgray: #4D4D4D;\r\n  --line: rgba(226,226,226,.09);\r\n  --line-soft: rgba(226,226,226,.06);\r\n  --hostile: #FF5346;\r\n  --ease: cubic-bezier(.22,1,.36,1);\r\n  --mono: 'JetBrains Mono', monospace;\r\n  --head: 'Montserrat', sans-serif;\r\n  --body: 'DM Sans', sans-serif;\r\n\r\n  \/* STRICTLY CONSTRAIN TO PARENT ELEMENTOR CONTAINER *\/\r\n  background: transparent !important;\r\n  width: 100% !important;\r\n  max-width: 100% !important;\r\n  margin: 0 auto !important;\r\n  padding: 0 !important;\r\n  box-sizing: border-box !important;\r\n  position: relative !important;\r\n  overflow: hidden !important;\r\n  color: var(--mgray) !important;\r\n  font-family: var(--body) !important;\r\n  font-size: 15.5px !important;\r\n  line-height: 1.7 !important;\r\n  -webkit-font-smoothing: antialiased !important;\r\n}\r\n\r\n.skydra-widget * {\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n\/* Grid with minmax(0, ...) strictly forbids columns from exceeding container *\/\r\n.skydra-widget .how-grid {\r\n  display: grid !important;\r\n  grid-template-columns: minmax(0, 1fr) minmax(0, 1.06fr) !important;\r\n  gap: 20px !important;\r\n  align-items: stretch !important;\r\n  width: 100% !important;\r\n  max-width: 100% !important;\r\n  background: transparent !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n\/* ============ LEFT COLUMN: STEPS \/ TABS ============ *\/\r\n.skydra-widget .steps {\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  gap: 10px !important;\r\n  height: 100% !important;\r\n  min-width: 0 !important;\r\n  width: 100% !important;\r\n  background: transparent !important;\r\n  padding: 0 !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.skydra-widget .step {\r\n  flex: 1 1 auto !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  justify-content: center !important;\r\n  gap: 8px !important;\r\n  text-align: left !important;\r\n  padding: 18px 24px 22px 24px !important;\r\n  border: 1px solid var(--line) !important;\r\n  background: var(--panel) !important;\r\n  position: relative !important;\r\n  transition: border-color .35s, background .35s !important;\r\n  overflow: hidden !important;\r\n  cursor: pointer !important;\r\n  width: 100% !important;\r\n  min-width: 0 !important;\r\n  max-width: 100% !important;\r\n  box-shadow: none !important;\r\n  border-radius: 0 !important;\r\n  outline: none !important;\r\n  margin: 0 !important;\r\n  font-family: inherit !important;\r\n  color: inherit !important;\r\n  white-space: normal !important;\r\n  user-select: none !important;\r\n}\r\n\r\n.skydra-widget .step::before {\r\n  content: \"\" !important;\r\n  position: absolute !important;\r\n  left: 0 !important;\r\n  top: 0 !important;\r\n  bottom: 0 !important;\r\n  width: 3px !important;\r\n  background: var(--gold) !important;\r\n  transform: scaleY(0) !important;\r\n  transform-origin: top !important;\r\n  transition: transform .4s var(--ease) !important;\r\n}\r\n\r\n.skydra-widget .step:hover {\r\n  border-color: rgba(226,226,226,.22) !important;\r\n}\r\n\r\n.skydra-widget .step.active {\r\n  border-color: var(--gold-dim) !important;\r\n  background: #181612 !important;\r\n}\r\n\r\n.skydra-widget .step.active::before {\r\n  transform: scaleY(1) !important;\r\n}\r\n\r\n.skydra-widget .step-top {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 14px !important;\r\n  width: 100% !important;\r\n  min-width: 0 !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  white-space: normal !important;\r\n}\r\n\r\n.skydra-widget .step-num {\r\n  font-family: var(--mono) !important;\r\n  font-size: 11px !important;\r\n  font-weight: 700 !important;\r\n  letter-spacing: .14em !important;\r\n  color: var(--gold) !important;\r\n  line-height: 1 !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .step-name {\r\n  font-family: var(--head) !important;\r\n  font-weight: 700 !important;\r\n  font-size: 15px !important;\r\n  letter-spacing: .05em !important;\r\n  text-transform: uppercase !important;\r\n  color: var(--lgray) !important;\r\n  line-height: 1.25 !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  white-space: normal !important;\r\n}\r\n\r\n.skydra-widget .step-top svg.lucide {\r\n  width: 15px !important;\r\n  height: 15px !important;\r\n  margin-left: auto !important;\r\n  color: var(--dgray) !important;\r\n  transition: transform .35s var(--ease), color .35s !important;\r\n  display: block !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .step.active .step-top svg.lucide {\r\n  color: var(--gold) !important;\r\n  transform: translateX(4px) !important;\r\n}\r\n\r\n.skydra-widget .step p {\r\n  font-family: var(--body) !important;\r\n  font-size: 13px !important;\r\n  line-height: 1.55 !important;\r\n  color: var(--mgray) !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  text-align: left !important;\r\n  white-space: normal !important;\r\n  word-break: normal !important;\r\n  overflow-wrap: break-word !important;\r\n  text-transform: none !important;\r\n}\r\n\r\n\/* ============ PROGRESS BAR (ALWAYS AT CARD BASELINE) ============ *\/\r\n.skydra-widget .step-bar {\r\n  position: absolute !important;\r\n  left: 0 !important;\r\n  right: 0 !important;\r\n  bottom: 0 !important;\r\n  height: 3px !important;\r\n  background: rgba(226,226,226,.14) !important;\r\n  overflow: hidden !important;\r\n  z-index: 5 !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.skydra-widget .step-bar i {\r\n  display: block !important;\r\n  width: 100% !important;\r\n  height: 100% !important;\r\n  background: #FFB601 !important;\r\n  background-color: #FFB601 !important;\r\n  transform-origin: left !important;\r\n  transform: scaleX(0);\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  border: 0 !important;\r\n  will-change: transform !important;\r\n}\r\n\r\n.skydra-widget .step.active .step-bar {\r\n  background: rgba(255,182,1,.22) !important;\r\n}\r\n\r\n\/* ============ RIGHT COLUMN: OPS CONSOLE ============ *\/\r\n.skydra-widget .console {\r\n  border: 1px solid var(--line) !important;\r\n  background: var(--console) !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  min-height: 560px !important;\r\n  position: relative !important;\r\n  width: 100% !important;\r\n  min-width: 0 !important;\r\n  max-width: 100% !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  overflow: hidden !important;\r\n}\r\n\r\n.skydra-widget .console::before,\r\n.skydra-widget .console::after {\r\n  content: \"\" !important;\r\n  position: absolute !important;\r\n  width: 14px !important;\r\n  height: 14px !important;\r\n  pointer-events: none !important;\r\n}\r\n\r\n.skydra-widget .console::before {\r\n  top: -1px !important;\r\n  left: -1px !important;\r\n  border-top: 2px solid var(--gold) !important;\r\n  border-left: 2px solid var(--gold) !important;\r\n}\r\n\r\n.skydra-widget .console::after {\r\n  bottom: -1px !important;\r\n  right: -1px !important;\r\n  border-bottom: 2px solid var(--gold) !important;\r\n  border-right: 2px solid var(--gold) !important;\r\n}\r\n\r\n\/* Console Header \u2014 Clean layout, NO overlapping *\/\r\n.skydra-widget .console-head {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: space-between !important;\r\n  gap: 12px !important;\r\n  padding: 14px 18px !important;\r\n  border-bottom: 1px solid var(--line) !important;\r\n  font-family: var(--mono) !important;\r\n  font-size: 10px !important;\r\n  letter-spacing: .2em !important;\r\n  text-transform: uppercase !important;\r\n  color: var(--mgray) !important;\r\n  flex-wrap: nowrap !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.skydra-widget .console-title-group {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 10px !important;\r\n  min-width: 0 !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .console-dots {\r\n  display: flex !important;\r\n  gap: 6px !important;\r\n  align-items: center !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .console-dots i {\r\n  display: block !important;\r\n  width: 7px !important;\r\n  height: 7px !important;\r\n  background: var(--dgray) !important;\r\n  border-radius: 0 !important;\r\n}\r\n\r\n.skydra-widget .console-dots i:first-child {\r\n  background: var(--gold) !important;\r\n}\r\n\r\n.skydra-widget .console-title {\r\n  font-family: var(--mono) !important;\r\n  font-size: 10px !important;\r\n  letter-spacing: .2em !important;\r\n  color: var(--mgray) !important;\r\n  white-space: nowrap !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.skydra-widget .console-actions {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 10px !important;\r\n  margin-left: auto !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .console-tag {\r\n  font-family: var(--mono) !important;\r\n  font-size: 8.5px !important;\r\n  letter-spacing: .18em !important;\r\n  text-transform: uppercase !important;\r\n  color: var(--gold) !important;\r\n  border: 1px solid rgba(255,182,1,.35) !important;\r\n  background: rgba(255,182,1,.08) !important;\r\n  padding: 3px 8px !important;\r\n  border-radius: 2px !important;\r\n  white-space: nowrap !important;\r\n  margin: 0 !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .ops-nav {\r\n  display: flex !important;\r\n  gap: 6px !important;\r\n  align-items: center !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .ops-nav button {\r\n  width: 28px !important;\r\n  height: 26px !important;\r\n  min-width: 28px !important;\r\n  max-width: 28px !important;\r\n  min-height: 26px !important;\r\n  max-height: 26px !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  border: 1px solid var(--line) !important;\r\n  background: transparent !important;\r\n  color: var(--mgray) !important;\r\n  transition: .25s !important;\r\n  border-radius: 2px !important;\r\n  cursor: pointer !important;\r\n  padding: 0 !important;\r\n  margin: 0 !important;\r\n  box-shadow: none !important;\r\n  outline: none !important;\r\n  line-height: 1 !important;\r\n}\r\n\r\n.skydra-widget .ops-nav button:hover {\r\n  border-color: var(--gold) !important;\r\n  color: var(--gold) !important;\r\n}\r\n\r\n.skydra-widget .ops-nav button.paused {\r\n  border-color: var(--gold) !important;\r\n  color: var(--gold) !important;\r\n  background: rgba(255,182,1,.15) !important;\r\n}\r\n\r\n.skydra-widget .ops-nav svg.lucide {\r\n  width: 13px !important;\r\n  height: 13px !important;\r\n  display: block !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.skydra-widget .console-body {\r\n  position: relative !important;\r\n  flex: 1 1 auto !important;\r\n  min-height: 320px !important;\r\n  width: 100% !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.skydra-widget #ops-canvas {\r\n  position: absolute !important;\r\n  inset: 0 !important;\r\n  width: 100% !important;\r\n  height: 100% !important;\r\n  display: block !important;\r\n}\r\n\r\n.skydra-widget .console-log {\r\n  height: 136px !important;\r\n  border-top: 1px dashed rgba(226,226,226,.14) !important;\r\n  padding: 12px 18px !important;\r\n  font-family: var(--mono) !important;\r\n  font-size: 10.5px !important;\r\n  line-height: 1.9 !important;\r\n  overflow: hidden !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  justify-content: flex-end !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.skydra-widget .log-line {\r\n  color: var(--mgray) !important;\r\n  white-space: nowrap !important;\r\n  overflow: hidden !important;\r\n  text-overflow: ellipsis !important;\r\n  animation: skydra-login .4s var(--ease) !important;\r\n  margin: 0 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.skydra-widget .log-line .lt {\r\n  color: var(--dgray) !important;\r\n  margin-right: 10px !important;\r\n}\r\n\r\n.skydra-widget .log-line em {\r\n  font-style: normal !important;\r\n  color: var(--gold) !important;\r\n}\r\n\r\n@keyframes skydra-login {\r\n  from { opacity: 0; transform: translateY(6px); }\r\n  to { opacity: 1; transform: translateY(0); }\r\n}\r\n\r\n\/* ============ RESPONSIVE (MOBILE & TABLET <= 880px) ============ *\/\r\n@media (max-width: 1020px) {\r\n  .skydra-widget .how-grid {\r\n    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;\r\n    gap: 16px !important;\r\n  }\r\n}\r\n\r\n@media (max-width: 880px) {\r\n  .skydra-widget .how-grid {\r\n    grid-template-columns: 1fr !important;\r\n    gap: 14px !important;\r\n  }\r\n\r\n  \/* 1. HIDE RIGHT-SIDE ANIMATION CONSOLE ON MOBILE *\/\r\n  .skydra-widget .console {\r\n    display: none !important;\r\n  }\r\n\r\n  \/* 2. RENDER LEFT TABS AS UNIFORM CONTENT CARDS *\/\r\n  .skydra-widget .step {\r\n    padding: 20px 20px !important;\r\n    border: 1px solid var(--line) !important;\r\n    background: var(--panel) !important;\r\n    cursor: default !important;\r\n    flex: none !important;\r\n  }\r\n\r\n  .skydra-widget .step::before {\r\n    display: none !important;\r\n  }\r\n\r\n  .skydra-widget .step.active {\r\n    border-color: var(--line) !important;\r\n    background: var(--panel) !important;\r\n  }\r\n\r\n  \/* 3. REMOVE PROGRESS BAR ON MOBILE *\/\r\n  .skydra-widget .step-bar {\r\n    display: none !important;\r\n  }\r\n\r\n  .skydra-widget .step-top svg.lucide {\r\n    display: none !important;\r\n  }\r\n}\r\n\r\n@media (prefers-reduced-motion: reduce) {\r\n  .skydra-widget * {\r\n    transition: none !important;\r\n  }\r\n}\r\n<\/style>\r\n\r\n<!-- ============ WIDGET HTML ============ -->\r\n<div class=\"skydra-widget\" id=\"skydra-ops-widget\">\r\n  <div class=\"how-grid\">\r\n    <div class=\"steps\">\r\n      <div class=\"step active\" data-step=\"0\" role=\"button\" tabindex=\"0\">\r\n        <span class=\"step-top\"><span class=\"step-num\">01<\/span><span class=\"step-name\">Plan &amp; Map<\/span><i data-lucide=\"chevron-right\"><\/i><\/span>\r\n        <p>Define mission boundaries, deploy virtual C-UAS sensor grids including radar, RF scanners, and EO\/IR cameras, and establish Rules of Engagement within a geospatial environment.\r\n<\/p>\r\n        <span class=\"step-bar\"><i><\/i><\/span>\r\n      <\/div>\r\n      <div class=\"step\" data-step=\"1\" role=\"button\" tabindex=\"0\">\r\n        <span class=\"step-top\"><span class=\"step-num\">02<\/span><span class=\"step-name\">Simulate &amp; Model<\/span><i data-lucide=\"chevron-right\"><\/i><\/span>\r\n        <p>Run complex threat scenarios with AI-driven flight trajectories, swarm behaviors, and electronic-warfare disruption models to test C-UAS coverage and response readiness.<\/p>\r\n        <span class=\"step-bar\"><i><\/i><\/span>\r\n      <\/div>\r\n      <div class=\"step\" data-step=\"2\" role=\"button\" tabindex=\"0\">\r\n        <span class=\"step-top\"><span class=\"step-num\">03<\/span><span class=\"step-name\">Exercise &amp; Train<\/span><i data-lucide=\"chevron-right\"><\/i><\/span>\r\n        <p>Execute structured, multi-user tabletop exercises that build operator muscle memory, test command structures, and refine joint-agency coordination.<\/p>\r\n        <span class=\"step-bar\"><i><\/i><\/span>\r\n      <\/div>\r\n      <div class=\"step\" data-step=\"3\" role=\"button\" tabindex=\"0\">\r\n        <span class=\"step-top\"><span class=\"step-num\">04<\/span><span class=\"step-name\">Evaluate &amp; Optimize<\/span><i data-lucide=\"chevron-right\"><\/i><\/span>\r\n        <p>Analyze post-exercise telemetry and AI risk scoring to isolate coverage gaps, optimize hardware placement, and accelerate operational planning workflows.<\/p>\r\n        <span class=\"step-bar\"><i><\/i><\/span>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"console\">\r\n      <div class=\"console-head\">\r\n        <div class=\"console-title-group\">\r\n          <span class=\"console-dots\"><i><\/i><i><\/i><i><\/i><\/span>\r\n          <span class=\"console-title\">SKYDRA \u00b7 OPS CONSOLE<\/span>\r\n        <\/div>\r\n        <div class=\"console-actions\">\r\n          <span class=\"console-tag\">DEMO MODE \u00b7 SAMPLE DATA<\/span>\r\n          <span class=\"ops-nav\">\r\n            <button id=\"ops-playpause\" aria-label=\"Pause step sequence\" title=\"Pause \/ Play sequence\" type=\"button\"><i data-lucide=\"pause\"><\/i><\/button>\r\n            <button id=\"ops-prev\" aria-label=\"Previous step\" title=\"Previous movement\" type=\"button\"><i data-lucide=\"chevron-left\"><\/i><\/button>\r\n            <button id=\"ops-next\" aria-label=\"Next step\" title=\"Next movement\" type=\"button\"><i data-lucide=\"chevron-right\"><\/i><\/button>\r\n          <\/span>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"console-body\"><canvas id=\"ops-canvas\"><\/canvas><\/div>\r\n      <div class=\"console-log\" id=\"ops-log\"><\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- ============ WIDGET JAVASCRIPT ============ -->\r\n<script>\r\n(function(){\r\n  const root = document.getElementById('skydra-ops-widget');\r\n  if(!root) return;\r\n\r\n  const $  = (s) => root.querySelector(s);\r\n  const $$ = (s) => [...root.querySelectorAll(s)];\r\n  const pad2 = n => String(n).padStart(2,'0');\r\n  const ease = t => 1-Math.pow(1-t,3);\r\n  const isMobile = () => window.innerWidth <= 880;\r\n\r\n  const GOLD='255,182,1', HOST='255,83,70', MGRAY='179,179,179', DGRAY='77,77,77', LGRAY='226,226,226';\r\n  const MONO='\"JetBrains Mono\",monospace';\r\n\r\n  \/\/ Safely initialize Lucide icons\r\n  function initIcons(){\r\n    if(window.lucide && lucide.createIcons){\r\n      lucide.createIcons({root: root});\r\n    }\r\n  }\r\n  if(document.readyState==='loading'){\r\n    document.addEventListener('DOMContentLoaded', initIcons);\r\n  } else {\r\n    initIcons();\r\n  }\r\n\r\n  const cv = $('#ops-canvas');\r\n  if(!cv) return;\r\n  const ctx = cv.getContext('2d');\r\n\r\n  const stepsEls = $$('.step');\r\n  const logEl = $('#ops-log');\r\n  const bars = $$('.step-bar i');\r\n  const playPauseBtn = $('#ops-playpause');\r\n\r\n  const MODES = ['plan','simulate','exercise','evaluate'];\r\n  const SCRIPTS = {\r\n    plan:[\r\n      'GEOFENCE <em>AO-7<\/em> DEFINED \u2014 8 VERTICES',\r\n      'SENSOR GRID DEPLOYED \u2014 <em>RADAR \/ RF \/ EO-IR<\/em>',\r\n      'RULES OF ENGAGEMENT \u2014 <em>LEVEL 2<\/em> LOADED',\r\n      'MISSION PROFILE <em>SAVED<\/em>'\r\n    ],\r\n    simulate:[\r\n      'SCENARIO LOADED \u2014 <em>SWARM SIMULATION<\/em>',\r\n      '<em>EW DISRUPTION<\/em> MODEL ACTIVE',\r\n      'TGT TRACK CONFIDENCE <em>~95%<\/em>',\r\n      'COVERAGE TEST RUNNING\u2026'\r\n    ],\r\n    exercise:[\r\n      'EXERCISE IGNITION \u2014 <em>MULTI-AGENCY ONLINE<\/em>',\r\n      '<em>ATC \u2192 JOC<\/em> : UNKNOWN TRACK DETECTED',\r\n      '<em>POLICE \u2192 JOC<\/em> : PERIMETER PATROL DISPATCHED',\r\n      '<em>JOC \u2192 ALL<\/em> : ROE LEVEL 2 CONFIRMED'\r\n    ],\r\n    evaluate:[\r\n      'TELEMETRY ANALYSIS COMPLETE',\r\n      'COVERAGE GAP ISOLATED \u2014 <em>SECTOR BRAVO<\/em>',\r\n      'READINESS INDEX <em>61 \u2192 87<\/em> AFTER REPOSITION',\r\n      'PLAN REFINED \u2014 <em>READY FOR DEPLOYMENT<\/em>'\r\n    ]\r\n  };\r\n\r\n  const STEP_DUR = 5; \/\/ 5 seconds per movement\r\n  let cw=0, ch=0, mode='plan', step=0, modeT=0, elapsed=0, isPaused=false;\r\n  let T=0, last=performance.now(), started=false, timers=[];\r\n  let sim=[], pulses=[], ofx=[], msgT=0, pc=0;\r\n  let barsV=new Array(9).fill(0), score=61;\r\n\r\n  function size(){\r\n    if(!cv || cv.clientWidth === 0 || isMobile()) return;\r\n    const dpr = Math.min(window.devicePixelRatio||1, 2);\r\n    cw = cv.clientWidth;\r\n    ch = cv.clientHeight;\r\n    cv.width = cw * dpr;\r\n    cv.height = ch * dpr;\r\n    ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\r\n    init();\r\n  }\r\n\r\n  const fmt = s => '+' + pad2(Math.floor(s\/60)) + ':' + pad2(Math.floor(s%60));\r\n\r\n  function pushLog(html, ts){\r\n    if(!logEl) return;\r\n    const d = document.createElement('div');\r\n    d.className = 'log-line';\r\n    d.innerHTML = '<span class=\"lt\">['+ts+']<\/span>'+html;\r\n    logEl.appendChild(d);\r\n    while(logEl.children.length > 7) logEl.removeChild(logEl.firstChild);\r\n  }\r\n\r\n  function clearTimers(){\r\n    timers.forEach(clearTimeout);\r\n    timers = [];\r\n    if(logEl) logEl.innerHTML = '';\r\n  }\r\n\r\n  function init(){\r\n    ofx = []; pulses = [];\r\n    if(mode==='simulate'){\r\n      sim = Array.from({length:5}, (_,i)=>({\r\n        ax: cw*(.20+Math.random()*.12), ay: ch*(.16+Math.random()*.10),\r\n        wx: .5+Math.random()*.35, wy: .42+Math.random()*.3,\r\n        px: Math.random()*6, py: Math.random()*6, j:0, trail:[], x:0, y:0\r\n      }));\r\n    }\r\n    if(mode==='evaluate'){\r\n      barsV = new Array(9).fill(0);\r\n      score = 61;\r\n    }\r\n    if(mode==='exercise'){ msgT = .4; pc = 0; }\r\n  }\r\n\r\n  \/\/ Robust setProperty with important ensures yellow line always displays and moves\r\n  function setBar(stepIndex, ratio){\r\n    if(bars[stepIndex]){\r\n      bars[stepIndex].style.setProperty('transform', 'scaleX(' + Math.min(1, Math.max(0, ratio)) + ')', 'important');\r\n    }\r\n  }\r\n\r\n  function clearAllBars(){\r\n    bars.forEach(b => {\r\n      b.style.setProperty('transform', 'scaleX(0)', 'important');\r\n    });\r\n  }\r\n\r\n  function setStep(i, user){\r\n    step = ((i % 4) + 4) % 4;\r\n    stepsEls.forEach((s,k) => s.classList.toggle('active', k === step));\r\n    clearAllBars();\r\n    mode = MODES[step];\r\n    modeT = T;\r\n    elapsed = 0;\r\n    clearTimers();\r\n    init();\r\n\r\n    if(isPaused){\r\n      SCRIPTS[mode].forEach((line,k)=>{\r\n        pushLog(line, '+00:'+pad2((k+1)*2));\r\n      });\r\n    } else {\r\n      SCRIPTS[mode].forEach((line,k)=>{\r\n        timers.push(setTimeout(() => pushLog(line, fmt(T - modeT)), 450 + k * 950));\r\n      });\r\n    }\r\n  }\r\n\r\n  \/* Drawing helpers *\/\r\n  function grid(){\r\n    ctx.strokeStyle='rgba('+LGRAY+',.05)'; ctx.lineWidth=1; ctx.beginPath();\r\n    for(let x=36;x<cw;x+=44){ctx.moveTo(x,0);ctx.lineTo(x,ch);}\r\n    for(let y=36;y<ch;y+=44){ctx.moveTo(0,y);ctx.lineTo(cw,y);}\r\n    ctx.stroke();\r\n  }\r\n  function corners(){\r\n    ctx.strokeStyle='rgba('+GOLD+',.5)'; const m=10,l=9;\r\n    [[m,m,1,1],[cw-m,m,-1,1],[m,ch-m,1,-1],[cw-m,ch-m,-1,-1]].forEach(([x,y,sx,sy])=>{\r\n      ctx.beginPath(); ctx.moveTo(x+sx*l,y); ctx.lineTo(x,y); ctx.lineTo(x,y+sy*l); ctx.stroke();\r\n    });\r\n  }\r\n  function label(t,x,y,align,col){\r\n    ctx.font='9.5px '+MONO; ctx.fillStyle=col||'rgba('+MGRAY+',.9)';\r\n    ctx.textAlign=align||'left'; ctx.fillText(t,x,y);\r\n  }\r\n  function polyPts(){\r\n    const cx=cw*.5, cy=ch*.55, R=Math.min(cw,ch)*.34;\r\n    const mult=[1,.85,.95,.8,1,.86,.94,.8], rot=-.35, pts=[];\r\n    for(let i=0;i<8;i++){\r\n      const a=rot+i\/8*Math.PI*2;\r\n      pts.push({x:cx+Math.cos(a)*R*mult[i], y:cy+Math.sin(a)*R*mult[i]*.85});\r\n    }\r\n    return pts;\r\n  }\r\n  function partial(pts,prog){\r\n    const segs=[]; let tot=0;\r\n    for(let i=0;i<pts.length;i++){\r\n      const a=pts[i], b=pts[(i+1)%pts.length];\r\n      const l=Math.hypot(b.x-a.x,b.y-a.y); segs.push({a,b,l}); tot+=l;\r\n    }\r\n    let rem=prog*tot;\r\n    ctx.beginPath(); ctx.moveTo(pts[0].x,pts[0].y);\r\n    for(const s of segs){\r\n      if(rem<=0) break;\r\n      if(rem>=s.l){ ctx.lineTo(s.b.x,s.b.y); }\r\n      else{ const t=rem\/s.l; ctx.lineTo(s.a.x+(s.b.x-s.a.x)*t, s.a.y+(s.b.y-s.a.y)*t); break; }\r\n      rem-=s.l;\r\n    }\r\n    ctx.stroke();\r\n    const fr=[0]; let acc=0;\r\n    for(let i=0;i<pts.length;i++){ acc+=segs[i].l; fr.push(acc\/tot); }\r\n    return fr;\r\n  }\r\n  function ring(x,y,r,col,lw,dash){\r\n    ctx.setLineDash(dash||[]); ctx.strokeStyle=col; ctx.lineWidth=lw||1;\r\n    ctx.beginPath(); ctx.arc(x,y,r,0,7); ctx.stroke(); ctx.setLineDash([]);\r\n  }\r\n  function diamond(x,y,s,fill,stroke){\r\n    ctx.save(); ctx.translate(x,y); ctx.rotate(Math.PI\/4);\r\n    if(fill){ctx.fillStyle=fill; ctx.fillRect(-s\/2,-s\/2,s,s);}\r\n    if(stroke){ctx.strokeStyle=stroke; ctx.lineWidth=1.2; ctx.strokeRect(-s\/2,-s\/2,s,s);}\r\n    ctx.restore();\r\n  }\r\n\r\n  \/* Movement 01: Plan & Map *\/\r\n  function drawPlan(){\r\n    const pts=polyPts();\r\n    const prog=ease(Math.min(1,(T-modeT)\/1.8));\r\n    ctx.setLineDash([6,6]); ctx.lineDashOffset=-T*12;\r\n    ctx.strokeStyle='rgba('+GOLD+',.6)'; ctx.lineWidth=1;\r\n    const fr=partial(pts,prog);\r\n    if(prog>=1){\r\n      ctx.beginPath(); pts.forEach((p,i)=>i?ctx.lineTo(p.x,p.y):ctx.moveTo(p.x,p.y)); ctx.closePath();\r\n      ctx.fillStyle='rgba('+GOLD+',.03)'; ctx.fill();\r\n    }\r\n    ctx.setLineDash([]);\r\n    [1,4,6].forEach((ix,k)=>{\r\n      if(prog>fr[ix]){\r\n        const p=pts[ix];\r\n        ctx.fillStyle='#FFB601'; ctx.fillRect(p.x-3,p.y-3,6,6);\r\n        const pr=(T*20+k*10)%28;\r\n        ring(p.x,p.y,pr+5,'rgba('+GOLD+','+(.6*(1-pr\/28))+')',1);\r\n        label('SEN-0'+(k+1),p.x+10,p.y+3);\r\n      }\r\n    });\r\n    label('AO-7 \/\/ MISSION BOUNDARY',14,24);\r\n    label('ROE L2',cw-14,24,'right','rgba('+GOLD+',.9)');\r\n    [[cw*.38,ch*.42],[cw*.58,ch*.36]].forEach(([x,y])=>{\r\n      ctx.strokeStyle='rgba('+LGRAY+',.18)'; ctx.beginPath();\r\n      ctx.moveTo(x-4,y-4); ctx.lineTo(x+4,y+4); ctx.moveTo(x+4,y-4); ctx.lineTo(x-4,y+4); ctx.stroke();\r\n    });\r\n  }\r\n\r\n  \/* Movement 02: Simulate & Model *\/\r\n  function drawSimulate(dt){\r\n    const cx=cw\/2, cy=ch\/2;\r\n    sim.forEach((d,i)=>{\r\n      d.px+=dt*d.wx; d.py+=dt*d.wy;\r\n      d.x=cx+Math.sin(d.px+i)*d.ax; d.y=cy+Math.cos(d.py*1.1+i)*d.ay*.85;\r\n      d.trail.push({x:d.x,y:d.y});\r\n      if(d.trail.length>22) d.trail.shift();\r\n      for(let k=1;k<d.trail.length;k++){\r\n        ctx.strokeStyle='rgba('+HOST+','+(k\/d.trail.length*.45)+')';\r\n        ctx.beginPath(); ctx.moveTo(d.trail[k-1].x,d.trail[k-1].y); ctx.lineTo(d.trail[k-1].x,d.trail[k].y); ctx.stroke();\r\n      }\r\n      diamond(d.x,d.y,7,'rgb('+HOST+')');\r\n      label('TGT-0'+(i+1),d.x+10,d.y-8,'left','rgba('+HOST+',.85)');\r\n    });\r\n    const cyc=(T-modeT)%4;\r\n    if(cyc<1.4){\r\n      const p=ease(cyc\/1.4), rr=p*Math.max(cw,ch)*.42;\r\n      ring(cw\/2,ch\/2,rr,'rgba('+GOLD+','+(.5*(1-p))+')',1.2,[5,7]);\r\n      sim.forEach(d=>{ if(Math.abs(Math.hypot(d.x-cw\/2,d.y-ch\/2)-rr)<24) d.j=1; });\r\n      label('EW DISRUPTION \/\/ ACTIVE',cw\/2,ch\/2-rr-10,'center','rgba('+GOLD+',.9)');\r\n    }\r\n    label('THREAT MODEL \/\/ SWARM + EW',14,24);\r\n    label('HOSTILES \/\/ SIMULATED',cw-14,24,'right','rgba('+HOST+',.95)');\r\n  }\r\n\r\n  \/* Movement 03: Exercise & Train *\/\r\n  function drawExercise(dt){\r\n    const cx=cw\/2, cy=ch\/2+10, Rn=Math.min(cw\/2,ch\/2)*.34;\r\n    const ags=[{n:'ARMY',a:-Math.PI*.78},{n:'POLICE',a:-Math.PI*.24},{n:'ATC',a:Math.PI*.24},{n:'PORT AUTH',a:Math.PI*.78}];\r\n    const pos=ags.map(a=>({x:cx+Math.cos(a.a)*Rn, y:cy+Math.sin(a.a)*Rn*.8, n:a.n}));\r\n    ctx.strokeStyle='rgba('+LGRAY+',.13)';\r\n    pos.forEach(p=>{ ctx.beginPath(); ctx.moveTo(p.x,p.y); ctx.lineTo(cx,cy); ctx.stroke(); });\r\n    msgT-=dt;\r\n    if(msgT<=0){\r\n      msgT=1.15; pc++;\r\n      if(pc%4===0){\r\n        const p=pos[Math.floor(Math.random()*pos.length)];\r\n        pulses.push({x1:p.x,y1:p.y,x2:cx,y2:cy,p:0,dur:.9,out:false});\r\n      }else{\r\n        const p=pos[Math.floor(Math.random()*pos.length)];\r\n        pulses.push({x1:cx,y1:cy,x2:p.x,y2:p.y,p:0,dur:.9,out:true});\r\n      }\r\n    }\r\n    for(let i=pulses.length-1;i>=0;i--){\r\n      const q=pulses[i]; q.p+=dt\/q.dur;\r\n      if(q.p>=1){\r\n        ofx.push({x:q.x2,y:q.y2,age:0,dur:.5});\r\n        pulses.splice(i,1); continue;\r\n      }\r\n      const x=q.x1+(q.x2-q.x1)*ease(q.p), y=q.y1+(q.y2-q.y1)*ease(q.p);\r\n      ctx.strokeStyle='rgba('+GOLD+',.35)';\r\n      ctx.beginPath(); ctx.moveTo(q.x1,q.y1); ctx.lineTo(x,y); ctx.stroke();\r\n      diamond(x,y,5,'#FFB601');\r\n    }\r\n    pos.forEach(p=>{\r\n      ctx.fillStyle='#151515'; ctx.strokeStyle='rgba('+MGRAY+',.8)'; ctx.lineWidth=1.2;\r\n      ctx.fillRect(p.x-5,p.y-5,10,10); ctx.strokeRect(p.x-5,p.y-5,10,10);\r\n      label(p.n,p.x,p.y+(p.y>cy?24:-14),'center','rgba('+MGRAY+',.95)');\r\n    });\r\n    diamond(cx,cy,13,'#FFB601');\r\n    const pr=(T*26)%30;\r\n    ring(cx,cy,pr+10,'rgba('+GOLD+','+(.55*(1-pr\/30))+')',1);\r\n    label('JOC',cx,cy+30,'center','rgba('+GOLD+',1)');\r\n    label('TABLETOP EXERCISE \/\/ MULTI-AGENCY',14,24);\r\n    label('STATIONS: 04',cw-14,24,'right');\r\n    for(let i=ofx.length-1;i>=0;i--){\r\n      const f=ofx[i]; f.age+=dt; const p=f.age\/f.dur;\r\n      if(p>=1){ ofx.splice(i,1); continue; }\r\n      ring(f.x,f.y,4+22*ease(p),'rgba('+GOLD+','+((1-p)*.7)+')',1);\r\n    }\r\n  }\r\n\r\n  \/* Movement 04: Evaluate & Optimize *\/\r\n  function drawEvaluate(dt){\r\n    const n=9, padX=46, base=ch-58, maxH=ch-165, bw=(cw-padX*2)\/n;\r\n    const tg=[.82,.6,.9,.42,.72,.86,.58,.92,.68];\r\n    ctx.strokeStyle='rgba('+LGRAY+',.07)';\r\n    [.25,.5,.75].forEach(f=>{\r\n      const y=base-maxH*f;\r\n      ctx.beginPath(); ctx.moveTo(padX,y); ctx.lineTo(cw-padX,y); ctx.stroke();\r\n      label(Math.round(f*100)+'%',padX-8,y+3,'right','rgba('+DGRAY+',.9)');\r\n    });\r\n    ctx.strokeStyle='rgba('+LGRAY+',.25)';\r\n    ctx.beginPath(); ctx.moveTo(padX,base); ctx.lineTo(cw-padX,base); ctx.stroke();\r\n    for(let i=0;i<n;i++){\r\n      barsV[i]+=(tg[i]-barsV[i])*Math.min(1,dt*1.6);\r\n      const h=barsV[i]*maxH, x=padX+i*bw+4, w=bw-8;\r\n      if(i===3){\r\n        ctx.fillStyle='rgba('+HOST+',.10)'; ctx.fillRect(x,base-h,w,h);\r\n        ctx.setLineDash([4,4]); ctx.strokeStyle='rgba('+HOST+',.9)'; ctx.strokeRect(x,base-h,w,h); ctx.setLineDash([]);\r\n        label('GAP',x+w\/2,base-h-10,'center','rgba('+HOST+',.95)');\r\n        label('REPOSITION SEN-02 \u2192 +18%',x+w\/2+26,base-h-28,'center','rgba('+GOLD+',.9)');\r\n      }else{\r\n        ctx.fillStyle='rgba('+GOLD+',.28)'; ctx.fillRect(x,base-h,w,h);\r\n        ctx.fillStyle='rgba('+GOLD+',.9)'; ctx.fillRect(x,base-2,w,2);\r\n      }\r\n    }\r\n    const gx=padX+3*bw+4, gw=bw-8;\r\n    ctx.setLineDash([3,5]); ctx.strokeStyle='rgba('+GOLD+',.5)';\r\n    ctx.beginPath(); ctx.moveTo(gx+gw,base-barsV[3]*maxH); ctx.lineTo(padX+6*bw+4,base-barsV[6]*maxH-6); ctx.stroke();\r\n    ctx.setLineDash([]);\r\n    const sx=padX+((T*70)%(cw-padX*2));\r\n    ctx.strokeStyle='rgba('+GOLD+',.3)';\r\n    ctx.beginPath(); ctx.moveTo(sx,base-maxH-14); ctx.lineTo(sx,base); ctx.stroke();\r\n    score+=(87-score)*Math.min(1,dt*1.2);\r\n    const dx=cw-84, dy=76, r=36;\r\n    ctx.lineWidth=5; ctx.lineCap='round';\r\n    ctx.strokeStyle='rgba('+DGRAY+',.55)';\r\n    ctx.beginPath(); ctx.arc(dx,dy,r,-Math.PI*.75,Math.PI*.75); ctx.stroke();\r\n    ctx.strokeStyle='rgba('+GOLD+',.95)';\r\n    ctx.beginPath(); ctx.arc(dx,dy,r,-Math.PI*.75,-Math.PI*.75+Math.PI*1.5*(score\/100)); ctx.stroke();\r\n    ctx.lineWidth=1;\r\n    const na=-Math.PI*.75+Math.PI*1.5*(score\/100);\r\n    ctx.strokeStyle='rgba('+LGRAY+',.9)';\r\n    ctx.beginPath(); ctx.moveTo(dx,dy); ctx.lineTo(dx+Math.cos(na)*(r-9),dy+Math.sin(na)*(r-9)); ctx.stroke();\r\n    label(''+Math.round(score),dx,dy+4,'center','rgba('+LGRAY+',1)');\r\n    ctx.font='700 10px '+MONO; ctx.fillStyle='#FFB601'; ctx.textAlign='center';\r\n    ctx.fillText('READINESS',dx,dy+r+16);\r\n    label('POST-EXERCISE ANALYSIS \/\/ SAMPLE DATA',14,24);\r\n  }\r\n\r\n  \/* Main Animation Frame \u2014 always runs on desktop and updates progress bar *\/\r\n  function frame(now){\r\n    const dt = Math.min(.05, (now - last) \/ 1000);\r\n    last = now;\r\n\r\n    if(!document.hidden && started && !isMobile()){\r\n      T += dt;\r\n      if(!isPaused){\r\n        elapsed += dt;\r\n        setBar(step, elapsed \/ STEP_DUR);\r\n        if(elapsed >= STEP_DUR) setStep(step + 1, false);\r\n      } else {\r\n        clearAllBars();\r\n      }\r\n      ctx.clearRect(0, 0, cw, ch);\r\n      grid(); corners();\r\n      if(mode==='plan') drawPlan();\r\n      else if(mode==='simulate') drawSimulate(dt);\r\n      else if(mode==='exercise') drawExercise(dt);\r\n      else drawEvaluate(dt);\r\n    }\r\n    requestAnimationFrame(frame);\r\n  }\r\n\r\n  \/* Click & navigation handlers *\/\r\n  stepsEls.forEach((s,k) => {\r\n    s.addEventListener('click', () => setStep(k, true));\r\n    s.addEventListener('keydown', (e) => {\r\n      if(e.key === 'Enter' || e.key === ' ') {\r\n        e.preventDefault();\r\n        setStep(k, true);\r\n      }\r\n    });\r\n  });\r\n\r\n  const prevBtn = $('#ops-prev');\r\n  const nextBtn = $('#ops-next');\r\n  if(prevBtn) prevBtn.addEventListener('click', () => setStep(step - 1, true));\r\n  if(nextBtn) nextBtn.addEventListener('click', () => setStep(step + 1, true));\r\n\r\n  function updatePlayPauseBtn(){\r\n    if(!playPauseBtn) return;\r\n    playPauseBtn.setAttribute('aria-label', isPaused ? 'Resume auto-advance' : 'Pause auto-advance');\r\n    playPauseBtn.setAttribute('title', isPaused ? 'Resume auto-advance' : 'Pause auto-advance');\r\n    playPauseBtn.classList.toggle('paused', isPaused);\r\n    playPauseBtn.innerHTML = isPaused ? '<i data-lucide=\"play\"><\/i>' : '<i data-lucide=\"pause\"><\/i>';\r\n    initIcons();\r\n  }\r\n\r\n  if(playPauseBtn){\r\n    playPauseBtn.addEventListener('click', () => {\r\n      isPaused = !isPaused;\r\n      updatePlayPauseBtn();\r\n      if(!isPaused){\r\n        elapsed = 0;\r\n      }\r\n    });\r\n  }\r\n\r\n  function startOps(){\r\n    if(!started){\r\n      started = true;\r\n      size();\r\n      setStep(0, false);\r\n    }\r\n  }\r\n\r\n  \/\/ Real-time ResizeObserver watches Elementor container changes dynamically\r\n  if(window.ResizeObserver){\r\n    new ResizeObserver(()=>{\r\n      if(!isMobile()) size();\r\n    }).observe(root);\r\n  }\r\n\r\n  window.addEventListener('resize', () => {\r\n    if(!isMobile()) size();\r\n  });\r\n\r\n  if(document.readyState === 'complete' || document.readyState === 'interactive'){\r\n    startOps();\r\n  } else {\r\n    window.addEventListener('DOMContentLoaded', startOps);\r\n  }\r\n  setTimeout(startOps, 100);\r\n  requestAnimationFrame(frame);\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7c6433a e-flex e-con-boxed e-con e-parent\" data-id=\"7c6433a\" data-element_type=\"container\" data-e-type=\"container\" id=\"dark-particle-section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-be815b4 elementor-widget elementor-widget-heading\" data-id=\"be815b4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"><span style=\"color: #FFB601\">SKYDRA <\/span>CAPABILITIES <\/h2>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-adc2a40 e-con-full e-flex e-con e-child\" data-id=\"adc2a40\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-f13cf6c e-con-full glass-card e-flex e-con e-child\" data-id=\"f13cf6c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-d9c0f3b e-con-full e-flex e-con e-child\" data-id=\"d9c0f3b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5c59832 elementor-widget elementor-widget-heading\" data-id=\"5c59832\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Current Capabilities <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0aa658b elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"0aa658b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c7a3061 elementor-widget elementor-widget-icon-box\" data-id=\"c7a3061\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tMission Planning &amp; Threat Assessment\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tThe software enables operators to build comprehensive planning profiles against evolving uncrewed threats. It helps model airspace security vulnerabilities across designated perimeters\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9d96ba4 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"9d96ba4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-86bc93c elementor-widget elementor-widget-icon-box\" data-id=\"86bc93c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tVirtual Readiness &amp; Tabletop Exercises\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tSKYDRA\u2122 provides defense teams and security personnel with a secure, highly controlled virtual environment. This allows organizations to run structured digital simulations and mock tabletop exercises before real-world tactical deployment. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e3a4971 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"e3a4971\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e7d2cc9 elementor-widget elementor-widget-icon-box\" data-id=\"e7d2cc9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tMulti Domain Adaptability\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tThe system is tailored to fortify mission preparedness for armed forces, public safety agencies, and operators of critical infrastructure (such as airports, ports, energy networks, and strategic physical assets).\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-297297c e-con-full glass-card e-flex e-con e-child\" data-id=\"297297c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-4df14fd e-con-full e-flex e-con e-child\" data-id=\"4df14fd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b745bc9 elementor-widget elementor-widget-heading\" data-id=\"b745bc9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Upcoming Capabilities  <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b9eb8b9 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"b9eb8b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e7df3eb elementor-widget elementor-widget-icon-box\" data-id=\"e7df3eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tReal-Time Common Operating Picture (COP)\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tIngests live C-UAS telemetry from field sensors and hardware platforms, converting raw tracking data into actionable, real-time threat intelligence. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-493e72b elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"493e72b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e6cf037 elementor-widget elementor-widget-icon-box\" data-id=\"e6cf037\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tAI-Driven Threat Analytics\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tUses automated machine learning models to forecast adversary flight paths, assess payload threats, and recommend optimal countermeasure strategies (RF jamming, kinetic intercept, or protocol takeover). \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-50186a2 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"50186a2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4a47316 elementor-widget elementor-widget-icon-box\" data-id=\"4a47316\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tInteroperable C2 Integration\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tEngineered to natively interface with military and public safety C2 frameworks, including NATO SAPIENT, STANAG 4586, and ATAK protocols. \n\n \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-77a1e05 e-flex e-con-boxed e-con e-parent\" data-id=\"77a1e05\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-1845f5a e-con-full e-flex e-con e-child\" data-id=\"1845f5a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-aed804a elementor-widget-mobile__width-inherit elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"aed804a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Applications <span style=\"color: #FFB601\"> of SKYDRA <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c250d68 elementor-widget__width-initial elementor-widget-mobile__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"c250d68\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tSKYDRA is intended for organizations operating in environments where unauthorized or hostile drone activity can create security or operational concerns. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2b1fa16 e-grid e-con-full e-con e-child\" data-id=\"2b1fa16\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-d8749aa e-con-full e-flex e-con e-child\" data-id=\"d8749aa\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-db2c9c3 e-con-full e-flex e-con e-child\" data-id=\"db2c9c3\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6d98250 e-con-full e-flex e-con e-child\" data-id=\"6d98250\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2e4eb9e elementor-widget elementor-widget-heading\" data-id=\"2e4eb9e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Defence and Armed forces <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3305124 elementor-widget elementor-widget-text-editor\" data-id=\"3305124\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tStreamlines C-UAS operational planning, tactical deployment modeling, and live airspace monitoring for base defense and forward-operating units. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1b28c63 e-con-full e-flex e-con e-child\" data-id=\"1b28c63\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-7d22421 e-con-full e-flex e-con e-child\" data-id=\"7d22421\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3d37d86 e-con-full e-flex e-con e-child\" data-id=\"3d37d86\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2c31159 elementor-widget elementor-widget-heading\" data-id=\"2c31159\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Public Safety <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9635cff elementor-widget elementor-widget-text-editor\" data-id=\"9635cff\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tProvides law enforcement and emergency management agencies with rapid event-horizon security mapping and multi-agency response protocols. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b093f20 e-con-full e-flex e-con e-child\" data-id=\"b093f20\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3e8e900 e-con-full e-flex e-con e-child\" data-id=\"3e8e900\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-90059bd e-con-full e-flex e-con e-child\" data-id=\"90059bd\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2a228cd elementor-widget elementor-widget-heading\" data-id=\"2a228cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Airports &amp; Maritime Ports <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a886a98 elementor-widget elementor-widget-text-editor\" data-id=\"a886a98\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tProtects high-density civilian airspace through automated drone detection, perimeter monitoring, and safe mitigation planning without disrupting commercial operations. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a6d70c9 e-con-full e-flex e-con e-child\" data-id=\"a6d70c9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-70d2bfa e-con-full e-flex e-con e-child\" data-id=\"70d2bfa\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1f00097 e-con-full e-flex e-con e-child\" data-id=\"1f00097\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9af0a35 elementor-widget elementor-widget-heading\" data-id=\"9af0a35\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Energy &amp; Critical Infrastructure <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-45a05be elementor-widget elementor-widget-text-editor\" data-id=\"45a05be\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tEnables operators such as nuclear facilities, power grids, and refineries to evaluate facility vulnerabilities and maintain air-space security compliance. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a7045c4 e-flex e-con-boxed e-con e-parent\" data-id=\"a7045c4\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-68ba5cd elementor-widget__width-initial elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"68ba5cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Enterprise <span style=\"color: #FFB601\"> Compliance &amp; Deployment<\/h2>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-32b0b84 e-con-full e-flex e-con e-child\" data-id=\"32b0b84\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-fcb078c e-flex e-con-boxed e-con e-child\" data-id=\"fcb078c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2073bcb elementor-widget elementor-widget-heading\" data-id=\"2073bcb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Standards <span style=\"color: #FFB601\"> Compliance<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-484d1e9 elementor-widget elementor-widget-text-editor\" data-id=\"484d1e9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tCertified against the frameworks defense\nand infrastructure buyers require.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dd60ef2 elementor-widget elementor-widget-html\" data-id=\"dd60ef2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- Google Fonts (Montserrat & DM Sans) -->\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@500;600;700&family=Montserrat:wght@700;800;900&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n  \/* ----------------------------------------------------------- *\/\r\n  \/* COMPACT VOLATUS COMPLIANCE BADGES (Fits standard column)    *\/\r\n  \/* ----------------------------------------------------------- *\/\r\n\r\n.volatus-compliance-compact {\r\n  position: relative;\r\n  display: flex;\r\n  justify-content: flex-start;\r\n  align-items: center;\r\n  gap: 46px;\r\n  flex-wrap: nowrap;\r\n  width: 100%;\r\n  max-width: 420px;\r\n  margin: 0;\r\n  padding: 0;\r\n  box-sizing: border-box;\r\n  font-family: 'DM Sans', sans-serif;\r\n}\r\n\r\n  \/* Intersecting Background Orbit Trace *\/\r\n  .compact-backdrop-ring {\r\n    position: absolute;\r\n    top: 50%;\r\n    left: 50%;\r\n    transform: translate(-50%, -50%);\r\n    width: 100%;\r\n    max-width: 400px;\r\n    height: 190px;\r\n    pointer-events: none;\r\n    z-index: 0;\r\n    opacity: 0.35;\r\n  }\r\n\r\n  \/* Individual Badge Container - 180px *\/\r\n  .volatus-badge-sm {\r\n    position: relative;\r\n    width: 180px;\r\n    height: 180px;\r\n    flex-shrink: 0;\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    z-index: 1;\r\n    cursor: default;\r\n    user-select: none;\r\n  }\r\n\r\n  \/* SVG Rotating Dials *\/\r\n  .badge-svg-sm {\r\n    position: absolute;\r\n    inset: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    pointer-events: none;\r\n    z-index: 3;\r\n    overflow: visible;\r\n  }\r\n\r\n  \/* Looping Keyframe Rotations (Steady Continuous Loop) *\/\r\n  .dial-arcs-sm {\r\n    transform-origin: 90px 90px;\r\n    animation: rotateCW 24s linear infinite;\r\n    filter: drop-shadow(0 0 2.5px rgba(255, 182, 1, 0.45));\r\n  }\r\n\r\n  .dial-arcs-sm.reverse {\r\n    animation: rotateCCW 28s linear infinite;\r\n  }\r\n\r\n  .dial-dotted-sm {\r\n    transform-origin: 90px 90px;\r\n    animation: rotateCCW 50s linear infinite;\r\n  }\r\n\r\n  \/* Outer Metallic\/Glass Beveled Frame *\/\r\n  .badge-bevel-sm {\r\n    position: absolute;\r\n    width: 156px;\r\n    height: 156px;\r\n    border-radius: 50%;\r\n    background: radial-gradient(circle at 45% 30%, #2a2c31 0%, #17181c 55%, #0d0e11 100%);\r\n    box-shadow: \r\n      inset 0 1px 1.5px rgba(255, 255, 255, 0.28),\r\n      inset 0 -2px 5px rgba(0, 0, 0, 0.9),\r\n      0 10px 24px rgba(0, 0, 0, 0.75);\r\n    border: 1px solid rgba(255, 255, 255, 0.09);\r\n    z-index: 1;\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n\r\n  \/* Inner Dark Core Disc *\/\r\n  .badge-core-sm {\r\n    position: relative;\r\n    width: 132px;\r\n    height: 132px;\r\n    border-radius: 50%;\r\n    background: radial-gradient(circle at 50% 25%, #1d1f24 0%, #121316 60%, #090a0d 100%);\r\n    box-shadow: \r\n      inset 0 1.5px 3px rgba(255, 255, 255, 0.12),\r\n      inset 0 -2px 6px rgba(0, 0, 0, 0.95),\r\n      0 3px 8px rgba(0, 0, 0, 0.5);\r\n    border: 1px solid rgba(255, 255, 255, 0.07);\r\n    display: flex;\r\n    flex-direction: column;\r\n    justify-content: center;\r\n    align-items: center;\r\n    text-align: center;\r\n    z-index: 2;\r\n    padding: 12px;\r\n    box-sizing: border-box;\r\n    overflow: hidden;\r\n  }\r\n\r\n  \/* Specular Highlight on Upper Core *\/\r\n  .badge-core-sm::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    top: 0;\r\n    left: 12%;\r\n    right: 12%;\r\n    height: 46%;\r\n    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, transparent 100%);\r\n    border-radius: 50% 50% 0 0;\r\n    pointer-events: none;\r\n  }\r\n\r\n  \/* Icon Box *\/\r\n  .badge-icon-sm {\r\n    width: 24px;\r\n    height: 24px;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    margin-bottom: 6px;\r\n  }\r\n\r\n  .badge-icon-sm svg {\r\n    width: 100%;\r\n    height: 100%;\r\n    stroke: #FFB601;\r\n    fill: none;\r\n    stroke-width: 2;\r\n    stroke-linecap: round;\r\n    stroke-linejoin: round;\r\n  }\r\n\r\n  \/* Main Title (NDAA \/ SOC 2) *\/\r\n  .badge-title-sm {\r\n    font-family: 'Montserrat', sans-serif;\r\n    font-size: 17px;\r\n    font-weight: 800;\r\n    color: #ffffff;\r\n    letter-spacing: 0.04em;\r\n    line-height: 1;\r\n    margin: 0 0 5px 0;\r\n    text-transform: uppercase;\r\n  }\r\n\r\n  \/* Subtitle (COMPLIANT \/ TYPE II) *\/\r\n  .badge-sub-sm {\r\n    font-family: 'DM Sans', sans-serif;\r\n    font-size: 8.5px;\r\n    font-weight: 600;\r\n    color: #C8CBD0;\r\n    letter-spacing: 0.26em;\r\n    text-transform: uppercase;\r\n    margin-bottom: 8px;\r\n    line-height: 1;\r\n    display: block;\r\n  }\r\n\r\n  \/* Gold Horizontal Line Pill *\/\r\n  .badge-dash-sm {\r\n    width: 14px;\r\n    height: 2px;\r\n    background: #FFB601;\r\n    border-radius: 1px;\r\n    box-shadow: 0 0 5px rgba(255, 182, 1, 0.35);\r\n  }\r\n\r\n  \/* Steady Looping Rotations *\/\r\n  @keyframes rotateCW {\r\n    from { transform: rotate(0deg); }\r\n    to { transform: rotate(360deg); }\r\n  }\r\n\r\n  @keyframes rotateCCW {\r\n    from { transform: rotate(360deg); }\r\n    to { transform: rotate(0deg); }\r\n  }\r\n\r\n  \/* Mobile Tuning (Maintains side-by-side even on small screens) *\/\r\n\/* Mobile Tuning *\/\r\n@media (max-width: 440px) {\r\n\r\n  .volatus-compliance-compact {\r\n    gap: 4px;\r\n    justify-content: center;\r\n    width: 100%;\r\n  }\r\n\r\n  .volatus-badge-sm {\r\n    width: 125px;\r\n    height: 125px;\r\n  }\r\n\r\n  .badge-bevel-sm {\r\n    width: 108px;\r\n    height: 108px;\r\n  }\r\n\r\n  .badge-core-sm {\r\n    width: 92px;\r\n    height: 92px;\r\n    padding: 6px;\r\n  }\r\n\r\n  .badge-icon-sm {\r\n    width: 17px;\r\n    height: 17px;\r\n    margin-bottom: 3px;\r\n  }\r\n\r\n  .badge-title-sm {\r\n    font-size: 12px;\r\n    margin-bottom: 3px;\r\n  }\r\n\r\n  .badge-sub-sm {\r\n    font-size: 6.5px;\r\n    letter-spacing: 0.16em;\r\n    margin-bottom: 5px;\r\n  }\r\n\r\n  .badge-dash-sm {\r\n    width: 10px;\r\n    height: 1.5px;\r\n  }\r\n\r\n  \/* Scale the background orbit to match *\/\r\n  .compact-backdrop-ring {\r\n    width: 280px;\r\n    height: 135px;\r\n  }\r\n}\r\n<\/style>\r\n\r\n<!-- COMPACT BADGES COMPONENT -->\r\n<div class=\"volatus-compliance-compact\">\r\n  \r\n  <!-- Intersecting Background Orbit Ring (SVG) -->\r\n  <svg class=\"compact-backdrop-ring\" viewBox=\"0 0 400 190\" fill=\"none\" aria-hidden=\"true\">\r\n    <circle cx=\"100\" cy=\"95\" r=\"90\" stroke=\"#FFB601\" stroke-width=\"1\" stroke-dasharray=\"2 8\" opacity=\"0.32\" \/>\r\n    <circle cx=\"100\" cy=\"95\" r=\"98\" stroke=\"rgba(255,255,255,0.06)\" stroke-width=\"1\" \/>\r\n    <circle cx=\"280\" cy=\"95\" r=\"90\" stroke=\"#FFB601\" stroke-width=\"1\" stroke-dasharray=\"2 8\" opacity=\"0.32\" \/>\r\n    <circle cx=\"280\" cy=\"95\" r=\"98\" stroke=\"rgba(255,255,255,0.06)\" stroke-width=\"1\" \/>\r\n  <\/svg>\r\n\r\n  <!-- BADGE 1: NDAA COMPLIANT -->\r\n  <div class=\"volatus-badge-sm\" aria-label=\"NDAA Compliant\">\r\n    <svg class=\"badge-svg-sm\" viewBox=\"0 0 180 180\">\r\n      <!-- Outermost Precision Dotted Orbit -->\r\n      <circle class=\"dial-dotted-sm\" cx=\"90\" cy=\"90\" r=\"86\" \r\n              fill=\"none\" stroke=\"rgba(255, 182, 1, 0.22)\" stroke-width=\"1\" \r\n              stroke-dasharray=\"2 6\" \/>\r\n      \r\n      <circle cx=\"90\" cy=\"90\" r=\"80\" \r\n              fill=\"none\" stroke=\"rgba(255, 255, 255, 0.08)\" stroke-width=\"0.8\" \/>\r\n\r\n      <!-- Rotating Segmented Gold Arcs (Clockwise) -->\r\n      <g class=\"dial-arcs-sm\">\r\n        <circle cx=\"90\" cy=\"90\" r=\"74\" \r\n                fill=\"none\" stroke=\"#FFB601\" stroke-width=\"1.8\" stroke-linecap=\"round\"\r\n                stroke-dasharray=\"55 25 75 30 40 20\" \/>\r\n        <circle cx=\"90\" cy=\"90\" r=\"69\" \r\n                fill=\"none\" stroke=\"rgba(255, 182, 1, 0.35)\" stroke-width=\"0.8\" \r\n                stroke-dasharray=\"16 28 32 40\" \/>\r\n      <\/g>\r\n\r\n      <!-- Cardinal Precision Ticks -->\r\n      <line x1=\"90\" y1=\"7\" x2=\"90\" y2=\"12\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n      <line x1=\"90\" y1=\"168\" x2=\"90\" y2=\"173\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n      <line x1=\"7\" y1=\"90\" x2=\"12\" y2=\"90\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n      <line x1=\"168\" y1=\"90\" x2=\"173\" y2=\"90\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n    <\/svg>\r\n\r\n    <div class=\"badge-bevel-sm\">\r\n      <div class=\"badge-core-sm\">\r\n        <div class=\"badge-icon-sm\">\r\n          <!-- Shield Checkmark Icon -->\r\n          <svg viewBox=\"0 0 24 24\">\r\n            <path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"\/>\r\n            <polyline points=\"9 12 11 14 15 10\"\/>\r\n          <\/svg>\r\n        <\/div>\r\n        <h3 class=\"badge-title-sm\">NDAA<\/h3>\r\n        <span class=\"badge-sub-sm\">COMPLIANT<\/span>\r\n        <div class=\"badge-dash-sm\"><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- BADGE 2: SOC 2 TYPE II -->\r\n  <div class=\"volatus-badge-sm\" aria-label=\"SOC 2 Type II\">\r\n    <svg class=\"badge-svg-sm\" viewBox=\"0 0 180 180\">\r\n      <!-- Outermost Precision Dotted Orbit -->\r\n      <circle class=\"dial-dotted-sm\" cx=\"90\" cy=\"90\" r=\"86\" \r\n              fill=\"none\" stroke=\"rgba(255, 182, 1, 0.22)\" stroke-width=\"1\" \r\n              stroke-dasharray=\"2 6\" \/>\r\n      \r\n      <circle cx=\"90\" cy=\"90\" r=\"80\" \r\n              fill=\"none\" stroke=\"rgba(255, 255, 255, 0.08)\" stroke-width=\"0.8\" \/>\r\n\r\n      <!-- Rotating Segmented Gold Arcs (Counter-Clockwise) -->\r\n      <g class=\"dial-arcs-sm reverse\">\r\n        <circle cx=\"90\" cy=\"90\" r=\"74\" \r\n                fill=\"none\" stroke=\"#FFB601\" stroke-width=\"1.8\" stroke-linecap=\"round\"\r\n                stroke-dasharray=\"70 22 50 32 55 25\" \/>\r\n        <circle cx=\"90\" cy=\"90\" r=\"69\" \r\n                fill=\"none\" stroke=\"rgba(255, 182, 1, 0.35)\" stroke-width=\"0.8\" \r\n                stroke-dasharray=\"22 22 45 35\" \/>\r\n      <\/g>\r\n\r\n      <!-- Cardinal Precision Ticks -->\r\n      <line x1=\"90\" y1=\"7\" x2=\"90\" y2=\"12\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n      <line x1=\"90\" y1=\"168\" x2=\"90\" y2=\"173\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n      <line x1=\"7\" y1=\"90\" x2=\"12\" y2=\"90\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n      <line x1=\"168\" y1=\"90\" x2=\"173\" y2=\"90\" stroke=\"rgba(255, 182, 1, 0.45)\" stroke-width=\"1.2\" \/>\r\n    <\/svg>\r\n\r\n    <div class=\"badge-bevel-sm\">\r\n      <div class=\"badge-core-sm\">\r\n        <div class=\"badge-icon-sm\">\r\n          <!-- Document Icon -->\r\n          <svg viewBox=\"0 0 24 24\">\r\n            <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"\/>\r\n            <polyline points=\"14 2 14 8 20 8\"\/>\r\n            <line x1=\"16\" y1=\"13\" x2=\"8\" y2=\"13\"\/>\r\n            <line x1=\"16\" y1=\"17\" x2=\"8\" y2=\"17\"\/>\r\n            <line x1=\"10\" y1=\"9\" x2=\"8\" y2=\"9\"\/>\r\n          <\/svg>\r\n        <\/div>\r\n        <h3 class=\"badge-title-sm\">SOC 2<\/h3>\r\n        <span class=\"badge-sub-sm\">TYPE II<\/span>\r\n        <div class=\"badge-dash-sm\"><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-afab6f3 e-con-full e-flex e-con e-child\" data-id=\"afab6f3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0b43098 elementor-widget elementor-widget-heading\" data-id=\"0b43098\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Security &amp; Sovereign  <span style=\"color: #FFB601\"> Deployment<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b632bc5 elementor-widget elementor-widget-text-editor\" data-id=\"b632bc5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Built to satisfy strict defense standards, offering flexible deployment models including cloud-hosted SaaS, hybrid, and air-gapped on-premises installations.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3f83d74 e-con-full e-flex e-con e-child\" data-id=\"3f83d74\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4645e33 elementor-widget elementor-widget-heading\" data-id=\"4645e33\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">CLOUD SAAS\n\n\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-70880cd elementor-widget elementor-widget-heading\" data-id=\"70880cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">AIR-GAPPED ON-PREM<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b2a8f32 elementor-widget elementor-widget-heading\" data-id=\"b2a8f32\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">HYBRID\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-83b3fbc e-flex e-con-boxed e-con e-parent\" data-id=\"83b3fbc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-6a17e35 e-con-full e-flex e-con e-child\" data-id=\"6a17e35\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-0efed9c e-con-full e-flex e-con e-child\" data-id=\"0efed9c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-275c16b elementor-widget elementor-widget-heading\" data-id=\"275c16b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">STAGE 01<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f7da9c3 elementor-widget elementor-widget-icon-box\" data-id=\"f7da9c3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tWritten Plan\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tThe C-UAS plan on paper \u2014 procedures, responsibilities, and response intent, structured as a planning profile.\n\n\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6738e5e e-con-full e-flex e-con e-child\" data-id=\"6738e5e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5c0e94c elementor-widget elementor-widget-html\" data-id=\"5c0e94c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"flow-link\"><span class=\"fl-line\"><\/span><span class=\"fl-dot\"><\/span><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c754520 e-con-full e-flex e-con e-child\" data-id=\"c754520\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f2bba05 elementor-widget elementor-widget-heading\" data-id=\"f2bba05\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">STAGE 02<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2fc7b17 elementor-widget elementor-widget-icon-box\" data-id=\"2fc7b17\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tExercised Scenario\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tA living simulation the whole team can run \u2014 threats, sensors, and response elements in motion within the virtual environment.\n\n\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-60c1500 e-con-full e-flex e-con e-child\" data-id=\"60c1500\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-008fa26 elementor-widget elementor-widget-html\" data-id=\"008fa26\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"flow-link\"> <span class=\"fl-line\"><\/span> <span class=\"fl-dot d2\"><\/span> <\/div> <style> .flow-link { position: relative; display: flex; align-items: center; justify-content: center; } \/* ========================= DESKTOP \u2014 HORIZONTAL ========================= *\/ .fl-line { position: absolute; left: 6px; right: 6px; top: 50%; height: 1px; background: repeating-linear-gradient( 90deg, #4D4D4D 0 6px, transparent 6px 12px ); } .fl-dot { position: absolute; top: 50%; width: 5px; height: 5px; background: #FFB601; transform: translateY(-50%); animation: flmove 2.4s linear infinite; } .fl-dot.d2 { animation-delay: 1.2s; } @keyframes flmove { 0% { left: 2px; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { left: calc(100% - 7px); opacity: 0; } } \/* ========================= MOBILE \u2014 VERTICAL ========================= *\/ @media (max-width: 767px) { .flow-link { width: 100%; height: 55px; } .fl-line { left: 50%; right: auto; top: 5px; bottom: 5px; width: 1px; height: auto; background: repeating-linear-gradient( 180deg, #4D4D4D 0 6px, transparent 6px 12px ); transform: translateX(-50%); } .fl-dot { top: auto; left: 50%; width: 5px; height: 5px; transform: translateX(-50%); animation: flmoveVertical 2.4s linear infinite; } .fl-dot.d2 { animation-delay: 1.2s; } @keyframes flmoveVertical { 0% { top: 2px; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { top: calc(100% - 7px); opacity: 0; } } } <\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-26b048a e-con-full e-flex e-con e-child\" data-id=\"26b048a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-631d0c9 elementor-widget elementor-widget-heading\" data-id=\"631d0c9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">STAGE 03<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e08c01c elementor-widget elementor-widget-icon-box\" data-id=\"e08c01c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tPre-Deployment Test\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tCoverage, procedures, and multi-agency coordination validated \u2014 gaps isolated, hardware placement optimized, plan refined.\n\n\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-50f9cbc e-con-full e-flex e-con e-child\" data-id=\"50f9cbc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-93d3950 e-con-full e-flex e-con e-child\" data-id=\"93d3950\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-85e4385 e-con-full e-flex e-con e-child\" data-id=\"85e4385\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-720942a elementor-widget elementor-widget-heading\" data-id=\"720942a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Scenario-Based  <span style=\"color: #FFB601\">C-UAS Planning <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c6a1048 elementor-widget elementor-widget-text-editor\" data-id=\"c6a1048\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span data-contrast=\"auto\">SKYDRA is designed around the principle that counter-UAS operations need to be examined before they are required in the field.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p><p><span data-contrast=\"auto\">SKYDRA operates in a <\/span><b><span data-contrast=\"auto\">secure virtual environment<\/span><\/b><span data-contrast=\"auto\"> allowing for structured planning, tabletop exercises, and simulation-based training. The platform can be used to work through operational scenarios and examines how threat and response elements interact within the simulated environment.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p><p><span data-contrast=\"auto\">This allows organizations to test their approach, identify gaps in procedures, and refine their plans in a controlled setting rather than relying exclusively on live exercises.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p><p><span data-contrast=\"auto\">SKYDRA therefore provides a digital space for organizations to move from a written C-UAS plan to a scenario that can be exercised, to pre-deployment testing.\u00a0<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7779d3e e-con-full e-flex e-con e-child\" data-id=\"7779d3e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8045bea elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"8045bea\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"600\" src=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/Scenario-Based-C-UAS-Planning.webp\" class=\"attachment-large size-large wp-image-37780\" alt=\"\" srcset=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/Scenario-Based-C-UAS-Planning.webp 800w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/Scenario-Based-C-UAS-Planning-300x225.webp 300w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/Scenario-Based-C-UAS-Planning-768x576.webp 768w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/Scenario-Based-C-UAS-Planning-16x12.webp 16w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c3d662a e-flex e-con-boxed e-con e-parent\" data-id=\"c3d662a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-5b9c20d e-con-full e-flex e-con e-child\" data-id=\"5b9c20d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-70c209c elementor-widget elementor-widget-heading\" data-id=\"70c209c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">SKYDRA Within The <span style=\"color: #FFB601\"> Volatus C-UAS Ecosystem<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8487726 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"8487726\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tSKYDRA forms part of Volatus Aerospace\u2019s broader Defence and Security Solutions portfolio. \n\nThe company positions this portfolio around connected capabilities including: \t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-57ae55a e-con-full e-flex e-con e-child\" data-id=\"57ae55a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1618fc3 elementor-widget elementor-widget-html\" data-id=\"1618fc3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, viewport-fit=cover\">\r\n<title>SKYDRA \u2014 Ecosystem Hub Animation<\/title>\r\n<\/head>\r\n<body style=\"margin:0;background:transparent;\">\r\n\r\n<style>\r\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@400;600;800&family=Orbitron:wght@400;700;800&display=swap');\r\n\r\n  .vl-hs-wrapper {\r\n    width: 100%;\r\n    background: transparent;\r\n  }\r\n\r\n  .vl-hs {\r\n    --gold:      #FFB601;\r\n    --gold-dim:  rgba(255,182,1,0.12);\r\n    --gold-line: rgba(255,182,1,0.35);\r\n    --black:     #111111;\r\n    --gl:        #E2E2E2;\r\n    --gm:        #B3B3B3;\r\n    --gd:        #4D4D4D;\r\n\r\n    font-family: 'Montserrat', sans-serif;\r\n    background: transparent;\r\n    display: flex;\r\n    flex-direction: column;\r\n    align-items: center;\r\n    padding: 0px 0px;\r\n    position: relative;\r\n    overflow: hidden;\r\n    width: 100%;\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .vl-diagram-desktop {\r\n    width: 100%;\r\n    max-width: 1000px;\r\n    height: auto;\r\n    z-index: 2;\r\n  }\r\n  .vl-diagram-mobile { display: none; }\r\n\r\n  .vl-ring-out { animation: vl-spin 26s linear infinite; transform-origin: 400px 350px; }\r\n  .vl-ring-mid { animation: vl-spin-rev 16s linear infinite; transform-origin: 400px 350px; }\r\n\r\n  .vl-spoke {\r\n    stroke-dasharray: 220;\r\n    stroke-dashoffset: 220;\r\n    animation: vl-draw 1s ease forwards;\r\n  }\r\n  .vl-spoke:nth-child(1){animation-delay:.7s}\r\n  .vl-spoke:nth-child(2){animation-delay:.9s}\r\n  .vl-spoke:nth-child(3){animation-delay:1.1s}\r\n  .vl-spoke:nth-child(4){animation-delay:1.3s}\r\n  .vl-spoke:nth-child(5){animation-delay:1.5s}\r\n\r\n  .vl-node {\r\n    transform-box: fill-box;\r\n    transform-origin: center;\r\n    opacity: 0;\r\n    animation: vl-popin .65s cubic-bezier(.34,1.56,.64,1) forwards;\r\n    cursor: pointer;\r\n  }\r\n  .vl-node:nth-child(1){animation-delay:.8s}\r\n  .vl-node:nth-child(2){animation-delay:1.0s}\r\n  .vl-node:nth-child(3){animation-delay:1.2s}\r\n  .vl-node:nth-child(4){animation-delay:1.4s}\r\n  .vl-node:nth-child(5){animation-delay:1.6s}\r\n\r\n  .vl-node-ring { transition: stroke-opacity .3s, stroke-width .3s; }\r\n  .vl-node:hover .vl-node-ring { stroke-opacity: 1 !important; stroke-width: 2px; }\r\n\r\n  .vl-hub-txt { opacity:0; animation: vl-fadein .8s 1.0s forwards; }\r\n  .vl-hub-rect { opacity:0; animation: vl-fadein .5s 0.8s forwards; }\r\n\r\n  \/* dot paths: hub center -> each node center (fade hides the overlap under the rects) *\/\r\n  .vl-dot1 { offset-path: path('M 400 350 L 400 150'); animation: vl-dot-go 3.2s  .6s ease-in-out infinite; }\r\n  .vl-dot2 { offset-path: path('M 400 350 L 590 288'); animation: vl-dot-go 3.2s 1.2s ease-in-out infinite; }\r\n  .vl-dot3 { offset-path: path('M 400 350 L 518 512'); animation: vl-dot-go 3.2s 1.8s ease-in-out infinite; }\r\n  .vl-dot4 { offset-path: path('M 400 350 L 282 512'); animation: vl-dot-go 3.2s 2.4s ease-in-out infinite; }\r\n  .vl-dot5 { offset-path: path('M 400 350 L 210 288'); animation: vl-dot-go 3.2s 3.0s ease-in-out infinite; }\r\n\r\n  @media(max-width: 767px){\r\n    .vl-hs-wrapper { width: 100%; left: 0; margin-left: 0; }\r\n    .vl-diagram-desktop { display: none; }\r\n    .vl-diagram-mobile  { display: block; width: 100%; max-width: 450px; }\r\n\r\n    .vl-m-hub {\r\n      width: 150px; height: 150px;\r\n      border: 2px solid var(--gold);\r\n      border-radius: 50%;\r\n      display: flex; flex-direction: column;\r\n      align-items: center; justify-content: center;\r\n      margin: 0 auto 20px;\r\n      position: relative;\r\n      opacity: 0; animation: vl-fadein .7s .4s forwards;\r\n    }\r\n    .vl-m-hub-h {\r\n      font-size: 14px; font-weight: 800;\r\n      color: var(--gold); text-align: center;\r\n      line-height: 1.2;\r\n    }\r\n    .vl-m-hub-s {\r\n      font-size: 10px; letter-spacing: 2px;\r\n      color: var(--gm); margin-top: 5px;\r\n    }\r\n\r\n    .vl-m-connector {\r\n      width: 2px; height: 40px;\r\n      background: linear-gradient(to bottom, var(--gold), transparent);\r\n      margin: 0 auto;\r\n    }\r\n\r\n    .vl-m-grid {\r\n      display: grid;\r\n      grid-template-columns: 1fr 1fr;\r\n      gap: 15px;\r\n      margin-top: 10px;\r\n    }\r\n\r\n    .vl-m-node {\r\n      border: 1px solid rgba(255,182,1,0.3);\r\n      border-radius: 12px;\r\n      display: flex; flex-direction: column;\r\n      align-items: center; justify-content: center;\r\n      padding: 25px 10px;\r\n      background: rgba(255,182,1,0.05);\r\n      text-align: center;\r\n      opacity: 0;\r\n      animation: vl-popin .6s cubic-bezier(.34,1.56,.64,1) forwards;\r\n    }\r\n    \/* 5 nodes: first 4 sit two-per-row, the 5th spans the full width on its own row *\/\r\n    .vl-m-node:nth-child(5) { grid-column: 1 \/ -1; }\r\n\r\n    .vl-m-head  { font-size: 13px; font-weight: 800; color: var(--gl); margin-bottom: 6px; line-height: 1.2; }\r\n    .vl-m-desc  { font-size: 12px; color: var(--gm); line-height: 1.4; }\r\n  }\r\n\r\n  @keyframes vl-spin     { to{ transform:rotate(360deg); } }\r\n  @keyframes vl-spin-rev { to{ transform:rotate(-360deg); } }\r\n  @keyframes vl-draw     { to{ stroke-dashoffset:0; } }\r\n  @keyframes vl-fadein   { to{ opacity:1; } }\r\n  @keyframes vl-popin {\r\n    from{ opacity:0; transform:scale(.35); }\r\n    to  { opacity:1; transform:scale(1); }\r\n  }\r\n  @keyframes vl-dot-go {\r\n    0%  { opacity:0; offset-distance:0%; }\r\n    8%  { opacity:1; }\r\n    92% { opacity:1; }\r\n    100%{ opacity:0; offset-distance:100%; }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"vl-hs-wrapper\">\r\n  <div class=\"vl-hs\">\r\n    <svg class=\"vl-diagram-desktop\" viewBox=\"0 0 800 700\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n      <defs>\r\n        <radialGradient id=\"vn1\" cx=\"50%\" cy=\"50%\" r=\"50%\">\r\n          <stop offset=\"0%\"   stop-color=\"#FFB601\" stop-opacity=\".18\"\/>\r\n          <stop offset=\"100%\" stop-color=\"#FFB601\" stop-opacity=\"0\"\/>\r\n        <\/radialGradient>\r\n        <filter id=\"vl-glow\">\r\n          <feGaussianBlur stdDeviation=\"2\" result=\"blur\"\/>\r\n          <feMerge><feMergeNode in=\"blur\"\/><feMergeNode in=\"SourceGraphic\"\/><\/feMerge>\r\n        <\/filter>\r\n      <\/defs>\r\n\r\n      <g class=\"vl-ring-out\">\r\n        <circle cx=\"400\" cy=\"350\" r=\"290\" fill=\"none\" stroke=\"#FFB601\" stroke-width=\".7\" stroke-opacity=\".8\" stroke-dasharray=\"6 15\"\/>\r\n        <line x1=\"400\" y1=\"58\" x2=\"400\" y2=\"44\" stroke=\"#FFB601\" stroke-width=\"1.2\" stroke-opacity=\".55\"\/>\r\n        <line x1=\"400\" y1=\"642\" x2=\"400\" y2=\"656\" stroke=\"#FFB601\" stroke-width=\"1.2\" stroke-opacity=\".55\"\/>\r\n        <line x1=\"108\" y1=\"350\" x2=\"94\" y2=\"350\" stroke=\"#FFB601\" stroke-width=\"1.2\" stroke-opacity=\".55\"\/>\r\n        <line x1=\"692\" y1=\"350\" x2=\"706\" y2=\"350\" stroke=\"#FFB601\" stroke-width=\"1.2\" stroke-opacity=\".55\"\/>\r\n      <\/g>\r\n\r\n      <!-- 5 spokes, hub center (400,350) to each node center, pentagon layout starting at top, clockwise -->\r\n      <g stroke=\"#FFB601\" stroke-width=\"1.5\" stroke-opacity=\".4\">\r\n        <line class=\"vl-spoke\" x1=\"400\" y1=\"350\" x2=\"400\" y2=\"150\"\/>\r\n        <line class=\"vl-spoke\" x1=\"400\" y1=\"350\" x2=\"590\" y2=\"288\"\/>\r\n        <line class=\"vl-spoke\" x1=\"400\" y1=\"350\" x2=\"518\" y2=\"512\"\/>\r\n        <line class=\"vl-spoke\" x1=\"400\" y1=\"350\" x2=\"282\" y2=\"512\"\/>\r\n        <line class=\"vl-spoke\" x1=\"400\" y1=\"350\" x2=\"210\" y2=\"288\"\/>\r\n      <\/g>\r\n\r\n      <circle class=\"vl-dot1\" r=\"4\" fill=\"#FFB601\" filter=\"url(#vl-glow)\"\/>\r\n      <circle class=\"vl-dot2\" r=\"4\" fill=\"#FFB601\" filter=\"url(#vl-glow)\"\/>\r\n      <circle class=\"vl-dot3\" r=\"4\" fill=\"#FFB601\" filter=\"url(#vl-glow)\"\/>\r\n      <circle class=\"vl-dot4\" r=\"4\" fill=\"#FFB601\" filter=\"url(#vl-glow)\"\/>\r\n      <circle class=\"vl-dot5\" r=\"4\" fill=\"#FFB601\" filter=\"url(#vl-glow)\"\/>\r\n\r\n      <!-- HUB \u2014 SKYDRA -->\r\n      <g class=\"vl-hub-rect\">\r\n        <rect x=\"328\" y=\"288\" width=\"144\" height=\"124\" rx=\"12\" fill=\"url(#vn1)\"\/>\r\n        <rect x=\"330\" y=\"290\" width=\"140\" height=\"120\" rx=\"11\" fill=\"#111111\" stroke=\"#FFB601\" stroke-width=\"2\"\/>\r\n      <\/g>\r\n\r\n      <g class=\"vl-hub-txt\">\r\n        <text x=\"400\" y=\"340\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"24\" font-weight=\"800\" fill=\"#FFB601\">SKYDRA<\/text>\r\n        <text x=\"400\" y=\"366\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11\" fill=\"#B3B3B3\">C-UAS PLANNING &amp;<\/text>\r\n        <text x=\"400\" y=\"382\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11\" fill=\"#B3B3B3\">SIMULATION<\/text>\r\n      <\/g>\r\n\r\n      <!-- NODE 1 \u2014 TOP: ISR -->\r\n      <g class=\"vl-node\">\r\n        <rect x=\"314\" y=\"96\" width=\"172\" height=\"108\" rx=\"11\" fill=\"url(#vn1)\"\/>\r\n        <rect x=\"316\" y=\"98\" width=\"168\" height=\"104\" rx=\"10\" fill=\"#111111\" stroke=\"#FFB601\" stroke-width=\"1.5\" class=\"vl-node-ring\" stroke-opacity=\".6\"\/>\r\n        <text x=\"400\" y=\"134\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"15\" font-weight=\"800\" fill=\"#FFFFFF\">ISR<\/text>\r\n        <text x=\"400\" y=\"158\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">Intelligence, surveillance<\/text>\r\n        <text x=\"400\" y=\"176\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">&amp; reconnaissance<\/text>\r\n      <\/g>\r\n\r\n      <!-- NODE 2 \u2014 UPPER RIGHT: Autonomous & Uncrewed Systems -->\r\n      <g class=\"vl-node\">\r\n        <rect x=\"504\" y=\"234\" width=\"172\" height=\"108\" rx=\"11\" fill=\"url(#vn1)\"\/>\r\n        <rect x=\"506\" y=\"236\" width=\"168\" height=\"104\" rx=\"10\" fill=\"#111111\" stroke=\"#FFB601\" stroke-width=\"1.5\" class=\"vl-node-ring\" stroke-opacity=\".6\"\/>\r\n        <text x=\"590\" y=\"270\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"13.5\" font-weight=\"800\" fill=\"#FFFFFF\">AUTONOMOUS &amp;<\/text>\r\n        <text x=\"590\" y=\"290\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"13.5\" font-weight=\"800\" fill=\"#FFFFFF\">UNCREWED SYSTEMS<\/text>\r\n        <text x=\"590\" y=\"312\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">Mission-critical platforms<\/text>\r\n      <\/g>\r\n\r\n      <!-- NODE 3 \u2014 LOWER RIGHT: Training -->\r\n      <g class=\"vl-node\">\r\n        <rect x=\"432\" y=\"458\" width=\"172\" height=\"108\" rx=\"11\" fill=\"url(#vn1)\"\/>\r\n        <rect x=\"434\" y=\"460\" width=\"168\" height=\"104\" rx=\"10\" fill=\"#111111\" stroke=\"#FFB601\" stroke-width=\"1.5\" class=\"vl-node-ring\" stroke-opacity=\".6\"\/>\r\n        <text x=\"518\" y=\"498\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"15\" font-weight=\"800\" fill=\"#FFFFFF\">TRAINING<\/text>\r\n        <text x=\"518\" y=\"522\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">Defence &amp; specialized<\/text>\r\n        <text x=\"518\" y=\"540\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">operator training<\/text>\r\n      <\/g>\r\n\r\n      <!-- NODE 4 \u2014 LOWER LEFT: C-UAS Capabilities -->\r\n      <g class=\"vl-node\">\r\n        <rect x=\"196\" y=\"458\" width=\"172\" height=\"108\" rx=\"11\" fill=\"url(#vn1)\"\/>\r\n        <rect x=\"198\" y=\"460\" width=\"168\" height=\"104\" rx=\"10\" fill=\"#111111\" stroke=\"#FFB601\" stroke-width=\"1.5\" class=\"vl-node-ring\" stroke-opacity=\".6\"\/>\r\n        <text x=\"282\" y=\"494\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"14\" font-weight=\"800\" fill=\"#FFFFFF\">C-UAS CAPABILITIES<\/text>\r\n        <text x=\"282\" y=\"518\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">Detection, tracking &amp;<\/text>\r\n        <text x=\"282\" y=\"536\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">mitigation<\/text>\r\n      <\/g>\r\n\r\n      <!-- NODE 5 \u2014 UPPER LEFT: Red Team Evaluation -->\r\n      <g class=\"vl-node\">\r\n        <rect x=\"124\" y=\"234\" width=\"172\" height=\"108\" rx=\"11\" fill=\"url(#vn1)\"\/>\r\n        <rect x=\"126\" y=\"236\" width=\"168\" height=\"104\" rx=\"10\" fill=\"#111111\" stroke=\"#FFB601\" stroke-width=\"1.5\" class=\"vl-node-ring\" stroke-opacity=\".6\"\/>\r\n        <text x=\"210\" y=\"270\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"14\" font-weight=\"800\" fill=\"#FFFFFF\">RED TEAM<\/text>\r\n        <text x=\"210\" y=\"290\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"14\" font-weight=\"800\" fill=\"#FFFFFF\">EVALUATION<\/text>\r\n        <text x=\"210\" y=\"312\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-family=\"Montserrat,sans-serif\" font-size=\"11.5\" fill=\"#B3B3B3\">Adversarial testing<\/text>\r\n      <\/g>\r\n    <\/svg>\r\n\r\n    <!-- MOBILE -->\r\n    <div class=\"vl-diagram-mobile\">\r\n      <div class=\"vl-m-hub\">\r\n        <div class=\"vl-m-hub-h\">SKYDRA<\/div>\r\n        <div class=\"vl-m-hub-s\">C-UAS PLATFORM<\/div>\r\n      <\/div>\r\n      <div class=\"vl-m-connector\"><\/div>\r\n      <div class=\"vl-m-grid\">\r\n        <div class=\"vl-m-node\">\r\n          <div class=\"vl-m-head\">ISR<\/div>\r\n          <div class=\"vl-m-desc\">Intelligence, surveillance &amp; reconnaissance<\/div>\r\n        <\/div>\r\n        <div class=\"vl-m-node\">\r\n          <div class=\"vl-m-head\">AUTONOMOUS &amp; UNCREWED SYSTEMS<\/div>\r\n          <div class=\"vl-m-desc\">Mission-critical aerial platforms<\/div>\r\n        <\/div>\r\n        <div class=\"vl-m-node\">\r\n          <div class=\"vl-m-head\">TRAINING<\/div>\r\n          <div class=\"vl-m-desc\">Defence &amp; specialized operator training<\/div>\r\n        <\/div>\r\n        <div class=\"vl-m-node\">\r\n          <div class=\"vl-m-head\">C-UAS CAPABILITIES<\/div>\r\n          <div class=\"vl-m-desc\">Detection, tracking &amp; mitigation<\/div>\r\n        <\/div>\r\n        <div class=\"vl-m-node\">\r\n          <div class=\"vl-m-head\">RED TEAM EVALUATION<\/div>\r\n          <div class=\"vl-m-desc\">Adversarial testing &amp; assessment<\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-21b1467 e-con-full e-flex e-con e-child\" data-id=\"21b1467\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f968375 elementor-widget elementor-widget-text-editor\" data-id=\"f968375\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tThis broad portfolio allows Volatus to combine software, aerial systems, intelligence, training, and defence capabilities rather than positioning SKYDRA as an isolated software product.\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a6b58ed e-flex e-con-boxed e-con e-parent\" data-id=\"a6b58ed\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e0539e0 elementor-widget elementor-widget-heading\" data-id=\"e0539e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Why Choose <span style=\"color: #FFB601\"> Volatus\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd9fe39 elementor-widget__width-inherit elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"cd9fe39\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tSKYDRA is developed within Volatus Aerospace\u2019s broader aerospace, autonomy, intelligence, and defence ecosystem. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f6ddab6 elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"f6ddab6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n\/* Expanded to fill the ENTIRE container *\/\r\n.vts-gravity-module {\r\n  position: absolute;\r\n  top: 0; \r\n  left: 0; \r\n  width: 100%; \r\n  height: 100%; \/* Changed from 50% *\/\r\n  min-height: 250px; \r\n  z-index: 0; \r\n  pointer-events: none; \r\n  background: transparent; \r\n  overflow: hidden; \r\n  font-family: 'Courier New', monospace; \r\n  user-select: none;\r\n}\r\n\r\n.vts-gravity-module canvas {\r\n  width: 100% !important; height: 100% !important; display: block;\r\n}\r\n<\/style>\r\n\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/three.js\/r128\/three.min.js\"><\/script>\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/simplex-noise\/2.4.0\/simplex-noise.min.js\"><\/script>\r\n\r\n<div class=\"vts-gravity-module\"><\/div>\r\n\r\n<script>\r\n\/\/ ==========================================\r\n\/\/ EASY CUSTOMIZATION OPTIONS\r\n\/\/ ==========================================\r\nconst VTS_CONFIG = {\r\n  particleColor: 0xFFB601, \/\/ Lighter yellow (Hex format: 0xRRGGBB)\r\n  particleOpacity: 0.3,    \/\/ Lowered opacity (0.0 is invisible, 1.0 is solid)\r\n  particleSize: 3,         \/\/ Size of the individual dots\r\n  particleCount: 2000,     \/\/ Total number of dots in the scene\r\n  flowSpeed: 0.4,          \/\/ How fast the particles flow horizontally\r\n  waveSpeed: 0.002         \/\/ How fast the 3D waves ripple\r\n};\r\n\r\n(function(){\r\n  let bootAttempts = 0;\r\n  \r\n  function bootAllModules(){\r\n    if(bootAttempts > 50) return;\r\n    bootAttempts++;\r\n\r\n    \/\/ Wait for libraries\r\n    if(!window.THREE || !window.SimplexNoise) {\r\n        setTimeout(bootAllModules, 100);\r\n        return;\r\n    }\r\n\r\n    \/\/ Find ALL wrappers on the page that haven't been initialized yet\r\n    const wrappers = document.querySelectorAll('.vts-gravity-module:not(.vts-active)');\r\n    \r\n    wrappers.forEach(wrapper => {\r\n        wrapper.classList.add('vts-active');\r\n\r\n        \/\/ ==========================================\r\n        \/\/ ELEMENTOR DOM RELOCATION FIX \r\n        \/\/ ==========================================\r\n        const parentContainer = wrapper.closest('.e-con, .e-container, .elementor-section');\r\n        if(parentContainer && wrapper.parentElement !== parentContainer) {\r\n            parentContainer.style.position = 'relative';\r\n            parentContainer.style.overflow = 'hidden';\r\n            parentContainer.insertBefore(wrapper, parentContainer.firstChild); \r\n        }\r\n\r\n        let W = wrapper.clientWidth;\r\n        let H = wrapper.clientHeight;\r\n        if (H < 100) H = 250;\r\n\r\n        \/\/ ==========================================\r\n        \/\/ ISOLATED 3D SCENE SETUP\r\n        \/\/ ==========================================\r\n        const scene = new THREE.Scene(); \r\n        const camera = new THREE.PerspectiveCamera(45, W\/H, 1, 2000); \r\n        \r\n        \/\/ Leveled the camera\r\n        camera.position.set(0, 10, 200); \r\n        camera.lookAt(0, 0, 0); \/\/ Adjusted lookAt to center\r\n\r\n        const renderer = new THREE.WebGLRenderer({alpha: true, antialias: true}); \r\n        renderer.setSize(W, H); \r\n        renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2));\r\n        wrapper.appendChild(renderer.domElement);\r\n        \r\n        \/\/ ==========================================\r\n        \/\/ PARTICLE SYSTEM\r\n        \/\/ ==========================================\r\n        const particleCount = VTS_CONFIG.particleCount;\r\n        const geo = new THREE.BufferGeometry();\r\n        const posArray = new Float32Array(particleCount * 3);\r\n        const initialY = new Float32Array(particleCount);\r\n\r\n        for(let i = 0; i < particleCount; i++) {\r\n            posArray[i * 3] = (Math.random() - 0.5) * 1400; \/\/ X spread    \r\n            \/\/ Spreads particles fully across the vertical space\r\n            posArray[i * 3 + 1] = (Math.random() - 0.5) * 600;   \r\n            posArray[i * 3 + 2] = (Math.random() - 0.5) * 800; \/\/ Z spread \r\n            initialY[i] = posArray[i * 3 + 1];\r\n        }\r\n        \r\n        geo.setAttribute('position', new THREE.BufferAttribute(posArray, 3));\r\n\r\n        const canvas = document.createElement('canvas');\r\n        canvas.width = 16; canvas.height = 16;\r\n        const context = canvas.getContext('2d');\r\n        context.beginPath(); context.arc(8, 8, 8, 0, 2 * Math.PI);\r\n        context.fillStyle = '#ffffff'; context.fill();\r\n        const circleTexture = new THREE.CanvasTexture(canvas);\r\n\r\n        const mat = new THREE.PointsMaterial({ \r\n            color: VTS_CONFIG.particleColor, \r\n            size: VTS_CONFIG.particleSize, \r\n            map: circleTexture, \r\n            transparent: true, \r\n            opacity: VTS_CONFIG.particleOpacity, \r\n            alphaTest: 0.1, \r\n            sizeAttenuation: true \r\n        });\r\n        \r\n        const particles = new THREE.Points(geo, mat); \r\n        scene.add(particles);\r\n\r\n        const simplex = new SimplexNoise();\r\n        let localTime = Math.random() * 100; \r\n        \r\n        \/\/ ==========================================\r\n        \/\/ LOCAL ANIMATION LOOP\r\n        \/\/ ==========================================\r\n        function animateGrav() {\r\n            requestAnimationFrame(animateGrav);\r\n            localTime += VTS_CONFIG.waveSpeed; \r\n\r\n            const pos = geo.attributes.position.array;\r\n            \r\n            for(let i = 0; i < particleCount; i++) {\r\n                let index = i * 3;\r\n                pos[index] -= VTS_CONFIG.flowSpeed; \r\n                \r\n                if (pos[index] < -700) { pos[index] = 700; }\r\n\r\n                const x = pos[index], z = pos[index + 2];\r\n                const noiseVal = simplex.noise3D(x * 0.004, z * 0.004, localTime) * 25;\r\n                const dist = Math.sqrt(x*x + z*z);\r\n                const well = dist < 150 ? -30 * Math.cos(dist*Math.PI\/300) : 0;\r\n                \r\n                const slope = x * 0.06; \r\n                \r\n                pos[index + 1] = initialY[i] + noiseVal + well + slope;\r\n            }\r\n            \r\n            geo.attributes.position.needsUpdate = true;\r\n            renderer.render(scene, camera);\r\n        }\r\n        \r\n        animateGrav();\r\n\r\n        \/\/ ==========================================\r\n        \/\/ ISOLATED RESIZE OBSERVER\r\n        \/\/ ==========================================\r\n        let resizeTimer;\r\n        if(window.ResizeObserver) {\r\n            new ResizeObserver(()=>{\r\n              clearTimeout(resizeTimer);\r\n              resizeTimer = setTimeout(() => {\r\n                  if(!wrapper) return;\r\n                  const newW = wrapper.clientWidth;\r\n                  let newH = wrapper.clientHeight;\r\n                  if (newH < 100) newH = 250;\r\n                  \r\n                  if(newW > 0 && newH > 0 && (newW !== W || newH !== H)){\r\n                      W = newW; H = newH;\r\n                      renderer.setSize(W, H);\r\n                      camera.aspect = W \/ H;\r\n                      camera.updateProjectionMatrix();\r\n                  }\r\n              }, 200);\r\n            }).observe(parentContainer || wrapper);\r\n        }\r\n    });\r\n  }\r\n  \r\n  if(document.readyState==='complete'){ bootAllModules(); } \r\n  else { window.addEventListener('load', bootAllModules); }\r\n  document.addEventListener('DOMContentLoaded', bootAllModules);\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-628390b e-con-full e-flex e-con e-child\" data-id=\"628390b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-b9170d5 e-con-full e-flex e-con e-child\" data-id=\"b9170d5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-7815e7b e-con-full glass-card  e-flex e-con e-child\" data-id=\"7815e7b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-03b3ef6 elementor-widget elementor-widget-heading\" data-id=\"03b3ef6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">01<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-62ef102 elementor-widget elementor-widget-icon-box\" data-id=\"62ef102\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tProprietary Software \t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tSKYDRA is Volatus\u2019 proprietary SaaS platform for C-UAS operational planning and simulation. Volatus has also disclosed patent-pending intellectual property associated with the SKYDRA C-UAS software platform. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-905c2da e-con-full e-flex e-con e-child\" data-id=\"905c2da\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-b89415a e-con-full glass-card  e-flex e-con e-child\" data-id=\"b89415a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-40e6135 elementor-widget elementor-widget-heading\" data-id=\"40e6135\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">02<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1961db0 elementor-widget elementor-widget-icon-box\" data-id=\"1961db0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tConnected Technology Portfolio \t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tVolatus continues to develop an integrated portfolio spanning autonomous systems, C-UAS, SKYDRA, aerial intelligence, mission support, training, and advanced aerospace capabilities for defence, security, public safety, and critical infrastructure applications. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a1cc2f6 e-con-full glass-card  e-flex e-con e-child\" data-id=\"a1cc2f6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f935ffa elementor-widget elementor-widget-heading\" data-id=\"f935ffa\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">03<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b02e111 elementor-widget elementor-widget-icon-box\" data-id=\"b02e111\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tAerospace &amp; Operational Expertise \t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tVolatus brings aerospace operations, uncrewed systems, autonomy, intelligence, and training capabilities together within its defence portfolio. This provides the broader operational context in which SKYDRA is developed and deployed. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8108605 e-con-full e-flex e-con e-child\" data-id=\"8108605\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3e8a1dc e-con-full glass-card  e-flex e-con e-child\" data-id=\"3e8a1dc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-11afc4c elementor-widget elementor-widget-heading\" data-id=\"11afc4c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">04<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f40393f elementor-widget elementor-widget-icon-box\" data-id=\"f40393f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tExpanding Software Capability \t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tThe launch of SKYDRA represents Volatus\u2019 expansion into proprietary defence software and recurring SaaS capabilities, complementing its existing hardware and operational offerings. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-454cba2 e-con-full glass-card  e-flex e-con e-child\" data-id=\"454cba2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4fe7882 elementor-widget elementor-widget-heading\" data-id=\"4fe7882\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">05<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b52fd1e elementor-widget elementor-widget-icon-box\" data-id=\"b52fd1e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tIntegrated Defence Capability \t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tSKYDRA sits alongside Volatus\u2019 ISR capabilities, autonomous aircraft platforms, C-UAS technologies, training, and other defence solutions. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e71909d e-flex e-con-boxed e-con e-parent\" data-id=\"e71909d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-96d5c3c e-con-full e-flex e-con e-child\" data-id=\"96d5c3c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-17f9aac e-con-full e-flex e-con e-child\" data-id=\"17f9aac\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-df823ba e-con-full e-flex e-con e-child\" data-id=\"df823ba\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2575e2e elementor-widget elementor-widget-heading\" data-id=\"2575e2e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">A Digital Environment For <span style=\"color: #FFB601\">C-UAS Excercises<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-992f8a2 elementor-widget elementor-widget-text-editor\" data-id=\"992f8a2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Live counter-UAS exercises can be difficult to conduct in many operational environments. SKYDRA provides a controlled digital environment where organizations can work through scenarios without depending entirely on live exercises.<\/p><p>The platform can support the examination of operational procedures, response approaches, and coordination requirements through simulation and tabletop exercises.<\/p><p>SKYDRA can therefore form part of an organization&#8217;s broader C-UAS planning and training approach, alongside the physical systems, personnel, and procedures required for a particular operational environment.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0326aee e-con-full e-flex e-con e-child\" data-id=\"0326aee\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4cc930e elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"4cc930e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"600\" src=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/A-Digital-Environment-For-C-UAS-Excercises.webp\" class=\"attachment-large size-large wp-image-37775\" alt=\"\" srcset=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/A-Digital-Environment-For-C-UAS-Excercises.webp 800w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/A-Digital-Environment-For-C-UAS-Excercises-300x225.webp 300w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/A-Digital-Environment-For-C-UAS-Excercises-768x576.webp 768w, https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/09\/A-Digital-Environment-For-C-UAS-Excercises-16x12.webp 16w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-583cecb e-flex e-con-boxed e-con e-parent\" data-id=\"583cecb\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-5ed821b e-con-full e-flex e-con e-child\" data-id=\"5ed821b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-66431e9 e-con-full e-flex e-con e-child\" data-id=\"66431e9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-e20c1df e-con-full e-flex e-con e-child\" data-id=\"e20c1df\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b3a3095 elementor-widget elementor-widget-heading\" data-id=\"b3a3095\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Scope Of <span style=\"color: #FFB601\">SKYDRA<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ef4a139 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"ef4a139\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>SKYDRA is Volatus Aerospace\u2019s <strong>C-UAS planning, simulation, and exercise software platform.<\/strong><\/p><p>It should be considered within the broader Volatus C-UAS ecosystem. SKYDRA provides the digital planning and simulation layer, while the wider Volatus portfolio includes physical aerial systems, ISR, training, and C-UAS capabilities.<\/p><p>The appropriate combination of capabilities depends on the organization&#8217;s operational environment and requirements.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-acde0bd e-con-full e-flex e-con e-child\" data-id=\"acde0bd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e5e987d elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"e5e987d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"800\" src=\"https:\/\/volatusaerospace.com\/wp-content\/uploads\/2026\/05\/volatus_skydra-horizontal-white-1.svg\" class=\"attachment-large size-large wp-image-28058\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7a5ef17 e-flex e-con-boxed e-con e-parent\" data-id=\"7a5ef17\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-e4ab581 e-con-full e-flex e-con e-child\" data-id=\"e4ab581\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-201e151 e-con-full e-flex e-con e-child\" data-id=\"201e151\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;sticky&quot;:&quot;top&quot;,&quot;sticky_on&quot;:[&quot;desktop&quot;,&quot;laptop&quot;],&quot;sticky_offset&quot;:90,&quot;sticky_parent&quot;:&quot;yes&quot;,&quot;sticky_effects_offset&quot;:0,&quot;sticky_anchor_link_offset&quot;:0}\">\n\t\t<div class=\"elementor-element elementor-element-3485331 e-con-full e-flex e-con e-child\" data-id=\"3485331\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a1121e6 elementor-widget elementor-widget-icon-box\" data-id=\"a1121e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tPlan before the <span style=\"color: #FFB601\">response is required\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-description\">\n\t\t\t\t\t\tSKYDRA gives defence, public safety, and critical infrastructure organizations a digital environment to<b> plan, simulate, and exercise counter-UAS scenarios. <\/b>\n\n<Br>By combining proprietary software with Volatus Aerospace\u2019s broader defence, aerospace, intelligence, autonomous systems, and training capabilities, SKYDRA adds a digital planning layer to the counter-UAS ecosystem. \t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e1fde0a elementor-widget elementor-widget-button\" data-id=\"e1fde0a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#elementor-action%3Aaction%3Dpopup%3Aopen%26settings%3DeyJpZCI6IjQ5NjIiLCJ0b2dnbGUiOmZhbHNlfQ%3D%3D\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Talk to us about SKYDRA and your C-UAS requirements<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d70b848 e-con-full e-flex e-con e-child\" data-id=\"d70b848\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c1aafac elementor-widget elementor-widget-heading\" data-id=\"c1aafac\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Frequently Asked <span style=\"color: #FFB601\">Questions<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-22bb834 va-faq elementor-widget elementor-widget-n-accordion\" data-id=\"22bb834\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;default_state&quot;:&quot;expanded&quot;,&quot;max_items_expended&quot;:&quot;one&quot;,&quot;n_accordion_animation_duration&quot;:{&quot;unit&quot;:&quot;ms&quot;,&quot;size&quot;:400,&quot;sizes&quot;:[]}}\" data-widget_type=\"nested-accordion.default\">\n\t\t\t\t\t\t\t<div class=\"e-n-accordion\" aria-label=\"Accordion. Open links with Enter or Space, close with Escape, and navigate with Arrow Keys\">\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-3640\" class=\"e-n-accordion-item\" open>\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"1\" tabindex=\"0\" aria-expanded=\"true\" aria-controls=\"e-n-accordion-item-3640\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> <span class=\"faq-no\">01<\/span>What is SKYDRA?  <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3640\" class=\"elementor-element elementor-element-b808451 e-con-full e-flex e-con e-child\" data-id=\"b808451\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3640\" class=\"elementor-element elementor-element-70700a9 e-flex e-con-boxed e-con e-child\" data-id=\"70700a9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4216027 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"4216027\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span class=\"TextRun SCXW6145517 BCX8\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW6145517 BCX8\">SKYDRA\u2122 is <\/span><span class=\"NormalTextRun SCXW6145517 BCX8\">Volatus<\/span><span class=\"NormalTextRun SCXW6145517 BCX8\"> Aerospace\u2019s proprietary SaaS platform for <\/span><\/span><span class=\"TextRun SCXW6145517 BCX8\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW6145517 BCX8\">counter-UAS operational planning and simulation<\/span><\/span><span class=\"TextRun SCXW6145517 BCX8\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW6145517 BCX8\">.<\/span><\/span><span class=\"EOP Selected SCXW6145517 BCX8\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-3641\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"2\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-3641\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> <span class=\"faq-no\">02<\/span>What does SKYDRA support?  <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3641\" class=\"elementor-element elementor-element-ffd8ec2 e-con-full e-flex e-con e-child\" data-id=\"ffd8ec2\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3641\" class=\"elementor-element elementor-element-7c6c6d6 e-flex e-con-boxed e-con e-child\" data-id=\"7c6c6d6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6c99bd2 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"6c99bd2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span class=\"TextRun SCXW244779780 BCX8\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW244779780 BCX8\">SKYDRA supports operational planning, simulation exercises, tabletop exercises, and threat-response planning.<\/span><\/span><span class=\"EOP Selected SCXW244779780 BCX8\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-3642\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"3\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-3642\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> <span class=\"faq-no\">03<\/span>Who is SKYDRA designed for?  <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3642\" class=\"elementor-element elementor-element-235dc63 e-con-full e-flex e-con e-child\" data-id=\"235dc63\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3642\" class=\"elementor-element elementor-element-5fa4067 e-flex e-con-boxed e-con e-child\" data-id=\"5fa4067\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df1e6c0 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"df1e6c0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tVolatus identifies armed forces, public safety agencies, airport operators, ports, energy infrastructure operators, and other critical infrastructure stakeholders as intended users. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-3643\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"4\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-3643\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> <span class=\"faq-no\">04<\/span>Is SKYDRA a physical counter-drone system?  <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3643\" class=\"elementor-element elementor-element-4471ece e-con-full e-flex e-con e-child\" data-id=\"4471ece\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3643\" class=\"elementor-element elementor-element-59eaa1f e-flex e-con-boxed e-con e-child\" data-id=\"59eaa1f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-65072cd elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"65072cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tSKYDRA is a software platform focused on C-UAS planning and simulation. It forms part of Volatus Aerospace\u2019s broader counter-UAS and defence ecosystem. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-3644\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"5\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-3644\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> <span class=\"faq-no\">05<\/span>Can SKYDRA support tabletop exercises?  <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3644\" class=\"elementor-element elementor-element-0ac6994 e-con-full e-flex e-con e-child\" data-id=\"0ac6994\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3644\" class=\"elementor-element elementor-element-11961d0 e-flex e-con-boxed e-con e-child\" data-id=\"11961d0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-aa66f3f elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"aa66f3f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tYes. Tabletop exercises are one of the virtual environment capabilities Volatus identifies for SKYDRA. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-3645\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"6\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-3645\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> <span class=\"faq-no\">06<\/span>How does SKYDRA fit into Volatus Aerospace?    <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3645\" class=\"elementor-element elementor-element-ed5b1c7 e-con-full e-flex e-con e-child\" data-id=\"ed5b1c7\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-3645\" class=\"elementor-element elementor-element-4747f93 e-flex e-con-boxed e-con e-child\" data-id=\"4747f93\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8c7d754 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"8c7d754\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\tSKYDRA forms part of Volatus\u2019 Defence and Security Solutions portfolio alongside ISR, autonomous and uncrewed systems, training, and broader C-UAS capabilities. \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Planifiez et validez les missions contre-drone avant leur d\u00e9ploiement. SKYDRA propose la simulation des menaces C-UAS, la mod\u00e9lisation des r\u00e9seaux de capteurs et des exercices de simulation sur table.<\/p>","protected":false},"author":3,"featured_media":0,"parent":36391,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"class_list":["post-37687","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/pages\/37687","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/comments?post=37687"}],"version-history":[{"count":142,"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/pages\/37687\/revisions"}],"predecessor-version":[{"id":37843,"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/pages\/37687\/revisions\/37843"}],"up":[{"embeddable":true,"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/pages\/36391"}],"wp:attachment":[{"href":"https:\/\/volatusaerospace.com\/fr-ca\/wp-json\/wp\/v2\/media?parent=37687"}],"curies":[{"name":"Bien jou\u00e9","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}