/* Editorial pages: shared type, generous space, genuine book artwork. */
[hidden] { display: none !important; }
h1, h2, h3 { overflow-wrap: anywhere; hyphens: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
main:focus { outline: none; }
.page-intro { padding-block: 75px 55px; }
.page-intro .eyebrow, .author-intro .eyebrow { color: var(--teal); }
.page-intro h1 { max-width: 18ch; }
.catalogue-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 8%; align-items: end; }
.catalogue-intro .eyebrow { grid-column: 1 / -1; margin-bottom: 0; }
.catalogue-intro h1 { margin: 0; }
.catalogue-intro .lead { margin: 0; font-size: 1rem; }
.page-intro h1 em, .author-intro h1 em { color: var(--teal); }
.lead { max-width: 55ch; font-size: 1.16rem; line-height: 1.8; color: var(--muted); }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 13px; padding-top: 30px; font-size: .76rem; color: var(--muted); }
.breadcrumb a:hover { color: var(--teal); text-decoration: underline; }
.button-row { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.book-filters { display: flex; gap: 25px; align-items: flex-end; border-block: 1px solid var(--line); padding: 24px 0; margin-bottom: 40px; }
.book-filters label { display: grid; gap: 7px; font-size: .74rem; color: var(--muted); }
.book-filters input, .book-filters select { min-height: 48px; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; padding: 10px 14px; background: transparent; color: var(--ink); width: 100%; }
.search-label { flex: 1; max-width: 460px; }
.result-count { margin: 0 0 10px auto; font-size: .8rem; white-space: nowrap; color: var(--muted); }
.all-books { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 50px 25px; }
.all-books .cover-stage { height: 310px; }
.all-books h3 { font-size: 1.5rem; }
.all-books .card-meta { font-size: .75rem; }

.catalogue { padding-bottom: 70px; }
.catalogue-note { display: grid; grid-template-columns: .8fr 1.5fr 1fr; gap: 40px; align-items: start; margin-top: 70px; padding-top: 35px; border-top: 1px solid var(--line); }
.catalogue-note p { font-size: .9rem; color: var(--muted); }
.catalogue-note .text-link { justify-self: end; }
.empty-state { border: 1px solid var(--line); padding: 40px; }
.book-detail { display: grid; grid-template-columns: .85fr 1.15fr; gap: 8%; padding-block: 38px 70px; align-items: start; }
.detail-cover { min-height: 610px; padding: 35px 40px 25px; display: flex; align-items: center; flex-direction: column; justify-content: center; }
.detail-cover img { width: 82%; max-height: 515px; object-fit: contain; border-radius: 6px; filter: drop-shadow(12px 16px 10px #24372d32); }
.detail-cover>span { font-size: .62rem; letter-spacing: .2em; margin-top: 44px; color: var(--muted); }
.detail-copy { padding-top: 22px; }
.detail-copy .eyebrow { color: var(--teal); font-size: .66rem; }
.detail-copy h1 { font-size: clamp(2.8rem,4.2vw,4.2rem); }
.book-subtitle { font-size: 1rem; color: var(--muted); margin-bottom: 30px; }
.detail-tagline { font-family: var(--serif); font-size: 1.65rem; line-height: 1.35; margin-top: 30px; }
.detail-copy>p:not(.eyebrow) { max-width: 55ch; }
.detail-copy .button-row { margin: 30px 0; }
.quick-facts { margin-top: 32px; padding-top: 22px; border-top: 1px solid var(--line); display: grid; gap: 12px; }
.quick-facts>div { display: grid; grid-template-columns: 75px 1fr; gap: 15px; font-size: .78rem; }
dt { color: var(--muted); }
dd { margin: 0; }
.book-about { display: grid; grid-template-columns: .85fr 1.15fr; gap: 8%; padding-block: 20px 65px; }
.book-about .eyebrow { font-size: .65rem; color: var(--teal); }
.prose { font-size: 1.04rem; line-height: 1.85; }
.prose a:not(.button):not(.text-link) { text-decoration: underline; text-underline-offset: 4px; }
.prose h2 { font-size: 2.1rem; margin-top: 50px; line-height: 1.2; }
.prose h3 { font-size: 1.45rem; margin-top: 30px; }
.prose p { margin-bottom: 1.6em; overflow-wrap: anywhere; }
.prose ul { padding-left: 1.3em; }
.prose li { margin-bottom: .7em; }
.prose img { margin-inline: auto; max-height: 700px; width: auto; }
.prose figure { margin: 35px 0; }
figcaption { font: .76rem/1.65 var(--sans); color: var(--muted); margin-top: 15px; }
.editorial-note { border-left: 2px solid var(--teal); padding-left: 24px; font-size: .92rem; }
.editorial-note h3 { margin-top: 0; }
.language-pair { border-top: 1px solid var(--line); padding-top: 24px; font-size: .9rem; }
.editions-section { background: var(--mist); padding-block: 65px; }
.section-aside { color: var(--muted); font-size: .88rem; }
.edition-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 40px; align-items: start; }
.edition-card { border: 1px solid #bfd5d3; border-radius: 22px; background: var(--paper); padding: 27px 25px; }
.edition-card h3 { font-size: 1.4rem; margin-bottom: 24px; }
.edition-details { margin-top: 25px; font-size: .875rem; }
.edition-details summary { color: var(--muted); }
.edition-card dl { font-size: .74rem; min-height: 82px; }
.edition-card dl>div { margin-bottom: 10px; }
.book-isbn { font-size: .84rem; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.dealer-label { font-size: .68rem; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin: 25px 0 8px; }
.dealer-list { padding: 0; margin: 0; list-style: none; }
.dealer-list li { border-top: 1px solid var(--line); }
.dealer-list a { display: flex; align-items: center; justify-content: space-between; padding: 15px 0; font-size: .95rem; font-weight: 500; gap: 15px; }
.dealer-list a:hover { color: var(--teal); text-decoration: underline; }
.local-bookshop { font-size: .88rem; color: var(--muted); }
.purchase-note { font-size: .78rem; color: var(--muted); margin: 27px 0 0; max-width: 80ch; }
.compact-section { border-bottom: 1px solid var(--line); }
.historic-strip { display: flex; flex-wrap: wrap; gap: 32px; margin-block: 35px; }
.historic-strip figure { margin: 0; width: 155px; }
.historic-strip img { height: 195px; width: auto; opacity: .72; filter: saturate(.55); }
.historic-strip figcaption strong, .historic-strip figcaption span { display: block; font-size: .72rem; }
.historic-strip figcaption span { margin-top: 7px; }
.author-intro { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10%; align-items: center; padding-block: 75px; }
.author-intro h1 { line-height: 1.06; }
.author-intro figure { margin: 0; }
.author-intro img { width: 100%; max-width: 420px; background: var(--mist); }
.quote-band { background: var(--green); color: #e8f5f4; padding: 65px 0; text-align: center; }
.quote-band blockquote { font: italic clamp(1.9rem,3.8vw,3.5rem)/1.3 var(--serif); letter-spacing: -.02em; margin: 28px 0; }
.quote-band p { font-size: .76rem; color: #b1d5d8; margin: 0; }
.author-story { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 10%; padding-block: 80px; }
.author-story-heading { container-type: inline-size; }
.author-story-heading h2 { font-size: clamp(1.8rem,10cqw,4.3rem); overflow-wrap: normal; hyphens: none; }
.author-story-heading h2 span { display: block; }
.remembrance { font-size: .91rem; border-top: 1px solid var(--line); padding-top: 25px; color: var(--muted); }
.autobiography { padding-bottom: 65px; border-bottom: 1px solid var(--line); }
.reading-width { max-width: 720px; margin-inline: auto; }
.archive-overview { padding-bottom: 60px; }
.archive-grid { display: grid; grid-template-columns: 1fr; }
.archive-card { display: grid; grid-template-columns: 65px 1fr 1.2fr 100px; column-gap: 40px; align-items: center; border-top: 1px solid var(--line); padding-block: 38px; }
.archive-card .eyebrow { grid-column: 2; font-size: .7rem; color: var(--teal); margin-bottom: 12px; }
.archive-card h2 { grid-column: 2; font-size: 2.05rem; margin: 0; }
.archive-card p:not(.eyebrow) { grid-column: 3; grid-row: 1 / 3; font-size: .91rem; color: var(--muted); max-width: 43ch; margin: 0; }
.archive-card:hover h2 { color: var(--teal); }
.archive-number { grid-column: 1; grid-row: 1 / 3; color: var(--muted); font: 300 2rem var(--sans); letter-spacing: -.05em; }
.archive-card .text-link { grid-column: 4; grid-row: 1 / 3; font-size: .8rem; }
.archive-notice { background: var(--mist); border-left: 2px solid var(--teal); padding: 22px 27px; font-size: .86rem; color: var(--muted); margin-block: 35px; max-width: 850px; }
.archive-notice p { margin: 8px 0 0; }
.archive-heading { padding-top: 40px; }
.archive-heading h1 { max-width: 20ch; font-size: clamp(2.8rem,5vw,4.6rem); }
.archive-reading { padding-bottom: 30px; }
.archive-reading>.archive-notice { margin-top: 0; }
.reading-toc { border-block: 1px solid var(--line); margin: 0 auto 45px; padding: 18px 0; max-width: 720px; font-size: .86rem; }
summary { cursor: pointer; padding: 5px 0; }
.reading-toc ol { columns: 2; column-gap: 30px; padding-left: 25px; }
.reading-toc li { break-inside: avoid; margin: 10px 0; }
.reading-toc a { overflow-wrap: anywhere; }
.reading-toc a:hover { text-decoration: underline; }
.archive-prose { font-family: var(--serif); font-size: 1.13rem; }
.archive-prose h2 { font-size: 2rem; padding-top: 20px; border-top: 1px solid var(--line); }
.audio-entry { margin-bottom: 55px; }
.audio-entry audio { width: 100%; margin: 10px 0 20px; }
.audio-entry .text-link { font-family: var(--sans); font-size: .8rem; }
.historical-grid { display: grid; gap: 50px; }
.historical-card { display: grid; grid-template-columns: 150px 1fr; gap: 40px; max-width: 850px; padding-bottom: 40px; border-bottom: 1px solid var(--line); }
.historical-card>img { opacity: .7; filter: saturate(.55); width: 150px; }
.historical-card h2 { font-size: 1.8rem; }
.historical-card .eyebrow { font-size: .62rem; color: var(--muted); }
.historical-card p:not(.eyebrow) { color: var(--muted); font-size: .93rem; }
.legal-page { padding-bottom: 100px; max-width: 850px; }
.legal-page>h2:first-child { margin-top: 0; }
.contact-email { display: inline-block; font-size: clamp(1.1rem,3vw,1.7rem); margin: 15px 0 40px; color: var(--teal); overflow-wrap: anywhere; }
hr { border: 0; border-top: 1px solid var(--line); margin-block: 40px; }
.not-found { min-height: 65vh; }
.ls-legal-suite { font-family: var(--sans); }
.footer-bottom nav { flex-wrap: wrap; }
@media(max-width:1100px) {
 .all-books { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .all-books .cover-stage { height: 300px; }
 .book-detail { gap: 5%; }
 .detail-cover { min-height: 530px; padding-inline: 25px; }
 .detail-cover img { width: 90%; }
 .catalogue-note { grid-template-columns: 1fr 2fr; }
 .catalogue-note .text-link { justify-self: start; grid-column: 2; }
 .edition-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 .page-intro { padding-block: 45px 35px; }
 .catalogue-intro { grid-template-columns: 1fr; gap: 25px; }
 .page-intro h1 { font-size: 3.15rem; }
 .lead { font-size: 1rem; }
 .book-filters { flex-wrap: wrap; gap: 15px; }
 .search-label { flex-basis: 100%; max-width: none; }
 .book-filters select { min-width: 185px; }
 .all-books { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 35px 18px; }
 .all-books .cover-stage { height: 265px; }
 .all-books h3 { font-size: 1.3rem; }
 .catalogue-note { display: block; margin-top: 40px; }
 .book-detail { grid-template-columns: 1fr; gap: 30px; padding-bottom: 40px; }
 .detail-cover { min-height: 0; padding: 35px 30px 23px; }
 .detail-cover img { width: 65%; max-height: 260px; }
 .detail-cover>span { margin-top: 25px; }
 .detail-copy { padding-top: 0; }
 .detail-copy h1 { font-size: 2.8rem; }
 .book-about, .author-story { grid-template-columns: 1fr; gap: 20px; }
 .book-about { padding-bottom: 35px; }
 .editions-section { padding-block: 45px; }
 .edition-grid { gap: 15px; }
 .edition-card { padding: 23px 20px; }
 .edition-card h3 { font-size: 1.25rem; }
 .author-intro { grid-template-columns: 1fr; gap: 35px; padding-block: 45px; }
 .author-intro figure { max-width: 340px; margin-inline: auto; }
 .author-intro h1 { font-size: clamp(3rem,12vw,3.7rem); }
 .author-story { padding-block: 50px; }
 .archive-grid { grid-template-columns: 1fr; }
 .archive-card { grid-template-columns: 35px 1fr; column-gap: 20px; padding-block: 30px; }
 .archive-card p:not(.eyebrow) { grid-column: 2; grid-row: auto; margin-top: 18px; }
 .archive-card .text-link { grid-column: 2; grid-row: auto; justify-self: start; margin-top: 15px; }
 .archive-card h2 { font-size: 1.8rem; }
 .archive-prose { font-size: 1.08rem; }
 .historical-card { grid-template-columns: 110px 1fr; gap: 22px; }
 .historical-card h2 { font-size: 1.45rem; }
 .historical-card>img { width: 110px; }
 .legal-page { padding-bottom: 60px; }
 .legal-page h2 { font-size: 1.7rem; }
}
@media(max-width:420px) {
 .all-books .cover-stage { height: 220px; }
 .all-books .book-card h3 { font-size: 1.2rem; }
 .edition-grid { grid-template-columns: 1fr; }
 .reading-toc ol { columns: 1; }
 .historical-card { grid-template-columns: 85px 1fr; gap: 18px; }
 .historical-card>img { width: 85px; }
 .historical-card h2 { font-size: 1.3rem; }
 .historical-card .text-link { font-size: .74rem; }
}
@media print {
 .site-header,.site-footer,.button-row,.book-filters,.ls-legal-suite,[data-legal-suite-consent],.archive-teaser { display:none !important; }
 body { background:white; color:black; }
 .wrap { width:100%; }
 .book-detail { grid-template-columns:200px 1fr; gap:30px; }
 .detail-cover { min-height:0; padding:10px; }
 .prose,.reading-width { max-width:none; }
 .edition-card,.historical-card { break-inside:avoid; }
}
