:root{--grid-size: 80px;--grid-line: color-mix(in srgb, var(--brand-green) 10%, transparent)}.animated-grid{background-image:repeating-linear-gradient(0deg,var(--grid-line),var(--grid-line) 1px,transparent 1px,transparent var(--grid-size)),repeating-linear-gradient(90deg,var(--grid-line),var(--grid-line) 1px,transparent 1px,transparent var(--grid-size));background-size:var(--grid-size) var(--grid-size),var(--grid-size) var(--grid-size);background-repeat:repeat,repeat;background-position:0 0,0 0;animation:grid-flow 15s linear infinite;will-change:background-position}@keyframes grid-flow{to{background-position:var(--grid-size) var(--grid-size),var(--grid-size) var(--grid-size)}}.btn-primary{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--brand-green),var(--brand-darkgreen));transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--brand-lightestgray) 40%,transparent),transparent);transition:left .5s ease}.btn-primary:hover:before{left:100%}.btn-primary .btn-overlay{position:absolute;inset:0;background:var(--brand-lightestgray);transform:scaleX(0);transition:transform .3s ease;transform-origin:left}.btn-primary:hover .btn-overlay{transform:scaleX(1)}.feature-card{background:color-mix(in srgb,var(--brand-darkestgray) 80%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--brand-green) 20%,transparent);transition:all .5s cubic-bezier(.4,0,.2,1)}.feature-card:hover{border-color:color-mix(in srgb,var(--brand-green) 50%,transparent);transform:translateY(-8px);box-shadow:0 20px 40px color-mix(in srgb,var(--brand-green) 20%,transparent)}.feature-card{transition:transform .3s ease}.product-card{background:linear-gradient(145deg,color-mix(in srgb,var(--brand-darkestgray) 60%,transparent),color-mix(in srgb,var(--brand-darkergray) 40%,transparent));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--brand-green) 20%,transparent);transition:all .5s cubic-bezier(.4,0,.2,1)}
