/* Viva Blocks – [viva_ueber_herzschlag]  Nur Layout; Werte aus core.css. */

/* Zitat: Weinrot mit Gold-Glow, grosses Anführungszeichen, Schreibmaschinen-Effekt (core.js [data-vb-type]) */
.vk-heart__quote { position: relative; margin: 0; padding: 64px 52px 44px; border-radius: calc(var(--vb-radius) * 1.4); background: linear-gradient(150deg, var(--vb-accent) 0%, color-mix(in srgb, var(--vb-accent) 70%, #000) 100%); color: #fff; overflow: hidden; box-shadow: 0 30px 60px -30px rgba(var(--vb-accent-rgb), .7); }
.vk-heart__quote::before { content: ""; position: absolute; right: -90px; top: -90px; width: 300px; height: 300px; border-radius: 50%; background: radial-gradient(circle, rgba(var(--vb-primary-rgb), .42), transparent 70%); pointer-events: none; }
.vk-heart__quote::after { content: ""; position: absolute; left: 52px; right: 52px; bottom: 0; height: 3px; background: linear-gradient(90deg, var(--vb-primary), transparent); }
.vk-heart__mark { position: absolute; left: 34px; top: 18px; font-family: Georgia, 'Times New Roman', serif; font-size: 150px; line-height: .8; color: var(--vb-primary); opacity: .35; pointer-events: none; }
html body .vk-heart__quote blockquote {
	position: relative; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important;
	font-family: var(--vb-font-heading) !important; font-weight: 700 !important; font-style: normal !important;
	font-size: clamp(1.5rem, 2.4vw, 2.15rem) !important; line-height: 1.35 !important;
	text-transform: none !important; letter-spacing: 0 !important; text-align: left !important;
	color: #fff !important; opacity: 1 !important;
}
html body .vk-heart__quote blockquote::before, html body .vk-heart__quote blockquote::after { content: none !important; display: none !important; }
.vk-heart__quote figcaption { position: relative; display: flex; align-items: center; gap: 12px; margin-top: 26px; font-size: .8rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--vb-primary); }
.vk-heart__quote figcaption::before { content: ""; width: 32px; height: 2px; background: var(--vb-primary); }

.vk-heart__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-top: calc(var(--vb-space) * .8); }
.vk-heart__card { padding: 30px 34px 28px; border-top: 0; background: var(--vb-bg-warm); box-shadow: none; }
.vk-heart__card .vk-heart__logo { justify-content: center; width: 100%; box-sizing: border-box; height: 96px; margin-bottom: 22px; padding: 14px 20px; background: #fff; border-radius: calc(var(--vb-radius) * .8); }
.vk-heart__logo { display: flex; align-items: center; height: 64px; margin-bottom: 18px; }
.vk-heart__logo img { max-height: 64px; max-width: 220px; width: auto; height: auto; object-fit: contain; }
.vk-heart__card .vb-h3 { margin-bottom: 12px !important; }
.vk-heart__links { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 18px 0 0 !important; }
@media (max-width: 900px) {
	.vk-heart__cards { grid-template-columns: 1fr; }
	.vk-heart__quote { padding: 56px 26px 36px; }
	.vk-heart__quote::after { left: 26px; right: 26px; }
	.vk-heart__mark { font-size: 120px; left: 18px; top: 14px; }
}
