@font-face{font-family:Barlow;src:url('/assets/barlow.woff2') format('woff2'),url('/assets/barlow.ttf') format('truetype');font-display:swap}@font-face{font-family:Condensed;src:url('/assets/barlow-condensed.woff2') format('woff2'),url('/assets/barlow-condensed.ttf') format('truetype');font-display:swap;font-weight:600}:root{--ink:#191b19;--gold:#edc64c;--paper:#fff;--muted:#555b55;--line:#d5d8d1}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--paper);color:var(--ink);font-family:Barlow,sans-serif;font-size:18px;line-height:1.55}a{color:inherit;text-underline-offset:5px}button,input,select{font:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Condensed,sans-serif;font-weight:600;line-height:.98;letter-spacing:-.015em}h1{font-size:clamp(64px,8vw,118px)}h2{font-size:clamp(42px,5vw,72px)}h3{font-size:34px}em{font-style:normal;color:var(--gold)}p{max-width:65ch}header{padding:22px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0}.brand img{width:70px;height:70px}.brand span{font-size:13px;line-height:1.1;letter-spacing:.07em}.brand b{display:block;font-family:Condensed;font-size:31px;letter-spacing:.015em}.brand small{display:block;margin-top:5px;font-size:12px;letter-spacing:.025em}nav{display:flex;align-items:center;gap:26px}nav a{font-size:15px;text-decoration:none;padding:12px 0}nav a:hover,nav a[aria-current]{text-decoration:underline;text-decoration-thickness:2px}.eyebrow{font-size:13px;letter-spacing:.13em;font-weight:bold;margin-bottom:26px}.hero{display:grid;grid-template-columns:1.08fr 1fr;background:var(--ink);color:white}.hero-copy{padding:55px 8.5% 65px}.hero h1{margin-bottom:28px}.hero-copy>p:not(.eyebrow){max-width:440px;color:#e0e1dc}.hero-emblem{background:var(--gold);color:var(--ink);padding:40px 9%;display:flex;flex-direction:column;justify-content:space-between;align-items:center}.hero-emblem>.eyebrow{align-self:flex-start}.hero-emblem img{width:100%;max-width:445px}.emblem-bottom{border-top:1px solid #77652f;padding-top:24px;margin-top:28px;display:flex;justify-content:space-between;width:100%;font-size:14px;line-height:1.4}.button{padding:17px 23px;display:inline-flex;gap:35px;align-items:center;justify-content:space-between;text-decoration:none;font-size:17px;font-weight:bold;border:1px solid transparent;min-height:54px}.gold{background:var(--gold);color:var(--ink)}.dark{background:var(--ink);color:white}.button span,.text-link span{display:inline-block;transition:transform .18s}.button:hover span,.text-link:hover span{transform:translate(3px,-3px)}.text-link{display:inline-flex;align-items:center;gap:24px;font-weight:bold;margin-top:15px}.ticker{display:flex;justify-content:space-between;padding:20px 5%;border-bottom:1px solid var(--line);font-size:16px}.section{padding:95px 6%}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%}.split>div>p:not(.eyebrow){max-width:450px;color:var(--muted)}.portrait-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;align-content:center}.portrait-preview img{width:100%;aspect-ratio:3/4;object-fit:contain;object-position:center;background:#eff0ec}.portrait-preview p{grid-column:1/-1;font-size:14px;margin-top:13px}.region{background:#f0f1ed;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.region img{width:314px;margin:auto}.charity{background:var(--gold)}.charity em{color:var(--ink)}.charity-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.charity h2{font-size:clamp(52px,6.5vw,94px);margin-bottom:0}.charity p{max-width:450px}footer{background:var(--ink);color:#fff;padding:70px 6% 25px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-bottom:40px}.footer-top h2{font-size:48px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #555;padding-top:25px;font-size:14px}.footer-bottom div{display:flex;gap:20px}.intro{padding:70px 6% 50px;background:#f0f1ed}.intro h1{font-size:clamp(58px,7vw,98px);max-width:1000px}.lead{font-size:22px;max-width:800px}.content{padding:55px 6% 90px}.prose{max-width:960px}.prose p{max-width:100%;overflow-wrap:anywhere}.prose h2{font-size:38px;margin-top:45px}.notice{padding:20px 25px;border-left:4px solid var(--gold);background:#f0f1ed;margin-bottom:35px;font-size:16px}.search{display:flex;gap:20px;align-items:end;padding:28px 0 40px}.search label{display:block;font-size:15px;margin-bottom:9px}.search>div{flex:1}input,select{width:100%;padding:15px;border:1px solid #797d76;background:white;color:var(--ink);border-radius:0}#count{font-size:15px}.member>img{width:170px;height:225px;object-fit:contain;object-position:center top;background:#f0f1ed}.member .eyebrow{margin-bottom:5px;color:var(--muted)}.member-body h3{font-family:Barlow;font-size:14px;line-height:1.4;letter-spacing:.07em;text-transform:uppercase}.member-body a{overflow-wrap:anywhere}.directory-heading{display:flex;justify-content:space-between;gap:25px}.link-row{display:flex;gap:25px;justify-content:space-between;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:21px}.link-row:hover{text-decoration:underline}.link-group{margin-bottom:45px}.link-group h2{font-size:40px}.archive-image{max-width:520px;margin:35px 0}.group-photo{width:100%;max-width:520px;object-fit:contain}.logo-row{display:flex;gap:35px;align-items:center;padding-top:25px}.logo-row img{max-width:130px;max-height:110px;object-fit:contain}table{border-collapse:collapse;width:100%;max-width:900px}th,td{text-align:left;padding:18px;border-bottom:1px solid var(--line)}th{background:var(--ink);color:white}.skip{position:absolute;top:-100px;left:20px;background:var(--gold);padding:12px;z-index:20}.skip:focus{top:12px}:focus-visible{outline:3px solid #946700;outline-offset:5px}footer :focus-visible,.hero :focus-visible{outline-color:white}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media(max-width:1050px){header{align-items:flex-start;flex-direction:column;gap:15px}nav{gap:22px;flex-wrap:wrap}.member-body{grid-template-columns:1fr 1fr}.hero h1{font-size:90px}}@media(max-width:650px){body{font-size:17px}header{padding:18px 6%;gap:16px}.brand img{width:58px;height:58px}nav{gap:4px 19px}nav a{font-size:14px;padding:7px 0}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6% 48px}.hero h1{font-size:82px}.hero-emblem{padding:28px 6%}.hero-emblem img{max-width:260px}.hero-emblem>.eyebrow{font-size:11px}.emblem-bottom{font-size:13px}.ticker{gap:16px;font-size:13px;align-items:center}.section{padding:55px 6%}.split,.region,.charity-grid{grid-template-columns:1fr;gap:34px}.portrait-preview{grid-template-columns:repeat(2,1fr);gap:12px}.portrait-preview img{max-height:225px}.region>div:first-child{order:2}.charity h2{font-size:57px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}.footer-bottom div{flex-wrap:wrap}.intro{padding:45px 6% 30px}.intro h1{font-size:59px}.lead{font-size:20px}.content{padding:30px 6% 55px}.search{flex-direction:column;align-items:stretch}.member{grid-template-columns:80px minmax(0,1fr);gap:17px}.member h2{font-size:34px;overflow-wrap:anywhere}.member-body{grid-template-columns:1fr;gap:20px}.member-body p{font-size:16px}.directory-heading{display:block}.button{gap:20px;font-size:16px}.prose h2{font-size:32px}.notice{padding:15px}.link-row{font-size:18px}.footer-top h2{font-size:42px}th,td{padding:12px 8px}}.member-images>img+img{height:auto;margin-top:10px}.caption{font-size:14px;color:var(--muted);margin-top:18px}.charity-mark{display:grid;place-items:center;background:var(--gold);min-height:270px}.charity-mark img{width:150px;height:150px;object-fit:contain}@media(max-width:650px){.member-images>img{width:80px;height:110px}}
.archive-image{max-width:min(520px,100%)}@media(max-width:650px){.intro h1{font-size:52px;overflow-wrap:anywhere}}
/* Revision: official district map first, association and engagement second. */
figure{margin:0}figcaption{font-size:13px;line-height:1.5;color:var(--muted);padding-top:12px}nav a.nav-map{background:var(--ink);color:white;padding:12px 17px;display:flex;gap:20px}.hero-map{grid-template-columns:1.12fr 1fr}.hero-map .hero-copy{padding:62px 8% 48px}.hero-map h1{font-size:clamp(58px,5.4vw,80px);line-height:1.02;letter-spacing:-.02em}.hero-map .eyebrow{font-size:12px}.hero-map .hero-copy>p:not(.eyebrow){max-width:460px}.hero-actions{display:flex;align-items:flex-start;gap:22px;flex-direction:column}.secondary-link{font-size:16px}.secondary-link span{margin-left:20px}.hero-map .external-hint{font-size:12px;color:#bfc3bb!important;margin:14px 0 0}.map-preview{padding:25px 35px 18px;background:#eef0e9;color:var(--ink);display:flex;flex-direction:column;justify-content:center}.map-preview>a{text-decoration:none;display:block}.map-label{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.09em}.map-preview img{height:455px;width:100%;object-fit:contain;margin:12px auto}.map-open{padding:14px 0;border-top:1px solid #aab09e;display:flex;justify-content:space-between;font-size:16px;font-weight:bold}.map-preview figcaption{font-size:11px;padding-top:7px}.orientation{padding:45px 6%;display:grid;grid-template-columns:1fr 1fr;gap:7%;border-bottom:1px solid var(--line)}.orientation>div{display:flex;gap:23px}.step-number{font-family:Condensed;font-size:30px;color:#716132;line-height:1}.orientation h2{font-size:31px;margin-bottom:14px}.orientation p{font-size:16px;max-width:440px;margin-bottom:0}.orientation .text-link{font-size:16px;margin-top:12px}.people-section{align-items:center;grid-template-columns:1fr 1.1fr;padding-top:75px;padding-bottom:75px}.people-photo img{width:100%;height:auto}.people-photo figcaption{font-size:13px}.tour-story{display:grid;grid-template-columns:1.2fr 1fr;background:var(--gold)}.tour-story figure{align-self:center;background:var(--ink)}.tour-story figure img{width:100%;height:auto}.tour-story figcaption{padding:10px 18px;color:#e1e2dc;font-size:12px}.tour-copy{padding:50px 11%;align-self:center}.tour-copy h2{font-size:clamp(43px,4.4vw,65px);line-height:1.04}.tour-copy .eyebrow{font-size:12px}.tour-copy p{font-size:18px}.tour-copy .button{font-size:16px;padding:15px 18px;gap:20px}.tour-copy>.text-link{display:flex;font-size:15px}.tour-wide{margin:55px 6% 0}.tour-wide:last-child{margin-bottom:60px}.tour-wide img{width:100%;height:auto}.map-callout{display:grid;grid-template-columns:190px 1fr;gap:35px;align-items:center;background:#eef0e9;padding:28px 35px;margin-bottom:15px}.map-callout>img{width:190px;height:220px;object-fit:contain}.map-callout h2{font-size:36px;margin-bottom:14px}.map-callout .eyebrow{font-size:12px;margin-bottom:14px}.map-callout p{font-size:16px}.map-callout p.map-credit{font-size:11px;margin:10px 0 0}.originals{padding:15px 6% 50px}.originals summary{cursor:pointer;font-size:15px}.originals img{margin-top:20px}.footer-bottom{font-size:13px}.footer-bottom div{flex-wrap:wrap}.footer-bottom p{min-width:160px}@media(max-width:1050px){.hero-map .hero-copy{padding:40px 7%}.hero-map h1{font-size:61px}.map-preview{padding:23px}.map-preview img{height:430px}.tour-copy{padding:35px 8%}.tour-copy h2{font-size:48px}.footer-bottom{flex-wrap:wrap}}@media(max-width:650px){nav{gap:5px 19px}nav a.nav-map{padding:10px 12px;font-size:13px;gap:12px}.hero-map{grid-template-columns:1fr}.hero-map .hero-copy{padding:38px 6% 35px}.hero-map h1{font-size:48px}.hero-map .eyebrow{font-size:10px;letter-spacing:.09em}.hero-actions{gap:17px}.map-preview{padding:25px 6% 20px}.map-preview img{height:auto;max-height:370px;margin:15px auto}.map-label{font-size:10px}.map-open{font-size:14px}.ticker{font-size:12px}.orientation{grid-template-columns:1fr;gap:30px;padding:35px 6%}.orientation>div{gap:18px}.orientation h2{font-size:30px}.people-section{grid-template-columns:1fr;padding:45px 6%;gap:28px}.people-section h2{font-size:45px}.tour-story{grid-template-columns:1fr}.tour-copy{padding:36px 6% 40px}.tour-copy h2{font-size:50px}.tour-copy p{font-size:17px}.tour-story figure{order:2}.tour-wide{margin:30px 6% 0}.map-callout{grid-template-columns:1fr;padding:22px;gap:15px}.map-callout>img{width:100%;height:210px}.map-callout h2{font-size:33px}.map-callout .button{font-size:14px;padding:14px;gap:10px}.map-callout .eyebrow{font-size:10px}.footer-bottom div{gap:15px}}
/* Long-form association and charity content. */
.page-jumps{display:flex;gap:25px;flex-wrap:wrap;align-items:center;padding:24px 6%;border-bottom:1px solid var(--line);font-size:15px}.page-jumps>span{font-size:11px;letter-spacing:.1em;color:var(--muted);margin-right:12px}.editorial{display:grid;grid-template-columns:1fr 1.12fr;gap:8%;align-items:start}.reading{max-width:710px}.reading p{line-height:1.7}.reading h3{font-size:31px;line-height:1.1;margin-top:38px;margin-bottom:16px}.reading h3:first-child{margin-top:0}.source-note{font-size:13px!important;line-height:1.6!important;color:var(--muted);margin:15px 0 30px;overflow-wrap:anywhere}.section-heading{display:flex;gap:8%;justify-content:space-between;align-items:end;margin-bottom:35px}.section-heading>p{max-width:440px}.board-section{background:#f0f1ed}.board-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}.board-person{display:grid;grid-template-columns:140px 1fr;gap:28px;border-top:1px solid #b9bdb3;padding:30px 0;align-items:start}.board-person:first-child{grid-column:1/-1;max-width:850px;grid-template-columns:190px 1fr;border-top:0;padding-top:0;padding-bottom:45px}.board-person>img{width:140px;height:180px;object-fit:contain;object-position:top;background:#e3e6df}.board-person:first-child>img{width:190px;height:220px}.board-person h3{font-size:35px;line-height:1.06;margin-bottom:14px;overflow-wrap:anywhere}.board-person p{font-size:16px}.board-person .eyebrow{font-size:12px;margin-bottom:10px}.board-person .text-link{font-size:15px;margin-top:0}.register-section{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:var(--ink);color:white}.register-section p{max-width:560px;color:#dadfd6}.facts-list{margin:0}.facts-list>div{padding:17px 0;border-top:1px solid #686e62}.facts-list dt{font-size:13px;color:#bfc3bb;margin-bottom:5px}.facts-list dd{margin:0;font-size:20px}.reading-faq{max-width:1150px}.reading-faq details{border-top:1px solid var(--line);padding:24px 0}.reading-faq details:last-child{border-bottom:1px solid var(--line)}.reading-faq summary{font-size:21px;cursor:pointer;font-weight:bold}.reading-faq details p{margin:20px 0 12px;line-height:1.7}.reading-faq details>a{font-size:16px}.reading-faq details[open] summary{color:#66511a}.impact-row{display:grid;grid-template-columns:1fr 1.12fr;gap:8%;padding:38px 0;border-top:1px solid var(--line)}.impact-number{font-family:Condensed;font-size:86px;line-height:1.1}.impact-word{font-family:Condensed;font-size:53px;line-height:1.1}.impact-row>div:first-child>p{font-size:14px;color:var(--muted);margin-top:12px}.impact-row h3{font-size:33px;line-height:1.15}.impact-row .source-note{margin-bottom:0}.tour-recap{background:#f0f1ed}.route-list{list-style:none;padding:0;margin:0}.route-list li{padding:17px 0;border-top:1px solid #bec4b5;display:grid;grid-template-columns:90px 1fr;gap:15px;font-size:18px}.route-list span{font-size:14px;color:var(--muted)}.small-charity-logo{padding-top:20px}.small-charity-logo img{width:104px;height:auto}.support-close h2{font-size:clamp(48px,6vw,76px);margin-bottom:25px}.support-close .button{margin-top:15px}.register-imprint{border-bottom:1px solid var(--line);margin-bottom:35px}section[id],article[id]{scroll-margin-top:25px}@media(max-width:1000px){.board-person{grid-template-columns:100px 1fr;gap:18px}.board-person>img{width:100px;height:135px}.board-person h3{font-size:31px}.section-heading{align-items:start}.impact-word{font-size:45px}}@media(max-width:650px){.page-jumps{gap:12px 20px;font-size:14px;padding:20px 6%}.page-jumps>span{width:100%}.editorial,.register-section,.impact-row{grid-template-columns:1fr;gap:25px}.reading p{font-size:17px}.section-heading{display:block;margin-bottom:25px}.board-grid{grid-template-columns:1fr}.board-person,.board-person:first-child{grid-column:auto;grid-template-columns:85px minmax(0,1fr);gap:18px;padding:25px 0;max-width:100%}.board-person>img,.board-person:first-child>img{width:85px;height:115px}.board-person h3{font-size:30px}.board-person p{font-size:15px}.board-person .eyebrow{font-size:11px}.board-person .text-link{font-size:14px;gap:10px}.impact-number{font-size:68px}.impact-word{font-size:47px}.impact-row h3{font-size:31px}.route-list li{font-size:16px;grid-template-columns:68px 1fr;gap:9px}.route-list span{font-size:13px}.reading-faq summary{font-size:18px}.facts-list dd{font-size:18px}.reading h3{font-size:29px}.support-close h2{font-size:49px}.reading-faq h2{font-size:44px}}
/* Directory refinement: clear controls and quieter, structured contacts. */
.directory-page{background:#f4f5f1}.directory-page .intro{background:var(--ink);color:white;padding:45px 6% 40px}.directory-page .intro .eyebrow{color:var(--gold);margin-bottom:18px}.directory-page .intro h1{font-size:65px;margin-bottom:20px}.directory-page .intro .lead{font-size:20px;color:#dfe3da;margin-bottom:0}.directory-page>.content{padding-top:32px}.directory-tools{display:grid;grid-template-columns:1.45fr 1fr;gap:24px;align-items:stretch;margin-bottom:45px}.search-panel{background:white;padding:30px;border:1px solid var(--line)}.search-panel>.eyebrow{font-size:11px;margin-bottom:15px;color:var(--muted)}.search-panel>h2{font-size:39px;margin-bottom:20px}.search-panel .search{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;padding:0}.search-panel input,.search-panel select{font-size:16px;min-height:56px;border:1px solid #abb1a3;background:#fafbf8;padding:14px 12px}.search-panel label{font-size:14px}.search-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px}.search-bottom p{font-size:12px;color:var(--muted);max-width:260px;margin:0}.reset-link{border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;font-size:14px;padding:10px 0;cursor:pointer;color:var(--ink);flex-shrink:0}.directory-map{background:#e8ebdf;padding:28px;display:grid;grid-template-columns:1fr 105px;gap:15px;align-items:center}.directory-map .eyebrow{font-size:10px;margin-bottom:13px}.directory-map h2{font-size:34px;margin-bottom:15px}.directory-map p{font-size:15px;margin-bottom:0}.directory-map .text-link{font-size:15px;gap:18px}.directory-map img{width:105px;height:auto}.directory-map .map-credit{grid-column:1/-1;font-size:10px;padding-top:6px}.results-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.results-heading h2{font-size:34px;margin:0}.results-heading #count{font-size:14px;margin:0;color:var(--muted)}.directory-page .member-images>img{width:120px;height:155px;background:#f0f1ed}.directory-page .member h2{font-size:40px;margin:8px 0 22px}.directory-page .member-body{grid-template-columns:1.15fr 1fr;gap:40px;align-items:start}.directory-page .primary-contact>h3{font-size:11px;color:var(--muted);margin-bottom:12px}.team-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.team-details summary::-webkit-details-marker{display:none}.team-details[open] summary>span{font-size:0}.team-contacts{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:5px 0 22px}.team-contacts p{font-size:15px!important}.empty-result{padding:30px;background:white;border-left:4px solid var(--gold);margin-bottom:25px}.empty-result h3{font-size:30px}.empty-result p{font-size:17px;margin-bottom:0}@media(max-width:1050px){.directory-tools{grid-template-columns:1fr}.directory-map{grid-template-columns:1fr 140px}.directory-map img{width:140px;max-height:150px;object-fit:contain}.directory-page .member-body>.primary-contact{grid-column:auto}}@media(max-width:650px){.directory-page .intro{padding:35px 6%}.directory-page .intro h1{font-size:45px}.directory-page .intro .lead{font-size:18px}.directory-page>.content{padding-top:24px}.directory-tools{gap:15px;margin-bottom:30px}.search-panel{padding:23px 19px}.search-panel>h2{font-size:35px}.search-panel .search{grid-template-columns:1fr;gap:17px}.search-panel input,.search-panel select{font-size:16px}.search-bottom{display:block;margin-top:18px}.search-bottom p{font-size:12px;max-width:none}.reset-link{margin-top:4px}.directory-map{padding:22px 19px;grid-template-columns:minmax(0,1fr) 80px;gap:12px}.directory-map img{width:80px}.directory-map h2{font-size:29px}.directory-map p{font-size:14px}.directory-map .text-link{font-size:14px;gap:10px}.results-heading{display:block}.results-heading h2{font-size:32px;margin-bottom:8px}.directory-page .member-images>img{width:60px;height:82px}.directory-page .member .eyebrow{font-size:10px}.directory-page .member-body p{font-size:15px}.team-details{margin-top:22px}.team-contacts{grid-template-columns:1fr;gap:23px}}

/* Keep the engagement copy spacious while external photo rights are unresolved. */
.tour-story:not(:has(figure)){grid-template-columns:1fr}.tour-story:not(:has(figure)) .tour-copy{max-width:1000px}

/* ---------- Zustaendigkeitssuche ---------- */
.finder-hero{background:var(--ink);color:#fff;padding:70px 4.5% 80px}
.finder-hero .eyebrow{color:var(--gold)}
.finder-hero h1{margin-bottom:26px}
.finder-hero .lead{max-width:540px;color:#e0e1dc;margin-bottom:44px}
#suchform{max-width:720px}
.finder-feld{position:relative}
.finder-feld label{display:block;font-size:13px;letter-spacing:.13em;font-weight:bold;margin-bottom:12px}
.finder-eingabe{display:flex;gap:0;background:#fff;border-radius:2px}
.finder-eingabe input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);
 padding:22px 24px;font-size:22px;font-family:Condensed,sans-serif;letter-spacing:-.01em;outline-offset:-4px}
.finder-eingabe input::placeholder{color:#9aa09a}
.finder-eingabe input:disabled{color:var(--muted)}
.finder-eingabe button{border:0;background:var(--gold);color:var(--ink);padding:0 34px;
 font-family:Condensed,sans-serif;font-size:21px;cursor:pointer;letter-spacing:.01em}
.finder-eingabe button:hover,.finder-eingabe button:focus-visible{background:#f2d264}
#vorschlaege{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 6px);margin:0;padding:6px;
 list-style:none;background:#fff;color:var(--ink);box-shadow:0 18px 40px rgba(0,0,0,.28);border-radius:2px;
 max-height:340px;overflow:auto}
#vorschlaege li{display:flex;justify-content:space-between;align-items:baseline;gap:18px;
 padding:13px 16px;cursor:pointer;border-radius:2px}
#vorschlaege li strong{font-family:Condensed,sans-serif;font-size:21px;font-weight:600}
#vorschlaege li span{font-size:14px;color:var(--muted);white-space:nowrap}
#vorschlaege li.aktiv,#vorschlaege li:hover{background:var(--gold)}
#vorschlaege li.aktiv span,#vorschlaege li:hover span{color:var(--ink)}
#suchstatus{margin:20px 0 0;font-size:15px;color:#b9bdb6;max-width:620px}
.finder-ergebnis{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:start;
 padding:70px 4.5%}
#ergebnis:focus{outline:none}
#ergebnis .hinweis{border-left:4px solid var(--gold);padding:4px 0 4px 20px;margin-bottom:34px}
#ergebnis .hinweis p{margin:0;font-size:17px}
.treffer{border-top:1px solid var(--line);padding-top:26px;margin-bottom:34px}
.treffer .eyebrow{margin-bottom:14px;color:var(--muted)}
.treffer h3{margin-bottom:10px}
.treffer-inhalt{display:flex;gap:26px;align-items:flex-start}
.treffer-inhalt .portrait{width:140px;height:auto;flex-shrink:0;border-radius:2px}
.treffer-inhalt .no-photo{width:140px;height:172px;flex-shrink:0;background:#eceee9;border-radius:2px}
.treffer .anschrift{margin-bottom:12px;color:var(--muted)}
.treffer .kontakt{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.treffer .mehr{font-size:15px;margin:0}
#kartenbereich{margin:0;position:sticky;top:30px}
#kartenbereich svg{width:100%;height:auto;max-height:70vh}
#kartenbereich path{fill:#e4e7e1;stroke:#fff;stroke-width:70;transition:fill .35s ease,stroke .35s ease}
#kartenbereich.hat-treffer path{fill:#edefea}
#kartenbereich path.aktiv{fill:var(--gold);stroke:var(--ink);stroke-width:130}
#kehrmarker{fill:var(--ink);stroke:#fff;stroke-width:90}
#kartenbereich figcaption{margin-top:18px;font-size:14px;color:var(--muted);max-width:42ch}
.finder-fuss{padding:0 4.5% 90px;max-width:900px}
.finder-fuss h2{margin-bottom:22px}
.finder-fuss .quelle{font-size:14px;color:var(--muted);margin-top:26px}
@media(max-width:900px){
 .finder-ergebnis{grid-template-columns:1fr;gap:44px;padding:48px 5.5%}
 .finder-hero{padding:48px 5.5% 56px}
 #kartenbereich{position:static}
 .finder-eingabe input{font-size:19px;padding:18px 18px}
 .finder-eingabe button{padding:0 22px;font-size:18px}
 .treffer-inhalt{gap:18px}
 .treffer-inhalt .portrait,.treffer-inhalt .no-photo{width:104px;height:auto}
}
@media(prefers-reduced-motion:reduce){#kartenbereich path{transition:none}}
#ergebnis .andere-orte{font-size:15px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin:0}
#ergebnis .hinweis.unsicher{border-left-color:#c2452d}
#ergebnis .gefunden{font-family:Condensed,sans-serif;font-size:30px;letter-spacing:-.015em;margin-bottom:22px}
#ergebnis .gefunden span{color:var(--muted);font-family:Barlow,sans-serif;font-size:17px;letter-spacing:0}
#ergebnis .andere-orte button{font:inherit;font-size:15px;background:#f2f3f0;border:1px solid var(--line);
 border-radius:999px;padding:5px 14px;margin:3px 2px 0 0;cursor:pointer;color:var(--ink)}
#ergebnis .andere-orte button:hover,#ergebnis .andere-orte button:focus-visible{background:var(--gold);border-color:var(--gold)}

/* ---------- Aufnahmeantrag ---------- */
.antrag-inhalt{padding-bottom:90px}
.antrag-spalten{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.antrag-info{position:sticky;top:30px}
.antrag-info h2{margin-bottom:30px}
.arten-liste{margin:0 0 26px}
.arten-liste>div{border-top:1px solid var(--line);padding:18px 0}
.arten-liste dt{font-family:Condensed,sans-serif;font-size:24px;margin-bottom:6px}
.arten-liste dd{margin:0;color:var(--muted);font-size:16px}
.satzung-hinweis{font-size:15px;color:var(--muted)}
.antrag-formular h2{margin-bottom:26px}
.antrag-formular fieldset{border:0;padding:0;margin:0 0 30px}
.antrag-formular legend{font-size:13px;letter-spacing:.13em;font-weight:bold;margin-bottom:14px;padding:0}
.wahl{display:flex;gap:12px;align-items:flex-start;padding:9px 0;cursor:pointer;font-size:16px;line-height:1.45}
.wahl input{margin-top:5px;flex-shrink:0;width:18px;height:18px;accent-color:var(--ink)}
.feldreihe{display:flex;gap:20px;flex-wrap:wrap}
.feldreihe .feld{flex:1;min-width:190px}
.feldreihe .feld.schmal{flex:0 0 150px;min-width:130px}
.feld{margin:0 0 22px;max-width:none}
.feld label{display:block;font-size:14px;font-weight:bold;letter-spacing:.02em;margin-bottom:7px}
.feld .freiwillig{font-weight:normal;color:var(--muted);letter-spacing:0}
.feld input,.feld select,.feld textarea{width:100%;padding:13px 14px;border:1px solid var(--line);
 border-radius:2px;background:#fff;color:var(--ink);font-size:17px}
.feld input:focus,.feld select:focus,.feld textarea:focus{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}
.feld input[aria-invalid],.feld textarea[aria-invalid]{border-color:#c2452d;background:#fdf6f4}
.feld textarea{resize:vertical;min-height:110px;font-family:inherit}
.feldfehler{display:block;margin-top:6px;font-size:14px;color:#a8371f}
fieldset .feldfehler{margin-bottom:8px}
.einwilligung label{font-weight:normal;font-size:15px}
.einwilligung .wahl span{font-size:15px;color:var(--muted)}
.einwilligung .wahl a{color:var(--ink)}
.koeder{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.absenden{margin:30px 0 16px}
.absenden button{border:0;background:var(--ink);color:#fff;font-family:Condensed,sans-serif;font-size:22px;
 padding:17px 42px;border-radius:2px;cursor:pointer}
.absenden button:hover,.absenden button:focus-visible{background:#000}
.direktweg{font-size:15px;color:var(--muted);margin:0}
.fehlerbox{border-left:4px solid #c2452d;background:#fdf6f4;padding:16px 20px;margin-bottom:28px}
.fehlerbox p{margin:0 0 6px;font-size:16px}
.fehlerbox p:last-child{margin-bottom:0}
.danke{max-width:680px;padding:40px 0 10px}
.danke h2{margin-bottom:20px}
.danke .eyebrow{color:var(--muted)}
.antrag-info .button span{display:block;font-size:13px;letter-spacing:.06em;font-weight:normal;margin-top:3px;opacity:.75}
@media(max-width:900px){
 .antrag-spalten{grid-template-columns:1fr;gap:48px}
 .antrag-info{position:static}
 .feldreihe{gap:0}
 .feldreihe .feld,.feldreihe .feld.schmal{flex:1 1 100%;min-width:0}
}
.mitglied-cta{max-width:760px}
.mitglied-cta h2{margin-bottom:20px}
.mitglied-cta .button{margin-top:10px}
.mitglied-cta .satzung-direkt{margin-top:22px;font-size:15px}

/* ---------- Kehrbezirksseiten ---------- */
.bezirk-spalten{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start}
.bezirk-betrieb h2{font-size:34px;margin-bottom:20px}
.bezirk-betrieb .member{padding:26px 28px 24px}
.bezirk-betrieb .member-titel h2{font-size:34px;margin-bottom:9px}
.bezirk-karte{margin:0}
.bezirk-karte svg{width:100%;height:auto;max-height:52vh}
.bezirk-karte path{fill:#e4e7e1;stroke:#fff;stroke-width:90}
.bezirk-karte path.aktiv{fill:var(--gold);stroke:var(--ink);stroke-width:150}
.bezirk-karte figcaption{margin-top:16px;font-size:14px;color:var(--muted)}
.bezirk-strassen h2{font-size:42px;margin-bottom:16px}
.bezirk-strassen .hinweis-text{color:var(--muted);font-size:16px;margin-bottom:26px}
.strassen-gruppe{border-top:1px solid var(--line);padding:4px 0}
.strassen-gruppe summary{cursor:pointer;padding:15px 0;font-family:Condensed,sans-serif;font-size:26px;
 display:flex;justify-content:space-between;align-items:baseline;gap:18px;list-style:none}
.strassen-gruppe summary::-webkit-details-marker{display:none}
.strassen-gruppe summary::after{content:"+";font-size:24px;color:var(--muted)}
.strassen-gruppe[open] summary::after{content:"–"}
.strassen-gruppe summary span{font-family:Barlow,sans-serif;font-size:15px;color:var(--muted);margin-left:auto}
.strassen-liste{columns:3;column-gap:34px;list-style:none;margin:0 0 22px;padding:0;font-size:16px}
.strassen-liste li{break-inside:avoid;padding:3px 0;color:var(--muted)}
.strassen-liste em{font-style:normal;color:#8a7320;font-size:13px}
.bezirk-andere h2{font-size:30px;margin-bottom:18px}
.bezirk-wolke{display:flex;flex-wrap:wrap;gap:8px;max-width:none}
.bezirk-wolke a{font-size:15px;text-decoration:none;background:#f2f3f0;border:1px solid var(--line);
 border-radius:999px;padding:6px 15px}
.bezirk-wolke a:hover{background:var(--gold);border-color:var(--gold)}
.bezirk-gitter{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2px;
 list-style:none;margin:0;padding:0}
.bezirk-gitter a{display:block;padding:22px;background:#f5f6f3;text-decoration:none;height:100%}
.bezirk-gitter a:hover{background:var(--gold)}
.bezirk-gitter strong{display:block;font-family:Condensed,sans-serif;font-size:27px;font-weight:600}
.bezirk-gitter span{display:block;margin-top:5px;font-size:16px}
.bezirk-gitter small{display:block;margin-top:7px;font-size:13px;color:var(--muted)}
.bezirk-gitter a:hover small{color:var(--ink)}
@media(max-width:900px){
 .bezirk-spalten{grid-template-columns:1fr;gap:42px}
 .strassen-liste{columns:2;column-gap:24px}
 .bezirk-karte svg{max-height:none}
}
@media(max-width:560px){.strassen-liste{columns:1}}

/* ---------- Häufige Fragen ---------- */
.fragen-liste details{border-top:1px solid var(--line)}
.fragen-liste summary{cursor:pointer;padding:24px 0;display:flex;align-items:baseline;gap:20px;list-style:none}
.fragen-liste summary::-webkit-details-marker{display:none}
.fragen-liste summary h2{font-size:30px;margin:0;flex:1}
.fragen-liste summary::after{content:"+";font-size:28px;color:var(--muted);line-height:1}
.fragen-liste details[open] summary::after{content:"–"}
.fragen-liste .antwort{padding:0 0 30px}
.fragen-liste .antwort p{font-size:17px;max-width:70ch;margin:0}
.fragen-schluss{padding-top:10px}
.fragen-schluss h2{margin-bottom:20px}
.fragen-schluss .button{margin-top:12px}
@media(max-width:700px){.fragen-liste summary h2{font-size:24px}}
.treffer .vertretung-zeile{font-size:15px;color:var(--muted);margin:0 0 14px}
.treffer .vertretung-zeile span{font-weight:bold}
.treffer .vertretung-zeile a{color:var(--ink)}
.treffer .mehr{display:flex;flex-wrap:wrap;gap:8px 22px}
.treffer .mehr .vcard{color:var(--muted)}
.suche-hinweis,.fragen-hinweis{background:#f5f6f3;border-left:4px solid var(--gold);padding:16px 20px;
 margin:0 0 34px;font-size:16px;max-width:none}
.treffer .quali{font-size:14px;color:var(--muted);margin-bottom:8px;letter-spacing:.01em}


/* ---------- Kontaktkarten der Fachbetriebe ---------- */
.member-liste{display:grid;gap:14px}
.member{background:#fff;border:1px solid var(--line);border-radius:3px;padding:32px 34px 28px;
 transition:border-color .2s}
.member:hover{border-color:#bfc4bc}
.member-kopf{display:flex;gap:26px;align-items:flex-start;margin-bottom:28px}
.member-kopf .portrait{width:132px;height:auto;flex-shrink:0;border-radius:2px;background:#fff}
.member-kopf .no-photo{width:132px;height:162px;flex-shrink:0;background:#e4e7e1;border-radius:2px}
.member-titel{min-width:0}
.member-titel .eyebrow{margin-bottom:9px}
.member-titel .eyebrow a{text-decoration:none;color:var(--muted)}
.member-titel .eyebrow a:hover{color:var(--ink);text-decoration:underline}
.member-titel h2{font-size:40px;margin-bottom:9px}
.member-titel .quali{font-size:15px;color:var(--muted);margin:0;max-width:52ch}
.member-daten{display:grid;grid-template-columns:1fr 1.25fr;gap:34px;
 border-top:1px solid var(--line);padding-top:22px}
.daten-block h3{font-size:13px;letter-spacing:.13em;font-weight:bold;font-family:Barlow,sans-serif;
 color:var(--muted);margin-bottom:11px;text-transform:uppercase}
.daten-block p{margin:0;font-size:17px;line-height:1.5}
.daten-block .leer{color:var(--muted)}
.daten-block .web{margin-top:9px;font-size:15px}
.kontakt-liste{margin:0;display:grid;gap:7px}
.kontakt-liste>div{display:flex;gap:14px;align-items:baseline}
.kontakt-liste dt{flex:0 0 72px;font-size:14px;color:var(--muted)}
.kontakt-liste dd{margin:0;font-size:17px}
.kontakt-liste .nebensache dd,.kontakt-liste .nebensache dt{font-size:14px;color:var(--muted)}
.member-aktionen{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.aktion{display:inline-block;font-size:15px;text-decoration:none;padding:10px 20px;border-radius:2px;
 background:#f5f6f3;border:1px solid var(--line)}
.aktion:hover,.aktion:focus-visible{border-color:var(--ink)}
.aktion.haupt{background:var(--gold);border-color:var(--gold);font-weight:bold}
.aktion.haupt:hover{background:#f2d264}
.team-details{margin-top:22px;border-top:1px solid var(--line)}
.team-details summary{cursor:pointer;padding:16px 0 0;list-style:none;display:flex;
 justify-content:space-between;align-items:center;font-size:15px;font-weight:bold}
.team-details summary::-webkit-details-marker{display:none}
.team-details[open] summary span{transform:rotate(45deg)}
.team-details summary span{display:inline-block;font-size:20px;color:var(--muted);transition:transform .2s}
.team-contacts{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:18px 0 6px}
.team-contacts h3{font-size:13px;letter-spacing:.13em;font-family:Barlow,sans-serif;
 color:var(--muted);margin-bottom:10px;text-transform:uppercase}
.personen{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.personen li{display:flex;flex-wrap:wrap;gap:3px 12px;align-items:baseline;font-size:16px}
.person-name{font-weight:bold}
.person-rolle,.person-zeit{font-size:14px;color:var(--muted)}
.directory-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;
 margin:44px 0 20px}
.directory-head h2{margin:0}
#count{font-size:15px;color:var(--muted);margin:0}
.search-note{font-size:14px;color:var(--muted);margin:14px 0 10px;max-width:46ch}
.leer-hinweis{margin-top:28px;padding:20px;background:#f5f6f3;font-size:16px}
@media(max-width:820px){
 .member{padding:26px 22px 24px}
 .member-kopf{gap:18px;margin-bottom:22px}
 .member-kopf .portrait{width:96px}
 .member-kopf .no-photo{width:96px;height:118px}
 .member-titel h2{font-size:30px}
 .member-daten{grid-template-columns:1fr;gap:22px}
 .team-contacts{grid-template-columns:1fr;gap:22px}
 .kontakt-liste dt{flex-basis:64px}
}
.treffer-inhalt .no-photo{width:140px;height:172px;flex-shrink:0;background:#e4e7e1;border-radius:2px}

/* ---------- Druckansicht ---------- */
@media print{
 header nav,.skip,footer .footer-top,.member-aktionen,.bezirk-cta,.bezirk-andere,.suche-hinweis,
 .directory-tools,.finder-hero form,#vorschlaege,.nav-toggle,.fragen-schluss,.mitglied-cta .button{display:none!important}
 body{font-size:12pt;color:#000;background:#fff}
 header{padding:0 0 10pt;border-bottom:1pt solid #000}
 .brand img{width:40pt;height:40pt}
 .intro,.finder-hero{background:none!important;color:#000!important;padding:12pt 0}
 .finder-hero .eyebrow,.finder-hero .lead,#suchstatus{color:#000!important}
 h1{font-size:26pt}h2{font-size:18pt}h3{font-size:14pt}
 .member,.treffer{border:1pt solid #000;border-radius:0;padding:10pt;break-inside:avoid;page-break-inside:avoid}
 .member-kopf .portrait{width:70pt}
 .team-details{display:block}
 .team-details summary{display:none}
 .team-details>div{display:block}
 details:not([open])>*:not(summary){display:block}
 .strassen-gruppe summary::after{content:none}
 .strassen-liste{columns:3}
 a{color:#000;text-decoration:none}
 .kontakt-liste a::after,.person-name+a::after{content:""}
 .bezirk-karte svg,#kartenbereich svg{max-height:60mm}
 .footer-bottom{border-top:1pt solid #000;padding-top:8pt;font-size:9pt}
 .footer-bottom a::after{content:""}
}

/* ---------- Menü auf schmalen Bildschirmen ---------- */
.nav-toggle{display:none}
@media(max-width:760px){
 header{position:relative;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 5.5%}
 .brand{min-width:0}
 .brand span{font-size:11px}
 .brand small{display:none}
 .nav-toggle{display:inline-flex;align-items:center;gap:10px;background:none;border:1px solid var(--line);
  border-radius:2px;padding:10px 14px;font-size:15px;font-weight:bold;color:var(--ink);cursor:pointer}
 .nav-toggle-balken{display:block;width:18px;height:2px;background:currentColor;position:relative}
 .nav-toggle-balken::before,.nav-toggle-balken::after{content:"";position:absolute;left:0;width:18px;height:2px;
  background:currentColor;transition:transform .2s}
 .nav-toggle-balken::before{top:-6px}.nav-toggle-balken::after{top:6px}
 .nav-toggle[aria-expanded="true"] .nav-toggle-balken{background:transparent}
 .nav-toggle[aria-expanded="true"] .nav-toggle-balken::before{transform:translateY(6px) rotate(45deg)}
 .nav-toggle[aria-expanded="true"] .nav-toggle-balken::after{transform:translateY(-6px) rotate(-45deg)}
 header nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:30;background:#fff;
  border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(0,0,0,.12);flex-direction:column;
  align-items:stretch;gap:0;padding:6px 5.5% 14px}
 body.menue-offen header nav{display:flex}
 header nav a{padding:14px 0;border-top:1px solid var(--line);font-size:17px}
 header nav a.nav-map{background:none;color:var(--ink);padding:14px 0;font-weight:bold}
 header nav a[aria-current]{text-decoration:none;color:#8a7320}
 .brand img{width:52px;height:52px}
 .brand b{font-size:24px}
}
.standort-zeile{margin:16px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
#standort{background:transparent;border:1px solid #4a4e49;color:#fff;border-radius:2px;padding:10px 16px;
 font-size:15px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
#standort:hover,#standort:focus-visible{border-color:var(--gold);color:var(--gold)}
#standort:disabled{opacity:.6;cursor:wait}
#standort-status{font-size:14px;color:#b9bdb6}
#kartenbereich path[data-bezirk]{cursor:pointer}
#kartenbereich path[data-bezirk]:hover{fill:#d8dcd3}
#kartenbereich path.aktiv:hover{fill:var(--gold)}
.bezirk-karte a path{cursor:pointer;transition:fill .2s}
.bezirk-karte a:hover path,.bezirk-karte a:focus-visible path{fill:var(--gold)}
.bezirk-karte a:focus-visible{outline:none}
.bezirk-karte.gross{max-width:640px;margin:0 auto 10px}
.bezirk-karte.gross svg{max-height:none}
.uebersicht-karte{padding-bottom:20px}
.team-details+.team-details{margin-top:0}
.team-contacts{grid-template-columns:1fr;gap:0;padding:14px 0 6px}
.keine-vertretung{margin:0;font-size:16px;color:var(--muted)}
.rolle{font-family:Barlow,sans-serif;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.wahl-hinweis{font-size:14px;line-height:1.5;color:var(--muted);margin:16px 0 0;max-width:640px}
.bezirk-betrieb .wahl-hinweis{margin-top:14px}
.fuss-status{font-size:12px;line-height:1.55;color:#a9ada5;margin:22px 0 0;max-width:860px}
.fuss-status a{color:inherit;text-decoration:underline}
@media print{.fuss-status{font-size:8pt;color:#000;margin-top:6pt}}
@media(max-width:650px){.finder-hero h1,.directory-page .intro h1{font-size:min(45px,calc(11vw - 5px))}}
