:root{--ink:#2b2620;--ink-soft:#4a4336;--gold:#9a7b33;--gold-line:#c49a4e;--gold-dim:#8a7a5c;--paper:#f7f1e1;--paper-hi:#fdf8ec;--red:#b03228}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif;overflow-x:hidden}
.site-head{padding:26px 0 0;text-align:center}
.site-head a{text-decoration:none;color:var(--ink)}
.site-head .t{font-size:17px;letter-spacing:6px}
.site-head .s{font-size:10px;letter-spacing:3px;color:var(--gold-dim);text-transform:uppercase;margin-top:5px}
.site-head .gl{width:160px;height:1px;margin:18px auto 0;background:linear-gradient(90deg,transparent,var(--gold-line),transparent)}
.crumbs{max-width:760px;margin:22px auto 0;padding:0 24px;font-size:12.5px;color:#8a7f68}
.crumbs a{color:#8a7f68;text-decoration:none}.crumbs a:hover{color:var(--gold)}
.page{max-width:760px;margin:0 auto;padding:30px 24px 90px;position:relative}
.hex-hero{text-align:center;padding:26px 0 8px;position:relative}
.hex-hero .bigzi{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);font-family:'Kaiti SC','STKaiti','KaiTi',serif;font-size:300px;color:rgba(43,38,32,.04);pointer-events:none}
.hexfig{margin-bottom:22px}
.hl{width:150px;height:12px;display:flex;justify-content:space-between}
.hl .seg{height:100%;border-radius:3px;background:linear-gradient(180deg,#3a342b,#231f19)}
.hl.yang .seg{width:100%}.hl.yin .seg{width:44%}
.hex-hero .num{font-size:12px;letter-spacing:4px;color:var(--gold-dim);text-transform:uppercase}
.hex-hero h1{font-size:34px;font-weight:normal;letter-spacing:2px;margin-top:10px}
.hex-hero .zh{font-family:'Kaiti SC','STKaiti','KaiTi',serif;font-size:22px;color:#7a5e22;margin-top:8px}
.hex-hero .tagline{font-style:italic;color:var(--gold-dim);font-size:15px;margin-top:12px}
.trigrams{display:flex;justify-content:center;gap:60px;margin:34px 0 8px;text-align:center}
.tri .sym{font-size:34px;color:#5a4d33}
.tri .nm{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-dim);margin-top:6px}
.tri .rl{font-size:12px;color:#8a7f68;font-style:italic;margin-top:2px}
.goldline{width:240px;height:1px;margin:34px auto;background:linear-gradient(90deg,transparent,var(--gold-line),transparent)}
.hanzi-mark{font-family:'Kaiti SC','STKaiti','KaiTi',serif;font-size:36px;color:var(--gold);display:block;text-align:center;margin-top:44px}
h2{font-size:14px;letter-spacing:4px;color:var(--gold-dim);text-transform:uppercase;font-weight:normal;text-align:center;margin:10px 0 22px}
p{font-size:16px;line-height:1.9;color:var(--ink-soft);margin-bottom:16px}
em{color:var(--ink)}
.judgment{border-left:2px solid var(--gold-line);padding:6px 0 6px 20px;font-style:italic;color:#5a4d33;margin:20px 0}
.ctx h3{font-size:15px;letter-spacing:2px;font-weight:normal;color:var(--ink);margin:26px 0 10px;padding-bottom:8px;border-bottom:1px solid rgba(154,123,51,.25)}
.ctx h3 .zi{font-family:'Kaiti SC','STKaiti','KaiTi',serif;color:var(--red);margin-right:10px}
.lines-note{text-align:center;font-size:13.5px;font-style:italic;color:#8a7f68;margin-top:-8px}
.lineitem{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid rgba(154,123,51,.16);align-items:flex-start}
.lineitem:last-child{border-bottom:none}
.lineitem .pos{min-width:66px;font-size:11px;letter-spacing:2px;color:var(--gold-dim);text-transform:uppercase;padding-top:3px}
.lineitem .txt{font-size:15px;line-height:1.75;color:var(--ink-soft)}
.related{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.relcard{flex:1 1 200px;max-width:230px;border:1px solid rgba(154,123,51,.35);border-radius:4px;padding:18px;text-align:center;background:rgba(255,255,255,.4);text-decoration:none;transition:all .3s}
.relcard:hover{box-shadow:0 6px 20px rgba(120,80,20,.12);transform:translateY(-2px)}
.relcard .rel-type{font-size:10.5px;letter-spacing:2px;color:var(--gold-dim);text-transform:uppercase}
.relcard .rel-name{font-size:17px;color:var(--ink);margin-top:8px}
.relcard .rel-zh{font-family:'Kaiti SC','STKaiti','KaiTi',serif;color:#7a5e22;font-size:15px;margin-top:4px}
.relcard .rel-why{font-size:12.5px;color:#8a7f68;font-style:italic;margin-top:8px;line-height:1.5}
.cta-box{margin-top:54px;text-align:center;border:1px solid rgba(154,123,51,.4);border-radius:4px;padding:34px 28px;background:rgba(255,255,255,.45)}
.cta-box .q{font-style:italic;font-size:17px;color:var(--ink-soft);line-height:1.7}
.btn-main{display:inline-block;background:var(--ink);color:var(--paper-hi);border:1px solid var(--ink);font-family:inherit;font-size:14px;letter-spacing:3px;padding:15px 40px;cursor:pointer;text-transform:uppercase;border-radius:2px;transition:all .35s;text-decoration:none;margin-top:22px}
.btn-main:hover{background:#3c362c;border-color:var(--gold);color:#f1e2bd}
.cta-box .note{font-size:12px;color:#8a7f68;font-style:italic;margin-top:12px}
footer{margin-top:70px;background:#ece2c9}
.mountains{display:block;width:100%;height:100px}
.foot-inner{max-width:980px;margin:0 auto;padding:6px 24px 40px;text-align:center}
.foot-links{font-size:12.5px;color:#8a7f68}
.foot-links a{color:#8a7f68;text-decoration:none;margin:0 10px}
.foot-links a:hover{color:var(--gold)}
.foot-disc{font-size:11.5px;color:#9a8e72;font-style:italic;margin-top:14px;line-height:1.7}
/* index grid */
.hexgrid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px;margin-top:10px}
@media(max-width:820px){.hexgrid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:460px){.hexgrid{grid-template-columns:repeat(2,1fr)}}
.gridcard{border:1px solid rgba(154,123,51,.3);border-radius:4px;padding:14px 6px 12px;text-align:center;background:rgba(255,255,255,.35);text-decoration:none;transition:all .25s}
.gridcard:hover{box-shadow:0 5px 16px rgba(120,80,20,.14);transform:translateY(-2px);background:rgba(255,255,255,.6)}
.minifig{margin-bottom:8px}
.minifig .hl{width:44px;height:5px}
.minifig .hl .seg{border-radius:2px}
.gridcard .gnum{font-size:10px;letter-spacing:1px;color:var(--gold-dim)}
.gridcard .gname{font-size:11.5px;color:var(--ink);margin-top:3px;line-height:1.3}
.gridcard .gzh{font-family:'Kaiti SC','STKaiti','KaiTi',serif;font-size:13px;color:#7a5e22;margin-top:2px}