.visit-page .hero{padding-bottom:40px}
.visit-request{padding:clamp(32px,5vw,64px) 0 80px}
.visit-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,7vw,100px);max-width:1080px;align-items:start}
.visit-intro h2,.visit-form h2{font-size:clamp(26px,3vw,38px);line-height:1.1;letter-spacing:-.035em;margin:0 0 16px}
.visit-intro p{max-width:390px;line-height:1.65;margin:0 0 24px}
.visit-intro .visit-note{margin:26px 0;font-size:14px;max-width:340px}
.visit-form{padding:clamp(24px,3vw,40px);border:1px solid #dce1e7;border-radius:20px;background:#fff;color:#15273c;box-shadow:0 12px 40px #15273c08}
.visit-form>p{font-size:16px;line-height:1.5;margin:0 0 25px}
.visit-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}
.visit-fields label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;min-width:0}
.visit-fields label.wide{grid-column:1/-1}
.visit-fields input{width:100%;min-width:0;min-height:52px;padding:12px 14px;font:inherit;font-size:16px;font-weight:400;background:#fff;color:#15273c;border:1px solid #a7b0bb;border-radius:8px;box-sizing:border-box}
.visit-fields input:focus{outline:2px solid #15273c;outline-offset:2px}
.visit-form .visit-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.visit-security{margin:20px 0 16px;min-height:65px}
.visit-form .btn{width:100%;min-height:52px}
.visit-form .btn:disabled{opacity:.6;cursor:wait}
.visit-form .form-privacy{font-size:12px;line-height:1.6;margin:14px 0 0;color:#516174}
.visit-form .form-privacy a{text-decoration:underline}
.visit-form [data-form-status]{font-size:16px;line-height:1.55;margin:16px 0 0}
.visit-form [data-form-status]:empty{display:none}
.visit-form .is-success{padding:22px;border:1px solid #15273c;border-radius:10px;background:#f5f7f9}
@media(max-width:700px){.visit-grid{grid-template-columns:1fr;gap:28px}.visit-intro .visit-note{margin:16px 0 0}.visit-intro h2{font-size:28px}.visit-form{padding:22px 18px}.visit-request{padding-top:24px}.visit-fields{gap:16px 12px}}
@media(max-width:360px){.visit-fields{grid-template-columns:1fr}.visit-fields label{grid-column:1/-1}}
.visit-page .page-hero{padding:40px 0 30px;min-height:0}
.visit-page .page-hero h1{font-size:clamp(38px,4vw,56px);line-height:1.05;margin-top:14px;margin-bottom:16px}
.visit-page .page-hero .kicker{margin-bottom:12px}
.visit-page .page-hero p{max-width:600px}
@media(max-width:700px){.visit-page .page-hero{padding:28px 0 24px}.visit-intro h2,.visit-intro>p:not(.visit-note),.visit-intro>.text-link{display:none}.visit-intro .visit-note{font-size:12px;line-height:1.5}.visit-intro .btn{width:100%}.visit-grid{gap:22px}.visit-form h2{font-size:27px}.visit-page .page-hero .kicker{font-size:10px}}
