/* Push for Peptides - Brand Stylesheet */
:root{
  --navy:#0f2a43;--navy-2:#173a5e;--lab-blue:#1f6feb;--lab-blue-2:#3b82f6;
  --teal:#2f9e8f;--teal-soft:#e6f4f1;--gray:#64748b;--line:#e2e8f0;
  --bg:#f7f9fc;--card:#ffffff;--ink:#132033;--accent:#f4a300;--radius:12px;
  --shadow:0 6px 22px rgba(15,42,67,.08);--maxw:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6;font-size:16px}
h1,h2,h3,h4{font-family:'Source Serif 4','Georgia',serif;color:var(--navy);line-height:1.25;margin:.2em 0 .5em}
h1{font-size:2.15rem}h2{font-size:1.6rem}h3{font-size:1.2rem}
a{color:var(--lab-blue);text-decoration:none}
a:hover{text-decoration:underline}
p{margin:.4em 0 1em}
.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}
.wrap{max-width:820px;margin:0 auto;padding:0 20px}
/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);
  backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:18px;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-family:'Source Serif 4',serif;
  font-weight:700;font-size:1.15rem;color:var(--navy)}
.brand:hover{text-decoration:none}
.brand .mark{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--navy),var(--lab-blue));
  color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-family:'Inter',sans-serif;font-size:1rem}
.menu{display:flex;gap:16px;margin-left:auto;align-items:center;list-style:none;padding:0;margin-block:0}
.menu a{color:var(--navy);font-size:.94rem;font-weight:500}
.menu .btn{color:#fff}
.hamburger{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:1.1rem;cursor:pointer}
/* Buttons */
.btn{display:inline-block;background:var(--lab-blue);color:#fff;padding:11px 20px;border-radius:10px;
  font-weight:600;font-size:.95rem;border:none;cursor:pointer;transition:.15s;text-align:center}
.btn:hover{background:#1a5fd0;text-decoration:none;transform:translateY(-1px)}
.btn-accent{background:var(--accent);color:#3a2a00}
.btn-accent:hover{background:#e59700}
.btn-ghost{background:#fff;color:var(--navy);border:1px solid var(--line)}
.btn-ghost:hover{background:#f1f5fb}
.btn-lg{padding:14px 26px;font-size:1.02rem}
.btn-block{display:block;width:100%}
/* Hero */
.hero{background:linear-gradient(160deg,#0f2a43 0%,#173a5e 60%,#1f4e79 100%);color:#eaf2fb;padding:64px 0 56px}
.hero h1{color:#fff;max-width:820px}
.hero p.sub{font-size:1.15rem;color:#c9dcf0;max-width:680px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.hero-badges .badge{background:rgba(255,255,255,.1);color:#dbe9f8;border:1px solid rgba(255,255,255,.18)}
/* Sections */
.section{padding:52px 0}
.section.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:var(--teal)}
.lead{font-size:1.1rem;color:#334155;max-width:720px}
/* Grid + cards */
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.card h3{margin-top:0}
.card .meta{font-size:.85rem;color:var(--gray)}
.card-link{display:block;color:inherit}
.card-link:hover{text-decoration:none;border-color:var(--lab-blue-2);transform:translateY(-2px);transition:.15s}
.icon-box{width:44px;height:44px;border-radius:10px;background:var(--teal-soft);color:var(--teal);
  display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:800;margin-bottom:10px}
/* Badges */
.badge{display:inline-flex;align-items:center;gap:6px;background:var(--teal-soft);color:#1f6f63;
  border:1px solid #cfe8e2;padding:4px 10px;border-radius:999px;font-size:.76rem;font-weight:600;margin:2px}
.badge.blue{background:#e8f0fe;color:#1b4fb0;border-color:#cfe0fb}
.badge.gray{background:#eef2f7;color:#475569;border-color:#dde5ee}
.badge-row{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
/* Trust strip */
.trust{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:center;color:#cbd7e6;font-size:.9rem}
.trust span{display:inline-flex;align-items:center;gap:6px}
/* Tables */
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
table.dir{width:100%;border-collapse:collapse;min-width:640px}
table.dir th,table.dir td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);font-size:.9rem}
table.dir th{background:#f1f5fb;color:var(--navy);font-weight:700;position:sticky;top:0}
table.dir tr:hover td{background:#f8fbff}
/* Filters */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.filters input,.filters select{padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-size:.95rem;background:#fff}
.filters input[type=search]{min-width:260px;flex:1}
.chip{background:#eef2f7;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.85rem;cursor:pointer}
.chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.count-note{font-size:.85rem;color:var(--gray);margin:6px 0 14px}
/* Forms */
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);max-width:720px}
.field{margin-bottom:16px}
.field label{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px;color:var(--navy)}
.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;font-size:.95rem;font-family:inherit}
.field textarea{min-height:120px;resize:vertical}
.field .req{color:#c0392b}
.hp{position:absolute;left:-9999px;top:-9999px;height:0;width:0;overflow:hidden}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;color:#334155;margin-bottom:12px}
.check input{width:auto;margin-top:3px}
.form-note{font-size:.82rem;color:var(--gray)}
/* CTA block */
.cta-block{background:linear-gradient(135deg,var(--navy),#1f4e79);color:#fff;border-radius:16px;padding:36px;text-align:center;margin:34px auto}
.cta-block h2{color:#fff}
.cta-block p{color:#cfe0f2;max-width:620px;margin:0 auto 18px}
.cta-mini{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
/* Disclaimer */
.disclaimer{background:#fff7e6;border:1px solid #f5d98b;border-radius:12px;padding:16px 18px;font-size:.86rem;color:#6b5314;margin:22px 0}
.disclaimer strong{color:#5a4300}
/* Breadcrumb */
.crumb{font-size:.82rem;color:var(--gray);padding:14px 0}
.crumb a{color:var(--gray)}
/* Article */
.article{max-width:760px;margin:0 auto}
.article h2{margin-top:1.4em}
.article ul,.article ol{padding-left:22px}
.article li{margin:.3em 0}
.updated{font-size:.82rem;color:var(--gray);border-left:3px solid var(--teal);padding-left:10px;margin:8px 0 20px}
.toc{background:#f1f5fb;border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin:18px 0}
.toc ul{margin:6px 0 0;padding-left:18px}
/* FAQ */
.faq details{border:1px solid var(--line);border-radius:10px;padding:4px 16px;margin-bottom:10px;background:#fff}
.faq summary{font-weight:700;color:var(--navy);cursor:pointer;padding:12px 0}
.faq details[open]{border-color:#cfe0fb}
/* Footer */
.site-footer{background:var(--navy);color:#c7d3e2;padding:48px 0 24px;margin-top:40px}
.site-footer h4{color:#fff;font-size:.95rem;margin-bottom:12px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px}
.footer-grid a{color:#aebfd4;font-size:.9rem;display:block;margin-bottom:8px}
.footer-grid a:hover{color:#fff}
.footer-bottom{border-top:1px solid #223b5c;margin-top:28px;padding-top:18px;font-size:.82rem;color:#8fa3bd}
.pill-list{list-style:none;padding:0;margin:0}
/* Success */
.success{max-width:620px;margin:60px auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:40px;box-shadow:var(--shadow)}
.success .tick{width:64px;height:64px;border-radius:50%;background:var(--teal-soft);color:var(--teal);display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 18px}
@media(max-width:860px){
  .grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .hero h1{font-size:2rem}
  .menu{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;padding:16px 20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
  .menu.open{display:flex}
  .hamburger{display:block}
}
@media(max-width:560px){
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  h1{font-size:1.7rem}
}
