[hidden]{display:none!important}
:root{--ink:#173139;--ink-2:#274149;--night:#122b32;--night-deep:#0e2329;--teal:#208f83;--mint:#d6e7db;--orange:#e6a45f;--paper:#f6f5ef;--surface:#fffefa;--line:#e5e5dc;--muted:#697a7b;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #dba057;outline-offset:3px}strong{font-weight:730}.container{max-width:1180px;margin:0 auto;padding:0 28px}.skip-link{position:absolute;top:-100px;left:12px;background:#fff;padding:14px;z-index:40}.skip-link:focus{top:12px}::selection{background:#a9d6cc;color:#173139}
.site-header{height:79px;background:var(--night);color:#f8f7ed;border-bottom:1px solid rgba(255,255,255,.11);position:sticky;top:0;z-index:30;backdrop-filter:blur(12px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:24px;letter-spacing:-1.2px;line-height:1;white-space:nowrap}.brand-accent{font-weight:450;color:#b2cfc4}.brand small{display:block;font-size:8px;font-weight:700;letter-spacing:3.4px;color:#a9c2bd;margin-top:7px}.brand-symbol{width:35px;height:34px;display:flex;align-items:center;gap:3px;transform:rotate(-13deg)}.brand-symbol span{width:5px;border-radius:7px;background:#a9d7c5;display:block}.brand-symbol span:nth-child(1){height:12px}.brand-symbol span:nth-child(2){height:25px;background:#e9b476}.brand-symbol span:nth-child(3){height:34px}.brand-symbol span:nth-child(4){height:18px;background:#e9b476}.main-nav{display:flex;align-items:center;gap:31px;margin-left:auto}.main-nav a{font-size:13px;font-weight:600;color:#cedbd7;transition:color .2s}.main-nav a:hover{color:white}.nav-cta{background:#d7eacb;color:#1e3834;font-size:12px;font-weight:800;padding:13px 17px;border-radius:8px;white-space:nowrap}.nav-cta span{margin-left:10px}
.hero{background:var(--night);color:#fff;position:relative;overflow:hidden}.hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:rgba(255,255,255,.1)}.hero-grid{min-height:568px;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:50px;padding-top:58px;padding-bottom:66px}.eyebrow{display:inline-flex;align-items:center;gap:11px;color:#418c79;font-size:11px;font-weight:850;letter-spacing:2px}.eyebrow.on-dark{color:#b1d4c5}.eyebrow-line{height:1px;width:29px;background:var(--orange)}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,5.4vw,77px);letter-spacing:-3.5px;line-height:1.08;margin:28px 0 22px}.hero h1 em{font-style:italic;color:var(--orange)}.hero h1 span{color:#b9d6c9}.hero-copy>p{color:#c3d2ce;max-width:520px;line-height:1.8;font-size:15px;margin:0 0 29px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;border-radius:9px;border:1px solid transparent;padding:14px 19px;min-height:45px;font-size:13px;font-weight:800;transition:transform .15s,background-color .2s,border .2s}.button:hover:not(:disabled){transform:translateY(-2px)}.button:disabled{opacity:.5;cursor:not-allowed}.button-primary{background:var(--orange);color:#192e31}.button-primary:hover{background:#f6b976}.button-outline-light{color:#f3f7f3;border-color:rgba(255,255,255,.28);background:transparent}.button-outline-light:hover{border-color:#e2c7a6}.hero-foot{font-size:10px;font-weight:800;letter-spacing:1.8px;color:#b2cac3;margin-top:31px}.hero-foot .sparkle{color:var(--orange);font-size:18px;vertical-align:middle}.hero-foot .dot{margin:0 11px;color:#73938e}.hero-art{position:relative;min-height:430px;display:grid;place-items:center}.halo{border:1px solid rgba(210,237,227,.12);border-radius:50%;position:absolute;width:510px;height:510px}.halo-one{transform:scale(1.05)}.halo-two{transform:scale(.8);border-style:dashed}.hero-card{z-index:2;background:#f3f5ed;transform:rotate(-5deg);border:1px solid #d7e3df;border-radius:18px;color:var(--ink);width:min(100%,465px);padding:25px 26px 26px;box-shadow:0 38px 75px rgba(3,13,17,.35)}.hero-card-top{display:flex;align-items:center;justify-content:space-between;font-weight:850;font-size:10px;letter-spacing:1.5px;color:#637d7a}.card-speaker{font-size:24px;color:var(--teal)}.hero-staff{margin:16px -8px 3px}.hero-staff svg{width:100%;display:block}.hero-card-bottom{border-top:1px solid #d7dfd8;padding-top:20px;display:flex;align-items:end;justify-content:space-between}.hero-card-bottom small{font-size:9px;letter-spacing:1.5px;color:#7a8a88;display:block;font-weight:800}.hero-card-bottom strong{font-size:30px;letter-spacing:-1px;display:block;margin-top:3px;font-family:var(--serif);font-weight:500}.interval-pill{background:#d9ebe4;color:#246b61;border-radius:40px;font-weight:800;font-size:11px;padding:10px 13px}.float-note{position:absolute;font-size:48px;color:var(--orange);z-index:3}.note-a{right:7%;top:3%;transform:rotate(18deg)}.note-b{left:5%;bottom:9%;font-size:37px;color:#a7d1c2;transform:rotate(-19deg)}
.steps{background:#eaf0e8;border-bottom:1px solid #d8e2da}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);padding-top:29px;padding-bottom:28px}.step{padding:0 34px;border-left:1px solid #d4dfd7}.step:first-child{padding-left:0;border-left:0}.step-num{display:block;color:#62887e;font-size:10px;letter-spacing:1.6px;font-weight:850;margin-bottom:9px}.step strong{font-family:var(--serif);font-size:22px;font-weight:500}.step p{color:#5c706c;margin:6px 0 0;font-size:12px;line-height:1.7}.section{padding:93px 0 101px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section-heading h2{font-family:var(--serif);font-weight:400;font-size:clamp(37px,4.4vw,55px);letter-spacing:-2px;line-height:1.12;margin:13px 0 10px}.section-heading h2 span{font-style:italic;color:#368a7b}.section-heading p{font-size:14px;color:#6e7d7b;line-height:1.7;max-width:600px;margin:0}.heading-tag{color:#80908e;font-size:10px;font-weight:850;letter-spacing:1.3px;white-space:nowrap}.heading-tag span{color:var(--orange);font-size:23px;vertical-align:middle}
.lab-panel{background:var(--surface);border:1px solid #e2e3d9;border-radius:17px;overflow:hidden;box-shadow:0 13px 40px rgba(21,50,48,.035)}.lab-toolbar{padding:23px 26px;background:#eef0e9;display:flex;align-items:end;gap:13px}.field{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.field.wide-field{flex:1.5}.field label{color:#647470;font-size:11px;font-weight:800;letter-spacing:.5px}.field select{width:100%;background:#fffefa;color:#243a3c;border:1px solid #d8ddd5;outline:none;border-radius:8px;min-height:45px;padding:0 34px 0 12px;font-size:13px;font-weight:650}.random-button{margin-left:8px;min-height:45px;white-space:nowrap}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#30525a}.lab-body{padding:26px 27px 25px}.lab-view-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.view-tabs{display:inline-flex;gap:6px;padding:5px;border:1px solid #e4e6dd;border-radius:10px;background:#f6f7f1}.view-tab{background:transparent;border:0;border-radius:7px;padding:9px 17px;color:#788681;font-size:12px;font-weight:800}.view-tab.active{background:#fff;color:#284840;box-shadow:0 2px 6px rgba(0,0,0,.065)}.view-help{font-size:11px;color:#8c9891;text-align:right}.keyboard-outer{width:100%;overflow-x:auto;overflow-y:hidden;padding:0 0 2px;scrollbar-color:#ccd9d4 transparent}.piano{width:100%;min-width:750px;height:215px;display:flex;position:relative;touch-action:pan-x;padding:0}.piano-key{position:relative;border:1px solid #c8d0cb;border-bottom:5px solid #dce0d7;border-radius:0 0 6px 6px;background:#fdfefa;flex:1;min-width:0;box-shadow:inset 0 -5px 8px rgba(44,57,58,.025);height:100%;padding:0;outline-offset:-3px}.piano-key .piano-label{position:absolute;bottom:14px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:3px;color:#85938c;font-weight:700;font-size:11px}.piano-key .piano-label small{font-size:9px;font-weight:600}.piano-key.black{position:absolute;top:0;height:59%;width:3.3%;z-index:3;border:1px solid #10242a;border-radius:0 0 5px 5px;background:linear-gradient(120deg,#2e4041,#0c2429);box-shadow:2px 4px 4px rgba(20,40,39,.2);border-bottom:5px solid #10242a}.piano-key.black .piano-label{display:none}.piano-key.root{background:#f1d3aa;border-color:#e6bb80}.piano-key.target{background:#9bdbca;border-color:#55a999}.piano-key.both{background:linear-gradient(110deg,#f1d3aa 50%,#9bdbca 50%);border-color:#8eada0}.piano-key.black.root{background:#cd8b4e}.piano-key.black.target{background:#218f7f}.piano-key.black.both{background:linear-gradient(110deg,#cd8b4e 50%,#218f7f 50%)}.piano-key.root .piano-label,.piano-key.target .piano-label,.piano-key.both .piano-label{color:#143b3e}.key-legend{display:flex;gap:19px;align-items:center;flex-wrap:wrap;font-size:11px;color:#7b8985;margin-top:15px}.key-legend span{display:flex;align-items:center;gap:7px}.key-legend span:last-child{margin-left:auto}.swatch{width:12px;height:12px;border-radius:3px;display:inline-block}.swatch-root{background:#e5ad67}.swatch-target{background:#34a497}.instrument-panel[hidden]{display:none!important}.staff-wrap,.quiz-staff{background:#f8f9f3;border:1px solid #e7eae1;border-radius:11px;padding:16px 10px;min-height:235px;display:grid;place-items:center}.staff-wrap svg,.quiz-staff svg{width:100%;max-width:720px;height:auto;display:block}.instrument-note{font-size:12px;color:#73827e;text-align:center;margin:13px 0 0}.fretboard-scroll{overflow-x:auto;padding-bottom:4px}.fretboard{min-width:760px;position:relative;border:1px solid #b8c4bd;border-radius:8px;overflow:hidden;background:#f0e8d7}.fret-row{display:grid;grid-template-columns:70px repeat(12,minmax(0,1fr));height:56px;border-bottom:1px solid #c9c0aa;position:relative}.fret-row:last-child{border-bottom:0}.fret-cell{position:relative;display:grid;place-items:center;border-left:3px solid rgba(93,103,97,.36);font-size:11px;color:#6f776e;font-weight:750}.fret-cell.open{border-left:0;background:#dfe7dc}.fret-cell:nth-child(2){border-left-width:6px}.fret-row:after{content:'';position:absolute;pointer-events:none;top:50%;left:4px;right:0;height:2px;background:#b7b2a7;box-shadow:0 1px #fff}.fret-dot{position:relative;z-index:2;display:inline-grid;place-items:center;min-width:34px;height:31px;padding:0 5px;border-radius:25px;background:transparent}.fret-dot.root{background:#e5ad67;color:#223c39}.fret-dot.target{background:#66bdb0;color:#123c3b}.fret-dot.both{background:linear-gradient(90deg,#e5ad67 50%,#66bdb0 50%);color:#142b2c}.fret-label-row{display:grid;grid-template-columns:70px repeat(12,minmax(0,1fr));min-width:760px;text-align:center;font-size:10px;color:#798881;margin:7px 0 0}.fret-label-row span:first-child{text-align:left;padding-left:11px}.lab-results{background:#f1f4ed;border-top:1px solid #e3e7dd;border-bottom:1px solid #e3e7dd;padding:22px 28px;display:flex;align-items:center;gap:30px}.result-main{min-width:175px;flex:1.25}.result-main small,.result-stat small{font-size:10px;color:#81928b;letter-spacing:1.25px;font-weight:850;display:block}.result-main strong{font-family:var(--serif);font-size:29px;display:block;font-weight:500;letter-spacing:-.6px;margin:2px 0 3px}.result-main>span{font-size:12px;color:#627670}.result-stat{min-width:95px;flex:.5}.result-stat strong{font-size:25px;display:block;white-space:nowrap;margin-top:8px}.result-stat strong span:last-child{font-size:11px;font-weight:650;color:#6b8079}.lab-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.button-sound{background:var(--teal);color:white}.button-sound:hover{background:#227a72}.button-subtle{background:white;border-color:#d9dfd7;color:#526a63}.lab-explanation{padding:15px 27px;color:#587069;font-size:13px;line-height:1.7}.lab-explanation strong{color:#294b46}.tip-note{display:flex;align-items:flex-start;gap:13px;margin-top:21px}.tip-icon{color:var(--teal);font-size:25px}.tip-note p{color:#73837c;font-size:12px;line-height:1.8;margin:2px 0 0}.tip-note strong{color:#264c43}
.theory-section{background:#f0f0e9;border-top:1px solid #e9e9e0}.lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lesson-card{position:relative;padding:30px;background:var(--surface);border-radius:14px;border:1px solid #e1e5dc;min-height:284px}.lesson-icon{position:absolute;right:25px;top:22px;background:#dce9db;color:#2b7667;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:850}.lesson-icon.orange{background:#f6e5cd;color:#af7a34}.card-kicker{font-size:10px;letter-spacing:1.6px;color:#529181;font-weight:850}.lesson-card h3{font-family:var(--serif);font-size:27px;font-weight:500;letter-spacing:-.6px;margin:11px 0 10px}.lesson-card p{max-width:440px;color:#6a7b76;font-size:13px;line-height:1.75}.example-strip{display:flex;align-items:center;gap:10px;margin:21px 0 6px}.example-strip span{background:#e6f0e9;padding:10px 17px;border-radius:6px;color:#2a6b5f;font-weight:850;font-size:12px}.example-strip b{color:#a2aca7}.example-strip em{margin-left:auto;background:#2b7770;color:white;font-size:12px;padding:8px 12px;border-radius:50px;font-weight:800;font-style:normal}.lesson-card .lesson-caption{font-size:11px;color:#8a9891}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.comparison>div{padding:14px;background:#f5f6f0;border:1px solid #e8ebe5;border-radius:8px}.comparison span,.comparison strong,.comparison small{display:block}.comparison span{color:#4d6f68;font-size:11px;font-weight:800}.comparison strong{font-family:var(--serif);font-size:20px;font-weight:500;margin:6px 0}.comparison small{font-size:10px;color:#81928c}.reference{background:var(--surface);border:1px solid #e1e5dc;border-radius:15px;margin-top:25px;overflow:hidden}.reference-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:27px 30px 23px}.reference-head h3{font-size:29px;font-family:var(--serif);font-weight:500;margin:8px 0 6px}.reference-head p{color:#83908b;font-size:12px;margin:0}.button-print{background:#f0f3ed;border-color:#dce3da;color:#385b50;white-space:nowrap}.table-wrap{overflow-x:auto}.reference table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:12px}.reference thead{background:#e9eee8}.reference th{color:#55776c;font-weight:850;font-size:10px;letter-spacing:1.1px;padding:16px 30px}.reference td{padding:12px 30px;border-top:1px solid #ebeee7;color:#50615d}.reference td:first-child{font-weight:750;color:#243d3b}.reference td:nth-child(2){font-size:15px;color:#267d70;font-weight:850}.reference td:nth-child(4){font-size:11px;color:#879991}.reference tbody tr:hover{background:#f4f8f3}.reference-foot{background:#f0f4ed;padding:15px 30px;font-size:12px;line-height:1.7;color:#70847b}.reference-foot strong{color:#28544b}.mini-lessons{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.mini-lessons article{border-top:1px solid #c7d4ca;padding-top:18px}.mini-lessons article>span{font-size:30px;color:#b98b4d}.mini-lessons h3{font-family:var(--serif);font-size:22px;font-weight:500;margin:10px 0 7px}.mini-lessons p{font-size:12px;line-height:1.75;color:#73837d;margin:0}
.practice-section{background:var(--night);color:#f0f6ef}.light-heading h2 span{color:var(--orange)}.light-heading p{color:#b6cac3}.dark-tag{color:#91aba2}.practice-card{background:#f9faf5;color:var(--ink);border-radius:16px;overflow:hidden}.practice-config{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#e9f0e8;padding:20px 25px}.practice-mode{background:#dce6dd;padding:5px;border-radius:9px;display:flex;gap:3px}.mode-button{border:0;padding:11px 16px;border-radius:7px;background:transparent;font-size:13px;color:#587169;font-weight:850;display:flex;gap:10px;align-items:center}.mode-button.active{background:#fffefa;color:#1c6158;box-shadow:0 2px 7px rgba(0,0,0,.07)}.difficulty{max-width:300px}.practice-question{padding:28px 34px 30px}.question-meta{display:flex;justify-content:space-between;gap:20px;align-items:center}.question-number{color:#469382;font-size:10px;font-weight:850;letter-spacing:1.6px}.score-meta{display:flex;align-items:center;gap:15px;color:#7c8c85;font-size:11px;font-weight:750}.streak-display{background:#e5f1e9;color:#2c8b77;border-radius:30px;padding:8px 10px}.practice-question h3{font-size:27px;font-family:var(--serif);font-weight:500;letter-spacing:-.4px;text-align:center;margin:30px 0 5px}.practice-question>p{text-align:center;color:#8b968f;font-size:12px;margin:0}.sound-display{display:flex;align-items:center;flex-direction:column;gap:14px;margin:29px auto 25px;padding:24px;background:#f0f4ed;border-radius:12px;max-width:720px}.sound-symbol{display:flex;align-items:center;gap:5px;height:54px}.sound-symbol i{height:12px;width:5px;background:#5fa99a;border-radius:8px;opacity:.7}.sound-symbol i:nth-child(2),.sound-symbol i:nth-child(8){height:28px}.sound-symbol i:nth-child(3),.sound-symbol i:nth-child(7){height:39px}.sound-symbol i:nth-child(4),.sound-symbol i:nth-child(6){height:24px}.sound-symbol i:nth-child(5){height:49px}.sound-symbol.playing i{animation:wave .48s ease-in-out infinite alternate}.sound-symbol.playing i:nth-child(2n){animation-delay:-.23s}.sound-symbol.playing i:nth-child(3n){animation-delay:-.13s}@keyframes wave{to{height:10px}}.sound-display small{font-size:10px;color:#8c9c94}.quiz-staff{max-width:720px;margin:28px auto 24px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:11px;max-width:720px;margin:0 auto}.answer-option{border:1px solid #dce5dd;background:#fff;border-radius:8px;text-align:left;padding:16px 18px;font-size:13px;font-weight:750;color:#314f48;display:flex;align-items:center;gap:14px;transition:background .15s,border .15s}.answer-option:hover:not(:disabled){border-color:#8cbaab;background:#f3f9f4}.answer-option .answer-letter{color:#91aaa0;font-weight:850}.answer-option.correct{border-color:#78bfa6;background:#def4e8;color:#1c6d4d}.answer-option.incorrect{border-color:#e3a28d;background:#fbe8e1;color:#a04d3b}.answer-option:disabled{cursor:default}.feedback{margin:16px auto 0;max-width:720px;padding:14px 16px;border-radius:8px;font-size:12px;line-height:1.6;background:#e5f3e9;color:#216c51}.feedback.bad{background:#fff0e8;color:#98513f}.question-actions{max-width:720px;margin:23px auto 0;display:flex;justify-content:space-between;align-items:center;gap:12px}.question-help{font-size:11px;color:#84948c}.practice-footer{margin:22px 0 0;display:flex;align-items:center;gap:12px;color:#a8c2b9}.practice-footer-icon{font-size:27px;color:var(--orange)}.practice-footer p{font-size:11px;line-height:1.7;margin:0}.practice-footer strong{color:#d6e5dc}
.resources-section{background:var(--paper)}.resources-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.daily-plan{background:#e4ede5;border:1px solid #dce7dd;border-radius:14px;padding:33px}.daily-plan h3{font-family:var(--serif);font-size:35px;line-height:1.15;font-weight:500;letter-spacing:-1px;margin:15px 0 24px}.timeline{border-left:1px solid #a5c6b7;margin-left:32px}.timeline>div{display:grid;grid-template-columns:65px 1fr;gap:13px;position:relative;margin-left:-34px;margin-bottom:21px}.timeline>div:last-child{margin-bottom:0}.timeline>div:before{content:'';width:7px;height:7px;border:3px solid #e4ede5;background:#2d9582;outline:1px solid #2d9582;border-radius:50%;position:absolute;left:27px;top:8px}.timeline time{color:#3e8879;font-size:10px;font-weight:850;padding-top:7px;margin-left:47px;white-space:nowrap}.timeline p{margin:0 0 0 45px;color:#627970;font-size:12px;line-height:1.7}.timeline strong{color:#244d42;font-size:13px}.resource-links{display:grid;gap:12px}.resource-links>a{background:var(--surface);border:1px solid #e2e6dc;border-radius:12px;padding:23px;display:flex;align-items:start;gap:18px;transition:transform .2s,border-color .2s}.resource-links>a:hover{transform:translateY(-3px);border-color:#8db3a1}.resource-mark{width:50px;height:50px;border-radius:12px;background:#edf3eb;display:grid;place-items:center;flex-shrink:0;font-family:var(--serif);font-size:25px;color:#3d8b7e}.resource-links>a>div{flex:1}.resource-links small{font-size:9px;color:#6e9b8b;letter-spacing:1px;font-weight:850}.resource-links strong{display:block;font-family:var(--serif);font-size:21px;font-weight:500;margin:6px 0}.resource-links p{color:#82918a;font-size:12px;line-height:1.65;margin:0}.link-arrow{color:#528b7c;font-size:23px}.faq{display:grid;grid-template-columns:.65fr 1.35fr;gap:50px;margin-top:69px;border-top:1px solid #d6ded5;padding-top:38px}.faq h3{font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.2}.faq-list details{border-bottom:1px solid #dce3db;padding:19px 0}.faq-list summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:23px;color:#539887;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:#6f8279;font-size:13px;line-height:1.8;max-width:620px;margin:11px 28px 0 0}.site-footer{background:#10262d;color:#f4f7ef;padding:44px 0}.footer-inner{display:flex;align-items:end;justify-content:space-between;gap:30px}.footer-logo{font-weight:850;font-size:27px;letter-spacing:-1px}.footer-logo span{color:#b3d0c3;font-weight:450}.footer-logo b{color:var(--orange);margin-left:10px}.footer-inner p{font-size:12px;color:#a0b9b0}.footer-right{text-align:right;display:flex;flex-direction:column;gap:12px;font-size:10px;letter-spacing:.9px;color:#8daaa1;font-weight:800}.footer-right a{color:#d5e4dc}
@media(max-width:1000px){.hero-grid{gap:20px}.hero h1{font-size:clamp(45px,5.8vw,65px)}.lab-results{flex-wrap:wrap}.lab-actions{margin-left:auto}.lab-toolbar{flex-wrap:wrap}.lab-toolbar .field{min-width:160px}.random-button{margin-left:0}.view-help{display:none}.timeline p{margin-left:37px}.timeline time{margin-left:40px}}
@media(max-width:760px){.container{padding:0 19px}.site-header{height:67px}.main-nav{display:none}.brand{font-size:22px}.nav-cta{font-size:11px;padding:12px}.hero-grid{grid-template-columns:1fr;gap:0;padding-top:56px;padding-bottom:55px;min-height:unset}.hero h1{font-size:clamp(45px,10vw,68px);letter-spacing:-2.5px}.hero-copy>p{max-width:600px}.hero-art{min-height:330px;margin-top:20px}.hero-card{max-width:390px}.halo{width:360px;height:360px}.float-note{font-size:34px}.step-grid{grid-template-columns:1fr;gap:20px;padding-top:25px;padding-bottom:27px}.step{border-left:0;padding:0;display:grid;grid-template-columns:105px 1fr;gap:0 13px;align-items:baseline}.step-num{grid-row:span 2}.step strong{font-size:20px}.step p{margin-top:2px}.section{padding:66px 0 70px}.section-heading{align-items:start}.heading-tag{display:none}.lab-toolbar{padding:18px;gap:10px}.lab-toolbar .field{min-width:calc(50% - 5px)}.lab-toolbar .wide-field{flex:1.5}.lab-body{padding:20px 17px}.view-tabs{width:100%;justify-content:space-between}.view-tab{padding:9px 10px}.lab-results{padding:18px;gap:18px}.result-main{flex-basis:100%}.result-stat{flex:1}.lab-actions{flex-basis:100%;margin:0}.lab-actions .button{flex:1}.lab-explanation{padding:15px 19px}.lesson-grid,.resources-layout,.faq{grid-template-columns:1fr}.mini-lessons{grid-template-columns:1fr;gap:18px}.mini-lessons article{padding-top:15px}.practice-config{flex-wrap:wrap;padding:17px}.difficulty{max-width:none;width:100%}.practice-mode{width:100%}.mode-button{flex:1;justify-content:center}.practice-question{padding:23px 18px}.score-meta{gap:8px}.score-meta .streak-display{padding:6px}.question-actions{align-items:stretch;flex-direction:column}.question-help{text-align:center}.reference-head{padding:23px 18px;flex-wrap:wrap}.reference th,.reference td{padding-left:18px;padding-right:18px}.faq{gap:2px;margin-top:52px}.footer-inner{align-items:start;flex-direction:column}.footer-right{text-align:left}}
@media(max-width:480px){.hero h1{font-size:45px}.hero-actions .button{flex:1;gap:8px;padding:13px 12px}.hero-foot{font-size:8px;letter-spacing:1px}.hero-foot .dot{margin:0 5px}.hero-card{padding:18px}.hero-card-bottom strong{font-size:26px}.hero-art{min-height:300px}.step{grid-template-columns:90px 1fr}.step-num{font-size:9px}.section-heading h2{font-size:37px}.lab-toolbar .field{min-width:calc(50% - 5px)}.lab-toolbar .wide-field{flex-basis:100%}.random-button{width:100%}.view-tab{font-size:10px;padding:10px 7px}.piano{min-width:650px;height:185px}.key-legend span:last-child{margin-left:0}.result-main strong{font-size:27px}.result-stat strong{font-size:23px}.lab-actions{flex-direction:column}.lab-actions .button{width:100%}.lesson-card{padding:23px}.answers{gap:8px}.answer-option{padding:13px 10px;gap:7px;font-size:12px}.score-meta{flex-direction:column;align-items:end}.practice-question h3{font-size:24px}.daily-plan{padding:24px}.timeline{margin-left:24px}.timeline>div{margin-left:-27px}.timeline>div:before{left:20px}.timeline time{margin-left:30px}.timeline p{margin-left:30px}.resource-links>a{padding:17px;gap:11px}.resource-mark{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sound-symbol.playing i{animation:none}.button,.resource-links>a{transition:none}}
@media print{body.print-reference *{visibility:hidden!important}body.print-reference #chuleta,body.print-reference #chuleta *{visibility:visible!important}body.print-reference #chuleta{position:absolute;left:0;top:0;width:100%;margin:0;border:0;box-shadow:none}body.print-reference #chuleta .button-print{display:none!important}body.print-reference .reference th,body.print-reference .reference td{padding:6px 12px;font-size:10px}body.print-reference .reference-head{padding:10px}body.print-reference .reference-foot{font-size:11px;padding:10px}body.print-reference table{white-space:normal}body.print-reference{background:white}@page{size:A4;margin:12mm}}
