:root{--bg:#f6f8f1;--ink:#1f2a18;--accent:#5a7d2a;--panel:#e6eddb;--line:#c3d1ab;--radius:6px;--display:"Cardo",Georgia,serif;--body:"Lato",system-ui,sans-serif}
/* base */
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 18px/1.55 var(--body)}
a{color:var(--accent);text-decoration:none;border-bottom:1px solid currentColor}a:has(img),a.btn,nav a,header a,footer a{border-bottom:0}
img,svg{max-width:100%}main img{height:auto}main figure{margin:0}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:var(--panel);padding:8px 12px;z-index:9}
.wrap{width:min(1040px,calc(100% - 32px));margin:0 auto}
h1,h2,h3{font-family:var(--display);font-weight:400;margin:0 0 .5em}h1{font-size:clamp(2.4rem,5.4vw,4rem);line-height:1.02;text-shadow:3px 3px 0 var(--panel)}h2{font-size:clamp(1.5rem,2.8vw,2.1rem);line-height:1.15}h3{font-size:1.2rem;color:var(--accent)}
.kicker{display:inline-block;font:700 .78rem/1.2 var(--body);letter-spacing:.06em;color:var(--accent);border-bottom:1px dashed var(--accent);padding-bottom:.2em;margin:0 0 .9rem}
.lead{font-size:1.25rem;line-height:1.5;max-width:54ch}
.page-head{padding:48px 0 14px}.block{padding:40px 0}
.btn{display:inline-block;background:var(--ink);color:var(--bg);border:0;border-radius:4px;padding:12px 18px;font:600 .98rem var(--body);text-decoration:none}.btn.ghost{background:transparent;color:var(--accent);text-decoration:underline;text-underline-offset:4px;padding-left:4px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:22px}
.chips{display:flex;gap:0;flex-wrap:wrap;border-bottom:2px solid var(--line)}.chip{border:0;background:none;color:var(--ink);padding:9px 16px;margin-bottom:-2px;border-bottom:3px solid transparent;font:600 .95rem var(--body);cursor:pointer}.chip[aria-pressed="true"]{border-bottom-color:var(--accent);color:var(--accent)}
.toolbar{display:flex;flex-direction:column-reverse;gap:14px;margin-bottom:18px}.toolbar .search{max-width:420px}
.search{display:block;font:700 .85rem var(--body);min-width:220px}.search input{display:block;width:100%;margin-top:6px;padding:11px 12px;border:2px solid var(--ink);border-radius:0;background:var(--bg);color:var(--ink);font:400 1rem var(--body)}
table.ledger{width:100%;border-collapse:collapse}.ledger th,.ledger td{text-align:left;padding:12px 12px;border-bottom:1px solid var(--line);vertical-align:top}.ledger td:first-child{box-shadow:inset 4px 0 0 var(--accent);padding-left:16px;font-weight:700}.ledger th{font:700 .8rem var(--body);letter-spacing:.06em;text-transform:uppercase}
.count{font:700 .74rem var(--body);letter-spacing:.12em;text-transform:uppercase;opacity:.8}
main details{padding:14px 16px;margin:0 0 6px;background:var(--panel);border-radius:6px}main summary{cursor:pointer;font-weight:700;list-style:none}main summary::-webkit-details-marker{display:none}main summary::before{content:"Q ";color:var(--accent);font-family:var(--display)}main details p::before{content:"A ";font-weight:700;color:var(--accent)}main details p{margin:.5em 0 0}
[hidden]{display:none!important}
.site-email{font-weight:600;word-break:break-all}.up{font-size:.85em}
.nav-toggle{display:none;background:none;border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:6px 14px;font:inherit;cursor:pointer}
@media (max-width:760px){.nav-toggle{display:inline-block}.toolbar{flex-direction:column;align-items:stretch}.search{min-width:0}}
/* /base */
figure{margin:0}
.hero-photo{margin:32px 0 0}
.hero-photo img,.photo-split img,.page-photo img,.photo-pair img{display:block;width:100%;height:auto;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line)}
.hero-photo img{aspect-ratio:21/9;max-height:480px}
.photo-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.photo-split img{aspect-ratio:4/3}
@media (max-width:820px){.photo-split{grid-template-columns:1fr}.hero-photo img{aspect-ratio:16/10}}
.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.photo-pair img{aspect-ratio:3/2}
@media (max-width:640px){.photo-pair{grid-template-columns:1fr}}
.page-photo{margin-top:20px}
.page-photo img{aspect-ratio:16/7;max-height:400px}
@media (max-width:640px){.page-photo img{aspect-ratio:4/3}}
.site-head{border-bottom:3px double var(--line)}
@media(min-width:761px){.head-row{justify-content:center;flex-direction:column;padding:22px 0 12px}.logo{font-size:1.5rem}}
.head-nav a{font-weight:400;letter-spacing:.04em}
.site-footer{border-top:3px double var(--line);text-align:center}
.site-footer ul{justify-content:center}
.dj-hero{text-align:center;padding:4rem 0 2rem;max-width:860px}
.dj-hero h1{font-style:italic}
.dj-hero .lead{margin:0 auto}
.dj-hero .cta-row{justify-content:center}
.dj-pano{width:min(1280px,100%);margin:0 auto}
.dj-pano img{width:100%;height:440px;object-fit:cover;display:block;border-radius:300px 300px 0 0}
.dj-season{text-align:center}
.dj-months{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:1.2rem 0}
.dj-months span{padding:1rem 0;font-weight:700;font-size:.85rem;border-right:1px solid var(--line)}
.dj-months span:last-child{border:0}
.dj-months .in{background:var(--accent);color:#fff}
.dj-chests>div{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.dj-chests article{background:#b98c57;background-image:repeating-linear-gradient(0deg,transparent 0 30px,rgba(0,0,0,.12) 30px 32px);color:#2a1b0b;padding:1.4rem 1rem;text-align:center;border:4px solid #8a6438}
.dj-chests b{display:block;font-family:"Courier New",monospace;font-size:1.3rem;letter-spacing:.1em}
.dj-chests p{margin:.4rem 0;font-weight:700}
.dj-chests span{display:inline-block;background:#f6f8f1;padding:.15rem .7rem;font-size:.8rem;font-weight:700}
.dj-leaf{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center}
.dj-leaf img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.dj-leaf h3{font-style:italic;margin:1.2rem 0 .2rem;color:var(--accent)}
.dj-made{background:var(--ink);color:#e6eddb;padding:3.5rem 0}
.dj-made h2{text-align:center;font-style:italic}
.dj-made ol{list-style:none;padding:0;margin:2rem auto 0;max-width:640px;counter-reset:m}
.dj-made li{counter-increment:m;padding:0 0 1.4rem 4rem;position:relative}
.dj-made li::before{content:counter(m,upper-roman);position:absolute;left:0;top:0;font-family:var(--display);font-size:1.8rem;color:#a9c57a}
.dj-made b{display:block;font-family:var(--display);font-size:1.4rem}
.dj-end{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem}
.dj-end details{border-bottom:1px solid var(--line);padding:.9rem 0}
.dj-end summary{cursor:pointer;font-family:var(--display);font-size:1.15rem}
.dj-ph{padding:3.5rem 0 1rem;text-align:center;max-width:820px}
.dj-ph h1{font-style:italic}
.dj-ph .lead{margin:0 auto}
.dj-wide img{width:100%;aspect-ratio:21/8;object-fit:cover;display:block}
.dj-steps blockquote{margin:0 auto 2rem;max-width:720px;text-align:center;font-family:var(--display);font-size:1.4rem;font-style:italic}
.dj-steps ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}
.dj-steps li{padding:1.4rem 1rem 0;border-right:1px solid var(--line)}
.dj-steps li:last-child{border:0}
.dj-steps h2{font-size:1.5rem}
.dj-stencil{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.dj-stencil article{border:1px solid var(--line);padding:1.6rem;background:#fff}
.dj-st{font-family:"Courier New",monospace;font-weight:700;letter-spacing:.3em;font-size:1.2rem;color:#8a6438;border:3px solid #8a6438;display:inline-block;padding:.3rem .6rem;margin:0 0 1rem}
.dj-stencil h2{font-size:1.4rem}
.dj-board{width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.dj-board th,.dj-board td{padding:.8rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.dj-board th{font-family:var(--display);font-style:italic;font-weight:400;font-size:1.1rem}
.dj-board td.on{color:var(--accent);font-weight:700}
.dj-board td:first-child{font-family:"Courier New",monospace;font-weight:700}
.dj-help{display:grid;gap:2rem;max-width:760px;margin:0 auto}
.dj-help div{border-left:3px solid var(--accent);padding-left:1.4rem}
.dj-help h2{font-size:1.4rem;font-style:italic}
.dj-bio{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:center}
.dj-bio img{width:100%;aspect-ratio:1;object-fit:cover;display:block;filter:grayscale(1)}
.dj-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;border-top:1px solid var(--ink);padding-top:2rem}
.dj-notes b{display:block;font-family:var(--display);font-style:italic;font-size:1.4rem;color:var(--accent)}
@media(max-width:820px){
.dj-pano img{height:260px;border-radius:140px 140px 0 0}
.dj-months{grid-template-columns:repeat(3,1fr)}.dj-months span:nth-child(3){border-right:0}.dj-months span{border-bottom:1px solid var(--line)}
.dj-chests>div{grid-template-columns:1fr 1fr}
.dj-leaf,.dj-end,.dj-stencil,.dj-bio,.dj-notes{grid-template-columns:1fr}
.dj-leaf img{aspect-ratio:4/3}
.dj-steps ol{grid-template-columns:1fr 1fr}.dj-steps li{border-right:0;border-bottom:1px solid var(--line);padding-bottom:1rem}
.dj-made li{padding-left:3rem}
}
/* hx-hf */
:root{--hx-a:#5a7d2a;--hx-i:#1f2a18;--hx-p:#e6eddb;--hx-bg:#f6f8f1;--hx-d:var(--display);--hx-t:var(--body)}
.hV{background:var(--hx-bg);border-bottom:1px solid rgba(127,127,127,.3)}.hV-in{display:flex;align-items:center;gap:1.2rem;min-height:72px;flex-wrap:wrap}.hV-logo{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--hx-i);font:700 1.15rem var(--hx-d)}.hV-mk{width:32px;height:32px}.hV-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}.hV-nav a{text-decoration:none;color:inherit}.hV-nav{margin-left:auto}.hV-nav ul{gap:.9rem}.hV-nav a{display:flex;align-items:center;gap:.35rem;font-size:.88rem;color:var(--hx-i)}.hV-nav i{font-style:normal;width:20px;height:20px;display:grid;place-items:center;font-size:.7rem;font-weight:700;background:rgba(127,127,127,.15);border-radius:4px}.hV-nav a[aria-current] i{background:var(--hx-a);color:#fff}.hV-tag,.hV-reg{margin:0;font-size:.75rem;opacity:.7;width:100%;text-align:right}.hV-tag{margin-top:-.8rem}.hV-reg{padding-bottom:.4rem}.hV-tog{display:none;border:1.5px solid currentColor;background:transparent;color:inherit;font:600 .85rem var(--hx-t);padding:.45rem .9rem;border-radius:6px;cursor:pointer}@media(max-width:900px){.hV-tog{display:inline-block}}@media(max-width:900px){.hV-tog{margin-left:auto}.hV-tag,.hV-reg{display:none}}@media(max-width:900px){.hV-nav{display:none}body.nav-open .hV-nav{display:block}.hV-nav{width:100%;margin:0}}@media(max-width:900px){.hV-nav ul{flex-direction:column;gap:0}.hV-nav li{border-top:1px solid rgba(127,127,127,.25)}.hV-nav a{display:block;padding:.75rem 0}}
.fQ{background:var(--hx-p);padding:2.8rem 0 1.2rem;margin-top:3rem}.fQ-b{font:700 1.3rem var(--hx-d);color:var(--hx-a)}.fQ-rows{list-style:none;margin:1rem 0;padding:0;max-width:720px}.fQ-rows li{display:flex;align-items:baseline;gap:.6rem;padding:.3rem 0;font-size:.92rem}.fQ-rows i{flex:1;border-bottom:2px dotted rgba(127,127,127,.5)}.fQ-rows li span:first-child{font-weight:700}.fQ-lead{font-size:.88rem;opacity:.85}.fQ small{font-size:.76rem;opacity:.65}@media(max-width:900px){.fQ-rows li{flex-wrap:wrap}.fQ-rows i{display:none}.fQ-rows li span:last-child{width:100%}}
.hxw.hxw{margin-left:auto!important;margin-right:auto!important}
.dj-end:has(> :only-child){grid-template-columns:1fr}
