:root{--surface:#FBFAF8;--ink:#1A1A1A;--muted:#5C5C63;--accent:#4A4A52;--action:#1F4E79;--action-ink:#fff;--line:#E4E1DA;--card:#fff}
@media (prefers-color-scheme:dark){:root{--surface:#141416;--ink:#F2F0EB;--muted:#B2B0AA;--accent:#C9C7C0;--action:#6FA6D8;--action-ink:#0E1A26;--line:#2E2E33;--card:#1C1C20}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface);color:var(--ink);font:17px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
main{max-width:640px;margin:0 auto;padding:32px 20px 48px}
.eyebrow{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
h1{font:600 2rem/1.15 Georgia,"Times New Roman",serif;margin:0 0 14px}
.sub{font-size:1.1rem;color:var(--accent);margin:0 0 22px}
ul.list{margin:0 0 26px;padding-left:1.1rem}
ul.list li{margin:0 0 8px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}
label{display:block;font-size:.9rem;font-weight:600;margin:14px 0 6px}
input,textarea{width:100%;padding:12px;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px}
input:focus,textarea:focus{outline:2px solid var(--action);outline-offset:1px}
textarea{min-height:88px;resize:vertical}
button{margin-top:18px;width:100%;padding:14px;font:600 1rem system-ui;color:var(--action-ink);background:var(--action);border:0;border-radius:8px;cursor:pointer}
button[disabled]{opacity:.6;cursor:wait}
.or{margin:22px 0 10px;text-align:center;color:var(--muted);font-size:.95rem}
.call{display:flex;gap:10px}
.call a{flex:1;text-align:center;padding:12px;border:1px solid var(--action);border-radius:8px;color:var(--action);text-decoration:none;font-weight:600}
.msg{margin-top:14px;padding:12px;border-radius:8px;display:none}
.msg.ok{display:block;background:rgba(31,78,121,.1);border:1px solid var(--action)}
.msg.err{display:block;background:rgba(160,60,40,.1);border:1px solid #A03C28}
.proof{margin:30px 0 0;padding:0;list-style:none;color:var(--muted);font-size:.95rem}
.proof li{margin:0 0 6px;padding-left:18px;position:relative}
.proof li:before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--accent)}
footer{margin-top:34px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}
footer p{margin:0 0 6px}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}

/* farm buyers page additions */
h2{font:600 1.45rem/1.2 Georgia,"Times New Roman",serif;margin:0 0 12px}
section{margin:0 0 36px}
.btn{display:block;text-align:center;padding:15px 18px;min-height:48px;font:600 1rem system-ui;color:var(--action-ink);background:var(--action);border-radius:8px;text-decoration:none;margin:0 0 12px}
.btn.secondary{background:transparent;color:var(--action);border:1px solid var(--action)}
.proof-line{margin:0 0 30px;color:var(--muted);font-size:.95rem}
.checks{list-style:none;margin:0;padding:0}
.checks li{position:relative;padding-left:30px;margin:0 0 12px}
.checks li:before{content:"\2713";position:absolute;left:0;top:0;font-weight:700;color:var(--action)}
.notfor{margin:14px 0 0;padding:14px 16px;border-left:4px solid var(--accent);background:var(--card);border-radius:0 8px 8px 0}
details{border-top:1px solid var(--line);padding:2px 0}
details:last-of-type{border-bottom:1px solid var(--line)}
summary{cursor:pointer;min-height:48px;display:flex;align-items:center;font-weight:600;list-style:none}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";margin-left:auto;padding-left:12px;color:var(--muted);font-size:1.3rem}
details[open] summary:after{content:"\2212"}
details p{margin:0 0 14px;color:var(--accent)}
.bar{background:var(--action);color:var(--action-ink);text-align:center;padding:11px 16px;font-size:.95rem;font-weight:600}
.ok-mark{width:72px;height:72px;margin:0 0 14px;display:block}
.ok-mark circle{stroke:var(--action);stroke-width:4;fill:none;stroke-dasharray:166;stroke-dashoffset:166;animation:draw 1s ease forwards}
.ok-mark path{stroke:var(--action);stroke-width:5;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:48;stroke-dashoffset:48;animation:draw .5s .8s ease forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.ok-mark circle,.ok-mark path{animation:none;stroke-dashoffset:0}}
.step{display:flex;gap:14px;margin:0 0 26px}
.step .n{flex:0 0 38px;height:38px;border-radius:50%;background:var(--accent);color:var(--surface);display:flex;align-items:center;justify-content:center;font-weight:700}
.step h2{font-size:1.2rem;margin:4px 0 6px}
.step p{margin:0 0 12px}
.fine{color:var(--muted);font-size:.9rem}
main.wide-copy p{max-width:60ch}
@media (min-width:700px){h1{font-size:2.4rem}main{padding-top:48px}}
