/* ═══════════════════════════════════════════════════════════════
   zquady.com — the website wears the app's skin.
   Tokens come straight from the app: cool-gray bg, #EDEDED cards,
   #1c1c1c brand black, olive #A7B77A accents, Sora everywhere.
   ═══════════════════════════════════════════════════════════════ */

/* Sora self-hosted (variable font 400–800) — kein Google-Fonts-Request mehr. */
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(data:font/woff2;base64,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) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(data:font/woff2;base64,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) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  --bg:     #F0F0F0;
  --card:   #EDEDED;
  --pill:   #E8E8E8;
  --paper:  #FAFAFA;
  --ink:    #1c1c1c;
  --muted:  #5b616e;      /* war #6B7280 — knapp unter 4,5:1 auf hellem Grund */
  --dim:    #767676;      /* war #999 — nur 2,5:1 auf hellem Grund */
  --olive:  #A7B77A;
  --olive-ink: #46752c;   /* Olive als TEXT auf hellem Grund (>=4,5:1); dark: heller */
  --white:  #FFFFFF;
  --radius: 18px;
  --shadow-soft: 0 2px 6px rgba(0,0,0,.06);
  --shadow-mid:  0 8px 28px rgba(0,0,0,.10);
  --max: 1120px;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Sora', system-ui, sans-serif;
  background: var(--bg);
  color: var(--ink);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
.container { max-width: var(--max); margin: 0 auto; padding: 0 24px; }

::selection { background: var(--olive); color: var(--ink); }

/* ═══════════ FLOATING PILL NAV ═══════════ */
.pill-nav {
  position: fixed;
  top: 14px; left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  display: flex;
  align-items: center;
  gap: 18px;
  background: rgba(250,250,250,.82);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-radius: 999px;
  padding: 8px 10px 8px 16px;
  box-shadow: 0 4px 24px rgba(0,0,0,.08), inset 0 0 0 1px rgba(0,0,0,.04);
  transition: box-shadow .3s, transform .35s cubic-bezier(.22,1,.36,1);
}
.pill-nav.hidden { transform: translateX(-50%) translateY(-130%); }

.brand { display: flex; align-items: center; gap: 9px; }
.brand-logo { height: 26px; width: auto; display: block; }
.brand-wordmark { height: 20px; width: auto; display: block; }
.brand-word {
  font-weight: 800; font-size: 17px; letter-spacing: -.5px;
}
.pill-links { display: flex; gap: 4px; }
.pill-links a {
  font-size: 13.5px; font-weight: 600; color: var(--muted);
  padding: 7px 13px; border-radius: 999px;
  transition: background .2s, color .2s;
}
.pill-links a:hover { background: var(--pill); color: var(--ink); }

.pill-right { display: flex; align-items: center; gap: 8px; }

/* Web-App-Einstieg — der einzige gefuellte Knopf im Header, damit erkennbar
   ist, dass er die Seite VERLAESST (die Nachbarn sind blosse Sprungmarken).
   Bewusst nur hier und nirgends sonst: die Web-App ist in geschlossener Beta
   und soll nicht wie ein offenes Angebot wirken (Stand 04.08.). */
/* Gefuellt in --ink, wie .btn-store: die Seite kennt genau EINE Knopffarbe,
   und Olive ist hier durchgehend Akzent (Punkt, Titel-Unterstreichung,
   Textmarkierung), nie Flaeche. Der vorherige Gruenton #6c7e44 war aus der App
   uebernommen und entsprach keinem Token dieser Seite. */
.app-btn {
  font-family: inherit; font-size: 13px; font-weight: 700;
  color: #fff; background: var(--ink);
  padding: 8px 15px; border-radius: 999px; white-space: nowrap;
  transition: box-shadow .25s, transform .15s;
}
.app-btn:hover { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(0,0,0,.20); }
/* Eng wird es zuerst bei den Sprungmarken — die weichen, der Knopf bleibt. */
@media (max-width: 620px) {
  .pill-links { display: none; }
}

.lang-btn {
  font-family: inherit; font-size: 12px; font-weight: 700;
  background: none; border: none; cursor: pointer;
  color: var(--muted); padding: 8px 10px; border-radius: 999px;
  transition: background .2s, color .2s;
}
.lang-btn:hover { background: var(--pill); color: var(--ink); }
/* ═══════════ HERO ═══════════ */
.hero { padding: 150px 24px 70px; }
.hero-grid {
  max-width: var(--max); margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 56px;
  align-items: center;
}

.hero-logo {
  height: 72px; width: auto;
  display: block;
  margin-bottom: 26px;
}

.kicker-pill {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--pill);
  font-size: 12px; font-weight: 700; letter-spacing: .3px;
  padding: 8px 16px; border-radius: 999px;
  margin-bottom: 28px;
}
.kicker-pill .dot {
  width: 7px; height: 7px; border-radius: 999px;
  background: var(--olive);
  animation: pulse 2.2s ease-in-out infinite;
}
@keyframes pulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.5); opacity: .5; }
}

.hero-title {
  font-size: clamp(42px, 6vw, 72px);
  font-weight: 800;
  letter-spacing: -2.5px;
  line-height: 1.04;
  margin-bottom: 26px;
}
.hero-title .line { display: block; }
.hero-title em {
  font-style: normal;
  position: relative;
  display: inline-block;
}
.hero-title em::after {
  content: '';
  position: absolute;
  left: 2px; right: 2px; bottom: 6px;
  height: 12px;
  background: var(--olive);
  opacity: .55;
  z-index: -1;
  border-radius: 4px;
  transform-origin: left center;
  animation: underline-grow .7s cubic-bezier(.22,1,.36,1) .9s both;
}
@keyframes underline-grow {
  from { transform: scaleX(0); }
  to   { transform: scaleX(1); }
}

.hero-sub {
  font-size: 17px; color: var(--muted);
  max-width: 460px; margin-bottom: 34px;
  font-weight: 400;
}
.hero-ctas { display: flex; gap: 12px; flex-wrap: wrap; }

.btn-store {
  display: inline-flex; align-items: center; gap: 9px;
  background: var(--ink); color: #fff;
  font-size: 14px; font-weight: 700;
  padding: 14px 24px; border-radius: 999px;
  transition: transform .2s, box-shadow .25s;
}
.btn-store:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(0,0,0,.22); }
.btn-store.invert { background: #fff; color: var(--ink); }
.btn-store.invert:hover { box-shadow: 0 10px 26px rgba(0,0,0,.35); }

/* Hero load sequence */
.hero-stagger {
  opacity: 0;
  transform: translateY(22px);
  animation: rise .8s cubic-bezier(.22,1,.36,1) forwards;
}
.hero-stagger.d1 { animation-delay: .1s; }
.hero-stagger.d2 { animation-delay: .2s; }
.hero-stagger.d3 { animation-delay: .3s; }
.hero-stagger.d4 { animation-delay: .45s; }
.hero-stagger.d5 { animation-delay: .58s; }
@keyframes rise {
  to { opacity: 1; transform: translateY(0); }
}

/* ═══════════ DEMO ZQUAD CARD ═══════════ */
.hero-demo { position: relative; }
.demo-stack { position: relative; max-width: 400px; margin: 0 auto; }
.demo-ghost {
  position: absolute; left: 0; right: 0;
  height: 100%;
  background: var(--card);
  border-radius: 22px;
  box-shadow: var(--shadow-soft);
}
.demo-ghost.g1 { top: 12px; transform: scale(.965); opacity: .65; }
.demo-ghost.g2 { top: 24px; transform: scale(.93); opacity: .35; }

/* The app's feed surface: a white rounded card holding flat rows. */
.feed-card {
  position: relative;
  background: var(--white);
  border-radius: 22px;
  padding: 4px 16px 10px;
  box-shadow: var(--shadow-mid);
}
.feed-head {
  display: flex; align-items: baseline; justify-content: space-between;
  padding: 14px 0 6px;
}
.feed-h { font-size: 16px; font-weight: 800; letter-spacing: -.3px; }
.feed-all { font-size: 12px; font-weight: 600; color: var(--muted); }

/* ZquadCard — 1:1 der App-Karte: Kalender-Kachel · Titel · KATEGORIE+Icon ·
   Punkte + "n/max dabei" · Distanz + "entfernt" · Chevron. Klick klappt die
   Details auf (.open), genau wie das Akkordeon in der App. */
.zcard {
  cursor: pointer; min-width: 0;
  transition: transform .38s cubic-bezier(.22,1,.36,1), opacity .3s;
}
.zhead { display: flex; align-items: center; gap: 14px; padding: 13px 0; }
.zcard.zsep, .zcard + .zcard { border-top: 1px solid rgba(0,0,0,.13); }
.zcard.swap-out { transform: translateX(38px); opacity: 0; }
.zcard.swap-in  { transform: translateX(-28px); opacity: 0; transition: none; }

/* Calendar tile — olive month band on top + big day number (or ∞), like the app */
.ztile {
  width: 50px; height: 56px; flex-shrink: 0;
  background: #F7F6F1; border: 1px solid #e6e5de;
  border-radius: 13px; overflow: hidden;
  display: flex; flex-direction: column; align-items: center;
}
.zband {
  width: 100%; height: 17px;
  background: rgba(167,183,122,.22); color: #6c7e44;
  font-size: 9.5px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase;
  display: flex; align-items: center; justify-content: center;
}
.zday { flex: 1; display: flex; align-items: center; justify-content: center;
  font-size: 22px; font-weight: 700; color: var(--ink); letter-spacing: -.5px; }
.zinf { flex: 1; display: flex; align-items: center; justify-content: center;
  font-size: 26px; color: #999; line-height: 1; }
.zbody { flex: 1; min-width: 0; }
.ztitle {
  font-size: 15.5px; font-weight: 700; letter-spacing: -.3px; line-height: 1.25;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.zsub {
  font-size: 11.5px; color: var(--muted); font-weight: 500; margin-top: 4px;
  display: flex; align-items: center; gap: 5px;
}
.zcat { color: var(--olive-ink); font-weight: 700; letter-spacing: .6px; }
.zcicon { display: inline-flex; align-items: center; }
.zcicon svg { width: 12px; height: 12px; stroke: var(--olive-ink); fill: none; }
.zfoot { display: flex; align-items: center; gap: 10px; margin-top: 9px; }
.zpips { display: flex; gap: 5px; }
.zpips i { width: 8px; height: 8px; border-radius: 999px; background: rgba(0,0,0,.12); }
.zpips i.f { background: var(--olive); }
/* nowrap: auf schmalen Screens brach "3/6 dabei" sonst hinter der km-Spalte um */
.zdabei { font-size: 12.5px; color: var(--muted); font-weight: 500; white-space: nowrap; }
/* Schmale Screens: die Punktreihe frisst zu viel Breite und "n/max dabei"
   schob sich in die Distanz-Spalte. Dann nur EIN Punkt — dieselbe Loesung,
   die die App bei grossen Gruppen faehrt. */
@media (max-width: 480px) {
  .zpips i ~ i { display: none; }
}
.zright {
  flex-shrink: 0; align-self: center; text-align: right; max-width: 100px;
  display: flex; flex-direction: column; align-items: flex-end;
}
.zright.zplain {
  color: var(--ink); font-size: 14px; font-weight: 700; letter-spacing: -.1px;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.zbig { color: var(--ink); font-size: 19px; font-weight: 700; letter-spacing: -.4px; }
.zunit { color: #6c7e44; font-size: 11px; font-weight: 600; }
.zaway { color: var(--dim); font-size: 10px; font-weight: 600; letter-spacing: .3px; margin-top: 1px; }
.zchev {
  flex-shrink: 0; display: flex; align-items: center; color: var(--dim);
  transition: transform .28s ease;
}
.zchev svg { width: 16px; height: 16px; }
.zcard.open .zchev { transform: rotate(180deg); }

/* Aufgeklappt — Reihenfolge wie in der App: erstellt · Host + Ruf ·
   Beschreibung · WANN · WO · Kosten · Tags · Beitritt anfragen. */
.zexp {
  overflow: hidden; max-height: 0;
  transition: max-height .3s cubic-bezier(.22,1,.36,1), opacity .25s;
  opacity: 0;
}
/* Deckel grosszuegig: auf schmalen Screens wird die Beschreibung mehrzeilig. */
.zcard.open .zexp { max-height: 640px; opacity: 1; }
.zexp-in { border-top: 1px dashed rgba(0,0,0,.18); padding: 12px 0 4px; }
.zposted { font-size: 11px; color: var(--dim); font-weight: 500; }
.zhostrow { display: flex; align-items: center; gap: 8px; margin-top: 8px; }
.zhost { font-size: 12.5px; font-weight: 700; color: var(--muted); }
.zrep {
  background: rgba(167,183,122,.22); color: var(--olive-ink);
  font-size: 11px; font-weight: 800; border-radius: 999px; padding: 3px 8px;
}
.zdesc { font-size: 13px; line-height: 1.45; color: var(--muted); margin: 7px 0 10px; }
.zbox {
  background: rgba(0,0,0,.035); border-radius: 12px;
  padding: 9px 12px; margin-bottom: 7px;
  display: flex; flex-direction: column; gap: 2px;
}
.zbox-l { font-size: 9.5px; font-weight: 800; letter-spacing: 1.1px; color: var(--dim); }
.zbox-v { font-size: 14px; font-weight: 700; letter-spacing: -.2px; }
.zbox-s { font-size: 12px; font-weight: 600; color: var(--olive-ink); }
.ztags { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 12px; }
.ztags span { font-size: 12px; font-weight: 600; color: var(--muted); }
.zjoin {
  width: 100%; border: none; cursor: pointer;
  background: var(--ink); color: #fff;
  font: inherit; font-size: 14px; font-weight: 700;
  padding: 13px; border-radius: 14px;
  transition: transform .18s, opacity .18s;
}
.zjoin:hover { transform: translateY(-1px); opacity: .92; }

.demo-hint {
  text-align: center; font-size: 12px; color: var(--dim);
  margin-top: 50px; font-weight: 500;
}

/* ═══════════ TICKER ═══════════ */
.ticker {
  overflow: hidden;
  padding: 8px 0 56px;
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.ticker-track {
  display: flex; gap: 10px; width: max-content;
  animation: marquee 38s linear infinite;
}
@keyframes marquee {
  to { transform: translateX(-50%); }
}
.tk {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--paper);
  border-radius: 999px;
  padding: 9px 18px;
  font-size: 13px; font-weight: 600;
  white-space: nowrap;
  box-shadow: var(--shadow-soft);
}
.tk svg { width: 15px; height: 15px; stroke: var(--olive); flex-shrink: 0; }
.tk b { font-weight: 800; }
.tk span { color: var(--muted); font-weight: 500; }

/* ═══════════ SECTIONS — shared ═══════════ */
.sec { padding: 90px 0; }
.sec-label {
  display: block;
  font-size: 11px; font-weight: 800; letter-spacing: 1.6px;
  color: var(--dim); margin-bottom: 14px;
}
.sec-title {
  font-size: clamp(30px, 4vw, 46px);
  font-weight: 800; letter-spacing: -1.5px; line-height: 1.1;
  margin-bottom: 16px;
}
.sec-sub { font-size: 16px; color: var(--muted); max-width: 560px; }
.sec-sub a { font-weight: 700; border-bottom: 2px solid var(--olive); }
.lead { font-size: 16.5px; color: var(--muted); }

/* Scroll reveals */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
}
.reveal.d1 { transition-delay: .12s; }
.reveal.d2 { transition-delay: .24s; }
.reveal.in { opacity: 1; transform: translateY(0); }

/* ═══════════ MANIFESTO ═══════════ */
.manifesto { padding-top: 40px; }
.massive {
  font-size: clamp(30px, 4.6vw, 54px);
  font-weight: 800; letter-spacing: -2px; line-height: 1.12;
  margin-bottom: 40px;
  max-width: 880px;
}
.massive em {
  font-style: normal; color: var(--dim);
}
.man-cols {
  display: grid; grid-template-columns: 1fr 1fr; gap: 40px;
  max-width: 880px;
}

/* ═══════════ HOW — klebendes Telefon, Schritte scrollen vorbei ═══════════ */
/* ── Sticky-Buehne (30.07., Umbau nach User-Report "zu weit auseinander") ──
   Der Wrapper ist hoch (reine Scroll-Strecke: 6 Folge-Schritte à 30vh), die
   Buehne darin klebt genau einen Viewport lang. Telefon und Text stehen
   still, nur der Inhalt wechselt — Leerraum zwischen Schritten existiert
   dadurch schlicht nicht mehr, und auf Mobile bleibt das Telefon die ganze
   Tour ueber im Bild (vorher: static, scrollte weg). */
/* Die Buehne fuellt am Ende der Tour den ganzen Viewport — 90px Sektions-
   polster darunter waeren nur doppelter Leerraum vor der naechsten Sektion. */
.sec.how { padding-top: 72px; padding-bottom: 16px; }
/* Ein Viewport fuers Stehen + 30vh Scrollweg pro Folge-Screen (9 Screens). */
.how-scroll { height: calc(100vh + 8 * 30vh); }
.how-stage {
  position: sticky; top: 0; height: 100vh;
  /* Telefonspalte nimmt genau ihre Breite (die haengt jetzt an der Hoehe,
     siehe .phone) — deshalb auto statt einer festen Zahl. */
  display: grid; grid-template-columns: auto 1fr; gap: 60px;
  align-items: center;
}
.how-phone-col { display: flex; flex-direction: column; align-items: center; }

/* Hell/Dunkel nur fuers Telefon — schaltet die Screenshots, nicht die Seite. */
.shot-theme {
  display: inline-flex; gap: 2px; margin-top: 14px; padding: 3px;
  background: rgba(0,0,0,.06); border-radius: 999px;
}
.shot-theme button {
  display: inline-flex; align-items: center; gap: 5px;
  border: none; background: none; cursor: pointer; font: inherit;
  font-size: 11.5px; font-weight: 700; letter-spacing: .2px; color: var(--muted);
  padding: 6px 13px; border-radius: 999px;
  transition: background .22s, color .22s, box-shadow .22s;
}
.shot-theme button svg { width: 13px; height: 13px; flex: none; }
.shot-theme button.on { background: #fff; color: var(--ink); box-shadow: 0 1px 3px rgba(0,0,0,.12); }
body.dark .shot-theme { background: rgba(255,255,255,.08); }
body.dark .shot-theme button.on { background: #2f302a; color: var(--ink); box-shadow: none; }
.how-copy { max-width: 520px; }
/* Slides teilen sich EINE Grid-Zelle und blenden uebereinander. */
.how-slides { display: grid; }
.how-slide {
  grid-area: 1 / 1;
  opacity: 0; transform: translateY(16px);
  transition: opacity .45s ease, transform .45s ease;
  pointer-events: none;
}
.how-slide.active { opacity: 1; transform: none; pointer-events: auto; }
.how-slide h3 { font-size: 21px; font-weight: 800; letter-spacing: -.4px; margin-bottom: 8px; }
.how-slide p { font-size: 15px; color: var(--muted); }
.how-dots { display: flex; gap: 8px; margin-top: 28px; }
.how-dots span {
  width: 8px; height: 8px; border-radius: 999px;
  background: rgba(0,0,0,.15); transition: background .3s, transform .3s;
}
.how-dots span.on { background: #6c7e44; transform: scale(1.3); }
.how-tile {
  width: 50px; height: 50px;
  background: #fff; border-radius: 13px;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 18px;
  box-shadow: var(--shadow-soft);
}
.how-tile svg { width: 24px; height: 24px; stroke: var(--ink); }

/* ── Telefonrahmen (reines CSS, kein Bild) ────────────────────────── */
.phone {
  /* Die HOEHE fuehrt: das Telefon soll die 100vh-Buehne fuellen, sonst stehen
     oben und unten je ~130px Leerraum (User-Report 30.07.). --ph-h ist die
     Zielhoehe inkl. Rahmen; die Breite rechnet sie ueber das Screenshot-
     Verhaeltnis (923/2000 = .4615) zurueck, plus 2x10px Rahmen. Deckel 390px
     (echte iPhone-Breite), damit es auf sehr hohen Fenstern nicht klobig wird.
     Mobile ueberschreibt nur --ph-h — die Formel bleibt dieselbe. Die 150px
     lassen Platz fuer den Hell/Dunkel-Schalter unter dem Telefon.
     Untergrenze 260px: auf sehr niedrigen Fenstern (Handy quer!) wurde das
     Telefon sonst rechnerisch winzig — 100vh minus Abzug ging gegen null. */
  --ph-h: clamp(260px, calc(100vh - 150px), 820px);
  position: relative; width: min(390px, calc((var(--ph-h) - 20px) * 0.4615 + 20px)); margin: 0 auto;
  background: #1c1c1c; border-radius: 40px; padding: 10px;
  box-shadow: 0 26px 60px rgba(0,0,0,.26), inset 0 0 0 1px rgba(255,255,255,.08);
}
.phone-notch {
  /* Prozentual, damit die Kerbe jede Telefongroesse mitgeht (entspricht bei
     286px Breite exakt den alten 88x21px bei top 19px). */
  position: absolute; top: 3.2%; left: 50%; transform: translateX(-50%);
  width: 30%; height: 3.5%; background: #1c1c1c; border-radius: 999px; z-index: 3;
}
.phone-screen {
  /* Hoehe folgt dem Screenshot-Seitenverhaeltnis (923x2000) statt fix 576px —
     so skaliert das Telefon verlustfrei mit seiner Breite (Buehne/Mobile). */
  position: relative; aspect-ratio: 923 / 2000; border-radius: 31px; overflow: hidden;
  background: var(--bg);
}
/* Die vier Screens liegen uebereinander; nur einer ist sichtbar. */
.ph-screen {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  opacity: 0; transition: opacity .4s ease; pointer-events: none;
}
.ph-screen.on { opacity: 1; }
/* Eigener Radius am BILD, nicht nur Clipping am Container: sonst blieb an den
   vier Ecken eine 1px-Kante des rechteckigen Screenshots stehen (User-Report
   31.07. — im Dark Mode als weisser Saum sichtbar). 1px weniger als der
   Container, damit auch das Antialiasing innerhalb der Rundung bleibt. */
.ph-screen .shot {
  width: 100%; height: 100%; object-fit: cover; display: block;
  border-radius: 30px;
}
.ph-bar {
  padding: 40px 18px 12px; background: var(--bg);
  border-bottom: 1px solid rgba(0,0,0,.06); flex: none;
}
.ph-title { font-size: 15px; font-weight: 800; letter-spacing: -.3px; }
.ph-body { flex: 1; padding: 14px; display: flex; flex-direction: column; gap: 10px; overflow: hidden; }
.ph-body .zrow { background: var(--white); border-radius: 14px; padding: 11px 12px; box-shadow: var(--shadow-soft); }

/* Screen "Erstellen" */
.ph-form { gap: 12px; }
.ph-field {
  background: var(--white); border-radius: 11px; padding: 12px 13px;
  font-size: 13.5px; color: var(--dim); box-shadow: var(--shadow-soft);
}
.ph-field.ph-filled { color: var(--ink); font-weight: 700; }
.ph-field.sm { flex: 1; font-size: 12.5px; padding: 10px 11px; color: var(--ink); font-weight: 600; }
.ph-row { display: flex; gap: 8px; }
.ph-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.ph-chips span {
  font-size: 11.5px; font-weight: 700; padding: 6px 11px; border-radius: 999px;
  background: var(--white); color: var(--muted); box-shadow: var(--shadow-soft);
}
.ph-chips span.on { background: var(--ink); color: #fff; }
.ph-tags { display: flex; gap: 6px; align-items: center; }
.ph-tags span {
  font-size: 11.5px; font-weight: 700; color: var(--olive-ink);
  background: rgba(167,183,122,.2); padding: 5px 10px; border-radius: 999px;
}
.ph-tags .ph-new { color: var(--muted); background: none; border: 1px dashed rgba(0,0,0,.22); }
.ph-cta {
  margin-top: auto; background: var(--ink); color: #fff; text-align: center;
  font-size: 14px; font-weight: 700; padding: 14px; border-radius: 14px;
}

/* Screen "Anfragen" */
.ph-sec { font-size: 10.5px; font-weight: 800; letter-spacing: 1.2px; color: var(--dim); text-transform: uppercase; }
.ph-req {
  display: flex; align-items: center; gap: 10px;
  background: var(--white); border-radius: 14px; padding: 11px 12px; box-shadow: var(--shadow-soft);
}
.ph-req.dim { opacity: .5; }
.ph-av { width: 34px; height: 34px; border-radius: 50%; background: linear-gradient(135deg, #A7B77A, #6c7e44); flex: none; }
.ph-req-b { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.ph-req-b b { font-size: 13px; letter-spacing: -.2px; }
.ph-req-b span { font-size: 11px; color: var(--muted); }
.ph-req-a { display: flex; gap: 6px; flex: none; }
.ph-req-a button {
  width: 30px; height: 30px; border-radius: 9px; border: none; cursor: default;
  display: grid; place-items: center; padding: 0;
}
.ph-req-a button svg { width: 14px; height: 14px; }
.ph-req-a .ok { background: var(--olive); color: #1c1c1c; }
.ph-req-a .no { background: var(--pill); color: var(--muted); }

/* Screen "Chat" */
.ph-chat { justify-content: flex-end; gap: 7px; }
.ph-chat .cbubble { font-size: 12.5px; padding: 7px 11px; }

@media (max-width: 980px) {
  /* Gleiche Sticky-Buehne, nur uebereinander: Telefon oben (kleiner),
     Text darunter — beides bleibt die ganze Tour im Bild. */
  .how-scroll { height: calc(100vh + 8 * 26vh); }
  .how-stage { grid-template-columns: 1fr; gap: 20px; align-content: center; justify-items: center; text-align: center; }
  /* Gestapelt: Telefon bekommt die Buehnenhoehe minus Textblock (~290px) und
     minus Schalter (~46px), damit oben/unten kein Leerraum steht und der Text
     nie abgeschnitten wird. */
  .phone { --ph-h: min(560px, calc(100vh - 338px)); }
  .shot-theme { margin-top: 10px; }
  .how-copy { max-width: min(480px, 88vw); }
  .how-slide { display: flex; flex-direction: column; align-items: center; }
  .how-tile { width: 42px; height: 42px; margin-bottom: 12px; }
  .how-slide h3 { font-size: 18px; }
  .how-slide p { font-size: 14px; }
  .how-dots { margin-top: 16px; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .ph-screen { transition: none; }
  /* Ohne Motion: keine Sticky-Fahrt — alle Schritte einfach untereinander. */
  .how-scroll { height: auto; }
  .how-stage { position: static; height: auto; align-items: start; }
  .how-slides { display: block; }
  .how-slide { opacity: 1; transform: none; pointer-events: auto; margin-bottom: 26px; transition: none; }
  .how-dots { display: none; }
}

/* ═══════════ DUO: Karte + Chat, zwei kompakte Panels ═══════════
   Die Karte ist eine reine CSS/Bild-Illustration im App-Look — keine
   Kartenbibliothek, kein Tile-Server, kann also nie "leer" bleiben. */
.duo-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 40px;
}
.duo-card {
  background: var(--card); border-radius: var(--radius);
  padding: 18px 18px 22px; box-shadow: var(--shadow-soft);
  min-width: 0;
}
.duo-card h3 { font-size: 17px; font-weight: 800; letter-spacing: -.3px; margin: 16px 0 6px; }
.duo-card > p { font-size: 14px; color: var(--muted); line-height: 1.55; }

/* ── Mini-Karte ───────────────────────────────────────────────────── */
/* Hoehe = Chat-Panel (Kopf + Verlauf), damit beide Ueberschriften auf einer Linie sitzen. */
.minimap {
  position: relative; height: 229px; border-radius: 14px; overflow: hidden;
  background: linear-gradient(160deg, #eef1e8, #f6f7f2);
  border: 1px solid rgba(0,0,0,.05);
}
.mm-block { position: absolute; background: rgba(28,28,28,.045); border-radius: 4px; }
.mm-block.b1 { width: 74px; height: 52px; top: 18px;  left: 24px; }
.mm-block.b2 { width: 58px; height: 44px; top: 118px; left: 46px; }
.mm-block.b3 { width: 86px; height: 60px; top: 40px;  right: 30px; }
.mm-road { position: absolute; background: rgba(255,255,255,.85); }
.mm-road.r1 { height: 13px; left: -10%; right: -10%; top: 84px;  transform: rotate(-4deg); }
.mm-road.r2 { height: 10px; left: -10%; right: -10%; top: 158px; transform: rotate(3deg); }
.mm-road.r3 { width: 11px; top: -10%; bottom: -10%; left: 128px; transform: rotate(6deg); }
.mm-road.r4 { width: 8px;  top: -10%; bottom: -10%; right: 74px; transform: rotate(-5deg); }
.mm-ring {
  position: absolute; left: 50%; top: 52%; width: 132px; height: 132px;
  margin: -66px 0 0 -66px; border-radius: 50%;
  border: 2px dashed rgba(108,126,68,.5); background: rgba(108,126,68,.05);
}
.mm-you {
  position: absolute; left: 50%; top: 52%; width: 16px; height: 16px; margin: -8px 0 0 -8px;
}
.mm-you i {
  position: absolute; inset: 0; border-radius: 50%;
  background: #6c7e44; border: 3px solid #fff; box-shadow: 0 1px 4px rgba(0,0,0,.3);
}
.mm-pin {
  position: absolute; width: 38px; height: auto; display: block;
  filter: drop-shadow(0 4px 6px rgba(0,0,0,.28));
  opacity: 0; transform: translateY(-26px) scale(.6);
}
.mm-pin.p1 { left: 36px;  top: 44px; }
.mm-pin.p2 { right: 52px; top: 30px; }
.mm-pin.p3 { left: 104px; bottom: 30px; }
.mm-pin.p4 { right: 34px; bottom: 48px; }
/* Pins droppen erst, wenn die Karte sichtbar wird (.reveal -> .in). */
.duo-card.in .mm-pin { animation: mmDrop .55s cubic-bezier(.2,1.3,.4,1) both; }
.duo-card.in .mm-pin.p2 { animation-delay: .12s; }
.duo-card.in .mm-pin.p3 { animation-delay: .24s; }
.duo-card.in .mm-pin.p4 { animation-delay: .36s; }
.duo-card.in .mm-you i { animation: mmPulse 2.4s ease-out infinite .6s; }
@keyframes mmDrop { to { opacity: 1; transform: none; } }
@keyframes mmPulse {
  0%   { box-shadow: 0 1px 4px rgba(0,0,0,.3), 0 0 0 0 rgba(108,126,68,.5); }
  70%  { box-shadow: 0 1px 4px rgba(0,0,0,.3), 0 0 0 20px rgba(108,126,68,0); }
  100% { box-shadow: 0 1px 4px rgba(0,0,0,.3), 0 0 0 0 rgba(108,126,68,0); }
}

/* ── Chat-Panel ───────────────────────────────────────────────────── */
.chat-mini {
  background: var(--white); border-radius: 14px; overflow: hidden;
  border: 1px solid rgba(0,0,0,.05);
}
.chat-mini .chat-head { padding: 12px 14px; }
.chat-mini .chat-tile { width: 34px; height: 34px; border-radius: 10px; }
.chat-mini .chat-tile svg { width: 18px; height: 18px; stroke: var(--olive-ink); }
.chat-mini .chat-body { height: 158px; padding: 12px 12px 14px; gap: 7px; }
.chat-mini .cbubble { font-size: 12.5px; padding: 7px 11px; }

@media (max-width: 860px) { .duo-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .duo-card.in .mm-pin { animation: none; opacity: 1; transform: none; }
  .duo-card.in .mm-you i { animation: none; }
}

/* ═══════════ CATEGORIES ═══════════ */
.cat-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;
  margin-top: 44px;
}
.cat-card {
  background: var(--card);
  border-radius: var(--radius);
  padding: 26px 24px;
  box-shadow: var(--shadow-soft);
  cursor: default;
  transition: background .35s, transform .3s cubic-bezier(.22,1,.36,1), box-shadow .35s;
  outline: none;
}
.cat-card:hover, .cat-card:focus-visible {
  background: var(--ink);
  transform: translateY(-5px);
  box-shadow: 0 14px 34px rgba(0,0,0,.25);
}
.cat-icon {
  width: 52px; height: 52px;
  background: #fff; border-radius: 13px;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 16px;
  box-shadow: var(--shadow-soft);
  transition: background .35s;
}
.cat-icon svg { width: 26px; height: 26px; stroke: var(--ink); transition: stroke .35s; }
.cat-card:hover .cat-icon, .cat-card:focus-visible .cat-icon { background: rgba(255,255,255,.12); }
.cat-card:hover .cat-icon svg, .cat-card:focus-visible .cat-icon svg { stroke: #fff; }
.cat-card h3 {
  font-size: 19px; font-weight: 800; letter-spacing: -.4px;
  margin-bottom: 8px;
  transition: color .35s;
}
.cat-card:hover h3, .cat-card:focus-visible h3 { color: #fff; }
.cat-tags { display: flex; flex-wrap: wrap; gap: 3px 11px; align-items: center; }
.cat-tags span {
  color: var(--olive-ink); font-size: 12.5px; font-weight: 700;
}
/* Die vier Tags je Karte sind nur Beispiele — der Chip sagt das auch. */
.cat-tags .cat-more {
  color: var(--muted); font-weight: 600; font-size: 11.5px;
  border: 1px dashed rgba(0,0,0,.22); border-radius: 999px; padding: 1px 8px;
}
.cat-card:hover .cat-more, .cat-card:focus-visible .cat-more {
  color: rgba(255,255,255,.72); border-color: rgba(255,255,255,.32);
}
body.dark .cat-tags .cat-more { border-color: rgba(255,255,255,.22); }

.cat-foot {
  margin-top: 22px; font-size: 14px; color: var(--muted);
  max-width: 62ch; line-height: 1.6;
}

/* ═══════════ SIDES ═══════════ */
.sides-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 14px;
  margin-top: 44px;
}
.side-card {
  background: var(--card);
  border-radius: var(--radius);
  padding: 34px 30px;
  box-shadow: var(--shadow-soft);
}
.side-card.dark { background: var(--ink); color: #fff; }
.side-pill {
  display: inline-block;
  background: var(--ink); color: #fff;
  font-size: 11px; font-weight: 800; letter-spacing: 1px;
  text-transform: uppercase;
  padding: 6px 14px; border-radius: 999px;
  margin-bottom: 18px;
}
.side-pill.light { background: var(--olive); color: var(--ink); }
.side-card h3 { font-size: 24px; font-weight: 800; letter-spacing: -.6px; margin-bottom: 12px; }
.side-card p { font-size: 15px; color: var(--muted); margin-bottom: 20px; }
.side-card.dark p { color: rgba(255,255,255,.65); }
.side-card ul { list-style: none; }
.side-card li {
  font-size: 14.5px; font-weight: 600;
  padding: 9px 0 9px 26px;
  position: relative;
  border-top: 1px solid rgba(0,0,0,.07);
}
.side-card.dark li { border-top-color: rgba(255,255,255,.12); }
.side-card li::before {
  content: '';
  position: absolute; left: 2px; top: 16px;
  width: 7px; height: 7px; border-radius: 999px;
  background: var(--olive);
}

/* ═══════════ PRIVACY ═══════════ */
.privacy-grid {
  display: grid; grid-template-columns: 1fr 1.1fr; gap: 56px;
  align-items: start;
}
.privacy-grid .lead { margin-bottom: 16px; }

/* ═══════════ FAQ ═══════════ */
.faq-grid {
  display: grid; grid-template-columns: 1fr 1.3fr; gap: 56px;
  align-items: start;
}
.faq-list details {
  background: var(--card);
  border-radius: 14px;
  margin-bottom: 8px;
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}
.faq-list summary {
  list-style: none;
  cursor: pointer;
  font-size: 15px; font-weight: 700; letter-spacing: -.2px;
  padding: 17px 48px 17px 20px;
  position: relative;
  transition: background .2s;
}
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
  content: '';
  position: absolute; right: 20px; top: 50%;
  width: 9px; height: 9px;
  border-right: 2.5px solid var(--ink);
  border-bottom: 2.5px solid var(--ink);
  transform: translateY(-65%) rotate(45deg);
  transition: transform .3s;
}
.faq-list details[open] summary::after { transform: translateY(-35%) rotate(225deg); }
.faq-list summary:hover { background: rgba(0,0,0,.025); }
.faq-list details p {
  font-size: 14.5px; color: var(--muted);
  padding: 0 20px 17px;
}

/* ═══════════ DOWNLOAD ═══════════ */
.download {
  background: var(--ink);
  border-radius: 32px;
  margin: 30px 16px;
  padding: 90px 24px;
  text-align: center;
  color: #fff;
}
.dl-logo {
  height: 84px; width: auto;
  margin-bottom: 28px;
}
.download h2 {
  font-size: clamp(36px, 5vw, 56px);
  font-weight: 800; letter-spacing: -2px;
  margin-bottom: 12px;
}
.download p { color: rgba(255,255,255,.65); font-size: 16px; margin-bottom: 34px; }
.dl-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.dl-age { margin: 22px 0 0 !important; font-size: 12.5px !important; color: rgba(255,255,255,.65) !important; font-weight: 600; letter-spacing: .3px; }

/* ═══════════ FOOTER ═══════════ */
footer { padding: 70px 0 36px; }
.footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 36px;
  padding-bottom: 44px;
}
.footer-brandrow { display: flex; align-items: center; gap: 9px; }
.footer-brandrow .footer-logo { height: 26px; width: auto; display: block; }
.footer-brand .footer-wordmark { height: 20px; width: auto; display: block; }
.footer-brand p { font-size: 13.5px; color: var(--muted); margin-top: 10px; }
.footer-col .f-head {
  font-size: 11px; font-weight: 800; letter-spacing: 1.4px;
  text-transform: uppercase;
  color: var(--dim); margin: 0 0 14px;
}
.footer-col a {
  display: block;
  font-size: 14px; font-weight: 500; color: var(--muted);
  padding: 4px 0;
  transition: color .2s;
}
.footer-col a:hover { color: var(--ink); }
.footer-bot {
  display: flex; align-items: center; justify-content: space-between;
  border-top: 1px solid rgba(0,0,0,.08);
  padding-top: 24px;
  font-size: 13px; color: var(--dim);
}
/* ═══════════ RESPONSIVE ═══════════ */
@media (max-width: 960px) {
  .hero-grid { grid-template-columns: 1fr; gap: 48px; }
  .hero { padding-top: 120px; }
  .how-grid, .cat-grid { grid-template-columns: 1fr 1fr; }
  .sides-grid, .man-cols, .privacy-grid, .faq-grid { grid-template-columns: 1fr; gap: 28px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .pill-links { display: none; }
  .pill-nav { gap: 10px; }
  .how-grid, .cat-grid { grid-template-columns: 1fr; }
  .sec { padding: 64px 0; }
  .hero { padding-top: 105px; }
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .download { margin: 20px 10px; padding: 64px 20px; }
}

/* ═══════════ REDUCED MOTION ═══════════ */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .hero-stagger { animation: none; opacity: 1; transform: none; }
  .hero-title em::after { animation: none; transform: scaleX(1); }
  .reveal { transition: none; opacity: 1; transform: none; }
  .ticker-track { animation: none; }
  .kicker-pill .dot { animation: none; }
  .zcard { transition: none; }
}

/* ═══════════ WEB-APP BUTTONS + EXTRA MOTION ═══════════ */
.btn-store.btn-web { background: var(--olive); color: var(--ink); }
.btn-store.btn-web:hover { box-shadow: 0 12px 28px rgba(167,183,122,.55); }
.btn-store.dl-web { background: var(--olive); color: var(--ink); }
.btn-store.dl-web:hover { box-shadow: 0 12px 28px rgba(167,183,122,.6); }

/* scroll progress bar */
.scroll-progress {
  position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 200;
  background: linear-gradient(90deg, var(--olive), #cfe0a6);
  transform: scaleX(0); transform-origin: 0 50%;
  will-change: transform; pointer-events: none;
}

/* explorer example cards — staggered entrance on filter/load */


/* smooth pointer tilt on interactive cards */
.cat-card, .how-card, .side-card, .feat-card { will-change: transform; transition: transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s; }

/* ═══════════ FEATURES GRID ═══════════ */
.feat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 40px; }
.feat-card { background: var(--white); border-radius: var(--radius); padding: 26px 24px; box-shadow: var(--shadow-soft); }
.feat-card:hover { box-shadow: var(--shadow-mid); }
.feat-ic {
  width: 52px; height: 52px; border-radius: 15px;
  background: rgba(167,183,122,.2); color: #5d9a3e;
  display: grid; place-items: center; margin-bottom: 16px;
}
.feat-ic svg { width: 26px; height: 26px; }
.feat-card h3 { font-size: 18px; font-weight: 800; letter-spacing: -.3px; margin-bottom: 7px; }
.feat-card p { font-size: 14.5px; color: var(--muted); line-height: 1.5; }
@media (max-width: 860px) { .feat-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .feat-grid { grid-template-columns: 1fr; } }

/* ═══════════ HERO AURORA + FLOATING EMOJI ═══════════ */
.hero { position: relative; }
/* Clipped so the blurred blobs never widen the page on mobile, but a soft
   bottom mask fades the edge into the counters (no hard green cut). */
.hero-aurora {
  position: absolute; inset: 0; overflow: hidden; z-index: 0; pointer-events: none;
  -webkit-mask-image: linear-gradient(to bottom, #000 76%, transparent);
  mask-image: linear-gradient(to bottom, #000 76%, transparent);
}
.hero-grid { position: relative; z-index: 1; }
.hb { position: absolute; border-radius: 50%; filter: blur(72px); will-change: transform; }
.hb.b1 { width: 460px; height: 460px; background: radial-gradient(circle, #a7b77a, transparent 70%); opacity: .5;  top: -120px; left: -100px; animation: hbFloat1 18s ease-in-out infinite; }
.hb.b2 { width: 420px; height: 420px; background: radial-gradient(circle, #1D9E75, transparent 70%); opacity: .3;  top: 100px;  right: -150px; animation: hbFloat2 22s ease-in-out infinite; }
.hb.b3 { width: 360px; height: 360px; background: radial-gradient(circle, #D9A441, transparent 70%); opacity: .26; bottom: -150px; left: 34%; animation: hbFloat3 26s ease-in-out infinite; }
@keyframes hbFloat1 { 50% { transform: translate(60px,50px) scale(1.08); } }
@keyframes hbFloat2 { 50% { transform: translate(-70px,40px) scale(1.1); } }
@keyframes hbFloat3 { 50% { transform: translate(40px,-60px) scale(1.06); } }
@keyframes emojiBob { 50% { transform: translateY(-16px) rotate(6deg); } }

/* Cursor-Spotlight + Karten-Schimmer entfernt (30.07.) — beides war derselbe
   olive Radialgradient, der dem Zeiger folgte. Hover bleibt: Anheben/Neigen. */
.feat-card, .cat-card { position: relative; overflow: hidden; }

/* ═══════════ BUTTON SHINE SWEEP ═══════════ */
.btn-store { position: relative; overflow: hidden; }
.btn-store::after {
  content: ''; position: absolute; top: 0; left: -70%; width: 45%; height: 100%;
  background: linear-gradient(100deg, transparent, rgba(255,255,255,.4), transparent);
  transform: skewX(-18deg); transition: left .6s ease; pointer-events: none;
}
.btn-store:hover::after { left: 130%; }
.btn-store.invert::after { background: linear-gradient(100deg, transparent, rgba(0,0,0,.14), transparent); }

@media (prefers-reduced-motion: reduce) {

  .scroll-progress { display: none; }
  .hb { animation: none; }
}

/* ═══════════ LOGO DRAW-IN (inline hero mark) ═══════════ */
.hero-logo { width: 72px; }
#heroMark { transform-box: view-box; }
#heroMark .hm-1, #heroMark .hm-2, #heroMark .hm-3 { opacity: 0; transform-box: fill-box; transform-origin: center; }
#heroMark .hm-1 { animation: hmPop .6s cubic-bezier(.2,1.5,.4,1) .1s forwards; }
#heroMark .hm-2 { animation: hmPop .6s cubic-bezier(.2,1.5,.4,1) .28s forwards; }
#heroMark .hm-3 { animation: hmPop .5s cubic-bezier(.2,1.9,.4,1) .52s forwards; }
@keyframes hmPop { from { opacity: 0; transform: scale(.3); } to { opacity: 1; transform: scale(1); } }

/* ═══════════ SECOND TICKER ROW (reverse) + interest chips ═══════════ */
.ticker-track.rev { animation: marqueeRev 46s linear infinite; margin-top: 10px; }
@keyframes marqueeRev { from { transform: translateX(-50%); } to { transform: translateX(0); } }
.tk2 { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap;
  background: var(--paper); border: 1px solid rgba(0,0,0,.06); border-radius: 999px;
  padding: 9px 16px; font-weight: 700; font-size: 13.5px; }
.tk2 .e { font-size: 15px; }

/* ═══════════ COUNTERS ═══════════ */
.counters-band { padding: 8px 0 46px; }
.counters { display: flex; justify-content: center; gap: 30px; flex-wrap: wrap; }
.counter { text-align: center; min-width: 116px; }
.counter-num, .counter-inf { display: block; font-size: 46px; font-weight: 800; letter-spacing: -1.6px; line-height: 1; color: var(--ink); }
.counter-inf { color: #6c7e44; }
.counter-label { display: block; font-size: 13px; font-weight: 600; color: var(--muted); margin-top: 7px; }

/* ═══════════ HEADLINE SHIMMER (safe sheen over the highlighted word) ═══════════ */
.hero-title em::before {
  content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(100deg, transparent 34%, rgba(255,255,255,.65) 50%, transparent 66%);
  background-size: 220% 100%; mix-blend-mode: overlay;
  animation: emSheen 5.5s ease-in-out 1.8s infinite;
}
@keyframes emSheen { 0%, 100% { background-position: 150% 0; } 55% { background-position: -50% 0; } }

/* ═══════════ CATEGORY ICON MICRO-ANIMATION ═══════════ */
.cat-card .cat-icon { transition: transform .3s; }
.cat-card:hover .cat-icon { animation: catWiggle .6s ease; }
@keyframes catWiggle { 0%,100% { transform: rotate(0) scale(1); } 30% { transform: rotate(-9deg) scale(1.14); } 62% { transform: rotate(7deg) scale(1.08); } }

/* ═══════════ HOW — sequential tile highlight ═══════════ */
.how-card .how-tile { transition: background .45s, color .45s, transform .45s cubic-bezier(.22,1,.36,1); }
.how-card.lit .how-tile { background: var(--olive); color: #1c1c1c; transform: scale(1.1) rotate(-3deg); }

/* ═══════════ CONFETTI ═══════════ */
.confetti-piece { position: fixed; top: 0; left: 0; width: 9px; height: 14px; border-radius: 2px; z-index: 300; pointer-events: none; will-change: transform, opacity; }

@media (prefers-reduced-motion: reduce) {
  #heroMark .hm-1, #heroMark .hm-2, #heroMark .hm-3 { animation: none; opacity: 1; }
  .ticker-track.rev, .mm-ring, .mm-pin, .mm-card, .hero-title em::before { animation: none; }
  .mm-card { opacity: 1; transform: none; }
}

/* ═══════════ HERO TITLE — word-by-word reveal ═══════════ */
.hero-title .hw { display: inline-block; opacity: 0; transform: translateY(20px) rotate(2deg); animation: hwIn .6s cubic-bezier(.22,1,.36,1) forwards; }
@keyframes hwIn { to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .hero-title .hw { animation: none; opacity: 1; transform: none; } }

/* ═══════════ CHAT-DEMO (im Duo-Panel) ═══════════ */
.chat-head { display: flex; align-items: center; gap: 11px; padding: 15px 18px; border-bottom: 1px solid rgba(0,0,0,.06); }
.chat-tile { width: 42px; height: 42px; border-radius: 12px; background: rgba(167,183,122,.22); display: grid; place-items: center; flex: none; }
.chat-tile svg { width: 22px; height: 22px; }
.chat-h { font-weight: 700; font-size: 15px; letter-spacing: -.2px; }
.chat-hs { font-size: 12px; color: var(--muted); margin-top: 1px; }
.chat-body { height: 320px; overflow: hidden; padding: 16px 16px 20px; display: flex; flex-direction: column; gap: 9px; justify-content: flex-end; background: linear-gradient(180deg, #fbfbf9, #fff); }
.cbubble { max-width: 78%; padding: 9px 13px; border-radius: 16px; font-size: 13.5px; line-height: 1.35; animation: cbIn .32s cubic-bezier(.2,1,.36,1) both; }
@keyframes cbIn { from { opacity: 0; transform: translateY(10px) scale(.96); } to { opacity: 1; transform: none; } }
.cbubble.other { align-self: flex-start; background: #EDEDED; color: #1c1c1c; border-bottom-left-radius: 5px; }
.cbubble.mine { align-self: flex-end; background: #1c1c1c; color: #fff; border-bottom-right-radius: 5px; }
.cbubble.typing { display: inline-flex; gap: 4px; padding: 12px 14px; align-self: flex-start; }
.cbubble.typing span { width: 7px; height: 7px; border-radius: 50%; background: #9a9a9a; animation: cbType 1.2s infinite; }
.cbubble.typing span:nth-child(2) { animation-delay: .2s; }
.cbubble.typing span:nth-child(3) { animation-delay: .4s; }
@keyframes cbType { 0%,60%,100% { opacity: .3; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-4px); } }
@media (prefers-reduced-motion: reduce) { .cbubble, .cbubble.typing span { animation: none; } }

/* ═══════════ ODOMETER ═══════════ */
.counter-num.odo-wrap { display: inline-flex; height: 1em; overflow: hidden; }
.odo { display: inline-block; height: 1em; overflow: hidden; }
.odo-strip { display: flex; flex-direction: column; transition: transform 1.5s cubic-bezier(.2,.85,.15,1); will-change: transform; }
.odo-strip span { height: 1em; line-height: 1; display: block; text-align: center; }
@media (prefers-reduced-motion: reduce) { .odo-strip { transition: none; } }

/* ═══════════ THEME TOGGLE + DARK MODE ═══════════ */
.theme-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; background: none; border: none; cursor: pointer; color: var(--muted); border-radius: 999px; transition: background .2s, color .2s; }
.theme-btn::before { content: ''; position: absolute; inset: -6px; border-radius: 999px; } /* 44px Trefferflaeche */
.theme-btn:hover { background: var(--pill); color: var(--ink); }
.theme-btn .ic-sun { display: none; }
body.dark .theme-btn .ic-moon { display: none; }
body.dark .theme-btn .ic-sun { display: block; }

body.dark {
  --bg: #121310; --card: #1e1f1b; --pill: #2a2b22; --paper: #171814;
  --ink: #F5F4F2; --muted: #A3A19B; --dim: #79776f; --white: #1c1d19;
  --shadow-soft: 0 2px 8px rgba(0,0,0,.5); --shadow-mid: 0 10px 30px rgba(0,0,0,.6);
}
body.dark .pill-nav { background: rgba(28,29,25,.82); box-shadow: 0 4px 24px rgba(0,0,0,.5), inset 0 0 0 1px rgba(255,255,255,.06); }
body.dark { --olive-ink: #A7B77A; } /* Olive-Text im Dark Mode wieder hell (7,6:1 auf #1e1f1b) */
body.dark .btn-store { color: #1c1c1c; }
body.dark .btn-web, body.dark .dl-web { color: #1c1c1c; }
body.dark .brand-logo, body.dark .footer-logo { filter: brightness(0) invert(1); opacity: .92; }
body.dark #heroMark .hm-1, body.dark #heroMark .hm-3 { fill: #F5F4F2; }
/* Kalender-Kachel dunkel wie in der App (dort: #2B2A27 auf #3A3835-Rand) */
body.dark .ztile { background: #2B2A27; border-color: #3A3835; }
body.dark .zband { background: #33342b; color: #b5b3aa; }
body.dark .zcard.zsep, body.dark .zcard + .zcard { border-top-color: rgba(255,255,255,.1); }
body.dark .zpips i { background: rgba(255,255,255,.24); }
body.dark .zpips i.f { background: var(--olive); }
body.dark .zexp-in { border-top-color: rgba(255,255,255,.18); }
body.dark .zbox { background: rgba(255,255,255,.06); }
body.dark .zrep { background: rgba(167,183,122,.18); }
/* --ink kippt im Dark ins Helle — der Knopftext muss mitkippen, sonst weiss auf weiss. */
body.dark .zjoin { color: #1c1c1c; }
body.dark .cbubble.other { background: #2a2b23; color: #F5F4F2; }
body.dark .cbubble.mine { background: #3c4231; color: #fff; }
body.dark .chat-body { background: linear-gradient(180deg, #191a15, #1c1d19); }
body.dark .feat-card, body.dark .cat-card, body.dark .step,
body.dark .feed-card, body.dark .chat-mini, body.dark .duo-card { border: 1px solid rgba(255,255,255,.07); }
body.dark .hero-title em::after { opacity: .42; }


/* circular reveal for the theme swap (View Transitions API) */
::view-transition-old(root), ::view-transition-new(root) { animation: none; mix-blend-mode: normal; }
::view-transition-old(root) { z-index: 1; }
::view-transition-new(root) { z-index: 9999; }

/* scroll-driven phone — tilt origin + smoothing */
.hero-demo { transform-origin: 60% 30%; will-change: transform, opacity; transition: opacity .25s ease; }
@media (prefers-reduced-motion: reduce) { .hero-demo { transform: none !important; opacity: 1 !important; } }

/* ═══════════ LANGUAGE DROPDOWN (6 languages) ═══════════ */
.lang-btn { display: inline-flex; align-items: center; gap: 5px; }
.lang-caret { opacity: .65; transition: transform .2s; }
.lang-wrap { position: relative; }
.lang-wrap.open .lang-caret { transform: rotate(180deg); }
.lang-menu {
  position: absolute; top: calc(100% + 8px); right: 0; min-width: 176px;
  background: var(--paper); border: 1px solid rgba(0,0,0,.06); border-radius: 14px;
  box-shadow: var(--shadow-mid); padding: 6px; z-index: 60;
  display: flex; flex-direction: column; gap: 2px;
  opacity: 0; visibility: hidden; transform: translateY(-8px) scale(.96);
  transform-origin: top right; transition: opacity .18s, transform .18s, visibility .18s;
}
.lang-wrap.open .lang-menu { opacity: 1; visibility: visible; transform: none; }
.lang-menu button {
  display: flex; align-items: center; gap: 10px; width: 100%; text-align: left;
  font: inherit; font-size: 14px; font-weight: 600; color: var(--ink);
  background: none; border: none; padding: 9px 12px; border-radius: 9px;
  cursor: pointer; transition: background .15s;
}
.lang-menu button:hover { background: var(--pill); }
.lang-menu button.on { background: rgba(167,183,122,.18); color: var(--olive-ink); }
.lm-flag { font-size: 16px; line-height: 1; }
body.dark .lang-menu { border-color: rgba(255,255,255,.08); }
body.dark .lang-menu button.on { background: rgba(167,183,122,.2); color: var(--olive); }

/* Inline nav logo mark — keeps the olive stroke in dark mode (like the hero). */
.brand-mark { height: 26px; width: auto; display: block; }
body.dark .brand-mark .bm-1, body.dark .brand-mark .bm-3 { fill: #F5F4F2; }

/* ═══════════ HERO CARDS — the showpiece at the top of the page ═══════════ */
/* The feed becomes a light "app screen" holding separate raised cards, with a
   soft coloured glow behind it so it pops off the page. */
.hero-demo .feed-card {
  background: var(--bg);
  box-shadow: 0 30px 70px rgba(0,0,0,.16);
  position: relative; overflow: visible;
}
.hero-demo .feed-card::before {
  content: ''; position: absolute; inset: -3px; z-index: -1; border-radius: 26px;
  background: linear-gradient(135deg, rgba(167,183,122,.55), transparent 42%, rgba(29,158,117,.45));
  filter: blur(14px); opacity: .7;
}
.hero-demo .zcard {
  background: #fff; border-radius: 16px; padding: 2px 14px 12px; margin-bottom: 10px;
  box-shadow: 0 6px 20px rgba(0,0,0,.10);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s, opacity .3s;
}
.hero-demo .zcard:last-child { margin-bottom: 2px; }
/* Karten stehen einzeln, die Trennlinie aus dem Feed-Layout entfaellt hier. */
.hero-demo .zcard + .zcard { border-top: none; }
.hero-demo .zcard:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(0,0,0,.16); }
.hero-demo .zcard.open:hover { transform: none; }
body.dark .hero-demo .zcard { background: #1e1f1b; box-shadow: 0 6px 20px rgba(0,0,0,.5); }
body.dark .hero-demo .feed-card::before { opacity: .5; }
@media (prefers-reduced-motion: no-preference) {
  .hero-demo .feed-card { animation: cardFloat 7s ease-in-out infinite; }
}
@keyframes cardFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }

/* ═══════════ DARK-MODE CONTRAST FIXES ═══════════ */
/* Category cards: icon tile + hover state were white-on-white in the dark. */
body.dark .cat-icon { background: #26271f; }
body.dark .cat-card:hover, body.dark .cat-card:focus-visible { background: var(--olive); box-shadow: 0 14px 34px rgba(0,0,0,.5); }
body.dark .cat-card:hover h3, body.dark .cat-card:focus-visible h3 { color: #1c1c1c; }
body.dark .cat-card:hover .cat-icon, body.dark .cat-card:focus-visible .cat-icon { background: rgba(0,0,0,.16); }
body.dark .cat-card:hover .cat-icon svg, body.dark .cat-card:focus-visible .cat-icon svg { stroke: #1c1c1c; }
body.dark .cat-card:hover .cat-tags span, body.dark .cat-card:focus-visible .cat-tags span { color: rgba(0,0,0,.62); }
/* ── Dark-Mode-Durchgang 30.07. ──────────────────────────────────────
   Alles, was im Hellen ein bewusster Kontrast-Block ist (`background:
   var(--ink); color: #fff`), kippt im Dunklen: --ink wird hell, der weisse
   Text verschwindet darauf. Die Bloecke BLEIBEN hell (das ist ja der Trick:
   ein Block, der sich vom Rest absetzt) — nur ihre Inhalte werden dunkel. */
body.dark .download { color: #1c1c1c; }
body.dark .download p, body.dark .dl-age { color: rgba(0,0,0,.62) !important; }
body.dark .dl-logo { filter: brightness(0); opacity: .9; }
body.dark .download .btn-store.invert { background: #1c1c1c; color: #F5F4F2; }
body.dark .download .btn-store.invert::after { background: linear-gradient(100deg, transparent, rgba(255,255,255,.28), transparent); }
body.dark .side-card.dark { color: #1c1c1c; }
body.dark .side-card.dark p { color: rgba(0,0,0,.62); }
body.dark .side-card.dark li { border-top-color: rgba(0,0,0,.12); }
body.dark .side-pill { color: #1c1c1c; }
/* Login-Knopf im Kopf: gleiche Falle — die Pille bleibt hell (--ink kippt),
   also muss die Schrift dunkel werden, sonst weiss auf weiss. */
body.dark .app-btn { color: #1c1c1c; }
body.dark .app-btn:hover { box-shadow: 0 8px 20px rgba(0,0,0,.45); }
/* Icon-Kachel der Tour: war weiss, das helle Icon darauf unsichtbar. */
body.dark .how-tile { background: #26271f; box-shadow: none; }
body.dark .how-dots span { background: rgba(255,255,255,.22); }
/* Telefonrahmen hebt sich vom fast schwarzen Grund sonst nicht ab — das macht
   jetzt der hellere Rahmen selbst. KEIN inset-Ring mehr: der zeichnete eine
   weisse 1px-Linie an der Innenkante, die in den Rundungen als heller Bogen
   heraussticht (User-Report 31.07.). */
body.dark .phone {
  background: #2b2b25;
  box-shadow: 0 26px 60px rgba(0,0,0,.6);
}

/* Active filter pill: var(--ink) flips light in the dark, so #fff text vanished. */


/* ═══════════ MOBILE — hard-lock against horizontal scroll ═══════════ */
/* body already sets overflow-x; html needs it too, and `clip` also contains
   transformed/absolutely-positioned decorations that `hidden` on body missed. */
html { overflow-x: clip; }
body { overflow-x: clip; }
/* Grid/flex items must be allowed to shrink below their content width, or a
   nowrap card title forces the track wider than the screen. */
.zcard { min-width: 0; }
@media (max-width: 640px) {
  .demo-stack { max-width: 100%; }
  .hero { padding-left: 18px; padding-right: 18px; }
}

/* Hero grid cells (copy + demo) must shrink to the track, not force it wider
   than the viewport via a nowrap card title. */
.hero-grid > * { min-width: 0; }
.hero-title { overflow-wrap: break-word; }
