/* Hover Card Block — bkhc- */ .bkhc-wrap { display: inline-flex; } .bkhc-card { position: relative; width: var(--bkhc-width, 300px); height: var(--bkhc-height, 220px); border-radius: var(--bkhc-radius, 12px); overflow: hidden; background-color: var(--bkhc-bg, #1e0a3c); box-shadow: 0 4px 20px rgba(0,0,0,0.18); cursor: pointer; } .bkhc-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform var(--bkhc-duration, 300ms) ease; } .bkhc-card:hover .bkhc-img, .bkhc-card.bkhc-preview:hover .bkhc-img { transform: scale(1.06); } .bkhc-img-placeholder { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background: #2c2c2c; color: #888; } .bkhc-img-placeholder .dashicons { font-size: 48px; width: 48px; height: 48px; } /* ── Overlay ── */ .bkhc-overlay { position: absolute; inset: 0; background: var(--bkhc-overlay, rgba(108,63,181,0.92)); color: var(--bkhc-text, #fff); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 20px; text-align: center; transition: all var(--bkhc-duration, 300ms) ease; } /* ── Heading typography (CSS-var driven) ── */ .bkhc-card .bkhc-heading, .bkhc-card h3.bkhc-heading { font-family: var(--bkhc-h-font-family, inherit); font-size: var(--bkhc-h-font-size-d, var(--bkhc-h-sz, 18px)); font-weight: var(--bkhc-h-font-weight, var(--bkhc-h-fw, 700)); font-style: var(--bkhc-h-font-style, normal); text-decoration: var(--bkhc-h-text-decoration, none); text-transform: var(--bkhc-h-text-transform, none); line-height: var(--bkhc-h-line-height-d, var(--bkhc-h-lh, 1.3)); letter-spacing: var(--bkhc-h-letter-spacing-d, normal); word-spacing: var(--bkhc-h-word-spacing-d, normal); margin: 0; color: inherit; } /* ── Text typography (CSS-var driven) ── */ .bkhc-card .bkhc-text { font-family: var(--bkhc-t-font-family, inherit); font-size: var(--bkhc-t-font-size-d, var(--bkhc-t-sz, 14px)); font-weight: var(--bkhc-t-font-weight, var(--bkhc-t-fw, 400)); font-style: var(--bkhc-t-font-style, normal); text-decoration: var(--bkhc-t-text-decoration, none); text-transform: var(--bkhc-t-text-transform, none); line-height: var(--bkhc-t-line-height-d, var(--bkhc-t-lh, 1.6)); letter-spacing: var(--bkhc-t-letter-spacing-d, normal); word-spacing: var(--bkhc-t-word-spacing-d, normal); margin: 0; opacity: 0.9; color: inherit; } /* ── Responsive: Tablet ── */ @media (max-width: 1024px) { .bkhc-card .bkhc-heading, .bkhc-card h3.bkhc-heading { font-size: var(--bkhc-h-font-size-t, var(--bkhc-h-font-size-d, var(--bkhc-h-sz, 18px))); line-height: var(--bkhc-h-line-height-t, var(--bkhc-h-line-height-d, var(--bkhc-h-lh, 1.3))); letter-spacing: var(--bkhc-h-letter-spacing-t, var(--bkhc-h-letter-spacing-d, normal)); word-spacing: var(--bkhc-h-word-spacing-t, var(--bkhc-h-word-spacing-d, normal)); } .bkhc-card .bkhc-text { font-size: var(--bkhc-t-font-size-t, var(--bkhc-t-font-size-d, var(--bkhc-t-sz, 14px))); line-height: var(--bkhc-t-line-height-t, var(--bkhc-t-line-height-d, var(--bkhc-t-lh, 1.6))); letter-spacing: var(--bkhc-t-letter-spacing-t, var(--bkhc-t-letter-spacing-d, normal)); word-spacing: var(--bkhc-t-word-spacing-t, var(--bkhc-t-word-spacing-d, normal)); } } /* ── Responsive: Mobile ── */ @media (max-width: 767px) { .bkhc-card .bkhc-heading, .bkhc-card h3.bkhc-heading { font-size: var(--bkhc-h-font-size-m, var(--bkhc-h-font-size-t, var(--bkhc-h-font-size-d, var(--bkhc-h-sz, 18px)))); line-height: var(--bkhc-h-line-height-m, var(--bkhc-h-line-height-t, var(--bkhc-h-line-height-d, var(--bkhc-h-lh, 1.3)))); letter-spacing: var(--bkhc-h-letter-spacing-m, var(--bkhc-h-letter-spacing-t, var(--bkhc-h-letter-spacing-d, normal))); word-spacing: var(--bkhc-h-word-spacing-m, var(--bkhc-h-word-spacing-t, var(--bkhc-h-word-spacing-d, normal))); } .bkhc-card .bkhc-text { font-size: var(--bkhc-t-font-size-m, var(--bkhc-t-font-size-t, var(--bkhc-t-font-size-d, var(--bkhc-t-sz, 14px)))); line-height: var(--bkhc-t-line-height-m, var(--bkhc-t-line-height-t, var(--bkhc-t-line-height-d, var(--bkhc-t-lh, 1.6)))); letter-spacing: var(--bkhc-t-letter-spacing-m, var(--bkhc-t-letter-spacing-t, var(--bkhc-t-letter-spacing-d, normal))); word-spacing: var(--bkhc-t-word-spacing-m, var(--bkhc-t-word-spacing-t, var(--bkhc-t-word-spacing-d, normal))); } } .bkhc-btn { display: inline-block; padding: 8px 20px; border: 2px solid var(--bkhc-text, #fff); border-radius: 40px; color: var(--bkhc-text, #fff); font-size: 13px; font-weight: 600; text-decoration: none; transition: background 0.2s, color 0.2s; margin-top: 4px; } .bkhc-btn:hover { background: var(--bkhc-text, #fff); color: #333; } /* ── Reveal directions ── */ /* Fade */ .bkhc-reveal-fade .bkhc-overlay { opacity: 0; } .bkhc-reveal-fade:hover .bkhc-overlay { opacity: 1; } /* Bottom */ .bkhc-reveal-bottom .bkhc-overlay { transform: translateY(100%); } .bkhc-reveal-bottom:hover .bkhc-overlay { transform: translateY(0); } /* Top */ .bkhc-reveal-top .bkhc-overlay { transform: translateY(-100%); } .bkhc-reveal-top:hover .bkhc-overlay { transform: translateY(0); } /* Left */ .bkhc-reveal-left .bkhc-overlay { transform: translateX(-100%); } .bkhc-reveal-left:hover .bkhc-overlay { transform: translateX(0); } /* Right */ .bkhc-reveal-right .bkhc-overlay { transform: translateX(100%); } .bkhc-reveal-right:hover .bkhc-overlay { transform: translateX(0); } /* Editor preview always shows overlay slightly */ .bkhc-preview .bkhc-overlay { opacity: 0.7 !important; transform: none !important; }