/* Background Overlay */
.age-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.88);
  backdrop-filter: blur(8px);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  animation: fadeIn 0.5s ease;
}

/* Modal Box */
.age-modal {
  background: #111;
  padding: 40px;
  border-radius: 20px;
  text-align: center;
  width: 90%;
  max-width: 450px;
  box-shadow: 0 0 40px rgba(255,0,0,0.4);
  animation: scaleUp 0.4s ease;
}

/* Title */
.age-modal h1 {
  color: #ff2b2b;
  margin-bottom: 15px;
  font-size: 28px;
}

/* Text */
.age-modal p {
  color: #ccc;
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 25px;
}

/* Buttons container */
.buttons {
  display: flex;
  gap: 15px;
  justify-content: center;
}

/* Enter Button */
.enter-btn {
  background: linear-gradient(135deg, #ff0000, #ff4d4d);
  border: none;
  padding: 12px 22px;
  color: white;
  font-weight: bold;
  border-radius: 10px;
  cursor: pointer;
  transition: 0.3s;
}

.enter-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px red;
}

/* Exit Button */
.exit-btn {
  background: transparent;
  border: 1px solid #555;
  padding: 12px 22px;
  color: #aaa;
  border-radius: 10px;
  cursor: pointer;
  transition: 0.3s;
}

.exit-btn:hover {
  border-color: #ff2b2b;
  color: #fff;
}

/* Animations */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes scaleUp {
  from { transform: scale(0.8); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}

@media (max-width: 480px) {
  .age-modal {
    padding: 20px;
    border-radius: 16px;
  }

  .buttons {
    flex-direction: column; /* stack buttons */
  }

  .enter-btn,
  .exit-btn {
    width: 100%;
  }
}