/* Book destinations: actual covers, native scrolling, no one-edge callout rails. */
@font-face{font-family:Switzer;src:url('/fonts/switzer-latin-variable.woff2') format('woff2');font-weight:300 800;font-display:swap}
.book-page{background:#fff}
.book-hub{padding-top:88px;--book-forest:#153f38;--book-petrol:#123f49;--book-mist:#e8f0ef;--book-gold:#d8b568;--book-ink:#203f38;background:#fff;color:var(--book-ink);font-family:Switzer,Arial,sans-serif}
.book-hub *{box-sizing:border-box}
.book-inner{width:min(1440px,88vw);margin-inline:auto}
.book-hub h1,.book-hub h2,.book-hub h3{font-family:Newsreader,Georgia,serif;font-weight:450;letter-spacing:-.025em;color:inherit;line-height:1.08}
.book-hub p{line-height:1.65;max-width:72ch}
.book-hub a{color:inherit;text-underline-offset:.25em}
.book-hub :is(a,summary,button,[tabindex]):focus-visible{outline:3px solid #936b15;outline-offset:5px}
.book-hub :is(section,article,details)[id]{scroll-margin-top:110px}
.book-hero{background:var(--book-forest);color:#fff;padding:70px 0}
.book-hero .book-inner{display:grid;grid-template-columns:1.05fr 1fr;gap:5vw;align-items:center}
.book-hero h1{font-size:clamp(54px,5.8vw,94px);margin:14px 0 5px}
.book-hero .book-introduction>p{font-size:20px;max-width:46ch}
.book-hero .book-introduction>.book-plus-title{font:450 clamp(32px,3vw,50px)/1.2 Newsreader,Georgia,serif;margin:0 0 24px}
.book-hero .book-introduction>.book-lead{font:450 clamp(29px,3.1vw,46px)/1.15 Newsreader,Georgia,serif;margin:24px 0}
.book-hub .book-series{font-size:16px;font-weight:600;letter-spacing:0;text-transform:none;margin:0 0 14px}
.book-hero .book-series{color:var(--book-gold)}
.book-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch;margin:24px 0}
.book-action{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;background:var(--book-gold);color:#153f38!important;text-decoration:none;min-height:50px;border:2px solid var(--book-gold);font-size:16px;font-weight:650}
.book-action small{font-size:13px;font-weight:450;white-space:nowrap}
.book-action-secondary{background:transparent;border-color:#647e73}
.book-action-light{background:#fff;border-color:#fff}
.book-action:hover{text-decoration:underline}
.book-hub .book-quiet,.book-hero .book-introduction>.book-quiet{font-size:15px;line-height:1.6}
.book-cover-shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}
.book-cover-shelf a:nth-child(odd){padding-bottom:28px}
.book-cover-shelf img,.book-viva-covers img{display:block;width:100%;height:auto;box-shadow:0 12px 24px #09282144}
.book-viva-covers{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:610px;justify-self:end}
.book-viva-covers a:last-child{padding-top:48px}
.book-route-nav{padding:22px 0;background:#fff}
.book-route-nav .book-inner{display:flex;gap:12px 34px;flex-wrap:wrap}
.book-route-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:17px}
.book-illustrated,.book-depth{padding:66px 0;background:var(--book-mist)}
.book-section-intro{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:end;margin-bottom:40px}
.book-section-intro h2{font-size:clamp(37px,4.3vw,62px);margin:0;max-width:19ch}
.book-section-intro p{font-size:19px;margin:0}
.book-paper{display:grid;grid-template-columns:180px 1fr;gap:50px;align-items:center;padding:38px 0;border-bottom:1px solid #b5c7c1}
.book-paper-cover img{display:block;width:100%;height:auto}
.book-paper h3{font-size:clamp(29px,3.1vw,44px);margin:10px 0 18px;max-width:26ch}
.book-paper p{font-size:17px}
.book-text-link{display:inline-block;padding:8px 0;min-height:40px;font-size:16px}
.book-set{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:42px 0 15px}
.book-set h3{font-size:32px;margin:0 0 12px}
.book-set p{margin:0}
.book-original-intro{margin-bottom:35px}
.book-original-intro h2{font-size:48px}
.book-original-intro>p{font-size:18px}
.book-hub.hundred{--h-accent:#153f38;--h-ink:#203f38;--h-sheet:#fff;background:#fff}
.book-hub .hundred-books{max-width:1440px;width:88vw;padding:60px 0;margin:auto}
.book-hub .hundred-books :is(article,.hundred-book){background:#fff;box-shadow:none;border-radius:0}
.book-hub .hundred-method,.book-hub .hundred-print,.book-hub .hundred-follow,.book-hub .hundred-rights{background:#fff;color:#203f38}
.book-hub .book-original-context{font:600 15px Switzer,Arial,sans-serif;color:#43695d;text-transform:none;letter-spacing:0}
.book-look{background:var(--book-petrol);color:#fff;padding:65px 0}
.book-look h2{font-size:clamp(36px,4vw,58px);margin:0 0 20px}
.book-samples{display:flex;gap:28px;overflow:auto;padding:15px 5px 25px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain}
.book-sample{margin:0;flex:0 0 min(76vw,405px);scroll-snap-align:start}
.book-sample>a{display:block}
.book-sample img{display:block;width:100%;height:auto;background:white}
.book-sample figcaption{padding:18px 0;line-height:1.6;font-size:16px}
.book-sample figcaption>strong,.book-sample figcaption>span{display:block}
.book-sample figcaption>strong{font:450 26px/1.15 Newsreader,Georgia,serif}
.book-sample figcaption>span{font-size:14px;margin-top:8px}
.book-sample .book-credit{font-size:13px;overflow-wrap:anywhere}
.book-depth:nth-of-type(3){background:#fff}
.book-editions{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.book-edition{display:grid;grid-template-columns:170px 1fr;gap:28px;align-items:start}
.book-edition figure{margin:0}
.book-edition img{display:block;width:100%;height:auto}
.book-edition h3{font-size:33px;margin:0 0 10px}
.book-edition p{font-size:16px;margin:10px 0}
.book-edition .book-subtitle{font-size:18px}
.book-edition .book-actions{display:flex;flex-direction:column;gap:10px;margin:22px 0 8px}
.book-preview{margin-top:48px;border:2px solid #647e73;padding:22px 26px;background:transparent}
.book-preview summary{cursor:pointer;font:450 28px/1.3 Newsreader,Georgia,serif;min-height:44px;padding:6px 0}
.book-preview>p{font-size:17px;margin:20px 0}
.book-closing{padding:70px 0;background:var(--book-petrol);color:white}
.book-closing h2{font-size:clamp(34px,3.5vw,52px);max-width:22ch;margin:0 0 24px}
.book-closing p{font-size:18px}
@media(min-width:1900px){.book-cover-shelf{gap:22px}.book-paper{grid-template-columns:200px 1fr}.book-hero{padding:90px 0}}
@media(max-width:1120px){.book-hero .book-inner{grid-template-columns:1fr 1fr;gap:30px}.book-cover-shelf{grid-template-columns:1fr 1fr;max-width:450px}.book-edition{grid-template-columns:125px 1fr;gap:20px}.book-editions{gap:30px}.book-edition h3{font-size:28px}.book-action{gap:12px;padding:12px}.book-section-intro{gap:35px}}
@media(max-width:760px){.book-hub{padding-top:76px}.book-inner{width:calc(100% - 40px)}.book-hero{padding:38px 0}.book-hero .book-inner{grid-template-columns:1fr;gap:35px}.book-hero h1{font-size:58px}.book-hero .book-introduction>p{font-size:18px}.book-hero .book-introduction>.book-plus-title{font-size:34px}.book-hero .book-introduction>.book-lead{font-size:34px}.book-cover-shelf{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:none}.book-cover-shelf a:nth-child(odd){padding-bottom:16px}.book-viva-covers{max-width:430px;justify-self:center;gap:20px}.book-viva-covers a:last-child{padding-top:25px}.book-route-nav{padding:12px 0}.book-route-nav .book-inner{gap:4px 24px}.book-route-nav a{font-size:15px}.book-section-intro{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.book-section-intro h2{font-size:40px}.book-section-intro p{font-size:17px}.book-illustrated,.book-depth{padding:42px 0}.book-paper{grid-template-columns:88px minmax(0,1fr);gap:20px;padding:28px 0;align-items:start}.book-paper h3{font-size:28px}.book-paper .book-series{font-size:14px}.book-paper p{font-size:15px}.book-paper .book-actions{flex-direction:column;margin:18px 0}.book-set{display:block;padding:32px 0 15px}.book-set .book-action{margin-top:22px}.book-set h3{font-size:30px}.book-editions{grid-template-columns:1fr;gap:40px}.book-edition{grid-template-columns:100px minmax(0,1fr);gap:22px}.book-edition h3{font-size:29px}.book-edition .book-series{font-size:14px}.book-edition .book-actions{margin-top:18px}.book-preview{padding:16px}.book-preview summary{font-size:24px}.book-hub .hundred-books{width:calc(100% - 40px);padding:40px 0}.book-original-intro h2{font-size:36px}.book-look,.book-closing{padding:45px 0}.book-hub :is(section,article,details)[id]{scroll-margin-top:90px}}
@media(max-width:359px){.book-hero h1{font-size:50px}.book-paper,.book-edition{grid-template-columns:80px minmax(0,1fr);gap:16px}.book-action{font-size:15px;flex-wrap:wrap}.book-edition h3{font-size:26px}}
@media(prefers-reduced-motion:reduce){.book-hub *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Phone editions: let download labels use the page width, alongside readable copy. */
@media(max-width:760px){
  .book-hero h1{font-size:40px;line-height:1.12}
  .book-hero .book-introduction>.book-plus-title,.book-hero .book-introduction>.book-lead{font-size:28px;line-height:1.25}
  .book-hero .book-introduction>p{font-size:17px}
  .book-section-intro h2,.book-original-intro h2,.book-look h2,.book-closing h2{font-size:30px;line-height:1.18}
  .book-paper,.book-edition{grid-template-columns:1fr;gap:22px}
  .book-paper-cover,.book-edition>figure{width:120px;max-width:40%}
  .book-paper h3,.book-edition h3,.book-set h3{font-size:25px;line-height:1.22}
  .book-paper p,.book-edition p{font-size:17px}
  .book-paper .book-actions,.book-edition .book-actions{align-items:stretch}
  .book-action{padding:13px 16px;gap:14px;font-size:16px}
  .book-preview{padding:20px}
  .book-preview summary{font-size:22px;line-height:1.35}
}
