/* FPE Site – Design-Tokens, Header, Footer (GeneratePress) */
:root{
  --fpe-rot:#CB1422;--fpe-rot-dark:#A50F1B;--fpe-rot-link:#A50F1B;
  --fpe-akzent:#0E6E78;--fpe-akzent-link:#0B5A63;
  --fpe-tinte:#1a1a1a;--fpe-grau:#5b5b5b;--fpe-linie:#e6e6e6;
  --fpe-bg:#ffffff;--fpe-bg2:#faf7f7;--fpe-karte:#ffffff;
  --fpe-fokus:#0a58ca;--fpe-maxw:1120px;
  /* === Überschriften-Standard (global, hier zentral ändern) === */
  --fpe-h2-color:var(--fpe-rot);   --fpe-h2-size:1.6rem;
  --fpe-h3-color:var(--fpe-tinte); --fpe-h3-size:1.3rem;
  --fpe-h4-color:var(--fpe-tinte); --fpe-h4-size:1.12rem;
}
.fpe-skip{position:absolute;left:-999px;top:0;background:var(--fpe-tinte);color:#fff;padding:10px 16px;z-index:99}
.fpe-skip:focus{left:8px;top:8px;border-radius:8px}
:focus-visible{outline:3px solid var(--fpe-fokus);outline-offset:2px;border-radius:6px}
.fpe-wrap{max-width:var(--fpe-maxw);margin:0 auto;padding:0 20px}

/* Barrierefreiheits-Leiste */
.fpe-a11ybar{background:var(--fpe-tinte);color:#fff;font-size:.9rem}
.fpe-a11ybar .fpe-wrap{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:6px 20px}
.fpe-a11ybar .fpe-grp{display:flex;gap:6px;align-items:center}
.fpe-a11ybar button{min-height:34px;min-width:34px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;border-radius:8px;padding:4px 10px;cursor:pointer;font-weight:600}
.fpe-a11ybar button:hover{background:rgba(255,255,255,.15)}
.fpe-a11ybar .fpe-lbl{opacity:.85}

/* Header */
.fpe-header{border-bottom:1px solid var(--fpe-linie);position:sticky;top:0;background:var(--fpe-bg);z-index:20}
.fpe-bar{display:flex;align-items:center;gap:20px;padding:12px 0}
.fpe-logo{display:flex;align-items:center;font-weight:800;color:var(--fpe-rot);text-decoration:none;font-size:1.15rem;line-height:1}
.fpe-logo:hover{background:transparent}
.fpe-logo img{height:58px;width:auto;display:block}
.fpe-nav{margin-left:18px}
.fpe-nav>ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;flex-wrap:wrap;align-items:center}
.fpe-nav a{display:inline-block;padding:8px 12px;border-radius:10px;color:var(--fpe-tinte);text-decoration:none;font-weight:600}
.fpe-nav a.fpe-home svg{width:18px;height:18px}
.fpe-nav a:hover{background:var(--fpe-bg2);color:var(--fpe-rot-link)}
.fpe-nav a[aria-current]{background:var(--fpe-rot);color:#fff}
.fpe-nav a[aria-current]:hover{background:var(--fpe-rot-dark);color:#fff}
.fpe-nav a.fpe-home{display:flex;align-items:center;gap:6px}
.fpe-nav a.fpe-home[aria-current]{background:var(--fpe-rot);color:#fff}
.fpe-nav a.fpe-home[aria-current]:hover{background:var(--fpe-rot-dark);color:#fff}
.fpe-nav a.fpe-home .fpe-home-txt{font-size:.95rem}
.fpe-has-sub{position:relative}
.fpe-subtoggle{font:inherit;font-weight:600;color:var(--fpe-tinte);background:transparent;border:0;padding:8px 12px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:38px}
.fpe-subtoggle:hover,.fpe-subtoggle:focus{background:var(--fpe-bg2);color:var(--fpe-rot-link)}
.fpe-subtoggle .fpe-caret{transition:transform .15s;font-size:.8em}
.fpe-subtoggle[aria-expanded=true] .fpe-caret{transform:rotate(180deg)}
.fpe-has-sub .fpe-sub{position:absolute;left:0;top:calc(100% + 6px);min-width:240px;background:var(--fpe-karte);border:1px solid var(--fpe-linie);border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.14);padding:6px;margin:0;list-style:none;z-index:30}
.fpe-has-sub .fpe-sub li{margin:0}
.fpe-has-sub .fpe-sub a{display:block;padding:10px 12px;border-radius:8px;white-space:nowrap;font-weight:600}
.fpe-has-sub .fpe-sub a:hover,.fpe-has-sub .fpe-sub a:focus{background:var(--fpe-bg2);color:var(--fpe-rot-link)}
.fpe-areas{margin-left:auto}
.fpe-areas ul{display:flex;gap:8px;list-style:none;margin:0;padding:0}
.fpe-areas a{display:inline-block;padding:8px 16px;border-radius:999px;font-weight:700;text-decoration:none;color:var(--fpe-akzent-link);background:transparent;border:1.5px solid var(--fpe-akzent-link);min-height:40px}
.fpe-areas a:hover{background:var(--fpe-bg2)}

/* Footer */
.fpe-footer{background:transparent;border-top:2px solid var(--fpe-rot);margin-top:28px;padding:24px 0;color:var(--fpe-grau)}
.fpe-footer .fpe-cols{display:flex;gap:30px;flex-wrap:wrap;justify-content:space-between;max-width:var(--fpe-maxw);margin:0 auto;padding:0 20px}
.fpe-footer a{color:var(--fpe-grau)}
.fpe-footer nav a{text-decoration:underline}

/* Fallback: falls GeneratePress-Standardnavigation dennoch rendert, ausblenden */
.main-navigation{display:none !important}

@media (max-width:640px){
  .fpe-bar{flex-wrap:wrap}
  .fpe-nav{margin:6px 0 0}
  .fpe-areas{margin:6px 0 0}
}

/* ============ Startseite ============ */
.fpe-home{--_pad:20px}
.fpe-home .fpe-container{max-width:var(--fpe-maxw);margin:0 auto;padding:0 var(--_pad)}
/* Oberen GeneratePress-Abstand auf der Startseite entfernen (Hero rückt nach oben) */
.home .site-main{margin-top:0}
.home .inside-article{padding-top:0}
/* Hero */
.fpe-home .fpe-hero{margin-top:0}
.fpe-hero{position:relative;margin:0 auto 8px;max-width:var(--fpe-maxw);border-radius:18px;overflow:hidden;isolation:isolate;color:#fff;min-height:400px;display:flex;align-items:center}
.fpe-hero__media{position:absolute;inset:0;z-index:-2;background:linear-gradient(135deg,#0E6E78,#0b3a40) center/cover no-repeat}
.fpe-hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.62))}
.fpe-hero__inner{position:relative;width:100%;text-align:center;padding:40px 20px 40px}
.fpe-hero__eyebrow{display:inline-block;background:rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.55);color:#fff;font-weight:600;font-size:.8rem;padding:5px 12px;border-radius:999px;margin:0 0 8px}
.fpe-hero h1{font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.12;margin:.1em 0 .25em;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.85)}
.fpe-hero .fpe-lead{font-size:1rem;color:rgba(255,255,255,.95);max-width:580px;margin:0 auto 14px;text-shadow:0 1px 3px rgba(0,0,0,.85)}
.fpe-search{display:flex;gap:8px;max-width:720px;margin:6px auto 2px;background:#fff;border:2px solid var(--fpe-tinte);border-radius:999px;padding:6px 6px 6px 20px;align-items:center;box-shadow:0 12px 34px rgba(0,0,0,.30)}
.fpe-search svg{color:var(--fpe-grau);flex:0 0 auto}
.fpe-search input[type=search]{flex:1;border:0;font-size:1.12rem;padding:15px 6px;background:transparent;color:var(--fpe-tinte)}
.fpe-search input[type=search]:focus{outline:none}
.fpe-search button{border:0;background:var(--fpe-rot);color:#fff;font-weight:700;font-size:1.06rem;padding:15px 30px;border-radius:999px;cursor:pointer;min-height:52px}
.fpe-search button:hover,.fpe-search button:focus{background:var(--fpe-rot-dark);color:#fff}
.fpe-hint{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.85);margin:10px 0 0;font-size:.95rem}
.fpe-hint a{color:#fff}
/* Kacheln */
.fpe-welten{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px auto 26px;max-width:var(--fpe-maxw);padding:0 var(--_pad)}
.fpe-welt{display:flex;gap:14px;align-items:center;border:1px solid var(--fpe-linie);border-radius:12px;padding:14px 16px;text-decoration:none;color:var(--fpe-tinte);background:#fff}
.fpe-welt:hover{border-color:var(--fpe-rot);box-shadow:0 4px 16px rgba(0,0,0,.06)}
.fpe-welt .fpe-ico{width:44px;height:44px;flex:0 0 auto;border-radius:11px;display:grid;place-items:center;background:rgba(203,20,34,.10);color:var(--fpe-rot)}
.fpe-welt:nth-child(2) .fpe-ico{background:rgba(14,110,120,.12);color:var(--fpe-akzent-link)}
.fpe-welt .fpe-ico svg{width:22px;height:22px}
.fpe-welt h2{margin:0 0 2px;font-size:1.05rem}
.fpe-welt p{margin:0;color:var(--fpe-grau);font-size:.9rem;line-height:1.4}
/* Sections */
.fpe-home .fpe-section{max-width:var(--fpe-maxw);margin:0 auto;padding:24px var(--_pad)}
.fpe-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:4px}
.fpe-section-head h2{font-size:1.5rem;margin:0}
.fpe-section-head a{font-weight:600;white-space:nowrap;color:var(--fpe-akzent-link)}
.fpe-sub{color:var(--fpe-grau);margin:.2em 0 18px}
.fpe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
/* Karten */
.fpe-ecard{border:1px solid var(--fpe-linie);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:transform .15s,box-shadow .15s}
.fpe-ecard:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.fpe-ecard__img{position:relative;aspect-ratio:16/10;background:#e9edf2 center/cover no-repeat;display:block}
.fpe-tags{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.fpe-tag{background:rgba(20,20,20,.82);color:#fff;font-size:.78rem;font-weight:600;padding:6px 11px;border-radius:999px}
.fpe-datebadge{position:absolute;left:14px;bottom:-16px;background:var(--fpe-rot);color:#fff;width:60px;height:60px;border-radius:10px;display:grid;place-content:center;text-align:center;line-height:1;box-shadow:0 4px 10px rgba(0,0,0,.2)}
.fpe-datebadge b{font-size:1.4rem}.fpe-datebadge span{font-size:.72rem;letter-spacing:.05em}
.fpe-datebadge__yr{display:block;font-size:.6rem;font-style:normal;opacity:.85;letter-spacing:.06em;margin-top:1px}
.fpe-corner{position:absolute;left:0;bottom:12px;font-size:.8rem;font-weight:700;color:#fff;padding:6px 12px;border-radius:0 8px 8px 0}
.fpe-corner--tested{background:#1c7a3f}.fpe-corner--dir{background:#5b6b7b}
.fpe-ecard__body{padding:16px;position:relative}
.fpe-ecard.has-date .fpe-ecard__body{padding-top:26px}
.fpe-ecard__logo-link{position:absolute;top:14px;right:14px;z-index:3;display:block;line-height:0;border-radius:10px}
.fpe-ecard__logo-link:hover,.fpe-ecard__logo-link:focus-visible{box-shadow:0 0 0 3px rgba(14,110,120,.35)}
.fpe-ecard__logo{width:48px;height:48px;border-radius:10px;background:#fff;padding:3px;box-shadow:0 1px 5px rgba(0,0,0,.12);object-fit:contain;display:block}
.fpe-ecard__body .fpe-loc,.fpe-ecard__body .fpe-ecard__title{padding-right:60px}
.fpe-loc{margin:0 0 4px;color:var(--fpe-akzent-link);font-size:.9rem;font-weight:600}
.fpe-ecard__title{margin:.1em 0 .3em;font-size:1.12rem;line-height:1.3}
.fpe-ecard__title a{color:var(--fpe-tinte);text-decoration:none}
.fpe-ecard__title a:hover{color:var(--fpe-rot-link)}
.fpe-by{margin:0;color:var(--fpe-grau);font-size:.9rem}
.fpe-cta-row{text-align:center;margin:26px 0 0}
.fpe-btn-cta{display:inline-block;background:var(--fpe-rot);color:#fff;font-weight:700;font-size:1.02rem;padding:14px 28px;border-radius:999px;text-decoration:none;min-height:44px}
.fpe-btn-cta:hover,.fpe-btn-cta:focus{background:var(--fpe-rot-dark);color:#fff}
.fpe-empty{color:var(--fpe-grau);background:var(--fpe-bg2);border:1px solid var(--fpe-linie);border-radius:12px;padding:16px}
@media (max-width:820px){.fpe-welten{grid-template-columns:1fr}.fpe-grid{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.fpe-grid{grid-template-columns:1fr}}

/* ---- Videos ---- */
.fpe-videos{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.fpe-video{display:flex;flex-direction:column}
.fpe-video-play{position:relative;aspect-ratio:16/9;border:0;padding:0;border-radius:14px;overflow:hidden;background:#000 center/cover no-repeat;cursor:pointer;display:block;width:100%}
.fpe-video-play::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.18);transition:background .15s}
.fpe-video-play:hover::after{background:rgba(0,0,0,.32)}
.fpe-video-ic{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--fpe-rot);color:#fff;display:grid;place-items:center;z-index:1;box-shadow:0 6px 18px rgba(0,0,0,.35)}
.fpe-video-play:hover .fpe-video-ic{background:var(--fpe-rot-dark)}
.fpe-video-frame{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#000}
.fpe-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.fpe-video-title{font-size:1.02rem;line-height:1.3;margin:10px 0 0}
.fpe-video-title a{color:var(--fpe-tinte);text-decoration:none}
.fpe-video-title a:hover{color:var(--fpe-rot-link)}
@media (max-width:820px){.fpe-videos{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.fpe-videos{grid-template-columns:1fr}}

/* ---- Social-Media-Links im Footer ---- */
.fpe-social{display:flex;gap:10px;align-items:center}
.fpe-social a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--fpe-tinte);background:#fff;border:1px solid var(--fpe-linie);text-decoration:none}
.fpe-social a:hover,.fpe-social a:focus{color:#fff;background:var(--fpe-rot);border-color:var(--fpe-rot)}
.fpe-legal{flex:0 0 100%;text-align:right;margin-top:4px}
.fpe-legal a{text-decoration:underline}

/* Erlebnis-Status-Ecke (community) + Screenreader-Text */
.fpe-corner--community{background:#0E6E78}
.fpe-sronly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* =========================================================================
 *  ÜBERSCHRIFTEN-STANDARD (global – gilt für ALLE Inhalts-Seiten:
 *  Blogbeiträge, Pressemeldungen, Seiten wie „Über uns", Erlebnisse …)
 *  Größen/Farben zentral über die Variablen im :root ändern.
 *  Karten-/Komponenten-Überschriften sind weiter unten geschützt.
 * ========================================================================= */
.entry-content h2{font-size:var(--fpe-h2-size);line-height:1.28;margin:1.7em 0 .5em;font-weight:700;letter-spacing:-.01em;color:var(--fpe-h2-color)}
.entry-content h3{font-size:var(--fpe-h3-size);line-height:1.3;margin:1.5em 0 .4em;font-weight:700;color:var(--fpe-h3-color)}
.entry-content h4{font-size:var(--fpe-h4-size);line-height:1.35;margin:1.2em 0 .35em;font-weight:700;color:var(--fpe-h4-color)}
.entry-content h2:first-child,
.entry-content h3:first-child{margin-top:.2em;border-bottom:0;padding-bottom:0}
.entry-content p{line-height:1.7}

/* Komponenten-/Karten-Überschriften vor dem globalen Standard schützen */
.entry-content .fpe-welt h2{font-size:1.05rem;color:var(--fpe-tinte);margin:0 0 2px;letter-spacing:normal}
.entry-content .fpe-section-head h2{font-size:1.5rem;color:var(--fpe-tinte);margin:0;letter-spacing:normal}
.entry-content .fpe-ecard__title{font-size:1.12rem;color:var(--fpe-tinte);margin:.1em 0 .3em;letter-spacing:normal;line-height:1.3}
.entry-content .fpe-akt__title{font-size:1.12rem;color:var(--fpe-tinte);margin:0;letter-spacing:normal;line-height:1.3}

/* ---- Blog-Beitrag: Feinschliff Medien ---- */

/* Einzelbilder */
.single-post .entry-content .wp-block-image{margin:1.4em 0}
.single-post .entry-content .wp-block-image img{border-radius:14px;box-shadow:0 6px 20px rgba(0,0,0,.08);display:block}
.single-post .entry-content figcaption,
.single-post .entry-content .wp-element-caption{color:var(--fpe-grau);font-size:.9rem;text-align:center;margin-top:.5em}

/* Bildergalerie (Gutenberg) – Layout übernimmt die justified-Bibliothek, Gutenberg-Flex neutralisieren */
.entry-content .wp-block-gallery{display:block;gap:0;margin:1.6em 0;border-radius:12px}
.entry-content .wp-block-gallery.justified-gallery{overflow:hidden}
.entry-content .wp-block-gallery .fpe-jg-item{overflow:hidden}
.entry-content .wp-block-gallery .fpe-jg-item img{cursor:zoom-in;max-height:none;border-radius:0;box-shadow:none;margin:0}
.entry-content .wp-block-gallery figure.wp-block-image{margin:0;border-radius:0;box-shadow:none;width:auto}
.entry-content .wp-block-gallery figure.wp-block-image img{display:block;max-height:none;border-radius:0;box-shadow:none;margin:0;cursor:zoom-in}
.entry-content .wp-block-gallery figcaption,
.entry-content .wp-block-gallery .wp-element-caption{display:none}

/* Klassische [gallery]-Shortcode-Galerie */
.single-post .entry-content .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:1.6em 0}
.single-post .entry-content .gallery .gallery-item{width:auto!important;margin:0!important}
.single-post .entry-content .gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border:0!important;border-radius:14px;box-shadow:0 6px 20px rgba(0,0,0,.08)}
@media (max-width:640px){.single-post .entry-content .gallery{grid-template-columns:1fr 1fr}}

/* ---- Pressemeldung: gleiche Medien-Eleganz + Video-Einbettung ---- */
.single-pressemeldung .entry-content .wp-block-image{margin:1.4em 0}
.single-pressemeldung .entry-content .wp-block-image img{border-radius:14px;box-shadow:0 6px 20px rgba(0,0,0,.08);display:block}
.single-pressemeldung .entry-content .wp-block-gallery{gap:12px;margin:1.6em 0}
.single-pressemeldung .entry-content .wp-block-gallery figure.wp-block-image{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.08)}
.single-pressemeldung .entry-content .wp-block-gallery figure.wp-block-image img{display:block;width:100%;height:auto;transition:transform .35s ease}
.single-pressemeldung .entry-content .wp-block-gallery figure.wp-block-image:hover img{transform:scale(1.05)}

/* Responsive Video-Einbettung (Vimeo/YouTube) in Beiträgen & Pressemeldungen */
.fpe-video-embed{position:relative;aspect-ratio:16/9;margin:1.6em 0}
.fpe-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:14px}

/* ---- Schmale, zentrierte Lesespalte + gebändigte Bilder (Beitrag + Pressemeldung) ---- */
/* Inhaltsbreite: in der Karte (Blog + PM) keine zusätzliche Verengung nötig */
.single-post .featured-image,
.single-post .page-header-image-single,
.single-post .entry-header .entry-title{display:none} /* Standard-Titelbild & -Titel aus – Kopfbereich übernimmt */
/* ALLE Inhaltsbilder deckeln (auch rohe <img> aus Flexible-Content, nicht nur Bildblöcke) */
.single-post .entry-content img,
.single-pressemeldung .entry-content img{max-height:560px;max-width:100%;height:auto;border-radius:14px;box-shadow:0 6px 20px rgba(0,0,0,.08);display:block;margin-left:auto;margin-right:auto}
/* Galerie-Bilder füllen ihre Grid-Zelle (kein Deckel/Schatten – Rundung liegt auf der figure) */
.single-post .entry-content .wp-block-gallery img,
.single-pressemeldung .entry-content .wp-block-gallery img{width:100%;max-height:none;border-radius:0;box-shadow:none;margin:0}

/* Justierte Galerie: Layout kommt von der selbst-gehosteten Bibliothek „justifiedGallery" (nicht AnyWhere).
   Hier nur Feinschliff; Bildhöhen-Deckel etc. dürfen NICHT auf diese Bilder wirken. */
.single-post .entry-content .ae-jg-wrapper,
.single-pressemeldung .entry-content .ae-jg-wrapper{margin:1.6em 0;border-radius:12px;overflow:hidden}
.single-post .entry-content .ae-jg-wrapper img,
.single-pressemeldung .entry-content .ae-jg-wrapper img{max-height:none;border-radius:0;box-shadow:none;margin:0;cursor:zoom-in}
.ae-jg-wrapper .jg-entry{cursor:zoom-in}

/* ---- Galerie-Lightbox (barrierefrei, ohne externe Bibliothek) ---- */
.fpe-lb{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}
.fpe-lb.is-open{display:flex}
.fpe-lb__fig{margin:0;max-width:92vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}
.fpe-lb__img{max-width:92vw;max-height:82vh;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 12px 44px rgba(0,0,0,.5)}
.fpe-lb__cap{color:#fff;font-size:.95rem;margin-top:12px;text-align:center;opacity:.9}
.fpe-lb__close{position:absolute;top:14px;right:18px;background:transparent;border:0;color:#fff;font-size:2.4rem;line-height:1;cursor:pointer;width:48px;height:48px}
.fpe-lb__nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.14);border:0;color:#fff;font-size:1.7rem;cursor:pointer;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.fpe-lb__prev{left:16px}.fpe-lb__next{right:16px}
.fpe-lb__nav:hover,.fpe-lb__close:hover{background:rgba(255,255,255,.28)}
.fpe-lb__close:focus-visible,.fpe-lb__nav:focus-visible{outline:3px solid #fff;outline-offset:2px}
@media (max-width:640px){.fpe-lb__nav{width:44px;height:44px}}
/* Galerie-Bilder als klickbar kennzeichnen */
.single-post .entry-content .ae-jg-item-inner,
.single-pressemeldung .entry-content .ae-jg-item-inner{cursor:zoom-in}

/* ---- Inhaltsverzeichnis ---- */
.fpe-toc{background:var(--fpe-bg2);border:1px solid var(--fpe-linie);border-radius:12px;padding:18px 22px;margin:0 0 1.8em}
.fpe-toc__titel{font-size:1rem!important;font-weight:700;color:var(--fpe-tinte)!important;margin:0 0 .6em!important;letter-spacing:.02em;border:0!important;padding:0!important}
.fpe-toc__list{margin:0;padding:0 0 0 1.2em}
.fpe-toc__list li{margin:.25em 0;line-height:1.45}
.fpe-toc__list a{color:var(--fpe-akzent-link);text-decoration:none;font-weight:600}
.fpe-toc__list a:hover,.fpe-toc__list a:focus{text-decoration:underline;color:var(--fpe-rot-link)}
.fpe-toc__sub{list-style:circle;margin-left:1.1em}
/* Sprungziele nicht unter dem klebenden Kopf verstecken */
.single-post .entry-content h2,.single-post .entry-content h3,
.single-pressemeldung .entry-content h2,.single-pressemeldung .entry-content h3{scroll-margin-top:90px}

/* Veröffentlichungsdatum oben in Pressemeldungen */
.fpe-pm-date{color:var(--fpe-grau);font-size:.95rem;font-weight:600;margin:0 0 1.2em;letter-spacing:.01em;text-align:center}

/* ---- Pressemeldung-Hero: Titel auf weißer Karte über dem Bild (eigene Klassen, keine Kollision) ---- */
.single-pressemeldung .page-header-image-single,
.single-pressemeldung .featured-image,
.single-pressemeldung .entry-header .entry-title{display:none} /* Standard-Titelbild & -Titel aus – Hero übernimmt */
/* Vollbreites Kopfbild (ca. 20% höher) + dezenter dunkler Layer (edler + besserer Kontrast) */
.fpe-pmhead{position:relative;width:100%;height:clamp(290px,53vh,560px);background-size:cover;background-position:center}
.fpe-pmhead::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.30),rgba(0,0,0,.10) 45%,rgba(0,0,0,.34));pointer-events:none}
/* EINE Karte für Titel + Inhalt: die vorhandene .inside-article rutscht über das Bild */
.single-pressemeldung .inside-article,
.single-post .inside-article{max-width:900px;margin:-210px auto 2.5em;position:relative;z-index:2;border-radius:16px;box-shadow:0 22px 55px rgba(0,0,0,.12);padding:40px clamp(20px,4vw,52px)}
/* Titelblock oben in der Karte */
.fpe-pmtitle{text-align:center;margin:0 0 1.6em;padding-bottom:1.3em;border-bottom:1px solid var(--fpe-linie)}
.fpe-pmtitle__label{font-weight:700;color:var(--fpe-tinte);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;margin:0 0 .7em}
.fpe-pmtitle__h1{color:var(--fpe-rot);font-size:clamp(1.55rem,3.2vw,2.25rem);line-height:1.2;font-weight:700;letter-spacing:-.01em;margin:0 auto .5em;max-width:780px}
.fpe-pmtitle__sub{color:var(--fpe-tinte);font-size:1.05rem;line-height:1.5;margin:0 auto .55em;max-width:660px}
.fpe-pmtitle__date{color:var(--fpe-grau);font-weight:600;font-size:.95rem;margin:0}
.fpe-pmtitle__author{color:var(--fpe-akzent-link);font-weight:700;text-decoration:none}
.fpe-pmtitle__author:hover,.fpe-pmtitle__author:focus{text-decoration:underline;color:var(--fpe-rot-link)}
/* Doppelte Standard-Meta (Datum/Autor) im Beitragskopf ausblenden – wir zeigen sie im Kopfbereich */
.single-post .entry-header .entry-meta,
.single-pressemeldung .entry-header .entry-meta{display:none}
@media (max-width:640px){
	.single-pressemeldung .inside-article,
	.single-post .inside-article{margin:-110px 10px 2em;padding:24px 18px}
}

/* Titel von Beiträgen & Pressemeldungen: zentriert, Markenrot, weniger wuchtig */
.single-post .entry-header .entry-title,
.single-post h1.entry-title,
.single-pressemeldung .entry-header .entry-title,
.single-pressemeldung h1.entry-title{color:var(--fpe-rot);text-align:center;font-weight:700;font-size:clamp(1.6rem,3.4vw,2.15rem);line-height:1.22;letter-spacing:-.01em;max-width:900px;margin-left:auto;margin-right:auto}

/* ---- Titelbild-Höhe begrenzen (Erlebnis + Blog-Beitrag) ---- */
.single-erlebnis .featured-image.page-header-image-single img,
.single-erlebnis .page-header-image-single img,
.single-post .featured-image.page-header-image-single img,
.single-post .page-header-image-single img{max-height:340px;width:100%;object-fit:cover;display:block}

/* ---- Erlebnis-Detailseite ---- */
.fpe-erlebnis-detail{margin-top:8px}
.fpe-ed-meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;margin:6px 0 20px;color:var(--fpe-grau);font-size:1rem}
.fpe-ed-meta a{color:var(--fpe-akzent-link);font-weight:600;text-decoration:none}
.fpe-ed-meta a:hover{text-decoration:underline}
.fpe-ed-badge{display:inline-block;color:#fff;font-weight:700;font-size:.8rem;padding:5px 12px;border-radius:999px}
.fpe-b-tested{background:#1c7a3f}.fpe-b-dir{background:#5b6b7b}.fpe-b-comm{background:var(--fpe-akzent)}
.fpe-erlebnis-detail h2{font-size:1.5rem;margin:1.2em 0 .4em}
.fpe-bf-list{display:grid;gap:14px;margin:8px 0 0}
.fpe-bf-item{border:1px solid var(--fpe-linie);border-radius:12px;padding:14px 16px;background:#fff}
.fpe-bf-item h3{margin:0 0 4px;font-size:1.12rem}
.fpe-bf-tip{font-weight:600;margin:0 0 6px}
.fpe-bf-text{color:var(--fpe-tinte)}
.fpe-bf-empty{color:var(--fpe-grau);background:var(--fpe-bg2);border:1px solid var(--fpe-linie);border-radius:12px;padding:14px 16px}
.fpe-ed-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:8px 0 0}
.fpe-ed-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;display:block}
@media (max-width:640px){.fpe-ed-gallery{grid-template-columns:1fr 1fr}}

/* ---- Verknüpfung Bericht ↔ Erlebnis ---- */
.fpe-zum-erlebnis{margin:26px 0 0}
.fpe-ze-list{display:flex;flex-wrap:wrap;gap:12px}
.fpe-ze-card{display:flex;align-items:center;gap:10px;border:1px solid var(--fpe-linie);border-radius:12px;padding:10px 14px;text-decoration:none;color:var(--fpe-tinte);font-weight:600;background:#fff}
.fpe-ze-card:hover{border-color:var(--fpe-rot);color:var(--fpe-rot-link)}
.fpe-ze-logo{height:40px;width:auto;max-width:90px;object-fit:contain;display:block}
.fpe-erlebnis-berichte{list-style:none;margin:8px 0 0;padding:0}
.fpe-erlebnis-berichte li{padding:10px 0;border-bottom:1px solid var(--fpe-linie)}
.fpe-erlebnis-berichte a{color:var(--fpe-tinte);text-decoration:none;font-weight:600}
.fpe-erlebnis-berichte a:hover{color:var(--fpe-rot-link)}
.fpe-eb-date{color:var(--fpe-grau);font-size:.9rem;margin-left:6px}
.fpe-eb-grid{margin-top:8px}
.fpe-eb-more{margin-top:18px}
.fpe-eb-more>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--fpe-rot);border:1.5px solid var(--fpe-rot);border-radius:10px;padding:10px 20px;font-weight:700;font-size:1rem;min-height:44px;transition:background .15s,color .15s,box-shadow .15s}
.fpe-eb-more>summary::-webkit-details-marker{display:none}
.fpe-eb-more>summary::after{content:'▾';font-size:.85em;line-height:1}
.fpe-eb-more[open]>summary::after{content:'▴'}
.fpe-eb-more>summary:hover,.fpe-eb-more>summary:focus-visible{background:var(--fpe-rot);color:#fff;box-shadow:0 3px 10px rgba(203,20,34,.28);outline:none}
.fpe-eb-more[open] .fpe-eb-grid{margin-top:16px}

/* ===== Suchergebnisseite (gruppiert) ===== */
.fpe-searchpage{padding:24px 0 40px}
.fpe-search-head{margin:0 0 24px}
.fpe-search-title{font-size:1.9rem;line-height:1.2;margin:0 0 14px}
.fpe-search-title span{color:var(--fpe-rot-link)}
.fpe-search--inline{display:flex;align-items:center;gap:10px;max-width:560px;background:#fff;border:1px solid #c7c7c7;border-radius:999px;padding:6px 8px 6px 14px}
.fpe-search--inline svg{color:var(--fpe-grau);flex:0 0 auto}
.fpe-search--inline input{flex:1 1 auto;border:0;outline:none;font-size:1rem;min-height:40px;background:transparent}
.fpe-search--inline button{background:var(--fpe-rot);color:#fff;border:0;border-radius:999px;padding:10px 18px;font-weight:600;min-height:44px;cursor:pointer}
.fpe-search--inline button:hover{background:#a91019}
.fpe-search--inline input:focus-visible,.fpe-search--inline button:focus-visible{outline:3px solid var(--fpe-teal,#0E6E78);outline-offset:2px}
.fpe-search-group{margin:0 0 34px}
.fpe-search-group__head{display:flex;align-items:center;gap:10px;font-size:1.35rem;margin:0 0 14px;padding-bottom:8px;border-bottom:2px solid var(--fpe-linie)}
.fpe-search-group__count{font-size:.85rem;font-weight:700;color:#fff;background:var(--fpe-rot);border-radius:999px;padding:2px 10px;min-width:1.5em;text-align:center}

/* Full-Width-Hero (Cover als erstes Element einer Seite) bündig unter den Header ziehen –
   entfernt den oberen Abstand nur bei Seiten, die mit einem alignfull-Cover starten. */
.site-main:has(> article > .inside-article > .entry-content > .wp-block-cover.alignfull:first-child){margin-top:0}
.inside-article:has(> .entry-content > .wp-block-cover.alignfull:first-child){padding-top:0}

/* Kategorie-Fußzeile („Import (unsortiert)") unter Einzelbeiträgen ausblenden (Fallback zum Filter) */
.single-post .entry-meta .cat-links,.single-pressemeldung .entry-meta .cat-links{display:none}
