/* Enquiry quiz (ad landing pages and contact page), modelled on competitor quiz
   funnels: one centred column with headline and quiz. */
.page-landing .container,.quiz-page{width:min(560px,calc(100% - 40px));margin-inline:auto}
/* Full-screen funnel page (Planeco quiz / Enpal Haus-Check pattern). */
.page-funnel{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:#f4f5f7}
.page-funnel main{flex:1}
.funnel-header{display:flex;justify-content:center;padding:26px 20px 0}
.funnel-header .wordmark{font-size:24px}
.page-funnel .lp-hero{padding:28px 0 40px}
.page-funnel .lp-hero>h1,.page-funnel .lp-subline{text-align:center}
.page-funnel .lp-card{background:#ffffff;border:0;border-radius:12px;box-shadow:0 1px 2px rgba(20,24,31,.04),0 12px 32px rgba(20,24,31,.07)}
.funnel-footer{padding:0 20px 28px}
.funnel-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:11px}
.funnel-footer a,.funnel-footer button{color:var(--body);font:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.funnel-footer a:hover,.funnel-footer button:hover{color:var(--ink)}

.lp-hero{padding:36px 0 56px;scroll-margin-top:16px}
.lp-hero h1{font-size:34px;line-height:1.15;letter-spacing:-.8px}
.lp-subline{margin:10px 0 24px;font-size:16px;color:var(--body)}

.lp-card{padding:28px;background:var(--soft);border:1px solid var(--line);border-radius:5px;min-width:0}
.lp-progress{display:flex;align-items:center;gap:14px;margin-bottom:22px;font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--body)}
.lp-progress-label{flex-shrink:0}
.lp-progress-track{position:relative;flex:1;height:3px;border-radius:3px;background:#e2e2e2;overflow:hidden}
.lp-progress-fill{position:absolute;inset:0 auto 0 0;width:10%;background:var(--cta-blue);transition:width 220ms ease}
.lp-step h2{font-size:24px;line-height:1.2;letter-spacing:-.5px;margin-bottom:18px;outline:none}
.lp-options{display:grid;gap:9px}
.lp-options-compact{grid-template-columns:1fr 1fr}
.lp-option{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;width:100%;min-height:56px;padding:13px 14px 13px 16px;border:1px solid #c9c9c9;border-radius:5px;background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:border-color 150ms,background 150ms,box-shadow 150ms}
.lp-option-text{display:flex;flex-direction:column;min-width:0}
.lp-option strong{font-weight:400;font-size:16px;line-height:1.35}
.lp-option-arrow{display:flex;color:var(--cta-blue)}
.lp-option-arrow .icon{width:18px;height:18px}
.lp-options-compact .lp-option{grid-template-columns:1fr}
.lp-options-compact .lp-option-arrow{display:none}
.lp-option:hover{border-color:var(--cta-blue);background:#fafaf9}
.lp-option:focus-visible{outline:2px solid var(--cta-blue);outline-offset:2px}
.lp-option[aria-pressed=true]{border-color:var(--cta-blue);background:#f4f4f2;box-shadow:inset 0 0 0 1px var(--cta-blue)}
.lp-next{width:100%;cursor:pointer}
.lp-back{display:inline-flex;align-items:center;gap:6px;margin-top:16px;padding:6px 0;border:0;background:none;color:var(--body);font:inherit;font-size:13px;cursor:pointer}
.lp-back:hover{color:var(--ink)}
.lp-back .icon{width:16px;height:16px;transform:rotate(180deg)}
.lp-card .form-privacy{margin-top:4px}
.lp-card-trust{display:flex;list-style:none;margin:16px 0 0;padding:14px 0 0;border-top:1px solid var(--line);flex-wrap:wrap;gap:6px 16px}
.lp-card-trust li{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--body)}
.lp-card-trust .icon{width:15px;height:15px;color:var(--ink)}
.lp-quiz[data-final] .lp-card-trust{display:none}

.lp-success{outline:none}
.lp-success h2{font-size:26px;letter-spacing:-.5px;margin-bottom:14px}
.lp-success>p{font-size:15px;line-height:1.6;margin:0}



@media(max-width:700px){
  .funnel-header{padding-top:16px}
  .funnel-header .wordmark{font-size:22px}
  .page-funnel .lp-hero{padding:14px 0 32px}
  .lp-hero h1{font-size:26px;letter-spacing:-.5px}
  .lp-subline{margin:6px 0 16px;font-size:15px}
  .lp-card{padding:18px;margin-inline:-4px}
  .lp-progress{margin-bottom:14px}
  .lp-step h2{font-size:21px;margin-bottom:14px}
  .lp-options{gap:8px}
  .lp-option{min-height:52px;padding:11px 12px 11px 14px}
  .form-field input{font-size:16px}
}
@media(max-width:380px){.lp-options-compact{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.lp-progress-fill,.lp-option{transition:none}}
