/* ===== Блок «Форма заявки» ===== */
.osa-internal .o-capture { background: white; border-radius: 30px; padding: 56px; display: grid; grid-template-columns: 1fr 1fr; gap: 60px; border: 1px solid #c6c6d1; position: relative; overflow: hidden; }
.osa-internal .o-capture::before { content: ''; width: 150px; height: 150px; background: #ffe100; border-radius: 50%; position: absolute; left: -75px; bottom: -75px; }
.osa-internal .o-capture > * { position: relative; z-index: 1; }
.osa-internal .o-capture h2 { font-size: 30px; line-height: 1.2; }
.osa-internal .o-capture > div > p { margin-top: 24px; font-size: 17px; line-height: 1.7; color: var(--osa-muted); }
.osa-internal .o-capture .o-kicker { background: #ffe100; display: inline-flex; border-radius: 4px; padding: 6px 10px; font-size: 10px; margin-bottom: 26px; }
.osa-internal .o-note { margin-top: 30px !important; padding-left: 18px; border-left: 3px solid var(--osa-yellow); font-size: 13px !important; line-height: 1.65; }

.osa-internal .x-start-steps { display: flex; flex-direction: column; gap: 14px; margin-top: 24px; }
.osa-internal .x-start-steps > div { display: flex; gap: 12px; align-items: start; font-size: 14px; line-height: 1.6; color: #3c4153; }
.osa-internal .x-start-steps b { width: 24px; height: 24px; border-radius: 50%; background: var(--osa-ink); color: #fff; display: grid; place-items: center; font: 500 12px/1 'Unbounded', sans-serif; flex-shrink: 0; }

.osa-internal .o-form { display: flex; flex-direction: column; gap: 16px; }
.osa-internal .o-form > label { font-size: 13px; display: block; }
.osa-internal .o-form > label span { color: var(--osa-muted); }
.osa-internal .o-form input, .osa-internal .o-form textarea { background: var(--osa-paper); margin-top: 8px; border: 1px solid transparent; border-radius: 8px; height: 54px; font-size: 17px; color: var(--osa-ink); padding: 14px 16px; width: 100%; font-family: inherit; }
.osa-internal .o-form textarea { min-height: 92px; resize: vertical; height: auto; }
.osa-internal .o-form input:focus, .osa-internal .o-form textarea:focus { border-color: #747785; outline: 2px solid var(--osa-yellow); }

.osa-internal .o-form .o-btn { align-self: start; background: var(--osa-ink); color: white; min-height: 60px; display: inline-flex; align-items: center; justify-content: space-between; gap: 4px; padding: 18px 26px; border-radius: 6px; font: 400 14px/1.55 'Unbounded', sans-serif; cursor: pointer; border: 0; }
.osa-internal .o-form .o-btn span { color: var(--osa-yellow); display: flex; align-items: center; justify-content: center; }
.osa-internal .o-form .o-btn span svg { width: 24px; height: 24px; fill: currentColor; display: block; }
.osa-internal .o-form .o-btn:hover { background: var(--osa-yellow); color: var(--osa-ink); }
.osa-internal .o-form .o-btn:hover span { color: var(--osa-ink); }

.osa-internal .o-policy { font-size: 12px; line-height: 1.55; margin: 0; color: #636775; }
.osa-internal .o-policy a { text-decoration: underline; text-underline-offset: 2px; }
.osa-internal .o-policy a:hover { color: var(--osa-ink); }

.osa-internal .o-status { font-size: 13px; line-height: 1.5; padding: 14px; border: 1px solid #b0b2bc; border-radius: 6px; color: var(--osa-ink); }

.osa-internal .o-direct-contact { font-size: 13px; line-height: 1.6; color: var(--osa-muted); margin: 0; }
.osa-internal .o-direct-contact a { text-decoration: underline; text-underline-offset: 3px; }
.osa-internal .o-direct-contact a:hover { color: var(--osa-ink); }

/* ===== Адаптив ===== */
@media (max-width: 1279px) {
	.osa-internal .o-capture { padding: 40px; gap: 40px; }
}

@media (max-width: 991px) {
	.osa-internal .o-capture { grid-template-columns: 1fr; gap: 32px; }
}

@media (max-width: 575px) {
	.osa-internal .o-capture { padding: 28px 22px; border-radius: 20px; }
	.osa-internal .o-capture h2 { font-size: 24px; }
	.osa-internal .o-capture > div > p { font-size: 16px; }
	.osa-internal .o-form input, .osa-internal .o-form textarea { font-size: 16px; height: 50px; }
	.osa-internal .o-form .o-btn { font-size: 12px; padding: 16px 20px; min-height: 56px; gap: 4px; max-width: 100%; }
}