/* calmjam.com: "The Jam Amp". Tweed, black tolex, brass and amber lamp light. Written from scratch. */
@font-face{font-family:"Shrikhand";src:url(/fonts/shrikhand.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Oswald";src:url(/fonts/oswald.woff2) format("woff2");font-weight:200 700;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url(/fonts/hanken.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--tan:#D6BC82;--tanD:#A98B52;--brown:#6E4A22;--walnut:#2A1B10;--cream:#EBDDBA;--paper:#FFFBEF;--tolex:#1B1613;--tolex2:#2C241D;--brass:#C9A24B;--brassL:#EBCF7E;--brassD:#8A6D2B;--amber:#E0861B;--amberL:#FFB347;--red:#B3342B;--c:#E0861B;
--sh:"Shrikhand",Georgia,serif;--lab:"Oswald","Arial Narrow",sans-serif;--body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:400 1.04rem/1.62 var(--body);color:var(--walnut);background-color:var(--cream);background-image:repeating-linear-gradient(0deg,rgba(110,74,34,.07) 0 1px,transparent 1px 5px),repeating-linear-gradient(90deg,rgba(110,74,34,.07) 0 1px,transparent 1px 5px);padding-bottom:112px;overflow-x:hidden}
img{max-width:100%;height:auto}a{color:inherit}
.wrap{width:min(1180px,100% - 40px);margin-inline:auto}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;background:var(--brassL);border:2px solid var(--walnut);padding:.5em 1em;border-radius:8px;z-index:100;font-weight:700}.skip:focus{top:10px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
h1,h2,h3{font-family:var(--sh);font-weight:400;line-height:1.08;margin:0}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em}
/* header: tweed band with a brass nameplate */
.top{position:sticky;top:0;z-index:40;background-color:var(--tan);background-image:repeating-linear-gradient(90deg,transparent 0 17px,rgba(110,74,34,.55) 17px 19px,transparent 19px 23px,rgba(110,74,34,.55) 23px 25px,transparent 25px 42px),repeating-linear-gradient(0deg,rgba(255,255,255,.1) 0 1px,rgba(0,0,0,.06) 1px 2px)}
.top-in{display:flex;align-items:center;gap:18px;min-height:74px}
.pipe{height:7px;background:linear-gradient(#EBCF7E,#C9A24B 45%,#8A6D2B);border-top:2px solid #3b2a14;border-bottom:3px solid #1B1613}
.mark{display:flex;align-items:center;gap:12px;text-decoration:none}.lg{width:46px;height:46px;flex:none;filter:drop-shadow(0 3px 0 rgba(0,0,0,.35))}
.plate{background:linear-gradient(180deg,#F5DD8E,#C9A24B 55%,#A5822F);border:2px solid var(--brown);border-radius:9px;padding:.14em .9em .22em;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 3px 0 rgba(0,0,0,.35);position:relative}
.plate::before,.plate::after{content:"";position:absolute;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#d9d4c8,#5c564b);box-shadow:0 0 0 1px rgba(0,0,0,.4)}.plate::before{left:6px}.plate::after{right:6px}
.wm{font:400 1.6rem/1.2 var(--sh);color:var(--walnut);text-shadow:0 1px 0 rgba(255,255,255,.55);padding:0 .5em;display:block;white-space:nowrap}
.nav{display:flex;gap:6px;margin-left:auto}.nav a{font:500 .8rem/1 var(--lab);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:#F1E5C6;background:var(--tolex);border:1.5px solid var(--brass);border-radius:6px;padding:.8em 1em;box-shadow:0 3px 0 rgba(0,0,0,.4)}
.nav a:hover{background:var(--tolex2)}.nav a[aria-current]{color:var(--tolex);background:var(--amberL);border-color:var(--brown)}
.menu{display:none;margin-left:auto}.menu summary{list-style:none;width:48px;height:44px;border:1.5px solid var(--brass);border-radius:8px;background:var(--tolex);display:grid;place-content:center;gap:6px;cursor:pointer}.menu summary::-webkit-details-marker{display:none}.menu summary span{display:block;width:22px;height:2.5px;background:var(--brassL);border-radius:2px}
.menu-p{position:absolute;right:16px;top:78px;background:var(--tolex);border:2px solid var(--brass);border-radius:12px;padding:8px;min-width:230px;box-shadow:0 12px 30px rgba(0,0,0,.4)}.menu-p nav{display:grid}.menu-p a{padding:.85em 1em;text-decoration:none;color:#F1E5C6;font:500 .84rem var(--lab);letter-spacing:.16em;text-transform:uppercase;border-radius:8px}.menu-p a:hover,.menu-p a[aria-current]{background:var(--tolex2);color:var(--amberL)}
/* buttons, cards */
.btn{display:inline-flex;align-items:center;gap:.6em;font:500 .86rem/1 var(--lab);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:1.5px solid var(--brown);border-radius:8px;padding:1em 1.4em;cursor:pointer;color:var(--tolex);background:var(--paper);box-shadow:0 4px 0 rgba(42,27,16,.55);transition:transform .1s,box-shadow .1s;white-space:nowrap}
.btn svg{width:.95em;height:.95em;fill:currentColor}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 0 rgba(42,27,16,.55)}.btn:active{transform:translateY(3px);box-shadow:0 1px 0 rgba(42,27,16,.55)}
.btn.brass{background:linear-gradient(180deg,#F5DD8E,#D2AA50 60%,#B88F37)}.btn.dark{background:var(--tolex);color:#F1E5C6;border-color:var(--brass)}.btn.big{font-size:.95rem;padding:1.15em 1.7em}.btn.sm{padding:.8em 1.1em;font-size:.76rem}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}
.card{background:var(--paper);border:1.5px solid var(--brown);border-radius:14px;box-shadow:0 5px 0 rgba(42,27,16,.4);padding:22px 24px;margin:0 0 22px}.card h2{font-size:1.4rem;margin-bottom:.5em}.card p{margin:.4em 0}.card.wide{margin-top:22px}.card.dk{background:var(--tolex);color:#F1E5C6;border-color:var(--brass)}.card.dk h2{color:var(--brassL)}
.card.credit code{display:block;background:var(--tolex);color:var(--amberL);border-radius:8px;padding:.9em 1em;margin:.3em 0 .9em;line-height:1.5;font-size:.8rem}
.dotl{list-style:none;margin:.4em 0;padding:0}.dotl li{position:relative;padding:.3em 0 .3em 1.5em}.dotl li::before{content:"";position:absolute;left:0;top:.75em;width:.6em;height:.6em;border-radius:50%;background:var(--amber);box-shadow:0 0 0 2px rgba(224,134,27,.3)}.dotl.yes li::before{background:#5C8A3A;box-shadow:0 0 0 2px rgba(92,138,58,.3)}.dotl.no li::before{background:#E0614F;box-shadow:0 0 0 2px rgba(224,97,79,.3)}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.note{font-size:.88rem;opacity:.85;margin:1.2em 0;max-width:80ch}
.eyebrow,.k{font:500 .8rem/1 var(--lab);letter-spacing:.22em;text-transform:uppercase;color:var(--brown);margin:0 0 1em}
.eyebrow{display:inline-block;background:var(--tolex);color:var(--amberL);padding:.8em 1.1em;border-radius:6px;border:1.5px solid var(--brass)}
.lead{font-size:1.22rem;line-height:1.55;max-width:60ch;font-weight:500}
.sec{font-size:clamp(1.8rem,3.6vw,2.6rem);margin:1.4em 0 .5em}
.sechead{margin-bottom:26px}.sechead h2{font-size:clamp(2rem,4.2vw,3.1rem)}.sechead p:not(.k){max-width:62ch;margin:.6em 0 0}
/* hero + amp */
.hero{padding:52px 0 36px}.herogrid{display:grid;grid-template-columns:1fr 560px;gap:38px;align-items:center}
.hero h1{font-size:clamp(3rem,6.4vw,5.6rem);line-height:1.02;margin:0 0 .35em;color:var(--walnut)}.hero h1 em{font-style:normal;color:var(--amber);text-shadow:0 3px 0 rgba(42,27,16,.25)}
.cta{display:flex;flex-wrap:wrap;gap:16px;margin:28px 0}
.amp{background-color:var(--tolex);background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1.4px);background-size:5px 5px;color:#F1E5C6;border-radius:16px;border:3px solid var(--brass);box-shadow:0 0 0 5px var(--tolex),0 0 0 7px var(--brassD),0 22px 40px -10px rgba(42,27,16,.6);padding:0 0 18px;overflow:hidden;position:relative}
.amp-top{display:flex;align-items:center;gap:14px;padding:12px 18px;background:linear-gradient(180deg,#F5DD8E,#C9A24B 55%,#A5822F);color:var(--walnut);border-bottom:3px solid var(--tolex)}
.amp-name{font:400 1.5rem/1 var(--sh)}.amp-name i{font-style:normal;font-size:.7em;letter-spacing:.06em;margin-left:.2em}.jacks{margin-left:auto;display:flex;gap:10px}.jacks i{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#aaa,#222 60%);border:2px solid #4a3a1b;box-shadow:inset 0 0 0 3px #111}
.lamp{width:14px;height:14px;border-radius:50%;background:#5a3b12;border:2px solid #2A1B10;box-shadow:inset 0 1px 2px rgba(0,0,0,.6);flex:none;display:block;transition:.25s}.lamp.big{width:22px;height:22px;margin-left:6px}.lamp.lit,body.playing .lamp{background:radial-gradient(circle at 40% 35%,#fff2c2,#FFB347 45%,#E0861B);box-shadow:0 0 12px 3px rgba(255,179,71,.85),inset 0 0 3px #fff}
.amp-body{padding:18px 18px 0;display:grid;gap:18px}
.amp-disp{display:grid;grid-template-columns:132px 1fr;gap:16px;align-items:stretch}.amp-disp img{width:132px;height:132px;object-fit:contain;background:#241b14;border:3px solid var(--brass);border-radius:8px}
.lcd{background:#150E08;border:2px solid #000;border-radius:8px;box-shadow:inset 0 0 18px rgba(255,150,40,.12),inset 0 2px 6px #000;padding:10px 14px;display:grid;align-content:space-between;gap:4px;min-width:0}
.kl{font:500 .68rem/1 var(--lab);letter-spacing:.2em;text-transform:uppercase;color:var(--brassL);display:block}
.lcd select{width:100%;margin:2px 0 4px;background:#150E08;color:var(--amberL);border:1px solid rgba(235,207,126,.35);border-radius:5px;padding:.4em .5em;font:500 .85rem var(--body)}
#amp-t{font:500 1.3rem/1.15 var(--lab);color:var(--amberL);letter-spacing:.04em;text-shadow:0 0 10px rgba(255,150,40,.55);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#amp-m,#amp-pos{font:500 .8rem var(--lab);letter-spacing:.1em;text-transform:uppercase;color:#E9C78A;opacity:.9}.lcd-r{display:flex;justify-content:flex-end}
.amp-ctl{display:grid;grid-template-columns:auto auto 1fr;gap:14px 22px;align-items:end}
.kgrp{display:grid;justify-items:center;gap:6px}.kring{position:relative;width:104px;height:104px;display:grid;place-items:center}
.ticks{position:absolute;inset:0}.ticks i{position:absolute;left:50%;top:50%;width:2px;height:8px;margin:-52px 0 0 -1px;background:var(--brassL);opacity:.8;transform-origin:1px 52px;transform:rotate(var(--r))}
.knob{width:78px;height:78px;border-radius:50%;position:relative;cursor:ns-resize;touch-action:none;background:conic-gradient(from 20deg,#F7EDD0,#D8C79B 22%,#F7EDD0 44%,#CDBB8B 66%,#F7EDD0 88%);box-shadow:0 7px 0 #080605,0 12px 16px rgba(0,0,0,.55),inset 0 0 0 3px #8c7a4a,inset 0 0 0 7px #F1E6C6,inset 0 -6px 10px rgba(110,74,34,.35)}
.knob::after{content:"";position:absolute;left:50%;top:7px;width:7px;height:30px;margin-left:-3.5px;border-radius:4px;background:var(--tolex);transform-origin:50% 32px;transform:rotate(var(--a,0deg));box-shadow:0 0 0 1px rgba(255,255,255,.3)}
.knob:focus-visible{outline:3px solid var(--amberL);outline-offset:6px}
.kv{font:500 .85rem var(--lab);letter-spacing:.08em;color:var(--amberL)}
.loopb{display:grid;gap:8px;align-self:stretch;align-content:end}.lrow{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.sp{margin:0 4px 0 6px}
.sw{font:500 .72rem/1 var(--lab);letter-spacing:.12em;text-transform:uppercase;color:#F1E5C6;background:linear-gradient(180deg,#3a3028,#241d17);border:1.5px solid var(--brass);border-radius:6px;padding:.7em .8em;cursor:pointer;box-shadow:0 3px 0 #000;display:inline-flex;gap:.5em;align-items:center}.sw:active{transform:translateY(2px);box-shadow:0 1px 0 #000}.sw[aria-pressed=true]{background:linear-gradient(180deg,#5a4012,#3a2808);color:var(--amberL)}.sw.mini{padding:.7em .55em;min-width:34px;justify-content:center}.sw.on{color:var(--amberL);border-color:var(--amberL)}
.led{width:9px;height:9px;border-radius:50%;background:#4a1f12;border:1px solid #000;display:inline-block}.led.lit{background:radial-gradient(circle at 40% 35%,#ffd9c8,#ff6a3d 50%,#C1442E);box-shadow:0 0 8px 2px rgba(255,106,61,.7)}
.ab-r{margin:0;font:500 .8rem var(--lab);letter-spacing:.1em;color:#E9C78A;text-transform:uppercase}
.rocker{grid-column:1/-1;font:500 1.05rem/1 var(--lab);letter-spacing:.3em;text-transform:uppercase;color:var(--tolex);cursor:pointer;border:2px solid var(--brown);border-radius:10px;padding:1.05em;background:linear-gradient(180deg,#F5DD8E,#D2AA50 55%,#B88F37);box-shadow:0 6px 0 rgba(0,0,0,.7)}.rocker:active{transform:translateY(4px);box-shadow:0 2px 0 rgba(0,0,0,.7)}.rocker[aria-pressed=true]{background:linear-gradient(180deg,#FFC66A,#E0861B 60%,#C06A0A);box-shadow:0 2px 0 rgba(0,0,0,.7),0 0 18px rgba(255,150,40,.55);transform:translateY(4px)}
.amp-tip{font-size:.8rem;margin:16px 20px 0;color:#CDBB8B;line-height:1.5}.amp-tip b{color:var(--amberL);font-weight:600}
/* home sections */
.sets,.keys,.how,.free,.faqsec{padding:40px 0}
.papers{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px 26px}
.paper{display:block;position:relative;text-decoration:none;background:var(--paper);padding:26px 22px 20px 54px;border-radius:3px;transform:rotate(var(--rot,0deg));box-shadow:0 2px 0 rgba(0,0,0,.08),0 12px 18px -8px rgba(42,27,16,.45);background-image:linear-gradient(90deg,transparent 42px,rgba(190,60,50,.45) 42px 44px,transparent 44px),repeating-linear-gradient(180deg,transparent 0 27px,rgba(80,120,180,.28) 27px 28px);transition:transform .2s}
.paper:hover{transform:rotate(0deg) translateY(-4px)}.tape{position:absolute;top:-12px;left:50%;width:84px;height:26px;margin-left:-42px;background:rgba(235,207,126,.8);border-left:2px dotted rgba(110,74,34,.3);border-right:2px dotted rgba(110,74,34,.3);transform:rotate(-2deg)}
.paper .k{margin:0 0 .3em;color:var(--c);font-size:.74rem;filter:brightness(.7)}.paper b{display:block;font:400 1.9rem/1.1 var(--sh);margin-bottom:.1em}.paper .meta{display:block;font:500 .78rem var(--lab);letter-spacing:.12em;text-transform:uppercase;opacity:.75;margin-bottom:.5em}
.paper ol{margin:0 0 0;padding:0 0 0 1.1em;font:italic 500 1rem/28px var(--body)}.paper li.more{list-style:none;margin-left:-1.1em;opacity:.6}.paper .go{display:flex;align-items:center;gap:.5em;font:500 .76rem var(--lab);letter-spacing:.14em;text-transform:uppercase;font-style:normal;margin-top:.5em;color:var(--brown)}.go svg{width:12px;height:12px;fill:currentColor}
.keysgrid{display:grid;grid-template-columns:minmax(0,520px) 1fr;gap:46px;align-items:center}.wheelbox{filter:drop-shadow(0 18px 18px rgba(42,27,16,.4))}.wheel{width:100%;height:auto;display:block}.wl,.wc{font-family:var(--lab);font-weight:500}.wl{letter-spacing:.02em}
.seg path{transition:fill .15s,transform .15s}.seg:hover path,.seg:focus-visible path{fill:#EBCF7E}.seg:focus-visible{outline:none}.seg:focus-visible path{stroke:#fff;stroke-width:4}.seg.off{opacity:.55}.seg text{pointer-events:none}
.keytx h2{font-size:clamp(2rem,3.8vw,2.9rem);margin-bottom:.5em}.keytx p{max-width:56ch}
.st3{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:0;margin:0}.st3 li{background:var(--tolex);color:#F1E5C6;border:2px solid var(--brass);border-radius:14px;padding:24px 24px 22px;box-shadow:0 6px 0 rgba(0,0,0,.4)}.st3 h3{font-size:1.5rem;margin:.5em 0 .3em;color:var(--brassL)}.st3 p{margin:0}.sn{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#F7EDD0,#CDBB8B);color:var(--tolex);font:500 1.4rem var(--lab);box-shadow:0 4px 0 #000}
.plaque{display:grid;grid-template-columns:1.1fr 1fr;gap:34px;align-items:center;background:linear-gradient(180deg,#F5DD8E,#D2AA50 60%,#B88F37);border:3px solid var(--brown);border-radius:18px;padding:34px;box-shadow:0 8px 0 rgba(42,27,16,.45)}.plaque h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:.4em}.plaque .k{color:var(--walnut)}
.creditbox{background:var(--tolex);border-radius:12px;padding:18px 20px;display:grid;gap:14px;justify-items:start}.creditbox code{color:var(--amberL);line-height:1.55;font-size:.84rem}
.faq details{background:var(--paper);border:1.5px solid var(--brown);border-radius:12px;margin:0 0 10px}.faq summary{cursor:pointer;padding:1em 1.2em;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";font:500 1.5rem/1 var(--lab);color:var(--amber);flex:none}.faq details[open] summary::after{content:"\2212"}.faq p{margin:0;padding:0 1.2em 1.1em;max-width:72ch}
.more{margin:18px 0 0;font-weight:700}.more svg{width:12px;height:12px;fill:currentColor}.more a{text-underline-offset:4px}
/* page heads */
.phead{padding:44px 0 24px}.phead h1{font-size:clamp(2.5rem,6vw,4.6rem);margin-bottom:.3em}
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0 0 18px;font:500 .78rem var(--lab);letter-spacing:.1em;text-transform:uppercase}.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}.crumbs a{text-underline-offset:3px}
.shead{padding:44px 0 34px;background:linear-gradient(180deg,rgba(255,255,255,.0),rgba(255,255,255,0)),repeating-linear-gradient(135deg,color-mix(in srgb,var(--c) 30%,var(--cream)) 0 22px,color-mix(in srgb,var(--c) 40%,var(--cream)) 22px 44px);border-bottom:3px solid var(--tolex)}.shead h1{font-size:clamp(2.3rem,5.4vw,4.2rem);margin-bottom:.3em}
.sgrid{display:grid;grid-template-columns:1fr 340px;gap:34px;padding:34px 0;align-items:start}.znav .wrap{display:flex;justify-content:space-between;gap:16px;padding-bottom:36px;flex-wrap:wrap}
.paper-l{position:relative;background:var(--paper);border-radius:4px;box-shadow:0 2px 0 rgba(0,0,0,.08),0 16px 24px -12px rgba(42,27,16,.5);background-image:linear-gradient(90deg,transparent 58px,rgba(190,60,50,.45) 58px 60px,transparent 60px);overflow:hidden}
.pl-h{display:flex;align-items:baseline;gap:14px;padding:18px 22px 12px 74px;border-bottom:2px solid rgba(190,60,50,.35)}.pl-h b{font:400 1.6rem var(--sh)}.pl-h span{font:500 .76rem var(--lab);letter-spacing:.18em;text-transform:uppercase;opacity:.7}
.slist{list-style:none;margin:0;padding:0}.st{display:flex;align-items:center;gap:8px;padding:6px 18px 6px 8px;border-bottom:1px solid rgba(80,120,180,.28);min-height:58px}.st[hidden]{display:none}.st.on{background:rgba(255,179,71,.28)}
.tp{display:flex;align-items:center;gap:10px;background:none;border:0;padding:4px 6px 4px 4px;margin:0;color:inherit;text-align:left;cursor:pointer;font:inherit;min-width:0;max-width:56%;border-radius:8px}.tp:hover{background:rgba(224,134,27,.18)}
.tp .n{width:42px;flex:none;text-align:right;font:500 1rem var(--lab);color:var(--red);padding-right:6px;display:grid;justify-items:end}.tp .n svg{width:12px;height:12px;fill:currentColor}
.tt{display:grid;min-width:0}.tt b{font:italic 600 1.02rem/1.25 var(--body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tt span{font-size:.76rem;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dots{flex:1;min-width:8px;border-bottom:2px dotted rgba(42,27,16,.35);transform:translateY(-4px)}
.kb{font:500 .86rem var(--lab);letter-spacing:.06em;min-width:74px;text-align:center;background:var(--tolex);color:var(--amberL);border-radius:5px;padding:.3em .5em}.bp{font:500 .84rem var(--lab);letter-spacing:.06em;min-width:62px;text-align:right}.bp i{font-style:normal;font-size:.7em;opacity:.65;margin-left:.3em}.fl2{font:500 .74rem var(--lab);letter-spacing:.12em;text-transform:uppercase;min-width:62px;opacity:.75}.d{font:500 .84rem var(--lab);min-width:38px;text-align:right}
.dl{font:500 .72rem var(--lab);letter-spacing:.14em;text-decoration:none;background:var(--tolex);color:var(--brassL);border-radius:5px;padding:.6em .8em}.dl:hover{background:var(--brown)}
.side .card h2{font-size:1.3rem}.kchips{display:flex;flex-wrap:wrap;gap:6px}.kchips span{font:500 .8rem var(--lab);background:var(--tolex);color:var(--amberL);padding:.3em .6em;border-radius:5px}
/* library, keys, use, guides */
.filters{display:grid;gap:14px;margin-bottom:22px}.srch input{width:100%;font:500 1.05rem var(--body);padding:1em 1.2em;border:1.5px solid var(--brown);border-radius:10px;background:var(--paper);box-shadow:inset 0 2px 4px rgba(42,27,16,.15);color:var(--walnut)}
.frow{display:flex;flex-wrap:wrap;gap:16px}.frow label{font:500 .76rem var(--lab);letter-spacing:.16em;text-transform:uppercase;display:flex;align-items:center;gap:10px}.frow select{font:600 .95rem var(--body);padding:.6em .8em;border:1.5px solid var(--brown);border-radius:8px;background:var(--paper);color:var(--walnut)}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chips button{font:500 .76rem var(--lab);letter-spacing:.14em;text-transform:uppercase;padding:.8em 1.1em;border:1.5px solid var(--brass);border-radius:6px;background:var(--tolex);color:#F1E5C6;cursor:pointer;box-shadow:0 3px 0 #000}.chips button[aria-pressed=true]{background:var(--amberL);color:var(--tolex);border-color:var(--brown)}
.cnt{margin:0;font:500 .86rem var(--lab);letter-spacing:.1em;text-transform:uppercase}.empty{background:var(--paper);border:2px dashed var(--brown);border-radius:12px;padding:20px;text-align:center;font-weight:600}
.usepg,.jampg,.gpg,.art,.keypg,.sbody{padding:10px 0 50px}.keypg .wrap+.wrap{margin-top:40px}.cps{display:grid;gap:14px;margin-bottom:18px}.cp{display:grid;grid-template-columns:210px 1fr auto;gap:14px;align-items:center;background:var(--paper);border:1.5px solid var(--brown);border-radius:12px;padding:12px 16px}.cp .k{margin:0}.cp code{background:var(--tolex);color:var(--amberL);padding:.7em .9em;border-radius:8px;line-height:1.5;overflow-wrap:anywhere}
.tbl{overflow-x:auto;background:var(--paper);border:1.5px solid var(--brown);border-radius:12px}table{width:100%;border-collapse:collapse;font-size:1rem}th,td{padding:.7em 1em;text-align:left;border-bottom:1px solid rgba(80,120,180,.28)}thead th{font:500 .76rem var(--lab);letter-spacing:.16em;text-transform:uppercase;background:var(--tolex);color:var(--brassL)}tbody th{font-weight:700}
.gcs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.gc{display:grid;gap:8px;background:var(--paper);border:1.5px solid var(--brown);border-radius:14px;box-shadow:0 6px 0 rgba(42,27,16,.4);padding:24px;text-decoration:none;height:100%;transition:transform .12s}.gc:hover{transform:translateY(-3px)}.gc .k{margin:0;color:var(--amber)}.gc b{font:400 1.6rem/1.12 var(--sh)}.gc i svg{width:16px;height:16px;fill:var(--brown)}
.artgrid{display:grid;grid-template-columns:1fr 330px;gap:34px;align-items:start;padding-top:12px}.prose{background:var(--paper);border:1.5px solid var(--brown);border-radius:16px;box-shadow:0 6px 0 rgba(42,27,16,.4);padding:34px 38px}.prose h2{font-size:1.7rem;margin:1.4em 0 .4em}.prose h2:first-child{margin-top:0}.prose p{max-width:68ch;margin:.5em 0}.prose .cta2{background:linear-gradient(180deg,#F5DD8E,#D2AA50);margin-top:30px}
.fl{list-style:none;padding:0;margin:0}.fl li{margin:.4em 0}.fl a{text-underline-offset:3px}.fl i{display:inline-block;width:.7em;height:.7em;border-radius:50%;background:var(--c);margin-right:.5em;border:1.5px solid rgba(0,0,0,.4)}
/* footer: the amp's back panel */
.foot{margin-top:46px;background-color:var(--tolex);background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1.4px);background-size:5px 5px;color:#E9DEBF;padding:46px 0 30px;border-top:5px solid var(--brass);position:relative}.foot::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:repeating-linear-gradient(90deg,#000 0 8px,transparent 8px 16px);opacity:.5}
.foot a{color:#F1E5C6}.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}.foot h2{font:500 .8rem var(--lab);letter-spacing:.22em;text-transform:uppercase;color:var(--brassL);margin-bottom:1em}.foot .plate{display:inline-block}.foot .fl li{font-size:.95rem}.foot p{font-size:.94rem;margin:1em 0 0;max-width:42ch}.fine{font-size:.78rem!important;opacity:.7;max-width:none!important;margin-top:30px!important;border-top:1px solid rgba(235,207,126,.25);padding-top:18px}
/* player: a strip along the bottom of the amp */
.pbar{position:fixed;left:0;right:0;bottom:0;z-index:60;background-color:var(--tolex);background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1.4px);background-size:5px 5px;color:#F1E5C6;border-top:4px solid var(--brass);box-shadow:0 -3px 0 #000,0 -14px 24px rgba(0,0,0,.25);display:grid;grid-template-columns:auto minmax(190px,1.1fr) auto minmax(170px,1.5fr) auto;gap:16px;align-items:center;padding:10px max(18px,calc((100vw - 1180px)/2 + 20px)) calc(10px + env(safe-area-inset-bottom))}
.pb-now{display:flex;gap:12px;align-items:center;min-width:0}.pb-now img{width:48px;height:48px;border-radius:6px;border:2px solid var(--brass);object-fit:contain;background:#241b14;flex:none}.pb-tx{display:grid;min-width:0}.pb-cap{font:500 .68rem var(--lab);letter-spacing:.18em;text-transform:uppercase;color:var(--brassL);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pb-tx b{font:500 1.05rem var(--lab);letter-spacing:.04em;color:var(--amberL);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pb-ctl{display:flex;gap:8px;align-items:center}.ib{width:38px;height:38px;border-radius:8px;border:1.5px solid var(--brass);background:linear-gradient(180deg,#3a3028,#241d17);color:#F1E5C6;display:grid;place-items:center;cursor:pointer;padding:0;text-decoration:none;box-shadow:0 3px 0 #000}.ib svg{width:13px;height:13px;fill:currentColor}.ib.sm{width:34px;height:34px}.ib:active{transform:translateY(2px);box-shadow:0 1px 0 #000}.ib[aria-pressed=true]{background:linear-gradient(180deg,#5a4012,#3a2808);color:var(--amberL)}
.pp{width:56px;height:56px;border-radius:50%;border:2px solid var(--brown);background:radial-gradient(circle at 38% 30%,#F9E7A4,#C9A24B 70%);color:var(--tolex);cursor:pointer;display:grid;place-items:center;padding:0;box-shadow:0 5px 0 #000}.pp svg{width:20px;height:20px;fill:currentColor}.pp:active{transform:translateY(3px);box-shadow:0 2px 0 #000}.pp .ppi{display:grid;place-items:center}
.pb-seek{display:flex;gap:10px;align-items:center;font:500 .78rem var(--lab);letter-spacing:.06em}.pb-seek input{flex:1;min-width:0;-webkit-appearance:none;appearance:none;height:10px;border-radius:5px;border:1px solid #000;background:linear-gradient(90deg,var(--amber) var(--p,0%),#3b3128 var(--p,0%));box-shadow:inset 0 1px 3px #000;cursor:pointer}
.pb-seek input::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 38% 30%,#F7EDD0,#CDBB8B);border:2px solid #000;box-shadow:0 2px 0 #000}.pb-seek input::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#F7EDD0;border:2px solid #000}
.pb-x{display:flex;gap:7px;align-items:center}.pill{font:500 .74rem/1 var(--lab);letter-spacing:.1em;text-transform:uppercase;min-width:52px;height:34px;padding:0 .8em;border-radius:8px;border:1.5px solid var(--brass);background:linear-gradient(180deg,#3a3028,#241d17);color:#F1E5C6;cursor:pointer;box-shadow:0 3px 0 #000}.pill.on{color:var(--amberL);border-color:var(--amberL);background:linear-gradient(180deg,#5a4012,#3a2808)}.pill.half{color:var(--tolex);background:var(--brassL)}
.pbar>.lamp{margin-left:2px}
.toast{position:fixed;left:50%;bottom:118px;transform:translate(-50%,16px);background:var(--paper);color:var(--walnut);border:2px solid var(--brown);border-radius:10px;padding:.7em 1.2em;font:500 .86rem var(--lab);letter-spacing:.1em;text-transform:uppercase;box-shadow:0 6px 0 rgba(42,27,16,.5);opacity:0;pointer-events:none;transition:.2s;z-index:80;max-width:92vw}.toast.show{opacity:1;transform:translate(-50%,0)}
/* responsive */
@media (max-width:1100px){.herogrid{grid-template-columns:1fr}.heroamp{max-width:620px}.sgrid,.artgrid{grid-template-columns:1fr}.papers{grid-template-columns:repeat(2,1fr)}.keysgrid{grid-template-columns:1fr}.wheelbox{max-width:520px;margin-inline:auto}.foot-top{grid-template-columns:1fr 1fr}}
@media (max-width:980px){.nav{display:none}.menu{display:block}.three,.two,.plaque,.st3,.gcs{grid-template-columns:1fr}}
@media (max-width:760px){.amp-ctl{grid-template-columns:auto auto}.loopb{grid-column:1/-1}.amp-disp{grid-template-columns:96px 1fr}.amp-disp img{width:96px;height:96px}.papers{grid-template-columns:1fr}
.st{flex-wrap:wrap;row-gap:0;padding-right:12px}.tp{max-width:100%;flex:1 1 100%}.dots{display:none}.st .kb,.st .bp,.st .fl2,.st .d{margin-left:0;min-width:0;font-size:.74rem}.st .kb{margin-left:56px}.st .bp{text-align:left;margin-left:12px}.st .d{margin-left:auto}.st .dl{margin-left:10px}.st .fl2{display:none}
.cp{grid-template-columns:1fr}.pbar{grid-template-columns:auto 1fr auto;gap:8px 12px;padding:8px 14px calc(8px + env(safe-area-inset-bottom))}.pbar>.lamp{display:none}.pb-now{grid-column:1/3}.pb-ctl{grid-column:3;grid-row:1}.pb-seek{grid-column:1/-1;grid-row:2}.pb-x{grid-column:1/-1;grid-row:3;justify-content:space-between}body{padding-bottom:156px}.toast{bottom:168px}.pp{width:46px;height:46px}.ib{width:32px;height:32px}.pill{height:30px}.pbar{gap:6px 12px}.pb-now img{width:42px;height:42px}.prose{padding:22px}.plaque{padding:22px}.foot-top{grid-template-columns:1fr}.hero{padding-top:30px}}
@media (max-width:520px){.wm{font-size:1.25rem}.lg{width:38px;height:38px}.pl-h{padding-left:62px}.paper-l{background-image:linear-gradient(90deg,transparent 52px,rgba(190,60,50,.45) 52px 54px,transparent 54px)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media (max-width:520px){.phead h1,.shead h1{font-size:2.15rem}.hero h1{font-size:2.9rem}}
