/* Public loyalty homepage only. Uses existing location and theme tokens. */
.homepage{color:var(--text);padding:0 8px}.homepage .home-language{display:flex;justify-content:flex-end;margin-bottom:12px}.homepage .home-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:64px;padding:32px 22px 54px}.homepage .home-eyebrow{text-transform:uppercase;font-size:.75rem;font-weight:700;letter-spacing:.15em;color:var(--gri)}.homepage h1{font-size:clamp(2.2rem,4.7vw,3.65rem);line-height:1.08;letter-spacing:-.05em;margin:20px 0 22px;max-width:650px}.homepage .home-copy{font-size:1rem;line-height:1.7;color:var(--gri);max-width:480px}.homepage .home-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 14px}.homepage .home-actions .btn{min-height:48px;display:inline-flex;align-items:center;gap:12px;border-radius:10px}.homepage .home-small{font-size:.8rem;color:var(--gri);margin:8px 0}.homepage .home-pass{background:var(--alb);border:1px solid var(--gri-linie);border-radius:24px;padding:28px;box-shadow:0 18px 45px #0000000b;transform:rotate(2deg);min-width:0}.homepage .home-pass-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.homepage .home-tag{font-size:.75rem;background:var(--galben);color:var(--pe-accent);padding:5px 10px;border-radius:7px}.homepage .home-stamps{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}.homepage .home-stamp{height:40px;width:40px;display:grid;place-items:center;border-radius:50%;background:var(--gri-fundal);color:var(--gri);font-size:.9rem;flex:none}.homepage .home-stamp-filled{background:var(--galben);color:var(--pe-accent)}.homepage .home-stamp-reward{background:var(--galben);color:var(--pe-accent);font-size:1.2rem}.homepage .home-pass h2{font-size:1.6rem;line-height:1.2;margin:0 0 12px}.homepage .home-example{border-top:1px dashed var(--gri-linie);padding-top:16px;margin:20px 0 0;color:var(--gri);font-size:.75rem}.homepage .home-steps{border-top:1px solid var(--gri-linie);padding:32px 22px 40px;scroll-margin-top:90px}.homepage h2{font-size:1.4rem;letter-spacing:-.025em}.homepage .home-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:26px}.homepage .home-step-number{font-size:.8rem;color:var(--gri);letter-spacing:.15em}.homepage .home-step-grid h3{font-size:1rem;margin:10px 0}.homepage .home-step-grid p{font-size:.9rem;color:var(--gri);margin:0;line-height:1.6}.homepage .home-catalog{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--alb);border:1px solid var(--gri-linie);border-radius:16px;padding:24px}.homepage .home-catalog h2{font-size:1.1rem;margin:0}.homepage .home-catalog .btn{flex:none;border-radius:10px}.homepage .home-staff{text-align:center;font-size:.8rem;margin:24px 0;color:var(--gri)}
@media(max-width:800px){.homepage .home-hero{gap:28px;padding:20px 8px 32px}.homepage .home-pass{padding:24px;transform:none}.homepage .home-pass-head{flex-wrap:wrap}.homepage .home-step-grid{gap:24px}}@media(max-width:600px){.homepage{padding:0}.homepage .home-hero{grid-template-columns:1fr;padding:12px 0 28px;gap:28px}.homepage h1{font-size:2.35rem}.homepage .home-actions{gap:10px}.homepage .home-actions .btn{padding:12px 16px}.homepage .home-pass{border-radius:20px;padding:22px}.homepage .home-steps{padding:24px 0 28px}.homepage .home-step-grid{grid-template-columns:1fr;gap:24px}.homepage .home-catalog{flex-wrap:wrap;padding:20px}.homepage .home-small{font-size:.85rem}}

.homepage .home-location-logo{display:block;max-width:180px;max-height:64px;object-fit:contain;margin-bottom:20px}

/* Restore the location logo and the existing first-visit entrance animation. */
.homepage .home-logo-circle{width:160px;height:160px;margin:0 0 26px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--alb);border:3px solid var(--galben);box-shadow:0 8px 24px #0000000d;overflow:hidden;flex:none;padding:10px;line-height:1.15}
.homepage .home-logo-circle .home-location-logo{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;margin:0;border-radius:50%}
.homepage .home-logo-name{font-size:1.2rem;font-weight:750;text-align:center;overflow-wrap:anywhere;color:var(--text)}
@media(max-width:600px){.homepage .home-logo-circle{width:140px;height:140px;margin:0 auto 24px}.homepage .home-logo-name{font-size:1.1rem}}
