/* Layout for the project website only. The look itself comes from the app's own style.css. */

.topbar { flex-wrap: wrap; gap: 0.3rem 1rem; }
.topbar nav { display: flex; flex-wrap: wrap; gap: 0.1rem 1.4rem; }
.topbar nav a { margin-left: 0; }

.hero { padding: 0.4rem 0 1.2rem; }
.hero h1 { font-size: 2rem; }
.hero .lede { font-size: 1.1rem; color: var(--ink-soft); max-width: 62ch; margin: 0.6rem 0 1.1rem; }

.pipeline { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4rem 0.55rem; list-style: none; margin: 0 0 1.3rem; padding: 0; font-family: var(--mono); font-size: 0.84rem; }
.pipeline li { background: var(--sheet); border: 1px solid var(--rule-strong); padding: 0.35rem 0.6rem; }
.pipeline li.arrow { border: 0; background: none; padding: 0; color: var(--margin); font-family: var(--font); }

.callout { border: 1px solid var(--rule-strong); border-left: 3px solid var(--margin); background: var(--sheet); padding: 0.8rem 1rem; margin: 0 0 1.4rem; max-width: 72ch; }
.callout p:last-child { margin-bottom: 0; }

.shots { display: grid; grid-template-columns: repeat(auto-fit, minmax(420px, 1fr)); gap: 1.2rem; }
.shots .wide { grid-column: 1 / -1; }
.shot { margin: 0; }
.shot a { display: block; }
.shot img { display: block; width: 100%; height: auto; border: 1px solid var(--rule-strong); background: var(--sheet); }
.shot figcaption { color: var(--ink-soft); font-size: 0.9rem; margin-top: 0.5rem; }
@media (max-width: 520px) { .shots { grid-template-columns: 1fr; } }

.sheet h3 { margin: 1.1rem 0 0.4rem; }
.sheet h3:first-child, .sheet .help + h3 { margin-top: 0; }
.sheet ol, .sheet ul { margin: 0 0 0.8rem; padding-left: 1.4rem; }
.sheet li { margin-bottom: 0.45rem; }
.sheet li:last-child { margin-bottom: 0; }
.sheet ol li::marker { color: var(--margin); font-weight: 600; }
.sheet p { max-width: 72ch; }
.sheet table.ledger { margin-top: 0.4rem; }
code { background: var(--paper); padding: 0.05rem 0.3rem; border-radius: 2px; }
pre.cmd { background: var(--paper); border: 1px solid var(--rule); padding: 0.7rem 0.9rem; margin: 0.4rem 0 0.8rem; }

.site-footer { border-top: 1px solid var(--rule-strong); margin-top: 2rem; padding-top: 1rem; color: var(--ink-soft); font-size: 0.9rem; display: flex; flex-wrap: wrap; gap: 0.3rem 1.6rem; }
