/* LuckyBite – Seite für Restaurants v1.4.0 */
.lp{--brand:#E8590C;--brand-d:#c94a07;background:#fbf8f3}
.lp-wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.lp h1,.lp h2,.lp h3{font-family:var(--display);letter-spacing:-.015em}
.lp-top{position:sticky;top:0;z-index:20;background:rgba(251,248,243,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.lp-top-in{display:flex;justify-content:space-between;align-items:center;min-height:62px;gap:12px}
.lp-logo{font:800 22px var(--display);text-decoration:none;letter-spacing:-.03em}
.lp-logo span{color:var(--brand)}
.lp-nav{display:flex;align-items:center;gap:18px}
.lp-nav a{text-decoration:none;font-weight:600;font-size:15px;color:var(--ink-2)}
@media (max-width:640px){.lp-nav a:not(.lp-btn){display:none}}
.lp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:14px;background:var(--brand);color:#fff!important;font:700 16px var(--font);text-decoration:none;border:2px solid var(--brand);transition:transform .15s,box-shadow .15s;box-shadow:0 8px 22px color-mix(in srgb,var(--brand) 30%,transparent)}
.lp-btn:hover{transform:translateY(-1px)}
.lp-btn.sm{min-height:40px;padding:0 16px;font-size:14px;box-shadow:none}
.lp-btn.ghost{background:transparent;color:var(--ink)!important;border-color:var(--ink);box-shadow:none}
.lp-btn.light{background:#fff;color:var(--ink)!important;border-color:#fff;box-shadow:none}
.lp-btn.wa{background:#25d366;border-color:#25d366;box-shadow:none}

.lp-hero{padding:56px 0 40px;overflow:hidden}
.lp-hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
@media (max-width:900px){.lp-hero-in{grid-template-columns:1fr}.lp-hero{padding-top:34px}}
.lp-kicker{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,#fff);padding:6px 12px;border-radius:999px}
.lp-hero h1{font-size:clamp(34px,5vw,54px);line-height:1.05;margin:16px 0 0}
.lp-hero h1 em{font-style:normal;color:var(--brand)}
.lp-lead{font-size:clamp(17px,2vw,19px);color:var(--ink-2);line-height:1.55;margin:18px 0 0;max-width:560px}
.lp-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.lp-checks{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--ink-2);font-size:14px}
.lp-checks li::before{content:"✓";color:#1f8a4c;font-weight:800;margin-right:6px}

.lp-hero-visual{position:relative;height:470px}
@media (max-width:900px){.lp-hero-visual{height:430px;max-width:440px;margin:0 auto;width:100%}}
.mock-card{position:absolute;left:0;top:40px;width:230px;height:326px;background:#fff;border-radius:12px;box-shadow:0 22px 50px rgba(29,25,21,.18);transform:rotate(-8deg);overflow:hidden}
.mc-cover{height:130px;background:linear-gradient(135deg,#c92a2a,#e8590c 60%,#f59f00);position:relative}
.mc-logo{position:absolute;left:14px;bottom:-20px;width:46px;height:46px;border-radius:12px;background:#fff;display:grid;place-items:center;font:800 24px var(--display);color:#c92a2a;box-shadow:0 4px 10px rgba(0,0,0,.15)}
.mc-body{padding:30px 14px 0;display:flex;flex-direction:column;gap:5px}
.mc-body b{font:800 18px var(--display)}
.mc-head{color:var(--brand);font-weight:800;font-size:13px}
.mc-pill{align-self:flex-start;background:#1d1915;color:#fff;font-size:10px;font-weight:700;padding:4px 9px;border-radius:999px;margin-top:4px}
.mc-qr{position:absolute;right:14px;bottom:14px;width:64px;height:64px;display:grid;grid-template-columns:repeat(7,1fr);gap:1px;padding:4px;border:2px solid #1d1915;border-radius:6px;background:#fff}
.mc-qr i{background:#fff}.mc-qr i.on{background:#1d1915}
.mock-phone{position:absolute;right:10px;top:0;width:230px;height:460px;border-radius:38px;background:#1d1915;padding:10px;box-shadow:0 30px 60px rgba(29,25,21,.28)}
.mp-screen{position:relative;height:100%;border-radius:30px;background:#faf7f2;overflow:hidden;display:flex;flex-direction:column;align-items:center}
.mp-cover{width:100%;height:78px;background:linear-gradient(135deg,#c92a2a,#e8590c)}
.mp-title{font:800 16px var(--display);margin-top:10px}
.mp-game{margin:10px 12px 0;background:#fff;border-radius:16px;box-shadow:0 6px 16px rgba(0,0,0,.08);padding:12px;display:flex;flex-direction:column;align-items:center;gap:6px;width:calc(100% - 24px)}
.mp-label{font-size:9px;font-weight:800;letter-spacing:.08em;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,#fff);padding:3px 8px;border-radius:999px}
.mp-game b{font:800 15px var(--display)}
.mp-wheel{width:150px;height:150px;animation:lpspin 9s linear infinite}
@keyframes lpspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.mp-wheel{animation:none}}
.mp-spin{background:var(--brand);color:#fff;font-weight:800;font-size:13px;padding:8px 18px;border-radius:10px}
.mp-bar{position:absolute;left:10px;right:10px;bottom:12px;background:var(--brand);color:#fff;font-weight:800;font-size:13px;text-align:center;padding:11px;border-radius:12px}
.mock-stat{position:absolute;left:40px;bottom:6px;width:210px;background:#fff;border-radius:16px;padding:12px 14px;box-shadow:0 16px 36px rgba(29,25,21,.16)}
.mock-stat span{font-size:12px;color:var(--ink-3);font-weight:600}
.mock-stat b{display:block;font:800 26px var(--display);color:#1f8a4c}
.mock-stat svg{width:100%;height:34px}

.lp-sec{padding:64px 0}
.lp-sec h2{font-size:clamp(28px,3.6vw,38px);margin:0 0 26px}
.lp-sub{color:var(--ink-2);margin:-14px 0 24px;max-width:640px}
.lp-alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lp-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:800px){.lp-grid3{grid-template-columns:1fr}}
.lp-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}
.lp-card h3{margin:10px 0 6px;font-size:20px}
.lp-card p{margin:0;color:var(--ink-2)}
.lp-num{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 8px;border-radius:12px;background:#fde8e6;color:#b4372a;font:800 15px var(--font)}
.lp-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:s}
@media (max-width:900px){.lp-steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.lp-steps{grid-template-columns:1fr}}
.lp-steps li{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}
.lp-steps li span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--brand);color:#fff;font:800 18px var(--display)}
.lp-steps h3{margin:12px 0 6px;font-size:19px}
.lp-steps p{margin:0;color:var(--ink-2);font-size:15px}
.lp-features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:900px){.lp-features{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.lp-features{grid-template-columns:1fr}}
.lp-feat{background:#fbf8f3;border-radius:16px;padding:18px 18px 16px}
.lp-feat b{font-size:17px}
.lp-feat p{margin:6px 0 0;color:var(--ink-2);font-size:15px}
.lp-table-wrap{overflow-x:auto;margin:0 -20px;padding:0 20px}
.lp-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;min-width:560px}
.lp-table th,.lp-table td{padding:14px 18px;text-align:left;border-top:1px solid var(--line);font-size:15px}
.lp-table thead th{border-top:0;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}
.lp-table td:first-child{font-weight:600;color:var(--ink-2)}
.lp-table .hl{background:color-mix(in srgb,var(--brand) 7%,#fff);font-weight:600}
.lp-table thead .hl{color:var(--brand)}
.lp-prices small{display:block;color:var(--ink-3);font-size:12px;font-weight:400}
.lp-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:40px}
.lp-plan{background:#fbf8f3;border:1px solid var(--line);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:12px}
.lp-plan.featured{background:#fff;border:2px solid var(--brand);box-shadow:0 18px 40px color-mix(in srgb,var(--brand) 18%,transparent)}
.lp-plan h3{margin:0;font-size:22px}
.lp-price b{font:800 32px var(--display)}
.lp-price span{color:var(--ink-3);margin-left:4px}
.lp-plan ul{margin:0;padding-left:18px;color:var(--ink-2);flex:1}
.lp-plan li{margin:4px 0}
.lp-h3{font-size:24px;margin:0 0 20px}
.lp-faq{max-width:780px}
.lp-faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px 18px;margin-bottom:10px}
.lp-faq summary{cursor:pointer;font-weight:700;font-size:17px;padding:14px 0;list-style:none}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary::after{content:"+";float:right;color:var(--brand);font-size:22px;line-height:1}
.lp-faq details[open] summary::after{content:"–"}
.lp-faq p{margin:0 0 16px;color:var(--ink-2)}
.lp-contact{background:var(--ink);color:#fff}
.lp-contact h2{color:#fff;margin-bottom:10px}
.lp-contact p{color:#cfc7bf;font-size:18px;margin:0}
.lp-contact-in{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}
@media (max-width:800px){.lp-contact-in{grid-template-columns:1fr}}
.lp-contact-btns{display:flex;flex-direction:column;gap:10px}
.lp-foot{max-width:1120px;padding:22px 20px 30px}

/* Vergleich: auf dem Handy als Karten statt Tabelle */
.lp-compare{min-width:0}
.lp-compare tbody th{text-align:left;font-weight:600;color:var(--ink-2);border-top:1px solid var(--line);padding:14px 18px;font-size:15px}
@media (max-width:700px){
  .lp-compare,.lp-compare tbody,.lp-compare tr,.lp-compare th,.lp-compare td{display:block;width:100%}
  .lp-compare{background:none;border:0;border-radius:0;overflow:visible}
  .lp-compare thead{display:none}
  .lp-compare tr{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden}
  .lp-compare tbody th{border-top:0;padding:14px 16px 6px;font:800 17px var(--display);color:var(--ink)}
  .lp-compare td{border-top:0;padding:8px 16px;display:flex;gap:10px;align-items:flex-start;font-size:15px}
  .lp-compare td::before{content:attr(data-label);flex:0 0 104px;white-space:nowrap;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding-top:2px}
  .lp-compare td.old{color:var(--ink-3);background:none}
  .lp-compare td.old::before{content:"✗ " attr(data-label);color:#b4372a}
  .lp-compare td.hl{background:color-mix(in srgb,var(--brand) 9%,#fff);padding-bottom:12px;font-weight:700;color:var(--ink)}
  .lp-compare td.hl::before{content:"✓ " attr(data-label);color:#1f8a4c}
}

/* Spiele-Vorschau */
.lp-games{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}
@media (max-width:900px){.lp-games{grid-template-columns:1fr;max-width:300px;margin:0 auto}}
.lp-game{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px}
.lp-game figcaption{text-align:center;color:var(--ink-2);font-size:15px;max-width:260px}
.lp-game figcaption b{display:block;font:800 19px var(--display);color:var(--ink);margin-bottom:4px}
.mock-phone.static{position:relative;right:auto;top:auto;width:240px;height:470px}
.mp-game{position:relative}
.mp-pointer{position:absolute;top:58px;left:50%;margin-left:-8px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:15px solid #1d1915;z-index:2}
.mp-scratch{width:100%;max-width:190px;height:auto;margin:6px 0 2px}
.scr-path{stroke-dasharray:520;stroke-dashoffset:520;animation:scratch 5s ease-in-out infinite}
@keyframes scratch{0%,8%{stroke-dashoffset:520}60%,88%{stroke-dashoffset:0}100%{stroke-dashoffset:520}}
.scr-coin{offset-path:path("M14 30 C40 18 70 42 100 26 S150 22 168 34 M12 52 C40 40 80 66 110 50 S152 46 170 58 M14 74 C44 62 84 88 116 72 S154 70 168 80");animation:coin 5s ease-in-out infinite}
@keyframes coin{0%,8%{offset-distance:0%;opacity:1}60%{offset-distance:100%;opacity:1}61%,100%{opacity:0;offset-distance:100%}}
@media (prefers-reduced-motion:reduce){.scr-path{animation:none;stroke-dashoffset:0}.scr-coin{display:none}}
.mp-hint{font-size:11px;color:var(--ink-3)}
.mock-phone.gold .mp-cover{background:linear-gradient(135deg,#d99a00,#f2c94c 55%,#c98a00)}
.mp-game.lucky{background:linear-gradient(160deg,#fff9e6,#fff 60%)}
.mp-game.lucky .mp-label{background:#f9e29a;color:#6b4e00}
.mp-ticket{width:100%;margin:8px 0 4px;border-radius:14px;padding:16px 10px;text-align:center;color:#fff;background:linear-gradient(135deg,#d99a00,#f2c94c 55%,#c98a00);box-shadow:0 8px 20px rgba(201,138,0,.35);animation:glow 2.4s ease-in-out infinite}
.mp-ticket span{display:block;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.9}
.mp-ticket b{display:block;font:900 20px var(--display);margin:4px 0 2px;color:#fff}
.mp-ticket em{font-style:normal;font-size:12px;opacity:.9}
@keyframes glow{50%{transform:scale(1.04)}}
@media (prefers-reduced-motion:reduce){.mp-ticket{animation:none}}
/* v1.5.0 LuckyBite */
.lp-logo img{display:block;height:36px;width:auto}
@media (max-width:560px){.lp-logo img{height:30px}}
/* v1.7.0 Online-Shop */
.lp-shop{margin-top:40px;display:grid;grid-template-columns:1fr 260px;gap:28px;align-items:center;background:#fff;border:2px solid var(--brand);border-radius:22px;padding:28px}
.lp-shop h3{font-size:24px;margin:12px 0}
.lp-shop ul{margin:0;padding-left:20px;color:var(--ink-2);line-height:1.8}
.lp-shop-price{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;background:color-mix(in srgb,var(--brand) 7%,#fff);border-radius:16px;padding:22px}
.lp-shop-price b{font:800 34px var(--display);color:var(--brand)}
.lp-shop-price small{color:var(--ink-3);margin-bottom:10px}
@media (max-width:760px){.lp-shop{grid-template-columns:1fr;padding:22px}}
