/* Landing page */
.hero {
  display: grid; grid-template-columns: 1.05fr 1fr; gap: 40px; align-items: center;
  padding: clamp(32px, 6vw, 64px) 0 40px;
  position: relative; overflow: hidden;
}
.hero-watermark {
  position: absolute; width: 240px; height: 320px; right: -30px; top: -40px;
  color: var(--brand-secondary-soft); opacity: .8; z-index: 0;
}
.hero-copy { position: relative; z-index: 1; }
.hero-copy h1 { font-size: clamp(38px, 5.6vw, 62px); margin-top: 16px; }
.hero-copy p { font-size: 19px; max-width: 460px; margin-top: 14px; }
.hero-actions { display: flex; gap: 12px; margin-top: 26px; flex-wrap: wrap; }
.hero-art {
  position: relative; z-index: 1;
  background: var(--brand-primary-soft);
  border: 3px solid var(--peach-300);
  border-radius: var(--radius-xl);
  padding: 30px; min-height: 320px;
  display: flex; align-items: center; justify-content: center;
}
.hero-art .cat { width: 78%; height: 260px; color: var(--ink-900); }

.section { padding: 24px 0 56px; }
.section-head { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; }
.section-head h2 { font-size: clamp(28px, 3.4vw, 36px); }

.games-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.game-card { padding: 0; overflow: hidden; cursor: pointer; display: block; color: inherit; }
.game-card:hover { color: inherit; }
.game-card .game-art {
  height: 190px; display: flex; align-items: center; justify-content: center;
  border-bottom: 2px solid rgba(58,52,46,.08); position: relative;
}
.game-card .game-art .cat { width: 160px; height: 150px; }
.game-card .game-body { padding: var(--space-5); }
.game-card h3 { font-size: 26px; margin-top: 10px; }
.game-card p { font-size: 15px; margin-top: 8px; }
.game-card .game-go { margin-top: 16px; }

/* Pás políček v kartě Krokování */
.mini-strip { position: absolute; bottom: 12px; left: 0; right: 0; display: flex; gap: 5px; justify-content: center; }
.mini-strip i {
  width: 22px; height: 22px; border-radius: 7px;
  background: var(--surface-card); border: 2px solid var(--teal-300); opacity: .9;
}

/* Sekce pro dospělé */
.grownups {
  background: var(--brand-secondary-soft);
  border-radius: var(--radius-xl);
  padding: clamp(28px, 5vw, 48px);
  position: relative; overflow: hidden;
  margin-bottom: 56px;
}
.grownups .cat-l { position: absolute; width: 140px; height: 140px; left: 24px; bottom: -14px; color: var(--teal-300); opacity: .7; }
.grownups .cat-r { position: absolute; width: 130px; height: 130px; right: 28px; top: -4px; color: var(--teal-300); opacity: .7; }
.grownups-inner { position: relative; z-index: 1; max-width: 640px; margin: 0 auto; text-align: center; }
.grownups h2 { font-size: clamp(26px, 3vw, 32px); }
.grownups p { margin-top: 12px; }

@media (max-width: 840px) {
  .hero { grid-template-columns: 1fr; }
  .hero-art { min-height: 240px; }
  .games-grid { grid-template-columns: 1fr; }
}
