:root{--ground:#e4e2dc;--ink:#16181a;--bin:#fafaf8;--rule:#bfbcb3;--signal:#ffd400;--live:#1f6f3e;--font-display:"Archivo","Archivo Expanded",system-ui,sans-serif;--font-body:"IBM Plex Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--ground)}body{font-family:var(--font-body);font-weight:400;color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit}.mono{font-family:var(--font-mono);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.masthead{display:flex;align-items:baseline;gap:14px;padding:14px 24px;background:var(--ground);border-bottom:1px solid var(--ink)}.wordmark{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-.01em;white-space:nowrap}.masthead-right,.masthead-tagline{font-size:11px;color:#4a4a46}.masthead-right{margin-left:auto}@media (max-width:640px){.masthead-right{display:none}}.stencil{background:var(--signal);border-bottom:1px solid var(--ink);display:block;text-decoration:none;padding:48px 24px 40px}.stencil .eyebrow{font-size:12px;margin-bottom:20px}.stencil .number{font-family:var(--font-display);font-weight:800;font-size:clamp(38px,9vw,108px);line-height:.95;letter-spacing:-.03em;word-break:keep-all;animation:stamp .18s ease-out}@keyframes stamp{0%{transform:scale(1.02);opacity:.6}to{transform:scale(1);opacity:1}}.stencil .tagline{margin-top:20px;font-size:16px;font-weight:500;max-width:40ch}.stencil .count{margin-top:14px;font-size:12px}@media (prefers-reduced-motion:reduce){.stencil .number{animation:none}.tag{animation:none!important;opacity:1!important}}.how{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--rule)}.how section{padding:28px 24px}.how section+section{border-left:1px solid var(--rule)}.how h2{font-family:var(--font-mono);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:12px;margin-bottom:12px}.how p{font-size:14px;line-height:1.55;max-width:44ch}.how .steps{list-style:none;counter-reset:step;display:flex;flex-direction:column;gap:10px;max-width:46ch}.how .steps li{counter-increment:step;font-size:14px;line-height:1.5;display:grid;grid-template-columns:26px 1fr;grid-gap:10px;gap:10px}.how .steps li:before{content:"0" counter(step);font-family:var(--font-mono);font-weight:500;font-size:11px;color:#6b6b66;padding-top:3px}@media (max-width:640px){.how{grid-template-columns:1fr}.how section+section{border-left:none;border-top:1px solid var(--rule)}}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:16px 24px;border-bottom:1px solid var(--rule)}.chip{font-family:var(--font-mono);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:11px;padding:5px 10px;border:1px solid var(--rule);border-radius:2px;background:transparent;color:var(--ink);cursor:pointer}.chip[data-active=true]{background:var(--ink);color:var(--bin);border-color:var(--ink)}.filters input{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;padding:6px 10px;border:1px solid var(--rule);border-radius:2px;background:var(--bin);color:var(--ink);min-width:180px;flex:1 1 180px}.filters input:focus{outline:2px solid var(--ink);outline-offset:-1px}.wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1px;gap:1px;background:var(--rule);border-bottom:1px solid var(--rule)}.tag{position:relative;background:var(--bin);padding:10px 10px 12px;display:flex;flex-direction:column;gap:6px;text-decoration:none;animation:tagIn .24s ease-out both}.tag-overlay{position:absolute;inset:0;z-index:1}.tag:hover{outline:1px solid var(--ink);outline-offset:-1px}.tag .claim{position:relative;z-index:2;text-decoration:none}.tag .claim:hover{background:var(--signal)}@keyframes tagIn{0%{opacity:0}to{opacity:1}}.tag .photo{aspect-ratio:1/1;width:100%;object-fit:cover;background:var(--ground);border:1px solid var(--rule)}.tag .idx{font-size:10px;color:#6b6b66}.tag h3{font-family:var(--font-display);font-weight:600;font-size:15px;line-height:1.2;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.4em}.tag .spec{font-size:10px;color:#4a4a46;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag .row{align-items:baseline;font-size:12px}.tag .meta,.tag .row{display:flex;justify-content:space-between}.tag .meta{font-size:10px;color:#6b6b66}.tag .claim{margin-top:4px;font-size:11px;color:var(--live);border-top:1px solid var(--rule);padding-top:8px}.tag-highlight{outline:3px solid var(--signal);outline-offset:-1px;animation:highlightFade 4s ease-out forwards}@keyframes highlightFade{0%,70%{outline-color:var(--signal)}to{outline-color:transparent}}.empty{padding:80px 24px;text-align:center;font-size:14px}.detail{display:grid;grid-template-columns:minmax(280px,480px) 1fr;grid-gap:32px;gap:32px;padding:32px 24px 64px;max-width:1000px}.detail-photo img{width:100%;object-fit:cover}.detail-photo img,.detail-photo-empty{aspect-ratio:1/1;border:1px solid var(--rule);background:var(--bin)}.detail-photo-empty{display:flex;align-items:center;justify-content:center;color:#6b6b66;font-size:12px}.detail-info{display:flex;flex-direction:column;gap:10px;min-width:0}.detail-info h1{font-family:var(--font-display);font-weight:700;font-size:clamp(24px,4vw,36px);line-height:1.05;letter-spacing:-.02em;text-wrap:balance}.detail-price{font-size:28px;color:var(--live)}.detail-meta{font-size:11px;color:#4a4a46}.detail-desc{font-size:14px;line-height:1.55;max-width:55ch}.detail-specs{border-collapse:collapse;font-size:13px;max-width:420px}.detail-specs td{border:1px solid var(--rule);padding:6px 10px}.detail-specs td.mono{font-size:10px;color:#4a4a46;text-transform:uppercase}.detail-claim{display:inline-block;margin-top:8px;padding:14px 28px;background:var(--signal);color:var(--ink);border:1px solid var(--ink);border-radius:2px;text-decoration:none;font-size:14px;align-self:flex-start}.detail-claim:hover{background:var(--ink);color:var(--signal)}@media (max-width:700px){.detail{grid-template-columns:1fr}}footer{padding:32px 24px 48px;display:grid;grid-gap:20px;gap:20px;max-width:640px}footer h2{font-family:var(--font-mono);font-weight:500;text-transform:uppercase;font-size:12px;letter-spacing:.04em;margin-bottom:8px}footer p{font-size:13px;line-height:1.55;color:#3a3a36}.admin{padding:24px;max-width:1100px}.admin nav{display:flex;gap:12px;margin-bottom:24px;border-bottom:1px solid var(--rule);padding-bottom:12px;flex-wrap:wrap}.admin nav a{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;text-decoration:none;padding:4px 8px;border:1px solid var(--rule);border-radius:2px}.admin table{width:100%;border-collapse:collapse;font-size:13px;background:var(--bin)}.admin td,.admin th{text-align:left;padding:8px 10px;border:1px solid var(--rule);vertical-align:top}.admin .btn,.admin th{font-family:var(--font-mono);font-size:11px;text-transform:uppercase}.admin .btn{padding:4px 8px;border:1px solid var(--ink);border-radius:2px;background:var(--bin);cursor:pointer}.admin .btn:hover{background:var(--signal)}.admin form.login{display:grid;grid-gap:10px;gap:10px;max-width:320px;margin-top:40px}.admin form.login input{padding:8px 10px;border:1px solid var(--rule);border-radius:2px;font-size:14px}