:root {
  --red: #e02127;
  --anth: #1e1e1e;
  --gray: #f9f9f9;
  --light: #ffffff;
  --font-head: "Nunito", system-ui, sans-serif;
  --font-body: "Manrope", system-ui, sans-serif;
}

* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  font-family: var(--font-body);
  color: var(--anth);
  background: var(--light);
  overflow-x: hidden;
}

.gradient-bg {
  position: fixed;
  inset: 0;
  z-index: -1;
  background: radial-gradient(circle at 70% 20%, rgba(224,33,39,0.18), transparent 60%),
              linear-gradient(145deg, #ffffff 0%, #f3f4f6 80%);
}

.container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  padding: 60px 24px;
  text-align: center;
}

.logo-wrap {
  margin-bottom: 30px;
}

.logo {
  width: min(440px, 80%);
  height: auto;
  
}

h1 {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: clamp(2rem, 5vw, 3.2rem);
  margin: 0 0 16px;
  line-height: 1.15;
  color: var(--anth);
}

h1 span {
  color: var(--red);
  background: linear-gradient(90deg, var(--red), #b10e13);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.subtitle {
  max-width: 600px;
  margin: 0 auto 30px;
  font-size: 1.1rem;
  line-height: 1.6;
  color: #444;
}

.chips {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 16px 0 28px;
}

.chips span {
  background: #fff;
  border: 1px solid rgba(0,0,0,0.1);
  border-radius: 999px;
  padding: 10px 18px;
  font-weight: 600;
  font-size: 0.9rem;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  transition: all .2s ease;
}

.chips span:hover {
  background: var(--red);
  color: white;
  border-color: var(--red);
}

.chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.1);
  border-radius: 999px;
  padding: 10px 18px;
  font-weight: 600;
  font-size: 0.95rem;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  transition: all .2s ease;
}

/* Basis bleibt wie gehabt */
.chip { display:inline-flex; align-items:center; gap:8px; }
.chip svg { width:18px; height:18px; fill:var(--red); }

/* ===== 1) Dusche – fallende Drops nur bei Hover ===== */
.icon-shower .pipe,.icon-shower .head{ fill: currentColor; }
.icon-shower .drop{ fill: currentColor; opacity:0; transform: translateY(0); }

/* Animation definieren */
@keyframes drip {
  0%   { opacity:0; transform: translateY(-2px); }
  10%  { opacity:1; }
  80%  { opacity:1; transform: translateY(8px); }
  100% { opacity:0; transform: translateY(12px); }
}

/* Start erst auf Hover, gestaffelt */
.chip:hover .icon-shower .d1 { animation: drip .8s ease-out .0s infinite; }
.chip:hover .icon-shower .d2 { animation: drip .8s ease-out .12s infinite; }
.chip:hover .icon-shower .d3 { animation: drip .8s ease-out .24s infinite; }

/* ===== 2) Flamme – subtiler Flicker + Glow ===== */
.icon-flame .outer { fill: var(--red); }
.icon-flame .inner { fill: #ff6b71; } /* helleres Rot für Tiefe */

@keyframes flicker {
  0%,100% { transform: translateY(0) scale(1); filter: drop-shadow(0 0 0 rgba(224,33,39,0)); }
  50%     { transform: translateY(-0.4px) scale(1.03); filter: drop-shadow(0 0 6px rgba(224,33,39,0.35)); }
}
.chip:hover .icon-flame .flame { animation: flicker 0.9s ease-in-out infinite; transform-origin: 50% 80%; }

/* ===== 3) Tropfen – Bob + Ripple ===== */
@keyframes bob {
  0%,100% { transform: translateY(0) scale(1); }
  50%     { transform: translateY(-1px) scale(1.02); }
}
@keyframes wave {
  0%   { r:0.1; opacity:.45; }
  70%  { r:6;   opacity:.08; }
  100% { r:7.5; opacity:0; }
}
.icon-drop .drop-shape { fill: currentColor; }
.icon-drop .ripple { fill: none; stroke: currentColor; stroke-width: .8; opacity:0; }

/* nur bei Hover animieren, mit leichter Staffelung */
.chip:hover .icon-drop .drop-shape { animation: bob 1.4s ease-in-out infinite; transform-origin: 50% 70%; }
.chip:hover .icon-drop .r1 { animation: wave 1.2s ease-out .0s infinite; }
.chip:hover .icon-drop .r2 { animation: wave 1.2s ease-out .4s infinite; }

/* Barrierearm: Bewegungen reduzieren, wenn Nutzer das wünscht */
@media (prefers-reduced-motion: reduce) {
  .chip:hover .icon-shower .drop,
  .chip:hover .icon-flame .flame,
  .chip:hover .icon-drop .drop-shape,
  .chip:hover .icon-drop .ripple { animation: none !important; }
}


.btn {
  display: inline-block;
  background: var(--red);
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  padding: 14px 28px;
  border-radius: 12px;
  font-size: 1rem;
  box-shadow: 0 8px 20px rgba(224,33,39,0.25);
  transition: all 0.25s ease;
}

.btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(224,33,39,0.35);
}

.address {
  margin-top: 40px;
  font-size: 0.95rem;
  color: #555;
  line-height: 1.5;
}

.footer {
  margin-top: 40px;
  font-size: 0.85rem;
  color: #888;
}


.fresh {
  position: relative;
  background: linear-gradient(90deg, var(--red), #b10e13, var(--red));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: glowshift 3.5s ease-in-out infinite;
  background-size: 200% auto;
}

@keyframes glowshift {
  0%, 100% {
    filter: drop-shadow(0 0 0 rgba(224,33,39,0));
    background-position: 0% center;
  }
  50% {
    filter: drop-shadow(0 0 10px rgba(224,33,39,0.4));
    background-position: 100% center;
  }
}
