:root{--ink:#183b45;--blue:#225e6d;--paper:#fffdf8;--cream:#f3efe4;--red:#c64b3c;--gold:#d5a83b;--green:#2c6b5d;--line:#c9c2b4;--muted:#5f696b;--max:1140px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.68 Georgia,serif}a{color:inherit}.skip{position:absolute;left:-9999px;background:#fff;padding:.8rem;z-index:50}.skip:focus{left:1rem}.shell{width:min(calc(100% - 2rem),var(--max));margin:auto}.mast{border-top:8px solid var(--red);border-bottom:1px solid var(--line);background:rgba(255,253,248,.97);position:sticky;top:0;z-index:20}.mast-row{min-height:86px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem}.brand{text-decoration:none;display:flex;align-items:center;gap:1rem}.folio{display:grid;place-items:center;width:48px;height:58px;border:2px solid var(--ink);background:var(--cream);font:800 1rem Arial}.brand strong{display:block;font-size:1.2rem}.brand small{font-family:Arial;letter-spacing:.1em;color:var(--muted)}.nav{display:flex;gap:1rem;align-items:center;font:800 .85rem Arial}.nav a{text-decoration:none}.nav .cta,.button.primary{background:var(--red);color:#fff;border-color:var(--red)}.menu{display:none;border:1px solid var(--ink);background:var(--cream);padding:.6rem;font-weight:800}.cover{padding:5rem 0;border-bottom:1px solid var(--line);background:linear-gradient(90deg,var(--cream) 0 50%,#fff 50%)}.cover-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}.kicker{font:800 .76rem Arial;text-transform:uppercase;letter-spacing:.15em;color:var(--red)}h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.9;letter-spacing:-.055em;margin:.6rem 0 1.5rem}.lead{font-size:1.2rem}.buttons{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.5rem}.button{display:inline-block;padding:.75rem 1rem;border:2px solid var(--ink);font:800 .9rem Arial;text-decoration:none}.button.secondary{background:#fff}.index-card{background:#fff;border:1px solid var(--ink);padding:2rem;box-shadow:14px 14px 0 var(--gold)}.index-card h2{font-size:1.4rem}.index-card a{display:flex;justify-content:space-between;text-decoration:none;padding:.75rem 0;border-top:1px dotted var(--line);font-family:Arial}.ribbon{background:var(--ink);color:#fff}.ribbon .shell{display:flex;justify-content:space-around;gap:1rem;padding:1rem 0;font-family:Arial}.section{padding:4.5rem 0}.section.tint{background:var(--cream)}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:2rem;margin-bottom:2rem}.section-head h2,.prose h1{font-size:clamp(2.2rem,5vw,4.5rem);line-height:1;letter-spacing:-.04em;margin:0}.chapters{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.chapter{background:#fff;border-top:7px solid var(--green);padding:1.5rem;min-height:260px}.chapter:nth-child(2n){border-color:var(--red)}.chapter:nth-child(3n){border-color:var(--gold)}.chapter h3{font-size:1.4rem}.number{font:800 2.3rem Arial;color:var(--line)}.content{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.prose{max-width:820px}.prose h2{font-size:1.65rem;margin:2rem 0 .4rem}.aside{background:var(--cream);border:1px solid var(--line);padding:1.4rem;align-self:start}.source{padding:1rem 0;border-bottom:1px solid var(--line)}.source h2{font-size:1.15rem;margin:0}.note{background:#fff;border-left:7px solid var(--gold);padding:1rem}.footer{background:var(--ink);color:#fff;padding:3rem 0 1rem;font-family:Arial}.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2rem}.footer a{display:block;margin:.4rem 0}.fine{border-top:1px solid #51727a;margin-top:2rem;padding-top:1rem;color:#d7e1e3}.error{min-height:70vh;display:grid;place-items:center;text-align:center}.error strong{font:900 clamp(6rem,20vw,14rem)/.8 Arial;color:var(--red);display:block}@media(max-width:900px){.nav{display:none;position:absolute;top:86px;left:0;right:0;background:#fff;padding:1rem;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu{display:block}.cover-grid,.section-head,.content{grid-template-columns:1fr}.chapters{grid-template-columns:1fr 1fr}.cover{background:var(--cream)}}@media(max-width:600px){.chapters,.foot-grid{grid-template-columns:1fr}.ribbon .shell{display:block}.ribbon span{display:block;margin:.3rem 0}h1{font-size:3.5rem}}
