:root{--serif:"Newsreader",Georgia,"Times New Roman",serif}
*{box-sizing:border-box}
body{margin:0;font-optical-sizing:auto;background:#f7f4ef;color:#222;font:16px/1.55 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}
.wrap{max-width:860px;margin:0 auto;padding:56px 24px 48px}
header{margin-bottom:34px}
h1{font:400 46px/1.1 var(--serif);margin:0 0 12px;letter-spacing:-0.01em}
.lede{margin:0 0 8px;max-width:560px;color:#4a433d;font-size:17px}
header a{color:#6b625a;font-size:14px;text-decoration:none;border-bottom:1px solid #cfc6bb}
header a:hover{color:#222;border-color:#222}
.main{display:grid;grid-template-columns:1.25fr 1fr;gap:14px}
.box{display:flex;flex-direction:column;background:#fff;border:1px solid #e4ded5;color:#222;text-decoration:none;transition:border-color .2s}
.box:hover{border-color:#222}
.box .in{padding:22px;display:flex;flex-direction:column;flex:1}
.t{font:400 28px/1.15 var(--serif)}
.s{margin-top:8px;font-size:15px;color:#5f5750}
.go{margin-top:auto;padding-top:18px;font-size:14px;color:#222;text-decoration:underline;text-underline-offset:3px}
.run{background:#f3e6e4;border-color:#e8d3cf}
.run .t{font-size:34px}
.stats{display:flex;gap:28px;margin-top:26px}
.stats span{font-size:13px;color:#6b625a}
.stats b{display:block;font:400 30px/1 var(--serif);color:#222;margin-bottom:6px}
.cat img{display:block;width:100%;height:210px;object-fit:cover;object-position:center 35%}
h2{font:400 13px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;color:#8a8178;margin:36px 0 12px}
.priv{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.priv a{display:block;padding:16px 14px;background:transparent;border:1px solid #e0d9cf;color:#222;text-decoration:none;font:400 18px/1.2 var(--serif);transition:border-color .2s,background .2s}
.priv a:hover{border-color:#222;background:#fff}
@media(max-width:640px){.stats{gap:20px}.stats b{font-size:26px}.wrap{padding:36px 18px 32px}h1{font-size:38px}.main{grid-template-columns:1fr}.priv{grid-template-columns:1fr 1fr}.run .t{font-size:30px}.cat img{height:180px}}

.back{display:inline-block;margin-bottom:28px;color:#6b625a;font-size:14px;text-decoration:none}
.back:hover{color:#222}
.kicker{font-size:14px;color:#6b625a;margin:0 0 10px}
.page h1{font-size:52px;margin-bottom:14px}
.page .sub{font-size:19px;color:#4a433d;margin:0 0 30px;max-width:600px}
.story{max-width:620px}
.story p{margin:0 0 18px;font-size:17px;line-height:1.65}
.cta{margin:30px 0 34px;padding:26px;background:#f3e6e4;border:1px solid #e8d3cf;max-width:620px}
.donate{display:inline-block;padding:13px 22px;background:#222;color:#fff;text-decoration:none;font-size:16px}
.donate:hover{background:#000}
.note{margin:14px 0 0;font-size:13px;color:#6b625a;line-height:1.6}
.note a{color:#6b625a}
.page .stats{margin-top:0}
@media(max-width:640px){.page h1{font-size:40px}.page .sub{font-size:17px}}

.pets{display:flex;gap:10px;margin-top:22px}
.pets span{display:block}
.pets img{display:block;width:96px;height:120px;object-fit:cover;object-position:center 30%}
.pets small{display:block;margin-top:5px;font-size:12px;color:#6b625a}
.pets.big{gap:14px;margin:6px 0 24px}
.pets.big img{width:200px;height:250px}
.pets.big small{font-size:13px}
@media(max-width:640px){.pets.big img{width:calc((100vw - 50px)/2);height:auto;aspect-ratio:4/5}}

.gate{max-width:420px}
.gate form{display:flex;gap:8px;margin-top:8px}
.gate input{flex:1;min-width:0;width:100%;font:16px -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;padding:11px 12px;border:1px solid #cfc6bb;background:#fff;color:#222;border-radius:0}
.gate input:focus{outline:none;border-color:#222}
.gate button{font:16px -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;padding:11px 18px;background:#222;color:#fff;border:0;cursor:pointer}
.gate .err{min-height:20px;margin:10px 0 0;font-size:14px;color:#a33}
.held p{max-width:560px;font-size:17px;line-height:1.65}
.held a{color:#222;text-underline-offset:3px}
