/* Minimal, centered layout with tiny touches of motion */
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; }
body {
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: #fafafa;
  color: #111827;
}
.wrap {
  min-height: 100%;
  display: grid;
  place-items: center;
  padding: 2rem;
  text-align: center;
}
.title {
  font-size: clamp(2.4rem, 6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: 0.2px;
}
.subtitle {
  margin-top: .25rem;
  color: #6b7280;
}
.construction {
  margin-top: 1rem;
  font-size: clamp(1.1rem, 3.2vw, 1.4rem);
  display: inline-flex;
  gap: .5rem;
  align-items: center;
  border: 1px dashed #d1d5db;
  padding: .5rem .8rem;
  border-radius: .75rem;
  background: #ffffff;
}
.emoji { display: inline-block; }
@keyframes bounce { 0%,100%{ transform: translateY(0);} 50%{ transform: translateY(-6px);} }
.bounce { animation: bounce 1.8s ease-in-out infinite; }
.delay { animation-delay: .4s; }
.desc {
  margin-top: 1rem;
  color: #374151;
  max-width: 42rem;
  line-height: 1.7;
  font-style: italic;
}
.email {
  margin-top: .9rem;
  color: #374151;
  line-height: 1.7;
}
.email a {
  color: #111827;
  text-decoration: underline;
}
.cta { margin-top: 1.1rem; }
.btn {
  display: inline-block;
  padding: .7rem 1rem;
  border: 1px solid #111827;
  border-radius: .6rem;
  background: #111827;
  color: #fff;
  text-decoration: none;
}
.btn:hover { filter: brightness(0.95); }
