/* Zeit — shared site styles for zeitgeist-marketplace.de (load after /css/zeit.css).
   Header markup: /includes/header-zeit.html, footer + menu + sticky store bar: /includes/footer-zeit.html */
html{scroll-behavior:smooth;background:var(--bg-dark)}
body{overflow-x:hidden;background:var(--bg-dark);color:var(--text-on-dark)}

/* ── Glass-Header ── */
.header{position:fixed;top:-2px;left:0;right:0;z-index:100;height:calc(78px + env(safe-area-inset-top));display:grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);column-gap:12px;align-items:center;padding:calc(2px + env(safe-area-inset-top)) 36px 0;background:rgba(0,0,0,.55);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,255,255,.06);color:var(--text-on-dark)}
.header-logo img{height:44px;width:auto}
.header-stats{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:500;color:rgba(255,255,255,.5);white-space:nowrap}
.header-stats-divider{width:1px;height:14px;background:rgba(255,255,255,.15)}
.header-right{display:flex;justify-content:flex-end;align-items:center;gap:6px}
.nav-btn{display:inline-flex;align-items:center;padding:10px 20px;background:var(--bg-light);color:var(--text-on-light);font-family:var(--font-sans);font-size:14px;font-weight:600;border-radius:0;white-space:nowrap;transition:opacity .15s}
.nav-btn:hover{opacity:.8}
.menu-btn{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:none;border:none;cursor:pointer;padding:11px;margin-right:-8px}
.menu-btn span{display:block;width:22px;height:2px;background:#fff;border-radius:0}
@media(max-width:900px){.nav-btn{display:none}.menu-btn{display:flex}.header .lang-switch{display:none}}
@media(max-width:480px){.header{padding:0 16px}.header-stats{font-size:12px;gap:4px}}
/* Geist + eckig für Nav und Buttons (überschreibt auch die von i18n.js injizierten Switch-Styles) */
.header,.menu-overlay,.btn,button{font-family:var(--font-sans)}
.btn--primary{border-radius:0}
html .lang-switch{border-radius:0}
html .lang-switch button{border-radius:0;font-family:var(--font-sans)}

/* ── Mobile-Menü (main.js: #menuBtn / #menuOverlay) ── */
.menu-overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.7);backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}
.menu-overlay.open{opacity:1;pointer-events:all}
.menu-logo{position:absolute;top:24px;left:50%;transform:translateX(-50%);height:56px;width:auto;pointer-events:none}
.menu-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#fff;font-size:22px;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity .15s}
.menu-close:hover{opacity:1}
.menu-nav{display:flex;flex-direction:column;align-items:center;gap:20px}
.menu-nav a{font-size:38px;font-weight:700;color:#fff;letter-spacing:-.02em;transition:opacity .15s}
.menu-nav a:hover{opacity:.5}
.menu-social{position:absolute;bottom:40px;display:flex;gap:10px;align-items:center}
.social-btn{width:44px;height:44px;border-radius:0;background:#18181a;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.social-btn img{width:22px;height:22px;object-fit:contain}
.menu-store-btn{display:inline-flex;align-items:center}
.menu-store-btn img{height:36px;width:auto}
.menu-overlay .menu-logo{opacity:0;transform:translateX(-50%) translateY(-8px);transition:opacity .3s .05s,transform .3s .05s}
.menu-overlay.open .menu-logo{opacity:1;transform:translateX(-50%) translateY(0)}
.menu-overlay .menu-nav a{opacity:0;transform:translateY(14px)}
.menu-overlay.open .menu-nav a{opacity:1;transform:translateY(0);transition:opacity .3s .1s,transform .3s .1s}
.menu-overlay .menu-social{opacity:0;transition:opacity .3s}
.menu-overlay.open .menu-social{opacity:1;transition-delay:.3s}

/* ── Shop-CTA ── */
.cta-action{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.cta-action .note{color:var(--text-on-dark-secondary);max-width:320px}
.cta{background:var(--bg-dark-subtle);border:1px solid var(--border-on-dark);color:var(--text-on-dark);padding:var(--space-56);display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-40);flex-wrap:wrap}
.cta .copy{display:flex;flex-direction:column;gap:12px;max-width:640px}
.cta .lead{color:var(--text-on-dark-secondary)}
@media (max-width:760px){.cta{padding:32px 24px;align-items:flex-start}}

/* ── Footer ── */
.footer{border-top:1px solid var(--border-on-dark)}
@media (max-width:760px){.footer{padding-bottom:96px}}
.footer .brand .logo img{height:48px;width:auto}
.footer .social{display:flex;gap:8px}
.footer .social a{width:40px;height:40px;border:1px solid var(--border-on-dark);display:inline-flex;align-items:center;justify-content:center}
.footer .social a:hover{background:var(--bg-dark-hover)}
.footer .social img{width:20px;height:20px;object-fit:contain}

/* ── Sticky Store-Buttons ── */
@keyframes homeStickyIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.home-sticky{position:fixed;bottom:20px;right:20px;z-index:500;display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(0,0,0,.6);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.1);border-radius:16px;opacity:0;animation:homeStickyIn .4s ease .7s forwards}
.home-sticky a{display:inline-flex}
.home-sticky img{height:40px;width:auto}
@media (max-width:760px){.home-sticky{right:var(--layout-margin);bottom:12px}}
body.menu-open .home-sticky{display:none}

/* Download-Overlay aus main.js */
.dl-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}
.dl-overlay.open{opacity:1;pointer-events:all}
.dl-overlay-close{position:absolute;top:24px;right:24px;width:48px;height:48px;border:1px solid var(--border-on-dark);background:var(--bg-dark);color:var(--text-on-dark);font-size:18px;cursor:pointer}
.dl-overlay-close:hover{background:var(--bg-dark-hover)}
.dl-overlay-logo{display:none}
.dl-overlay-inner{background:var(--bg-light);color:var(--text-on-light);padding:40px;max-width:420px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.dl-overlay-inner h2{font-weight:700;font-size:32px;line-height:40px;letter-spacing:-.02em;text-transform:lowercase}
.dl-overlay-inner p{font-size:15px;line-height:23px;color:var(--text-on-light-secondary)}
.dl-overlay-qr{width:200px;height:200px;margin-top:16px;image-rendering:pixelated}

/* Cookie banner (/cookie-consent.js brings its own Inter Tight styles) */
[id^="zg-"],[id^="zg-"] *{font-family:var(--font-sans)!important}

/* ── Rechtstexte & einfache Seiten ── */
.legal{padding:calc(78px + var(--space-80)) var(--layout-margin) var(--space-96);color:var(--text-on-dark-secondary)}
.legal > *{max-width:var(--layout-reading)}
.legal h1{color:var(--text-on-dark);font-weight:700;font-size:clamp(36px,5vw,64px);line-height:1.05;letter-spacing:-.03em;text-transform:lowercase;margin-top:var(--space-20)}
.legal .meta{font-family:var(--font-mono);font-size:12px;line-height:18px;letter-spacing:.06em;text-transform:uppercase;margin:var(--space-16) 0 var(--space-56)}
.legal h2{color:var(--text-on-dark);font-weight:600;font-size:20px;line-height:26px;letter-spacing:-.01em;margin:var(--space-48) 0 var(--space-12);padding-top:var(--space-24);border-top:1px solid var(--border-on-dark)}
.legal h2.part{font-size:28px;line-height:34px;letter-spacing:-.02em;text-transform:lowercase;margin-top:var(--space-80);border-top-color:var(--grey-500)}
.legal h3{color:var(--text-on-dark);font-weight:600;font-size:16px;line-height:24px;margin:var(--space-24) 0 var(--space-8)}
.legal p,.legal li{font-size:16px;line-height:26px}
.legal p + p,.legal ul + p,.legal p + ul{margin-top:var(--space-12)}
.legal ul{padding-left:20px}
.legal li + li{margin-top:4px}
.legal strong{color:var(--text-on-dark);font-weight:600}
.legal a{color:var(--text-on-dark);text-decoration:underline;text-underline-offset:3px}
.legal a:hover{color:var(--text-accent)}
.legal .consent-btn{margin-top:var(--space-16);height:48px;padding:0 var(--space-24);background:var(--bg-light);color:var(--text-on-light);border:0;border-radius:0;font-weight:500;font-size:15px;cursor:pointer}
.legal .consent-btn:hover{background:var(--bg-light-hover)}
@media (max-width:760px){.legal{padding:calc(78px + var(--space-40)) 20px var(--space-64)}.legal p,.legal li{font-size:15px;line-height:24px}}
