:root{
  --bg: #000000;
  --neon: #b026ff;
  --neon-pink: #d94dff;
  --gold: #d4af6a;
  --text: #f2eaf7;
  --text-dim: #b8a8c4;
}

*{ box-sizing: border-box; -webkit-tap-highlight-color: transparent; }

html{
  scroll-behavior: smooth;
  background: var(--bg);
}

body{
  margin: 0;
  min-height: 100vh;
  min-height: 100dvh;
  background: var(--bg);
  color: var(--text);
  font-family: 'Poppins', sans-serif;
  overflow-x: hidden;
}

/* ---------- Layout ---------- */

.page{
  max-width: 480px;
  margin: 0 auto;
  padding: 32px 16px calc(40px + env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* ---------- Hero (estático) ---------- */

.hero{
  width: 100%;
  margin-bottom: 30px;
}

.hero-img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 24px;
  box-shadow:
    0 18px 50px -12px rgba(176,38,255,0.5),
    0 0 70px -14px rgba(176,38,255,0.35);
}

/* ---------- Link cards (imagem = botão) ---------- */

.links{
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.link-card{
  display: block;
  line-height: 0;
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s ease, transform 0.5s ease, filter 0.3s ease;
}

.link-card.in-view{
  opacity: 1;
  transform: translateY(0);
}

.link-card:nth-child(2).in-view{ transition-delay: 0.05s; }
.link-card:nth-child(3).in-view{ transition-delay: 0.1s; }
.link-card:nth-child(4).in-view{ transition-delay: 0.15s; }

.link-card img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
  filter: drop-shadow(0 10px 26px rgba(176,38,255,0.4));
  transition: transform 0.35s cubic-bezier(.2,.7,.3,1), filter 0.35s ease;
}

/* leve zoom ao passar o mouse / tocar */
.link-card:hover img,
.link-card:active img,
.link-card:focus-visible img{
  transform: scale(1.045);
  filter: drop-shadow(0 16px 38px rgba(176,38,255,0.6));
}

/* ---------- Footer ---------- */

.footer{
  margin-top: 40px;
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.footer.in-view{
  opacity: 1;
  transform: translateY(0);
}

.footer p{
  font-family: 'Cormorant Garamond', serif;
  font-size: 0.9rem;
  letter-spacing: 0.03em;
  color: var(--text-dim);
  text-align: center;
  margin: 0;
}

/* ---------- Mobile ---------- */

@media (max-width: 480px){
  .page{ padding: 24px 14px calc(32px + env(safe-area-inset-bottom)); }
  .hero{ margin-bottom: 22px; }
  .links{ gap: 14px; }
  .hero-img{ border-radius: 18px; }
  .link-card img{ border-radius: 14px; }
}

@media (hover: none){
  /* dispositivos touch: sem hover falso, zoom só no toque ativo */
  .link-card:hover img{ transform: none; filter: drop-shadow(0 10px 26px rgba(176,38,255,0.4)); }
  .link-card:active img{ transform: scale(1.03); }
}

@media (prefers-reduced-motion: reduce){
  *{
    transition-duration: 0.01ms !important;
  }
}
