/* ========================================
   Layout — BIS Consult
   ======================================== */

.container {
  width: 100%;
  max-width: var(--container-max);
  margin: 0 auto;
  padding-left: var(--container-pad);
  padding-right: var(--container-pad);
}

.section {
  padding: var(--sp-16) 0;
}

/* Alternating section backgrounds */
.hero       { background-color: var(--c-primary); }
.pain       { background-color: var(--c-primary-light); }
.services   { background-color: var(--c-primary); }
.packages   { background-color: var(--c-primary-light); }
.expertise  { background-color: var(--c-primary); }
.lead-magnet { background-color: var(--c-primary); position: relative; overflow: hidden; }
.contact    { background-color: var(--c-primary-light); }

/* Section titles */
.section__title {
  font-size: var(--fs-2xl);
  font-weight: var(--fw-bold);
  text-align: center;
  margin-bottom: var(--sp-3);
}

.section__title--left {
  text-align: left;
}

.section__subtitle {
  font-size: var(--fs-md);
  color: var(--c-text-muted);
  text-align: center;
  max-width: 600px;
  margin: 0 auto var(--sp-12);
}

/* Form layout helpers */
.form-row {
  display: grid;
  gap: var(--sp-4);
}

/* ========================================
   Responsive Breakpoints (mobile-first)
   ======================================== */

@media (min-width: 480px) {
  :root {
    --container-pad: var(--sp-6);
  }

  .section__title {
    font-size: var(--fs-2xl);
  }
}

@media (min-width: 768px) {
  :root {
    --container-pad: var(--sp-8);
  }

  .section {
    padding: var(--sp-20) 0;
  }

  .section__title {
    font-size: var(--fs-3xl);
  }

  .form-row {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  :root {
    --container-pad: var(--sp-10);
  }

  .section {
    padding: var(--sp-24) 0;
  }

  .section__title {
    font-size: var(--fs-3xl);
  }
}

@media (min-width: 1280px) {
  .section__title {
    font-size: var(--fs-4xl);
  }
}
