/* Shared standard footer (self-contained, namespaced .zsfoot). Matches the
   homepage footer; used on Peptide + Food Vector where home.css isn't loaded. */
.zsfoot { background:#1A1815; color:#F5F2EC; font-family:'IBM Plex Sans',system-ui,-apple-system,sans-serif; }
.zsfoot-wrap { max-width:1140px; margin:0 auto; padding:0 48px; }
.zsfoot-grid { display:grid; grid-template-columns:1.5fr 1fr; gap:40px; padding:26px 0 0; align-items:start; }
.zsfoot-brand .zsfoot-logo { display:flex; align-items:center; gap:10px; font-family:'Spectral',Georgia,serif; font-weight:600; font-size:20px; letter-spacing:-.01em; color:#F5F2EC; text-decoration:none; }
.zsfoot-brand .zsfoot-logo img { width:26px; height:26px; object-fit:contain; }
.zsfoot-brand p { font-size:14px; line-height:1.6; color:#B7B0A0; margin:16px 0 0; max-width:340px; }
.zsfoot-social { display:flex; gap:14px; margin-top:20px; }
.zsfoot-social a { color:#B7B0A0; display:inline-flex; transition:color .18s cubic-bezier(.22,.61,.36,1); }
.zsfoot-social a:hover { color:#9DBE96; }
.zsfoot-social svg { width:18px; height:18px; }
.zsfoot-label { font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:11.5px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; color:#9DBE96; margin-bottom:14px; }
.zsfoot-links { display:flex; flex-direction:column; gap:10px; font-size:14px; }
.zsfoot-links a { color:#CFC8B8; text-decoration:none; transition:color .18s cubic-bezier(.22,.61,.36,1); }
.zsfoot-links a:hover { color:#9DBE96; }
.zsfoot-hr { height:1px; background:rgba(255,255,255,.14); margin:28px 0 18px; border:0; }
.zsfoot-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:13px; color:#9A9384; padding:16px 0 20px; }
.zsfoot-bottom a { color:inherit; }
.zsfoot-mono { font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:11px; letter-spacing:.16em; text-transform:uppercase; }
@media(max-width:620px){ .zsfoot-grid{ grid-template-columns:1fr; } .zsfoot-wrap{ padding:0 24px; } }
