@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans-Medium.ttf) format("truetype");font-weight:500;font-style:normal}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}:root{font-family:Google Sans,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background-color:#e7f4ff}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{margin:0;padding:0;width:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.hero-section{position:relative;width:100%;max-height:450px;height:450px;overflow:hidden;display:flex;align-items:center;background:#7ebaee;margin:0;padding:0}.hero-content{position:relative;z-index:2;padding-left:60px;max-width:520px}.hero-text{display:flex;flex-direction:column;gap:18px}.hero-title{font-family:Google Sans,sans-serif;font-size:72px;font-weight:400;line-height:1.1;margin:0;color:#fff;letter-spacing:-.02em;min-height:79px}.hero-name{font-family:Google Sans,sans-serif;font-weight:700;color:#fbce51}.hero-subtitle{font-family:Google Sans,sans-serif;font-size:27px;font-weight:400;line-height:1.3;margin:0;color:#fff;min-height:70px}.hero-role{font-weight:700}.typing-cursor{display:inline-block;margin-left:2px;animation:blink .7s infinite;font-weight:400;font-size:27px;line-height:1.3;vertical-align:baseline}.hero-social-links{display:flex;gap:18px;margin-top:6px}.hero-social-links a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;transition:transform .2s ease;opacity:0;transform:scale(.5)}.hero-social-links.show-social .social-icon-1{animation:bubbleIn .4s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:0s}.hero-social-links.show-social .social-icon-2{animation:bubbleIn .4s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.15s}.hero-social-links.show-social .social-icon-3{animation:bubbleIn .4s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.3s}.hero-social-links a:hover{transform:scale(1.1)}.hero-social-links img{width:100%;height:100%;object-fit:contain}.hero-pattern-container{position:absolute;left:0;top:0;right:0;height:100%;z-index:0;pointer-events:none;overflow:hidden}.hero-pattern{position:absolute;right:280px;top:0;height:100%;width:auto;display:block;object-fit:cover;object-position:right center}.hero-image-container{position:absolute;right:0;bottom:0;height:100%;z-index:1;display:flex;align-items:flex-end;pointer-events:none}.hero-image{height:100%;width:auto;object-fit:contain;object-position:bottom right}@media(max-width:1400px){.hero-content{padding-left:48px}.hero-title{font-size:64px}.hero-subtitle{font-size:24px}}@media(max-width:1200px){.hero-content{padding-left:36px;max-width:450px}.hero-title{font-size:56px}.hero-subtitle{font-size:22px}.hero-social-links a{width:32px;height:32px}}@media(max-width:992px){.hero-section{height:380px}.hero-content{padding-left:28px;max-width:380px}.hero-title{font-size:48px}.hero-subtitle{font-size:20px}}@media(max-width:768px){.hero-section{height:500px;align-items:flex-start}.hero-content{padding-left:32px;padding-top:40px;max-width:100%}.hero-title{font-size:56px}.hero-subtitle{font-size:24px}.hero-text{gap:14px}.hero-social-links{gap:16px;margin-top:6px}.hero-social-links a{width:40px;height:40px}.hero-pattern{min-width:100%;width:100%}.hero-image-container{right:20px;bottom:0;top:auto;height:58%}.hero-image{height:100%}}@media(max-width:576px){.hero-section{height:450px;align-items:flex-start}.hero-content{padding-left:24px;padding-right:24px;padding-top:32px;max-width:100%}.hero-title{font-size:48px}.hero-subtitle{font-size:20px}.hero-text{gap:12px}.hero-social-links{gap:14px;margin-top:4px}.hero-social-links a{width:36px;height:36px}.hero-pattern{min-width:100%;width:100%}.hero-image-container{right:10px;bottom:0;height:54%}}@media(max-width:400px){.hero-section{height:420px;align-items:flex-start}.hero-content{padding-left:20px;padding-right:20px;padding-top:28px;max-width:100%}.hero-title{font-size:42px}.hero-subtitle{font-size:18px}.hero-text{gap:10px}.hero-social-links{gap:12px;margin-top:4px}.hero-social-links a{width:32px;height:32px}.hero-image-container{right:10px;bottom:0;height:52%}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes bubbleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.bubble-in-container{opacity:0;transform:scale(.8);transition:opacity .6s ease-out,transform .6s cubic-bezier(.34,1.56,.64,1)}.bubble-in-container.bubble-in-visible{opacity:1;transform:scale(1)}
