/* Agenturwahl statische Site: Seitenkomponenten zu styles.css. Nur Tokens, Präfixe li-/prf-/inh-/st-/bf-/cmp-. */

/* Listen-Seiten */
.li-sec{padding-block:var(--section)}
/* Tiefere Sektionen erst rendern, wenn sie in die Nähe des Viewports kommen */
.li-sec + .li-sec + .li-sec{content-visibility:auto;contain-intrinsic-size:auto 900px}
.li-sec.is-tight{padding-block:var(--section-s)}
.li-sort{position:sticky;top:calc(var(--nav-h) + 18px);z-index:5;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:10px 14px;border-radius:var(--r-pill);background:rgba(255,255,255,.94);border:1px solid var(--kalk-soft);box-shadow:var(--shadow)}
.li-sort .hint{margin:0;padding-left:6px}
.li-sort-ctl{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.li-sort-ctl .meta{white-space:nowrap}
@media (max-width:640px){ .li-sort{border-radius:20px;position:static} .li-sort .hint{display:none} }
.li-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s4)}
.li-list > li{list-style:none}
.li-status{font-size:var(--fs-small);color:var(--fels);max-width:var(--measure)}
.li-cta-inline{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;padding:22px 26px;border-radius:var(--r-card)}
.li-cta-inline p{max-width:60ch}
.li-cta{padding:clamp(28px,4vw,48px);border-radius:var(--r-bento);text-align:center;display:grid;gap:14px;justify-items:center}
.li-cta .lead{margin-inline:auto}
.li-trans{max-width:900px}
.li-trans > summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow);font:600 15.5px var(--f-text);min-height:56px}
.li-trans > summary::-webkit-details-marker{display:none}
.li-trans > summary::after{content:"";margin-left:auto;flex:none;width:24px;height:24px;border-radius:50%;background:var(--kalk-soft);background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink));background-size:10px 1.5px,1.5px 10px;background-position:center;background-repeat:no-repeat;transition:transform var(--t-base) var(--ease-out)}
.li-trans[open] > summary::after{transform:rotate(45deg)}
.li-trans[open] > summary{border-bottom-left-radius:0;border-bottom-right-radius:0}
.li-trans-body{display:grid;gap:var(--s4);padding:20px;border:1px solid var(--kalk);border-top:0;border-radius:0 0 var(--r-card) var(--r-card);background:var(--surface)}
.li-trans-grid{display:grid;gap:10px;grid-template-columns:1fr}
@media (min-width:760px){ .li-trans-grid{grid-template-columns:repeat(2,1fr)} }
.li-trans-item{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-row);background:var(--fog);font-size:14.5px;color:var(--ink-2);line-height:1.5}
.li-trans-item b{color:var(--ink)}
.li-trans-item .icon-tile{width:32px;height:32px;border-radius:10px;flex:none;background:var(--surface)}
.li-trans-item .icon-tile svg{width:16px;height:16px}
.li-intro{display:grid;gap:var(--s4);max-width:var(--measure);color:var(--ink-2)}
.li-guide{display:grid;gap:var(--s5)}
.li-crit{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media (min-width:700px){ .li-crit{grid-template-columns:repeat(2,1fr)} }
.li-crit-item{display:flex;gap:14px;align-items:flex-start;padding:20px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow)}
.li-crit-item p{margin:0;font-size:14.5px;color:var(--ink-2);line-height:1.5}
.li-two{display:grid;gap:var(--s5);grid-template-columns:1fr}
@media (min-width:900px){ .li-two{grid-template-columns:1fr 1fr} }
.li-steps{margin:0;padding:0;list-style:none;display:grid;gap:10px;counter-reset:st}
.li-steps li{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;font-size:14.5px;color:var(--ink-2);line-height:1.5}
.li-steps li::before{counter-increment:st;content:counter(st);display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--tanne-soft);color:var(--tanne);font:700 12px var(--f-mono)}
.li-steps-big{gap:14px;max-width:var(--measure)}
.li-steps-big li{font-size:16px}
.li-warn{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.li-warn li{display:grid;grid-template-columns:26px 1fr;gap:12px;align-items:start;font-size:14.5px;color:var(--ink-2);line-height:1.5}
.li-warn li::before{content:"";width:22px;height:22px;border-radius:50%;background:var(--kalk-soft);background-image:linear-gradient(var(--ink),var(--ink));background-size:10px 1.5px;background-position:center;background-repeat:no-repeat;margin-top:1px}
.li-card{background:var(--surface);border:1px solid var(--kalk);border-radius:var(--r-card);padding:24px;box-shadow:var(--shadow);display:grid;gap:var(--s4);align-content:start}
.li-card h3{font-size:1.15rem}
.li-card > *{min-width:0}
.li-card .tablewrap{box-shadow:none}
.li-card .tablewrap table{min-width:0;width:100%;table-layout:fixed}
.li-card .tablewrap thead th{white-space:normal}
.li-card .tablewrap th:first-child,.li-card .tablewrap td:first-child{width:38%;white-space:normal}
.li-table table{min-width:820px}
.li-table td.li-cell-name{min-width:170px}
.li-table td.li-cell-name a{color:inherit;text-decoration:none;font-weight:600}
.li-table td.li-cell-name a:hover{color:var(--tanne)}
.li-table .idx{min-width:110px}
/* Tabelle als Kartenstapel unter 760 px */
@media (max-width:759px){
  .li-table .scroll-x{overflow:visible;background:none}
  .li-table table{min-width:0;display:block}
  .li-table thead{display:none}
  .li-table tbody{display:grid;gap:10px;padding:12px}
  .li-table tr{display:grid;grid-template-columns:32px 1fr;gap:4px 12px;padding:14px;border:1px solid var(--kalk);border-radius:var(--r-row);background:var(--surface)}
  .li-table td{display:block;padding:0;border:0;font-size:14px;background:none!important}
  .li-table td[data-l]::before{content:attr(data-l) " ";color:var(--fels);font-size:12px}
  .li-table td.li-cell-nr{grid-row:1/span 6;font-family:var(--f-mono);color:var(--fels)}
  .li-table td.li-cell-name{font-size:15.5px}
  .li-table td.is-hide{display:none}
}
.li-hub-group{display:grid;gap:12px;padding:22px 24px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow)}
.li-hub-group h3{font-size:1.1rem;display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.li-hub-group h3 .meta{font-family:var(--f-text);font-weight:500}
.li-hub-grid{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media (min-width:760px){ .li-hub-grid{grid-template-columns:repeat(2,1fr)} }
@media (min-width:1100px){ .li-hub-grid.cols-3{grid-template-columns:repeat(3,1fr)} }
.li-hub-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:center;padding:16px 20px;border-radius:16px;background:var(--surface);border:1px solid var(--kalk);color:inherit;text-decoration:none;transition:border-color var(--t-fast),transform var(--t-base) var(--ease-out),box-shadow var(--t-base)}
.li-hub-row:hover{border-color:color-mix(in srgb,var(--tanne) 30%,var(--kalk));transform:translateY(-2px);box-shadow:var(--shadow)}
.li-hub-row b{font:700 16px/1.25 var(--f-display);letter-spacing:-.015em;color:var(--ink)}
.li-hub-row span{font-size:13.5px;color:var(--fels)}
.li-hub-row > b{grid-column:1;grid-row:1}
.li-hub-row > span{grid-column:1;grid-row:2}
.li-hub-row .card-num{grid-column:2;grid-row:1/span 2;font-size:1.6rem;align-self:center}
.li-hub-stats{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px;color:var(--ink-2)}
.li-hub-stats b{font:800 1.25rem var(--f-display);color:var(--ink);letter-spacing:-.02em;margin-right:4px}
.li-links{display:grid;gap:var(--s5);grid-template-columns:1fr}
@media (min-width:900px){ .li-links{grid-template-columns:repeat(3,1fr)} }
.li-links h3{font-size:1rem;color:var(--fels);font-family:var(--f-text);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:12px}
.li-linklist{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.li-linklist a{display:flex;justify-content:space-between;gap:10px;padding:8px 0;color:var(--ink-2);text-decoration:none;border-bottom:1px solid var(--kalk-soft);font-size:15px}
.li-linklist a:hover{color:var(--tanne)}
.li-linklist a .num{color:var(--fels);font-size:13px}
.li-note{font-size:13px;color:var(--fels);max-width:80ch}
.li-byline{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding-top:var(--s4)}
.li-region-tabs{position:sticky;top:calc(var(--nav-h) + 18px);z-index:5;display:flex;gap:6px;overflow-x:auto;padding:6px;border-radius:var(--r-pill);background:rgba(255,255,255,.94);border:1px solid var(--kalk-soft);box-shadow:var(--shadow);scrollbar-width:none}
.li-region-tabs::-webkit-scrollbar{display:none}
.li-region-tabs a{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--r-pill);color:var(--ink-2);text-decoration:none;font-weight:600;font-size:14px;min-height:36px}
.li-region-tabs a:hover{background:var(--kalk-soft);color:var(--ink)}
.li-region-tabs a .num{font-size:12px;color:var(--fels)}
.li-region{scroll-margin-top:calc(var(--nav-h) + 96px)}
.li-region h2{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.li-region h2 .meta{font:500 14px var(--f-text)}
.prf-embed{display:block;margin-top:8px;padding:10px 12px;border-radius:10px;background:var(--fog);border:1px solid var(--kalk);font:12px/1.5 var(--f-mono);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}

/* Profil */
.prf-top{display:grid;gap:var(--s5);grid-template-columns:1fr}
@media (min-width:960px){ .prf-top{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:var(--s7)} }
.prf-top-main{display:flex;gap:20px;align-items:flex-start;flex-wrap:nowrap;min-width:0}
@media (max-width:520px){ .prf-top-main{flex-wrap:wrap} }
.prf-cta{display:grid;gap:12px;padding:22px}
@media (min-width:960px){ .prf-cta{position:sticky;top:calc(var(--nav-h) + 24px)} }
.prf-sec{display:grid;gap:var(--s4)}
.prf-sec h2{font-size:var(--fs-h2-s)}
.prf-kv > *{padding:9px 0;border-bottom:1px solid var(--kalk-soft)}
.prf-kv dt{font-size:13.5px}
.prf-leist-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.prf-leist-card{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--kalk);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);font-size:14.5px;font-weight:600;color:var(--ink)}
.prf-tl-card{background:var(--surface);border:1px solid var(--kalk);border-radius:var(--r-card);box-shadow:var(--shadow);overflow:hidden}
.prf-tl-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 22px;background:var(--fog);border-bottom:1px solid var(--kalk)}
.prf-tl-list{list-style:none;margin:0;padding:18px 22px;display:grid;gap:0}
.prf-tl-row{display:grid;grid-template-columns:20px 1fr auto;gap:14px;align-items:baseline;padding:10px 0}
.prf-tl-dot{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;border:2px solid var(--kalk);background:var(--surface);color:var(--ink)}
.prf-tl-dot svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.prf-tl-row.is-done .prf-tl-dot{background:var(--tanne);border-color:var(--tanne);color:#FFFFFF}
.prf-tl-row.is-open{color:var(--fels)}
.prf-tl-st{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--fels);white-space:nowrap}
@media (max-width:520px){ .prf-tl-row{grid-template-columns:20px 1fr} .prf-tl-st{grid-column:2;justify-self:start} }
.prf-idx{display:grid;gap:var(--s4);padding:var(--card-pad)}
.prf-idx .idx-num{font-size:2.5rem}
.prf-bento{display:grid;gap:var(--s5);grid-template-columns:1fr}
@media (min-width:960px){ .prf-bento{grid-template-columns:minmax(0,1fr) minmax(0,1fr)} }

/* Inhaltsseiten */
.content{display:grid;gap:var(--s4);max-width:var(--measure)}
.content h2{font-size:var(--fs-h2-s);margin-top:var(--s3)}
.inh-cardish{background:var(--surface);border:1px solid var(--kalk);border-radius:var(--r-card);padding:var(--card-pad);max-width:820px}
.inh-tl{list-style:none;margin:0;padding:0;display:grid;gap:22px;position:relative;max-width:820px}
.inh-tl::before{content:"";position:absolute;left:15px;top:6px;bottom:6px;width:2px;background:var(--kalk)}
.inh-tl-item{position:relative;display:grid;grid-template-columns:32px 1fr;gap:16px;align-items:start}
.inh-tl-dot{width:32px;height:32px;border-radius:50%;background:var(--surface);border:2px solid var(--kalk);display:grid;place-items:center;position:relative;z-index:1;font:700 13px var(--f-mono);color:var(--fels)}
.inh-tl-body{padding-top:3px}
.inh-tl-body h3{font-size:1.05rem;margin-bottom:4px}
.inh-tl-body p{font-size:14.5px;color:var(--ink-2)}
.inh-tl-body .meta{display:block;margin-top:6px}
.inh-benefit-grid{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media (min-width:600px){ .inh-benefit-grid{grid-template-columns:repeat(2,1fr)} }
@media (min-width:1100px){ .inh-benefit-grid{grid-template-columns:repeat(4,1fr)} }
.inh-benefit{padding:22px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow);display:grid;gap:10px;align-content:start}
.inh-benefit h3{font-size:1.05rem}
.inh-benefit p{font-size:14px;color:var(--ink-2)}
.inh-price-grid{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media (min-width:700px){ .inh-price-grid{grid-template-columns:repeat(3,1fr)} }
.inh-price{padding:26px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow);display:grid;gap:12px;align-content:start}
.inh-price-amt{font:800 1.3rem var(--f-display);letter-spacing:-.02em;color:var(--ink);line-height:1.25}
.inh-price p{font-size:14px;color:var(--ink-2)}
.inh-stats{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:640px){ .inh-stats{grid-template-columns:repeat(3,minmax(0,1fr))} }
.inh-stat{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:16px;background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow)}
.inh-stat .inh-stat-text{display:grid;gap:2px;min-width:0}
.inh-stat b{display:block;font:800 1.2rem/1.1 var(--f-display);color:var(--ink);letter-spacing:-.02em}
.inh-stat .inh-stat-text span{display:block;font-size:13px;color:var(--fels)}
.inh-team-grid{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media (min-width:700px){ .inh-team-grid{grid-template-columns:repeat(2,1fr)} }
.inh-team-card{display:flex;gap:14px;align-items:flex-start;padding:20px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow)}
.inh-avatar{width:52px;height:52px;border-radius:var(--r-pill);display:grid;place-items:center;flex:none;background:var(--tanne-soft);color:var(--tanne);font:700 17px var(--f-display)}
.inh-team-text{display:grid;gap:2px;min-width:0}
.inh-team-text b{font-size:15px;color:var(--ink)}
.inh-team-text span{font-size:13px;color:var(--fels)}
.inh-contact{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;padding:24px 28px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow);max-width:820px}
.inh-contact-main{display:flex;gap:14px;align-items:center;min-width:0}
.inh-formcard{padding:clamp(22px,3vw,36px);border-radius:var(--r-bento);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow);max-width:880px}
.inh-formcard-head{display:flex;align-items:center;gap:12px;margin-bottom:var(--s5)}
.inh-checkgrid{display:grid;gap:10px;grid-template-columns:1fr}
@media (min-width:700px){ .inh-checkgrid{grid-template-columns:repeat(2,1fr)} }
.inh-check{display:flex;align-items:center;gap:10px;font-weight:400}
.inh-check input{accent-color:var(--tanne);width:18px;height:18px;flex:none}
fieldset.inh-fieldset{border:0;padding:0;margin:0}
fieldset.inh-fieldset legend{padding:0;font-weight:600}

/* Bedarf: Stepper in einer Karte, ohne JS alle Schritte untereinander */
.bf-layout{display:grid;gap:var(--s5);grid-template-columns:1fr;align-items:start}
@media (min-width:1000px){ .bf-layout{grid-template-columns:minmax(0,1fr) 300px;gap:var(--s7)} }
.bf-card{padding:clamp(22px,3vw,36px);border-radius:var(--r-bento);background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow)}
.bf-progress{display:none;gap:6px;margin-bottom:var(--s5)}
.bf-progress li{list-style:none;display:grid;gap:8px;font:600 12.5px var(--f-text);color:var(--fels)}
.bf-progress li::before{content:"";height:4px;border-radius:4px;background:var(--kalk-soft)}
.bf-progress li.is-active{color:var(--ink)}
.bf-progress li.is-active::before,.bf-progress li.is-done::before{background:var(--idx-fill)}
.bf-progress li span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bf-step{display:grid;gap:var(--s5)}
.bf-step + .bf-step{padding-top:var(--s6);margin-top:var(--s6);border-top:1px solid var(--kalk-soft)}
.bf-step h2{font-size:var(--fs-h2-s)}
.bf-step .bf-q{display:grid;gap:12px}
.bf-step .bf-q > label,.bf-step legend{font-size:16px;font-weight:600;margin:0}
.bf-nav{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding-top:8px}
.bf-nav .btn-back{display:none}
.bf-prefill{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:12px 16px;border-radius:var(--r-row);background:var(--tanne-soft);color:var(--tanne);font-size:14px;font-weight:500}
.bf-prefill .tags{gap:6px}
.bf-prefill .tag{background:var(--surface);color:var(--tanne)}
.bf-side{display:grid;gap:14px;padding:22px 24px}
@media (min-width:1000px){ .bf-side{position:sticky;top:calc(var(--nav-h) + 24px)} }
.bf-side ol{margin:0;padding:0;list-style:none;display:grid;gap:12px}
.bf-side ol li{display:grid;grid-template-columns:28px 1fr;gap:12px;font-size:14px;color:var(--ink-2);line-height:1.45}
.bf-side ol li b{display:block;color:var(--ink)}
.bf-side ol li::before{content:counter(bf);counter-increment:bf;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--tanne-soft);color:var(--tanne);font:700 12px var(--f-mono)}
.bf-side ol{counter-reset:bf}
.bf-summary{display:grid;gap:8px;padding:16px 18px;border-radius:var(--r-row);background:var(--fog);border:1px solid var(--kalk);font-size:14px}
.bf-summary dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 14px}
.bf-summary dt{color:var(--fels)}
.bf-summary dd{margin:0;color:var(--ink)}
/* Mit JS (body.has-js): nur der aktive Schritt sichtbar, Fortschritt sichtbar */
.has-js .bf-progress{display:grid;grid-template-columns:repeat(4,1fr)}
.has-js .bf-step{display:none}
.has-js .bf-step.is-active{display:grid}
.has-js .bf-step + .bf-step{padding-top:0;margin-top:0;border-top:0}
.has-js .bf-nav .btn-back{display:inline-flex}
.has-js .bf-step:not(.is-last) .bf-submit{display:none}

/* Startseite */
.st-hero{position:relative;padding-block:clamp(32px,5vw,72px) clamp(40px,6vw,72px)}
.st-hero-inner{display:grid;gap:var(--s5);justify-items:center;text-align:center;max-width:820px;margin-inline:auto}
.st-hero h1{max-width:16ch}
.st-hero .lead{text-align:center;margin-inline:auto;max-width:58ch}
.st-hero-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px}
.st-hero-meta span{display:inline-flex;align-items:center;gap:6px}
.st-hero-meta svg{width:14px;height:14px;stroke:var(--tanne);fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.st-stats{display:grid;gap:var(--s4) var(--s5);grid-template-columns:1fr;padding:20px 24px;border-radius:var(--r-bento);margin-top:var(--s5);max-width:1040px;margin-inline:auto;width:100%}
@media (min-width:600px){ .st-stats{grid-template-columns:repeat(2,1fr)} }
@media (min-width:1000px){ .st-stats{grid-template-columns:repeat(4,1fr);padding:22px 32px} }
.st-stat{display:flex;gap:14px;align-items:center;min-width:0}
.st-stat-num{font:700 15px/1.2 var(--f-text);color:var(--ink);display:block}
.st-stat-num b{font:800 1.35rem var(--f-display);letter-spacing:-.03em;margin-right:4px}
.st-stat-text{font-size:13px;color:var(--fels);display:block}
.st-leist{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media (min-width:640px){ .st-leist{grid-template-columns:repeat(2,1fr)} }
@media (min-width:1000px){ .st-leist{grid-template-columns:repeat(4,1fr)} }
.st-leist .card{gap:10px;min-height:100%}
.st-leist .card .card-num{margin-bottom:6px}
.st-leist .card h3{font-size:1.1rem}
.st-leist .card p{font-size:14px;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.st-orte{display:grid;gap:var(--s4);grid-template-columns:repeat(2,1fr)}
@media (min-width:700px){ .st-orte{grid-template-columns:repeat(4,1fr)} }
.st-ort{display:grid;gap:4px;padding:18px 20px;border-radius:16px;background:var(--surface);border:1px solid var(--kalk);color:inherit;text-decoration:none;transition:border-color var(--t-fast),transform var(--t-base) var(--ease-out),box-shadow var(--t-base)}
.st-ort:hover{border-color:color-mix(in srgb,var(--tanne) 30%,var(--kalk));transform:translateY(-2px);box-shadow:var(--shadow)}
.st-ort b{font:700 16px var(--f-display);letter-spacing:-.015em;color:var(--ink)}
.st-ort span{font-size:13px;color:var(--fels)}
.st-more{max-width:none}
.st-more > summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font:600 15px var(--f-text);color:var(--tanne);min-height:40px}
.st-more > summary::-webkit-details-marker{display:none}
.st-more > summary::after{content:"→";transition:transform var(--t-base)}
.st-more[open] > summary::after{transform:rotate(90deg)}
.st-more-body{display:grid;gap:var(--s4);padding-top:var(--s4);grid-template-columns:1fr}
@media (min-width:760px){ .st-more-body{grid-template-columns:repeat(2,1fr)} }
@media (min-width:1100px){ .st-more-body{grid-template-columns:repeat(3,1fr)} }
.st-steps{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media (min-width:800px){ .st-steps{grid-template-columns:repeat(3,1fr)} }
.st-steps .card{gap:10px}
.st-steps .card p{font-size:14.5px;color:var(--ink-2)}
.st-indep{padding:clamp(24px,3.5vw,44px);border-radius:var(--r-bento)}
.st-indep .grid-2{gap:var(--s6)}
.st-end{display:grid;gap:var(--s5);align-items:center;grid-template-columns:1fr;padding:clamp(28px,4vw,48px);border-radius:var(--r-bento)}
@media (min-width:800px){ .st-end{grid-template-columns:1fr auto} }
.st-end h2{font-size:var(--fs-h2)}

/* Vergleich (clientseitig) */
.cmp-table{width:100%;border-collapse:separate;border-spacing:0;font-size:15px}
.cmp-table th,.cmp-table td{padding:12px 14px;border-bottom:1px solid var(--kalk-soft);vertical-align:top;text-align:left;min-width:180px}
.cmp-table th:first-child,.cmp-table td:first-child{position:sticky;left:0;background:var(--surface);z-index:1;border-right:1px solid var(--kalk);min-width:140px;font-weight:600;color:var(--fels);font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.cmp-table thead th{position:sticky;top:calc(var(--nav-h) + 20px);background:var(--surface);z-index:2;text-transform:none;letter-spacing:0}
.cmp-table thead th:first-child{z-index:3}
.cmp-grouphead td{background:var(--fog);font:700 11.5px/1.2 var(--f-display);letter-spacing:.05em;text-transform:uppercase;color:var(--fels);position:static}
.cmp-table td.is-muted{color:var(--fels);font-style:italic}

/* Nur mit JS sichtbare Bedienelemente */
.js-only{display:none!important}
.has-js .js-only{display:inline-flex!important}
.has-js .bf-summary.js-only{display:grid!important}
.has-js .bf-summary[hidden]{display:none!important}
.has-js .bf-nav .btn-back[hidden]{display:none!important}

/* Datenblöcke auf Listen: Marktüberblick (grosse Zahl + Beschriftung + Quelle), Nachfrage-Tabelle, Ort in Zahlen */
.li-facts{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:640px){ .li-facts{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (min-width:1000px){ .li-facts{grid-template-columns:repeat(4,minmax(0,1fr))} }
.li-fact{display:grid;gap:4px;align-content:start;padding:18px 18px 16px;border-radius:16px;background:var(--surface);border:1px solid var(--kalk);box-shadow:var(--shadow);min-width:0}
.li-fact > b{font:800 1.75rem/1.05 var(--f-display);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}
.li-fact .li-fact-sub{font:700 .95rem var(--f-text);color:var(--fels);margin-left:4px;letter-spacing:0}
.li-fact > span{font-size:13.5px;color:var(--ink-2);line-height:1.4}
.li-fact > small{font-size:12px;color:var(--fels)}
.li-two-data{align-items:start}
.li-bench .tablewrap,.li-zahlen .tablewrap{box-shadow:none}
.li-data table{width:100%;table-layout:auto}
.li-data th.num-col,.li-data td.num-col{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.li-data td .meta{display:block;font-size:12px}
.li-zahlen .kv{grid-template-columns:minmax(96px,120px) 1fr}
.li-zahlen .kv dd{font-size:14.5px;color:var(--ink-2)}
.li-zahlen .kv dd > b{font:800 1.25rem/1 var(--f-display);color:var(--ink);letter-spacing:-.02em}
.li-zahlen-list{margin:0;padding-left:18px;display:grid;gap:2px}
.li-frage{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-row);background:var(--surface);border:1px solid var(--kalk);font-size:14.5px;color:var(--ink-2);line-height:1.5}
.li-frage b{color:var(--ink)}
.li-frage .icon-tile{width:32px;height:32px;border-radius:10px;flex:none}
.li-frage .icon-tile svg{width:16px;height:16px}
.li-gewichte td.num{font-variant-numeric:tabular-nums;text-align:right}
@media (max-width:759px){
  .li-data .scroll-x{overflow:visible;background:none}
  .li-data table{display:block;min-width:0}
  .li-data thead{display:none}
  .li-data tbody{display:grid;gap:8px}
  .li-data tr{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:10px 12px;border:1px solid var(--kalk);border-radius:12px;background:var(--fog)}
  .li-data td{display:block;padding:0;border:0;font-size:14px;background:none!important;text-align:left}
  .li-data td.is-sticky{grid-column:1/span 2}
  .li-data td[data-l]::before{content:attr(data-l) " ";color:var(--fels);font-size:12px}
  .li-table.li-gewichte td.li-cell-nr{display:none}
}

/* Startseite: Logo-Leiste der Agenturen direkt unter dem Hero (monochrom, Farbe bei Hover, Pillen) */
.st-logos{display:grid;gap:18px;justify-items:center;text-align:center}
.st-logos-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;list-style:none;margin:0;padding:0;width:100%}
.st-logos-row li{display:contents}
.st-logo{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 22px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--kalk-soft);color:var(--ink);text-decoration:none;transition:box-shadow var(--t-base),transform var(--t-base) var(--ease-out),border-color var(--t-base)}
.st-logo img{display:block;height:22px;width:auto;max-width:112px;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter var(--t-base),opacity var(--t-base)}
.st-logo:hover{box-shadow:var(--shadow);transform:translateY(-1px);border-color:var(--kalk)}
.st-logo:hover img,.st-logo:focus-visible img{filter:none;opacity:1}
@media (max-width:699px){
  .st-logos-row{justify-self:stretch;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x proximity;padding:4px var(--gutter) 8px;margin-inline:calc(var(--gutter) * -1);width:auto;scrollbar-width:none}
  .st-logos-row::-webkit-scrollbar{display:none}
  .st-logo{flex:none;scroll-snap-align:start;height:46px;padding:0 18px}
  .st-logo img{height:19px;max-width:96px}
}

/* Formulare: Status (Erfolg/Fehler) nach dem Absenden per fetch, ungültige Felder */
.form-status{max-width:none;margin-top:4px}
.form-status[hidden]{display:none}
.field .is-invalid{border-color:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 18%,transparent)}
#pb-form[hidden]{display:none}
