@keyframes lf-fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes lf-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lf-float-soft{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes lf-blob-morph-1{0%,to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%;transform:rotate(0)scale(1)}33%{border-radius:30% 60% 70% 40%/50% 60% 30%;transform:rotate(120deg)scale(1.05)}66%{border-radius:50% 60% 30%/30% 60% 70% 40%;transform:rotate(240deg)scale(.95)}}@keyframes lf-blob-morph-2{0%,to{border-radius:40% 60% 60% 40%/70% 30% 50% 50%;transform:rotate(0)}50%{border-radius:60% 40% 40% 60%/40% 60%;transform:rotate(180deg)}}@keyframes lf-shimmer-cta{0%{background-position:-200%}to{background-position:200%}}@keyframes lf-count-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes lf-branch-draw{0%{stroke-dashoffset:1200px;opacity:0}to{stroke-dashoffset:0;opacity:1}}@keyframes lf-branch-sway{0%,to{transform-origin:bottom;transform:rotate(0)}50%{transform:rotate(1.5deg)}}@keyframes lf-mesh-drift-1{0%,to{transform:translate(0)scale(1)}33%{transform:translate(4%,-3%)scale(1.06)}66%{transform:translate(-3%,2%)scale(.96)}}@keyframes lf-mesh-drift-2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-5%,4%)scale(1.08)}}@keyframes lf-mesh-drift-3{0%,to{transform:translate(0)}50%{transform:translate(3%,-4%)}}@keyframes lf-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes lf-shimmer-slide{0%{transform:translate(-100%)}to{transform:translate(200%)}}.lf-mesh-orb{filter:blur(60px);will-change:transform}.lf-mesh-orb-1{animation:22s ease-in-out infinite lf-mesh-drift-1}.lf-mesh-orb-2{animation:18s ease-in-out infinite lf-mesh-drift-2}.lf-mesh-orb-3{animation:26s ease-in-out infinite lf-mesh-drift-3}.lf-dot-grid{color:color-mix(in oklch, var(--foreground) 12%, transparent);background-image:radial-gradient(circle,currentColor 1px,#0000 1px);background-size:28px 28px}.lf-marquee-track{animation:32s linear infinite lf-marquee}.lf-btn-shimmer{position:relative;overflow:hidden}.lf-btn-shimmer:after{content:"";background:linear-gradient(105deg,#0000 40%,#ffffff38 50%,#0000 60%);animation:3.5s ease-in-out infinite lf-shimmer-slide;position:absolute;inset:0}.lf-hero-glow{background:radial-gradient(circle,#2d6a4f59 0%,#0000 70%);border-radius:50%;animation:14s ease-in-out infinite lf-mesh-drift-2;position:absolute}@keyframes lf-ken-burns{0%{transform:scale(1)translate(0)}to{transform:scale(1.08)translate(-1%,-1%)}}.lf-branch-draw{stroke-dasharray:1200;stroke-dashoffset:1200px;animation:2.8s cubic-bezier(.2,0,0,1) forwards lf-branch-draw}.lf-branch-sway{animation:2.8s cubic-bezier(.2,0,0,1) forwards lf-branch-draw,12s ease-in-out 3s infinite lf-branch-sway}.lf-ken-burns{animation:28s ease-in-out infinite alternate lf-ken-burns}@keyframes lf-grain{0%,to{transform:translate(0)}10%{transform:translate(-2%,-2%)}30%{transform:translate(1%,-1%)}50%{transform:translate(-1%,2%)}70%{transform:translate(2%,1%)}90%{transform:translate(-1%,-1%)}}.lf-animate-fade-up{animation:.8s cubic-bezier(.2,0,0,1) both lf-fade-up}.lf-animate-fade-in{animation:.6s both lf-fade-in}.lf-animate-float{animation:6s ease-in-out infinite lf-float-soft}.lf-animate-blob-1{animation:18s ease-in-out infinite lf-blob-morph-1}.lf-animate-blob-2{animation:22s ease-in-out infinite lf-blob-morph-2}.lf-hover-lift{transition:transform .25s cubic-bezier(.2,0,0,1),box-shadow .25s,border-color .25s}.lf-hover-lift:hover{transform:translateY(-2px);box-shadow:0 12px 40px -8px #1b3a2d24}.lf-card-nature{border:1px solid var(--border,#e2e8e4);background:var(--card,#fff);border-radius:.75rem;box-shadow:0 4px 24px -4px #1b3a2d1a}.dark .lf-card-nature{box-shadow:0 8px 32px -8px #00000073}.lf-btn-forest{color:#f7f5f0;background:#2d6a4f;transition:background .2s,transform .2s,box-shadow .2s}.lf-btn-forest:hover{background:#40916c;transform:translateY(-1px);box-shadow:0 6px 20px -4px #2d6a4f66}.lf-grain-overlay:before{content:"";opacity:.035;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:8s steps(10,end) infinite lf-grain;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.lf-animate-fade-up,.lf-animate-fade-in,.lf-animate-float,.lf-animate-blob-1,.lf-mesh-orb-1,.lf-mesh-orb-2,.lf-mesh-orb-3,.lf-marquee-track,.lf-btn-shimmer:after,.lf-hero-glow,.lf-branch-sway,.lf-ken-burns,.lf-grain-overlay:before{animation:none!important}.lf-branch-draw{stroke-dashoffset:0;opacity:1}.lf-hover-lift:hover{transform:none}}
