:root{--head:'Cinzel',Georgia,serif;--bg:#F4F1E6;--ink:#1F2A1C;--green:#2E4A2A;--gold:#E2C46F;--gold2:#F1DFA4;--muted:#4C5646;--body:#3A4436;--line:#DDD7C4;--link:#6E5110}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.55 'Nunito Sans',system-ui,sans-serif}
a{color:var(--link)}a:hover{color:#4A360A}
img{max-width:100%;height:auto}
h1,h2,h3{font-family:var(--head);font-weight:700;margin:0;line-height:1.05}
p{margin:0}
.wrap{max-width:1160px;margin:0 auto;padding-left:24px;padding-right:24px}
.muted{color:var(--muted)}.sm{font-size:15px}.center{text-align:center}
.stack4{display:flex;flex-direction:column;gap:4px}.stack8{display:flex;flex-direction:column;gap:8px}
.eyebrow{font-weight:800;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--green)}
header.top{background:var(--ink)}
header.top .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;padding-bottom:14px}
.logo{font-family:var(--head);font-weight:700;font-size:24px;letter-spacing:1px;color:var(--gold);text-decoration:none}
.logo:hover{color:var(--gold2)}
nav.main{display:flex;flex-wrap:wrap;gap:2px;align-items:center}
nav.main a{padding:10px 14px;color:var(--bg);text-decoration:none;font-weight:600}
nav.main a:hover{color:var(--gold2)}
nav.main a[aria-current]{font-weight:800;text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--gold)}
nav.main a.pill{background:var(--gold);color:var(--ink);border-radius:999px;font-weight:800;padding:10px 18px;margin-left:6px}
.btns{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;padding-top:6px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:999px;font:inherit;font-weight:800;font-size:18px;text-decoration:none;border:0;cursor:pointer}
.btn-gold{background:var(--gold);color:var(--ink)}.btn-gold:hover{background:var(--gold2);color:var(--ink)}
.btn-green{background:var(--green);color:#fff}.btn-green:hover{background:var(--ink);color:#fff}
.btn[aria-disabled=true]{opacity:.6;cursor:default}
.btn.wide{width:100%}
/* hero */
.hero{background:var(--ink);color:var(--bg)}
.hero .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:48px 56px;padding-top:56px;padding-bottom:80px}
.hero-text{flex:999 1 440px;min-width:0;display:flex;flex-direction:column;gap:18px}
.hero .eyebrow{color:var(--gold)}
.hero h1{font-size:clamp(44px,6.5vw,76px);color:var(--gold2)}
.tagline{font-family:var(--head);font-size:22px;line-height:1.4;color:var(--gold);white-space:pre-line}
.lead{font-size:19px;color:#D6D9CC;max-width:34rem}
.link-light{color:var(--gold2);font-weight:700}.link-light:hover{color:#fff}
.small-light{font-size:15px;color:#B9BEAE}
.hero-cover{flex:1 1 280px;display:flex;justify-content:center}
.cover{border-radius:4px 10px 10px 4px;box-shadow:0 28px 56px rgba(0,0,0,.45);display:block}
.hero .cover{width:320px}
/* sections */
.pad{padding:64px 0 72px}.pad-56{padding-top:56px;padding-bottom:56px}
.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:32px}
.section-head h2{font-size:38px}
.grid-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:32px 24px}
.book-card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink)}
a.book-card:hover .thumb,a.book-card:hover .soon{transform:translateY(-3px)}
.book-card .thumb,.book-card .soon{aspect-ratio:2/3;width:100%;object-fit:cover;border-radius:4px 10px 10px 4px;box-shadow:0 10px 24px rgba(31,42,28,.25);transition:transform .15s}
.book-card .soon,.soon-big{background:var(--green);display:flex;align-items:flex-end;padding:18px;color:var(--gold);font-family:var(--head);font-weight:700;font-size:20px;line-height:1.15}
.soon-big{aspect-ratio:2/3;width:100%;max-width:380px;font-size:30px}
.book-card .row{display:flex;justify-content:space-between;gap:8px;font-weight:800}
.price-sm{color:var(--green)}
.white{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.author{display:flex;flex-wrap:wrap;gap:40px 48px;align-items:center;padding-top:64px;padding-bottom:64px}
.author .sketch{flex:0 0 200px;width:200px;border-radius:20px}
.author .txt{flex:999 1 400px;min-width:0;display:flex;flex-direction:column;gap:14px}
.author h2{font-size:34px}
.lg{font-size:19px;color:var(--body)}
.dark{background:var(--ink);color:var(--bg)}
.trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px;padding-top:56px;padding-bottom:56px}
.trust strong{font-family:var(--head);font-size:21px;color:var(--gold);display:block;margin-bottom:6px}
footer.foot .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:32px;padding-bottom:48px;font-size:15px;color:var(--muted)}
footer.foot .ai{font-size:13px;display:block;margin-top:4px;max-width:640px}
footer.foot nav{display:flex;flex-wrap:wrap;gap:20px}
/* book page */
.crumb{padding-top:24px;font-size:15px}
.book{display:flex;flex-wrap:wrap;gap:40px 56px;align-items:flex-start;padding-top:28px;padding-bottom:72px}
.book-cover{flex:1 1 300px;display:flex;flex-direction:column;gap:16px;align-items:center}
.book-cover .cover{width:100%;max-width:380px}
.book-info{flex:999 1 440px;min-width:0;display:flex;flex-direction:column;gap:22px}
.book-info h1{font-size:clamp(38px,5vw,58px)}
.byline{font-size:18px;color:var(--body)}
.price{font-family:var(--head);font-weight:700;font-size:32px}
.blurb{display:flex;flex-direction:column;gap:12px;font-size:18px;color:var(--body)}
.closing{font-family:var(--head);font-weight:700;color:var(--green)}
.closing.big{font-size:22px}
.buybox{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:12px}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;padding-top:56px;padding-bottom:56px}
.cols h2{font-size:21px;margin-bottom:8px}
.cols p{color:var(--body)}
/* about */
.about{display:flex;flex-wrap:wrap;gap:40px 56px;align-items:flex-start;padding-top:72px;padding-bottom:56px}
.about .art{flex:1 1 260px;max-width:340px;border-radius:20px}
.about .txt{flex:999 1 440px;min-width:0;max-width:640px;display:flex;flex-direction:column;gap:18px}
.about h1{font-size:clamp(40px,5.5vw,58px)}
.lg-paras{display:flex;flex-direction:column;gap:16px;font-size:18px;color:var(--body)}
.lg-paras p:first-child{font-size:20px}
.made{padding-top:8px;padding-bottom:56px}
.made h2,.h30{font-size:30px;margin-bottom:20px}
.cols3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;max-width:960px}
.cols3 p{color:var(--body)}
.dark h2{color:var(--gold2);font-size:30px;margin-bottom:24px}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}
.facts strong{font-size:14px;color:var(--gold);text-transform:uppercase;letter-spacing:1.5px;display:block}
.facts span{font-size:19px}
/* contact + forms */
.contact{display:flex;flex-wrap:wrap;gap:40px 56px;align-items:flex-start;padding-top:72px;padding-bottom:72px}
.contact .txt{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:18px}
.contact h1{font-size:clamp(40px,5.5vw,58px)}
.form{flex:999 1 460px;min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:18px;position:relative}
.form .btn{align-self:flex-start}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-weight:800}
.form input,.form select,.form textarea{font:inherit;min-height:48px;padding:0 14px;border-radius:10px;border:1px solid #A8A28C;background:#fff;color:inherit;width:100%}
.form textarea{padding:12px 14px;resize:vertical}
.form :focus-visible,.btn:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}
.notice{padding:16px;border-radius:12px;background:#EDE6CF;font-weight:800}
.notice.err{background:#F6DCD5;color:#7A1F0E}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:600px){.hero .wrap{padding-top:40px}.hero .cover{width:240px}nav.main a{padding:8px 10px}}
.buyform{display:flex;flex-direction:column;gap:12px}
.qty-row{display:flex;flex-wrap:wrap;gap:14px}
.qty-row .field{flex:0 0 110px}.qty-row .field.grow{flex:1 1 220px}
.buyform select,.buyform input{font:inherit;min-height:48px;padding:0 14px;border-radius:10px;border:1px solid #A8A28C;background:#fff;color:inherit;width:100%}
.thanks{max-width:760px;display:flex;flex-direction:column;gap:18px;padding-top:72px;padding-bottom:96px}
.thanks h1{font-size:clamp(36px,5vw,52px)}
.qty-field{max-width:140px}
.signs{display:flex;flex-direction:column;gap:10px}
.notice.pre{background:#FFF1D6;color:#5C3D00;font-weight:700}
.order-total{font-size:18px;text-align:center;margin:4px 0 0}
.legal{max-width:760px;padding-top:56px;padding-bottom:72px;display:flex;flex-direction:column;gap:22px}
.legal h1{font-size:clamp(34px,5vw,48px)}
.legal h2{font-size:22px;margin-bottom:6px}
.legal section p{color:var(--body);margin-bottom:8px}
.cf-turnstile{min-height:65px}
