@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{--bg: #faf5ff;--bg-alt: #ede9fe;--text: #1e1b4b;--text-muted: #5b5b7a;--border: #ddd6fe;--brand: #6d28d9;--brand-dark: #5b21b6}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:DM Sans,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:none}h1,h2,h3,h4{margin:0;font-weight:700}p{margin:0}.landing{min-height:100vh;background:var(--bg);color:var(--text)}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 1.5rem}.container-narrow{max-width:720px}.header{position:sticky;top:0;z-index:100;background:#faf5fff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:4rem}.logo{display:flex;align-items:center;text-decoration:none}.logo-img{height:2.5rem;width:auto;object-fit:contain;display:block}.nav{display:flex;align-items:center;gap:1.75rem}.nav a{color:var(--text-muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s}.nav a:hover{color:var(--brand)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.25rem;font-size:.95rem;font-weight:600;border-radius:8px;text-decoration:none;transition:background .2s,color .2s,border-color .2s;cursor:pointer;border:2px solid transparent}.btn-lg{padding:.85rem 1.75rem;font-size:1rem}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark)}.btn-outline{background:transparent;color:var(--brand);border-color:var(--brand)}.btn-outline:hover{background:var(--brand);color:#fff}.hero{padding:5rem 0 5.5rem;text-align:center}.hero-logo{height:5rem;width:auto;object-fit:contain;margin:0 auto 1rem;display:block;max-width:280px}.hero-eyebrow{font-size:.9rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--brand);margin-bottom:.75rem}.hero-title{font-size:clamp(2.25rem,5vw,3.25rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--text);margin:0 0 .5rem;max-width:18ch;margin-left:auto;margin-right:auto}.hero-subtitle{font-size:1.35rem;font-weight:600;color:var(--brand);margin:0 0 1.5rem}.hero-desc{font-size:1.1rem;line-height:1.65;color:var(--text-muted);max-width:42rem;margin:0 auto 2.25rem}.hero-cta{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.section{padding:4rem 0}.section-alt{background:var(--bg-alt)}.section-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;letter-spacing:-.02em;text-align:center;margin:0 0 1rem;color:var(--text)}.section-lead{font-size:1.05rem;line-height:1.7;color:var(--text-muted);text-align:center;max-width:42rem;margin:0 auto 2.5rem}.feature-pills{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.feature-pills li{background:var(--bg);color:var(--text);padding:.5rem 1rem;border-radius:999px;font-size:.95rem;font-weight:600;box-shadow:0 1px 3px #0000000f}.steps-section .section-lead{margin-bottom:2.5rem}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.step-card{background:var(--bg);border-radius:12px;padding:1.75rem;text-align:center;box-shadow:0 2px 12px #0000000f;border:1px solid var(--border)}.step-num{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:1.1rem;margin-bottom:1rem}.step-title{font-size:1.2rem;font-weight:700;margin:0 0 .5rem;color:var(--text)}.step-card p{font-size:.95rem;line-height:1.55;color:var(--text-muted);margin:0}.ecosystem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.eco-card{background:var(--bg);border-radius:12px;padding:1.75rem;border:1px solid var(--border);box-shadow:0 2px 8px #0000000a}.eco-card h3{font-size:1.15rem;font-weight:700;margin:0 0 .5rem;color:var(--text)}.eco-card p{font-size:.95rem;line-height:1.6;color:var(--text-muted);margin:0}.stats-section{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff}.stats-section .section-title{color:#fff;margin-bottom:2rem}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:720px;margin:0 auto}.stat-card{text-align:center}.stat-value{display:block;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;letter-spacing:-.02em;margin-bottom:.25rem}.stat-label{font-size:.95rem;font-weight:600;opacity:.95}@media(max-width:560px){.stats-grid{grid-template-columns:1fr;gap:1.5rem}}.testimonial-section{padding:4.5rem 0}.testimonial{margin:0;padding:2rem 0}.testimonial-quote{font-size:1.2rem;line-height:1.7;color:var(--text);margin:0 0 1.5rem;font-style:italic}.testimonial-author{display:flex;align-items:center;gap:1rem}.testimonial-initials{width:3rem;height:3rem;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem}.testimonial-author strong{display:block;font-size:1rem;margin-bottom:.15rem}.testimonial-author span{font-size:.9rem;color:var(--text-muted)}.gamification-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.game-card{background:var(--bg);border-radius:12px;padding:1.75rem;border:1px solid var(--border);box-shadow:0 2px 8px #0000000a}.game-card h3{font-size:1.15rem;font-weight:700;margin:0 0 .5rem;color:var(--text)}.game-card p{font-size:.95rem;line-height:1.6;color:var(--text-muted);margin:0}.cta-section{text-align:center;padding:4.5rem 0}.cta-section .section-lead{margin-bottom:1.5rem}.footer{padding:2rem 0;border-top:1px solid var(--border);background:var(--bg-alt);text-align:center}.footer-logo{height:2.25rem;width:auto;object-fit:contain;margin:0 auto .5rem;display:block;opacity:.9}.footer-copy{font-size:.85rem;color:var(--text-muted);margin:0}@media(max-width:768px){.nav{display:none}.hero{padding:3.5rem 0 4rem}.section{padding:3rem 0}}
