.bands,.bands-scene{pointer-events:none;position:absolute;inset:0}.bands{overflow:hidden}.bands-scene{background-position:50%;background-repeat:no-repeat;background-size:auto 100%}.bands canvas{opacity:0;width:100%;height:100%;transition:opacity .25s ease-out;display:block}.bands-scene[data-ready]>canvas{opacity:1}.bands-hero .bands-scene:after,.bands-contact .bands-scene:after,.bands-testimonial .bands-scene:after{content:"";background:linear-gradient(206deg,#000 11% 23%,#20202000 35.6731%,#000005 59%,#000004 89%);position:absolute;inset:0}.bands-hero .bands-scene{filter:saturate(.93);background-image:url(../assets/shaders/bands-hero.webp);transform:scale(1.5)}.bands-hero .bands-scene[data-ready]{animation:2s cubic-bezier(.12,.23,.5,1) both bands-enter}.bands-cta{opacity:.7;filter:saturate(.93);-webkit-mask-image:linear-gradient(#0000,#000d 25% 50%,#0000);mask-image:linear-gradient(#0000,#000d 25% 50%,#0000)}.bands-contact .bands-scene[data-ready]>canvas{opacity:.5}.bands-testimonial .bands-scene{background-image:url(../assets/shaders/bands-testimonial.webp)}.bands-cta .bands-scene{background-image:url(../assets/shaders/bands-cta.webp)}@keyframes bands-enter{0%{transform:scale(1.5)}to{transform:scale(1)}}@media (width<=809px){.bands-hero .bands-scene{background-image:url(../assets/shaders/bands-hero-mobile.webp)}.bands-testimonial .bands-scene{background-image:url(../assets/shaders/bands-testimonial-mobile.webp)}}@media (prefers-reduced-motion:reduce),(scripting:none){.bands-hero .bands-scene{animation:none;transform:none}.bands canvas{transition:none}}@layer components{.expertise-section{--heading-width:550px;--card-width:1200px;--card-gap:20px;--rail-gap:56px;--rail-inset-start:150px;--rail-inset-end:50px;height:calc((var(--heading-width) + var(--rail-gap) + var(--rail-inset-start) + var(--rail-inset-end) + var(--card-width)*var(--card-count) + var(--card-gap)*(var(--card-count) - 1))*1.25)}}.gradient-ascii-container{pointer-events:none;opacity:.55;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 20% 80%,#0000);mask-image:linear-gradient(#0000,#000 20% 80%,#0000)}.gradient-ascii-canvas{width:100%;height:100%;display:block}
