/* JHB Aufnahmeübersicht – scannbarer Regionsaufbau */
.jhb-cap-page{--cap-ink:#173647;--cap-orange:#e9620b;--cap-gold:#956b22;--cap-line:#e7dfd2;background:#fffdf9;color:var(--cap-ink);font-family:Nunito,'Nunito Sans',sans-serif}
.jhb-cap-page *{box-sizing:border-box}
.jhb-cap-container{width:min(1080px,calc(100% - 40px));margin-inline:auto}
.jhb-cap-eyebrow{margin:0 0 10px;color:var(--cap-gold);font-size:11px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.jhb-cap-hero{padding:clamp(58px,7vw,90px) 0;background:radial-gradient(ellipse at 86% 16%,rgba(133,175,125,.13),transparent 50%),linear-gradient(135deg,#23472f,#2d523a);text-align:center;color:#fff}
.jhb-cap-hero .jhb-cap-eyebrow{color:#f4c78e}
.jhb-cap-hero h1{max-width:770px;margin:0 auto 18px;font-size:clamp(33px,4vw,52px);line-height:1.14;color:#fff;font-weight:850}
.jhb-cap-lead{max-width:675px;margin:0 auto 26px;font-size:clamp(15px,1.35vw,18px);line-height:1.6;color:#eef5ee}
.jhb-cap-hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.jhb-cap-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:999px;font-size:13px;font-weight:800;line-height:1.35;text-decoration:none;white-space:normal;text-align:center;transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.jhb-cap-btn--orange{background:#e9620b;color:#fff;border:1px solid #e9620b}
.jhb-cap-btn--orange:hover{background:#c84f05;color:#fff;border-color:#c84f05}
.jhb-cap-btn--light{background:#fff;color:#254a33;border:1px solid #fff}
.jhb-cap-btn--light:hover{background:#e9f2e9;color:#254a33}
.jhb-cap-hero-note{margin:19px 0 0;font-size:12px;line-height:1.5;color:#dceadd}
.jhb-cap-overview{padding:clamp(48px,6vw,76px) 0;background:#f8f3eb;scroll-margin-top:115px}
.jhb-cap-section-head{text-align:center;max-width:740px;margin:0 auto 27px}
.jhb-cap-section-head h2{margin:0 0 12px;font-size:clamp(27px,3vw,37px);line-height:1.2;color:var(--cap-ink)}
.jhb-cap-section-head>p:last-child{color:#617782;line-height:1.65;margin:0}
.jhb-cap-summary{display:flex;align-items:center;gap:15px;padding:18px 22px;margin:0 auto 24px;max-width:1060px;border:1px solid #e1d8ca;border-radius:17px;background:#fff}
.jhb-cap-summary-icon{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:50%;background:#f2eee5;color:#956b22;font-size:17px;font-weight:900}
.jhb-cap-summary>div:nth-child(2){flex:1;min-width:0}
.jhb-cap-summary strong{font-size:16px;color:var(--cap-ink)}
.jhb-cap-summary p{margin:4px 0 0;color:#657987;font-size:13px;line-height:1.5}
.jhb-cap-summary>a{font-weight:800;font-size:13px;color:#9a6820;white-space:nowrap;text-decoration:none}
.jhb-cap-summary>a:hover{text-decoration:underline}
.jhb-cap-region-nav{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:0 auto 21px;max-width:1060px}
.jhb-cap-jump{display:inline-flex;align-items:center;border-radius:999px;background:#fff;border:1px solid #ded7cb;padding:8px 12px;color:#365366;font-size:12px;font-weight:800;text-decoration:none}
.jhb-cap-jump--berlin{border-color:#c5d8e2;color:#4b718a}.jhb-cap-jump--barnim{border-color:#edd2b5;color:#c45f0d}.jhb-cap-jump--mol{border-color:#d7e3c6;color:#667d4b}.jhb-cap-jump--oder-spree{border-color:#c7e1d1;color:#357f5b}.jhb-cap-jump--uckermark{border-color:#cbdfd3;color:#4c7261}.jhb-cap-jump--prignitz{border-color:#e6d3ad;color:#8b681f}
.jhb-cap-regions{display:grid;gap:13px;max-width:1060px;margin-inline:auto}
.jhb-cap-region{--region:#956b22;--region-line:#e5dac7;--region-wash:#f9f5ec;display:grid;grid-template-columns:minmax(0,1fr) 250px;background:#fff;border:1px solid var(--region-line);border-left:4px solid var(--region);border-radius:19px;overflow:hidden;scroll-margin-top:118px;box-shadow:0 8px 23px rgba(31,47,38,.035)}
.jhb-cap-region--berlin{--region:#4a7590;--region-line:#d7e5ee;--region-wash:#f2f7fa}.jhb-cap-region--barnim{--region:#d76916;--region-line:#f0dac6;--region-wash:#fff7ee}.jhb-cap-region--mol{--region:#718852;--region-line:#dfe9d2;--region-wash:#f5f9f1}.jhb-cap-region--oder-spree{--region:#3b8d69;--region-line:#d6e9df;--region-wash:#f0f8f4}.jhb-cap-region--uckermark{--region:#527868;--region-line:#dce9e1;--region-wash:#f2f8f5}.jhb-cap-region--prignitz{--region:#a67d2c;--region-line:#eadebf;--region-wash:#fcf8ed}
.jhb-cap-region-main{padding:26px 30px 27px;min-width:0}
.jhb-cap-region-head{display:flex;align-items:flex-start;justify-content:flex-start;gap:12px;margin:0 0 5px}
.jhb-cap-region-head h3{margin:0 0 3px;font-size:20px;line-height:1.25;color:var(--cap-ink)}
.jhb-cap-team{margin:0;color:#627888;font-size:12px;line-height:1.45}
.jhb-cap-region-meta{display:flex;align-items:center;margin:11px 0 17px}
.jhb-cap-state{display:inline-flex;align-items:center;width:max-content;max-width:100%;border:1px solid var(--region-line);border-radius:999px;padding:6px 12px;font-size:11px;font-weight:800;color:var(--region);background:var(--region-wash);line-height:1.4}
.jhb-cap-state--active{background:#edf7ed;border-color:#c6dfca;color:#286c46}
.jhb-cap-region-description{margin:0 0 20px;font-size:14px;color:#425d6d;line-height:1.65;max-width:760px}
.jhb-cap-region-quickfacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 17px}
.jhb-cap-quickfact{padding:16px 17px;border:1px solid var(--region-line);border-radius:14px;background:var(--region-wash)}
.jhb-cap-quickfact-label{display:block;margin:0 0 9px;color:var(--region);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.jhb-cap-chip-row{display:flex;flex-wrap:wrap;gap:7px}
.jhb-cap-chip{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid var(--region-line);border-radius:999px;background:#fff;color:#345161;font-size:12px;font-weight:800;line-height:1.35}
.jhb-cap-quickfact-text{margin:0;color:#304c5a;font-size:12.5px;line-height:1.65;font-weight:700}
.jhb-cap-quickfact-note{margin:9px 0 0;color:#5f7580;font-size:12px;line-height:1.55}
.jhb-cap-region-service{margin:0;color:#5f7582;font-size:12px;line-height:1.55}
.jhb-cap-region-service strong{color:var(--cap-ink)}
.jhb-cap-region-service a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:800}
.jhb-cap-region-service a:hover,.jhb-cap-region-service a:focus-visible{color:#d45d0b}
.jhb-cap-no-report{margin:15px 0 0;padding:12px 14px;background:var(--region-wash);border-radius:10px;color:#5a6f78;font-size:12px;line-height:1.55}
.jhb-cap-region-side{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:9px;padding:24px 20px 22px;background:var(--region-wash);border-left:1px solid var(--region-line);text-align:center}
.jhb-cap-side-label{margin:0 0 6px;color:var(--region);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}
.jhb-cap-region-side strong{font-size:15px;line-height:1.3;color:var(--cap-ink);max-width:205px}
.jhb-cap-region-side>p:not(.jhb-cap-side-label){margin:0;color:#58717c;font-size:11.5px;line-height:1.5;max-width:205px}
.jhb-cap-btn--outline{padding:11px 18px;min-height:42px;background:#fff;border:1px solid var(--region-line);color:var(--region);font-size:13px}
.jhb-cap-btn--outline:hover{background:var(--region);border-color:var(--region);color:#fff;box-shadow:0 8px 18px rgba(28,54,41,.11)}
.jhb-cap-contact-person{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;max-width:205px;width:100%}
.jhb-cap-contact-avatar{display:block;flex:none;width:78px;height:78px;min-width:78px;min-height:78px;max-width:none;aspect-ratio:1;object-fit:cover;border-radius:50%;border:3px solid #fff;box-shadow:0 2px 12px rgba(20,40,35,.12);background:#fff;transition:transform .22s ease,box-shadow .22s ease}
.jhb-cap-region-side .jhb-cap-contact-name{font-size:14px;line-height:1.3}
.jhb-cap-contact-role{color:#647988;font-size:10.5px;line-height:1.35}
.jhb-cap-contact-area{font-size:10.5px;color:var(--region);font-weight:800;line-height:1.35}
.jhb-cap-contact-switcher{width:100%;display:flex;flex-direction:column;align-items:center;gap:6px}
.jhb-cap-contact-stage{position:relative;width:min(100%,196px);display:block}
.jhb-cap-contact-panels{width:100%;min-height:172px;display:grid;align-items:start;justify-items:center;padding-inline:34px}
.jhb-cap-contact-view{width:100%;min-height:172px;animation:jhb-cap-person-appear .22s ease both}
.jhb-cap-contact-view[hidden]{display:none}
.jhb-cap-contact-zoom{position:relative;display:grid;place-items:center;flex:none;width:78px;height:78px;min-width:78px;min-height:78px;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:50%}
.jhb-cap-contact-zoom:hover .jhb-cap-contact-avatar,.jhb-cap-contact-zoom:focus-visible .jhb-cap-contact-avatar{transform:scale(1.08);box-shadow:0 8px 22px rgba(20,40,35,.18)}
.jhb-cap-contact-zoom:focus-visible{outline:3px solid var(--region);outline-offset:4px}
.jhb-cap-contact-zoom-icon{position:absolute;right:-1px;bottom:-1px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--region);color:#fff;border:2px solid #fff;box-shadow:0 6px 16px rgba(20,40,35,.18);transition:transform .22s ease,background-color .22s ease}
.jhb-cap-contact-zoom:hover .jhb-cap-contact-zoom-icon,.jhb-cap-contact-zoom:focus-visible .jhb-cap-contact-zoom-icon{transform:scale(1.08)}
.jhb-cap-contact-arrow{appearance:none;position:absolute;top:21px;z-index:2;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--region);background:#fff;color:var(--region);border-radius:50%;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}
.jhb-cap-contact-arrow:hover{background:var(--region);border-color:var(--region);color:#fff;box-shadow:0 5px 14px rgba(20,40,35,.12)}
.jhb-cap-contact-arrow[data-cap-prev]{left:0}
.jhb-cap-contact-arrow[data-cap-next]{right:0}
.jhb-cap-contact-arrow[data-cap-prev]:hover{transform:translateX(-2px)}
.jhb-cap-contact-arrow[data-cap-next]:hover{transform:translateX(2px)}
.jhb-cap-contact-arrow:focus-visible{outline:3px solid var(--region);outline-offset:3px}
.jhb-cap-contact-counter{display:inline-flex;align-items:center;justify-content:center;min-width:44px;color:#647988;font-size:10.5px;font-weight:800;font-variant-numeric:tabular-nums}
.jhb-cap-person-placeholder{display:grid;place-items:center;width:78px;height:78px;border-radius:50%;background:#fff;color:var(--region);margin-bottom:4px;box-shadow:0 2px 12px rgba(20,40,35,.12)}
.jhb-cap-side-link{display:inline-block;max-width:205px;margin-top:1px;font-size:11.5px;font-weight:800;line-height:1.5;color:var(--region);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.jhb-cap-meldungen{display:grid;gap:12px;margin:21px 0 0;padding-top:18px;border-top:1px solid var(--region-line)}
.jhb-cap-meldungen-heading{margin:0 0 1px;color:var(--region);font-size:12px;letter-spacing:.055em;text-transform:uppercase;font-weight:850}
.jhb-cap-meldung{padding:17px 18px;border:1px solid var(--region-line);border-radius:13px;background:#fff}
.jhb-cap-meldung-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.jhb-cap-meldung-top>strong{color:var(--cap-ink);font-size:15px;line-height:1.4}
.jhb-cap-meldung-state{border-radius:999px;padding:5px 9px;background:#f4efe5;color:#775c29;font-size:12px;font-weight:850}
.jhb-cap-meldung-state--frei{background:#e7f4e9;color:#236b42}.jhb-cap-meldung-state--belegt{background:#f3eeee;color:#875a5a}
.jhb-cap-meldung>p{margin:8px 0 0;color:#4e6876;font-size:12px;line-height:1.55;overflow-wrap:break-word}
.jhb-cap-meldung-label{display:block;margin:0 0 3px;font-size:12px;line-height:1.35;font-weight:850;color:var(--cap-ink)}
.jhb-cap-meldung .jhb-cap-meldung-note{color:#405d6d}
.jhb-cap-meldung-foot{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:13px;font-size:12px;color:#667d88;flex-wrap:wrap}
.jhb-cap-meldung-foot a{color:var(--region);font-size:12px;font-weight:850;text-decoration:underline;text-underline-offset:2px}
.jhb-cap-process{padding:clamp(48px,6vw,74px) 0;background:#fffdf9}
.jhb-cap-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;list-style:none;margin:0}
.jhb-cap-steps li{padding:21px;border:1px solid var(--cap-line);border-radius:16px;background:#fff}
.jhb-cap-steps li>span{display:block;color:var(--cap-gold);font-size:14px;font-weight:900;margin-bottom:9px}
.jhb-cap-steps li>strong{display:block;color:var(--cap-ink);font-size:16px}
.jhb-cap-steps li p{color:#627987;line-height:1.55;font-size:13px;margin:8px 0 0}
.jhb-cap-final{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:23px 0 0;padding:22px 25px;border-radius:17px;background:#f6f0e5}
.jhb-cap-final strong{font-size:17px;color:var(--cap-ink)}.jhb-cap-final p{color:#667983;line-height:1.5;margin:6px 0 0}
.jhb-cap-page a:focus-visible{outline:3px solid #e9620b;outline-offset:3px}
.jhb-cap-lightbox{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:24px}
.jhb-cap-lightbox[hidden]{display:none}
.jhb-cap-lightbox-backdrop{position:absolute;inset:0;background:rgba(17,29,24,.68);backdrop-filter:blur(4px)}
.jhb-cap-lightbox-dialog{position:relative;z-index:1;width:min(100%,460px);padding:24px 22px 22px;border:1px solid rgba(255,255,255,.72);border-radius:24px;background:#fff;box-shadow:0 24px 60px rgba(14,26,21,.28);opacity:0;transform:translateY(10px) scale(.98);transition:opacity .18s ease,transform .18s ease}
.jhb-cap-lightbox.is-visible .jhb-cap-lightbox-dialog{opacity:1;transform:translateY(0) scale(1)}
.jhb-cap-lightbox-close{appearance:none;position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;min-height:40px;margin:0;padding:0;border:1px solid #dfd8cb;border-radius:50%;background:#fff;color:var(--cap-ink);line-height:0;cursor:pointer;box-shadow:0 3px 12px rgba(20,40,35,.09);transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.jhb-cap-lightbox-close svg{display:block;flex:none;width:20px;height:20px;margin:0;padding:0;transform:none}.jhb-cap-lightbox-close:hover{background:var(--cap-orange);border-color:var(--cap-orange);color:#fff}
.jhb-cap-lightbox-close:focus-visible{outline:3px solid var(--cap-orange);outline-offset:3px}
.jhb-cap-lightbox-figure{margin:0;display:grid;gap:15px;justify-items:center;text-align:center;padding-top:26px}
.jhb-cap-lightbox-image{display:block;width:min(100%,340px);height:auto;max-height:min(58vh,440px);aspect-ratio:4/5;border-radius:18px;object-fit:contain;object-position:center;background:#f5f2ec;box-shadow:0 12px 30px rgba(18,34,28,.13)}
.jhb-cap-lightbox-caption{display:grid;gap:5px;max-width:350px;padding:2px 10px 4px}
.jhb-cap-lightbox-caption strong{font-size:20px;line-height:1.25;color:var(--cap-ink)}
.jhb-cap-lightbox-caption span{font-size:13px;line-height:1.5;color:#607782}
body.jhb-cap-lightbox-open{overflow:hidden}
@keyframes jhb-cap-person-appear{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:920px){.jhb-cap-region-quickfacts{grid-template-columns:1fr}}
@media(max-width:800px){.jhb-cap-region{grid-template-columns:1fr}.jhb-cap-region-side{border-left:0;border-top:1px solid var(--region-line);padding:20px 24px;justify-content:flex-start}.jhb-cap-summary{flex-wrap:wrap}.jhb-cap-summary>a{margin-left:52px}.jhb-cap-region-main{padding:19px}.jhb-cap-steps{grid-template-columns:1fr}.jhb-cap-meldung-label{display:block;min-width:0;margin:0 0 2px}}
@media(max-width:540px){.jhb-cap-container{width:calc(100% - 28px)}.jhb-cap-hero{padding:56px 0}.jhb-cap-hero-actions{flex-direction:column;align-items:stretch}.jhb-cap-region-head{flex-direction:column}.jhb-cap-jump{font-size:11px}.jhb-cap-summary{padding:16px}.jhb-cap-summary>a{margin-left:0}.jhb-cap-final{flex-direction:column;align-items:stretch}.jhb-cap-btn{width:100%}.jhb-cap-quickfact{padding:13px}.jhb-cap-chip{font-size:11px}.jhb-cap-contact-stage{width:min(100%,188px)}.jhb-cap-contact-panels{padding-inline:30px}.jhb-cap-contact-arrow{top:21px;width:32px;height:32px}.jhb-cap-lightbox{padding:14px}.jhb-cap-lightbox-dialog{padding:14px}.jhb-cap-lightbox-image{width:min(100%,300px);max-height:55vh;border-radius:16px}}
@media(prefers-reduced-motion:reduce){.jhb-cap-btn,.jhb-cap-contact-avatar,.jhb-cap-contact-zoom-icon,.jhb-cap-contact-arrow,.jhb-cap-lightbox-dialog,.jhb-cap-lightbox-close{transition:none}.jhb-cap-contact-view{animation:none}}
