:root{--ink:#181816;--bronze:#B39A72;--paper:#FAF9F5;--line:#E6E2D8;--grey:#75726A;--tan:#F2EFE8}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:Avenir Next,Segoe UI,system-ui,-apple-system,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.65}.serif{font-family:Georgia,Times New Roman,serif}.cap{font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--grey);font-weight:600}a{color:var(--ink);text-decoration:none}.wrap{max-width:1080px;margin:0 auto;padding:0 40px}nav{position:sticky;top:0;background:#faf9f5eb;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);z-index:50}.nav-in{max-width:1080px;margin:0 auto;padding:20px 40px;display:flex;justify-content:space-between;align-items:baseline}.wordmark{font-size:12px;letter-spacing:.38em;font-weight:600}.nav-links{display:flex;gap:34px}.nav-links a{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--grey);font-weight:600}.nav-links a:hover{color:var(--ink)}.nav-burger{display:none}@media(max-width:600px){.nav-in{align-items:center;position:relative}.nav-burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:26px;height:26px;cursor:pointer;margin:-6px 0}.nav-burger span{display:block;height:1.5px;width:22px;background:var(--ink);transition:transform .22s,opacity .22s}.nav-toggle:checked~.nav-burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-toggle:checked~.nav-burger span:nth-child(2){opacity:0}.nav-toggle:checked~.nav-burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#faf9f5fa;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:6px 0}.nav-toggle:checked~.nav-links{display:flex}.nav-links a{padding:15px 22px;font-size:12px;letter-spacing:.2em}.nav-links a:not(:last-child){border-bottom:1px solid var(--line)}}.hero-img{position:relative}.hero-img img{width:100%;height:clamp(210px,42vw,540px);object-fit:cover;object-position:center top;display:block}.hero-img:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#06141e00 52%,#06141e42)}@media(max-width:600px){.hero-img img{height:min(84vw,360px);object-position:center top}}.hero{padding:66px 0 110px;text-align:center}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:52px;line-height:1.25;letter-spacing:.01em;margin:0 0 26px}.hero p{max-width:440px;margin:0 auto;color:var(--grey);font-size:15.5px}.btn{display:inline-block;background:var(--ink);color:#fff;padding:15px 34px;margin-top:44px;font-family:Georgia,serif;font-size:15px;letter-spacing:.03em;transition:background .18s}.btn:hover{background:#33322d}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink);margin-left:14px}.btn.ghost:hover{background:var(--ink);color:#fff}section{padding:120px 0;border-top:1px solid var(--line)}.sec-head{margin-bottom:70px}.sec-head h2{font-family:Georgia,serif;font-weight:400;font-size:34px;margin-top:14px}.two{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.two p{color:var(--grey);margin-bottom:18px;font-size:15.5px}.two p b{color:var(--ink);font-weight:500}.txtlink{border-bottom:1px solid var(--bronze);padding-bottom:2px;font-weight:500;font-size:14px}.txtlink:hover{border-color:var(--ink)}.cover{aspect-ratio:10/15;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px;max-width:360px;margin:0 auto}.cover .cm{font-size:10px;letter-spacing:.34em;color:var(--bronze);font-weight:600}.cover h3{font-family:Georgia,serif;font-weight:400;font-size:30px;margin:18px 0 10px}.cover .cs{font-family:Georgia,serif;font-style:italic;font-size:13px;color:#cfbd98}.cover .ring{width:54px;height:54px;border:1.5px solid var(--bronze);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:20px;color:var(--bronze);margin-bottom:26px}.bookband{position:relative;overflow:hidden;color:#f3f1ec;border-top:none;background:#0e2c3d linear-gradient(103deg,#15384b,#0e2c3d 50% 100%);display:grid;align-items:center;min-height:clamp(440px,44vw,580px);padding:clamp(52px,6vw,76px) 0}.bookband .bb-grid{display:grid;grid-template-columns:1fr auto;gap:clamp(24px,3vw,48px);align-items:center;width:100%}.bookband .bb-in{position:relative;z-index:1;display:grid;gap:18px;justify-items:start}.bookband .bb-in>*{max-width:min(100%,470px)}.b3d-scene{perspective:1400px;padding:0 26px 24px 0}.b3d{position:relative;--bh:clamp(280px,26vw,380px);--sw:calc(var(--bh)*.143);height:var(--bh);aspect-ratio:2/3;transform-style:preserve-3d;transform:rotateY(-28deg) rotateX(4deg);transition:transform .6s cubic-bezier(.22,1,.36,1)}.b3d-scene:hover .b3d,.b3d-scene.live .b3d{transform:rotateY(-18deg) rotateX(2deg)}.b3d .f{position:absolute;inset:0;background:url(/book/cover-3d.jpg) center/cover no-repeat;border-radius:1px 3px 3px 1px;transform:translateZ(calc(var(--sw)/2));box-shadow:inset 4px 0 10px #ffffff0f,inset -3px 0 #060a0f8c,inset 0 1px #ffffff1a}.b3d .s{position:absolute;top:0;bottom:0;left:calc(var(--sw)/-2);width:var(--sw);background:linear-gradient(90deg,#0c151e,#101b26 45%,#1a2836);transform:rotateY(-90deg);border-radius:2px;display:flex;align-items:center;justify-content:center}.b3d .s span{transform:rotate(90deg);white-space:nowrap;font-family:Georgia,serif;font-size:clamp(11px,1.1vw,15px);letter-spacing:.18em;color:#f3efe6}.b3d .p{position:absolute;top:7px;height:calc(100% - 14px);width:calc(var(--sw) - 10px);left:calc(100% - (var(--sw) - 10px)/2 - 2px);transform:rotateY(90deg);border-radius:2px 0 0 2px;background:repeating-linear-gradient(90deg,#e6e0d2 0 1.5px,#f2eee2 1.5px 3px)}.b3d .b{position:absolute;inset:0;background:#101b26;transform:translateZ(calc(var(--sw)/-2)) rotateY(180deg);border-radius:3px 1px 1px 3px}.b3d .sh{position:absolute;left:4%;right:-6%;bottom:-5.5%;height:9%;background:radial-gradient(ellipse at 38% 50%,#0e12188c,#0e121800 64%);transform:rotateX(88deg) translateZ(-14px);filter:blur(5px)}@media(max-width:1024px){.bookband{min-height:0;padding:clamp(46px,8vw,68px) 0}.bookband .bb-grid{grid-template-columns:1fr;justify-items:center}.b3d-scene{order:-1;padding:0 0 10px}.b3d{--bh:min(56vw,300px)}.bookband .bb-in{margin-top:8px;justify-items:start}.bookband .bb-in>*{max-width:100%}}.bookband .bb-club{color:#8fa6b4}.bookband .bb-ttl{font-family:Georgia,serif;font-weight:400;font-size:clamp(30px,4.4vw,44px);line-height:1.1;color:#fbfaf7;margin:0}.bookband .bb-lede{font-family:Georgia,serif;font-style:italic;font-size:clamp(17px,2vw,20px);line-height:1.4;color:var(--bronze);margin:0}.bookband .bb-body{color:#bcc7cf;font-size:15.5px;max-width:58ch;margin:0}.bookband .bb-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px}.bookband .btn{margin-top:0;background:#fbfaf7;color:#15212b}.bookband .btn:hover{background:var(--bronze);color:#15212b}.bookband .btn.ghost{margin-left:0;background:transparent;color:#fbfaf7;border:1px solid rgba(251,250,247,.42)}.bookband .btn.ghost:hover{background:#fbfaf7;color:#15212b;border-color:#fbfaf7}.three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:60px}.three h3{font-family:Georgia,serif;font-weight:400;font-size:19px;margin:16px 0 10px}.three p{color:var(--grey);font-size:14.5px}.rule-sm{width:34px;border-top:1px solid var(--bronze)}.cast-intro{max-width:600px;font-family:Georgia,serif;font-size:17px;line-height:1.75;color:var(--grey);margin-bottom:60px}.cast-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.cast-card{text-align:center;padding:18px 10px;border-radius:10px;transition:transform .32s ease,background .32s ease}.cast-card:hover{transform:translateY(-4px);background:var(--tan)}.med{width:58px;height:58px;margin:0 auto 15px;transition:transform .32s ease}.cast-card:hover .med{transform:scale(1.09)}.med circle{transition:stroke .32s ease}.cast-card:hover .med circle{stroke:var(--ink)}.cast-dom{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--bronze);font-weight:600}.cast-card h3{font-family:Georgia,serif;font-weight:400;font-size:19px;margin:5px 0 10px}.cast-card p{color:var(--grey);font-size:13.5px;line-height:1.62}.cast-roots{margin-top:34px}.cast-roots-label{text-align:center;font-family:Georgia,serif;font-style:italic;font-size:15px;color:var(--grey);margin-bottom:34px}.roots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:620px;margin:0 auto}.root{text-align:center;padding:14px 8px;border-radius:10px;transition:transform .32s ease}.root:hover{transform:translateY(-4px)}.rmed{width:58px;height:58px;margin:0 auto 13px;transition:transform .32s ease}.root:hover .rmed{transform:scale(1.09)}.root b{font-family:Georgia,serif;font-weight:400;font-size:18px;display:block;margin-bottom:7px}.root span{color:var(--grey);font-size:13.5px}@media(max-width:820px){.cast-grid{grid-template-columns:1fr 1fr;gap:30px}.roots-grid{grid-template-columns:1fr;gap:30px}}@media(max-width:600px){.cast-grid{grid-template-columns:1fr}}@supports (animation-timeline: view()){.cast-grid,.cast-roots{animation:castrise linear both;animation-timeline:view();animation-range:entry 0% entry 65%}@keyframes castrise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}@media(prefers-reduced-motion:reduce){.cast-card,.cast-card:hover,.med,.cast-card:hover .med,.root,.root:hover,.rmed,.root:hover .rmed{transition:none;transform:none}.cast-grid,.cast-roots{animation:none}}.phone{width:270px;margin:0 auto;border:1.5px solid var(--ink);border-radius:26px;padding:14px 12px;background:#fff}.phone .ph-head{text-align:center;padding:8px 0 12px;border-bottom:1px solid var(--line)}.phone .ph-title{font-size:9px;letter-spacing:.22em;font-weight:600}.phone .ph-quote{font-family:Georgia,serif;font-style:italic;font-size:11.5px;text-align:center;padding:14px 10px 4px;color:var(--ink)}.phone .ph-src{font-size:7.5px;letter-spacing:.2em;color:var(--grey);text-align:center;font-weight:600;margin-bottom:10px}.phone .ph-row{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);padding:8px 10px;margin:6px 8px;font-size:10.5px}.phone .ph-check{width:14px;height:14px;border:1.2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:9px}.phone .ph-check.on{background:var(--ink);color:#fff}.phone .ph-btn{background:var(--ink);color:#fff;font-family:Georgia,serif;text-align:center;font-size:11px;padding:9px;margin:12px 8px 6px}.shop-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}.item{text-align:left}.item .ph{aspect-ratio:4/5;background:var(--tan);display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:background .2s}.item:hover .ph{background:#ece8de}.item .glyph{font-family:Georgia,serif;font-size:15px;color:var(--grey);font-style:italic}.item .ph{position:relative}.item .so{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#faf9f5f0;border:1px solid var(--line);padding:7px 18px;font-family:Georgia,serif;font-style:italic;font-size:13px;color:var(--ink);opacity:0;transition:opacity .18s;white-space:nowrap}.item.soldout:hover .so,.item.soldout:focus-within .so{opacity:1}@media(hover:none){.item.soldout .so{opacity:1}}.item h3{font-family:Georgia,serif;font-weight:400;font-size:16px}.item .pr{color:var(--grey);font-size:13px;margin-top:3px}.shop-note{color:var(--grey);font-size:13px;margin-top:56px;text-align:center;font-family:Georgia,serif;font-style:italic}.seal-sec{border-top:1px solid var(--line)}.seal{max-width:560px;margin:0 auto;text-align:center}.seal-q{font-family:Georgia,serif;font-style:italic;font-size:clamp(18px,2.4vw,22px);line-height:1.55;color:var(--ink)}.seal-src{margin-top:16px}.letterband{background:var(--ink);color:var(--paper);padding:100px 0;text-align:center}.letterband h2{font-family:Georgia,serif;font-weight:400;font-size:28px;margin:14px 0 8px}.letterband p{color:#b9b5aa;font-size:14.5px;max-width:420px;margin:0 auto}.lf{display:flex;gap:0;max-width:400px;margin:34px auto 0;border-bottom:1px solid #4A4842}.lf input{flex:1;background:transparent;border:none;color:var(--paper);font-family:Georgia,serif;font-style:italic;font-size:15px;padding:10px 4px}.lf input:focus{outline:none}.lf input::placeholder{color:#7a766c}.lf button{background:none;border:none;color:var(--bronze);font-family:Georgia,serif;font-size:14px;cursor:pointer;letter-spacing:.04em;padding:10px 4px}.lf button:hover{color:#cfbd98}footer{padding:60px 0;color:var(--grey);font-size:12px}.foot-in{display:flex;justify-content:space-between;align-items:baseline}.foot-in .fl{display:flex;gap:26px}.foot-in a{color:var(--grey);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}.foot-in a:hover{color:var(--ink)}.chapter{max-width:600px;margin:0 auto;padding:90px 40px 100px;animation:chfade .9s ease}@keyframes chfade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.chapter .ch-label{font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--grey);font-weight:600;text-align:center;margin-top:100px}.chapter .ch-label:first-of-type{margin-top:0}.chapter h1{font-family:Georgia,serif;font-weight:400;font-size:36px;text-align:center;margin:16px 0 10px}.chapter .fleuron{text-align:center;color:var(--bronze);font-size:22px;margin:18px 0 44px}.chapter .epigraph{font-family:Georgia,serif;font-style:italic;font-size:19px;line-height:1.6;color:var(--grey);text-align:center;max-width:480px;margin:0 auto 58px}.chapter .epigraph .src{font-style:normal;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;font-weight:600;margin-top:12px}.chapter p.body{font-family:Georgia,serif;font-size:18px;line-height:1.8;color:var(--ink);margin-bottom:26px;text-align:justify;hyphens:auto;-webkit-hyphens:auto}.chapter p.drop:first-letter{font-size:52px;line-height:.85;float:left;padding:6px 10px 0 0;color:var(--ink)}.chapter .practice{border:1px solid var(--line);border-top:2px solid var(--bronze);background:#fff;padding:40px 38px 30px;margin-top:64px}.chapter .practice .pr-head{font-size:12px;letter-spacing:.36em;text-transform:uppercase;color:var(--ink);font-weight:600;text-align:center;margin-bottom:34px}.chapter .practice .pr-row{margin-bottom:22px}.chapter .practice .pr-k{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--bronze);font-weight:600;margin-bottom:5px}.chapter .practice .pr-v{font-family:Georgia,serif;font-size:15.5px;line-height:1.7;color:var(--ink)}.chapter .practice .pr-v i{color:var(--grey)}.chapter .endnote{margin-top:90px;text-align:center}.chapter .endnote .txtlink{font-size:14px}@media(max-width:820px){.chapter{padding:60px 22px 80px}.chapter .practice{padding:26px 22px 14px}.chapter .fleuron{font-size:28px;margin:16px 0 40px}}.legal{max-width:640px;margin:0 auto;padding:90px 40px 120px}.legal h1{font-family:Georgia,serif;font-weight:400;font-size:34px;margin:14px 0 40px}.legal h2{font-family:Georgia,serif;font-weight:400;font-size:20px;margin:44px 0 12px}.legal p,.legal li{color:var(--grey);font-size:15px;margin-bottom:14px}.legal ul{padding-left:20px;margin-bottom:14px}.legal li{margin-bottom:6px}.legal a{border-bottom:1px solid var(--bronze);padding-bottom:1px}.legal a:hover{border-color:var(--ink)}.legal .updated{font-size:12px;color:var(--grey);margin-top:60px;font-style:italic;font-family:Georgia,serif}@media(max-width:820px){.legal{padding:60px 22px 90px}.two,.three,.shop-grid{grid-template-columns:1fr;gap:50px}.hero h1{font-size:36px}.wrap,.nav-in{padding-left:22px;padding-right:22px}.nav-links{gap:18px}section{padding:80px 0}.foot-in{flex-wrap:wrap;gap:16px}.foot-in .fl{flex-wrap:wrap}}
