:root{--paper:#f4f1e8;--card:#fff;--ink:#26251f;--ink-soft:#716c5f;--line:#d9d3c5;--accent:#2a4a6b;--title-accent:#b5432e;--focus:#2a4a6b}*{box-sizing:border-box}html{font-size:16px}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);margin:0;line-height:1.6}.wrap{max-width:860px;margin:0 auto;padding:20px 16px 64px}.topline{justify-content:space-between;align-items:baseline;padding:0 2px;display:flex}.brand{color:var(--ink);letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:1.08rem;font-weight:700;text-decoration:none}.brand span{color:var(--title-accent);font-style:italic}.topline-note{color:var(--ink-soft);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.63rem}.hero{background:var(--ink);color:#fffdf8;border-radius:calc(var(--radius) * 2);justify-content:space-between;gap:24px;margin-top:16px;padding:42px 36px 36px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #fffdf852;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-58px;right:-44px;box-shadow:0 0 0 20px #fffdf80f,0 0 0 41px #fffdf80a}.hero-copy,.tool-count{z-index:1;position:relative}.brow{color:#d8d1c3;font-family:var(--font-mono);letter-spacing:.13em;font-size:.65rem}h1{letter-spacing:.015em;margin:8px 0 0;font-size:clamp(2rem,6vw,3rem);font-weight:600;line-height:1.25}.hero p{color:#d8d1c3;max-width:28rem;margin:14px 0 0;font-size:.9rem}.tool-count{min-width:72px;font-family:var(--font-mono);flex-direction:column;justify-content:flex-end;align-items:flex-end;display:flex}.tool-count span{color:#d8d1c3;letter-spacing:.12em;font-size:.59rem}.tool-count strong{color:#fffdf8;letter-spacing:-.1em;font-size:2.7rem;font-weight:400;line-height:1}.tools{margin-top:34px}.section-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}h2{color:var(--ink);margin:0;font-size:1rem;font-weight:600}.section-heading p{color:var(--ink-soft);margin:0;font-size:.75rem}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tool-card{background:var(--card);border:1px solid var(--line);border-radius:calc(var(--radius) * 1.5);flex-direction:column;align-items:flex-start;min-height:232px;padding:20px 20px 18px;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;position:relative;box-shadow:0 2px #26251f0a}.tool-card:hover{border-color:var(--ink-soft);transform:translateY(-3px);box-shadow:0 8px 20px #26251f14}.card-topline{justify-content:space-between;align-items:center;width:100%;margin-bottom:26px;display:flex}.tool-number{color:var(--ink-soft);font-family:var(--font-mono);font-size:.72rem}.tool-type{color:var(--accent);font-family:var(--font-mono);letter-spacing:.08em;font-size:.59rem}.title-tool .tool-type{color:var(--title-accent)}h3{margin:0;font-size:1.12rem;font-weight:600;line-height:1.45}.tool-card p{color:var(--ink-soft);margin:10px 0 22px;font-size:.84rem}code{font-family:var(--font-mono);font-size:.88em}.card-links{flex-wrap:wrap;gap:10px 16px;margin-top:auto;display:flex}.primary-link{color:#fff;background:var(--accent);border-radius:4px;align-items:center;gap:8px;padding:7px 10px;font-size:.79rem;font-weight:600;text-decoration:none;display:inline-flex}.title-tool .primary-link{background:var(--title-accent)}.primary-link:hover{filter:brightness(.92)}.sub-link{color:var(--ink-soft);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;align-self:center;font-size:.76rem}.sub-link:hover{color:var(--ink);text-decoration-color:currentColor}footer{color:var(--ink-soft);justify-content:flex-end;margin-top:32px;font-size:.74rem;display:flex}footer a{color:inherit;text-decoration:none}footer a:hover{text-underline-offset:3px;text-decoration:underline}@media (width<=520px){.wrap{padding-top:14px}.hero{margin-top:12px;padding:32px 24px 28px}.tool-count{display:none}.section-heading{flex-direction:column;align-items:flex-start;gap:2px}.tool-grid{grid-template-columns:1fr}.tool-card{min-height:0}}@media (prefers-reduced-motion:reduce){.tool-card{transition:none}}
