@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{--ink:#10231f;--cream:#f6f3eb;--paper:#fffdf8;--green:#155e4b;--mint:#b9e2cc;--lime:#d9ef87;--red:#d4af37;--yellow:#f4c95d;--muted:#64726d;--line:rgba(16,35,31,.16);--shadow:0 25px 70px rgba(16,35,31,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 'DM Sans',Arial,sans-serif}header,main,footer{width:min(1180px,calc(100% - 48px));margin:auto}header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}header>a{font:800 22px/1 'Manrope',sans-serif;letter-spacing:-.04em;color:inherit;text-decoration:none}header>a small{display:block;margin-top:6px;font-size:8px;letter-spacing:.2em;color:var(--green)}nav{display:flex;align-items:center;gap:30px}nav a{color:inherit;font-size:13px;font-weight:600;text-decoration:none}header nav a:last-child{padding:11px 18px;border-radius:100px;background:var(--ink);color:white}
.home-hero{min-height:680px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw;padding:74px 0 82px}.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 22px;color:var(--green);font-size:11px;font-weight:700;letter-spacing:.16em}.eyebrow span{width:24px;height:2px;background:currentColor}.hero h1,.card h1,.section-intro h2,.reward-banner h2{margin:0;font:700 clamp(52px,6.2vw,88px)/.96 'Manrope',sans-serif;letter-spacing:-.07em}.hero h1 em,.section-intro h2 em,.reward-banner h2 em{color:var(--green);font-style:normal}.hero-lead{max-width:570px;margin:28px 0;color:#43534d;font-size:19px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.button,button{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:0;border-radius:100px;background:var(--ink);color:white;padding:15px 20px 15px 24px;font:600 13px 'DM Sans',sans-serif;text-decoration:none;cursor:pointer;transition:.2s}.button:hover,button:hover{transform:translateY(-2px);background:var(--green)}.text-link{color:var(--ink);font-size:13px;font-weight:600;text-decoration:none}.microcopy{color:var(--muted);font-size:11px}.hero-visual{position:relative;min-height:510px;display:grid;place-items:center}.hero-visual:before{content:"";position:absolute;width:430px;height:430px;border-radius:50%;background:var(--mint)}.orbit{position:absolute;border:1px solid rgba(16,35,31,.16);border-radius:50%}.orbit-one{width:520px;height:520px}.orbit-two{width:590px;height:590px;border-style:dashed}.phone-card{position:relative;z-index:2;width:min(390px,88%);padding:14px;border-radius:38px;background:rgba(255,255,255,.65);box-shadow:var(--shadow);transform:rotate(-4deg);backdrop-filter:blur(8px)}.demo-card{min-height:410px;padding:28px;border-radius:28px;background:linear-gradient(145deg,#112a24,#1e5d4d);color:#fff}.demo-card-top,.demo-card-foot{display:flex;justify-content:space-between;gap:20px}.demo-brand{font:800 21px/.85 'Manrope';letter-spacing:-.05em}.demo-brand small{display:block;margin-top:8px;font-size:7px;letter-spacing:.2em}.demo-tag{font-size:8px;letter-spacing:.16em}.demo-score{margin:72px 0 50px}.demo-score>span{display:block;font-size:9px;letter-spacing:.15em}.demo-score strong{display:block;font:700 92px/.9 'Manrope';letter-spacing:-.09em;color:var(--lime)}.demo-progress{height:7px;border-radius:10px;background:rgba(255,255,255,.18);overflow:hidden}.demo-progress i{display:block;height:100%;background:var(--lime);transition:width .35s}.demo-card-foot{margin-top:12px;font-size:9px}.demo-stamp{width:calc(100% - 28px);margin:-25px 14px 4px;padding:16px;background:var(--paper);color:var(--ink);box-shadow:0 12px 30px rgba(16,35,31,.13)}.demo-stamp.pulse{animation:pulse .35s}.floating-note{position:absolute;z-index:3;right:-4px;top:70px;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:15px;background:var(--paper);box-shadow:var(--shadow);transform:rotate(3deg)}.floating-note>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--lime)}.floating-note b,.floating-note small{display:block}.floating-note small{font-size:9px;color:var(--muted)}@keyframes pulse{50%{transform:scale(.97)}}
.trust-strip{display:flex;align-items:center;justify-content:center;gap:28px;padding:22px;border-block:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.trust-strip i{width:4px;height:4px;border-radius:50%;background:var(--green)}.steps{padding:120px 0}.section-intro{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-intro .eyebrow{align-self:start}.section-intro h2{font-size:clamp(44px,5.4vw,72px);text-align:right}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.step-card{min-height:320px;padding:28px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.35)}.step-card.featured{background:var(--mint);border-color:transparent;transform:translateY(-14px)}.step-number{font-size:11px;color:var(--muted)}.step-icon{display:grid;place-items:center;width:58px;height:58px;margin:52px 0 38px;border-radius:50%;background:var(--paper);font-size:26px}.step-card h3{margin:0 0 8px;font:700 20px 'Manrope'}.step-card p{margin:0;color:#52615c;font-size:14px}.reward-banner{position:relative;overflow:hidden;margin-bottom:100px;padding:72px;display:grid;grid-template-columns:1.5fr .7fr;align-items:center;border-radius:32px;background:var(--ink);color:white}.reward-banner h2{font-size:clamp(42px,5vw,68px)}.reward-banner h2 em{color:var(--mint)}.reward-banner p:not(.eyebrow){max-width:560px;color:#bfccc7}.eyebrow.light{color:var(--mint)}.light-button{margin-top:15px;background:var(--lime);color:var(--ink)}.reward-seal{justify-self:center;display:grid;place-items:center;width:190px;height:190px;border-radius:50%;background:var(--red);transform:rotate(7deg);box-shadow:0 0 0 10px rgba(239,107,84,.18)}.reward-seal span{font:800 68px/.8 'Manrope';letter-spacing:-.08em}.reward-seal small{font-size:10px;letter-spacing:.2em}.reward-seal b{padding:4px 10px;background:var(--ink);font-size:11px}
.card{max-width:760px;padding:72px 0}.card h1{font-size:clamp(48px,7vw,76px);margin-bottom:32px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.panel{padding:25px;border:1px solid var(--line);border-radius:18px;background:var(--mint)}.panel.yellow{background:var(--yellow)}form{max-width:560px;display:grid;gap:17px}label{display:grid;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}input{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:12px 0;font:16px 'DM Sans';outline:none}.notice{padding:14px 16px;margin:20px 0;border-radius:12px;background:var(--yellow)}.error{background:#f7c7be}.card-code{margin:28px 0;padding:20px;border:2px dashed var(--ink);display:flex;align-items:center;gap:26px;word-break:break-all}.card-code #qrcode{background:#fff;padding:10px}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;margin-top:25px}.table th,.table td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line);font-size:14px}.positive{color:#146a35;font-weight:bold}.negative{color:#a13b2b;font-weight:bold}.staff-actions{display:grid;grid-template-columns:1fr 1fr;gap:24px}.muted{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.13em}.consent{grid-template-columns:18px 1fr;align-items:start;text-transform:none;font-weight:normal;letter-spacing:0}.consent input{width:16px}.legal{max-width:760px;padding:60px 0}footer{padding:28px 0 32px;font-size:11px;color:var(--muted);border-top:1px solid var(--line);display:flex;justify-content:space-between}footer nav{gap:18px}
@media(max-width:850px){header,main,footer{width:min(100% - 32px,1180px)}.home-hero{grid-template-columns:1fr;padding-top:54px}.hero-visual{min-height:570px}.section-intro{display:block}.section-intro h2{text-align:left}.step-grid{grid-template-columns:1fr}.step-card,.step-card.featured{min-height:0;transform:none}.step-icon{margin:32px 0}.reward-banner{grid-template-columns:1fr;gap:50px;padding:48px}.reward-seal{justify-self:start}}
@media(max-width:600px){header{height:76px}header>a{font-size:18px}header nav{gap:9px}header nav a{font-size:11px}header nav a:first-child{display:none}header nav a:last-child{padding:9px 12px}.home-hero{padding:48px 0}.hero h1{font-size:51px}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-visual{min-height:470px}.hero-visual:before{width:320px;height:320px}.orbit-one{width:370px;height:370px}.orbit-two{display:none}.phone-card{width:310px}.demo-card{min-height:350px;padding:23px}.demo-score{margin:55px 0 40px}.demo-score strong{font-size:76px}.floating-note{right:-5px;top:38px}.trust-strip{gap:12px;padding:17px 4px;font-size:8px}.steps{padding:82px 0}.reward-banner{margin-inline:-8px;padding:38px 28px}.reward-seal{width:150px;height:150px}.grid,.staff-actions{grid-template-columns:1fr}.card{padding:45px 0}.card-code{display:block}.table th,.table td{padding:9px 4px}footer{display:block}footer nav{margin-top:12px;flex-direction:row}}
.stamp-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.stamp-grid i{display:grid;place-items:center;aspect-ratio:1;border:2px dashed rgba(255,255,255,.42);border-radius:50%;color:transparent;font-style:normal;font-weight:800;font-size:18px;transition:.25s transform,.25s background}.stamp-grid i.stamped{border-style:solid;border-color:var(--lime);background:var(--lime);color:var(--ink);transform:rotate(-5deg)}.stamp-grid i.reward-stamp{color:rgba(255,255,255,.7);font-size:7px;letter-spacing:.08em}.stamp-grid i.reward-stamp.stamped{color:var(--ink);font-size:16px}.demo-card .stamp-grid{margin-top:-24px}.demo-card-foot{margin-top:15px}
.demo-score.stamp-title{margin:72px 0 42px}.demo-score.stamp-title span{font-size:11px}
.start-qr-page{max-width:800px}.start-qr-card{width:min(520px,100%);margin:42px auto;padding:42px;text-align:center;border-radius:28px;background:var(--paper);box-shadow:var(--shadow)}.start-qr-card .loyalty-brand{margin-bottom:28px}.start-qr-card .loyalty-brand small{display:block;font-size:8px;letter-spacing:.18em}.start-qr-card #start-qrcode{width:max-content;margin:auto;padding:14px;background:white;border-radius:18px}.start-qr-card #start-qrcode img,.start-qr-card #start-qrcode canvas{display:block}.start-qr-card h2{margin:24px 0 2px;font:700 24px 'Manrope'}.start-qr-card p{margin:0;color:var(--muted);font-size:12px}.print-actions{display:flex;align-items:center;justify-content:center;gap:22px}.print-actions a{color:inherit}@media print{header,footer,.start-qr-page>h1,.start-qr-page>.muted,.start-qr-page>p,.print-actions{display:none!important}.start-qr-page{padding:0}.start-qr-card{box-shadow:none;border:1px solid #ddd;margin:0 auto}}
.stamp-grid i img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}.stamp-grid i.stamped:has(img){padding:0;overflow:hidden;background:#f5dc00;border-color:#f5dc00}
.footer-team-login{opacity:.55;font-size:9px;font-weight:500}.footer-team-login:hover{opacity:1}

/* Die Testkarte zeigt dasselbe helle Erscheinungsbild wie die echte Bonuskarte. */
.demo-card{position:relative;overflow:hidden;background-image:linear-gradient(125deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.06) 31%,rgba(143,45,45,.045) 70%),linear-gradient(#f0eee4,#e2ded6);color:#2b2b2d;border:1px solid rgba(43,43,45,.12);box-shadow:0 2px 1px rgba(255,255,255,.9) inset,0 -4px 8px rgba(43,43,45,.08) inset}.demo-card:before{content:"";position:absolute;right:-85px;top:-105px;width:260px;height:260px;border:55px solid rgba(143,45,45,.07);border-radius:50%}.demo-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:7px;background:linear-gradient(90deg,#8f2d2d 0 62%,#d4af37 62%)}.demo-card-top,.demo-score,.demo-card-foot,.demo-card .stamp-grid{position:relative;z-index:1}.demo-brand span{color:#8f2d2d}.demo-score.stamp-title{margin:38px 0 22px}.demo-card .stamp-grid{width:232px;margin:0 auto;grid-template-columns:repeat(3,68px);gap:10px 14px}.demo-card .stamp-grid i{width:68px;height:68px;border:1.5px solid rgba(43,43,45,.3);color:rgba(43,43,45,.42);background:rgba(255,255,255,.16);font-size:9px}.demo-card .stamp-grid i.stamped{padding:3%;overflow:hidden;border:0;background:#fff;box-shadow:0 5px 13px rgba(99,33,24,.16);transform:rotate(-6deg)}.demo-card .stamp-grid i.stamped img{object-fit:contain;background:#fff}.demo-card .stamp-grid i:nth-child(10){grid-column:2;border-color:#d4af37;color:#8f6d0c;box-shadow:0 0 0 5px rgba(212,175,55,.12)}.demo-card .stamp-grid i:nth-child(10).stamped{background:#f0eee4;box-shadow:0 0 0 5px rgba(212,175,55,.17),0 5px 13px rgba(99,33,24,.16)}.demo-card .stamp-grid i:nth-child(10).stamped img{padding:10%;background:#f0eee4}.demo-card-foot{margin-top:14px;color:#555154}.demo-tag{color:#8f2d2d;font-weight:700}
@media(max-width:600px){.demo-card .stamp-grid{width:208px;grid-template-columns:repeat(3,60px);gap:8px 14px}.demo-card .stamp-grid i{width:60px;height:60px}.demo-score.stamp-title{margin:28px 0 18px}}
@font-face{font-family:Manrope;src:url('manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url('manrope-800.ttf') format('truetype');font-weight:800;font-display:swap}@font-face{font-family:'DM Mono';src:url('dm-mono-500.ttf') format('truetype');font-weight:500;font-display:swap}
:root{--ink:#2b2b2d;--cream:#f0eee4;--paper:#f8f6ef;--green:#8f2d2d;--mint:#d0ccc6;--lime:#dedbd5;--red:#8f2d2d;--yellow:#dedbd5;--muted:#69666a;--line:#2b2b2d;--shadow:12px 14px 0 rgba(43,43,45,.1)}
body{background:var(--cream);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.5}.site-header{width:100%;height:88px;padding:17px 3.2vw;border-bottom:1px solid var(--line);background:rgba(240,238,228,.96)}.site-brand{display:block!important;font:inherit!important}.site-brand img{display:block;width:102px;height:54px;object-fit:cover}.site-header nav{gap:29px}.site-header nav a{font:700 11px 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase}.site-header nav a:last-child{padding:12px 15px;border:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink)}main{width:min(1180px,calc(100% - 6.4vw));min-height:calc(100vh - 300px)}.card h1,.hero h1,.section-intro h2,.reward-banner h2{font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:-.075em}.muted,.eyebrow,label{font-family:'DM Mono',monospace;letter-spacing:.08em}.button,button{border-radius:0;background:var(--green);font-family:Manrope,Arial,sans-serif;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;box-shadow:4px 4px 0 rgba(43,43,45,.14)}.button:hover,button:hover{background:#752323;box-shadow:7px 7px 0 rgba(43,43,45,.14);transform:translate(-2px,-2px)}.panel,.notice,.start-qr-card,.save-card-panel{border-radius:0}.panel{background:var(--mint)}input{font-family:Manrope,Arial,sans-serif}.card-code{border-color:var(--ink)}footer{width:100%;margin:70px 0 0;padding:48px 3.2vw 22px;background:var(--ink);color:var(--cream);border:0;display:grid;grid-template-columns:1fr auto;gap:45px}footer .footer-brand{display:grid;gap:12px}footer .footer-brand img{width:150px;height:76px;object-fit:cover;filter:brightness(0) invert(1)}footer .footer-brand span{font:500 11px 'DM Mono',monospace}footer nav{align-items:start;gap:25px}footer nav a{color:var(--cream);font:500 10px 'DM Mono',monospace;text-transform:uppercase}footer>small{grid-column:1/-1;padding-top:15px;border-top:1px solid #8e898c;color:#cbc6c4;font:400 10px 'DM Mono',monospace}
@media(max-width:600px){.site-header{height:64px;padding:10px 5.5vw;position:sticky;top:0;z-index:50}.site-brand img{width:84px;height:44px}.site-header nav{gap:8px}.site-header nav a{font-size:9px}.site-header nav a:first-child{display:none}.site-header nav a:last-child{padding:10px 11px}main{width:89%}footer{grid-template-columns:1fr;padding:38px 5.5vw 20px}footer nav{align-items:flex-start;flex-direction:column;gap:14px}}
