*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #0a0a1a;--color-surface: rgba(20, 20, 50, .6);--color-primary: #1a6dff;--color-accent: #00d4ff;--color-accent-glow: rgba(0, 212, 255, .4);--color-purple: #9d4edd;--color-text: #ffffff;--color-text-muted: #a0a0c0;--font-mono: "SF Mono", "Fira Code", "JetBrains Mono", monospace;--font-sans: "Plus Jakarta Sans", "Inter", system-ui, sans-serif;--font-display: "Space Grotesk", system-ui, sans-serif;--header-height: 4rem;--max-width: 1200px;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 5rem}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text);line-height:1.6;min-height:100vh;overflow-x:hidden;background:radial-gradient(ellipse 70% 60% at 0% 0%,rgba(255,140,50,.25) 0%,transparent 75%),radial-gradient(ellipse at center,#1a1a2e,#0a0a1a 70%)}#bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}#bg-canvas canvas{display:block;width:100%;height:100%}body.no-webgl #bg-canvas{display:none}.header{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--header-height);background:#0a0a1eb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header__inner{display:flex;align-items:center;height:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-md)}.header__logo-img{height:32px;width:auto;margin-right:4px;vertical-align:middle}.header__logo{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em;white-space:nowrap;line-height:1}.header__github-link{font-family:var(--font-display);font-size:.95rem;color:var(--color-text-muted);text-decoration:none;border-bottom:1px solid transparent;transition:color .3s ease,border-color .3s ease;padding-bottom:.15em;margin-left:auto;display:flex;align-items:center;gap:8px;line-height:1}.header__github-icon{width:20px;height:20px;fill:currentColor}.header__logo{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em;white-space:nowrap}.header__logo{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em}.header__github-link{font-family:var(--font-display);font-size:.95rem;color:var(--color-text-muted);text-decoration:none;border-bottom:1px solid transparent;transition:color .3s ease,border-color .3s ease;padding-bottom:.15em}.header__github-link:hover,.header__github-link:focus-visible{color:var(--color-accent);border-color:var(--color-accent);outline:none}.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--header-height) var(--spacing-md) var(--spacing-md);text-align:center}.hero__logo{width:180px;height:auto;margin-bottom:var(--spacing-md);filter:drop-shadow(0 0 20px rgba(100,0,255,.3));animation:lake-blue-glow 3s ease-in-out infinite}@keyframes lake-blue-glow{0%,to{filter:drop-shadow(0 0 15px rgba(0,180,216,.3)) drop-shadow(0 0 30px rgba(0,180,216,.15))}50%{filter:drop-shadow(0 0 25px rgba(0,180,216,.6)) drop-shadow(0 0 50px rgba(0,180,216,.35)) drop-shadow(0 0 75px rgba(0,180,216,.15))}}.hero__tagline{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.25;color:var(--color-text);max-width:900px;text-shadow:0 0 30px rgba(0,212,255,.25);letter-spacing:-.02em}.hero__tagline-main,.hero__tagline-sub{display:block}.hero__tagline-sub{color:var(--color-accent)}.glitch-char{transition:transform .05s ease,opacity .05s ease,color .05s ease}.hero__scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;justify-content:center}.hero__chevron{display:block;width:24px;height:24px;border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);transform:rotate(45deg);animation:bob 2s ease-in-out infinite;opacity:.6}@keyframes bob{0%,to{transform:rotate(45deg) translateY(0)}50%{transform:rotate(45deg) translateY(8px)}}.features{padding:var(--spacing-xl) var(--spacing-md)}.features__image-wrapper{max-width:var(--max-width);margin:0 auto var(--spacing-lg);display:flex;justify-content:center}.features__image{width:100%;max-width:1000px;height:auto;border-radius:12px;box-shadow:0 8px 32px #0006;border:2px solid rgba(255,255,255,.1);transition:box-shadow .3s ease,border-color .3s ease}.features__image:hover{border-color:var(--color-accent);box-shadow:0 0 20px #00d4ff4d,0 8px 32px #0006}.features__inner{display:grid;gap:var(--spacing-md);max-width:var(--max-width);margin:0 auto}@media(min-width:1024px){.features__inner{grid-template-columns:repeat(3,1fr)}}@media(min-width:768px)and (max-width:1023px){.features__inner{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.features__inner{grid-template-columns:1fr}}.feature-card{background:linear-gradient(135deg,#141432cc,#1e143c99);border:3px solid rgba(255,255,255,.15);border-radius:16px;padding:var(--spacing-md);transition:transform .3s ease,border-color .3s ease,opacity .6s ease,box-shadow .3s ease;opacity:0;transform:translateY(30px);box-shadow:0 4px 16px #0000004d,inset 0 1px #ffffff0d}.feature-card--visible{opacity:1;transform:translateY(0)}.feature-card:hover{transform:translateY(-4px);border-color:var(--color-accent);box-shadow:0 0 20px #00d4ff33,0 8px 32px #9d4edd40,inset 0 1px #ffffff1a}.feature-card__icon{display:block;font-size:2.25rem;line-height:1;margin-bottom:var(--spacing-sm);color:var(--color-accent);filter:drop-shadow(0 0 6px var(--color-accent-glow))}.feature-card__title{font-family:var(--font-display);font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-text);letter-spacing:-.01em}.feature-card__desc{font-size:.95rem;color:var(--color-text-muted);line-height:1.6}.footer{text-align:center;padding:var(--spacing-md) var(--spacing-md) var(--spacing-lg);color:var(--color-text-muted);font-size:.9rem}.footer__github-link{color:var(--color-accent);text-decoration:none;border-bottom:1px solid transparent;transition:color .3s ease,border-color .3s ease}.footer__github-link:hover,.footer__github-link:focus-visible{color:var(--color-text);border-color:var(--color-text-muted);outline:none}
