/* ── Home Page Specific Styles ── */
/* Hero Section */
.hero-enhanced { position:relative; min-height:92vh; display:flex; align-items:center; justify-content:center; padding:6rem 2rem; overflow:hidden; background:var(--gradient-mesh); color:#fff; }
.hero-enhanced::before { content:''; position:absolute; top:0; left:0; right:0; bottom:0; background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(99,102,241,0.3),transparent),radial-gradient(ellipse 60% 40% at 80% 50%,rgba(236,72,153,0.2),transparent),radial-gradient(ellipse 50% 60% at 20% 80%,rgba(16,185,129,0.15),transparent); z-index:1; }
.hero-enhanced::after { content:''; position:absolute; width:500px; height:500px; border-radius:50%; background:radial-gradient(circle,rgba(99,102,241,0.15) 0%,transparent 70%); top:-100px; right:-100px; animation:orb-float-1 20s ease-in-out infinite; z-index:1; }
.hero-enhanced .container { position:relative; z-index:2; max-width:900px; text-align:center; }
.hero-enhanced h1 { font-size:clamp(2.75rem,8vw,5rem); margin-bottom:1.5rem; line-height:1.08; font-weight:800; letter-spacing:-0.035em; }
.hero-enhanced p { font-size:clamp(1.125rem,2.5vw,1.375rem); color:rgba(255,255,255,0.8); margin-bottom:3rem; max-width:650px; margin-left:auto; margin-right:auto; line-height:1.7; }

/* Hero Highlight / Analytics Cards */
.hero-highlight-wrapper { margin-top:4rem; perspective:1200px; }
.hero-highlight-card { background:rgba(255,255,255,0.06); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,0.12); border-radius:var(--border-radius-xl); padding:2rem; max-width:700px; margin:0 auto; transform:rotateX(2deg); transition:transform 0.6s cubic-bezier(0.16,1,0.3,1); box-shadow:0 30px 60px -15px rgba(0,0,0,0.3); }
.hero-highlight-card:hover { transform:rotateX(0deg) translateY(-4px); }
.analytics-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0.75rem; }
.analytics-mini-card { border-radius:14px; padding:1rem 0.75rem; text-align:center; transition:transform 0.2s ease,box-shadow 0.2s ease; }
.analytics-mini-card:hover { transform:translateY(-2px); box-shadow:0 8px 20px rgba(0,0,0,0.15); }
[data-theme="dark"] .analytics-mini-card:hover { box-shadow:0 8px 20px rgba(0,0,0,0.35); }

/* Vanguard Leaderboard */
.vanguard-premium-wrapper { background:var(--gradient-premium); border:1px solid var(--border-color); border-radius:32px; padding:3rem; max-width:1200px; margin:0 auto; box-shadow:var(--shadow-premium); }
[data-theme="dark"] .vanguard-premium-wrapper { background:rgba(99,102,241,0.06); border-color:var(--border-color); }

/* Final CTA */
.cta-final { background:var(--gradient-mesh); padding:10rem 2rem; text-align:center; position:relative; overflow:hidden; }
.cta-final::before { content:''; position:absolute; top:0; left:0; right:0; bottom:0; background:radial-gradient(ellipse 60% 50% at 50% 50%,rgba(99,102,241,0.2),transparent),radial-gradient(ellipse 40% 40% at 80% 20%,rgba(236,72,153,0.15),transparent); }
.cta-final .cta-content { position:relative; z-index:2; max-width:700px; margin:0 auto; }
.cta-final h2 { color:#fff; font-size:clamp(2.25rem,5vw,3.25rem); font-weight:800; margin-bottom:1.5rem; letter-spacing:-0.03em; }
.cta-final p { color:rgba(255,255,255,0.75); font-size:1.1875rem; margin-bottom:3rem; line-height:1.7; }

/* Legacy Feature Grid */
.feature-grid-enhanced { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; padding:0 1rem; }
.feature-card { background:var(--surface-color); padding:3rem 2rem; border-radius:var(--border-radius-xl); border:1px solid var(--border-color); transition:all 0.4s cubic-bezier(0.4,0,0.2,1); text-align:center; position:relative; overflow:hidden; }
.feature-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--primary-gradient); opacity:0; transition:opacity 0.3s; }
.feature-card:hover { transform:translateY(-8px); box-shadow:var(--shadow-premium); border-color:rgba(99,102,241,0.2); }
.feature-card:hover::before { opacity:1; }
.feature-icon { width:64px; height:64px; margin:0 auto 1.5rem; display:flex; align-items:center; justify-content:center; font-size:2rem; background:var(--primary-gradient); color:#fff; border-radius:var(--border-radius-md); box-shadow:var(--shadow-md); }
.feature-card h3 { font-size:1.5rem; margin-bottom:1rem; }

/* Charts responsive */
@media (max-width:900px) { .charts-grid { grid-template-columns:1fr !important; } }
@media (max-width:640px) { .analytics-grid { grid-template-columns:repeat(2,1fr); } }

/* Home page responsive */
@media (max-width:768px) {
  .hero-enhanced { min-height:80vh; padding:4rem 1.5rem; }
  .vanguard-premium-wrapper { padding:1.5rem; border-radius:20px; }
  .cta-final { padding:6rem 1.5rem; }
  .feature-grid-enhanced { grid-template-columns:1fr; padding:2rem 1rem; }
}
@media (max-width:1024px) and (min-width:769px) {
  .feature-grid-enhanced { grid-template-columns:repeat(2,1fr); }
}
