:root{--paper:#f7f4eb;--paper-2:#fffdf7;--ink:#1d2420;--muted:#66706a;--green:#175b47;--green-2:#0e4435;--ochre:#8a5a24;--red:#9a312b;--line:#d7d5c8;--soft:#ebe9dc;--mono:#f0eee4;--sidebar:258px;--content:980px}
*{box-sizing:border-box}
html{max-width:100%;overflow-x:hidden;scroll-behavior:smooth;scroll-padding-top:24px}
body{max-width:100%;overflow-x:hidden;margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.68}
a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--green-2)}
.layout{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);overflow:auto;padding:34px 26px 30px;border-right:1px solid var(--line);background:#f0eee4}
.brand{display:block;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid #a8aaa2;color:var(--ink);text-decoration:none}
.brand strong{display:block;font-size:25px;letter-spacing:.04em;line-height:1}
.brand span{display:block;margin-top:8px;color:var(--muted);font:600 10px/1.4 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.nav-group{margin:19px 0 0}
.nav-title{display:block;margin-bottom:6px;color:#3c4640;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase}
.sidebar nav a{display:block;position:relative;padding:3px 0;color:#53605a;text-decoration:none;font:14px/1.4 Georgia,serif}
.sidebar nav a:hover,.sidebar nav a:focus{color:var(--green);text-decoration:underline}
.sidebar nav a[aria-current="page"]{padding-left:12px;color:var(--green-2);font-weight:700}
.sidebar nav a[aria-current="page"]::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--red)}
.sidebar nav .sub{padding-left:12px;font-size:13px}
.side-note{margin-top:25px;padding-top:14px;border-top:1px solid var(--line);color:#747b76;font:11px/1.5 Arial,sans-serif}
.main{margin-left:var(--sidebar);padding:42px 52px 70px}
.content{max-width:var(--content);margin:0 auto}
.book-hero{padding-bottom:34px;border-bottom:3px double #9ca39d}
.eyebrow,.section-kicker{margin:0;color:var(--green);font:700 11px/1.4 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
h1{max-width:930px;margin:14px 0 10px;color:var(--ink);font-family:"STIX Two Text",Georgia,"Times New Roman",serif;font-size:clamp(47px,6.2vw,78px);font-weight:600;letter-spacing:.005em;line-height:1.04}
.book-subtitle{max-width:850px;margin:14px 0 0;color:#39423d;font-size:21px;line-height:1.48}
.book-description{max-width:850px;margin:17px 0 0;color:#4b554f}
.book-meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin:19px 0 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.book-meta span{color:var(--green-2);font:700 10px/1.4 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:23px 0 0}
.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:50px;max-width:100%;padding:9px 13px 9px 15px;border:1px solid var(--green-2);background:var(--green);color:#fff;text-decoration:none;box-shadow:3px 3px 0 rgba(14,68,53,.22);transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
.cta:hover,.cta:focus-visible{background:var(--green-2);color:#fff;text-decoration:none;transform:translateY(-1px);box-shadow:4px 4px 0 rgba(14,68,53,.26)}
.cta:focus-visible{outline:3px solid rgba(23,91,71,.3);outline-offset:3px}
.cta.secondary{border-color:var(--green);background:var(--paper-2);color:var(--green-2);box-shadow:3px 3px 0 rgba(23,91,71,.16)}
.cta.secondary:hover,.cta.secondary:focus-visible{background:var(--soft);color:var(--green-2);box-shadow:4px 4px 0 rgba(23,91,71,.2)}
.cta-copy{display:grid;gap:2px}
.cta-kicker{font:700 9px/1.2 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;opacity:.76}
.cta-label{font:700 14px/1.25 "IBM Plex Mono","SFMono-Regular",Consolas,monospace;letter-spacing:.01em}
.cta-arrow{color:inherit;font:400 22px/1 Arial,sans-serif}
.coverage-note{max-width:880px;margin:24px 0 0;padding:14px 17px;border-left:3px solid var(--green);background:var(--mono);color:#4b554f;font-size:14px}
.coverage-note strong{color:var(--green-2)}
section{padding:41px 0 12px;border-bottom:1px solid var(--line)}
h2{margin:4px 0 18px;padding-bottom:8px;border-bottom:1px solid #b6bbb5;color:var(--green-2);font-size:31px;line-height:1.2;font-weight:600}
.chapter-intro{max-width:840px;margin:0 0 18px;color:#4b554f}
.chapters{border-top:1px solid var(--soft)}
.chapter{display:grid;grid-template-columns:126px minmax(0,1fr);gap:25px;padding:24px 18px 24px 0;border-bottom:1px solid var(--soft);transition:background .15s ease}
.chapter:hover{background:rgba(255,253,247,.62)}
.chapter-no{padding-left:2px;color:var(--ochre);font:700 11px/1.45 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.chapter h3{margin:0;color:#26342d;font-size:20px;line-height:1.32;font-weight:600}
.chapter p{margin:7px 0 0;color:#4b554f}
.book-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:32px 0 4px}
.switch-link{display:flex;min-width:0;flex-direction:column;padding:17px 19px;border:1px solid var(--line);background:var(--paper-2);color:var(--ink);text-decoration:none}
.switch-link:last-child{text-align:right}
.switch-link:hover,.switch-link:focus-visible{border-color:#aebbb4;background:var(--soft);color:var(--ink)}
.switch-label{color:var(--red);font:700 9px/1.4 Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase}
.switch-title{margin-top:4px;color:var(--green-2);font-size:17px;font-weight:600;line-height:1.35}
footer{margin-top:36px;padding-top:18px;border-top:3px double #9ca39d;color:var(--muted);font:12px/1.6 Arial,sans-serif}
footer a{margin-right:16px}
.menu{display:none}
@media(max-width:900px){
  .sidebar{position:static;width:auto;height:auto;padding:18px 22px;border-right:0;border-bottom:1px solid var(--line)}
  .brand{display:inline-block;margin:0;border:0;padding:0}
  .brand span,.side-note{display:none}
  .menu{display:block;float:right;margin-top:0;border:1px solid #aeb2ac;background:transparent;color:var(--green-2);padding:7px 10px;font:700 11px Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
  .sidebar nav{display:none;clear:both;padding-top:15px;columns:2}
  .sidebar nav.open{display:block}
  .nav-group{break-inside:avoid;margin:10px 0 16px}
  .main{margin-left:0;padding:34px 24px 55px}
}
@media(max-width:620px){
  body{font-size:16px}
  .main{padding:28px 18px 45px}
  h1{font-size:clamp(35px,11vw,56px)}
  .book-subtitle{font-size:18px}
  .cta{width:100%}
  .sidebar nav{columns:1}
  h2{font-size:27px}
  .chapter{grid-template-columns:1fr;gap:5px;padding-right:4px}
  .book-switcher{grid-template-columns:1fr}
  .switch-link:last-child{text-align:left}
}
@media print{.sidebar,.hero-actions,.book-switcher{display:none}.main{margin:0;padding:0}.content{max-width:none}body{background:#fff;font-size:11pt}.chapter{break-inside:avoid}}
