/* =========================================================
   JHB Berlin-Angebote – Agentur-System V26
   ---------------------------------------------------------
   Berlin-Palette: urbanes Petrol-Blau, Weiß, sehr ruhiges Mint.
   Ambulante-Hilfen-Berlin: Desktop-Hero mit ruhigem Bild und weißer Typografie.
   Mobile H1, Kurzfakten, Berlin-Fokus, Safe-Area, Micro-Motion und Berlin-SEO sauber ausgerichtet.
   ========================================================= */

.jhb-berlin-angebot,
.jba-existing-bridge{
  --jba-text:#17384a;
  --jba-muted:#5f7482;
  --jba-muted-soft:#7b919e;

  --jba-blue:#2f6f84;
  --jba-blue-dark:#17384a;
  --jba-blue-ink:#2f6f84;
  --jba-blue-rgb:47,111,132;

  --jba-orange:#e9620b;
  --jba-orange-dark:#c95409;
  --jba-orange-rgb:233,98,11;

  --jba-green:#4f8d80;
  --jba-green-dark:#2f6f63;
  --jba-green-rgb:79,141,128;
  --jba-mint:#edf8f6;
  --jba-apricot:#fff4ea;
  --jba-cream:#fffdf9;
  --jba-cream-2:#f5efe6;
  --jba-surface:#ffffff;
  --jba-surface-soft:#f8fbfd;
  --jba-section-blue:#f3f8fb;
  --jba-section-blue-strong:#eaf3f7;
  --jba-soft:#eaf4f7;
  --jba-soft-2:#d8e7ec;

  --jba-line:rgba(23,56,74,.095);
  --jba-line-blue:rgba(47,111,132,.135);
  --jba-shadow:0 22px 52px rgba(18,49,62,.07);
  --jba-shadow-soft:0 12px 28px rgba(18,49,62,.04);
  --jba-shadow-lift:0 28px 64px rgba(18,49,62,.115);

  --jba-radius:26px;
  --jba-radius-sm:18px;
  --jba-max:1160px;

  font-family:"Nunito Sans","Nunito",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color:var(--jba-text);
  line-height:1.68;
}

.jhb-berlin-angebot *,
.jhb-berlin-angebot *::before,
.jhb-berlin-angebot *::after,
.jba-existing-bridge *,
.jba-existing-bridge *::before,
.jba-existing-bridge *::after{box-sizing:border-box}

.jhb-berlin-angebot a,
.jba-existing-bridge a{color:inherit;text-decoration:none}

.jhb-berlin-angebot :target{scroll-margin-top:132px}
body.admin-bar .jhb-berlin-angebot :target{scroll-margin-top:164px}

.jhb-berlin-angebot .jba-wrap{width:min(var(--jba-max),calc(100% - 32px));margin:0 auto}
.jhb-berlin-angebot .jba-wrap--narrow{width:min(900px,calc(100% - 32px))}

@keyframes jbaHeroRise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes jbaDividerFlow{0%{background-position:0% 50%;transform:scaleX(.86)}45%{background-position:100% 50%;transform:scaleX(1)}100%{background-position:0% 50%;transform:scaleX(.86)}}
@keyframes jbaSoftPulse{0%,100%{transform:scale(.78);opacity:.28}50%{transform:scale(1.22);opacity:.62}}
@keyframes jbaDistrictGlow{0%,100%{box-shadow:0 12px 24px rgba(18,49,62,.038),inset 0 1px 0 rgba(255,255,255,.82)}50%{box-shadow:0 18px 34px rgba(47,111,132,.08),inset 0 1px 0 rgba(255,255,255,.88)}}

@keyframes jbaBerlinBreath{0%,100%{transform:translate(-50%,-50%) rotate(-5deg) scale(1);opacity:.64}50%{transform:translate(-50%,-50%) rotate(-2deg) scale(1.035);opacity:.88}}

/* =========================================================
   HERO
   ========================================================= */

.jhb-berlin-angebot .jba-hero{
  position:relative;
  overflow:hidden;
  min-height:548px;
  display:flex;
  align-items:center;
  padding:66px 0 56px;
  background:
    radial-gradient(1040px 430px at 50% -18%,rgba(255,255,255,.98),rgba(255,255,255,0) 72%),
    radial-gradient(760px 360px at 16% 18%,rgba(229,249,242,.42),rgba(229,249,242,0) 72%),
    radial-gradient(720px 340px at 88% 20%,rgba(234,244,247,.68),rgba(234,244,247,0) 74%),
    linear-gradient(135deg,#ffffff 0%,#fcfefe 48%,#f5fafb 76%,#edf5f8 100%);
  border-bottom:1px solid rgba(23,56,74,.065);
}

.jhb-berlin-angebot .jba-hero__media{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;pointer-events:none;overflow:hidden;opacity:0}
.jhb-berlin-angebot .jba-hero__media picture{display:block;width:100%;height:100%}
.jhb-berlin-angebot .jba-hero__media img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center}
.jhb-berlin-angebot .jba-hero .jba-wrap{position:relative;z-index:2}
.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__media{opacity:1}

.jhb-berlin-angebot .jba-hero::before,
.jhb-berlin-angebot .jba-hero::after{position:absolute;pointer-events:none;content:"";display:block}
.jhb-berlin-angebot:not(.jhb-berlin-angebot--ambulante-hilfen-berlin) .jba-hero::before{
  left:50%;
  right:auto;
  bottom:54px;
  width:min(1080px,88vw);
  height:360px;
  z-index:0;
  opacity:.68;
  transform:translateX(-50%);
  border-radius:999px;
  background:
    radial-gradient(520px 230px at 50% 40%,rgba(255,255,255,.88),rgba(255,255,255,0) 74%),
    radial-gradient(440px 190px at 28% 64%,rgba(229,249,242,.54),rgba(229,249,242,0) 72%),
    radial-gradient(500px 210px at 72% 58%,rgba(207,229,234,.48),rgba(207,229,234,0) 74%);
  filter:blur(.15px);
}

.jhb-berlin-angebot .jba-hero::after{
  left:0;
  right:0;
  bottom:-1px;
  z-index:1;
  height:128px;
  background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(248,252,251,.78) 56%,#ffffff 100%);
}

@media (min-width:761px){
  .jhb-berlin-angebot:not(.jhb-berlin-angebot--ambulante-hilfen-berlin) .jba-hero::before{
    display:block;
    bottom:48px;
    width:min(1180px,90vw);
    height:385px;
    opacity:.72;
  }

.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero{
    min-height:662px;
    padding:78px 0 126px;
    background:#17384a;
    border-bottom:0;
  }
  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero::before{
    background:
      linear-gradient(180deg,rgba(18,29,34,.42) 0%,rgba(18,29,34,.3) 38%,rgba(18,29,34,.22) 70%,rgba(255,255,255,.16) 100%),
      linear-gradient(90deg,rgba(8,19,24,.18) 0%,rgba(8,19,24,.03) 24%,rgba(8,19,24,.04) 76%,rgba(8,19,24,.18) 100%);
  }

  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero::before{
    inset:0;
    z-index:1;
    opacity:1;
    filter:none;
  }

  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero::after{
    height:176px;
    background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.74) 73%,#ffffff 100%);
  }

  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__content{max-width:900px}
}

 .jhb-berlin-angebot .jba-hero__grid{display:none}
.jhb-berlin-angebot .jba-hero__content{position:relative;z-index:2;max-width:930px;margin:0 auto;text-align:center;animation:jbaHeroRise .72s cubic-bezier(.22,1,.36,1) both}
.jhb-berlin-angebot .jba-hero__content::before,
.jhb-berlin-angebot .jba-hero__content::after{
  content:"";
  position:absolute;
  left:50%;
  top:52%;
  z-index:-1;
  pointer-events:none;
  transform:translate(-50%,-50%);
}
.jhb-berlin-angebot .jba-hero__content::before{
  width:min(860px,92vw);
  height:360px;
  opacity:.48;
  border-radius:48% 52% 54% 46%;
  background:
    linear-gradient(90deg,rgba(var(--jba-blue-rgb),.055) 1px,transparent 1px),
    linear-gradient(0deg,rgba(var(--jba-blue-rgb),.04) 1px,transparent 1px),
    radial-gradient(260px 150px at 76% 24%,rgba(255,255,255,.7),transparent 72%);
  background-size:56px 56px,56px 56px,auto;
  mask-image:radial-gradient(ellipse at center,#000 0%,rgba(0,0,0,.72) 46%,transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse at center,#000 0%,rgba(0,0,0,.72) 46%,transparent 78%);
}
.jhb-berlin-angebot .jba-hero__content::after{
  width:min(780px,88vw);
  height:260px;
  opacity:.42;
  border:1px solid rgba(var(--jba-blue-rgb),.105);
  border-radius:54% 46% 48% 52%;
  background:
    linear-gradient(135deg,transparent 0 42%,rgba(var(--jba-blue-rgb),.09) 42.4% 42.9%,transparent 43.3% 100%),
    linear-gradient(24deg,transparent 0 48%,rgba(var(--jba-green-rgb),.065) 48.4% 48.9%,transparent 49.3% 100%);
}

/* Hero: ruhige Lichtfläche statt Linien-/Skyline-Grafik */
.jhb-berlin-angebot:not(.jhb-berlin-angebot--ambulante-hilfen-berlin) .jba-hero__content::before,
.jhb-berlin-angebot:not(.jhb-berlin-angebot--ambulante-hilfen-berlin) .jba-hero__content::after{content:none;display:none}

.jhb-berlin-angebot .jba-crumbs{position:relative;z-index:2;display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:0 0 18px;color:var(--jba-muted-soft);font-size:.82rem;font-weight:800;letter-spacing:.02em;text-transform:none}
.jhb-berlin-angebot .jba-crumbs a{color:var(--jba-muted-soft)}
.jhb-berlin-angebot .jba-crumbs a:hover{color:var(--jba-blue-dark);text-decoration:underline;text-underline-offset:3px}

.jhb-berlin-angebot .jba-eyebrow,
.jhb-berlin-angebot .jba-kicker{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:32px;padding:7px 15px;border-radius:999px;border:1px solid rgba(var(--jba-blue-rgb),.19);background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(229,249,242,.68) 100%);color:var(--jba-blue-ink);font-size:.69rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;box-shadow:0 8px 18px rgba(20,39,49,.045),inset 0 1px 0 rgba(255,255,255,.82)}

.jhb-berlin-angebot .jba-hero h1{max-width:min(900px,100%);margin:18px auto 0;color:var(--jba-text);font-size:clamp(2.22rem,3.55vw,3.28rem);line-height:1.035;font-weight:800;letter-spacing:-.038em;text-wrap:balance;overflow-wrap:break-word;word-break:normal;hyphens:auto}
.jhb-berlin-angebot .jba-hero h1 .jba-h1-line{display:inline;white-space:nowrap}
.jhb-berlin-angebot .jba-hero h1 .jba-h1-line--hze-topic,
.jhb-berlin-angebot .jba-hero h1 .jba-h1-line--hze-city{display:inline;white-space:nowrap}
.jhb-berlin-angebot .jba-hero h1::after{content:"";display:block;width:92px;height:2px;margin:18px auto 0;border-radius:999px;background:linear-gradient(90deg,rgba(47,111,132,0),rgba(47,111,132,.62),rgba(221,241,235,.96),rgba(47,111,132,0));opacity:.9;animation:none}
.jhb-berlin-angebot .jba-hero__tagline{max-width:47rem;margin:.82rem auto 0;color:var(--jba-blue-dark);font-size:1.02rem;font-weight:800;letter-spacing:-.006em;text-wrap:balance}
.jhb-berlin-angebot .jba-hero__lead{max-width:47rem;margin:.78rem auto .78rem;color:var(--jba-muted);font-size:1.01rem;line-height:1.72;text-wrap:pretty}
.jhb-berlin-angebot .jba-hero-note{width:min(100%,45rem);max-width:45rem;margin:.82rem auto .58rem;color:rgba(102,122,136,.92);font-size:.9rem;line-height:1.58;text-align:center;text-wrap:balance}

@media (min-width:761px){
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-crumbs,
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-crumbs a{color:rgba(255,255,255,.84)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-crumbs a:hover{color:#fff;text-decoration-color:rgba(255,255,255,.72)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-eyebrow{border-color:rgba(255,255,255,.62);background:rgba(255,255,255,.88);color:#8b521e;box-shadow:0 12px 26px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.86)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero h1{color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.26)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero h1::after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.74),rgba(255,255,255,0));opacity:.84}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__tagline{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.22)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__lead{max-width:49rem;color:rgba(255,255,255,.9);text-shadow:0 2px 18px rgba(0,0,0,.2)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-note{color:rgba(255,255,255,.88);text-shadow:0 2px 16px rgba(0,0,0,.18)}
}

.jhb-berlin-angebot .jba-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;gap:.74rem;margin:1.18rem auto .62rem;max-width:930px;align-items:stretch}
.jhb-berlin-angebot .jba-facts > span,
.jhb-berlin-angebot .jba-facts > .jba-fact{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-rows:18px minmax(2.35em,auto) minmax(1.15em,auto);
  align-items:center;
  justify-items:center;
  place-items:center;
  row-gap:.18rem;
  min-width:0;
  width:100%;
  height:100%;
  min-height:90px;
  padding:.92rem .86rem .78rem;
  border:1px solid rgba(var(--jba-blue-rgb),.13);
  border-radius:20px;
  background:
    radial-gradient(180px 95px at 50% 0%,rgba(255,255,255,.86),rgba(255,255,255,0) 72%),
    linear-gradient(180deg,rgba(255,255,255,.94) 0%,rgba(248,252,251,.84) 100%);
  color:var(--jba-text);
  font-size:.97rem;
  font-weight:800;
  text-align:center;
  line-height:1.18;
  box-shadow:0 16px 34px rgba(18,49,62,.058),inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:saturate(1.12) blur(12px);
  -webkit-backdrop-filter:saturate(1.12) blur(12px);
}
.jhb-berlin-angebot .jba-facts > span::before,
.jhb-berlin-angebot .jba-facts > .jba-fact::before{
  content:"";
  position:absolute;
  left:28px;
  right:28px;
  top:0;
  height:1px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(207,229,234,0),rgba(207,229,234,.74) 28%,rgba(221,241,235,.82) 72%,rgba(221,241,235,0));
  opacity:.72;
}
.jhb-berlin-angebot .jba-facts strong{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:18px;
  color:var(--jba-blue);
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1.15;
  text-align:center;
  text-transform:uppercase;
  text-wrap:balance;
  overflow-wrap:anywhere;
}
.jhb-berlin-angebot .jba-fact__value{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:2.35em;
  color:var(--jba-text);
  font-style:normal;
  font-size:inherit;
  font-weight:800;
  line-height:1.17;
  text-align:center;
  text-wrap:balance;
  overflow-wrap:break-word;
  hyphens:auto;
}
.jhb-berlin-angebot .jba-facts small{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:1.2em;
  color:var(--jba-muted-soft);
  font-size:.66rem;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.01em;
  text-align:center;
  text-transform:none;
  text-wrap:balance;
  overflow-wrap:anywhere;
  hyphens:auto;
}

.jhb-berlin-angebot .jba-hero-facts-band{position:relative;z-index:4;padding:20px 0 6px;background:#ffffff}
.jhb-berlin-angebot .jba-hero-facts-band .jba-facts{margin:0 auto .72rem}
.jhb-berlin-angebot .jba-hero-facts-band .jba-hero-note{margin:.66rem auto 0}

@media (min-width:761px){
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-facts-band{
    margin-top:-18px;
    padding:20px 0 10px;
    background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.94) 34%,#ffffff 100%);
  }

  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-facts-band .jba-facts{margin:0 auto 1rem}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-facts-band .jba-hero-note{margin:0 auto}
}

.jhb-berlin-angebot .jba-hero__actions{display:flex;justify-content:center;gap:.74rem;flex-wrap:wrap;margin-top:1.08rem}

/* =========================================================
   BUTTONS
   ========================================================= */

.jhb-berlin-angebot .jba-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;min-width:168px;min-height:46px;padding:.72rem 1.18rem;border:1px solid transparent;border-radius:999px;font-size:.92rem;font-weight:800;line-height:1.2;letter-spacing:.005em;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1),background-color .2s ease,border-color .2s ease,color .2s ease}
.jhb-berlin-angebot .jba-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,255,255,.18),transparent);opacity:0;transition:opacity .28s ease}
.jhb-berlin-angebot .jba-btn:hover{transform:translateY(-2px);text-decoration:none}
.jhb-berlin-angebot .jba-btn:hover::after{opacity:1}

.jhb-berlin-angebot a.jba-btn,
.jhb-berlin-angebot a.jba-btn:link,
.jhb-berlin-angebot a.jba-btn:visited,
.jba-existing-bridge a.jba-btn,
.jba-existing-bridge a.jba-btn:link,
.jba-existing-bridge a.jba-btn:visited{text-decoration:none}

.jhb-berlin-angebot a.jba-btn--primary,
.jhb-berlin-angebot a.jba-btn--primary:link,
.jhb-berlin-angebot a.jba-btn--primary:visited,
.jba-existing-bridge a.jba-btn--primary,
.jba-existing-bridge a.jba-btn--primary:link,
.jba-existing-bridge a.jba-btn--primary:visited{color:#fff}

.jhb-berlin-angebot a.jba-btn--primary:hover,
.jhb-berlin-angebot a.jba-btn--primary:focus-visible,
.jhb-berlin-angebot a.jba-btn--primary:active,
.jba-existing-bridge a.jba-btn--primary:hover,
.jba-existing-bridge a.jba-btn--primary:focus-visible,
.jba-existing-bridge a.jba-btn--primary:active{color:#fff}

.jhb-berlin-angebot a.jba-btn--secondary,
.jhb-berlin-angebot a.jba-btn--secondary:link,
.jhb-berlin-angebot a.jba-btn--secondary:visited,
.jba-existing-bridge a.jba-btn--secondary,
.jba-existing-bridge a.jba-btn--secondary:link,
.jba-existing-bridge a.jba-btn--secondary:visited{color:var(--jba-blue-dark)}

.jhb-berlin-angebot a.jba-btn--secondary:hover,
.jhb-berlin-angebot a.jba-btn--secondary:focus-visible,
.jhb-berlin-angebot a.jba-btn--secondary:active,
.jba-existing-bridge a.jba-btn--secondary:hover,
.jba-existing-bridge a.jba-btn--secondary:focus-visible,
.jba-existing-bridge a.jba-btn--secondary:active{color:var(--jba-blue-dark)}

.jhb-berlin-angebot .jba-btn--primary{min-width:188px;background:linear-gradient(135deg,var(--jba-blue) 0%,#24596a 100%);color:#fff;box-shadow:0 15px 30px rgba(var(--jba-blue-rgb),.2)}
.jhb-berlin-angebot .jba-btn--primary:hover{background:linear-gradient(135deg,#347b92 0%,#1f5060 100%);color:#fff;box-shadow:0 21px 42px rgba(var(--jba-blue-rgb),.26)}
.jhb-berlin-angebot .jba-btn--secondary{min-width:166px;background:rgba(255,255,255,.9);color:var(--jba-blue-dark);border-color:rgba(var(--jba-blue-rgb),.18);box-shadow:0 10px 22px rgba(20,39,49,.045)}
.jhb-berlin-angebot .jba-btn--secondary:hover{background:#fff;color:var(--jba-blue-dark);border-color:rgba(var(--jba-blue-rgb),.28);box-shadow:0 16px 32px rgba(18,49,62,.075)}

/* =========================================================
   INPAGE NAVIGATION
   ========================================================= */

.jhb-berlin-angebot .jba-nav-wrap{position:sticky;top:76px;z-index:0;padding:10px 0 14px;background:transparent}
.jhb-berlin-angebot .jba-hero-facts-band + .jba-nav-wrap{padding-top:2px}

@media (min-width:761px){
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-nav-wrap{padding:16px 0 26px}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-facts-band + .jba-nav-wrap{padding-top:10px}
}
body.admin-bar .jhb-berlin-angebot .jba-nav-wrap{top:108px}
.jhb-berlin-angebot .jba-nav{display:flex;align-items:center;justify-content:center;gap:4px;width:fit-content;max-width:calc(100% - 32px);margin:0 auto;padding:6px 8px;border:1px solid rgba(var(--jba-blue-rgb),.13);border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 14px 32px rgba(20,39,49,.058),inset 0 1px 0 rgba(255,255,255,.86);overflow-x:auto;scrollbar-width:none;backdrop-filter:saturate(1.12) blur(14px);-webkit-backdrop-filter:saturate(1.12) blur(14px)}
.jhb-berlin-angebot .jba-nav::-webkit-scrollbar{display:none}
.jhb-berlin-angebot .jba-nav a{flex:0 0 auto;min-height:34px;padding:8px 13px;border-radius:999px;color:var(--jba-blue-dark);font-size:.8rem;font-weight:800;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}
.jhb-berlin-angebot .jba-nav a:hover,
.jhb-berlin-angebot .jba-nav a.is-active{background:rgba(var(--jba-blue-rgb),.08);color:var(--jba-blue-dark);box-shadow:inset 0 0 0 1px rgba(var(--jba-blue-rgb),.12)}

/* =========================================================
   SECTIONS
   ========================================================= */

.jhb-berlin-angebot .jba-main{background:#ffffff}
.jhb-berlin-angebot .jba-section{position:relative;overflow:hidden;padding:60px 0;background:#ffffff}
.jhb-berlin-angebot .jba-section--soft{
  background:
    radial-gradient(680px 260px at 88% 0%,rgba(207,229,234,.22),transparent 74%),
    linear-gradient(180deg,var(--jba-surface-soft) 0%,var(--jba-section-blue) 100%);
}
.jhb-berlin-angebot .jba-section-head{max-width:880px;margin:0 auto 24px;text-align:center}
.jhb-berlin-angebot .jba-section-head .jba-kicker{margin-bottom:.88rem}
.jhb-berlin-angebot .jba-section h2{position:relative;margin:0;color:var(--jba-text);font-size:clamp(1.58rem,2.75vw,2.12rem);line-height:1.15;font-weight:800;letter-spacing:-.03em;text-wrap:balance}
.jhb-berlin-angebot .jba-section h2::after{content:"";display:block;width:76px;height:1px;margin:18px auto 0;border-radius:999px;background:linear-gradient(90deg,rgba(var(--jba-blue-rgb),0),rgba(var(--jba-blue-rgb),.52),rgba(var(--jba-blue-rgb),0));opacity:.72}
.jhb-berlin-angebot .jba-lead{max-width:720px;margin:.86rem auto 0;color:var(--jba-muted);font-size:.98rem;line-height:1.62;text-wrap:pretty}

/* =========================================================
   CARDS / PANELS
   ========================================================= */

.jhb-berlin-angebot .jba-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.jhb-berlin-angebot .jba-card-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px;margin-inline:auto}
.jhb-berlin-angebot .jba-card-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:850px;margin-inline:auto}
.jhb-berlin-angebot .jba-card-grid--1{grid-template-columns:minmax(0,1fr);max-width:640px;margin-inline:auto}

.jhb-berlin-angebot .jba-card,
.jhb-berlin-angebot .jba-copy-panel,
.jhb-berlin-angebot .jba-link-card,
.jhb-berlin-angebot .jba-faq-list details,
.jhb-berlin-angebot .jba-contact-panel,
.jba-existing-bridge__inner{border:1px solid var(--jba-line);border-radius:var(--jba-radius);background:#fff;box-shadow:var(--jba-shadow-soft)}

.jhb-berlin-angebot .jba-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;min-height:0;height:100%;padding:36px 24px 25px;text-align:center;background:#ffffff;transition:transform .34s cubic-bezier(.22,1,.36,1),box-shadow .34s cubic-bezier(.22,1,.36,1),border-color .24s ease,background .34s ease}
.jhb-berlin-angebot .jba-card::before{
  content:"";
  position:absolute;
  left:30px;
  right:30px;
  top:0;
  height:1px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(207,229,234,0),rgba(207,229,234,.66) 28%,rgba(221,241,235,.78) 72%,rgba(221,241,235,0));
  opacity:.76;
}
.jhb-berlin-angebot .jba-card::after{
  content:"";
  position:absolute;
  top:15px;
  left:50%;
  width:34px;
  height:4px;
  border-radius:999px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,rgba(var(--jba-blue-rgb),.14),rgba(var(--jba-blue-rgb),.30),rgba(var(--jba-blue-rgb),.14));
  opacity:.74;
  transition:opacity .24s ease,transform .28s cubic-bezier(.22,1,.36,1);
}
@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-card:hover,
  .jhb-berlin-angebot .jba-card:focus-within{
    transform:translate3d(0,-8px,0);
    border-color:rgba(var(--jba-blue-rgb),.22);
    background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%);
    box-shadow:0 28px 64px rgba(18,49,62,.105),0 8px 22px rgba(47,111,132,.055),inset 0 1px 0 rgba(255,255,255,.94);
  }

  .jhb-berlin-angebot .jba-card:hover::before,
  .jhb-berlin-angebot .jba-card:focus-within::before{
    opacity:1;
    background:linear-gradient(90deg,rgba(207,229,234,0),rgba(47,111,132,.34) 32%,rgba(221,241,235,.94) 72%,rgba(207,229,234,0));
  }

  .jhb-berlin-angebot .jba-card:hover::after,
  .jhb-berlin-angebot .jba-card:focus-within::after{
    opacity:1;
    transform:translateX(-50%) scaleX(1.16);
  }
}
.jhb-berlin-angebot .jba-card h3,.jhb-berlin-angebot .jba-step h3{margin:0;color:var(--jba-text);font-size:1.07rem;line-height:1.34;font-weight:800;letter-spacing:-.018em;text-wrap:balance}
.jhb-berlin-angebot .jba-card p,.jhb-berlin-angebot .jba-step p,.jhb-berlin-angebot .jba-copy-panel p,.jhb-berlin-angebot .jba-contact-panel p{margin:.66rem 0 0;color:var(--jba-muted);font-size:.98rem;line-height:1.62}
.jhb-berlin-angebot .jba-card p{max-width:25rem;margin-left:auto;margin-right:auto}
.jhb-berlin-angebot .jba-card ul{display:grid;gap:6px;width:min(100%,22rem);max-width:22rem;margin:14px auto 0;padding:0;list-style:none;text-align:left}
.jhb-berlin-angebot .jba-card li{position:relative;padding-left:17px;color:rgba(24,50,67,.76);font-size:.94rem;line-height:1.55}
.jhb-berlin-angebot .jba-card li::before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:rgba(var(--jba-blue-rgb),.48)}
.jhb-berlin-angebot .jba-card--link{cursor:pointer}
.jhb-berlin-angebot .jba-card__cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:fit-content;min-height:34px;margin:20px auto 0;padding:7px 13px;border-radius:999px;border:1px solid rgba(var(--jba-blue-rgb),.14);background:rgba(var(--jba-blue-rgb),.07);color:var(--jba-blue-dark);font-size:.84rem;font-weight:800;letter-spacing:.005em;line-height:1.2;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.jhb-berlin-angebot .jba-card__cta::after{content:"→";font-size:.86rem;line-height:1;transition:transform .18s ease;color:currentColor}
.jhb-berlin-angebot .jba-card--link:hover .jba-card__cta{border-color:rgba(var(--jba-blue-rgb),.22);background:rgba(var(--jba-blue-rgb),.105);color:var(--jba-blue-dark)}
.jhb-berlin-angebot .jba-card--link:hover .jba-card__cta::after{transform:translateX(3px)}


/* Einordnung: offene Dreierstruktur statt weiterer Karten. */
.jhb-berlin-angebot .jba-section--fuer-wen .jba-card-grid{
  counter-reset:jba-open-card;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  max-width:1080px;
  margin-inline:auto;
}
.jhb-berlin-angebot .jba-section--fuer-wen .jba-card{
  counter-increment:jba-open-card;
  justify-content:flex-start;
  min-height:0;
  padding:14px 42px 10px;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.jhb-berlin-angebot .jba-section--fuer-wen .jba-card + .jba-card{
  border-left:1px solid rgba(var(--jba-blue-rgb),.13);
}
.jhb-berlin-angebot .jba-section--fuer-wen .jba-card::before{
  content:counter(jba-open-card,decimal-leading-zero);
  position:static;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  margin:0 auto 16px;
  border:1px solid rgba(var(--jba-blue-rgb),.16);
  border-radius:50%;
  background:rgba(255,255,255,.72);
  color:var(--jba-blue-ink);
  font-size:.62rem;
  font-weight:900;
  line-height:1;
  letter-spacing:.07em;
  opacity:1;
}
.jhb-berlin-angebot .jba-section--fuer-wen .jba-card::after{display:none}
.jhb-berlin-angebot .jba-section--fuer-wen .jba-card h3{max-width:22rem}
.jhb-berlin-angebot .jba-section--fuer-wen .jba-card p{
  max-width:24rem;
  margin-top:.72rem;
  line-height:1.68;
}
@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card:hover,
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card:focus-within{
    transform:none;
    border-color:rgba(var(--jba-blue-rgb),.13);
    background:transparent;
    box-shadow:none;
  }
}

/* Ablauf: echte Prozesslinie statt vier voneinander gelöster Karten. */
.jhb-berlin-angebot .jba-timeline{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  max-width:1080px;
  margin:0 auto;
  padding:10px 0 0;
  counter-reset:jba-step;
}
.jhb-berlin-angebot .jba-timeline::before{
  content:"";
  position:absolute;
  z-index:0;
  top:31px;
  left:12.5%;
  right:12.5%;
  height:1px;
  background:linear-gradient(90deg,rgba(var(--jba-blue-rgb),.08),rgba(var(--jba-blue-rgb),.30) 18%,rgba(var(--jba-blue-rgb),.30) 82%,rgba(var(--jba-blue-rgb),.08));
  pointer-events:none;
}
.jhb-berlin-angebot .jba-step{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1fr;
  justify-items:center;
  align-content:start;
  gap:14px;
  min-height:0;
  padding:0 24px 4px;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  text-align:center;
}
.jhb-berlin-angebot .jba-step__number{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid rgba(var(--jba-blue-rgb),.17);
  border-radius:50%;
  background:#ffffff;
  color:var(--jba-blue-dark);
  font-weight:850;
  box-shadow:0 8px 22px rgba(18,49,62,.075),inset 0 1px 0 rgba(255,255,255,.94);
  transition:transform .28s cubic-bezier(.22,1,.36,1),border-color .22s ease,box-shadow .28s ease,background-color .22s ease;
}
.jhb-berlin-angebot .jba-step > div{min-width:0}
.jhb-berlin-angebot .jba-step h3{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  width:100%;
  min-height:0;
  text-align:center;
}
.jhb-berlin-angebot .jba-step p{
  max-width:16.5rem;
  margin:.64rem auto 0;
  line-height:1.62;
  text-align:center;
}
@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-step:hover .jba-step__number,
  .jhb-berlin-angebot .jba-step:focus-within .jba-step__number{
    transform:translateY(-3px);
    border-color:rgba(var(--jba-blue-rgb),.27);
    background:#ffffff;
    box-shadow:0 14px 30px rgba(18,49,62,.11),0 4px 12px rgba(var(--jba-blue-rgb),.055),inset 0 1px 0 rgba(255,255,255,.96);
  }
}

.jhb-berlin-angebot .jba-copy-panel{padding:30px 34px;text-align:left;background:linear-gradient(180deg,#ffffff 0%,#fbfdfe 100%)}
.jhb-berlin-angebot .jba-copy-panel p:first-child{margin-top:0}
.jhb-berlin-angebot .jba-copy-panel a{color:var(--jba-blue-dark);font-weight:800;text-decoration:underline;text-decoration-color:rgba(var(--jba-blue-rgb),.28);text-underline-offset:3px;text-decoration-thickness:1px}

.jhb-berlin-angebot .jba-section--berlin-focus{
  position:relative;
  overflow:hidden;
  padding:62px 0 66px;
  background:
    radial-gradient(560px 260px at 18% 18%,rgba(229,249,242,.68),rgba(229,249,242,0) 72%),
    radial-gradient(640px 300px at 84% 20%,rgba(234,244,247,.92),rgba(234,244,247,0) 76%),
    linear-gradient(180deg,#ffffff 0%,#f8fcfb 58%,#eef8f6 100%);
}
.jhb-berlin-angebot .jba-section--berlin-focus::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:min(860px,78vw);
  height:min(500px,58vw);
  border:1px solid rgba(var(--jba-blue-rgb),.045);
  border-radius:52% 48% 46% 54%;
  background:radial-gradient(circle at 48% 46%,rgba(255,255,255,.72),rgba(255,255,255,0) 63%);
  opacity:.72;
  transform:translate(-50%,-50%) rotate(-5deg);
  pointer-events:none;
}

.jhb-berlin-angebot .jba-section--berlin-focus{
  background:
    radial-gradient(720px 300px at 12% 8%,rgba(229,249,242,.24),transparent 76%),
    radial-gradient(760px 320px at 92% 18%,rgba(207,229,234,.52),transparent 76%),
    linear-gradient(180deg,#ffffff 0%,#f5fafc 58%,#edf5f8 100%);
}

.jhb-berlin-angebot .jba-section--berlin-focus .jba-wrap{position:relative;z-index:1}
.jhb-berlin-angebot .jba-berlin-focus-panel{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(330px,.82fr);
  gap:0;
  width:min(1060px,100%);
  margin:0 auto;
  padding:8px 0 4px;
  isolation:isolate;
}
.jhb-berlin-angebot .jba-berlin-focus-panel::before{
  content:"";
  position:absolute;
  right:34%;
  top:-20px;
  width:210px;
  height:210px;
  border:1px solid rgba(var(--jba-blue-rgb),.055);
  border-radius:49% 51% 44% 56%;
  opacity:.52;
  transform:rotate(-9deg);
  pointer-events:none;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__main,
.jhb-berlin-angebot .jba-berlin-focus-panel__copy{
  position:relative;
  z-index:1;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__main{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:8px 62px 8px 0;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__eyebrow{
  display:flex;
  align-items:center;
  gap:10px;
  width:fit-content;
  margin:0 0 14px;
  color:var(--jba-blue-ink);
  font-size:.66rem;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__eyebrow::before{
  content:"";
  width:28px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(var(--jba-blue-rgb),.72),rgba(var(--jba-green-rgb),.44));
}
.jhb-berlin-angebot .jba-berlin-focus-panel h3{
  max-width:19ch;
  margin:0;
  color:var(--jba-text);
  font-size:clamp(1.58rem,2.2vw,2.06rem);
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.036em;
  text-wrap:balance;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__main > p:not(.jba-berlin-focus-panel__eyebrow){
  max-width:42rem;
  margin:16px 0 0;
  color:var(--jba-muted);
  font-size:1rem;
  line-height:1.72;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__districts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:28px 0 0;
  padding:0;
  border-top:1px solid rgba(var(--jba-blue-rgb),.14);
}
.jhb-berlin-angebot .jba-berlin-focus-panel__district{
  position:relative;
  min-width:0;
  margin:0;
  padding:16px 18px 15px 0;
  border-bottom:1px solid rgba(var(--jba-blue-rgb),.11);
}
.jhb-berlin-angebot .jba-berlin-focus-panel__district:nth-child(odd){
  padding-right:24px;
  border-right:1px solid rgba(var(--jba-blue-rgb),.10);
}
.jhb-berlin-angebot .jba-berlin-focus-panel__district:nth-child(even){
  padding-left:24px;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__district dt{
  display:block;
  margin:0;
  color:var(--jba-blue-ink);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.105em;
  line-height:1.28;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__district dd{
  display:block;
  margin:6px 0 0;
  color:var(--jba-text);
  font-size:.94rem;
  font-weight:700;
  line-height:1.42;
  overflow-wrap:anywhere;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:4px 24px 4px 54px;
  border-left:1px solid rgba(var(--jba-blue-rgb),.14);
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy section{
  display:grid;
  grid-template-columns:1fr;
  justify-items:center;
  gap:12px;
  align-items:center;
  min-width:0;
  width:100%;
  padding:24px 0;
  border-bottom:1px solid rgba(var(--jba-blue-rgb),.11);
  text-align:center;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy section:first-child{
  border-top:1px solid rgba(var(--jba-blue-rgb),.11);
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy-index{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  margin:0 auto;
  border:1px solid rgba(var(--jba-blue-rgb),.16);
  border-radius:50%;
  background:rgba(255,255,255,.54);
  color:var(--jba-blue-ink);
  font-size:.62rem;
  font-weight:900;
  line-height:1;
  letter-spacing:.08em;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy-body{
  min-width:0;
  width:100%;
  max-width:31rem;
  margin-inline:auto;
  text-align:center;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy-body > strong{
  display:block;
  margin:0 0 7px;
  color:var(--jba-blue-ink);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1.22;
  text-transform:uppercase;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy p{
  max-width:31rem;
  margin:0 auto;
  color:var(--jba-muted);
  font-size:.98rem;
  line-height:1.68;
  text-align:center;
}
.jhb-berlin-angebot .jba-berlin-focus-panel--single-copy{
  grid-template-columns:minmax(0,1.12fr) minmax(300px,.76fr);
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy--single section{
  padding-block:30px;
}
.jhb-berlin-angebot .jba-berlin-focus-panel__copy--single p{
  max-width:31rem;
}
.jhb-berlin-angebot .jba-berlin-focus-panel a{
  color:var(--jba-blue-dark);
  font-weight:800;
  text-decoration:underline;
  text-decoration-color:rgba(var(--jba-blue-rgb),.28);
  text-underline-offset:3px;
  text-decoration-thickness:1px;
}

@media (hover:hover) and (pointer:fine) and (min-width:841px){
  .jhb-berlin-angebot .jba-berlin-focus-panel a:hover{
    color:var(--jba-blue-dark);
    text-decoration-color:rgba(var(--jba-blue-rgb),.52);
  }
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy section{
    transition:border-color .22s ease;
  }
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy section:hover{
    border-color:rgba(var(--jba-blue-rgb),.22);
  }
}

.jhb-berlin-angebot .jba-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-width:940px;margin:0 auto}
.jhb-berlin-angebot .jba-link-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 36px;grid-template-areas:"title arrow" "desc arrow";align-items:center;column-gap:18px;row-gap:4px;text-align:left;min-height:118px;padding:22px 24px;background:radial-gradient(190px 100px at 96% 8%,rgba(var(--jba-blue-rgb),.06),transparent 72%),linear-gradient(180deg,#ffffff 0%,#f5fbf9 100%);transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .2s ease,box-shadow .22s ease}
.jhb-berlin-angebot .jba-link-card::before{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;border-radius:0 999px 999px 0;background:rgba(var(--jba-blue-rgb),.36)}
.jhb-berlin-angebot .jba-link-card::after{content:"→";grid-area:arrow;align-self:center;justify-self:end;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(var(--jba-blue-rgb),.075);color:var(--jba-blue-dark);font-size:.95rem;font-weight:800;line-height:1;transition:transform .18s ease,background-color .18s ease,color .18s ease}
.jhb-berlin-angebot .jba-link-card:hover{transform:translateY(-2px);border-color:rgba(var(--jba-blue-rgb),.20);box-shadow:var(--jba-shadow-lift)}
.jhb-berlin-angebot .jba-link-card:hover::after{transform:translateX(2px);background:rgba(var(--jba-blue-rgb),.105);color:var(--jba-blue-dark)}
.jhb-berlin-angebot .jba-link-card span{grid-area:title;display:block;align-self:end;min-width:0;color:var(--jba-text);font-size:1.02rem;font-weight:800;line-height:1.25;letter-spacing:-.016em}
.jhb-berlin-angebot .jba-link-card small{grid-area:desc;display:block;align-self:start;min-width:0;max-width:27rem;margin-top:0;color:var(--jba-muted);font-size:.91rem;line-height:1.5}

/* =========================================================
   FAQ / CONTACT
   ========================================================= */

.jhb-berlin-angebot .jba-faq-list{display:grid;gap:14px;max-width:940px;margin-inline:auto;counter-reset:jbaFaq}
.jhb-berlin-angebot .jba-faq-list details{position:relative;padding:0;overflow:hidden;border-radius:26px;background:radial-gradient(240px 120px at 100% 0%,rgba(var(--jba-green-rgb),.055),transparent 72%),linear-gradient(180deg,#ffffff 0%,#f8fcfb 100%);transition:transform .34s cubic-bezier(.22,1,.36,1),border-color .24s ease,box-shadow .34s cubic-bezier(.22,1,.36,1),background .3s ease}
.jhb-berlin-angebot .jba-faq-list details::before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:4px;border-radius:0 999px 999px 0;background:linear-gradient(180deg,rgba(var(--jba-blue-rgb),.18),rgba(var(--jba-blue-rgb),.42));opacity:.76;transform:scaleY(.54);transform-origin:center;transition:opacity .22s ease,transform .3s cubic-bezier(.22,1,.36,1),background .24s ease}
.jhb-berlin-angebot .jba-faq-list details::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(360px 140px at 18% 0%,rgba(var(--jba-blue-rgb),.06),transparent 68%);opacity:0;transition:opacity .28s ease}
.jhb-berlin-angebot .jba-faq-list summary{position:relative;z-index:1;display:grid;grid-template-columns:42px minmax(0,1fr) 38px;gap:16px;align-items:center;list-style:none;cursor:pointer;padding:20px 24px 20px 26px;color:var(--jba-text);font-weight:800;font-size:1.02rem;line-height:1.38;letter-spacing:-.012em}
.jhb-berlin-angebot .jba-faq-list summary::-webkit-details-marker{display:none}
.jhb-berlin-angebot .jba-faq-list summary::before{counter-increment:jbaFaq;content:counter(jbaFaq, decimal-leading-zero);display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(var(--jba-blue-rgb),.065);color:rgba(var(--jba-blue-rgb),.78);font-size:.72rem;font-weight:900;letter-spacing:.1em;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.82)}
.jhb-berlin-angebot .jba-faq-list summary::after{content:"+";display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(var(--jba-blue-rgb),.07);color:var(--jba-blue-dark);font-size:1.1rem;font-weight:800;line-height:1;transition:transform .24s cubic-bezier(.22,1,.36,1),background-color .22s ease,color .22s ease,box-shadow .22s ease}
.jhb-berlin-angebot .jba-faq-list details[open]{border-color:rgba(var(--jba-blue-rgb),.18);background:radial-gradient(260px 150px at 100% 0%,rgba(var(--jba-green-rgb),.08),transparent 72%),linear-gradient(180deg,#ffffff 0%,#f4faf8 100%);box-shadow:0 24px 60px rgba(18,49,62,.09),0 8px 24px rgba(47,111,132,.05),inset 0 1px 0 rgba(255,255,255,.94)}
.jhb-berlin-angebot .jba-faq-list details[open]::before{opacity:1;transform:scaleY(1);background:linear-gradient(180deg,rgba(var(--jba-blue-rgb),.26),rgba(var(--jba-green-rgb),.34))}
.jhb-berlin-angebot .jba-faq-list details[open]::after{opacity:1}
.jhb-berlin-angebot .jba-faq-list details[open] summary::after{content:"–";background:rgba(var(--jba-blue-rgb),.11);transform:scale(1.02)}
.jhb-berlin-angebot .jba-faq-list details p{position:relative;z-index:1;max-width:70ch;margin:0;padding:0 28px 24px 84px;color:var(--jba-muted);font-size:1rem;line-height:1.72}
.jhb-berlin-angebot .jba-faq-list details.jba-faq-animated p{box-sizing:border-box;overflow:hidden;transition:height .46s cubic-bezier(.22,1,.36,1),opacity .28s ease,transform .46s cubic-bezier(.22,1,.36,1);will-change:height,opacity,transform}
.jhb-berlin-angebot .jba-faq-list details.jba-faq-animated.is-opening::before{opacity:1;transform:scaleY(1)}
.jhb-berlin-angebot .jba-faq-list details.jba-faq-animated.is-opening::after{opacity:1}
.jhb-berlin-angebot .jba-faq-list details.jba-faq-animated.is-closing::before{opacity:.88;transform:scaleY(.82)}
.jhb-berlin-angebot .jba-faq-list details.jba-faq-animated.is-closing::after{opacity:.45}

@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-faq-list details:hover,
  .jhb-berlin-angebot .jba-faq-list details:focus-within,
  html.jhb-motion-enabled .jhb-berlin-angebot.jba-motion-ready .jba-faq-list details.jba-reveal.is-inview:hover,
  html.jhb-motion-enabled .jhb-berlin-angebot.jba-motion-ready .jba-faq-list details.jba-reveal.is-inview:focus-within{transform:translateY(-2px);border-color:rgba(var(--jba-blue-rgb),.16);box-shadow:0 18px 42px rgba(18,49,62,.07),0 6px 18px rgba(47,111,132,.04),inset 0 1px 0 rgba(255,255,255,.92)}

  .jhb-berlin-angebot .jba-faq-list details:hover::before,
  .jhb-berlin-angebot .jba-faq-list details:focus-within::before{opacity:1;transform:scaleY(.82)}

  .jhb-berlin-angebot .jba-faq-list details:hover::after,
  .jhb-berlin-angebot .jba-faq-list details:focus-within::after{opacity:1}

  .jhb-berlin-angebot .jba-faq-list summary:hover::after,
  .jhb-berlin-angebot .jba-faq-list details:focus-within summary::after{background:rgba(var(--jba-blue-rgb),.12);box-shadow:0 10px 22px rgba(47,111,132,.11)}
}

@media (max-width:860px){
  .jhb-berlin-angebot .jba-faq-list{gap:11px}
  .jhb-berlin-angebot .jba-faq-list summary{grid-template-columns:38px minmax(0,1fr) 32px;gap:13px;padding:18px 18px 18px 20px;font-size:.98rem}
  .jhb-berlin-angebot .jba-faq-list summary::before{width:38px;height:38px;border-radius:12px;font-size:.68rem}
  .jhb-berlin-angebot .jba-faq-list summary::after{width:32px;height:32px;font-size:1rem}
  .jhb-berlin-angebot .jba-faq-list details p{padding:0 20px 20px 71px;font-size:.97rem}
}

@media (max-width:640px){
  .jhb-berlin-angebot .jba-faq-list summary{grid-template-columns:34px minmax(0,1fr) 30px;gap:11px;padding:16px 16px 16px 18px;font-size:.95rem;line-height:1.4}
  .jhb-berlin-angebot .jba-faq-list summary::before{width:34px;height:34px;border-radius:11px;font-size:.64rem}
  .jhb-berlin-angebot .jba-faq-list summary::after{width:30px;height:30px}
  .jhb-berlin-angebot .jba-faq-list details p{padding:0 16px 18px 63px;line-height:1.68}
}

.jhb-berlin-angebot .jba-section--contact{
  padding:48px 0 54px;
  background:
    radial-gradient(620px 240px at 14% 8%,rgba(255,255,255,.86),transparent 74%),
    radial-gradient(620px 260px at 88% 18%,rgba(207,229,234,.30),transparent 76%),
    linear-gradient(180deg,#f7fbfd 0%,var(--jba-section-blue-strong) 100%);
}
.jhb-berlin-angebot .jba-contact-panel{position:relative;overflow:hidden;max-width:940px;margin:0 auto;padding:42px 46px;border:1px solid rgba(var(--jba-blue-rgb),.13);border-radius:30px;background:radial-gradient(420px 220px at 12% 14%,rgba(var(--jba-blue-rgb),.055),transparent 72%),linear-gradient(135deg,#ffffff 0%,#fbfdfe 100%);box-shadow:0 22px 54px rgba(24,50,67,.065)}
.jhb-berlin-angebot .jba-contact-panel::before{content:"";position:absolute;top:0;left:50%;width:92px;height:3px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,rgba(var(--jba-blue-rgb),.22),rgba(var(--jba-blue-rgb),.72),rgba(var(--jba-blue-rgb),.22));transform:translateX(-50%)}
.jhb-berlin-angebot .jba-contact-panel::after{content:"";position:absolute;right:-76px;bottom:-104px;width:230px;height:230px;border:1px solid rgba(var(--jba-blue-rgb),.08);border-radius:50%;pointer-events:none}
.jhb-berlin-angebot .jba-contact-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;max-width:720px;margin:0 auto;text-align:center}
.jhb-berlin-angebot .jba-contact-panel h2{max-width:24ch;margin:12px auto 0;color:var(--jba-text);font-size:clamp(1.48rem,2.15vw,2rem);line-height:1.14;font-weight:800;letter-spacing:-.03em;text-wrap:balance}
.jhb-berlin-angebot .jba-contact-panel h2::after{display:none}
.jhb-berlin-angebot .jba-contact-panel p:not(.jba-kicker){max-width:42rem;margin:.72rem auto 0}
.jhb-berlin-angebot .jba-contact-panel .jba-kicker{width:fit-content;min-height:30px;padding:5px 12px;font-size:.64rem;letter-spacing:.15em;background:rgba(var(--jba-blue-rgb),.065)}
.jhb-berlin-angebot .jba-contact-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.72rem;width:100%;margin-top:1.22rem}
.jhb-berlin-angebot .jba-contact-actions .jba-btn{min-width:190px}

/* =========================================================
   TRUST / UX-SAFE-AREA
   ========================================================= */

.jhb-berlin-angebot #vertrauen .jba-card{
  background:
    radial-gradient(220px 120px at 18% 8%,rgba(var(--jba-green-rgb),.055),transparent 70%),
    linear-gradient(180deg,#ffffff 0%,#f8fcfb 100%);
}

.jhb-berlin-angebot #vertrauen .jba-card h3{max-width:18ch}
.jhb-berlin-angebot #vertrauen .jba-card ul{margin-top:auto}

@supports (padding:max(0px)){
  body.jhb-berlin-page{--jba-mobile-safe-bottom:max(104px,env(safe-area-inset-bottom))}
}

@media (max-width:760px){
  body.jhb-berlin-page .jhb-berlin-angebot{padding-bottom:var(--jba-mobile-safe-bottom,104px)}
  body.jhb-berlin-page .jhb-berlin-angebot .jba-main{padding-bottom:26px}
  body.jhb-berlin-page .jhb-berlin-angebot .jba-section--contact{padding-bottom:calc(var(--jba-mobile-safe-bottom,104px) + 28px)}
}

/* =========================================================
   BRIDGE BLOCKS AUF BESTEHENDEN ANGEBOTSSEITEN
   ========================================================= */

.jba-existing-bridge{padding:22px 0;background:#ffffff}
.jba-existing-bridge__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;width:min(980px,calc(100% - 32px));margin:0 auto;padding:24px 26px;background:linear-gradient(180deg,#ffffff 0%,#f8fcfb 100%)}
.jba-existing-bridge__eyebrow{display:inline-flex;margin:0 0 8px;padding:5px 11px;border-radius:999px;background:rgba(var(--jba-blue-rgb),.08);color:var(--jba-blue-dark);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.jba-existing-bridge h2{margin:0;color:var(--jba-text);font-size:clamp(1.35rem,2vw,1.9rem);line-height:1.15;font-weight:800;letter-spacing:-.02em}
.jba-existing-bridge p{margin:8px 0 0;color:var(--jba-muted);font-size:1rem;line-height:1.62}
.jba-existing-bridge__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}


/* =========================================================
   MICRO-MOTION / SCROLL REVEAL
   ========================================================= */

.jhb-berlin-angebot.jba-motion-ready .jba-reveal{
  opacity:0;
  transform:translateY(18px) scale(.992);
  filter:blur(4px);
  transition:
    opacity .62s ease var(--jba-reveal-delay,0ms),
    transform .62s cubic-bezier(.22,1,.36,1) var(--jba-reveal-delay,0ms),
    filter .62s ease var(--jba-reveal-delay,0ms);
}
.jhb-berlin-angebot.jba-motion-ready .jba-reveal.is-inview{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
}
.jhb-berlin-angebot.jba-motion-ready .jba-hero .jba-reveal{
  transform:translateY(10px);
  filter:none;
}
.jhb-berlin-angebot.jba-motion-ready .jba-berlin-focus-panel.jba-reveal{
  transform:translateY(20px) scale(.986);
}
.jhb-berlin-angebot.jba-motion-ready .jba-berlin-focus-panel.jba-reveal.is-inview{
  transform:translateY(0) scale(1);
}


@media (min-width:761px) and (prefers-reduced-motion:no-preference){
  .jhb-berlin-angebot .jba-section--berlin-focus::before{animation:jbaBerlinBreath 12s ease-in-out infinite}
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width:1100px){
  .jhb-berlin-angebot .jba-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card{padding-inline:28px}
  .jhb-berlin-angebot .jba-timeline{grid-template-columns:repeat(4,minmax(0,1fr))}
  .jhb-berlin-angebot .jba-step{padding-inline:18px}
  .jhb-berlin-angebot .jba-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jhb-berlin-angebot .jba-facts{grid-template-columns:repeat(2,minmax(0,1fr));max-width:620px}
}

@media (max-width:1024px){
  .jhb-berlin-angebot :target{scroll-margin-top:116px}
  body.admin-bar .jhb-berlin-angebot :target{scroll-margin-top:160px}
  .jhb-berlin-angebot .jba-nav-wrap,
  body.admin-bar .jhb-berlin-angebot .jba-nav-wrap{position:relative;inset:auto;top:auto;z-index:0;margin:0;padding:10px 0 16px;background:transparent;transform:none}
  .jhb-berlin-angebot .jba-nav{max-width:min(680px,calc(100% - 42px))}
  .jhb-berlin-angebot .jba-berlin-focus-panel{grid-template-columns:1fr;max-width:820px;padding-inline:10px}
  .jhb-berlin-angebot .jba-berlin-focus-panel::before{right:4%;top:6px;width:170px;height:170px}
  .jhb-berlin-angebot .jba-berlin-focus-panel__main{padding:0}
  .jhb-berlin-angebot .jba-berlin-focus-panel h3{max-width:23ch}
  .jhb-berlin-angebot .jba-berlin-focus-panel__main > p:not(.jba-berlin-focus-panel__eyebrow){max-width:46rem}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy{margin-top:30px;padding:14px 0 0;border-top:1px solid rgba(var(--jba-blue-rgb),.14);border-left:0}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy section:first-child{border-top:0}
}

@media (max-width:760px){
  .jhb-berlin-angebot :target{scroll-margin-top:116px}
  body.admin-bar .jhb-berlin-angebot :target{scroll-margin-top:160px}
  .jhb-berlin-angebot .jba-hero{min-height:auto;padding:50px 0 40px;background:
    radial-gradient(520px 260px at 50% -8%,rgba(255,255,255,.99),rgba(255,255,255,0) 72%),
    radial-gradient(420px 260px at 14% 22%,rgba(229,249,242,.42),rgba(229,249,242,0) 74%),
    radial-gradient(460px 280px at 88% 18%,rgba(234,244,247,.68),rgba(234,244,247,0) 76%),
    linear-gradient(145deg,#ffffff 0%,#fcfefe 46%,#f5fafb 74%,#edf5f8 100%)}
  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero{
    min-height:530px;
    padding:42px 0 92px;
    align-items:flex-start;
    background:#f8fcfb;
    border-bottom:0;
  }
  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__media img{object-position:center 48%}
  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero::before{
    background:
      linear-gradient(180deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.80) 32%,rgba(255,255,255,.64) 60%,rgba(255,255,255,.88) 88%,#ffffff 100%),
      linear-gradient(90deg,rgba(251,250,247,.22) 0%,rgba(251,250,247,.56) 46%,rgba(251,250,247,.22) 100%);
  }
  .jhb-berlin-angebot:not(.jhb-berlin-angebot--ambulante-hilfen-berlin) .jba-hero::before{display:none}
  .jhb-berlin-angebot .jba-hero::after{height:86px}
  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero::before{inset:0;z-index:1;opacity:1;filter:none}
  .jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero::after{height:178px;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.70) 46%,rgba(255,255,255,.94) 76%,#ffffff 100%)}
  .jhb-berlin-angebot .jba-crumbs{margin-bottom:14px;font-size:.76rem}
  .jhb-berlin-angebot .jba-hero h1{width:min(100%,calc(100vw - 40px));max-width:min(100%,17ch);margin-left:auto;margin-right:auto;font-size:clamp(1.8rem,7.7vw,2.34rem);line-height:1.06;overflow-wrap:anywhere;word-break:break-word;hyphens:auto}
  .jhb-berlin-angebot .jba-hero__tagline{font-size:.97rem;line-height:1.42}
  .jhb-berlin-angebot .jba-hero__lead{font-size:.96rem;line-height:1.64}
  .jhb-berlin-angebot .jba-hero-note{font-size:.84rem;line-height:1.52}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__content{max-width:342px;margin-top:0}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-crumbs{display:none}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-eyebrow{min-height:30px;padding:7px 13px;border-color:rgba(255,255,255,.58);background:rgba(255,255,255,.9);color:#8b521e;box-shadow:0 12px 24px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.88);text-shadow:none}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero h1{max-width:12.5ch;margin-top:15px;color:var(--jba-text);font-size:clamp(2rem,8.4vw,2.38rem);line-height:1.04;text-shadow:0 1px 0 rgba(255,255,255,.72)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero h1::after{width:64px;margin-top:15px;background:linear-gradient(90deg,rgba(47,111,132,0),rgba(47,111,132,.42),rgba(233,98,11,.24),rgba(47,111,132,0));opacity:.86}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__tagline{max-width:24ch;margin-top:14px;color:var(--jba-blue-dark);font-size:.98rem;line-height:1.38;text-shadow:0 1px 0 rgba(255,255,255,.72)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero__lead{max-width:29ch;margin-top:11px;margin-bottom:0;color:#667a88;font-size:.89rem;line-height:1.48;text-shadow:0 1px 0 rgba(255,255,255,.72)}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-note{max-width:29ch;margin-top:10px;color:#667a88;font-size:.78rem;line-height:1.38;text-shadow:0 1px 0 rgba(255,255,255,.72)}
  .jhb-berlin-angebot .jba-facts{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:116px;align-items:stretch;gap:10px;width:min(100%,368px);max-width:368px;margin:1rem auto .72rem;padding:0}
  .jhb-berlin-angebot .jba-facts > span,
  .jhb-berlin-angebot .jba-facts > .jba-fact{grid-template-rows:16px minmax(2.15em,1fr) minmax(1.05em,auto);min-height:116px;height:116px;padding:.78rem .54rem .64rem;border-radius:20px;font-size:.81rem;line-height:1.14;text-align:center;box-shadow:0 14px 28px rgba(18,49,62,.065),inset 0 1px 0 rgba(255,255,255,.9)}
  .jhb-berlin-angebot .jba-facts > span::before,
  .jhb-berlin-angebot .jba-facts > .jba-fact::before{left:30px;right:30px;height:1px;opacity:.68}
  .jhb-berlin-angebot .jba-facts strong{font-size:.54rem;letter-spacing:.09em}
  .jhb-berlin-angebot .jba-fact__value{min-height:2.15em;padding-inline:2px}
  .jhb-berlin-angebot .jba-facts small{font-size:.55rem;line-height:1.16}
  .jhb-berlin-angebot .jba-hero__actions{align-items:stretch;flex-direction:column;width:min(286px,100%);margin-left:auto;margin-right:auto}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin.jba-mobile-hero-actions-managed .jba-hero__actions{
    width:min(302px,100%);
    gap:10px;
    margin-top:18px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(10px);
    transition:opacity .24s ease,visibility 0s linear .24s,transform .24s ease;
  }
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin.jba-mobile-hero-actions-managed.jba-mobile-hero-actions-visible .jba-hero__actions{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
    transition-delay:0s;
  }
  .jhb-berlin-angebot .jba-btn{width:100%}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-facts-band{padding:18px 0 2px;background:#fff}
  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-hero-facts-band .jba-facts{margin-top:0}
  .jhb-berlin-angebot .jba-nav-wrap{position:relative;top:auto;padding:10px 0 15px;background:transparent}
  body.admin-bar .jhb-berlin-angebot .jba-nav-wrap{top:auto}
  .jhb-berlin-angebot .jba-nav-wrap::before,.jhb-berlin-angebot .jba-nav-wrap::after{position:absolute;top:50%;z-index:2;transform:translateY(-50%);color:rgba(53,85,101,.28);font-size:1.46rem;font-weight:380;line-height:1;pointer-events:none}
  .jhb-berlin-angebot .jba-nav-wrap::before{content:"‹";left:13px}
  .jhb-berlin-angebot .jba-nav-wrap::after{content:"›";right:13px}
  .jhb-berlin-angebot .jba-nav{justify-content:flex-start;gap:7px;width:calc(100% - 54px);max-width:430px;padding:7px;border-radius:999px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;background:rgba(255,255,255,.92)}
  .jhb-berlin-angebot .jba-nav a{display:flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;scroll-snap-align:start;border:1px solid transparent;background:transparent;font-size:.75rem;letter-spacing:.055em}
  .jhb-berlin-angebot .jba-nav a.is-active,.jhb-berlin-angebot .jba-nav a:hover{border-color:rgba(var(--jba-blue-rgb),.12);background:rgba(var(--jba-blue-rgb),.075)}
  .jhb-berlin-angebot .jba-section{padding:42px 0}
  .jhb-berlin-angebot .jba-section--soft,
  .jhb-berlin-angebot .jba-section--berlin-focus{padding:42px 0}
  .jhb-berlin-angebot .jba-section-head{margin-bottom:22px}
  .jhb-berlin-angebot .jba-section-head .jba-kicker{margin-bottom:.72rem}
  .jhb-berlin-angebot .jba-section h2{font-size:clamp(1.42rem,6.6vw,1.86rem);line-height:1.14}
  .jhb-berlin-angebot .jba-section h2::after{width:60px;margin-top:16px}
  .jhb-berlin-angebot .jba-lead{max-width:32rem;margin-top:.82rem;font-size:.96rem;line-height:1.62}
  .jhb-berlin-angebot .jba-berlin-focus-panel{width:min(100%,560px);padding-inline:2px}
  .jhb-berlin-angebot .jba-berlin-focus-panel::before{right:-28px;top:10px;width:122px;height:122px;opacity:.34}
  .jhb-berlin-angebot .jba-berlin-focus-panel__main{align-items:center;text-align:center}
  .jhb-berlin-angebot .jba-berlin-focus-panel__eyebrow{justify-content:center;margin:0 auto 12px;font-size:.62rem}
  .jhb-berlin-angebot .jba-berlin-focus-panel__eyebrow::before,
  .jhb-berlin-angebot .jba-berlin-focus-panel__eyebrow::after{flex:0 0 28px;width:28px}
  .jhb-berlin-angebot .jba-berlin-focus-panel__eyebrow::after{
    content:"";
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,rgba(var(--jba-green-rgb),.44),rgba(var(--jba-blue-rgb),.72));
  }
  .jhb-berlin-angebot .jba-berlin-focus-panel h3{max-width:22ch;margin-inline:auto;font-size:clamp(1.48rem,7vw,1.82rem)}
  .jhb-berlin-angebot .jba-berlin-focus-panel__main > p:not(.jba-berlin-focus-panel__eyebrow){max-width:32rem;margin:13px auto 0;font-size:.95rem;line-height:1.64}
  .jhb-berlin-angebot .jba-berlin-focus-panel__districts{grid-template-columns:1fr;width:100%;max-width:32rem;margin:22px auto 0;text-align:center}
  .jhb-berlin-angebot .jba-berlin-focus-panel__district,
  .jhb-berlin-angebot .jba-berlin-focus-panel__district:nth-child(odd),
  .jhb-berlin-angebot .jba-berlin-focus-panel__district:nth-child(even){padding:14px 8px;border-right:0;text-align:center}
  .jhb-berlin-angebot .jba-berlin-focus-panel__district dd{margin-top:5px;font-size:.91rem}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy{align-items:center;margin-top:25px;padding-top:10px;text-align:center}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy section{grid-template-columns:1fr;justify-items:center;width:100%;gap:10px;padding:18px 8px}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy--single{padding-top:0;border-top:0}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy--single section{padding-top:16px;padding-bottom:2px;border-top:0;border-bottom:0}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy-index{width:28px;height:28px;margin:0 auto;font-size:.58rem}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy-body{width:100%;max-width:32rem;margin-inline:auto}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy-body > strong{font-size:.62rem}
  .jhb-berlin-angebot .jba-berlin-focus-panel__copy p{max-width:32rem;margin-inline:auto;font-size:.94rem;line-height:1.62}
  .jhb-berlin-angebot .jba-card-grid,
  .jhb-berlin-angebot .jba-card-grid--4,
  .jhb-berlin-angebot .jba-card-grid--3,
  .jhb-berlin-angebot .jba-card-grid--2,
  .jhb-berlin-angebot .jba-timeline,
  .jba-existing-bridge__inner{grid-template-columns:1fr}
  .jhb-berlin-angebot .jba-card-grid,
  .jhb-berlin-angebot .jba-card-grid--4,
  .jhb-berlin-angebot .jba-card-grid--3,
  .jhb-berlin-angebot .jba-card-grid--2,
  .jhb-berlin-angebot .jba-timeline{gap:14px;width:min(100%,448px);max-width:448px;margin-inline:auto}
  .jhb-berlin-angebot .jba-link-grid{grid-template-columns:1fr;max-width:448px;gap:14px}
  .jhb-berlin-angebot .jba-card{justify-content:center;min-height:0;padding:34px 20px 20px;border-radius:22px}
  .jhb-berlin-angebot .jba-card p{max-width:30rem;margin-top:.58rem;font-size:.94rem;line-height:1.56}
  .jhb-berlin-angebot .jba-card ul{width:min(100%,23rem);margin-top:12px;gap:6px}
  .jhb-berlin-angebot .jba-card li{font-size:.9rem;line-height:1.46}
  .jhb-berlin-angebot .jba-card::after{top:14px;width:30px;height:4px;opacity:.58}
  .jhb-berlin-angebot .jba-card__cta{margin-top:18px}
  .jhb-berlin-angebot .jba-copy-panel{padding:21px 19px}

  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card-grid{
    grid-template-columns:1fr;
    gap:0;
    width:min(100%,420px);
    max-width:420px;
  }
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card{
    min-height:0;
    padding:22px 14px 24px;
    border:0;
    border-bottom:1px solid rgba(var(--jba-blue-rgb),.12);
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card + .jba-card{border-left:0}
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card:last-child{border-bottom:0}
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card::before{width:31px;height:31px;margin-bottom:13px;font-size:.58rem}
  .jhb-berlin-angebot .jba-section--fuer-wen .jba-card p{max-width:30rem;margin-top:.58rem;font-size:.94rem;line-height:1.62}

  .jhb-berlin-angebot .jba-section--timeline{background:
    radial-gradient(520px 260px at 86% 0%,rgba(207,229,234,.24),transparent 74%),
    linear-gradient(180deg,var(--jba-surface-soft) 0%,var(--jba-section-blue) 100%);
    background-size:auto,auto;
  }
  .jhb-berlin-angebot .jba-timeline{
    position:relative;
    grid-template-columns:1fr;
    gap:0;
    width:min(100%,420px);
    max-width:420px;
    padding:0;
  }
  .jhb-berlin-angebot .jba-timeline::before{
    top:22px;
    right:auto;
    bottom:22px;
    left:22px;
    width:1px;
    height:auto;
    background:linear-gradient(180deg,rgba(var(--jba-blue-rgb),.08),rgba(var(--jba-blue-rgb),.28) 18%,rgba(var(--jba-blue-rgb),.28) 82%,rgba(var(--jba-blue-rgb),.08));
  }
  .jhb-berlin-angebot .jba-step{
    grid-template-columns:46px minmax(0,1fr);
    justify-items:start;
    align-items:start;
    gap:14px;
    min-height:0;
    padding:0 0 28px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    text-align:left;
  }
  .jhb-berlin-angebot .jba-step:last-child{padding-bottom:0}
  .jhb-berlin-angebot .jba-step__number{position:relative;z-index:1;width:44px;height:44px}
  .jhb-berlin-angebot .jba-step h3{justify-content:flex-start;min-height:0;padding-top:2px;text-align:left}
  .jhb-berlin-angebot .jba-step p{max-width:none;margin-top:.5rem;font-size:.94rem;line-height:1.6;text-align:left}
  .jhb-berlin-angebot .jba-contact-panel{max-width:620px;padding:34px 28px}
  .jhb-berlin-angebot .jba-contact-panel h2{max-width:22ch}
  .jhb-berlin-angebot .jba-contact-panel p:not(.jba-kicker){max-width:34rem}
  .jhb-berlin-angebot .jba-contact-panel .jba-kicker{min-height:28px;padding:4px 11px;font-size:.62rem}
  .jba-existing-bridge__actions{justify-content:flex-start}
}

@media (max-width:560px){
  .jhb-berlin-angebot .jba-hero h1{width:min(100%,calc(100vw - 34px));font-size:clamp(1.64rem,7.45vw,2.08rem);line-height:1.06;letter-spacing:-.034em;max-width:min(100%,17ch);margin-left:auto;margin-right:auto;text-wrap:balance;overflow-wrap:anywhere;word-break:break-word;hyphens:auto}
  .jhb-berlin-angebot .jba-hero h1::after{width:64px;margin-top:14px}
  .jhb-berlin-angebot .jba-hero h1 .jba-h1-line{display:block;white-space:normal}
  .jhb-berlin-angebot.jhb-berlin-angebot--hilfe-zur-erziehung-berlin .jba-hero h1{
    max-width:min(100%,21ch);
    font-size:clamp(1.76rem,7.15vw,2.18rem);
    line-height:1.08;
  }
  .jhb-berlin-angebot.jhb-berlin-angebot--hilfe-zur-erziehung-berlin .jba-hero h1 .jba-h1-line--hze-topic,
  .jhb-berlin-angebot.jhb-berlin-angebot--hilfe-zur-erziehung-berlin .jba-hero h1 .jba-h1-line--hze-city{
    display:block;
    white-space:nowrap;
  }
  .jhb-berlin-angebot .jba-facts{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:112px;width:min(100%,342px);max-width:342px;gap:10px;margin-top:.92rem;margin-bottom:.7rem}
  .jhb-berlin-angebot .jba-facts > span,
  .jhb-berlin-angebot .jba-facts > .jba-fact{min-height:112px;height:112px;padding:.72rem .44rem .6rem;font-size:.78rem}
  .jhb-berlin-angebot .jba-link-card{min-height:94px;padding:18px 18px 18px 20px;grid-template-columns:minmax(0,1fr) 32px;column-gap:12px}
  .jhb-berlin-angebot .jba-berlin-focus-panel{padding-inline:0}
  .jhb-berlin-angebot .jba-berlin-focus-panel h3{max-width:22ch;font-size:clamp(1.4rem,6.2vw,1.72rem)}
  .jhb-berlin-angebot .jba-berlin-focus-panel__main > p:not(.jba-berlin-focus-panel__eyebrow){font-size:.94rem;line-height:1.62}
  .jhb-berlin-angebot .jba-section--contact{padding:44px 0 48px}
  .jhb-berlin-angebot .jba-contact-panel{width:min(100%,calc(100% - 24px));padding:28px 18px;border-radius:24px}
  .jhb-berlin-angebot .jba-contact-panel::after{right:-112px;bottom:-132px}
  .jhb-berlin-angebot .jba-contact-panel h2{max-width:20ch}
  .jhb-berlin-angebot .jba-contact-actions{flex-direction:column;align-items:center;gap:10px;margin-top:1.08rem}
  .jhb-berlin-angebot .jba-contact-actions .jba-btn{width:100%;max-width:238px;min-width:0}
  .jhb-berlin-angebot .jba-section{padding:38px 0}
  .jhb-berlin-angebot .jba-section--soft,
  .jhb-berlin-angebot .jba-section--berlin-focus,
  .jhb-berlin-angebot .jba-section--fit-guide{padding:38px 0}
  .jhb-berlin-angebot .jba-section-head{margin-bottom:20px}
  .jhb-berlin-angebot .jba-card-grid,
  .jhb-berlin-angebot .jba-card-grid--4,
  .jhb-berlin-angebot .jba-card-grid--3,
  .jhb-berlin-angebot .jba-card-grid--2,
  .jhb-berlin-angebot .jba-fit-grid,
  .jhb-berlin-angebot .jba-link-grid{width:min(100%,calc(100vw - 34px));max-width:430px;gap:13px}
  .jhb-berlin-angebot .jba-card{border-radius:20px;padding:33px 18px 19px}
  .jhb-berlin-angebot .jba-fit-card{border-radius:20px;padding-left:18px;padding-right:18px}

}

@media (hover:none){
  .jhb-berlin-angebot .jba-card:hover,
  .jhb-berlin-angebot .jba-step:hover,
  .jhb-berlin-angebot .jba-link-card:hover,
  .jhb-berlin-angebot .jba-btn:hover{transform:none}
  .jhb-berlin-angebot .jba-btn:hover::after{opacity:0}
}


@media (max-width:430px){
  .jhb-berlin-angebot .jba-facts small{font-size:.54rem;line-height:1.16}
  .jhb-berlin-angebot .jba-fact__value{min-height:2.1em}
}

@media (max-width:330px){
  .jhb-berlin-angebot .jba-facts{grid-template-columns:1fr;max-width:300px}
}


@media (prefers-reduced-motion:reduce){
  .jhb-berlin-angebot *,
  .jhb-berlin-angebot *::before,
  .jhb-berlin-angebot *::after,
  .jba-existing-bridge *,
  .jba-existing-bridge *::before,
  .jba-existing-bridge *::after{transition:none;animation:none;scroll-behavior:auto}
  .jhb-berlin-angebot.jba-motion-ready .jba-reveal{opacity:1;transform:none;filter:none}
}


/* Berlin-Angebotsseiten: Wegweiser klarer und ruhiger */
.jhb-berlin-angebot .jba-nav a{
  text-transform:uppercase;
  letter-spacing:.055em;
}

.jhb-berlin-angebot .jhb-guide-system.jhb-guide + .jba-main,
.jhb-berlin-angebot .jba-nav-wrap + .jba-main{
  position:relative;
}

.jhb-berlin-angebot .jhb-guide-system.jhb-guide + .jba-main::before,
.jhb-berlin-angebot .jba-nav-wrap + .jba-main::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:70px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,0) 100%);
  z-index:0;
}

.jhb-berlin-angebot .jba-main > .jba-section:first-child{
  padding-top:clamp(62px,6.2vw,88px);
}

/* =========================================================
   V21 – Ambulante Hilfen Berlin als Netzwerk-/Hub-Seite
   - schneller scannbar
   - stärkere interne Verlinkung
   - mehr Abstand zur Sticky-Navigation
   ========================================================= */

.jhb-berlin-angebot :target,
.jhb-berlin-angebot .jba-section{
  scroll-margin-top:188px;
}

body.admin-bar .jhb-berlin-angebot :target,
body.admin-bar .jhb-berlin-angebot .jba-section{
  scroll-margin-top:224px;
}

.jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jhb-guide-system.jhb-guide{
  position:relative;
  z-index:0;
  margin:0;
  padding:14px 0 28px;
  background:linear-gradient(180deg,#ffffff 0%,rgba(255,255,255,.96) 72%,rgba(248,252,251,0) 100%);
}

.jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jhb-guide-system.jhb-guide + .jba-main::before,
.jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-nav-wrap + .jba-main::before{
  height:98px;
  background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.62) 52%,rgba(255,255,255,0) 100%);
}

.jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-main > .jba-section:first-child{
  padding-top:clamp(92px,8vw,124px);
}

.jhb-berlin-angebot .jba-section--hub-intro{
  background:
    radial-gradient(520px 240px at 14% 4%,rgba(229,249,242,.52),rgba(229,249,242,0) 70%),
    radial-gradient(620px 260px at 88% 0%,rgba(234,244,247,.72),rgba(234,244,247,0) 73%),
    #ffffff;
}

.jhb-berlin-angebot .jba-card-grid--hub-intro{
  max-width:1040px;
  margin-inline:auto;
}

.jhb-berlin-angebot .jba-card--hub-intro{
  align-items:center;
  text-align:center;
  padding:28px 28px 27px;
  background:
    radial-gradient(180px 120px at 50% 0%,rgba(234,244,247,.62),rgba(234,244,247,0) 70%),
    linear-gradient(180deg,#ffffff 0%,#f9fcfb 70%,#ffffff 100%);
}

.jhb-berlin-angebot .jba-card--hub-intro h3,
.jhb-berlin-angebot .jba-card--hub-intro p{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.jhb-berlin-angebot .jba-card--hub-intro ul{
  width:100%;
  max-width:23rem;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-card li{
  padding-left:0;
  text-align:center;
}

.jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-card li::before{
  position:static;
  display:inline-block;
  margin-right:8px;
  transform:translateY(-1px);
}

.jhb-berlin-angebot .jba-card__badge{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  margin:0 0 13px;
  padding:6px 11px;
  border:1px solid rgba(var(--jba-blue-rgb),.13);
  border-radius:999px;
  background:rgba(var(--jba-blue-rgb),.065);
  color:var(--jba-blue-ink);
  font-size:.65rem;
  font-weight:900;
  letter-spacing:.11em;
  line-height:1.15;
  text-transform:uppercase;
}

.jhb-berlin-angebot .jba-section--router{
  background:
    radial-gradient(560px 260px at 12% 8%,rgba(229,249,242,.66),rgba(229,249,242,0) 72%),
    radial-gradient(720px 320px at 84% 18%,rgba(234,244,247,.88),rgba(234,244,247,0) 76%),
    linear-gradient(180deg,#ffffff 0%,#f7fcfb 46%,#eaf4f7 100%);
}

.jhb-berlin-angebot .jba-router-panel{
  position:relative;
  overflow:hidden;
  width:min(1040px,100%);
  margin:0 auto;
  padding:14px;
  border:1px solid rgba(var(--jba-blue-rgb),.12);
  border-radius:28px;
  background:
    radial-gradient(420px 220px at 6% 0%,rgba(255,255,255,.94),rgba(255,255,255,0) 70%),
    linear-gradient(135deg,rgba(255,255,255,.96) 0%,rgba(248,252,251,.93) 56%,rgba(234,244,247,.76) 100%);
  box-shadow:0 20px 56px rgba(18,49,62,.075),inset 0 1px 0 rgba(255,255,255,.9);
}

.jhb-berlin-angebot .jba-router-panel::before{
  content:"";
  position:absolute;
  inset:18px 18px auto auto;
  width:170px;
  height:170px;
  border-radius:44% 56% 54% 46%;
  background:
    linear-gradient(90deg,rgba(var(--jba-blue-rgb),.032) 1px,transparent 1px),
    linear-gradient(0deg,rgba(var(--jba-blue-rgb),.026) 1px,transparent 1px);
  background-size:28px 28px;
  opacity:.25;
  pointer-events:none;
  transform:rotate(-8deg);
}

.jhb-berlin-angebot .jba-router-panel__head{
  display:none;
}

.jhb-berlin-angebot .jba-router-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.jhb-berlin-angebot .jba-router-card{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  min-height:238px;
  padding:31px 28px 23px;
  border:1px solid rgba(var(--jba-blue-rgb),.09);
  border-radius:22px;
  background:rgba(255,255,255,.88);
  box-shadow:0 8px 20px rgba(18,49,62,.04),inset 0 1px 0 rgba(255,255,255,.86);
  text-align:center;
  transition:transform .24s cubic-bezier(.22,1,.36,1),border-color .2s ease,box-shadow .24s ease,background-color .2s ease;
}

.jhb-berlin-angebot .jba-router-card::before{
  content:"";
  position:absolute;
  left:50%;
  top:15px;
  width:34px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(var(--jba-blue-rgb),.45),rgba(var(--jba-green-rgb),.25));
  transform:translateX(-50%);
}

.jhb-berlin-angebot .jba-router-card__need{
  display:block;
  max-width:32ch;
  color:var(--jba-muted);
  font-size:.82rem;
  font-weight:800;
  line-height:1.36;
}

.jhb-berlin-angebot .jba-router-card__match{
  display:block;
  max-width:30ch;
  margin-top:11px;
  color:var(--jba-text);
  font-size:1.06rem;
  font-weight:900;
  line-height:1.24;
  letter-spacing:-.015em;
}

.jhb-berlin-angebot .jba-router-card__meta{
  display:block;
  width:fit-content;
  margin:8px auto 0;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(var(--jba-blue-rgb),.065);
  color:var(--jba-blue-ink);
  font-size:.68rem;
  font-weight:850;
  line-height:1.25;
}

.jhb-berlin-angebot .jba-router-card__text{
  display:block;
  max-width:42ch;
  margin-top:9px;
  color:var(--jba-muted);
  font-size:.86rem;
  line-height:1.48;
}

.jhb-berlin-angebot .jba-router-card__arrow{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  margin-top:auto;
  padding-top:1px;
  border-radius:50%;
  background:rgba(var(--jba-blue-rgb),.075);
  color:var(--jba-blue-dark);
  font-size:.95rem;
  font-weight:900;
  line-height:1;
  transition:transform .18s ease,background-color .18s ease;
}

@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-router-card:hover,
  .jhb-berlin-angebot .jba-router-card:focus-visible{
    transform:translate3d(0,-4px,0);
    border-color:rgba(var(--jba-blue-rgb),.30);
    background:linear-gradient(135deg,rgba(47,111,132,.96) 0%,rgba(31,80,96,.98) 100%);
    box-shadow:0 18px 44px rgba(18,49,62,.145),inset 0 1px 0 rgba(255,255,255,.16);
  }

  .jhb-berlin-angebot .jba-router-card:hover .jba-router-card__need,
  .jhb-berlin-angebot .jba-router-card:hover .jba-router-card__match,
  .jhb-berlin-angebot .jba-router-card:hover .jba-router-card__text,
  .jhb-berlin-angebot .jba-router-card:focus-visible .jba-router-card__need,
  .jhb-berlin-angebot .jba-router-card:focus-visible .jba-router-card__match,
  .jhb-berlin-angebot .jba-router-card:focus-visible .jba-router-card__text{
    color:#fff;
  }

  .jhb-berlin-angebot .jba-router-card:hover .jba-router-card__meta,
  .jhb-berlin-angebot .jba-router-card:focus-visible .jba-router-card__meta{
    background:rgba(255,255,255,.18);
    color:#fff;
  }

  .jhb-berlin-angebot .jba-router-card:hover .jba-router-card__arrow,
  .jhb-berlin-angebot .jba-router-card:focus-visible .jba-router-card__arrow{
    transform:translateX(2px);
    background:rgba(255,255,255,.18);
    color:#fff;
  }
}

@media (max-width:980px){
  .jhb-berlin-angebot .jba-router-panel{
    width:min(100%,760px);
  }

  .jhb-berlin-angebot .jba-router-card{
    min-height:252px;
    padding-left:22px;
    padding-right:22px;
  }
}

@media (max-width:760px){
  .jhb-berlin-angebot :target,
  .jhb-berlin-angebot .jba-section{
    scroll-margin-top:96px;
  }

  body.admin-bar .jhb-berlin-angebot :target,
  body.admin-bar .jhb-berlin-angebot .jba-section{
    scroll-margin-top:116px;
  }

  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jhb-guide-system.jhb-guide{
    padding:10px 0 16px;
    background:#fff;
  }

  .jhb-berlin-angebot.jhb-berlin-angebot--ambulante-hilfen-berlin .jba-main > .jba-section:first-child{
    padding-top:58px;
  }

  .jhb-berlin-angebot .jba-card--hub-intro{
    padding:24px 22px;
  }

  .jhb-berlin-angebot .jba-router-panel{
    width:min(100%,560px);
    padding:12px;
    border-radius:28px;
  }

  .jhb-berlin-angebot .jba-router-grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .jhb-berlin-angebot .jba-router-card{
    min-height:0;
    padding:28px 20px 19px;
    border-radius:19px;
  }

  .jhb-berlin-angebot .jba-router-card__need{
    font-size:.8rem;
    line-height:1.32;
  }

  .jhb-berlin-angebot .jba-router-card__match{
    margin-top:8px;
    font-size:1rem;
  }

  .jhb-berlin-angebot .jba-router-card__text{
    font-size:.84rem;
  }

  .jhb-berlin-angebot .jba-router-card__arrow{
    margin-top:16px;
  }
}

@media (max-width:430px){
  .jhb-berlin-angebot .jba-card__badge,
  .jhb-berlin-angebot .jba-router-card__meta{
    font-size:.62rem;
  }

  .jhb-berlin-angebot.jhb-berlin-angebot--hilfe-zur-erziehung-berlin .jba-hero h1{
    max-width:min(100%,20ch);
    font-size:clamp(1.6rem,7vw,1.92rem);
  }
}


/* =========================================================
   V25 – Berlin-Angebote: edler Detailseiten-Rhythmus
   - Hero ruhig, ohne Linien-/Skyline-Grafik
   - Kontakt-Fakt layoutgleich zu allen Faktenkarten
   - Detail-Angebote ohne doppelte Vertrauens-/CTA-Karten
   ========================================================= */

.jhb-berlin-angebot .jba-facts > .jba-fact{
  text-decoration:none;
  transition:transform .24s cubic-bezier(.22,1,.36,1),border-color .2s ease,box-shadow .24s ease,background .24s ease;
}

.jhb-berlin-angebot .jba-facts > .jba-fact--contact{
  color:var(--jba-text);
  text-decoration:none;
}

.jhb-berlin-angebot .jba-facts > .jba-fact--contact::after{
  content:none;
  display:none;
}

@media (max-width:760px){
  .jhb-berlin-angebot .jba-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:112px;
    align-items:stretch;
    justify-items:stretch;
    gap:10px;
    width:min(100%,342px);
    max-width:342px;
  }
  .jhb-berlin-angebot .jba-facts > span,
  .jhb-berlin-angebot .jba-facts > .jba-fact{
    align-self:stretch;
    justify-self:stretch;
    width:100%;
    min-height:112px;
    height:112px;
    margin:0;
    transform:none;
  }
}

@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-facts > .jba-fact--contact:hover,
  .jhb-berlin-angebot .jba-facts > .jba-fact--contact:focus-visible{
    color:var(--jba-text);
    text-decoration:none;
  }
}

/* Wegweiser-Navi auf Berlin-Angebotsseiten: weniger dominant, gleicher Nutzen */
body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system.jhb-guide{
  --jhb-guide-page-accent:var(--jba-blue);
  --jhb-guide-page-accent-dark:var(--jba-blue-dark);
  --jhb-guide-page-rgb:var(--jba-blue-rgb);
  --jhb-guide-active-bg:rgba(var(--jba-blue-rgb),.065);
  --jhb-guide-border-color:rgba(var(--jba-blue-rgb),.105);
  --jhb-guide-line-color:rgba(var(--jba-blue-rgb),.08);
  --jhb-guide-shadow-color:rgba(18,49,62,.042);
  position:relative;
  z-index:0;
  margin:0;
  padding:2px 0 10px;
  background:linear-gradient(180deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,.56) 62%,rgba(255,255,255,0) 100%);
}

body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__wrap,
body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__shell,
body.jhb-berlin-page .jhb-guide-system-stickybar .jhb-guide__shell{
  background:transparent;
}

body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__items,
body.jhb-berlin-page .jhb-guide-system-stickybar .jhb-guide__shell{
  gap:3px;
  padding:6px 7px;
  border:1px solid rgba(var(--jba-blue-rgb),.11);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  box-shadow:0 10px 24px rgba(18,49,62,.044),inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter:saturate(1.08) blur(12px);
  -webkit-backdrop-filter:saturate(1.08) blur(12px);
}

body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__item,
body.jhb-berlin-page .jhb-guide-system-stickybar .jhb-guide__item{
  min-height:30px;
  padding:6px 10px;
  border-radius:999px;
  color:var(--jba-blue-dark);
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.055em;
  line-height:1.15;
  text-transform:uppercase;
  box-shadow:none;
}

body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__item:hover,
body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__item:focus-visible,
body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__item.is-active,
body.jhb-berlin-page .jhb-guide-system-stickybar .jhb-guide__item:hover,
body.jhb-berlin-page .jhb-guide-system-stickybar .jhb-guide__item:focus-visible,
body.jhb-berlin-page .jhb-guide-system-stickybar .jhb-guide__item.is-active{
  background:rgba(var(--jba-blue-rgb),.07);
  color:var(--jba-blue-dark);
  box-shadow:inset 0 0 0 1px rgba(var(--jba-blue-rgb),.095);
}

body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__label,
body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__headline,
body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__eyebrow{
  color:rgba(47,111,132,.74);
  font-size:.63rem;
  letter-spacing:.11em;
}

body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__close,
body.jhb-berlin-page .jhb-guide-system-stickybar .jhb-guide__close{
  width:29px;
  height:29px;
  opacity:.66;
  background:rgba(var(--jba-blue-rgb),.065);
  box-shadow:none;
}

/* Abschnittsrhythmus: viel Weiß, Berliner Blau nur an ausgewählten Stellen. */
.jhb-berlin-angebot .jba-main > .jba-section:not(.jba-section--soft):not(.jba-section--fit-guide):not(.jba-section--berlin-focus):not(.jba-section--contact){
  background:#ffffff;
}

.jhb-berlin-angebot .jba-section--angebot,
.jhb-berlin-angebot .jba-section--fuer-wen,
.jhb-berlin-angebot .jba-section--teilhabe,
.jhb-berlin-angebot .jba-section--begleitung,
.jhb-berlin-angebot .jba-section--selbststaendig,
.jhb-berlin-angebot .jba-section--vertrauen,
.jhb-berlin-angebot .jba-section--faq{
  background:#ffffff;
}

.jhb-berlin-angebot .jba-section--timeline,
.jhb-berlin-angebot .jba-section--links,
.jhb-berlin-angebot .jba-section--router{
  background:
    radial-gradient(680px 260px at 88% 0%,rgba(207,229,234,.22),transparent 74%),
    linear-gradient(180deg,var(--jba-surface-soft) 0%,var(--jba-section-blue) 100%);
}

/* Listen in Karten: besser scannbar, fachlicher */
.jhb-berlin-angebot .jba-card ul{
  gap:8px;
  width:min(100%,23rem);
  max-width:23rem;
  margin-top:18px;
  text-align:left;
}

.jhb-berlin-angebot .jba-card li{
  padding-left:18px;
  line-height:1.62;
}

/* Entscheidungsblock: Passt diese Hilfe? */
.jhb-berlin-angebot .jba-section--fit-guide{
  padding:62px 0 68px;
  background:
    radial-gradient(660px 280px at 14% 0%,rgba(255,255,255,.82),transparent 74%),
    radial-gradient(700px 300px at 88% 8%,rgba(207,229,234,.28),transparent 76%),
    linear-gradient(180deg,#f8fbfd 0%,#eef6f9 100%);
  background-size:auto,auto,auto;
}

.jhb-berlin-angebot .jba-fit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  max-width:1040px;
  margin:0 auto;
}

.jhb-berlin-angebot .jba-fit-card{
  position:relative;
  overflow:hidden;
  min-height:255px;
  padding:28px 27px 26px;
  border:1px solid rgba(var(--jba-blue-rgb),.14);
  border-radius:26px;
  background:radial-gradient(220px 130px at 92% 0%,rgba(var(--jba-blue-rgb),.06),transparent 72%),rgba(255,255,255,.9);
  box-shadow:0 22px 48px rgba(18,49,62,.072),inset 0 1px 0 rgba(255,255,255,.92);
  transition:transform .28s cubic-bezier(.22,1,.36,1),border-color .22s ease,box-shadow .28s ease;
}

.jhb-berlin-angebot .jba-fit-card::before{
  content:"";
  position:absolute;
  left:0;
  top:20px;
  bottom:20px;
  width:4px;
  border-radius:0 999px 999px 0;
  background:rgba(var(--jba-blue-rgb),.28);
}

.jhb-berlin-angebot .jba-fit-card--yes::before{background:linear-gradient(180deg,rgba(var(--jba-green-rgb),.34),rgba(var(--jba-blue-rgb),.24))}
.jhb-berlin-angebot .jba-fit-card--no::before{background:linear-gradient(180deg,rgba(138,118,101,.24),rgba(var(--jba-blue-rgb),.16))}
.jhb-berlin-angebot .jba-fit-card--next::before{background:linear-gradient(180deg,rgba(var(--jba-blue-rgb),.38),rgba(var(--jba-green-rgb),.26))}

.jhb-berlin-angebot .jba-fit-card h3{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  gap:10px;
  margin:0 0 16px;
  color:var(--jba-text);
  font-size:1.08rem;
  line-height:1.3;
  font-weight:900;
  letter-spacing:-.018em;
}
.jhb-berlin-angebot .jba-fit-card h3::before{
  content:"✓";
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:14px;
  background:rgba(var(--jba-green-rgb),.11);
  color:var(--jba-green-dark);
  font-size:.98rem;
  line-height:1;
  box-shadow:inset 0 0 0 1px rgba(var(--jba-green-rgb),.14);
}
.jhb-berlin-angebot .jba-fit-card--no h3::before{content:"–";background:rgba(138,118,101,.09);color:#8a7665;box-shadow:inset 0 0 0 1px rgba(138,118,101,.13)}
.jhb-berlin-angebot .jba-fit-card--next h3::before{content:"→";background:rgba(var(--jba-blue-rgb),.105);color:var(--jba-blue-dark);box-shadow:inset 0 0 0 1px rgba(var(--jba-blue-rgb),.14)}

.jhb-berlin-angebot .jba-fit-card ul{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.jhb-berlin-angebot .jba-fit-card li{
  position:relative;
  padding-left:20px;
  color:rgba(24,50,67,.78);
  font-size:.96rem;
  line-height:1.58;
}

.jhb-berlin-angebot .jba-fit-card li::before{
  content:"";
  position:absolute;
  left:0;
  top:.72em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:rgba(var(--jba-blue-rgb),.44);
}

.jhb-berlin-angebot .jba-fit-card--yes li::before{background:rgba(var(--jba-green-rgb),.56)}
.jhb-berlin-angebot .jba-fit-card--no li::before{background:rgba(138,118,101,.42)}
.jhb-berlin-angebot .jba-fit-card--next li::before{background:rgba(var(--jba-blue-rgb),.56)}

@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-fit-card:hover,
  .jhb-berlin-angebot .jba-fit-card:focus-within{
    transform:translateY(-6px);
    border-color:rgba(var(--jba-blue-rgb),.22);
    box-shadow:0 32px 68px rgba(18,49,62,.11),0 10px 24px rgba(var(--jba-blue-rgb),.06),inset 0 1px 0 rgba(255,255,255,.95);
  }
}

/* Related Links: deutlicher als echte nächste Wege */
.jhb-berlin-angebot .jba-link-card{
  position:relative;
  transition:transform .26s cubic-bezier(.22,1,.36,1),border-color .2s ease,box-shadow .26s ease,background .26s ease;
}

.jhb-berlin-angebot .jba-link-card::after{
  content:"→";
  display:grid;
  place-items:center;
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  width:31px;
  height:31px;
  border-radius:50%;
  background:rgba(var(--jba-blue-rgb),.075);
  color:var(--jba-blue-dark);
  font-weight:900;
  transition:transform .18s ease,background-color .18s ease;
}

@media (hover:hover) and (pointer:fine){
  .jhb-berlin-angebot .jba-link-card:hover,
  .jhb-berlin-angebot .jba-link-card:focus-visible{
    transform:translate3d(0,-4px,0);
    border-color:rgba(var(--jba-blue-rgb),.22);
    background:linear-gradient(180deg,#ffffff 0%,#f3faf8 100%);
    box-shadow:0 22px 48px rgba(18,49,62,.092),0 8px 18px rgba(var(--jba-blue-rgb),.055),inset 0 1px 0 rgba(255,255,255,.92);
  }
  .jhb-berlin-angebot .jba-link-card:hover::after,
  .jhb-berlin-angebot .jba-link-card:focus-visible::after{transform:translate(3px,-50%);background:rgba(var(--jba-blue-rgb),.12)}
}

@media (max-width:980px){
  .jhb-berlin-angebot .jba-fit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:760px){
  .jhb-berlin-angebot .jba-hero__content::before,
  .jhb-berlin-angebot .jba-hero__content::after{display:none}
  body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system.jhb-guide{padding:6px 0 10px;background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(255,255,255,0))}
  body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__items{padding:5px;box-shadow:0 8px 18px rgba(18,49,62,.04)}
  body.jhb-berlin-page .jhb-berlin-angebot .jhb-guide-system .jhb-guide__item{min-height:32px;padding:6px 10px;font-size:.69rem}
  .jhb-berlin-angebot .jba-section--fit-guide{padding:50px 0}
  .jhb-berlin-angebot .jba-fit-grid{grid-template-columns:1fr;gap:14px;width:min(100%,448px);max-width:448px;margin-inline:auto}
  .jhb-berlin-angebot .jba-fit-card{min-height:0;padding:22px 21px 21px;border-radius:22px}
  .jhb-berlin-angebot .jba-fit-card h3{margin-bottom:12px}
  .jhb-berlin-angebot .jba-fit-card ul{gap:9px}
}
