/* Minimal, neutral styling for ByLanks v1 */
:root{
  --bg:#ffffff;
  --text:#0b0b0b;
  --muted:#6b6b6b;
  --accent:#111111;
  --max-width:68ch;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background:var(--bg);
  color:var(--text);
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.container{
  width:90%;
  max-width:var(--max-width);
  margin:0 auto;
  padding:clamp(1rem,2.5vw,2rem) 0;
}
.site-header{
  border-bottom:1px solid #eee;
}
.brand{
  display:inline-block;
  color:var(--text);
  text-decoration:none;
  font-weight:600;
  padding:0.75rem 0;
}
.nav{float:right}
.nav a{color:var(--muted);text-decoration:none;margin-left:1rem;font-size:0.95rem}
.main{padding-top:1rem}
.hero h1{
  font-size:clamp(1.5rem,3.4vw,2.1rem);
  margin:0 0 0.5rem 0;
  font-weight:700;
}
.intro{color:var(--muted);margin:0 0 1rem 0}
.ctas{margin:1rem 0 2rem 0}
.btn{
  display:inline-block;
  padding:0.5rem 0.9rem;
  border-radius:6px;
  text-decoration:none;
  background:var(--accent);
  color:#fff;
  font-weight:600;
  margin-right:0.6rem;
}
.btn.outline{background:transparent;border:1px solid #ddd;color:var(--text)}
.link{color:var(--muted);text-decoration:underline}
.proof{margin:1.5rem 0}
.proof ul{padding-left:1.15rem;margin:0;color:var(--muted)}
.signup{border-top:1px solid #f0f0f0;padding-top:1rem;margin-top:1.5rem}
.signup-form{display:flex;gap:0.5rem;align-items:center;flex-wrap:wrap}
.signup-form input[type="email"]{padding:0.5rem;min-width:220px;border:1px solid #e7e7e7;border-radius:4px}
.signup-form button{padding:0.5rem 0.9rem;border-radius:6px;border:0;background:#111;color:#fff;font-weight:600}
footer{border-top:1px solid #eee;margin-top:3rem;padding:1rem 0;color:var(--muted);font-size:0.9rem;text-align:center}
small.note{color:var(--muted)}
@media (max-width:600px){.nav{float:none;margin-top:0.5rem}.container{width:94%}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Preview placeholders */
.signup-placeholder, .contact-placeholder, .request-placeholder{display:flex;flex-direction:row;gap:0.5rem;align-items:center;margin-top:0.5rem;flex-wrap:wrap}
.signup-placeholder input,.contact-placeholder input,.request-placeholder input,.contact-placeholder textarea,.request-placeholder textarea{padding:0.45rem;border:1px solid #e7e7e7;border-radius:4px;background:#fafafa}
.contact-placeholder textarea,.request-placeholder textarea{min-height:72px;padding:0.5rem}
.contact-placeholder button,.request-placeholder button{padding:0.45rem 0.75rem;border-radius:6px;border:0;background:#bbb;color:#fff;font-weight:600}

.backlog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem}
.vote-list{list-style:none;padding:0;margin:0}
.vote-item{display:flex;justify-content:space-between;align-items:center;padding:0.5rem 0;border-bottom:1px dashed #eee}
.vote-item button{background:#ddd;border:0;padding:0.35rem 0.6rem;border-radius:6px}

/* Beehiiv embed styles */
.beehiiv-signup{margin-top:0.75rem;max-width:560px;width:100%;}
.beehiiv-embed{display:block;margin:0 auto;max-width:100%;height:auto;border:0;}
@media (max-width:420px){.beehiiv-embed{height:280px;}}