@font-face{font-family:"DejaVu Sans";src:url(/fonts/DejaVuSans.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"DejaVu Sans";src:url(/fonts/DejaVuSans-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"DejaVu Serif";src:url(/fonts/DejaVuSerif-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
:root{--ink:#1d2b33;--teal:#1f3a46;--gold:#e8c27a;--rust:#b4502f;--paper:#faf6ee;--muted:#4a5a62}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:400 1.0625rem/1.6 "DejaVu Sans",sans-serif;color:var(--ink);background:var(--paper)}
.wrap{max-width:62rem;margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:.5rem 1rem;z-index:9}
.skip:focus{left:1rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
header.site{background:var(--teal);color:var(--paper)}
header.site .wrap{padding-top:.9rem;padding-bottom:.9rem}
.brand{font:700 1.15rem "DejaVu Serif",serif;letter-spacing:.02em}
h1,h2{font-family:"DejaVu Serif",serif;font-weight:700;line-height:1.2;color:var(--teal)}
h1{font-size:clamp(1.8rem,4vw,2.6rem);margin:0 0 .4rem}
h2{font-size:1.35rem;margin:0 0 .75rem}
.hero{display:grid;grid-template-columns:300px 1fr;gap:2.5rem;padding:2.5rem 0;align-items:start}
.cover{width:100%;height:auto;display:block;border-radius:4px;box-shadow:0 6px 24px rgba(0,0,0,.25)}
.sub{font-size:1.15rem;margin:0 0 .3rem;color:var(--muted)}
.by{margin:0 0 1rem;font-weight:700}
.h-buy{margin-top:1.5rem}
.buy{display:flex;flex-wrap:wrap;gap:.75rem}
.btn{display:inline-flex;gap:.6rem;align-items:center;padding:.8rem 1.2rem;border-radius:6px;background:var(--teal);color:#fff;text-decoration:none;font-weight:700;min-height:44px}
.btn:hover{background:#163039}
.btn .price{color:var(--gold)}
.btn-alt{background:var(--rust)}
.printable{margin-top:1rem}
.soon{margin:0;padding:.7rem 1rem;border:2px dashed #9aa8ae;border-radius:6px;display:inline-block;color:var(--muted)}
a{color:#1a5d77}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--rust);outline-offset:2px}
.notify,.contact{border-top:1px solid #ddd3c2;padding:2rem 0}
form label{font-weight:700}
.row{display:flex;gap:.5rem;margin:.4rem 0 .6rem;flex-wrap:wrap}
input[type=email]{flex:1 1 16rem;font:inherit;padding:.7rem .8rem;border:2px solid #8a9aa2;border-radius:6px;min-height:44px;background:#fff}
button{font:inherit;font-weight:700;padding:.7rem 1.3rem;border:0;border-radius:6px;background:var(--rust);color:#fff;cursor:pointer;min-height:44px}
button:hover{background:#963f23}
.check{display:flex;gap:.5rem;align-items:flex-start;margin:.2rem 0}
.check input{width:1.2rem;height:1.2rem;margin-top:.25rem}
.check label{font-weight:400}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.status{min-height:1.6em;font-weight:700;margin:.4rem 0}
.status.err{color:#9b2c12}
.status.ok{color:#22603a}
.privacy{font-size:.92rem;color:var(--muted);max-width:44rem}
footer.site{background:var(--teal);color:var(--paper);font-size:.92rem}
footer.site .wrap{padding-top:1rem;padding-bottom:1rem}
footer.site p{margin:0}
@media (max-width:700px){.hero{grid-template-columns:1fr;gap:1.5rem;padding-top:1.5rem}.hero picture{max-width:70vw;margin:0 auto}.buy .btn{width:100%;justify-content:center}}
@media (prefers-reduced-motion:no-preference){.btn,button{transition:background .15s}}
.privacy h3{font:700 1rem "DejaVu Serif",serif;color:var(--teal);margin:1.2rem 0 .3rem}
.privacy p{margin:.3rem 0}
.msg{padding:2.5rem 1.25rem;min-height:50vh}
.cf-turnstile{margin:.5rem 0}
