.ec{--ec-bg:#FFFFFF;--ec-ink:#16231C;--ec-text:#33443A;--ec-muted:#4B5B52;--ec-pine:#1E3A2D;--ec-pine2:#2C5341;
  --ec-mint:#DCE3D7;--ec-line:#CCD4CB;--ec-soft:#F4F5F0;--ec-acc:#E0A526;--ec-acc-h:#EDB63E;--ec-green:#2C6B45;--ec-red:#B3261E;
  --ec-radius:24px;font-family:inherit;color:var(--ec-text);line-height:1.55;scroll-margin-top:110px}
.ec *{box-sizing:border-box}
.ec h3:not(.ec-start-title),.ec h4{color:var(--ec-ink);margin:0;line-height:1.2}
.ec p{margin:0}
.ec ul,.ec ol{margin:0}
.ec [hidden]{display:none!important}
.ec-btn{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;
  font-size:16px;padding:14px 26px;border-radius:999px;transition:background .15s,color .15s,transform .15s;text-decoration:none;text-align:center}
.ec-btn:focus-visible{outline:3px solid var(--ec-acc);outline-offset:3px}
.ec-btn--acc{background:var(--ec-b1-bg,var(--ec-acc));color:var(--ec-b1-fg,var(--ec-ink))}
.ec-btn--acc:hover{background:var(--ec-b1-bg-h,var(--ec-acc-h));color:var(--ec-b1-fg-h,var(--ec-ink))}
.ec-btn--dark{background:var(--ec-b2-bg,var(--ec-pine));color:var(--ec-b2-fg,#fff)}
.ec-btn--dark:hover{background:var(--ec-b2-bg-h,var(--ec-pine2));color:var(--ec-b2-fg-h,#fff)}
.ec-btn--ghost{border:2px solid var(--ec-b3,var(--ec-pine));color:var(--ec-b3,var(--ec-pine));padding:12px 24px}
.ec-btn--ghost:hover{background:var(--ec-b3,var(--ec-pine));color:var(--ec-b3-fg-h,#fff)}

/* ---------- Fragen ---------- */
.ec-quiz{background:var(--ec-bg);border-radius:var(--ec-radius);padding:clamp(22px,4vw,44px);box-shadow:none;max-width:760px;margin:0 auto}
.ec-progress{height:8px;background:var(--ec-mint);border-radius:8px;overflow:hidden}
.ec-progress span{display:block;height:100%;width:0;background:var(--ec-prog,var(--ec-acc));border-radius:8px;transition:width .35s ease}
.ec-nav{display:flex;justify-content:space-between;align-items:center;margin:14px 0 22px;font-size:14px;color:var(--ec-muted)}
.ec-back{all:unset;cursor:pointer;font-weight:700;color:var(--ec-link,var(--ec-pine));padding:4px 2px}
.ec-back:hover{text-decoration:underline}
.ec-back:focus-visible{outline:2px solid var(--ec-acc);outline-offset:3px;border-radius:4px}
.ec .ec-quiz .ec-cat{display:inline-block!important;font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ec-green);background:var(--ec-soft);padding:5px 12px;border-radius:999px}
.ec .ec-quiz .ec-q{display:block!important;visibility:visible!important;opacity:1!important;font-size:clamp(22px,2.6vw,28px)!important;font-weight:700;color:var(--ec-ink)!important;line-height:1.3!important;margin:14px 0 6px!important;outline:none;text-indent:0;text-transform:none;clip:auto;height:auto;max-height:none;overflow:visible}
.ec .ec-quiz .ec-hint{display:block!important;font-size:15px!important;color:var(--ec-muted)!important;min-height:1.5em;margin:0!important}
.ec-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}
.ec-answers button{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;font-weight:800;font-size:17px;padding:16px 10px;border-radius:16px;
  border:2px solid var(--ec-line);color:var(--ec-ink);background:#fff;transition:border-color .15s,background .15s,transform .1s}
.ec-answers button:hover{border-color:var(--ec-a-bd-h,var(--ec-acc))}
.ec-answers button:active{transform:scale(.98)}
.ec-answers button:focus-visible{outline:3px solid var(--ec-acc);outline-offset:3px}
.ec-answers button.is-sel{background:var(--ec-a-sel,var(--ec-pine));border-color:var(--ec-a-sel,var(--ec-pine));color:var(--ec-a-sel-fg,#fff)}
.ec-step{animation:ec-slide .3s ease}
@keyframes ec-slide{from{transform:translateX(14px)}to{transform:none}}
@keyframes ec-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ec-step{animation:none}.ec-progress span{transition:none}}
@media (max-width:520px){.ec-answers{grid-template-columns:1fr}.ec-answers button{padding:14px}}

/* ---------- Auswertung ---------- */
.ec-result{display:grid;gap:34px;animation:ec-in .4s ease both}
.ec-eyebrow{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ec-acc)}
.ec-res-head h3{font-size:clamp(28px,3.4vw,40px);margin:6px 0 10px}
.ec-summary{font-size:19px;max-width:62ch}
.ec-bars{background:#fff;border:1px solid var(--ec-line);border-radius:var(--ec-radius);padding:clamp(18px,3vw,30px);display:grid;gap:14px}
.ec-bar{display:grid;grid-template-columns:minmax(150px,220px) 1fr 74px;gap:14px;align-items:center;font-size:15.5px}
.ec-bar>span:first-child{font-weight:700;color:var(--ec-ink)}
.ec-track{height:12px;background:var(--ec-soft);border-radius:12px;overflow:hidden}
.ec-track span{display:block;height:100%;border-radius:12px;width:0;transition:width .8s cubic-bezier(.2,.7,.2,1)}
.ec-lvl{font-size:13.5px;color:var(--ec-muted);text-align:right}
@media (max-width:600px){.ec-bar{grid-template-columns:1fr 64px}.ec-bar>span:first-child{grid-column:1/-1;margin-bottom:-6px}}
.ec-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--ec-muted);margin-top:4px}
.ec-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:0}

.ec-flag{display:flex;gap:16px;background:#FBEDEC;border:2px solid var(--ec-red);border-radius:var(--ec-radius);padding:clamp(18px,3vw,28px)}
.ec-flag svg{flex:none}
.ec-flag h4{font-size:20px;color:var(--ec-red);margin-bottom:6px}
.ec-flag ul{padding-left:20px;margin-top:10px;display:grid;gap:8px}
.ec-flag a{color:var(--ec-red);font-weight:700}

.ec-h{font-size:clamp(22px,2.4vw,28px);margin-bottom:16px}
.ec-factors{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
.ec-factor{background:#fff;border:1px solid var(--ec-line);border-radius:var(--ec-radius);padding:26px;display:flex;flex-direction:column;gap:10px}
.ec-tag{align-self:flex-start;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:var(--ec-pine);color:#fff;padding:4px 11px;border-radius:999px}
.ec-factor h4{font-size:21px}
.ec-factor p{font-size:15.5px}
.ec-factor ul{padding-left:20px;font-size:15px;display:grid;gap:5px}
.ec-factor a{margin-top:auto;padding-top:6px;font-weight:800;color:var(--ec-link,var(--ec-green));text-decoration:none;transition:color .15s}
.ec-factor a:hover{text-decoration:underline;color:var(--ec-link-h,var(--ec-pine))}

.ec-plan{display:grid;grid-template-columns:1.3fr 1fr;gap:22px;align-items:start}
.ec-plan-box{background:#fff;border:1px solid var(--ec-line);border-radius:var(--ec-radius);padding:clamp(20px,3vw,32px)}
.ec-plan-box .ec-h{margin-bottom:6px}
.ec-plan-box .ec-muted{color:var(--ec-muted);margin:0 0 20px}
.ec-plan ol{list-style:none;padding:0;display:grid;gap:10px;counter-reset:d}
.ec-plan li{counter-increment:d;display:grid;grid-template-columns:62px 1fr;gap:12px;align-items:start;font-size:15.5px;padding-bottom:10px;border-bottom:1px dashed var(--ec-line)}
.ec-plan li:last-child{border-bottom:0;padding-bottom:0}
.ec-plan li::before{content:"Tag " counter(d);font-weight:800;color:var(--ec-pine);background:var(--ec-mint);border-radius:8px;text-align:center;padding:3px 0;font-size:13.5px}
.ec-plan-box .ec-btn{margin-top:20px}
.ec-perk{background:var(--ec-pine);color:#F4F5F0;border-radius:var(--ec-radius);padding:clamp(20px,3vw,30px);display:flex;flex-direction:column;gap:12px}
.ec-perk h4{color:#fff;font-size:21px}
.ec-code{all:unset;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;border:2px dashed var(--ec-acc);border-radius:14px;padding:14px 18px;font-weight:800;font-size:24px;letter-spacing:.08em;color:#fff}
.ec-code small{font-size:12.5px;letter-spacing:.04em;font-weight:700;color:var(--ec-acc)}
.ec-code:focus-visible{outline:3px solid var(--ec-acc);outline-offset:3px}
@media (max-width:820px){.ec-plan{grid-template-columns:1fr}}

.ec-product{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;background:#fff;border:1px solid var(--ec-line);border-radius:var(--ec-radius);padding:clamp(20px,3vw,32px)}
.ec-product img{max-height:200px;width:auto;display:block}
.ec-product h4{font-size:24px;margin:4px 0 10px}
.ec-checks{list-style:none;padding:0;display:grid;gap:7px;font-size:15px}
.ec-checks li{padding-left:28px;position:relative}
.ec-checks li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C6B45' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/contain no-repeat}
.ec-buy{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.ec-price{color:var(--ec-muted)}
.ec-price strong{color:var(--ec-ink);font-size:30px;margin-left:4px}
@media (max-width:820px){.ec-product{grid-template-columns:1fr;text-align:left}.ec-product img{max-height:170px;margin:0 auto}}

.ec-foot{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}
.ec-disclaimer{font-size:13px;color:var(--ec-muted);max-width:80ch}
.ec-start{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(10px,3vw,28px) 0}
.ec .ec-quiz .ec-start>*{margin:0 0 2%!important;text-align:center}
.ec .ec-quiz .ec-start-text{font-size:clamp(17px,1.9vw,20px)!important;color:var(--ec-ink)!important;max-width:46ch;line-height:1.5}
.ec-btn--lg{font-size:18px;padding:17px 34px}
.ec .ec-btn{border-radius:var(--ec-b-radius,999px);transition:background .15s,color .15s,transform .18s ease,box-shadow .18s ease}
.ec .ec-answers button{border-radius:var(--ec-a-radius,16px);border-color:var(--ec-a-bd,var(--ec-line));color:var(--ec-a-fg,var(--ec-ink));transition:border-color .15s,background .15s,color .15s,transform .18s ease,box-shadow .18s ease}
.ec .ec-answers button:hover{border-color:var(--ec-a-bd-h,var(--ec-acc))}
.ec .ec-answers button.is-sel{background:var(--ec-a-sel,var(--ec-pine));border-color:var(--ec-a-sel,var(--ec-pine));color:var(--ec-a-sel-fg,#fff)}
.ec-fx-lift .ec-btn:hover,.ec-fx-lift .ec-answers button:hover{transform:translateY(-3px)}
.ec-fx-grow .ec-btn:hover,.ec-fx-grow .ec-answers button:hover{transform:scale(1.04)}
.ec-fx-shadow .ec-btn:hover,.ec-fx-shadow .ec-answers button:hover{box-shadow:0 10px 24px rgba(22,35,28,.18)}
.ec-upper .ec-btn,.ec-upper .ec-answers button{text-transform:uppercase;letter-spacing:.04em}
@media (prefers-reduced-motion:reduce){.ec .ec-btn:hover,.ec .ec-answers button:hover{transform:none}}
.ec .ec-cbtn{cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-align:center}
.ec .ec-cbtn svg{flex:none}
.ec .ec-cbtn:focus-visible{outline:3px solid var(--ec-acc);outline-offset:3px}
.ec-plan-box .ec-cbtn{margin-top:20px}
.ec .ec-quiz .ec-start>[data-ec-startbtn]{align-self:center!important;float:none!important;width:auto!important;max-width:100%;margin:0 auto 2%!important;text-align:center!important;justify-content:center}
.ec .ec-quiz .ec-start .ec-start-btnwrap{display:flex!important;justify-content:center!important;align-self:stretch!important;width:100%;text-align:center!important}
.ec .ec-quiz .ec-start .ec-start-btnwrap>*{margin:0 auto!important;float:none!important;align-self:center!important}
.ec .ec-quiz .ec-start .ec-start-note{max-width:60ch}
