/* ────────────────────────────────────────────────────────────────── Video Section — blockenberg/video-section ────────────────────────────────────────────────────────────────── */ .bkbg-vs-wrapper { box-sizing: border-box; width: 100%; text-align: var(--bkbg-vs-align, center); } /* ── Content block (badge + headline + subtext) ──────────────────── */ .bkbg-vs-content { margin: 0 auto 36px; max-width: 720px; } .bkbg-vs-badge { display: inline-block; padding: 5px 16px; border-radius: 99px; font-family: var(--bkvs-bg-ff, inherit); font-size: var(--bkvs-bg-fsd, 13px); font-style: var(--bkvs-bg-fst, normal); font-weight: var(--bkvs-bg-fw, 700); letter-spacing: var(--bkvs-bg-lsd, 0.01em); line-height: var(--bkvs-bg-lhd, normal); text-decoration: var(--bkvs-bg-td, none); text-transform: var(--bkvs-bg-tt, none); word-spacing: var(--bkvs-bg-wsd, normal); background: var(--bkbg-vs-badge-bg, #ede9f7); color: var(--bkbg-vs-badge-color, #6c3fb5); margin-bottom: 16px; } .bkbg-vs-headline { font-family: var(--bkvs-hd-ff, inherit); font-size: var(--bkvs-hd-fsd, 42px); font-style: var(--bkvs-hd-fst, normal); font-weight: var(--bkvs-hd-fw, 800); letter-spacing: var(--bkvs-hd-lsd, normal); line-height: var(--bkvs-hd-lhd, 1.15); text-decoration: var(--bkvs-hd-td, none); text-transform: var(--bkvs-hd-tt, none); word-spacing: var(--bkvs-hd-wsd, normal); color: var(--bkbg-vs-headline-color, #111827); margin: 0 0 14px; } .bkbg-vs-content h1.bkbg-vs-headline, .bkbg-vs-content h2.bkbg-vs-headline, .bkbg-vs-content h3.bkbg-vs-headline, .bkbg-vs-content h4.bkbg-vs-headline { font-family: var(--bkvs-hd-ff, inherit); font-size: var(--bkvs-hd-fsd, 42px); font-style: var(--bkvs-hd-fst, normal); font-weight: var(--bkvs-hd-fw, 800); letter-spacing: var(--bkvs-hd-lsd, normal); line-height: var(--bkvs-hd-lhd, 1.15); text-decoration: var(--bkvs-hd-td, none); text-transform: var(--bkvs-hd-tt, none); word-spacing: var(--bkvs-hd-wsd, normal); } .bkbg-vs-subtext { font-family: var(--bkvs-st-ff, inherit); font-size: var(--bkvs-st-fsd, 18px); font-style: var(--bkvs-st-fst, normal); font-weight: var(--bkvs-st-fw, normal); letter-spacing: var(--bkvs-st-lsd, normal); line-height: var(--bkvs-st-lhd, 1.65); text-decoration: var(--bkvs-st-td, none); text-transform: var(--bkvs-st-tt, none); word-spacing: var(--bkvs-st-wsd, normal); color: var(--bkbg-vs-subtext-color, #6b7280); margin: 0; } /* ── Video frame wrapper ─────────────────────────────────────────── */ .bkbg-vs-video-wrap { margin: 0 auto; max-width: var(--bkbg-vs-max-w, 900px); border-radius: var(--bkbg-vs-radius, 16px); overflow: hidden; box-shadow: var(--bkbg-vs-shadow, none); position: relative; background: #000; } .bkbg-vs-video-wrap.bkbg-vs--shadow { box-shadow: 0 24px 80px rgba(0, 0, 0, 0.22); } /* Aspect ratio container */ .bkbg-vs-aspect { position: relative; width: 100%; height: 0; padding-bottom: var(--bkbg-vs-aspect-pad, 56.25%); overflow: hidden; } /* ── Embed iframe ────────────────────────────────────────────────── */ .bkbg-vs-iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: none; display: block; } /* ── Self-hosted video ───────────────────────────────────────────── */ .bkbg-vs-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; } /* ── Poster + play button (lazy load) ───────────────────────────── */ .bkbg-vs-poster-wrap { position: absolute; inset: 0; cursor: pointer; overflow: hidden; } .bkbg-vs-poster { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.4s ease; } .bkbg-vs-poster-wrap:hover .bkbg-vs-poster { transform: scale(1.03); } .bkbg-vs-play-btn { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: var(--bkbg-vs-play-sz, 72px); height: var(--bkbg-vs-play-sz, 72px); background: var(--bkbg-vs-play-bg, #fff); color: var(--bkbg-vs-play-color, #6c3fb5); display: flex; align-items: center; justify-content: center; line-height: 1; font-size: calc(var(--bkbg-vs-play-sz, 72px) * 0.38); cursor: pointer; border: none; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.22); transition: transform 0.2s ease, box-shadow 0.2s ease; pointer-events: none; z-index: 2; } .bkbg-vs-play-btn--circle { border-radius: 50%; } .bkbg-vs-play-btn--square { border-radius: 10px; } .bkbg-vs-play-btn--pill { border-radius: 99px; padding: 0 22px; width: auto; font-size: calc(var(--bkbg-vs-play-sz, 72px) * 0.32); gap: 10px; } .bkbg-vs-poster-wrap:hover .bkbg-vs-play-btn { transform: translate(-50%, -50%) scale(1.1); box-shadow: 0 12px 40px rgba(0, 0, 0, 0.28); } /* Overlay tint */ .bkbg-vs-poster-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.18); transition: opacity 0.2s; pointer-events: none; } .bkbg-vs-poster-wrap:hover .bkbg-vs-poster-overlay { opacity: 0; } /* Video revealed after click */ .bkbg-vs-poster-wrap.is-playing { pointer-events: none; opacity: 0; } /* ── Stats strip ─────────────────────────────────────────────────── */ .bkbg-vs-stats { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 0; margin: 36px auto 0; max-width: var(--bkbg-vs-max-w, 900px); } .bkbg-vs-stat { display: flex; flex-direction: column; align-items: center; padding: 12px 32px; flex: 1 1 0; min-width: 120px; } .bkbg-vs-stat-value { font-family: var(--bkvs-sv-ff, inherit); font-size: var(--bkvs-sv-fsd, 28px); font-style: var(--bkvs-sv-fst, normal); font-weight: var(--bkvs-sv-fw, 800); letter-spacing: var(--bkvs-sv-lsd, normal); line-height: var(--bkvs-sv-lhd, 1.1); text-decoration: var(--bkvs-sv-td, none); text-transform: var(--bkvs-sv-tt, none); word-spacing: var(--bkvs-sv-wsd, normal); color: var(--bkbg-vs-stat-val-color, #111827); margin-bottom: 4px; transition: transform 0.5s ease; } .bkbg-vs-stat-label { font-family: var(--bkvs-sl-ff, inherit); font-size: var(--bkvs-sl-fsd, 13px); font-style: var(--bkvs-sl-fst, normal); font-weight: var(--bkvs-sl-fw, 600); letter-spacing: var(--bkvs-sl-lsd, 0.06em); line-height: var(--bkvs-sl-lhd, normal); text-decoration: var(--bkvs-sl-td, none); text-transform: var(--bkvs-sl-tt, uppercase); word-spacing: var(--bkvs-sl-wsd, normal); color: var(--bkbg-vs-stat-lbl-color, #9ca3af); } .bkbg-vs-stat-divider { width: 1px; height: 36px; background: var(--bkbg-vs-stat-div-color, #e5e7eb); flex-shrink: 0; align-self: center; } /* Animate values in */ .bkbg-vs-stat.bkbg-vs-animate .bkbg-vs-stat-value { animation: bkbgVsCount 0.6s ease both; } @keyframes bkbgVsCount { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } } /* ── Responsive — Typography ──────────────────────────────── */ @media (max-width: 1024px) { .bkbg-vs-badge { font-size: var(--bkvs-bg-fst1, var(--bkvs-bg-fsd, 13px)); letter-spacing: var(--bkvs-bg-lst, var(--bkvs-bg-lsd, 0.01em)); line-height: var(--bkvs-bg-lht, var(--bkvs-bg-lhd, normal)); word-spacing: var(--bkvs-bg-wst, var(--bkvs-bg-wsd, normal)); } .bkbg-vs-content .bkbg-vs-headline { font-size: var(--bkvs-hd-fst1, var(--bkvs-hd-fsd, 42px)); letter-spacing: var(--bkvs-hd-lst, var(--bkvs-hd-lsd, normal)); line-height: var(--bkvs-hd-lht, var(--bkvs-hd-lhd, 1.15)); word-spacing: var(--bkvs-hd-wst, var(--bkvs-hd-wsd, normal)); } .bkbg-vs-subtext { font-size: var(--bkvs-st-fst1, var(--bkvs-st-fsd, 18px)); letter-spacing: var(--bkvs-st-lst, var(--bkvs-st-lsd, normal)); line-height: var(--bkvs-st-lht, var(--bkvs-st-lhd, 1.65)); word-spacing: var(--bkvs-st-wst, var(--bkvs-st-wsd, normal)); } .bkbg-vs-stat-value { font-size: var(--bkvs-sv-fst1, var(--bkvs-sv-fsd, 28px)); letter-spacing: var(--bkvs-sv-lst, var(--bkvs-sv-lsd, normal)); line-height: var(--bkvs-sv-lht, var(--bkvs-sv-lhd, 1.1)); word-spacing: var(--bkvs-sv-wst, var(--bkvs-sv-wsd, normal)); } .bkbg-vs-stat-label { font-size: var(--bkvs-sl-fst1, var(--bkvs-sl-fsd, 13px)); letter-spacing: var(--bkvs-sl-lst, var(--bkvs-sl-lsd, 0.06em)); line-height: var(--bkvs-sl-lht, var(--bkvs-sl-lhd, normal)); word-spacing: var(--bkvs-sl-wst, var(--bkvs-sl-wsd, normal)); } } @media (max-width: 767px) { .bkbg-vs-badge { font-size: var(--bkvs-bg-fsm, var(--bkvs-bg-fst1, var(--bkvs-bg-fsd, 13px))); letter-spacing: var(--bkvs-bg-lsm, var(--bkvs-bg-lst, var(--bkvs-bg-lsd, 0.01em))); line-height: var(--bkvs-bg-lhm, var(--bkvs-bg-lht, var(--bkvs-bg-lhd, normal))); word-spacing: var(--bkvs-bg-wsm, var(--bkvs-bg-wst, var(--bkvs-bg-wsd, normal))); } .bkbg-vs-content .bkbg-vs-headline { font-size: var(--bkvs-hd-fsm, var(--bkvs-hd-fst1, var(--bkvs-hd-fsd, 42px))); letter-spacing: var(--bkvs-hd-lsm, var(--bkvs-hd-lst, var(--bkvs-hd-lsd, normal))); line-height: var(--bkvs-hd-lhm, var(--bkvs-hd-lht, var(--bkvs-hd-lhd, 1.15))); word-spacing: var(--bkvs-hd-wsm, var(--bkvs-hd-wst, var(--bkvs-hd-wsd, normal))); } .bkbg-vs-subtext { font-size: var(--bkvs-st-fsm, var(--bkvs-st-fst1, var(--bkvs-st-fsd, 18px))); letter-spacing: var(--bkvs-st-lsm, var(--bkvs-st-lst, var(--bkvs-st-lsd, normal))); line-height: var(--bkvs-st-lhm, var(--bkvs-st-lht, var(--bkvs-st-lhd, 1.65))); word-spacing: var(--bkvs-st-wsm, var(--bkvs-st-wst, var(--bkvs-st-wsd, normal))); } .bkbg-vs-stat-value { font-size: var(--bkvs-sv-fsm, var(--bkvs-sv-fst1, var(--bkvs-sv-fsd, 28px))); letter-spacing: var(--bkvs-sv-lsm, var(--bkvs-sv-lst, var(--bkvs-sv-lsd, normal))); line-height: var(--bkvs-sv-lhm, var(--bkvs-sv-lht, var(--bkvs-sv-lhd, 1.1))); word-spacing: var(--bkvs-sv-wsm, var(--bkvs-sv-wst, var(--bkvs-sv-wsd, normal))); } .bkbg-vs-stat-label { font-size: var(--bkvs-sl-fsm, var(--bkvs-sl-fst1, var(--bkvs-sl-fsd, 13px))); letter-spacing: var(--bkvs-sl-lsm, var(--bkvs-sl-lst, var(--bkvs-sl-lsd, 0.06em))); line-height: var(--bkvs-sl-lhm, var(--bkvs-sl-lht, var(--bkvs-sl-lhd, normal))); word-spacing: var(--bkvs-sl-wsm, var(--bkvs-sl-wst, var(--bkvs-sl-wsd, normal))); } } /* ── Responsive — Layout ─────────────────────────────────── */ @media (max-width: 640px) { .bkbg-vs-headline { /* layout responsive only - typography handled by breakpoints above */ } .bkbg-vs-stats { flex-direction: column; align-items: center; } .bkbg-vs-stat-divider { width: 40px; height: 1px; } .bkbg-vs-stat { padding: 10px 20px; min-width: 100%; } }