#vivaJoin .viva-top-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;max-width:1050px;margin:0 auto}
#vivaJoin .viva-top-grid>.panel{display:flex;flex-direction:column;min-width:0;padding:26px;border:1px solid #dbe5f0;border-radius:16px;background:#fff;box-shadow:0 5px 18px #102b4905}
#vivaJoin .panel-head{display:block;margin:0 0 24px}
#vivaJoin .panel-head h3{font-size:21px;line-height:1.3;margin:8px 0;color:#122e4e;letter-spacing:-.025em}
#vivaJoin .panel-head p{font-size:13px;line-height:1.6;color:#718096;margin:0;min-height:42px}
#vivaJoin form.viva-stack-form{display:grid;gap:18px;margin-top:auto}
#vivaJoin form.viva-stack-form>label{display:grid;gap:8px;font-size:13px;font-weight:650;color:#3a526e}
#vivaJoin form.viva-stack-form input{display:block;box-sizing:border-box;width:100%;height:46px;padding:11px 13px;border:1px solid #ccd9e7;border-radius:9px;background:#fafdff;font:400 14px system-ui,sans-serif;color:#17314e}
#vivaJoin form.viva-stack-form input:focus{outline:3px solid #dbe9ff;outline-offset:1px;border-color:#4384ec}
#vivaJoin form.viva-stack-form button{justify-self:start;width:auto;min-width:155px;min-height:43px;padding:10px 20px;border-radius:9px;font-size:13px;box-shadow:none}
@media(max-width:650px){#vivaJoin .viva-top-grid{grid-template-columns:1fr}#vivaJoin .viva-top-grid>.panel{padding:20px}#vivaJoin .panel-head p{min-height:0}#vivaJoin form.viva-stack-form button{width:100%}}
