:root{--bg:#fbfaf7;--surface:#ffffff;--ink:#17140f;--muted:#6e675c;--line:#e7e1d6;--accent:#a8763e;--accent-soft:#f3ece2;--serif:Georgia, 'Times New Roman', 'Playfair Display', serif;--sans:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;--maxw:1120px;--radius:14px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:8px 16px;border-radius:0 0 8px 0;z-index:100}.skip-link:focus{left:0}.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,247,.85);backdrop-filter:saturate(180%)blur(12px);-webkit-backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{font-family:var(--serif);font-size:1.25rem;font-weight:700;letter-spacing:-.01em}.site-nav{display:flex;gap:22px}.site-nav a{font-size:.9rem;color:var(--muted);transition:color .2s}.site-nav a:hover{color:var(--ink)}main{min-height:70vh}.hero{padding:92px 0 56px;text-align:center}.eyebrow{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}.hero-title{font-family:var(--serif);font-size:clamp(2.4rem,6vw,4rem);line-height:1.05;letter-spacing:-.02em;margin:0 auto 18px;max-width:22ch}.hero-sub{font-size:1.1rem;color:var(--muted);max-width:54ch;margin:0 auto}.section-title{font-family:var(--serif);font-size:1.6rem;margin:0 0 24px}.home-posts{padding:8px 0 96px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(23,20,15,.28)}.card-media img{width:100%;aspect-ratio:3/2;object-fit:cover}.card-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}.card-cats{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-block;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border:1px solid var(--line);border-radius:999px;padding:4px 10px;transition:background .2s}a.chip:hover{background:#efe5d6}.card-title{font-family:var(--serif);font-size:1.35rem;line-height:1.25;margin:0}.card-title a:hover{color:var(--accent)}.card-desc{color:var(--muted);font-size:.95rem;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-meta{margin-top:auto;padding-top:8px;font-size:.82rem;color:var(--muted);display:flex;gap:8px;align-items:center}.dot{opacity:.5}.list-page{padding:64px 0 96px}.list-header{max-width:720px;margin-bottom:40px}.list-title{font-family:var(--serif);font-size:clamp(2rem,4vw,2.8rem);margin:0 0 12px;letter-spacing:-.01em}.list-lead{color:var(--muted);font-size:1.05rem;margin:0}.term-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.term-card{display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;transition:transform .2s,box-shadow .2s}.term-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px -22px rgba(23,20,15,.25)}.term-name{font-family:var(--serif);font-size:1.15rem}.term-count{font-size:.82rem;color:var(--muted)}.article-hero{padding:56px 0 28px}.article-header-inner{max-width:780px}.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.article-title{font-family:var(--serif);font-size:clamp(2rem,4.5vw,3rem);line-height:1.1;letter-spacing:-.02em;margin:0 0 16px}.article-lead{font-size:1.15rem;color:var(--muted);margin:0 0 18px}.article-meta{display:flex;gap:10px;align-items:center;font-size:.85rem;color:var(--muted)}.article-cover{margin:12px 0 0}.article-cover img{width:100%;max-height:560px;object-fit:cover}@media(min-width:900px){.article-cover .container{padding:0 24px}.article-cover img{border-radius:var(--radius)}}.article-body-layout{display:grid;grid-template-columns:1fr;gap:40px;padding-top:40px;padding-bottom:24px}@media(min-width:980px){.article-body-layout{grid-template-columns:260px minmax(0,1fr);align-items:start}}.toc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;font-size:.9rem;position:sticky;top:84px}.toc-title{font-family:var(--serif);font-weight:700;margin:0 0 12px}.toc ul{list-style:none;margin:0;padding:0}.toc li{margin:8px 0;line-height:1.4}.toc li a{color:var(--muted);transition:color .2s}.toc li a:hover{color:var(--accent)}.toc ul ul{padding-left:14px;border-left:1px solid var(--line);margin-left:4px}.article-content{max-width:720px}.article-content h2{font-family:var(--serif);font-size:1.7rem;margin:2.2em 0 .6em;letter-spacing:-.01em}.article-content h3{font-family:var(--serif);font-size:1.3rem;margin:1.8em 0 .5em}.article-content p{margin:0 0 1.15em}.article-content ul,.article-content ol{margin:0 0 1.15em;padding-left:1.4em}.article-content li{margin:.35em 0}.article-content strong{font-weight:600}.article-content blockquote{margin:1.5em 0;padding:2px 0 2px 22px;border-left:3px solid var(--accent);color:var(--muted);font-family:var(--serif);font-size:1.1rem}.article-content a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.faq{padding:40px 0 80px;border-top:1px solid var(--line)}.faq .container{max-width:780px}.faq-title{font-family:var(--serif);font-size:1.7rem;margin:0 0 24px}.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;overflow:hidden}.faq-item summary{cursor:pointer;padding:18px 22px;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';font-size:1.4rem;color:var(--accent);flex-shrink:0;transition:transform .2s}.faq-item[open] summary::after{transform:rotate(45deg)}.faq-answer{padding:0 22px 20px;color:var(--muted)}.faq-answer p{margin:0}.site-footer{border-top:1px solid var(--line);padding:28px 0;font-size:.85rem;color:var(--muted)}.site-footer .container{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.site-footer p{margin:0}.site-footer a:hover{color:var(--ink)}.notfound{padding:120px 0 140px;text-align:center}.notfound-title{font-family:var(--serif);font-size:clamp(2.4rem,6vw,4rem);margin:0 0 16px;letter-spacing:-.02em}.notfound-text{color:var(--muted);font-size:1.1rem;margin:0 0 32px}.btn{display:inline-block;background:var(--ink);color:#fff;border-radius:999px;padding:12px 26px;font-size:.95rem;transition:background .2s,transform .2s}.btn:hover{background:var(--accent);transform:translateY(-1px)}.empty{color:var(--muted)}@media(max-width:640px){.hero{padding:64px 0 40px}.site-nav{gap:16px}}