:root{color-scheme:light;--paper:#faf4e8;--ink:#243835;--muted:#526761;--line:#d6dbcd;--green:#235c48}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 "Segoe UI",system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--green)}:focus-visible{outline:3px solid #876112;outline-offset:5px}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.skip{position:absolute;top:-100px;background:var(--paper);padding:14px;z-index:3}.skip:focus{top:8px}.topbar{display:flex;gap:24px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:24px 0;border-bottom:1px solid var(--line)}.brand{font-weight:800;letter-spacing:.1em;text-decoration:none}.topbar a{display:inline-flex;min-height:44px;align-items:center}.intro{padding:64px 0 48px;max-width:750px}.eyebrow{font-size:14px;letter-spacing:.06em;color:var(--green);font-weight:700}h1,h2{font-family:"Palatino Linotype",Palatino,Georgia,serif;line-height:1.13;letter-spacing:-.025em}h1{font-size:clamp(44px,7vw,88px);font-weight:400;margin:22px 0}h2{font-size:30px;margin:24px 0 10px}.lead{font-size:21px;max-width:60ch}.shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.shelf article{display:flex;flex-direction:column;align-items:start}.shelf p{color:var(--muted);margin-top:0}.cover-link{display:block;width:100%}.shelf img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:12px;box-shadow:0 12px 28px #22382b20}.shelf h2 a{text-decoration:none}.button{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 16px;border:1px solid var(--green);border-radius:8px;color:var(--green);font-size:15px;font-weight:700;text-decoration:none}.button:hover{background:#e4edde}.parents{max-width:780px;padding:60px 0}details{padding:20px 0;border-top:1px solid var(--line)}summary{cursor:pointer;font-weight:700;min-height:44px}footer{padding:24px 0 44px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}@media(max-width:700px){.shelf{grid-template-columns:1fr;gap:48px}.shelf img{max-height:500px;object-fit:contain;background:#ecebdc}.intro{padding:36px 0}.topbar{gap:8px}.wrap{width:calc(100% - 32px)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}@media(forced-colors:active){.button{border:1px solid ButtonText}}
