/* Homepage Enhance v2.0 */

/* === Hero Split Layout === */
.hero-split {
  display: flex;
  align-items: center;
  gap: 3em;
  padding: 3em 2em;
  max-width: 1100px;
  margin: 0 auto;
}
.hero-text { flex: 1; text-align: left; }
.hero-mockup { flex: 0 0 280px; display: flex; justify-content: center; }

.phone-frame {
  width: 260px;
  height: 520px;
  border-radius: 36px;
  border: 4px solid #1a1a2e;
  background: #1a1a2e;
  padding: 12px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.18);
  position: relative;
  overflow: hidden;
}
.phone-frame::before {
  content: '';
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 22px;
  background: #1a1a2e;
  border-radius: 0 0 14px 14px;
  z-index: 2;
}
.phone-screen {
  width: 100%;
  height: 100%;
  border-radius: 24px;
  overflow: hidden;
  position: relative;
  background: #f5f5f5;
}
.mockup-slide {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  opacity: 0;
  transition: opacity 0.8s ease;
}
.mockup-slide.active { opacity: 1; }

@media (max-width: 768px) {
  .hero-split { flex-direction: column; text-align: center; padding: 2em 1em; }
  .hero-text { text-align: center; }
  .hero-mockup { flex: none; }
  .phone-frame { width: 220px; height: 440px; }
}

/* === Section Rhythm === */
.cta-section,
.strengths-section,
.testimonial-section { background: #f8f9fa; }

/* === Scroll Animations (only when JS is ready) === */
.js-ready .section-animate {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.js-ready .section-animate.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Staggered card animation — scoped to .js-ready .section-animate only */
.js-ready .section-animate .feature-card,
.js-ready .section-animate .strength-item,
.js-ready .section-animate .testimonial-card {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.js-ready .section-animate.visible .feature-card,
.js-ready .section-animate.visible .strength-item,
.js-ready .section-animate.visible .testimonial-card {
  opacity: 1;
  transform: translateY(0);
}
/* Stagger delays */
.section-animate.visible .feature-card:nth-child(1),
.section-animate.visible .strength-item:nth-child(1),
.section-animate.visible .testimonial-card:nth-child(1) { transition-delay: 0s; }
.section-animate.visible .feature-card:nth-child(2),
.section-animate.visible .strength-item:nth-child(2),
.section-animate.visible .testimonial-card:nth-child(2) { transition-delay: 0.1s; }
.section-animate.visible .feature-card:nth-child(3),
.section-animate.visible .strength-item:nth-child(3),
.section-animate.visible .testimonial-card:nth-child(3) { transition-delay: 0.2s; }
.section-animate.visible .feature-card:nth-child(4),
.section-animate.visible .strength-item:nth-child(4),
.section-animate.visible .testimonial-card:nth-child(4) { transition-delay: 0.3s; }
.section-animate.visible .feature-card:nth-child(5) { transition-delay: 0.4s; }
.section-animate.visible .feature-card:nth-child(6) { transition-delay: 0.5s; }

/* === Card Hover Effects === */
.feature-card {
  transition: opacity 0.5s ease, transform 0.3s ease, box-shadow 0.3s ease;
}
.feature-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 30px rgba(0,0,0,0.12);
}

/* === Card Links === */
.card-link {
  display: inline-block;
  margin-top: 0.8em;
  color: var(--accent, #1e73be);
  font-weight: 600;
  text-decoration: none;
  font-size: 0.9em;
}
.card-link:hover { text-decoration: underline; }

/* === Mid-page CTA === */
.midpage-cta {
  background: linear-gradient(135deg, #f0f4ff 0%, #e8eaf6 100%);
  padding: 3em 2em;
  text-align: center;
  margin: 0;
}
.midpage-cta-inner {
  max-width: 600px;
  margin: 0 auto;
}
.midpage-cta h3 {
  font-size: 1.6em;
  color: #1a237e;
  margin: 0 0 0.3em;
  font-weight: 700;
}
.midpage-cta p {
  color: #555;
  font-size: 1.05em;
  margin: 0 0 1.5em;
}
.midpage-cta-buttons {
  display: flex;
  gap: 1em;
  justify-content: center;
  flex-wrap: wrap;
}
.midpage-cta .btn-primary {
  display: inline-block;
  background: #1a237e;
  color: #fff;
  padding: 12px 28px;
  border-radius: 6px;
  font-weight: 600;
  font-size: 1em;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}
.midpage-cta .btn-primary:hover {
  background: #0d1557;
  transform: translateY(-2px);
  color: #fff;
}
.midpage-cta .btn-secondary {
  display: inline-block;
  background: transparent;
  color: #1a237e;
  padding: 12px 28px;
  border: 2px solid #1a237e;
  border-radius: 6px;
  font-weight: 600;
  font-size: 1em;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}
.midpage-cta .btn-secondary:hover {
  background: rgba(26, 35, 126, 0.08);
  transform: translateY(-2px);
}
@media (max-width: 480px) {
  .midpage-cta h3 { font-size: 1.3em; }
  .midpage-cta-buttons { flex-direction: column; align-items: center; }
  .midpage-cta .btn-primary,
  .midpage-cta .btn-secondary { width: 100%; max-width: 260px; text-align: center; }
}
