:root { --dark: #0a0a0f; --dark-light: #12121a; --white: #fff; --gray: #6b7280; --gray-light: #9ca3af; --primary: #8b5cf6; --gradient: linear-gradient(135deg, #8b5cf6, #a855f7, #06b6d4); --font: 'Inter', sans-serif; }
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: var(--font); background: var(--dark); color: var(--white); line-height: 1.6; }
a { color: inherit; text-decoration: none; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 2rem; }
.nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; padding: 1rem 2rem; background: rgba(10,10,15,0.9); backdrop-filter: blur(10px); }
.nav-container { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
.nav-logo { display: flex; align-items: center; gap: 0.5rem; font-size: 1.5rem; font-weight: 700; }
.accent { background: var(--gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.nav-links { display: flex; gap: 2rem; }
.nav-links a { color: var(--gray-light); font-weight: 500; }
.nav-links a:hover { color: var(--white); }
.hero { min-height: 100vh; display: flex; align-items: center; justify-content: center; text-align: center; padding: 8rem 2rem 4rem; background: radial-gradient(ellipse at 30% 50%, rgba(139,92,246,0.15), transparent 50%), radial-gradient(ellipse at 70% 50%, rgba(6,182,212,0.1), transparent 50%); position: relative; overflow: hidden; }

/* Orbiting Planet - Water World with Continents */
.orbiting-planet {
  position: absolute;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: 
    /* Ocean base */
    radial-gradient(circle at 50% 50%, #1e40af, #1e3a5f 60%, #0c1929);
  box-shadow: 
    inset -40px -40px 80px rgba(0,0,0,0.7),
    inset 30px 30px 60px rgba(59,130,246,0.3),
    0 0 80px rgba(59,130,246,0.4),
    0 0 160px rgba(34,197,94,0.1);
  animation: planetSpin 90s linear infinite;
  z-index: 0;
  opacity: 0.5;
  pointer-events: none;
  overflow: hidden;
}

/* Continents layer */
.planet-surface {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background:
    /* North America */
    radial-gradient(ellipse 25% 20% at 25% 30%, #2d5016 0%, #3d6b1e 40%, transparent 70%),
    /* South America */
    radial-gradient(ellipse 15% 25% at 30% 65%, #3d6b1e 0%, #2d5016 50%, transparent 70%),
    /* Europe */
    radial-gradient(ellipse 18% 12% at 52% 28%, #4a7c23 0%, #3d6b1e 50%, transparent 70%),
    /* Africa */
    radial-gradient(ellipse 20% 28% at 55% 52%, #8b7355 0%, #6b5a3e 40%, #3d6b1e 70%, transparent 85%),
    /* Asia */
    radial-gradient(ellipse 35% 25% at 75% 35%, #3d6b1e 0%, #4a7c23 30%, #2d5016 60%, transparent 80%),
    /* Australia */
    radial-gradient(ellipse 12% 10% at 82% 65%, #c2956b 0%, #8b7355 50%, transparent 70%),
    /* Antarctica hint */
    radial-gradient(ellipse 40% 8% at 50% 95%, rgba(255,255,255,0.6) 0%, rgba(200,220,255,0.3) 50%, transparent 70%),
    /* Greenland */
    radial-gradient(ellipse 8% 8% at 38% 18%, rgba(255,255,255,0.7) 0%, rgba(200,230,255,0.4) 60%, transparent 80%);
  animation: surfaceRotate 90s linear infinite;
  opacity: 0.9;
}

/* Cloud layer */
.orbiting-planet::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background:
    /* Cloud wisps */
    radial-gradient(ellipse 30% 8% at 20% 25%, rgba(255,255,255,0.4) 0%, transparent 70%),
    radial-gradient(ellipse 25% 6% at 60% 40%, rgba(255,255,255,0.35) 0%, transparent 70%),
    radial-gradient(ellipse 35% 7% at 40% 60%, rgba(255,255,255,0.3) 0%, transparent 70%),
    radial-gradient(ellipse 20% 5% at 75% 55%, rgba(255,255,255,0.35) 0%, transparent 70%),
    radial-gradient(ellipse 28% 6% at 30% 75%, rgba(255,255,255,0.25) 0%, transparent 70%);
  animation: cloudsRotate 70s linear infinite;
  opacity: 0.8;
}

/* Atmosphere glow */
.orbiting-planet::after {
  content: '';
  position: absolute;
  top: -2%;
  left: -2%;
  width: 104%;
  height: 104%;
  border-radius: 50%;
  background: transparent;
  box-shadow: 
    inset 0 0 60px rgba(59,130,246,0.3),
    inset 0 0 100px rgba(34,197,94,0.1);
  pointer-events: none;
}

@keyframes planetSpin {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes surfaceRotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes cloudsRotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(-360deg); }
}

.hero-content { position: relative; z-index: 1; }
.hero-content { max-width: 800px; }
.badge { display: inline-block; padding: 0.5rem 1rem; background: rgba(139,92,246,0.1); border: 1px solid rgba(139,92,246,0.3); border-radius: 50px; font-size: 0.875rem; color: var(--primary); margin-bottom: 1.5rem; }
.hero h1 { font-size: clamp(2.5rem, 6vw, 4rem); font-weight: 800; line-height: 1.1; margin-bottom: 1.5rem; }
.gradient-text { background: var(--gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.hero p { font-size: 1.25rem; color: var(--gray-light); max-width: 600px; margin: 0 auto 2.5rem; }
.hero-cta { display: flex; gap: 1rem; justify-content: center; margin-bottom: 4rem; }
.btn { padding: 0.875rem 1.75rem; font-size: 1rem; font-weight: 600; border-radius: 12px; cursor: pointer; border: none; transition: all 0.3s; }
.btn-primary { background: var(--gradient); color: var(--white); box-shadow: 0 4px 20px rgba(139,92,246,0.3); }
.btn-primary:hover { transform: translateY(-2px); }
.btn-secondary { background: rgba(255,255,255,0.05); color: var(--white); border: 1px solid rgba(255,255,255,0.1); }
.btn-large { padding: 1rem 2.5rem; font-size: 1.1rem; }
.hero-stats { display: flex; justify-content: center; gap: 4rem; padding-top: 2rem; border-top: 1px solid rgba(255,255,255,0.1); }
.stat { text-align: center; }
.stat-value { display: block; font-size: 2rem; font-weight: 700; background: var(--gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.stat-label { font-size: 0.875rem; color: var(--gray); }
.features { padding: 6rem 0; background: var(--dark-light); }
.section-header { text-align: center; margin-bottom: 4rem; }
.section-header h2 { font-size: 2.5rem; font-weight: 700; margin-top: 1rem; }
.features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.feature-card { background: var(--dark); border: 1px solid rgba(255,255,255,0.05); border-radius: 16px; padding: 2rem; transition: all 0.3s; }
.feature-card:hover { border-color: rgba(139,92,246,0.3); transform: translateY(-5px); }
.feature-card .icon { font-size: 2.5rem; margin-bottom: 1rem; display: block; }
.feature-card h3 { font-size: 1.25rem; margin-bottom: 0.75rem; }
.feature-card p { color: var(--gray-light); font-size: 0.95rem; }
.cta { padding: 6rem 0; background: var(--gradient); text-align: center; }
.cta h2 { font-size: 2.5rem; margin-bottom: 1rem; }
.cta p { font-size: 1.2rem; opacity: 0.9; margin-bottom: 2rem; }
.cta .btn-primary { background: var(--white); color: var(--primary); }
.footer { padding: 3rem 0; background: var(--dark-light); text-align: center; }
.footer p { color: var(--gray); margin-bottom: 0.5rem; }
.fab { position: fixed; bottom: 24px; right: 24px; width: 56px; height: 56px; background: var(--gradient); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; box-shadow: 0 4px 20px rgba(139,92,246,0.4); z-index: 1000; }
@media (max-width: 768px) {
  /* Nav - show below logo on mobile */
  .nav-container { flex-wrap: wrap; gap: 0.75rem; }
  .nav-links { width: 100%; justify-content: center; gap: 1rem; padding-top: 0.75rem; border-top: 1px solid rgba(255,255,255,0.1); }
  .nav-links a { font-size: 0.85rem; }
  .hero h1 { font-size: 2rem; }
  .hero-stats { flex-direction: column; gap: 2rem; }
  .features-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .nav-links { gap: 0.5rem; }
  .nav-links a { font-size: 0.8rem; }
  .nav-logo { font-size: 1.25rem; }
}
