@font-face{font-family:Crimson Text;src:url(../fonts/CrimsonText-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}:root{color-scheme:dark light;--bg: #070b0c;--surface: #0e1719;--line: #1f3133;--text: #e9efef;--muted: #a3b3b3;--accent: #3de2dd;--accent-2: #e5e03a;--button-bg: #3de2dd;--button-text: #04201f;--tri-major: #042727;--tri-minor: #333303;--tri-active: #1e8c86;--node-natural: #000;--node-natural-stroke: #aeaf3b;--node-natural-text: #fff;--node-accidental: #f5f5f5;--node-accidental-stroke: #2fa79a;--node-accidental-text: #111;--serif: "Crimson Text", Georgia, "Times New Roman", serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius: 14px;--gutter: 24px}@media(prefers-color-scheme:light){:root{--bg: #f4f5f3;--surface: #fff;--line: #d3dcd9;--text: #1c2424;--muted: #55625e;--accent: #0d6159;--accent-2: #6f6100;--button-bg: #0d6159;--button-text: #fff;--tri-major: #d0ece8;--tri-minor: #ddd8e8;--tri-active: #30b8a8;--node-natural: #fff;--node-natural-stroke: #508060;--node-natural-text: #222;--node-accidental: #222;--node-accidental-stroke: #208878;--node-accidental-text: #fff}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:17px/1.6 var(--sans);overflow-wrap:break-word}img,video,svg{display:block;max-width:100%;height:auto}a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}h1,h2,h3{margin:0;line-height:1.15;text-wrap:balance}h1,h2{font-family:var(--serif);font-style:italic;font-weight:700}h1{font-size:clamp(2.6rem,6.5vw,4.4rem);letter-spacing:-.01em}h2{font-size:clamp(1.9rem,4vw,2.7rem)}h3{font-size:1.2rem}p{margin:0}.wrap{max-width:1160px;margin:0 auto;padding:0 var(--gutter)}.muted{color:var(--muted)}.skip{position:absolute;left:-999px;top:8px;background:var(--surface);padding:8px 12px;border-radius:8px}.skip:focus{left:8px;z-index:10}.site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;padding-bottom:18px}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-weight:650;font-size:1.05rem}.brand img{width:40px;height:40px;border-radius:9px}.site-nav{display:flex;align-items:center;gap:26px;font-size:.95rem}.site-nav a{color:var(--muted);text-decoration:none}.site-nav a:hover{color:var(--text)}.site-nav .nav-cta{color:var(--accent);font-weight:600}.hero{position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='138.564'%3E%3Cpath d='M0 0h80M0 69.282h80M0 0l40 69.282L80 0M0 138.564l40-69.282 40 69.282' fill='none' stroke='%232fa79a' stroke-width='1'/%3E%3C/svg%3E");opacity:.2;-webkit-mask-image:radial-gradient(ellipse 75% 85% at 22% 30%,#000 0%,transparent 72%);mask-image:radial-gradient(ellipse 75% 85% at 22% 30%,#000 0%,transparent 72%)}.hero-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:center;padding-top:44px;padding-bottom:84px}.hero-copy .lede{margin-top:22px;font-size:1.2rem;color:var(--muted);max-width:34em}.hero-copy .lede strong{color:var(--text);font-weight:600}.stores{display:flex;flex-wrap:wrap;align-items:flex-start;gap:22px;margin-top:32px}.store{display:grid;gap:8px;justify-items:start;font-size:.85rem;color:var(--muted)}.store a{display:block;border-radius:8px}.store .apple img{height:48px;width:auto}.store .google img{height:72px;width:auto;margin:-12px}.trial-note{margin-top:22px;font-size:.95rem;color:var(--muted)}.frame{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:0 24px 60px -24px #0000008c}.frame>*{width:100%}.hero-media figcaption{margin-top:12px;font-size:.88rem;color:var(--muted);text-align:center}section{padding:84px 0}.band{background:var(--surface);border-block:1px solid var(--line)}.section-head{max-width:46em;margin-bottom:44px}.section-head p{margin-top:14px;color:var(--muted);font-size:1.1rem}.explain{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:56px;align-items:center}.explain p+p{margin-top:16px}.explain ul{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:10px}.explain li{display:grid;grid-template-columns:2.2rem 1fr;align-items:baseline}.op{font-family:var(--serif);font-style:italic;font-weight:700;color:var(--accent-2);font-size:1.5rem;line-height:1}.lattice{width:100%;max-width:480px;margin:0 auto}.lattice .major{fill:var(--tri-major)}.lattice .minor{fill:var(--tri-minor)}.lattice .active{fill:var(--tri-active)}.lattice .edge{stroke:var(--muted);stroke-width:1;fill:none}.lattice .natural{fill:var(--node-natural);stroke:var(--node-natural-stroke);stroke-width:2}.lattice .accidental{fill:var(--node-accidental);stroke:var(--node-accidental-stroke);stroke-width:2}.lattice text{font-family:var(--sans);text-anchor:middle}.lattice .note{font-size:24px;font-weight:700;dominant-baseline:central}.lattice .note.on-natural{fill:var(--node-natural-text)}.lattice .note.on-accidental{fill:var(--node-accidental-text)}.lattice .chord{font-size:15px;font-weight:600;fill:var(--text)}.lattice .tx{font-family:var(--serif);font-style:italic;font-weight:700;font-size:22px;fill:var(--accent-2)}.feature{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center}.feature+.feature{margin-top:84px}.feature:nth-of-type(2n) .feature-copy{order:2}.feature-copy p{margin-top:14px;color:var(--muted)}.feature-copy h3{font-family:var(--serif);font-style:italic;font-size:1.8rem}.schemes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}.schemes img{border-radius:10px;border:1px solid var(--line);width:100%}.schemes span{display:block;margin-top:8px;font-size:.88rem;color:var(--muted);text-align:center}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin:0;padding:0;list-style:none}.card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}.band .card{background:var(--bg)}.card h3{display:flex;align-items:baseline;gap:12px;font-size:1.05rem}.card h3 .op{font-size:2rem}.card .expansion{font-size:.82rem;color:var(--muted);letter-spacing:.04em;margin-left:auto}.card p{margin-top:10px;color:var(--muted);font-size:.95rem}.card .eg{color:var(--text)}.details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 40px;margin:0;padding:0;list-style:none}.details h3{font-size:1.05rem}.details p{margin-top:6px;color:var(--muted);font-size:.97rem}.download{text-align:center}.download .stores{justify-content:center}.download .store{justify-items:center}.download p.sub{margin:14px auto 0;color:var(--muted);max-width:36em}.site-footer{border-top:1px solid var(--line);padding:32px 0 44px;font-size:.9rem;color:var(--muted)}.site-footer .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 22px}.site-footer a{color:var(--muted)}.site-footer .fine{flex-basis:100%;font-size:.8rem}.legal{max-width:800px;padding-top:28px;padding-bottom:72px}.legal h1{font-size:clamp(2rem,5vw,2.8rem);margin-bottom:8px}.legal h2{margin-top:56px;padding-top:28px;border-top:1px solid var(--line);scroll-margin-top:16px}.legal h3{margin-top:30px;margin-bottom:10px;font-size:1.12rem;scroll-margin-top:16px}.legal p,.legal li{margin-bottom:12px}.legal .meta{color:var(--muted);font-style:italic}.legal .toc{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin:20px 0}.legal .toc ul{margin:6px 0 0;padding-left:20px}.legal .toc li{margin-bottom:4px}.legal .caps{font-weight:600}.legal .top{font-size:.88rem}.notfound{text-align:center;padding:96px 0 120px}.notfound p{margin-top:16px;color:var(--muted)}@media(max-width:960px){.hero-grid,.explain{grid-template-columns:minmax(0,1fr);gap:40px}.hero-grid{padding-top:24px;padding-bottom:64px}.feature{gap:32px}.schemes{grid-template-columns:repeat(3,minmax(0,1fr))}.details{grid-template-columns:repeat(2,minmax(0,1fr))}section{padding:64px 0}}@media(max-width:640px){:root{--gutter: 16px}body{font-size:16px}.site-nav a:not(.nav-cta){display:none}.feature{grid-template-columns:minmax(0,1fr)}.feature:nth-of-type(2n) .feature-copy{order:0}.feature+.feature{margin-top:56px}.schemes{grid-template-columns:repeat(2,minmax(0,1fr))}.details{grid-template-columns:minmax(0,1fr)}.hero-copy .lede{font-size:1.08rem}section{padding:52px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
