:root{--paper: #f2efe7;--paper-deep: #e9e5da;--ink: #15140f;--ink-soft: #3b392f;--muted: #6d6859;--rule: #d5cfc0;--accent: #a4331c;--serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}::selection{background:#e6d7c4}.shell{min-height:100%;display:flex;flex-direction:column;max-width:1140px;margin:0 auto;padding:0 28px}.topbar{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:26px 0 22px;border-bottom:1px solid var(--rule)}.wordmark{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--ink)}.wordmark .mark{display:inline-block;width:9px;height:9px;background:var(--accent);border-radius:50%;position:relative;top:-1px}.topbar .meta{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.topbar .meta-link{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:2px}.topbar .meta-link:hover{border-bottom-color:var(--ink)}.note-lede{max-width:62ch;font-size:17px;line-height:1.65;color:var(--ink-soft);margin:0 0 8px}.note-cost{margin:10px 0 4px;padding-left:14px;border-left:2px solid var(--rule);font-size:15px;line-height:1.6;color:var(--ink-soft)}.note-ref{font-family:var(--mono);font-size:11px;line-height:1.7;letter-spacing:.02em;color:var(--muted)}.note-ref a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule)}.note-ref a:hover{border-bottom-color:var(--ink)}.code-note{font-family:var(--mono);font-size:.86em;letter-spacing:0;text-transform:none;color:var(--ink);background:var(--paper-deep);padding:1px 5px;border-radius:2px;white-space:nowrap}.mono-note{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:10.5px}.hero{padding:64px 0 44px;border-bottom:1px solid var(--rule)}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,5.4vw,4.1rem);line-height:1.03;letter-spacing:-.022em;margin:0 0 26px;max-width:17ch}.hero h1 em{font-style:italic;color:var(--ink-soft)}.hero .lede{max-width:62ch;font-size:17.5px;line-height:1.65;color:var(--ink-soft);margin:0}.hero .lede+.lede{margin-top:12px}.hero .signature{margin-top:30px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.index{padding:40px 0 8px;flex:1}.index-head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:10px;border-bottom:1px solid var(--ink)}.index-head h2{font-family:var(--mono);font-size:11.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;margin:0;color:var(--ink)}.index-head span{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.row{display:grid;grid-template-columns:42px minmax(0,1.05fr) minmax(0,1.5fr) 190px;align-items:start;gap:24px;padding:22px 0;border-bottom:1px solid var(--rule)}.row:hover{background:linear-gradient(0deg,#00000003,#00000003)}.row .num{font-family:var(--mono);font-size:11.5px;color:var(--muted);padding-top:5px;letter-spacing:.06em}.row .name-block{min-width:0}.row .name{font-family:var(--serif);font-size:25px;line-height:1.15;letter-spacing:-.012em;text-decoration:none;border-bottom:1px solid transparent;display:inline-block;padding-bottom:1px}.row .name:hover{border-bottom-color:currentColor}.row .category{display:block;margin-top:7px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.row .cat-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:7px;position:relative;top:-1px;background:var(--accent)}.row .cat-dot.offline{background:#a9a294}.row .tech{display:block;margin-top:4px;font-family:var(--mono);font-size:10px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);opacity:.8}.row .summary{font-size:14.5px;line-height:1.62;color:var(--ink-soft);margin:2px 0 0;max-width:54ch}.row .actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding-top:4px}.row .actions .inner{display:flex;gap:16px}.row .actions a{text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:2px;color:var(--ink-soft);white-space:nowrap}.row .actions a:hover{color:var(--accent);border-bottom-color:var(--accent)}.row .actions a.primary{color:var(--ink)}.row .actions a.disabled{color:#a9a294;border-bottom-color:transparent;cursor:default;pointer-events:none}.about{display:grid;grid-template-columns:190px minmax(0,1fr);gap:40px;padding:54px 0 60px;border-top:1px solid var(--rule);margin-top:48px}.about h2{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;margin:6px 0 0;color:var(--muted)}.about p{font-size:15.5px;line-height:1.7;color:var(--ink-soft);max-width:66ch;margin:0 0 14px}.about p:last-child{margin-bottom:0}.footer{border-top:1px solid var(--ink);padding:20px 0 34px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:var(--mono);font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}.footer a{text-decoration:none;border-bottom:1px solid var(--rule)}.footer a:hover{color:var(--accent);border-bottom-color:var(--accent)}.footer .right{display:flex;gap:18px}.detail{padding-bottom:20px}.crumbs{padding:26px 0 0;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.crumbs a{text-decoration:none;color:var(--muted)}.crumbs a:hover{color:var(--accent)}.crumbs .sep{color:var(--rule);margin:0 10px}.detail-head{padding:34px 0 30px;border-bottom:1px solid var(--rule)}.kicker{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px;margin-bottom:18px}.kicker .dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.kicker .dot.offline{background:#a9a294}.detail h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem,4.6vw,3.4rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 16px}.detail .tagline{font-size:19px;line-height:1.5;color:var(--ink-soft);max-width:46ch;margin:0}.actions-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-block;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:13px 20px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:1px;transition:background .12s ease,color .12s ease}.btn:hover{background:var(--accent);border-color:var(--accent)}.btn-quiet{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--muted);border-bottom:1px solid var(--rule);padding-bottom:3px}.btn-quiet:hover{color:var(--ink);border-bottom-color:var(--ink)}.status-note{font-size:13px;color:var(--muted);margin:14px 0 0}.facts{display:grid;grid-template-columns:110px 120px minmax(0,1.25fr) minmax(0,1.35fr);gap:0;border-bottom:1px solid var(--rule);margin-bottom:32px}.fact{padding:18px 22px 20px 0;border-right:1px solid var(--rule)}.fact:last-child{border-right:0}.fact dt{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.fact dd{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-soft)}.shot-frame{border:1px solid var(--rule);background:var(--paper-deep);padding:8px;margin:0 0 12px;box-shadow:0 22px 44px -34px #15140f8c}.shot-frame img{display:block;width:100%;height:auto;border:1px solid rgba(0,0,0,.08)}.shot-caption{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 54px}.sections{max-width:74ch}.section{margin-bottom:40px}.section h2{font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.012em;margin:0 0 14px;display:flex;align-items:baseline;gap:14px}.section h2 .idx{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--muted);position:relative;top:-6px}.section p{font-size:16.5px;line-height:1.72;color:var(--ink-soft);margin:0 0 16px}.section ul{list-style:none;padding:0;margin:0}.section li{position:relative;padding:9px 0 9px 22px;border-bottom:1px solid var(--rule);font-size:15.5px;line-height:1.6;color:var(--ink-soft)}.section li:last-child{border-bottom:0}.section li:before{content:"—";position:absolute;left:0;color:var(--accent);font-family:var(--mono);font-size:12px}.caveat{border-left:2px solid var(--accent);padding:4px 0 4px 20px;margin:6px 0 48px;max-width:68ch}.caveat .label{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);display:block;margin-bottom:8px}.caveat p{margin:0;font-size:15px;line-height:1.65;color:var(--ink-soft)}.pager{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--ink);padding:22px 0 56px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.pager a{text-decoration:none;color:var(--ink-soft)}.pager a:hover{color:var(--accent)}.pager .label{color:var(--muted);display:block;margin-bottom:6px;font-size:10px}.pager .right{text-align:right}.notfound{padding:90px 0}.notfound h1{font-family:var(--serif);font-weight:400;font-size:3rem;margin:0 0 12px}@media (max-width: 900px){.row{grid-template-columns:34px minmax(0,1fr) 130px;gap:16px}.row .summary{grid-column:2 / -1;margin-top:0}.facts{grid-template-columns:100px 110px minmax(0,1fr)}.fact:nth-child(3){border-right:0}.fact:nth-child(4){grid-column:1 / -1;border-right:0;padding-top:14px}.about{grid-template-columns:1fr;gap:12px}}@media (max-width: 620px){.shell{padding:0 18px}.topbar{flex-direction:column;gap:8px;align-items:flex-start;padding-bottom:16px}.hero{padding:40px 0 32px}.row{grid-template-columns:28px minmax(0,1fr);gap:12px 14px;padding:18px 0}.row .summary{grid-column:2 / -1}.row .actions{grid-column:2 / -1;padding-top:2px}.row .actions .inner{gap:18px}.row .name{font-size:22px}.facts{grid-template-columns:1fr}.fact{border-right:0;border-bottom:1px solid var(--rule);padding:14px 0}.fact:last-child{border-bottom:0}.detail h1{font-size:2.1rem}.section h2{font-size:22px}.section p{font-size:16px}.pager{flex-direction:column;gap:18px}.footer{flex-direction:column}}
