:root{--accent:#2563EB;--accent-dark:#1d4ed8;--ink:#1f2937;--muted:#6b7280;--bg:#ffffff;--soft:#f3f6fb;--line:#e5e7eb;--maxw:46rem}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65;font-size:1.0625rem}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.1rem}
header.site{background:var(--accent);color:#fff}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.2rem;padding-top:.85rem;padding-bottom:.85rem}
.logo{font-weight:800;font-size:1.25rem;color:#fff;text-decoration:none;letter-spacing:-.02em}
nav.main{display:flex;flex-wrap:wrap;gap:.2rem .9rem;font-size:.95rem}
nav.main a{color:#fff;text-decoration:none;opacity:.92}
nav.main a:hover{text-decoration:underline;opacity:1}
main{padding:1.5rem 0 2.5rem}
h1{font-size:1.85rem;line-height:1.25;letter-spacing:-.02em;margin:.4rem 0 .8rem}
h2{font-size:1.35rem;line-height:1.3;margin:2rem 0 .6rem;letter-spacing:-.01em}
h3{font-size:1.1rem;margin:1.4rem 0 .4rem}
p{margin:.7rem 0}
a{color:var(--accent-dark)}
ul,ol{padding-left:1.3rem}
li{margin:.3rem 0}
.lead{font-size:1.15rem;color:#374151}
table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.95rem}
caption{text-align:left;font-weight:600;margin-bottom:.4rem;caption-side:top}
th,td{border:1px solid var(--line);padding:.55rem .65rem;text-align:left;vertical-align:top}
th{background:var(--soft);font-weight:700}
.table-scroll{overflow-x:auto}
.vetnote{background:var(--soft);border-left:4px solid var(--accent);padding:.8rem 1rem;border-radius:0 .5rem .5rem 0;margin:1.6rem 0;font-size:.95rem;color:#374151}
.waitlist{background:var(--accent);color:#fff;border-radius:.8rem;padding:1.4rem 1.3rem;margin:2.2rem 0}
.waitlist h2{margin:0 0 .4rem;color:#fff;font-size:1.3rem}
.waitlist p{margin:.3rem 0 .9rem;color:#eef2ff;opacity:.95}
.waitlist form{display:flex;flex-wrap:wrap;gap:.6rem}
.waitlist input[type=email]{flex:1 1 14rem;padding:.7rem .8rem;border:none;border-radius:.5rem;font-size:1rem}
.waitlist button{padding:.7rem 1.2rem;border:none;border-radius:.5rem;background:#111827;color:#fff;font-size:1rem;font-weight:700;cursor:pointer}
.waitlist button:disabled{opacity:.6;cursor:wait}
.wl-msg{flex-basis:100%;margin:.2rem 0 0;font-size:.95rem;min-height:1.3em;color:#fff}
.related{background:var(--soft);border-radius:.8rem;padding:1.1rem 1.3rem;margin:2rem 0}
.related h2{margin:0 0 .5rem;font-size:1.15rem}
.related ul{margin:.3rem 0;padding-left:1.2rem}
.faq h3{margin:1.2rem 0 .3rem}
.btn-print{display:inline-block;padding:.6rem 1.1rem;border:none;border-radius:.5rem;background:var(--accent);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;margin:.5rem 0 1rem}
.printable-sheet h1{font-size:1.5rem}
.fill-line{display:inline-block;min-width:9rem;border-bottom:1px solid #9ca3af}
footer.site{background:#111827;color:#d1d5db;font-size:.9rem;margin-top:2rem}
footer.site .wrap{padding-top:1.6rem;padding-bottom:1.8rem}
footer.site a{color:#e5e7eb}
footer.site .cols{display:flex;flex-wrap:wrap;gap:1.5rem 3rem}
footer.site ul{list-style:none;margin:.4rem 0;padding:0}
footer.site li{margin:.25rem 0}
footer.site .legal{margin-top:1.2rem;border-top:1px solid #374151;padding-top:1rem;color:#9ca3af}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.crumb{font-size:.85rem;color:var(--muted);margin:.2rem 0 0}
.crumb a{color:var(--muted)}
.guide-grid{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.7rem;grid-template-columns:1fr}
@media(min-width:38rem){.guide-grid{grid-template-columns:1fr 1fr}}
.guide-grid li{margin:0;background:var(--soft);border-radius:.6rem;padding:.85rem 1rem}
.guide-grid a{font-weight:700;text-decoration:none}
.guide-grid p{margin:.25rem 0 0;font-size:.9rem;color:var(--muted)}
@media print{
 header.site,footer.site,.waitlist,.related,.btn-print,.vetnote,nav.main,.crumb{display:none!important}
 body{font-size:11pt;color:#000}
 a{color:#000;text-decoration:none}
 table{page-break-inside:avoid}
 h1{font-size:16pt}
}
