

/* ------------------------------------------------------------------ *
 * JP-1301 FOUC guard (INTERIM — remove with the JS transform once the *
 * page is rebuilt in Elementor; see github issue).                    *
 *                                                                     *
 * This page ships the *legacy* markup in post_content; the redesign is *
 * assembled client-side by redesign-projektplanung-umsetzung.js on    *
 * DOMContentLoaded (the script is footer-loaded). Between first paint  *
 * and that transform the browser shows the old design for <1s.        *
 *                                                                     *
 * Fix: this CSS is render-blocking in <head>, so hide the sections the *
 * JS rebuilds from the very first paint, then the JS adds             *
 * `body.projekt-redesign-ready` after its first apply() to reveal      *
 * them. A pure-CSS animation fallback reveals them after 3s so the     *
 * page is never left blank if the JS fails to run.                     *
 *                                                                     *
 * Sections are matched by the stable heading-anchor ids (DE + EN twin) *
 * and by section.bg-primary, i.e. the same hooks the JS keys off.      *
 * ------------------------------------------------------------------ */
@keyframes jp1301-fouc-reveal { to { visibility: visible; } }

body.page-id-88793 section:has(#anchor-projekte-abwickeln),
body.page-id-88793 section:has(#anchor-execute-projects),
body.page-id-88793 section:has(#anchor-erster-weg),
body.page-id-88793 section:has(#anchor-first-way),
body.page-id-88793 section:has(#anchor-zweiter-weg),
body.page-id-88793 section:has(#anchor-second-way),
body.page-id-88793 section:has(#anchor-dritter-weg),
body.page-id-88793 section:has(#anchor-third-way),
body.page-id-88793 section.bg-primary {
  visibility: hidden;
  animation: jp1301-fouc-reveal 0.01s linear 3s forwards;
}

body.page-id-88793.projekt-redesign-ready section:has(#anchor-projekte-abwickeln),
body.page-id-88793.projekt-redesign-ready section:has(#anchor-execute-projects),
body.page-id-88793.projekt-redesign-ready section:has(#anchor-erster-weg),
body.page-id-88793.projekt-redesign-ready section:has(#anchor-first-way),
body.page-id-88793.projekt-redesign-ready section:has(#anchor-zweiter-weg),
body.page-id-88793.projekt-redesign-ready section:has(#anchor-second-way),
body.page-id-88793.projekt-redesign-ready section:has(#anchor-dritter-weg),
body.page-id-88793.projekt-redesign-ready section:has(#anchor-third-way),
body.page-id-88793.projekt-redesign-ready section.bg-primary {
  visibility: visible;
  animation: none;
}

body.page-id-88793 main .container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.page-id-88793 section.projekt-redesign-hero {
  background: #eeeee7 !important;
  background-image: none !important;
  position: relative;
  overflow: hidden;
  margin-top: -178px !important;
  padding: 206px 0 80px !important;
}

body.page-id-88793 #nav-breadcrumb {
  position: relative !important;
  z-index: 2 !important;
}
body.page-id-88793 #nav-breadcrumb,
body.page-id-88793 #nav-breadcrumb a,
body.page-id-88793 #nav-breadcrumb span,
body.page-id-88793 #nav-breadcrumb li {
  color: #0b1b45 !important;
}

/* Align the breadcrumb + hero to the standard content container (max-width
   1570px, 60px gutters) used by the product-landing pages, so the breadcrumb,
   overline and H1 share one left edge and the page lines up with the rest of
   the redesign. Without this the breadcrumb sat in the narrow centered
   container (left edge 165px) while the hero used a 1600px/clamp container. */
body.page-id-88793 #nav-breadcrumb > .container,
body.page-id-88793 section.projekt-redesign-hero > .container {
  max-width: 1570px !important;
  /* Centered like the header/nav container, so on viewports wider than 1570px
     the breadcrumb + hero shift right with the logo instead of pinning to the
     far-left edge and drifting away from it. */
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 60px !important;
  padding-right: 60px !important;
}
@media (max-width: 767px) {
  body.page-id-88793 #nav-breadcrumb > .container,
  body.page-id-88793 section.projekt-redesign-hero > .container {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

body.page-id-88793 section.projekt-redesign-hero > .container {
  position: relative;
  z-index: 2;
  /* width + gutters come from the shared 1570px/60px container rule above */
}

body.page-id-88793 section.projekt-redesign-hero .row {
  min-height: 505px !important;
  align-items: flex-start !important;
}
body.page-id-88793 section.projekt-redesign-hero .row > .col {
  max-width: 640px;
  flex: 0 0 auto;
  margin-top: 0 !important;
  margin-bottom: auto !important;
  align-self: flex-start !important;
}

body.page-id-88793 section.projekt-redesign-hero .h3 {
  color: #2722f8 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 22px !important;
  line-height: 28px !important;
  letter-spacing: 1.1px !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
}

body.page-id-88793 section.projekt-redesign-hero h1 {
  font-family: "Kurdis Wide Bold", "Kurdis", sans-serif !important;
  font-weight: 700 !important;
  font-size: 51.8px !important;
  line-height: 60px !important;
  color: #0b1b45 !important;
  margin: 0 !important;
}

body.page-id-88793 section.projekt-redesign-hero h1::after,
body.page-id-88793 section.projekt-redesign-hero h1::before {
  display: none !important;
}

body.page-id-88793 section.projekt-redesign-hero .headline-link {
  display: none !important;
}

body.page-id-88793 .projekt-hero-media {
  position: absolute;
  top: 50%;
  /* Sit within the 60px content gutter (like the header/CTA and the reference
     hero image) instead of bleeding to the container's outer edge past the CTA. */
  right: 60px;
  transform: translateY(-50%);
  height: 100%;
  max-height: 820px;
  aspect-ratio: 1190 / 1200;
  width: auto;
  z-index: 1;
  pointer-events: none;
}
body.page-id-88793 .projekt-hero-media .projekt-hero-photo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: right center;
}
body.page-id-88793 .projekt-hero-media .projekt-hero-badge {
  position: absolute;
  left: 1%;
  bottom: 6%;
  width: 120px;
  height: auto;
  z-index: 2;
}

@media (max-width: 991px) {

  body.page-id-88793 section.projekt-redesign-hero {
    margin-top: 0 !important;
    padding: 24px 0 0 !important;
    overflow: visible;
  }
  body.page-id-88793 section.projekt-redesign-hero .row > .col {
    max-width: 100%;
  }
  body.page-id-88793 .projekt-hero-media {
    position: relative;
    width: 100%;
    max-width: 480px;
    margin: 24px auto 0;
    height: auto;
    aspect-ratio: 1 / 1;
  }
  body.page-id-88793 .projekt-hero-media .projekt-hero-photo {
    position: static;
    transform: none;
    height: auto;
    width: 100%;
  }
  body.page-id-88793 section.projekt-redesign-hero h1 {
    font-size: 40px !important;
    line-height: 48px !important;
  }
}

body.page-id-88793 section.bg-primary {
  background: #eeeee7 !important;
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

body.page-id-88793 section.bg-primary > .container {
  max-width: 1360px !important;
}

body.page-id-88793 section.bg-primary > .container > .row {
  align-items: stretch !important;
}

body.page-id-88793 section.bg-primary .card {
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 24px rgba(11, 27, 69, 0.06) !important;
  height: 100% !important;
}
body.page-id-88793 section.bg-primary .card-body {
  padding: 0 !important;
  display: block !important;
  height: 100% !important;
}

body.page-id-88793 section.bg-primary .card-body > .row {
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  height: 100% !important;
}
body.page-id-88793 section.bg-primary .card-body > .row > div {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
}

body.page-id-88793 section.bg-primary .card .card-img-col,
body.page-id-88793 section.bg-primary .card-body > .row > div:first-child {
  padding: 0 !important;
  margin: 0 !important;
}
body.page-id-88793 section.bg-primary .card picture {
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  width: 100% !important;
}
body.page-id-88793 section.bg-primary .card img {
  display: block !important;
  width: 100% !important;
  height: 266px !important;
  object-fit: cover !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  max-width: none !important;
}

body.page-id-88793 section.bg-primary .card-body > .row > div:last-child {
  padding: 24px !important;
  text-align: left !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

body.page-id-88793 section.bg-primary .card .h6,
body.page-id-88793 section.bg-primary .card .h4 {
  display: inline !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  line-height: 28px !important;
  letter-spacing: 0 !important;
  color: #0b1b45 !important;
  text-transform: none !important;
  margin: 0 !important;
}

body.page-id-88793 section.bg-primary .card .h6 {
  margin-right: 0.3em !important;
}

body.page-id-88793 section.bg-primary .card .card-title-wrap {
  margin: 0 0 13px !important;
}

body.page-id-88793 section.bg-primary .card .headline-link { display: none !important; }

body.page-id-88793 section.bg-primary .card p,
body.page-id-88793 section.bg-primary .card .h4 ~ p,
body.page-id-88793 section.bg-primary .card-body > .row > div:last-child p {
  font-family: "Inter", sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  color: #0b1b45 !important;
  margin: 13px 0 0 !important;
}

body.page-id-88793 section.bg-primary .card div.mb-4 {
  margin-bottom: 0 !important;
}

body.page-id-88793 section.bg-primary .card .btn-wrapper {
  margin-top: auto !important;
}

body.page-id-88793 section.bg-primary .card .btn {
  margin-top: 0 !important;
  padding: 16px 0 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  color: #0b1b45 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  line-height: 28px !important;
  text-align: left !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-width: 0 !important;
}
body.page-id-88793 section.bg-primary .card .btn::after {
  content: "";
  flex: 0 0 auto;
  width: 46px;
  height: 28px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='13' viewBox='0 0 16 13' fill='none'%3E%3Cpath d='M1 6.5h13M9.5 1l5 5.5-5 5.5' stroke='%23fb581f' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center right;
}

body.page-id-88793 section.projekt-redesign-tips {
  background: #eeeee7 !important;
  padding: 8px 0 80px !important;
}

body.page-id-88793 section.projekt-redesign-tips .col-lg-10 > span.h4 {
  display: block !important;
  color: #2722f8 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  letter-spacing: 0.9px !important;
  text-transform: uppercase !important;
  margin: 0 0 4px !important;
}
body.page-id-88793 section.projekt-redesign-tips .col-lg-10 h2 {
  font-family: "Kurdis Wide Bold", "Kurdis", sans-serif !important;
  font-weight: 700 !important;
  font-size: 32px !important;
  line-height: 46px !important;
  letter-spacing: 0.64px !important;
  color: #0b1b45 !important;
  margin: 0 0 15px !important;
}
body.page-id-88793 section.projekt-redesign-tips .col-lg-10 h2::after,
body.page-id-88793 section.projekt-redesign-tips .col-lg-10 h2::before {
  display: none !important;
}
body.page-id-88793 section.projekt-redesign-tips .col-lg-10 p,
body.page-id-88793 section.projekt-redesign-tips .col-xl-8 p {
  font-family: "Inter", sans-serif !important;
  font-weight: 400 !important;
  font-size: 18px !important;
  line-height: 28px !important;
  color: #0b1b45 !important;
  margin: 0 auto !important;
}

body.page-id-88793 section.projekt-redesign-tips .headline-link { display: none !important; }

body.page-id-88793 section.projekt-redesign-tips .row > .col-lg-6 {
  margin-top: 32px !important;
  margin-bottom: 0 !important;
  display: flex !important;
}
body.page-id-88793 section.projekt-redesign-tips .tip-card {
  background: #ffffff !important;
  border-radius: 24px !important;
  padding: 24px !important;
  width: 100% !important;
}

body.page-id-88793 section.projekt-redesign-tips .tip-card h5 {
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  line-height: 28px !important;
  color: #0b1b45 !important;
}
body.page-id-88793 section.projekt-redesign-tips .tip-card hr { display: none !important; }
body.page-id-88793 section.projekt-redesign-tips .tip-card p {
  font-family: "Inter", sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  color: #0b1b45 !important;
  margin: 13px 0 0 !important;
}
body.page-id-88793 section.projekt-redesign-tips .tip-card p strong {
  font-weight: 700 !important;
}

body.page-id-88793 section.projekt-redesign-tips .tip-card h5 .fa-stack {
  order: 2 !important;
  flex: 0 0 auto !important;
  font-size: 23px !important;
  width: 2em !important;
  height: 2em !important;
  line-height: 2em !important;
  margin: 0 !important;
}
body.page-id-88793 section.projekt-redesign-tips .tip-card h5 .fa-stack .fa-circle {
  color: #0b1b45 !important;
}
body.page-id-88793 section.projekt-redesign-tips .tip-card h5 .fa-stack .fa-inverse {
  color: #ffffff !important;
}

body.page-id-88793 section.projekt-redesign-tips .projektplanung-cta-group {
  justify-content: center !important;
  margin-top: 32px !important;
}

@media (max-width: 991px) {
  body.page-id-88793 section.projekt-redesign-tips .col-lg-10 h2 {
    font-size: 28px !important;
    line-height: 38px !important;
  }
}

body.page-id-88793 section.projekt-redesign-zweiter {
  background: #eeeee7 !important;
  padding: 8px 0 80px !important;
}

body.page-id-88793 section.projekt-redesign-zweiter .col-lg-10 > span.h4 {
  display: block !important;
  color: #2722f8 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  letter-spacing: 0.9px !important;
  text-transform: uppercase !important;
  margin: 0 0 4px !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .col-lg-10 h2 {
  font-family: "Kurdis Wide Bold", "Kurdis", sans-serif !important;
  font-weight: 700 !important;
  font-size: 32px !important;
  line-height: 46px !important;
  letter-spacing: 0.64px !important;
  color: #0b1b45 !important;
  margin: 0 0 15px !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .col-lg-10 h2::after,
body.page-id-88793 section.projekt-redesign-zweiter .col-lg-10 h2::before {
  display: none !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .col-lg-10 > p {
  font-family: "Inter", sans-serif !important;
  font-weight: 400 !important;
  font-size: 18px !important;
  line-height: 28px !important;
  color: #0b1b45 !important;
  margin: 0 auto !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .headline-link { display: none !important; }

body.page-id-88793 section.projekt-redesign-zweiter .zw-steps {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 32px !important;
  margin: 40px 0 0 !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .zw-step {
  flex: 0 0 calc(50% - 16px) !important;
  max-width: calc(50% - 16px) !important;
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .zw-illu {
  flex: 0 0 304px !important;
  max-width: 304px !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .zw-illu-img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .zw-content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .zw-num {
  flex: 0 0 auto !important;
  width: 47px !important;
  height: 47px !important;
  border-radius: 50% !important;
  background: #0b1b45 !important;
  color: #eeeee7 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 25px !important;
  line-height: 47px !important;
  text-align: center !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .zw-text {
  font-family: "Inter", sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  color: #0b1b45 !important;
  margin: 0 !important;
}

body.page-id-88793 section.projekt-redesign-zweiter .zw-text br { display: none !important; }

body.page-id-88793 section.projekt-redesign-zweiter .embed-responsive.youtube-standard {
  border-radius: 24px !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: 1040px !important;
  margin: 144px auto 0 !important;
  background: #0b1b45 !important;
}

body.page-id-88793 section.projekt-redesign-zweiter .embed-responsive.youtube-standard .embed-cover {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .embed-responsive.youtube-standard .embed-play {
  position: static !important;
  margin: 0 !important;
  color: #fb581f !important;
  font-size: 84px !important;
}

body.page-id-88793 section.projekt-redesign-zweiter .projektplanung-cta-group {
  justify-content: center !important;
  gap: 32px !important;
  margin-top: 32px !important;
}
body.page-id-88793 section.projekt-redesign-zweiter .projektplanung-cta-group .product-button-group__button--with-icon { order: 1 !important; }
body.page-id-88793 section.projekt-redesign-zweiter .projektplanung-cta-group .product-button-group__button--with-icon.has-wawi-gradient { order: 0 !important; }

@media (max-width: 991px) {
  body.page-id-88793 section.projekt-redesign-zweiter .col-lg-10 h2 {
    font-size: 28px !important;
    line-height: 38px !important;
  }
  body.page-id-88793 section.projekt-redesign-zweiter .zw-step {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 16px !important;
  }
  body.page-id-88793 section.projekt-redesign-zweiter .zw-illu {
    flex: 0 0 auto !important;
    max-width: 304px !important;
    width: 100% !important;
  }
}

body.page-id-88793 section.projekt-redesign-dritter {
  background: #eeeee7 !important;
  padding: 8px 0 0 !important;
}

/* Widen the cards' content column to the CTA box's width so the two share
   the same left/right edges. The design draws both modules flush at the same
   1312px column; without this the cards' container falls back to the 1140px
   default and stops ~90px short of the CTA box on each side. */
body.page-id-88793 section.projekt-redesign-dritter > .container {
  max-width: 1320px !important;
}

body.page-id-88793 section.projekt-redesign-dritter .col-lg-10 > span.h4 {
  display: block !important;
  color: #2722f8 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  letter-spacing: 0.9px !important;
  text-transform: uppercase !important;
  margin: 0 0 4px !important;
}
body.page-id-88793 section.projekt-redesign-dritter .col-lg-10 h2 {
  font-family: "Kurdis Wide Bold", "Kurdis", sans-serif !important;
  font-weight: 700 !important;
  font-size: 32px !important;
  line-height: 46px !important;
  letter-spacing: 0.64px !important;
  color: #0b1b45 !important;
  margin: 0 !important;
}
body.page-id-88793 section.projekt-redesign-dritter .col-lg-10 h2::after,
body.page-id-88793 section.projekt-redesign-dritter .col-lg-10 h2::before {
  display: none !important;
}
body.page-id-88793 section.projekt-redesign-dritter .headline-link { display: none !important; }

body.page-id-88793 section.projekt-redesign-dritter .card {
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 24px !important;
  box-shadow: 0 2px 24px rgba(11, 27, 69, 0.06) !important;
}
body.page-id-88793 section.projekt-redesign-dritter .card-body {
  padding: 24px !important;
}

body.page-id-88793 section.projekt-redesign-dritter .card .h5 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  line-height: 28px !important;
  color: #0b1b45 !important;
}
body.page-id-88793 section.projekt-redesign-dritter .card hr { display: none !important; }
body.page-id-88793 section.projekt-redesign-dritter .card p {
  font-family: "Inter", sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  color: #0b1b45 !important;
  margin: 13px 0 0 !important;
}
body.page-id-88793 section.projekt-redesign-dritter .card .h5 .fa-stack {
  order: 2 !important;
  flex: 0 0 auto !important;
  font-size: 23px !important;
  width: 2em !important;
  height: 2em !important;
  line-height: 2em !important;
  margin: 0 !important;
}
body.page-id-88793 section.projekt-redesign-dritter .card .h5 .fa-stack .fa-circle {
  color: #0b1b45 !important;
}
body.page-id-88793 section.projekt-redesign-dritter .card .h5 .fa-stack .fa-inverse {
  color: #ffffff !important;
}

@media (max-width: 991px) {
  body.page-id-88793 section.projekt-redesign-dritter .col-lg-10 h2 {
    font-size: 28px !important;
    line-height: 38px !important;
  }
}

body.page-id-88793 section.projekt-redesign-cta {
  background: #eeeee7 !important;
  color: #0b1b45 !important;
  padding: 8px 0 80px !important;
}
body.page-id-88793 section.projekt-redesign-cta > .container {
  max-width: 1320px !important;
}
body.page-id-88793 section.projekt-redesign-cta > .container > .row {
  margin: 0 !important;
  background: #ffffff !important;
  border-radius: 46px !important;
  overflow: hidden !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
}

body.page-id-88793 section.projekt-redesign-cta .cta-text {
  flex: 1 1 auto !important;
  max-width: none !important;
  padding: 46px !important;
  margin: 0 !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.page-id-88793 section.projekt-redesign-cta .cta-text > p {
  font-family: "Inter", sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  color: #0b1b45 !important;
  margin: 0 0 12px !important;
}
body.page-id-88793 section.projekt-redesign-cta .cta-text > p:first-child,
body.page-id-88793 section.projekt-redesign-cta .cta-text > p:first-child strong {
  font-weight: 600 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  letter-spacing: -0.4px !important;
}
body.page-id-88793 section.projekt-redesign-cta .cta-text > p:first-child {
  margin-bottom: 12px !important;
}

body.page-id-88793 section.projekt-redesign-cta .cta-text .projektplanung-cta-group {
  margin-top: 20px !important;
  justify-content: flex-start !important;
}

body.page-id-88793 section.projekt-redesign-cta .cta-media {
  flex: 0 0 40% !important;
  max-width: 40% !important;
  padding: 0 !important;
  margin: 0 !important;
  align-self: stretch !important;
  position: relative !important;
  min-height: 300px !important;
}
body.page-id-88793 section.projekt-redesign-cta .cta-media picture,
body.page-id-88793 section.projekt-redesign-cta .cta-media img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: right center !important;
  border-radius: 0 !important;
}

@media (max-width: 991px) {
  body.page-id-88793 section.projekt-redesign-cta > .container > .row {
    flex-wrap: wrap !important;
  }
  body.page-id-88793 section.projekt-redesign-cta .cta-text {
    flex: 0 0 100% !important;
    padding: 32px !important;
    order: 0 !important;
  }
  body.page-id-88793 section.projekt-redesign-cta .cta-media {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    min-height: 220px !important;
    order: 1 !important;
  }
}

/* Unify every content section to the design's content container (1312px wide —
   a 1440 frame with 64px side gutters), centered, so all sections share one
   width and one left edge. These sections had been left at four different widths
   (1140 / 1320 / 1360px), which made the cards look too narrow and stepped the
   left edge in and out down the page. */
body.page-id-88793 section.bg-primary > .container,
body.page-id-88793 section.projekt-redesign-tips > .container,
body.page-id-88793 section.projekt-redesign-zweiter > .container,
body.page-id-88793 section.projekt-redesign-dritter > .container,
body.page-id-88793 section.projekt-redesign-cta > .container {
  max-width: 1312px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
}
/* The CTA band's inner block is a flex row (no Bootstrap negative-margin row),
   so it would sit 15px inside the container padding. Zero the padding here so
   its content spans the full 1312px and lines up with the card rows above. */
body.page-id-88793 section.projekt-redesign-cta > .container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Consistent vertical rhythm. The section band padding varied (0 / 40 / 80px)
   AND each .container adds its own 64px top/bottom padding, so the empty band
   between sections ranged ~136–216px and felt uneven. Zero the section padding
   and let one consistent container padding set the rhythm (~80px between
   sections). */
body.page-id-88793 section.bg-primary,
body.page-id-88793 section.projekt-redesign-tips,
body.page-id-88793 section.projekt-redesign-zweiter,
body.page-id-88793 section.projekt-redesign-dritter,
body.page-id-88793 section.projekt-redesign-cta {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.page-id-88793 section.bg-primary > .container,
body.page-id-88793 section.projekt-redesign-tips > .container,
body.page-id-88793 section.projekt-redesign-zweiter > .container,
body.page-id-88793 section.projekt-redesign-dritter > .container,
body.page-id-88793 section.projekt-redesign-cta > .container {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}
