/* High-compression visual sources: keep the premium visual treatment without the multi-megabyte PNG transfers. */
.hero-v4{background-image:linear-gradient(90deg,rgba(2,13,29,.94) 0%,rgba(2,13,29,.79) 46%,rgba(2,13,29,.3) 100%),url("hero-cyber-command.webp")}
.services-page-hero{background-image:linear-gradient(90deg,rgba(1,15,31,.96),rgba(1,15,31,.72)),url("services-layered-defence.webp")}
.hero-backdrop{background-image:url("hero-cyber-command.webp")}
.page-hero::before{background-image:url("hero-cyber-command.webp")}

@media (prefers-reduced-motion: reduce){
  .hero-v4::after,.status-card,.service-showcase a,.solution-image,.training-image,.image-stat,.training-badge,.service-detail-orbit,.hero-backdrop,.page-hero::before{animation:none!important;transition:none!important}
}

/* Lightweight CSS-only motion: no extra images or scripts are required. */
.hero-v4::after{content:"";position:absolute;z-index:-1;inset:auto -12% -42% auto;width:48vw;height:48vw;border-radius:50%;background:radial-gradient(circle,rgba(36,217,211,.25),transparent 66%);animation:ciphersetu-ambient 8s ease-in-out infinite alternate;pointer-events:none}
.status-card{will-change:transform;animation:ciphersetu-float 5.4s ease-in-out infinite!important}
.status-card.s2{animation-delay:-1.8s!important}.status-card.s3{animation-delay:-3.6s!important}
.service-showcase a{animation:ciphersetu-rise .6s cubic-bezier(.2,.7,.2,1) both}.service-showcase a:nth-child(2){animation-delay:.07s}.service-showcase a:nth-child(3){animation-delay:.14s}.service-showcase a:nth-child(4){animation-delay:.21s}.service-showcase a:nth-child(5){animation-delay:.28s}.service-showcase a:nth-child(6){animation-delay:.35s}
.solution-image,.training-image{animation:ciphersetu-rise .75s cubic-bezier(.2,.7,.2,1) both}
.image-stat,.training-badge{animation:ciphersetu-badge 3.4s ease-in-out infinite}
@keyframes ciphersetu-ambient{to{transform:translate(-8%,-10%) scale(1.14);opacity:.76}}
@keyframes ciphersetu-float{50%{transform:translateY(-14px)}}
@keyframes ciphersetu-rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes ciphersetu-badge{50%{transform:translateY(-5px)}}
