.link{font-weight:600;text-decoration:none;color:var(--violet)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
/* page */
.grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start;padding-top:80px;padding-bottom:96px}
.steps{list-style:none;margin:48px 0 0;padding:0;border-top:1px solid var(--line)}
.steps li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;padding:22px 0;border-bottom:1px solid var(--line)}
.steps .k{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--violet);padding-top:3px}
.steps h3{margin:0;font-family:var(--font-display);font-weight:600;font-size:19px;line-height:26px}
.steps p{margin:6px 0 0;color:var(--ink-2);font-size:15px;line-height:23px}
.form{padding:36px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}
.form label small{font-weight:400;color:var(--muted);font-size:13px;line-height:18px}
.form .full{grid-column:1/-1}
.form input[type=text],.form input[type=email],.form input[type=tel],.form select,.form textarea{font:inherit;font-weight:400;font-size:15px;height:44px;padding:0 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}
.form textarea{height:112px;padding:12px;resize:vertical}
.form ::placeholder{color:var(--muted)}
.wince{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.wince li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:22px;color:var(--ink-2)}
.wince li::before{content:"";flex:0 0 8px;height:8px;border-radius:50%;background:var(--violet);margin-top:7px}
.faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
.faq .card{padding:28px}
.faq h3{margin:0;font-family:var(--font-display);font-weight:600;font-size:19px;line-height:26px}
.faq p{margin:10px 0 0;color:var(--ink-2);font-size:15px;line-height:23px}
.thanks{padding:56px;display:flex;flex-direction:column;gap:16px;align-items:flex-start;min-height:520px;justify-content:center}
@media (max-width:900px){
.wrap{padding:0 16px}
.grid,.ftr-top,.faq,.form{grid-template-columns:minmax(0,1fr)}
.xl{font-size:56px;line-height:56px}
.form{padding:20px}.thanks{padding:24px}
.grid{padding-top:48px;padding-bottom:64px}
}
.side{position:sticky;top:96px}
.form .fld{display:flex;flex-direction:column;gap:6px}
.form .fld label{font-size:14px;font-weight:600}
.form .fld small{font-weight:400;color:var(--muted);font-size:13px;line-height:18px}
.form label.check{flex-direction:row;align-items:flex-start;gap:12px;font-weight:400;font-size:14px;line-height:20px;color:var(--ink-2)}
.form .check input{width:20px;height:20px;flex:0 0 20px;accent-color:#8F88FF;margin:0}
.form .err{margin:0;color:var(--error);font-size:13px;line-height:18px}
.form [aria-invalid="true"]{border-color:var(--error)}
.form-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--line)}
.status{margin:0;padding:14px 16px;border-radius:var(--radius-md);background:var(--surface-sunken);border:1px solid var(--line);font-size:14px;line-height:20px}
@media (max-width:900px){.side{position:static}}
