/* «Реальные заказы» на главной (inc/video-cases.php): видеоотзывы клиентов. */
.dvb-inner.dvb-home-vcases { display: flow-root; background: transparent; }
.dvb-home-vcases .vcases { margin-top: 0; margin-bottom: 0; padding-top: 56px; padding-bottom: 56px; }
.dvb-inner .vcases__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 24px; }
.dvb-inner .vcases__head h2 { margin: 4px 0 8px; font-size: clamp(28px, 3vw, 40px); }
.dvb-inner .vcases__head .section-subtitle { max-width: 620px; margin: 0; }
.dvb-inner .vcases__links { display: flex; flex-wrap: wrap; gap: 8px; flex: 0 0 auto; }
.dvb-inner .vcases__list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.dvb-inner .vcase { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.dvb-inner .vcase__video { position: relative; display: block; aspect-ratio: 558 / 700; overflow: hidden; background: #10243f; }
.dvb-inner .vcase__video img { width: 100%; height: 100%; object-fit: cover; object-position: center 30%; transition: transform .4s; }
.dvb-inner .vcase__video:hover img { transform: scale(1.04); }
.dvb-inner .vcase__video::after { content: ""; position: absolute; inset: 55% 0 0; background: linear-gradient(0deg, rgb(16 36 63 / 55%), transparent); pointer-events: none; }
.dvb-inner .vcase__play { position: absolute; left: 50%; top: 50%; z-index: 2; display: grid; place-items: center; width: 64px; height: 64px; transform: translate(-50%, -50%); isolation: isolate; }
.dvb-inner .vcase__play::before { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: 12px; background: #1da3cb; transform: skewX(-12deg); box-shadow: 0 10px 24px rgb(29 163 203 / 45%); transition: background .2s; }
.dvb-inner .vcase__video:hover .vcase__play::before { background: #d57959; }
.dvb-inner .vcase__play svg { width: 28px; height: 28px; fill: #fff; margin-left: 3px; }
.dvb-inner .vcase__body { display: grid; gap: 4px; padding: 14px 16px 16px; }
.dvb-inner .vcase__title { margin: 0; font-size: 17px; font-weight: 800; }
.dvb-inner .vcase__sub { margin: 0; font-size: 13px; color: var(--muted); }
.dvb-inner .vcase__price { margin: 4px 0 10px; font-size: 20px; font-weight: 800; color: #1689ab; font-variant-numeric: tabular-nums; }
.dvb-inner .vcases__dialog { width: min(420px, 92vw); padding: 0; border: 0; border-radius: 16px; background: #000; overflow: visible; }
.dvb-inner .vcases__dialog::backdrop { background: rgb(8 18 32 / 80%); }
.dvb-inner .vcases__frame { aspect-ratio: 9 / 16; max-height: 86vh; }
.dvb-inner .vcases__frame iframe { width: 100%; height: 100%; border: 0; border-radius: 16px; }
.dvb-inner .vcases__close { position: absolute; right: -14px; top: -14px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #fff; color: #10243f; font-size: 22px; line-height: 1; cursor: pointer; box-shadow: 0 4px 12px rgb(0 0 0 / 30%); }
.dvb-inner .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 1023px) {
	.dvb-inner .vcases__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.dvb-inner .vcases__head { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 639px) {
	.dvb-inner .vcases__list { grid-auto-flow: column; grid-auto-columns: 78%; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 6px; }
	.dvb-inner .vcase { scroll-snap-align: start; }
	.dvb-inner .vcases__close { right: 6px; top: 6px; }
}
@media (prefers-reduced-motion: reduce) {
	.dvb-inner .vcase__video img, .dvb-inner .vcase__play::before { transition: none; }
}
