:root{
  --pb-primary:#1f9d4d;
  --pb-primary-dark:#17813f;
  --pb-dark:#1a1a1a;
  --pb-grey:#667085;
  --pb-line:#e6e8eb;
  --pb-bg:#f5f7f6;
  --pb-radius:14px;
}
*{box-sizing:border-box;}
body{
  margin:0;background:var(--pb-bg);color:var(--pb-dark);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  line-height:1.5;-webkit-font-smoothing:antialiased;
}
.pb-wrap{max-width:600px;margin:0 auto;padding:20px 16px 60px;}

/* Kopf */
.pb-head{text-align:center;margin-bottom:18px;}
.pb-head h1{font-size:22px;margin:0 0 4px;}
.pb-head p{margin:0;color:var(--pb-grey);font-size:15px;}
.pb-trust{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:10px;font-size:13px;color:var(--pb-grey);}
.pb-stars{color:#fbbc05;letter-spacing:1px;}

/* Fortschritt */
.pb-progress{height:6px;background:var(--pb-line);border-radius:6px;overflow:hidden;margin:14px 0 22px;}
.pb-progress span{display:block;height:100%;width:0;background:var(--pb-primary);transition:width .3s ease;}

/* Karte */
.pb-card{background:#fff;border:1px solid var(--pb-line);border-radius:var(--pb-radius);padding:24px 20px;box-shadow:0 2px 14px rgba(16,24,40,.04);}

/* Schritte */
.pb-step{display:none;animation:fade .25s ease;}
.pb-step.active{display:block;}
@keyframes fade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.pb-step h2{font-size:19px;margin:0 0 4px;}
.pb-step .pb-sub{color:var(--pb-grey);font-size:14px;margin:0 0 18px;}

/* Felder */
.pb-field{margin-bottom:16px;}
.pb-field label{display:block;font-weight:600;font-size:14px;margin-bottom:6px;}
.pb-field input,.pb-field select,.pb-field textarea{
  width:100%;padding:13px 14px;font-size:16px;border:1.5px solid var(--pb-line);
  border-radius:10px;background:#fff;color:var(--pb-dark);transition:border-color .15s;
}
.pb-field input:focus,.pb-field select:focus,.pb-field textarea:focus{outline:none;border-color:var(--pb-primary);}
.pb-field input[readonly]{background:#eef1f0;color:#555;cursor:not-allowed;}
.pb-row{display:flex;gap:12px;}
.pb-row .pb-field{flex:1;}
.pb-hint{font-size:12.5px;color:var(--pb-grey);margin-top:5px;}

/* Service-Auswahl + Optionskacheln */
.pb-choice{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.pb-tile{
  border:2px solid #cbd5d0;border-radius:12px;padding:20px 14px;text-align:center;
  cursor:pointer;font-weight:600;background:#f4f8f5;transition:all .15s;font-size:16px;
}
.pb-tile:hover{border-color:var(--pb-primary);background:rgba(31,157,77,.06);}
.pb-tile.sel{border-color:var(--pb-primary);background:rgba(31,157,77,.12);box-shadow:0 0 0 3px rgba(31,157,77,.15);}
.pb-tile .ico{font-size:34px;display:block;margin-bottom:10px;}
/* Service-Auswahl: deutlich hervorgehoben + einladend */
.pb-choice .pb-tile{
  border-color:var(--pb-primary);background:#fff;
  box-shadow:0 4px 14px rgba(31,157,77,.14);padding:26px 14px;
}
.pb-choice .pb-tile:hover{background:rgba(31,157,77,.08);transform:translateY(-2px);}
.pb-choice .pb-tile::after{content:"Auswählen →";display:block;margin-top:8px;font-size:13px;font-weight:600;color:var(--pb-primary);}

/* Mengen-Stepper */
.pb-stepper{display:flex;align-items:center;gap:0;max-width:190px;}
.pb-stepper button{
  width:46px;height:48px;border:1.5px solid var(--pb-line);background:#fff;font-size:22px;
  cursor:pointer;color:var(--pb-dark);line-height:1;
}
.pb-stepper button:first-child{border-radius:10px 0 0 10px;}
.pb-stepper button:last-child{border-radius:0 10px 10px 0;}
.pb-stepper input{width:64px;text-align:center;border-radius:0;border-left:none;border-right:none;-moz-appearance:textfield;}
.pb-stepper input::-webkit-outer-spin-button,.pb-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

/* Toggle ja/nein */
.pb-toggle{display:flex;gap:10px;}
.pb-toggle .pb-tile{padding:12px;font-size:15px;}

/* Checkbox-Reihe */
.pb-check{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1.5px solid var(--pb-line);border-radius:10px;cursor:pointer;margin-bottom:10px;}
.pb-check input{width:20px;height:20px;accent-color:var(--pb-primary);}
.pb-check.sel{border-color:var(--pb-primary);background:rgba(31,157,77,.06);}

/* Live-Schätzung */
.pb-estimate{background:rgba(31,157,77,.08);border:1px dashed var(--pb-primary);border-radius:10px;padding:12px 14px;margin-top:4px;text-align:center;font-size:14px;}
.pb-estimate b{font-size:20px;display:block;color:var(--pb-primary-dark);}

/* Buttons */
.pb-nav{display:flex;gap:12px;margin-top:22px;}
.pb-btn{
  flex:1;padding:15px;font-size:16px;font-weight:700;border-radius:10px;border:none;cursor:pointer;
}
.pb-btn-primary{background:var(--pb-primary);color:#fff;}
.pb-btn-primary:hover{background:var(--pb-primary-dark);}
.pb-btn-ghost{background:#fff;border:1.5px solid var(--pb-line);color:var(--pb-dark);flex:0 0 auto;padding:15px 20px;}
.pb-btn:disabled{opacity:.5;cursor:not-allowed;}
.pb-err{color:#d92d20;font-size:13px;margin-top:8px;display:none;}

/* Ergebnis-/Danke-Seite */
.pb-result{text-align:center;}
.pb-check-ico{width:80px;height:80px;border-radius:50%;background:var(--pb-primary);color:#fff;font-size:44px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;}
.pb-price-box{background:#fff;border:2px solid var(--pb-primary);border-radius:14px;padding:22px;margin:20px 0;}
.pb-price-box .lbl{color:var(--pb-grey);font-size:14px;}
.pb-price-box .val{font-size:34px;font-weight:800;color:var(--pb-primary-dark);margin:4px 0;}
.pb-posten{list-style:none;padding:0;margin:16px 0 0;font-size:14px;text-align:left;}
.pb-posten li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--pb-line);}
.pb-cta-row{display:flex;flex-direction:column;gap:10px;margin-top:8px;}
.pb-cta{display:block;padding:15px;border-radius:10px;font-weight:700;text-decoration:none;font-size:16px;}
.pb-cta-wa{background:#25d366;color:#fff;}
.pb-cta-call{background:var(--pb-dark);color:#fff;}
.pb-note{font-size:13px;color:var(--pb-grey);margin-top:14px;}

.pb-foot{text-align:center;font-size:12px;color:var(--pb-grey);margin-top:22px;}
.pb-foot a{color:var(--pb-grey);}
