:root{--paper:#f8f5ee;--white:#fffdf8;--ink:#203936;--muted:#52665f;--teal:#155d57;--ochre:#edc274;--line:#d6ddd2;--soft:#e9eee5;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:17px;line-height:1.65}
*{box-sizing:border-box}body{margin:0}a{color:var(--teal);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}button,input{font:inherit}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0 0 1rem}h1,h2,h3{line-height:1.12;font-weight:500}h1,h2{font-family:Georgia,'Times New Roman',serif}h1{font-size:clamp(2.6rem,5.5vw,5.1rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,3.4vw,3rem);letter-spacing:-.03em}h3{font-size:1.25rem}small,.small{font-size:.85rem}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:20}.skip:focus{top:12px}:focus-visible{outline:3px solid #bd5b22;outline-offset:5px}header{border-bottom:1px solid var(--line)}.nav{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:13px;align-items:center;color:var(--ink);text-decoration:none;font-family:Georgia,serif;font-size:1.65rem;white-space:nowrap}.mark{display:grid;place-items:center;width:40px;height:40px;background:var(--teal);color:var(--paper);border-radius:50% 50% 12% 50%;font-size:1.1rem}nav{display:flex;gap:28px;align-items:center}nav a{font-size:.88rem;text-decoration:none;color:var(--ink)}nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}main{min-height:60vh}.eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--teal);margin-bottom:20px}.hero{display:grid;grid-template-columns:1.03fr 1fr;gap:64px;align-items:center;padding:74px 0 68px}.hero .intro{max-width:490px;font-size:1.1rem;color:var(--muted)}.hero-art{position:relative;padding:22px 0 38px}.hero-art img{width:100%;aspect-ratio:1.5;object-fit:cover;border:1px solid var(--line);border-radius:150px 150px 8px 8px}.art-caption{font-size:.76rem;letter-spacing:.06em;text-align:right;margin:12px 0 0}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:26px 0 16px}.button{display:inline-block;border:1px solid var(--teal);border-radius:5px;background:var(--teal);padding:11px 20px;color:var(--white);text-decoration:none;font-size:.9rem;font-weight:600}.button:hover{background:#104b46;color:white}.button.secondary{background:transparent;color:var(--teal)}.button.secondary:hover{background:var(--soft)}.muted{color:var(--muted)}.strip{background:var(--soft);border-block:1px solid var(--line)}.strip .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:18px;font-size:.78rem;letter-spacing:.06em}.section{padding:66px 0;border-bottom:1px solid var(--line)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.section-top p{max-width:440px;margin:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}.book-card{min-width:0}.cover-stage{display:block;padding:25px 42px;background:#e8ebdf;border:1px solid var(--line);border-radius:5px;margin-bottom:22px}.book-card:nth-child(3n+2) .cover-stage{background:#eee5d5}.book-card:nth-child(3n) .cover-stage{background:#e0e9e7}.cover-stage img{width:100%;aspect-ratio:.8;box-shadow:5px 8px 16px #20393624;border:1px solid #d8d5ca}.book-card .eyebrow{margin-bottom:10px}.book-card h3 a{color:var(--ink);text-decoration:none}.book-card p{font-size:.92rem}.tag{display:inline-block;background:var(--soft);border:1px solid var(--line);border-radius:30px;padding:3px 11px;font-size:.72rem;margin:0 5px 7px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:32px}.step-number{font-family:Georgia,serif;font-size:2rem;color:var(--teal);border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:12px}.newsletter{background:var(--teal);color:var(--paper);padding:46px;border-radius:8px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin:64px 0}.newsletter h2{font-size:2.2rem}.newsletter p{margin-bottom:8px}.newsletter .eyebrow,.newsletter a{color:var(--paper)}.newsletter .button{background:var(--ochre);border-color:var(--ochre);color:var(--ink)}.newsletter-state{border-left:1px solid #b6c9bc;padding-left:30px;font-size:.95rem}.newsletter input{max-width:100%;color:#203936}.newsletter :focus-visible{outline-color:var(--ochre)}.page-heading{padding:58px 0 34px;max-width:850px}.page-heading h1{font-size:clamp(2.6rem,4vw,4rem)}.page-heading .intro{font-size:1.12rem;color:var(--muted)}.book-hero{grid-template-columns:.7fr 1fr}.book-hero .cover-stage{max-width:400px;padding:30px 40px}.book-hero h1{font-size:clamp(2.6rem,4.5vw,4rem)}.samples{display:grid;grid-template-columns:repeat(2,1fr);gap:36px}.samples figure{margin:0;min-width:0}.samples img{width:100%;border:1px solid var(--line)}figcaption{font-size:.83rem;margin-top:12px}.sample-text{white-space:pre-wrap;font-size:.9rem;overflow-wrap:anywhere}.sample-text[lang=ja]{line-height:1.9}details{border-top:1px solid var(--line);padding:14px 0}summary{cursor:pointer;color:var(--teal);font-weight:600}.companion{display:grid;grid-template-columns:230px 1fr;gap:48px;padding-bottom:50px}.companion aside .cover-stage{padding:18px 25px}.callout{padding:25px;background:var(--soft);border-radius:6px;margin-bottom:30px}.callout p:last-child{margin-bottom:0}.track{padding:25px 0;border-bottom:1px solid var(--line)}.track h3{margin-bottom:6px}.track-id{font-family:monospace;font-size:.8rem;color:var(--muted)}.track .pending{font-size:.85rem;color:var(--muted);margin-bottom:0}.variant{padding:12px 0}.variant p{margin:8px 0}audio{display:block;width:100%;max-width:520px}.audio-error{color:#8d3016}.prose{max-width:760px;padding-bottom:50px}.prose h2{font-size:2rem;margin-top:36px}.prose li{margin-bottom:10px}.back-link{font-size:.85rem}.footer{display:flex;justify-content:space-between;gap:30px;padding:36px 0;color:var(--muted);font-size:.82rem}.footer-links{display:flex;gap:24px}.footer p{margin:0}.empty{padding:30px;background:var(--soft)}
@media(max-width:850px){.hero{gap:30px;padding-block:44px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:3.3rem}.steps{gap:22px}.newsletter{gap:28px;padding:30px}.nav{min-height:85px}nav{gap:17px}.companion{grid-template-columns:175px 1fr;gap:28px}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.nav{align-items:flex-start;flex-direction:column;padding-block:20px;gap:12px}nav{gap:23px;flex-wrap:wrap}.hero{grid-template-columns:1fr;gap:18px}.hero h1{font-size:3.25rem}.hero-art{padding-top:0}.hero-art img{border-radius:85px 85px 6px 6px}.strip .wrap{flex-wrap:wrap;gap:8px 18px;font-size:.72rem}.section{padding:40px 0}.section-top{display:block}.section-top p{margin-top:18px}.grid{grid-template-columns:1fr}.cover-stage{max-width:350px;padding:28px 46px}.steps,.newsletter,.samples,.companion{grid-template-columns:1fr}.steps{gap:24px}.newsletter{margin-block:40px;padding:26px;gap:18px}.newsletter-state{padding-left:0;border-left:0;border-top:1px solid #b6c9bc;padding-top:18px}.companion aside{display:none}.book-hero .cover-stage{max-width:250px;padding:20px 30px}.footer{flex-direction:column;gap:14px}.page-heading{padding-top:38px}.actions .button{max-width:100%}}
@media(prefers-reduced-motion:no-preference){a,button{transition:background-color .15s,color .15s}}
