.chatbot-toggle-button{bottom:2rem;border-radius:50%;width:60px;height:60px;padding:0;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 15px rgba(96,16,1,.2)}.chatbot-container,.chatbot-toggle-button{position:fixed;right:2rem;display:flex;z-index:1000}.chatbot-container{bottom:6rem;width:90%;max-width:400px;height:75vh;max-height:600px;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 10px 30px rgba(0,0,0,.2);flex-direction:column;transform:scale(.5) translateY(20px);opacity:0;transform-origin:bottom right;transition:transform .3s ease,opacity .3s ease;pointer-events:none}.chatbot-container.open{transform:scale(1) translateY(0);opacity:1;pointer-events:auto}.chatbot-header{padding:1rem;border-bottom:1px solid hsl(var(--border));flex-shrink:0;display:flex;justify-content:space-between;align-items:center}.chatbot-messages{flex-grow:1;padding:1rem;overflow-y:auto}.message-container{display:flex;gap:.75rem;margin-bottom:1rem;max-width:90%}.bot-message{align-self:flex-start}.user-message{align-self:flex-end;flex-direction:row-reverse;margin-left:auto}.message-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background-color:hsl(var(--background))}.user-message .message-avatar{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.message-content{padding:.75rem 1rem;border-radius:var(--radius);background-color:hsl(var(--muted))}.user-message .message-content{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.chatbot-input{display:flex;padding:1rem;border-top:1px solid hsl(var(--border));gap:.5rem;flex-shrink:0}.typing-indicator{display:flex;align-items:center;padding:.5rem 0}.typing-indicator span{height:8px;width:8px;margin:0 2px;background-color:hsl(var(--muted-foreground));border-radius:50%;display:inline-block;animation:wave 1.3s ease-in-out infinite}.typing-indicator span:first-of-type{animation-delay:-1.1s}.typing-indicator span:nth-of-type(2){animation-delay:-.9s}.typing-indicator span:nth-of-type(3){animation-delay:-.7s}@keyframes wave{0%,60%,to{transform:none}30%{transform:translateY(-8px)}}@media (max-width:768px){.chatbot-container{bottom:0;right:0;width:100%;height:100%;max-height:100vh;border-radius:0}.chatbot-toggle-button{&[aria-expanded=true]{transform:scale(0);opacity:0;pointer-events:none}}}.animated-logo{display:flex;font-size:1.125rem;font-weight:700;font-family:var(--font-headline);letter-spacing:-.025em;white-space:nowrap}.animated-logo .logo-constant{color:hsl(var(--foreground))}.animated-logo .logo-animated-text{position:relative;display:inline-block;color:hsl(var(--primary))}.typing-cursor{display:inline-block;width:2px;height:1.125rem;background-color:hsl(var(--primary));animation:blink 1s step-end infinite;vertical-align:bottom}@keyframes blink{0%,to{background-color:transparent}50%{background-color:hsl(var(--primary))}}.vision-animation{position:relative;width:300px;height:300px;display:flex;align-items:center;justify-content:center}.vision-core{width:200px;height:200px;animation:pulse 4s ease-in-out infinite}.vision-svg{width:100%;height:100%;transform:rotate(-90deg)}.vision-path-1,.vision-path-2,.vision-path-3{stroke-dasharray:1000;stroke-dashoffset:1000;animation:draw 8s ease-in-out infinite}.vision-path-2{animation-delay:-2s;animation-duration:9s}.vision-path-3{animation-delay:-4s;animation-duration:7s}.vision-particle{position:absolute;top:50%;left:50%;width:6px;height:6px;border-radius:50%;background-color:hsl(var(--primary));box-shadow:0 0 10px hsl(var(--primary)),0 0 20px hsl(var(--primary));animation:orbit 10s linear infinite;transform-origin:0 0}.vision-particle:nth-child(2){width:4px;height:4px;animation-delay:-1.5s;animation-duration:8s}.vision-particle:nth-child(3){animation-delay:-3s;animation-duration:12s}.vision-particle:nth-child(4){width:5px;height:5px;animation-delay:-4.5s;animation-duration:9s;background-color:hsl(var(--accent));box-shadow:0 0 10px hsl(var(--accent)),0 0 20px hsl(var(--accent))}.vision-particle:nth-child(5){animation-delay:-6s;animation-duration:15s}@keyframes pulse{0%,to{transform:scale(.95);opacity:.8}50%{transform:scale(1.05);opacity:1}}@keyframes draw{50%{stroke-dashoffset:0}to{stroke-dashoffset:-1000}}@keyframes orbit{0%{transform:rotate(0deg) translateX(150px) rotate(0deg)}to{transform:rotate(1turn) translateX(150px) rotate(-1turn)}}