@import url("https://fonts.googleapis.com/css2?family=Google+Sans:wght@300;400;500;600;700&display=swap");html{scroll-behavior:smooth}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:Google Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:rgb(var(--foreground-rgb));background:linear-gradient(to bottom,transparent,rgb(var(--background-end-rgb))) rgb(var(--background-start-rgb))}a{color:inherit}:root{--space-xxs:4px;--space-xs:8px;--space-sm:16px;--space-md:24px;--space-lg:32px;--space-xl:48px;--space-xxl:64px;--font-xs:0.875rem;--font-sm:1rem;--font-md:1.25rem;--font-lg:2rem;--font-xl:2.5rem;--font-xxl:3rem;--weight-regular:400;--weight-medium:500;--weight-bold:700;--teal-primary:#06B6D4;--teal-secondary:#0891B2;--teal-light:#22D3EE;--teal-dark:#0E7490;--teal-accent:#67E8F9;--teal-muted:#155E75;--primary:var(--teal-primary);--secondary:var(--teal-secondary);--accent:var(--teal-accent);--teal:var(--teal-primary);--teal-light:var(--teal-light);--teal-dark:var(--teal-dark);--black:#000000;--black-soft:#1a1a1a;--white:#ffffff;--background:#f8f9fa;--foreground:#000000;--muted:#6c757d;--card-bg:#fff;--divider:#e5e7eb;--card-shadow:0 4px 16px rgba(6,182,212,0.08);--card-shadow-hover:0 8px 24px rgba(6,182,212,0.12);--shadow:0 4px 6px rgba(6,182,212,0.1);--shadow-hover:0 8px 15px rgba(6,182,212,0.15);--radius-sm:8px;--radius-md:16px;--radius-lg:32px;--transition:0.2s cubic-bezier(0.4,0,0.2,1)}body{font-family:Google Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;color:var(--foreground);background:var(--background);line-height:1.7}h1,h2,h3,h4,h5,h6{font-family:Google Sans,sans-serif;font-weight:var(--weight-bold);line-height:1.2;margin-bottom:var(--space-sm)}h1{font-size:var(--font-xxl)}h2{font-size:var(--font-xl)}h3{font-size:var(--font-lg)}h4{font-size:var(--font-md)}h5{font-size:var(--font-sm)}h6{font-size:var(--font-xs)}a,button,li,p,span{font-size:var(--font-sm);font-weight:var(--weight-regular)}a{color:var(--teal-primary);text-decoration:none;transition:color var(--transition)}a:focus,a:hover{color:var(--teal-accent)}.button,button,input[type=submit]{display:inline-block;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);background:var(--teal-primary);color:#fff;font-weight:var(--weight-bold);font-size:var(--font-md);border:none;box-shadow:var(--card-shadow);cursor:pointer;transition:background var(--transition),box-shadow var(--transition),transform var(--transition)}.button.secondary,button.secondary{background:var(--teal-secondary);color:#fff}.button:focus,.button:hover,button:focus,button:hover{background:var(--teal-accent);color:var(--foreground);box-shadow:var(--card-shadow-hover);transform:scale(1.04)}.card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:var(--space-lg);transition:box-shadow var(--transition),transform var(--transition);text-align:center}.card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-4px) scale(1.02)}.section{padding:var(--space-xxl) 0;margin-bottom:var(--space-xl)}.mt-lg{margin-top:var(--space-lg)}.mb-lg{margin-bottom:var(--space-lg)}.pt-lg{padding-top:var(--space-lg)}.pb-lg{padding-bottom:var(--space-lg)}.divider{width:100%;height:2px;background:linear-gradient(90deg,var(--divider) 0,var(--teal-primary) 100%);margin:var(--space-lg) 0;border-radius:var(--radius-sm)}.fade-in{opacity:0;transform:translateY(24px);animation:fadeInUp .8s ease-out forwards}@keyframes fadeInUp{to{opacity:1;transform:none}}*{transition:background var(--transition),color var(--transition),box-shadow var(--transition),border-color var(--transition)}:focus-visible{outline:2px solid var(--teal-primary);outline-offset:2px}.button,a,button{min-width:44px;min-height:44px;font-size:1rem;padding:.5em 1.2em}@media (max-width:600px){html{font-size:15px}.button,a,button{font-size:1rem;padding:.7em 1.2em}}@media (max-width:768px){html{font-size:14px}}.ai-animation-container,.ai-animation-enhanced-container{position:relative;width:100%;height:100%;overflow:hidden}.ai-animation-canvas,.ai-animation-enhanced-canvas{display:block}.ai-typing-animation{display:inline-flex;align-items:center;gap:12px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:1.1rem;color:var(--teal-primary)}.typing-text{position:relative;display:inline-block}.typing-cursor{color:var(--teal-accent);font-weight:700;animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.ai-processing-indicator{display:flex;align-items:center}.processing-dots{display:flex;gap:4px}.processing-dots .dot{width:6px;height:6px;background:var(--teal-primary);border-radius:50%;animation:processing 1.4s ease-in-out infinite}.processing-dots .dot:first-child{animation-delay:-.32s}.processing-dots .dot:nth-child(2){animation-delay:-.16s}.processing-dots .dot:nth-child(3){animation-delay:0s}@keyframes processing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.ai-particle{position:absolute;pointer-events:none;border-radius:50%;background:var(--teal-primary);animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0deg);opacity:.3}50%{transform:translateY(-20px) rotate(180deg);opacity:.8}}.ai-glow{position:relative}.ai-glow:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,var(--teal-primary),var(--teal-accent),var(--teal-primary));border-radius:inherit;z-index:-1;opacity:0;transition:opacity .3s ease}.ai-glow:hover:before{opacity:.3}.ai-data-stream{position:relative;overflow:hidden}.ai-data-stream:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--teal-primary),transparent);animation:dataStream 2s infinite}@keyframes dataStream{0%{left:-100%}to{left:100%}}.ai-grid{position:relative;background-image:linear-gradient(rgba(6,182,212,.1) 1px,transparent 0),linear-gradient(90deg,rgba(6,182,212,.1) 1px,transparent 0);background-size:20px 20px;animation:gridMove 20s linear infinite}@keyframes gridMove{0%{transform:translate(0)}to{transform:translate(20px,20px)}}