:root {
  --primary-color: #fff;         /* white text */
  --secondary-color: #000;       /* black background */
  --accent-color: #111;          /* dark gray accents */
  --gradient-colors: linear-gradient(135deg, #0145ff, #ce06ce);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: Arial, sans-serif;
  color: var(--primary-color);
}

body {
  background: var(--secondary-color);
}

/* Navigation */
nav {
  height: 80px;
  background: var(--accent-color);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: bold;
  padding: 0 2rem;
}

.logo {
  font-size: 1.5rem;
  font-weight: bold;
}

.nav-items a {
  text-decoration: none;
  color: var(--primary-color);
  padding: 0 1.5rem;
}

.nav-items a:hover {
  color: #8e05b1;
}

/* Hero Section */
.hero-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 95vh;
  padding: 3rem calc((100vw - 1300px) / 2);
  text-align: center;
}

.column-left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0rem 2rem;
  text-align: center;
}

.column-left h1 {
  margin-bottom: 1rem;
  font-size: 4rem;
}

.column-left p {
  margin-bottom: 2rem;
  font-size: 1.5rem;
  line-height: 1.5;
}

/* Buttons */
button, .btn {
  padding: 1rem 3rem;
  font-size: 1rem;
  border: none;
  color: var(--primary-color);
  background: var(--accent-color);
  cursor: pointer;
  border-radius: 50px;
  transition: background 0.3s, color 0.3s;
}

.btn {
  margin: 50px;
  border-radius: 12px;
  position: relative;
  z-index: 0;
}

.btn::after {
  content: "";
  z-index: -1;
  position: absolute;
  width: 100%;
  height: 100%;
  background: var(--accent-color);
  left: 0;
  top: 0;
  border-radius: inherit;
}

.btn::before {
  content: "";
  background: var(--gradient-colors);
  position: absolute;
  top: -2px;
  left: -2px;
  background-size: 600%;
  z-index: -1;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  filter: blur(8px);
  animation: glowing 20s linear infinite;
  opacity: 0;
  border-radius: inherit;
}

@keyframes glowing {
  0% { background-position: 0 0; }
  50% { background-position: 400% 0; }
  100% { background-position: 0 0; }
}

.btn:hover::before {
  opacity: 1;
}

/* Containers */
.container {
  display: flex;
  width: 90%;
  flex-direction: column;
  align-items: center;
  padding: 2rem;
  background: var(--accent-color);
  margin: 2rem auto;
  border-radius: 25px;
  box-shadow: 0 4px 8px rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease;
}

.container:hover {
  transform: scale(1.05);
}

.container h1 {
  font-size: 2rem;
  margin-bottom: 1rem;
}

.container p {
  font-size: 1rem;
  line-height: 1.5;
}

.image {
  width: 100%;
  max-width: 600px;
  height: auto;
  margin-top: 1rem;
}

/* Gradient Text */
.gradient-text {
  background: linear-gradient(135deg, #00ffd5, #ff00c8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Footer */
.footer {
  background: #000;
  color: #fff;
  text-align: center;
  padding: 15px;
}

.footer img {
  filter: invert(1);
  width: 24px;
  margin: 0 10px;
  cursor: pointer;
}

.footer p {
  margin-top: 10px;
  font-size: 14px;
  color: #aaa;
}

/* Disclaimer */
.disclaimer {
  background: #111;
  color: #aaa;
  padding: 20px;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
}

/* Responsive */
@media (min-width: 768px) {
  .container {
    flex-direction: row;
    justify-content: space-between;
  }

  .text {
    flex: 1;
    margin-right: 2rem;
    text-align: left;
  }

  .image {
    flex: 1;
    order: 2;
  }
}

/* Small screens: hide logo and adjust nav */
@media (max-width: 600px) {
  .logo {
    display: none;
  }

  .nav-items {
    flex: 1;
    text-align: center;
  }

  .nav-items a {
    display: inline-block;
    padding: 10px;
  }
}
