/*
Theme Name: WBfD Flex
Theme URI: https://wir-bergheimer-fuer-demokratie.de/
Author: Wir Bergheimer für Demokratie
Description: Flexibles WordPress-Theme für Wir Bergheimer für Demokratie. Logos, Grafiken, Partner und Kachelgrößen werden im WordPress-Backend gepflegt.
Version: 5.7.0
Text Domain: wbfd-flex
*/
:root{
 --pink:#ff39bf;
 --navy:#0b2d63;
 --ink:#182238;
 --muted:#667084;
 --paper:#fff;
 --off:#f7f8fb;
 --line:#eadfe4;
 --radius:16px;
 --shadow:0 10px 28px rgba(20,40,80,.10);
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
a{color:inherit}.site-wrap{max-width:1380px;margin:auto;padding:0 28px}
.site-header{position:sticky;top:0;z-index:80;background:#fff;border-bottom:1px solid var(--line)}
.header-inner{min-height:92px;display:flex;align-items:center;gap:24px}
.site-logo img{display:block;height:72px;width:auto;max-width:260px}
.main-nav{margin-left:auto}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:26px;align-items:center}
.main-nav li{position:relative}.main-nav a{text-decoration:none;font-weight:800;color:var(--navy);font-size:1.04rem}
.main-nav a:hover,.main-nav .current-menu-item>a,.main-nav .current-menu-ancestor>a{color:var(--pink)}
.main-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:10px 0;z-index:100}
.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu{display:block}
.main-nav .sub-menu li{display:block}.main-nav .sub-menu a{display:block;padding:10px 16px;white-space:nowrap}
.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;color:var(--navy);font-size:1.5rem}
.page-shell{padding:50px 0}.page-shell h1{color:var(--navy);font-size:clamp(2.4rem,5vw,4.8rem);line-height:.95;margin:.1em 0 .4em}
.entry-content{font-size:1.06rem}
.dw-hero{background:var(--pink);color:#fff;overflow:hidden;position:relative}
.dw-hero .site-wrap{min-height:570px;padding-top:54px;padding-bottom:180px;position:relative}
.dw-tag{font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px}
.dw-hero h1{font-size:clamp(4rem,8vw,8rem);line-height:.78;letter-spacing:-.045em;margin:.12em 0;font-weight:500}
.dw-claim{font-size:clamp(1rem,2vw,1.55rem);letter-spacing:.15em;text-transform:uppercase}
.dw-date{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:.1em;margin-top:10px}
.dw-logo-card{position:absolute;right:28px;bottom:28px;background:transparent;border-radius:0;padding:0;box-shadow:none;display:flex;justify-content:flex-end;align-items:flex-end}
.dw-logo-card img{display:block;width:min(540px,44vw);height:auto;filter:none}
.dw-section{padding:64px 0}.dw-section.alt{background:var(--off)}
.dw-kicker{color:var(--pink);font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.dw-section h2{color:var(--navy);font-size:clamp(2rem,4vw,3.5rem);line-height:1;margin:.2em 0 .6em}
.dw-lead{max-width:820px;font-size:1.1rem;color:var(--muted)}
.dw-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dw-card{position:relative;display:flex;flex-direction:column;min-height:320px;background:#fff;border:1px solid var(--pink);padding:20px;text-decoration:none;transition:.18s}
.dw-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.dw-num{position:absolute;right:18px;top:16px;background:var(--pink);color:#fff;padding:9px 14px;border-radius:7px;font-weight:900;font-size:1.4rem;font-style:italic}
.dw-num:after{content:"";position:absolute;left:12px;bottom:-8px;border:8px solid transparent;border-top-color:var(--pink);transform:rotate(15deg)}
.dw-date-row{font-weight:900}.dw-kind{text-transform:uppercase;font-size:.8rem;letter-spacing:.04em;margin-top:3px}
.dw-card h3{color:var(--pink);font-size:1.18rem;line-height:1.08;margin:14px 74px 8px 0;text-transform:uppercase}
.dw-sub{font-weight:900;text-transform:uppercase;font-size:.92rem}
.dw-card p{color:#3d4554}.dw-org{margin-top:auto;color:var(--pink);font-weight:900;text-transform:uppercase;font-size:.88rem}.dw-place{font-size:.88rem;font-weight:700;margin-top:7px}
.dw-map{border:1px solid var(--pink);background:#fff;padding:14px}.dw-map img{display:block;width:100%;height:auto}
.dw-partners img{width:100%;height:auto;display:block;border:1px solid var(--pink)}
.termine-hero{background:linear-gradient(120deg,#fff 0 60%,#fff0fb 100%);padding:52px 0}
.termine-hero h1{margin:.1em 0;color:var(--navy);font-size:clamp(2.8rem,5vw,5rem);letter-spacing:-.04em}
.termine-hero p{max-width:780px;color:var(--muted);font-size:1.08rem}
.termine-list{padding:55px 0}
.single-term{padding:56px 0}.term-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0}.term-fact{border:1px solid var(--pink);padding:15px}.term-fact b{display:block;color:var(--pink);text-transform:uppercase;font-size:.8rem}
.site-footer{background:var(--navy);color:#fff;padding:38px 0;margin-top:30px}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-inner a{color:#fff}
@media(max-width:1100px){.dw-grid{grid-template-columns:repeat(2,1fr)}.main-nav ul{gap:18px}.site-logo img{height:62px}}
@media(max-width:800px){.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:92px;background:#fff;border-bottom:1px solid var(--line);padding:18px 28px}.main-nav.open{display:block}.main-nav ul{display:block}.main-nav li{margin:9px 0}.main-nav .sub-menu{display:block;position:static;border:0;box-shadow:none;padding-left:18px}.dw-grid{grid-template-columns:1fr}.dw-hero .site-wrap{padding-bottom:220px}.dw-logo-card{left:18px;right:18px;bottom:22px;justify-content:center}.dw-logo-card img{width:min(520px,100%)}.term-facts{grid-template-columns:1fr}.footer-inner{display:block}}

/* Original-Logo Gesamtschule Bergheim */
.gesamtschule-event-logo{margin:8px 0 4px}
.gesamtschule-event-logo img{display:block;max-width:220px;max-height:82px;width:auto;height:auto;object-fit:contain}
.gesamtschule-single-logo{margin:18px 0}
.gesamtschule-single-logo img{display:block;max-width:360px;max-height:125px;width:auto;height:auto;object-fit:contain}

/* Frontpage/Navigation Fix v1.1 */
.main-nav .current-menu-ancestor > a{color:var(--pink);}


/* v2 – Veranstalterlogos */
.dw-event-logos{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:10px;
  width:100%;
  min-height:62px;
  margin:10px 0 8px;
}
.dw-event-logos img{
  display:block;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain;
  object-position:left center;
  background:#fff;
}
.dw-single-logos{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  align-items:center;
  margin:22px 0;
}
.dw-single-logos img{
  display:block;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain;
}


/* v2.1 – größere/schärfere Logos */
.dw-event-logos img.logo-kreisstadt,
.dw-event-logos img.logo-gesamtschule,
.dw-event-logos img.logo-gesamtschule-bergheim-original,
.dw-single-logos img.logo-kreisstadt,
.dw-single-logos img.logo-gesamtschule,
.dw-single-logos img.logo-gesamtschule-bergheim-original{
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
}


/* v2.6 – echte OpenStreetMap-Karte */
.dw-osm-map{
  width:100%;
  height:620px;
  border:2px solid var(--pink);
  background:#e9edf0;
  box-shadow:0 8px 24px rgba(20,40,80,.08);
  z-index:1;
}
.dw-osm-icon-wrap{
  background:transparent !important;
  border:0 !important;
}
.dw-osm-number{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  height:38px;
  padding:0 10px;
  border-radius:9px 9px 9px 2px;
  background:#ff39bf;
  color:#fff;
  border:2px solid #fff;
  box-shadow:0 3px 10px rgba(0,0,0,.28);
  font-size:16px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.dw-osm-popup{
  min-width:220px;
  color:#182238;
  line-height:1.4;
}
.dw-osm-popup strong{
  color:#ff39bf;
}
.dw-osm-popup a{
  display:inline-block;
  margin-top:7px;
  color:#0b2d63;
  font-weight:800;
}
.dw-osm-map .leaflet-control-attribution{
  font-size:11px;
}
@media(max-width:800px){
  .dw-osm-map{height:500px;}
}


/* v2.7 – näherer, besser lesbarer OpenStreetMap-Ausschnitt */
.dw-osm-map{
  height:760px;
}
.dw-map-controls{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 14px;
}
.dw-map-controls button{
  appearance:none;
  border:2px solid #ff39bf;
  background:#fff;
  color:#0b2d63;
  border-radius:999px;
  padding:9px 15px;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.dw-map-controls button:hover,
.dw-map-controls button.is-active{
  background:#ff39bf;
  color:#fff;
}
@media(max-width:800px){
  .dw-osm-map{height:590px;}
  .dw-map-controls button{
    flex:1 1 calc(50% - 9px);
    padding:9px 8px;
  }
}


/* v2.8 – Logogrößen angleichen und Karte erst nach Klick laden */
.dw-map-privacy{
  margin:0 0 14px;
  padding:14px 16px;
  border:2px solid var(--pink);
  background:#fff6fc;
  color:#182238;
}
.dw-map-privacy p{
  margin:0 0 10px;
}
.dw-map-load{
  appearance:none;
  border:0;
  background:var(--pink);
  color:#fff;
  border-radius:999px;
  padding:10px 16px;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.dw-map-load:hover{filter:brightness(.95)}
.dw-osm-map.is-hidden{display:none}

.dw-event-logos img.logo-kreisstadt,
.dw-event-logos img.logo-gesamtschule,
.dw-event-logos img.logo-gesamtschule-bergheim-original,
.dw-single-logos img.logo-kreisstadt,
.dw-single-logos img.logo-gesamtschule,
.dw-single-logos img.logo-gesamtschule-bergheim-original{
  width:auto !important;
  max-width:220px !important;
  height:auto !important;
  max-height:86px !important;
}

.dw-event-logos img.logo-ada,
.dw-event-logos img.logo-ash,
.dw-single-logos img.logo-ada,
.dw-single-logos img.logo-ash{
  width:auto !important;
  max-width:200px !important;
  height:auto !important;
  max-height:72px !important;
}

.dw-single-logos img.logo-kreisstadt,
.dw-single-logos img.logo-gesamtschule,
.dw-single-logos img.logo-gesamtschule-bergheim-original{
  max-width:280px !important;
  max-height:110px !important;
}
.dw-single-logos img.logo-ada,
.dw-single-logos img.logo-ash{
  max-width:240px !important;
  max-height:90px !important;
}


/* v2.9 – Impressum & Datenschutz */
.wbfd-legal{max-width:900px;font-size:1.04rem;line-height:1.65}
.wbfd-legal h2{color:var(--navy);font-size:1.55rem;margin:1.8em 0 .45em}
.wbfd-legal a{color:var(--navy);text-decoration:underline}
.wbfd-legal ul{padding-left:1.3em}
.wbfd-legal code{font-size:.92em;background:#f4f4f4;padding:.1em .3em;border-radius:4px}


/* v3.0 – Impressum & Datenschutz im Landingpage-Design */
.wbfd-legal-hero{
  background:var(--pink);
  color:#fff;
  overflow:hidden;
}
.wbfd-legal-hero-inner{
  min-height:410px;
  padding-top:60px;
  padding-bottom:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
}
.wbfd-legal-hero h1{
  margin:.12em 0 .16em;
  color:#fff;
  font-size:clamp(4rem,8vw,8rem);
  line-height:.82;
  letter-spacing:-.045em;
  font-weight:500;
}
.wbfd-legal-hero .dw-tag,
.wbfd-legal-hero .dw-claim{color:#fff;}
.wbfd-legal-hero-logo{
  flex:0 1 500px;
  display:flex;
  justify-content:flex-end;
  align-items:center;
}
.wbfd-legal-hero-logo img{
  display:block;
  width:min(500px,42vw);
  max-height:300px;
  object-fit:contain;
}
.wbfd-legal-card{
  background:#fff;
  border:2px solid var(--pink);
  border-radius:18px;
  padding:clamp(22px,4vw,48px);
  box-shadow:var(--shadow);
}
.wbfd-legal{
  max-width:940px;
  font-size:1.04rem;
}
.wbfd-legal > p:first-child{
  margin-top:0;
  font-size:1.12rem;
}
.wbfd-legal h2{
  color:var(--pink);
  font-size:clamp(1.35rem,2vw,1.8rem);
  line-height:1.15;
  margin:2rem 0 .65rem;
  padding-top:1.3rem;
  border-top:1px solid #f3c5e7;
}
.wbfd-legal a{
  color:var(--navy);
  font-weight:800;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}
.wbfd-legal code{
  background:#f7f8fb;
  padding:.1em .35em;
  border-radius:4px;
}
@media(max-width:800px){
  .wbfd-legal-hero-inner{
    min-height:auto;
    padding-top:42px;
    padding-bottom:42px;
    display:block;
  }
  .wbfd-legal-hero h1{font-size:clamp(3.4rem,15vw,5.5rem);}
  .wbfd-legal-hero-logo{
    margin-top:28px;
    justify-content:flex-start;
  }
  .wbfd-legal-hero-logo img{width:min(480px,90vw);}
}


/* v3.1 – Blogseite „Aktionen“ in Kacheloptik */
.wbfd-actions-hero{
  background:var(--pink);
  color:#fff;
}
.wbfd-actions-hero-inner{
  min-height:360px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,500px);
  gap:40px;
  align-items:center;
  padding-top:42px;
  padding-bottom:42px;
}
.wbfd-actions-hero h1{
  margin:.08em 0 .16em;
  color:#fff;
  font-size:clamp(4rem,8vw,7.5rem);
  line-height:.84;
  letter-spacing:-.045em;
  font-weight:500;
}
.wbfd-actions-hero .dw-tag,
.wbfd-actions-hero .dw-claim{color:#fff;}
.wbfd-actions-hero-logo{display:flex;justify-content:flex-end;align-items:center;}
.wbfd-actions-hero-logo img{display:block;width:min(480px,100%);height:auto;}

.wbfd-post-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.wbfd-post-card{
  min-width:0;
  border:1.5px solid var(--pink);
  background:#fff;
  box-shadow:0 8px 24px rgba(20,40,80,.07);
  transition:transform .18s ease,box-shadow .18s ease;
}
.wbfd-post-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(20,40,80,.13);
}
.wbfd-post-card-link{
  display:flex;
  flex-direction:column;
  height:100%;
  color:inherit;
  text-decoration:none;
}
.wbfd-post-card-media{
  aspect-ratio:16/9;
  overflow:hidden;
  background:#f3f3f3;
}
.wbfd-post-card-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.wbfd-post-card-placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,var(--pink),#ff80d8);
  color:#fff;
  font-size:2rem;
  font-weight:900;
  letter-spacing:.08em;
}
.wbfd-post-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:19px 20px 20px;
}
.wbfd-post-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  margin-bottom:10px;
  color:var(--muted);
  font-size:.82rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.wbfd-post-card h3{
  color:var(--navy);
  font-size:1.36rem;
  line-height:1.13;
  margin:0 0 12px;
}
.wbfd-post-excerpt{color:#3d4554;}
.wbfd-post-more{
  margin-top:auto;
  padding-top:18px;
  color:var(--pink);
  font-weight:900;
}
.wbfd-pagination{margin-top:34px;}
.wbfd-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.wbfd-pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:40px;
  height:40px;
  padding:0 12px;
  border:1.5px solid var(--pink);
  text-decoration:none;
  color:var(--navy);
  font-weight:800;
}
.wbfd-pagination .page-numbers.current,
.wbfd-pagination .page-numbers:hover{
  background:var(--pink);
  color:#fff;
}

@media(max-width:1050px){
  .wbfd-post-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:800px){
  .wbfd-actions-hero-inner{grid-template-columns:1fr;min-height:0;}
  .wbfd-actions-hero-logo{justify-content:flex-start;}
  .wbfd-actions-hero-logo img{width:min(420px,90vw);}
  .wbfd-post-grid{grid-template-columns:1fr;}
}


/* v3.2 – Aktionen / Blogseite im neuen Demokratiewoche-Design */
.wbfd-actions-page{background:#fff}
.wbfd-actions-hero{background:var(--pink);color:#fff;overflow:hidden}
.wbfd-actions-hero-inner{min-height:470px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:48px;align-items:center;padding-top:54px;padding-bottom:54px}
.wbfd-actions-hero-copy h1{font-size:clamp(4rem,8vw,8rem);line-height:.82;letter-spacing:-.045em;margin:.08em 0 .16em;font-weight:500}
.wbfd-actions-hero-lead{font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.5;max-width:850px;margin:28px 0 0;color:#fff}
.wbfd-actions-hero-logo{display:flex;align-items:center;justify-content:flex-end}
.wbfd-actions-hero-logo img{display:block;width:min(480px,100%);height:auto}
.wbfd-actions-intro{padding:64px 0 30px;background:#fff}
.wbfd-actions-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:52px;align-items:start}
.wbfd-actions-intro h2{color:var(--navy);font-size:clamp(2.2rem,4.2vw,4.1rem);line-height:.98;margin:.18em 0 0}
.wbfd-actions-intro-text{font-size:1.12rem;color:#3b4555;padding-top:14px}
.wbfd-actions-intro-text p{margin:0 0 1em}
.wbfd-actions-listing{padding-top:34px}
.wbfd-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.wbfd-post-card{background:#fff;border:2px solid var(--pink);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease;min-width:0}
.wbfd-post-card:hover{transform:translateY(-5px);box-shadow:0 14px 34px rgba(20,40,80,.13)}
.wbfd-post-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.wbfd-post-card-media{aspect-ratio:16/10;background:#f2f2f2;overflow:hidden}
.wbfd-post-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.wbfd-post-card:hover .wbfd-post-card-media img{transform:scale(1.025)}
.wbfd-post-card-placeholder{display:flex;align-items:center;justify-content:center;background:var(--pink);color:#fff;font-size:2.2rem;font-weight:900;letter-spacing:.12em}
.wbfd-post-card-body{padding:20px 20px 22px;display:flex;flex-direction:column;flex:1}
.wbfd-post-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--pink);font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.wbfd-post-card h3{color:var(--navy);font-size:1.35rem;line-height:1.1;margin:13px 0 12px}
.wbfd-post-excerpt{color:#465063;line-height:1.55}
.wbfd-post-more{margin-top:auto;padding-top:18px;color:var(--pink);font-weight:900}
.wbfd-pagination{margin-top:34px}
.wbfd-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.wbfd-pagination a,.wbfd-pagination span{display:inline-flex;min-width:42px;height:42px;padding:0 13px;align-items:center;justify-content:center;border:2px solid var(--pink);text-decoration:none;font-weight:800;color:var(--navy)}
.wbfd-pagination .current,.wbfd-pagination a:hover{background:var(--pink);color:#fff}
.wbfd-actions-cta{background:#fff6fc;border-top:1px solid #ffd5f1;padding:54px 0 62px}
.wbfd-actions-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:42px;align-items:center}
.wbfd-actions-cta h2{color:var(--navy);font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.02;margin:.18em 0 .25em}
.wbfd-actions-cta p{max-width:760px;font-size:1.08rem;color:#465063}
.wbfd-actions-button{display:inline-flex;align-items:center;justify-content:center;background:var(--pink);color:#fff;text-decoration:none;font-weight:900;padding:14px 22px;border-radius:999px;white-space:nowrap}
.wbfd-actions-button:hover{filter:brightness(.96)}
@media(max-width:1050px){.wbfd-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wbfd-actions-hero-inner{grid-template-columns:1fr .65fr;gap:26px}}
@media(max-width:800px){.wbfd-actions-hero-inner{grid-template-columns:1fr;min-height:auto;padding-top:44px;padding-bottom:44px}.wbfd-actions-hero-logo{justify-content:flex-start}.wbfd-actions-hero-logo img{width:min(420px,92vw)}.wbfd-actions-intro-grid{grid-template-columns:1fr;gap:18px}.wbfd-actions-cta-inner{grid-template-columns:1fr}.wbfd-post-grid{grid-template-columns:1fr}}


/* v3.3 – Aktionen-Seite gegen alte Elementor-/Archiv-Stile absichern */
body.wbfd-forced-actions-home .elementor-location-archive,
body.wbfd-forced-actions-home .elementor-widget-theme-archive-posts{
  display:none !important;
}
body.wbfd-forced-actions-home main.wbfd-actions-page{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}
body.wbfd-forced-actions-home .wbfd-actions-hero,
body.wbfd-forced-actions-home .wbfd-actions-intro,
body.wbfd-forced-actions-home .wbfd-actions-listing,
body.wbfd-forced-actions-home .wbfd-actions-cta{
  width:100%;
}


/* v3.5 – Über uns im neuen Landingpage-Design */
.wbfd-about-page{background:#fff}
.wbfd-about-hero{background:var(--pink);color:#fff;overflow:hidden}
.wbfd-about-hero-inner{min-height:470px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:48px;align-items:center;padding-top:54px;padding-bottom:54px}
.wbfd-about-hero-copy h1{font-size:clamp(4.2rem,8vw,8rem);line-height:.82;letter-spacing:-.045em;margin:.08em 0 .16em;font-weight:500}
.wbfd-about-claim{font-size:clamp(1.15rem,2vw,1.65rem);line-height:1.45;max-width:850px;margin:26px 0 0;color:#fff}
.wbfd-about-hero-logo{display:flex;justify-content:flex-end;align-items:center}
.wbfd-about-hero-logo img{display:block;width:min(520px,100%);height:auto}
.wbfd-about-intro,.wbfd-about-work{padding:68px 0}
.wbfd-about-intro-grid,.wbfd-about-story-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:58px;align-items:start}
.wbfd-about-intro h2,.wbfd-about-values h2,.wbfd-about-story h2,.wbfd-about-work h2,.wbfd-about-cta h2{color:var(--navy);font-size:clamp(2.3rem,4.3vw,4.2rem);line-height:.98;margin:.18em 0 .45em}
.wbfd-about-copy{font-size:1.12rem;color:#394456;line-height:1.68}
.wbfd-about-copy p{margin:0 0 1.1em}
.wbfd-about-values{padding:68px 0;background:#fff6fc;border-top:1px solid #ffd7f1;border-bottom:1px solid #ffd7f1}
.wbfd-about-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px}
.wbfd-about-card{background:#fff;border:2px solid var(--pink);padding:24px;min-height:285px}
.wbfd-about-card span{display:inline-flex;background:var(--pink);color:#fff;font-weight:900;font-size:1.15rem;padding:7px 11px;margin-bottom:20px}
.wbfd-about-card h3{color:var(--navy);font-size:1.45rem;margin:0 0 12px}
.wbfd-about-card p{color:#465063;line-height:1.58;margin:0}
.wbfd-about-story{padding:74px 0;background:var(--navy);color:#fff}
.wbfd-about-story .dw-kicker{color:var(--pink)}
.wbfd-about-story h2{color:#fff}
.wbfd-about-story .wbfd-about-copy{color:#fff}
.wbfd-about-story .wbfd-about-copy strong{color:#fff}
.wbfd-about-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}
.wbfd-about-work-grid>div{border-top:5px solid var(--pink);background:#fff;padding:22px 0 6px}
.wbfd-about-work-grid h3{color:var(--navy);font-size:1.35rem;margin:0 0 9px}
.wbfd-about-work-grid p{color:#465063;line-height:1.58;margin:0}
.wbfd-about-cta{background:#fff6fc;border-top:1px solid #ffd7f1;padding:60px 0 68px}
.wbfd-about-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:44px;align-items:center}
.wbfd-about-cta p{max-width:800px;font-size:1.1rem;color:#465063}
.wbfd-about-cta-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.wbfd-about-link{color:var(--navy);font-weight:900;text-decoration:none}
.wbfd-about-link:hover{color:var(--pink)}
@media(max-width:1050px){.wbfd-about-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.wbfd-about-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.wbfd-about-hero-inner,.wbfd-about-intro-grid,.wbfd-about-story-grid,.wbfd-about-cta-inner{grid-template-columns:1fr}.wbfd-about-hero-logo{justify-content:flex-start}.wbfd-about-hero-logo img{width:min(420px,92vw)}.wbfd-about-cards,.wbfd-about-work-grid{grid-template-columns:1fr}.wbfd-about-intro,.wbfd-about-values,.wbfd-about-story,.wbfd-about-work{padding:48px 0}}


/* v3.8 – Bündnispartner im neuen WBfD-Design */
.wbfd-partners-page{background:#fff}
.wbfd-partners-hero{background:var(--pink);color:#fff;overflow:hidden}
.wbfd-partners-hero-inner{min-height:470px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:48px;align-items:center;padding-top:54px;padding-bottom:54px}
.wbfd-partners-hero-copy h1{font-size:clamp(4.2rem,8vw,8rem);line-height:.82;letter-spacing:-.045em;margin:.08em 0 .16em;font-weight:500}
.wbfd-partners-claim{font-size:clamp(1.12rem,2vw,1.58rem);line-height:1.45;max-width:880px;margin:26px 0 0;color:#fff}
.wbfd-partners-hero-logo{display:flex;justify-content:flex-end;align-items:center}
.wbfd-partners-hero-logo img{display:block;width:min(520px,100%);height:auto}
.wbfd-partners-intro{padding:68px 0}
.wbfd-partners-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:58px;align-items:start}
.wbfd-partners-intro h2,.wbfd-dw-partners h2,.wbfd-all-partners h2,.wbfd-partners-cta h2{color:var(--navy);font-size:clamp(2.3rem,4.3vw,4.2rem);line-height:.98;margin:.18em 0 .45em}
.wbfd-partners-copy{font-size:1.12rem;color:#394456;line-height:1.68}
.wbfd-partners-copy p{margin:0 0 1.1em}
.wbfd-dw-partners{padding:68px 0;background:#fff6fc;border-top:1px solid #ffd7f1;border-bottom:1px solid #ffd7f1}
.wbfd-partners-lead{max-width:930px;font-size:1.08rem;color:#465063;line-height:1.6}
.wbfd-partner-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:32px}
.wbfd-partner-logo-card{background:#fff;border:2px solid var(--pink);padding:18px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .18s ease,box-shadow .18s ease}
.wbfd-partner-logo-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(20,40,80,.10)}
.wbfd-partner-logo-image{height:128px;display:flex;align-items:center;justify-content:center;padding:5px}
.wbfd-partner-logo-image img{display:block;max-width:100%;max-height:118px;width:auto;height:auto;object-fit:contain}
.wbfd-partner-logo-card h3{color:var(--navy);font-size:.98rem;line-height:1.25;margin:14px 0 0;text-align:center}
.wbfd-all-partners{padding:70px 0}
.wbfd-partner-name-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}
.wbfd-partner-name{border-left:5px solid var(--pink);background:#f8f8fa;padding:16px 17px;color:var(--navy);font-weight:800;line-height:1.35}
.wbfd-partners-cta{background:var(--navy);color:#fff;padding:62px 0 68px}
.wbfd-partners-cta .dw-kicker{color:var(--pink)}
.wbfd-partners-cta h2{color:#fff}
.wbfd-partners-cta p{max-width:820px;font-size:1.1rem;line-height:1.6;color:#fff}
.wbfd-partners-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:44px;align-items:center}
@media(max-width:1100px){.wbfd-partner-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wbfd-partner-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.wbfd-partners-hero-inner,.wbfd-partners-intro-grid,.wbfd-partners-cta-inner{grid-template-columns:1fr}.wbfd-partners-hero-logo{justify-content:flex-start}.wbfd-partners-hero-logo img{width:min(420px,92vw)}.wbfd-partner-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wbfd-partner-name-grid{grid-template-columns:1fr}.wbfd-partners-intro,.wbfd-dw-partners,.wbfd-all-partners{padding:48px 0}}
@media(max-width:520px){.wbfd-partner-logo-grid{grid-template-columns:1fr}}


/* v3.9 – robustes Mobilmenü */
.screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.menu-toggle{
  position:relative;
  z-index:10002;
  width:48px;
  height:48px;
  align-items:center;
  justify-content:center;
  padding:0;
  border:2px solid var(--navy);
  border-radius:10px;
  background:#fff;
  color:var(--navy);
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}

.menu-toggle-icon{
  width:24px;
  height:18px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.menu-toggle-icon span{
  display:block;
  width:24px;
  height:3px;
  border-radius:3px;
  background:currentColor;
  transition:transform .2s ease, opacity .2s ease;
}

.menu-toggle.is-open .menu-toggle-icon span:nth-child(1){
  transform:translateY(7.5px) rotate(45deg);
}
.menu-toggle.is-open .menu-toggle-icon span:nth-child(2){
  opacity:0;
}
.menu-toggle.is-open .menu-toggle-icon span:nth-child(3){
  transform:translateY(-7.5px) rotate(-45deg);
}

@media(max-width:800px){
  .site-header{
    position:sticky;
    top:0;
    z-index:10000;
    overflow:visible!important;
  }

  .header-inner{
    min-height:76px;
    position:relative;
  }

  .site-logo img{
    height:54px;
    max-width:190px;
  }

  .menu-toggle{
    display:flex!important;
    margin-left:auto;
    flex:0 0 48px;
  }

  .main-nav{
    display:none!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:var(--wbfd-header-height,76px)!important;
    width:100%!important;
    max-height:calc(100vh - var(--wbfd-header-height,76px))!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    margin:0!important;
    padding:18px 22px 28px!important;
    background:#fff!important;
    border-top:1px solid var(--line)!important;
    border-bottom:2px solid var(--pink)!important;
    box-shadow:0 16px 30px rgba(11,45,99,.18)!important;
    z-index:10001!important;
  }

  .main-nav.open{
    display:block!important;
  }

  .main-nav > ul,
  .main-nav ul{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .main-nav li{
    display:block!important;
    width:100%!important;
    margin:0!important;
    border-bottom:1px solid #ece7eb;
  }

  .main-nav li:last-child{
    border-bottom:0;
  }

  .main-nav a{
    display:block!important;
    width:100%!important;
    padding:14px 4px!important;
    font-size:1.12rem!important;
    line-height:1.25!important;
    color:var(--navy)!important;
    text-decoration:none!important;
  }

  .main-nav .current-menu-item > a,
  .main-nav .current-menu-ancestor > a,
  .main-nav a:hover,
  .main-nav a:focus{
    color:var(--pink)!important;
  }

  .main-nav .sub-menu{
    display:block!important;
    position:static!important;
    min-width:0!important;
    width:100%!important;
    margin:0 0 8px!important;
    padding:0 0 0 18px!important;
    background:#fff!important;
    border:0!important;
    box-shadow:none!important;
  }

  .main-nav .sub-menu li{
    border-bottom:0!important;
  }

  .main-nav .sub-menu a{
    padding:10px 4px!important;
    font-size:1rem!important;
  }

  body.mobile-menu-open{
    overflow:hidden;
  }
}

/* WordPress-Adminbar auf Mobilgeräten berücksichtigen */
@media(max-width:782px){
  body.admin-bar .site-header{
    top:46px;
  }
  body.admin-bar .main-nav{
    top:calc(var(--wbfd-header-height,76px) + 46px)!important;
    max-height:calc(100vh - var(--wbfd-header-height,76px) - 46px)!important;
  }
}


/* v4.0 – Stadttor-Linienzeichnung hinter dem Hero-Logo */
.dw-hero-visual{
  position:absolute;
  right:28px;
  bottom:28px;
  width:min(560px,46vw);
  aspect-ratio:814 / 496;
  z-index:2;
}

.dw-hero-visual .dw-logo-card{
  position:absolute;
  inset:0;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  background:transparent;
  padding:0;
  margin:0;
  box-shadow:none;
  border-radius:0;
  z-index:2;
}

.dw-hero-visual .dw-logo-card img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  filter:none;
}

/*
 * Das Linienbild endet exakt auf Höhe der Unterkante der Personengruppe.
 * Die weiße Schrift unter den Personen bleibt damit frei.
 */
.dw-hero-lineart{
  position:absolute;
  left:-7%;
  right:-7%;
  top:-12%;
  bottom:10.6%;
  overflow:hidden;
  z-index:1;
  pointer-events:none;
}

.dw-hero-lineart img{
  position:absolute;
  left:50%;
  bottom:0;
  width:114%;
  height:112%;
  transform:translateX(-50%);
  object-fit:cover;
  object-position:center bottom;
  opacity:.72;
}

/* Die ältere absolute Positionierung darf in diesem neuen Block nicht greifen. */
.dw-hero-visual .dw-logo-card{
  right:auto;
  left:auto;
  bottom:auto;
}

@media(max-width:800px){
  .dw-hero .site-wrap{
    padding-bottom:255px;
  }

  .dw-hero-visual{
    left:18px;
    right:18px;
    bottom:22px;
    width:auto;
    max-width:540px;
    margin:0 auto;
  }

  .dw-hero-lineart{
    left:-4%;
    right:-4%;
    top:-9%;
    bottom:10.6%;
  }
}


/* v4.1 – Dach der Stadttor-Linienzeichnung vollständig sichtbar */
.dw-hero-lineart{
  left:-2% !important;
  right:-2% !important;
  top:-1% !important;
  bottom:10.6% !important;
  overflow:visible !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
}

.dw-hero-lineart img{
  position:relative !important;
  left:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:auto !important;
  height:100% !important;
  max-width:96% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  opacity:.74 !important;
}

@media(max-width:800px){
  .dw-hero-lineart{
    left:0 !important;
    right:0 !important;
    top:0 !important;
    bottom:10.6% !important;
  }

  .dw-hero-lineart img{
    max-width:100% !important;
    height:100% !important;
  }
}


/* v4.2 – Stadttor im Hero größer und klarer erkennbar */
.dw-hero-lineart{
  left:-6% !important;
  right:-6% !important;
  top:-10% !important;
  bottom:10.6% !important;
  overflow:visible !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  z-index:1 !important;
}

.dw-hero-lineart img{
  position:relative !important;
  left:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:auto !important;
  height:100% !important;
  max-width:112% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  opacity:.82 !important;
}

@media(max-width:800px){
  .dw-hero-lineart{
    left:-4% !important;
    right:-4% !important;
    top:-6% !important;
    bottom:10.6% !important;
  }

  .dw-hero-lineart img{
    max-width:108% !important;
    height:100% !important;
    opacity:.78 !important;
  }
}


/* v4.3 – Stadttor weitere 30% größer */
.dw-hero-lineart{
  left:-12% !important;
  right:-12% !important;
  top:-14% !important;
  bottom:10.6% !important;
}

.dw-hero-lineart img{
  height:100% !important;
  max-width:146% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  opacity:.84 !important;
}

@media(max-width:800px){
  .dw-hero-lineart{
    left:-8% !important;
    right:-8% !important;
    top:-10% !important;
    bottom:10.6% !important;
  }

  .dw-hero-lineart img{
    max-width:132% !important;
    height:100% !important;
    opacity:.80 !important;
  }
}


/* v4.4 – freigestelltes Stadttor, ca. 50% größer */
.dw-hero-lineart{
  left:-18% !important;
  right:-18% !important;
  top:-22% !important;
  bottom:10.6% !important;
  overflow:visible !important;
}
.dw-hero-lineart img{
  width:auto !important;
  height:100% !important;
  max-width:168% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  opacity:.84 !important;
}
@media(max-width:800px){
  .dw-hero-lineart{
    left:-12% !important;
    right:-12% !important;
    top:-16% !important;
    bottom:10.6% !important;
  }
  .dw-hero-lineart img{
    max-width:150% !important;
    opacity:.80 !important;
  }
}

/* Spezialkachel „Was gibt uns Sicherheit?“ */
.dw-card.dw-card-poster{
  padding:0 !important;
  overflow:hidden;
  display:block;
  background:#fff;
  border:1px solid var(--pink);
}
.dw-card.dw-card-poster img{
  display:block;
  width:100%;
  height:100%;
  min-height:100%;
  object-fit:cover;
  object-position:center top;
}
.dw-event-poster-large{
  margin:24px 0 30px;
}
.dw-event-poster-large img{
  display:block;
  width:min(760px,100%);
  height:auto;
  margin:0 auto;
  border-radius:20px;
  box-shadow:0 14px 32px rgba(11,45,99,.12);
}


/* v4.5 – Nr. 5 wieder als normale Kachel mit Grafik oben + Langtext in Detailseite */
.dw-card.dw-card-poster-card{
  padding:0 0 24px !important;
  overflow:hidden;
}
.dw-card-poster-link{
  display:block;
  text-decoration:none;
}
.dw-card-poster-image-wrap{
  border-bottom:1px solid rgba(255,57,191,.25);
  background:#fff;
}
.dw-card-poster-image{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  object-position:center top;
}
.dw-card.dw-card-poster-card .dw-num,
.dw-card.dw-card-poster-card .dw-date-row,
.dw-card.dw-card-poster-card .dw-kind,
.dw-card.dw-card-poster-card h3,
.dw-card.dw-card-poster-card .dw-sub,
.dw-card.dw-card-poster-card p,
.dw-card.dw-card-poster-card .dw-org,
.dw-card.dw-card-poster-card .dw-place{
  margin-left:24px;
  margin-right:24px;
}
.dw-card.dw-card-poster-card h3 a{
  color:inherit;
  text-decoration:none;
}
.dw-card.dw-card-poster-card h3 a:hover{
  color:var(--pink);
}


/* v4.6 – Veranstaltung 5: keine Vollgrafik mehr, nur einzelne Partnerlogos */
.dw-event-logos:has(.logo-rtgrad),
.dw-single-logos:has(.logo-rtgrad){
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:center !important;
  width:100% !important;
}

.dw-event-logos:has(.logo-rtgrad) img,
.dw-single-logos:has(.logo-rtgrad) img{
  width:100% !important;
  max-width:100% !important;
  height:58px !important;
  max-height:58px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
}

.dw-single-logos:has(.logo-rtgrad) img{
  height:78px !important;
  max-height:78px !important;
}

@media(max-width:800px){
  .dw-event-logos:has(.logo-rtgrad),
  .dw-single-logos:has(.logo-rtgrad){
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}


/* ============================================================
   WBfD FLEX 5.0 – editierbare Kacheln & Logos
   ============================================================ */
.dw-grid{
  grid-template-columns:repeat(var(--wbfd-columns,3),minmax(0,1fr)) !important;
  gap:var(--wbfd-card-gap,18px) !important;
  align-items:stretch;
}
.dw-card{
  min-height:var(--event-card-min-height,var(--wbfd-card-min-height,320px)) !important;
  padding:0 !important;
  overflow:hidden;
}
.dw-card-body{position:relative;display:flex;flex-direction:column;flex:1;padding:20px;min-width:0}
.dw-card-media{height:var(--event-image-height,var(--wbfd-card-image-height,190px));overflow:hidden;background:#f4f4f4}
.dw-card-media img{display:block;width:100%;height:100%;object-fit:cover}
.dw-card.card-span-wide{grid-column:span 2}
.dw-card.card-span-full{grid-column:1/-1}
.dw-card .dw-org{margin-top:auto}

.dw-event-logos,.dw-single-logos{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(88px,1fr)) !important;
  gap:12px !important;
  width:100% !important;
  align-items:center !important;
  margin:16px 0 10px !important;
}
.dw-event-logos a,.dw-event-logos .wbfd-logo-item,.dw-single-logos a,.dw-single-logos .wbfd-logo-item{
  min-width:0;display:flex;align-items:center;justify-content:center;
}
.dw-event-logos img,.dw-single-logos img{
  display:block !important;width:100% !important;max-width:100% !important;
  height:var(--wbfd-logo-height,72px) !important;max-height:none !important;
  object-fit:contain !important;object-position:center !important;background:transparent !important;
}
.logo-size-small img{height:calc(var(--wbfd-logo-height,72px) * .75) !important}
.logo-size-large img{height:calc(var(--wbfd-logo-height,72px) * 1.35) !important}
.dw-single-logos img{height:calc(var(--wbfd-logo-height,72px) * 1.35) !important}
.dw-single-logos.logo-size-small img{height:var(--wbfd-logo-height,72px) !important}
.dw-single-logos.logo-size-large img{height:calc(var(--wbfd-logo-height,72px) * 1.75) !important}
.wbfd-single-featured{margin:28px 0}.wbfd-single-featured img{display:block;max-width:100%;height:auto;border-radius:var(--radius)}
.custom-logo-link img{display:block;height:72px;width:auto;max-width:260px}

@media(max-width:1100px){
 .dw-grid{grid-template-columns:repeat(min(2,var(--wbfd-columns,3)),minmax(0,1fr)) !important}
 .dw-card.card-span-wide,.dw-card.card-span-full{grid-column:1/-1}
}
@media(max-width:800px){
 .dw-grid{grid-template-columns:1fr !important}
 .dw-card.card-span-wide,.dw-card.card-span-full{grid-column:auto}
 .dw-event-logos,.dw-single-logos{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
 .custom-logo-link img{height:54px;max-width:190px}
}


/* v5.2 – Termine: Demokratiewoche, Feiertage, Gedenktage */
.calendar-section{padding:54px 0}
.calendar-section:nth-of-type(even){background:var(--off)}
.calendar-section-head{margin-bottom:24px;max-width:900px}
.calendar-section-head h2{margin:.15em 0;color:var(--navy);font-size:clamp(2rem,4vw,3.2rem);line-height:1}
.calendar-section-head p{color:var(--muted);margin:.5em 0}
.calendar-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;background:#fff0fb;color:var(--pink);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;margin-bottom:9px}
.single-calendar-badge{margin-bottom:12px}
.calendar-type-feiertag{border-color:#0b2d63}
.calendar-type-feiertag .calendar-badge{background:#edf3fb;color:var(--navy)}
.calendar-type-gedenktag{border-color:#8b5a8c}
.calendar-type-gedenktag .calendar-badge{background:#f4ebf4;color:#70436f}
.calendar-type-demokratiewoche .calendar-badge{background:#fff0fb;color:var(--pink)}
.calendar-type-feiertag h3,.calendar-type-gedenktag h3{margin-right:0}
.calendar-type-feiertag .dw-org,.calendar-type-gedenktag .dw-org{margin-top:auto}


/* v5.3 – deutlicher Klickhinweis in allen Termin- und Kalenderkacheln */
.dw-card-more{
  margin-top:16px;
  padding-top:12px;
  border-top:1px solid rgba(255,57,191,.28);
  color:var(--pink);
  font-size:.86rem;
  line-height:1.25;
  font-weight:900;
}
.dw-card-more span{
  display:inline-block;
  margin-left:4px;
  font-size:1.08em;
  transition:transform .18s ease;
}
.dw-card:hover .dw-card-more span,
.dw-card:focus-visible .dw-card-more span{
  transform:translateX(4px);
}
