:root{--paper: #f7f4ee;--paper-deep: #efeadd;--ink: #221b10;--ink-soft: #6e6250;--hairline: #ddd5c4;--azure: #1f3f68;--azure-deep: #16304f;--gold: #c19b2e;--gold-soft: #d9b64a;--display: "Cormorant Garamond", Georgia, serif;--serif: "EB Garamond", Georgia, "Times New Roman", serif;--maxw: 74rem;--gutter: clamp(1.25rem, 4vw, 2.5rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:1.125rem;line-height:1.65}h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.08;margin:0;text-wrap:balance}p{margin:0}a{color:var(--azure);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--azure-deep)}:focus-visible{outline:2px solid var(--azure);outline-offset:3px}.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.eyebrow{font-family:var(--serif);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}.site-header{position:relative;background:var(--paper);border-bottom:1px solid var(--hairline)}.site-header .wrap{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;padding-block:1.1rem}.site-header .brand{position:relative;padding-left:9.6rem}.site-header .brand img.wax-seal{position:absolute;left:0;top:50%;width:8.2rem;height:auto;transform:translateY(-34%) rotate(-7deg);filter:drop-shadow(0 7px 14px rgba(34,27,16,.34));z-index:20}@media(max-width:52rem){.site-header .brand{padding-left:6.9rem}.site-header .brand img.wax-seal{width:5.8rem}}.brand{font-family:var(--display);font-size:1.45rem;font-weight:600;letter-spacing:.02em;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:.55rem}.site-header .brand{font-size:clamp(1.7rem,2.6vw,2.1rem)}.brand img{height:1.25em;width:auto;transform:translateY(.12em)}.brand .amp{font-style:italic;color:var(--gold)}.site-nav{display:flex;gap:1.6rem;flex-wrap:wrap}.site-nav a{font-size:1rem;color:var(--ink);text-decoration:none}.site-nav a:hover{color:var(--azure)}.site-nav a[aria-current=page]{color:var(--azure);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px}.btn{display:inline-block;font-family:var(--serif);font-size:1.02rem;letter-spacing:.02em;padding:.72em 1.6em;border:1px solid transparent;border-radius:0;text-decoration:none;cursor:pointer}.btn-solid{background:var(--azure);color:var(--paper);border-color:var(--azure)}.btn-solid:hover{background:var(--azure-deep);color:var(--paper)}.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-outline:hover{background:var(--ink);color:var(--paper)}.btn-paper{background:var(--paper);color:var(--azure);border-color:var(--paper)}.btn-paper:hover{background:#fff;color:var(--azure-deep)}.btn[aria-disabled=true]{opacity:.45;cursor:default;pointer-events:none}.link-arrow{font-size:1.02rem;text-decoration:none}.link-arrow:after{content:" →"}.link-arrow:hover{text-decoration:underline}.btn-row{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.hero-panel{background:var(--azure);color:var(--paper)}.hero-panel .inner{max-width:var(--maxw);margin-inline:auto;padding:clamp(3.5rem,7vw,6rem) var(--gutter);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2.5rem,5vw,5rem);align-items:center}.hero-panel .eyebrow{color:var(--gold-soft)}.hero-panel h1{font-size:clamp(2.4rem,5.2vw,4rem);font-weight:600;color:var(--paper);margin-block:.35em .45em}.hero-panel .sub{font-size:1.18rem;line-height:1.6;color:color-mix(in srgb,var(--paper) 82%,var(--azure));max-width:34rem}.hero-panel .btn-row{margin-top:2.2rem}.hero-panel a.link-arrow{color:var(--gold-soft)}.hero-panel a.link-arrow:hover{color:var(--paper)}.hero-book{text-align:center}.hero-book .closed-book{width:min(17rem,74%);margin-inline:auto}.hero-book .caption{margin-top:1.3rem;font-style:italic;font-size:1rem;color:color-mix(in srgb,var(--paper) 70%,var(--azure))}@media(max-width:52rem){.hero-panel .inner{grid-template-columns:1fr;text-align:left}.hero-book{order:-1}.hero-book .closed-book{width:min(13rem,62%)}}.section{padding-block:clamp(3rem,6vw,5rem)}.section+.section{border-top:1px solid var(--hairline)}.section-head{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2.2rem}.section-head h2{font-size:clamp(1.7rem,3vw,2.3rem)}.bookshelf{display:flex;flex-wrap:wrap;gap:3rem 4.5rem;align-items:flex-start;border-bottom:1px solid var(--hairline);padding-bottom:2.6rem}.shelf-item{width:clamp(10.5rem,22vw,13.5rem)}.shelf-item figcaption{margin-top:1.5rem}.shelf-item h3{font-size:1.35rem;font-weight:600}.shelf-item .meta{margin-top:.3rem;font-size:.95rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.shelf-item .shelf-links{margin-top:.55rem}.shelf-note{margin-top:1.6rem;font-style:italic;color:var(--ink-soft);font-size:1rem}.closed-book{position:relative;display:block;cursor:pointer;width:100%;aspect-ratio:1024 / 1536;perspective:1700px;text-decoration:none}.cbook{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(5deg) rotateY(-22deg);transition:transform .6s cubic-bezier(.22,.61,.36,1)}.closed-book:hover .cbook,.closed-book:focus-visible .cbook{transform:rotateX(2deg) rotateY(-13deg) translateY(-7px)}.closed-book:after{content:"";position:absolute;left:8%;right:-3%;bottom:-4%;height:8%;background:radial-gradient(50% 100% at 50% 0,#19120861,#19120800 72%);filter:blur(8px);z-index:-1}.cbook-block{position:absolute;inset:1.2% -2.5% 0 1.5%;transform:translateZ(-20px);border-radius:2px 6px 8px 2px;background:linear-gradient(90deg,#cdbc93 0 40%,#efe7d0 70%,#e2d2ac);box-shadow:0 22px 40px #19120859,inset 0 0 0 1px #785f324d}.cbook-cover{position:absolute;inset:0;overflow:hidden;border-radius:2px 6px 6px 2px;transform-origin:left center;backface-visibility:hidden;transition:transform .8s cubic-bezier(.4,.05,.25,1),box-shadow .8s ease;box-shadow:0 14px 28px #19120852}.closed-book.opening .cbook{transform:rotateX(2deg) rotateY(-10deg)}.closed-book.opening .cbook-cover{transform:rotateY(-150deg) translateZ(.5px);box-shadow:-26px 18px 36px #19120866}.cbook-cover img{width:100%;height:100%;object-fit:cover;display:block}.cbook-hinge{position:absolute;top:0;bottom:0;left:0;width:12%;background:linear-gradient(90deg,#00000061,#0000001a 45%,#0000);pointer-events:none}.cbook-gloss{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,#ffffff1f,#fff0 32%)}@media(prefers-reduced-motion:reduce){.cbook,.cbook-cover{transition:none}}.reader-veil{position:fixed;inset:0;z-index:999;pointer-events:none;background:radial-gradient(120% 90% at 50% 8%,#1d150f,#0d0906 78%);opacity:0;transition:opacity .5s ease}.reader-veil.on{opacity:1}.steps{list-style:none;counter-reset:steg;display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:2rem;padding:0;margin:0}.steps li{counter-increment:steg;font-size:1.05rem}.steps li:before{content:counter(steg) ".";display:block;font-family:var(--display);font-style:italic;font-size:1.5rem;color:var(--ink-soft);margin-bottom:.3rem}.sigil-feature{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}.sigil-feature img{width:100%;height:auto;display:block;box-shadow:0 24px 48px -26px #221b1080}.sigil-feature h2{font-size:clamp(1.7rem,3vw,2.3rem);margin-block:.5rem .8rem}.sigil-feature p{max-width:54ch}.sigil-feature .link-arrow{display:inline-block;margin-top:1rem}@media(max-width:52rem){.sigil-feature{grid-template-columns:1fr}}.figure-wide{margin:clamp(1.5rem,4vw,2.5rem) 0 0}.figure-wide img{width:100%;max-width:52rem;height:auto;display:block;box-shadow:0 24px 48px -26px #221b1080}.figure-wide figcaption{margin-top:.8rem;font-style:italic;font-size:.98rem;color:var(--ink-soft)}.duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));gap:clamp(2rem,5vw,4.5rem)}.duo h2{font-size:1.7rem;margin-bottom:.7rem}.duo p{max-width:62ch}.duo .link-arrow{display:inline-block;margin-top:.9rem}.prose{max-width:42rem;padding-block:clamp(2.5rem,5vw,4rem)}.prose h1{font-size:clamp(2.1rem,4vw,3rem);margin-bottom:.5em}.prose h2{font-size:1.55rem;margin:1.8em 0 .5em}.prose p{margin-bottom:1em}.prose ul,.prose ol{margin:0 0 1em;padding-left:1.3em}.prose li{margin-bottom:.35em}.page-head{padding-top:clamp(2.5rem,5vw,4rem);display:flex;flex-direction:column;gap:.6rem}.page-head h1{font-size:clamp(2.1rem,4vw,3rem)}.page-head .lede{font-size:1.15rem;color:var(--ink-soft);max-width:38rem}blockquote{margin:1.6rem 0;padding-left:1.2rem;border-left:2px solid var(--gold);font-family:var(--display);font-style:italic;font-size:1.35rem;line-height:1.4;color:var(--ink)}.book-hero{display:grid;grid-template-columns:minmax(13rem,19rem) minmax(0,1fr);gap:clamp(2.5rem,5vw,4.5rem);align-items:start;padding-block:clamp(2.5rem,5vw,4.5rem)}.book-hero h1{font-size:clamp(2.3rem,4.5vw,3.4rem)}.book-hero .subtitle{font-style:italic;font-size:1.25rem;color:var(--ink-soft);margin-top:.4rem}.book-hero blockquote{margin-block:1.4rem}.price-line{font-size:1.05rem;color:var(--ink-soft);font-variant-numeric:tabular-nums;margin-block:1.2rem}.price-line strong{color:var(--ink);font-weight:600}.sales-note{margin-top:1.1rem;font-style:italic;color:var(--ink-soft);font-size:1rem}.why-read{margin:1.6rem 0 0;padding-left:1.2em}.why-read li{margin-bottom:.4em}@media(max-width:46rem){.book-hero{grid-template-columns:1fr}.book-hero .closed-book{max-width:14rem}}.details-list{display:grid;grid-template-columns:max-content 1fr;gap:.45rem 1.6rem;padding:0;margin:0}.details-list dt{color:var(--ink-soft)}.details-list dd{margin:0;font-variant-numeric:tabular-nums}details.faq{border-bottom:1px solid var(--hairline);padding-block:1rem}details.faq summary{font-family:var(--display);font-size:1.3rem;font-weight:600;cursor:pointer;color:var(--ink)}details.faq summary:hover{color:var(--azure)}details.faq[open] summary{color:var(--azure)}details.faq p{margin-top:.6rem;max-width:60ch}.site-footer{margin-top:clamp(3rem,7vw,5rem);border-top:1px solid var(--hairline);font-size:.98rem;color:var(--ink-soft)}.site-footer .wrap{padding-block:2.4rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.site-footer .brand{font-size:1.15rem}.site-footer p{max-width:34ch;margin-top:.6rem}.site-footer a{color:var(--ink-soft)}.site-footer a:hover{color:var(--azure)}.site-footer .cols{display:flex;flex-direction:column;gap:.45rem}
