/* Praxoria Startseite – v525 Warum-Bereich: lebendiger Qualitätsbogen, weniger Schema. */

body.homeRefinedV525{
  --why-v525-rule: color-mix(in oklab, var(--border) 46%, transparent);
  --why-v525-rule-soft: color-mix(in oklab, var(--border) 24%, transparent);
  --why-v525-copy: color-mix(in oklab, var(--text) 76%, var(--muted));
  --why-v525-soft: color-mix(in oklab, var(--text) 56%, var(--muted2));
}

html body.home.homeRefinedV525 .whyBand{
  position: relative !important;
  margin-top: clamp(34px, 4vw, 58px) !important;
  padding: clamp(44px, 5vw, 76px) 0 clamp(52px, 5.6vw, 84px) !important;
  border: 0 !important;
  border-top: 1px solid var(--why-v525-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: none !important;
  overflow: clip !important;
}

html body.home.homeRefinedV525 .whyBand::before,
html body.home.homeRefinedV525 .whyBand::after{
  content: none !important;
  display: none !important;
}

html body.home.homeRefinedV525 .whyTitleBlock{
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(260px, .74fr) !important;
  gap: clamp(26px, 5.4vw, 88px) !important;
  align-items: end !important;
  margin: 0 0 clamp(30px, 3.4vw, 48px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home.homeRefinedV525 .whyTitleBlock .headBlock{
  max-width: 790px !important;
}

html body.home.homeRefinedV525 .whyTitleBlock h2{
  margin: 0 !important;
  max-width: 13ch !important;
  font-size: clamp(2.55rem, 4.15vw, 4.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.066em !important;
}

html body.home.homeRefinedV525 .whyTitleBlock h2::after{
  content: "" !important;
  display: block !important;
  width: min(100%, 18rem) !important;
  height: 2px !important;
  margin: clamp(16px, 1.75vw, 22px) 0 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--accent), var(--accent3), transparent 86%) !important;
}

html body.home.homeRefinedV525 .whyTitleBlock .sub.homeLead{
  max-width: 72ch !important;
  margin: clamp(18px, 1.8vw, 24px) 0 0 !important;
  color: var(--why-v525-copy) !important;
  font-size: clamp(1.03rem, 1.12vw, 1.18rem) !important;
  line-height: 1.6 !important;
  letter-spacing: -.012em !important;
}

html body.home.homeRefinedV525 .whyTitleBlock .sub.homeLead .em{
  position: relative !important;
  z-index: 1 !important;
  color: var(--text) !important;
  font-weight: 840 !important;
  white-space: nowrap !important;
}

html body.home.homeRefinedV525 .whyTitleBlock .sub.homeLead .em::after{
  content: "" !important;
  position: absolute !important;
  left: -.08em !important;
  right: -.08em !important;
  bottom: .06em !important;
  height: .32em !important;
  z-index: -1 !important;
  border-radius: 999px !important;
  background: color-mix(in oklab, var(--accent) 15%, transparent) !important;
}
html body.home.homeRefinedV525 .whyTitleBlock .sub.homeLead .em:nth-of-type(2)::after{
  background: color-mix(in oklab, var(--accent3) 16%, transparent) !important;
}
html body.home.homeRefinedV525 .whyTitleBlock .sub.homeLead .em:nth-of-type(3)::after{
  background: color-mix(in oklab, var(--accent2) 15%, transparent) !important;
}

html body.home.homeRefinedV525 .whyLineStage{
  position: relative !important;
  min-height: clamp(56px, 6.4vw, 96px) !important;
  max-width: 650px !important;
  align-self: center !important;
  opacity: 0 !important;
  transform: translateY(4px) !important;
  transition: opacity .45s ease, transform .45s ease !important;
  pointer-events: none !important;
}

html body.home.homeRefinedV525 .whyBand.isFlowComplete .whyLineStage{
  opacity: .32 !important;
  transform: translateY(0) !important;
}

html body.home.homeRefinedV525 .whyDrawLine path{
  stroke-width: 7 !important;
  opacity: .34 !important;
}

html body.home.homeRefinedV525 .whyPillars{
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(26px, 3.5vw, 62px) !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: clamp(26px, 3vw, 38px) 0 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--why-v525-rule) !important;
  border-bottom: 1px solid var(--why-v525-rule) !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html body.home.homeRefinedV525 .whyPillars::before{
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: clamp(25px, 2.9vw, 37px) !important;
  height: 1px !important;
  background: linear-gradient(90deg,
    color-mix(in oklab, var(--accent) 22%, transparent),
    color-mix(in oklab, var(--accent3) 18%, transparent) 50%,
    color-mix(in oklab, var(--accent2) 20%, transparent)) !important;
  opacity: .34 !important;
  transform: translateY(-1px) !important;
}
html body.home.homeRefinedV525 .whyPillars::after{
  content: none !important;
  display: none !important;
}

html body.home.homeRefinedV525 .whyPillars .pillar{
  --pillar-accent: var(--accent);
  position: relative !important;
  min-width: 0 !important;
  min-height: clamp(390px, 30vw, 468px) !important;
  display: grid !important;
  grid-template-rows: auto auto minmax(7.2rem, auto) auto minmax(9.2rem, 1fr) !important;
  align-content: stretch !important;
  padding: clamp(22px, 2.3vw, 30px) 0 clamp(28px, 3vw, 40px) !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  transform: none !important;
  overflow: visible !important;
}

html body.home.homeRefinedV525 .whyPillars .pillar::before{
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: clamp(34px, 5.4vw, 82px) !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: color-mix(in oklab, var(--pillar-accent) 76%, var(--surface)) !important;
}

html body.home.homeRefinedV525 .whyPillars .pillar::after{
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: clamp(18px, 2.1vw, 28px) !important;
  right: calc(clamp(13px, 1.75vw, 31px) * -1) !important;
  bottom: clamp(30px, 3vw, 42px) !important;
  width: 1px !important;
  background: linear-gradient(180deg, transparent, var(--why-v525-rule-soft) 18%, var(--why-v525-rule-soft) 82%, transparent) !important;
  opacity: .9 !important;
}
html body.home.homeRefinedV525 .whyPillars .pillar:last-child::after{
  content: none !important;
  display: none !important;
}

html body.home.homeRefinedV525 .whyPillars .pillar.p1{ --pillar-accent: var(--accent); }
html body.home.homeRefinedV525 .whyPillars .pillar.p2{ --pillar-accent: var(--accent3); }
html body.home.homeRefinedV525 .whyPillars .pillar.p3{ --pillar-accent: var(--accent2); }

html body.home.homeRefinedV525 .pillar .k{
  align-self: start !important;
  margin: clamp(18px, 1.9vw, 24px) 0 clamp(16px, 1.45vw, 20px) !important;
  color: color-mix(in oklab, var(--pillar-accent) 72%, var(--text)) !important;
  font-size: .7rem !important;
  line-height: 1 !important;
  font-weight: 780 !important;
  letter-spacing: .185em !important;
  text-transform: uppercase !important;
}

html body.home.homeRefinedV525 .pillar h3{
  align-self: start !important;
  max-width: 22ch !important;
  margin: 0 !important;
  color: var(--text) !important;
  font-size: clamp(1.24rem, 1.42vw, 1.54rem) !important;
  line-height: 1.14 !important;
  letter-spacing: -.043em !important;
  text-wrap: balance !important;
}

html body.home.homeRefinedV525 .pillar > p{
  align-self: start !important;
  max-width: 35rem !important;
  margin: clamp(18px, 1.7vw, 24px) 0 0 !important;
  color: var(--why-v525-copy) !important;
  font-size: clamp(.99rem, 1.03vw, 1.08rem) !important;
  line-height: 1.57 !important;
  letter-spacing: -.01em !important;
}

html body.home.homeRefinedV525 .pillarMeta{
  align-self: end !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: .24rem .42rem !important;
  margin: clamp(18px, 1.7vw, 24px) 0 0 !important;
  padding: 0 !important;
  color: var(--why-v525-soft) !important;
  font-size: .71rem !important;
  line-height: 1.42 !important;
  font-weight: 690 !important;
  letter-spacing: -.006em !important;
}

html body.home.homeRefinedV525 .pillarMeta span{
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
}

html body.home.homeRefinedV525 .pillarMeta span + span::before{
  content: "·" !important;
  display: inline-block !important;
  margin: 0 .42rem 0 0 !important;
  color: color-mix(in oklab, var(--pillar-accent) 50%, var(--border-strong)) !important;
}

html body.home.homeRefinedV525 .pillarPreview{
  align-self: stretch !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: clamp(10px, 1.2vw, 16px) !important;
  margin: clamp(26px, 2.6vw, 38px) 0 0 !important;
  padding: clamp(16px, 1.6vw, 22px) 0 0 !important;
  border: 0 !important;
  border-top: 1px solid color-mix(in oklab, var(--pillar-accent) 26%, var(--why-v525-rule)) !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

html body.home.homeRefinedV525 .pillarPreview::before,
html body.home.homeRefinedV525 .pillarPreview::after{
  content: none !important;
  display: none !important;
}

html body.home.homeRefinedV525 .pillarPreview .pk{
  margin: 0 !important;
  color: color-mix(in oklab, var(--pillar-accent) 55%, var(--why-v525-soft)) !important;
  font-size: .59rem !important;
  line-height: 1.1 !important;
  font-weight: 650 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

html body.home.homeRefinedV525 .pillarPreview .pv{
  max-width: 32rem !important;
  margin: 0 !important;
  color: color-mix(in oklab, var(--text) 84%, var(--muted)) !important;
  font-size: clamp(.97rem, 1vw, 1.06rem) !important;
  line-height: 1.44 !important;
  font-weight: 690 !important;
  letter-spacing: -.018em !important;
  text-wrap: balance !important;
}

html body.home.homeRefinedV525 .pillarPreview .pd{
  margin: auto 0 0 !important;
  max-width: 32rem !important;
  color: var(--text) !important;
  font-size: clamp(1.02rem, 1.05vw, 1.13rem) !important;
  line-height: 1.32 !important;
  font-weight: 760 !important;
  letter-spacing: -.028em !important;
}

html body.home.homeRefinedV525 .pillarPreview .pd span{
  display: inline !important;
  padding: 0 .055em !important;
  box-decoration-break: clone !important;
  -webkit-box-decoration-break: clone !important;
  background: linear-gradient(to top,
    color-mix(in oklab, var(--pillar-accent) 14%, transparent) 0 .45em,
    transparent .45em) !important;
  color: inherit !important;
}

html body.home.homeRefinedV525 .whyAfter{
  margin-top: clamp(32px, 3.5vw, 52px) !important;
}

@media (max-width: 1100px){
  html body.home.homeRefinedV525 .whyTitleBlock{
    grid-template-columns: 1fr !important;
  }
  html body.home.homeRefinedV525 .whyLineStage{
    display: none !important;
  }
  html body.home.homeRefinedV525 .whyPillars{
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding-top: 0 !important;
  }
  html body.home.homeRefinedV525 .whyPillars::before{
    display: none !important;
  }
  html body.home.homeRefinedV525 .whyPillars .pillar{
    min-height: 0 !important;
    display: block !important;
    padding: clamp(26px, 5vw, 40px) 0 !important;
  }
  html body.home.homeRefinedV525 .whyPillars .pillar + .pillar{
    border-top: 1px solid var(--why-v525-rule-soft) !important;
  }
  html body.home.homeRefinedV525 .whyPillars .pillar::after{
    content: none !important;
    display: none !important;
  }
  html body.home.homeRefinedV525 .pillarPreview{
    margin-top: clamp(20px, 4vw, 28px) !important;
  }
  html body.home.homeRefinedV525 .pillarPreview .pd{
    margin-top: clamp(12px, 3vw, 18px) !important;
  }
}

@media (max-width: 720px){
  html body.home.homeRefinedV525 .whyBand{
    padding-top: 36px !important;
    padding-bottom: 44px !important;
  }
}
