
:root{--paper:#f6f1e7;--ink:#2b2620;--muted:#6b6255;--line:#d9cfbd;--accent:#a4471f;--band:#2f3a2c;--s1:.5rem;--s2:1rem;--s3:1.5rem;--s4:2.5rem;--s5:4rem}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 'Source Sans 3',system-ui,sans-serif}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:600;line-height:1.15;margin:0 0 var(--s2)}
h1{font-size:clamp(2rem,5vw,3.4rem)}h2{font-size:1.9rem}h3{font-size:1.25rem}
a{color:var(--accent)}.wrap{max-width:1080px;margin:0 auto;padding:0 var(--s3)}
header{border-bottom:1px solid var(--line)}header .wrap{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;justify-content:space-between;padding:var(--s2) var(--s3)}
.mark{font-family:'Fraunces',serif;font-weight:600;font-size:1.15rem;text-decoration:none;color:var(--ink)}
nav a{color:var(--ink);text-decoration:none;margin-right:var(--s2);font-size:.95rem}nav a:hover{color:var(--accent)}
.call{background:var(--accent);color:#fff;padding:.6rem 1rem;text-decoration:none;font-weight:600;border-radius:3px;transition:background .2s}.call:hover{background:#86391a}
.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--s4);padding:var(--s5) 0}
.hero p.lede{font-size:1.2rem;color:var(--muted)}
.ledger{border-left:3px solid var(--accent);padding-left:var(--s3)}.ledger dt{font-weight:600}.ledger dd{margin:0 0 var(--s2);color:var(--muted)}
.band{background:var(--band);color:#efe8da;padding:var(--s5) 0}.band a{color:#f0b48f}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--s3)}
.svc{border-top:1px solid var(--line);padding-top:var(--s2)}
section{padding:var(--s4) 0}ol li,ul li{margin-bottom:var(--s1)}
form{display:grid;gap:var(--s2);max-width:560px}label{font-weight:600}input,select,textarea{font:inherit;padding:.6rem;border:1px solid var(--line);background:#fffdf8;width:100%}
button{font:inherit;font-weight:600;background:var(--accent);color:#fff;border:0;padding:.8rem;cursor:pointer}
footer{border-top:1px solid var(--line);padding:var(--s4) 0;color:var(--muted);font-size:.9rem}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding:var(--s4) 0}nav{order:3;width:100%}}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
