/* A single, restrained canvas runs from the first section through the footer. */
.home #inner-wrap {
  --act-home-ink: #111827;
  --act-home-green: #16834a;
  --act-home-rule: rgba(36, 91, 60, 0.16);
  background-color: #fdfefd;
  background-image: radial-gradient(circle, rgba(53, 111, 74, 0.14) 0.65px, transparent 0.85px);
  background-size: 27px 27px;
}

.home #main,
.home #colophon {
  background-color: transparent !important;
}

.home #main .elementor-42 > .elementor-element-5452a918,
.home #main .elementor-42 > .elementor-element-29a58faa,
.home #main .elementor-42 > .elementor-element-6bc977c1,
.home #main .elementor-42 > .elementor-element-f69ba34,
.home #main .elementor-42 > .elementor-element-208ecf6b,
.home #main .elementor-42 > .elementor-element-75c5ff25,
.home #main .elementor-42 > .elementor-element-766217c5 {
  background: transparent !important;
}

.home #main .elementor-42 > .elementor-element-29a58faa,
.home #main .elementor-42 > .elementor-element-6bc977c1,
.home #main .elementor-42 > .elementor-element-f69ba34,
.home #main .elementor-42 > .elementor-element-208ecf6b,
.home #main .elementor-42 > .elementor-element-75c5ff25,
.home #main .elementor-42 > .elementor-element-766217c5 {
  border-top: 1px solid var(--act-home-rule);
  border-radius: 0 !important;
  padding-block: clamp(5.25rem, 7.5vw, 7.5rem) !important;
}

.home #main .elementor-42 > .elementor-element-5452a918 {
  padding-block: clamp(4.5rem, 6vw, 6.5rem) !important;
}

/* The training paths read as an open three-column index. */
.home #main .elementor-element-29a58faa {
  gap: clamp(3rem, 4.5vw, 5rem) !important;
  align-items: stretch !important;
}

.home #main [data-interaction-id="58876490"] {
  max-width: 20ch !important;
  text-align: left !important;
  align-self: flex-start;
}

.home #main .elementor-element-7b9774be {
  gap: clamp(1.5rem, 3vw, 3rem) !important;
}

.home #main .elementor-element-410a26a7,
.home #main .elementor-element-749b22e9,
.home #main .elementor-element-530cd624 {
  background: transparent !important;
  border: 0 !important;
  border-top: 2px solid rgba(22, 131, 74, 0.58) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.75rem 0 0 !important;
  gap: 1.2rem !important;
}

.home #main .elementor-element-410a26a7 .e-button-base,
.home #main .elementor-element-749b22e9 .e-button-base,
.home #main .elementor-element-530cd624 .e-button-base {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--act-home-green) !important;
  padding: 0 !important;
  text-align: left;
}

.home #main .elementor-element-410a26a7 .e-button-base:hover,
.home #main .elementor-element-749b22e9 .e-button-base:hover,
.home #main .elementor-element-530cd624 .e-button-base:hover {
  text-decoration: underline;
}

.home #main [data-interaction-id="1358a54d"] {
  align-self: flex-start;
  width: auto !important;
}

/* Trim the tall image so the fieldwork story has a calmer pace. */
.home #main .elementor-element-6bc977c1 {
  gap: clamp(3rem, 7vw, 7rem) !important;
}

.home #main .elementor-element-12e917b2 {
  height: clamp(25rem, 34vw, 31rem);
}

.home #main .elementor-element-12e917b2 img {
  height: 100%;
  object-fit: cover;
  object-position: center 40%;
}

body.home #main .elementor-42 .elementor-element-531f40e4 [data-interaction-id="71e06c44"] {
  font-size: clamp(2rem, 2.4vw, 2.5rem) !important;
  text-wrap: balance;
}

/* Evidence is presented as typography and fine rules, not color tiles. */
.home #main .elementor-element-f69ba34 {
  gap: 3rem !important;
}

.home #main .elementor-element-42b9f802 {
  gap: 0 !important;
}

.home #main .elementor-element-5527768d,
.home #main .elementor-element-311ad747,
.home #main .elementor-element-498fd9d6 {
  background: transparent !important;
  border-top: 2px solid rgba(22, 131, 74, 0.58);
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.7rem 2rem 0.5rem !important;
  gap: 1.2rem !important;
}

.home #main .elementor-element-5527768d {
  padding-left: 0 !important;
}

.home #main .elementor-element-311ad747,
.home #main .elementor-element-498fd9d6 {
  margin-left: 2rem;
}

.home #main .elementor-element-42b9f802 h3,
.home #main .elementor-element-42b9f802 p {
  color: var(--act-home-ink) !important;
}

.home #main .elementor-element-42b9f802 h3 {
  color: var(--act-home-green) !important;
}

/* The three client examples retain a light surface for legibility. */
.home #main .elementor-element-208ecf6b {
  gap: 1.75rem !important;
}

.home #main .elementor-element-467e3766 {
  gap: clamp(1rem, 2vw, 2rem) !important;
  margin-top: 1.7rem !important;
}

.home #main .elementor-element-467e3766 > article {
  box-shadow: 0 18px 48px rgba(26, 77, 43, 0.035);
}

/* Values become an editorial list alongside the photograph. */
.home #main .elementor-element-75c5ff25 {
  gap: clamp(3rem, 7vw, 7rem) !important;
}

.home #main .elementor-element-33f5d365 {
  height: clamp(26rem, 39vw, 35rem);
}

.home #main .elementor-element-33f5d365 img {
  height: 100%;
  object-fit: cover;
  object-position: center 40%;
}

.home #main .elementor-element-15d3fda7 {
  gap: 1.5rem 2rem !important;
}

.home #main .elementor-element-463abb14,
.home #main .elementor-element-586d2100,
.home #main .elementor-element-254802f9,
.home #main .elementor-element-67c6237b {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--act-home-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.1rem 0 0 !important;
  gap: 0.5rem !important;
}

/* Finish with an offset resource and a simple contact invitation. */
.home #main .elementor-element-766217c5 {
  align-items: flex-start !important;
  text-align: left !important;
  padding-left: clamp(2rem, 18vw, 17rem) !important;
}

.home #main .elementor-element-766217c5 > * {
  max-width: 50rem;
}

.home #main .elementor-element-2d0a22be {
  background: transparent !important;
  border-top: 1px solid var(--act-home-rule);
  border-bottom: 1px solid var(--act-home-rule);
  border-radius: 0 !important;
  margin-block: 0 !important;
  padding-block: clamp(4rem, 6vw, 6rem) !important;
}

.home #main [data-interaction-id="435765eb"],
.home #main [data-interaction-id="832eb82"] {
  color: var(--act-home-ink) !important;
}

@media (max-width: 767px) {
  .home #main .elementor-42 > .elementor-element-5452a918,
  .home #main .elementor-42 > .elementor-element-29a58faa,
  .home #main .elementor-42 > .elementor-element-6bc977c1,
  .home #main .elementor-42 > .elementor-element-f69ba34,
  .home #main .elementor-42 > .elementor-element-208ecf6b,
  .home #main .elementor-42 > .elementor-element-75c5ff25,
  .home #main .elementor-42 > .elementor-element-766217c5 {
    padding-block: 4.5rem !important;
  }

  .home #main .elementor-element-29a58faa {
    gap: 2.4rem !important;
  }

  .home #main .elementor-element-7b9774be {
    gap: 2rem !important;
  }

  .home #main .elementor-element-12e917b2,
  .home #main .elementor-element-33f5d365 {
    width: 100% !important;
    height: 22rem;
  }

  .home #main .elementor-element-42b9f802 {
    gap: 1.25rem !important;
  }

  .home #main .elementor-element-5527768d,
  .home #main .elementor-element-311ad747,
  .home #main .elementor-element-498fd9d6 {
    margin-left: 0;
    padding-left: 0 !important;
  }

  .home #main .elementor-element-15d3fda7 {
    gap: 1.5rem !important;
  }

  .home #main .elementor-element-766217c5 {
    padding-left: 16px !important;
  }

  .home #main .elementor-element-2d0a22be {
    padding-inline: 1rem !important;
  }
}
