@font-face{font-family:Bricolage;src:url('/assets/BricolageGrotesque.ttf');font-display:swap}
@font-face{font-family:Instrument;src:url('/assets/InstrumentSans.ttf');font-display:swap}
:root{--paper:#f7f6ee;--ink:#272f28;--muted:#5b6358;--rust:#c4482d;--line:#c4c9b8;--teal:#1e6e6e;--butter:#f6d97d;--seafoam:#c5e3d4;--lilac:#dbd1ef}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1.125rem/1.6 Instrument,system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}header,main,footer{max-width:1160px;margin:auto;padding:28px 32px}header{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{font:700 1.75rem/1 Bricolage,serif;text-decoration:none}.brand span{color:var(--rust)}nav,footer div{display:flex;gap:28px;flex-wrap:wrap}nav a,footer a{font-size:1rem}h1,h2,h3{font-family:Bricolage,serif;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,6vw,5.3rem);font-weight:700;margin:22px 0 28px}h1 em{font-style:normal;color:var(--teal)}h2{font-size:clamp(2rem,4vw,3.2rem);margin:0 0 24px}h3{font-size:1.65rem;margin:16px 0}p{max-width:70ch;color:var(--muted)}.hero{padding-block:48px 72px;display:grid;grid-template-columns:1.08fr 1fr;gap:48px;align-items:center}.hero-copy>p{max-width:33ch}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:600}.tag{display:inline-flex;align-items:center;background:var(--seafoam);padding:6px 12px;border-radius:50px;letter-spacing:.07em}.pill{display:inline-block;background:var(--ink);color:var(--paper);padding:13px 23px;border-radius:100px;text-decoration:none;font-weight:600}.status{font-size:.875rem;margin-top:18px}.score{background:var(--butter);border-radius:30px;padding:30px;box-shadow:0 12px 0 #272f280b;transform:rotate(-2deg)}.score>*{transform:rotate(2deg)}.demo-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}.demo-heading p{font-size:.875rem;line-height:1.3;color:var(--ink);margin:0}.demo-label{background:var(--paper);padding:5px 10px;border-radius:30px;font-size:.875rem;font-weight:600}.score svg{width:100%;height:auto;display:block;margin:16px 0}.diagram-grid{stroke:var(--ink);stroke-opacity:.17;stroke-dasharray:2 6}.phrase-path{stroke:var(--teal);stroke-width:3;fill:none;stroke-linecap:round}.phrase-note{fill:var(--teal)}.changed-note{fill:var(--rust)}.note-label{font:600 20px Instrument,system-ui;fill:var(--ink)}.pads{display:flex;gap:10px;margin-bottom:20px}.pad{background:var(--paper);border-radius:15px;flex:1;padding:13px;text-align:center;font:600 1.75rem Bricolage;color:var(--ink);border:2px solid transparent}.pad.changed{border-color:var(--rust);color:var(--rust)}.demo-note{font-size:.8rem;margin:14px 0 0;color:var(--ink);line-height:1.5;min-height:2.4em}.demo-toggle{width:100%;font-size:.875rem;background:var(--paper);color:var(--ink);border:1px solid #272f2830;padding:11px 16px;border-radius:100px;min-height:44px}.section-heading{max-width:700px;margin-top:24px}.section-heading>p{margin-bottom:30px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 78px}.grid article{border-radius:24px;padding:27px;background:var(--seafoam)}.grid article:nth-child(2){background:#f0d2c5}.grid article:nth-child(3){background:var(--lilac)}.grid p{font-size:1rem;margin-bottom:0;color:#40483e}.step-number{display:inline-flex;align-items:center;justify-content:center;min-height:42px;min-width:42px;border-radius:50%;font:600 1.25rem Bricolage;background:#f7f6eea8}.skill-strip{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 36px}.skill-strip span{padding:7px 13px;border:1px solid var(--line);border-radius:50px;font-size:.875rem}.play-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:45px;border-block:1px solid var(--line);padding:52px 0}.play-section h2{margin-top:15px}.sketch{background:var(--lilac);border-radius:26px;padding:25px}.sketch svg{width:100%;display:block;margin:18px 0}.sketch .eyebrow{color:var(--ink)}.voices{display:flex;flex-wrap:wrap;gap:7px}.voices span{background:var(--paper);padding:5px 10px;border-radius:50px;font-size:.8rem}.pro{background:var(--ink);color:var(--paper);border-radius:26px;padding:36px 40px;margin-top:64px}.pro h2{margin-top:0}.pro p{color:#d3d9ca}.pro .eyebrow{color:var(--butter);margin-bottom:16px}.legal{max-width:800px;padding-top:54px}.legal h1{font-size:clamp(2.75rem,6vw,3.7rem)}.legal h2{font-size:1.65rem;margin-top:36px}.legal li{margin:10px 0;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-weight:600;min-height:32px}footer{border-top:1px solid var(--line);display:flex;gap:35px;justify-content:space-between;align-items:center;margin-top:70px}footer small{font-size:.8rem;color:var(--muted)}input{font:inherit;background:#fffef9;padding:14px;border:1px solid var(--line);border-radius:12px;max-width:100%;width:440px}button{cursor:pointer;font:inherit;background:var(--ink);color:var(--paper);padding:14px 22px;border:0;border-radius:12px;min-height:44px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--rust);outline-offset:4px}.hidden{display:none}.skip{position:absolute;top:8px;left:16px;transform:translateY(-200%);background:var(--ink);color:var(--paper);padding:8px 16px;z-index:4}.skip:focus{transform:none}#message{min-height:3.2em}.legal .challenge-intro{padding:18px 22px;background:var(--seafoam);border-radius:18px;color:var(--ink)}
@media(max-width:780px){header,main,footer{padding:22px}.hero{grid-template-columns:1fr;gap:36px;padding-block:26px 60px}.hero-copy>p{max-width:48ch}.score{max-width:510px;width:100%;margin:auto}.grid{gap:12px}.grid article{padding:20px}.grid h3{font-size:1.4rem}.play-section{gap:24px}.pro{padding:28px}.legal{padding-top:40px}footer{align-items:flex-start;flex-direction:column}}
@media(max-width:570px){nav{gap:16px}.brand{font-size:1.5rem}nav a{font-size:.875rem}.grid,.play-section{grid-template-columns:1fr}.grid{margin-bottom:45px;gap:16px}.grid h3{font-size:1.7rem}.grid article{padding:25px}.play-section{padding-block:36px}.score{padding:23px;border-radius:24px}.demo-heading{align-items:flex-start}.demo-label{font-size:.8rem}.pro{margin-top:40px}.skill-strip{gap:7px}.skill-strip span{font-size:.8rem}footer div{gap:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
