/* V2 motion grammar: decisive entrances, restrained depth, tactile controls.
   Content is fully visible without JavaScript; no continuous animations. */
@media screen and (prefers-reduced-motion:no-preference){
  .v2-site{--v2-ease:cubic-bezier(.16,1,.3,1)}
  .v2-site.v2-motion-ready .v2-intro .v2-kicker,
  .v2-site.v2-motion-ready .v2-intro h1,
  .v2-site.v2-motion-ready .v2-intro-aside,
  .v2-site.v2-motion-ready .v2-event-intro > *{opacity:0;transform:translateY(24px);transition:opacity .8s var(--v2-ease),transform 1s var(--v2-ease)}
  .v2-site.v2-entered .v2-intro .v2-kicker,
  .v2-site.v2-entered .v2-intro h1,
  .v2-site.v2-entered .v2-intro-aside,
  .v2-site.v2-entered .v2-event-intro > *{opacity:1;transform:translateY(0)}
  .v2-site .v2-intro h1{transition-delay:.09s!important}
  .v2-site .v2-intro-aside{transition-delay:.2s!important}
  .v2-site .v2-event-intro > :nth-child(2){transition-delay:.08s}
  .v2-site .v2-event-intro > :nth-child(3){transition-delay:.14s}
  .v2-site .v2-event-intro > :nth-child(4){transition-delay:.2s}
  .v2-site .v2-event-intro > :nth-child(n+5){transition-delay:.26s}
  .v2-site .v2-motion-reveal{opacity:0;transform:translateY(26px);transition:opacity .72s var(--v2-ease) var(--v2-reveal-delay,0ms),transform .9s var(--v2-ease) var(--v2-reveal-delay,0ms)}
  .v2-site .v2-motion-reveal.v2-in-view,.v2-site .v2-motion-reveal:focus-within{opacity:1;transform:translateY(0)}
  .v2-site .v2-parallax-image{translate:0 var(--v2-image-travel,0px);scale:1.04}
  .v2-site .btn{position:relative;isolation:isolate;transition:background-color .25s,border-color .25s,color .25s,box-shadow .3s,transform .35s var(--v2-ease)}
  .v2-site .btn:active{transform:translateY(1px) scale(.985)}
  .v2-site .btn svg{transition:transform .4s var(--v2-ease)}
  .v2-site .btn:hover svg{transform:translateX(2px)}
  .v2-site .btn-primary{overflow:hidden}
  .v2-site:not(.v2-event) .btn-primary:after,.v2-site.v2-event .btn-primary:before{content:'';position:absolute;inset:-70% -40%;background:linear-gradient(110deg,transparent 40%,#ffffff24 49%,transparent 58%);transform:translateX(-90%);transition:transform .65s var(--v2-ease);pointer-events:none;z-index:-1}
  .v2-site:not(.v2-event) .btn-primary:hover:after,.v2-site:not(.v2-event) .btn-primary:focus-visible:after,.v2-site.v2-event .btn-primary:hover:before,.v2-site.v2-event .btn-primary:focus-visible:before{transform:translateX(90%)}
  .v2-site .v2-toplinks a,.v2-site .v2-event-actions a{transition:color .2s,background-color .2s,border-color .2s}
  .v2-site .v2-toplinks a:active,.v2-site .v2-event-actions a:active{translate:0 1px}
  .v2-site .v2-pointer-card{position:relative;isolation:isolate}
  .v2-site .v2-pointer-card:after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(320px circle at var(--v2-pointer-x,50%) var(--v2-pointer-y,50%),color-mix(in srgb,var(--v2-brand) 8%,transparent),transparent 72%);opacity:0;transition:opacity .35s;pointer-events:none;z-index:1}
  .v2-site .v2-pointer-card:hover:after{opacity:1}
}
@media screen and (prefers-reduced-motion:reduce){
  .v2-site .v2-motion-reveal,.v2-site .v2-event-intro > *,.v2-site .v2-intro h1,.v2-site .v2-intro .v2-kicker,.v2-site .v2-intro-aside{opacity:1!important;transform:none!important}
  .v2-site .v2-parallax-image{translate:none;scale:none}
  .v2-site *, .v2-site *:before,.v2-site *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media print{.v2-site .v2-motion-reveal{opacity:1!important;transform:none!important}}
