.breach-bg{--loop:16s;--win-stagger:.12s;--tread-stagger:.4s;--bg-a:#0b1013;--bg-b:#16283f;--wire:#8fb3d9;--ink:#e8f0fa;--c-f1:#4fc3f7;--c-f2:#a9bfc9;--c-f3:#d9b36a;--c-f4:#ffb300;--c-f5:#e53935;--f1-head:"Someone lets them in";--f1-sub:"Initial foothold — phished credential on a contractor laptop";--f2-head:"They copy the keys";--f2-sub:"Credential capture — LLMNR poisoning, NTLM relay to an unsigned host";--f3-head:"The same key opens every door";--f3-sub:"Lateral movement — local admin hash reused across the estate";--f4-head:"They forge a master key";--f4-sub:"Privilege escalation — certificate template abuse via ADCS";--f5-head:"The whole building is theirs";--f5-sub:"Domain compromise — full directory control";--font:var(--font-sans);pointer-events:none;background:linear-gradient(160deg,var(--bg-a) 0%,var(--bg-b) 100%);position:absolute;inset:0;overflow:hidden}.breach-bg svg{width:100%;height:100%;display:block}.lit{opacity:0}.wash{fill:var(--c);fill-opacity:.055;stroke:none}.washl{fill-opacity:.04}.wlit{fill:var(--c);fill-opacity:.15;stroke:var(--c);stroke-opacity:.55;stroke-width:1px}.pulse{opacity:0;transform-box:fill-box;transform-origin:50%;animation:pulse var(--loop) ease-out infinite}.glowg{animation:climb var(--loop) cubic-bezier(.45,.05,.35,.95) infinite}.gc{animation:gcyan var(--loop) linear infinite}.ga{animation:gamber var(--loop) linear infinite}.gr{animation:gred var(--loop) linear infinite}@keyframes floor1{0%,3%{opacity:0}4.2%{opacity:calc(var(--settle,1)*1.3)}6.5%{opacity:var(--settle,1)}94%{opacity:var(--settle,1)}99.5%,to{opacity:0}}.a-f1{animation:floor1 var(--loop) linear infinite}@keyframes floor2{0%,18.75%{opacity:0}19.95%{opacity:calc(var(--settle,1)*1.3)}22.25%{opacity:var(--settle,1)}94%{opacity:var(--settle,1)}99.5%,to{opacity:0}}.a-f2{animation:floor2 var(--loop) linear infinite}@keyframes floor3{0%,34.4%{opacity:0}35.6%{opacity:calc(var(--settle,1)*1.3)}37.9%{opacity:var(--settle,1)}94%{opacity:var(--settle,1)}99.5%,to{opacity:0}}.a-f3{animation:floor3 var(--loop) linear infinite}@keyframes floor4{0%,50%{opacity:0}51.2%{opacity:calc(var(--settle,1)*1.3)}53.5%{opacity:var(--settle,1)}94%{opacity:var(--settle,1)}99.5%,to{opacity:0}}.a-f4{animation:floor4 var(--loop) linear infinite}@keyframes floor5{0%,65.6%{opacity:0}66.8%{opacity:calc(var(--settle,1)*1.3)}69.1%{opacity:var(--settle,1)}94%{opacity:var(--settle,1)}99.5%,to{opacity:0}}.a-f5{animation:floor5 var(--loop) linear infinite}@keyframes flight1{0%,15.5%{opacity:0}17.7%{opacity:var(--settle,.55)}91%{opacity:var(--settle,.55)}96.5%,to{opacity:0}}.a-l1{animation:flight1 var(--loop) linear infinite}@keyframes flight2{0%,31.25%{opacity:0}33.5%{opacity:var(--settle,.55)}91%{opacity:var(--settle,.55)}96.5%,to{opacity:0}}.a-l2{animation:flight2 var(--loop) linear infinite}@keyframes flight3{0%,46.9%{opacity:0}49.1%{opacity:var(--settle,.55)}91%{opacity:var(--settle,.55)}96.5%,to{opacity:0}}.a-l3{animation:flight3 var(--loop) linear infinite}@keyframes flight4{0%,62.5%{opacity:0}64.7%{opacity:var(--settle,.55)}91%{opacity:var(--settle,.55)}96.5%,to{opacity:0}}.a-l4{animation:flight4 var(--loop) linear infinite}@keyframes climb{0%{opacity:0;transform:translateY(34px)}2%{opacity:.85}3%{transform:translateY(0)}12.5%{transform:translateY(0)}18.75%{transform:translateY(-92px)}28.1%{transform:translateY(-92px)}34.4%{transform:translateY(-184px)}43.8%{transform:translateY(-184px)}50%{transform:translateY(-276px)}59.4%{transform:translateY(-276px)}65.6%{transform:translateY(-368px)}94%{opacity:.85;transform:translateY(-368px)}to{opacity:0;transform:translateY(-368px)}}@keyframes gcyan{0%,26%{opacity:1}36%,to{opacity:0}}@keyframes gamber{0%,26%{opacity:0}36%{opacity:1}56%{opacity:1}66%,to{opacity:0}}@keyframes gred{0%,56%{opacity:0}66%,to{opacity:1}}@keyframes pulse{0%{opacity:0;transform:scale(.2)}.8%{opacity:.5}4.5%,to{opacity:0;transform:scale(1.9)}}foreignObject{overflow:visible}.lbl{font-family:var(--font);color:var(--ink);text-wrap:pretty;line-height:1.25}.lbl:before{content:var(--head);letter-spacing:.01em;opacity:.6;font-size:19px;font-weight:500;display:block}.lbl:after{content:var(--sub);letter-spacing:.13em;text-transform:uppercase;opacity:.35;margin-top:5px;font-size:10.5px;font-weight:500;line-height:1.5;display:block}.hit{pointer-events:none}.breach-bg.interactive .hit path,.breach-bg.interactive .hit rect{pointer-events:auto}.breach-bg.interactive:has(.hit:hover) *{animation-play-state:paused}.breach-bg.interactive:has(.hit-f1:hover) .lblg-f1{opacity:1!important}.breach-bg.interactive:has(.hit-f1:hover) .lbl-f1:before{opacity:1!important}.breach-bg.interactive:has(.hit-f1:hover) .lbl-f1:after{opacity:1!important}.breach-bg.interactive:has(.hit-f2:hover) .lblg-f2{opacity:1!important}.breach-bg.interactive:has(.hit-f2:hover) .lbl-f2:before{opacity:1!important}.breach-bg.interactive:has(.hit-f2:hover) .lbl-f2:after{opacity:1!important}.breach-bg.interactive:has(.hit-f3:hover) .lblg-f3{opacity:1!important}.breach-bg.interactive:has(.hit-f3:hover) .lbl-f3:before{opacity:1!important}.breach-bg.interactive:has(.hit-f3:hover) .lbl-f3:after{opacity:1!important}.breach-bg.interactive:has(.hit-f4:hover) .lblg-f4{opacity:1!important}.breach-bg.interactive:has(.hit-f4:hover) .lbl-f4:before{opacity:1!important}.breach-bg.interactive:has(.hit-f4:hover) .lbl-f4:after{opacity:1!important}.breach-bg.interactive:has(.hit-f5:hover) .lblg-f5{opacity:1!important}.breach-bg.interactive:has(.hit-f5:hover) .lbl-f5:before{opacity:1!important}.breach-bg.interactive:has(.hit-f5:hover) .lbl-f5:after{opacity:1!important}@media (prefers-reduced-motion:reduce){.breach-bg *{animation:none!important}.breach-bg .lit{opacity:var(--settle,1)}.breach-bg .glowg{opacity:.85;transform:translateY(-368px)}.breach-bg .gc,.breach-bg .ga{opacity:0}.breach-bg .gr{opacity:1}.breach-bg .pulse{opacity:0}}@media (max-width:767px){.fine,.lbl:after{display:none}.lbl:before{font-size:17px}}
