/* Defendoria Security Audit: animated editorial media and dynamic hero */
.dace .dace-hero-particles{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.58}
.dace .dace-hero-glow{animation:dace-glow-breathe 8s ease-in-out infinite;will-change:transform,opacity}
.dace .dace-orbit-one{animation:dace-orbit-rise 24s ease-in-out infinite}
.dace .dace-orbit-two{animation:dace-orbit-rise 31s ease-in-out infinite reverse}
.dace .dace-hero-frame{overflow:hidden}
.dace .dace-hero-frame:after{content:"";position:absolute;inset:-80% 0 auto;background:linear-gradient(180deg,transparent 0%,rgba(70,120,255,.07) 38%,rgba(70,120,255,.25) 51%,rgba(70,120,255,.05) 65%,transparent 100%);height:90%;transform:translateY(-40%);animation:dace-frame-scan 7.2s linear infinite;pointer-events:none}
.dace .dace-hero-frame>img{animation:dace-photo-breathe 12s ease-in-out infinite alternate;transform-origin:center}
.dace .dace-hero-marker{animation:dace-marker-float 4s ease-in-out infinite}
.dace .dace-hero-tags span{animation:dace-tag-glow 5s ease-in-out infinite}
.dace .dace-hero-tags span:nth-child(2){animation-delay:1.3s}
.dace .dace-hero-tags span:nth-child(3){animation-delay:2.6s}
.dace .dace-live-dot{animation:dace-indicator-pulse 2.5s ease-out infinite}
.dace .dace-hero-copy{animation:dace-hero-enter .95s cubic-bezier(.19,.7,.2,1) both}
.dace .dace-hero-visual{animation:dace-visual-enter 1.2s cubic-bezier(.19,.7,.2,1) both}
.dace .dace-proof-row{animation:dace-hero-enter 1.12s .32s cubic-bezier(.19,.7,.2,1) both}
.dace .dace-tab-visual .dace-radar span{animation:dace-radar-pulse 5s ease-in-out infinite}
.dace .dace-tab-visual .dace-radar span:nth-child(2){animation-delay:.4s}
.dace .dace-tab-visual .dace-radar span:nth-child(3){animation-delay:.8s}
.dace .dace-tab-visual .dace-radar span:nth-child(4){animation-delay:1.2s}
.dace .dace-report-image img,.dace .dace-illustration img,.dace .dace-form-image>img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s}
.dace .dace-report-image:hover img,.dace .dace-illustration:hover img{transform:scale(1.05)}
.dace .dace-report-image{background:#fff}
.dace .dace-illustration{aspect-ratio:1.58}
.dace .dace-illustration img{height:100%;width:100%}
.dace .dace-hero-frame img{aspect-ratio:1672/941;object-fit:cover}
.dace .dace-form-image>img{object-position:center}
.dace .dace-form-image-overlay{background:linear-gradient(0deg,rgba(16,16,21,.98) 3%,rgba(16,16,21,.88) 27%,rgba(16,16,21,.12) 100%)}
.dace .dace-report-image img{aspect-ratio:16/9}
.dace .dace-card{position:relative;overflow:hidden}
.dace .dace-card:after{content:"";position:absolute;left:25px;right:25px;bottom:0;height:3px;background:#4678ff;transform:scaleX(0);transform-origin:left;transition:transform .4s}
.dace .dace-card:hover:after{transform:scaleX(1)}
.dace .dace-tab-panel:not([hidden]){animation:dace-panel-enter .36s ease both}
.dace .dace-industry-panels>div:not([hidden]){animation:dace-panel-enter .36s ease both}
.dace .dace-marquee-track{animation-duration:26s}
.dace .dace-marquee-reverse .dace-marquee-track{animation-duration:29s}
@keyframes dace-glow-breathe{0%,100%{opacity:.38}50%{opacity:.8}}
@keyframes dace-orbit-rise{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(-24px,22px) rotate(5deg)}}
@keyframes dace-frame-scan{0%{transform:translateY(-20%)}100%{transform:translateY(240%)}}
@keyframes dace-photo-breathe{from{transform:scale(1)}to{transform:scale(1.055)}}
@keyframes dace-marker-float{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes dace-tag-glow{0%,100%{background:rgba(70,120,255,.02)}50%{background:rgba(70,120,255,.16)}}
@keyframes dace-indicator-pulse{0%,100%{box-shadow:0 0 0 2px rgba(70,120,255,.08)}50%{box-shadow:0 0 0 10px rgba(70,120,255,.04)}}
@keyframes dace-hero-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@keyframes dace-visual-enter{from{opacity:0;transform:translateY(25px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes dace-radar-pulse{0%,100%{opacity:.45;transform:scale(.97)}50%{opacity:1;transform:scale(1.06)}}
@keyframes dace-panel-enter{from{opacity:.3;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:780px){.dace .dace-hero-frame{transform:none}.dace .dace-hero-visual{animation-duration:.7s}.dace .dace-hero-particles{opacity:.27}.dace .dace-hero-frame:after{opacity:.5}}
@media(prefers-reduced-motion:reduce){.dace .dace-hero-particles{display:none}.dace .dace-hero-glow,.dace .dace-orbit,.dace .dace-hero-frame:after,.dace .dace-hero-frame>img,.dace .dace-hero-marker,.dace .dace-live-dot,.dace .dace-hero-copy,.dace .dace-hero-visual,.dace .dace-proof-row,.dace .dace-tag-glow,.dace .dace-tab-visual .dace-radar span{animation:none!important;transform:none!important}}

/* Original generated illustration placement - scope strictly to Security Audit landing page */
.dace .dace-image-feature-wrap{margin-top:clamp(28px,4vw,52px)}
.dace .dace-image-feature{margin:0;position:relative;overflow:hidden;background:#101015;border-radius:24px;box-shadow:0 22px 52px rgba(16,33,59,.13);border:1px solid rgba(70,120,255,.22)}
.dace .dace-image-feature img{display:block;width:100%;height:100%;min-height:270px;max-height:410px;object-fit:cover;transition:transform .8s cubic-bezier(.18,.7,.2,1),filter .4s ease;aspect-ratio:1400/788}
.dace .dace-image-feature:hover img{transform:scale(1.035)}
.dace .dace-image-feature figcaption{display:flex;flex-direction:column;gap:9px;z-index:1}
.dace .dace-image-feature figcaption span{font-size:11px;font-weight:800;letter-spacing:.13em;color:#a7a6b4}
.dace .dace-image-feature figcaption strong{font-size:clamp(20px,2.2vw,27px);line-height:1.2;letter-spacing:-.035em;color:#fff;max-width:650px}
.dace .dace-image-feature--wide{height:clamp(240px,31vw,365px)}
.dace .dace-image-feature--wide img{height:100%;max-height:none;object-position:center}
.dace .dace-image-feature--wide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,16,21,.91) 0%,rgba(16,16,21,.38) 48%,transparent 100%);pointer-events:none}
.dace .dace-image-feature--wide figcaption{position:absolute;left:clamp(21px,4vw,53px);top:50%;transform:translateY(-50%);width:53%}
.dace .dace-image-feature--split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);min-height:305px}
.dace .dace-image-feature--split img{height:100%;max-height:335px}
.dace .dace-image-feature--split figcaption{background:#101015;padding:clamp(22px,3vw,40px);justify-content:center}
.dace .dace-tab-visual .dace-tab-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.83;z-index:0}
.dace #dace-panel-0 .dace-radar{display:none}
.dace #dace-panel-0 .dace-tab-visual:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,rgba(16,16,21,.92),transparent 58%)}
.dace #dace-panel-0 .dace-tab-visual .dace-tab-visual-number,.dace #dace-panel-0 .dace-tab-visual strong,.dace #dace-panel-0 .dace-tab-visual small,.dace #dace-panel-0 .dace-visual-concept-label{position:relative;z-index:1}
.dace #dace-panel-0 .dace-tab-visual .dace-tab-visual-number{position:absolute;z-index:2}
.dace .dace-visual-concept-label{margin-top:auto;font-size:10px;letter-spacing:.13em;color:#f4f5f9;background:rgba(16,16,21,.72);padding:9px 13px;border-radius:9px}
.dace #dace-panel-0 .dace-tab-visual{justify-content:flex-end;padding:30px;gap:12px}
.dace .dace-image-feature--wide,.dace .dace-image-feature--split{content-visibility:auto;contain-intrinsic-size:auto 330px}
@media(max-width:780px){.dace .dace-image-feature--wide{height:290px}.dace .dace-image-feature--wide figcaption{width:70%}.dace .dace-image-feature--split{grid-template-columns:1fr}.dace .dace-image-feature--split img{height:250px;min-height:0;max-height:none}.dace .dace-image-feature--split figcaption{padding:24px}.dace .dace-tab-visual .dace-tab-photo{opacity:.72}}
@media(max-width:520px){.dace .dace-image-feature--wide{height:275px}.dace .dace-image-feature--wide:after{background:linear-gradient(0deg,rgba(16,16,21,.92),rgba(16,16,21,.26))}.dace .dace-image-feature--wide figcaption{top:auto;bottom:24px;left:20px;right:20px;width:auto;transform:none}.dace .dace-image-feature figcaption strong{font-size:21px}.dace .dace-image-feature--split img{height:210px}}
@media(prefers-reduced-motion:reduce){.dace .dace-image-feature img{transition:none!important;transform:none!important}}
