.hero-availability { max-width: 42ch; margin: 18px 0 0; font-size: .75rem; line-height: 1.6; }
.instrument-link { display: block; width: fit-content; margin-top: 18px; font-size: .95rem; line-height: 1.6; }
.instrument-link span { margin-left: 6px; }
.tool-inventory { display: grid; grid-template-columns: 1fr 1fr; gap: 0 64px; margin: 0; padding: 0; list-style: none; }
.tool-inventory li { position: relative; border-top: 1px solid var(--line); padding: 22px 0 22px 44px; line-height: 1.65; }
.tool-icon { position: absolute; left: 0; top: 25px; width: 24px; height: 24px; color: var(--copper); }
.tool-inventory strong { display: block; margin-bottom: 6px; font-size: 1.2rem; font-weight: 500; }
.tool-inventory span { display: block; max-width: 54ch; color: var(--muted); }
.tool-inventory a { display: inline-block; margin-top: 10px; }
.toolkit-records { max-width: 72ch; margin: 20px 0 44px; }
.bench figure:nth-child(2) .bench-plate { background: var(--panel); }
.task-walkthrough { display: grid; grid-template-columns: 1.2fr 1fr; gap: 80px; align-items: center; }
.task-steps { max-width: 52ch; padding-left: 24px; color: var(--muted); line-height: 1.75; }
.task-steps li { padding-left: 8px; margin-bottom: 20px; }
.task-steps strong { color: var(--ink); }
.task-screen { width: min(100%, 300px); margin: 0 auto; }
.task-screen img { width: 100%; border-radius: 12px; }
.task-screen figcaption, .screen-provenance { margin: 16px 0 0; color: var(--muted); font-size: .8rem; line-height: 1.65; }
.use-paths { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
.use-paths article { padding-top: 24px; border-top: 1px solid var(--line); }
.use-paths h3 { font-size: 1.5rem; font-weight: 500; letter-spacing: -.02em; }
.use-paths p { max-width: 52ch; color: var(--muted); line-height: 1.75; }
.use-paths a { display: inline-block; padding-block: 10px; line-height: 1.6; }
.tool-header { width: min(1216px, calc(100% - 96px)); margin: 40px auto 0; }
.tool-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; }
.tool-intro h1 { margin: 0; max-width: 15ch; font-size: clamp(2.8rem, 4.8vw, 4.5rem); line-height: 1.06; font-weight: 450; letter-spacing: -.035em; }
.tool-intro p { max-width: 52ch; font-size: 1.125rem; line-height: 1.65; }
.tool-intro .tool-availability { margin: 18px 0 0; font-size: .8rem; color: var(--muted); }
.tool-screens { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 48px; }
.tool-screens figure { margin: 0; min-width: 0; }
.tool-screen-plate { padding: 24px; border-radius: 16px; background: var(--panel); }
.tool-screen-plate img { width: 100%; border-radius: 12px; }
.tool-screens figcaption { margin-top: 20px; color: var(--muted); font-size: .95rem; line-height: 1.65; }
.tool-screens strong { display: block; margin-bottom: 8px; color: var(--ink); font-size: 1.35rem; font-weight: 500; }
.mode-list { margin: 0; }
.mode-list > div { display: grid; grid-template-columns: 1fr 1.5fr; gap: 40px; padding: 24px 0; border-top: 1px solid var(--line); line-height: 1.7; }
.mode-list dt { font-size: 1.2rem; font-weight: 500; }
.mode-list dd { margin: 0; max-width: 65ch; color: var(--muted); }
.tool-notes { max-width: 70ch; padding-left: 24px; color: var(--muted); line-height: 1.75; }
.tool-notes li { margin-bottom: 16px; }
.tool-close { margin-top: 88px; }
.level-scene { width: min(100%, 360px); margin: 24px 0 32px; }
.level-scene img { width: 100%; border-radius: 12px; }
@media (max-width: 860px) {
  .tool-inventory { grid-template-columns: 1fr; }
  .task-walkthrough, .use-paths, .tool-intro { grid-template-columns: 1fr; gap: 32px; }
  .task-screen { margin-top: 8px; }
  .tool-header { width: calc(100% - 48px); margin-top: 24px; }
  .tool-intro p { font-size: 1rem; }
  .tool-screen-plate { padding: 12px; }
  .tool-screens { gap: 16px; }
  .mode-list > div { grid-template-columns: 1fr; gap: 10px; }
}
@media (max-width: 600px) {
  .tool-screens { grid-template-columns: 1fr; gap: 36px; }
  .tool-screen-plate { padding: 24px; }
  .tool-screen-plate img { max-width: 280px; margin: auto; }
  .tool-intro h1 { font-size: clamp(2.7rem, 11vw, 3.5rem); }
}

.compass-screens { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; margin-top: 48px; align-items: center; }
.compass-screens figure { margin: 0; max-width: 360px; }
.compass-screens figcaption { margin-top: 20px; color: var(--muted); line-height: 1.65; }
.compass-screens figcaption strong { display: block; color: var(--ink); font-size: 1.35rem; margin-bottom: 8px; }
.compass-context h2 { font-size: clamp(2.4rem, 4vw, 4rem); line-height: 1.1; font-weight: 450; letter-spacing: -.035em; }
@media (max-width: 600px) { .compass-screens { grid-template-columns: 1fr; gap: 32px; } .compass-screens figure { margin: auto; } }

.camera-screens { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; max-width: 840px; margin: 48px auto 0; }
.camera-screens figure { margin: 0; min-width: 0; }
.camera-screens figcaption { margin-top: 20px; color: var(--muted); line-height: 1.65; }
.camera-screens strong { display: block; margin-bottom: 8px; color: var(--ink); font-size: 1.35rem; font-weight: 500; }
@media (max-width: 600px) { .camera-screens { grid-template-columns: 1fr; gap: 36px; } .camera-screens figure { max-width: 360px; margin: auto; } }

.network-jumps { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 32px; line-height: 1.6; }
.network-jumps a { padding-block: 8px; }
.network-detail { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 72px; align-items: start; scroll-margin-top: 96px; }
.network-detail > figure { max-width: 340px; margin: 0 auto; position: sticky; top: 100px; }
.network-detail figcaption { color: var(--muted); font-size: .85rem; line-height: 1.65; margin-top: 16px; }
.network-detail .mode-list > div { grid-template-columns: 1fr; gap: 8px; }
.network-scene { margin: 0 0 28px; }
.network-scene img { width: 100%; border-radius: 12px; }
@media (max-width: 860px) { .network-detail { grid-template-columns: 1fr; gap: 32px; } .network-detail > figure { position: static; width: min(100%,340px); } }
