
.info-card{box-shadow:0 4px 20px rgba(124,58,237,.15);transition:box-shadow .3s ease, transform .3s ease}
.info-card:hover{box-shadow:0 8px 40px rgba(124,58,237,.3);transform:translateY(-4px)}
.fact-card{transition:box-shadow .3s ease, transform .3s ease}
.fact-card:hover{box-shadow:0 8px 24px rgba(124,58,237,.18);transform:translateY(-2px)}
.gallery__thumbs button{transition:border-color .2s ease, transform .2s ease}
.gallery__thumbs button:hover{transform:translateY(-2px)}
.quick-order__fab{transition:box-shadow .3s ease, transform .2s ease}
.quick-order__fab:hover{box-shadow:0 14px 36px rgba(124,58,237,.55);transform:translateY(-2px)}

@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.045)}100%{transform:scale(1)}}
.cta-band .btn-primary{animation:pulse 2s infinite}


a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}


.btn[disabled]{opacity:.5;cursor:not-allowed}
.order-form input.has-error{border-color:#b91c1c}
.stepper input:disabled{color:var(--text-muted)}


@media (prefers-reduced-motion:reduce){
  .info-card,.fact-card,.gallery__thumbs button,.quick-order__fab,.cta-band .btn-primary,.btn-primary,.btn-primary::before{
    transition:none!important;animation:none!important;
  }
}
