:root{--ink:#1c1914;--ink-soft:#3d3830;--paper:#f3efe6;--paper-deep:#e7e0d2;--rule:rgba(28,25,20,0.14);--accent:#8b3a2a;--accent-soft:#a85a3c;--mist:rgba(28,25,20,0.06);--shadow:0 18px 50px rgba(28,25,20,0.08);--ease:cubic-bezier(0.22,1,0.36,1)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(1200px 600px at 12% -10%,rgba(168,90,60,.08),transparent 60%),radial-gradient(900px 500px at 100% 0,rgba(28,25,20,.05),transparent 55%),linear-gradient(180deg,#f7f3eb 0,var(--paper) 45%,var(--paper-deep) 100%);color:var(--ink);font-family:var(--font-serif),"Noto Serif SC","Songti SC",serif}a{color:inherit;text-decoration:none}.shell{width:min(1120px,calc(100% - 2.5rem));margin:0 auto;padding:1.25rem 0 4rem}.topbar{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.5rem 0 1.25rem;border-bottom:1px solid var(--rule);animation:rise .7s var(--ease) both}.topbar .mark{font-family:var(--font-display),serif;font-size:1.35rem;letter-spacing:.18em}.topbar .hint{color:var(--ink-soft);font-size:.85rem;letter-spacing:.08em}.hero{display:grid;grid-gap:1.1rem;gap:1.1rem;padding:4.5rem 0 3.25rem;animation:rise .9s var(--ease) .05s both}.hero h1{margin:0;font-family:var(--font-display),serif;font-size:clamp(3.4rem,9vw,6.4rem);font-weight:400;letter-spacing:.22em;line-height:1}.hero .tag{margin:0;color:var(--accent);font-size:.95rem;letter-spacing:.28em}.hero .lead{margin:0;max-width:34rem;color:var(--ink-soft);font-size:1.05rem;line-height:1.85}.shelf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin:0 0 1.25rem;padding-top:.5rem;border-top:1px solid var(--rule);animation:rise .8s var(--ease) .12s both}.shelf-head h2{margin:1.4rem 0 0;font-size:1.15rem;font-weight:600;letter-spacing:.18em}.shelf-head p{margin:0 0 .15rem;color:var(--ink-soft);font-size:.9rem}.shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1rem;gap:1rem}.book{position:relative;display:flex;flex-direction:column;gap:.85rem;min-height:220px;padding:1.35rem 1.3rem 1.2rem;border:1px solid var(--rule);background:linear-gradient(160deg,rgba(255,255,255,.55),rgba(255,255,255,.12)),var(--paper);box-shadow:var(--shadow);transition:transform .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease);animation:rise .8s var(--ease) both}.book:first-child{animation-delay:.14s}.book:nth-child(2){animation-delay:.18s}.book:nth-child(3){animation-delay:.22s}.book:nth-child(4){animation-delay:.26s}.book:nth-child(5){animation-delay:.3s}.book:nth-child(6){animation-delay:.34s}.book:hover{transform:translateY(-4px);border-color:rgba(139,58,42,.35);box-shadow:0 22px 60px rgba(28,25,20,.12)}.book .seal{position:absolute;top:1.1rem;right:1.1rem;width:2.4rem;height:2.4rem;display:grid;place-items:center;border:1.5px solid rgba(139,58,42,.55);color:var(--accent);font-family:var(--font-display),serif;font-size:1.15rem;letter-spacing:0;transform:rotate(8deg);opacity:.85}.book .kicker{margin:0;color:var(--ink-soft);font-size:.75rem;letter-spacing:.14em}.book h3{margin:0;font-size:1.7rem;font-weight:700;letter-spacing:.12em}.book .quote{margin:0;color:var(--ink-soft);font-size:.95rem;line-height:1.75}.book .meta{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.75rem;border-top:1px dashed var(--rule);font-size:.82rem}.book .meta .hl{color:var(--accent-soft)}.book .meta .go{letter-spacing:.08em;color:var(--ink)}.foot{margin-top:3rem;padding-top:1.25rem;border-top:1px solid var(--rule);color:var(--ink-soft);font-size:.85rem;letter-spacing:.06em;animation:rise .8s var(--ease) .4s both}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width:720px){.shell{width:min(100% - 1.5rem,1120px)}.hero{padding:3rem 0 2.4rem}.hero h1{letter-spacing:.16em}.shelf-head{flex-direction:column;align-items:start}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}