/* Compact, sequential planning in the original blue/violet palette. */
.page--preisrechner :is(p,li) { text-wrap:pretty; }
.pc-sr-only,.page--preisrechner #calculator-status,.page--preisrechner .pc-preset-notice { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.page--preisrechner .pc-hero { padding-top:calc(var(--header-height) + 2.5rem); }
.page--preisrechner .pc-hero__grid { grid-template-columns:1.2fr 1fr; min-height:0; padding-bottom:3rem; }
.page--preisrechner .pc-hero h1 { color:#17130f; font-size:clamp(3.2rem,5.8vw,5.6rem); }
.page--preisrechner .pc-eyebrow { margin-bottom:1.5rem; }
.page--preisrechner .pc-hero__lead { max-width:27rem; font-size:1.125rem; line-height:1.6; margin-bottom:1.5rem; }
.studio-hero-note { color:#5f594f; font-size:.875rem; margin-top:1rem; }
.page--preisrechner .pc-visual { height:27rem; margin-top:0; }
.page--preisrechner .pc-visual__index { font-size:.75rem; }
.page--preisrechner .pc-visual__chips span,.page--preisrechner .pc-visual__caption { font-size:.875rem; }
.page--preisrechner .pc-section-heading { margin-bottom:1.75rem; align-items:center; }
.page--preisrechner .pc-section-heading h2 { font-size:clamp(2rem,3.5vw,3.2rem); line-height:1.15; }
.page--preisrechner .pc-section-heading > p { font-size:1rem; }
.page--preisrechner .pc-packages { padding:3rem 0 2rem; }
.page--preisrechner .pc-packages__grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.15rem; align-items:start; }
.page--preisrechner .pc-package { padding:1.4rem; border-radius:1.25rem; }
.page--preisrechner .pc-package__top { gap:.5rem; min-height:2.8rem; margin-bottom:1.25rem; }
.page--preisrechner .pc-package__icon { width:2.5rem; height:2.5rem; }
.page--preisrechner .pc-package__tag { font-size:.8125rem; padding:.35rem .55rem; white-space:normal; }
.page--preisrechner .pc-package h3 { color:var(--pkg-title); font-size:2.15rem; line-height:1.2; }
.page--preisrechner .pc-package__description { font-size:1rem; min-height:3.2rem; margin-bottom:.6rem; }
.page--preisrechner .pc-package__price { border-bottom:0; padding:.8rem 0; }
.page--preisrechner .pc-package__price strong { font-size:2.35rem; }
.page--preisrechner .pc-package__price > span { min-height:2.8rem; margin-top:.4rem; }
.page--preisrechner .pc-package > .pc-disclosure { border:0; margin:0 0 .7rem; }
.page--preisrechner .pc-package > .pc-disclosure > summary { padding:.6rem 0; min-height:44px; }
.page--preisrechner .pc-package > .pc-disclosure > summary:hover { background:transparent; color:var(--pkg-accent); }
.page--preisrechner .pc-package > .pc-disclosure > summary strong { font-size:.875rem; font-weight:500; }
.page--preisrechner .pc-package .pc-disclosure__body { padding:0 0 .5rem; }
.page--preisrechner .pc-package__button { font-size:.875rem; min-height:3rem; padding:.8rem; margin-top:0; }
.studio-other { padding-top:1.4rem; }
.page--preisrechner .studio-other .pc-link { color:#4059aa; min-height:44px; font-size:1rem; text-decoration:underline; text-underline-offset:4px; }
.page--preisrechner .pc-packages__note { max-width:none; text-align:left; margin:.5rem 0 0; }
.page--preisrechner .pc-calculator { padding:3.5rem 0 4rem; background:radial-gradient(ellipse at 100% 0,rgba(80,62,173,.12),transparent 45%),#090b12; }
.page--preisrechner .pc-calculator__grid { grid-template-columns:minmax(0,1.6fr) minmax(19rem,1fr); gap:clamp(1.5rem,4vw,4rem); }
.studio-journey { min-width:0; }
.journey-stop { min-width:0; border-top:1px solid #34415c; padding:1.5rem 0; }
.journey-heading { display:grid; grid-template-columns:2.3rem minmax(0,1fr) auto; align-items:center; gap:.8rem; margin-bottom:1.4rem; }
.journey-number { display:grid; place-items:center; width:2.3rem; height:2.3rem; color:#bac8e1; border:1px solid #4a5977; border-radius:.65rem; font-size:.875rem; font-variant-numeric:tabular-nums; }
.page--preisrechner .journey-heading h3 { font-family:var(--font-sans); font-size:1.3rem; line-height:1.35; letter-spacing:-.025em; font-weight:600; margin:0; }
.journey-state { color:#a9b9d5; font-size:.875rem; }
.journey-stop.is-active { border-top-color:#8b91ee; }
.journey-stop.is-active > .journey-heading .journey-number { background:var(--pc-gradient); border-color:#8799f9; color:#fff; box-shadow:0 .3rem 1rem #525ffc25; }
.journey-stop.is-active > .journey-heading .journey-state { color:#bfcbff; }
.journey-stop:not(.is-active) > .journey-heading { margin-bottom:.35rem; }
.journey-done { display:flex; align-items:center; justify-content:space-between; width:100%; text-align:left; gap:1rem; min-height:44px; padding:.5rem 0 .5rem 3.1rem; border:0; background:none; color:#b6c4dc; font:inherit; font-size:.875rem; line-height:1.6; cursor:pointer; }
.journey-done > span:first-child { min-width:0; overflow-wrap:anywhere; }
.journey-done > span:last-child { flex-shrink:0; color:#b7caff; }
.journey-done:hover { color:#fff; }
.page--preisrechner .iq-progress button[aria-current] { background:linear-gradient(120deg,#203766,#3b2f6a); }
.page--preisrechner .iq-progress button:disabled { opacity:.65; cursor:default; }
.page--preisrechner .pc-form { padding:0; }
.page--preisrechner .pc-step { border:0; padding:.75rem 0; }
.page--preisrechner .pc-step__heading h3 { font-size:1.125rem; }
.page--preisrechner .pc-step__heading { margin-bottom:.85rem; }
.page--preisrechner .pc-form__footer { border:0; }
.page--preisrechner .iq-next-row { justify-content:flex-end; margin-top:.5rem; }
.page--preisrechner .pc-care-options { display:block; }
.page--preisrechner .pc-care-options .pc-scope-note { margin:0 0 1rem; }
.page--preisrechner .iq-form { padding:0; background:none; border:0; border-radius:0; }
.page--preisrechner .iq-draft { display:block; }
.page--preisrechner .iq-intro { margin-bottom:1.25rem; }
.page--preisrechner .iq-check { min-height:44px; }
.studio-people { display:flex; gap:1rem; padding:1.25rem 0; margin-top:1.25rem; border-top:1px solid #47577a; }
.studio-people__mark { display:grid; place-items:center; flex:0 0 3rem; height:3rem; font-size:1rem; color:#e4e8ff; background:linear-gradient(135deg,#355194,#5f4095); border-radius:50%; }
.studio-people p { margin:0 0 .5rem; color:#b9c7df; font-size:1rem; }
.studio-people .studio-people__names { color:#eef2ff; font-size:.875rem; }
.studio-people a { display:inline-block; color:#b5ccff; font-size:.875rem; min-height:44px; text-decoration:underline; }
.page--preisrechner .pc-summary-column { top:calc(var(--header-height) + 5rem); }
.studio-summary-mark { color:#b2baff; font-size:1.4rem; }
.studio-summary-context { font-size:1rem; color:#b7c5de; margin:.3rem 0 1.3rem; }
.page--preisrechner .pc-summary__top .pc-kicker { font-size:.875rem; }
.page--preisrechner.is-inquiry-complete :is(.journey-stop,.iq-progress) { display:none; }
.page--preisrechner .pc-faq { background:#f7f2e9; padding:3rem 0; }
.page--preisrechner .pc-faq h2 { color:#201b15; font-size:clamp(2rem,3.5vw,3.2rem); }
.page--preisrechner .pc-faq .pc-link { font-size:1rem; min-height:44px; }
.page--preisrechner .pc-faq__items details:not([open]) > summary > span { transform:none; }
.pc-faq-more > div { padding-left:1rem; border-left:2px solid #9aaae2; }
.page--preisrechner .pc-mobile-total__next { background:var(--pc-gradient); }
.page--preisrechner :is(input,select,textarea,summary,.journey-stop,.journey-heading h3,#inquiry-errors) { scroll-margin-top:calc(var(--header-height) + 6rem); }
@media (max-width:1190px) {
  .page--preisrechner .pc-packages__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page--preisrechner .pc-package__description,.page--preisrechner .pc-package__price > span { min-height:0; }
}
@media (max-width:900px) {
  .page--preisrechner .pc-calculator__grid { grid-template-columns:1fr; }
  .page--preisrechner .pc-summary-column { position:static; }
  .page--preisrechner .pc-summary { max-width:none; }
  .page--preisrechner .pc-hero__grid { grid-template-columns:1fr; padding-bottom:2.5rem; }
}
@media (max-width:700px) {
  .page--preisrechner .pc-hero { padding-top:calc(var(--header-height) + 2rem); }
  .page--preisrechner .pc-hero h1 { font-size:clamp(2.7rem,9vw,4rem); white-space:normal; margin-bottom:1.25rem; }
  .page--preisrechner .pc-hero__lead { font-size:1rem; max-width:20rem; }
  .page--preisrechner .pc-eyebrow { margin-bottom:1.1rem; }
  .page--preisrechner .pc-section-heading { display:block; }
  .page--preisrechner .pc-section-heading > p { margin-top:.75rem; }
  .page--preisrechner .pc-packages { padding-top:2rem; }
  .page--preisrechner .pc-packages__grid { grid-template-columns:1fr; gap:1rem; }
  .page--preisrechner .pc-package { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:.75rem; padding:1.25rem; }
  .page--preisrechner .pc-package__top { grid-column:1 / -1; margin-bottom:.75rem; }
  .page--preisrechner .pc-package h3 { font-size:1.85rem; grid-column:1; grid-row:2; margin:0; align-self:center; }
  .page--preisrechner .pc-package__price { grid-column:2; grid-row:2 / 4; text-align:right; border:0; padding:0; }
  .page--preisrechner .pc-package__price strong { font-size:1.8rem; }
  .page--preisrechner .pc-package__price strong small { display:block; font-size:.875rem; }
  .page--preisrechner .pc-package__price > span { max-width:8rem; margin-top:.35rem; }
  .page--preisrechner .pc-package__description { grid-column:1; font-size:.9375rem; margin:.5rem 0 .65rem; }
  .page--preisrechner .pc-package > .pc-disclosure { grid-column:1 / -1; margin:0 0 .5rem; }
  .page--preisrechner .pc-package__button { grid-column:1 / -1; font-size:1rem; }
  .page--preisrechner .pc-calculator { padding:2.5rem 0 3rem; }
  .journey-heading { grid-template-columns:2rem minmax(0,1fr) auto; gap:.6rem; }
  .journey-number { width:2rem; height:2rem; }
  .page--preisrechner .journey-heading h3 { font-size:1.125rem; }
  .journey-done { padding-left:2.6rem; }
  .page--preisrechner #project-options { grid-template-columns:1fr; }
}
@media (max-width:360px) {
  .page--preisrechner .pc-package { padding:1rem; column-gap:.5rem; }
  .page--preisrechner .pc-package h3 { font-size:1.6rem; }
  .page--preisrechner .pc-package__price strong { font-size:1.5rem; }
  .page--preisrechner .pc-package__price > span { max-width:6.5rem; }
  .journey-done { padding-left:0; }
}
