:root{--paper:#f3e9d2;--paper2:#ead9b5;--ink:#2b1d10;--sepia:#6b4a2b;--rule:#b89868;--red:#7a2418;--blue:#24344d}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper) radial-gradient(ellipse at center,#f7efdc 0%,#efe2c3 70%,#e2cfa6 100%);min-height:100vh;color:var(--ink);font:17px/1.55 Georgia,"Times New Roman",serif}
a{color:var(--red)}
h1,h2,h3{font-family:"Playfair Display",Georgia,"Times New Roman",serif;line-height:1.15;color:var(--ink)}
.wrap{max-width:1100px;margin:0 auto;padding:0 16px}
nav{background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:5;border-bottom:3px double var(--rule)}
nav .wrap{display:flex;gap:4px;align-items:center;overflow-x:auto;white-space:nowrap}
nav a{color:var(--paper);text-decoration:none;padding:12px 10px;font-size:15px;letter-spacing:.04em;text-transform:uppercase}
nav a.on{border-bottom:2px solid #d9b77a}
nav .brand{font-variant:small-caps;text-transform:none;font-size:17px;letter-spacing:.02em;margin-right:auto;padding-left:0}
.hero{text-align:center;padding:36px 0 24px;border-bottom:1px solid var(--rule)}
.hero img.av{width:96px;height:96px;border-radius:50%;border:3px solid var(--sepia);box-shadow:0 2px 8px #0003}
.hero h1{font-size:2.1rem;margin:.4em 0 .2em;font-variant:small-caps;letter-spacing:.02em}
.hero .tag{font-style:italic;font-size:1.1rem;color:var(--sepia);margin:0 auto 1em;max-width:34em}
.hero p.lede{max-width:36em;margin:0 auto 1.2em}
.btn{display:inline-block;background:var(--red);color:#fff8ea;text-decoration:none;padding:12px 22px;border-radius:3px;font-weight:bold;letter-spacing:.03em;box-shadow:0 2px 0 #4a140c}
.btn.alt{background:transparent;color:var(--red);border:2px solid var(--red);box-shadow:none}
.orn{text-align:center;color:var(--sepia);margin:28px 0 8px;font-size:1.5rem;letter-spacing:.4em}
h2.sec{text-align:center;font-variant:small-caps;font-size:1.6rem;margin:4px 0 18px}
.grid{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:600px){.grid{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.grid{grid-template-columns:1fr 1fr 1fr}}
.card{background:#fbf5e6;border:1px solid var(--rule);box-shadow:0 2px 6px #5a3d1f22;text-decoration:none;color:var(--ink);display:block}
.card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;filter:sepia(.08)}
.card .t{padding:10px 12px 14px}
.card .ep{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--sepia)}
.card h3{font-size:1.08rem;margin:.2em 0 0}
.card .meta{font-size:.85rem;color:var(--sepia);margin-top:6px}
.shorts{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory}
.shorts a{flex:0 0 150px;scroll-snap-align:start;text-decoration:none;color:var(--ink);font-size:.85rem;line-height:1.3}
.shorts img{width:150px;aspect-ratio:9/16;object-fit:cover;border:1px solid var(--rule);display:block;margin-bottom:6px}
footer{margin-top:40px;padding:22px 0 40px;border-top:3px double var(--rule);text-align:center;font-size:.9rem;color:var(--sepia)}
.page{padding:28px 0}
.page h1{font-variant:small-caps;text-align:center;font-size:2rem;margin:.2em 0}
.intro{max-width:40em;margin:0 auto 10px;text-align:center}
.disc{max-width:40em;margin:10px auto 20px;text-align:center;font-size:.9rem;font-style:italic;color:var(--sepia);border:1px dashed var(--rule);padding:8px}
.books{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:760px){.books{grid-template-columns:1fr 1fr}}
.book{display:flex;gap:14px;background:#fbf5e6;border:1px solid var(--rule);padding:12px;box-shadow:0 2px 6px #5a3d1f22}
.book .cv{flex:0 0 92px}
.book .cv img,.book .cv .ph{width:92px;height:138px;object-fit:cover;border:1px solid #8b6b45;box-shadow:2px 2px 0 #0002;display:block}
.book .cv .ph{background:linear-gradient(135deg,#5b3a22,#3a2414);color:#ecd9b0;font-size:.7rem;padding:8px 6px;text-align:center;display:flex;align-items:center;justify-content:center;font-variant:small-caps}
.book h3{margin:0 0 2px;font-size:1.05rem}
.book .au{font-style:italic;color:var(--sepia);font-size:.92rem}
.book .ds{font-size:.92rem;margin:6px 0}
.book .used{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--blue)}
.book .st{font-size:.8rem;color:var(--sepia)}
.book .buy{display:inline-block;margin-top:8px;font-size:.9rem;padding:7px 12px}
.soon{text-align:center;background:#fbf5e6;border:1px dashed var(--rule);padding:20px;max-width:40em;margin:0 auto}
.stamp{display:inline-block;border:2px solid var(--red);color:var(--red);padding:2px 10px;transform:rotate(-3deg);font-weight:bold;letter-spacing:.12em;text-transform:uppercase;font-size:.85rem}
.prose{max-width:38em;margin:0 auto}
.prose ul{padding-left:1.2em}
.facts li{margin:.35em 0}
.preview{background:#7a2418;color:#fff3dc;text-align:center;font-size:.8rem;padding:4px}
.hero .btn{margin:5px 4px}
@media(max-width:560px){nav .brand{display:none}nav .wrap{justify-content:center}}
.book{position:relative}
.book .num{position:absolute;top:-8px;left:-8px;background:var(--ink);color:#f3e2bd;font:bold .85rem Georgia,serif;min-width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--rule)}
.jump{text-align:center;font-size:.95rem;margin:4px 0 0}
h3.epg{font-variant:small-caps;font-size:1.2rem;margin:26px 0 10px;padding-bottom:4px;border-bottom:1px solid var(--rule)}
h3.epg a{color:var(--ink);text-decoration:none}
.books{margin-left:6px}
@media(min-width:1200px){.books{grid-template-columns:1fr 1fr 1fr}}
.filters{display:none}
.js .filters{display:block;position:sticky;top:46px;z-index:4;background:#efe2c3f2;border-bottom:1px solid var(--rule);margin:0 -16px 16px;padding:8px 16px 6px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.pills{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:2px 0 4px}
.pills::-webkit-scrollbar{display:none}
@media(min-width:900px){.pills{flex-wrap:wrap;justify-content:center;overflow:visible}}
.pill{flex:0 0 auto;font:15px Georgia,serif;color:var(--ink);background:#fbf5e6;border:1px solid var(--sepia);border-radius:999px;padding:7px 14px;cursor:pointer;white-space:nowrap}
.pill.on{background:var(--ink);color:#f3e2bd;border-color:var(--ink)}
.count{font-size:.8rem;color:var(--sepia);text-align:center;margin-top:2px;font-style:italic}
.book[hidden]{display:none}
/* episode pages */
.card .cl{display:block;text-decoration:none;color:var(--ink)}
.card>.meta{padding:0 12px 12px;margin-top:-6px}
.card>.meta a{color:var(--blue)}
.epp h1{max-width:24em;margin-left:auto;margin-right:auto}
.epn{text-align:center;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--sepia);margin-top:10px}
.yt{max-width:860px;margin:14px auto 22px}
.yt button,.yt iframe{display:block;width:100%;aspect-ratio:16/9;border:1px solid var(--rule);box-shadow:0 2px 8px #5a3d1f33;background:#000;padding:0;position:relative;cursor:pointer}
.yt button img{width:100%;height:100%;object-fit:cover;display:block}
.yt .play{position:absolute;left:50%;top:50%;width:72px;height:50px;margin:-25px 0 0 -36px;background:#7a2418e6;border-radius:12px}
.yt .play:after{content:"";position:absolute;left:29px;top:15px;border-style:solid;border-width:10px 0 10px 18px;border-color:transparent transparent transparent #fff3dc}
.yt button:hover .play,.yt button:focus .play{background:#a3301f}
.ytn{font-size:.8rem;color:var(--sepia);text-align:center;margin:6px 0 0;font-style:italic}
.epp .prose p{line-height:1.65}
.epp figure{margin:22px 0;text-align:center}
.epp figure img{max-width:100%;height:auto;max-height:560px;border:1px solid var(--rule);box-shadow:0 2px 6px #5a3d1f22;filter:sepia(.06)}
.epp figcaption{font-size:.85rem;color:var(--sepia);margin-top:6px;text-align:left}
.epp figcaption .cr{display:block;font-size:.78rem;margin-top:2px}
.sources{border-top:1px solid var(--rule);margin-top:26px;padding-top:6px}
.sources h3{font-variant:small-caps;font-size:1.15rem;margin:16px 0 6px}
.srcs{font-size:.9rem;padding-left:1.2em}
.srcs li{margin:.3em 0}
.watch{text-align:center;margin:22px auto}
.pn{display:flex;gap:12px;justify-content:space-between;max-width:38em;margin:26px auto 10px}
.pn a{flex:1;display:block;background:#fbf5e6;border:1px solid var(--rule);padding:10px 12px;text-decoration:none;color:var(--ink);font-size:.95rem}
.pn a small{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--sepia)}
.pn .next{text-align:right}
.pn span{flex:1}
/* bookshelf search */
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.srch{position:relative;max-width:520px;margin:2px auto 8px}
.srch input{width:100%;font:16px Georgia,serif;color:var(--ink);background:#fffaf0;border:1px solid var(--sepia);border-radius:999px;padding:9px 40px 9px 38px;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b4a2b' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 21 21'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:13px 50%}
.srch input:focus{outline:2px solid var(--red);outline-offset:1px}
.srch input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}
.srch .clr{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:50%;background:var(--sepia);color:#fff3dc;font:bold 18px/30px Georgia,serif;cursor:pointer;padding:0}
.srch .clr[hidden],.epgrp[hidden],.nomatch[hidden]{display:none}
.nomatch{text-align:center;font-style:italic;color:var(--sepia);background:#fbf5e6;border:1px dashed var(--rule);padding:16px;max-width:30em;margin:12px auto}

/* ---- home v2 ---- */
nav{border-bottom:0}
.deckle{height:14px;margin-bottom:-14px;position:relative;z-index:4;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='14' viewBox='0 0 400 14' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L0,6.9 L6,6.3 L11,3.2 L17,7.7 L25,3.9 L29,4.5 L32,8.0 L36,6.3 L40,3.9 L44,9.2 L50,5.5 L53,6.4 L59,5.0 L63,4.2 L68,5.4 L71,3.0 L75,6.2 L78,4.0 L83,2.7 L88,3.4 L93,5.7 L101,2.2 L107,5.7 L115,4.8 L123,4.0 L131,6.7 L135,6.0 L140,5.2 L145,8.2 L153,5.8 L157,6.3 L165,8.8 L171,6.8 L174,9.3 L178,6.8 L183,4.7 L187,7.7 L193,7.2 L196,7.9 L202,3.9 L205,5.4 L213,3.1 L218,5.4 L223,5.0 L227,6.3 L232,2.3 L236,2.1 L239,3.1 L244,6.5 L252,3.4 L256,2.2 L261,3.9 L266,3.1 L274,3.4 L282,6.1 L290,6.4 L298,7.1 L303,3.4 L308,8.1 L311,5.0 L317,5.0 L323,6.1 L331,5.0 L335,5.6 L340,4.4 L345,4.1 L351,5.7 L357,6.6 L360,3.8 L363,5.6 L366,5.5 L369,6.6 L377,3.9 L382,2.0 L386,4.4 L394,0.5 L397,5.9 L400,6.9 L400,0Z' fill='%232b1d10'/%3E%3Cpath d='M326,6.9 l-0.4,1.9 M293,8.9 l-1.8,2.3 M104,6.2 l-1.5,2.6 M220,8.4 l-0.3,2.5 M121,10.0 l-1.2,2.6 M338,9.8 l-0.8,1.2 M198,6.1 l0.5,2.8 M258,7.7 l-1.1,1.2 M281,9.1 l-2.0,2.4 M20,9.3 l1.8,1.6 M282,8.3 l0.3,1.7 M299,9.7 l-1.4,1.7 M389,7.0 l-1.6,1.8 M271,7.3 l-0.0,2.0 M303,9.9 l-0.3,2.7 M86,6.9 l1.5,2.4 M41,8.2 l0.2,2.4 M392,6.3 l1.1,2.7 M249,9.0 l-0.6,1.1 M2,6.7 l1.4,2.0 M357,7.1 l-0.8,1.5 M89,9.5 l0.5,1.9 M171,8.0 l0.1,2.8 M333,9.0 l-0.9,1.0 M315,9.4 l-0.9,1.9 M107,8.1 l0.4,2.8 M324,8.8 l0.3,1.0 M319,9.8 l1.9,1.3' stroke='%232b1d10' stroke-opacity='.5' stroke-width='.7'/%3E%3C/svg%3E") repeat-x 0 0/400px 14px;filter:drop-shadow(0 2px 1px #5a3d1f40)}
.hero2{padding:22px 0 10px;text-align:center}
.banner{margin:0 auto;max-width:1068px}
.inkwrap{position:relative;background:#efe4c8;border:1px solid var(--rule);box-shadow:0 3px 12px #5a3d1f33;overflow:hidden;aspect-ratio:1896/689}
.inkwrap:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 40px #5a3d1f55;pointer-events:none}
.inkwrap picture{display:block;height:100%}.ink{display:block;width:100%;height:100%;object-fit:cover}
.banner figcaption{font-size:.76rem;color:var(--sepia);font-style:italic;margin:6px 4px 0;line-height:1.4}
@media (prefers-reduced-motion:no-preference){
 .ink{-webkit-mask-image:linear-gradient(100deg,#000 0 42%,#0009 50%,transparent 58%);mask-image:linear-gradient(100deg,#000 0 42%,#0009 50%,transparent 58%);-webkit-mask-size:250% 100%;mask-size:250% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;animation:inkreveal 1.5s cubic-bezier(.33,.1,.4,1) .1s both,inkcolor 1.5s ease-in .1s both}
}
@keyframes inkreveal{from{-webkit-mask-position:100% 0;mask-position:100% 0}to{-webkit-mask-position:0 0;mask-position:0 0}}
@keyframes inkcolor{0%{filter:grayscale(1) contrast(2.2) brightness(1.15)}55%{filter:grayscale(.8) contrast(1.5) brightness(1.06)}80%{filter:grayscale(.25) contrast(1.1)}100%{filter:none}}
.htxt{position:relative;margin-top:14px;padding:0 0 10px;border-bottom:1px solid var(--rule)}
.htxt img.av{width:96px;height:96px;border-radius:50%;border:3px solid var(--sepia);box-shadow:0 2px 8px #0004;background:var(--paper)}
.htxt h1{font-size:2.1rem;margin:.3em 0 .2em;font-variant:small-caps;letter-spacing:.02em}
.htxt .tag{font-style:italic;font-size:1.1rem;color:var(--sepia);margin:0 auto 1em;max-width:34em}
.htxt .lede{max-width:36em;margin:0 auto 1em}
.hcta{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap}
.seal{display:inline-flex;border-radius:50%;flex-direction:column;align-items:center;text-decoration:none;color:var(--red);font:bold .8rem Georgia,serif;letter-spacing:.12em;text-transform:uppercase}
.seal svg{display:block;filter:drop-shadow(1px 3px 2px #3a0a0466);transform:rotate(-8deg);transition:transform .25s}
.seal:hover svg,.seal:focus-visible svg{transform:rotate(0) scale(1.05)}
.seal span{margin-top:2px}
@media (prefers-reduced-motion:reduce){.seal svg{transition:none}}
.duo{display:grid;grid-template-columns:1fr;gap:20px;margin:22px 0 0}
@media(min-width:960px){.duo{grid-template-columns:3fr 2fr}}
.feat{background:#fbf5e6;border:1px solid var(--rule);box-shadow:0 2px 8px #5a3d1f22;display:flex;flex-direction:column}
.fimg img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.ftxt{padding:12px 16px 18px}
.kick{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--red);font-weight:bold}
.feat h2{font-size:1.5rem;margin:.25em 0 .3em}
.feat h2 a{color:var(--ink);text-decoration:none}
.ftag{font-style:italic;font-size:1.05rem;margin:0 0 .4em}
.ftag span{font-style:normal;font-size:.85rem;color:var(--sepia);white-space:nowrap}
.fmeta{font-size:.85rem;color:var(--sepia);margin:0 0 12px}
.feat .btn{margin:4px 6px 4px 0}
.tw{background:#fbf5e6 linear-gradient(#f6ecd4,#fbf5e6 60px);border:1px solid var(--rule);outline:1px solid var(--rule);outline-offset:-6px;padding:16px 18px 12px;box-shadow:0 2px 8px #5a3d1f22}
.tw h2{margin:0;text-align:center;font-variant:small-caps;font-size:1.7rem;line-height:1}
.tw h2 small{display:block;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sepia);font-variant:normal;margin-bottom:4px}
.twr{text-align:center;font-size:.8rem;color:var(--sepia);font-style:italic;margin:6px 0 8px;border-bottom:1px solid var(--rule);padding-bottom:8px}
.tw ul{list-style:none;margin:0;padding:0}
.tw li{font-size:.93rem;line-height:1.45;padding:7px 0;border-bottom:1px dotted var(--rule)}
.tw li:last-child{border-bottom:0}
.tw time{display:inline-block;font-weight:bold;color:var(--red);font-variant:small-caps;min-width:3.6em}
.twsrc{font-size:.75rem;color:var(--sepia)}
.twep{font-size:.8rem;color:var(--blue);font-weight:bold;white-space:nowrap}
.twf{font-size:.72rem;color:var(--sepia);text-align:center;margin:6px 0 0;font-style:italic}
#top50,#books,#gems,#cited{scroll-margin-top:64px}
/* hero: modest banner on tablets/desktops; phones keep the full-panorama aspect ratio */
@media (min-width:700px){.inkwrap{aspect-ratio:auto;height:clamp(200px,21vw,240px)}.ink{object-position:50% 52%}}
/* bigger Pierre medallion */
.htxt picture{display:block}
.htxt img.av{width:156px;height:156px;border-width:4px;box-shadow:0 3px 12px #0004;margin:6px auto 10px;display:block}
@media (min-width:700px){.htxt img.av{width:172px;height:172px}}
