/* VectaBind marketing site — light theme aligned with app + docs/signup */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  color-scheme:light;
  --site-bg:#f7f5ee;
  --site-surface:#fff;
  --site-surface-soft:#fafbfc;
  --site-border:#e8e6df;
  --site-border-soft:#e2e8f0;
  --site-text:#1a1a1a;
  --site-text-muted:#555;
  --site-text-dim:#888;
  --site-heading:#1a1a1a;
  --site-blue:#1d5fa8;
  --site-blue-bright:#378add;
  --site-blue-light:#e6f1fb;
  --site-accent:#c2780a;
  --site-mono:'SF Mono','JetBrains Mono','IBM Plex Mono',ui-monospace,monospace;
  --site-sans:-apple-system,BlinkMacSystemFont,'Inter','Segoe UI',sans-serif;
  --site-radius:10px;
  --site-max:1100px;
}
html{scroll-behavior:smooth}
body{font-family:var(--site-sans);background:var(--site-bg);color:var(--site-text);line-height:1.6;font-size:15px;min-height:100vh}
a{color:var(--site-blue);text-decoration:none}
a:hover{text-decoration:underline}
.mono{font-family:var(--site-mono)}

/* Nav */
.site-nav{display:flex;align-items:center;justify-content:space-between;padding:0 28px;height:60px;border-bottom:1px solid var(--site-border);background:#fff;position:sticky;top:0;z-index:100}
.site-nav-logo{display:flex;align-items:baseline;text-decoration:none;line-height:1}
.site-nav-logo-text{font-size:20px;font-weight:800;letter-spacing:-0.5px;color:var(--site-text)}
.site-nav-logo-text b{color:var(--site-blue);font-weight:800}
.site-nav-logo-sub{display:none}
.site-nav-links{display:flex;gap:20px;align-items:center}
.site-nav-links a{font-size:14px;color:var(--site-text-muted);text-decoration:none}
.site-nav-links a:hover{color:var(--site-text);text-decoration:none}
.site-nav-links a.is-active{color:var(--site-blue);font-weight:600}
.site-nav-actions{display:flex;gap:8px;align-items:center}
.btn-sm-outline{font-size:13px;color:var(--site-text-muted);background:var(--site-surface);border:1px solid var(--site-border);border-radius:8px;padding:7px 14px;text-decoration:none;display:inline-block}
.btn-sm-outline:hover{border-color:#ccc;color:var(--site-text);text-decoration:none}
.btn-sm-primary{font-size:13px;font-weight:600;color:#fff;background:var(--site-blue);border:none;border-radius:8px;padding:8px 16px;text-decoration:none;display:inline-block}
.btn-sm-primary:hover{background:#185090;text-decoration:none}

/* Hero */
.site-hero{padding:56px 28px 48px;max-width:var(--site-max);margin:0 auto}
.site-hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:40px;align-items:center;margin-bottom:36px}
.site-hero-copy{min-width:0}
.site-hero-eyebrow{font-size:11px;letter-spacing:0.09em;text-transform:uppercase;color:var(--site-blue);font-weight:600;margin-bottom:18px}
.site-hero-headline{font-size:clamp(28px,4vw,40px);font-weight:800;line-height:1.12;letter-spacing:-1px;color:var(--site-heading);max-width:640px;margin-bottom:14px}
.site-hero-headline .stat-line{font-family:var(--site-mono);font-size:clamp(24px,3.2vw,32px);color:var(--site-blue);font-weight:700;display:block;margin-top:8px;letter-spacing:-0.5px}
.site-hero-sub{font-size:16px;color:var(--site-text-muted);line-height:1.7;max-width:560px;margin-bottom:28px}
.site-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:0}
.site-hero-visual{border-radius:14px;overflow:hidden;box-shadow:0 20px 50px rgba(15,23,42,0.14),0 0 0 1px rgba(15,23,42,0.08);background:#f8fafc;line-height:0}
.app-preview-shot{display:block;width:100%;height:auto;vertical-align:middle}
.btn-hero-primary{background:var(--site-blue);color:#fff;border:none;border-radius:9px;padding:12px 24px;font-size:15px;font-weight:600;text-decoration:none;display:inline-block}
.btn-hero-primary:hover{background:#185090;text-decoration:none}
.btn-hero-ghost{background:var(--site-surface);color:var(--site-text);border:1px solid var(--site-border);border-radius:9px;padding:12px 24px;font-size:15px;text-decoration:none;display:inline-block}
.btn-hero-ghost:hover{border-color:#aaa;text-decoration:none}
.site-stats{display:grid;grid-template-columns:repeat(3,1fr);background:var(--site-surface);border:1px solid var(--site-border);border-radius:var(--site-radius);overflow:hidden;box-shadow:0 1px 3px rgba(15,23,42,0.04)}
.site-stat{padding:22px 20px;border-right:1px solid var(--site-border)}
.site-stat:last-child{border-right:none}
.site-stat-num{font-size:28px;font-weight:800;font-family:var(--site-mono);color:var(--site-heading);letter-spacing:-1px;margin-bottom:4px}
.site-stat-num .accent{color:var(--site-blue)}
.site-stat-label{font-size:12px;color:var(--site-text-muted);line-height:1.45}
.site-stat-note{font-size:11px;color:var(--site-text-dim);margin-top:4px;line-height:1.4}

/* Homepage highlight — large library batch scoring */
.site-highlight{padding:48px 28px;max-width:var(--site-max);margin:0 auto}
.site-highlight-inner{display:grid;grid-template-columns:1.2fr 0.8fr;gap:32px;align-items:center;background:linear-gradient(135deg,#f0f4fb 0%,#fff 55%,#f7f5ee 100%);border:1px solid #dbe6f5;border-radius:var(--site-radius);padding:32px 36px;box-shadow:0 1px 3px rgba(15,23,42,0.04)}
.site-highlight h2{font-size:clamp(22px,3vw,28px);font-weight:800;color:var(--site-heading);letter-spacing:-0.5px;margin-bottom:10px;line-height:1.2}
.site-highlight h2 .accent{color:var(--site-blue);font-family:var(--site-mono)}
.site-highlight-lead{font-size:15px;color:var(--site-text-muted);line-height:1.65;margin-bottom:16px;max-width:520px}
.site-highlight-list{margin:0 0 20px;padding:0;list-style:none}
.site-highlight-list li{font-size:14px;color:var(--site-text-muted);padding:5px 0 5px 20px;position:relative;line-height:1.5}
.site-highlight-list li::before{content:'→';position:absolute;left:0;color:var(--site-blue);font-weight:700}
.site-highlight-actions{display:flex;gap:10px;flex-wrap:wrap}
.site-highlight-pills{display:flex;flex-direction:column;gap:10px}
.site-highlight-pill{background:#fff;border:1px solid var(--site-border);border-radius:var(--site-radius);padding:14px 16px}
.site-highlight-pill strong{display:block;font-size:22px;font-weight:800;font-family:var(--site-mono);color:var(--site-blue);letter-spacing:-0.5px;margin-bottom:2px}
.site-highlight-pill span{font-size:12px;color:var(--site-text-muted);line-height:1.45}

/* Section */
.site-section{padding:56px 28px;max-width:var(--site-max);margin:0 auto;border-top:1px solid var(--site-border)}
.site-section:first-of-type{border-top:none}
.section-label{font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--site-blue);font-weight:700;margin-bottom:12px}
.section-title{font-size:clamp(22px,3vw,32px);font-weight:800;color:var(--site-heading);letter-spacing:-0.5px;margin-bottom:10px;line-height:1.2}
.section-sub{font-size:15px;color:var(--site-text-muted);line-height:1.7;max-width:560px;margin-bottom:28px}

/* Protocol workflow — vertical dividers, no broken pseudo-lines */
.protocol-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:4px;background:var(--site-surface);border:1px solid var(--site-border);border-radius:var(--site-radius);overflow:hidden}
.protocol-step{padding:20px 18px;border-right:1px solid var(--site-border)}
.protocol-step:last-child{border-right:none}
.protocol-tag{font-family:var(--site-mono);font-size:10px;color:var(--site-blue);background:var(--site-blue-light);border:1px solid #b5d4f4;border-radius:4px;padding:2px 8px;display:inline-block;margin-bottom:10px;letter-spacing:0.04em}
.protocol-title{font-size:14px;font-weight:700;color:var(--site-heading);margin-bottom:6px;line-height:1.3}
.protocol-body{font-size:13px;color:var(--site-text-muted);line-height:1.6}

/* Feature rows */
.feature-row{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding:36px 0;border-bottom:1px solid var(--site-border-soft)}
.feature-row:last-child{border-bottom:none;padding-bottom:0}
.feature-row:first-child{padding-top:0}
.feat-tag{display:inline-block;font-size:10px;font-family:var(--site-mono);background:var(--site-blue-light);color:#0c447c;border:1px solid #b5d4f4;border-radius:4px;padding:2px 8px;margin-bottom:12px;letter-spacing:0.04em;text-transform:lowercase}
.feat-title{font-size:20px;font-weight:700;color:var(--site-heading);letter-spacing:-0.3px;margin-bottom:10px;line-height:1.3}
.feat-body{font-size:14px;color:var(--site-text-muted);line-height:1.7}
.feat-visual{background:var(--site-surface-soft);border:1px solid var(--site-border);border-radius:var(--site-radius);padding:16px}
.vis-header{font-size:10px;font-family:var(--site-mono);color:var(--site-text-dim);margin-bottom:14px;letter-spacing:0.04em;text-transform:uppercase}
.score-row{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.score-label{font-size:10px;font-family:var(--site-mono);color:var(--site-text-dim);width:62px;flex-shrink:0}
.score-bar-bg{flex:1;height:4px;background:#eef2f6;border-radius:2px}
.score-bar-fill{height:4px;border-radius:2px}
.bar-high{background:var(--site-blue)}
.bar-med{background:var(--site-blue-bright)}
.bar-low{background:#cbd5e1}
.score-val{font-size:10px;font-family:var(--site-mono);color:var(--site-text);width:32px;text-align:right;flex-shrink:0}
.badge-high{font-size:9px;font-family:var(--site-mono);background:#e6f1fb;color:#0c447c;border:1px solid #b5d4f4;border-radius:3px;padding:1px 5px}
.badge-med{font-size:9px;font-family:var(--site-mono);background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:3px;padding:1px 5px}
.vis-footer{font-size:10px;color:var(--site-text-dim);font-family:var(--site-mono);margin-top:10px}
.mol-tag{display:inline-block;font-size:10px;font-family:var(--site-mono);background:#fff;border:1px solid var(--site-border);border-radius:3px;padding:3px 7px;margin:2px;color:var(--site-text-muted)}
.mol-tag.hit{background:var(--site-blue-light);color:#0c447c;border-color:#b5d4f4}
.chat-user{background:#f8fafc;border:1px solid var(--site-border);border-radius:8px;padding:10px 12px;font-size:12px;color:var(--site-text-muted);line-height:1.5;margin-bottom:8px}
.chat-ai{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 12px;font-size:12px;color:#166534;line-height:1.5}

/* Benchmark */
.bench-bars{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.bar-row{display:flex;align-items:center;gap:12px}
.bar-name{font-size:13px;color:var(--site-text-muted);width:100px;flex-shrink:0}
.bar-name.you{font-weight:700;color:var(--site-blue)}
.bar-track{flex:1;height:8px;background:#f0ede6;border-radius:4px;overflow:hidden}
.bar-fill{height:100%;border-radius:4px;background:#c8c5bc}
.bar-fill.you{background:var(--site-blue)}
.bar-val{font-size:13px;font-weight:600;width:36px;text-align:right;flex-shrink:0;font-family:var(--site-mono)}
.bar-val.you{color:var(--site-blue)}
.bench-note{font-size:12px;color:var(--site-text-dim);margin-top:12px;line-height:1.6}

/* Targets */
.targets-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:8px}
.target-card{background:var(--site-surface);border:1px solid var(--site-border);border-radius:var(--site-radius);padding:14px 16px}
.target-card h4{font-size:13px;font-weight:600;color:var(--site-heading);margin-bottom:4px}
.target-card p{font-size:12px;color:var(--site-text-dim);line-height:1.5}

/* Pricing */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--site-border);border-radius:var(--site-radius);overflow:hidden;background:var(--site-surface)}
.price-card{padding:24px 20px;border-right:1px solid var(--site-border)}
.price-card:last-child{border-right:none}
.price-card.featured{background:#fafcff;position:relative}
.price-card.featured::before{content:'';position:absolute;inset:0;border:1px solid var(--site-blue);border-radius:inherit;pointer-events:none}
.price-tier{font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:var(--site-text-dim);margin-bottom:14px;font-weight:700}
.price-num{font-size:28px;font-weight:800;font-family:var(--site-mono);color:var(--site-heading);letter-spacing:-1px}
.price-num sup{font-size:14px;vertical-align:super;font-weight:400}
.price-period{font-size:12px;color:var(--site-text-dim);margin:4px 0 18px}
.price-feature{font-size:13px;color:var(--site-text-muted);padding:5px 0;display:flex;align-items:flex-start;gap:8px;line-height:1.45}
.price-feature:last-of-type{margin-bottom:0}
.price-check{color:var(--site-blue);font-size:12px;flex-shrink:0;line-height:1.5;font-weight:700;margin-top:1px}
.price-btn{width:100%;margin-top:20px;background:var(--site-surface);color:var(--site-text-muted);border:1px solid var(--site-border);border-radius:8px;padding:10px 0;font-size:13px;font-weight:600;text-decoration:none;display:block;text-align:center}
.price-btn.blue{background:var(--site-blue);color:#fff;border:none}
.price-btn.blue:hover{background:#185090;color:#fff}
.price-btn:hover{text-decoration:none;border-color:#ccc;color:var(--site-text)}

/* CTA — compact card, not a full-width color block */
.site-cta{padding:0 28px 48px;max-width:var(--site-max);margin:0 auto}
.site-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:var(--site-surface);border:1px solid var(--site-border);border-radius:var(--site-radius);padding:28px 32px;box-shadow:0 1px 3px rgba(15,23,42,0.04)}
.site-cta-text{flex:1;min-width:200px}
.site-cta h2{font-size:20px;font-weight:700;color:var(--site-heading);margin-bottom:6px;letter-spacing:-0.3px}
.site-cta p{font-size:14px;color:var(--site-text-muted);margin:0;line-height:1.55;max-width:none}
.site-cta .btn-hero-primary{flex-shrink:0;padding:11px 22px;font-size:14px}

/* Footer */
.site-footer{padding:20px 28px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--site-border);background:var(--site-bg);flex-wrap:wrap;gap:12px}
.site-footer-copy{font-size:12px;color:var(--site-text-dim)}
.site-footer-links{display:flex;gap:16px;flex-wrap:wrap}
.site-footer-links a{font-size:12px;color:var(--site-text-muted);text-decoration:none}
.site-footer-links a:hover{color:var(--site-text)}

/* Inner page hero — platform/contact-style band below nav */
.site-page-hero{
  background:linear-gradient(165deg,#f0f4fb 0%,#eef3fa 42%,#f7f5ee 100%);
  border-bottom:1px solid var(--site-border);
  padding:72px 28px 64px;
  position:relative;
  overflow:hidden;
}
.site-page-hero::before{
  content:'';
  position:absolute;
  top:-120px;right:-80px;
  width:420px;height:420px;
  background:radial-gradient(circle,rgba(29,95,168,0.08) 0%,transparent 70%);
  pointer-events:none;
}
.site-page-hero-inner{
  max-width:var(--site-max);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:48px;
  align-items:center;
  position:relative;
}
.site-page-hero-copy{min-width:0}
.site-page-hero-title{
  font-size:clamp(30px,4.2vw,44px);
  font-weight:800;
  line-height:1.1;
  letter-spacing:-1.5px;
  color:var(--site-heading);
  margin-bottom:16px;
  max-width:560px;
}
.site-page-hero-title em{font-style:normal;color:var(--site-blue)}
.site-page-hero-sub{
  font-size:17px;
  color:var(--site-text-muted);
  line-height:1.75;
  max-width:520px;
  margin-bottom:28px;
}
.site-page-hero-aside{display:flex;flex-direction:column;gap:12px}
.site-page-hero-pill{
  background:rgba(255,255,255,0.88);
  border:1px solid var(--site-border);
  border-radius:var(--site-radius);
  padding:16px 18px;
  box-shadow:0 2px 12px rgba(15,23,42,0.05);
  backdrop-filter:blur(6px);
  display:flex;
  align-items:flex-start;
  gap:14px;
}
.site-page-hero-pill-icon{
  width:40px;height:40px;
  flex-shrink:0;
  background:var(--site-blue-light);
  border:1px solid #b5d4f4;
  border-radius:9px;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--site-mono);
  font-size:13px;font-weight:800;
  color:var(--site-blue);
  letter-spacing:-0.3px;
}
.site-page-hero-pill-body{min-width:0}
.site-page-hero-pill-label{font-size:14px;font-weight:700;color:var(--site-heading);margin-bottom:3px;line-height:1.3}
.site-page-hero-pill-note{font-size:12px;color:var(--site-text-dim);line-height:1.5;margin:0}

/* Inner pages */
.site-page{padding:48px 28px;max-width:900px;margin:0 auto}
.site-page h1{font-size:32px;font-weight:800;color:var(--site-heading);letter-spacing:-1px;margin-bottom:12px}
.site-page h2{font-size:20px;font-weight:700;color:var(--site-heading);margin:36px 0 12px;padding-top:28px;border-top:1px solid var(--site-border)}
.site-page h2:first-of-type{border-top:none;padding-top:0}
.site-page p,.site-page li{font-size:14px;color:var(--site-text-muted);line-height:1.75}
.site-page p{margin-bottom:14px}
.site-page ul,.site-page ol{margin:0 0 14px 20px}
.site-page li{margin-bottom:6px}
.site-alert{border-radius:8px;padding:12px 16px;margin:14px 0;font-size:13px;line-height:1.6;border:1px solid var(--site-border)}
.site-alert-info{background:var(--site-blue-light);color:#0c447c;border-color:#b5d4f4}

@media(max-width:900px){
  .site-nav-links{display:none}
  .site-page-hero{padding:56px 20px 48px}
  .site-page-hero-inner{grid-template-columns:1fr;gap:32px}
  .site-page-hero-title{font-size:30px}
  .site-hero-grid{grid-template-columns:1fr;gap:28px}
  .site-hero-visual{max-width:100%}
  .site-highlight-inner{grid-template-columns:1fr;padding:24px}
  .site-stats,.price-grid,.targets-grid,.protocol-flow{grid-template-columns:1fr}
  .site-stat,.price-card,.protocol-step{border-right:none;border-bottom:1px solid var(--site-border)}
  .site-stat:last-child,.price-card:last-child,.protocol-step:last-child{border-bottom:none}
  .feature-row{grid-template-columns:1fr;gap:24px}
  .site-cta-inner{flex-direction:column;align-items:flex-start;padding:24px}
  .site-cta .btn-hero-primary{width:100%;text-align:center}
}
