[data-tone=ice]{--hh-accent:var(--accent)}[data-tone=fire]{--hh-accent:var(--ember)}[data-tone=gold]{--hh-accent:var(--warn)}[data-tone=blood]{--hh-accent:var(--danger)}[data-tone=wildfire]{--hh-accent:var(--ok)}[data-tone=steel]{--hh-accent:color-mix(in srgb,var(--accent) 34%,var(--text-mute))}.hh-hero{--hh-accent:var(--text-mute);border-bottom:1px solid var(--border-1)}.hh-hero .spoke-kicker,.hh-words{color:var(--hh-accent)}.hh-words{font-family:var(--font-serif);font-style:italic;font-size:var(--text-lg);line-height:1.3;margin:10px 0 0;text-wrap:balance}.hh-facts{display:flex;flex-wrap:wrap;gap:8px 10px;margin:20px 0 0;padding:0;list-style:none}.hh-fact{display:inline-flex;align-items:baseline;gap:8px;padding:6px 13px;border:1px solid var(--border-1);border-radius:var(--radius-sm);background:var(--surface-card)}.hh-fact dt{font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-faint)}.hh-fact dd,.hh-fact dt{font-family:var(--font-mono)}.hh-fact dd{margin:0;font-size:var(--text-sm);color:var(--text-body)}.hh-crosslinks{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:18px}.hh-crosslinks a{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-mute);text-decoration:none;padding:7px 13px;border:1px solid var(--border-1);border-radius:999px;background:var(--surface-card);transition:border-color var(--dur-base) var(--ease-forge),color var(--dur-base) var(--ease-forge)}.hh-crosslinks a:before{content:"‹";color:var(--text-faint)}.hh-crosslinks a:focus-visible,.hh-crosslinks a:hover{color:var(--text-hi);border-color:color-mix(in srgb,var(--hh-accent) 42%,var(--border-2))}.hh-chapters{--hh-accent:var(--text-mute);display:flex;flex-direction:column;gap:44px;max-width:760px}.hh-chapter{position:relative}.hh-chapter-head{display:flex;align-items:center;gap:16px;margin-bottom:18px}.hh-chapter-num{flex:none;display:grid;place-items:center;min-width:40px;height:40px;padding:0 8px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--hh-accent) 40%,transparent);background:color-mix(in srgb,var(--hh-accent) 12%,transparent);font-size:var(--text-md);line-height:1;color:var(--hh-accent);-webkit-user-select:none;-moz-user-select:none;user-select:none}.hh-chapter-h,.hh-chapter-num{font-family:var(--font-display);font-weight:600}.hh-chapter-h{margin:0;font-size:var(--text-xl);line-height:1.15;letter-spacing:.02em;color:var(--text-hi);text-wrap:balance}.hh-prose{display:flex;flex-direction:column;gap:16px;border-left:2px solid color-mix(in srgb,var(--hh-accent) 32%,var(--border-1));padding-left:22px}.hh-prose p{margin:0;font-family:var(--font-serif);font-size:var(--text-lg);line-height:var(--leading-base,1.7);color:var(--text-body);text-wrap:pretty}.hh-prose p:first-of-type:first-letter{font-family:var(--font-display);font-weight:600;font-size:3.1em;line-height:.82;float:left;padding:4px 10px 0 0;color:var(--hh-accent)}.hh-events{margin-top:18px;padding-left:22px}.hh-events-label{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-faint);margin:0 0 10px}.hh-eventlinks{display:flex;flex-wrap:wrap;gap:8px}.hh-eventlink{display:inline-flex;align-items:center;gap:7px;font:500 var(--text-xs) /1.1 var(--font-sans);color:var(--text-body);background:color-mix(in srgb,var(--text-faint) 9%,transparent);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:6px 10px;text-decoration:none;transition:color var(--dur-raven) var(--ease-forge),border-color var(--dur-raven) var(--ease-forge),background var(--dur-raven) var(--ease-forge)}.hh-eventlink:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--hh-accent);flex:none}.hh-eventlink:hover{color:var(--text-hi);border-color:color-mix(in srgb,var(--hh-accent) 50%,var(--border-2));background:color-mix(in srgb,var(--hh-accent) 10%,transparent)}.hh-eventlink:focus-visible{outline:2px solid var(--hh-accent);outline-offset:2px}.hh-sptail-head{max-width:760px;margin-bottom:22px;padding-top:8px;border-top:1px solid var(--border-1)}.hh-sptail-title{margin:18px 0 6px;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--hh-accent)}.hh-sptail-note{margin:0;font-family:var(--font-serif);font-style:italic;font-size:var(--text-base);color:var(--text-mute)}.hh-sptail .hh-prose{border-left-color:color-mix(in srgb,var(--hh-accent) 50%,var(--border-2))}.hh-blood{--hh-accent:var(--text-mute);display:block;max-width:760px;padding:22px 24px;border:1px solid color-mix(in srgb,var(--hh-accent) 32%,var(--border-1));border-left:3px solid var(--hh-accent);border-radius:var(--radius-md);background:var(--surface-card);text-decoration:none;box-shadow:var(--shadow-1);transition:border-color var(--dur-base) var(--ease-forge),box-shadow var(--dur-base) var(--ease-forge),transform var(--dur-base) var(--ease-forge)}.hh-blood:hover{border-color:color-mix(in srgb,var(--hh-accent) 55%,var(--border-2));box-shadow:var(--shadow-2);transform:translateY(-2px)}.hh-blood:focus-visible{outline:2px solid var(--hh-accent);outline-offset:3px}.hh-blood-kicker{display:block;font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);letter-spacing:.03em;color:var(--text-hi)}.hh-blood-note{display:block;margin-top:6px;font-family:var(--font-serif);font-size:var(--text-base);line-height:var(--leading-snug,1.5);color:var(--text-mute)}.hh-blood-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--hh-accent)}.hh-blood-cta:after{content:"→";transition:transform var(--dur-base) var(--ease-forge)}.hh-blood:hover .hh-blood-cta:after{transform:translateX(3px)}@media (max-width:640px){.hh-events,.hh-prose{padding-left:16px}.hh-prose p:first-of-type:first-letter{font-size:2.6em}}@media (prefers-reduced-motion:no-preference){.hh-chapter{opacity:0;animation:hh-rise var(--dur-base,.32s) var(--ease-forge,ease) forwards}@keyframes hh-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}}