/* ============ Product videos — homepage section + inline page embeds ============ */

/* Homepage section (#videos) */
.videos__head { text-align: center; max-width: 640px; margin: 0 auto 40px; }
.videos__sub { color: var(--muted-1); font-size: 1.05rem; line-height: 1.7; margin-top: 12px; }
.videos__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(420px, 100%), 1fr));
    gap: 28px;
    align-items: start;
}
.vcard {
    background: #fff;
    border: 1px solid var(--border-soft);
    border-radius: var(--r-card);
    padding: 16px 16px 20px;
    box-shadow: 0 10px 30px rgba(15, 30, 45, 0.06);
}
.vcard__title { font-size: 1.15rem; font-weight: 700; color: var(--ink); margin: 16px 4px 6px; }
.vcard__desc { color: var(--muted-1); font-size: 0.98rem; line-height: 1.65; margin: 0 4px; }

/* Shared 16:9 embed frame (homepage cards + feature/solution pages) */
.video-embed {
    position: relative;
    aspect-ratio: 16 / 9;
    border-radius: var(--r-panel, 14px);
    overflow: hidden;
    background: #0d181f;
}
.video-embed iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Transcript disclosure */
.video-tx { margin: 12px 4px 0; border-top: 1px solid var(--border-soft); padding-top: 10px; }
.video-tx summary {
    cursor: pointer;
    font-weight: 600;
    font-size: 0.92rem;
    color: var(--primary);
    list-style-position: inside;
}
.video-tx summary:hover { text-decoration: underline; }
.video-tx p { color: var(--muted-1); font-size: 0.92rem; line-height: 1.75; margin: 10px 0 0; }

/* Inline block on feature / solution pages (inside .page flow) */
.page-video { margin: 28px 0; }
.page-video .video-embed { box-shadow: 0 12px 32px rgba(15, 30, 45, 0.10); }
.page-video figcaption { color: var(--muted-2); font-size: 0.88rem; margin-top: 10px; text-align: center; }
