.hh-story-card,
.hh-story .hh-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  text-align: left;
}

.hh-story-card--calm,
.hh-story .hh-card--white,
.hh-story-card--storm,
.hh-story .hh-card--sand {
  background: transparent;
  border: 0;
}

.hh-story-card--calm::before,
.hh-story-card--storm::before {
  background: linear-gradient(90deg, var(--hh-brand), transparent);
  border-radius: var(--hh-radius-pill);
  content: "";
  display: block;
  height: 0.25rem;
  margin-bottom: 1.35rem;
  max-width: 36rem;
  width: 50%;
}

.hh-story-card--storm::before {
  background: linear-gradient(90deg, var(--hh-accent-deep), transparent);
}

.hh-story-card p,
.hh-story .hh-card p {
  color: var(--hh-ink-muted);
  font-size: clamp(1rem, 1.8vw, 1.0625rem);
  line-height: 1.75;
  margin-bottom: 1rem;
  margin-inline: 0;
  max-width: 36rem;
  text-align: left;
}

.hh-story-card p:first-child,
.hh-story .hh-card p:first-child {
  color: var(--hh-ink);
  font-size: clamp(1.0625rem, 1.9vw, 1.125rem);
  line-height: 1.65;
}

.hh-story-card p:last-child,
.hh-story .hh-card p:last-child {
  margin-bottom: 0;
}

.hh-pillars__inner {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-inline: auto;
  max-width: min(56rem, 100%);
  padding: 0;
}

.hh-pillars__title,
.hh-pillars .hh-panel h2 {
  font-size: clamp(1.5rem, 2vw + 0.75rem, 2.25rem);
  line-height: 1.2;
  margin-bottom: 0;
  margin-inline: auto;
  max-width: min(42rem, 100%);
  text-align: center;
  text-wrap: balance;
}

@media (max-width: 781px) {
  .hh-pillars__title,
  .hh-pillars .hh-panel h2 {
    font-size: clamp(1.75rem, 5.5vw + 0.5rem, 2.15rem);
    line-height: 1.22;
  }
}

.hh-pillars__title::after,
.hh-pillars .hh-panel h2::after {
  background: linear-gradient(
    90deg,
    var(--hh-brand),
    color-mix(in srgb, var(--hh-accent-deep) 75%, var(--hh-brand))
  );
  border-radius: var(--hh-radius-pill);
  content: "";
  display: block;
  height: 0.25rem;
  margin: clamp(1.15rem, 2.5vw, 1.65rem) auto clamp(2rem, 4vw, 2.75rem);
  max-width: 14rem;
  width: 50%;
}

.hh-pillars__steps,
.hh-pillars .hh-panel {
  background: transparent;
  border: 0;
  box-shadow: none;
  margin-inline: auto;
  max-width: 100%;
  padding: 0 0 0 clamp(1.25rem, 2.5vw, 2rem);
  position: relative;
  text-align: left;
}

.hh-pillars__steps::before,
.hh-pillars .hh-panel::before {
  background: linear-gradient(
    180deg,
    var(--hh-brand),
    color-mix(in srgb, var(--hh-accent-deep) 70%, var(--hh-brand)) 72%,
    transparent
  );
  border-radius: var(--hh-radius-pill);
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  top: 0;
  width: 3px;
}

.hh-pillars__steps > p,
.hh-pillars .hh-panel > p {
  color: var(--hh-ink-muted);
  font-size: clamp(1rem, 1.8vw, 1.0625rem);
  line-height: 1.75;
  margin-bottom: var(--hh-space-p-p);
  max-width: none;
}

.hh-pillars__steps > p:first-child,
.hh-pillars .hh-panel > p:first-of-type {
  color: var(--hh-ink);
  font-size: clamp(1.0625rem, 1.9vw, 1.125rem);
  line-height: 1.65;
}

.hh-pillars__steps > p:last-child,
.hh-pillars .hh-panel > p:last-child {
  margin-bottom: 0;
}

.hh-about__image img {
  aspect-ratio: 4 / 5;
  border-radius: 2rem;
  display: block;
  object-fit: cover;
  width: 100%;
}

.hh-about__content .hh-kicker {
  margin-bottom: 0.5rem;
}

.hh-about__teaser {
  max-width: var(--hh-prose-max);
}

.hh-about__teaser:last-of-type {
  margin-bottom: 0;
}

.hh-about__actions {
  margin-top: clamp(1.25rem, 2.5vw, 1.75rem);
}

.hh-about__actions .wp-block-button__link,
.hh-about__actions .is-style-outline .wp-block-button__link {
  background: var(--hh-brand) !important;
  border: 2px solid var(--hh-brand) !important;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--hh-brand) 22%, transparent);
  color: #fff !important;
  font-size: clamp(0.9375rem, 1.5vw, 1rem);
  padding: 0.7rem 1.35rem;
}

.hh-about__actions .wp-block-button__link:hover,
.hh-about__actions .is-style-outline .wp-block-button__link:hover {
  background: var(--hh-brand-dark) !important;
  border-color: var(--hh-brand-dark) !important;
  box-shadow: 0 12px 28px
    color-mix(in srgb, var(--hh-brand-dark) 24%, transparent);
  color: #fff !important;
  transform: translateY(-1px);
}

.hh-about-page--intro {
  padding: var(--hh-section-y) var(--hh-section-x);
}

.hh-about-page--intro .hh-kicker {
  margin-bottom: 0.75rem;
}

.hh-about-page--intro h1 {
  margin-bottom: var(--hh-space-h1-content);
}

.hh-about-page--intro p {
  margin-bottom: var(--hh-space-p-p);
  max-width: var(--hh-prose-max);
}

.hh-about-page--intro p:last-child {
  margin-bottom: 0;
}

.hh-about-essence__inner,
.hh-about-compass__inner,
.hh-about-method__wrap {
  margin-inline: auto;
  max-width: min(1200px, 100%);
}

.hh-about-essence__inner h2,
.hh-about-compass__inner > .wp-block-heading,
.hh-about-compass__inner > h2,
.hh-about-calling__inner h2,
.hh-about-method__wrap > .hh-kicker + h2 {
  margin-bottom: var(--hh-space-h2-p);
  text-align: center;
}

.hh-about-essence__card {
  background: color-mix(in srgb, white 78%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 16%, transparent);
  border-radius: 2rem;
  box-shadow: var(--hh-shadow);
  margin-inline: auto;
  max-width: 100%;
  padding: clamp(1.5rem, 3vw, 2.5rem);
}

.hh-about-essence__card p {
  margin-bottom: var(--hh-space-p-p);
  max-width: none;
}

.hh-about-essence__card p:last-child {
  margin-bottom: 0;
}

.hh-about-essence__closing {
  margin-top: var(--hh-space-h2-p);
}

.hh-about-compass {
  padding-bottom: var(--hh-section-y);
  position: relative;
  z-index: 1;
}

.hh-about-compass__inner {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: clamp(1.75rem, 3.5vw, 2.75rem);
  padding-bottom: 0.5rem;
}

.hh-about-compass__inner > h2,
.hh-about-compass__inner > .wp-block-heading {
  margin-bottom: 0;
  text-align: center;
}

.hh-about-compass__grid {
  align-items: stretch;
  display: grid;
  flex-wrap: nowrap;
  gap: clamp(1.25rem, 3vw, 2rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  width: 100%;
}

.hh-about-compass__grid.wp-block-columns {
  margin-bottom: 0;
}

.hh-about-compass__grid > .wp-block-column {
  min-width: 0;
}

.hh-about-compass__card {
  background: color-mix(in srgb, white 76%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 14%, transparent);
  border-radius: 1.75rem;
  box-shadow: 0 16px 40px color-mix(in srgb, var(--hh-ink) 7%, transparent);
  height: auto;
  min-height: 0;
  padding: clamp(1.35rem, 2.5vw, 2rem);
}

.hh-about-compass__card--questions {
  background: linear-gradient(
    165deg,
    color-mix(in srgb, var(--hh-brand) 16%, white),
    color-mix(in srgb, white 78%, var(--hh-sand))
  );
}

.hh-about-compass__card--needs {
  background: linear-gradient(
    165deg,
    color-mix(in srgb, var(--hh-accent) 14%, white),
    color-mix(in srgb, white 76%, var(--hh-sand))
  );
  border-color: color-mix(in srgb, var(--hh-accent) 22%, transparent);
}

.hh-about-compass__card .wp-block-list {
  list-style: none;
  padding-left: 0;
}

.hh-about-compass__card--questions .wp-block-list li {
  padding-left: 1.65rem;
  position: relative;
}

.hh-about-compass__card--questions .wp-block-list li::before {
  color: var(--hh-brand-dark);
  content: "?";
  font-family: var(--hh-font-heading);
  font-weight: 700;
  left: 0;
  position: absolute;
}

.hh-about-compass__card--needs .wp-block-list li {
  padding-left: 1.65rem;
  position: relative;
}

.hh-about-compass__card--needs .wp-block-list li::before {
  color: var(--hh-accent-deep);
  content: "✓";
  font-weight: 700;
  left: 0;
  position: absolute;
}

.hh-about-calling {
  --hh-about-calling-band: color-mix(
    in srgb,
    var(--hh-accent-deep) 72%,
    var(--hh-sand-deep)
  );
  border-bottom: clamp(0.75rem, 1.6vh, 1.1rem) solid
    var(--hh-about-calling-band);
  border-top: clamp(0.75rem, 1.6vh, 1.1rem) solid var(--hh-about-calling-band);
  margin-top: 0;
  padding-block: var(--hh-section-y);
  position: relative;
  z-index: 2;
}

.hh-about-calling__inner {
  margin-inline: auto;
  max-width: min(1200px, 100%);
}

.hh-about-calling .wp-block-columns,
.hh-about-calling__grid {
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  margin-inline: auto;
  max-width: min(46rem, 100%);
  width: 100%;
}

.hh-about-calling .wp-block-column {
  flex-basis: auto;
  margin-inline: auto;
  max-width: min(42rem, 100%);
  width: 100%;
}

.hh-about-calling__media,
.hh-about-calling .wp-block-column:has(.hh-photo-slot) {
  justify-self: center;
  max-width: min(20rem, 100%);
}

.hh-about-calling .hh-kicker,
.hh-about-calling h2,
.hh-about-calling p {
  margin-inline: auto;
  max-width: none;
  text-align: center;
}

.hh-about-calling .hh-kicker--calling {
  color: color-mix(in srgb, var(--hh-accent-deep) 88%, var(--hh-ink));
}

.hh-about-calling__highlight {
  margin-top: var(--hh-space-h2-p);
}

.hh-about-method {
  box-sizing: border-box;
  margin-bottom: 0;
  padding-inline: var(--hh-section-x);
}

.hh-about-method__wrap,
.hh-about-method__grid,
.hh-about-method .wp-block-columns {
  box-sizing: border-box;
  margin-inline: auto;
  max-width: min(1200px, calc(100vw - 2 * var(--hh-section-x)));
  width: 100%;
}

.hh-about-method__grid {
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3rem);
}

.hh-about-method__grid > .wp-block-column {
  box-sizing: border-box;
  min-width: 0;
}

@media (min-width: 1025px) {

  .hh-about-method__grid {
    grid-template-columns: minmax(0, min(20rem, 32%)) minmax(0, 1fr);
  }

  .hh-about-method__grid > .wp-block-column {
    max-width: none;
    width: 100%;
  }

  .hh-about-method__body h2 {
    text-align: left;
  }
}

.hh-about-method__body h2 {
  margin-bottom: var(--hh-space-h2-p);
  margin-top: 0;
}

.hh-about-method__body {
  background: color-mix(in srgb, white 76%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 14%, transparent);
  border-radius: 1.75rem;
  box-shadow: 0 20px 50px color-mix(in srgb, var(--hh-ink) 8%, transparent);
  box-sizing: border-box;
  padding: clamp(1.35rem, 2.5vw, 2rem);
}

.hh-about-method__body p:last-child {
  margin-bottom: 0;
}

.hh-about-method__cta {
  margin-top: clamp(2rem, 4vw, 3rem);
}

@media (max-width: 1024px) {
  .hh-about-method__grid,
  .hh-about-method .wp-block-columns {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .hh-about-method .wp-block-column {
    box-sizing: border-box;
    flex-basis: auto;
    margin-inline: auto;
    max-width: 100%;
    width: 100%;
  }

  .hh-about-method__media-col .hh-photo-slot img {
    margin-inline: auto;
    max-height: min(24rem, 70vw);
    width: 100%;
  }

  .wp-block-post-content > .wp-block-group.hh-about-method .hh-about-method__body h2,
  .wp-block-post-content > .wp-block-group.hh-about-method .hh-about-method__body p,
  .hh-about-method .hh-about-method__body h2,
  .hh-about-method .hh-about-method__body p {
    margin-inline: auto;
    max-width: none;
    text-align: center;
  }
}

@media (max-width: 781px) {
  .hh-investment {
    gap: 1rem;
  }

  .hh-guarantee :is(h2, h3, h4, .wp-block-heading) {
    font-size: clamp(1.75rem, 5.5vw + 0.5rem, 2.15rem);
    line-height: 1.22;
  }

  .hh-investment__card,
  .hh-investment .hh-panel {
    padding: 1rem;
  }

  .hh-investment__grid {
    grid-template-columns: 1fr;
  }

  .hh-fit,
  .hh-fit.hh-transformation-cards {
    padding-inline: 0;
  }

  .hh-fit .hh-fit__grid,
  .hh-fit .wp-block-columns.hh-fit__grid {
    gap: 1rem;
    margin-inline: 0;
    max-width: none;
    padding-inline: 0;
    width: 100%;
  }

  .hh-fit-card,
  .hh-fit .hh-card,
  .hh-fit .wp-block-column.hh-fit-card {
    box-sizing: border-box;
    padding: 0 0 1rem;
  }

  .hh-fit .wp-block-column.hh-fit-card--no,
  .hh-fit-card.hh-fit-card--no {
    padding: 1rem;
  }

  .hh-fit-card :is(h2, h3, h4, p, li),
  .hh-fit-card .wp-block-list,
  .hh-fit .wp-block-column.hh-fit-card :is(h2, h3, h4, p, li) {
    max-width: none;
    width: 100%;
  }

  .hh-about-method .wp-block-column.hh-about-method__media-col {
    max-width: min(16rem, 70vw);
  }

  .hh-about-method__media-col .hh-photo-slot img {
    max-height: min(20rem, 70vw);
  }

  .hh-about-method__body {
    border-radius: 1.25rem;
    padding: 1.25rem 1.1rem;
  }
}

@media (max-width: 900px) {
  .hh-about-compass__grid {
    grid-template-columns: 1fr;
  }

  .hh-about-page__intro-grid,
  .hh-about__grid,
  .hh-about-essence__grid,
  .hh-about-calling__grid,
  .hh-about-method__grid,
  .hh-work__grid {
    grid-template-columns: 1fr;
  }

  .hh-about-calling__copy .hh-kicker,
  .hh-about-calling__copy h2,
  .hh-about-calling__copy p {
    text-align: center;
  }

  .hh-photo-slot--portrait img {
    max-height: min(20rem, 55vw);
  }

  .hh-photo-slot--landscape img {
    max-height: min(14rem, 45vw);
  }

  .hh-investment__aside .hh-photo-slot--square {
    margin-inline: auto;
    max-width: 11rem;
  }
}

.hh-work__grid > .wp-block-column:not(.hh-work__body) :is(h2, h3, h4),
.hh-work__grid > .wp-block-column:not(.hh-work__body) :is(h2, h3, h4).wp-block-heading,
.hh-work__media-col :is(h2, h3, h4),
.hh-work__media-col :is(h2, h3, h4).wp-block-heading,
.hh-work__title {
  color: var(--hh-brand-dark);
  font-size: clamp(1.5rem, 2vw + 0.75rem, 2.25rem);
  line-height: 1.2;
  margin-bottom: var(--hh-space-h2-p);
  margin-top: 0;
  text-align: center;
  text-wrap: balance;
}

@media (max-width: 781px) {
  .hh-work__grid > .wp-block-column:not(.hh-work__body) :is(h2, h3, h4),
  .hh-work__grid > .wp-block-column:not(.hh-work__body) :is(h2, h3, h4).wp-block-heading,
  .hh-work__media-col :is(h2, h3, h4),
  .hh-work__media-col :is(h2, h3, h4).wp-block-heading,
  .hh-work__title {
    font-size: clamp(1.75rem, 5.5vw + 0.5rem, 2.15rem);
    line-height: 1.22;
  }
}

.hh-work__body h2,
.hh-work__body .wp-block-heading,
.hh-work .hh-panel h2 {
  color: var(--hh-brand-dark);
  margin-bottom: var(--hh-space-h2-p);
  margin-top: 0;
  text-align: center;
}

.hh-work__body,
.hh-work .hh-panel {
  background: color-mix(in srgb, white 76%, var(--hh-sand));
  border: 2px solid var(--hh-brand);
  border-radius: 1.75rem;
  box-shadow: 0 20px 50px color-mix(in srgb, var(--hh-ink) 8%, transparent);
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
  overflow-wrap: break-word;
  padding: clamp(1.35rem, 2.5vw, 2rem);
}

.hh-work__body :is(p, li),
.hh-work .hh-panel :is(p, li) {
  max-width: 100%;
  overflow-wrap: break-word;
}

.hh-work__body p:last-child,
.hh-work .hh-panel p:last-child {
  margin-bottom: 0;
}

.hh-work__body:has(.hh-work__panel) .hh-work__panel {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.hh-fit-card,
.hh-fit .hh-card,
.hh-fit .wp-block-column.hh-fit-card {
  background: color-mix(in srgb, white 86%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 16%, transparent);
  border-radius: 1.75rem;
  box-shadow: var(--hh-shadow);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  height: 100%;
  max-width: 100%;
  min-height: 100%;
  padding: clamp(1.35rem, 2.5vw, 2rem);
  width: 100%;
}

.hh-fit .hh-fit__grid,
.hh-fit .wp-block-columns.hh-fit__grid {
  align-items: stretch;
}

.hh-fit-card :is(h2, h3),
.hh-fit-card :is(h2, h3).wp-block-heading,
.hh-fit .hh-card :is(h2, h3) {
  margin-block: 0 1rem;
}

.hh-fit-card :is(h2, h3, h4, p, li),
.hh-fit-card .wp-block-list {
  max-width: none;
  width: 100%;
}

.hh-fit .wp-block-column.hh-fit-card--yes,
.hh-fit-card.hh-fit-card--yes,
.hh-fit .hh-card--white {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.hh-fit .wp-block-column.hh-fit-card--no,
.hh-fit-card.hh-fit-card--no,
.hh-fit .hh-card--sand {
  background: linear-gradient(
    165deg,
    color-mix(in srgb, var(--hh-accent) 14%, white),
    color-mix(in srgb, white 88%, var(--hh-sand))
  );
  border-color: color-mix(in srgb, var(--hh-accent) 22%, transparent);
}

.hh-fit-card--yes .wp-block-list,
.hh-fit .hh-card--white .wp-block-list {
  list-style: none;
  padding-left: 0;
}

.hh-fit-card--yes .wp-block-list li,
.hh-fit .hh-card--white .wp-block-list li {
  padding-left: 1.65rem;
  position: relative;
}

.hh-fit-card--yes .wp-block-list li::before,
.hh-fit .hh-card--white .wp-block-list li::before {
  color: var(--hh-brand-dark);
  content: "✓";
  font-weight: 700;
  left: 0;
  position: absolute;
}

.hh-fit-card--no .wp-block-list li::marker,
.hh-fit .hh-card--sand .wp-block-list li::marker {
  color: var(--hh-accent-deep);
}

.hh-investment {
  gap: 1rem;
}

.hh-guarantee {
  padding: 0;
  text-align: center;
}

.hh-guarantee :is(h2, h3, h4, .wp-block-heading) {
  font-size: clamp(1.5rem, 2vw + 0.75rem, 2.25rem);
  line-height: 1.2;
  margin-bottom: 0;
  margin-inline: auto;
  max-width: min(42rem, 100%);
  text-align: center;
  text-wrap: balance;
}

.hh-guarantee p {
  margin-inline: auto;
  max-width: var(--hh-prose-max);
  text-align: center;
}

.hh-investment__card,
.hh-investment .hh-panel {
  background: color-mix(in srgb, white 80%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 18%, transparent);
  border-radius: 2rem;
  box-shadow: var(--hh-shadow);
  margin-inline: auto;
  max-width: min(1100px, 100%);
  padding: clamp(1.5rem, 3vw, 2.5rem);
}

.hh-investment__grid {
  align-items: center;
  display: grid;
  gap: clamp(1.5rem, 4vw, 3rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hh-investment__aside {
  display: grid;
  gap: 1rem;
}

.hh-investment__aside .wp-block-buttons {
  justify-content: flex-start;
}

.hh-cta__inner,
.hh-cta .hh-panel {
  background: transparent;
  border: 0;
  box-shadow: none;
  margin-inline: auto;
  max-width: min(720px, 100%);
  padding: 0;
}

.hh-cta__inner h2,
.hh-cta .hh-panel h2 {
  margin-bottom: var(--hh-space-h2-p);
}

.hh-cta__inner p,
.hh-cta .hh-panel p {
  margin-inline: auto;
  max-width: var(--hh-prose-max);
  text-align: center;
}

.hh-cta__actions,
.hh-cta .wp-block-buttons {
  justify-content: center;
  margin-top: clamp(1.25rem, 2.5vw, 1.75rem);
}

.hh-zusammenarbeit--hero {
  padding-block: var(--hh-section-y);
}

.hh-zusammenarbeit__hero-copy h1 {
  margin-bottom: 0.75rem;
}

.hh-zusammenarbeit__meta {
  color: var(--hh-brand-dark);
  font-family: var(--hh-font-body);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin-top: 1.25rem;
}

.hh-zusammenarbeit__purpose,
.hh-zusammenarbeit__session,
.hh-zusammenarbeit__format,
.hh-zusammenarbeit__faq {
  padding-block: var(--hh-section-y);
}

.hh-zusammenarbeit__purpose {
  background: color-mix(in srgb, var(--hh-sand-light) 45%, white);
  padding-block: clamp(2.75rem, 6vw, 4.5rem);
  position: relative;
  text-align: center;
}

.hh-zusammenarbeit__purpose-inner {
  margin-inline: auto;
  max-width: min(72rem, 100%);
  position: relative;
}

.hh-zusammenarbeit__purpose > h2,
.hh-zusammenarbeit__purpose-inner > h2,
.hh-zusammenarbeit__outcomes-label,
.hh-zusammenarbeit__purpose-outcomes > .hh-zusammenarbeit__outcomes-label,
.hh-zusammenarbeit__purpose-inner .hh-zusammenarbeit__outcomes-label,
.hh-zusammenarbeit__purpose > p:has(+ ul),
.hh-zusammenarbeit__purpose-inner > p:has(+ ul) {
  color: var(--hh-ink);
  font-family: var(--hh-font-brand);
  font-size: clamp(1.5rem, 2vw + 0.75rem, 2.25rem);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin-bottom: 0;
  margin-inline: auto;
  max-width: min(36rem, 100%);
  text-align: center;
  text-transform: none;
  text-wrap: balance;
}

.hh-zusammenarbeit__purpose > h2::after,
.hh-zusammenarbeit__purpose-inner > h2::after,
.hh-zusammenarbeit__outcomes-label::after,
.hh-zusammenarbeit__purpose > p:has(+ ul)::after,
.hh-zusammenarbeit__purpose-inner > p:has(+ ul)::after {
  background: linear-gradient(
    90deg,
    transparent,
    var(--hh-brand),
    transparent
  );
  border-radius: var(--hh-radius-pill);
  content: "";
  display: block;
  height: 1px;
  margin: clamp(1rem, 2vw, 1.35rem) auto clamp(1.75rem, 3vw, 2.25rem);
  max-width: 12rem;
  opacity: 0.85;
  position: relative;
  width: 100%;
}

.hh-zusammenarbeit__purpose > p:has(+ ul)::before {
  background: none;
  content: none;
  display: none;
}

.hh-zusammenarbeit__purpose > p:not(:has(+ ul)):not(:last-of-type),
.hh-zusammenarbeit__purpose-inner
  > p:not(.hh-zusammenarbeit__purpose-closing):not(.hh-zusammenarbeit__outcomes-label):not(
    .hh-zusammenarbeit__outcomes-ornament
  ) {
  color: var(--hh-ink-muted);
  font-family: var(--hh-font-brand);
  font-size: clamp(1.0625rem, 1.4vw, 1.125rem);
  line-height: 1.75;
  margin-inline: auto;
  margin-bottom: var(--hh-space-p-p);
  max-width: min(38rem, 100%);
  text-align: center;
}

.hh-zusammenarbeit__purpose-outcomes {
  margin-top: clamp(1.5rem, 3vw, 2.25rem);
}

.hh-zusammenarbeit__outcomes-ornament {
  color: var(--hh-brand-dark);
  display: grid;
  height: auto;
  margin: 0 auto 0.75rem;
  max-width: none;
  place-items: center;
  width: auto;
}

.hh-zusammenarbeit__outcomes-ornament .hh-icon {
  height: 1.75rem;
  width: 1.75rem;
}

.hh-zusammenarbeit__outcomes-card {
  background: transparent;
  border: 0;
  box-shadow: none;
  margin: clamp(1.5rem, 3vw, 2.25rem) auto 0;
  max-width: 100%;
  padding: 0;
}

.hh-zusammenarbeit__outcomes-grid > .wp-block-column,
.hh-zusammenarbeit__outcomes-grid.wp-block-columns > .wp-block-column {
  flex-basis: auto;
  margin-inline: 0;
  max-width: none;
  min-width: 0;
  width: 100%;
}

.hh-zusammenarbeit__outcomes-grid.wp-block-columns,
.hh-zusammenarbeit__outcomes-grid {
  align-items: stretch;
  box-sizing: border-box;
  display: grid;
  gap: clamp(0.75rem, 1.5vw, 1.15rem);
  grid-template-columns: repeat(5, minmax(0, 1fr));
  justify-items: stretch;
  margin-bottom: clamp(2.5rem, 5vw, 3.75rem);
  margin-inline: auto;
  max-width: 100%;
  width: 100%;
}

.hh-zusammenarbeit__outcomes-grid.wp-block-columns {
  flex-wrap: nowrap;
}

.hh-zusammenarbeit__outcome {
  background: color-mix(in srgb, white 92%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 10%, white);
  border-radius: 1.15rem;
  box-shadow: 0 10px 28px color-mix(in srgb, var(--hh-ink) 6%, transparent);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
  min-height: 0;
  min-width: 0;
  padding: clamp(1.15rem, 2vw, 1.45rem) clamp(0.85rem, 1.5vw, 1rem)
    clamp(1.25rem, 2vw, 1.5rem);
}

.hh-zusammenarbeit__outcome-icon {
  align-items: center;
  aspect-ratio: 1;
  background: color-mix(in srgb, var(--hh-brand) 26%, white);
  border-radius: 62% 38% 54% 46% / 42% 58% 40% 60%;
  color: var(--hh-brand-dark);
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  margin: 0 auto clamp(1.5rem, 2.8vw, 1.85rem);
  max-width: 4.85rem;
  position: relative;
  width: min(4.85rem, 68%);
}

.hh-zusammenarbeit__outcome-icon .hh-icon {
  height: 1.9rem;
  width: 1.9rem;
}

.hh-zusammenarbeit__outcome p {
  color: var(--hh-ink-muted);
  font-family: var(--hh-font-brand);
  font-size: clamp(0.875rem, 1.2vw, 0.95rem);
  line-height: 1.45;
  margin: 0;
  max-width: none;
  text-align: center;
}

.hh-zusammenarbeit__outcome p::before {
  background: color-mix(in srgb, var(--hh-brand) 35%, transparent);
  content: "";
  display: block;
  height: 1px;
  margin: clamp(0.35rem, 0.8vw, 0.5rem) auto clamp(0.9rem, 1.5vw, 1.1rem);
  width: 1.75rem;
}

/* DB fallback: plain list → card grid */
.hh-zusammenarbeit__outcomes-card .hh-zusammenarbeit__outcomes,
.hh-zusammenarbeit__purpose > ul,
.hh-zusammenarbeit__purpose > ul.wp-block-list {
  box-sizing: border-box;
  display: grid;
  gap: clamp(0.75rem, 1.5vw, 1.15rem);
  grid-template-columns: repeat(5, minmax(0, 1fr));
  justify-items: stretch;
  list-style: none;
  margin: 0 auto clamp(2.5rem, 5vw, 3.75rem);
  max-width: 100%;
  padding: 0;
  padding-inline: 0;
  width: 100%;
}

.hh-zusammenarbeit__outcomes li,
.hh-zusammenarbeit__purpose > ul li {
  background: color-mix(in srgb, white 92%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 10%, white);
  border-radius: 1.15rem;
  box-shadow: 0 10px 28px color-mix(in srgb, var(--hh-ink) 6%, transparent);
  box-sizing: border-box;
  color: var(--hh-ink-muted);
  font-family: var(--hh-font-brand);
  font-size: clamp(0.875rem, 1.2vw, 0.95rem);
  line-height: 1.45;
  margin: 0;
  max-width: 100%;
  padding: clamp(4.85rem, 10vw, 5.5rem) clamp(0.85rem, 1.5vw, 1rem)
    clamp(1.25rem, 2vw, 1.5rem);
  position: relative;
  text-align: center;
  width: 100%;
}

.hh-zusammenarbeit__outcomes li::before,
.hh-zusammenarbeit__purpose > ul li::before {
  background: color-mix(in srgb, var(--hh-brand) 26%, white);
  border-radius: 62% 38% 54% 46% / 42% 58% 40% 60%;
  content: "";
  height: 3.5rem;
  left: 50%;
  position: absolute;
  top: clamp(1rem, 2vw, 1.25rem);
  transform: translateX(-50%);
  width: 3.5rem;
}

.hh-zusammenarbeit__outcomes li:nth-child(1)::after,
.hh-zusammenarbeit__purpose > ul li:nth-child(1)::after {
  background-image: url("../../icons/lucide/heart.svg");
}

.hh-zusammenarbeit__outcomes li:nth-child(2)::after,
.hh-zusammenarbeit__purpose > ul li:nth-child(2)::after {
  background-image: url("../../icons/lucide/leaf.svg");
}

.hh-zusammenarbeit__outcomes li:nth-child(3)::after,
.hh-zusammenarbeit__purpose > ul li:nth-child(3)::after {
  background-image: url("../../icons/lucide/sun.svg");
}

.hh-zusammenarbeit__outcomes li:nth-child(4)::after,
.hh-zusammenarbeit__purpose > ul li:nth-child(4)::after {
  background-image: url("../../icons/lucide/flower.svg");
}

.hh-zusammenarbeit__outcomes li:nth-child(5)::after,
.hh-zusammenarbeit__purpose > ul li:nth-child(5)::after {
  background-image: url("../../icons/lucide/wind.svg");
}

.hh-zusammenarbeit__outcomes li::after,
.hh-zusammenarbeit__purpose > ul li::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.9rem;
  content: "";
  height: 3.5rem;
  left: 50%;
  position: absolute;
  top: clamp(1rem, 2vw, 1.25rem);
  transform: translateX(-50%);
  width: 3.5rem;
}

.hh-zusammenarbeit__purpose-quote {
  background: color-mix(in srgb, var(--hh-brand) 16%, white);
  border: 1px solid color-mix(in srgb, var(--hh-brand) 14%, transparent);
  border-radius: 1.25rem;
  box-sizing: border-box;
  margin: 0 auto;
  max-width: min(56rem, 100%);
  overflow: hidden;
  padding: clamp(1.35rem, 2.5vw, 1.85rem) clamp(1.25rem, 3vw, 2.5rem);
  position: relative;
}

.hh-zusammenarbeit__purpose-inner > p.hh-zusammenarbeit__purpose-closing,
.hh-zusammenarbeit__purpose > p.hh-zusammenarbeit__purpose-closing {
  background: color-mix(in srgb, var(--hh-brand) 16%, white);
  border: 1px solid color-mix(in srgb, var(--hh-brand) 14%, transparent);
  border-radius: 1.25rem;
  box-sizing: border-box;
  margin: 0 auto;
  max-width: min(56rem, 100%);
  overflow: hidden;
  padding: clamp(1.35rem, 2.5vw, 1.85rem) clamp(1.25rem, 3vw, 2.5rem)
    clamp(1.35rem, 2.5vw, 1.85rem) clamp(2.75rem, 5vw, 3.5rem);
  position: relative;
}

.hh-zusammenarbeit__purpose-inner > p.hh-zusammenarbeit__purpose-closing::before,
.hh-zusammenarbeit__purpose > p.hh-zusammenarbeit__purpose-closing::before {
  color: var(--hh-brand-dark);
  content: "“";
  font-family: var(--hh-font-brand);
  font-size: clamp(3rem, 6vw, 4.5rem);
  left: clamp(0.75rem, 2vw, 1.25rem);
  line-height: 1;
  opacity: 0.55;
  pointer-events: none;
  position: absolute;
  top: clamp(0.35rem, 1vw, 0.65rem);
}

.hh-zusammenarbeit__purpose-quote::before {
  color: var(--hh-brand-dark);
  content: "“";
  font-family: var(--hh-font-brand);
  font-size: clamp(3rem, 6vw, 4.5rem);
  left: clamp(0.75rem, 2vw, 1.25rem);
  line-height: 1;
  opacity: 0.55;
  pointer-events: none;
  position: absolute;
  top: clamp(0.35rem, 1vw, 0.65rem);
}

.hh-zusammenarbeit__purpose-quote::after {
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%235f9e96' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' opacity='.28'%3E%3Cpath d='M88 95c8-12 12-22 12-32 0-8-5-14-12-14s-12 6-12 14 4 14 12 14'/%3E%3Cpath d='M38 95c8-12 12-22 12-32 0-8-5-14-12-14s-12 6-12 14 4 14 12 14'/%3E%3Cpath d='M78 30c-8 0-14 6-16 14M42 30c-8 0-14 6-16 14'/%3E%3C/svg%3E")
      right bottom / clamp(5rem, 12vw, 7rem) no-repeat;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
}

.hh-zusammenarbeit__purpose-closing,
.hh-zusammenarbeit__purpose > p:last-of-type:not(:has(+ ul)) {
  border: 0;
  color: var(--hh-brand-dark);
  font-family: var(--hh-font-brand);
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  font-style: italic;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5;
  margin: 0 auto;
  max-width: min(40rem, 100%);
  padding: 0 0 0 clamp(1.5rem, 3vw, 2rem);
  position: relative;
  text-align: center;
  text-wrap: balance;
  z-index: 1;
}

.hh-zusammenarbeit__purpose-quote .hh-zusammenarbeit__purpose-closing {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0 auto;
  max-width: min(40rem, 100%);
  padding: 0 0 0 clamp(1.5rem, 3vw, 2rem);
}

@media (max-width: 1100px) {
  .hh-zusammenarbeit__outcomes-grid.wp-block-columns,
  .hh-zusammenarbeit__outcomes-grid,
  .hh-zusammenarbeit__outcomes-card .hh-zusammenarbeit__outcomes,
  .hh-zusammenarbeit__purpose > ul {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 781px) {
  .hh-zusammenarbeit__purpose-outcomes {
    width: 100%;
  }

  .hh-zusammenarbeit__outcomes-grid.wp-block-columns,
  .hh-zusammenarbeit__outcomes-grid,
  .hh-zusammenarbeit__outcomes-card .hh-zusammenarbeit__outcomes,
  .hh-zusammenarbeit__purpose > ul,
  .hh-zusammenarbeit__purpose > ul.wp-block-list {
    gap: clamp(0.85rem, 3vw, 1.15rem);
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .hh-zusammenarbeit__outcomes-grid > .wp-block-column,
  .hh-zusammenarbeit__outcomes-grid.wp-block-columns > .wp-block-column,
  .hh-zusammenarbeit__outcome {
    flex-basis: 100%;
    max-width: 100%;
    width: 100%;
  }

  .hh-zusammenarbeit__outcome {
    padding: clamp(1.25rem, 4vw, 1.5rem) clamp(1rem, 4vw, 1.25rem)
      clamp(1.35rem, 4vw, 1.6rem);
  }

  .hh-zusammenarbeit__outcomes li,
  .hh-zusammenarbeit__purpose > ul li {
    padding: clamp(4.35rem, 15vw, 4.85rem) clamp(1rem, 4vw, 1.25rem)
      clamp(1.35rem, 4vw, 1.6rem);
  }

  .hh-zusammenarbeit__outcomes-label,
  .hh-zusammenarbeit__purpose > p:has(+ ul),
  .hh-zusammenarbeit__purpose-inner > p:has(+ ul) {
    padding-inline: 0.25rem;
  }

  .hh-zusammenarbeit__purpose-closing,
  .hh-zusammenarbeit__purpose > p:last-of-type:not(:has(+ ul)) {
    padding-inline: 0.25rem;
  }
}

.hh-zusammenarbeit__session > h2,
.hh-zusammenarbeit__format > h2,
.hh-zusammenarbeit__faq > h2 {
  margin-bottom: 1.25rem;
  text-wrap: balance;
}

.hh-zusammenarbeit__steps {
  gap: clamp(1rem, 2.5vw, 1.5rem);
  margin-top: 1.5rem;
}

.hh-zusammenarbeit__step {
  background: color-mix(in srgb, white 92%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-brand) 14%, transparent);
  border-radius: 1.5rem;
  box-sizing: border-box;
  min-width: 0;
  padding: clamp(1.25rem, 3vw, 1.75rem);
}

.hh-zusammenarbeit__step h3 {
  color: var(--hh-brand-dark);
  font-family: var(--hh-font-heading);
  font-size: clamp(1.05rem, 2vw, 1.2rem);
  margin: 0 0 0.75rem;
}

.hh-zusammenarbeit__step p:last-child {
  margin-bottom: 0;
}

.hh-zusammenarbeit__facts-list {
  display: grid;
  gap: 0.65rem;
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.hh-zusammenarbeit__facts-list li {
  padding-left: 1.35rem;
  position: relative;
}

.hh-zusammenarbeit__facts-list li::before {
  background: var(--hh-brand);
  border-radius: 999px;
  content: "";
  height: 0.45rem;
  left: 0;
  position: absolute;
  top: 0.55em;
  width: 0.45rem;
}

.hh-zusammenarbeit__faq-item {
  background: color-mix(in srgb, white 94%, var(--hh-sand));
  border: 1px solid color-mix(in srgb, var(--hh-sand-deep) 16%, white);
  border-radius: 1.25rem;
  margin-top: 1rem;
  padding: clamp(1.1rem, 2.5vw, 1.5rem);
}

.hh-zusammenarbeit__faq-item h3 {
  font-family: var(--hh-font-heading);
  font-size: clamp(1.05rem, 2vw, 1.2rem);
  margin: 0 0 0.65rem;
}

.hh-zusammenarbeit__faq-item p:last-child {
  margin-bottom: 0;
}

@media (max-width: 781px) {
  .hh-zusammenarbeit__hero-grid,
  .hh-zusammenarbeit__steps {
    flex-direction: column;
  }

  .hh-zusammenarbeit__steps > .wp-block-column {
    flex-basis: 100%;
    width: 100%;
  }
}
