/* Marketing Page Styles */

/* Hero */
.hero-section {
  position: relative;
  overflow: hidden;
}
.hero-image img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  display: block;
}
.hero-content {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 0 5%;
  color: #fff;
  text-shadow: 0 2px 12px rgba(0,0,0,0.35);
}
.hero-content h1 { font-size: 2.4rem; margin-bottom: 0.5rem; }
.hero-subtitle { font-size: 1.2rem; opacity: 0.95; }
.hero-description { max-width: 760px; margin-top: 0.75rem; line-height: 1.6; }

/* Overview */
.overview-section { padding: 56px 0; background: #fafafa; }
.content-wrapper { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 24px; align-items: center; }
.feature-image { width: 100%; border-radius: 8px; box-shadow: 0 6px 24px rgba(0,0,0,0.08); }
.text-content h2 { margin-bottom: 12px; }
.text-content p { margin-bottom: 12px; }

/* Services */
.services-section { padding: 56px 0; }
.section-title { text-align: center; margin-bottom: 24px; }
.services-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.service-card { background: #fff; border: 1px solid #eee; border-radius: 10px; padding: 20px; box-shadow: 0 6px 18px rgba(0,0,0,0.05); }
.service-card h3 { margin-bottom: 10px; }
.service-card p { margin-bottom: 10px; }
.service-features { list-style: disc; padding-left: 18px; color: #444; }
.service-features li { margin: 6px 0; }

/* Gallery */
.gallery-section { padding: 48px 0; background: #fafafa; }
.book-gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.book-cover { width: 100%; border-radius: 8px; box-shadow: 0 6px 18px rgba(0,0,0,0.06); }

/* CTA */
.cta-section { padding: 56px 0; }
.cta-content { text-align: center; max-width: 760px; margin: 0 auto; }
.cta-buttons { display: flex; gap: 12px; justify-content: center; margin-top: 16px; }

/* Responsive */
@media (max-width: 1024px) {
  .hero-image img { height: 360px; }
  .content-wrapper { grid-template-columns: 1fr; }
  .book-gallery { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 640px) {
  .hero-image img { height: 300px; }
  .hero-content h1 { font-size: 1.8rem; }
  .services-grid { grid-template-columns: 1fr; }
  .book-gallery { grid-template-columns: repeat(2, 1fr); }
}