/* Homepage DCAST seal: stationary badge, one light sweep per viewport entry.
   Existing responsive dimensions and overlapping position are preserved. */
body .dcast-template-seal{
  isolation:isolate;
  overflow:hidden;
  border:0;
  background:linear-gradient(180deg,#ffffff,#f6f8fa);
  box-shadow:0 22px 50px rgba(0,0,0,.25),0 0 0 1px rgba(255,255,255,.06),inset 0 1px 2px rgba(255,255,255,.9);
  opacity:1!important;
  transform:none!important;
  animation:none!important;
  transition:none!important;
}
body .dcast-template-seal::after{
  content:"";position:absolute;inset:9px;border-radius:50%;
  border:1px solid rgba(18,20,58,.08);z-index:1;pointer-events:none;
}
body .dcast-template-seal::before{
  content:"";position:absolute;inset:auto;top:-40%;left:-60%;
  width:60%;height:180%;border:0;border-radius:0;
  background:linear-gradient(75deg,transparent 0%,rgba(13,154,92,.06) 35%,rgba(255,255,255,.85) 50%,rgba(46,52,128,.08) 65%,transparent 100%);
  transform:translateX(-40%);opacity:0;z-index:2;pointer-events:none;
  animation:none;
}
body .dcast-template-seal.in-view::before{
  animation:dcast-seal-shimmer 1.6s cubic-bezier(.4,0,.2,1) .15s 1;
}
@keyframes dcast-seal-shimmer{
  0%{transform:translateX(-40%);opacity:0}
  12%{opacity:1}
  55%{opacity:1}
  100%{transform:translateX(220%);opacity:0}
}
body .dcast-template-seal svg,
body .dcast-template-seal strong,
body .dcast-template-seal small{position:relative;z-index:3}
body .dcast-template-seal svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.08))}
@media(prefers-reduced-motion:reduce){
  body .dcast-template-seal.in-view::before{animation:none!important;opacity:0!important}
}
