:root{--primary:#4C6FFF;--primary-variant:#2F4BFF;--primary-container:#E4E9FF;--on-primary:#FFFFFF;--on-primary-container:#1B2A76;--secondary:#14D2B8;--secondary-variant:#0EAE99;--secondary-container:#CAFFF3;--on-secondary:#FFFFFF;--tertiary:#FF5BA6;--tertiary-variant:#E6458F;--tertiary-container:#FFE0F0;--on-tertiary:#FFFFFF;--error:#FF4D5A;--success:#22D47B;--warning:#FFB020;--background:#F7F8FF;--surface:#FFFFFF;--surface-variant:#E9EEFF;--on-background:#101426;--on-surface:#101426;--on-surface-variant:#4A546B;--outline:#D3DAF4;--gamification-green:#22D47B;--color-primary:#4C6FFF;--color-tertiary:#FF5BA6;--font-display:"Inter",system-ui,-apple-system,sans-serif}.landing-page{position:relative;overflow-x:hidden;background:var(--background)}.animated-bg{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.bg-blob{position:absolute;border-radius:50%;filter:blur(100px);opacity:.4;animation:blob-float 20s ease-in-out infinite}.blob-1{width:600px;height:600px;background:linear-gradient(135deg,var(--primary) 0,var(--primary-variant) 100%);top:-200px;right:-100px;animation-delay:0s}.blob-2{width:500px;height:500px;background:linear-gradient(135deg,var(--primary-container) 0,var(--primary) 100%);bottom:-100px;left:-100px;animation-delay:5s}.blob-3{width:400px;height:400px;background:linear-gradient(135deg,var(--primary-container) 0,var(--surface) 100%);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:10s}@keyframes blob-float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(20px,30px) scale(1.02)}}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.navbar{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--outline);padding:1rem 0}.nav-content{display:flex;justify-content:space-between;align-items:center}.logo-container-header{display:flex;align-items:center;gap:.75rem;cursor:pointer}.logo-image{filter:drop-shadow(0 2px 4px rgba(76,111,255,.2));transition:filter .3s ease;border-radius:10px}.logo-container-header:hover .logo-image{filter:drop-shadow(0 4px 8px rgba(76,111,255,.3))}.logo-text{font-weight:800;font-size:1.5rem;letter-spacing:-.02em;white-space:nowrap;background:linear-gradient(135deg,#4C6FFF,#2F4BFF 50%,#4C6FFF);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%{background-position:200%}50%{background-position:0}to{background-position:-200%}}.nav-actions{gap:1rem}.btn-text,.nav-actions{display:flex;align-items:center}.btn-text{gap:.5rem;background:none;border:none;color:var(--on-surface-variant);font-weight:600;padding:.75rem 1rem;border-radius:10px;cursor:pointer;transition:all .2s}.btn-text:hover{background:var(--surface-variant);color:var(--primary)}.btn-nav-primary{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary) 0,var(--primary-variant) 100%);color:var(--on-primary);padding:.75rem 1.5rem;border-radius:12px;font-weight:600;border:none;cursor:pointer;box-shadow:0 4px 12px rgba(76,111,255,.3);transition:all .2s}.btn-nav-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(76,111,255,.4)}.hero{position:relative;z-index:1;padding:6rem 0 8rem;min-height:100vh;display:flex;align-items:center}.hero-container{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#FEF3C7,#FCE7F3);color:#92400E;padding:.5rem 1.25rem;border-radius:999px;font-size:.875rem;font-weight:600;margin-bottom:1.5rem;border:1px solid rgba(245,158,11,.2)}.hero-text h1{font-size:4rem;font-weight:800;line-height:1.1;color:var(--on-background);margin-bottom:1.5rem}.gradient-text{background:linear-gradient(135deg,var(--primary) 0,var(--primary-variant) 100%);-webkit-background-clip:text;background-clip:text}.gradient-text,.gradient-text-alt{-webkit-text-fill-color:transparent}.gradient-text-alt{background:linear-gradient(135deg,var(--gamification-green) 0,var(--secondary) 100%);-webkit-background-clip:text;background-clip:text}.hero-text p{font-size:1.25rem;color:var(--on-surface-variant);margin-bottom:2.5rem;max-width:520px;line-height:1.7}.hero-buttons{display:flex;gap:1rem;margin-bottom:3rem}.btn-hero-primary{display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,var(--on-background) 0,var(--on-surface) 100%);color:var(--surface);padding:1rem 2rem;border-radius:14px;font-weight:700;font-size:1.1rem;border:none;cursor:pointer;box-shadow:0 10px 25px rgba(16,20,38,.15);transition:all .2s}.btn-hero-primary:hover{box-shadow:0 15px 35px rgba(16,20,38,.2)}.btn-hero-secondary{display:flex;align-items:center;gap:.5rem;background:var(--surface);color:var(--primary);padding:1rem 2rem;border-radius:14px;font-weight:600;font-size:1.1rem;border:2px solid var(--outline);cursor:pointer;transition:all .2s}.btn-hero-secondary:hover{border-color:var(--primary);background:var(--primary-container)}.hero-visual{position:relative;display:flex;justify-content:center}.phone-mockup{width:280px;background:linear-gradient(135deg,#1F2937,#111827);border-radius:40px;padding:12px;box-shadow:0 50px 100px -20px rgba(0,0,0,.25);position:relative}.phone-notch{width:100px;height:24px;background:#111827;border-radius:0 0 20px 20px;margin:0 auto 12px}.phone-screen{background:white;border-radius:28px;padding:1.5rem;min-height:450px}.screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.greeting{font-weight:700;color:#1F2937;font-size:1rem}.xp-badge{display:flex;align-items:center;gap:.25rem;background:#FEF3C7;padding:.35rem .75rem;border-radius:999px;font-size:.75rem;font-weight:700;color:#92400E}.lesson-preview{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.lesson-item{gap:.75rem;padding:.875rem;background:#F9FAFB;border-radius:14px;transition:all .2s}.lesson-icon,.lesson-item{display:flex;align-items:center}.lesson-icon{width:40px;height:40px;border-radius:12px;justify-content:center}.lesson-item.rhythm .lesson-icon{background:linear-gradient(135deg,#EC4899,#DB2777)}.lesson-item.melody .lesson-icon{background:linear-gradient(135deg,#F59E0B,#D97706)}.lesson-item.harmony .lesson-icon{background:linear-gradient(135deg,#22C55E,#16A34A)}.lesson-info{flex:1}.lesson-title{font-size:.85rem;font-weight:600;color:#1F2937;display:block;margin-bottom:.35rem}.lesson-progress{height:4px;background:#E5E7EB;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-tertiary));border-radius:2px}.streak-card{display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,#FEF3C7,#FFEDD5);padding:1rem;border-radius:16px;border:1px solid rgba(245,158,11,.2)}.streak-fire{font-size:2rem}.streak-info{display:flex;flex-direction:column}.streak-days{font-size:1.25rem;font-weight:800;color:#92400E}.streak-label{font-size:.8rem;color:#B45309}.floating-card{position:absolute;background:white;padding:.75rem 1.25rem;border-radius:14px;display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.9rem;box-shadow:0 10px 40px rgba(0,0,0,.12);animation:float 4s ease-in-out infinite}.card-xp{top:15%;right:0;color:#F59E0B;animation-delay:0s}.card-trophy{bottom:20%;left:0;color:#7C3AED;animation-delay:2s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.features-marquee{background:linear-gradient(135deg,var(--primary) 0,var(--primary-variant) 100%);padding:1.25rem 0;overflow:hidden;position:relative;z-index:1}.marquee-track{display:flex;gap:3rem;animation:marquee 30s linear infinite;white-space:nowrap}.marquee-item{color:white;font-weight:700;font-size:1.25rem;text-transform:uppercase;letter-spacing:.05em}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.curriculum{position:relative;z-index:1;padding:8rem 0;background:white}.section-header{text-align:center;max-width:600px;margin:0 auto 4rem}.section-label{display:inline-block;background:linear-gradient(135deg,#EDE9FE,#FCE7F3);color:var(--color-primary);padding:.5rem 1.25rem;border-radius:999px;font-size:.875rem;font-weight:600;margin-bottom:1rem}.section-label.light{background:rgba(255,255,255,.1);color:white}.section-header h2{font-size:2.75rem;color:#111827;margin-bottom:1rem}.section-header p{font-size:1.1rem;color:#6B7280}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.feature-card{background:white;padding:2rem;border-radius:24px;border:1px solid #e5e7eb;text-align:center;transition:all .3s}.feature-card:hover{border-color:transparent;box-shadow:0 20px 50px -10px rgba(0,0,0,.1)}.feature-icon{width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.feature-card h3{font-size:1.25rem;color:#1F2937;margin-bottom:.75rem}.feature-card p{color:#6B7280;line-height:1.6;font-size:.95rem}.schools-section{position:relative;z-index:1;background:linear-gradient(135deg,#1F2937,#111827);padding:6rem 0;overflow:hidden}.schools-container{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.dashboard-mockup{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:20px;overflow:hidden;box-shadow:0 25px 80px -20px rgba(0,0,0,.5);transform:perspective(1000px) rotateY(-5deg) rotateX(3deg)}.mockup-header{background:rgba(255,255,255,.05);padding:1rem;border-bottom:1px solid rgba(255,255,255,.05)}.dots{display:flex;gap:6px}.dot{width:10px;height:10px;border-radius:50%}.dot.red{background:#EF4444}.dot.yellow{background:#F59E0B}.dot.green{background:#22C55E}.mockup-content{padding:1.5rem}.stat-row{display:flex;gap:1rem;margin-bottom:1.5rem}.mini-stat{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:10px;font-size:.85rem;font-weight:600}.mini-stat.purple{background:rgba(124,58,237,.2);color:#A78BFA}.mini-stat.green{background:rgba(34,197,94,.2);color:#4ADE80}.chart-placeholder{display:flex;align-items:flex-end;gap:.75rem;height:120px;padding:1rem;background:rgba(255,255,255,.03);border-radius:12px}.chart-bar{flex:1;background:linear-gradient(to top,var(--color-primary),var(--color-tertiary));border-radius:6px}.schools-content h2{font-size:2.5rem;color:white;margin-bottom:1rem}.schools-content p{color:#9CA3AF;font-size:1.1rem;margin-bottom:2rem;max-width:450px}.benefits-list{list-style:none;display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;padding:0}.benefits-list li{color:#D1D5DB}.benefits-list li,.btn-schools{display:flex;align-items:center;gap:.75rem;font-size:1rem}.btn-schools{background:white;color:#111827;padding:1rem 2rem;border-radius:14px;font-weight:700;border:none;cursor:pointer;transition:all .2s}.btn-schools:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(255,255,255,.1)}.cta-section{position:relative;z-index:1;padding:6rem 0;background:var(--surface)}.cta-card{background:linear-gradient(135deg,var(--primary-container) 0,var(--surface) 100%);border-radius:32px;padding:4rem;text-align:center;border:1px solid var(--outline)}.cta-icon{margin-bottom:1.5rem}.cta-content h2{font-size:2.5rem;color:var(--on-background);margin-bottom:1rem}.cta-content p{font-size:1.1rem;color:var(--on-surface-variant);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}.cta-buttons{display:flex;justify-content:center;gap:1rem}.btn-cta-primary{display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,var(--primary) 0,var(--primary-variant) 100%);color:var(--on-primary);padding:1rem 2rem;border-radius:14px;font-weight:700;border:none;cursor:pointer;box-shadow:0 10px 30px rgba(76,111,255,.3);transition:all .2s}.btn-cta-primary:hover{transform:translateY(-2px);box-shadow:0 15px 40px rgba(76,111,255,.4)}.btn-cta-secondary{background:var(--surface);color:var(--on-surface);padding:1rem 2rem;border-radius:14px;font-weight:600;border:1px solid var(--outline);cursor:pointer;transition:all .2s}.btn-cta-secondary:hover{border-color:var(--primary);color:var(--primary)}.landing-footer{position:relative;z-index:1;background:var(--on-background);color:var(--on-surface-variant);padding:4rem 0 2rem}.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr;gap:4rem;margin-bottom:3rem}.footer-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.footer-logo span{font-size:1.25rem;font-weight:700;color:var(--surface)}.footer-brand p{max-width:300px;line-height:1.7}.footer-links h4{color:var(--surface);font-size:1rem;margin-bottom:1.5rem}.footer-links a{display:block;margin-bottom:.75rem;color:var(--on-surface-variant);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--primary)}.footer-address{display:block;margin-top:1rem;font-size:.9rem}.footer-bottom{border-top:1px solid var(--outline);padding-top:2rem;text-align:center;font-size:.9rem}.footer-company-info{margin-bottom:1rem;padding-bottom:1rem}.footer-company-info p{margin:.25rem 0;font-size:.85rem;color:var(--on-surface-variant)}.footer-company-info .company-name{font-weight:600;color:var(--surface)}.footer-company-info .cnpj{font-family:monospace;font-size:.8rem}.footer-company-info .developer{font-size:.8rem;font-style:italic}.copyright{margin:0;color:var(--on-surface-variant)}@media (max-width:1024px){.hero-container,.schools-container{grid-template-columns:1fr;text-align:center}.hero-text h1{font-size:3rem}.hero-text p{margin-left:auto;margin-right:auto}.hero-buttons{justify-content:center}.hero-visual{order:-1}.features-grid{grid-template-columns:repeat(2,1fr)}.schools-visual{order:2;margin-top:2rem}.schools-content{text-align:center}.schools-content p{margin-left:auto;margin-right:auto}.benefits-list{align-items:center}.footer-content{grid-template-columns:1fr;text-align:center}.footer-brand{display:flex;flex-direction:column;align-items:center}.footer-logo{justify-content:center}}@media (max-width:768px){.hero{padding:3rem 0 4rem}.hero-text h1{font-size:2.25rem}.hero-buttons{flex-direction:column;align-items:stretch}.features-grid{grid-template-columns:1fr}.cta-card{padding:2.5rem 1.5rem}.cta-buttons{flex-direction:column}.phone-mockup{width:240px}.nav-actions .btn-text{display:none}}