@keyframes carousel-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes gentle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes trusted-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes scroll-left{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes scroll-right{0%{transform:translateX(-50%)}to{transform:translateX(0)}}@keyframes book-word{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slide-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes fade-in-overlay{0%{opacity:0}to{opacity:1}}@keyframes fade-out-overlay{0%{opacity:1}to{opacity:0}}@keyframes cta-shimmer{0%{transform:translateX(-120%) skewX(-20deg)}60%{transform:translateX(220%) skewX(-20deg)}to{transform:translateX(220%) skewX(-20deg)}}@keyframes recovery-hero-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes recovery-story-fade{0%{opacity:0}to{opacity:1}}#welcome-hero .recovery-reveal{animation:recovery-hero-reveal .36s ease-out both;animation-delay:var(--recovery-reveal-delay,0s)}@media (prefers-reduced-motion:reduce){#welcome-hero .recovery-reveal{animation:none}}.cta-shimmer{position:relative;overflow:hidden;isolation:isolate}.cta-shimmer:before{content:"";position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45) 50%,transparent);transform:translateX(-120%) skewX(-20deg);animation:cta-shimmer 2.8s ease-in-out infinite;pointer-events:none;z-index:1}.drawer-slide-up{animation:slide-up .35s cubic-bezier(.32,.72,0,1) forwards}.drawer-slide-down{animation:slide-down .3s cubic-bezier(.32,.72,0,1) forwards}.drawer-overlay-enter{animation:fade-in-overlay .3s ease forwards}.drawer-overlay-exit{animation:fade-out-overlay .3s ease forwards}.noise-texture:before{content:"";position:absolute;inset:0;z-index:3;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.12;mix-blend-mode:overlay;pointer-events:none}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.carousel-scroll{animation:carousel-scroll 30s linear infinite}.carousel-scroll:hover{animation-play-state:paused}.feature-card-bg{background-size:cover;background-position:50%}@media (min-width:1024px){.basketball-dashboard-image,.biking-dashboard-image,.running-dashboard-image,.tennis-dashboard-image{-webkit-mask-image:linear-gradient(90deg,#000,#000 34%,rgba(0,0,0,.88) 50%,rgba(0,0,0,.58) 68%,rgba(0,0,0,.24) 84%,transparent);mask-image:linear-gradient(90deg,#000,#000 34%,rgba(0,0,0,.88) 50%,rgba(0,0,0,.58) 68%,rgba(0,0,0,.24) 84%,transparent)}}.img-couch{background-image:url(/images/feature-couch.jpg)}.img-meds{background-image:url(/images/feature-meds.jpg)}.img-phone{background-image:url(/images/feature-phone.jpg)}.img-family{background-image:url(/images/feature-family.jpg)}.img-hugging{background-image:url(/images/feature-hugging.jpg)}.img-meditate{background-image:url(/images/feature-meditate.jpg)}.booking-map-popup .mapboxgl-popup-content{overflow:hidden;border-radius:16px;padding:0;box-shadow:0 14px 34px rgba(15,23,42,.18)}.booking-map-popup .mapboxgl-popup-tip{display:none}