.home .elementor-widget-image {
    max-width: 800px;
}

/* == Hero Section == */
.hl-hero {
  background: #fff;              /* bg-white */
}

.hl-container {
  max-width: 56rem;              /* max-w-4xl */
  margin: 0 auto;                /* mx-auto */
  padding: 0 1rem;               /* px-4 */
  text-align: center;            /* text-center */
}
.hl-hero-title {
  font-size: 1.875rem;           /* text-3xl */
  font-weight: 700;              /* font-bold */
  color: #2c2b2b;
  display: inline-block;
  padding: 0.25rem 0.5rem;
  margin-bottom: 1rem;           /* mb-4 */
}
@media (min-width: 40rem) {
  .hl-hero-title {
    font-size: 2.25rem;          /* sm:text-4xl */
  }
}
.hl-hero-subtitle {
  font-size: 1.125rem;           /* text-lg */
  color: #4b5563;                /* text-gray-600 */
  margin-bottom: 4rem;           /* mb-16 */
}

/* == Features Grid == */
.hl-features {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;                     /* gap-8 */
  margin-bottom: 3rem;           /* mb-12 */
}
@media (min-width: 48rem) {
  .hl-features {
    grid-template-columns: repeat(3,1fr);  /* md:grid-cols-3 */
  }
}
.hl-feature {
  display: flex;
  flex-direction: column;
  align-items: center;           /* items-center */
}
.hl-feature-icon {
  font-size: 3rem;               /* text-5xl */
  margin-bottom: 1rem;           /* mb-4 */
}
.hl-icon-blue    { color: #3498db; }
.hl-icon-green   { color: #2ecc71; }
.hl-icon-purple  { color: #9b59b6; }
.hl-feature-title {
  font-size: 1.125rem;           /* text-lg */
  font-weight: 600;              /* font-semibold */
  color: #374151;                /* text-gray-700 */
  margin-bottom: 0.5rem;         /* mb-2 */
}
.hl-feature-text {
  font-size: 1.125rem;           /* text-lg */
  color: #6b7280;                /* text-gray-500 */
}

/* == Demo Header == */
.hl-demo {
  padding: 2rem 0;               /* py-8 */
}
.hl-demo-header {
  max-width: 56rem;
  margin: 0 auto 0.5rem;
}
.hl-demo-title {
  font-size: 1.875rem;
  font-weight: 700;
  color: #1f2937;                /* text-gray-900 */
  margin-bottom: 1rem;
}
@media (min-width: 40rem) {
  .hl-demo-title {
    font-size: 2.25rem;
  }
}

/* == Conversations wrapper == */
.hl-convo-wrapper {
  max-width: 80rem;              /* max-w-7xl */
  margin: 0 auto;
  padding-left: 0.5rem;          /* px-2 */
  padding-right: 0.5rem;
}
