:root{--green:#31574d;--red:#a92d3e;--ink:#292d30;--muted:#505b55;--line:#c8d2cb;--paper:#fbfaf5;--tint:#eaf0ec;--serif:'Yu Mincho','Hiragino Mincho ProN',serif;--sans:'Meiryo','Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;color-scheme:light}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:500 17px/1.9 var(--sans)}a{color:var(--green);text-underline-offset:.25em}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.55;font-weight:700}h2{font-size:30px}h3{font-size:21px}p+p{margin-top:1em}.skip{position:absolute;left:16px;top:-100px;padding:12px;background:white;z-index:3}.skip:focus{top:10px}.edition-header{max-width:1180px;margin:auto;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:22px}.wordmark{font:700 38px var(--serif);text-decoration:none;display:flex;align-items:center;gap:20px}.wordmark span{font:700 13px var(--sans);letter-spacing:.1em}.edition-header>a:last-child{font-size:15px;font-weight:700}main{max-width:1120px;padding:0 28px;margin:auto}.product-hero{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(360px,1.15fr);gap:72px;padding:72px 0 80px;align-items:start}.cover{padding:0 10px}.cover img{display:block;width:100%;height:auto;border:1px solid var(--line);box-shadow:10px 16px 0 #e4e9e2}.cover figcaption{font-size:12px;margin-top:30px;color:var(--muted);text-align:center}.eyebrow{font-weight:700;letter-spacing:.1em;font-size:13px;color:var(--red);margin-bottom:15px}.product-copy h1{font:700 clamp(30px,3.5vw,44px)/1.45 var(--serif)}.product-copy h1 span{display:block;font:700 16px var(--sans);margin-top:14px}.lead{font-size:23px;font-weight:700;line-height:1.65;margin:30px 0 18px}.price{color:var(--green);font-size:36px;font-weight:700;line-height:1.5;margin:26px 0 20px}.price span{display:block;color:var(--muted);font-size:13px}.button{display:inline-block;border:2px solid var(--green);padding:14px 20px;color:white;background:var(--green);font:700 16px/1.7 var(--sans);text-decoration:none;text-align:center}.button:hover{background:#24473e;color:white}.button.secondary{background:transparent;color:var(--green);margin-top:14px}.purchase-area .button,.product-copy>.button{width:100%}.purchase-state{padding:14px 20px;border:1px solid var(--line);background:var(--tint);font-weight:700;font-size:16px}.purchase-state p{font-size:13px;font-weight:500;margin:4px 0 0}.review-notice{font-size:13px;color:var(--muted);line-height:1.9;margin-top:20px}.inside,.formats,.faq{padding:54px 0;border-top:1px solid var(--line)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:36px}.number{display:block;font-size:13px;letter-spacing:.1em;color:var(--red);font-weight:700;margin-bottom:12px}.feature-grid p{font-size:15px;margin-top:14px}.formats dl{margin:25px 0 0}.formats dl>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:20px 0;border-top:1px solid var(--line)}dt{font-weight:700;color:var(--green)}dd{margin:0;font-size:16px}.free-reading{padding:38px;background:var(--tint);border-left:5px solid var(--green);margin:10px 0 54px}.free-reading p:not(.eyebrow){margin:18px 0 24px;font-size:16px}.faq h2{margin-bottom:24px}details{border-top:1px solid var(--line);padding:21px 0}summary{font-weight:700;cursor:pointer}details p{font-size:15px;padding-top:15px}.faq{padding-top:0}footer{padding:40px 28px;border-top:1px solid var(--line);max-width:1120px;margin:auto;font-size:14px;display:flex;gap:16px 26px;flex-wrap:wrap;align-items:center}footer .wordmark{font-size:28px}.small{flex-basis:100%;font-size:12px;color:var(--muted)}
@media(max-width:780px){body{font-size:16px}.edition-header{padding:20px}.wordmark{font-size:30px}.wordmark span{display:none}.edition-header>a:last-child{font-size:13px}main{padding:0 22px}.product-hero{grid-template-columns:1fr;gap:42px;padding:36px 0 48px}.cover{max-width:280px;margin:auto}.product-copy h1{font-size:34px}.lead{font-size:22px}.feature-grid{grid-template-columns:1fr;gap:30px}.formats dl>div{grid-template-columns:1fr;gap:6px}.inside,.formats{padding:38px 0}h2{font-size:26px}.free-reading{padding:26px 20px}.button{padding:14px;font-size:15px}.price{font-size:34px}}
@media print{.edition-header,.button,.purchase-area{display:none}body{background:white}.product-hero{gap:35px;padding:25px 0}.cover{max-width:240px}.cover img{box-shadow:none}.inside,.formats,.faq{break-inside:avoid}.feature-grid{display:block}details{break-inside:avoid}}
