/* ===== Блок «Как устроено решение» (CRM) ===== */
.osa-internal .x-lab { background: white; border: 1px solid #d1d3dd; border-radius: 30px; padding: 48px; }
.osa-internal .x-lab .o-head h2 { max-width: 760px; }
.osa-internal .x-lab .o-head > p { max-width: 340px; font-size: 16px; line-height: 1.65; }
.osa-internal .x-lab h2 em { background: linear-gradient(transparent 62%, #ffe100 62%, #ffe100 94%, transparent 94%); font-style: normal; }

/* ===== Checks — карточки с цифрой в жёлтом кружке ===== */
.osa-internal .x-checks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 32px; border-top: 0; padding-top: 0; }
.osa-internal .x-checks > div { display: flex; gap: 14px; align-items: start; background: #fff; padding: 20px; border-radius: 14px; border: 1px solid #dedfe7; }
.osa-internal .x-checks b { width: 32px; height: 32px; border-radius: 50%; background: var(--osa-yellow); color: var(--osa-ink); display: grid; place-items: center; font: 500 12px/1 'Unbounded', sans-serif; flex-shrink: 0; }
.osa-internal .x-checks p { font-size: 16px; line-height: 1.4; color: var(--osa-muted); }

/* ===== CRM-доска ===== */
.osa-internal .x-crm-board { background: #292c3a; border-radius: 18px; padding: 25px; color: #fff; overflow: hidden; }
.osa-internal .x-board-top { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding-bottom: 23px; border-bottom: 1px solid #51586d; margin-bottom: 25px; }
.osa-internal .x-board-top > span { font-size: 10px; letter-spacing: .08em; display: flex; gap: 9px; align-items: center; }
.osa-internal .x-board-top > span > i { width: 6px; height: 6px; border-radius: 50%; background: #ffe100; }
.osa-internal .x-board-top small { font-size: 11px; color: #a8b0c8; }
.osa-internal .x-board-columns { display: grid; grid-template-columns: repeat(var(--columns), minmax(0, 1fr)); gap: 14px; }
.osa-internal .x-column-label { display: flex; align-items: center; gap: 9px; margin-bottom: 17px; min-height: 50px; border-top: 2px solid #555e79; padding-top: 15px; }
.osa-internal .x-column-label > span { width: 24px; height: 24px; border-radius: 50%; background: rgba(255, 225, 0, .14); color: var(--osa-yellow); display: grid; place-items: center; font: 500 10px/1 'Unbounded', sans-serif; flex-shrink: 0; }
.osa-internal .x-column-label > b { font: 500 16px/1.4 'Unbounded', sans-serif; letter-spacing: -.02em; color: #fff; }
.osa-internal .x-record { background: #f1f0f6; color: #292c3a; padding: 18px 15px; border-radius: 9px; min-height: 210px; display: flex; flex-direction: column; gap: 13px; }
.osa-internal .x-record-avatar { width: 46px; height: 46px; background: #dcdde9; display: grid; place-items: center; border-radius: 50%; }
.osa-internal .x-record-avatar svg { width: 28px; height: 28px; display: block; stroke: currentColor; }
.osa-internal .x-record strong { font: 400 14px/1.5 'Unbounded', sans-serif; letter-spacing: -.01em; color: #292c3a; }
.osa-internal .x-record-line { display: block; width: 100%; height: 5px; border-radius: 4px; background: #d3d5e2; }
.osa-internal .x-record-line.short { width: 60%; }
.osa-internal .x-record-foot { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; line-height: 1.4; margin-top: auto; color: #70788c; padding-top: 8px; }
.osa-internal .x-record-foot > i { width: 8px; height: 8px; border-radius: 50%; background: #292c3a; border: 2px solid #f1f0f6; box-shadow: 0 0 0 1px #d3d5e2; flex-shrink: 0; }
.osa-internal .x-board-column:last-child .x-column-label { border-top-color: #ffe100; }
.osa-internal .x-board-column:last-child .x-record { background: #ffe100; }
.osa-internal .x-board-column:last-child .x-record-avatar { background: #292c3a; color: #ffe100; }
.osa-internal .x-board-column:last-child .x-record-avatar svg { stroke: #ffe100; }
.osa-internal .x-board-column:last-child .x-record-line { background: #c5af1580; }
.osa-internal .x-board-column:last-child .x-record-foot { color: #5b531c; }
.osa-internal .x-board-column:last-child .x-record-foot > i { background: #292c3a; border-color: #ffe100; box-shadow: 0 0 0 1px #c5af15; }

/* ===== Адаптив ===== */
@media (max-width: 1279px) {
	.osa-internal .x-lab { padding: 35px; }
	.osa-internal .x-record { padding: 16px 12px; }
	.osa-internal .x-column-label > span { width: 20px; height: 20px; font-size: 9px; }
	.osa-internal .x-column-label > b { font-size: 14px; }
	.osa-internal .x-record strong { font-size: 14px; }
}

@media (max-width: 991px) {
	.osa-internal .x-lab .o-head > p { max-width: 650px; }
	.osa-internal .x-checks { grid-template-columns: 1fr; gap: 16px; }
	.osa-internal .x-board-columns { grid-template-columns: 1fr 1fr; }
	.osa-internal .x-board-top { align-items: start; }
	.osa-internal .x-board-top > small { max-width: 180px; text-align: right; }
	.osa-internal .x-column-label > span { width: 24px; height: 24px; font-size: 10px; }
	.osa-internal .x-column-label > b { font-size: 16px; }
	.osa-internal .x-column-label { min-height: 0; }
	.osa-internal .x-record { min-height: 185px; padding: 20px; }
	.osa-internal .x-record strong { font-size: 14px; }
	.osa-internal .x-board-column:last-child:nth-child(odd) { grid-column: 1/-1; }
}

@media (max-width: 575px) {
	.osa-internal .x-lab { padding: 27px 21px; border-radius: 22px; }
	.osa-internal .x-lab h2 { font-size: 25px; }
	.osa-internal .x-lab .o-head > p { font-size: 15px; }
	.osa-internal .x-checks { grid-template-columns: 1fr; gap: 14px; }
	.osa-internal .x-checks > div { padding: 18px; border-radius: 12px; }
	.osa-internal .x-checks b { font-size: 12px; }
	.osa-internal .x-checks p { font-size: 15px; }
	.osa-internal .x-crm-board { padding: 20px 16px; }
	.osa-internal .x-board-top { flex-direction: column; padding-bottom: 18px; margin-bottom: 20px; gap: 8px; }
	.osa-internal .x-board-top > span { font-size: 12px; }
	.osa-internal .x-board-top small { font-size: 12px; max-width: none; text-align: left; }
	.osa-internal .x-board-columns { grid-template-columns: 1fr; gap: 24px; }
	.osa-internal .x-record { min-height: 0; padding: 19px; display: grid; grid-template-columns: 46px 1fr; gap: 12px 15px; }
	.osa-internal .x-record-avatar { grid-row: 1/3; }
	.osa-internal .x-record-line { grid-column: 2; }
	.osa-internal .x-record-line.short { display: none; }
	.osa-internal .x-record-foot { grid-column: 2; padding-top: 3px; }
	.osa-internal .x-column-label { padding-top: 12px; margin-bottom: 12px; }
	.osa-internal .x-column-label > b { font-size: 15px; }
	.osa-internal .x-record strong { font-size: 13px; }
}

@media (max-width: 375px) {
	.osa-internal .x-lab { padding-left: 18px; padding-right: 18px; }
	.osa-internal .x-lab h2 { font-size: 23px; }
}