/* Screw & Key — motion enhancements (v6) */
/* Ken Burns: slow zoom on hero backgrounds */
@keyframes skKenBurns{0%{transform:scale(1)}100%{transform:scale(1.12)}}
.hero-bg{animation:skKenBurns 22s ease-in-out infinite alternate;will-change:transform}

/* Pulsing ring on primary call buttons */
@keyframes skPulse{0%{box-shadow:0 0 0 0 rgba(255,110,84,.55)}70%{box-shadow:0 0 0 16px rgba(255,110,84,0)}100%{box-shadow:0 0 0 0 rgba(255,110,84,0)}}
.btn-primary[href^="tel:"]{animation:skPulse 2.4s infinite}
.btn-primary[href^="tel:"]:hover{animation:none;transform:translateY(-2px)}

/* Shine sweep on service cards + primary buttons (hover) */
.service-card{position:relative;overflow:hidden}
.service-card::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.08),transparent);
  transform:skewX(-20deg);transition:none;pointer-events:none}
.service-card:hover::after{animation:skShine .9s ease}
@keyframes skShine{to{left:130%}}

/* Lift + accent border on card hover */
.service-card{transition:transform .35s ease,box-shadow .35s ease}
.service-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px -18px rgba(0,0,0,.6)}

/* Soft blink on the live-dispatch dot */
@keyframes skBlink{0%,100%{opacity:1}50%{opacity:.35}}
.chip-dot{animation:skBlink 1.6s ease-in-out infinite}

/* Respect reduced-motion settings */
@media (prefers-reduced-motion:reduce){
  .hero-bg,.btn-primary[href^="tel:"],.chip-dot{animation:none}
  .service-card{transition:none}
}
