:root{--ink:#142522;--muted:#687570;--paper:#f4f5ef;--card:#fff;--line:#d8dfd8;--green:#1d6656;--mint:#dcece2;--orange:#df7653}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,sans-serif}header{max-width:1160px;margin:auto;padding:28px;display:flex;justify-content:space-between}header a{color:var(--muted);text-decoration:none;font-size:14px}header nav{display:flex;gap:26px}.brand{font-size:25px;font-weight:800;letter-spacing:-.07em;color:var(--ink)}.brand span{color:var(--green);font-weight:500}.hero,.content,.detail{max-width:1160px;margin:auto;padding:70px 28px}.hero{padding-top:80px;padding-bottom:85px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--green);font-weight:800;margin:0 0 14px}h1{font-size:clamp(44px,7vw,82px);line-height:1;letter-spacing:-.07em;margin:0 0 26px}.hero h1 em{font-family:Georgia,serif;color:var(--green);font-weight:400}.intro,.lead{max-width:650px;color:var(--muted);font-size:20px}.search{display:block;width:min(720px,100%);margin-top:30px;padding:20px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:17px;box-shadow:0 8px 30px #243c3210}.content{background:#e9eee7;max-width:none;padding-left:max(28px,calc((100% - 1104px)/2));padding-right:max(28px,calc((100% - 1104px)/2))}h2{letter-spacing:-.04em}.section-note,.result-note{color:var(--muted);max-width:650px}.family-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:28px 0 70px}.family{background:var(--card);padding:20px;border-radius:9px;text-decoration:none;color:var(--ink);font-weight:700}.family span{display:block;color:var(--green);font-size:12px;margin-bottom:18px}.below{margin-bottom:18px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:9px;padding:22px;text-decoration:none;color:var(--ink)}.card:hover{border-color:var(--green);transform:translateY(-2px)}.card small{color:var(--green);font-weight:700}.card h3{margin:10px 0 6px;letter-spacing:-.03em}.card p{color:var(--muted);font-size:14px;margin:0 0 16px}.card b{font-size:13px;color:var(--green)}.detail{padding-top:55px}.back{color:var(--green);text-decoration:none;display:inline-block;margin-bottom:60px}.detail h1{max-width:850px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:45px}.panel,.source{background:var(--card);border:1px solid var(--line);border-radius:9px;padding:24px}.panel h2{font-size:18px;margin-top:0}.panel ul{padding-left:20px;color:var(--muted)}.path{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.path span{color:var(--orange)}.path a{color:var(--green)}.source{margin-top:14px;color:var(--muted)}.source a,.prose a{color:var(--green)}.related-title{margin-top:60px}.family-tree{border-left:2px solid var(--green);margin:40px 0;padding-left:28px;display:grid;gap:14px;max-width:800px}.family-tree a{background:var(--card);padding:18px 22px;border-radius:8px;text-decoration:none;color:var(--ink);display:grid}.family-tree span,.family-tree small{color:var(--muted);font-size:12px}.family-tree strong{font-size:20px}.prose{max-width:800px}.prose p{font-size:19px;color:var(--muted);max-width:700px}.prose h2{margin-top:50px}footer{max-width:1160px;margin:auto;padding:25px 28px 40px;color:var(--muted);font-size:12px}@media(max-width:750px){.family-grid,.cards,.grid{grid-template-columns:1fr}.hero{padding-top:45px}.family-grid{margin-bottom:50px}}
