:root{--ink:#2b2621;--muted:#6b6157;--paper:#f6f1e7;--card:#fbf8f2;--rule:#d9cfbf;--accent:#8c2e24;--accent-d:#6f231b}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.125rem/1.65 "EB Garamond",Garamond,"Iowan Old Style","Palatino Linotype",Georgia,serif}
a{color:var(--accent)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:62rem;margin:0 auto;padding:0 1.25rem}
.narrow{max-width:34rem;margin:0 auto;padding:4rem 1.25rem}
.eyebrow{font-variant:small-caps;letter-spacing:.08em;color:var(--muted);margin:0 0 .5rem}
.eyebrow a{color:inherit;text-decoration:none}
h1,h2{font-weight:500;line-height:1.15;margin:0 0 .75rem}
h1{font-size:clamp(2.6rem,9vw,4.2rem);letter-spacing:-.01em}
h2{font-size:1.75rem}
.rule{width:4.5rem;height:3px;background:var(--accent);border:0;margin:1.25rem 0}
header.hero{padding:3rem 0 2rem;display:grid;gap:2rem;align-items:center}
.hero .promise{font-size:1.4rem;font-style:italic;color:#4a423a;margin:0 0 1.5rem}
.portrait{margin:0}
.portrait img{border:1px solid var(--rule);box-shadow:0 10px 30px rgba(43,38,33,.18);aspect-ratio:4/5;object-fit:cover;width:100%;max-width:20rem}
.portrait figcaption{font-size:.85rem;color:var(--muted);margin-top:.5rem;max-width:20rem}
.btn,button{font:inherit;font-size:1.05rem;background:var(--accent);color:#fff;border:0;border-radius:4px;padding:.8rem 1.4rem;cursor:pointer;text-decoration:none;display:inline-block}
.btn:hover,button:hover{background:var(--accent-d)}
section{padding:2.5rem 0;border-top:1px solid var(--rule)}
.gets{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.gets li{padding-left:1.4rem;position:relative}
.gets li::before{content:"\2014";position:absolute;left:0;color:var(--accent)}
blockquote{margin:0;padding:0;font-size:clamp(1.5rem,4.5vw,2.1rem);line-height:1.3;font-style:italic}
blockquote p{margin:0 0 1rem}
cite{font-style:normal;font-size:1rem;color:var(--muted)}
.signup{background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:1.75rem 1.25rem;max-width:34rem}
label{display:block;font-size:1rem;margin:0 0 .3rem}
.opt{color:var(--muted);font-size:.9rem}
input[type=email],input[type=text]{width:100%;font:inherit;font-size:1.05rem;padding:.7rem .8rem;border:1px solid #bfb3a0;border-radius:4px;background:#fff;color:var(--ink);margin:0 0 1rem}
input:focus,button:focus,a:focus{outline:2px solid var(--accent);outline-offset:2px}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.privacy{font-size:.92rem;color:var(--muted);margin:1rem 0 0}
.msg{margin:1rem 0 0;font-size:1rem}
.msg.err{color:var(--accent)}
footer{border-top:1px solid var(--rule);padding:2rem 0 3rem;font-size:.95rem;color:var(--muted)}
footer p{margin:.3rem 0}
@media (min-width:48rem){header.hero{grid-template-columns:1.3fr 1fr;padding:5rem 0 3rem}.portrait{justify-self:end}}
