/* ==========================================================================
   Erklär-Animation [enon_animation] (#2918)
   HTML/CSS-Nachbau der Erklärvideos, ohne Ton.
   Bühne: gross = 1920×1080, klein = 960×540; per JS auf die Breite skaliert.
   ========================================================================== */

/* Responsive Kombination: groß ab 640 px Containerbreite, sonst klein. */
.ea-animation { width: 100%; }
.ea-animation--responsive { container-type: inline-size; }
@container (max-width: 639px) { .ea-animation--responsive .ea-anim--gross { display: none; } }
@container (min-width: 640px) { .ea-animation--responsive .ea-anim--klein { display: none; } }

.ea-anim {
	--ea-red: #c91d16;
	--ea-ink: #141414;
	--ea-check: #4f9a2b;
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	margin: 0;
	border-radius: 12px;
	background: #b9ee3a;
	box-shadow: 0 18px 40px rgba(30, 80, 10, .18);
	color: var(--ea-ink);
	font-family: Arial, "Helvetica Neue", Helvetica, "Liberation Sans", sans-serif;
	font-size: 16px;
	line-height: 1.2;
	letter-spacing: 0;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	user-select: none;
}
.ea-anim *, .ea-anim *::before, .ea-anim *::after { box-sizing: border-box; }
.ea-anim p, .ea-anim ol, .ea-anim ul, .ea-anim li { margin: 0; padding: 0; list-style: none; }
.ea-anim li::before { content: none; }
.ea-anim img { max-width: none; height: auto; border: 0; }
.ea-anim b, .ea-anim strong { font-weight: 700; }

.ea-stage {
	position: absolute; left: 0; top: 0;
	transform-origin: 0 0;
	transform: scale(var(--ea-scale, .5));
}
.ea-anim--gross .ea-stage { width: 1920px; height: 1080px; }
.ea-anim--klein .ea-stage { width: 960px; height: 540px; }

.ea-anim.is-paused *, .ea-anim.is-paused *::before, .ea-anim.is-paused *::after { animation-play-state: paused !important; }
.ea-anim.is-static *, .ea-anim.is-static *::before, .ea-anim.is-static *::after { animation-duration: 1ms !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; }

/* Ohne eigenen Hintergrund: steht auf dem Seitenhintergrund (hintergrund="transparent"). */
.ea-animation--transparent .ea-anim { background: transparent; box-shadow: none; border-radius: 0; }
.ea-animation--transparent .ea-bg,
.ea-animation--transparent .ea-waves { display: none; }
.ea-animation--transparent .ea-ctrl { background: rgba(20, 30, 10, .3); }
/* Ohne Box: Bühne um den oberen Rand (22 von 960) hochziehen, damit die erste
   Zeile mit Nachbarinhalt (z. B. Checkliste) auf einer Höhe steht (#2937). */
.ea-animation--transparent .ea-anim--klein { margin-top: -2.3%; }

/* ---------- Hintergrund ---------- */
.ea-bg { position: absolute; inset: 0; background: linear-gradient(180deg, #d0f22a 0%, #b3ec36 35%, #8ee55c 72%, #7ee26c 100%); }
.ea-waves { position: absolute; left: -10%; bottom: 0; width: 120%; height: 33%; }
.ea-waves path { fill: #fff; }
.ea-wave1 { opacity: .17; animation: ea-drift 14s ease-in-out infinite alternate; }
.ea-wave2 { opacity: .24; animation: ea-drift 18s ease-in-out infinite alternate-reverse; }
@keyframes ea-drift { from { transform: translateX(-3%); } to { transform: translateX(3%); } }

/* ---------- Logo ---------- */
.ea-logo { display: block; width: 100%; height: auto; overflow: visible; }
.ea-corner-logo { position: absolute; left: 46px; top: 32px; width: 296px; z-index: 5; transition: opacity .3s; }
.ea-stage[data-scene="logo"] .ea-corner-logo,
.ea-stage[data-scene="abschluss"] .ea-corner-logo { opacity: 0; }
.ea-logo-anim .bar { transform-box: fill-box; transform-origin: 50% 100%; animation: ea-bar .55s cubic-bezier(.3, 1.4, .5, 1) both; }
.ea-logo-anim .bar1 { animation-delay: .2s; } .ea-logo-anim .bar2 { animation-delay: .28s; }
.ea-logo-anim .bar3 { animation-delay: .36s; } .ea-logo-anim .bar4 { animation-delay: .44s; }
.ea-logo-anim .bar5 { animation-delay: .52s; } .ea-logo-anim .bar6 { animation-delay: .6s; }
.ea-logo-anim .bar7 { animation-delay: .68s; }
.ea-logo-anim .house { transform-box: fill-box; transform-origin: 0 100%; animation: ea-house .6s cubic-bezier(.3, 1.3, .5, 1) .8s both; }
.ea-logo-anim .base { transform-box: fill-box; transform-origin: 0 50%; animation: ea-line .5s ease-out .1s both; }
.ea-logo-anim .word { animation: ea-type 1s steps(18, end) 1.05s both; }
@keyframes ea-bar { from { transform: scaleY(0); } to { transform: scaleY(1); } }
@keyframes ea-house { from { opacity: 0; transform: translateX(-30px) scale(.4); } to { opacity: 1; transform: none; } }
@keyframes ea-type { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0 0 0 0); } }

/* ---------- Szenen + Grundanimationen ---------- */
.ea-scene { position: absolute; inset: 0; display: none; }
.ea-scene.is-active { display: block; }

.ea-up { animation: ea-up .7s cubic-bezier(.2, .8, .2, 1) both; }
.ea-pop { animation: ea-pop .6s cubic-bezier(.3, 1.5, .5, 1) both; }
.ea-fade { animation: ea-fade .6s ease-out both; }
.ea-left { animation: ea-left .8s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes ea-up { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: none; } }
@keyframes ea-pop { from { opacity: 0; transform: scale(.6); } to { opacity: 1; transform: none; } }
@keyframes ea-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes ea-left { from { opacity: 0; transform: translateX(-50px); } to { opacity: 1; transform: none; } }
@keyframes ea-line { from { transform: scaleX(0); } to { transform: scaleX(1); } }

.ea-h { font-weight: 400; text-transform: uppercase; line-height: 1.12; }
.ea-h > span { display: block; }
.ea-center { position: absolute; left: 0; right: 0; text-align: center; }
.ea-underline { position: relative; display: inline-block; }
.ea-underline::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: -.17em; height: .12em; border-radius: 4px;
	background: var(--ea-red); transform-origin: 0 50%;
	animation: ea-line .6s cubic-bezier(.6, 0, .2, 1) 2.6s both;
}
.ea-float { animation: ea-float 5s ease-in-out 1.2s infinite alternate; }
@keyframes ea-float { from { transform: translateY(0) rotate(0); } to { transform: translateY(-2.5%) rotate(.8deg); } }
.ea-float img, .ea-zoom img { display: block; width: 100%; height: auto; border: 12px solid #fff; border-radius: 6px; box-shadow: 0 30px 60px rgba(30, 70, 10, .35); }

.ea-pill {
	display: inline-flex; align-items: center;
	background: #fff; border-radius: 999px;
	font-weight: 700; text-transform: uppercase; white-space: nowrap;
	box-shadow: 0 10px 28px rgba(40, 90, 20, .22);
}
.ea-check {
	flex: none; display: grid; place-items: center;
	border-radius: 50%; background: var(--ea-check); color: #fff;
}
.ea-check svg { width: 55%; height: 55%; }
.ea-pills { position: absolute; left: 0; right: 0; display: flex; justify-content: center; }
.ea-dot { opacity: .7; padding: 0 .4em; }

.ea-btn, .ea-btn:hover, .ea-btn:visited {
	display: flex; align-items: center; justify-content: center;
	color: #fff; text-decoration: none; font-weight: 700; text-transform: uppercase;
	background: linear-gradient(180deg, #dd2c22 0%, #c11b14 55%, #a7130e 100%);
	border-radius: 8px;
	box-shadow: 0 14px 30px rgba(150, 20, 10, .35), inset 0 1px 0 rgba(255, 255, 255, .25);
}
.ea-btn:focus-visible { outline: 4px solid #fff; outline-offset: 4px; }

.ea-num {
	flex: none; display: grid; place-items: center; border-radius: 50%;
	background: var(--ea-ink); color: #fff; font-weight: 700;
	box-shadow: 0 0 0 .14em rgba(255, 255, 255, .38);
}
.ea-timer {
	position: absolute; display: flex; align-items: center;
	border-radius: 10px; background: #3e5826; color: #fff; font-weight: 700; text-transform: uppercase;
	box-shadow: 0 16px 34px rgba(20, 50, 5, .35);
}
.ea-timer svg { width: 1em; height: 1em; margin-right: .38em; }

.ea-stars { position: absolute; display: flex; }
.ea-mini-stars { color: #f6a51a; letter-spacing: 2px; }
.ea-price { display: flex; align-items: baseline; gap: .1em; }
.ea-price b { font-weight: 900; letter-spacing: -.03em; line-height: 1; }
.ea-price > span { font-weight: 700; }

.ea-photo {
	position: absolute; background: #fff; border-radius: 6px;
	box-shadow: 0 30px 70px rgba(20, 60, 5, .35);
	transform: rotate(-1deg);
	animation: ea-photo .9s cubic-bezier(.25, 1.2, .4, 1) .3s both;
}
.ea-photo > div { overflow: hidden; }
.ea-photo img { display: block; width: 100%; height: auto; animation: ea-kenburns 7s ease-out .3s both; transform-origin: 50% 40%; }
@keyframes ea-photo { from { opacity: 0; transform: scale(.8) rotate(-5deg); } to { opacity: 1; transform: rotate(-1deg); } }
@keyframes ea-kenburns { from { transform: scale(1.1); } to { transform: scale(1); } }

.ea-tuev { display: flex; align-items: center; background: #fff; border-radius: 4px; filter: drop-shadow(0 6px 10px rgba(20, 60, 5, .25)); }
.ea-tuev span { line-height: 1.25; color: #2a2a7a; font-weight: 700; }
.ea-tuev small { display: block; font-weight: 400; color: #555; }

.ea-cursor { position: absolute; left: 0; top: 0; z-index: 3; filter: drop-shadow(0 4px 6px rgba(0, 0, 0, .35)); }
.ea-press { animation: ea-press .35s ease-in-out both, ea-pulse 1.6s ease-in-out infinite; }
@keyframes ea-press { 0%, 100% { transform: none; } 50% { transform: scale(.95); filter: brightness(1.15); } }
@keyframes ea-pulse { 0%, 100% { transform: none; } 50% { transform: scale(1.035); } }

/* ---------- Farb-Wischer ---------- */
.ea-wipe { position: absolute; inset: 0; display: flex; pointer-events: none; z-index: 20; }
.ea-wipe i { flex: 1 0 auto; margin-right: -1px; transform: translateY(101%); }
.ea-wipe.is-on i { animation: ea-wipe-v 1s cubic-bezier(.65, 0, .35, 1) both; }
.ea-wipe.is-on.is-h i { animation-name: ea-wipe-h; }
.ea-wipe i:nth-child(1) { background: #44ad40; animation-delay: 0s; }
.ea-wipe i:nth-child(2) { background: #9ac42f; animation-delay: .03s; }
.ea-wipe i:nth-child(3) { background: #cad511; animation-delay: .06s; }
.ea-wipe i:nth-child(4) { background: #ffe505; animation-delay: .09s; }
.ea-wipe i:nth-child(5) { background: #f9b004; animation-delay: .12s; }
.ea-wipe i:nth-child(6) { background: #e4560b; animation-delay: .15s; }
.ea-wipe i:nth-child(7) { background: #cc0c07; animation-delay: .18s; }
@keyframes ea-wipe-v { 0% { transform: translateY(101%); } 42%, 58% { transform: translateY(0); } 100% { transform: translateY(-101%); } }
@keyframes ea-wipe-h { 0% { transform: translateX(800%); } 42%, 58% { transform: translateX(0); } 100% { transform: translateX(-800%); } }

/* ---------- Steuerknopf ---------- */
.ea-ctrl {
	position: absolute; z-index: 30; padding: 0; border: 0; border-radius: 50%; cursor: pointer;
	background: rgba(20, 30, 10, .45); color: #fff; display: grid; place-items: center;
	opacity: .6; transition: opacity .2s, background .2s;
}
.ea-ctrl:hover, .ea-ctrl:focus-visible { opacity: 1; background: rgba(20, 30, 10, .75); outline: none; }
.ea-ctrl:focus-visible { box-shadow: 0 0 0 5px #fff; }
.ea-ctrl svg { width: 48%; height: 48%; }
.ea-ctrl [data-icon] { display: none; }
.ea-anim[data-state="playing"] .ea-ctrl [data-icon="pause"],
.ea-anim[data-state="paused"] .ea-ctrl [data-icon="play"],
.ea-anim[data-state="ended"] .ea-ctrl [data-icon="replay"] { display: block; }
.ea-anim--gross .ea-ctrl { right: 30px; bottom: 30px; width: 80px; height: 80px; }
.ea-anim--klein .ea-ctrl { right: 16px; bottom: 16px; width: 64px; height: 64px; }

/* ==========================================================================
   Variante GROSS (1920×1080)
   ========================================================================== */
.ea-anim--gross .ea-pill { height: 80px; padding: 0 40px 0 26px; font-size: 34px; }
.ea-anim--gross .ea-check { width: 42px; height: 42px; margin-right: 18px; }
.ea-anim--gross .ea-pills { gap: 30px; }
.ea-anim--gross .ea-num { width: 76px; height: 76px; font-size: 38px; }
.ea-anim--gross .ea-mini-stars { font-size: 28px; }

.g-intro-doc { position: absolute; left: 150px; top: 165px; width: 520px; transform: rotate(-4deg); animation: g-intro-doc 1s cubic-bezier(.2, .9, .25, 1.1) .1s both; }
@keyframes g-intro-doc { from { opacity: 0; transform: translateX(-640px) rotate(-16deg); } to { opacity: 1; transform: rotate(-4deg); } }
.g-intro-text { position: absolute; left: 800px; top: 238px; width: 1060px; }
.g-intro-text .ea-h { font-size: 76px; }
.g-intro-text .g-intro-sub { margin-top: 52px; font-size: 56px; }

.g-logo-mark { position: absolute; left: 405px; top: 140px; width: 1110px; }
.g-logo-sub { top: 475px; font-size: 54px; line-height: 1.32; }
.g-logo-pills { top: 690px; }

.g-steps-title { position: absolute; left: 140px; top: 128px; font-size: 70px; }
.g-steps-list { position: absolute; left: 140px; top: 300px; width: 960px; }
.g-steps-list::before { content: ""; position: absolute; left: 35px; top: 40px; width: 6px; height: 440px; background: var(--ea-ink); transform-origin: 50% 0; animation: g-steps-line 2.1s linear 1.1s both; }
@keyframes g-steps-line { from { transform: scaleY(0); } to { transform: scaleY(1); } }
.g-steps-list li { position: relative; display: flex; align-items: flex-start; gap: 46px; height: 220px; }
.g-steps-list b { display: block; margin: 6px 0 10px; font-size: 46px; text-transform: uppercase; }
.g-steps-list div span { display: block; font-size: 34px; color: #2e3a22; }
.g-steps-doc { position: absolute; left: 1105px; top: 58px; width: 780px; transform: rotate(1.5deg); animation: g-steps-doc .9s cubic-bezier(.2, .9, .25, 1) .35s both; }
@keyframes g-steps-doc { from { opacity: 0; transform: translateX(700px) rotate(8deg); } to { opacity: 1; transform: rotate(1.5deg); } }
.ea-zoom { position: relative; animation: ea-zoom 6s ease-in-out 1.3s both; transform-origin: 30% 30%; }
@keyframes ea-zoom { from { transform: scale(1); } to { transform: scale(1.05); } }
.ea-mark { position: absolute; left: 4%; top: 19.2%; width: 92%; height: 14.5%; border: 7px solid #d3241c; border-radius: 18px; box-shadow: 0 0 0 5px rgba(255, 255, 255, .4); animation: ea-pop .5s cubic-bezier(.3, 1.5, .5, 1) 3.6s both; }
.g-steps-timer { left: 1050px; top: 838px; height: 92px; padding: 0 34px; font-size: 44px; }

.g-rating-score { position: absolute; left: 160px; top: 160px; display: flex; align-items: baseline; gap: 18px; }
.g-rating-score b { font-size: 240px; font-weight: 900; letter-spacing: -6px; line-height: 1; }
.g-rating-score > span { font-size: 72px; font-weight: 700; color: #3d4a2a; }
.g-rating-stars { left: 160px; top: 455px; gap: 26px; }
.g-rating-stars .ea-star { width: 56px; height: 56px; }
.ea-stars .ea-star:nth-child(1) { animation-delay: .5s; } .ea-stars .ea-star:nth-child(2) { animation-delay: .65s; }
.ea-stars .ea-star:nth-child(3) { animation-delay: .8s; } .ea-stars .ea-star:nth-child(4) { animation-delay: .95s; }
.ea-stars .ea-star:nth-child(5) { animation-delay: 1.1s; }
.g-rating-count { position: absolute; left: 930px; top: 210px; }
.g-rating-count b { display: block; font-size: 158px; font-weight: 900; letter-spacing: -4px; line-height: 1; }
.g-rating-count strong { display: block; margin-top: 26px; font-size: 46px; text-transform: uppercase; }
.g-rating-count small { display: block; margin-top: 10px; font-size: 32px; color: #2e3a22; }
.g-rating-seal { position: absolute; left: 1598px; width: 152px; filter: drop-shadow(0 8px 14px rgba(20, 60, 5, .3)); }
.g-rating-seal1 { top: 158px; animation-delay: 1s; } .g-rating-seal2 { top: 330px; animation-delay: 1.25s; }
.g-rating-quote {
	position: absolute; left: 160px; top: 640px; width: 1600px; height: 210px;
	background: #fff; border-radius: 12px; padding: 50px 60px 0;
	box-shadow: 0 24px 60px rgba(30, 80, 10, .22);
	animation-delay: 2.6s;
}
.g-rating-quote q { display: block; font-size: 52px; quotes: "„" "“"; }
.g-rating-quote div { margin-top: 22px; font-size: 32px; color: #4e5a44; display: flex; align-items: center; gap: 14px; }

.g-team-title { top: 108px; font-size: 60px; }
.g-team-photo { left: 405px; top: 190px; width: 1110px; padding: 14px; }
.g-team-support { position: absolute; left: 0; right: 0; top: 970px; display: flex; justify-content: center; }
.g-team-support .ea-pill { font-size: 36px; }

.g-price-title { top: 100px; font-size: 70px; }
.g-price-card {
	position: absolute; left: 610px; top: 210px; width: 700px; height: 590px;
	background: #fff; border-radius: 14px; padding: 46px 50px;
	box-shadow: 0 30px 70px rgba(20, 60, 5, .28);
}
.g-price-name { display: block; font-size: 46px; text-transform: uppercase; }
.g-price-hint { display: block; margin-top: 8px; font-size: 32px; color: #4e5a44; }
.g-price-card .ea-price { margin-top: 22px; }
.g-price-card .ea-price b { font-size: 128px; }
.g-price-card .ea-price > span { font-size: 56px; }
.g-price-card ul { margin-top: 20px; font-size: 32px; font-weight: 700; color: #3b7d1c; line-height: 1.42; }
.g-price-card .ea-btn { position: absolute; left: 50px; right: 50px; bottom: 40px; height: 76px; font-size: 34px; }
.g-price-pills { top: 830px; }

.g-end-logo { position: absolute; left: 660px; top: 66px; width: 600px; }
.g-end-title { top: 290px; font-size: 92px; line-height: 1.15; }
.g-end-btn { position: absolute; left: 615px; top: 540px; width: 690px; height: 128px; }
.g-end-btn .ea-btn { width: 100%; height: 100%; font-size: 52px; animation-delay: 3.05s, 3.6s; }
.ea-anim--gross .ea-cursor { width: 64px; animation: g-cursor 1.4s cubic-bezier(.4, 0, .2, 1) 1.8s both; }
@keyframes g-cursor {
	0% { opacity: 0; transform: translate(1180px, 900px); }
	15% { opacity: 1; }
	80%, 100% { opacity: 1; transform: translate(1000px, 630px); }
	88% { transform: translate(1000px, 630px) scale(.85); }
}
.g-end-domain { top: 692px; font-size: 42px; font-weight: 700; }
.g-end-meta { top: 768px; font-size: 34px; }
.g-end-meta .ea-sep { padding: 0 24px; opacity: .6; }
.g-end-seals { position: absolute; left: 0; right: 0; top: 842px; display: flex; justify-content: center; align-items: center; gap: 58px; }
.g-end-seals > img { width: 124px; filter: drop-shadow(0 6px 10px rgba(20, 60, 5, .25)); }
.ea-anim--gross .ea-tuev { gap: 16px; height: 120px; padding: 10px 24px 10px 10px; }
.ea-anim--gross .ea-tuev img { width: 100px; height: 100px; }
.ea-anim--gross .ea-tuev span { font-size: 27px; }
.ea-anim--gross .ea-tuev small { font-size: 22px; }

/* ==========================================================================
   Variante KLEIN (960×540) – weniger Inhalt, größer gesetzt
   ========================================================================== */
.ea-anim--klein .ea-waves { height: 30%; }
.ea-anim--klein .ea-pill { height: 66px; padding: 0 30px 0 18px; font-size: 30px; }
.ea-anim--klein .ea-check { width: 38px; height: 38px; margin-right: 14px; }
.ea-anim--klein .ea-pills { gap: 20px; }
.ea-anim--klein .ea-num { width: 60px; height: 60px; font-size: 32px; }
.ea-anim--klein .ea-mini-stars { font-size: 30px; }
.ea-anim--klein .ea-float img { border-width: 8px; }

.k-intro-doc { position: absolute; left: 48px; top: 30px; width: 280px; transform: rotate(-5deg); animation: k-intro-doc .9s cubic-bezier(.2, .9, .25, 1.1) .1s both; }
@keyframes k-intro-doc { from { opacity: 0; transform: translateX(-380px) rotate(-16deg); } to { opacity: 1; transform: rotate(-5deg); } }
.k-intro-text { position: absolute; left: 372px; top: 22px; width: 570px; }
.k-intro-text .ea-h { font-size: 42px; }
.k-intro-text .ea-h b { font-size: 46px; }
.k-intro-text .k-intro-sub { margin-top: 30px; font-size: 38px; }
.k-intro-text .k-intro-sub b { font-size: 40px; }

.k-steps-title { position: absolute; left: 56px; top: 22px; font-size: 48px; }
.k-steps-list { position: absolute; left: 56px; top: 108px; width: 860px; }
.k-steps-list::before { content: ""; position: absolute; left: 28px; top: 30px; width: 5px; height: 220px; background: var(--ea-ink); transform-origin: 50% 0; animation: g-steps-line 1.6s linear .8s both; }
.k-steps-list li { position: relative; display: flex; align-items: flex-start; gap: 26px; height: 112px; }
.k-steps-list b { display: block; margin: 2px 0 6px; font-size: 38px; text-transform: uppercase; }
.k-steps-list div span { display: block; font-size: 28px; color: #2e3a22; }
.k-steps-timer { right: 104px; top: 440px; height: 70px; padding: 0 26px; font-size: 36px; }

.k-rating-score { position: absolute; left: 56px; top: 8px; display: flex; align-items: baseline; gap: 10px; }
.k-rating-score b { font-size: 170px; font-weight: 900; letter-spacing: -4px; line-height: 1; }
.k-rating-score > span { font-size: 54px; font-weight: 700; color: #3d4a2a; }
.k-rating-stars { left: 60px; top: 214px; gap: 16px; }
.k-rating-stars .ea-star { width: 48px; height: 48px; }
.k-rating-count { position: absolute; left: 470px; top: 26px; }
.k-rating-count b { display: block; font-size: 104px; font-weight: 900; letter-spacing: -3px; line-height: 1; }
.k-rating-count strong { display: block; margin-top: 14px; font-size: 36px; text-transform: uppercase; }
.k-rating-count small { display: block; margin-top: 8px; font-size: 28px; color: #2e3a22; }
.k-rating-seals { position: absolute; left: 0; right: 0; top: 312px; display: flex; justify-content: center; align-items: center; gap: 34px; }
.k-rating-seals > img { width: 104px; filter: drop-shadow(0 6px 10px rgba(20, 60, 5, .25)); }
.ea-anim--klein .ea-tuev { gap: 12px; height: 100px; padding: 8px 18px 8px 8px; }
.ea-anim--klein .ea-tuev img { width: 84px; height: 84px; }
.ea-anim--klein .ea-tuev span { font-size: 26px; }

.k-team-title { top: 22px; font-size: 38px; }
.k-team-photo { left: 210px; top: 88px; width: 540px; padding: 9px; }
.k-team-support { position: absolute; left: 0; right: 0; top: 448px; display: flex; justify-content: center; }

.k-price-title { top: 22px; font-size: 46px; }
.k-price-card {
	position: absolute; left: 215px; top: 92px; width: 530px; height: 330px;
	background: #fff; border-radius: 12px; padding: 30px 38px;
	box-shadow: 0 24px 50px rgba(20, 60, 5, .28);
}
.k-price-name { display: block; font-size: 34px; text-transform: uppercase; }
.k-price-card .ea-price { margin-top: 12px; }
.k-price-card .ea-price b { font-size: 104px; }
.k-price-card .ea-price > span { font-size: 46px; }
.k-price-card ul { margin-top: 18px; font-size: 32px; font-weight: 700; color: #3b7d1c; line-height: 1.38; }
.k-price-pills { top: 440px; }

.k-end-logo { position: absolute; left: 290px; top: 22px; width: 380px; }
.k-end-title { top: 168px; font-size: 54px; line-height: 1.15; }
.k-end-btn { position: absolute; left: 245px; top: 322px; width: 470px; height: 96px; }
.k-end-btn .ea-btn { width: 100%; height: 100%; font-size: 40px; animation-delay: 2.6s, 3.1s; }
.ea-anim--klein .ea-cursor { width: 48px; animation: k-cursor 1.2s cubic-bezier(.4, 0, .2, 1) 1.5s both; }
@keyframes k-cursor {
	0% { opacity: 0; transform: translate(780px, 520px); }
	15% { opacity: 1; }
	80%, 100% { opacity: 1; transform: translate(560px, 378px); }
	88% { transform: translate(560px, 378px) scale(.85); }
}
.k-end-meta { top: 448px; font-size: 32px; }

/* Schlussszene ohne eigenen Button (button="nein", #2937): Inhalt rückt nach oben. */
.g-end.ea-end--ohne-button .g-end-title { top: 330px; }
.g-end.ea-end--ohne-button .g-end-domain { top: 560px; }
.g-end.ea-end--ohne-button .g-end-meta { top: 640px; }
.g-end.ea-end--ohne-button .g-end-seals { top: 740px; }
.k-end.ea-end--ohne-button .k-end-logo { top: 22px; }
.k-end.ea-end--ohne-button .k-end-title { top: 168px; }
.k-end.ea-end--ohne-button .k-end-meta { top: 330px; }

/* „ab“ vor dem Preis (ausweis="energieausweis", #2937). */
.ea-price > small { align-self: baseline; font-weight: 700; color: #4e5a44; }
.g-price-card .ea-price > small { font-size: 44px; margin-right: 8px; }
.k-price-card .ea-price > small { font-size: 36px; margin-right: 6px; }

/* Checkliste neben der Animation (Startseite, #2937): auf Desktop etwas mehr
   Abstand zur Überschrift und zwischen den Punkten. */
@media (min-width: 782px) {
	.wp-block-columns:has(.ea-animation) { margin-top: 36px; }
	.wp-block-columns:has(.ea-animation) .is-style-checkmarks-formatted li { margin-bottom: clamp(14px, 1.6vw, 22px); }
}

/* Mit Box: Szenen der kleinen Variante etwas vom oberen Rand absetzen. */
.ea-animation:not(.ea-animation--transparent) .ea-anim--klein .ea-scene { top: 24px; bottom: -24px; }
