.pricing-video { width: 100%; margin: 26px 0 0; align-self: center; }
.pricing-video-player { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid rgba(255,255,255,.22); border-radius: 18px; background: #040d17; box-shadow: 0 18px 50px rgba(0,0,0,.3); }
.pricing-video-preview { position: absolute; inset: 0; display: block; width: 100%; height: 100%; padding: 0; border: 0; color: #fff; background: #040d17; font: inherit; cursor: pointer; text-align: left; }
.pricing-video-preview img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pricing-video-shade { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(4,13,23,.9), transparent 75%); }
.pricing-video-play { position: absolute; top: 50%; left: 50%; display: grid; width: 68px; height: 68px; padding-left: 4px; place-items: center; transform: translate(-50%, -50%); border-radius: 50%; color: #fff; background: #c90f18; font-size: 25px; box-shadow: 0 8px 25px rgba(0,0,0,.3); transition: background .2s; }
.pricing-video-preview:hover .pricing-video-play { background: #9d0a10; }
.pricing-video-preview:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }
.pricing-video-label { position: absolute; right: 20px; bottom: 18px; left: 20px; color: #fff; font-size: 18px; font-weight: 700; }
.pricing-video-label span { display: block; margin-top: 2px; font-size: 12px; font-weight: 400; }
.pricing-video-player iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.pricing-video figcaption { margin-top: 14px; color: #d7e0e5; font-size: 13px; line-height: 1.6; }
.pricing-video figcaption a { display: inline-block; color: #fff; text-decoration: underline; text-underline-offset: 3px; }

.route-why-grid > * { min-width: 0; }

