/* V25: load animations matching the live site (no React needed). */
@keyframes v25-fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes v25-fade{from{opacity:0}to{opacity:1}}
@keyframes v25-bar-up{0%{opacity:0;transform:translateY(100px)}70%{opacity:1;transform:translateY(-4px)}100%{opacity:1;transform:none}}

/* Home hero: headline block rises in after 1.8s, Google badge fades in at 2.3s */
.v25-hero-text{animation:v25-fade-up .7s cubic-bezier(.25,.1,.25,1) 1.8s both}
.v25-hero-badge{animation:v25-fade .4s ease-out 2.3s both}
/* 24/7 Call/Text/Email bar slides up on every page */
.v25-bar{animation:v25-bar-up .6s cubic-bezier(.22,1,.36,1) .15s both}

/* Scroll reveal (home sections): blur + rise, once */
.v25-reveal.v25-pre{opacity:0;transform:translateY(40px);filter:blur(8px)}
.v25-reveal.v25-in{opacity:1;transform:none;filter:blur(0);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1),filter .8s cubic-bezier(.22,1,.36,1)}

/* Mobile drawer */
.v25-scrim{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .25s ease}
.v25-drawer{position:fixed;top:0;right:0;bottom:0;z-index:61;width:92%;max-width:24rem;background:#070b15;border-left:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;color:#fff;transform:translateX(100%);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.v25-open .v25-scrim{opacity:1}
.v25-open .v25-drawer{transform:none}
.v25-drawer a,.v25-drawer button{color:inherit;text-transform:inherit;letter-spacing:inherit;text-decoration:none;background:none;font:inherit;cursor:pointer}
.v25-drawer .v25-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px;border-radius:8px;text-align:left}
.v25-drawer .v25-row:hover{background:rgba(255,255,255,.05)}
.v25-drawer svg{width:16px;height:16px;flex-shrink:0}
.v25-drawer .v25-view[hidden]{display:none}
@media (min-width:1024px){.v25-scrim,.v25-drawer{display:none}}

@media (prefers-reduced-motion:reduce){
  .v25-hero-text,.v25-hero-badge,.v25-bar{animation:none}
  .v25-reveal.v25-pre{opacity:1;transform:none;filter:none}
}
