@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(/fonts/poppins-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:500;font-display:swap;src:url(/fonts/poppins-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(/fonts/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:700;font-display:swap;src:url(/fonts/poppins-latin-700-normal.woff2) format("woff2")}

:root{
  --sage:#6B8175;--sage-light:#A8BDB5;--sage-dark:#4A5C52;--tint:#E8EFED;
  --surface:#F7F7F5;--text:#2D2D2D;--muted:#6B6B6B;--border:#C8D8D2;--white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--text);font-family:Poppins,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--sage-dark)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.narrow{max-width:760px}
.center{text-align:center}
.sage{color:var(--sage)}

.site-header{border-bottom:1px solid #eee;background:#fff}
.site-header .wrap{padding-top:14px;padding-bottom:14px}
.logo{width:170px;height:auto}

.hero{padding:56px 20px 40px;text-align:center}
h1{font-size:clamp(28px,5vw,50px);line-height:1.15;font-weight:700;margin:0 auto 28px;max-width:900px;letter-spacing:-.01em}
.mark{color:var(--sage);background:linear-gradient(transparent 82%,rgba(107,129,117,.35) 82%);padding:0 2px}
h2{font-size:clamp(22px,3.2vw,30px);line-height:1.25;font-weight:600;margin:0 0 20px}
h3{font-size:18px;line-height:1.35;font-weight:600;margin:0 0 10px;color:var(--text)}
.badge{display:inline-block;background:var(--tint);color:var(--sage-dark);border:1px solid var(--border);border-radius:999px;padding:6px 16px;font-weight:600;font-size:14px;margin-bottom:22px}
.intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:center;text-align:left;max-width:1000px;margin:36px auto 0}
.intro-img{border-radius:18px;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.lead{font-size:22px;font-weight:600;margin:0 0 12px}

.features{background:var(--surface);padding:64px 0}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.card{background:#fff;border:1px solid #ecefed;border-radius:14px;padding:24px;border-top:4px solid var(--sage)}
.card p{margin:0;color:#444;font-size:15px}

.pay{padding:64px 20px;max-width:760px}
.price-box{background:var(--tint);border-left:4px solid var(--sage);border-radius:8px;padding:16px 20px;margin:0 0 18px}
.price-box p{margin:0 0 6px}.price-box p:last-child{margin:0}
.payform{margin-top:28px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px}
fieldset{border:0;margin:0 0 22px;padding:0}
legend{font-weight:600;margin-bottom:10px;padding:0}
.toggle{display:flex;flex-wrap:wrap;gap:10px}
.toggle legend{width:100%}
.toggle label{flex:1 1 140px}
.toggle input,.opt input{position:absolute;opacity:0;pointer-events:none}
.toggle span{display:block;text-align:center;padding:12px;border:2px solid var(--border);border-radius:12px;cursor:pointer;font-weight:600;transition:.15s}
.toggle input:checked+span{border-color:var(--sage);background:var(--tint);color:var(--sage-dark)}
.toggle input:focus-visible+span,.opt input:focus-visible+span{outline:3px solid var(--sage-light);outline-offset:2px}
#options{display:grid;gap:8px}
.opt span{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:.15s}
.opt span::before{content:"";flex:0 0 18px;height:18px;border-radius:50%;border:2px solid var(--sage-light);background:#fff}
.opt input:checked+span{border-color:var(--sage);background:var(--tint)}
.opt input:checked+span::before{border:6px solid var(--sage)}
.fields{display:grid;gap:14px;margin-bottom:18px}
#partnerFields{display:grid;gap:14px}
#partnerFields[hidden]{display:none}
.field{display:grid;gap:6px;font-size:14px;font-weight:500}
.field input{font:inherit;font-weight:400;padding:12px 14px;border:1px solid var(--border);border-radius:10px;width:100%}
.field input:focus{outline:3px solid var(--sage-light);border-color:var(--sage)}
.summary{font-weight:600;color:var(--sage-dark);margin:0 0 12px}
.error{background:#fdecea;color:#8a1c1c;border-radius:8px;padding:10px 14px;margin:0 0 12px}
.btn{display:inline-block;font:inherit;font-weight:600;border-radius:12px;padding:15px 26px;text-decoration:none;cursor:pointer;border:0}
.btn-primary{width:100%;background:var(--sage-dark);color:#fff;font-size:17px}
.btn-primary:hover{background:#3d4d44}
.btn-primary:disabled{opacity:.7;cursor:wait}
.btn-ghost{border:2px solid var(--sage);color:var(--sage-dark);background:#fff;margin-top:8px}
.small{font-size:13px;color:var(--muted);margin:12px 0 0}

.next{background:var(--surface);padding:56px 0}
.site-footer{padding:36px 0;text-align:center;font-size:14px;color:var(--muted)}
.site-footer p{margin:4px 0}
.testbar{background:#ffe8a3;color:#5a4400;text-align:center;padding:8px;font-weight:600;font-size:14px}

.danke{padding:72px 20px;text-align:center;max-width:720px}

@media (max-width:860px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .hero{padding:36px 16px 24px}
  .intro{grid-template-columns:1fr;gap:24px;text-align:center}
  .intro-img{max-width:100%;margin:0 auto}
  .grid{grid-template-columns:1fr}
  .features,.pay,.next{padding-top:44px;padding-bottom:44px}
  .payform{padding:18px}
}
