:root{--afd-blue:#006699;--afd-light:#00a2df;--afd-dark:#173557;--afd-red:#cc0000;--afd-yellow:#ffcc00;--afd-border:#dbe3ea;--afd-soft:#f3f8fb;--afd-muted:#475569;}
.afd-page,.afd-core-section{max-width:1320px;margin:0 auto;font-family:"Bitter",Georgia,serif;color:var(--afd-dark);}.afd-page{padding:34px 24px 72px;}.afd-core-section{padding:28px 0;}.afd-core-hero,.afd-page .afd-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--afd-dark) 0%,var(--afd-blue) 58%,var(--afd-light) 100%);color:#fff;border-radius:18px;padding:46px 48px;margin-bottom:28px;box-shadow:0 20px 46px rgba(23,53,87,.20);background-size:cover;background-position:center;}.afd-core-hero:before,.afd-page .afd-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(255,255,255,.10),transparent 45%),repeating-conic-gradient(from -18deg at 22% 70%,rgba(255,255,255,.08) 0deg,rgba(255,255,255,.08) 2deg,transparent 2deg,transparent 12deg);opacity:.22;pointer-events:none;}.afd-core-hero>*,.afd-page .afd-hero>*{position:relative;z-index:1;}.afd-kicker{margin-bottom:10px;font-size:15px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#bfefff;}.afd-core-hero h1,.afd-page .afd-hero h1{margin:0 0 14px;font-family:"Barlow Condensed","Bitter",Georgia,serif;font-size:clamp(42px,4.3vw,64px);line-height:.98;font-weight:700;letter-spacing:0;color:#fff;}.afd-core-hero p,.afd-page .afd-hero p{margin:0;max-width:900px;font-size:18px;line-height:1.5;font-weight:500;}.afd-core-grid,.afd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;align-items:stretch;}.afd-grid{margin-bottom:34px;}.afd-core-grid--wide{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));}.afd-card,.afd-core-card,.afd-person-card{background:#fff;border:1px solid rgba(23,53,87,.12);border-radius:16px;box-shadow:0 10px 24px rgba(23,53,87,.075);}.afd-card,.afd-core-card{padding:24px;}.afd-person-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(480px,1fr));gap:24px;}.afd-person-card{display:grid;grid-template-columns:minmax(150px,230px) 1fr;overflow:hidden;padding:0;min-height:210px;}.afd-person-card__image-link{display:block;text-decoration:none;color:inherit;height:100%;}.afd-person-card__image{height:100%;min-height:210px;border-radius:0;background:linear-gradient(135deg,var(--afd-blue),var(--afd-light));display:flex;align-items:center;justify-content:center;color:#fff;font-family:"Barlow Condensed","Bitter",Georgia,serif;font-weight:900;font-size:52px;}.afd-person-card.has-image .afd-person-card__image{background:#fff;}.afd-person-card__image img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}.afd-person-card__body{padding:24px 26px;display:flex;flex-direction:column;flex-grow:1;}.afd-person-card__image-link:hover{filter:brightness(.97);}.afd-person-card__name,.afd-core-card__title,.afd-card h2{font-family:"Barlow Condensed","Bitter",Georgia,serif;font-size:28px;line-height:1.08;margin:0 0 8px;color:var(--afd-dark);font-weight:700;}.afd-person-card__name a{color:inherit;text-decoration:none;}.afd-person-card__name a:hover{text-decoration:underline;}.afd-person-card__function,.afd-core-card__sub{font-weight:800;color:var(--afd-blue);margin:0 0 10px;}.afd-person-card__meta,.afd-core-card__meta,.afd-card p{font-size:15px;color:#334155;line-height:1.55;margin:0 0 10px;}.afd-person-card__meta span,.afd-core-card__meta span{display:block;margin-top:4px;}.afd-person-card__line{padding-left:0;}.afd-core-btn,.afd-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--afd-blue);color:#fff!important;text-decoration:none;border-radius:999px;padding:10px 15px;font-weight:700;font-size:13px;line-height:1.15;border:0;}.afd-core-btn--red,.afd-btn.red{background:var(--afd-red);}.afd-core-btn:hover,.afd-btn:hover{background:var(--afd-dark);color:#fff!important;}.afd-person-card__links,.afd-core-card__links,.afd-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:14px;}.afd-core-empty{padding:18px;background:#f8fafc;border:1px solid var(--afd-border);border-radius:12px;color:var(--afd-muted);}.afd-section{margin-top:36px;}.afd-section-title,.afd-core-section h2{position:relative;margin:0 0 22px;padding-left:18px;font-family:"Barlow Condensed","Bitter",Georgia,serif;font-size:40px;line-height:1.06;font-weight:700;color:var(--afd-dark);}.afd-section-title:before,.afd-core-section h2:before{content:"";position:absolute;left:0;top:.1em;width:5px;height:.9em;background:linear-gradient(to bottom,#000 0%,#000 33.33%,var(--afd-red) 33.33%,var(--afd-red) 66.66%,var(--afd-yellow) 66.66%,var(--afd-yellow) 100%);border-radius:999px;}.afd-core-contact{background:var(--afd-soft);border:1px solid var(--afd-border);border-left:6px solid var(--afd-red);border-radius:16px;padding:26px 30px;margin:24px 0;box-shadow:0 10px 25px rgba(23,53,87,.05);}.afd-core-profile{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:30px;align-items:start;}.afd-core-profile__image{background:linear-gradient(135deg,var(--afd-blue),var(--afd-light));border-radius:16px;overflow:hidden;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;color:#fff;font-family:"Barlow Condensed","Bitter",Georgia,serif;font-size:64px;font-weight:900;}.afd-core-profile__image img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}.afd-core-profile__content h1{margin:0 0 8px;color:var(--afd-dark);font-family:"Barlow Condensed","Bitter",Georgia,serif;font-size:clamp(42px,5vw,64px);font-weight:700;line-height:.98;}.afd-core-profile__function{color:var(--afd-blue);font-weight:800;font-size:1.12rem;margin:0 0 18px;}.afd-core-facts{display:grid;grid-template-columns:160px 1fr;gap:8px 16px;margin:20px 0;padding:18px;border:1px solid var(--afd-border);border-radius:14px;background:#fff;}.afd-core-facts dt{font-weight:800;color:var(--afd-dark);}.afd-core-facts dd{margin:0;color:#374151;}.afd-core-list{margin:0;padding-left:1.2em;color:#334155;line-height:1.55;}.afd-core-list li{margin-bottom:6px;}.afd-gemeindefinder-wrap{display:grid;gap:1rem;}.afd-gemeindefinder-wrap--selected .afd-finder{border-color:#006699;box-shadow:0 0 0 3px rgba(0,102,153,.08)}.afd-finder{display:flex;gap:12px;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid var(--afd-border);border-radius:16px;padding:22px;}.afd-finder select{min-width:260px;max-width:100%;padding:10px 12px;border:1px solid var(--afd-border);border-radius:10px;background:#fff;}.afd-landkreis-map{width:100%;border:1px solid #dbe4ee;border-radius:18px;background:#fff;padding:1rem;box-shadow:0 16px 40px rgba(23,53,87,.08)}.afd-landkreis-map__svg{display:block;width:100%;height:auto;min-height:0;border:0}.afd-landkreis-map img{display:block;width:100%;height:auto}.afd-core-hero .afd-buttons,.afd-page .afd-hero .afd-buttons{position:relative;z-index:1;margin-top:26px;padding-top:0}.afd-core-hero .afd-btn,.afd-page .afd-hero .afd-btn{border:1px solid rgba(255,255,255,.28);box-shadow:0 8px 18px rgba(0,0,0,.10)}.afd-ov-hero{position:relative!important;overflow:hidden!important;width:100%!important;min-height:300px!important;margin-top:0!important;margin-bottom:34px!important;padding:56px 64px!important;border-radius:22px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:linear-gradient(135deg,#173557 0%,#0f4f7c 52%,#166a99 100%)!important;background-size:cover!important;background-position:center!important;color:#fff!important;box-shadow:0 10px 28px rgba(23,53,87,.05)!important;}.afd-ov-hero:before{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(circle at 20% 55%,rgba(0,204,255,.08),transparent 34%),rgba(0,0,0,.08)!important;border-radius:inherit!important;pointer-events:none!important;opacity:1!important;z-index:0!important;}.afd-ov-hero>*{position:relative!important;z-index:1!important;}.afd-ov-hero .afd-kicker{margin-bottom:14px!important;font-size:15px!important;font-weight:800!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:#bfefff!important;}.afd-ov-hero h1{max-width:980px!important;margin:0 0 18px 0!important;font-family:"Barlow Condensed",Arial,sans-serif!important;font-size:clamp(48px,4.2vw,68px)!important;line-height:.97!important;font-weight:800!important;letter-spacing:-.02em!important;color:#fff!important;}.afd-ov-hero p{max-width:980px!important;margin:0!important;color:rgba(255,255,255,.94)!important;font-size:23px!important;line-height:1.35!important;font-weight:500!important;}.afd-ov-hero .afd-buttons{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:24px!important;padding-top:0!important;}.afd-ov-hero .afd-btn{background:rgba(255,255,255,.14)!important;color:#fff!important;border:1px solid rgba(255,255,255,.32)!important;box-shadow:0 8px 22px rgba(0,0,0,.18)!important;}.afd-ov-hero .afd-btn.red{background:#cc0000!important;border-color:#cc0000!important;}.afd-ov-hero .afd-btn:hover{background:#fff!important;color:#173557!important;border-color:#fff!important;}@media(max-width:900px){.afd-page{padding:28px 16px 54px}.afd-core-profile{grid-template-columns:1fr}.afd-core-hero,.afd-page .afd-hero{padding:36px 26px}.afd-section-title,.afd-core-section h2{font-size:36px}.afd-person-grid{grid-template-columns:1fr;}}@media(max-width:760px){.afd-ov-hero{min-height:240px!important;padding:34px 24px!important;border-radius:18px!important}.afd-ov-hero h1{font-size:44px!important;line-height:1.02!important}.afd-ov-hero p{font-size:18px!important;line-height:1.45!important}.afd-person-card{display:flex;flex-direction:column;}.afd-person-card__image-link{height:auto;}.afd-person-card__image,.afd-person-card.has-image .afd-person-card__image{height:auto;min-height:0;max-height:none;overflow:visible;background:#fff;}.afd-person-card__image img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center top;}.afd-person-card__body{padding:20px;}.afd-landkreis-map{padding:.75rem}}.afd-card-full-link{display:flex;flex-direction:column;height:100%;color:inherit!important;text-decoration:none!important;border-radius:inherit;cursor:pointer}.afd-card-full-link:hover .afd-core-card__title,.afd-card-full-link:hover .afd-aktuelles-title{text-decoration:underline}.afd-card-full-link .afd-core-card__title,.afd-card-full-link .afd-core-card__meta,.afd-card-full-link .afd-aktuelles-date,.afd-card-full-link .afd-aktuelles-title,.afd-card-full-link .afd-aktuelles-excerpt{display:block}.afd-card-full-link .afd-status-stamp{pointer-events:none}.afd-post-card{transition:transform .18s ease,box-shadow .18s ease}.afd-post-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(23,53,87,.12)}.afd-aktuelles-card .afd-aktuelles-content{display:flex;flex-direction:column;gap:8px}.afd-aktuelles-card .afd-aktuelles-title{font-family:"Barlow Condensed","Bitter",Georgia,serif;font-size:28px;line-height:1.08;font-weight:700;color:var(--afd-dark);margin:0}.afd-aktuelles-card .afd-aktuelles-excerpt{font-size:15px;color:#334155;line-height:1.55}.afd-aktuelles-card .afd-aktuelles-date{font-size:13px;color:#64748b;font-weight:700}
.afd-post-card{position:relative!important;overflow:hidden!important;cursor:pointer!important;}
.afd-post-card.afd-core-card{padding:0!important;}
.afd-post-card__image{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;background:var(--afd-soft);}
.afd-post-card__content{padding:24px;box-sizing:border-box;}
.afd-post-card>.afd-card-full-link{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:100%!important;padding:24px!important;box-sizing:border-box!important;color:inherit!important;text-decoration:none!important;border-radius:inherit!important;}
.afd-aktuelles-card>.afd-card-full-link{padding:0!important;}
.afd-aktuelles-card .afd-aktuelles-content{padding:24px!important;box-sizing:border-box!important;}
.afd-post-card .afd-core-card__links,.afd-post-card .afd-aktuelles-actions,.afd-post-card .afd-buttons.afd-aktuelles-actions,.afd-post-card a.afd-core-btn,.afd-post-card a.afd-btn{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
.afd-post-card .afd-aktuelles-badges,.afd-post-card .afd-aktuelles-badge{display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
@media(max-width:900px){.afd-post-card,.afd-post-card.afd-core-card{padding:0!important;}.afd-post-card>.afd-card-full-link{display:flex!important;width:100%!important;height:100%!important;padding:22px!important;box-sizing:border-box!important;}.afd-aktuelles-card>.afd-card-full-link{padding:0!important;}.afd-aktuelles-card .afd-aktuelles-content{padding:22px!important}.afd-post-card .afd-core-card__links,.afd-post-card .afd-aktuelles-actions,.afd-post-card .afd-buttons.afd-aktuelles-actions,.afd-post-card a.afd-core-btn,.afd-post-card a.afd-btn,.afd-post-card .afd-aktuelles-badges,.afd-post-card .afd-aktuelles-badge{display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}}


/* =========================================================
   CARD LINK CLEANUP v1.2.0
   Ganze Kachel ist klickbar. Buttons/Untergliederungs-Badges
   werden in Kartenansichten nicht mehr angezeigt.
========================================================= */
.afd-card-full-link,
.afd-post-card-link,
.afd-antrag-card-link{
    display:block!important;
    color:inherit!important;
    text-decoration:none!important;
    height:100%;
}
.afd-card-full-link:hover,
.afd-card-full-link:focus,
.afd-post-card-link:hover,
.afd-post-card-link:focus,
.afd-antrag-card-link:hover,
.afd-antrag-card-link:focus{
    color:inherit!important;
    text-decoration:none!important;
}
.afd-card-full-link .afd-core-card,
.afd-card-full-link .afd-post-card,
.afd-card-full-link .afd-aktuelles-card,
.afd-card-full-link .afd-antrag-card{
    height:100%;
    cursor:pointer;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.afd-card-full-link:hover .afd-core-card,
.afd-card-full-link:hover .afd-post-card,
.afd-card-full-link:hover .afd-aktuelles-card,
.afd-card-full-link:hover .afd-antrag-card{
    transform:translateY(-2px);
    box-shadow:0 18px 42px rgba(23,53,87,.14);
    border-color:rgba(0,102,153,.28);
}
.afd-gemeindefinder-result { scroll-margin-top: 7rem; }
.afd-core-facts .afd-person-facts-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .65rem; }
.afd-person-facts-list > li { margin: 0; }
.afd-person-facts-list > li + li { border-top: 1px solid #cbdce8; padding-top: .65rem; }

.afd-aktuelles-badges,
.afd-post-card .afd-aktuelles-badges,
.afd-post-card .afd-buttons,
.afd-post-card .afd-core-card__links,
.afd-post-card .afd-btn,
.afd-post-card .afd-core-btn{
    display:none!important;
}

/* Person profiles: one portrait header, then distinct areas of responsibility. */
.afd-person-profile__header{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;align-items:center;padding-bottom:32px;margin-bottom:28px;border-bottom:1px solid #d8e4ef}
.afd-person-profile .afd-core-profile__image{width:220px;max-width:100%;aspect-ratio:4/5;border-radius:10px}
.afd-person-profile .afd-core-profile__image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.afd-person-profile__intro{min-width:0}
.afd-person-profile__intro h1{font-family:inherit;font-size:clamp(30px,3vw,42px);line-height:1.18;margin:0 0 12px;hyphens:none;overflow-wrap:anywhere}
.afd-person-profile__role{font-weight:800;color:#006699;margin:0 0 20px}
.afd-person-profile .regional-profile-intro{margin:0 0 16px;max-width:65ch}
.afd-person-profile__place{margin:0;color:#475569}
.afd-person-profile__sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.afd-person-profile .afd-profile-panel{padding:24px;background:#f3f7fa;border:1px solid #d8e4ef;border-radius:10px;min-width:0}
.afd-profile-panel--wide{grid-column:1/-1}
.afd-person-profile h2{font-family:inherit;font-size:22px;line-height:1.3;margin:0 0 20px;padding:0;hyphens:none}
.afd-person-profile h2:before{display:none}
.afd-person-profile .afd-person-facts-list{list-style:none;display:grid;gap:12px;margin:0;padding:0}
.afd-person-profile .afd-person-facts-list>li{margin:0;padding:14px 16px;background:#fff;border:1px solid #d8e4ef;border-radius:6px;line-height:1.5;min-width:0;overflow-wrap:anywhere}
.afd-profile-item__context{display:block;color:#475569;font-size:.85em;line-height:1.45;margin-bottom:5px}
.afd-person-profile .afd-profile-item__link{display:block;text-decoration:none;color:#006699}
.afd-person-profile .afd-profile-item__link:hover strong{text-decoration:underline;text-underline-offset:3px}
.afd-person-profile .afd-profile-item__link:focus-visible{outline:3px solid #006699;outline-offset:5px;border-radius:2px}
.afd-person-profile .afd-person-facts-list strong{font-weight:700;line-height:1.5}
.afd-profile-panel--wide .afd-person-facts-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.afd-profile-details{margin:0;display:grid;gap:16px}
.afd-person-facts-list+.afd-profile-details{margin-top:20px}
.afd-profile-panel--wide:nth-child(2){grid-column:auto}
.afd-profile-panel--wide:nth-child(2) .afd-person-facts-list{grid-template-columns:minmax(0,1fr)}
.afd-profile-panel:only-child{grid-column:1/-1}
.afd-profile-details dt{font-size:.85em;color:#475569;font-weight:400;margin:0 0 4px}
.afd-profile-details dd{margin:0;font-weight:700}
.afd-person-profile__contact{display:flex;align-items:baseline;gap:10px 24px;flex-wrap:wrap;margin:0 0 20px;min-width:0}
.afd-person-profile__contact a{overflow-wrap:anywhere;min-width:0;text-underline-offset:3px}
.afd-person-profile .afd-biography{padding:0 0 30px;margin:0 0 28px;border-bottom:1px solid #d8e4ef;overflow-wrap:anywhere}
.afd-biography__intro{max-width:76ch;margin-bottom:24px}
.afd-biography__grid{display:grid;gap:28px}
.afd-biography__grid--two{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.afd-person-profile .afd-biography h3{font-size:20px;margin:0 0 16px;line-height:1.4}
.afd-person-profile .afd-biography h4{font-size:18px;margin:0 0 6px;line-height:1.45}
.afd-biography__story{padding:22px 24px;background:#f3f7fa;border:1px solid #d8e4ef;border-radius:10px;align-self:start}
.afd-biography__story ul{margin:0 0 0 20px;padding:0}
.afd-biography__story li{margin-bottom:8px}
.afd-person-profile .afd-biography__timeline{list-style:none;padding:0;margin:0}
.afd-biography__timeline>li{position:relative;border-left:2px solid #d8e4ef;padding:0 0 22px 24px;margin:0}
.afd-biography__timeline>li:last-child{padding-bottom:0}
.afd-biography__timeline>li:before{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#006699;left:-6px;top:6px}
.afd-person-profile .afd-biography__period{font-size:14px;font-weight:700;color:#006699;margin:0 0 6px}
.afd-person-profile .afd-biography__organisation{font-size:16px;color:#475569;margin:0 0 8px}
.afd-biography p:last-child{margin-bottom:0}
@media(max-width:768px){.afd-biography__grid--two{grid-template-columns:minmax(0,1fr)}.afd-biography__story{padding:20px 16px}.afd-biography__grid{gap:24px}}
@media(max-width:760px){
 .afd-person-profile__sections{grid-template-columns:minmax(0,1fr);gap:18px}
 .afd-profile-panel--wide .afd-person-facts-list{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:600px){
 .afd-person-profile__header{grid-template-columns:minmax(0,1fr);gap:22px;padding-bottom:24px;margin-bottom:24px}
 .afd-person-profile .afd-core-profile__image{width:180px}
 .afd-person-profile .afd-profile-panel{padding:20px 16px}
 .afd-person-profile__contact{gap:14px}
}
