
.zhv-cta{margin:18px 0; padding:0}
.zhv-cta__inner{
  border:1px solid rgba(0,0,0,.12);
  border-radius:16px;
  padding:16px;
  display:flex;
  gap:14px;
  align-items:flex-start;
  justify-content:space-between;
  flex-wrap:wrap;
  background:#fff;
  box-shadow:0 6px 20px rgba(0,0,0,.06);
}
.zhv-cta__title{margin:0 0 6px; font-size:18px; line-height:1.2}
.zhv-cta__subtitle{margin:0 0 8px; opacity:.86}
.zhv-cta__promise{margin:0; font-weight:600; opacity:.9}
.zhv-cta__actions{display:flex; gap:10px; flex-wrap:wrap; align-items:center}
.zhv-btn{
  appearance:none; border:1px solid rgba(0,0,0,.18);
  background:#fff; color:#111;
  padding:10px 12px; border-radius:12px;
  text-decoration:none; cursor:pointer;
  font-weight:700;
}
.zhv-btn--primary{background:#111; color:#fff; border-color:#111}
.zhv-btn:hover{filter:brightness(.98)}
.zhv-modal{position:fixed; inset:0; display:none; z-index:99999}
.zhv-modal.is-open{display:block}
.zhv-modal__backdrop{position:absolute; inset:0; background:rgba(0,0,0,.55)}
.zhv-modal__card{
  position:relative;
  max-width:720px;
  margin:6vh auto 0;
  background:#fff;
  border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.25);
  overflow:hidden;
}
.zhv-modal__header{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 16px 10px;
  border-bottom:1px solid rgba(0,0,0,.08);
}
.zhv-modal__kicker{font-size:12px; letter-spacing:.06em; text-transform:uppercase; opacity:.7}
.zhv-modal__headline{font-size:16px; font-weight:800}
.zhv-iconbtn{
  border:none; background:transparent; font-size:26px; line-height:1;
  cursor:pointer; padding:6px 10px; border-radius:10px;
}
.zhv-iconbtn:hover{background:rgba(0,0,0,.06)}
.zhv-form{padding:14px 16px 18px}
.zhv-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width:720px){
  .zhv-grid{grid-template-columns:1fr}
}
.zhv-field span{display:block; font-weight:700; margin:0 0 6px; opacity:.92}
.zhv-field input,.zhv-field select,.zhv-field textarea{
  width:100%;
  border:1px solid rgba(0,0,0,.18);
  border-radius:12px;
  padding:10px 12px;
  outline:none;
}
.zhv-field input:focus,.zhv-field select:focus,.zhv-field textarea:focus{
  border-color:rgba(0,0,0,.5);
}
.zhv-field--full{grid-column:1/-1}
.zhv-form__footer{
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  margin-top:12px;
}
.zhv-form__status{font-weight:700; opacity:.9}
.zhv-sticky{
  position:fixed;
  left:0; right:0; bottom:0;
  display:none;
  gap:10px;
  padding:10px;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(10px);
  border-top:1px solid rgba(0,0,0,.10);
  z-index:99998;
}
.zhv-sticky__primary, .zhv-sticky__secondary{
  flex:1;
  text-align:center;
  padding:12px 10px;
  border-radius:14px;
  font-weight:900;
  text-decoration:none;
  border:1px solid rgba(0,0,0,.18);
  cursor:pointer;
}
.zhv-sticky__primary{background:#111; color:#fff; border-color:#111}
.zhv-sticky__secondary{background:#fff; color:#111}
@media (max-width:820px){
  .zhv-sticky{display:flex}
}
