@font-face{font-family:"Fraunces";font-weight:100 900;font-style:normal;src:url(/fonts/Fraunces.ttf) format("truetype");font-display:swap}
@font-face{font-family:"Karla";font-weight:200 800;src:url(/fonts/Karla.ttf) format("truetype");font-display:swap}
:root{--paper:#fbf6ee;--paper2:#f3eadb;--ink:#2a2420;--muted:#6b5f55;--green:#1f4d3a;--berry:#a3243b;--gold:#c9a050;--line:#e3d6c1}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.7 Karla,system-ui,sans-serif}
a{color:var(--berry)}.wrap{max-width:1040px;margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:500;color:var(--green);line-height:1.08;font-variation-settings:"SOFT" 100,"WONK" 1}
h1{font-size:clamp(2.5rem,6.5vw,4.3rem);margin:.15em 0 .35em;letter-spacing:-.01em}h1 em,h2 em{color:var(--berry);font-style:italic;font-weight:400}
h2{font-size:clamp(1.8rem,4vw,2.6rem);margin:0 0 .5em}h3{font-size:1.35rem;margin:0 0 .3em}
header.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:20px;padding-bottom:20px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--green);font-family:Fraunces,Georgia,serif;font-size:1.5rem;font-weight:600}
.brand svg{width:38px;height:38px}
nav a{margin-left:24px;text-decoration:none;color:var(--ink);font-weight:600}nav a:hover{color:var(--berry)}
section{padding:70px 0}
.hero{padding-top:40px}.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center}
.lead{font-size:1.25rem;color:var(--muted);max-width:640px}
.eyebrow{font-weight:700;font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;color:var(--berry)}
.btn{display:inline-block;background:var(--green);color:var(--paper);padding:13px 28px;border-radius:999px;text-decoration:none;font-weight:700}.btn:hover{background:var(--berry)}
.stamp{justify-self:center;width:min(300px,70vw);aspect-ratio:1;border-radius:50%;border:3px dashed var(--gold);display:grid;place-items:center;
  background:radial-gradient(circle at 50% 45%,#fff 0 52%,var(--paper2) 53%);transform:rotate(-6deg)}
.stamp div{text-align:center;font-family:Fraunces,serif;color:var(--berry)}.stamp b{display:block;font-size:2.2rem;font-weight:600;line-height:1;margin-top:6px}
.stamp span{display:block;font-family:Karla,sans-serif;letter-spacing:.2em;text-transform:uppercase;font-size:.78rem;color:var(--green);margin-top:8px}
.shelf{background:var(--paper2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cards{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:30px}
.card{background:#fff;border-radius:18px;padding:26px 24px;box-shadow:0 1px 0 var(--line),0 12px 28px rgba(80,55,30,.08)}
.card .ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--paper2);color:var(--berry);font-family:Fraunces,serif;font-size:1.3rem;margin-bottom:12px}
.card p{margin:0;color:var(--muted)}
.books{display:grid;gap:26px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.book{background:#fff;border-radius:18px;padding:20px;display:grid;grid-template-columns:120px 1fr;gap:18px}.book img{width:120px;height:auto;border-radius:4px}
.promise{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start;max-width:820px}.promise svg{width:64px;height:64px}
.prose{max-width:740px}.prose h2{font-size:1.55rem;margin-top:1.4em}.meta{color:var(--muted);font-size:.92rem}
footer{border-top:1px solid var(--line);padding:30px 0;font-size:.92rem;color:var(--muted)}footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media(max-width:760px){.hero .wrap{grid-template-columns:1fr}.stamp{width:200px}nav a{margin:0 18px 0 0}section{padding:48px 0}.promise{grid-template-columns:1fr}}
