.request-panel{background:#fff;color:#142823;border-radius:6px;overflow:hidden;box-shadow:0 14px 46px #112b2112}
.request-head{display:flex;align-items:center;gap:22px;padding:clamp(22px,4vw,44px);background:#1765bf;color:white}
.request-head h2{font-size:clamp(1.6rem,3vw,2.35rem);color:inherit;margin:0 0 .35em;line-height:1.12}
.request-head p{color:#f2f6ff;margin:0;line-height:1.55}
.request-head .form-symbol{width:44px;flex:0 0 44px}
.request-form{padding:clamp(22px,4vw,44px)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.request-form .field{display:grid;gap:7px;font-size:.86rem;font-weight:650;color:#223d33}
.request-form .field-wide{grid-column:1/-1}
.request-form :is(input:not([type=hidden]),select,textarea){display:block;width:100%;min-width:0;box-sizing:border-box;border:1px solid #d8e1db;border-radius:4px;padding:12px 14px;background:#fafcfb;color:#162f25;font:inherit;font-size:1rem;font-weight:400}
.request-form :is(input,select,textarea):focus-visible{outline:2px solid #207b44;outline-offset:2px}
.request-form textarea{resize:vertical}
.request-form .trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.request-form .form-submit,.contact-banner .banner-btn{background:#24783d;color:#fff;border:0;display:inline-flex;gap:18px;align-items:center;justify-content:center;cursor:pointer}
.request-form .form-submit{margin-top:22px;width:100%;min-height:48px;background:#24783d;color:white}
.request-form .form-status{font-size:.95rem;color:#233d30;margin:12px 0 0;line-height:1.5}
.request-form .form-status:empty{display:none}
.request-form .form-draft{display:inline-block;margin-top:8px;color:#1c6638;font-weight:650;text-decoration:underline}
.request-form .form-draft[hidden]{display:none}
.contact-banner{text-align:center;display:grid;place-items:center;min-height:clamp(320px,38vw,530px);padding:46px 20px;background:linear-gradient(90deg,#10251bd9,#162a1ea6),url("banner.webp") center/cover;color:white}
.contact-banner .banner-content{max-width:720px}
.contact-banner .banner-kicker{color:#f3f8f1;font-weight:650;font-size:.96rem}
.contact-banner h2{color:white;line-height:1.08;font-size:clamp(2.3rem,5vw,4.7rem);letter-spacing:-.045em;margin:14px 0 24px}
@media(max-width:600px){.form-grid{grid-template-columns:1fr;gap:14px}.request-head .form-symbol{width:32px;flex-basis:32px}.request-head{gap:12px}.contact-banner{min-height:340px}}
