/* === Heading Section (Dark) === */
.heading {
  background: #0b3d0b;           
  color: #f7f5e7;
  padding: 3rem 1.5rem 1.5rem;
  text-align: center;
  margin-bottom: 0;
}

/* Force heading container to be narrower than global */
body .heading .container {
  max-width: 560px !important;   /* strict limit */
  margin: 0 auto !important;
  padding: 0 1rem !important;
  background: transparent !important;
}

.heading h1 {
  font-family: 'Playfair Display', serif;
  font-size: 2.4rem;
  font-weight: 700;
  color: #d4af37;                /* gold headline */
  margin-bottom: 1rem;
  line-height: 1.3;
}

.heading .subheadline {
  font-size: 1.2rem;
  line-height: 1.7;
  color: #f7f5e7;
  max-width: 640px;              /* keep even narrower than container */
  margin: 0 auto;
  padding: 0 1rem;
}

/* Responsive */
@media (max-width: 768px) {
  .heading {
    padding: 2.5rem 1rem 1.5rem;
  }

  .heading .container {
    max-width: 95%;
  }

  .heading h1 {
    font-size: 1.9rem;
  }

  .heading .subheadline {
    font-size: 1rem;
    line-height: 1.5;
    max-width: 90%;
  }
}
