.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:999px;
  padding:12px 18px;
  border:1px solid var(--line);
  font-weight:700;
  cursor:pointer;
}
.btn-primary{
  background:var(--brand);
  border-color:var(--brand);
  color:#fff;
}
.btn-ghost{
  background:#fff;
  color:var(--text);
}
.grid{
  display:grid;
  gap:18px;
}
.card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow: 0 10px 24px rgba(0,0,0,.05);
}
.card .pad{ padding:16px; }

.lead-form{ display:grid; gap:12px; }
.lead-form label{ display:grid; gap:6px; font-size:14px; font-weight:600; }
.lead-form input, .lead-form select, .lead-form textarea{
  border:1px solid var(--line);
  border-radius:12px;
  padding:12px 12px;
  font-size:15px;
  outline:none;
}
.lead-form input:focus, .lead-form select:focus, .lead-form textarea:focus{
  border-color:rgba(230,70,70,.5);
  box-shadow:0 0 0 4px rgba(230,70,70,.12);
}

.form-msg{
  padding:12px 12px;
  border-radius:12px;
  font-weight:700;
}
.form-msg.is-ok{
  background:rgba(17,163,106,.12);
  border:1px solid rgba(17,163,106,.25);
}
.form-msg.is-err{
  background:rgba(230,70,70,.10);
  border:1px solid rgba(230,70,70,.25);
}

.form-note{ font-size:13px; color:var(--muted); margin-top:-6px; }
.pills{ display:flex; flex-wrap:wrap; gap:10px; }
.pill{
  border:1px solid var(--line);
  background:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-weight:700;
  font-size:13px;
}

.brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:900;
}
.brand img{
  height:42px;
  width:auto;
  display:block;
}
@media (max-width: 768px){
  .brand img{ height:34px; }
}
.brand-text{
  letter-spacing:.2px;
}
