:root {
  --bg-1: #081229; 
  --bg-2: #0b1020; 
  --accent-1: #7C5CFF; 
  --accent-2: #00E0B8; 
  --glow: #FF6EC7; 
  --surface: rgba(255,255,255,0.04); 
  --text: #E6EEF6; 
  --muted: #9BB0C7; 
  --radius: 14px; 
  --glass-blur: 8px;
}

* { 
  box-sizing: border-box; 
  margin: 0; 
  padding: 0; 
}

html, body { 
  height: 100%; 
  font-family: 'Inter', sans-serif; 
  background: linear-gradient(180deg, var(--bg-1), var(--bg-2)); 
  color: var(--text); 
  line-height: 1.6; 
  -webkit-font-smoothing: antialiased; 
  scroll-behavior: smooth; 
}

.container { 
  max-width: 1200px; 
  margin: 0 auto; 
  padding: 0 20px; 
}

/* Sections */
.section { 
  display: none; 
  padding-top: 100px; 
  min-height: 100vh; 
}

.section.active { 
  display: block; 
}

.section-title { 
  font-size: 3rem; 
  text-align: center; 
  margin-bottom: 1rem; 
  background: linear-gradient(135deg, var(--text), var(--accent-2)); 
  -webkit-background-clip: text; 
  -webkit-text-fill-color: transparent; 
}

.section-subtitle { 
  text-align: center; 
  color: var(--muted); 
  font-size: 1.2rem; 
  margin-bottom: 3rem; 
  max-width: 600px; 
  margin-left: auto; 
  margin-right: auto; 
}

/* Header */
.site-header { 
  padding: 1.5rem 0; 
  position: fixed; 
  top: 0; 
  width: 100%; 
  background: rgba(8, 18, 41, 0.95); 
  backdrop-filter: blur(10px); 
  z-index: 1000; 
  border-bottom: 1px solid rgba(255,255,255,0.05); 
}

.nav-inner { 
  display: flex; 
  justify-content: space-between; 
  align-items: center; 
}

.logo { 
  font-weight: 700; 
  font-size: 1.25rem; 
  color: var(--text); 
  text-decoration: none; 
}

.nav-links { 
  display: flex; 
  gap: 2rem; 
}

.nav-links a { 
  color: var(--muted); 
  text-decoration: none; 
  transition: color 0.3s ease; 
  cursor: pointer; 
}

.nav-links a:hover { 
  color: var(--accent-2); 
}

/* Typography */
.headline { 
  font-size: 3.5rem; 
  font-weight: 700; 
  line-height: 1.1; 
  margin-bottom: 1.5rem; 
  background: linear-gradient(135deg, var(--text) 0%, var(--accent-2) 100%); 
  -webkit-background-clip: text; 
  -webkit-text-fill-color: transparent; 
  background-clip: text; 
}

.headline .accent { 
  background: linear-gradient(90deg, var(--accent-1), var(--accent-2), var(--glow)); 
  background-size: 200% 200%; 
  animation: shimmer 8s ease-in-out infinite; 
  -webkit-background-clip: text; 
  -webkit-text-fill-color: transparent; 
  background-clip: text; 
}

.lead { 
  font-size: 1.25rem; 
  color: var(--muted); 
  max-width: 600px; 
  margin-bottom: 2rem; 
}

/* Glass & Cards */
.glass-card { 
  background: var(--surface); 
  backdrop-filter: blur(var(--glass-blur)); 
  border-radius: var(--radius); 
  padding: 2rem; 
  border: 1px solid rgba(255,255,255,0.08); 
  box-shadow: 0 8px 32px rgba(0,0,0,0.3); 
  transition: all 0.3s ease; 
}

.glass-card:hover { 
  transform: translateY(-8px); 
  border-color: rgba(124, 92, 255, 0.2); 
  box-shadow: 0 20px 50px rgba(0,0,0,0.6); 
}

.heart-card { 
  margin: 2rem 0; 
  padding: 1.5rem; 
  background: linear-gradient(135deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02)); 
  border-radius: var(--radius); 
  border: 1px solid rgba(255,255,255,0.06); 
}

.heart-header { 
  display: flex; 
  align-items: center; 
  gap: 0.75rem; 
  margin-bottom: 1rem; 
}

.heart-emoji { 
  font-size: 1.5rem; 
}

/* Buttons */
.btn { 
  display: inline-flex; 
  align-items: center; 
  gap: 0.5rem; 
  padding: 0.75rem 1.5rem; 
  border-radius: var(--radius); 
  text-decoration: none; 
  font-weight: 600; 
  transition: all 0.3s ease; 
  border: none; 
  cursor: pointer; 
  font-size: 1rem; 
}

.btn-primary { 
  background: linear-gradient(90deg, var(--accent-1), var(--accent-2)); 
  color: #061026; 
  box-shadow: 0 8px 30px rgba(124, 92, 255, 0.2); 
}

.btn-primary:hover { 
  transform: translateY(-4px); 
  box-shadow: 0 12px 40px rgba(124, 92, 255, 0.3); 
  filter: brightness(1.1); 
}

.btn-ghost { 
  border: 1px solid rgba(255,255,255,0.1); 
  color: var(--text); 
  background: transparent; 
}

.btn-ghost:hover { 
  border-color: var(--accent-1); 
  background: rgba(124, 92, 255, 0.1); 
  transform: translateY(-2px); 
}

/* Hero */
.hero { 
  padding: 6rem 0; 
  min-height: 100vh; 
  display: flex; 
  align-items: center; 
}

.hero-inner { 
  display: grid; 
  grid-template-columns: 1fr 1fr; 
  gap: 4rem; 
  align-items: center; 
}

.stats-grid { 
  display: grid; 
  grid-template-columns: 1fr; 
  gap: 1rem; 
  margin-bottom: 1.5rem; 
}

.stat { 
  text-align: center; 
  padding: 1rem; 
}

.stat-number { 
  font-size: 2rem; 
  font-weight: 700; 
  background: linear-gradient(135deg, var(--accent-1), var(--accent-2)); 
  -webkit-background-clip: text; 
  -webkit-text-fill-color: transparent; 
}

.stat-label { 
  font-size: 0.9rem; 
  color: var(--muted); 
}

/* Features & Skills */
.features { 
  padding: 4rem 0; 
}

.features-grid, .skills-grid, .projects-grid, .certifications-grid { 
  display: grid; 
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); 
  gap: 2rem; 
}

.feature-card { 
  padding: 2rem; 
  text-align: center; 
  background: var(--surface); 
  border-radius: var(--radius); 
  transition: all 0.3s ease; 
}

.feature-card:hover { 
  transform: translateY(-5px); 
  box-shadow: 0 15px 40px rgba(0,0,0,0.4); 
}

.feature-icon { 
  font-size: 2.5rem; 
  margin-bottom: 1rem; 
}

/* Skills */
.skill-category { 
  margin-bottom: 1.5rem; 
}

.skill-category h3 { 
  margin-bottom: 1rem; 
  color: var(--text); 
}

.skill-items { 
  display: flex; 
  flex-direction: column; 
  gap: 0.75rem; 
}

.skill-item { 
  display: flex; 
  justify-content: space-between; 
  align-items: center; 
  padding: 0.75rem; 
  background: rgba(255,255,255,0.02); 
  border-radius: 8px; 
}

.skill-name { 
  flex: 1; 
}

.skill-level { 
  padding: 0.25rem 0.75rem; 
  border-radius: 20px; 
  font-size: 0.8rem; 
  font-weight: 600; 
}

.skill-level.proficient { 
  background: rgba(0, 224, 184, 0.2); 
  color: var(--accent-2); 
}

.skill-level.advanced { 
  background: rgba(124, 92, 255, 0.2); 
  color: var(--accent-1); 
}

.skill-level.expert { 
  background: rgba(255, 110, 199, 0.2); 
  color: var(--glow); 
}

/* Projects */
.project-card { 
  height: 100%; 
  display: flex; 
  flex-direction: column; 
}

.project-header { 
  display: flex; 
  justify-content: space-between; 
  align-items: start; 
  margin-bottom: 1rem; 
}

.project-header h3 { 
  flex: 1; 
  margin-right: 1rem; 
}

.project-badge { 
  padding: 0.25rem 0.75rem; 
  background: var(--accent-1); 
  color: white; 
  border-radius: 12px; 
  font-size: 0.8rem; 
  font-weight: 600; 
}

.project-description { 
  margin-bottom: 1.5rem; 
  color: var(--muted); 
  flex: 1; 
}

.project-impact, .project-deliverables { 
  margin-bottom: 1.5rem; 
}

.project-impact h4, .project-deliverables h4 { 
  color: var(--accent-2); 
  margin-bottom: 0.5rem; 
}

.project-deliverables ul { 
  padding-left: 1.5rem; 
  color: var(--muted); 
}

.project-deliverables li { 
  margin-bottom: 0.25rem; 
}

/* Certifications */
.certification-card { 
  text-align: center; 
}

.cert-header { 
  margin-bottom: 1rem; 
}

.cert-badge { 
  padding: 0.25rem 1rem; 
  background: var(--accent-2); 
  color: #061026; 
  border-radius: 12px; 
  font-size: 0.8rem; 
  font-weight: 600; 
}

.cert-description { 
  color: var(--muted); 
  margin-bottom: 1.5rem; 
}

/* Ethics */
.ethics-statement { 
  text-align: center; 
  margin-top: 3rem; 
}

.ethics-statement h3 { 
  margin-bottom: 1rem; 
}

/* Blog Preview Styles */
.blog-preview { 
  padding: 4rem 0; 
}

.blog-preview-grid { 
  display: grid; 
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); 
  gap: 2rem; 
  margin-top: 2rem;
}

.post-card { 
  cursor: pointer; 
  transition: all 0.3s ease; 
  height: 100%;
  display: flex;
  flex-direction: column;
}

.post-card:hover {
  transform: translateY(-8px);
  border-color: rgba(124, 92, 255, 0.3);
  box-shadow: 0 20px 50px rgba(0,0,0,0.6);
}

.post-card h3 { 
  margin-bottom: 0.5rem; 
  color: var(--text);
  font-size: 1.5rem;
  line-height: 1.3;
}

.meta { 
  color: var(--accent-2); 
  font-size: 0.9rem; 
  margin-bottom: 1rem; 
  font-weight: 500;
}

.excerpt { 
  color: var(--muted); 
  margin-bottom: 1.5rem; 
  line-height: 1.6;
  flex: 1;
}

.read-more { 
  color: var(--accent-1); 
  font-weight: 600; 
  font-size: 0.9rem;
  transition: all 0.3s ease;
}

.post-card:hover .read-more {
  color: var(--accent-2);
  transform: translateX(4px);
}

/* Footer */
.site-footer { 
  margin-top: 6rem; 
  padding: 3rem 0; 
  border-top: 1px solid rgba(255,255,255,0.05); 
}

.footer-content { 
  display: grid; 
  grid-template-columns: 1fr 1fr; 
  gap: 2rem; 
  margin-bottom: 2rem; 
}

.footer-bottom { 
  text-align: center; 
  padding-top: 2rem; 
  border-top: 1px solid rgba(255,255,255,0.05); 
  color: var(--muted); 
}

/* Animations */
@keyframes shimmer { 
  0% { background-position: 0% 50%; } 
  50% { background-position: 100% 50%; } 
  100% { background-position: 0% 50%; } 
}

[data-animate] { 
  opacity: 0; 
  transform: translateY(30px); 
  transition: all 0.6s ease; 
}

[data-animate].animated { 
  opacity: 1; 
  transform: translateY(0); 
}

/* Utilities */
.center { 
  text-align: center; 
}

.muted { 
  color: var(--muted); 
  font-size: 0.9rem; 
}

/* Mobile Responsive */
@media (max-width: 968px) {
  .hero-inner { 
    grid-template-columns: 1fr; 
    gap: 3rem; 
  }
  
  .headline { 
    font-size: 2.5rem; 
  }
  
  .section-title { 
    font-size: 2.5rem; 
  }
  
  .hero { 
    padding: 4rem 0; 
  }
  
  .features-grid, .skills-grid, .projects-grid, .certifications-grid { 
    grid-template-columns: 1fr; 
  }
  
  .footer-content { 
    grid-template-columns: 1fr; 
    text-align: center; 
  }
  
  .nav-links { 
    gap: 1rem; 
  }
  
  .project-header { 
    flex-direction: column; 
    gap: 0.5rem; 
  }
  
  .project-header h3 { 
    margin-right: 0; 
  }
  
  .blog-preview-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}

@media (max-width: 768px) {
  .container { 
    padding: 0 1rem; 
  }
  
  .headline { 
    font-size: 2rem; 
  }
  
  .section-title { 
    font-size: 2rem; 
  }
  
  .hero-ctas { 
    display: flex; 
    flex-direction: column; 
    gap: 1rem; 
  }
  
  .btn { 
    width: 100%; 
    justify-content: center; 
  }
  
  .section { 
    padding-top: 120px; 
  }
  
  .blog-preview {
    padding: 2rem 0;
  }
  
  .post-card h3 {
    font-size: 1.3rem;
  }
}

/* Additional Blog Styles for External Blog Pages */
.blog-listing-page {
  padding-top: 120px;
  min-height: 100vh;
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: 2.5rem;
  margin-top: 3rem;
}

.blog-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
  cursor: pointer;
}

.blog-card:hover {
  transform: translateY(-8px);
  border-color: rgba(124, 92, 255, 0.3);
}

.blog-card h2 {
  margin-bottom: 0.5rem;
  color: var(--text);
}

.blog-card h2 a {
  color: var(--text);
  text-decoration: none;
  transition: color 0.3s ease;
}

.blog-card h2 a:hover {
  color: var(--accent-2);
}

.blog-badge {
  padding: 0.35rem 1rem;
  background: var(--accent-1);
  color: white;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 600;
  white-space: nowrap;
}

.read-more-btn {
  color: var(--accent-1);
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.read-more-btn:hover {
  color: var(--accent-2);
  transform: translateX(4px);
}