@import url("components/layout.1c341fa8e442.css");
@import url("components/hero.9f7e5802687a.css");
@import url("components/partner.cfb57ded366d.css");
@import url("components/problem.7d7e7794c460.css");
@import url("components/service.277dba3b2511.css");
@import url("components/tools.7a1919c97722.css");
@import url("components/customer.840a70cfbe23.css");
@import url("components/process.1bdb5440dc31.css");
@import url("components/testimonials.ea7f95953c75.css");
@import url("components/faq.fd5f0894dec6.css");
@import url("components/cta.7eb85dfeb62e.css");
@import url("components/service_detail.8f7bb756754e.css");

/* Keep the homepage sections visually related while allowing each section to
   retain its own surface treatment. */
.homepage-sections > section {
  isolation: isolate;
  position: relative;
}

.homepage-sections .section-heading {
  margin-bottom: clamp(2rem, 4vw, 3rem);
}

.homepage-sections .section-heading h2 {
  max-width: 42rem;
}

/* Keep section separators intentional and explicit. */
.homepage-sections > section.problem-section,
.homepage-sections > section#sectors,
.homepage-sections > section#services,
.homepage-sections > section.section-dark,
.homepage-sections > section.faq-section {
  border-top: var(--border-hairline);
}

.homepage-sections .partner-section {
  background: var(--color-secondary-bg);
  border-top: var(--border-hairline);
}

/* Alternate the existing palette across the homepage so adjacent sections
   feel connected without making every section look like the same block. */
.homepage-sections > section.problem-section {
  background: var(--color-bg);
}

.homepage-sections #sectors {
  background: var(--color-secondary-bg);
}

.homepage-sections #sectors > .container {
  background: transparent;
}

.homepage-sections #services {
  background: var(--color-bg);
}

.homepage-sections #tools {
  background: var(--color-secondary-bg);
  border-block: var(--border-hairline);
  color: var(--color-dark);
}

.homepage-sections #tools .tool-card {
  background: var(--color-bg);
  border-color: #d8cfc2;
  box-shadow: none;
}

.homepage-sections #tools .tool-card p,
.homepage-sections #tools .section-heading > p:last-child {
  color: inherit;
}

.homepage-sections .section-dark {
  border-top: 0;
}

.homepage-sections section.faq-section,
.homepage-sections .cta-section {
  background: var(--color-bg);
}

.homepage-sections section.faq-section {
  background: var(--color-secondary-bg);
  border-block: var(--border-hairline);
}

.homepage-sections section.faq-section {
  align-items: start;
}

.homepage-sections section.faq-section > .container > div:first-child {
  align-self: start;
  position: sticky;
  top: 1.5rem;
}

@media (max-width: 700px) {
  .homepage-sections .container {
    width: min(100% - 2rem, 1160px);
  }

  .homepage-sections .section-heading {
    margin-bottom: 2rem;
  }

  .homepage-sections section.faq-section > .container > div:first-child {
    position: static;
  }
}
