:root {
  --bg: #ffffff;
  --text: #000000;
  --btnText: #ffffff;
}

html, body {
  height: 100%;
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: "Afacad", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* nichts markierbar */
* {
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

.wrap {
  min-height: 100%;
  display: grid;
  place-items: center;
  padding: 24px;              /* verhindert Randkontakt */
  box-sizing: border-box;
}

.card {
  width: 100%;
  max-width: 720px;
  text-align: center;
  display: grid;
  gap: 18px;
  justify-items: center;
}

.headline {
  font-size: clamp(18px, 2.2vw, 26px);
  font-weight: 600;
  line-height: 1.25;
}

/* BUTTON */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: calc(100% - 32px);   /* <-- harter Sicherheitsabstand */
  max-width: 520px;
  min-height: 88px;
  padding: 20px 28px;

  margin-left: auto;
  margin-right: auto;        /* erzwingt Zentrierung */

  border-radius: 22px;
  text-decoration: none;
  color: var(--btnText);
  font-size: clamp(18px, 4.6vw, 22px);
  font-weight: 600;

  background-image: url("../backg/bg.gif");
  background-repeat: no-repeat;
  background-size: 300%;
  background-position: center;
  background-color: #000;

  box-shadow: 0 12px 34px rgba(0,0,0,0.14);
  transition: transform 120ms ease, box-shadow 120ms ease;
}

.btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.18);
}

.btn:active {
  transform: translateY(0);
  filter: brightness(0.95);
}

/* Mobile */
@media (max-width: 480px) {
  .btn {
    width: calc(100% - 40px); /* extra Luft auf sehr schmal */
    min-height: 92px;
    font-size: 20px;
  }
}
