/* A calm full-screen introduction; packages retain their natural content height. */
.page--preisrechner .pc-intro-story {
  position: relative;
  background: radial-gradient(ellipse at 50% 45%, #747aea0b, transparent 65%), #f7f8ff;
}
.page--preisrechner .pc-intro-story .pc-hero {
  display: grid;
  min-height: 100svh;
  align-items: center;
  padding: calc(var(--header-height) + 2rem) 0 3rem;
  border: 0;
  background: transparent;
  overflow: visible;
}
.page--preisrechner .pc-intro-story .pc-hero::before { display: none; }
.page--preisrechner .pc-intro-story .pc-hero__grid {
  display: block;
  min-height: 0;
  padding-block: 0;
}
.page--preisrechner .pc-intro-story .pc-hero__copy {
  width: 100%;
  max-width: none;
  padding: 0;
  text-align: center;
}
.page--preisrechner .pc-intro-story .pc-hero h1 {
  max-width: none;
  margin: 0 0 clamp(2rem, 5vh, 3.5rem);
  font-family: var(--font-sans);
  font-size: clamp(3rem, 8vw, 8rem);
  font-weight: 650;
  line-height: 1.02;
  letter-spacing: -.065em;
  white-space: normal;
}
.page--preisrechner .pc-intro-story .pc-hero h1 > .pc-intro-title-line {
  display: block;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
  padding-bottom: .16em;
  margin-bottom: -.16em;
  background: none;
  color: #171c30;
  -webkit-text-fill-color: currentColor;
}
.page--preisrechner .pc-intro-story .pc-hero h1 > .pc-intro-title-line--accent {
  background: var(--brand-text-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page--preisrechner .pc-intro-story [data-intro-cta] {
  min-height: 3.5rem;
  padding-inline: 1.75rem;
  font-size: 1rem;
}
.page--preisrechner .pc-intro-story .pc-packages {
  background: transparent;
  scroll-margin-top: calc(var(--header-height) + 1rem);
}
.pc-intro-stage { position: relative; }

@media (prefers-reduced-motion: no-preference) {
  .page--preisrechner .pc-intro-story.is-liquid-intro {
    height: calc(var(--intro-stage-height, 100svh) + var(--intro-scroll-distance, 130svh));
    overflow: visible;
  }
  .is-liquid-intro .pc-intro-stage {
    position: sticky;
    top: 0;
    height: var(--intro-stage-height, 100svh);
    isolation: isolate;
  }
  .page--preisrechner .pc-intro-story.is-liquid-intro .pc-hero {
    position: absolute;
    z-index: 3;
    inset: 0 0 auto;
    height: 100svh;
  }
  .page--preisrechner .pc-intro-story.is-liquid-intro h1 {
    opacity: var(--intro-title-opacity, 1);
  }
  .page--preisrechner .pc-intro-story.is-liquid-intro h1 > .pc-intro-title-line {
    background: none;
    -webkit-text-fill-color: currentColor;
  }
  .is-liquid-intro .problem-title__letter { -webkit-text-fill-color: currentColor; }
  .is-liquid-intro [data-intro-cta] {
    opacity: var(--intro-cta-opacity, 1);
    transform: translateY(calc((1 - var(--intro-cta-opacity, 1)) * 12px));
  }
  .is-liquid-intro .pc-hero[inert] { pointer-events: none; }
  .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages {
    position: absolute;
    z-index: 2;
    top: calc(var(--header-height) + 1.5rem);
    left: 50%;
    width: min(calc(100% - 3rem), 86rem);
    padding: clamp(1.5rem, 3vw, 3rem);
    border-radius: 1.6rem;
    opacity: var(--intro-content-opacity, 0);
    transform: translate(-50%, var(--intro-content-y, 0px));
    overflow: visible;
  }
  /* Repeated native #pakete navigation must keep the settled animation position. */
  .page--preisrechner .pc-intro-story.is-liquid-intro #pakete {
    scroll-margin-top: calc(var(--header-height) + 1.5rem);
  }
  .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages > .container {
    width: 100%;
    max-width: none;
    padding: 0;
  }
  .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages[inert] {
    pointer-events: none;
  }
  .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages .pc-section-heading {
    align-items: center;
    gap: 1rem;
  }
  .page--preisrechner .pc-intro-story.is-liquid-intro .problem-liquid {
    position: absolute;
    z-index: 1;
    top: var(--intro-liquid-center, 50svh);
    left: 50%;
    display: block;
    width: var(--liquid-width, 0px);
    height: var(--liquid-height, 0px);
    border-radius: var(--liquid-radius, 50%);
    opacity: var(--liquid-opacity, 0);
    transform: translate(-50%, -50%) rotate(var(--liquid-rotation, 0deg));
    box-shadow: 0 1.8rem 4rem #353d6614;
  }
  @media (max-width: 760px) {
    .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages {
      top: calc(var(--header-height) + 1rem);
      width: calc(100% - 1rem);
      padding: 1.5rem .75rem;
    }
    .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages .pc-section-heading {
      display: block;
      padding-inline: .4rem;
    }
    .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages .pc-section-heading h2 {
      font-size: clamp(1.75rem, 6.5vw, 2.25rem);
    }
    .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages .pc-section-heading > p {
      margin-top: .6rem;
    }
  }
}
@media (max-width: 480px) {
  .page--preisrechner .pc-intro-story .pc-hero h1 {
    font-size: clamp(2.75rem, 12vw, 4rem);
  }
  .page--preisrechner .pc-intro-story .pc-hero__grid {
    width: calc(100% - 2rem);
  }
}

/* Retain the liquid sequence at a phone-sized type scale and card spacing. */
@media (max-width:960px) {
  .page--preisrechner .pc-intro-story .pc-hero { min-height:min(42rem,76svh); padding:calc(var(--header-height) + 3rem) 0 3.5rem; }
  .page--preisrechner .pc-intro-story .pc-hero h1 { font-size:clamp(2.55rem,10.7vw,5.75rem); line-height:1.07; letter-spacing:-.055em; margin-bottom:2rem; }
  .page--preisrechner .pc-intro-story .pc-hero__grid { width:calc(100% - 2rem); }
  .page--preisrechner .pc-intro-story [data-intro-cta] { min-height:48px; padding:.85rem 1.25rem; font-size:.9375rem; }
  .page--preisrechner .pc-intro-story .pc-packages { padding-block:2rem 3rem; border:0; }
  .page--preisrechner .pc-intro-story .pc-packages .pc-section-heading { display:block; margin-bottom:1.25rem; }
  .page--preisrechner .pc-intro-story .pc-packages .pc-section-heading h2 { font-size:clamp(1.8rem,6vw,2.5rem); }
  .page--preisrechner .pc-intro-story .pc-packages .pc-section-heading > p { margin-top:.65rem; }
  .page--preisrechner .pc-intro-story .studio-other { padding-top:.5rem; }
  .page--preisrechner .pc-intro-story .studio-other .pc-link { display:inline-flex; align-items:center; gap:.6rem; }
}
@media (max-width:960px) and (prefers-reduced-motion:no-preference) {
  .page--preisrechner .pc-intro-story.is-liquid-intro .pc-hero { min-height:100svh; }
  .page--preisrechner .pc-intro-story.is-liquid-intro .pc-packages { top:calc(var(--header-height) + .75rem); width:calc(100% - 1rem); padding:1.25rem .75rem; border-radius:1.375rem; }
  .page--preisrechner .pc-intro-story.is-liquid-intro #pakete { scroll-margin-top:calc(var(--header-height) + .75rem); }
}
@media (max-height:600px) {
  .page--preisrechner .pc-intro-story .pc-hero { min-height:100svh; padding-block:calc(var(--header-height) + 1.5rem) 2rem; }
  .page--preisrechner .pc-intro-story .pc-hero h1 { font-size:clamp(2.5rem,6vw,3.6rem); margin-bottom:1.25rem; }
}
