*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:Georgia,'Times New Roman',serif;background:#fafaf8;color:#111;min-height:100vh}
a{color:inherit}
a:hover{opacity:.7}
img{max-width:100%;display:block}

.site-header{background:#fff;border-bottom:1px solid #e8e8e8;padding:0 2rem;position:sticky;top:0;z-index:200}
.header-inner{max-width:1000px;margin:0 auto;display:flex;align-items:center;height:56px}
.site-logo{font-family:Georgia,serif;font-size:1.3rem;font-weight:400;letter-spacing:.04em;color:#111;text-decoration:none}

.tab-nav{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;max-width:1000px;margin:0 auto;border-bottom:1px solid #e8e8e8;background:#fff;padding:0 2rem}
.tab-nav::-webkit-scrollbar{display:none}
.tab-btn{font-family:Arial,sans-serif;font-size:12px;color:#888;background:none;border:none;border-bottom:2px solid transparent;padding:.75rem .9rem;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s;margin-bottom:-1px;letter-spacing:.02em}
.tab-btn:hover{color:#111}
.tab-btn.active{color:#111;border-bottom-color:#111}
.tab-btn.reveal{color:#c8a84b}
.tab-btn.reveal.active{color:#c8a84b;border-bottom-color:#c8a84b}

.tab-panel{display:none}
.tab-panel.active{display:block}

.page-wrap{max-width:760px;margin:0 auto;padding:3rem 2rem 6rem}

.eyebrow{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#bbb;margin-bottom:.6rem}
h1.page-title{font-size:2.2rem;font-weight:400;letter-spacing:-.02em;color:#111;margin-bottom:1rem;line-height:1.15}
p.lead{font-size:1rem;color:#555;line-height:1.8;max-width:600px;margin-bottom:1.5rem}
p.body-text{font-size:.95rem;color:#444;line-height:1.8;margin-bottom:1rem}
.divider{border:none;border-top:1px solid #e8e8e8;margin:2.5rem 0}

.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1.5rem}
.card{background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:1.25rem}
.card-label{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#bbb;margin-bottom:.4rem}
.card h3{font-family:Arial,sans-serif;font-size:.9rem;font-weight:500;color:#111;margin-bottom:.4rem;line-height:1.35}
.card p{font-size:.85rem;color:#777;line-height:1.55}

.reveal-intro{padding:3rem 0 2rem;border-bottom:1px solid #e8e8e8;margin-bottom:2.5rem}
.reveal-title{font-size:2rem;font-weight:400;color:#c8a84b;margin-bottom:.75rem}
.reveal-sub{font-size:1rem;color:#666;line-height:1.75;max-width:560px}
.reveal-entry{display:block;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:1.5rem 1.75rem;text-decoration:none;color:inherit;transition:border-color .15s;margin-bottom:1rem}
.reveal-entry:hover{border-color:#c8a84b;opacity:1}
.reveal-entry-eyebrow{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#c8a84b;margin-bottom:.5rem}
.reveal-entry-title{font-size:1.1rem;font-weight:400;color:#111;margin-bottom:.4rem}
.reveal-entry-desc{font-size:.875rem;color:#777;line-height:1.6}
.reveal-entry-arrow{display:inline-block;margin-top:.75rem;font-family:Arial,sans-serif;font-size:12px;color:#c8a84b}

.pub-item{padding:1.25rem 0;border-bottom:1px solid #eee}
.pub-item:last-child{border-bottom:none}
.pub-title{font-size:1rem;color:#111;margin-bottom:.3rem}
.pub-meta{font-family:Arial,sans-serif;font-size:11px;color:#aaa;margin-bottom:.5rem}
.pub-desc{font-size:.875rem;color:#666;line-height:1.6;margin-bottom:.5rem}
.pub-link{font-family:Arial,sans-serif;font-size:12px;color:#888;text-decoration:underline;text-underline-offset:2px}

.poem-block{font-size:1rem;line-height:1.95;color:#333;margin-bottom:2.5rem;max-width:520px}
.poem-title{font-size:.85rem;font-style:italic;color:#999;margin-bottom:1rem;font-family:Arial,sans-serif}
.poem-link{font-family:Arial,sans-serif;font-size:12px;color:#aaa;text-decoration:underline;text-underline-offset:2px}

.domain-list{list-style:none;margin-top:1rem}
.domain-list li{padding:.6rem 0;border-bottom:1px solid #eee;font-size:.95rem;color:#444;font-family:'Courier New',monospace}
.domain-list li:last-child{border-bottom:none}

.about-principle{background:#f7f7f5;border-left:3px solid #ddd;padding:1rem 1.25rem;margin:1.5rem 0;font-size:.95rem;color:#444;line-height:1.75;border-radius:0 8px 8px 0;font-style:italic}

.placeholder-note{background:#f9f9f7;border:1px dashed #ddd;border-radius:10px;padding:2.5rem;text-align:center;font-family:Arial,sans-serif;font-size:13px;color:#bbb;margin-top:1.5rem}

.site-footer{border-top:1px solid #e8e8e8;background:#fff;padding:2rem;text-align:center;font-family:Arial,sans-serif;font-size:11px;color:#ccc;line-height:1.8}
.site-footer a{color:#bbb;text-decoration:none}
.site-footer a:hover{color:#111;opacity:1}

.site-nav{padding:.75rem 2rem;border-bottom:1px solid #e5e5e5;font-family:Arial,sans-serif;font-size:12px;color:#aaa;background:#fff;position:sticky;top:0;z-index:100}
.nav-home{color:#666;text-decoration:none;font-weight:500}
.nav-home:hover{color:#111;opacity:1}
.nav-sep{margin:0 6px;color:#ddd}
.nav-current{color:#bbb}

@media(max-width:640px){
  .page-wrap{padding:2rem 1rem 4rem}
  h1.page-title{font-size:1.6rem}
  .tab-btn{padding:.65rem .7rem;font-size:11px}
  .card-grid{grid-template-columns:1fr}
  .tab-nav{padding:0 1rem}
}
