/* --- GENERAL --- */
body {
  margin: 0;
  font-family: "Baloo 2", "Comic Sans MS", Arial, sans-serif;
  background: #ffeefe;
  color: #d6007d;
  cursor: url('images/usa-cursor.png'), auto;
  overflow-x: hidden;
}

/* --- Floating decorations --- */
.floating-character {
  position: fixed;
  width: 80px;
  z-index: 999;
  pointer-events: none;
  animation: float 4s ease-in-out infinite alternate;
}

.floating-character:nth-child(1) { bottom: 20px; right: 20px; } /* USA-chan */
.floating-character:nth-child(2) { top: 50px; left: 30px; } /* Rose */

@keyframes float {
  0% { transform: translateY(0); }
  100% { transform: translateY(-15px); }
}

/* --- HEADER --- */
header {
  background: linear-gradient(to bottom, #ffd6f7, #ffb3ec);
  padding: 25px;
  text-align: center;
  border-bottom: 4px solid #ff8ed6;
}

header h1 {
  margin: 0;
  font-size: 48px;
  color: #ff008c;
  text-shadow: 0 0 10px #ffb3ea, 0 0 20px white;
}

/* --- NAV --- */
nav a {
  margin: 0 12px;
  text-decoration: none;
  color: white;
  background: #ff74c8;
  padding: 8px 14px;
  border-radius: 20px;
  font-size: 14px;
}
nav a:hover { background: #ff0099; }

/* --- HERO --- */
.hero {
  text-align: center;
  padding: 80px 20px;
  background: linear-gradient(to bottom, #fff1ff, #ffe1fa);
}

.hero h2 {
  color: #ff0099;
  font-size: 34px;
  text-shadow: 0px 0px 8px #ffb3ea;
}

.hero p { font-size: 18px; color: #b30075; }

/* --- BUTTON --- */
.button {
  background: #ff6ec7;
  color: white;
  padding: 12px 25px;
  text-decoration: none;
  font-weight: bold;
  border-radius: 30px;
  margin-top: 20px;
  display: inline-block;
}
.button:hover { background: #ff0099; }