@font-face{font-family:Body;src:url(/fonts/AtkinsonHyperlegible-Regular.ttf);font-display:swap}
@font-face{font-family:Body;font-weight:700;src:url(/fonts/AtkinsonHyperlegible-Bold.ttf);font-display:swap}
@font-face{font-family:Head;src:url(/fonts/PlayfairDisplay-Variable.ttf);font-weight:400 900;font-display:swap}
@font-face{font-family:Hand;src:url(/fonts/Caveat.ttf);font-weight:400 700;font-display:swap}
:root{--paper:#f6f1e4;--paper2:#efe7d3;--ink:#1c1b18;--green:#1f3d2b;--green2:#2c5640;--ochre:#8a6d2f;--line:#cfc5ad}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 20px/1.6 Body,Verdana,sans-serif;-webkit-text-size-adjust:100%}
img{max-width:100%;height:auto;display:block}
a{color:var(--green)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.narrow{max-width:760px}
.center{text-align:center}
.muted{color:#5e5848}
.small{font-size:16px;margin:.4em 0}
h1,h2,h3{font-family:Head,Georgia,serif;color:var(--green);line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(42px,7vw,68px);font-weight:800}
h2{font-size:clamp(30px,4.6vw,42px);font-weight:700;text-align:center}
h3{font-size:26px}
section{padding:64px 0;border-bottom:1px solid var(--line)}
.top{position:sticky;top:0;z-index:5;background:var(--green);color:#fff}
.top-in{display:flex;justify-content:space-between;align-items:center;height:56px}
.brand{font:700 21px Head,serif;color:#fff;text-decoration:none}
.top-btn{color:var(--green);background:var(--paper);padding:7px 16px;border-radius:4px;font-weight:700;font-size:17px;text-decoration:none}
.kicker{font-size:15px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ochre);margin:0 0 .4em}
.lead{font:600 26px/1.35 Head,Georgia,serif;color:var(--ink)}
.hero{background:linear-gradient(var(--paper),var(--paper2))}
.hero-in{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.hero-cover img{box-shadow:0 18px 40px rgba(31,61,43,.28);border-radius:3px;transform:rotate(1.5deg)}
.buy{margin-top:22px}
.price-line{font:800 34px Head,serif;color:var(--green);margin:0 0 10px}
.price-line .muted{font:400 18px Body,sans-serif;margin-left:6px}
.btn{display:inline-block;background:var(--green);color:#fff;border:0;border-radius:6px;padding:16px 28px;font:700 21px Body,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 3px 0 #10241a}
.btn:hover{background:var(--green2)}
.btn-big{width:100%;font-size:23px;padding:19px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px;text-align:center}
.stats div{border-top:3px double var(--green);padding-top:12px}
.stats b{display:block;font:800 34px Head,serif;color:var(--green)}
.stats span{font-size:17px;color:#5e5848}
.letter-in{display:grid;grid-template-columns:320px 1fr;gap:44px;align-items:center}
.letter h2{text-align:left}
.portrait{border-radius:4px;box-shadow:0 10px 26px rgba(0,0,0,.18)}
.sign{font:700 30px Hand,cursive;color:var(--ink)}
.spread{margin:24px 0;background:#fff;padding:10px;box-shadow:0 10px 30px rgba(0,0,0,.12)}
table{width:100%;border-collapse:collapse;margin:20px 0;background:#fffdf7}
th,td{padding:12px 14px;border-bottom:1px dotted #9d947e;text-align:left;vertical-align:top}
th{font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--green);border-bottom:2px solid var(--green)}
td:last-child{font:600 23px/1.2 Hand,cursive;white-space:nowrap;text-align:right}
.chapters{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:1fr 1fr;gap:6px 36px;counter-reset:c}
.chapters li{counter-increment:c;padding:12px 0 12px 48px;position:relative;border-bottom:1px solid var(--line)}
.chapters li:before{content:counter(c);position:absolute;left:0;top:8px;font:800 30px Head,serif;color:var(--ochre)}
.chapters b{font-size:21px}
.chapters span{font-size:15px;color:#5e5848;margin-left:6px}
.chapters em{display:block;font-style:normal;font-size:16px;color:#4b4638;margin-top:2px}
.every{background:#fffdf7;border:2px solid var(--green);padding:24px 28px;margin-top:20px}
.every h3{margin-bottom:.3em}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.who ul,.every ul{padding-left:1.1em}
.review-form{margin-top:24px;background:#fffdf7;border:1px solid var(--line);padding:16px 20px}
.review-form summary{cursor:pointer;font-weight:700;color:var(--green)}
.review-form label{display:block;margin:12px 0;font-size:17px}
.review-form input,.review-form textarea{display:block;width:100%;margin-top:4px;padding:10px;font:inherit;border:1px solid #a89f88;border-radius:4px;background:#fff}
.review{border-left:4px solid var(--green);padding:6px 0 6px 18px;margin:20px 0}
.review p{margin:.2em 0}
.review .who-sig{font:700 24px Hand,cursive}
.seal{display:inline-block;margin-top:10px;padding:12px 22px;border:3px double var(--green);font:700 20px Head,serif;color:var(--green)}
.order{background:var(--paper2)}
.order-box{background:#fffdf7;border:2px solid var(--green);border-radius:6px;padding:30px 26px;text-align:center;box-shadow:0 14px 34px rgba(31,61,43,.14)}
.order-cover{margin:0 auto 16px;width:150px}
.big-price{font:800 56px Head,serif;color:var(--green);margin:.1em 0}
.bump{display:flex;gap:12px;text-align:left;margin:20px 0;padding:16px;background:#fff6d8;border:2px dashed var(--ochre);border-radius:6px;font-size:17px;cursor:pointer}
.bump input{width:26px;height:26px;flex:none;margin-top:3px;accent-color:var(--green)}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:21px;color:var(--green)}
.faq p{margin:.6em 0 0}
.hand{font:700 34px Hand,cursive;color:var(--green);margin-top:24px}
.foot{padding:36px 0 50px;font-size:15px;color:#5e5848;text-align:center}
.legal{padding:40px 0 60px}
.legal h1{font-size:40px}
.legal h2{text-align:left;font-size:26px;margin-top:1.4em}
@media (max-width:820px){
  body{font-size:19px}
  section{padding:46px 0}
  .hero-in,.letter-in,.two{grid-template-columns:1fr;gap:28px}
  .hero-cover{order:-1;max-width:260px;margin:0 auto}
  .portrait{max-width:280px;margin:0 auto}
  .letter h2{text-align:center}
  .chapters{grid-template-columns:1fr}
  .stats b{font-size:26px}
  td:last-child{font-size:20px}
}
